- 相關推薦
DDR SDRAM控制器的FPGA實現
摘要:DDRSDRAM高容量和快速度的優點使它獲得了廣泛的應用,但是其接口與目前廣泛應用的微處理器不兼容。介紹了一種通用的DDRSDRAM控制器的設計,從而使得DDRSDRAM能應用到微處理器中去。關鍵詞:DDRSDRAM控制器延時鎖定回路FPGA
。模模遥樱模遥粒褪墙⒃冢樱模遥粒偷幕A上的,但是速度和容量卻有了提高。首先,它使用了更多的先進的同步電路。其次,它使用延時鎖定回路提供一個數據濾波信號。當數據有效時,存儲器控制器可使用這個數據濾波信號精確地定位數據,每16位輸出一次,并且同步來自不同的雙存儲器模塊的數據。
。模模遥樱模遥粒筒恍枰岣邥r鐘頻率就能加倍提高SDRAM的速度,因為它允許在時鐘脈沖的上升沿和下降沿讀寫數據。至于地址和控制信號,還是跟傳統的SDRAM一樣,在時鐘的上升沿進行傳輸。
由于微處理器、DSP等不能直接使用DDRSDRAM,所以本文介紹一種基于FPGA的DDRSDRAM控制電路。
圖1DDRSDRAM控制器邏輯圖
1DDRSDRAM控制器的設計
。保笨傮w邏輯圖
DDRSDRAM控制器的總體邏輯圖如圖1所示。主要由DDR控制模塊(Controller)、DDR接口模塊?ddr_interface?以及延時鎖定回路模塊(DLL)三部分組成。下面詳細介紹各個模塊的設計。
1.2DDR控制模塊的設計
。模模铱刂颇K包含了主要的狀態轉換。處理器通過sys_cmd對DDR控制模塊寫入命令,完成總線仲裁、解釋命令、時序分配等任務。當DDR接口模塊對DDRSDRAR數據讀寫時便進行控制。
控制器的狀態機如圖2所示。控制器開始設置在空閑(Idle)狀態,接下去的狀態根據控制命令的不同可以是預充電?Precharge?、導入模式寄存器?LoadModeRegister?、刷新?Refresh?、有效?Active?等狀態。要進入讀寫數據狀態,必須先經過有效狀態。讀數據時,狀態機由有效狀態轉換為讀準備狀態?然后根據指令進入讀狀態?刂颇K保持在讀狀態直到脈沖終止命令觸發或者數據讀完。寫的過程與讀類似,在后面的接口模塊中將詳細介紹。
1.3DDR接口模塊
DDR接口模塊負責維持外部信號、DDR控制器與DDRSDRAM之間的雙向數據總線信號,保證數據和命令能送達DDRSDRAM。
圖3給出了讀寫操作的數據流框圖。對寫周期而言,128位的sys_data_i被fpga_clk2x分頻為64位的數據,通過lac_clk選擇高低位。為了減小輸入輸出的延遲,數據在進出模塊時都將被保存在輸入輸出寄存器中。ddr_write_en產生ddr_dq所需的三態信號。
對于寫周期而言,64位的ddr_dq信號在輸入輸出寄存器被fpga_clk2x觸發裝配成128位的信號,其中低位信號在下降沿時被裝配,高位信號在上升沿時被裝配。
圖4給出了一個典型的寫操作的波形圖。在T1期間,寫命令、地址和第一個128位數據被分別置于sys_cmd、sys_addr和sys_data_i三個端口。在T2期間?控制器的狀態由空閑轉變為有效。接下來兩個周期,控制器給出ACTIVE命令以及行片選地址。再經3個周期的延遲以后,控制器給出WRITEA命令和列片選地址。接下來,ddr_dq和ddr_dqs被設置成雙倍速率模式。
圖3讀寫數據流框圖
1.4DLL模塊
圖5示出了給FPGA以及DDRSDRAM提供時鐘信號的兩個DLL模塊的結構圖。第一個DLL模塊,即DLL_EXT給DDRSDRAM提供ddr_clk及ddr_clkb兩個時鐘信號,并且接收ddr_clk的反饋。第二個DLL模塊,即DLL_INT給FPGA提供兩個內部時鐘信號fpga_clk和fpga_clk2x,它的反饋信號來自fpga_clk。兩個DLL有著相同的時鐘輸入,但是不同的反饋信號保證了輸入時鐘和FPGA時鐘以及DDRSDRAM時鐘之間的零延遲。
圖4典型的寫操作波形圖
。矊崿F
本設計選用XILINX公司的Vietex-E系列FPGA來實現,因為這個系列內嵌的DLL模塊和可選擇輸入輸出.
圖5兩個DLL模塊結構圖
結構的特點能極大地方便設計。仿真結果顯示,在133MHz的主頻下,最高能獲得1.6GB/s的速率。
本文給出了基于FPGA的DDRSDRAM控制器的設計。從仿真中可以看出,這種結構的DDR控制器有著很高的性能,因此將得到廣泛的應用。
【DDR SDRAM控制器的FPGA實現】相關文章:
利用FPGA實現MMC2107與SDRAM接口設計08-06
自適應算術編碼的FPGA實現08-06
基于FPGA的USB2.0控制器設計08-06
基于FPGA的LCD&VGA控制器設計08-06
利用FPGA解決TMS320C54x與SDRAM的接口問題08-06
3-DES算法的FPGA高速實現08-06
用PowerPC860實現FPGA配置08-06
固定幾何結構的FFT算法及其FPGA實現08-06
基于FPGA實現FIR濾波器的研究08-06