2017年11月21日 星期二

詳述DRAM、SDRAM及DDR SDRAM的概念

2014/08/14 來源:EDN電子設計技術 DRAM(動態隨機訪問存儲器)對設計人員特別具有吸引力,因為它提供了廣泛的性能,用於各種計算機和嵌入式系統的存儲系統設計中。本文概括闡述了DRAM 的概念,及介紹了SDRAM、DDRSDRAM、DDR2 SDRAM、DDR3 SDRAM、DDR4 SDRAM、LPDDR、GDDR。 DRAM DRAM較其它內存類型的一個優勢是它能夠以IC(集成電路)上每個內存單元更少的電路實現。DRAM 的內存單元基於電容器上貯存的電荷。典型的DRAM 單元使用一個電容器及一個或三個FET(場效應電晶體)製成。典型的SRAM (靜態隨機訪問內存)內存單元採取六個FET 器件,降低了相同尺寸時每個IC 的內存單元數量。與DRAM 相比,SRAM 使用起來更簡便,接口更容易,數據訪問時間更快。 DRAM核心結構由多個內存單元組成,這些內存單元分成由行和列組成的兩維陣列(參見圖1)。訪問內存單元需要兩步。先尋找某個行的地址,然後在選定行中尋找特定列的地址。換句話說,先在DRAM IC 內部讀取整個行,然後列地址選擇DRAM IC I/O(輸入/ 輸出)針腳要讀取或要寫入該行的哪一列。 DRAM讀取具有破壞性,也就是說,在讀操作中會破壞內存單元行中的數據。因此,必需在該行上的讀或寫操作結束時,把行數據寫回到同一行中。這一操作稱為預充電,是行上的最後一項操作。必須完成這一操作之後,才能訪問新的行 ,這一操作稱為關閉打開的行。 對計算機內存訪問進行分析後表明,內存訪問中最常用的類型是讀取順序的內存地址。這是合理的,因為讀取計算機指令一般要比數據讀取或寫入更加常用。此外,大多數指令讀取在內存中順序進行,直到發生到指令分支或跳到子例程。 ... 圖1. DRAMs 內存單元分成由行和列組成的兩維陣列。 DRAM的一個行稱為內存頁面,一旦打開行,您可以訪問該行中多個順序的或不同的列地址。這提高了內存訪問速度,降低了內存時延,因為在訪問同一個內存頁面中的內存單元時,其不必把行地址重新發送給DRAM。結果,行地址是計算機的高階地址位,列地址是低階地址位。由於行地址和列地址在不同的時間發送,因此行地址和列地址復用到相同的DRAM 針腳上,以降低封裝針腳數量、成本和尺寸。一般來說,行地址尺寸要大於列地址,因為使用的功率與列數有關。 早期的RAM擁有控制信號,如RAS# (行地址選擇低有效)和CAS# (列地址選擇低有效),選擇執行的行和列尋址操作。其它DRAM 控制信號包括用來選擇寫入或讀取操作的WE# (寫啟動低有效)、用來選擇DRAM的CS#(晶片選擇低有效)及OE# (輸出啟動低有效)。早期的DRAM擁有異步控制信號,並有各種定時規範,涵蓋了其順序和時間關係,來確定DRAM 工作模式。 早期的DRAM讀取周期有四個步驟。第一步,RAS# 與地址總線上的行地址變低。第二步,CAS# 與地址總線上的列地址變低。第三步,OE#變低,讀取數據出現在DQ 數據針腳上。在DQ 針腳上提供數據時,從第一步第三步的時間稱為時延。最後一步是RAS#, CAS# 和OE# 變高(不活動),等待內部預充電操作在破壞性讀取後完成行數據的恢復工作。從第一步開始到最後一步結束的時間是內存周期時間。上述信號的信號定時與邊沿順序有關,是異步的。這些早期DRAM沒有同步時鐘操作。 DRAM 內存單元必需刷新,避免丟失數據內容。這要求丟失電荷前刷新電容器。刷新內存由內存控制器負責,刷新時間指標因不同DRAM內存而不同。內存控制器對行地址進行僅RAS# 循環,進行刷新。在僅RAS# 循環結束時,進行預充電操作,恢復僅RAS# 循環中尋址的行數據。一般來說,內存控制器有一個行計數器,其順序生成僅RAS# 刷新周期所需的所有行地址。 刷新策略有兩個(參見圖2)。第一個策略內存控制器在刷新周期突發中順序刷新所有行,然後把內存控制返回處理器,以進行正常操作。在到達最大刷新時間前,會發生下一個刷新操作突發。第二個刷新策略是內存控制器使用正常處理器內存操作隔行掃描刷新周期。這種刷新方法在最大刷新時間內展開刷新周期。 ... 圖2. DRAM 刷新實現方案包括分布式刷新和突發刷新。 早期的DRAM 演進及實現了DRAM IC 上的刷新計數器,處理順序生成的行地址。在DRAM IC 內部,刷新計數器是復用器輸入,控制著內存陣列行地址。另一個復用器輸入來自外部地址輸入針腳的行地址。這個內部刷新計數器不需要內存控制器中的外部刷新計數器電路。部分DRAM 在RAS# 周期前支持一個CAS#,以使用內部生成的行地址發起刷新周期。 SDRAM 在接口到同步處理器時,DRAM 的異步操作帶來了許多設計挑戰。 SDRAM (同步DRAM)是為把DRAM操作同步到計算機系統其餘部分,而不需要根據CE# (晶片啟動活動低)、RAS#、CAS#和WE#邊沿轉換順序定義所有內存操作模式而設計的。 SDRAM增加了時鐘信號和內存命令的概念。內存命令的類型取決於SDRAM 時鐘上升沿上的CE#, RAS#,CAS# 和WE# 信號狀態。產品資料根據CE#, RAS#,CAS# 和WE# 信號狀態,以表格形式描述內存命令。 例如,Activate (激活)命令向SDRAM發送一個行地址,打開內存的一個行(頁面)。然後是一個Deselect (反選)命令序列,在對列地址發送Read 或Write 命令前滿足定時要求。一旦使用Activate命令打開內存的行(頁面),那麼可以在內存的該行(頁面)上運行多個Read和Write命令。要求Precharge(預充電)命令,關閉該行,然後才能打開另一行。 表1. DDR SDRAM 數據速率和時鐘速度。 DDR SDRAM 通過提高時鐘速率、突發數據及每個時鐘周期傳送兩個數據位(參見表1),DDR (雙倍數據速率) SDRAM 提高了內存數據速率性能。DDR SDRAM 在一條讀取命令或一條寫入命令中突發多個內存位置。讀取內存操作必需發送一條Activate 命令,後面跟著一條Read 命令。內存在時延後以每個時鐘周期兩個內存位置的數據速率應答由兩個、四個或八個內存位置組成的突發。因此,從兩個連續的時鐘周期中讀取四個內存位置,或把四個內存位置寫入兩個連續的時鐘周期中。 DDR SDRAM 有多個內存條,提供多個隔行掃描的內存訪問,從而提高內存帶寬。內存條是一個內存陣列,兩個內存條是兩個內存陣列,四個內存條是四個內存陣列,依此類推(參見圖3)。四個內存條要求兩個位用於內存條地址(BA0 和BA1)。 ... 圖3. DDR SDRAM中多個內存條提高了訪問靈活性,改善了性能。 例如,有四個內存條的DDR SDRAM的工作方式如下。首先,Activate命令在第一個內存條中打開一行。第二個Activate命令在第二個內存條中打開一行。現在,可以把Read 或Write 命令的任意組合發送到打開行的第一個內存條或第二個內存條。在內存條上的Read 和Write 操作結束時,Precharge 命令關閉行,內存條對Activate 命令準備就緒,可以打開一個新行。 注意,DDR SDRAM要求的功率與打開行的內存條數量有關。打開的行越多,要求的功率越高,行尺寸越大,要求的功率越高。因此,對低功率應用,一次在每個內存條中只應打開一行,而不是一次打開行的多個內存條。 在內存條地址位連接到內存系統中的低階地址位時,支持隔行掃描連續內存條中的連續內存字。在內存條地址位連接到內存系統中的高階地址時,連續內存字位於同一個內存條中。 存儲器基本概念 存儲器(Memory)是計算機系統中的記憶設備,用來存放程序和數據。計算機中全部信息,包括輸入的原始數據、電腦程式、中間運行結果和最終運行結果都保存在存儲器中。它根據控制器指定的位置存入和取出信息。有了存儲器,計算機才有記憶功能,才能保證正常工作。按用途存儲器可分為主存儲器(內存)和輔助存儲器(外存),也有分為外部存儲器和內部存儲器的分類方法。外存通常是磁性介質或光碟等,能長期保存信息。內存指主板上的存儲部件,用來存放當前正在執行的數據和程序,但僅用於暫時存放程序和數據,關閉電源或斷電,數據會丟失。 SDRAM是什麼意思 SDRAM是指同步動態隨機存取內存(synchronous dynamic random access memory,簡稱SDRAM)是有一個同步接口的動態隨機存取內存(dynamic random access memory,簡稱DRAM)。通常動態隨機存取內存(DRAM)是有一個異步接口的,這樣它可以隨時響應控制輸入的變化。而SDRAM有一個同步接口,在響應控制輸入前會等待一個時鐘信號,這樣就能和計算機的系統總線同步。時鐘被用來驅動一個有限狀態機,對進入的指令進行流水線操作。這使得SDRAM與沒有同步接口的異步DRAM(asynchronous DRAM)相比,可以有一個更複雜的操作模式。 什麼是SDRAM Synchronous Dynamic Random Access Memory,同步動態隨機存儲器,同步是指 Memory工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。 DDR3 SDRAM DDR3 SDRAM 是一種性能演進版本,增強了SDRAM技術,它從800 Mb/s開始,這是大多數DDR2 SDRAM支持的最高數據速率。DDR3 SDRAM支持六檔數據速率和時鐘速度(參見表3)。DDR3-800/1066/1333SDRAM 於2007 年投入使用,DDR3-1600/1866SDRAM 則預計在2008 年投入使用,DDR3-2133SDRAM 則預計在2009 投入使用。 DDR3-1066 SDRAM的能耗低於DDR2-800 SDRAM,因為DDR3 SDRAM 的工作電壓是1.5 V,是DDR2SDRAM 的83%,DDR2 SDRAM 的工作電壓是1.8 伏。此外,DDR3 SDRAM數據DQ驅動器的阻抗是34歐姆,DDR2 SDRAM 的阻抗較低,是18 歐姆。 ... 表3. 預計的DDR3 SDRAM 數據速率和時鐘速度。 DDR3 SDRAM 將從512 Mb 內存開始,將來將發展到8 Gb 內存。與DDR2 SDRAM 一樣,DDR3 SDRAM 數據輸出配置包括x4、x8 和x16。DDR3 SDRAM 有8 個內存條,DDR2 SDRAM 則有4 個或8 個內存條,具體視內存大小而定。 DDR2 和DDR3 SDRAM 都有4 個模式寄存器。DDR2 定義了前兩個模式寄存器,另兩個模式寄存器則預留給將來使用。DDR3使用全部4個模式寄存器。一個重要差異是DDR2 模式寄存器規定了讀出操作的CAS 時延,寫入時延則是1減去模式寄存器讀出時延設置。DDR3模式寄存器對CAS 讀出時延和寫入時延的設置是唯一的。 DDR3 SDRAM使用8n預取架構,在4個時鐘周期中傳送8 個數據字。DDR2 SDRAM 使用4n 預取架構,在2個時鐘周期中傳送4 個數據字。 DDR3 SDRAM 模式寄存器可以編程為支持飛行突變,這會把傳送8個數據字縮短到傳送4個數據字,這在讀出或寫入命令期間把地址行12 設為低來實現。飛行突變在概念上與DDR2 和DDR3 SDRAM 中地址行10 的讀出和寫入自動預充電功能類似。 值得一提的另一個DDR3 SDRAM屬性是差分的數據選通信號DQS,DDR2 SDRAM數據通信號則可以由模式寄存器編程為單端或差分。DDR3 SDRAM 還有一個新引腳,這個引腳為活動低異步RESET# 引腳,通過把SDRAM 置於已知狀態,而不管當前狀態如何,改善系統穩定性。DDR3 SDRAM 使用的FBGA 封裝類型與DDR2 SDRAM 相同。 DDR3 DIMM為DIMM上的命令、時鐘和地址提供了端接。採用DDR2 DIMM 的內存系統端接主板上的命令、時鐘和地址。DIMM上的DDR3 DIMM端接支持飛行拓撲,SDRAM 上的每個命令、時鐘和地址引腳都連接到一條軌跡上,然後這條軌跡終結在DIMM的軌跡端。這改善了信號完整性,其運行速度要快於DDR2 DIMM樹型結構。 飛行拓撲為內存控制器引入了新的DDR3 SDRAM寫入電平功能,考慮了寫入過程中時鐘CK和數據選通信號DQS 之間的定時偏移。DDR3 DIMM 的主要不同於DDR2 DIMM,防止把錯誤的DIMM 插入主板中。 DDR4 SDRAM DDR4 SDRAM 已經拉開帷幕,預計將在2012 年發布。其目標是在1.2V 或以下的電源上運行這些新存儲器晶片,同時實現每秒200 萬以上的數據傳送速度。 GDDR 和LPDDR 其它DDR變種,如GDDR (圖形DDR)和LPDDR (低功率DDR),在業內的地位也在不斷提高。 GDDR是一種圖形卡專用存儲技術,目前規定的變種有四個:GDDR2、GDDR3、GDDR4 和GDDR5。GDDR的技術與傳統DDR SDRAM 非常類似,但功率要求不同。其降低了功率要求,以簡化冷卻,提供更高性能的存儲器模塊。GDDR也是為更好地處理處理圖形要求設計的。 LPDDR 採用166 MHz 時鐘速率,在要求低功耗的可攜式消費電子中正越來越流行。LPDDR2 改善了能源效率,其工作電壓最低1.2V,時鐘速度為100 -533 MHz。

沒有留言:

張貼留言