ARM A710、A510大小核齊發:專為中國保留32位兼容、性能暴漲62%
除了超大核心Cortex-X2,ARM今天還帶來了高性能大核心Cortex-A710、高能效小核心Cortex-A510,分別取代現在的A78、A55。之前猜測它們會命名為A79、A56,沒想到ARM又開啟了三位數字命名,越來越不按常理出牌了。
A710、A510也是基於ARMv9 64位指令集,架構上和X2是相通的,因此可以集成於同一顆SoC,但需要注意的是,X2、A510都是純64位,不再兼容32位,A710則繼續支持OL0 AArch32。
這是應中國客戶要求特殊設計的,因為中國市場還有太多應用停留在32位。
先來看A710,前端和X2一樣改進了分支預測,精度更高,一級指令緩存TLB也從32條增至48條,不過macro-OP緩存仍然是1.5K(X2 3K)。
macro-OP緩存、分支單元的寬度從6縮減到了5,主要是功耗、能效優化考慮,也是X、A系列的重要區分。
核心設計也大大強化了性能、能效,包括數據預取器的改進,並且優化了核心與DSU的聯繫,核心與三級緩存、內存之間的延遲更低。
IPC性能提升指標,4MB二級緩存、8MB三級緩存的情況下,官方號稱可以達到10%,或者可以將功耗降低30%。
再看A510,繼續使用3寬度的順序執行架構,但也藉鑑了X系列在分支預測、數據預取方面的一些技術,繼續提升能效。
另外,它還引入了合併核心(merged-core)的新設計,可以將兩個核心組合在一起,有點AMD推土機架構的意味。
但不同的是,AMD推土機架構兩個核心共享前端、FP/SIMD後端,導致整體執行效率低下,A510每個核心則有自己完整的前端、核心、整數後端、一級緩存,只是共享了二級緩存(最大512KB)、FP/NEON/SVE流水線。
當然,如果客戶喜歡,也可以繼續使用獨立核心,但是面積效率會低一些。
前端方面,具備128位預取流水線,每個時鐘週期可以拾取4條指令,解碼器寬度從2增加到3。
分支預測沒有透露細節,只是說頂級的多級設計,另外一級緩存可以32KB或者6 4K B。
核心方面,可以設置2個64位流水線或者2個128位流水線,後者是A55的兩倍。
儘管是順序架構,後端依然加寬包括3個整數ALU單元、一個複雜MAC/DIV單元、一個分支派送端口。
載入存儲方面,相比A55改進極大,從載入存儲流水線,變成了載入、載入/存儲流水線,每時鐘週期可執行的載入數量翻了一番,另外流水線寬度也從64位翻番到128位,因此總的載入帶寬是A55的四倍。
性能方面,A510 32KB一級緩存、256KB二級緩存、8MB三級緩存,對比A55 32KB一級緩存、128KB二級緩存、4MB三級緩存,提升幅度35-62%不等,是三個新核心變化最大的,不過,A55畢竟是四年前的老核心了。