昨天,當我在考慮Why can’t OS use entire 64-bits for addressing?時,我發現了另一個有趣的事情。以英特爾酷睿2雙核處理器爲例。需要更多關於處理器地址行的說明
從Intel Core 2 Duo Processor E8000 and E7000 Series - Datasheet的「4.2 Alphabetical Signals Reference」我知道它有36條地址線& 64條數據線。數據表將地址線稱爲A [35:3],數據線稱爲D [63:0]。
這意味着什麼?這是我從上面的理解(很少有沒有回答的問題):
- 因爲有36條地址線。總尋址內存爲2^36 = 64GB,每個物理內存位置(字節)以36位數尋址。
- 因爲,沒有提到A [2:0]。這意味着在將虛擬地址轉換爲物理地址之後(在地址表的幫助下),MMU(尋呼單元更具體)只將33個最高有效位放在地址線A [35:3]上。 RAM發送全部8個可能的字節(3個LSB,A [2:0])即對於這8個字節範圍內的任何請求。 RAM發送相同的8字節數據。對?我想這是爲了提高效率。
- 接下來會發生什麼?我的意思是MMU需要1個字節的數據,但RAM發送8個字節。它將如何處理它?
- 自啓用英特爾PAE後,此地址總線寬度是36位嗎?
- 我在新的處理器數據表(Intel® Core™ i7 Processor Extreme Edition)中找不到地址總線和數據總線寬度。 :(幫幫我!
想一想 - 數據總線是64位(8字節)寬。這不是一個真正的編程問題,所以你可能想把它帶到superuser.com。 – 2010-07-11 20:26:50
@Paul R:思考不是問題。問題是我的思想有多準確。這就是爲什麼而不是直接問我的問題。我寫了我認爲的 – claws 2010-07-11 21:53:42