日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SDRAM内存技术

發布時間:2023/12/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SDRAM内存技术 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第一章 SDRAM 基礎


等級:初級

2007.8.17
Wick


??????? 關于此篇文章:
??????? 出于本人工作的需要,和一些朋友的建議,我嘗試對至今學到的內存知識進行簡單的概
括。這一系列文章,將會描述SDRAM系列內存(SDRAM, DDR, DDR2等)的結構和工作原理,旨
在給一些對內存技術感興趣的朋友提供一個交流的窗口。
??????? 另外,此文章的內容來自網上搜羅或者一些資料整理,在此之上,有本人提供整理和加
工,本人只以交流與學習為用,若有興趣轉載,敬請保留文章中提到的內容出處和文章的作
者信息。

----

??????? 和很多人一樣,我開始對內存技術絲毫不敢興趣,因為從原理上看,內存的運作似乎沒
有什么深入的必要,當大家研究磁盤的時候,這樣作會對文件系統概念,操作系統的磁盤管
理認識有較多幫助。而更不能像吃透CPU那樣,從深層次影響軟件設計,研究內存可能只會
如同認識光驅那樣,將不會對非專業人士帶來直觀的好處。
??????? 但是進入這個行業以后,我就覺得原先對內存測試的理解有著明顯的誤區,作為高級應
用程序來說,他們直接進行存取的對象就是內存,內存的硬件架構直接影響著計算機體系的
設計。內存測試又是如此的紛繁變幻,其間的頭緒萬千體現出了豐富的商業思想。
??????? 經歷過眾多標準的洗禮,SDRAM從各種存儲媒體中脫引而出,由此引出了DDR, DDRII,
這些耳熟能詳的字眼已經成為計算機日常工作中無可避免的話題。因此本文就嘗試從SDRAM
基本理論入手,來學習和交流其間用到的內存技術。如有理解錯誤之處,希望讀者可以指出。

1. 簡介

  SDRAM,Synchronous Dynamic Random Access Memory,中文譯名是同步動態隨機存儲
器。這是一個復合的詞語,我們嘗試分開來解釋。

??? * Random,隨機,指的就是RAM芯片具有隨機存儲特征,因此可以指定地址自由地進行
????? 讀寫。你可以想象一下磁帶的工作方式,當前位置不能滿足要求的時候,我們就需要
????? 倒帶到目的地址來完成操作。

??? * Dynamic,動態,相對于SRAM中的Static而言,DRAM是需要定時的刷新其存儲陣列,
????? 以保證芯片上的數據不會丟失,這與DRAM的物理特性有關,我們在此不做探討。

??? * Synchronous,同步,指的是此類型RAM的時鐘頻率和CPU前端總線的頻率是一致的,
????? 其實SDRAM潛藏的重要特征即是,內部命令的發送和數據傳輸頻率都是以這個頻率為
????? 基準的。

2. SDRAM的基本概念介紹


???
??? 一個簡單的 64Mx8的SDRAM芯片,采用DIMM插口標準(圖片來自wikipedia.org)

??? * 模組(Module)
????? 這就是我們常說的內存條。用這樣的專業術語,是為了和另一中專用設備Socket區分
????? 開來,Socket是內存廠家為測試而設計的內存設備,最大的區別就是,Socket具有可
????? 插拔的內存芯片接口,上面的內存芯片可以任意拆卸。
????? 在以下的說明中,筆者嘗試用Module來取代內存條的說法,需要讀者予以注意。

??? * 單/雙列內存模組SIMM/DIMM(Single/Double In-Line Memory Module)
????? 單列是說,模組只有一側與主板的內存插槽實現通信,即便單列模組的接口部分有兩
????? 列金手指。而雙列就容易明白了,雙列的內存模組用到了兩側的金手指,各邊對應一
????? 排引腳。
?????
??? * 內存芯片(Chip)
????? 當我們拿到內存條的時候,一個直觀的感受就是,在內存條上面可以看到一顆顆黑色
????? 的矩形芯片,它就是內存芯片,在香港或臺灣的市面上,廠商們稱之為“晶片”。

??? * 芯片的數據寬度
????? 每個芯片存放了大量的存儲單元,這里一塊存儲單元的長度,就是芯片的數據寬度。
????? 如果要讓內存和CPU通信,那么一定要使內存一次性提供了CPU需要的數據。我們提到
????? 過SDRAM的時鐘頻率與前端總線頻率是一致的,那么SDRAM就要在一個時鐘周期內提供
????? CPU數據寬度等大小的數據。此時,內存上面的芯片來分擔了數據的組合。
????? 一個重要的概念就是,SDRAM提供一個物理Bank(Physical Bank, P-Bank)來與CPU
????? 通信,而SDRAM就需要通過對具有數據寬度的芯片分配,組合成P-Bank來達成這一條
????? 件。

??? * 物理Bank(P-Bank)
????? 注意:在一些廠家口中,物理Bank又稱之為Rank。

????? 既然P-Bank實現CPU對等長度的通信,那么P-Bank的長度自然也就等于CPU數據寬度。
????? 比如說Intel32構架下的數據寬度是64Bits,那么通用的SDRAM一個P-Bank的寬度就是
????? 64Bits。
????? 那么內存芯片怎么構成一個P-Bank呢,我們可不可以只作一個內存芯片來嵌入到內存
????? 條上?P-Bank在一個內存條上也是只有一個的?
????? 答案不是如此的。
????? 首先,做成一個64Bits的芯片技術上完全可行,但是技術成本和實用性來說都是劃不
????? 來的,比如以筆者所處的行業來說,如果這樣的芯片測試不通過,那么給予其降級是
????? 非常麻煩的。通常情況下,SDRAM的芯片大小是8Bits,最大也不過16Bits,假設來拿
????? 8Bits的SDRAM芯片來焊接成一個使用在Pentium之上的內存條,他就需要使用64/8 =
????? 8個芯片來組成一個P-Bank。
????? P-Bank在一個內存條上也未必只有一個的,這是考慮到一個P-Bank的內存條其容量受
????? 限,導致內存條空間嚴重浪費了,當然也不能滿足其現在日益增長的內存容量需求。

????? 在如今的市面上,SDRAM最多包含兩個P-Bank,這同樣是技術和成本等因素的折中考
????? 慮。但是一定要澄清一個觀點:金手指排數,不等于P-Bank數量。

3. 進入到芯片的世界


???
??? 一個L-Bank,一塊內存存儲陣列(圖片來自www.stor-age.com)

3.1 RAM使用存儲陣列來實現隨機存取
????? 這是很簡單的道理,就如同數據結構中數組和鏈表的概念類似,通過提供數組的各維
的索引來自由讀寫數組元素,RAM也是如此。
????? RAM提供了二維的存儲陣列,在其之上分布了一塊塊的內存單元,這里的的一個二維
的存儲陣列,就是一個邏輯Bank(Logic Bank, L-Bank)。
????? 而這些內存單元的容量將被分為一個個Bit,每一個bit被存放在一個單獨的內存體之
中,這里的內存體,就是內存中最小的存儲單元。
?????
3.2 邏輯Bank (L-Bank)
????? 上面我們說過,SDRAM一次傳輸的數據量就是芯片數據寬度,那么很顯然,存儲單元
的容量就是芯片的數據寬度,L-Bank一次提供了芯片的數據寬度,也就是相當于存儲單元
的容量了。
????? L-Bank數量同樣不是單一的,因為單一的邏輯Bank會造成非常嚴重的地址沖突,這在
以后會詳述。最普遍的情況下,SDRAM大多擁有4個L-Bank。

4. 小小的總結

4.1 簡單看內存尋址
????? 我們整理一下現在學到的知識,拿內存讀操作來簡單的說明尋址這一過程。
????? 首先,需要確定L-Bank,然后在選定的L-Bank上確定行數和列數,找到L-Bank之上的
滿足要求的存儲單元,我們在將從各個芯片上取到的數據來組合成一個P-Bank,傳遞給
北橋芯片上的內存控制器。

4.2 一些簡單的計算,來鞏固學到的知識。
????? 內存芯片容量 = L-Bank行數 * L-Bank列數 * L-Bank數量 * 芯片數據寬度
????? 單個P-Bank容量 = 內存芯片容量 * (CPU數據寬度 / 內存數據寬度)
????? 模組容量 = 單個P-Bank容量 * P-Bank數量



下一章章節,我們將簡單介紹內存的封裝技術。


總結

以上是生活随笔為你收集整理的SDRAM内存技术的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。