龔泉銘 ,姜秀杰 ,安軍社
(1.中國科學(xué)院復(fù)雜航天系統(tǒng)電子信息技術(shù)重點(diǎn)實(shí)驗(yàn)室中國科學(xué)院國家空間科學(xué)中心北京100190;2.中國科學(xué)院大學(xué)北京100190)
在航天研究領(lǐng)域,空間飛行器會(huì)在運(yùn)行過程中進(jìn)行各類科學(xué)數(shù)據(jù)的采集工作,例如圖像處理系統(tǒng)和高速數(shù)據(jù)采集系統(tǒng),需要在短時(shí)間內(nèi)實(shí)現(xiàn)數(shù)據(jù)的采集、處理以及傳輸和存儲,因此需要一種大容量、高速度、高性能的緩存設(shè)備緩存各類科學(xué)數(shù)據(jù)。同步動(dòng)態(tài)隨機(jī)存儲器(Synchronous Dynamic Random Access Memory,SDRAM)具有的密度高、速度快、成本低的特點(diǎn),使其在民用和軍工領(lǐng)域都有著廣泛的應(yīng)用。雖然集成電路工藝在不斷提高,但SDRAM對存儲單元的充電刷新依然是十分重要的操作程序,同時(shí)也造成性能上的開銷和額外的功耗。對于密度小的SDRAM,刷新造成的影響很小,但隨著摩爾定律的發(fā)展,密度的提高使得刷新的性能和開銷呈指數(shù)增加,成為了影響SDRAM使用的關(guān)鍵因素[1]。
采用傳統(tǒng)刷新機(jī)制的SDRAM控制器實(shí)現(xiàn)瞬時(shí)數(shù)據(jù)吞吐率保持在100 MB/s左右,能夠滿足視頻數(shù)據(jù)的處理需求的控制器,例如文獻(xiàn)[2]所設(shè)計(jì)的視頻解碼器的高性能SDRAM控制器。為了優(yōu)化刷新性能,部分控制器開展了對SDRAM刷新機(jī)制的研究,例如文獻(xiàn)[3]中提出通過讀寫進(jìn)程與刷新進(jìn)程的交替機(jī)制,使得用戶在進(jìn)行全頁突發(fā)寫或者突發(fā)讀時(shí)不考慮SDRAM刷新請求,在一定程度上優(yōu)化了對SDRAM的操作。
目前對刷新的優(yōu)化方法結(jié)合兩種刷新模式的特點(diǎn),主要分為兩種:集中式刷新機(jī)制和分布式刷新機(jī)制。集中式刷新機(jī)制,即在64 ms內(nèi)一次性完成8192次自動(dòng)刷新操作,一次性完成刷新后,在剩余的時(shí)間可全部用來完成SDRAM的數(shù)據(jù)吞吐工作。分布式刷新機(jī)制則是每7.8 ms進(jìn)行一次自動(dòng)刷新操作,通過自動(dòng)刷新將64 ms劃分為8192個(gè)時(shí)間片段,SDRAM的數(shù)據(jù)吞吐全部在時(shí)間片段中完成[4]。
文中設(shè)計(jì)實(shí)現(xiàn)了一種SDRAM控制機(jī)制,結(jié)合兩類優(yōu)化思路,研究自刷新工作模式和自動(dòng)刷新工作模式的不同工作特點(diǎn),針對多路數(shù)據(jù)復(fù)用情況下改善刷新模式在讀/寫操作中的合理分配,保證數(shù)據(jù)高效、穩(wěn)定的傳輸和存儲,同時(shí)盡量降低SDRAM的功耗。
SDRAM是由PN結(jié)電容存儲0/1信號的存儲設(shè)備,如圖1所示。由于漏電的存在,一定時(shí)間之后兩級板間電位差會(huì)逐漸消失,也就是會(huì)使之前保存的信號1變成信號0,造成存儲數(shù)據(jù)異常。為避免該情況發(fā)生,要在規(guī)定時(shí)間內(nèi)根據(jù)存儲單元里的內(nèi)容補(bǔ)充電荷,該過程即為SDRAM的刷新操作。
圖1 SDRAM數(shù)據(jù)存儲單元電路圖
SDRAM控制器主要模塊包括:輸入數(shù)據(jù)緩存模塊、仲裁模塊、狀態(tài)轉(zhuǎn)換控制模塊、地址指針控制模塊和主控制器5部分組成,如圖2所示。其中輸入數(shù)據(jù)緩存模塊和仲裁模塊,用于緩存多路輸入數(shù)據(jù),并進(jìn)行輪詢仲裁后,輸出給后端模塊;狀態(tài)控制模塊用于產(chǎn)生各類SDRAM控制命令;地址指針控制模塊對片選信號、Bank信號、行地址信號和列地址信號進(jìn)行管理,并配合讀/寫命令輸出相應(yīng)地址。
圖2 控制器模塊組成示意圖
主控制器完成對SDRAM的直接命令控制,其中包含的初始化模塊,對SDRAM上電后的執(zhí)行初始化;仲裁模塊用于對三組輸入數(shù)據(jù)的優(yōu)先級仲裁;狀態(tài)轉(zhuǎn)換控制模塊用于對SDRAM的寫操作、讀操作、自刷新操作和自動(dòng)刷新操作的控制和轉(zhuǎn)換;地址指針控制模塊用于對SDRAM的片選、Bank、行地址和列地址的控制和寫入。讀通道則根據(jù)系統(tǒng)運(yùn)行狀態(tài),在無數(shù)據(jù)寫入請求的情況下將數(shù)據(jù)讀出,進(jìn)行相應(yīng)轉(zhuǎn)換(如并串轉(zhuǎn)換)然后下傳數(shù)據(jù)。其中對SDRAM的刷新機(jī)制進(jìn)行了重點(diǎn)設(shè)計(jì),下面進(jìn)行詳細(xì)闡述。
SDRAM提供兩種刷新模式:自動(dòng)刷新模式和自刷新模式,本節(jié)首先對兩種刷新模式的特點(diǎn)進(jìn)行介紹分析;然后結(jié)合兩種刷新模式特點(diǎn)以及實(shí)際應(yīng)用需求,設(shè)計(jì)了自適應(yīng)刷新工作機(jī)制;并且,對自適應(yīng)刷新工作機(jī)制進(jìn)行數(shù)學(xué)建模,分析討論使用該機(jī)制運(yùn)行的關(guān)鍵參數(shù)。
自動(dòng)刷新操作,即用戶向SDRAM發(fā)送刷新命令,SDRAM芯片接收到刷新命令后首先對所有的Bank進(jìn)行預(yù)充電操作,然后自動(dòng)向某些存儲單元進(jìn)行刷新重寫維持電容的電壓以保證數(shù)據(jù)正確,自動(dòng)刷新操作完成后會(huì)再執(zhí)行一次預(yù)充電操作。每一次自動(dòng)刷新命令的執(zhí)行,SDRAM會(huì)自動(dòng)決定刷新的相應(yīng)行地址和列地址,無須用戶再次輸入刷新地址。但是,自動(dòng)刷新操作的重點(diǎn)是,兩次行地址刷新時(shí)間間隔不能超過tREF=64 ms,使得該操作具有局限性。
自刷新模式,即SDRAM在接收到自刷新模式啟動(dòng)指令后獨(dú)立完成所有的刷新操作,通常用于在低功耗模式下使用。一旦進(jìn)入自刷新方式,SDRAM將禁止所有的外部時(shí)鐘和外部輸入信號,直到接收自刷新跳出信號后退出自刷新模式。為了降低功耗,刷新地址和刷新時(shí)間全部由器件內(nèi)部產(chǎn)生。同時(shí),需要在退出自刷新模式的過程中給出較為復(fù)雜的輸入節(jié)拍予以配合。
比較兩者刷新工作模式的特點(diǎn):自動(dòng)刷新模式,在每次刷新時(shí)都需要輸入自動(dòng)刷新命令,兩次刷新之間相互獨(dú)立,可以控制刷新的時(shí)間間隔和次數(shù),具很好的靈活性和可操作性,但是操作相對復(fù)雜且功耗較大;自刷新模式,一段時(shí)間的刷新操作無需都多次命令輸入,操作簡單,功耗較低,但可控性較差,無法實(shí)現(xiàn)對刷新次數(shù)的控制和追蹤。
對于數(shù)據(jù)傳輸系統(tǒng)來說,數(shù)據(jù)在芯片之間傳輸階段需要經(jīng)歷相應(yīng)的控制、等待、響應(yīng)等過程,因此不可能保證數(shù)據(jù)持續(xù)不間斷的讀寫訪問。單位時(shí)間內(nèi)系統(tǒng)傳輸?shù)臄?shù)據(jù)量影響該系統(tǒng)的傳輸效率。SDRAM芯片由于刷新、預(yù)充電等必需操作,不可能實(shí)現(xiàn)全時(shí)段的數(shù)據(jù)吞吐,因此,適當(dāng)合理的刷新次數(shù),將影響SDRAM的工作效率。
根據(jù)航天應(yīng)用中數(shù)據(jù)傳輸協(xié)議的要求,以數(shù)據(jù)包作為一個(gè)基本的傳輸單元,一個(gè)完備的數(shù)據(jù)包包括固定識別標(biāo)識和數(shù)據(jù)包大小。為保證有寫請求時(shí)數(shù)據(jù)能夠第一時(shí)間寫入SDRAM,盡量避免數(shù)據(jù)在合路先入先出隊(duì)列(First In First Out,F(xiàn)IFO)處擁塞,將SDRAM的操作過程設(shè)計(jì)為寫操作優(yōu)先于讀操作。
上電復(fù)位后,數(shù)據(jù)由各端口輸入,采用輪詢仲裁方式將外部數(shù)據(jù)進(jìn)行合路處理,再由合路數(shù)據(jù)緩存模塊向SDRAM中寫入數(shù)據(jù),若合路FIFO半滿信號有效,認(rèn)為有一個(gè)數(shù)據(jù)源包需要寫入SDRAM。如若合路FIFO半滿信號無效且無讀操作請求需要執(zhí)行,則認(rèn)為SDRAM與外部無數(shù)據(jù)交互,此時(shí)SDRAM處于空閑狀態(tài),可以關(guān)閉SDRAM端口進(jìn)入自刷新狀態(tài)。反之,則完成讀/寫操作,結(jié)束后進(jìn)行N次自動(dòng)刷新,完成后開始下一次讀/寫操作。此時(shí)認(rèn)為SDRAM處于繁忙狀態(tài),因而只在讀/寫操作間隙進(jìn)行固定次數(shù)的自動(dòng)刷新。具體判別流程如圖3所示。
刷新控制模塊通過緩存合路FIFO的狀態(tài),將SDRAM將要處于的工作狀態(tài)區(qū)分為空閑狀態(tài)和繁忙狀態(tài)。通過判斷外部輸入數(shù)據(jù)的狀態(tài),自適應(yīng)地選擇SDRAM需要采用的刷新模式。保證在忙狀態(tài)時(shí)SDRAM中數(shù)據(jù)不丟失的前提下高效有序的運(yùn)轉(zhuǎn),又能在空閑狀態(tài)下轉(zhuǎn)入功耗更低的模式。從而實(shí)現(xiàn)航天領(lǐng)域?qū)?shù)據(jù)存儲的可靠、高效、低功耗等要求的均衡處理。
圖3 刷新工作機(jī)制流程圖
由于SDRAM的芯片手冊要求,在64 ms內(nèi)必須完成8 192次自動(dòng)刷新操作,同時(shí)兩次自動(dòng)刷新操作的時(shí)間間隔需滿足tRC(67.5 ns),因此在64 ms內(nèi),8 192次自動(dòng)刷新占用的時(shí)間固定,即至少為tRC×8 192=553 230 ns??紤]滿負(fù)荷情況下,即SDRAM一直在進(jìn)行讀寫操作,在64 ms時(shí)間內(nèi)只完成讀操作、寫操作以及自動(dòng)刷新操作。在此情況下,保證64 ms完成8 192次自動(dòng)刷新即可保證SDRAM中數(shù)據(jù)正常。因此在64 ms能夠進(jìn)行讀寫操作的次數(shù),決定了在每次讀寫操作后需要進(jìn)行自動(dòng)刷新的次數(shù)。
在SDRAM芯片執(zhí)行讀寫操作時(shí),除了完成的數(shù)據(jù)寫入或讀出的操作之外,還需要伴隨相應(yīng)的其他操作,包括行激活操作(Active),即根據(jù)端口信號選擇SDRAM某一行,使之進(jìn)入準(zhǔn)備讀/寫狀態(tài);數(shù)據(jù)轉(zhuǎn)預(yù)充電操作(data in to precharge lead time,DPL),即寫操作命令輸入后等待寫操作完成;預(yù)充電操作(Precharge),即對于已經(jīng)激活并完成讀/寫操作的行進(jìn)行充電從而結(jié)束活動(dòng)狀態(tài)。在完成讀操作后,需要2或3個(gè)時(shí)鐘周期的延遲,即延遲等待(latency)。
SDRAM對以上操作都有相應(yīng)的時(shí)間要求,詳見SDRAM時(shí)序特性表(表1)。
表1 SDRAM時(shí)序特性表
為了準(zhǔn)確地討論自適應(yīng)刷新機(jī)制中自動(dòng)刷新次數(shù)的計(jì)算問題,現(xiàn)給出參數(shù)定義,并且根據(jù)讀寫操作的區(qū)別,分析得出讀寫操作所使用的時(shí)間。
N:一次讀操作或?qū)懖僮鞯臄?shù)據(jù)量;
M:一次連續(xù)自動(dòng)刷新次數(shù)。
寫操作:完成一次包含自動(dòng)刷新的寫操作所需時(shí)間為行激活操作時(shí)間、N的數(shù)據(jù)量寫入的時(shí)間、寫操作結(jié)束等待時(shí)間、預(yù)充電時(shí)間和M次自動(dòng)刷新的時(shí)間之和。其中,考慮一個(gè)時(shí)鐘周期進(jìn)行一次數(shù)據(jù)操作,N個(gè)數(shù)據(jù)的輸入時(shí)間為N×tCK,M次自動(dòng)刷新的時(shí)間為M×tRC,其他操作的時(shí)間如表1所示,所以一次自動(dòng)刷新的完整寫操作時(shí)間tWRITE可表示為:
讀操作:完成一次包含自動(dòng)刷新的讀操作所需時(shí)間為行激活操作時(shí)間、N的數(shù)據(jù)量讀出的時(shí)間、讀操作結(jié)束等待時(shí)間、預(yù)充電時(shí)間和M次自動(dòng)刷新的時(shí)間之和。所以一次包含自動(dòng)刷新的完整讀操作所需時(shí)間tREAD為:
由于行激活到預(yù)充電時(shí)間的限制為tRAS,完成一次操作的數(shù)據(jù)量和系統(tǒng)時(shí)鐘需滿足以下關(guān)系:
綜上所述,由式(1)、(2)可知,在單次讀操作或?qū)懖僮鬟^程中,自動(dòng)刷新次數(shù)M由系統(tǒng)時(shí)鐘tCK和一次操作的數(shù)據(jù)量N決定,并且tCK和M需滿足式(3)的要求。
為了簡化在實(shí)際FPGA設(shè)計(jì)中,對時(shí)序要求的精確實(shí)現(xiàn)導(dǎo)致的復(fù)雜度,通常采用系統(tǒng)時(shí)鐘加計(jì)數(shù)的方式實(shí)現(xiàn)時(shí)序控制。對式(1)、(2)、(3)按系統(tǒng)時(shí)鐘進(jìn)行優(yōu)化后,得出讀寫操作完成所需時(shí)間的公式如下:
由芯片手冊知,該SDRAM的最大工作頻率為133 MHz,即最小時(shí)鐘周期為7.5 ns。同時(shí)由表1可知,tDPL≥15 ns,所以
由(1)、(2)、(7)式,可知tWRITE≤tREAD,即一次完整寫操作所用時(shí)間不會(huì)大于一次完成讀操作所用時(shí)間。為簡化運(yùn)算,將寫操作的時(shí)間也等化為讀操作的時(shí)間。所以64 ms內(nèi)可進(jìn)行的讀操作次數(shù)NREAD可表示為:
其中,M取滿足條件的最小整數(shù)。
由式(4)、(5)、(6)分析可得出如下結(jié)論:單次讀操作或?qū)懖僮鲀?nèi)需自動(dòng)刷新次數(shù)M由系統(tǒng)時(shí)鐘tCK和單次操作的數(shù)據(jù)量N決定。
因此,當(dāng)控制器的系統(tǒng)時(shí)鐘tCK和輸入的數(shù)據(jù)源包大小N給定的情況下,便可得出單次數(shù)據(jù)操作時(shí)的自動(dòng)刷新次數(shù),進(jìn)而使用自適應(yīng)刷新機(jī)制作為控制器的刷新方式。
現(xiàn)根據(jù)實(shí)際應(yīng)用需求,確定實(shí)際各個(gè)執(zhí)行的參數(shù),說明如下:
1)系統(tǒng)時(shí)鐘頻率為f=50 MHz,即tCK=20 ns;
2)單次操作數(shù)據(jù)包為N=512。
采用公式(4)、(5)、(8)得出如下結(jié)論:
對(9)式化簡可得:
計(jì)算上述式(10)求解可知:M2。
小結(jié):對于一個(gè)使用自適應(yīng)刷新機(jī)制的SDRAM控制器而言,當(dāng)系統(tǒng)時(shí)鐘為50 MHz,傳輸數(shù)據(jù)源包大小為512時(shí),SDRAM完成一次數(shù)據(jù)包讀/寫操作后,再進(jìn)行2次自動(dòng)刷新操作,即可在64 ms的規(guī)定時(shí)間內(nèi)完成足夠次數(shù)的自動(dòng)刷新操作,保證SDRAM在數(shù)據(jù)輸入輸出及存儲過程中數(shù)據(jù)不會(huì)出現(xiàn)異?;騺G失。
本節(jié)將對SDRAM自適應(yīng)刷新機(jī)制的數(shù)學(xué)模型進(jìn)行測試,根據(jù)測試結(jié)果對該自適應(yīng)刷新機(jī)制的工作性能進(jìn)行分析。
以上節(jié)中的例子為基礎(chǔ),討論刷新次數(shù)對傳輸效率的影響。以1 s作為單位時(shí)間進(jìn)行分析。
1)當(dāng)M=1時(shí),由于不滿足SDRAM最低的刷新次數(shù)要求,不予討論。
2)當(dāng)M=2時(shí),一次包含自動(dòng)刷新的數(shù)據(jù)源包的傳輸時(shí)間為(517+4×2)×20 ns=10 500 ns,1 s時(shí)間內(nèi)能夠傳輸?shù)目偟臄?shù)據(jù)包為95 238。單包讀/寫操作過程中數(shù)據(jù)源包傳輸時(shí)間占總讀/寫操作時(shí)間的比例為512/(517+4×2)。傳輸效率可表示為
3)當(dāng)M=3時(shí),一次包含自動(dòng)刷新的數(shù)據(jù)包的傳輸時(shí)間為(517+4×3)×20 ns=10 580 ns,1 s時(shí)間內(nèi)能夠傳輸?shù)目偟臄?shù)據(jù)包為94 517。單包讀/寫操作過程中數(shù)據(jù)源包傳輸時(shí)間占總讀/寫操作時(shí)間的比例為512/(517+4×3)。同理可得出傳輸效率為0.961。
以此類推,從而得出單位時(shí)間內(nèi),不同的自動(dòng)刷新次數(shù)對傳輸效率的影響,如圖4所示。
圖4 不同刷新次數(shù)下的傳輸效率
隨著自動(dòng)刷新次數(shù)M的增加,完成一次讀寫操作的時(shí)間增加,單位時(shí)間內(nèi)傳輸?shù)目倲?shù)據(jù)量不斷減少,傳輸效率也隨之下降??傻贸鐾普摚寒?dāng)自動(dòng)刷新次數(shù)M取滿足約束條件最小值時(shí),傳輸效率達(dá)到最大。
現(xiàn)將其推廣到不同的系統(tǒng)時(shí)鐘和不同的數(shù)據(jù)包長度的情況下進(jìn)行討論。設(shè)定系統(tǒng)時(shí)鐘tCK為10~40 ns,即時(shí)鐘頻率f=25~100 MHz;數(shù)據(jù)源包長度N為128~2 048。對其在相同系統(tǒng)時(shí)鐘下不同的數(shù)據(jù)包長度、相同的數(shù)據(jù)包長度下不同的系統(tǒng)時(shí)鐘等工作情況進(jìn)行分析,如圖6所示。
圖6 不同系統(tǒng)時(shí)鐘和數(shù)據(jù)源包長下的傳輸效率
如圖6(a)(b)所示,當(dāng)系統(tǒng)時(shí)鐘相同的條件下,數(shù)據(jù)源包長度越長,自動(dòng)刷新次數(shù)M對傳輸效率的影響越小,同時(shí),數(shù)據(jù)包長度越長傳輸效率在M值較小的時(shí)候變化率也更??;同樣,當(dāng)數(shù)據(jù)包長度一定的條件下,系統(tǒng)時(shí)鐘越大,自動(dòng)刷新次數(shù)M對傳輸效率的影響越小,在M值較小的區(qū)間內(nèi)傳輸效率的變化率也變小但沒有數(shù)據(jù)源包的影響明顯。
通過圖6(c)對4種極限情況的分析可知,數(shù)據(jù)源包長度N對傳輸效率的影響強(qiáng)于系統(tǒng)時(shí)鐘tCK。本文提出的自適應(yīng)刷新機(jī)制在系統(tǒng)時(shí)鐘和數(shù)據(jù)源包都較大時(shí),表現(xiàn)效果更穩(wěn)定。同時(shí),由于在實(shí)際選取自動(dòng)刷新次數(shù)時(shí),盡量選擇滿足條件的最小值,而由圖6可知,當(dāng)自動(dòng)刷新次數(shù)M取值較小時(shí),4條曲線的區(qū)分度較低。說明該刷新機(jī)制在各種條件下都能達(dá)到較好的傳輸效果。
SDRAM的讀/寫操作會(huì)使SDRAM處于不同的工作狀態(tài),而不同的工作狀態(tài)所消耗的能量不同,即不同工作狀態(tài)下的電流大小不同,如表2所示。
表2 SDRAM部分工作狀態(tài)下電流值
為方便分析自適應(yīng)刷新機(jī)制對功耗的影響,我們將其與本文開頭介紹的兩種通用刷新方式(集中式刷新和分布式刷新)進(jìn)行比較分析。為保證分析盡量完備,現(xiàn)分為3種工作情況進(jìn)行討論:
工況一:滿負(fù)荷工作情況,在該工況下,SDRAM一直進(jìn)行讀/寫操作,除必要命令外,無空閑時(shí)間。
工況二:典型工作情況,在該工況下,SDRAM間歇性的進(jìn)行讀寫操作,即部分時(shí)間在進(jìn)行讀/寫操作,部分時(shí)間處于等待狀態(tài)。
工況三:待機(jī)工作情況,在該工況下,SDRAM處于數(shù)據(jù)等待狀態(tài)。
由于SDRAM在不同工作狀態(tài)下,工作電流差異較大(如表2所示)。當(dāng)SDRAM處于滿負(fù)荷工況下時(shí),3種不同的刷新機(jī)制的工作情況相同,只會(huì)執(zhí)行必要的讀/寫操作指令和足夠次數(shù)的自動(dòng)刷新操作。因此,在功耗上差異不大,不做具體分析。
在典型工況下,3種刷新機(jī)制的大致操作過程如圖7所示。
圖7 3種刷新機(jī)制的操作流程
由圖7可知,在典型工況下,集中式刷新必須完成全部8 192次刷新操作,再進(jìn)行其他讀寫命令;分布式刷新操作則按照7.8 us一次的頻率刷新,無論是否有數(shù)據(jù)需要讀寫;自適應(yīng)刷新則只在由讀寫操作時(shí)進(jìn)行自動(dòng)刷新,數(shù)據(jù)等待時(shí)間則保持在自刷新模式下。由表2可知,自動(dòng)刷新的工作電流最大,而自刷新的工作電流最小。因此,在典型工作狀況下,讀寫相同的數(shù)據(jù)量后,自刷新次數(shù)越少,SDRAM的耗能越低。
同理,在待機(jī)的工作情況下,相較于其他兩種刷新機(jī)制,自適應(yīng)刷新機(jī)制會(huì)讓SDRAM處于自刷新狀態(tài),此時(shí)相比于待機(jī)狀態(tài)功耗更小。
綜上所述,SDRAM控制器通過自動(dòng)刷新和自刷新兩種刷新方式的自適應(yīng)選擇,實(shí)現(xiàn)兩種刷新模式的協(xié)同工作,從而降低非滿負(fù)荷情況下自動(dòng)刷新次數(shù);在保證數(shù)據(jù)正確傳輸?shù)幕A(chǔ)上,將自動(dòng)刷新操作碎片化嵌入到每一次讀寫操作中,大幅度提高了傳輸?shù)倪B續(xù)性;并在保障數(shù)據(jù)完整性的前提下,降低器件的運(yùn)行功耗。
文中針對動(dòng)態(tài)存儲設(shè)備的刷新工作原理,結(jié)合自刷新與自動(dòng)刷新的特點(diǎn),提出了自適應(yīng)刷新模式,推導(dǎo)了適用于典型星載大容量存儲設(shè)備的自適應(yīng)刷新模式參數(shù)配置計(jì)算方法;然后建立數(shù)學(xué)模型,通過蒙特卡洛模擬仿真了不同參數(shù)配置、不同工況下的動(dòng)態(tài)存儲傳輸效率變化特性,通過實(shí)際硬件平臺測試驗(yàn)證了自適應(yīng)刷新模式的有效性,對系統(tǒng)功耗影響的效果。研究成果:自適應(yīng)刷新機(jī)制能夠降低非滿負(fù)荷情況下自動(dòng)刷新次數(shù),大幅度提高了傳輸?shù)倪B續(xù)性,同時(shí)降低器件的運(yùn)行功耗;能夠滿足復(fù)雜航天應(yīng)用對數(shù)據(jù)存儲的高可靠和低功耗兼顧的要求。同時(shí),為同類型的動(dòng)態(tài)存儲器,例如DDR、DDR2等,提供設(shè)計(jì)參考。
參考文獻(xiàn):
[1]崔澤漢,陳明宇.大容量DRAM的刷新開銷問題及優(yōu)化技術(shù)綜述[J].計(jì)算機(jī)研究與發(fā)展,2016,53(2):416-430.
[2]高戰(zhàn)立,余桂英,唐瑋.FPGA圖像采集系統(tǒng)研究與設(shè)計(jì)[J].中國計(jì)量學(xué)院學(xué)報(bào),2014,25(1):75-79.
[3]張林,何春.高速SDRAM控制器設(shè)計(jì)的FPGA實(shí)現(xiàn)[J].電子科技大學(xué)學(xué)報(bào),2008,1.
[4]高子旺,顧美康.一種基于FPGA的低復(fù)雜度SDRAM控制器實(shí)現(xiàn)方法[J].計(jì)算機(jī)與數(shù)字工程,2010(1):194-196.
[5]陳朝陽,張伸,沈緒榜.一種改進(jìn)的SRAM并行BIST電路設(shè)計(jì)[J].系統(tǒng)工程與電子技術(shù),2005,27(1):159-162.
[6]Kim J S,Oh C S,Lee H,et al.A 1.2 V 12.8 GB/s 2 Gb Mobile Wide-I/O DRAM With 4 128 I/Os Using TSV Based Stacking[J].IEEE Journal of Solid-State Circuits,2012,47(1):107-116.
[7]Makam D,Jayashree H V.An innovative design of the DDR/DDR2 SDRAM compatible controller[C]//Nanoscience,Engineering and Technology(ICON?SET),2011 International Conference on.IEEE,2011:600-603.
[8]Shuang-yan C,Dong-hui W,Rui S,et al.An innovative design of the DDR/DDR2 SDRAM compatible controller[C]//2005 6th International Conference on ASIC.IEEE,2005,(1):62-66.
[9]Bakshi A,Pandey S S,Pradhan T,et al.ASIC im?plementation of DDR SDRAM Memory Controller[C]//Emerging Trends in Computing,Communica?tion and Nanotechnology(ICE-CCN),2013 Inter?national Conference on.IEEE,2013:74-78.
[10]Singh P, ReniwalB, Vijayvargiya V and Vishvakarma S K.Design of high speed DDR SDRAM controller with less logic utilization[J].2nd International Conference on Devices,Circuits and Systems(ICDCS),2014(14):1-6.
[11]Liu S,Pattabiraman K,Moscibroda T,et al.Flik?ker:saving DRAM refresh-power through critical data partitioning[J].ACM SIGPLAN Notices,2012,47(4):213-224.
[12]Liu J,Jaiyen B,Veras R,et al.RAIDR:Reten?tion-aware intelligent DRAM refresh[C]//ACM SI?GARCH Computer Architecture News.IEEE Com?puter Society,2012,40(3):1-12.
[13]Lee D,Kim Y,Seshadri V,et al.Tiered-latency DRAM:A low latency and low cost DRAM architec?ture[C]//High Performance Computer Architecture(HPCA2013),2013 IEEE 19th International Sym?posium on.IEEE,2013:615-626.
[14]Jevdjic D,Volos S,F(xiàn)alsafi B.Die-stacked DRAM caches for servers:hit ratio,latency,or band?width?have it all with footprint cache[J].ACM SI?GARCH Computer Architecture News,2013,41(3):404-415.
[15]3D PLUS DETAIL SPECIFICATION.8Gbit SDRAMEDS5104ABdatasheet[EB/OL].(2003-01).http://www.elpida.com.
[16]Micron Technology Inc.General DDR SDRAM functionality[EB/OL].[2013-01-13].http://www.micron.com.