畢業(yè)論文:SDRAM內(nèi)存控制器研究
摘要
隨著通用CPU邁向多核時(shí)代、視頻處理ASIC邁向高清時(shí)代,存儲(chǔ)器性能對(duì)系統(tǒng)整體性能的影響越來(lái)越大。然而由于工藝限制,DRAM的核心頻率難以超過(guò)300MHz,各種旨在提高數(shù)據(jù)吞吐率的DRAM接口應(yīng)運(yùn)而生。優(yōu)秀的內(nèi)存控制器可以充分發(fā)揮DRAM接口的優(yōu)勢(shì),在相同硬件條件下獲得更好的性能,在相同性能要求下降低硬件成本。
在緒論部分,本文討論了DRAM的技術(shù)發(fā)展歷程,重點(diǎn)講述了SDRAM帶來(lái)的機(jī)遇與挑戰(zhàn),以及后SDRAM時(shí)代的各種技術(shù)改進(jìn)。第一章詳細(xì)講解了SDRAM的基本操作,并綜述了常見(jiàn)的SDRAM讀寫優(yōu)化技巧,對(duì)它們的優(yōu)略與適用場(chǎng)合做了較為深入的分析。
第三章給出了一種基于Close Page Policy的SDRAM控制器設(shè)計(jì)方案,并進(jìn)行了簡(jiǎn)單的性能分析。第四章講述了該設(shè)計(jì)方案的verilog實(shí)現(xiàn)、RTL級(jí)仿真、FPGA綜合以及FPGA驗(yàn)證。第五章講解了該設(shè)計(jì)方案的SOPC集成,包括標(biāo)準(zhǔn)化的Avalon-MM接口設(shè)計(jì)、BFM仿真測(cè)試、JTAG硬件測(cè)試。
關(guān)鍵詞:SDRAM,內(nèi)存控制器,SOPC
ABSTRACT
As general purpose CPU enters the multi-core era and video processing AISC enters the high-definition era, memory performance becomes increasingly important to overall system performance. However due to technology restricts, the core frequency of DRAM hasnt e*ceeded 300MHz. Thus there emerged many DRAM interface protocols aiming at high data throughput. A well-designed DRAM controller can take advantage of such protocols and achieve better performance using the same hardware or lower cost under the same performance requirement.
In the introduction section, this paper reviewed the history of DRAM technology, especially the chances and challenges that SDRAM brought about, as well as new features appeared in the post-SDRAM age. The first chapter started with the basic operation of SDRAM, and then summarized several effective techniques for optimizing SDRAM accesses.
Then an SDRAM controller design solution based on Close Page Policy is proposed, and basic performance analyses are performed. Ne*t, the Verilog implementation, RTL-level simulation, FPGA synthesis and FPGA verification of the proposed design are described. Finally, the SOPC integration of the proposed design is covered, including standardized Avalon-MM interface designing, BFM simulation and hardware verification through JTAG.
Keyword: SDRAM, memory controller, SOPC
目錄
第一章 緒論 11
1 前SDRAM時(shí)期的DRAM 11
1.1 DRAM的發(fā)明 11
1.2 Intel 1103 11
1.3 Mostek MK4096 11
1.4 典型的傳統(tǒng)異步DRAM 12
1.5 Page Mode、Fast Page Mode(FPM)、Nibble mode的出現(xiàn) 12
1.6 E*tended Data Output(EDO)與Burst EDO的出現(xiàn) 13
2 SDRAM帶來(lái)的機(jī)遇與挑戰(zhàn) 13
2.1 SDRAM基本硬件參數(shù) 14
2.2 SDRAM的三維地址空間 14
2.3 芯片規(guī)格與SDRAM芯片組的容量 15
2.4 Row Buffer對(duì)SDRAM讀寫的影響 16
2.5 SDRAM的新天地 16
3 后SDRAM時(shí)代的DRAM 17
3.1 DDR SDRAM引入的其他重要特性 18
3.2 DDR2 SDRAM引入的其他重要特性 18
3.3 DDR3 SDRAM引入的其他重要特性 19
4 本課題的內(nèi)容 19
5
論文結(jié)構(gòu) 20
第二章 SDRAM基本操作與優(yōu)化策略 21
1 SDRAM的基本操作 21
1.1 SDRAM回顧 21
1.2 SDRAM的基本指令 22
1.2.1 LMR指令與模式寄存器 23
1.2.2 ACT(Activate)指令、WR(write)指令、RD(Read
……(新文秘網(wǎng)http://m.jey722.cn省略3917字,正式會(huì)員可完整閱讀)……
RAM的地址Wrap 48
表3.4初始化狀態(tài)及其輸出 50
表4.1 Micron Model的參數(shù) 59
表5.1 Avalon Wrapper端口信號(hào) 68
為保證用戶的論文檢測(cè)通過(guò)率,本論文的內(nèi)容(包括圖片、表格)均已隱去,正式會(huì)員可看到全文下載地址。
第一章 緒論
隨著工藝尺寸的縮小,當(dāng)代ASIC與CPU的性能突飛猛進(jìn),然而存儲(chǔ)器的核心頻率任然只有100~200MHz左右,SDR/DDR/DDR2/DDR3等旨在提高數(shù)據(jù)吞吐率的接口協(xié)議應(yīng)運(yùn)而生。
當(dāng)下,設(shè)計(jì)良好的存儲(chǔ)控制器,已成為充分發(fā)揮系統(tǒng)帶寬潛能、降低系統(tǒng)功耗的有力保障。
本章內(nèi)容:首先,將分三部分簡(jiǎn)要介紹DRAM存儲(chǔ)器:前SDRAM時(shí)代的DRAM、SDRAM帶來(lái)的機(jī)遇與挑戰(zhàn)、后SDRAM時(shí)代的DRAM;然后,將介紹本課題的內(nèi)容,給出論文結(jié)構(gòu)。
1 前SDRAM時(shí)期的DRAM
1.1 DRAM的發(fā)明
1966年Robert Dennard博士在IBM的Thomas J. Watson研究中心發(fā)明了DRAM存儲(chǔ)器,其中的存儲(chǔ)單元采用了1T1C的結(jié)構(gòu)[52]。
Robert Dennard獲得了美國(guó)專利,專利號(hào)為3,387,286。
1.2 Intel 1103
1971年Intel發(fā)布了Intel 1103存儲(chǔ)器,容量為1kbit。它是歷史上第一個(gè)商業(yè)上成功的DRAM存儲(chǔ)器。與經(jīng)典DRAM不同,它采用3T1C的存儲(chǔ)單元,有獨(dú)立的行地址線與列地址線,讀與寫的數(shù)據(jù)線分離。
圖1.1 Intel 1103
1.3 Mostek MK4096
1973年Mostek發(fā)布了Mostek MK4096存儲(chǔ)器,容量為4k,由Robert Proebsting設(shè)計(jì)。
它是歷史上第一款復(fù)用行列地址線的DRAM。行列地址線的復(fù)用,減少了封轉(zhuǎn)管腳,降低了成本,這個(gè)傳統(tǒng)延續(xù)至今。
Mostek是Micron的前身,在鼎盛時(shí)期曾占有3/4的市場(chǎng)份額。
圖1.2 Mostek MK4096
1.4 典型的傳統(tǒng)異步DRAM
在1970年代中期,占據(jù)主流的是異步接口的DRAM,那時(shí)的“Clocked DRAM”僅僅曇花一現(xiàn)。這種經(jīng)典異步接口,與課本《數(shù)字集成電路設(shè)計(jì)透視》中的敘述十分吻合[50]。每次讀寫前,必須分別進(jìn)行行選通與列選通,即便讀寫同一行里的數(shù)據(jù),也不能省略任何步驟。一張典型的時(shí)序圖如下:
圖1.3 典型的異步DRAM讀時(shí)序
1.5 Page Mode、Fast Page Mode(FPM)、Nibble mode的出現(xiàn)
在異步DRAM的時(shí)代,出現(xiàn)過(guò)許多改進(jìn)極富有特點(diǎn)的接口改進(jìn)。
Page Mode的出現(xiàn)是一個(gè)里程碑。Page Mode的DRAM可以把一整行數(shù)據(jù)保存在集成于片上的靈敏放大器整列中,這訪問(wèn)同一行時(shí),就不必重復(fù)進(jìn)行行選通。Page Mode的操作,利用了訪問(wèn)的空間局部性,從而提升了系統(tǒng)的性能。行緩沖的思想,一直延續(xù)到了當(dāng)代的DRAM。
Fast Page Mode出現(xiàn)于1980年代早期,直到1990年代早期任然屬于主流。Fast Page Mode中,只要RAS_B有效,就打開(kāi)列地址緩沖,從而可以在CAS_B發(fā)起前鎖存列地址,這樣就提高了讀寫效率。
Nibble mode是TI對(duì)FPM DRAM的一種改進(jìn),添加了類似于4位突發(fā)傳送的功能。
1.6 E*tended Data Output(EDO)與Burst EDO的出現(xiàn)
在1990年代中期,出現(xiàn)了E*tended Data Output的DRAM。它增加了OE_B信號(hào),來(lái)代替CAS_B去控制輸出緩沖。于是,在CAS_B上升后,數(shù)據(jù)可以保持更多時(shí)間,故名“E*tended Data Output”。EDO允許CAS_B下降沿與數(shù)據(jù)交疊,縮短了page mode下的讀寫周期,故效率比FPM更高。
Burst EDO增加了列地址自動(dòng)增加的功能,進(jìn)一步簡(jiǎn)化了操作,提高了效率。
幾種異步模式的時(shí)序?qū)Ρ热缦聢D[49]:
圖1.4 異步DRAM的各種時(shí)序改進(jìn)
(摘自ICE公司的《Memory 1997》[49])
2 SDRAM帶來(lái)的機(jī)遇與挑戰(zhàn)
SDRAM,意為同步的DRAM,其數(shù)據(jù)和指令都與時(shí)鐘上升沿對(duì)齊。最早的樣品,由三星在1993年生產(chǎn)。在1996-2002年期間,SDRAM逐步取代了異步的FPM DRAM、EDO DRAM,稱雄PC內(nèi)存市場(chǎng)。在2003年之后,逐漸被DDR SDRAM取代。它與前代異步DRAM的不同包括:同步時(shí)鐘、多Bank機(jī)制、流水線化的操作、Burst讀寫的引入。由于每個(gè)時(shí)鐘周期,只在上升沿傳送一次數(shù)據(jù),它也被稱為SDR SDRAM,以便與DDR SDRAM區(qū)別。
2.1 SDRAM基本硬件參數(shù)
SDRAM的常見(jiàn)容量包括:16Mbit、64Mbit、128Mbit、256Mbit、512Mbit。其中,除了16Mbit分為2個(gè)Bank外,其他容量的SDRAM都分為4個(gè)Bank。
SDRAM的常見(jiàn)數(shù)據(jù)位寬包括:4bit、8bit、16bit、32bit。如果系統(tǒng)位寬64bit,用16個(gè)512Mbit容量4bit位寬的SDRAM并聯(lián),可以實(shí)現(xiàn)8Gbit的存儲(chǔ)空間;而如果用2個(gè)512Mbit容量32bit位寬的SDRAM并聯(lián),只能實(shí)現(xiàn)1Gbit的存儲(chǔ)空間。
SDRAM的Burst Length,即讀寫突發(fā)傳送的周期數(shù),一般可設(shè)置為1、2、4、8以及Full Page,在初始化時(shí)通過(guò)寫模式寄存器來(lái)設(shè)置。需要注意的是,如果列讀寫時(shí),地址沒(méi)有與BL對(duì)齊,SDRAM會(huì)自行Wrap地址,導(dǎo)致意外的結(jié)果。
SDRAM的Cas Latency,即從發(fā)送列讀取指令到有效數(shù)據(jù)出現(xiàn)的延時(shí),一般為2或3個(gè)時(shí)鐘周期,少數(shù)器件可以為1個(gè)周期,在初始化時(shí)通過(guò)寫模式寄存器來(lái)設(shè)置。一般CL=3時(shí),tAC參數(shù)(即時(shí)鐘上升沿到有效數(shù)據(jù)出現(xiàn)的延時(shí))較小,從而使器件可以工作在較高的頻率。
SDRAM的常見(jiàn)速度等級(jí)包括:100MHz(T=10ns)、125MHz(T=8ns)、133MHz(T=7.5ns)、143MHz(T=7ns)、166MHz(T=6ns)、183MHz(T=5.5ns)、200MHz(T=5ns)。速度等級(jí)一般對(duì)應(yīng)CL=3時(shí)的最高工作頻率。器件的最高工作頻率越高,表示其AC延時(shí)參數(shù)越小。
2.2 SDRAM的三維地址空間
圖1.5 Micron SDRAM框圖
(摘自Micron公司的SDRAM器件手冊(cè)[9])
當(dāng)代SDRAM的地址空間由Bank、Row、Column三個(gè)維度。64Mbit及以上容量的SDRAM一般分為4個(gè)Bank。為了與內(nèi)存模組中Physical Bank(Rank)的概念區(qū)別,SDRAM的Bank有時(shí)也叫Logic Bank。
每個(gè)Bank都是一個(gè)Row與Column構(gòu)建的陣列;陣列的每個(gè)單元都是一組數(shù)據(jù),這組數(shù)據(jù)的位寬與SDRAM數(shù)據(jù)接口位寬一致。
例如,一個(gè)容量64Mbit位寬16bit的SDRAM地址空間為:4bank * (2^12)Row * (2^8)Column * 16 bit = 64Mbit,器件手冊(cè)一般寫為4 * 1M * 16bit = 64Mbit。
2.3 芯片規(guī)格與SDRAM芯片組的容量
關(guān)于SDRAM芯片尋址的術(shù)語(yǔ)——Bank、Row、Column已在上一節(jié)給出了解釋。下面解釋幾個(gè)SDRAM芯片組中常用的術(shù)語(yǔ)。
Rank:又叫Physical Bank,指的是一組被同時(shí)操作的DRAM芯片。通常,它們的數(shù)據(jù)總線被合并,以提供系統(tǒng)所需要的數(shù)據(jù)位寬,如Intel處理器要求的64bit。
Page:一般指同一個(gè)Rank中Bank adddress、Row address相同的空間。可以認(rèn)為將Rank中所有SDRAM芯片中的Row Buffer合并在一起,就組成了Rank中的Page Buffer。關(guān)于Row Buffer、Page Buffer對(duì)DRAM訪問(wèn)的影響將在下一節(jié)講述。
以64bit位寬的系統(tǒng)為例,綜合列出不同規(guī)格SDRAM的3維地址空間,以及組成Rank后的特性[7][8]:
表1.1 典型的SDRAM存儲(chǔ)規(guī)格
Chip Size Chip DQ/
Fab. Bank Num Row Num Col Num Row Buf Size 64bit Page Size 64bit Rank Size
16Mb 16 ISSI 2 2048 256 4kb 16kb 64Mb
64Mb 32 Micron 4 2048 256 8kb 16kb 128Mb
16 Micron 4 4096 256 4kb 16kb 256Mb
8 Micron 4 4096 512 4kb 32kb 512Mb
4 Micron 4 4096 1024 4kb 64kb 1Gb
128Mb 32 Micron 4 4096 256 8kb 16kb 256Mb
16 Micron 4 4096 512 8kb 32kb 512Mb
8 Micron 4 4096 1024 8kb 64kb 1Gb
4 Micron 4 4096 2048 8kb 128kb 2Gb
256Mb 32 ISSI 4 4096 512 16kb 32k 512Mb
16 Micron 4 8192 512 8kb 32kb 1Gb
8 Micron 4 8192 1024 8kb 64kb 2Gb
4 Micron 4 8192 2048 8kb 128kb 4Gb
512Mb 32 ISSI 4 8192 512 16kb 32kb 1Gb
16 Micron 4 8192 1024 16kb 64kb 2Gb
8 Micron 4 8192 2048 16kb 128kb 4Gb
4 Micron 4 8192 4096 16kb 256kb 8Gb
注:其中Micron 64Mb: *32的芯片雖然是2048行,計(jì)算刷新周期時(shí)要按4096行算。而ISSI 16Mb: *16的芯片也是2048行,刷新時(shí)確實(shí)按2048行算。關(guān)于刷新的原理見(jiàn)后文。
2.4 Row Buffer對(duì)SDRAM讀寫的影響
SDRAM的每個(gè)Bank都有一個(gè)Row Buffer,其實(shí)就是一排靈敏放大器(Sense Amplifier)。每次激活(Activate)一個(gè)Row地址后,就打開(kāi)Row Buffer把整個(gè)Row的數(shù)據(jù)保存在其中;Precharge指令可以關(guān)閉指定Bank的Row Buffer,Precharge All可以關(guān)閉所有Bank的Row Buffer;我們稱Row Buffer關(guān)閉的Bank為空閑(Idle)的Bank。
由于Row Buffer的存在,SDRAM的訪問(wèn)分為如下三種情況[31]:
(1) 當(dāng)前訪問(wèn)的Row所在的bank中,row buffer關(guān)閉。此時(shí),需要先激活Row,再發(fā)讀寫指令和Column地址。此情況,讀寫延時(shí)中等。
(2) 當(dāng)前訪問(wèn)的Row,正好保存在相應(yīng)bank的row buffer里。此時(shí),不需要激活Row,直接發(fā)讀寫指令和Column地址,就可以訪問(wèn)。此情況,讀寫延時(shí)最小。
(3) 當(dāng)前訪問(wèn)的Row所在的bank中,row buffer打開(kāi),存的是另一個(gè)Row的數(shù)據(jù)。此時(shí),必須先發(fā)送Precharge或Precharge All指令關(guān)閉row buffer,再激活Row,最后發(fā)讀寫指令和Column地址。此情況,讀寫延時(shí)最大。
2.5 SDRAM的新天地
SDRAM帶來(lái)的最大機(jī)遇就是它流水線化、并行化的接口設(shè)計(jì),只要不違反管腳、時(shí)序延時(shí)的限制,多個(gè)Bank可以并肩工作。
恰如Scott Ri*ner在ISCA2000上指出的,“得益于當(dāng)代存儲(chǔ)器件的三維特性,重新排列存儲(chǔ)操作順序以分時(shí)訪問(wèn)DRAM大有好處。這樣的優(yōu)化,就好比超標(biāo)量處理器亂序調(diào)度算數(shù)操作一樣!盵26]
圍繞著訪問(wèn)請(qǐng)求重排、SDRAM指令亂序執(zhí)行、地址映射、Row Buffer關(guān)閉策略,各種優(yōu)化方法層出不窮,從簡(jiǎn)單的多bank交錯(cuò)操作,到包含自適應(yīng)機(jī)制的Row Buffer管理策略,不勝枚舉。
針對(duì)視頻處理、多核、通信等不同應(yīng)用,設(shè)計(jì)SDRAM控制器時(shí)還需要根據(jù)“實(shí)時(shí)性”的限制,在低延時(shí)和高帶寬利用率之間有所取舍。
所有這些開(kāi)啟了DRAM控制系統(tǒng)的一個(gè)新篇章。
3 后SDRAM時(shí)代的DRAM
SDRAM之后,依次出現(xiàn)了DDR、DDR2、DDR3這幾代DRAM。和SDR SDRAM一樣,它們也采用多bank流水線化操作的同步架構(gòu),其內(nèi)部半導(dǎo)體存儲(chǔ)單元的核心頻率也任然在100~200MHz之間。DDR、DDR2、DDR3相對(duì)于SDR SDRAM最大的區(qū)別在于使用了多bit預(yù)取的技術(shù)[16]。從DDR開(kāi)始,同時(shí)在上升沿和下降沿對(duì)數(shù)據(jù)進(jìn)行采樣。從DDR2開(kāi)始,I/O接口的頻率開(kāi)始高于存儲(chǔ)單元的核心頻率。
下圖對(duì)SDR、DDR、DDR2、DDR3的SDRAM做了對(duì)比:
圖1.6 當(dāng)代DRAM接口時(shí)序?qū)Ρ?br> 不過(guò),也正是多bit預(yù)取技術(shù),使得DDR SDRAM的最小Burst Length為2而DDR2 SDRAM的最小Burst Length為4,DDR3略有不同,最小Burst Length為4。
另一方面,從SDR、DDR、DDR2到DDR3,指令延時(shí)略有差異,SDR訪問(wèn)的優(yōu)化算法也可用于DDR、DDR2到DDR3,但需要更具參數(shù)的相對(duì)關(guān)系重新調(diào)整,不能生搬硬套。
3.1 DDR SDRAM引入的其他重要特性
差分時(shí)鐘CK和CK_B。差分時(shí)鐘可以抑制溫度、電阻等因素對(duì)時(shí)鐘精度的影響。在CK上升沿和CK_B下降沿的交叉點(diǎn)采樣對(duì)指令信號(hào)采樣;把CK和CK_B的所有交叉點(diǎn)作為數(shù)據(jù)采樣的參考點(diǎn)[10]。
數(shù)據(jù)采樣脈沖DQS。DDR SDRAM使用Source-Synchronous接口,以確保搞數(shù)據(jù)傳送率下的信號(hào)完整性。DQS是一個(gè)雙向端口,寫數(shù)據(jù)時(shí),DQS為DDR SDRAM的輸入,其上升沿和下降沿分別與兩個(gè)數(shù)據(jù)各自的中心對(duì)齊;讀數(shù)據(jù)時(shí),DQS為DDR SDRAM的輸出,其上升沿和下降沿分別與兩個(gè)數(shù)據(jù)各自的起始邊沿對(duì)齊[3]。
片上DLL。隨著數(shù)據(jù)傳送頻率的提升,時(shí)鐘樹(shù)延時(shí)(Clock Insertion Delay)變得更加嚴(yán)重,使得片上DLL成為了必需。片上DLL可以通過(guò)模式寄存器來(lái)開(kāi)啟和關(guān)閉,使用時(shí)通常會(huì)開(kāi)啟DLL[3]。
3.2 DDR2 SDRAM引入的其他重要特性
Post CAS。為提高帶寬利用率而作的接口時(shí)序改進(jìn)。在SDR和DDR SDRAM的時(shí)代,行選通、列讀取之間必須滿足tRCD延時(shí);DDR2接口中可以在行選通后直接進(jìn)行列讀取,而有效數(shù)據(jù)出現(xiàn)相對(duì)于行選通的延時(shí)不變[4]。這樣可以避免不同bank間的行選通、列讀取指令碰撞,提高效率。
圖1.7 DDR2 SDRAM Post CAS
ODT(On-Die Termination)。終端電阻起著平衡信號(hào)完整性和電壓擺幅的作用[15]。在SDR和DDR SDRAM的時(shí)代,終端電阻是做在電路板上的,而DDR2使用了片上終端電阻(ODT),從而提高了配置的靈活性,降低了電路板的設(shè)計(jì)難度與成本。內(nèi)存控制器通過(guò)寫EMR寄存器來(lái)設(shè)定或更新ODT的值。
OCD(Off-Chip Driver)校準(zhǔn)。DDR2 SDRAM引入了片外驅(qū)動(dòng)校準(zhǔn),以提高信號(hào)完整性[15]。校準(zhǔn)時(shí),調(diào)整的是片內(nèi)上拉、下拉電阻的等級(jí)。由于DDR2還引入了差分的數(shù)據(jù)選取脈沖,基本已滿足了信號(hào)完整性的要求,所以O(shè)CD也只在高端場(chǎng)合應(yīng)用過(guò)。目前Micron等公司的DDR2 SDRAM已經(jīng)不再支持OCD了[11]。
3.3 DDR3 SDRAM引入的其他重要特性
RESET_B管腳。DDR3 SDRAM增加了RESET_B管腳,使得存儲(chǔ)芯片可以很容易地進(jìn)入初始化狀態(tài)[5]。當(dāng)RESET_B有效時(shí),存儲(chǔ)芯片內(nèi)部時(shí)鐘關(guān)閉,處于低功耗的狀態(tài);RESET_B從有效變?yōu)闊o(wú)效后,存儲(chǔ)芯片自動(dòng)進(jìn)入初始化階段。
Burst-Chop與On-The-Fly技術(shù)。DDR3 SDRAM采用8n-bit預(yù)取,從DDR、DDR2的情況推測(cè)應(yīng)該只支持長(zhǎng)度為8的突發(fā)傳送。但是,DDR3 SDRAM支持Burst-Chop,能夠?qū)崿F(xiàn)長(zhǎng)為4的突發(fā)傳送[5]。可以通過(guò)模式寄存器設(shè)置突發(fā)傳送長(zhǎng)度,也可以使用On-The-Fly技術(shù)通過(guò)A12地址位在發(fā)起讀寫時(shí)確定突發(fā)傳送長(zhǎng)度。需要注意的是Burst-Chop,只相當(dāng)于一個(gè)Mask操作,不能節(jié)約總線時(shí)間。
ZQ校準(zhǔn)。DDR3 SDRAM的ZQ校準(zhǔn)提供了更加有效的可控阻抗機(jī)制[12]。初始化時(shí)的長(zhǎng)校準(zhǔn),使DRAM能夠?qū)Ⅱ?qū)動(dòng)電路工藝偏差帶來(lái)的影響最小化;正常操作時(shí)的短校準(zhǔn),可以減小電壓、溫度漂移帶來(lái)的阻抗變化。ZQ校準(zhǔn)為良好的信號(hào)完整性提供了保障。
動(dòng)態(tài)片上終端電阻(Dynamic ODT)。片上終端電阻(ODT)可以減小當(dāng)前模組的時(shí)鐘抖動(dòng)以及其他模組引起的信號(hào)反射[13]。確保信號(hào)完整性,就可以提供可預(yù)測(cè)的有效數(shù)據(jù)窗口(data eye)。動(dòng)態(tài)片上終端電阻技術(shù),就是可以根據(jù)是否進(jìn)行寫操作而在標(biāo)準(zhǔn)電阻、寫電阻之間自動(dòng)切換,免去了像在操作DDR2 SDRAM時(shí)那樣更改模式寄存器的麻煩。
Auto Self-Refresh。JEDEC標(biāo)準(zhǔn)中的可選特性,如果實(shí)現(xiàn)并被啟用,SDRAM會(huì)根據(jù)自身的溫度決定自刷新的頻率以降低功耗[5]。
Partial Array Self-Refresh。JEDEC標(biāo)準(zhǔn)中的可選特性,如果實(shí)現(xiàn)并被啟用,可以只刷新SDRAM中有必要刷新的Bank,以降低功耗[5]。
4 本課題的內(nèi)容
本課題研究SDRAM內(nèi)存控制器的設(shè)計(jì)。從SDRAM的結(jié)構(gòu)與基本操作入手,分析各種優(yōu)化策略,然后給出基于Close Page Policy的內(nèi)存控制器設(shè)計(jì)方案,并將其集成到Altera的SOPC系統(tǒng)中。
整個(gè)設(shè)計(jì)流程包括:Spec編寫、模塊劃分與時(shí)序設(shè)計(jì),RTL級(jí)的verilog設(shè)計(jì),RTL級(jí)的ModelSIM仿真,Quartus綜合,后仿真,靜態(tài)時(shí)序分析,F(xiàn)PGA測(cè)試。
SOPC集成的工作包括:Avalon-MM Slave Wrapper的編寫,Avalon-MM Master BFM仿真測(cè)試,基于Jtag to Avalon Master Bridge的FPGA硬件測(cè)試。
5 論文結(jié)構(gòu)
第一章:緒論。
第二章:SDRAM基本操作與優(yōu)化策略。
第三章:基于Close Page Policy的內(nèi)存控制器后端設(shè)計(jì)。
第四章:SDRC_Lite內(nèi)存控制器的仿真、綜合與硬件測(cè)試。
第五章:SDRC_Lite內(nèi)存控制器的SOPC集成與測(cè)試。
第六章:
總結(jié)與展望。
致謝。
第二章 SDRAM基本操作與優(yōu)化策略
由于指令操作的存在,SDRAM系統(tǒng)的硬件帶寬往往得不到充分利用。良好的SDRAM訪問(wèn)策略可以提高SDRAM系統(tǒng)的硬件帶寬的利用率,在相同硬件條件下獲得更好的性能或在相同性能要求下降低硬件成本。
SDRAM具有多Bank、流水線化等結(jié)構(gòu)特性,如果能夠巧妙地排列指令,可以開(kāi)發(fā)SDRAM的并行化優(yōu)勢(shì)節(jié)省總線時(shí)間;SDRAM具有行緩沖,如果根據(jù)數(shù)據(jù)訪問(wèn)的空間局部性、請(qǐng)求延時(shí)的限度,適當(dāng)重排訪問(wèn)請(qǐng)求、控制緩沖策略,可以減少指令的數(shù)量,提高總線效率。
本章內(nèi)容包括:SDRAM的特性回顧與基本操作、SDRAM訪問(wèn)的優(yōu)化方向與常用策略。由于SDRAM的初始化與帶寬利用率的優(yōu)化策略無(wú)關(guān),故另行歸入控制器設(shè)計(jì)原理的章節(jié)中。從本章開(kāi)始SDRAM專指SDR SDRAM。
1 SDRAM的基本操作
1.1 SDRAM回顧
SDRAM是同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器的縮寫。同步,指它有統(tǒng)一的時(shí)鐘,在時(shí)鐘上升沿采樣指令、讀入或輸出數(shù)據(jù),與早期的異步DRAM不同;動(dòng)態(tài),指它必須不斷刷新以維持?jǐn)?shù)據(jù) ……(未完,全文共61159字,當(dāng)前僅顯示11000字,請(qǐng)閱讀下面提示信息。
收藏《畢業(yè)論文:SDRAM內(nèi)存控制器研究》)