基于EPM1240的SDRAM控制器的設計
1.2 預充電
由于SDRAM的尋址具有獨占性,所以在進(jìn)行完讀寫(xiě)操作后,如果要對同一L-Bank的另一行進(jìn)行尋址,就要將原來(lái)有效(工作)的行關(guān)閉,重新發(fā)送行/列地址。L-Bank關(guān)閉現有工作行,準備打開(kāi)新行的操作就是預充電(Precharge)。預充電可以通過(guò)命令控制,也可以通過(guò)輔助設定讓芯片在每次讀寫(xiě)操作之后自動(dòng)進(jìn)行預充電。實(shí)際上,預充電是一種對工作行中所有存儲體進(jìn)行數據重寫(xiě),并對行地址進(jìn)行復位,同時(shí)釋放S-AMP(重新加入比較電壓,一般是電容電壓的1/2,以幫助判斷讀取數據的邏輯電平,因為S-AMP是通過(guò)一個(gè)參考電壓與存儲體位線(xiàn)電壓的比較來(lái)判斷邏輯值的),以準備新行的工作。具體而言,就是將S-AMP中的數據回寫(xiě),即使是沒(méi)有工作過(guò)的存儲體也會(huì )因行選通而使存儲電容受到干擾,所以也需要S-AMP進(jìn)行讀后重寫(xiě)。此時(shí),電容的電量(或者說(shuō)其產(chǎn)生的電壓)將是判斷邏輯狀態(tài)的依據(讀取時(shí)也需要),為此要設定一個(gè)臨界值,一般為電容電量的1/2,超過(guò)它的為邏輯1,進(jìn)行重寫(xiě),否則為邏輯0,不進(jìn)行重寫(xiě)(等于放電)。為此,現在基本都將電容的另一端接入一個(gè)指定的電壓(即1/2電容電壓),而不是接地,以幫助重寫(xiě)時(shí)的比較與判斷。
1.3 刷新
SDRAM之所以稱(chēng)為同步動(dòng)態(tài)隨機存儲器,就是因為它要不斷進(jìn)行刷新(Refresh)才能保留住數據,因此它是SDRAM最重要的操作。刷新操作與預充電中重寫(xiě)的操作一樣,都是用S-AMP先讀再寫(xiě)。進(jìn)行預充電操作還要進(jìn)行刷新的原因:因為預充電是對一個(gè)或所有L-Bank中的工作行操作,并且是不定期的,而刷新則是有固定的周期,依次對所有行進(jìn)行操作,以保留那些久久沒(méi)經(jīng)歷重寫(xiě)的存儲體中的數據。但與所有L-Bank預充電不同的是,這里的行是指所有L-Bank中地址相同的行,而預充電中各L-Bank中的工作行地址并不是一定是相同的。
目前公認的標準是,存儲體中電容的數據有效保存期上限是64 ms,也就是說(shuō)每一行刷新的循環(huán)周期是64 ms,這樣刷新速度就是:行數量/64 ms。內存規格有4096Refresh Cyeles/64 ms或8192 Refresh Cycles/64 ms的標識,這里的4096與8192就代表這個(gè)芯片中每個(gè)L-Bank的行數。刷新命令一次對一行有效,發(fā)送間隔也是隨總行數而變化,4096行時(shí)為0.625 ps,8192行時(shí)就為7.812 5 ps。刷新操作分為兩種:自動(dòng)刷新(Auto Refresh,簡(jiǎn)稱(chēng)AR)與自刷新(Self Refresh,簡(jiǎn)稱(chēng)SR)。不論是何種刷新方式,都不需要外部提供行地址信息,因為這是一個(gè)內部的自動(dòng)操作。
2 系統硬件設計
移動(dòng)SDRAM接口設計包括四個(gè)主要模塊,如圖2所示,即控制接口模塊、CAS延遲、突發(fā)長(cháng)度以及地址生成器。下面對這些模塊進(jìn)行簡(jiǎn)要介紹。本文引用地址:http://dyxdggzs.com/article/161059.htm
2.1 控制接口模塊
控制接口模塊內部是有限狀態(tài)機(Finite-State Machine,FSM),有限狀態(tài)機解釋來(lái)自微處理器的輸入,把相應的命令和符合時(shí)序要求的地址發(fā)送給移動(dòng)SDRAM設備,然后,移動(dòng)SDRAM設備進(jìn)入相應的狀態(tài),執行命令。
有限狀態(tài)機會(huì )綜合考慮存儲器的時(shí)序要求,以正確的順序產(chǎn)生各種操作指令,在發(fā)出操作指令之前,控制器首先會(huì )給出一個(gè)讀取使能信號,從數據輸入輸出緩存模塊的地址指令中讀取地址指令??刂平涌谀K解碼并寄存主機發(fā)送的命令,把解碼后的空閑、寫(xiě)、讀、刷新、充電和模式設置命令和地址信號送給命令模塊。狀態(tài)機的狀態(tài)轉換如圖3所示。
2.2 CAS延遲模塊
CAS延遲通過(guò)模式寄存器配置,CAS延遲模塊的實(shí)質(zhì)是2位遞增計數器,這一計數器監視CAS延時(shí)時(shí)鐘周期數。它表示讀命令和第一個(gè)輸出數據之間延遲的時(shí)鐘周期數,延時(shí)時(shí)鐘周期數可以是二或三個(gè)時(shí)鐘周期。圖4分別給出CAS=3時(shí)的數據輸出時(shí)序。
2位遞增計數器的輸入輸出如下:
clk是輸入的時(shí)鐘信號來(lái)自微控制器,reset輸入的異步復位信號,count_en輸入的計數使能信號,count輸出的CAS延遲數。系統不復位的情況下在計數使能有效時(shí)當時(shí)鐘上升沿到來(lái)CAS延遲增加。
評論