nghiên cứu thiết kế và thử nghiệm lõi ip sdram controller

78 297 0
nghiên cứu thiết kế và thử nghiệm lõi ip sdram controller

Đ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

Trang1 TÓM TẮT NỘI DUNG NGHIÊN CỨU Mục tiêu nghiên cứu trong ñề tài là thiết kế IP SDRAM controller. IP này có thể tổng hợp ñược trên các họ FPGA của Altera và Xilinx, có giao tiếp bus hệ thống theo chuẩn Avalon-MM do Altera ñưa ra, tiêu tốn ít tài nguyên hệ thống (nhỏ hơn 2000 slice), tốc ñộ clock có thể ñạt ñược là 133 Mhz. IP SDRAM controller cung cấp khả năng giao tiếp theo kiểu ñường ống, cho phép xử lý một lệnh ghi-ñọc trong khi nhận lệnh khác. ðiều này làm tăng tốc ñộ xử lý của IP. Ngoài ra, IP còn có khả năng cấu hình ñộng các tham số như CAS latency, tRP, tRFC …Khả năng này cho phép IP có thể giao tiếp với nhiều loại SDRAM khác nhau. Lõi IP SDRAM controller ñược tổng hợp thử nghiệm trên FPGA Cyclon II bằng phần mềm Quatus II, và chạy thử nghiệm trên kit DE2. Một chương trình kiểm tra ñược viết trên PC cho phép giao tiếp với kit DE2, ñiều khiển IP SDRAM controller, cho phép ta dễ dàng ñánh giá kết quả thực thi. Trang 2 SUMARY OF RESEARCH CONTENT The goal of this project is designing and implementing the SDR SDRAM controller IP core. This IP is fully synthesizable on FPGAs of Xilinx and Altera. It has the Avalon-MM bus interface, low resource, and the clock rate of 133 Mhz. IP SDRAM controller has the pipeline architecture, allow the IP processes one command while receiving another command. This will increase the performance of the IP. It also supports all common memory configurations, such as CAS latency, tRFC, etc. This provides the capability to interface with various SDRAM chip. At the time, the core is synthesized on Cyclone II using Quatus, configured on DE2 board. A test program on PC interface with the DE2 board, control the IP, allow us to evaluate the IP’s performance. Trang 3 MỤC LỤC Trang Tóm tắt nội dung nghiên cứu 1 Mục lục 3 Danh sách bảng 6 Danh sách hình 7 Các từ viết tắt 9 Bảng quyết toán 10 Nội dung 1:PHẦN MỞ ðẦU 13 Nội dung 2: HOẠT ðỘNG CỦA SDRAM 14 I. Tổng quan về SDRAM 14 II. Hoạt ñộng của SDRAM 17 II.1 Khởi tạo 17 II.2 Các lệnh cơ bản trong quá trình hoạt ñộng 18 II.2.1 Active 18 II.2.2 READ 19 II.2.3 Lệnh WRITE 20 II.2.4 Lệnh PRECHARGE 22 II.2.5 Lệnh AUTO REFRESH 23 II.2.6 Các giản ñồ xung thể hiện các lệnh kế tiếp nhau 23 II.2.7 Các thông số timing quan trọng 25 Nội dung 3: GIỚI THIỆU VỀ CHUẨN AVALON-MM (AVALON MEMORY-MAPPED INTERFACE) 27 I Giới thiệu về chuẩn Avalon 27 II Các tín hiệu cơ bản và timing của bus Avalon-MM Slave 28 III Các kiểu hoạt ñộng cơ bản của bus Avalon-MM slave 29 III.1 ðọc và ghi với tín hiệu waitrequest 29 Trang 4 III.2 Truyền dữ liệu theo kiểu ñường ống (pipeline) 29 III.3 Truyền dữ liệu theo khối (burst transfer) 30 Nội dung 4: THIẾT KẾ SPECIFICATION CHO SDRAM CONTROLLER 31 I Phân tích 31 I.1 Xác ñịnh cách giao tiếp bus hệ thống 31 I.2 Giao tiếp với SDRAM 31 II Sơ ñồ khối IP SDRAM controller 32 II.1 Các tín hiệu của IP SDRAM controller 32 II.2 Chi tiết sơ ñồ khối của IP SDRAM Controller 33 III. Cấu trúc từng khối trong thiết kế 34 III.1 Khối giao tiếp bus 34 III.2 Khối ñiều khiển 39 III.2.1 Máy trạng thái khởi ñộng cho SDRAM 41 III.2.2 Máy trạng thái chính 43 III.2.2.1 Ý nghĩa một số tín hiệu cơ bản trong máy trạng thái chính 44 III.2.2.2 Hoạt ñộng của máy trạng thái chính 45 III.3 Khối giao tiếp SDRAM 48 III.3.1 Sơ ñồ khối và các tín hiệu của khối giao tiếp SDRAM 48 III.3.2 Phân tích rõ hơn về một số tín hiệu trong khối giao tiếp SDRAM 50 III.3.3 Hoạt ñộng của khối giao tiếp SDRAM 52 III.4 Khối tạo tín hiệu refresh 55 II.5 Khối tạo tín hiệu delay_100us 58 Nội dung 5: THIẾT KẾ RTL CODE VÀ TESTBENCH 59 I Thiết kế RTL code 59 II Testbench với core 16 bit 59 III Testbench với core 32 bit 62 Trang 5 IV Kết luận 64 Nội dung 6: XÂY DỰNG GIAO TIẾP VỚI LÕI NIOS II VÀ THỰC THI TRÊN FPGA 65 I Xây dựng giao tiếp với lõi NIOS II 65 II Thực thi hệ thống trên FPGA 67 III Tổng hợp riêng lõi IP trên FPGA 69 IV So sánh IP SDRC với một số IP thương mại khác 70 Nội dung 7 : THỬ NGHIỆM HỆ THỐNG 71 I Giới thiệu về DIMM SDRAM 71 II Mô hình cho hệ thống NIOS 73 III Phần mếm giao tiếp hệ thống 73 Nội dung 8 : TỔNG KẾT 76 I Kết quả ñạt ñược 76 II Hướng phát triển 76 TÀI LIỆU THAM KHẢO 78 Trang 6 DANH SÁCH BẢNG SỐ TÊN BẢNG SỐ LIỆU TRANG 1 Bảng sự thật các lệnh của SDRAM 16 2 Bảng sự thật của tín hiệu DQM 16 3 Các thông số timing quan trọng 25 4 Các tín hiệu cơ bản của bus Avalon-MM Slave 28 5 Các tín hiệu của IP SDRAM controller 33 6 Vùng ñịa chỉ các tín hiệu Chip Select 33 7 Các tín hiệu của khối giao tiếp bus 35 8 Các thanh ghi của SDRC 38 9 Các tín hiệu của khối ñiều khiển 41 10 Các tín hiệu của khối giao tiếp SDRAM 49 11 Bảng sự thật cho tín hiệu chọn chip SDRAM 51 12 Mã cho các lệnh ñiều khiển SDRAM 52 13 Thông số tài nguyên của SDRC 69 14 So sánh IP SDRC với một số IP thương mại khác 70 Trang 7 DANH SÁCH HÌNH SỐ TÊN HÌNH ẢNH TRANG 1 Sơ ñồ khối SDRAM 15 2. Các tham số cấu hình trong lệnh LMR 18 3 Lệnh ACTIVE một bank và row 19 4 Quá trình chờ tRCD 19 5 Lệnh READ 20 6 Giản ñồ xung lệnh READ 20 7 lệnh READ với AUTO PRECHARGE 21 8 Lệnh WRITE 21 9 giản ñồ xung lệnh WRITE 22 10 Giản ñồ xung lệnh WRITE một khối dữ liệu 22 11 Lệnh PRECHARGE 23 12 giản ñồ xung READ to WRITE 23 13 giản ñồ xung WRITE to WRITE 24 14 giản ñồ xung WRITE to READ 24 15 Giản ñồ trạng thái của SDRAM 26 16 Ví dụ về một hệ thống sử dụng giao tiếp Avalon 27 17 ðọc và ghi với tín hiệu waitrequest 29 18 Ghi dữ liệu theo kiểu ñường ống 29 19 Ghi dữ liệu theo khối 30 20 Sơ ñồ khối IP SDRAM Controller hoàn chỉnh 34 21 Sơ ñồ chân khối giao tiếp bus 34 22 Sơ ñồ chi tiết khối giao tiếp bus 37 23 Sơ ñồ khối ñiều khiển 40 24 Máy trạng thái khởi tạo cho SDRAM 42 25 Máy trạng thái chính 43 Trang 8 26 Khối giao tiếp SDRAM 48 27 Sơ ñồ khối tạo tín hiệu read_data_valid 54 28 Sơ ñồ khối tạo tín hiệu sys_data_out 54 29 Sơ ñồ kết bus 2 chiều sdr_dq 55 30 Sơ ñồ chân khối refresh counter 56 31 Sơ ñồ chi tiết khối refresh counter 56 32 Máy trạng thái khối refresh_counter 57 33 Sơ ñồ chân khối delay_100us 58 34 Sơ ñồ chi tiết khối delay_100us 58 35 Mô hình testbench cho core 16 bit 59 36 SDRAM controller 16 bit thực thi các lệnh ghi liên tiếp 60 37 SDRAM controller 16 bit thực thi các lệnh ñọc liên tiếp 61 38 Mô hình testbench cho core 32 bit 62 39 SDRAM controller 32 bit thực thi các lệnh ghi liên tiếp 63 40 SDRAM controller 32 bit thực thi các lệnh ñọc liên tiếp 64 41 Màn hình component editor 65 42 Xây dựng hệ thống dùng SOPC Builder 66 43 Kết nối hệ thống 68 44 Dùng NIOS IDE ñể test hệ thống 69 45 Sơ ñồ khối DIMM SDRAM 72 46 Giao tiếp giữa SDRC và DIMM SDRAM 73 47 Phần mềm test IP SDRC 74 48 Chức năng fill của phần mềm 75 Trang 9 CÁC TỪ VIẾT TẮT STT Tên Ý nghĩa 1 tRP Thời gian cần cho lệnh Precharge 2 tRFC Thời gian cần cho lệnh Auto refresh 3 tMRD Thời gian cần cho lệnh Load mode register 4 tRCD Thời gian từ lệnh ACTIVE ñến lệnh READ hoặc WRITE 5 tREF Chu kì refresh 6 CAS latency Số chu kì clock từ khi có lệnh READ ñến khi co dữ liệu xuất ra từ SDRAM 7 SRAM Static RAM 8 SDR SDRAM Single data rate synchronous dynamic RAM 9 IP Intellectual property Trang 10 QUYẾT TOÁN KINH PHÍ ðề tài: Nghiên cứu thiết kế và thử nghiệm lõi IP SDRAM controller Chủ nhiệm: Th.S Bùi Quốc Bảo Cơ quan chủ trì: ðH Bách Khoa TP.HCM Thời gian ñăng ký trong hợp ñồng: 11/2007 – 11/2008 Thời gian thực hiện giai ñoạn 1: 11/2007 – 7/2008 Tổng kinh phí ñược duyệt: 190.000.000 VNð Kinh phí cấp giai ñoạn 1: 120.000.000 Theo TB số : 232 TB-SKHCN ngày 16/11 /2007 TT Nội dung Kinh phí Trong ñó Ngân sách Nguồn khác I Kinh phí ñược cấp trong năm 120.000.000 120.000.000 II Kinh phí quyết toán trong năm 120.000.000 120.000.000 1. Công chất xám 2. Công thuê khoán 109.000.000 109.000.000 3. Nguyên, nhiên, vật liệu, dụng cụ, phụ tùng, văn phòng phẩm 6.000.000 6.000.000 4. Thiết bị 5. Xét duyệt, giám ñịnh, nghiệm thu 6. Hội nghị, hội thảo 7. ðánh máy tài liệu 8. Giao thông liên lạc 9. Chi phí ñiều hành 3.000.000 3.000.000 III Tiết kiệm 5% IV Kinh phí chuyển sang năm sau [...]... c ñã th c hi n Xây d ng giao ti p gi a IP SDRAM Xây d ng giao ti p gi a IP SDRAM controller và lõi NIOS II controller và lõi NIOS II Th c thi trên FPGA Th c thi IP SDRAM controller trên FPGA: th nghi m riêng IP SDRAM controller và th nghi m h th ng g m IP SDRAM controller và lõi NIOS II Xây d ng chương trình trên PC Xây d ng chương trình cho phép th nghi m lõi IP, có giao di n tr c quan, tương thích... Avalon-MM Giao ti p ñư c v i các chip SDR SDRAM và DIMM SDRAM • Chương trình ph n m m: Ho t ñ ng tương tích Windows Có các ch c năng cho phép ki m tra lõi IP N i dung: • Nghiên c u, n m rõ ho t ñ ng c a SDRAM • Nghiên c u ho t ñ ng c a bus Avalon-MM • Thi t k specification cho IP SDRAM Controller • Thi t k RTL code và testbench • Xây d ng giao ti p gi a IP SDRAM Controller và NIOS II • Th c thi trên FPGA... Sdr_dq 8 2 1 1 1 1,2,4 8,16,32 output output output output output output inout Tín hi u ch n chip SDRAM Tín hi u chon bank c a chip SDRAM Tín hi u CASN c a chip SDRAM Tín hi u RASN c a chip SDRAM Tín hi u WEN c a chip SDRAM Tín hi u DQM c a chip SDRAM Databus c a chip SDRAM B ng 5: Các tín hi u c a IP SDRAM controller CS0 CS1 CS2 CS3 CS4 CS5 CS6 CS7 00000000H - 03FFFFFFH 04000000H - 07FFFFFFH 08000000H... ph thu c vào dung lư ng c a SDRAM Thông thư ng, m i chip SDRAM có 4 bank, 12 dòng ð r ng data bus cũng ph thu c vào t ng lo i SDRAM Các ñ r ng thư ng g p là 8 bit, 16 bit và 32 bit Vì v y, khi thi t k SDRAM controller, thông s v ñ r ng databus là có th thay ñ i ñư c khi ta áp d ng vào các chip khác nhau Hình 1: Sơ ñ kh i SDRAM (www.micron.com) SDRAM ñư c ñi u khi n thông qua command bus g m các tín... latency CAS latency ph thu c vào t c ñ c a SDRAM và t c ñ clock ñưa vào Clock càng nhanh thì CAS latency càng l n Trang 16 ð d li u trong SDRAM không b m t, SDRAM ph i ñư c làm tươi sau nh ng kho ng th i gian nh t ñ nh b ng l nh REF (auto refresh) Sau l nh này t t c các bank ñ u b ñóng và ta ph i tích c c l i ñ ti p t c truy c p vào SDRAM II Ho t ñ ng c a SDRAM: II.1 Kh i t o: SDRAM ph i ñư c kh i t o... m i l n m t d li u Ta s c u hình SDRAM theo cách: single write và read v i burstlength b ng 1 (Ngư i ñ c tham kh o Hình 2: Các tham s c u hình trong l nh LMR) ð truy c p nhi u SDRAM ho c DIMM SDRAM, IP có 8 tín hi u chip select Theo như tham kh o r t nhi u hãng s n xu t SDRAM, s lư ng bank trong 1 chip luôn là 4, ñ r ng ñ a ch hàng và c t ph thu c vào dung lư ng chip Thông thư ng, ñ r ng ñ a ch hàng...BÁO CÁO NGHI M THU Tên ñ tài: Nghiên c u thi t k và th nghi m lõi IP SDRAM controller Ch nhi m ñ tài: Th.S Bùi Qu c B o Cơ quan ch trì: ðH Bách Khoa TP.HCM Th i gian th c hi n ñ tài: 11/2007 – 11/2008 Kinh phí ñư c duy t: 190.000.000 VNð Kinh phí ñã c p: 120.000.000 theo TB s : 232 TB-SKHCN ngày 16/11 /2007 M c tiêu: • Lõi IP SDRAM controller: Bus 32 bit, 8 ñư ng chip select Clockrate: 133 Mhz Datarate:... address width + row address width + 2(vì s bank là 4) + 3 (vì s ñư ng chip select là 8) Tương t như trên, ñ r ng tín hi u DQM (data mask) là ph thu c vào ñ r ng databus c a SDRAM và cũng có th thay ñ i ñư c Gi ng như tín hi u DQM là tín hi u byteenable xu t ra t bus h th ng II Sơ ñ kh i IP SDRAM controller: II.1 Các tín hi u c a IP SDRAM controller: stt Tên tín hi u ð r ng Chi u Ý nghĩa 1 clk 1 input Clock... l n cũng thư ng thi t k riêng cho mình thư vi n các IP riêng, và s d ng cho các chip chuyên bi t c a h ð chúng ta có th có ñư c các chip vi x lý riêng, có kh năng x lý m nh, ñáp ng ñư c các nhu c u kinh t và an ninh qu c phòng, vi c xây d ng nên m t cơ s d li u các lõi IP là h t s c c n thi t V i m c ñích này, nhóm ñ tài thi t k IP Trang 13 SDRAM controller (ñ t tên là SDRC), có th dùng l i ñư c trong... trên PC • Ki m tra, th nghi m lõi Nh ng n i dung th c hi n: Công vi c d ki n Công vi c ñã th c hi n Tìm hi u ho t ñ ng c a SDRAM Tìm hi u ho t ñ ng c a SDRAM ðưa ra specification hoàn ch nh cho Thi t k specification cho SDRAM SDRAM controller controller S a l i, t i ưu S a l i, t i ưu T ch c h i th o l y ý ki n chuyên Nhóm ñ tài ñã có tham kh o ý ki n gia v spec cho SDRAM controller c a các th y có kinh . giữa IP SDRAM controller và lõi NIOS II Xây dựng giao tiếp giữa IP SDRAM controller và lõi NIOS II Thực thi trên FPGA Thực thi IP SDRAM controller trên FPGA: thử nghiệm riêng IP SDRAM controller. SDRAM • Nghiên cứu hoạt ñộng của bus Avalon-MM • Thiết kế specification cho IP SDRAM Controller • Thiết kế RTL code và testbench • Xây dựng giao tiếp giữa IP SDRAM Controller và NIOS II •. với SDRAM 31 II Sơ ñồ khối IP SDRAM controller 32 II.1 Các tín hiệu của IP SDRAM controller 32 II.2 Chi tiết sơ ñồ khối của IP SDRAM Controller 33 III. Cấu trúc từng khối trong thiết kế 34

Ngày đăng: 08/02/2015, 20:50

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan