一種基于FPGA的DDR SDRAM控制器的設(shè)計(jì)
摘要 對(duì)DDR SDRAM的基本工作特性以及時(shí)序進(jìn)行了分析與研究,基于FPGA提出了一種通用的DDRSDRAM控制器設(shè)計(jì)方案。在Modelaim上通過(guò)了軟件功能仿真,并在FPGA芯片上完成了硬件驗(yàn)證。結(jié)果表明,該控制器能夠較好地完成DDR SDRAM的讀寫控制,具有讀寫效率較高、接口電路簡(jiǎn)單的特點(diǎn)。
關(guān)鍵詞 DDR SDRAM;控制器;FPGA
隨著超大規(guī)模集成電路技術(shù)的成熟,以及數(shù)字信號(hào)處理技術(shù)的廣泛應(yīng)用,高速大容量緩存逐漸成為一項(xiàng)關(guān)鍵技術(shù)。DDR SDRAM即雙倍速率同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,它采用地址復(fù)用技術(shù),在時(shí)鐘的上升沿和下降沿均能觸發(fā)數(shù)據(jù)進(jìn)行傳輸,并且能與系統(tǒng)保持良好的同步性。DDR SDRAM以其大容量、低成本以及更高的數(shù)據(jù)傳輸質(zhì)量等優(yōu)勢(shì),逐步取代SDRAM而被各集成電路制造廠家所青睞。而要實(shí)現(xiàn)各微處理器和數(shù)字信號(hào)處理器的存儲(chǔ)器接口與DDR SDRAM接口相逢接,必須要借助DDR SDRAM控制器才能實(shí)現(xiàn)控制讀寫等功能。微電子制造工藝的迅猛發(fā)展使得FPGA的集成度和性能也不斷提高,在各種嵌入式系統(tǒng)中的應(yīng)用也越來(lái)越廣泛。FPGA內(nèi)部集成了DDR觸發(fā)器、PLL鎖相環(huán)等邏輯資源,并且其引腳均能滿足SSTL-Ⅱ電器特性的要求,因此FPGA是實(shí)現(xiàn)DDR,讀寫控制的最佳平臺(tái),研究如何利用FPGA實(shí)現(xiàn)DDR SDRAM控制器具有重要的現(xiàn)實(shí)意義。
1 DDR SDRAM的工作特性
一個(gè)DDR SDRAM通常包含有地址總線15個(gè)、數(shù)據(jù)總線16個(gè)、數(shù)據(jù)捕獲探針2個(gè)、寫掩碼信號(hào)線2個(gè)、差分主控時(shí)鐘線1個(gè)、時(shí)鐘使能信號(hào)線1個(gè)、以及命令信號(hào)線4個(gè):CS_N,RAS_N,CAS_N,WE_N。
1.1 DDR SDRAM的初始化
DDR SDRAM的工作模式必須由初始化操作來(lái)配置,初始化的過(guò)程通常包含:首先發(fā)送一個(gè)Prechargeall bank命令完成對(duì)所有塊的預(yù)充,接下來(lái)是兩個(gè)或多個(gè)Auto Refresh命令使DDR SDRAM進(jìn)行自動(dòng)刷新,最后由模式配置命令完成對(duì)DDR SDRAM內(nèi)部模式設(shè)置寄存器的配置。
1.2 訪問(wèn)存儲(chǔ)單元
為減少輸入輸出引腳的數(shù)量,初始化完成后要對(duì)各個(gè)Bank中的陣列進(jìn)行尋址以訪問(wèn)存儲(chǔ)單元:在Read/Write狀態(tài)下先由Active命令激活相關(guān)的Bank,并鎖存其行地址,當(dāng)Read/Write命令有效時(shí)鎖存列地址。對(duì)于已被激活由同一個(gè)Bank,再次激活必須重新執(zhí)行一次Prechar ge all bank命令。
1.3 刷新
DDR SDRAM的存儲(chǔ)單元由晶體管和電容器組成,電容器會(huì)由于漏電而導(dǎo)致電荷丟失,為保證數(shù)據(jù)存儲(chǔ)的穩(wěn)定性,必須周期性地對(duì)DDR SD RAM進(jìn)行刷新??刂破鲀?nèi)部的自動(dòng)刷新計(jì)數(shù)器每隔一個(gè)刷新周期便會(huì)發(fā)送一個(gè)刷新請(qǐng)求,控制器在接收到請(qǐng)求后會(huì)根據(jù)當(dāng)前DDR SDRAM的狀態(tài)做出不同響應(yīng):如果此時(shí)DDRSDRAM處于Idle State,控制器便會(huì)發(fā)出一個(gè)AutoRefresh命令對(duì)DDR SDRAM進(jìn)行刷新;如果此時(shí)DDR SDRAM正在進(jìn)行Read/Write操作,控制器會(huì)等到當(dāng)前操作完成之后再發(fā)送Auto Refresh命令。
1.4 操作控制
DDR SDRAM的操作命令由專用的命令控制信號(hào)決定。具體會(huì)執(zhí)行何種操作動(dòng)作決定于系統(tǒng)時(shí)鐘上升沿時(shí)的CS_N(片選信號(hào)),RAS_N(行地址使能信號(hào)),CAS_N(列地址使能信號(hào))以及WE_N(寫使能信號(hào))的狀態(tài)。DDR SDRAM操作命令真值表如表1所示,選擇控制信號(hào)線和地址信號(hào)線只作為輔助參數(shù)輸入。
電容器相關(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)論