一種基于FPGA的DDR SDRAM控制器的設(shè)計(jì)
2.2 CMD命令模塊
CMD命令模塊ddr_command由仲裁模塊以及命令產(chǎn)生模塊構(gòu)成。仲裁模塊的作用主要是仲裁初始化請(qǐng)求、刷新請(qǐng)求以及讀寫(xiě)請(qǐng)求的優(yōu)先級(jí),并產(chǎn)生初始化響應(yīng)initial hold、刷新響應(yīng)refresh hold和讀寫(xiě)響應(yīng)sdram wr hold。命令產(chǎn)生模塊則是實(shí)現(xiàn)存儲(chǔ)器與控制之間的命令通信,直接產(chǎn)生存儲(chǔ)器所需的CKE、CS_N,RAS_N,CAS_N,WE_N等命令信號(hào)。除此之外Read/Write所需的行列地址和簇地址也由命令模塊產(chǎn)生。命令產(chǎn)生模塊接收到來(lái)自CMD命令解析模塊的操作命令后,根據(jù)數(shù)據(jù)選通倍號(hào)OE對(duì)數(shù)據(jù)通路模塊進(jìn)行有效控制:OE為1時(shí),進(jìn)行Write操作;OE為0時(shí),進(jìn)行Read操作。
2.3 數(shù)據(jù)通路模塊
數(shù)據(jù)通路模塊ddr_data_path受命令產(chǎn)生模塊的OE信號(hào)控制,其管腳接口如圖4所示。OE為1時(shí),數(shù)據(jù)可由DQIN引腳寫(xiě)入DDR SDRAM;OE為0時(shí),數(shù)據(jù)可從DDR SDRAM的DQIN引腳讀出。
由于DDR SDRAM在時(shí)鐘的上升沿和下降沿能均觸發(fā)數(shù)據(jù),使得用戶(hù)端的數(shù)據(jù)寬度是DDR SDRAM的兩倍。進(jìn)行Read操作時(shí),DQ pins上的雙倍速率數(shù)據(jù)經(jīng)過(guò)邊沿觸發(fā)器,在DQS信號(hào)的兩個(gè)邊沿同時(shí)采樣數(shù)據(jù),然后這些數(shù)據(jù)會(huì)通過(guò)另一套可配置的寄存器被傳送到系統(tǒng)的時(shí)鐘域。進(jìn)行Write操作時(shí),用戶(hù)端寄存器輸出的數(shù)據(jù)會(huì)被傳送到控制器的寄存器中,進(jìn)而被存放到DQ pins上。數(shù)據(jù)通路模塊在與存儲(chǔ)器的接口處完成了兩個(gè)轉(zhuǎn)換:一是翻倍來(lái)自存儲(chǔ)器的數(shù)據(jù)總線(xiàn)寬度;二是以400 MHz的時(shí)鐘頻率接收存儲(chǔ)器在時(shí)鐘上升和下降沿發(fā)出的數(shù)據(jù)。
電容器相關(guān)文章:電容器原理
fpga相關(guān)文章:fpga是什么
電荷放大器相關(guān)文章:電荷放大器原理 漏電開(kāi)關(guān)相關(guān)文章:漏電開(kāi)關(guān)原理 鎖相環(huán)相關(guān)文章:鎖相環(huán)原理
評(píng)論