第三節:地址線和總線
我們把DRAM中的每個字節的唯一
數值標識稱之為地址,就像街區中的房屋一樣。地址是一個整型值。內存中的第一個字節的地址為0。靠近0地址的內存區域稱之為內存底端或者低位內存。靠近內
存末端的內存區域稱之為高位內存。處理器的對物理內存的尋址能力,稱之為處理器的物理地址空間。(見圖1.3)
圖1-3
處理器的物理地址空間表明了最大的可尋址字節數,而不是當前的實際物理內存的字節數。人們通常不愿意花錢購買填充滿整個地址空間數量的內存DRAM芯片。購買4GB的DRAM目前還只是在高端企業級服務器上。
處理器的物理地址空間由處理器的地址線數量
決定。地址線是一批處理器和DRAM芯片連接的導線。每條地址線指定給定字節的一個地址位。例如Intel
Pentium處理器有32條地址線。這意味著每個字節賦予了一個32位的地址,于是它的地址空間構成了的可尋址空間232(4GB)。8088處理器具
有20條地址線,所以它的尋址能力為 220, 或者 1,048,576, 字節.
注釋:如
果在Pentium4的平臺上啟用了虛擬內存,有一個稱之為物理地址擴展(Physical Address Extension
)(PAE)的技術可以再啟用4條附加的地址線。這樣一來Pentium處理器的處理地址空間由36條地址線指定,變為236 bytes
(64GB)的地址空間。
處理器使用一個控制總線和數據總線,實現對物理內存的訪問和擴展。總線是指一系列將處理器與相關硬件子系統連接的線路集合。控制總線是用來當處理器想對內存進行讀寫操作時候發送相應狀態的。數據總線用來在處理器和內存之間進行數據傳輸的通道。(如圖1.4)
圖1.4
當處理器從內存讀取的時候,將執行以下的過程:
1.處理器將欲讀取的字節的地址放置到地址線上。
2.處理器向控制總線出發讀取信號。
3.DRAM芯片組從數據總線返回指定的字節。
當處理器向內存寫入的時候,將執行以下的過程:
1.處理器將欲寫入的字節的地址放置到地址線上。
2.處理器向控制總線發送寫入信號。
3.處理器向數據總線發送欲向內存寫入的字節。
這樣的描述方式有些過于簡單。例
如,Pentium處理器同時讀取和寫入4字節的數據。這便是為什么Pentium被稱為32位處理器芯片的原因。處理器使用首字節地址用于記錄32位的
數據實際數據負載。(例如:最低端的字節地址)然而我認為一般的操作還是非常容易理解的。