什麼是單面和雙面內存?它們有些什麼樣的特性與區別呢?下面咱們就細細道來。
何謂內存BANK
一般而言,各位注意了,是一般而言,單面內存每條擁有一組BANK,而雙面的內存則每條提供了兩組的BANK,之所以要強調一般而言我會在文中加以闡明。……什麼?不知道BANK為何物?好!那我就來解釋一下BANK先。 內存的BANK其實分為兩部分,邏輯BANK和物理BANK。
先來講講邏輯BANK。芯片的內部,內存的數據是以位(bit)為單位寫入一張大的矩陣中,每個單元格我們稱為CELL,只要指定一個行(Row),再指定一個列(Column),就可以准確地定位到某個CELL,這就是內存芯片尋址的基本原理。這樣的一個陣列我們就叫它內存的邏輯BANK(Logical 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。
CPU工作時與BANK的關系
CPU工作時,每次只訪問一個物理BANK,這是因為一個物理BANK的位寬是64Bit。CPU訪問的數據是存放在內存條的內存顆粒上的,現在的芯片組設計時都是要求內存條上每個芯片均承擔提供數據的任務,即內存條上的每個顆粒都要負擔這64bit數據的一部分。
這就要牽扯到我們上文所說得位