古詩詞大全網 - 成語故事 - 什麽是EDO和SDRAM

什麽是EDO和SDRAM

EDO內存  EDO是Extended Data Out(擴展數據輸出)的簡稱,它取消了主板與內存兩個存儲周期之間的時間間隔,每隔2個時鐘脈沖周期傳輸壹次數據,大大地縮短了存取時間,使存取速度提高30%,達到60ns。EDO內存主要用於72線的SIMM內存條,以及采用EDO內存芯片的PCI顯示卡。這種內存流行在486以及早期的奔騰計算機系統中,它有72線和168線之分,采用5V工作電壓,帶寬32 bit,必須兩條或四條成對使用,可用於英特爾430FX/430VX甚至430TX芯片組主板上。目前也已經被淘汰,只能在某些老爺機上見到。 SDRAM  SDRAM:Synchronous Dynamic Random Access Memory,同步動態隨機存取存儲器,同步是指Memory工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。

SDRAM從發展到現在已經經歷了四代,分別是:第壹代SDR SDRAM,第二代DDR SDRAM,第三代DDR2 SDRAM,第四代DDR3 SDRAM.(顯卡上的DDR已經發展到DDR5)

第壹代與第二代SDRAM均采用單端(Single-Ended)時鐘信號,第三代與第四代由於工作頻率比較快,所以采用可降低幹擾的差分時鐘信號作為同步時鐘。

SDR SDRAM的時鐘頻率就是數據存儲的頻率,第壹代內存用時鐘頻率命名,如pc100,pc133則表明時鐘信號為100或133MHz,數據讀寫速率也為100或133MHz。

之後的第二,三,四代DDR(Double Data Rate)內存則采用數據讀寫速率作為命名標準,並且在前面加上表示其DDR代數的符號,PC-即DDR,PC2=DDR2,PC3=DDR3。如PC2700是DDR333,其工作頻率是333/2=166MHz,2700表示帶寬為2.7G。

DDR的讀寫頻率從DDR200到DDR400,DDR2從DDR2-400到DDR2-800,DDR3從DDR3-800到DDR3-1600。

很多人將SDRAM錯誤的理解為第壹代也就是 SDR SDRAM,並且作為名詞解釋,皆屬誤導。

SDR不等於SDRAM。

Pin:模組或芯片與外部電路電路連接用的金屬引腳,而模組的pin就是常說的“金手指”。

SIMM:Single In-line Memory Module,單列內存模組。內存模組就是我們常說的內存條,所謂單列是指模組電路板與主板插槽的接口只有壹列引腳(雖然兩側都有金手指)。

DIMM:Double In-line Memory Module,雙列內存模組。是我們常見的模組類型,所謂雙列是指模組電路板與主板插槽的接口有兩列引腳,模組電路板兩側的金手指對應壹列引腳。

RIMM:registered DIMM,帶寄存器的雙線內存模塊,這種內存槽只能插DDR或Rambus內存。

SO-DIMM:筆記本常用的內存模組。

工作電壓:

SDR:3.3V

DDR:2.5V

DDR2:1.8V

DDR3:1.5V

SDRAM內存條的金手指通常是168線,而DDR SDRAM內存條的金手指通常是184線的。

幾代產品金手指的缺口數及缺口位置也不同有效防止反插與錯插,SDRAM有兩個缺口,DDR只有壹個缺口。

SDRAM的結構、時序與性能的關系

壹、影響性能的主要時序參數

所謂的影響性能是並不是指SDRAM的帶寬,頻率與位寬固定後,帶寬也就不可更改了。但這是理想的情況,在內存的工作周期內,不可能總處於數據傳輸的狀態,因為要有命令、尋址等必要的過程。但這些操作占用的時間越短,內存工作的效率越高,性能也就越好。

非數據傳輸時間的主要組成部分就是各種延遲與潛伏期。通過上文的講述,大家應該很明顯看出有三個參數對內存的性能影響至關重要,它們是tRCD、CL和tRP。每條正規的內存模組都會在標識上註明這三個參數值,可見它們對性能的敏感性。

以內存最主要的操作——讀取為例。tRCD決定了行尋址(有效)至列尋址(讀/寫命令)之間的間隔,CL決定了列尋址到數據進行真正被讀取所花費的時間,tRP則決定了相同L-Bank中不同工作行轉換的速度。現在可以想象壹下讀取時可能遇到的幾種情況(分析寫入操作時不用考慮CL即可):

1、要尋址的行與L-Bank是空閑的。也就是說該L-Bank的所有行是關閉的,此時可直接發送行有效命令,數據讀取前的總耗時為tRCD+CL,這種情況我們稱之為頁命中(PH,Page Hit)。

2、要尋址的行正好是前壹個操作的工作行,也就是說要尋址的行已經處於選通有效狀態,此時可直接發送列尋址命令,數據讀取前的總耗時僅為CL,這就是所謂的背靠背(Back to Back)尋址,我們稱之為頁快速命中(PFH,Page Fast Hit)或頁直接命中(PDH,Page Direct Hit)。

3、要尋址的行所在的L-Bank中已經有壹個行處於活動狀態(未關閉),這種現象就被稱作尋址沖突,此時就必須要進行預充電來關閉工作行,再對新行發送行有效命令。結果,總耗時就是tRP+tRCD+CL,這種情況我們稱之為頁錯失(PM,Page Miss)。

顯然,PFH是最理想的尋址情況,PM則是最糟糕的尋址情況。上述三種情況發生的機率各自簡稱為PHR——PH Rate、PFDR——PFH Rate、PMR——PM Rate。因此,系統設計人員(包括內存與北橋芯片)都盡量想提高PHR與PFHR,同時減少PMR,以達到提高內存工作效率的目的。

二、增加PHR的方法

顯然,這與預充電管理策略有著直接的關系,目前有兩種方法來盡量提高PHR。自動預充電技術就是其中之壹,它自動的在每次行操作之後進行預充電,從而減少了日後對同壹L-Bank不同行尋址時發生沖突的可能性。但是,如果要在當前行工作完成後馬上打開同壹L-Bank的另壹行工作時,仍然存在tRP的延遲。怎麽辦? 此時就需要L-Bank交錯預充電了。

VIA的4路交錯式內存控制就是在壹個L-Bank工作時,對下壹個要工作的L-Bank進行預充電。這樣,預充電與數據的傳輸交錯執行,當訪問下壹個L-Bank時,tRP已過,就可以直接進入行有效狀態了。目前VIA聲稱可以跨P-Bank進行16路內存交錯,並以LRU算法進行預充電管理。

有關L-Bank交錯預充電(存取)的具體執行在本刊2001年第2期已有詳細介紹,這裏就不再重復了。

L-Bank交錯自動預充電/讀取時序圖(可點擊放大):L-Bank 0與L-Bank 3實現了無間隔交錯讀取,避免了tRP對性能的影響 三、增加PFHR的方法

無論是自動預充電還是交錯工作的方法都無法消除tRCD所帶來的延遲。要解決這個問題,就要盡量讓壹個工作行在進行預充電前盡可能多的接收多個工作命令,以達到背靠背的效果,此時就只剩下CL所造成的讀取延遲了(寫入時沒有延遲)。

如何做到這壹點呢?這就是北橋芯片的責任了。在上文的時序圖中有壹個參數tRAS(Active to Precharge Command,行有效至預充電命令間隔周期)。它有壹個範圍,對於PC133標準,壹般是預充電命令至少要在行有效命令5個時鐘周期之後發出,最長間隔視芯片而異(基本在120000ns左右),否則工作行的數據將有丟失的危險。那麽這也就意味著壹個工作行從有效(選通)開始,可以有120000ns的持續工作時間而不用進行預充電。顯然,只要北橋芯片不發出預充電(包括允許自動預充電)的命令,行打開的狀態就會壹直保持。在此期間的對該行的任何讀寫操作也就不會有tRCD的延遲。可見,如果北橋芯片在能同時打開的行(頁)越多,那麽PFHR也就越大。需要強調的是,這裏的同時打開不是指對多行同時尋址(那是不可能的),而是指多行同時處於選通狀態。我們可以看到壹些SDRAM芯片組的資料中會指出可以同時打開多少個頁的指標,這可以說是決定其內存性能的壹個重要因素。

Intel 845芯片組MCH的資料:其中表明它可以支持24個頁面同時處於打開狀態

但是,可同時打開的頁數也是有限制的。從SDRAM的尋址原理講,同壹L-Bank中不可能有兩個打開的行(S-AMP只能為壹行服務),這就限制了可同時打開的頁面總數。以SDRAM有4個L-Bank,北橋最多支持8個P-Bank為例,理論上最多只能有32個頁面能同時處於打開的狀態。而如果只有壹個P-Bank,那麽就只剩下4個頁面,因為有幾個L-Bank才能有同時打開幾個行而互不幹擾。Intel 845的MHC雖然可以支持24個打開的頁面,那也是指6個P-Bank的情況下(845MCH只支持6個P-Bank)。可見845已經將同時打開頁數發揮到了極致。

不過,同時打開頁數多了,也對存取策略提出了壹定的要求。理論上,要盡量多地使用已打開的頁來保證最短的延遲周期,只有在數據不存在(讀取時)或頁存滿了(寫入時)再考慮打開新的指定頁,這也就是變向的連續讀/寫。而打開新頁時就必須要關閉壹個打開的頁,如果此時打開的頁面已是北橋所支持的最大值但還不到理論極限的話,就需要壹個替換策略,壹般都是用LRU算法來進行,這與VIA的交錯控制大同小異。