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

Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM

95 0 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

Cấu trúc

  • CHƯƠNG 1 TỔNG QUAN (19)
    • 1.1 GIỚI THIỆU (19)
    • 1.2 MỤC TIÊU (21)
    • 1.3 NỘI DUNG (22)
    • 1.4 BỐ CỤC ĐỀ TÀI (22)
  • CHƯƠNG 2 CƠ SỞ LÝ THUYẾT (23)
    • 2.1 TỔNG QUAN VỀ BỘ NHỚ SRAM (24)
      • 2.1.1 Khái niệm (24)
      • 2.1.2 Đặc điểm (24)
      • 2.1.3 Ứng dụng (25)
    • 2.2 ĐỘ TRỄ VÀ CÔNG SUẤT TIÊU THỤ (25)
      • 2.2.1 Độ trễ tín hiệu (25)
      • 2.2.2 Công suất tiêu thụ (26)
    • 2.3 ĐỘ DỰ TRỮ NHIỄU (27)
  • CHƯƠNG 3 THIẾT KẾ (23)
    • 3.1 YÊU CẦU CỦA THIẾT KẾ (30)
    • 3.2 SƠ ĐỒ KHỐI (30)
    • 3.3 THIẾT KẾ CÁC KHỐI (31)
      • 3.3.1 Khối mạch nạp trước (31)
      • 3.3.2 Khối mạch giải mã 5 sang 32 (32)
      • 3.3.3 Khối mạch ghi (36)
      • 3.3.4 Khối mạch đọc (37)
      • 3.3.5 Khối ô nhớ (38)
        • 3.3.5.1 Ô nhớ SRAM 4T (38)
        • 3.3.5.2 Ô nhớ SRAM 6T (39)
        • 3.3.5.3 Ô nhớ SRAM 7T (41)
        • 3.3.5.4 Ô nhớ SRAM 8T (42)
        • 3.3.5.5 Ô nhớ SRAM 9T (43)
    • 3.4 THIẾT KẾ BỘ NHỚ SRAM 32X32 (45)
  • CHƯƠNG 4 KẾT QUẢ (23)
    • 4.1 KẾT QUẢ MÔ PHỎNG CÁC Ô NHỚ SRAM (46)
      • 4.1.1 Kết quả mô phỏng mạch nguyên lý ô nhớ (46)
        • 4.1.1.1 Mô phỏng SRAM 4T (46)
        • 4.1.1.2 Mô phỏng SRAM 6T (46)
        • 4.1.1.3 Mô phỏng SRAM 7T (47)
        • 4.1.1.4 Mô phỏng SRAM 8T (47)
        • 4.1.1.5 Mô phỏng SRAM 9T (48)
      • 4.1.2 Phần ghi dữ liệu của các ô nhớ (48)
        • 4.1.2.1 Phần ghi dữ liệu ô nhớ SRAM 4T (48)
        • 4.1.2.2 Phần ghi dữ liệu ô nhớ SRAM 6T (51)
        • 4.1.2.3 Phần ghi dữ liệu ô nhớ SRAM 7T (54)
        • 4.1.2.4 Phần ghi dữ liệu ô nhớ SRAM 8T (56)
        • 4.1.2.5 Phần ghi dữ liệu ô nhớ SRAM 9T (59)
      • 4.1.3 Phần đọc dữ liệu của các ô nhớ (62)
        • 4.1.3.1 Phần đọc dữ liệu ô nhớ SRAM 4T (62)
        • 4.1.3.2 Phần đọc dữ liệu ô nhớ SRAM 6T (64)
        • 4.1.3.3 Phần đọc dữ liệu ô nhớ SRAM 7T (66)
        • 4.1.3.4 Phần đọc dữ liệu ô nhớ SRAM 8T (69)
        • 4.1.3.5 Phần đọc dữ liệu ô nhớ SRAM 9T (71)
    • 4.2 SO SÁNH VÀ LỰA CHỌN Ô NHỚ SRAM CHO THIẾT KẾ (74)
      • 4.2.1 So sánh các cấu trúc ô nhớ khác trong hoạt động ghi (74)
      • 4.2.2 So sánh các cấu trúc ô nhớ khác trong hoạt động đọc (75)
      • 4.2.3 So sánh các cấu trúc ô nhớ của đề tài (76)
    • 4.3 KẾT QUẢ THIẾT KẾ CÁC THÀNH PHẦN SRAM (77)
      • 4.3.1 Mạch nạp trước (77)
      • 4.3.2 Mạch ghi (78)
      • 4.3.3 Mạch đọc (80)
      • 4.3.4 Mạch giải mã 5 sang 32 (82)
    • 4.4 KẾT QUẢ THIẾT KẾ SRAM 1 BIT (85)
      • 4.4.1 Sơ đồ nguyên lý của mạch (85)
      • 4.4.2 Dạng sóng (86)
      • 4.4.3 Độ trễ lan truyền (87)
      • 4.4.4 Công suất tiêu thụ (89)
    • 4.5 KẾT QUẢ THIẾT KẾ SRAM 32X32 (89)
  • CHƯƠNG 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (23)
    • 5.1 KẾT LUẬN (92)
    • 5.2 HƯỚNG PHÁT TRIỂN (92)
  • TÀI LIỆU THAM KHẢO (93)

Nội dung

Bộ nhớ này đóng vai trò quan trọng trong việc lưu trữ các lệnh, dữ liệu đang xử lý và những thông tin cần thiết cho hoạt động của hệ thống, do đó, việc phát triển bộ nhớ này được chú trọ

TỔNG QUAN

GIỚI THIỆU

Hiện nay, các ngành điện tử và công nghệ thông tin phát triển cực kỳ nhanh chóng đã dẫn đến sự ra đời của các thiết bị hiện đại cùng với những sản phẩm công nghệ cao Các thiết bị và sản phẩm này đã và đang giúp ích rất nhiều cho đời sống và xã hội, góp phần hỗ trợ nâng cao chất lượng cuộc sống cho con người cũng như đem lại ý nghĩa vô cùng to lớn trong công cuộc chạy đua phát triển công nghệ giữa những nước phát triển trên thế giới Khi nói đến sự thành công của cuộc cách mạng công nghiệp hiện nay thì không thể bỏ qua sự quan trọng của lĩnh vực chế tạo vi mạch điện tử, lĩnh vực đã tạo ra những con chip khá nhỏ bé nhưng mang một ý nghĩa to lớn và là một thành phần không thể thiếu trong các mạch điện tử Sự phát triển của lĩnh vực sản xuất vi mạch điện tử đã dẫn đến sự phát triển mạnh mẽ của ngành nhúng và IoT, điều này giúp tạo ra các hệ thống đáp ứng các ứng dụng đòi hỏi sự phức tạp, nhanh chóng, hiệu quả, hiện đại và từ đó khiến các lĩnh vực đời sống của con người được cải thiện một cách đáng kể Để có thể hoạt động được một cách chính xác và hiệu quả thì các hệ thống phải được lập trình các chức năng bằng những câu lệnh và sau đó lưu các chức năng này vào bên trong bộ nhớ

Bộ nhớ đã có được sự phát triển đáng kể so với giai đoạn những năm trước đây và hiện nay đã rất nhiều xu hướng phát triển trong lĩnh vực này Dung lượng của bộ nhớ càng ngày càng tăng cao, các bộ nhớ được trang bị bên trong máy tính và các thiết bị di động có thể có dung lương lên đến hàng trăm gigabyte hay thậm chí là terabyte và điều này mang lại một hiệu suất cực kỳ mạnh mẽ trong việc dùng những ứng dụng đòi hỏi khả năng xử lý đa nhiệm cao Ngoài dung lượng thì tốc độ truy cập và khả năng truy cập dữ liệu của bộ nhớ đã được nâng cao rất nhiều, điều này giúp nâng cao hiệu suất của các thiết bị Có 2 loại bộ nhớ chính bộ nhớ ROM (bộ nhớ chỉ đọc) và bộ nhớ RAM (bộ nhớ truy cập ngẫu nhiên) Bộ nhớ ROM có nhiệm vụ giúp hệ thống lưu trạng thái hoạt động, các bit được lưu trữ trong bộ nhớ ROM luôn được giữ cố định và chỉ thay đổi khi bộ nhớ ROM được nạp lại Bộ nhớ RAM là nơi dùng để lưu những dữ liệu và ứng dụng đang được sử dụng để giúp cho thiết bị có thể truy cập một cách nhanh chóng, dữ liệu lưu trong bộ nhớ RAM sẽ không được lưu khi bộ nhớ không được cấp điện Có hai loại bộ nhớ RAM là DRAM và SRAM Đối với bộ nhớ DRAM, các bit dữ liệu được lưu trữ trong một tụ điện riêng bên trong mạch tích hợp Tụ điện có thể được nạp hoặc xả, hai trạng thái này đại diện cho hai trạng thái “0” và “1” Bộ nhớ DRAM cần được nạp điện sau một khoảng thời gian là vài mili giây để giúp bù đắp cho sự rò rỉ điện từ tụ điện Nếu DRAM không được nạp điện thì tụ điện sẽ bị rò điện và các bit được lưu trữ sẽ mất dần Bộ nhớ SRAM khác với DRAM vì bộ nhớ SRAM dùng các bóng bán dẫn liên kết tạo thành một công tắc để có thể lưu các bit “0” và “1” Bộ nhớ SRAM giúp tiêu thụ ít năng lượng hơn đồng thời nhanh hơn bộ nhớ DRAM khi đọc và ghi dữ liệu nên bộ nhớ SRAM liên tục được cải tiến theo phương hướng giúp giảm tiêu thụ năng lượng hơn và có khả năng giảm được nhiễu trong quá trình bộ nhớ hoạt động [1]

Cùng với sự phát triển mạnh mẽ của lĩnh vực chế tạo vi mạch điện tử, CMOS đã có nhiều cải tiến vượt bậc Sự thu nhỏ những thành phần của CMOS, tiêu biểu là các quy trình sản xuất 5nm, 7nm đã giúp tăng được mật độ linh kiện, tăng hiệu suất hoạt động và giảm được chi phí sản xuất Ngoài ra, hiệu suất năng lượng cũng được tối ưu hóa giúp năng lượng tiêu thụ giảm bớt mà vẫn có khả năng duy trì được hiệu suất cao và điều này đặc biệt quan trọng trong thời đại phát triển của các thiết bị di động như hiện nay Khả năng tích hợp được nhiều chức năng và thành phần hơn trên một chip cũng là một đặc điểm rất quan trọng giúp đem lại được sự tiện ích và tăng sự linh hoạt trong thiết kế vi mạch

Rất nhiều nghiên cứu đã được tiến hành nhằm đánh giá kiểm tra về chức năng và các yếu tố quan trọng trong một bộ nhớ SRAM Tạp chí “Phân tích hiệu năng của các thiết kế SRAM trên công nghệ TSMC 90nm CMOS” của tác giả Phạm Văn Khoa và Nguyễn Duy Thông đã xây dựng 2 thiết kế ô nhớ là 6T và 8T với công nghệ 90nm nhằm đánh giá sự nổi trội của cấu trúc ô nhớ 8T với cấu trúc ô nhớ 6T trong thiết kế bộ nhớ SRAM [2] Ngoài ra, công suất tiêu thụ và độ trễ tín hiệu cũng được các tác giả đưa ra phân tích và so sánh trong từng điều kiện môi trường khác nhau đối với mỗi thiết kế Tuy nhiên, tác giả vẫn chưa phân tích rõ phương thức hoạt động của ô nhớ trong thiết kế SRAM và chưa thực hiện quá trình kết nối các khối để tạo được một bộ nhớ SRAM đầy đủ Trong “Thiết kế bộ nhớ

SRAM 32KB kết hợp kỹ thuật dự trữ hàng và cột” của tác giả Võ Thanh Trí đã trình bày một thiết kế bộ nhớ SRAM đồng bộ có dung lượng 32 KB sử dụng kiến trúc ô nhớ 6T và công nghệ CMOS UMC 90 nm [3] Do sự kết hợp các kỹ thuật khác nhau như tự căn chỉnh thời gian, giải mã đa tầng, dữ trữ hàng và cột và cơ chế đa hợp nên thiết kế đã giúp công suất tiêu thụ và độ ổn định được tối ưu và đạt được hiệu suất cao về tốc độ Đồng thời, nghiên cứu còn đưa ra sự so sánh hiệu năng với các công trình khác nhau và đạt được kết quả tích cực Tuy nghiên cứu đã có sự phân tích về tốc độ và hiệu suất nhưng tác giả vẫn có sự đề cấp đến cấu trúc chi tiết của một bộ nhớ SRAM và cũng như chưa đề cập đến độ nhiễu và độ trễ của tín hiệu Trong “Design and Analysis of 8x8 Static RAM” của tác giả Mansi

S Warde, V Chandana S., Madhushree P Wagh, Sangeeta Parshionikar, các tác giả đã thiết kế bộ nhớ SRAM 8x8 bằng cách sử dụng các thiết kế ô nhớ SRAM 6T và đồng thời còn thực hiện thiết kế layout cho bộ nhớ [4] Ngoài ra, nghiên cứu còn đề cập đến việc cải tiến bộ nhớ SRAM 8x8 bằng cách tăng thời gian truy cập và giảm độ nhiễu trong quá trình hoạt động nhưng vẫn còn hạn chế là nghiên cứu chưa mở rộng ra các thiết kế lớn hơn và cũng chưa so sánh công suất, độ dự trữ nhiễu của thiết kế ô nhớ 6T so với các thiết kế ô nhớ khác

Qua quá trình tìm hiểu các đề tài liên quan đến thiết kế vi mạch, đề tài “Thiết kế và mô phỏng bộ nhớ SRAM 32x32 theo công nghệ 90nm” đã được nhóm lựa chọn để nghiên cứu nhằm đánh giá chức năng hoạt động của một bộ nhớ SRAM 32x32 Bên cạnh đó, thông qua việc tính toán và so sánh các thông số ảnh hưởng đến hiệu suất thiết kế như công suất tiêu thụ, độ trễ tín hiệu và độ nhiễu của các thiết kế ô nhớ 4T, 6T, 7T, 8T, 9T nhóm sẽ lựa chọn thiết kế ô nhớ tối ưu nhất để tiến hành thiết kế và thực hiện quá trình mô phỏng bộ nhớ SRAM 32x32 theo công nghệ 90nm bằng phần mềm Cadence Virtuoso Đồng thời, đề tài sẽ phân tích, tính toán các thông số như độ trễ của tín hiệu, độ dự trữ nhiễu và công suất mà bộ nhớ tiêu thụ trong quá trình hoạt động.

MỤC TIÊU

So sánh các thiết kế ô nhớ 4T, 6T, 7T, 8T, 9T về các thông số như công suất tiêu thụ, độ dự trữ nhiễu và độ trễ tín hiệu để chọn ra thiết kế ô nhớ tối ưu Kiểm tra hoạt động của các thành phần kết nối như mạch nạp trước, mạch giải mã, mạch đọc và mạch ghi để đảm bảo hoạt động đúng chức năng

Thiết kế bộ nhớ SRAM 32x32 sử dụng thiết kế ô nhớ tối ưu cùng các thành phần kết nối như mạch nạp trước, mạch giải mã, mạch đọc, mạch ghi Quá trình mô phỏng bộ nhớ SRAM 32x32 sẽ được thực hiện bằng phần mềm Cadence Virtuoso nhằm tiến hành độ chính xác khi tiến hành ghi và đọc Thực hiện đo độ trễ tín hiệu trong việc truy xuất dữ liệu, độ nhiễu của tín hiệu và tính toán công suất tiêu thụ của bộ nhớ trong quá trình hoạt động.

NỘI DUNG

Đề tài nghiên cứu tập trung vào việc thiết kế và mô phỏng bộ nhớ SRAM 32x32 bằng cách sử dụng cấu trúc ô nhớ tối ưu Mục tiêu chính của đề tài là nghiên cứu và đánh giá các đặc tính hoạt động của bộ nhớ được thiết kế bao gồm độ trễ tín hiệu, độ dự trữ nhiễu và công suất tiêu thụ trong môi trường mô phỏng Trong quá trình nghiên cứu, sinh viên thực hiện sẽ tiến hành so sánh các cấu trúc ô nhớ 4T, 6T, 7T, 8T, 9T để có thể lựa chọn thiết kế tối ưu dựa trên các thông số như độ trễ tín hiệu, độ dự trữ nhiễu và công suất tiêu thụ Nhóm chỉ thực hiện so sánh các thiết kế ô nhớ đươc nêu và các thông số được so sánh cũng không bao gồm thêm các thông số khác

Quá trình thiết kế và mô phỏng bộ nhớ SRAM 32x32 được thực hiện hoàn toàn bằng công nghệ sản xuất 90nm và phần mềm Cadence Virtuoso sẽ được sử dụng để thực hiện các công đoạn thiết kế và mô phỏng trong đề tài Nghiên cứu của nhóm không bao gồm thiết kế layout, sản xuất hay vận chuyển mà toàn bộ nội dung chỉ dừng lại ở việc thiết kế và mô phỏng để đảm bảo các mục tiêu nghiên cứu được thực hiện đầy đủ và chi tiết.

BỐ CỤC ĐỀ TÀI

Giới thiệu về sự phát triển của vi mạch điện tử và bộ nhớ SRAM trong thời đại hiện nay Đưa ra được lý do thực hiện đề tài, những mục tiêu đề tài cần đạt được và một số giới hạn của đề tài.

CƠ SỞ LÝ THUYẾT

TỔNG QUAN VỀ BỘ NHỚ SRAM

RAM là một bộ nhớ có khả năng truy cập nhanh RAM có thể lưu dữ liệu và cho phép truy xuất đọc ghi ngẫu nhiên đến một vị trí bất kì trong bộ nhớ dựa trên địa chỉ của ô nhớ, thông tin được lưu trên RAM chỉ là tạm thời sẽ bị mất đi nếu như không có nguồn điện Có hai loại bộ nhớ truy cập ngẫu nhiên đó là SRAM và DRAM, mỗi bộ nhớ lưu trữ thông tin theo các cách khác nhau SRAM được chia làm hai loại là SRAM đồng bộ với xung clock của CPU và SRAM không đồng bộ hoạt động độc lập với xung clock CPU DRAM gồm hai bộ nhớ hoạt động đồng bộ là SDRAM và DDRAM Hai loại RAM động này giống nhau chỉ khác nhau đối với DDRAM có thể truyền nhận dữ liệu tại cả hai cạnh của xung clock

Bộ nhớ SRAM và DRAM có những đặc điểm khác biệt về cách hoạt động và hiệu suất Trong SRAM, dữ liệu được giữ mà không cần phải làm mới thường xuyên, miễn là nguồn điện vẫn ổn định Đối với DRAM, nơi dữ liệu cần được làm mới định kỳ bởi vì nó được lưu trữ trong các tụ điện và sẽ mất dữ liệu nếu không được nạp điện thường xuyên

Bộ nhớ SRAM thường có cấu trúc cơ bản bao gồm mạch nạp trước, ô nhớ SRAM, mạch ghi, mạch đọc và mạch giải mã Trong đó, mạch giải mã thường là mạch giải mã hàng

SRAM được thiết kế để giữ trạng thái của dữ liệu mà không cần phải thực hiện bất kỳ quá trình làm mới nào Điều này giúp SRAM truy cập dữ liệu một cách nhanh chóng và hiệu quả Cấu trúc ô nhớ chủ yếu của SRAM là 6T và cấu trúc này đảm bảo tính ổn định và nhanh chóng của bộ nhớ So với loại bộ nhớ khác như DRAM, SRAM có khả năng đọc và ghi dữ liệu nhanh chóng hơn Do tính năng này, SRAM thường được ưa chuộng trong các ứng dụng cần hiệu suất xử lý cao như bộ nhớ đệm của máy tính Tuy nhiên, cũng do cấu trúc và số lượng bóng bán dẫn cần thiết để tạo nên ô nhớ SRAM mà SRAM thường có chi phí cao hơn DRAM

Một trong những điểm đặc biệt quan trọng của SRAM là khả năng duy trì dữ liệu Không giống như DRAM, SRAM không cần phải thực hiện việc làm mới định kỳ mà không cần làm mới thường xuyên, miễn là nguồn cung cấp điện liên tục Điều này làm cho SRAM được ưu tiên sử dụng đối với những ứng dụng lưu trữ thông tin tạm thời hoặc những ứng dụng cần sự an toàn và ổn định cao của dữ liệu Tuy nhiên, SRAM sử dụng năng lượng cao hơn và chiếm diện tích lớn hơn so với loại bộ nhớ khác như DRAM Do đó thường sẽ dùng SRAM vào các ứng dụng cần có độ ổn định và tốc độ cao trong việc truy xuất dữ liệu

SRAM đóng vai trò quan trọng trong nhiều ứng dụng công nghệ SRAM thường được tích hợp vào bộ nhớ đệm CPU nhằm cải thiện hiệu suất bằng cách giảm thời gian truy cập dữ liệu từ bộ nhớ chính SRAM cũng làm bộ đệm trong hệ thống lưu trữ, tăng tốc truy cập dữ liệu từ các thiết bị lưu trữ Trong ứng dụng nhúng và điều khiển, SRAM đảm bảo truy cập dữ liệu một cách nhanh chóng Ngoài ra, SRAM là lựa chọn lý tưởng trong những ứng dụng FPGA và thường là nơi dùng để lưu các chương trình.

ĐỘ TRỄ VÀ CÔNG SUẤT TIÊU THỤ

Khoảng thời gian lớn nhất khi tín hiệu đầu vào đạt 50% giá trị ổn định tới lúc tín hiệu đầu ra đạt 50% giá trị ổn định được định nghĩa là độ trễ tín hiệu, điều này được thể hiện như hình 2.1 [5]

Thông qua định nghĩa, độ trễ tín hiệu có thể được tính bằng công thức:

2 (2.1) Trong đó: tpd: độ trễ tín hiệu t pdf : độ trễ từ mức áp cao xuống mức áp thấp t pdr : độ trễ từ mức áp thấp lên mức áp cao

Hình 2.1: Thời gian lan truyền trễ và tăng giảm của tín hiệu [5]

Tốc độ cạnh được tính bằng công thức: 𝑡 𝑟𝑓 = 𝑡 𝑟 + 𝑡 𝑓

2 (2.2) Trong đó: trf: tốc độ cạnh tr: thời gian tăng tf: thời gian giảm

Thời gian tăng hoặc giảm là khoảng thời gian cho dạng sóng tăng từ 20% tới 80% hoặc giảm từ 80% tới 20% giá trị ổn định Ngoài ra, độ trễ lan truyền còn có thể được hiểu theo một cách khác là sự trì hoãn [5]

Công suất tức thời p(t) được cung cấp từ thành phần của mạch điện được tính bằng tích của điện áp được đặt lên thành phần đó với dòng điện chạy qua nó được định nghĩa là công suất tiêu thụ [5]:

𝑝(𝑡) = 𝑖(𝑡) 𝑣(𝑡) (2.3) Khoảng thời gian T được cung cấp năng lượng là [5]:

𝐸 = ∫ p(t)dt 0 𝑇 (2.4) Thời gian được xét có công suất tiêu thụ trung bình là [5]:

Có hai nguyên nhân dẫn đến công suất trong mạch CMOS bị tiêu tán [5]:

Yếu tố đầu tiên là sự tiêu tán công suất động: khi cả NMOS, PMOS cùng dẫn thì dòng sẽ ngắn mạch hay sự hoạt động xả và nạp khi cổng chuyển mạch của tải điện dung

Yếu tố thứ hai là sự tiêu tán công suất tĩnh: các lớp điện môi có sự rò rỉ, các bóng bán dẫn bị tắt rò rỉ dưới ngưỡng, rò rỉ từ sự khuếch tán của cực nguồn hoặc có thể rò rỉ do sự xung đột dòng bên trong các mạch tỷ lệ

Từ hai yếu tố trên, công suất tổng của mạch có thể được tính toán theo công thức [5]:

P static = (I sub + I gate + I junct + I contention ) V DD (2.7)

THIẾT KẾ

YÊU CẦU CỦA THIẾT KẾ

Thiết kế các ô nhớ 4T, 6T, 7T, 8T, 9T đạt các thông số như công suất tiêu thụ, độ dự trữ nhiễu, độ trễ tín hiệu tối ưu nhất để tiến hành so sánh và chọn ra thiết kế ô nhớ phù hợp Các thành phần kết nối ngoại vi như mạch nạp trước, mạch giải mã, mạch đọc và mạch ghi phải đảm bảo hoạt động đúng chức năng để cấu hình nên bộ nhớ hoàn chỉnh

Thiết kế được bộ nhớ SRAM 32x32 sử dụng ô nhớ tối ưu cùng các thành phần kết nối như mạch nạp trước, mạch giải mã, mạch đọc, mạch ghi Sử dụng phần mềm Cadence Virtuoso để mô phỏng và đáp ứng được các trường hợp đọc và ghi thông tin với trạng thái “0” và “1”.

SƠ ĐỒ KHỐI

Hình 3.1: Sơ đồ khối hoạt động của bộ nhớ SRAM

❖ Chức năng của các khối

Khối mạch nạp trước: chức năng của khối này là chuẩn bị cho quá trình đọc và ghi dữ liệu bằng cách nâng mức điện áp của các đường bit khi tín hiệu PRE ở trạng thái thấp

Khối mạch đọc: khối này có nhiệm vụ khuếch đại và cải thiện tín hiệu đọc từ các ô nhớ, đảm bảo độ chính xác và tin cậy Trước khi bắt đầu đọc, các đường BL và BLB được nâng lên mức điện áp cao Khi tín hiệu RE ở mức cao, khối đọc sẽ sử dụng đường BL để lấy thông tin dữ liệu từ ô nhớ Sau đó, thông tin này được so sánh với giá trị trên đường BLB để xác định thông tin bit đã lưu trữ và kết quả được xuất ra tại ngõ ra OUT

Khối mạch ghi: khi tín hiệu WE ở mức cao, khối này nhận dữ liệu từ đầu vào DATA Dữ liệu sau đó được truyền qua các đường BL và BLB để ghi vào ô nhớ

Khối ô nhớ: đây là thành phần chính của bộ nhớ, được thiết kế để thực hiện việc lưu trữ và truy xuất dữ liệu một cách hiệu quả

Khối giải mã: Bên cạnh các khối kể trên khối giải mã dùng để truy xuất vị trí của ô nhớ cần ghi hoặc đọc thông tin có trong một bộ nhớ hoàn chỉnh.

THIẾT KẾ CÁC KHỐI

Mạch nạp trước (Pre-charge) là phần không thể thiếu để cấu tạo nên bộ nhớ SRAM nhằm mục đích để đảm bảo hoạt động đúng và ổn định của bộ nhớ Mục tiêu chính của mạch nạp trước là đưa các bit lưu trữ trong các ô nhớ SRAM về trạng thái ban đầu trước khi tiến hành các hoạt động ghi, đọc dữ liệu

Hình 3.2: Mạch nguyên lý của khối nạp trước

Mạch nạp trước trong bộ nhớ SRAM hoạt động bằng cách sử dụng bóng bán dẫn và điện trở để tạo ra một đường dẫn từ nguồn cung cấp điện đến các bitline và các điểm precharge Khi mạch nạp trước được kích hoạt (PRE = 0), các bóng bán dẫn mở ra và cho phép dòng điện chảy qua Q1 và Q2 để nạp điện vào chúng Quá trình này đẩy các BL và BLB lên mức điện áp cao, thường là mức điện áp nguồn cung cấp Đồng thời Q3 dùng để điều chỉnh nạp xả giữ mức điện áp giữa hai đường

BL và BLB được cân bằng và qua đó quá trình truy xuất bộ nhớ mới được thực hiện Quá trình trên nhằm làm đảm bảo tính chính xác và ổn định cho quá trình hoạt động của bộ nhớ SRAM

3.3.2 Khối mạch giải mã 5 sang 32

Mạch giải mã là phần thiết yếu trong việc thiết kế bộ nhớ SRAM Bộ giải mã này được thiết kế bao gồm có ‘n’ ngõ đầu vào và nhiều nhất là ‘𝑛 2 ’ ngõ đầu ra Dựa vào các chân lựa chọn ở ngõ vào để xác định và điều chỉnh ngõ ra tương ứng lên mức cao Để thiết kế mạch giải mã phục vụ cho bộ nhớ 32x32 SRAM, chúng ta cần sử dụng một bộ giải mã có đầu ra đủ để kích hoạt các ô nhớ trong 32 dòng và 32 cột của bộ nhớ Bộ giải mã này sẽ có 5 đầu vào tương ứng với 5 bit để xác định vị trí kích hoạt tại ô nhớ Nhóm thiết kế mạch giải mã được thiết kế thông qua

2 mạch giải mã 2 sang 4 và giải mã 3 sang 8

Mạch được thiết kế bao gồm 2 ngõ vào lựa chọn, 4 ngõ ra và chân EN cho phép tích cực mức cao

Bảng 3.1: Các trạng thái hoạt độngcủa mạch giải mã 2 sang 4

Dựa vào hàm ngõ ra, nhóm tiến hành thiết kế và đóng gói mạch giải mã 2-4 như hình 3.4

Hình 3.3: Cấu trúc và sơ đồ khối của mạch giải mã 2 sang 4

Mạch được thiết kế bao gồm 3 ngõ vào lựa chọn, 8 ngõ ra và chân EN cho phép tích cực mức cao

Bảng 3.2: Các trạng thái hoạt độngcủa mạch giải mã 3 sang 8

Dựa vào hàm ngõ ra để thiết kế và đóng gói mạch giải mã 3-8 như hình 3.4

Hình 3.4: Mạch nguyên lý và sơ đồ khối của mạch giải mã 3 sang 8

Sau khi hoàn thành 2 mạch giải mã trên thì tiến hành kết nối các mạch bao gồm 1 mạch giải mã 2 sang 4 và 4 mạch giải mã 3 sang 8 để tạo ra mạch giải mã

5 sang 32 như hình 3.5 và đóng gói như hình 3.6

Hình 3.5: Cấu trúc ghép nối mạch giải mã 5 sang 32

Hình 3.6: Khối mạch giải mã 5 sang 32

Bảng 3.3: Bảng trạng thái mạch giải mã 5 sang 32 có ngõ ra tích cực mức cao

Dựa vào bảng trạng thái 3.3, tất cả các ngõ ra đều ở mức thấp khi tín hiệu ngõ vào cho phép EN ở mức không tích cực (EN = 0) Ngược lại, khi tín hiệu ngõ vào cho phép EN ở mức tích cực (EN = 1) sẽ có một ngõ ra tương ứng lên mức cao ứng với mỗi tổ hợp ngõ vào (I0, I1, I2, I3, I4)

Mạch ghi (write driver) gồm 2 tín hiệu vào WE, DATA và 2 tín hiệu ra là BL, BLB Tín hiệu WE quyết định khả năng ghi vào bộ nhớ và DATA là dữ liệu cần ghi Tín hiệu BL mang thông tin ghi vào ô nhớ, trong khi BLB là trạng thái đảo ngược của BL

Hình 3.7: Cấu trúc của mạch ghi

Bảng 3.4: Bảng trạng thái của mạch ghi SRAM

Tín hiệu WE, DATA và trạng thái đảo của DATA khi qua cổng NOT được nối vào 2 cổng AND như trên hình Trong đó tính hiệu WE đóng vai trò như là tín hiệu cho phép ghi dữ liệu khi WE = 0 không quan tâm tín hiệu DATA ở ngõ vào, ngõ ra cổng AND sẽ là “0”, lúc này ngõ ra BL và BLB không thay đổi Nếu tín hiệu

WE = 1, DATA = 1 (DATA̅̅̅̅̅̅̅̅ = 0), ngõ ra cổng AND thứ nhất M n3 = 1, ngõ ra cổng AND thứ hai M n4 = 0 và BL được kéo lên mức 1 Khi đó Ô nhớ lưu trữ trạng thái

Q = 1, QB = 0 Ngược lại nếu tín hiệu DATA = 0 (DATA̅̅̅̅̅̅̅̅ = 1), ngõ ra cổng AND thứ nhất M n3 = 0, ngõ ra cổng AND thứ hai M n4 = 1 và BL được kéo lên mức 0 Khi đó Ô nhớ lưu trữ trạng thái Q = 0, QB = 1

Mạch đọc (sense amplifier) đóng vai trò đọc trạng thái bên trong ô nhớ Cấu tạo mạch đọc gồm một cặp bóng bán dẫn vi sai M1, M2 được kết nối với các đường thông tin BL và BLB của ô nhớ cùng với tải làm phản chiếu dòng điện M3 và M4 M5 được sử dụng để duy trì dòng điện không đổi trong mạch Ngõ ra OUT được lấy từ cổng của M4 sau đó thông qua một bộ inverter

Hình 3.8: Cấu trúc của mạch đọc

Mạch đọc được phép hoạt động khi RE = 1 Nếu BL = 1 và BLB = 0 thì khi đó theo hình 3.8, bóng bán dẫn M2 bật và M1 tắt dẫn đến ngõ vào inverter kéo xuống mức thấp và ngõ ra inverter lên mức cao Lúc này, mạch đọc ô nhớ lưu trữ mức “1” Ngược lại, BL = 0, BLB = 1 thì M2 tắt, M1 bật, ngõ vào inverter kéo lên mức cao và ngõ ra xuống mức thấp nên mạch đọc ô nhớ lưu trữ mức “0”

Cấu tạo của ô nhớ SRAM 4T bao gồm 4 CMOS: cặp pMOS là M3, M4 dùng để lưu trạng thái hiện tại của ô nhớ, cặp nMOS là M1 và M2 có nhiệm vụ truy xuất thông tin bên trong ô nhớ và được điều khiển bởi tín hiệu cho phép WL Các đường tín hiệu BL và BLB được dùng để ghi và đọc trạng thái trong ô nhớ

Hình 3.10: Mô tả hoạt động ghi và đọc của ô nhớ SRAM 4T a Chế độ đọc Để thực hiện quá trình đọc dữ liệu từ ô nhớ, các đường tín hiệu BL và BLB phải được sạc xuống đất Khi đường tín hiệu WL tích cực (WL = 1), mức điện áp

“1” sẽ được nạp vào nút lưu trữ thông qua hai nMOS và nút lưu trữ sẽ kéo đường tín hiệu tương ứng (BL hoặc BLB) lên mức cao, đường tín hiệu còn lại sẽ được kéo xuống đất Mạch đọc sẽ thực hiện nhiệm vụ kiểm tra sự chênh lệch mức điện áp của 2 đường tín hiệu, nếu mức điện áp của tín hiệu BL thấp hơn so với mức điện áp của tín hiệu BLB thì ô nhớ đang lưu trữ bit “0” Ngược lại, nếu mức điện áp của tín hiệu BL cao hơn so với mức điện áp của tín hiệu BLB thì ô nhớ đang lưu trữ bit “1” b Chế độ ghi Để thực hiện quá trình ghi dữ liệu, 2 đường tín hiệu BL và BLB phải được nạp mức điện áp ngược nhau Sau khi các đường tín hiệu BL và BLB được nạp, tín hiệu WL sẽ được tích cực cao (WL = 1), các nMOS M1 và M2 sẽ được bật, giá trị của các đường tín hiệu BL và BLB sẽ được ghi vào nút lưu trữ là Q và QB Nút hiện đang lưu trữ mức “1” sẽ không hoàn toàn đạt mức điện áp VDD do có sự sụt áp trên nMOS Sau quá trình ghi, đường tín hiệu WL lại được đưa xuống đất để có thể tắt các nMOS và lúc này nút đang lưu trữ mức “1” sẽ được kéo lên VDD hoàn toàn thông qua pMOS

Dựa vào hình 3.11, cấu tạo của ô nhớ SRAM 6T bao gồm 6 CMOS: 4 CMOS M3, M5, M4, M6 tạo thành hai inverter (M3 và M5, M4 và M6) nối ngược chiều với nhau về mặt logic để có thể tạo ra trạng thái phản hồi dương và giúp tự khóa lẫn nhau ở trạng thái logic hiện tại, điều này giúp lưu trữ được trạng thái của ô nhớ

KẾT QUẢ

KẾT QUẢ MÔ PHỎNG CÁC Ô NHỚ SRAM

4.1.1 Kết quả mô phỏng mạch nguyên lý ô nhớ

Dựa vào thiết kế hình 3.9, nhóm tiến hành mô phỏng ô nhớ SRAM 4T như hình 4.1 với giá trị chiều dài L và chiều rộng W được lựa chọn là: W nMOS = 120 nm và W pMOS = 360 nm và L nMOS = L pMOS = 100 nm

Dựa vào thiết kế hình 3.11, nhóm tiến hành mô phỏng ô nhớ SRAM 6T như hình 4.2 Để đáp ứng các yêu cầu liên quan đến biên độ nhiễu của tín hiệu trong động ghi, đọc dữ liệu thì kích thước của bóng bán dẫn NM0, NM1 phải lớn hơn bóng bán dẫn PM0, PM1 Qua đó, chọn giá trị độ dài L và độ rộng W là: W của NM3, NM2 là 120 nm, W của NM0, NM1 là 240 nm và của PM0, PM1 là 120 nm Chiều dài L của các bóng bán dẫn đều là 100 nm

Như hình 4.3, nhóm đã tiến hành mô phỏng ô nhớ SRAM 7T dựa vào thiết kế hình 3.12 với giá trị L và W lựa chọn giống với ô nhớ SRAM 6T Thêm vào đó, bóng bán dẫn NM4 có W = 240nm và L = 100nm có tác dụng giảm rò rỉ trong quá trình chờ

Như hình 4.4, nhóm tiến hành mô phỏng mạch ô nhớ SRAM 8T dựa vào thiết kế hình 3.13 với cấu trúc giống với ô nhớ SRAM 6T Bên cạnh đó, thêm 2 bóng bán dẫn NM4 và NM5 phục vụ cho riêng việc đọc dữ liệu

Như hình 4.5, nhóm đã tiến hành mô phỏng mạch ô nhớ SRAM 9T dựa vào thiết kế hình 3.14 giống với cấu trúc của SRAM 6T nhưng bổ sung thêm hai bóng bán dẫn PM2, PM3 để ổn định nhiễu khi đọc dữ liệu và bóng bán dẫn NM4 làm giảm áp toàn mạch

4.1.2 Phần ghi dữ liệu của ô nhớ

4.1.2.1 Phần ghi dữ liệu ô nhớ SRAM 4T a Dạng sóng

Hình 4.6: Hoạt động ghi của mạch ô nhớ SRAM 4T

Theo hình 4.6, trong khoảng thời gian từ 0ns đến 140ns và 280ns đến 420ns khi WL ở mức cao, ô nhớ xác nhận ghi dữ liệu từ BL và BLB Trường hợp BL mức thấp và BLB mức cao thì tại nút Q ở mức thấp, QB ở mức cao (ghi dữ liệu mức logic “0”) Trái ngược lại, tín hiệu BL mức cao và BLB mức thấp thì tại nút

Q ở mức cao, QB ở mức thấp (ghi dữ liệu mức logic “1”)

Ngược lại, mốc thời gian từ 140ns đến 280ns khi WL mức thấp, ô nhớ sẽ không xác nhận ghi dữ liệu và đồng thời lưu trữ trạng thái mức thấp trước đó của BL, mức cao trước đó của BLB làm cho Q ở mức thấp, QB ở mức cao Tương tự, từ 420ns đến 500ns khi tín hiệu WL mức thấp, ô nhớ không cho phép ghi dữ liệu và lưu trữ trạng thái mức cao trước đó của BL, mức thấp trước đó của BLB làm cho

Q ở mức cao, QB ở mức thấp b Độ trễ

Hình 4.7: Độ trễ từ mức áp thấp đến cao ô nhớ4T trong quá trình ghi

Hình 4.8: Độ trễ từ mức áp cao đến thấp ô nhớ4T trong quá trình ghi Độ trễ từ mức áp thấp đến cao: 𝑡𝑝𝑑r = 14.0821ps Độ trễ từ mức áp cao đến thấp: 𝑡𝑝𝑑f = 88.20513ps

Từ công thức (2.1) độ trễ lan truyền: 𝑡𝑝𝑑 = 𝑡 𝑝𝑑𝑓 + 𝑡 𝑝𝑑𝑟

2 = 51.144ps c Độ dự trữ nhiễu

Quá trình đo WSNM (độ dự trữ nhiễu hoạt động ghi) diễn ra trong hoạt động ghi thông tin của ô nhớ là khi đường WL được kích hoạt mức cao để chấp nhận cho ghi dữ liệu Bên cạnh đó, hai đường tín hiệu BL và BLB được đưa vào giá trị cần ghi (mức logic “1” hoặc “0”) Cho nên, trong trường hợp ghi thì đồ thị VTC của hai nửa ô nhớ SRAM là khác nhau vì mức điện áp của BL và BLB trái ngược nhau Từ đó, thu được biểu đồ như hình 4.9 và xác định được giá trị WSNM là độ dài cạnh vuông lớn nhất có thể chứa trong biểu đồ

Hình 4.9: Nhiễu trong phần ghi của ô nhớ SRAM 4T

Qua đó thấy được giá trị dự trữ nhiễu được xuất ra và tính toán trong quá trình ghi dữ liệu là khoảng: 841.27mV d Công suất

Hình 4.10: Công suất tiêu thụ trung bình ghi dữ liệu ô nhớ SRAM 4T

Công suất tiêu thụ trung bình của ô nhớ SRAM 4T trong hoạt động ghi khoảng thời gian 500ns như hình 4.10 được tính thông qua việc dùng hàm average trong Cadence và cho ra kết quả: 𝑃𝑎𝑣𝑔 = 0.0866uW

4.1.2.2 Phần ghi dữ liệu ô nhớ SRAM 6T a Dạng sóng

Hình 4.11: Hoạt động ghi của mạch ô nhớ SRAM 6T

Theo hình 4.11, Mốc thời gian từ 0ns đến 140ns và 280ns đến 420ns khi tín hiệu WL ở mức cao, ô nhớ được chấp nhận ghi dữ liệu từ chân BL và BLB Trường hợp tín hiệu BL mức thấp và BLB mức cao thì tại nút Q xuống mức thấp, QB lên mức cao (ghi dữ liệu mức logic “0”) Ngược lại, nếu tín hiệu BL mức cao và BLB mức thấp thì tại nút Q lên mức cao, QB mức thấp (ghi dữ liệu mức logic “1”)

Ngược lại, thời gian từ 140ns đến 280ns khi WL ở mức thấp, ô nhớ sẽ không xác nhận ghi dữ liệu và đồng thời lưu trữ trạng thái mức thấp trước đó của BL, mức cao trước đó của BLB làm cho Q ở mức thấp, QB ở mức cao Tương tự, từ 420ns đến 500ns khi WL ở mức thấp, ô nhớ không cho phép ghi dữ liệu và lưu trữ trạng thái mức cao trước đó của BL, mức thấp trước đó của BLB làm cho Q ở mức cao, QB ở mức thấp b Độ trễ

Hình 4.12: Độ trễ từ mức áp thấp đến cao ô nhớ6T trong quá trình ghi

Hình 4.13: Độ trễ từ mức áp cao đến thấp ô nhớ6T trong quá trình ghi Độ trễ từ mức áp thấp đến cao: 𝑡𝑝𝑑r = 139.9828ps Độ trễ từ mức áp cao đến thấp: 𝑡𝑝𝑑f = 117.6888ps

Từ công thức (2.1) độ trễ lan truyền: 𝑡𝑝𝑑 = 𝑡 𝑝𝑑𝑓 + 𝑡 𝑝𝑑𝑟

2 = 128.836ps c Độ dự trữ nhiễu

Quá trình đo WSNM (Độ dự trữ nhiễu hoạt động ghi) của ô nhớ SRAM 6T khi tín hiệu WL được kích hoạt lên mức cao để cho phép ghi dữ liệu Bên cạnh đó, hai đường tín hiệu BL và BLB được đưa vào giá trị cần ghi (mức logic 1 hoặc 0) cho nên trong trường hợp ghi thì đồ thị VTC của hai nửa ô nhớ SRAM thu được là biểu đồ như hình 4.14 và xác định được giá trị WSNM là độ dài cạnh vuông lớn nhất có thể chứa trong biểu đồ

Hình 4.14: Nhiễu trong phần ghi của ô nhớ SRAM 6T

Qua đó thấy được giá trị dự trữ nhiễu được xuất ra và tính toán trong quá trình ghi dữ liệu là khoảng: 476.19mV d Công suất

Hình 4.15: Công suất tiêu thụ trung bình ghi dữ liệu ô nhớ SRAM 6T

Công suất tiêu thụ trung bình của ô nhớ SRAM 6T trong hoạt động ghi khoảng thời gian 500ns như hình 4.15 được tính bằng việc sử dụng hàm average trong phần mềm Cadence và cho kết quả: 𝑃𝑎𝑣𝑔 = 0.6033uW

4.1.2.3 Phần ghi dữ liệu ô nhớ SRAM 7T a Dạng sóng

Hình 4.16: Hoạt động ghi của mạch ô nhớ SRAM 7T

SO SÁNH VÀ LỰA CHỌN Ô NHỚ SRAM CHO THIẾT KẾ

4.2.1 So sánh các cấu trúc ô nhớ khác trong hoạt động ghi

Bảng 4.1: Các thông số trong hoạt động ghi các ô nhớ của đề tài

SRAM 4T SRAM 6T SRAM 7T SRAM 8T SRAM 9T Độ trễ lan truyền

Bảng 4.2: Các thông số trong hoạt động ghi ô nhớ của thiết kế [12], [8]

SRAM 4T SRAM 6T SRAM 7T SRAM 8T SRAM 9T Độ trễ lan truyền

Vì thông số công suất còn phụ thuộc vào nhiều yếu tố như: nguồn cung cấp, tần số hoạt động và các yếu tố khác nên nhóm chỉ so sánh các thông số bao gồm độ trễ lan truyền, độ dự trữ nhiễu của các ô nhớ ở quá trình ghi dữ liệu của đề tài này với các cấu trúc ô nhớ ở nghiên cứu [12], [8] như bảng 4.1, 4.2 Ở thiết kế [12], các ô nhớ 6T, 7T, 8T, 9T ở công nghệ 90nm có thông số chiều rộng, chiều dài của bóng bán dẫn để mặc định lần lượt là W = 120nm và L = 100nm Điều này làm giảm độ dự trữ nhiễu và bên cạnh đó điện áp nguồn của nghiên cứu [12] là 1V làm cho độ trễ lớn hơn rất nhiều Mặt khác, nhóm so sánh ô nhớ 4T của đề tài với nghiên cứu [8] cho thấy thiết kế của đề tài có độ dự trữ nhiễu lớn hơn và thời gian trễ thấp hơn do thông số chiều dài, chiều rộng của bóng bán dẫn chưa được đặt trước

4.2.2 So sánh các cấu trúc ô nhớ khác trong hoạt động đọc

Bảng 4.3: Các thông số trong hoạt động đọc các ô nhớ của đề tài

SRAM 4T SRAM 6T SRAM 7T SRAM 8T SRAM 9T Độ trễ lan truyền

Bảng 4.4: Các thông số trong hoạt động đọc ô nhớ của thiết kế [12],[10]

SRAM 4T SRAM 6T SRAM 7T SRAM 8T SRAM 9T Độ trễ lan truyền

Tương tự như phần ghi dữ liệu, nhóm tiến hành so sánh các thông số bao gồm độ trễ lan truyền, độ dự trữ nhiễu của các ô nhớ ở quá trình đọc dữ liệu của đề tài này với các cấu trúc ô nhớ ở nghiên cứu [12] và [10] Nhưng vì thiết kế [10] không đề cập đến dữ liệu độ trễ của ô nhớ nên chỉ so sánh độ dự trữ nhiễu của SRAM 4T trong quá trình đọc như được thể hiện bảng 4.3, 4.4 Ở thiết kế [12], các ô nhớ 6T, 7T, 8T, 9T có thông số chiều rộng, chiều dài của bóng bán dẫn để mặc định Điều này làm cho độ dự trữ nhiễu xuống thấp và bên cạnh đó điện áp nguồn của nghiên cứu [12] là 1V làm cho độ trễ lớn hơn rất nhiều Ngoài ra, cấu trúc của ô nhớ SRAM 7T và 9T của đề tài này có phần cải thiện đáng kể về nhiễu so với cấu trúc [12] Còn phần thiết kế [10] có độ dự trữ nhiễu gần bằng so với ô nhớ SRAM 4T của đề tài vì có tỉ lệ kích thước, nguồn cấp và công nghệ là như nhau

4.2.3 So sánh các cấu trúc ô nhớ của đề tài

Thông qua hai bảng 4.1 và 4.3, việc so sánh thông số trong hoạt động ghi và đọc của các ô nhớ của đề tài cho thấy được:

Trong hoạt động ghi, xét 3 thông số thấy được ô nhớ 4T có thông số tốt nhất nhưng độ dự trữ nhiễu đọc của ô nhớ 4T cho thấy sự thiếu ổn định về khả năng đọc dữ liệu và đòi hỏi phải hoạt động ở mức điện áp thấp Còn đối với ô nhớ 6T và 8T, các thông số trong hoạt động ghi là như nhau nhưng ô nhớ 8T có phần vượt trội hơn khi mà độ trễ bé hơn so với độ trễ của ô nhớ 6T ở hoạt động đọc và cùng với đó là mức công suất tiêu thụ lớn hơn trong hoạt động đọc so với ô nhớ 6T Ô nhớ 7T tuy có cải thiện đáng kể về phần công suất nhưng độ dự trữ nhiễu phần đọc khá là thấp so với ô nhớ khác Còn ô nhớ 9T cho thấy sự ổn định về độ trễ lan truyền, công suất tiêu thụ cũng như độ dự trữ nhiễu cả hoạt động ghi và đọc Thông Ô nhớ

Thông số [10] [12] [12] [12] [12] qua quá trình so sánh các thông số mà nhóm thu thập từ các ô nhớ SRAM, nhóm quyết định chọn ô nhớ 9T dựa trên 3 tiêu chí là độ trễ tín hiệu, công suất tiêu thụ và độ dự trữ nhiễu của cả 2 hoạt động đọc và ghi.

KẾT QUẢ THIẾT KẾ CÁC THÀNH PHẦN SRAM

Dựa vào hình 4.56, mạch nạp trước được thiết kế với 3 pMOS Trong đó, hai pMOS là PM0, PM1 đóng vai trò nạp trước điện áp cho hai đường bit BL và BLB Còn pMOS PM2 được nối với ngõ vào cho phép nạp PRE Khi PRE = 0 thì cho phép nạp và duy trì ở trạng thái cân bằng cho hai đường bit BL, BLB

Hình 4.56: Mô phỏng mạch nạp trước

Sau khi thiết kế mạch nguyên lý của mạch nạp trước và đóng gói, nhóm tiến hành chuẩn bị kết nối nguồn 1.2V và dạng sóng đầu vào dùng để kiểm tra hoạt động của mạch thông qua sơ đồ kết nối hình 4.57

Hình 4.57: Đóng gói và kiểm thử mạch nạp trước

Hình 4.58: Dạng sóng mạch nạp trước

Khoảng thời gian 0ns đến 25ns, tín hiệu PRE đang ở mức cao thì hai ngõ ra

BL, BLB không được nạp trước nên giá trị điện áp hai đầu tín hiệu BL, BLB không xác định Ngược lại, khoảng thời gian 25ns đến 50ns là lúc tín hiệu PRE ở mức thấp cho phép mạch nạp vào hai đường BL, BLB lên mức VDD Quá trình nạp giúp giữ điện áp được ổn định trên cả hai đường BL, BLB để phục vụ việc ghi và đọc dữ liệu của bộ nhớ

Hình 4.59: Công suất của mạch nạp trước

Công suất tiêu thụ trung bình của mạch nạp trước trong thời gian 250ns như hình 4.59 được tính thông qua việc dùng hàm average trong phần mềm Cadence và cho ra kết quả: 𝑃𝑎𝑣𝑔 = 0.1885 pW

Dựa vào hình 4.60, mạch ghi dữ liệu được thiết kế bằng 2 cổng AND và 1 cổng NOT kết hợp với hai bóng bán dẫn nMOS cho phép kết nối với hai đường dữ

1 liệu BL, BLB Với tín hiệu ngõ vào là tín hiệu cho phép ghi WE, thông tin đầu vào DATA và dữ liệu đầu ra được đưa đến hai đường tín hiệu BL, BLB

Hình 4.60: Mô phỏng mạch ghi

Sau khi thiết kế mạch nguyên lý của mạch ghi và đóng gói, nhóm tiến hành chuẩn bị kết nối nguồn 1.2V và dạng sóng đầu vào DATA, WE dùng để kiểm tra hoạt động của mạch thông qua sơ đồ kết nối hình 4.61

Hình 4.61: Đóng gói và kiểm thử mạch ghi

Hình 4.62: Dạng sóng mạch ghi

Mốc thời gian từ 0ns đến 50ns, tín hiệu WE ở mức logic thấp không xác nhận ghi dữ liệu vào ô nhớ thông qua các đường BL, BLB Khoảng thời gian 50ns đến 75ns tín hiệu WE ở mức cao, DATA = 1 xác nhận ghi thông tin từ DATA vào ô nhớ thông qua đường tín hiệu BLB = 0 và BL bị hở mạch Khoảng thời gian 75ns đến 100ns tín hiệu WE ở mức cao, DATA = 0 xác nhận ghi thông tin từ DATA vào ô nhớ thông qua đường tín hiệu BL = 0 và BLB bị hở mạch

Hình 4.63: Công suất của mạch ghi

Công suất tiêu thụ trung bình của mạch ghi khoảng thời gian 250ns thể hiện ở như hình 4.63 được tính thông qua việc dùng hàm average trong phần mềm Cadence và cho ra kết quả: 𝑃𝑎𝑣𝑔 = 1.079 uW

Dựa vào hình 4.64, mạch đọc được thiết kế từ 3 bóng bán dẫn pMOS kết hợp với 4 nMOS khuếch đại tín hiệu từ các ngõ vào BL, BLB đưa về đúng với mức điện áp và phản ánh đúng dữ liệu đọc được từ ô nhớ

Hình 4.64: Mô phỏng mạch đọc

Sau khi thiết kế mạch đọc và đóng gói, nhóm tiến hành chuẩn bị kết nối nguồn 1.2V và dạng sóng đầu vào RE, BL, BLB dùng để kiểm tra hoạt động của mạch thông qua sơ đồ kết nối hình 4.65

Hình 4.65: Đóng gói và kiểm thử mạch đọc

Hình 4.66: Dạng sóng mạch đọc

Khoảng thời gian 0ns đến 50ns, tín hiệu RE ở mức logic thấp không cho phép đọc dữ liệu từ ô nhớ thông qua các đường BL, BLB và ngõ ra OUT không xác định Ngược lại, khoảng thời gian 50ns đến 75ns thì tín hiệu RE ở mức cao cho phép đọc dữ liệu từ BL = 1, BLB = 0 làm cho NM2 và NM4 được nối với ngõ ra OUT nối lên VDD (OUT = 1) Còn khoảng thời gian 75ns đến 100ns, tín hiệu RE ở mức cao cho phép đọc dữ liệu từ BL = 0, BLB = 1 làm cho NM4, NM1 và PM1 dẫn đến ngõ ra OUT kết nối VSS (OUT = 0)

Hình 4.67: Công suất mạch đọc

Công suất trung bình mà mạch đọc tiêu thụ trong thời gian 250ns như hình 4.67 được tính thông qua việc dùng hàm average trong phần mềm Cadence và cho ra kết quả: 𝑃𝑎𝑣𝑔 = 21.86 uW

4.3.4 Mạch giải mã 5 sang 32 Để thiết kế mạch giải mã 5 sang 32 phục vụ cho việc truy xuất vị trí ô nhớ, nhóm đã tiến hành thiết kế, đóng gói hai mạch là: mạch giải mã 2 sang 4 và mạch giải mã 3 sang 8

Dựa vào hình 4.68, mạch giải mã 2 sang 4 được thiết kế với 2 cổng NOT và 8 cổng AND Với EN là tín hiệu cho phép tích cực mức cao và hai ngõ vào nhị phân A0, A1 dùng để lựa chọn giải mã thành một trong 4 đầu ra từ B0 đến B3

Hình 4.68: Mô phỏng và đóng gói mạch giải mã 2 sang 4

KẾT QUẢ THIẾT KẾ SRAM 1 BIT

4.4.1 Sơ đồ nguyên lý của mạch

Dựa vào sơ đồ hình 3.1, nhóm tiến hành kết nối ô nhớ đã được lựa chọn với các thành phần khác của bộ nhớ SRAM là mạch đọc, mạch ghi, mạch nạp trước và sau đó tiến hành đóng gói như sơ đồ hình 4.74 để có thể kiểm tra dạng sóng của mạch trong hoạt động ghi, đọc ở 2 mức logic là “0” và “1” Qua đó, nhóm có thể thực hiện việc đánh giá được giá trị độ trễ lan truyền và công suất tiêu thụ của mạch SRAM 1 BIT.

Hình 4.74: Mô phỏng và đóng gói của mạch SRAM 1 BIT hoàn chỉnh

Hình 4.75: Dạng sóng của mạch SRAM 1 BIT hoàn chỉnh

Dựa vào hình 4.75, hoạt động ghi và đọc bit “0” và “1” được thể hiện:

Ghi và đọc bit “1”: khoảng thời gian từ 0ns đến 40ns và từ 100ns đến 160ns, tín hiệu PRE = 0 để nạp trước điện áp cho đường BL, BLB để chuẩn bị hoạt động ghi và đọc dữ liệu Từ 40ns đến 100ns PRE = 1, WL = 1 và WE = 1 để cho phép ghi giá trị DATA hiện tại là mức logic “1”, khi đó BL = 1 và BLB = 0 Từ 160ns đến 220ns, PRE = 1 dùng để cân bằng điện áp đường BL, BLB và đồng thời WL

= 1, RE = 1 để cho phép đọc giá trị lưu trữ trong ô nhớ hiện tại là mức logic “1”, khi đó cho ra tín hiệu ngõ ra OUT = 1

Ghi và đọc bit “0”: khoảng thời gian từ 220ns đến 280ns và từ 340ns đến 400ns, tín hiệu PRE = 0 để nạp trước điện áp cho đường BL, BLB để chuẩn bị hoạt động ghi và đọc dữ liệu Từ 280ns đến 340ns, tín hiệu PRE = 1, WL = 1 và WE 1 để cho phép ghi giá trị DATA hiện tại là mức logic “0”, khi đó BL = 0 và BLB

= 1 Từ 400ns đến 460ns, PRE = 1 dùng để cân bằng điện áp đường BL và BLB Đồng thời, RE = 1 để cho phép đọc giá trị lưu trữ trong ô nhớ hiện tại là mức logic

“0”, khi đó cho ra tín hiệu ngõ ra OUT = 0

Hình 4.76: Độ trễ từ mức áp thấp đến cao SRAM 1 BIT quá trình ghi

Hình 4.77: Độ trễ từ mức áp cao đến thấpSRAM 1 BIT quá trình ghi Độ trễ từ mức áp thấp đến cao: 𝑡𝑝𝑑r = 155.2683ps Độ trễ từ mức áp cao xuống thấp: 𝑡𝑝𝑑f = 11.055115ps

Từ công thức (2.1) độ trễ lan truyền: 𝑡𝑝𝑑 = tpdf + tpdr

Thời gian tăng: 𝑡 𝑟 = 21.87ps và thời gian giảm:𝑡 𝑓 = 13.73ps

Tốc độ cạnh được tính bằng công thức (2.2): 𝑡 𝑟𝑓 = 𝑡 𝑟 + 𝑡 𝑓

Hình 4.78: Độ trễ từ mức áp thấp đến caoSRAM 1 BIT quá trình đọc

Hình 4.79: Độ trễ từ mức áp cao đến thấpSRAM 1 BIT quá trình đọc Độ trễ từ mức áp thấp đến cao: 𝑡𝑝𝑑r = 177.34955ps Độ trễ từ mức áp cao xuống thấp: 𝑡𝑝𝑑f = 1.1172954ps

Dựa vào công thức (2.1) độ trễ lan truyền: 𝑡𝑝𝑑 = tpdf + tpdr

2 = 89.233ps Thời gian tăng: 𝑡 𝑟 = 133.48ps và thời gian giảm:𝑡 𝑓 = 49.33ps

Tốc độ cạnh được tính bằng công thức (2.2): 𝑡 𝑟𝑓 = 𝑡 𝑟 + 𝑡 𝑓

Hình 4.80: Công suất của SRAM 1 BIT

Công suất tiêu thụ trung bình của SRAM 1 BIT khi thực hiện quá trình ghi và đọc trong khoảng thời gian 500ns như hình 4.80 được tính thông qua việc dùng hàm average trong phần mềm Cadence và cho ra kết quả: 𝑃𝑎𝑣𝑔 = 8.858 uW.

Ngày đăng: 26/09/2024, 14:33

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Thời gian lan truyền trễ và tăng giảm của tín hiệu [5] - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 2.1 Thời gian lan truyền trễ và tăng giảm của tín hiệu [5] (Trang 26)
Hình 2.3: Biên độ nhiễu biến tần CMOS - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 2.3 Biên độ nhiễu biến tần CMOS (Trang 29)
Hình 3.3: Cấu trúc và sơ đồ khối của mạch giải mã 2 sang 4 - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 3.3 Cấu trúc và sơ đồ khối của mạch giải mã 2 sang 4 (Trang 33)
Hình 3.5: Cấu trúc ghép nối mạch giải mã 5 sang 32 - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 3.5 Cấu trúc ghép nối mạch giải mã 5 sang 32 (Trang 35)
Hình 4.2: Mô phỏng SRAM 6T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.2 Mô phỏng SRAM 6T (Trang 47)
Hình 4.3: Mô phỏng SRAM 7T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.3 Mô phỏng SRAM 7T (Trang 47)
Hình 4.4: Mô phỏng SRAM 8T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.4 Mô phỏng SRAM 8T (Trang 48)
Hình 4.6: Hoạt động ghi của mạch ô nhớ SRAM 4T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.6 Hoạt động ghi của mạch ô nhớ SRAM 4T (Trang 49)
Hình 4.8: Độ trễ từ mức áp cao đến thấp ô nhớ 4T trong quá trình ghi - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.8 Độ trễ từ mức áp cao đến thấp ô nhớ 4T trong quá trình ghi (Trang 50)
Hình 4.14: Nhiễu trong phần ghi của ô nhớ SRAM 6T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.14 Nhiễu trong phần ghi của ô nhớ SRAM 6T (Trang 53)
Hình 4.17: Độ trễ từ mức áp thấp đến cao ô nhớ 7T trong quá trình ghi - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.17 Độ trễ từ mức áp thấp đến cao ô nhớ 7T trong quá trình ghi (Trang 55)
Hình 4.19: Nhiễu trong phần ghi của ô nhớ SRAM 7T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.19 Nhiễu trong phần ghi của ô nhớ SRAM 7T (Trang 56)
Hình 4.21: Hoạt động ghi của mạch ô nhớ SRAM 8T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.21 Hoạt động ghi của mạch ô nhớ SRAM 8T (Trang 57)
Hình 4.23: Độ trễ từ mức áp cao đến thấp ô nhớ 8T trong quá trình ghi - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.23 Độ trễ từ mức áp cao đến thấp ô nhớ 8T trong quá trình ghi (Trang 58)
Hình 4.29: Nhiễu trong phần ghi của ô nhớ SRAM 9T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.29 Nhiễu trong phần ghi của ô nhớ SRAM 9T (Trang 61)
Hình 4.33: Độ trễ từ mức áp cao đến thấp ô nhớ 4T trong quá trình đọc - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.33 Độ trễ từ mức áp cao đến thấp ô nhớ 4T trong quá trình đọc (Trang 63)
Hình 4.39: Nhiễu trong phần đọc của ô nhớ SRAM 6T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.39 Nhiễu trong phần đọc của ô nhớ SRAM 6T (Trang 66)
Hình 4.41: Hoạt động đọc của mạch ô nhớ SRAM 7T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.41 Hoạt động đọc của mạch ô nhớ SRAM 7T (Trang 67)
Hình 4.43: Độ trễ từ mức áp cao đến thấp ô nhớ 7T trong quá trình đọc - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.43 Độ trễ từ mức áp cao đến thấp ô nhớ 7T trong quá trình đọc (Trang 68)
Hình 4.49: Nhiễu trong phần đọc của ô nhớ SRAM 8T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.49 Nhiễu trong phần đọc của ô nhớ SRAM 8T (Trang 71)
Hình 4.51: Hoạt động đọc của mạch ô nhớ SRAM 9T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.51 Hoạt động đọc của mạch ô nhớ SRAM 9T (Trang 72)
Hình 4.53: Độ trễ từ mức áp cao đến thấp ô nhớ 9T trong quá trình đọc - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.53 Độ trễ từ mức áp cao đến thấp ô nhớ 9T trong quá trình đọc (Trang 73)
Hình 4.54: Nhiễu trong phần đọc của ô nhớ SRAM 9T - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.54 Nhiễu trong phần đọc của ô nhớ SRAM 9T (Trang 73)
Hình 4.58: Dạng sóng mạch nạp trước - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.58 Dạng sóng mạch nạp trước (Trang 78)
Hình 4.62: Dạng sóng mạch ghi - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.62 Dạng sóng mạch ghi (Trang 80)
Hình 4.64: Mô phỏng mạch đọc - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.64 Mô phỏng mạch đọc (Trang 81)
Hình 4.70: Mô phỏng mạch giải mã 5 sang 32 - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.70 Mô phỏng mạch giải mã 5 sang 32 (Trang 84)
Hình 4.74: Mô phỏng và đóng gói của mạch SRAM 1 BIT hoàn chỉnh - Đồ án tốt nghiệp: Thiết kế và mô phỏng bộ nhớ SRAM 32×32 theo công nghệ 90NM
Hình 4.74 Mô phỏng và đóng gói của mạch SRAM 1 BIT hoàn chỉnh (Trang 86)

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

TÀI LIỆU LIÊN QUAN

w