2017-03-29
AMD Zen微架構詳解!!
Ryzen 7 1800X 八核心處理器測試
文: John Lam / 評測中心


基於全新 Zen 微架構、 AMD Ryzen 7 處理器強勢登場, CPU 內部設計完全推倒重來,大幅改良 Front-End 、運算單元及 Cache 架構,更加入 SMT 同步多線程技術,整體性能提升達 52% ,相較對手同級產品售價便宜一半。 HKEPC 編輯部針對 AMD Zen 微架構進行詳細剖析,並找來全新 Ryzen 7 1800X 處理器,與上代 AMD FX-9590 、對手 INTEL Core i7-6900K 、 7700K 進行詳細測試。



L1 緩存改用 Write-Back 設計

 

Zen

AMD Zen 微架構的 L1 Instruction Cache 設計

 

為提升處理器吞吐量, AMD Zen 微架構採用全新 Cache Subsystem 設計, L1 Instruction Cache 不再由兩個 CPU Core 之間共享,回復至每個 CPU 均擁有獨立 64KB 容量,同時關聯性由 2-Way 加倍至 4-Way ,令 AMD Zen 微架構的 L1 Instruction Cache 的命中率大幅提升。

 

相較上代 Excavator 微架構, L1 Data Cache 容量倍增至 32KB 、關聯性亦倍增至 8-Way ,寫入方式更由 Write-through 變成 Write-back ,令緩存資料無需即時進行同步寫入,直至暫存至一定數量後再整批寫回記憶體,實現更低的延遲值並減少不必要的閒置發生。

 

由於絕大部份運算流程中, L1 Data Cache 資料載入比例相較儲存更頻繁,全新 Zen 微架構採用非對稱存的 Load/Store 單元, Load Queue 單元支援 72 個 Out of Order 無序載入隊列,每個週期可處理 2 筆 16-Byte 資料讀取, Store Queue 單元則設有 44 個儲存隊列,每個週期可處理 1 筆 16-Byte 資料寫入,在有限資源下實現更高的緩存讀取頻寬。  

 

Zen
AMD Zen 微架構的 L1 Data Cache 設計

 

TLB 翻譯後備緩衝器的條目數量大幅提升,能儲存更多虛擬記憶體轉換成物理定址結果, L1 TLB 支援 64 個條目及支援所有頁面大小, L2 TLB 則支援 1,536 個條目但不支援 1G 頁面,能降低預測分支單元的載入延遲。

 

L1 Data Cache 每個週期可直接向 L2 Cache 傳取 32-Byte 資料,當資料寫回 L1 Data Cache 時,可按需要同時寫入 INT 整數或 FP 浮點的 Register File 暫存器,提升核心的並行處理能力。

 

L2 緩存轉用 Inclusive 架構

 

全新 Zen 微架構的 CPU Core 擁有 512KB 、 8-Way L2 Cache ,相較上代 L2 緩存頻寬提升達 5 倍,容量與關聯性亦較 INTEL Skylake 微架構的 L2 多出一倍, AMD 終於放棄由 K6 時代一直沿用的 Exclusive 緩存策略,改為與 INTEL 微架構相同的 Inclusive 設計,優化 Cache Subsystem 的緩存表現。

 

Zen

AMD Zen 微架構的 L2 Cache 設計

 

Cache 容量、關聯性越高, CPU 核心時脈越難提升,昔日 AMD 受限於制程技術及良率因素, L2 Cache 容量難以提升,因此一直沿用 Exclusive 緩存策略, L1 Cache 中的資料不會包含在 L2 Cache 中,騰出更多緩存空間來提升命中率,但現今處理器的 L2 Cache 容量已遠遠倍數於 L1 Cache , Exclusive 緩存策略顯得不合時宜。

 

AMD Zen 微架構改用 Inclusive L2 緩存策略,當出現 L1 Miss 、 L2 Hit 時,只需將命中的 L2 Cache Line 複製至 L1 中,無需將 L2 Cache Line 與其中一組 L1 Cache Line 互換,如要淘汰其中一組 Cache Line 時,亦只需檢查 L2 即可無需再訪問 L1 ,實現更低的延遲值。

 

L3 Cache 與 CCX 模組設計

 

AMD Zen 微架構 L3 Cache 設計非常奇怪,採用 CCX (CPU Complex) 模組設計,由 4 個 CPU 核心組成的 16-way 8MB L3 Cache 緩存,但設計卻非真正的 LLC 架構,每個 CPU Core 各自擁有 1 組 L3 控制器及 2 個 1MB L3 Cache 區塊,讓 CCX 模組內的 CPU Core 互相存取。

 

採用 Low-Order Address Interleave 低層地址交錯設計,當 CPU Core 存取 CCX 模組內其他 L3 Cache 區塊,其存取延遲值大致相同,讀取本地 L3 Cache 區塊則具有較佳的延遲值。

 

Zen

AMD Zen 微架構的 CCX 模組設計

 
Zen 8 核心處理器擁有 2 組 CCX 模組,透過全新高速 Infinity Fabric 連結進行互連,讓不同 CCX 模組內的 CPU Core 可互相存取 L3 Cache 區塊,同時亦用作連接 IMC 、 PCIe 及 IO 等高速單元,實現高頻寬、低延遲的內部傳輸效果。
 
相較上代 Excavator 微架構, L1/L2 頻寬提升了 2 倍, L3 Cache 頻寬更大幅提升 5 倍之多,由於 L3 Cache 採用 Mostly Exclusive 緩存策略, L3 Cache 等同一個巨型的隊列單元,存放沒被命中的 L1/L2 資料提升 Cache 系統的預取性能。
發表評論