一種基于FPGA的DDR SDRAM控制器的設計
2 DDR SDRAM控制器的設計
為能像操作普通存儲器—樣對DDR SDRAM進(jìn)行控制,必須要通過(guò)一系列的初始化操作完成對DDRSDRAM復雜的讀寫(xiě)時(shí)序轉換。同時(shí)DDR SD RAM控制器還要自行產(chǎn)生周期性的Auto Refresh命令自動(dòng)刷新DDR SDRAM,以保證存儲數據的穩定性。圖1為DDR SDRAM控制器管腳接口示意圖,控制器右端的管腳接口與DDR SDRAM所對應管腳接口直接相連,控制器左端的管腳接口則是接收來(lái)自系統發(fā)送的控制信號。本文引用地址:http://dyxdggzs.com/article/159415.htm
DDR SDRAM控制器的基本構造框架如圖2所示:分別是系統控制接口模塊ddr_control_interface、CMD命令模塊ddr_command和數據通路模塊ddr_data_path。ddr_control_interface包括命令接口模塊和刷新控制模塊,系統發(fā)出的控制信號會(huì )首先進(jìn)入ddr_control_interface,進(jìn)而產(chǎn)生不同的commsnd信號組合;ddr_command用于接收系統控制接口模塊產(chǎn)生的command,并解碼成具體的操作命令對DDR SDRAM進(jìn)行控制;ddr_data—path主要是對輸入和輸出數據進(jìn)行有效的控制。
2.1 系統控制接口模塊
圖3為系統控制接口模塊ddr_control_interface的有限狀態(tài)機??刂破鹘邮盏胶竽K發(fā)送的LOAD_REG1命令后進(jìn)入載入模式,然后由一個(gè)LOAD_REG2命令將刷新計數器值載入控制器??刂破靼l(fā)送Read/Write操作請求時(shí),如果DDR SDRAM正處于IdleState,則需要使用Active命令打開(kāi)相應的行之后才能進(jìn)入Read/Write狀態(tài)。DDR SDRAM的Read/Write訪(fǎng)問(wèn)是基于突發(fā)方式,有2、4、8這3種突發(fā)長(cháng)度。在突發(fā)長(cháng)度為8的狀態(tài)下,DDR SDRAM接收Read命令后會(huì )在指定的延遲后的4個(gè)時(shí)鐘周期內,由DQ數據線(xiàn)給出8個(gè)16位數據,完成1次突發(fā)Read操作。執行完1次突發(fā)Read操作,控制器便會(huì )自動(dòng)轉入Read等待狀態(tài),這個(gè)等待狀態(tài)將持續到控制器接收到下一個(gè)Read命令。如果此時(shí)發(fā)送1個(gè)Precharge命令關(guān)閉當前正在工作的行,控制器就會(huì )進(jìn)入Idle State。連續突發(fā)Bead操作可以通過(guò)設置Read等待狀態(tài)來(lái)實(shí)現而不必重復Active操作。當Read操作發(fā)生在不同的行時(shí),需要先使用Precharge命令關(guān)閉正在工作的行,再由Active打開(kāi)需要讀取的另一個(gè)行,而此時(shí)的訪(fǎng)問(wèn)耗時(shí)最長(cháng)。
電容器相關(guān)文章:電容器原理
fpga相關(guān)文章:fpga是什么
電荷放大器相關(guān)文章:電荷放大器原理 漏電開(kāi)關(guān)相關(guān)文章:漏電開(kāi)關(guān)原理 鎖相環(huán)相關(guān)文章:鎖相環(huán)原理
評論