地址生成單元 (AGU),有時也稱為地址計算單元 (ACU)[1] ,是一個中央處理器內的執行單元,其計算地址使CPU訪問主記憶體。通過獨立的電路處理地址計算與CPU其他部分並列執行,以此減少執行各種機器指令所需的CPU周期數,從而提高效能。[2][3]

Thumb
英特爾的Nehalem微架構CPU保留站後包含多個地址生成單元。

在執行各種操作時,CPU需要計算從主記憶體中取得數據所需的主記憶體地址。例如,必須先計算陣列元素在主記憶體中的位置,然後CPU才能從實際的主記憶體位置取得數據。這些地址生成計算涉及不同的整數算術運算,例如加法、減法、模運算或位移。通常,計算主記憶體地址涉及多個通用機器指令,這些指令不一定能快速解碼和執行。通過將AGU整合到CPU微架構中,並引入使用AGU的專用指令,各種地址生成計算可以從CPU的其他操作中分流,這樣通常使地址生成計算可以在單個CPU周期內快速執行。[2][3]

AGU的功能取決於特定的CPU及其體系結構。因此,一些AGU實現並公開了更多的地址計算操作,而另一些AGU還引入了可以同時對多個運算元進行操作的更進階的專用指令。[2][3]此外,一些CPU體系結構包括多個AGU,因此可以同時執行多個地址計算操作,從而利用進階CPU設計的超純量特性進一步獲得效能改進。例如,英特爾將多個AGU合併到其Sandy Bridge和Haswell 微體系結構中,允許通過並列執行多個主記憶體訪問指令來增加CPU主記憶體子系統的頻寬。[4][5][6]

另見

參考文獻

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.