0
我經常看到有關架構指令的信息,數據必須與單詞,半字等邊界對齊。雖然遵守這些規則並不困難,但我只是想知道,如果有人能夠說明爲什麼(通常)這種要求存在?爲什麼指令/數據對齊存在?
編輯:基本上找到我的答案在這裏:why is data structure alignment important for performance?
我經常看到有關架構指令的信息,數據必須與單詞,半字等邊界對齊。雖然遵守這些規則並不困難,但我只是想知道,如果有人能夠說明爲什麼(通常)這種要求存在?爲什麼指令/數據對齊存在?
編輯:基本上找到我的答案在這裏:why is data structure alignment important for performance?
這是因爲高效的數據總線的設計問題。通過對齊的便條地址,數據可以高效地裝入數據總線。
對於32位字加載,如果它對齊,所有連接CPU和DRAM MEMORY的32位數據總線。否則,計算機必須先使用數據總線的下半部分,然後再次加載數據總線的較高部分。更重要的是,目前的高速緩存架構設計還利用了對齊約束的優勢
部分原因是爲了保持硬件簡單。 – Mysticial