1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án tốt nghiệp Công nghệ kỹ thuật máy tính: Thiết kế và đánh giá hiệu năng mảng ô nhớ 6T SRAM 64x64 BIT

121 3 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế và đánh giá hiệu năng mảng ô nhớ 6T SRAM 64x64 bit
Tác giả Phạm Văn Tuấn, Phan Lê Gia Hân
Người hướng dẫn TS. Đỗ Duy Tân
Trường học Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ kỹ thuật máy tính
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2024
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 121
Dung lượng 10,32 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN (21)
    • 1.1. Đặt vấn đề (21)
    • 1.2. Mục tiêu nghiên cứu (23)
    • 1.3. Nội dung nghiên cứu (23)
    • 1.4. Hạn chế của đề tài (23)
    • 1.5. Bố cục (23)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (25)
    • 2.1 Tổng quan về bộ nhớ bán dẫn và SRAM (25)
      • 2.1.1 Tổng quan bộ nhớ bán dẫn (25)
      • 2.1.2 Tổng quan về SRAM (28)
    • 2.2 Kiến trúc ô nhớ (30)
    • 2.3 Thành phần của SRAM (32)
      • 2.3.1 Khối mảng ô nhớ (32)
      • 2.3.2 Khối I/O (32)
      • 2.3.3 Khối điều khiển (32)
      • 2.3.4 Khối giải mã (32)
    • 2.3 Độ trễ tín hiệu và công suất tiêu thụ (32)
      • 2.4.1 Độ trễ tín hiệu (32)
      • 2.4.2 Công suất tiêu thụ (33)
  • CHƯƠNG 3: THIẾT KẾ HỆ THỐNG (35)
    • 3.1. Thiết kế sơ đồ khối hệ thống SRAM 6T 64x64 (35)
    • 3.2. Thiết kế chi tiết khối SRAM 6T 64x64 (37)
      • 3.2.1. Khối giải mã (37)
        • 3.2.1.1. Khối giải mã 2 sang 4 (38)
        • 3.2.1.2. Khối giải mã 3 sang 8 (39)
      • 3.2.2. Khối nạp trước (42)
      • 3.2.3. Khối ghi dữ liệu (43)
      • 3.2.4. Mảng ô nhớ 6 Transistor (6T SRAM 64x64) (45)
      • 3.2.5. Khối khuếch đại cảm nhận (48)
  • CHƯƠNG 4: ĐÁNH GIÁ QUA MÔ PHỎNG (24)
    • 4.1 Mô hình mô phỏng và định nghĩa các testcase (52)
    • 4.2 Mô phỏng ô nhớ (Cell Memory) (53)
      • 4.2.1 Mô phỏng và kiểm tra nguyên lý hoạt động của ô nhớ (53)
      • 4.2.2 Mô phỏng và kiểm tra các thông số của ô nhớ (57)
    • 4.3 Mô phỏng mạch nạp trước (Pre-Charge) (58)
      • 4.3.1 Mô phỏng và kiểm tra nguyên lý hoạt động của mạch nạp trước (58)
      • 4.3.2 Mô phỏng và kiểm tra các thông số của mạch nạp trước (60)
    • 4.4 Mô phỏng mạch ghi (Write-Driver) (61)
      • 4.4.1 Mô phỏng và kiểm tra nguyên lý hoạt động của mạch ghi (61)
      • 4.4.2 Mô phỏng và kiểm tra các thông số của mạch ghi (62)
    • 4.5 Mô phỏng mạch khuếch đại cảm nhận (Sense Amplifier) (63)
      • 4.5.1 Mô phỏng mạch khuếch đại cảm nhận dạng linear (63)
    • 4.6 Mô phỏng mạch giải mã (Decoder) (69)
      • 4.6.1 Mô phỏng mạch giải mã từ 2 sang 4 (69)
      • 4.6.2 Mô phỏng mạch giải mã từ 3 sang 8 (71)
    • 4.7 Mô phỏng SRAM 6T (74)
      • 4.7.1 Mô phỏng SRAM 6T với thiết kế sử dụng khối giải mã 2 sang 4 . 72 (78)
      • 4.7.2 Mô phỏng SRAM 6T với thiết kế sử dụng khối giải mã 3 sang 8 103 (109)
    • 4.8 Đánh giá SRAM 6T với khối khuếch đại cảm nhận có Transisor (110)
  • CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (113)
    • 5.1 Kết luận (113)
    • 5.2 Hướng phát triển (117)
  • TÀI LIỆU THAM KHẢO (119)

Nội dung

Để một hệ thống hoạt động ổn định và thực hiện đa chức năng thì việc thiết kế bộ nhớ lưu trữ là phần khá quan trọng cần được tập trung phát triển, bộ nhớ này có chức năng lưu trữ lệnh cá

TỔNG QUAN

Đặt vấn đề

Hiện nay các thiết bị điện tử đã không ngừng được cải tiến và nâng cao giá trị của chúng nhằm phục vụ nhu cầu của con người một cách toàn diện Đơn cử ta có thể nói đến chiếc máy tính đầu tiên được đưa vào vận hành với tên gọi ENIAC (Electronic Numerical Integrator and Calculator) với kích thước đồ sộ này đã chiếm hết căn phòng 6x12 m 2 và cần đến 18,000 ống hút chân không, so với ngày nay một chiếc laptop hay một thiết bị điện thoại di động cũng có các chức năng vượt trội hơn so với máy tính đời đầu nhưng kích thước lại rất nhỏ Để làm được điều này không thể phủ định sự giúp ích rất lớn của công nghệ bán dẫn

Lĩnh vực sản xuất vi mạch với những con chip có vẻ ngoài nhỏ bé nhưng có sức mạnh bên trong thì không nhỏ Trải qua nhiều giai đoạn tích hợp các bóng bán dẫn trên cùng một diện tích nhỏ đã trở thành cuộc chạy đua ra mắt sản phẩm của các công ty công nghệ lớn như: Intel, Samsung, TSMC Sự hình thành và phát triển của ngành nhúng và IoT đáp ứng hầu hết các ứng dụng đòi hỏi sự phức tạp và hiện đại trong lĩnh vực đời sống Nhưng để các hệ thống hoạt động được chính xác, thì chúng cần được lập trình sẵn các chức năng bởi các dòng lệnh và được lưu trữ vào bộ nhớ được tạo ra từ mạch tích hợp Nhắc đến lưu trữ thì cần phải nhắc đến ROM (Read Only Memory) và RAM (Random Access Memory) RAM được chia thành hai loại chính là SRAM và DRAM SRAM, còn được biết đến là RAM tĩnh, bao gồm các mạch có khả năng duy trì trạng thái của chúng miễn là nguồn điện được cung cấp Do đó, SRAM yêu cầu một nguồn điện cố định để hoạt động, và mọi thông tin và dữ liệu trên SRAM sẽ bị mất khi nguồn điện bị ngắt DRAM, còn được gọi là RAM động, có khả năng lưu trữ thông tin nhị phân dưới dạng điện tích được áp dụng cho các tụ điện Để đảm bảo rằng thông tin được lưu trữ trên các tụ điện được duy trì, các tụ điện cần được sạc định kỳ

Với mong muốn tìm hiểu cơ chế hoạt động một cách chính xác của SRAM cũng như các bộ phận của nó nhóm sinh viên thực hiện đã tiến hành đi tìm hiểu và thiết kế bộ nhớ SRAM dựa trên 6T CMOS và trên công nghệ gpdk90nm bằng phần mềm Virtuoso Cadence nhằm đem các kiến thức liên quan đến SRAM đến với mọi người và cũng như việc đánh giá độ trễ, công suất của bộ nhớ và layout từng mạch so với mạch nguyên lý đã được thiết kế Từ đó tiến hành việc nâng cấp các thiết kế này để tạo ra một đầu ra ổn định, giảm độ trễ, công suất tiêu thụ cũng như kích thước của chip trong quá trình layout, nhóm chúng tôi xin đưa ra đề tài “THIẾT KẾ VÀ ĐÁNH GIÁ HIỆU NĂNG

MẢNG Ô NHỚ 6T SRAM 64X64 BIT” Đây là đề tài hướng đến việc nghiên cứu và phát triển SRAM theo nhiều hướng khác nhau, góp phần nâng cao sự phát triển của công nghệ bán dẫn trong việc sản xuất bộ nhớ nói chung và SRAM nói riêng.

Với đề tài này cũng đã có nhiều cá nhân hay nhóm đã thực hiện nghiên cứu ví dụ như: Trong [1] bài báo nói về thiết kế bộ nhớ Sram đồng bộ 32KB với kỹ thuật dự trữ hàng và cột Kết hợp sơ đồ thiết kế cùng với các kỹ thuật như tự căn chỉnh thời gian, đa hợp và giải mã đa tầng, nên thiết kế đạt được hiệu suất cao về tốc độ và công suất So sánh tốc độ truy xuất dữ liệu và công suất tiêu thụ của các kiến trúc SRAM khác nhau như 6T, 7T, 8T Trong [2] bài báo nói về sự so sánh và phân tích các ưu điểm có được của thiết kế 8T so với thiết kế 6T được dùng cho các ô nhớ SRAM Đưa ra phân tích, so sánh chi tiết về công suất và thời gian trễ với các điều kiện hoạt động khác nhau trong thiết kế Trong

[3] bài báo đã trình bày về thiết kế và phân tích hiệu suất của vi mạch với pentacene p-channel và fullerene n-channel OPDK trong Cadence CAD Với p, n điện áp ngưỡng thay đổi làm cho việc trì hoãn tín hiệu bên trong CMOS thấp, cải thiện hiệu suất đọc/ghi của SRAM Tuy nhiên, bài báo chưa so sánh hiệu suất đạt được cũng như là độ trì hoãn của SRAM cấu trúc tế bào so với các cấu trúc SRAM khác và cũng chưa trình bày rõ nguyên lý hoạt động đọc/ghi Trong

[4] bài báo nói về sự so sánh 16bit SRAM bằng thiết kế ô nhớ SRAM khác nhau như 4T, 5T, 6T trong công nghệ CMOS 45nm So sánh về công suất, thời gian truy cập và diện tích của 1 bit ô nhớ trong 3 kiến trúc SRAM khác nhau Với các bài nghiên cứu bên trên nhóm sinh viên quyết định chọn đề tài này để thực hiện cải thiện về các vấn đề hiệu năng, tính ổn định, công suất, kích thước cũng như thực hiện mô phỏng và kiểm tra kĩ từ giai đoạn đọc/ghi so với các đề tài trên.

Mục tiêu nghiên cứu

Đề tài này được thực hiện nhằm mục tiêu:

- Giới thiệu về cấu trúc 6T SRAM gồm các thành phần, mô tả chức năng hoạt động của SRAM

- Đánh giá hoạt động đọc/ghi dữ liệu trên biểu đồ thời gian với từng trường hợp mô phỏng cụ thể

- Sau khi vẽ mạch và mô phỏng thì sinh viên thực hiện tiếp tục tính toán công suất, độ trễ trong các trường hợp đọc/ghi trạng thái “0” và “1”

- Thực hiện các biện pháp cải tiến về mặt ổn định, độ trễ, công suất tiêu thụ.

Nội dung nghiên cứu

Tiến hành tìm hiểu thông tin chi tiết về SRAM6T

Tìm hiểu tổng quan về công cụ của Cadence cụ thể là Virtuoso Cadence Thực hiện nghiên cứu, phân tích, xây dựng sơ đồ khối tổng quát

Thiết kế mạch nguyên lí và thực hiện đóng gói

Mô phỏng, kiểm tra nguyên lý hoạt động và tính toán độ trễ

Tối ưu hóa công suất, độ trễ và diện tích của SRAM6T.

Hạn chế của đề tài

Nội dung đề tài chủ yếu đề cập và làm rõ các vấn đề liên quan đến SRAM 6T cùng với sự phát triển của ô nhớ SRAM đầy đủ Để làm rõ được vấn đề và quan sát được trạng thái hoạt động đọc/ghi đó thì sinh viên thực hiện dùng công nghệ 90nm để vẽ mạch và mô phỏng Trong quá trình vẽ mạch và mô phỏng thì người thực hiện dừng lại ở mức SRAM 64x64 bit.

Bố cục

Trong chương này, sinh viên thực hiện giới thiệu về hướng vi mạch nói chung và SRAM nói riêng Giới thiệu về tình hình nghiên cứu hiện nay, mục tiêu của đề tài, giới hạn của đề tài cũng như bố cục của đồ án

Chương 2: Cơ sở lý thuyết Ở chương này, sinh viên thực hiện nói về cấu tạo và các thành phần trong một bộ nhớ SRAM, nêu lên cụ thể các lý thuyết có liên quan và giới thiệu về phần mềm Cadence được sử dụng để thực hiện đề tài này

Chương 3: Thiết kế hệ thống Ở chương này, sinh viên thực hiện phân tích quy trình đọc/ghi dữ liệu theo từng trường hợp cố định để đưa ra bản thiết kế hoàn chỉnh Sau đó, ghép các thành phần lại và giải thích chức năng hoạt động của từng mạch

Chương 4: Đánh giá qua mô phỏng

Trong chương này, sinh viên thực hiện nói đến các vấn đề liên quan đến kiểm tra đánh giá các trạng thái đọc/ghi được thể hiện qua các trường hợp mô phỏng

Chương 5: Kết luận và hướng phát triển

Trong chương này, sinh viên thực hiện sẽ đưa ra các kết luận về đề tài với những thành quả đã làm và đạt được, bên cạnh đó sẽ nêu những mặt còn hạn chế so với mục tiêu đã đề ra và nêu lên hướng phát triển lớn hơn cho đề tài trong tương lai.

CƠ SỞ LÝ THUYẾT

Tổng quan về bộ nhớ bán dẫn và SRAM

2.1.1 Tổng quan bộ nhớ bán dẫn

Bộ nhớ bán dẫn là một thiết bị được sử dụng để lưu trữ dữ liệu số Bao gồm bộ nhớ lõi từ, vì các chất bán dẫn điện tử này thuộc dạng rắn bao gồm các bóng bán dẫn tiếp giáp lưỡng cực (BJT) nên nó không thể được sử dụng thực tế để làm các phần tử lưu trữ kỹ thuật số Bộ nhớ bán dẫn sớm nhất có từ những năm

1960 với bộ nhớ lưỡng cực sử dụng bóng bán dẫn lưỡng cực Bộ nhớ bán dẫn lưỡng cực làm từ các thiết bị rời rạc được Texas Instruments chuyển giao lần đầu tiên cho không quân Hoa Kỳ vào năm 1961 Về trạng thái rắn bộ nhớ tích hợp được ứng dụng Bob Norman tại Fairchild Semiconductor Bộ nhớ bán dẫn lưỡng cực đầu tiên là SP95 được IBM giới thiệu vào năm 1965 Trong khi bộ nhớ lưỡng cực cung cấp hiệu suất cải thiện hơn bộ nhớ lõi từ, nó không thể cạnh tranh với mức giá thấp hơn của bộ nhớ lõi từ Bộ nhớ lưỡng cực không thể thay thế bộ nhớ lõi từ vì các mạch lậht lưỡng cực quá lớn và đắt tiền

Ngày nay, người thực hiện nghe nhiều về flip flops như một thiết bị nhớ điện tử và thường thấy chúng được lắp ghép với nhau tạo thành các thanh ghi để lưu trữ và chuyển dịch dữ liệu Flip-flops là phần tử bộ nhớ tốc độ cao được sử dụng bên trong của máy tính, nơi dữ liệu được chuyển tiếp liên tục từ nơi này sang nơi khác trong chu kỳ hoạt động Với sự phát triển và tiến bộ của công nghệ sản xuất LSI và VLSI, bộ nhớ bán dẫn với công nghệ sản xuất bóng bán dẫn lưỡng cực và CMOS đã trở nên phát triển và có tốc độ nhanh nhất hiện nay, giá thành cũng dần được giảm xuống Liên quan đến cấu trúc chung của bộ nhớ bán dẫn, có thể dễ dàng nhận thấy chúng được hình thành từ các ô nhớ Mỗi ô nhớ được gọi là một bit và một nhóm ô nhớ tạo thành một từ (word) nhớ dùng để biểu diễn các lệnh hoặc dữ liệu ở dạng nhị phân Mỗi từ (word) trong bộ nhớ bán dẫn được gán một địa chỉ khác nhau để có thể truy cập nội dung của từng từ (word) Tuy nhiên, vì số lượng từ (word) trong bộ nhớ bán dẫn quá lớn, nên các phương pháp khác nhau để giảm thiểu số lượng đường tín hiệu trong thiết kế Khối giải mã địa chỉ sẽ được sử dụng, hình 2.1 biểu thị chức năng giúp giảm số đường địa chỉ của khối giải mã trong kiến trúc bộ nhớ bán dẫn [9]

Hình 2.1: Vai trò của khối giải mã trong bộ nhớ bán dẫn [4]

Từ cấu trúc chung và phân cấp bộ nhớ như trên, có thể phân ra tất cả các loại bộ nhớ bán dẫn được mô tả như hình 2.2 bên dưới

Hình 2.2: Phân loại bộ nhớ bán dẫn

Cụ thể chức năng và cách sử dụng của các loại bộ nhớ bán dẫn lần lượt như sau:

RAM (Random Access Memory) là một thành phần phần cứng của máy tính, phục vụ việc lưu trữ hệ điều hành và các dữ liệu quan trọng khác Nó được biết đến là bộ nhớ chính với khả năng đọc và ghi nhanh hơn đáng kể so với các phương tiện lưu trữ khác như ổ cứng cơ, ổ cứng SSD, và ổ đĩa quang Dữ liệu trên RAM chỉ tồn tại tạm thời; khi máy tính được tắt, dữ liệu này sẽ bị mất Khi máy tính được khởi động lại, hệ điều hành và các tệp tin cần thiết sẽ được tải lại vào RAM từ ổ đĩa cứng (HDD) hoặc ổ đĩa rắn (SSD)

SRAM (Static Random Access Memory) lưu trữ các bit dữ liệu trong bộ nhớ mà không cần thực hiện quá trình làm mới định kỳ như DRAM Điều này làm cho SRAM trở thành sự lựa chọn lý tưởng cho các ứng dụng yêu cầu tốc độ nhanh, như trong CPU, bộ nhớ cache, và các máy chủ nơi hiệu suất là yếu tố quan trọng

DRAM (Dynamic Random Access Memory) là một loại bộ nhớ phổ biến trên các hệ thống máy tính, với khả năng lưu trữ lên đến 8GB cho mỗi chip trên các vi mạch tích hợp hiện đại

ROM (Read-Only Memory) là một thành phần quan trọng trong hệ thống máy tính, lưu trữ các thông tin không thay đổi dài hạn Khác với RAM, thông tin nhị phân trong ROM được lưu giữ vĩnh viễn, không bị mất khi máy tính tắt nguồn

PROM (Programmable Read-Only Memory) là loại bộ nhớ chỉ đọc có khả năng được lập trình Ban đầu, nó là một không gian bộ nhớ trống, được lập trình để lưu trữ thông tin cụ thể

EPROM (Erasable Programmable Read-Only Memory) cho phép xóa và lập trình lại nhiều lần Tuy nhiên, sau khi đã lập trình, nó trở thành một mẫu cố định không thể thay đổi

EEPROM (Electrically Erasable Programmable Read-Only Memory) tương tự như EPROM nhưng có khả năng xóa lại trạng thái ban đầu bằng cách sử dụng tín hiệu điện, không cần sử dụng ánh sáng cực tím như EPROM Nó cho phép xóa hoặc ghi một byte dữ liệu tại một thời điểm

FLASH là một loại bộ nhớ điện tĩnh có thể xóa và lập trình lại, giống như EEPROM, nhưng có thể được đọc/ghi bằng điện và không mất dữ liệu khi không cung cấp nguồn điện

Hệ thống phân cấp của một một nhớ truyền thống bao gồm 3 cấp độ như hình 2.3 bên dưới:

+ RAM tĩnh (SRAM): SRAM cung cấp thời gian truy cập nhanh hơn, nhưng giảm thiểu và bit mật khẩu thấp nhất (bit tốc độ) SRAM phù hợp với bộ nhớ đệm

+ RAM động (DRAM): Rẻ hơn, dày đặc hơn và chậm hơn SRAM, DRAM truyền thống là chip bộ nhớ chính bên ngoài được lựa chọn nhiều nhất

+ Đĩa cứng: Đĩa cung cấp tốc độ bit rất cao và chi phí rất thấp mỗi bit, với thời gian truy cập tương đối chậm Đây là phương tiện truyền thông được lựa chọn đơn giản để lưu trữ bên ngoài như một phần của bộ nhớ phân cấp hệ thống

Hình 2.3: Hệ thống phân cấp bộ nhớ truyền thống [10]

Vấn đề sự tách biệt giữa bộ xử lí và bộ nhớ trong quá trình truy xuất đọc ghi của bộ xử lí vào bộ nhớ sẽ mất nhiều thời gian từ đó sẽ dẫn đến sự chậm trễ và điều này thì rất quan trọng đối với máy tính hiện đại SRAM (Static Random Access Memory) hay bộ nhớ truy xuất ngẫu nhiên tĩnh được ra đời để làm giảm thiểu vấn đề này

Kiến trúc ô nhớ

Bộ nhớ SRAM hoàn chỉnh bao gồm các mảng ô nhớ đi kèm với các khối ngoại vi chịu nhiều chức năng khác nhau như: khối giải mã hàng, khối giải mã cột, khối cảm nhận khuếch đại, khối ghi dữ liệu và các khối nạp trước Trong một hoạt động đọc và ghi dữ liệu của một bộ nhớ SRAM được thiết kế bao gồm

4 khối cơ bản: Khối nạp trước; Khối đọc dữ liệu với nguyên lý cảm nhận và khuếch đại tín hiệu; Khối ghi dữ liệu vào ô nhớ; khối lưu trữ dữ liệu là các ô nhớ Sau đây là sơ đồ khối của SRAM như hình 2.4:

Hình 2.4: Các khối cơ bản có trong SRAM [2]

Trong hệ thống SRAM như hình 2.4, các khối cơ bản được kết nối với nhau thông qua hai đường bitline: Bitline True (BT) và Bitline Bar (BB) Để khối hoạt động, nó cần nhận nguồn từ Vss và Vdd, thường được cung cấp cho mỗi nhóm khối Tín hiệu PRE (Precharge Enable) được sử dụng để chuẩn bị các đường bitline BT và BB bằng cách kéo chúng lên mức cao logic, thường là Vdd Các đường sense và sense_b được kết nối tương ứng với các bitline BT và BB Tín hiệu REN (Read Enable) được sử dụng trong khối cảm biến và khuếch đại để đọc dữ liệu từ ô nhớ SRAM Khi REN được kích hoạt, dữ liệu được lưu trữ trong ô nhớ SRAM được truy cập và đưa ra qua hai đường dữ liệu tương ứng, được gọi là Read Out (RDO) và Read Out Bar (RDO_b)

Trong quá trình ghi dữ liệu, tín hiệu đầu vào DI (Data Input) xác định giá trị của bit dữ liệu cần ghi vào ô nhớ Tín hiệu WE (Write Enable) là tín hiệu cho phép hoạt động ghi dữ liệu Khi WE được kích hoạt, dữ liệu từ DI sẽ được lưu vào ô nhớ

Trong khối ô nhớ SRAM, tín hiệu WL (Wordline) được điều khiển bởi bộ giải mã địa chỉ để cho phép truy cập vào ô nhớ cụ thể trong SRAM để thực hiện các hoạt động ghi/đọc.

Thành phần của SRAM

Các mảng bộ nhớ SRAM được sắp xếp theo hàng và cột tương ứng gọi là

WL, BL và BLB Mỗi ô bộ nhớ được thiết kế bởi 6 transistor theo mô hình 6T SRAM và mỗi một vị trí có một địa chỉ duy nhất được xác định bởi giao điểm của một hàng và cột

Chịu trách nhiệm cho sạc trước BL, phát hiện bit được lưu trữ trong suốt hoạt động đọc và điều khiển BL trong quá trình ghi Tốc độ mà bộ nhớ phải hoạt động và số lượng dữ liệu I/O trên chip cũng được xác định

Chịu trách nhiệm cung cấp tín hiệu Clk cho tất cả các mạch khác, cấp tín hiệu để giải mã mạch, đầu vào dữ liệu và tín hiệu cho phép cho mạch đọc/ghi

Bộ giải mã “n” đường địa chỉ sang “2 n ” đường địa chỉ Các dòng địa chỉ n- bit được chốt vào Clk và được đưa ra làm đầu vào Đầu ra của bộ giải mã được kết nối với từng WL của mảng ô nhớ.

Độ trễ tín hiệu và công suất tiêu thụ

2.4.1 Độ trễ tín hiệu Độ trễ tín hiệu là thời gian trễ lan truyền lớn nhất tính từ lúc tín hiệu ngõ vào 50% giá trị ổn định đến khi tín hiệu ngõ ra 50% giá trị ổn định như hình 2.8 Người thực hiện có thể tính được độ trễ tín hiệu khi truyền qua một cổng logic với công thức 2.1 như sau:

TPD: Độ trễ lan truyền

TPLH: Độ trễ lan truyền từ mức thấp lên cao

TPHL: Độ trễ lan truyền từ mức cao xuống thấp

Hình 2.5: Thời gian trễ lan truyền và thời gian chuyển cạnh lên/xuống[7]

Các giá trị thời gian trễ được xác định như hình 2.5:

Thời gian trễ là thời gian nhỏ nhất từ lúc tín hiệu ngõ vào 50% giá trị ổn định đến khi tín hiệu ngõ ra 50% giá trị ổn định

Thời gian cạnh lên (tr) là thời gian để một dạng sóng tăng lên từ 20% đến 80% của giá trị ổn định

Thời gian cạnh xuống (tf) là thời gian để một dạng sóng giảm từ 80% đến 20% của giá trị ổn định

Suy ra ta có thể tính tốc độ cạnh:

Khi ngõ vào thay đổi, ngõ ra sẽ duy trì giá trị cũ tối thiểu bằng thời gian trễ và lấy giá trị mới tối đa bằng thời gian trễ lan truyền

Công suất tiêu thụ là công suất tức thời P(t) được tiêu thụ hoặc cung cấp bởi một phần tử của mạch là tích của dòng điện đi qua phần tử đó với điện áp đặt lên phần tử đó:

P(t) = U(t) V(t) (2.3) Công suất tiêu thụ trung bình trên khoảng thời gian chu kỳ T là:

Trong mạch CMOS sự tiêu tán công suất bắt nguồn từ hai yếu tố: công suất động và công suất tĩnh

+ Công suất động: đại diện chủ yếu là công suất chuyển mạch và công suất ngắn mạch (khi các transistor cũng hoạt động sẽ tạo ra 1 dòng điện lớn không mong muốn)

+ Công suất tĩnh: là công suất khi mạch được cấp nguồn và hoàn toàn không có xung clock hay các tín hiệu điều khiển trong mạch Đại diện chính là công suất rò rỉ

THIẾT KẾ HỆ THỐNG

Thiết kế sơ đồ khối hệ thống SRAM 6T 64x64

Bộ nhớ SRAM hoàn chỉnh bao gồm các mảng ô nhớ đi kèm các khối ngoại vi chịu nhiều chức năng khác nhau, kiến trúc của hệ thống ô nhớ 6T SRAM 64x64 gồm các khối chính như sau:

Khối giải mã: tăng tốc độ truy cập dữ liệu và đảm bảo việc truy cập đến ô nhớ chính xác và đáng tin cậy Gồm 6 ngõ vào và 64 ngõ ra, một trong các ngõ ra sẽ hoạt động ở mức cao dựa trên sự kết hợp của ngõ vào hiện có giúp phát hiện một mã cụ thể

Khối nạp trước: kéo hai dòng bit BL và BLB lên Vdd trước các thao tác đọc mỗi khi cột không được chọn

Khối ghi dữ liệu: lưu trữ dữ liệu vào các ô nhớ SRAM kiểu 6 transistor Mỗi cột gồm nhiều ô nhớ trong SRAM sẽ có một mạch ghi của riêng nó Mạch ghi này được kiểm soát bởi bộ điều khiển đọc-ghi (Read-Write Control Circuit) Mảng ô nhớ 6 transistor (6T SRAM 64x64): là thành phần chính được thiết kế để lưu trữ dữ liệu, tính toán độ trễ và công suất của mạch Các ô nhớ này được tạo thành từ 6 transistor và ghép thành 1 ô nhớ

Khối khuếch đại cảm nhận: khuếch đại một điện áp sai biệt nhỏ trên đường bit (được phát triển bởi một ô nhớ đang được truy cập) thành tín hiệu đầu ra kỹ thuật số toàn phạm vi, giúp giảm thiểu thời gian cần thiết cho hoạt động đọc

Sơ đồ khối hệ thống ô nhớ 6T SRAM được thể hiện qua hình 3.1 bên dưới:

Hình 3.1: Sơ đồ khối hệ thống ô nhớ 6T SRAM 64x64

Việc tối ưu hóa sẽ được thực hiện với các khối giải mã và khuếch đại cảm nhận để cho ra kết quả và được so sánh với các thiết kế truyền thống Cụ thể: Khối giải mã sẽ được thiết kế theo 2 phương pháp khác nhau để ghép thành bộ giải mã 6 sang 64 Sử dụng bộ giải mã 2 sang 4 sẽ làm cho số lượng transistor cần thiết giảm xuống thấp nhất nhưng sẽ làm tăng số tầng của mạch làm cho độ trễ cao hơn Để khắc phục việc độ trễ sẽ thực hiện ghép từ bộ giải mã 3 sang 8 nhưng sẽ làm tiêu thụ nhiều transistor hơn từ đó làm cho kích thước và công suất của mạch sẽ lớn hơn Ở bài báo cáo này nhóm sinh viên sẽ so sánh 2 phương pháp và cho ra lựa chọn tốt nhất để tối ưu hóa

Khối khuếch đại cảm nhận sẽ được thiết kế theo các phương pháp khác nhau Phương pháp truyền thống nhất là việc sử dụng 2 cổng NOT ghép nối tiếp để tái tạo lại mức tính hiệu một cách rõ ràng nhưng việc đưa ngõ ra qua 2 cổng

NOT sẽ làm cho việc độ trễ ngõ ra tăng cao và tăng công suất mạch Nhóm sinh viên áp dụng các thiết kế công suất thấp để tối ưu hóa như bộ khuếch đại tuyến tính và bộ khuếch đại dạng chốt 2 kiến trúc này sẽ được áp dụng và so sánh với kiến trúc nguyên bản của SRAM6T.

ĐÁNH GIÁ QUA MÔ PHỎNG

Mô hình mô phỏng và định nghĩa các testcase

Thiết kế SRAM 6T giúp nhóm sinh viên hiểu rõ hơn về quy trình hình thành nó, từ đó có thể nắm được các kiến thức thực tiễn thông qua các lý thuyết ở phần cơ sở lý thuyết Đi kèm với việc thiết kế thì mô phỏng và đánh giá chức năng là không thể thiếu, khi thực hiện thiết kế đúng với lí thuyết nhưng khi mô phỏng sẽ phát sinh các tình huống khác giúp nhóm sinh viên có khả năng nhận biết được vấn đề của thiết kế đã tạo ra, từ đó có thể hiệu chỉnh và đảm bảo hoạt động của nó là trơn tru và hiệu quả nhất

Trong đồ án này nhóm sinh viên sẽ tiến hành thiết kế và đánh giá các khối bên trong của SRAM 6T sau đó sẽ tiến hành lắp ráp lại tạo thành 1 SRAM hoàn chỉnh với dung lượng 64x64 bit Với mỗi khối của SRAM sẽ có một mạch đại diện cho nó và được chia thành các phần nhỏ để thiết kế và đánh giá như bên dưới Nhóm thực hiện cũng sẽ đánh giá các thiết kế để cải tiến về hiệu suất cũng như năng lượng của SRAM 6T và so sánh giữa các thiết kế này từ đó cho ra thiết kế tối ưu nhất với SRAM 6T 64x64

Các nội dung thực hiện đánh giá sau khi thiết kế và mô phỏng như trong bảng 4.1:

Bảng 4.1: Các thông số đánh giá chức năng của từng khối trong SRAM 6T

Nguyên lí hoạt động Kiểm tra các trường hợp Đặc tính điện DC

IDD (Dòng điện tiêu thụ)

VOH (Điện áp mức “1” ở ngõ ra)

VOL (Điện áp mức “0” ở ngõ ra

IIH (Dòng điện mức “1” ở ngõ vào)

IIL (Dòng điện mức “0” ở ngõ vào) Đặc tính điện AC tPLH (Thời gian trễ thấp đến cao) tPHL (Thời gian trễ cao xuống thấp) tTLH (Thời gian chuyển mạch thấp đến cao) tTHL (Thời gian chuyển mạch cao xuống thấp)

Pmax (Công suất tiêu thụ cực đại) Pmin (Công suất tiêu thụ cực tiểu) Pavg (Công suất tiêu thụ trung bình) Điều kiện mô phỏng chung được thể hiện ở bảng 4.2 sau:

Bảng 4.2: Bảng điều kiện mô phỏng chung Điều kiện Mô tả

Tỷ lệ W/L pMOS = 3W/L nMOS (pMOS = 360nm/100nm, nMOS = 120nm/100nm) Transition time Điện áp: VDD = 0.8V, 1V (lí tưởng), 1.2V và GND 0V

Tần số lớn nhất 10MHz (9voiws ngõ vào là Vpulse) Độ trễ Tpd Được tính dựa trên trung bình của TpLH và TpHL

Là trường hợp tệ nhất mô phỏng được

Mô phỏng ô nhớ (Cell Memory)

4.2.1 Mô phỏng và kiểm tra nguyên lý hoạt động của ô nhớ

Nhắc lại nguyên lí hoạt động của ô nhớ trong phần lý thuyết và tuân theo các kí hiệu:

+ Trong chế độ lưu trữ dữ liệu: đường tín hiệu WL sẽ không được kích hoạt Điều này dẫn đến các transistor MN2 và MN3 ngừng dẫn, đường tín hiệu BL và BLB bị cách ly hoàn toàn với ô nhớ lưu trữ dữ liệu Do đó, ô nhớ SRAM sẽ lưu trữ trạng thái dữ liệu được ghi trước đó cho đến khi đường WL kích hoạt cho hoạt động đọc/ghi

+ Trong chế độ đọc/ghi dữ liệu: lúc này tính hiệu đường WL sẽ hoạt động để còn ô nhớ cần đọc/ghi dữ liệu dẫn đến dường BL và BLB được nối vào điểm

Q và QB Từ đó dữ liệu sẽ được ghi vào hoặc đọc ra từ ô nhớ

Thực hiện mô phỏng chức năng của ô nhớ bằng cách xem các tín hiệu đầu vào của nó là từng nguồn cấp với mức điện áp khác nhau Từ đó xem ngõ ra đã đúng với nguyên lí hoạt động của nó hay chưa Để thực hiện điều này nhóm thực hiện có mạch kiểm tra của ô nhớ như hình 4.1:

Hình 4.1: Mạch kiểm tra nguyên lí hoạt động của ô nhớ SRAM 6T Đi sâu vào thực hiện mô phỏng chúng tôi sẽ tiến hành mô phỏng các trường hợp sau:

* TH1: Ô nhớ đã lưu 1 giá trị khi đường WL tích cực mức cao (1.2V) và sau đó đường WL xuống mức thấp (0V)

Hình 4.2: Sóng ngõ ra của ô nhớ 6T trong TH1

Dựa vào hình 4.2, chúng ta có thể thấy trạng thái của ô nhớ trước khi WL xuống mức thấp là trạng thái ghi giá trị từ đường BL và BLB vào trong điểm Q và QB Cụ thể trong trường hợp từ 600 us đến 800 us ô nhớ đang lưu giá trị là

‘0’, khi đến 900 us lúc này tín hiệu WL xuống mức thấp lúc này 2 transistor MN2 và MN3 sẽ ngưng dẫn làm cho giá trị tại điểm Q và QB giữ nguyên dẫn đến ô nhớ sẽ giữ nguyên giá trị lưu vào ban đầu

Mở rộng ra thêm khi ô nhớ giữ nguyên giá trị ban đầu nó lưu được, nhưng tín hiệu WL lên mức cao 1 lần nữa thì ô nhớ sẽ tiếp tục ghi

Hình 4.3: Mở rộng Sóng ngõ ra của ô nhớ 6T trong TH1

Thông qua hình 4.3, ta nhận thấy khi tín hiệu WL tích cực mức cao trở lại, ngay lập tức ô nhớ sẽ thực hiện ghi giá trị từ đường BL và BLB vào trong điểm

* TH2: Quá trình ô nhớ lưu dữ liệu bit ‘0’ và bit ‘1’ phụ thuộc vào đường tín hiệu BL và BLB khi tín hiệu WL tích cực

+ Ô nhớ lưu dữ liệu bit ‘0’: để ô nhớ lưu dữ liệu bit ‘0’ chúng tôi sẽ giả sử như có một mạch ghi để ghi dữ liệu data vào ô nhớ thông qua đường BL và BLB Để ghi giá trị bit ‘0’ vào ô nhớ thì BL = 0 và BLB = 1

Thực hiện mô phỏng cho tín hiệu vào BL = 0V và BLB = 1.2V Tín hiệu

WL sẽ là 1 tín hiệu xung vuông với nữa đầu không tích cực và nữa sau tích cực

Hình 4.4: Quá trình lưu dữ liệu bit “0” của ô nhớ 6T

Theo hình 4.4, khi đường dữ liệu BL và BLB lần lượt bằng ‘0’ và ‘1’ và đường tín hiệu WL tích cực (tượng trưng cho ô nhớ được chọn) thì tín hiệu của

BL và BLB sẽ được lưu vào điểm Q và QB của ô nhớ lần lượt là ‘0’ và ‘1’ lúc này giá trị của ô nhớ này là ‘0’ Ô nhớ thực hiện lưu bit ‘1’: Tương tư việc thực hiện lưu bit 0 ô nhớ sẽ lưu giá trị là ‘1’ khi và chỉ khi đường tín hiệu WL được tác động mức cao và đường

BL = ‘1’, đường BLB = ‘0’ lúc này giá trị của BL và BLB sẽ được lưu vào ô nhớ Dẫn đến giá trị bên trong ô nhớ lúc này là ‘1’ như hình 4.5:

Hình 4.5: Quá trình lưu dữ liệu bit “1” của ô nhớ 6T

4.2.2 Mô phỏng và kiểm tra các thông số của ô nhớ

Mạch kiểm tra ô nhớ được mô phỏng thông qua Cadence như hình 6.4:

Hình 4.6: Mạch kiểm thông số của ô nhớ SRAM 6T

Sau khi mô phỏng và kiểm tra mạch ô nhớ, nhóm sinh viên tổng hợp được bảng thông số như hình 4.3 sau:

Bảng 4.3: Thông số của ô nhớ SRAM 6T từ mô phỏng

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

IDD max = 202.254 uA IDD min = 1.4048 nA IDD avg = 153.2 nA

WL IIL = 65.6106 pA Đặc tính điện AC tPLH

Pmax = 242.823 uW Pmin = 1.7741 nW Pavg = 183.8 nW

Mô phỏng mạch nạp trước (Pre-Charge)

4.3.1 Mô phỏng và kiểm tra nguyên lý hoạt động của mạch nạp trước

Mạch nạp trước được mô phỏng thông qua Cadence như hình 4.7 sau:

Hình 4.7: Mạch kiểm tra nguyên lí hoạt động của mạch nạp trước SRAM 6T

Thực hiện kiểm tra từng trường hợp của ngõ vào điều khiển

* TH1: PRE tích cực mức cao Cho phép nạp giá trị Vdd vào 2 đường BL và BLB

Hình 4.8: Sóng ngõ ra của mạch nạp trước SRAM 6T trong TH1 Ở hình 4.8, chúng tôi nhận thấy khi tính hiệu PRE lên ‘1’ hay tích cực mức cao thì lúc này giá trị của 2 đường BL và BLB được kéo lên Vdd

*TH2: PRE không tích cực Đường BL và BLB không được nạp giá trị Vdd

Hình 4.9: Sóng ngõ ra của mạch nạp trước SRAM 6T trong TH2 Ở hình 4.9, chúng tôi nhận thấy khi tính hiệu PRE xuống ‘0’ hay không tích cực thì lúc này giá trị của 2 đường BL và BLB được cách ly khỏi đường Vdd Dẫn đến giá trị điện áp của 2 đường này dần trở về mức logic ‘0’ ban đầu

4.3.2 Mô phỏng và kiểm tra các thông số của mạch nạp trước

Sau khi mô phỏng và kiểm tra mạch nạp trước, nhóm sinh viên tổng hợp được bảng thông số như bảng 4.4 sau:

Bảng 4.4: Thông số của mạch nạp trước SRAM 6T

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

IDD max = 6.77483 nA IDD min = - 6.05725 nA IDD avg = 25.59 pA

BL VOL = 795.218 mV BLB VOL = 795.218 mV

IIL PRE IIL = -8.179 pA Đặc tính điện AC tPLH PRE

BL tPLH = 328.657 ns BLB tPLH = 309.687 ns tPHL PRE

BL tPHL = 214.985 ns BLB tPHL = 199.388 ns tTLH

BL tTLH = 1.82417 us BLB tTLH = 1.6378 us tTHL

BL tTHL = 1.2255 us BLB tTHL = 764.736 us

Pmax = 8.011 nW Pmin = 1.255 pW Pavg = 37.02 pW

Mô phỏng mạch ghi (Write-Driver)

4.4.1 Mô phỏng và kiểm tra nguyên lý hoạt động của mạch ghi

Mạch ghi được mô phỏng thông qua Cadence như hình 4.10 sau:

Hình 4.10: Mạch dùng để kiểm tra hoạt động của mạch ghi

Thực hiện kiểm tra các trường hợp của mạch ghi như hình 4.11: Đánh giá từng trường hợp của mạch ghi để kiểm tra xem hoạt động của mạch ghi đúng với chức năng như phần lí thuyết đã nêu bên trên hay chưa Vì SRAM khi thực hiện ghi dữ liệu vào ô nhớ phải có mạch nạp trước để thực hiện kéo giá trị của 2 đường BL và BLB lên Vdd, nên khi kiểm tra hoạt động ta nên có mạch nạp trước để mạch hoạt động ổn định như hình

4.4.2 Mô phỏng và kiểm tra các thông số của mạch ghi

Sau khi mô phỏng và kiểm tra mạch ghi, nhóm sinh viên tổng hợp được bảng thông số như bảng 4.5 sau:

Bảng 4.5: Thông số của mạch ghi SRAM 6T

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

IDDmax = 336.598 nA IDD min = 2.04851 uA IDD avg = 182.2 nA

BL VOH = 721.087 mV BLB VOH = 721.085 mV

BL VOL = 329.737 mV BLB VOL = 329.737 mV

WE IIH = 2.39799 uA Data_in IIH = 3 uA

WE IIL = 29.8428 nA Data_in IIL = 5.306 nA Đặc tính điện AC tPLH

BLB tPLH = 32.8763 ns Data_in

BL tPLH = 30.3551 ns BLB tPLH = 6.3818 ns tPHL

Data_in BL tPHL = 7.3439 ns

BL tTLH = 22.3845 ps BLB tTLH = 20.5645 ns tTHL

BL tTHL = 110.11 ns BLB tTHL = 684.6 ps Công suất tiêu thụ Pmax = 411.348 uW

Mô phỏng mạch khuếch đại cảm nhận (Sense Amplifier)

4.5.1 Mô phỏng mạch khuếch đại cảm nhận dạng linear

Ta thực hiện kiểm tra bằng nguồn đầu vào VDD = 1.2V, TA = 25 độ C, tr và tf input bằng 1us và các nguồn xung vuông để thực hiện thay đổi trạng thái của các tín hiệu ngõ vào BL, BLB, SE như hình 4.12 Dựa vào đó ta có thể xem sóng ngõ ra của DATA_OUT

Hình 4.12: Mạch kiểm tra nguyên lí hoạt động của mạch khuếch đại dạng liner

Hình 4.13: Dạng sóng hoạt động của mạch khuếch đại dạng liner SRAM 6T

Theo hình 4.13, ta có kết quả mô phỏng hoạt động mạch khuếch đại cảm nhận với 3 TH:

*TH1: Khung màu đỏ trên hình 108 Khi tín hiệu SE xuống mức thấp (do đường WL chưa được kích hoạt), bất kể mức điện áp của BL và BLB thì tín hiệu DATA_OUT vẫn sẽ xuống mức thấp

*TH2: Khi tín hiệu SE lên mức cao đồng nghĩa với đường WL được kích hoạt, các mức điện áp tại BT và BLB sẽ có giá trị đối ngược nhau với BT lên mức cao thì BLB xuống mức thấp và ngược lại, đồng thời trong lúc đó tín hiệu DATA_OUT sẽ có mức điện áp giống với đường BLB trong TH3 như trên hình đã thể hiện hoạt động đó của mạch khuếch đại

*TH3: Tuy nhiên theo như hình, khi tín hiệu SE lên mức cao, tín hiệu BLB đang mức thấp thì ngõ ra DATA_OUT phải ở mức thấp tuy nhiên vẫn có một khoảng thời gian giá trị DATA_OUT vẫn ở mức cao, lý do là tín hiệu DATA_OUT vẫn giữ một mức điện áp cao là mức điện áp của BLB lúc đó vẫn đang ở mức cao trong một xung trước khi xuống thấp hoàn toàn điều này một lần nữa nhằm khẳng định tính quan trọng của các thông số độ trễ và thời gian chuyển mạch có thể làm ảnh hưởng đến hoạt động của một mạch mà SRAM 6T thường hay gặp lỗi

Thực hiện mô phỏng với nguồn đầu vào Vdd = 1.2V, TA = 25 độ C, tr và tf input bằng 1us và các nguồn xung vuông để thực hiện thay đổi trạng thái của ngõ vào IN Ta có thể đo được đặc tính DC, AC và cho ra được kết quả như bảng 4.6 dưới đây:

Bảng 4.6: Thông số của mạch khuếch đại cảm nhận dạng linear

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện

IDD max = 190.816uA IDDmin = 22.3265A IDDavg = 7.247 uA

SE IIH = 5.8714 nA BLB IIH = 15.9795nA

IIL = 10.4121 pA BLB IIL = 65.9822pA

BL IIL = 68.6757pA Đặc tính điện

SE tPLH = 103.946 ns BLB tPLH = 117.082 ns

BL tPLH = 115.552 ns tPHL DATA_OUT

SE tPHL = 102.245 ns BLB tPHL = 113.904 ns

BL tPHL = 114.949 ns tTLH DATA_OUT tTLH = 470.092 ns tTHL DATA_OUT tTHL = 176.691 ns Pmax = 228.98uW

4.5.2 Mô phỏng mạch khuếch đại cảm nhận dạng latch với 2 Transistor truyền dẫn

Mạch khuếch đại cảm nhận dạng latch với 2 transitor truyền dẫn được mô phỏng thông qua Cadence như hình 4.11 sau:

Hình 4.14: Mạch kiểm tra nguyên lí hoạt động của mạch khuếch đại dạng latch

Dạng sóng ngõ ra được thể hiện ở hình 4.15 sau:

Hình 4.15: Dạng sóng hoạt động của mạch khuếch đại dạng latch SRAM 6T

Nhìn chung về nguyên lí hoạt động của 2 loại mạch khuếch đại cảm nhận là tương đối như nhau Việc nhận tín hiệu đầu vào của 2 đường BL và BLB để thực hiện và khuếch đại đưa ra ngõ ra OUT đã thực hiện đúng chức năng

Ta sẽ tiến hành đo đạt các thông số về đặc tính điện để cho ra kết quả về hiệu quả của hai loại như bảng 4.7:

Bảng 4.7: Thông số của mạch khuếch đại cảm nhận dạng latch với 2 transitor truyền dẫn

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện

IDD max = 10.03 uA IDDmin = 120.2 pA IDDavg = 264 nA

SE IIH = 19.68 nA BLB IIH = 5.588 uA

SE IIL = 4.517 pA BLB IIL = 1.215 pA

BL IIL = 6.624 pA Đặc tính điện

SE tPLH = 20.7978 ns BLB tPLH = 3.259 ns

BL tPLH = 11.919 ns tPHL DATA_OUT

SE tPHL = 10.778 ns BLB tPHL = 5.371 ns

BL tPHL = 10.236 ns tTLH DATA_OUT tTLH = 470.092 ns tTHL DATA_OUT tTHL = 176.691 ns

Pmax = 10.23 uW Pmin = 161.8 pW Pavg = 261.348 nW

Sau khi thực hiện mô phỏng 2 loại mạch khuếch đại cảm nhận dạng tuyến tính và dạng latch cho ta kết quả như bảng 4.6 và bảng 4.7 Từ đó ta có thể đưa ra đánh giá chung về hai loại này

→ Với thiết kế dạng tuyến tính: Ngõ ra có giá trị điện áp cao và thấp là tương đối rõ rệt với VOH = 1.2V và VOL = 29.1uV Đảm bảo được độ tin cậy của tín hiệu ngõ ra từ đó sẽ giúp trống được các nhiễu phát sinh trên đường đây truyền dẫn như các hiện tượng IR Drop, CrossTalk, và các hiện tượng khác Với khoảng cách giữa VOH và VOL từ đó sẽ làm cho mạch có khả năng kéo được nhiều tải (số lượng fan-out tối đa cao) và slew của ngõ ra sẽ được đảm bảo khi kết nối với các thành phần khác bên ngoài mạch

→ Với thiết kế dạng chốt có transistor truyền dẫn: Tuy không đạt được điện áp ngõ ra rõ rệt như dạng tuyến tính nhưng ở thiết kế này thế mạch về timing được thể hiện rất rõ vì tính hiệu từ đường BL và BLB có thể truyền đến DATA_OUT nhanh hơn nhiều lần so với dạng tuyến tính thời gian trễ giữa các tín hiệu điều khiển (SE) và ngõ ra chỉ khoảng 19.417% so với mạch khuếch đại tuyến tính Độ trễ của ngõ vào BL và BLB so với ngõ ra chỉ khoảng 2% so với mạch khuếch đại tuyến tính vì cơ chế chốt của mạch khuếch đại dạng chốt rất nhạy cảm ở cạnh của tín hiệu SE từ đó cho ta một khả năng hoàn hảo về timing.

Mô phỏng mạch giải mã (Decoder)

4.6.1 Mô phỏng mạch giải mã từ 2 sang 4

*Mô phỏng nguyên lí hoạt động

Thực hiện mô phỏng kiểm tra hoạt động của mạch decoder 6 sang 64 xem có đúng với lí thuyết hay không bằng cách ta xem các tín hiệu ngõ vào E, A0 - A5, và ngõ ra có hoạt động đúng với nguyên lý được nêu ở trên hay chưa Để thực hiện điều này ta thực hiện kiểm tra bằng cách cấp nguồn đầu vào VDD 1.2V, TA = 25 độ C, tr và tf input bằng 1us và nguồn xung vuông để thực hiện thay đổi trạng thái của ngõ vào Việc thực hiện mô phỏng hoạt động sẽ lựa chọn

3 ngõ ra trong 64 ngõ ra để mô phỏng Kết quả mô phỏng như hình 4.16:

Hình 4.16: Kết quả hoạt động của mạch giải mã hàng

Ta nhận thấy khi giá trị của các đường từ A0 đến A5 lần lượt là 000010 (D2), 010001 (D17), 011101 (D29) từ đó cho ra kết luận mạch đúng nguyên lí hoạt động

*Mô phỏng các thông số đặc tính điện DC, AC và năng lượng của mạch như bảng 4.8:

Bảng 4.8: Thông số mô phỏng của mạch giải mã 6 sang 64 sử dụng bộ giải mã 2 sang 4

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

C nguồn 1.2 V, Tr và Tf là 1u

IDD max = 13.027 mA IDD min = 301.9 nA IDD avg = 452.8 nA

D2 VOL = 638.9 nV D17 VOL = 574.2 nV D29 VOL = 595.4 nV

E IIH = 39.468 uA A5 IIH = 618.62 uA A4 IIH = 584.45 uA A3 IIH = 144.23 uA A2 IIH = 148.7 uA A1 IIH = 63.28 uA A0 IIH = 40.68 uA

E IIL = 38.77 pA A5 IIL = 2.08 nA A4 IIL = 3.119 nA A3 IIL = 519.9 pA A2 IIL = 778.62 pA A1 IIL = 130.3 pA A0 IIL = 166.48 pA Đặc tính điện AC Delay

C nguồn 1.2 V, tr và tf là 1u

D2 tTLH = 21.3085 ps D17 tTLH = 22.447 ps D29 tTLH = 20.8599 ps tTHL

D2 tTLH = 13.0238 ps D17 tTLH = 14.5948 ps D29 tTLH = 15.4134 ps

Pmax = 15.632 mW Pmin = 362.28 nW Pavg = 452.8 nw

4.6.2 Mô phỏng mạch giải mã từ 3 sang 8

*Mô phỏng nguyên lí hoạt động

Thực hiện mô phỏng kiểm tra hoạt động của mạch decoder 6 sang 64 xem có đúng với lí thuyết hay không bằng cách ta xem các tín hiệu ngõ vào E, A0 - A5, và ngõ ra có hoạt động đúng với nguyên lý được nêu ở trên hay chưa Để thực hiện điều này ta thực hiện kiểm tra bằng cách cấp nguồn đầu vào VDD 1.2V, TA = 25 độ C, tr và tf input bằng 1us và nguồn xung vuông như hình 4.17 để thực hiện thay đổi trạng thái của ngõ vào Việc thực hiện mô phỏng hoạt động sẽ lựa chọn 3 ngõ ra trong 64 ngõ ra để mô phỏng Kết quả mô phỏng như hình 4.17:

Hình 4.17: Kết quả hoạt động của mạch giải mã hàng

Ta nhận thấy khi giá trị của các đường từ A0 đến A5 lần lượt là 000010 (D2), 010001 (D17), 011101 (D29) từ đó cho ra kết luận mạch đúng nguyên lí hoạt động

*Mô phỏng các thông số đặc tính điện DC, AC và năng lượng của mạch như hình 4.9

Bảng 4.9: Thông số mô phỏng của mạch giải mã 6 sang 64 sử dụng bộ giải mã 3 sang 8

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

C nguồn 1.2 V, Tr và Tf là 1u

IDD max = 4.306 mA IDD min = 38.6 nA IDD avg = 204.5 nA

D2 VOL = 568.146 nV D17 VOL = 644.328 nV D29 VOL = 711.817 nV

A5 IIH = 195.5 pA A4 IIH = 130.3 pA A3 IIH = 33.7 uA A2 IIH = 144.2 uA A1 IIH = 584.5 uA A0 IIH = 618.6 uA

E IIL = 53.96 pA A5 IIL = 15.08 nA A4 IIL = 11.09 nA A3 IIL = 13.25 nA A2 IIL = 48.22 nA A1 IIL = 95.27 nA A0 IIL = 55.11 nA Đặc tính điện AC

C nguồn 1.2 V, tr và tf là 1u

D2 tTLH = 35.366 ps D17 tTLH = 31.097 ps D29 tTLH = 32.976 ps tTHL

D2 tTLH = 17.358 ps D17 tTLH = 27.764 ps D29 tTLH = 25.8107 ps

Pmax = 5.1672 uW Pmin = 46.32 nW Pavg = 245.4 nw

Mô phỏng SRAM 6T

Vì SRAM được thực hiện với nhiều ô nhớ và có dung lượng cao Khi tiến hành đánh giá chúng tôi sẽ đánh giá một vài trường hợp tiêu biểu để xem tính ổn định và độ chính xác của SRAM 6T như thiết kế bên trên Việc đánh giá bao gồm: Nguyên lí hoạt động, đặc tính điện DC, đặc tính điện AC, công suất tiêu thụ trong một quá trình ghi và đọc một dữ liệu đầu vào nhất định

Thực hiện đánh giá nguyên lí hoạt động của một SRAM 6T bằng cách cho các tín hiệu ngõ vào với từng trường hợp và xem xét tín hiệu ngõ ra của nó xem đã đúng với nguyên lí của phần lí thuyết hay chưa Việc tiến hành đánh giá sẽ sử dụng cột 1 của SRAM 6T với mô hình để kiểm tra như hình 4.18 Với Vdd

= 1.2V, nhiệt độ = 25 0 C, các tín hiệu xung vuông của ngõ vào có tr = 1 us và tf

Việc thực hiện lắp ghép các khối cơ bản của một SRAM 6T hoàn chỉnh được thực hiện và phân ra các vùng tín hiệu Ở đây chúng tôi ghép một SRAM có kích thước là 64x64 bit hay 512 Byte, chỉ sử dụng một bộ giải mã hàng để chọn ô nhớ theo hàng trong quá trình mô phỏng Về bộ giải mã cột chúng tôi dùng 64 đường tín hiệu đầu vào để thuận tiện cho quá trình mô phỏng và đánh giá Trong một trường hợp chỉ một đường tín hiệu được chọn tương tự như cách bộ giải mã cột hoạt động

Hình 4.18: Cấu tạo chi tiết của một SRAM 6T có kích thước 512 Byte

Theo hình 4.18 ứng với từng vùng được khoanh với các màu khác nhau là các khối của một ô nhớ SRAM Và đại diện của các khối này là các mạch đặc trưng của nó

+ Mạch nạp trước (ở trên) và mạch ghi (ở dưới) (Vùng khoanh xanh dương)

+ Mạch khuếch đại cảm nhận (Vùng khoanh xanh lá)

+ Mạch giải mã hàng (Vùng khoanh vàng)

+ Mạch ô nhớ (Vùng còn lại) Đi sâu vào nghiên cứu cấu tạo chi tiết ta sẽ tiến hành phóng to một khu vực để xem sự sắp xếp của các khối này như hình 4.19, 4.20, 4.21, 4.22

Thực hiện phóng to 2 cột đầu tiên của ô nhớ SRAM để tiến hành quan sát các sắp xếp của các mạch bên trong

Hình 4.19: Mạch nạp trước (phía trên) và mạch ghi (phía dưới)

Hình 4.20: Mạch khuếch đại cảm nhận

Hình 4.21: Mạch giải mã hàng

4.7.1 Mô phỏng SRAM 6T với thiết kế sử dụng khối giải mã 2 sang 4

Hình 4.23: Mạch kiểm tra SRAM 6T

Thực hiện mô phỏng và cho ra kết quả như hình 4.23 Với việc thực hiện các thao các không cho phép, cho phép đọc, cho phép ghi và không thực hiện đọc và ghi

Hình 4.24: Kết quả mô phỏng chức năng của SRAM 6T

Theo hình 4.24, ta có thể thấy với 6 tín hiệu từ A0 - A5 đều bằng không cho thấy rằng tín hiệu chọn D0 của ngõ ra của bộ giải mã hàng sẽ lên 1 Lúc này ô nhớ có đường WL nối với D0 của bộ giải mã hàng sẽ hoạt động Chúng tôi sẽ tiến hành đánh giá ô nhớ này bên trong 1 SRAM 6T hoàn chỉnh Như hình 4.25:

Hình 4.25: Ô nhớ được chọn từ bộ giải mã hàng

Các tín hiệu A0 - A5 là cố định trong các lần mô phỏng sắp tới Ta tiến hành đánh giá chi tiết cho từng trường hợp như sau:

*TH1: Khi tín hiệu EN không tích cực

Theo hình 4.26, khi tín hiệu EN ở mức thấp (không tích cực) thì lúc này bộ giải mã sẽ cho ra ngõ ra bằng ‘0’ tương ứng với ngõ ra D0 bằng ‘0’, lúc này sẽ không có ô nhớ nào được chọn để lưu giá trị hay đọc giá trị Lúc này tín hiệu ngõ ra OUT1 sẽ bằng ‘0’

Hình 4.26: Dạng sóng ngõ ra trong trường hợp 1

*TH2: Khi tín hiệu EN tích cực và có sự tham gia của tín hiệu PRE và WE để thực hiện quá trình ghi dữ liệu data_in_1 vào ô nhớ

Trong trường hợp này kết quả mô phỏng được như hình 4.27, vì trong quá trình này SRAM chỉ mới thực hiện hoạt động nạp trước và ghi dữ liệu nên ta không thế thấy bất kì sự khác biệt nào ở ngõ ra OUT1

Hình 4.27: Dạng sóng ngõ ra OUT1 của TH2

Với trường hợp thực hiện ghi dữ liệu chúng ta không thể qua sát xem nó đã thực sự ghi dữ liệu vào ô nhớ hay chưa, vì vậy cần tiến hành mô phỏng để xem giá trị tại điểm Q và QB của ô nhớ Sau khi thực hiện mô phỏng ta sẽ thu được kết quả như hình 4.28:

Hình 4.28: Trường hợp ghi dữ liệu vào ô nhớ của SRAM 6T

Khi tín hiệu PRE = 1 (tích cực) giá trị của 2 đường BL và BLB được nạp lên Vdd đồng nghĩa giá trị tại Q và QB cũng ở mức cao Khi PRE = 0 và WE = 1 (tích cực) lúc này mạch thực hiện ghi giá trị của Data_in_1 vào ô nhớ Khi Data_in_1 = 1 thì giá trị của BL = 1 và BLB = 0 đồng nghĩa với Q = 1 và QB 0 như hình 4.28, ngược thì khi Data_in_1 = 0 thì Q = 0 và QB = 1 Chứng tỏ ô nhớ đã ghi đúng giá trị của Data_in_1 đưa vào Và khi WE = 0 thì BL và BLB giữ nguyên dẫn đến Q và QB giữ nguyên làm cho giá trị ô nhớ không thay đổi

*TH3: Khi dữ liệu đã được ghi vào ô nhớ và dừng hoạt động ghi Lúc này có tín hiệu cho phép đọc

Hình 4.29: Dạng sóng ngõ ra OUT1 trong trường hợp 3

Theo hình 4.29, lúc này ta nhận thấy tín hiệu ngõ ra OUT1 đã có sự thay đổi, lý do là do khi có tín hiệu SE tích cực (tín hiệu cho phép đọc) thì mạch khuếch đại cảm nhận sẽ cho phép giá trị bên trong của ô nhớ được đọc ra đường OUT1

Vì khi thực hiện ghi đến khi kết thúc quá trình ghi, cuối thời điểm đó ô nhớ đã thực hiện ghi bit ‘1’ của Data_in_1 vào trong ô nhớ và tín hiệu WE không tích cực làm cho ô nhớ giữ nguyên giá trị ‘1’ Khi xuất hiện tín hiệu cho phép đọc thì giá trị của ô nhớ sẽ được đọc ra đồng nghĩa với việt giá trị ‘1’ của ô nhớ sẽ được đọc ra OUT1 vì thế ta thấy giá trị của OUT1 luôn bằng ‘1’ trong quá trình

SE tích cực như hình 4.30:

Hình 4.30: Quá trình tín hiệu SE tích cực

Sau các trường hợp về đánh giá cơ bản Ta có thể thấy hoạt động của SRAM 6T với thiết kế bên trên đã đúng với nguyên lí hoạt động vốn có của 1 SRAM Bao gồm quá trình đọc, ghi và giữ giá trị trong các ô nhớ của nó

Đánh giá SRAM 6T với khối khuếch đại cảm nhận có Transisor

Sau khi mô phỏng và đánh giá SRAM 6T với khối khuếch đại và cảm nhận có Transistor, nhóm sinh viên tổng hợp được các thông số như bảng 4.11 sau:

Bảng 4.12: Thông số của mạch SRAM với khối khuếch đại cảm nhận dạng latch có

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

IDD max = 60.9881 mA IDDmin = 4.27427 mA IDDavg = 34.97 mA

SE IIH = 2.33064 uA BLB IIH = 106.9986 uA

SE IIL = -2.2401 uA BLB IIL = -245.615 uA

BL IIL = -747.44 uA Đặc tính điện AC tPLH DATA_OUT

SE tPLH = 420.652 ns BLB tPLH = 50.116 us

BL tPLH = 100.663 us tPHL DATA_OUT

SE tPHL = -25.0656 ns BLB tPHL = 7.6754 us

BL tPHL = 1.05072 ms tTLH DATA_OUT tTLH = 586.587 ns tTHL DATA_OUT tTHL = 8.3909 ns

Pmax = 73.186 mW Pmin = 5.129 mW Pavg = 41.96 mW

Nguyên lí hoạt động Đúng với các trường hợp Đặc tính điện DC

IDD max = 60.9881 mA IDDmin = 4.27427 mA IDDavg = 34.97 mA

SE IIH = 2.33064 uA BLB IIH = 106.9986 uA

SE IIL = -2.2401 uA BLB IIL = -245.615 uA

BL IIL = -747.44 uA Đặc tính điện AC tPLH DATA_OUT

SE tPLH = 420.652 ns BLB tPLH = 50.116 us

BL tPLH = 100.663 us tPHL DATA_OUT

SE tPHL = -25.0656 ns BLB tPHL = 7.6754 us

BL tPHL = 1.05072 ms tTLH DATA_OUT tTLH = 586.587 ns tTHL DATA_OUT tTHL = 8.3909 ns

Pmax = 73.186 mW Pmin = 5.129 mW Pavg = 41.96 mW

Ngày đăng: 18/11/2024, 16:24

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN