介紹完記憶體的規格之後,接下來的主題將是近二十年內個人電腦主要使用的記憶體的歷代發展,一切依然要回到之前就使用過的這張譜系圖:

MHA7036

DRAM 與 SRAM

DRAM 的全名是 Dynamic Random Access Memory (動態隨機存取記憶體),其實命名上正好是相對 SRAM 的 Static Random Access Memory (靜態隨機存取記憶體) 而來,這兩種都是具揮發性的記憶體,原理上也大致相同 (運用通電與否來決定資料是 0 或 1),主要的差異在於實作的方法不同,SRAM 的結構主要為 flip-flop 正反器,而 DRAM 則是使用電容器搭配電晶體的組合來達成相同的目的,這兩種不同的實作方式也導致最後兩種記憶體產生了截然不同的特色:

  • DRAM 需要週期性的更新 (Refresh),也就是重新對電容器充電,否則資料會消失,而 SRAM 則不會 (其實這就是命名中 Dynamic 與 Static 的由來),但 SRAM 在完全斷電後資料也會消失,因此仍然是具揮發性記憶體的一種。
  • DRAM 的構造比較簡單,SRAM 則相對而言複雜了許多。
  • 由於 SRAM 結構複雜,所以成本也比 DRAM 高了很多。
  • 由於 DRAM 結構簡單,所以要做出大容量的 DRAM 遠比 SRAM 容易。
  • 因此最後 DRAM 成為電腦記憶體的主流,SRAM 則主要只用於快取的部分。

SDRAM

活躍年代:1996 ~ 2001
針腳配置:168 針
封裝方式:TSOP
工作電壓:3.3 V
單條模組最大容量:1 GB (UDIMM)、2 GB (RDIMM)
單一顆粒晶片 Bank 數量:1 或 2 或 4

APE8960

同步動態隨機存取記憶體 (Synchronous Dynamic Random Access Memory, SDRAM) 是 DRAM 的其中一種,在近二十年之內在個人電腦領域獲得極為廣泛的運用 (在 SDRAM 之前個人電腦還使用過 EDO、FPM 等老式 DRAM,不過由於年代久遠所以這裡就不談了),迄今最新的個人電腦與伺服器也仍然是使用由 SDRAM 改進而來的記憶體。

SDRAM 與其他種類的 DRAM 最大的不同就在於「同步」,這裡的同步指的是透過在記憶體上實作同步時脈產生器,使記憶體與處理器的運作時脈一致 (也就是後來我們所知道的「外頻」的概念),這樣做的好處在於從此記憶體的頻率可以獲得很大的提升 (超過 100 MHz 以上的記憶體運作時脈成為可能),而且透過與處理器同步時脈,記憶體可以更精準的在處理器需要資料時就降資料送出,讓處理器不必耗費多餘的時間在等待記憶體的下一個時脈週期上。

SDRAM 時期的記憶體模組根據顆粒晶片的分布方式,可分為單面與雙面模組,由於記憶體顆粒晶片的技術提升使得單顆顆粒晶片可以裝載的資料量增加,因此同樣容量的記憶體模組可能同時有單面與雙面版本流通於市面上,這在某些主機板上會出現一些問題 (例如只認得到一半容量),所以當時採購記憶體要考慮的事情其實還蠻複雜的。

由於後來發展的 DDR 記憶體為雙倍資料傳輸率,因此僅有單倍資料傳輸速率能力的 SDRAM 後來也被稱為 SDR (Single Data Rate) SDRAM。

規格制式運作時脈每秒資料傳輸率
PC66 (主流)SDRAM66 MHz528 MB/s
PC100 (主流)SDRAM100 MHz800 MB/s
PC133SDRAM133 MHz1064 MB/s

DDR SDRAM

活躍年代:2001 ~ 2005
針腳配置:184 針
封裝方式:TSOP 與 BGA 兼有
工作電壓:3.3 V
單條模組最大容量:1 GB (UDIMM)、2 GB (RDIMM)
單一顆粒晶片 Bank 數量:4

DES9633

DDR 是 Double Data Rate 的縮寫,也就是雙倍資料傳輸率的意思,與原本的 SDRAM 最大的差別在於本來 SDRAM 只有在時脈振幅要往高點走的時候才能進行資料傳輸,而 DDR SDRAM 由於運用了大小為 2n (足足是 SDRAM 的兩倍) 的預取技術 (Prefetch,在存取資料的時候,除了要求的資料本身外,順便將其他資料也放進 I/O 緩衝區中一次發出),在時脈振幅將往高點或低點的時候都可以各進行一次傳輸 (也就是一個時脈周期內可以有兩次資料傳輸,這項技術稱為 Double Transition),所以單位時間內的資料傳輸率就是前代的兩倍了。

MSM8566

然後到這裡就會衍伸出另一個問題了,剛剛才說 SDRAM 讓記憶體時脈可以輕易大幅拉高,那為什麼還要發展 DDR SDRAM 而不是單純繼續把 SDRAM 的時脈拉高就好呢?

實際上就是廠商又再次碰壁了 (還記得之前我說過 DRAM 要保存資料要靠持續、定期地對電容器充電嗎?充電速度也不可能永無止盡的提升),提升到 166 MHz 之後廠商就發現已經很難再將記憶體的時脈往上拉,所以時至今日就算是 DDR4 SDRAM,其實內部時脈最高也都僅到 300 MHz 附近而已。

除此之外,如同過去 SDRAM 一般,為了讓單一記憶體模組的容量能夠有效提高,DDR SDRAM 也會使用分組的方式來在單一記憶體模組上面放上更多的記憶體顆粒晶片,但不同於 SDRAM 時期以單、雙面 (Double Side 或 Single Side) 做區分,從 DDR SDRAM 開始我們將記憶體顆粒晶片的分組稱為 Rank ,至於原因呢,就如同上一節談過的,單面有可能不只一個 Rank,雙面也有可能只有一個 Rank,Rank 的數量要視乎實際顆粒晶片之間拉線的方式而定,而不一定與外觀相符。

規格制式運作時脈每秒資料傳輸率
DDR-200 (少見)DDR100 MHz1600 MB/s
DDR-266 (主流)DDR133 MHz2133 MB/s
DDR-333 (主流)DDR166 MHz2666 MB/s
DDR-400 (主流)DDR200 MHz3200 MB/s