您的位置:網站首頁 > 家電維修資料網 > 正文 >
主板不支持大容量內存原因分析
來源: 日期:2013-10-25 10:50:04 人氣:標簽:
一.內存芯片的邏輯BANK
我們知道主板上使用的32MB/64MB/128MB的內存條都是由若干內存芯片焊接在4層或6層電路板上組成的,因此首先我們必須對內存芯片的內部結構有個清楚的認識在芯片的內部,內存的數據是以位(bit)為單位寫入一張大的矩陣中,每個單元我們稱為CELL,只要指定一個行(Row),再指定一個列(Column),就可以準確地定位到某個CELL,這就是內存芯片尋址的基本原理。這個陣列我們就稱為內存芯片的BANK,也稱之為邏輯BANK(Logical BANK)。由于工藝上的原因,這個陣列不可能做得太大,所以一般內存芯片中都是將內存容量分成幾個陣列來制造,也就是說存在內存芯片中存在多個邏輯BANK,隨著芯片容量的不斷增加,邏輯BANK數量也在不斷增加,目前從32MB到1GB的芯片基本都是4個,只有早期的16Mbit和32Mbit的芯片采用的還是2個邏輯BANK的設計,譬如三星的兩種16MB芯片:K4S161622D (512K x 16Bit x 2 BANK)和K4S160822DT(1M x 8Bit x 2 BANK)。芯片組本身設計時在一個時鐘周期內只允許對一個邏輯BANK進行操作(實際上芯片的位寬就是邏輯BANK的位寬),而不是芯片組對內存芯片內所有邏輯BANK同時操作。邏輯BANK的地址線是通用的,只要再有一個邏輯BANK編號加以區別就可以了(BANK0到BANK3)。但是這個芯片的位寬決定了一次能從它那里讀出多少數據,并不是內存芯片里所有單元的數據一次全部能夠讀出,下圖就是一個容量為32MB(256Mbit)內存芯片內部邏輯BANK結構示意圖,從中你可以更清楚邏輯BANK的結構。
可以看出,DQ數據輸入/輸出線只有8根而不是32根,可以發現4個BANK是分時工作的,任一時刻只可能有一個BANK的數據被存取,0-3是它們的編號。每個邏輯BANK有8M個單元格(CELL),一些廠商(比如現代/三星)就把每個邏輯BANK的單元格數稱為數據深度(Data Depth),每個單元由8bit組成,那么一個邏輯BANK的總容量就是64Mbit(8M×8bit),4個邏輯BANK就是256Mbit,因此這顆芯片的總容量就是256Mbit(32MB)。
內存芯片的容量是一般以bit為單位的。比如說32Mbit的芯片,就是說它的容量是32Mb(b=bit=位),注意位(bit)與字節(Byte)區別,這個芯片換算成字節就是4MB(B=Byte=字節=8個bit),一般內存芯片廠家在芯片上是標明容量的,我們可以芯片上的標識知道,這個芯片有幾個邏輯BANK,每個邏輯bank的位寬是多少,每個邏輯BANK內有多少單元格(CELL),比如目前目前64MB和128MB內存條常用的64Mbit的芯片就有如下三種結構形式:
①16 Meg x 4 (4 Meg x 4 x 4 banks) [16M?4]
②8 Meg x 8 (2 Meg x 8 x 4 banks) [8M?8]
③4 Meg x 16 (1 Meg x 16 x 4 banks) [4M?16]
表示方法是:每個邏輯BANK的單元格數×邏輯BANK數量×每個單元格的位數(芯片的位寬)。芯片邏輯BANK位寬目前的工藝水平只能 多做到16位,因此大家看到幾乎所有的芯片邏輯BANK位寬只可能4/8/16三者之一。以前16Mbit的芯片基本采用的單個芯片兩個邏輯BANK,但是到了64Mbit基本就都是4個邏輯BANK設計了,今后隨著生產工藝水平的提高估計單個芯片8個甚至16個邏輯BANK的出現也不是沒有可能.
二.內存條的物理BANK
通常主板上的每個內存插槽分為兩段,這個大家從VIA主板BIOS設置中的BANK 0/1 DRAM Timing選項很容易推理得到,實際上也就是兩個BANK,不過這里的BANK概念與我們前面分析芯片內部結構時提到的BANK可不一樣。簡單地說這個BANK就是內存和主板上的北橋芯片之間用來交換數據的通道,目前以SDRAM系統為例,CPU與內存之間(就是CPU到DIMM槽)的接口位寬是64bit,也就意味著CPU一次會向內存發送或從內存讀取64bit的數據,那么這一個64bit的數據集合就是一個內存條BANK,很多廠家的產品說明里稱之為物理BANK(Physical BANK),目前絕大多數的芯片組都只能支持一根內存包含兩個物理BANK,但是針對某個具體的條子,很多人想當然,認為每個DIMM插槽使用內存條的面數來區分占用幾個BANK通道,單面的(16M,64M)只占用一個物理BANK,而雙面的(32M,128M)則需占用兩個物理BANK。實際上物理BANK與面數是無關的,PCB電路可以設計成雙面和單面,也可把全部芯片(16顆)放在一面上(至少從理論上是完全可能)。有些內存條單面就是一個物理BANK,但有些雙面才是一個物理BANK,所以不能一概而論。前一陣鬧得沸沸揚揚的大度256MB內存條就是一個典型的例子,雖然是雙面并多達16枚芯片,但仍然是單個物理BANK的。要準確知道內存條實際物理BANK數量,我們只要要將單個芯片的邏輯BANK數量和位寬以及內存條上芯片個數搞清楚。各個芯片位寬之和為64就是單物理BANK,如果是128就是雙物理BANK。目前的芯片組 多支持2個物理BANK。所以內存廠家生產的內存條都不可能超過2個物理BANK。
CPU一次只能對一個物理BANK進行訪問和操作(因為一個物理BANK是64bit的位寬),那么內存條要保證一個周期內向數據總線提供或接收64bit的數據,而這些數據都是分別存儲在內存條的的芯片中。那么內存條中有多個內存芯片,這64位數據到底是有一個芯片提供還是由所有芯片每個提供一部分呢?我們還是以上面的那顆256Mbit的芯片為例,根據芯片組的工作原理,目前還沒有那家芯片生產廠家做出位寬16位以上的芯片,所以現在的芯片組設計時都是要求內存條上每個芯片均承擔提供數據的任務,也就是說內存條上的每個芯片都要要對這64位數據做貢獻,而那顆內存芯片的位寬是8位,因此用這個芯片組成內存條只需要8顆芯片即完成了64位數據并發任務,算下來,內存條的容量就是32 MB (256Mbit)×8=256MB的容量,假如是內存芯片的位寬是4位,那么需要的芯片數量必須是16顆,這時假如使用八顆位寬還是8位的64MB(512bit)芯片(單個芯片的總容量翻了一番)組裝,盡管內存條上的總容量達到了256MB的要求,還是由于位寬不夠是不能正常工作。要能工作就必須采用16位位寬的64MB(512bit)芯片。
相關文章
- 上一篇: 新農小編為您整理更換內存條經驗二則
- 下一篇: 優化CMOS設置提高內存速度故障的分析與處理