SDRAM:Synchronous Dynamic Random Access Memory,同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,同步是指Memory工作需要同步時(shí)鐘,內(nèi)部的命令的發(fā)送與數(shù)據(jù)的傳輸都以它為基準(zhǔn);動(dòng)態(tài)是指存儲(chǔ)陣列需要不斷的刷新來(lái)保證數(shù)據(jù)不丟失;隨機(jī)是指數(shù)據(jù)不是線性依次存儲(chǔ),而是自由指定地址進(jìn)行數(shù)據(jù)讀寫(xiě)。
SDRAM在讀寫(xiě)數(shù)據(jù)時(shí)重點(diǎn)注意以下信號(hào):
(1)CLK:時(shí)鐘信號(hào),為輸入信號(hào)。SDRAM所有輸入信號(hào)的邏輯狀態(tài)都需要通過(guò)CLK的上升沿采樣確定。
(2)CKE:時(shí)鐘使能信號(hào),為輸入信號(hào),高電平有效。CKE信號(hào)的用途有兩個(gè):一、關(guān)閉時(shí)鐘以進(jìn)入省電模式;二、進(jìn)入自刷新?tīng)顟B(tài)。CKE無(wú)效時(shí),SDRAM內(nèi)部所有與輸入相關(guān)的功能模塊停止工作
(3)CS#:片選信號(hào),為輸入信號(hào),低電平有效。只有當(dāng)片選信號(hào)有效后,SDRAM才能識(shí)別控制器發(fā)送來(lái)的命令。設(shè)計(jì)時(shí)注意上拉
(4)RAS#:行地址選通信號(hào),為輸入信號(hào),低電平有效
(5)CAS#:列地址選通信號(hào),為輸入信號(hào),低電平有效。
(6)WE#:寫(xiě)使能信號(hào),為輸入信號(hào),低電平有效。
當(dāng)然還包括bank[…]地址信號(hào),這個(gè)需要根據(jù)不同的型號(hào)來(lái)確定,同樣為輸入信號(hào);地址信號(hào)A[…],為輸入信號(hào);數(shù)據(jù)信號(hào)DQ[…],為輸入/輸出雙向信號(hào);數(shù)據(jù)掩碼信號(hào)DQM,為輸入輸出雙向信號(hào),方向與數(shù)據(jù)流方向一致,高電平有效。當(dāng)其有效時(shí),數(shù)據(jù)總線上出現(xiàn)的對(duì)應(yīng)數(shù)據(jù)字節(jié)被接收端屏蔽。SDRAM之所以成為DRARM就是因?yàn)樗粩噙M(jìn)行刷新(Refresh)才能保留住數(shù)據(jù),因此它是DRAM最重要的操作。那么要隔多長(zhǎng)時(shí)間重復(fù)一次刷新,目前公認(rèn)的標(biāo)準(zhǔn)是,存儲(chǔ)體中電容的數(shù)據(jù)有效保存期上限是64ms(毫秒,1/1000秒),也就是說(shuō)每一行刷新的循環(huán)周期是64ms。這樣刷新速度就是:行數(shù)量/64ms。我們?cè)诳磧?nèi)存規(guī)格時(shí),經(jīng)常會(huì)看到4096 Refresh Cycles/64ms或8192 Refresh Cycles/64ms的標(biāo)識(shí),這里的4096與8192就代表這個(gè)芯片中每個(gè)Bank的行數(shù)。刷新命令一次對(duì)一行有效,發(fā)送間隔也是隨總行數(shù)而變化,4096行時(shí)為15.625μs(微秒,1/1000毫秒),8192行時(shí)就為7.8125μs。HY57V561620為8192 refresh cycles / 64ms。
SDRAM是多Bank結(jié)構(gòu),例如在一個(gè)具有兩個(gè)Bank的SDRAM的模組中,其中一個(gè)Bank在進(jìn)行預(yù)充電期間,另一個(gè)Bank卻馬上可以被讀取,這樣當(dāng)進(jìn)行一次讀取后,又馬上去讀取已經(jīng)預(yù)充電Bank的數(shù)據(jù)時(shí),就無(wú)需等待而是可以直接讀取了,這也就大大提高了存儲(chǔ)器的訪問(wèn)速度。
為了實(shí)現(xiàn)這個(gè)功能,SDRAM需要增加對(duì)多個(gè)Bank的管理,實(shí)現(xiàn)控制其中的Bank進(jìn)行預(yù)充電。在一個(gè)具有2個(gè)以上Bank的SDRAM中,一般會(huì)多一根叫做BAn的引腳,用來(lái)實(shí)現(xiàn)在多個(gè)Bank之間的選擇。
SDRAM具有多種工作模式,內(nèi)部操作是一個(gè)復(fù)雜的狀態(tài)機(jī)。SDRAM器件的引腳分為以下幾類(lèi)。
(1)控制信號(hào):包括片選、時(shí)鐘、時(shí)鐘使能、行列地址選擇、讀寫(xiě)有效及數(shù)據(jù)有效。
(2)地址信號(hào):時(shí)分復(fù)用引腳,根據(jù)行列地址選擇引腳,控制輸入的地址為行地址或列地址。
(3)數(shù)據(jù)信號(hào):雙向引腳,受數(shù)據(jù)有效控制。
SDRAM的所有操作都同步于時(shí)鐘。根據(jù)時(shí)鐘上升沿控制管腳和地址輸入的狀態(tài),可以產(chǎn)生多種輸入命令。
模式寄存器設(shè)置命令。
激活命令。
預(yù)充命令。
讀命令。
寫(xiě)命令。
帶預(yù)充的讀命令。
帶預(yù)充的寫(xiě)命令。
自動(dòng)刷新命令。
自我刷新命令。
突發(fā)停命令。
空操作命令。
根據(jù)輸入命令,SDRAM狀態(tài)在內(nèi)部狀態(tài)間轉(zhuǎn)移。內(nèi)部狀態(tài)包括模式寄存器設(shè)置狀態(tài)、激活狀態(tài)、預(yù)充狀態(tài)、寫(xiě)狀態(tài)、讀狀態(tài)、預(yù)充讀狀態(tài)、預(yù)充寫(xiě)狀態(tài)、自動(dòng)刷新?tīng)顟B(tài)及自我刷新?tīng)顟B(tài)。
SDRAM支持的操作命令有初始化配置、預(yù)充電、行激活、讀操作、寫(xiě)操作、自動(dòng)刷新、自刷新等。所有的操作命令通過(guò)控制線CS#、RAS#、CAS#、WE#和地址線、體選地址BA輸入。
1、行激活
行激活命令選擇處于空閑狀態(tài)存儲(chǔ)體的任意一個(gè)行,使之進(jìn)入準(zhǔn)備讀/寫(xiě)狀態(tài)。從體激活到允許輸入讀/寫(xiě)命令的間隔時(shí)鐘節(jié)拍數(shù)取決于內(nèi)部特征延時(shí)和時(shí)鐘頻率。HY57V561620內(nèi)部有4個(gè)體,為了減少器件門(mén)數(shù),4個(gè)體之間的部分電路是公用的,因此它們不能同時(shí)被激活,而且從一個(gè)體的激活過(guò)渡到另一個(gè)體的激活也必須保證有一定的時(shí)間間隔。
2、預(yù)充電
預(yù)充電命令用于對(duì)已激活的行進(jìn)行預(yù)充電即結(jié)束活動(dòng)狀態(tài)。預(yù)充電命令可以作用于單個(gè)體,也可以同時(shí)作用于所有體(通過(guò)所有體預(yù)充電命令)。對(duì)于觸發(fā)寫(xiě)操作必須保證在寫(xiě)入預(yù)充電命令前寫(xiě)操作已經(jīng)完成,并使用DQM禁止繼續(xù)寫(xiě)入數(shù)據(jù)。預(yù)充電結(jié)束后回到空閑狀態(tài),也可以再次被激活,此時(shí)也可以輸入進(jìn)入低功耗、自動(dòng)刷新、自刷新和模式設(shè)置等操作命令。
預(yù)充電中重寫(xiě)的操作與刷新操作一樣,只不過(guò)預(yù)充電不是定期的,而只是在讀操作以后執(zhí)行的。因?yàn)樽x取操作會(huì)破壞內(nèi)存中的電荷。因此,內(nèi)存不但要每64ms刷新一次,而且每次讀操作之后還要刷新一次。
3、自動(dòng)預(yù)充電
如果在觸發(fā)讀或觸發(fā)寫(xiě)命令中,A10/AP位置為“1”,在讀寫(xiě)操作完成后自動(dòng)附加一個(gè)預(yù)充電動(dòng)作。操作行結(jié)束活動(dòng)狀態(tài),但在內(nèi)部狀態(tài)機(jī)回到空閑態(tài)之前不能給器件發(fā)送新的操作命令。
4、觸發(fā)讀
觸發(fā)讀命令允許某個(gè)體中的一行被激活后,連續(xù)讀出若干個(gè)數(shù)據(jù)。第一個(gè)數(shù)據(jù)在經(jīng)過(guò)指定的CAS延時(shí)節(jié)拍后呈現(xiàn)在數(shù)據(jù)線上,以后每個(gè)時(shí)鐘節(jié)拍都會(huì)讀出一個(gè)新的數(shù)據(jù)。觸發(fā)讀操作可以被同體或不同體的新的觸發(fā)讀/寫(xiě)命令或同一體的預(yù)充電命令及觸發(fā)停止命令中止。
5、觸發(fā)寫(xiě)
觸發(fā)寫(xiě)命令與猝發(fā)讀命令類(lèi)似,允許某個(gè)體中的一行被激活后,連續(xù)寫(xiě)入若干個(gè)數(shù)據(jù)。第一個(gè)寫(xiě)數(shù)據(jù)與觸發(fā)寫(xiě)命令同時(shí)在數(shù)據(jù)線上給出,以后每個(gè)時(shí)鐘節(jié)拍給出一個(gè)新的數(shù)據(jù),輸入緩沖在觸發(fā)數(shù)據(jù)量滿足要求后停止接受數(shù)據(jù)。觸發(fā)寫(xiě)操作可以被觸發(fā)讀/寫(xiě)命令或DQM數(shù)據(jù)輸入屏蔽命令和預(yù)充電命令或觸發(fā)停止命令中止。
6、自動(dòng)刷新
由于動(dòng)態(tài)存儲(chǔ)器存儲(chǔ)單元存在漏電現(xiàn)象,為了保持每個(gè)存儲(chǔ)單元數(shù)據(jù)的正確性,HY57V561620必須保證在64ms內(nèi)對(duì)所有的存儲(chǔ)單元刷新一遍。一個(gè)自動(dòng)刷新周期只能刷新存儲(chǔ)單元的一個(gè)行,每次刷新操作后內(nèi)部刷新地址計(jì)數(shù)器自動(dòng)加“1”。只有在所有體都空閑(因?yàn)?個(gè)體的對(duì)應(yīng)行同時(shí)刷新)并且未處于低功耗模式時(shí)才能啟動(dòng)自動(dòng)刷新操作,刷新操作執(zhí)行期間只能輸入空操作,刷新操作執(zhí)行完畢后所有體都進(jìn)入空閑狀態(tài)。該器件可以每間隔7.8μs執(zhí)行一次自動(dòng)刷新命令,也可以在64ms內(nèi)的某個(gè)時(shí)間段對(duì)所有單元集中刷新一遍。
7、自刷新
自刷新是動(dòng)態(tài)存儲(chǔ)器的另一種刷新方式,通常用于在低功耗模式下保持SDRAM的數(shù)據(jù)。在自刷新方式下,SDRAM禁止所有的內(nèi)部時(shí)鐘和輸入緩沖(CKE除外)。為了降低功耗,刷新地址和刷新時(shí)間全部由器件內(nèi)部產(chǎn)生。一旦進(jìn)入自刷新方式只有通過(guò)CKE變低才能激活,其他的任何輸入都將不起作用。給出退出自刷新方式命令后必須保持一定節(jié)拍的空操作輸入,以保證器件完成從自刷新方式的退出。如果在正常工作期間采用集中式自動(dòng)刷新方式,則在退出自刷新模式后必須進(jìn)行一遍(對(duì)于HY57V561620來(lái)說(shuō),8192個(gè))集中的自動(dòng)刷新操作。
8、時(shí)鐘和時(shí)鐘屏蔽
時(shí)鐘信號(hào)是所有操作的同步信號(hào),上升沿有效。時(shí)鐘屏蔽信號(hào)CKE決定是否把時(shí)鐘輸入施加到內(nèi)部電路。在讀寫(xiě)操作期間,CKE變低后的下一個(gè)節(jié)拍凍結(jié)輸出狀態(tài)和猝發(fā)地址,直到CKE變高為止。在所有的體都處于空閑狀態(tài)時(shí),CKE變低后的下一個(gè)節(jié)拍SDRAM進(jìn)入低功耗模式并一直保持到CKE變高為止。
9、DQM操作
DQM用于屏蔽輸入輸出操作,對(duì)于輸出相當(dāng)于開(kāi)門(mén)信號(hào),對(duì)于輸入禁止把總線上的數(shù)據(jù)寫(xiě)入存儲(chǔ)單元。對(duì)讀操作DQM延遲2個(gè)時(shí)鐘周期開(kāi)始起作用,對(duì)寫(xiě)操作則是當(dāng)拍有效。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21623瀏覽量
601242
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論