又是一年6月,ARM在舊金山發(fā)布了全新的Cortex A76架構(gòu)。 數(shù)碼愛好者們對ARM的架構(gòu)代號想必已經(jīng)耳熟能詳,但或許并不知道這些架構(gòu)具體出自誰手。實際上,ARM在全球擁有3家設(shè)計團(tuán)隊,分別是位于美國德州的奧斯丁團(tuán)隊、位于法國南部的索菲亞團(tuán)隊以及位于英國大本營的劍橋團(tuán)隊。 這三家團(tuán)隊各有分工,奧斯丁團(tuán)隊負(fù)責(zé)設(shè)計高性能架構(gòu),代表作為Cortex A57和Cortex A72;劍橋團(tuán)隊專門設(shè)計Cortex A53和Cortex A55等低功耗架構(gòu);而索菲亞團(tuán)隊則主打均衡,Cortex A73和Cortex A75便是出自其手。 不過自摩爾定律在28nm節(jié)點放緩開始,奧斯丁團(tuán)隊在Cortex A57和Cortex A72架構(gòu)上兩次遭遇瓶頸,性能強勁是不假,可功耗和發(fā)熱也堪稱恐怖。自那以后的幾年里,奧斯丁團(tuán)隊一直沒有什么動作。就在人們幾乎已經(jīng)忘了這群美國壯漢的時候,奧斯汀團(tuán)隊帶著全新的Cortex A76回歸了。 從設(shè)計的角度來看,Cortex A76對于ARM來說至關(guān)重要,他是一款完全重新打造的全新微架構(gòu),是“第二代奧斯汀家族”的領(lǐng)軍者,代表了一個全新的開始。ARM稱它“是一款具有的筆記本級性能的處理器?!?/p> Cortex A76在最新7nm工藝下,運行頻率預(yù)計將達(dá)到3GHz,相比基于10nm工藝制造、運行在2.8GHz的Cortex A75,能耗將降低40%,性能可提升35%,機(jī)器學(xué)習(xí)能力可提升4倍。 Cortex A76架構(gòu)淺析Cortex A76是一個亂序超標(biāo)量內(nèi)核,前端為亂序4發(fā)射指令解碼,后端為13級流水線,執(zhí)行延遲為11個階段。ARM在設(shè)計了一個“定向預(yù)測獲取”單元,這代表分支預(yù)測單元會反饋到取指單元中。ARM還在業(yè)內(nèi)首創(chuàng)使用了“混合間接預(yù)測單元”,將預(yù)測單元與取指單元分離,且支持內(nèi)核中的各模塊獨立運行,運行期間更易于進(jìn)行時鐘門控以節(jié)省功耗。 Cortex A76分支預(yù)測單元由3級BTB(分支目標(biāo)緩存)支持,包括一個16鏈路nanoBTB,一個64鏈路microBTB和一個6000鏈路主BTB。在Cortex A73和Cortex A75世代,ARM便聲稱其分支預(yù)測單元幾乎能預(yù)測所有分支,Cortex A76的這個新單元似乎還要比之前更強一些。 取指單元的運行速度為每時鐘周期16Byte,分支預(yù)測單元的運行速度是取指單元帶寬的兩倍,為每周期32Byte,可在由12個“塊”組成的取指單元之前提供一個取指隊列。這樣做的目的是,分支預(yù)測錯誤時可以在管道中隱藏分支氣泡,并避免使取指單元和核心的其余部分陷入停滯,ARM稱Cortex A76最多可應(yīng)對每周期出現(xiàn)8次分支預(yù)測錯誤。 Cortex A76的取指單元最多可提供16條32bit指令,取指流水線由2個指令對齊和解碼循環(huán)組成。在指令解碼和重命名階段,Cortex A76每周期可吞吐4條指令,并以平均每條指令1.06Mops的比率輸出宏指令。 此前,Cortex A72和Cortex A75每周期可吞吐3條指令,Cortex A73則只能吞吐2條。根據(jù)雷鋒網(wǎng)掌握的資料來看,Cortex A73相比Cortex A72解碼帶寬下降是為了優(yōu)化能效,而隨著對移動處理器性能需求的提升,Cortex A75恢復(fù)了每周期3吞吐的設(shè)計。此次Cortex A76則更進(jìn)一步,成為了公版架構(gòu)中解碼帶寬最高的,但仍低于三星和蘋果的定制架構(gòu)(三星M3每周期6吞吐/蘋果A11每周期7吞吐)。 在指令重命名階段,ARM分離了重命名單元,并將時鐘門控用于整數(shù)/ASIMD/標(biāo)記操作,重命名和調(diào)度從A73和A75的每次2周期縮短為1周期。宏指令按照每條指令1.2μop的比例擴(kuò)展為微操作,每周期執(zhí)行8μops調(diào)度,相比Cortex A75的6μops/周期和Cortex A73的4μops/周期有明顯增強。 Cortex A76的亂序提交窗口大小為128,緩沖區(qū)被分成負(fù)責(zé)指令管理和注冊回收的兩個結(jié)構(gòu),稱為混合提交系統(tǒng)。由于性能縮放比只有1/7,即緩沖區(qū)增加7%只能提升1%性能,所以ARM并沒有著重增強這部分設(shè)計。 流水線方面,整數(shù)部分包含6個問題隊列和執(zhí)行端口,共3條整數(shù)執(zhí)行流水線,由1個16深度的問題隊列提供服務(wù)。其中2條整數(shù)流水線可執(zhí)行簡單算術(shù)運算,1條可執(zhí)行乘法、除法和CRC等復(fù)雜操作。ASIMD/浮點部分則包含2條流水線,它們由2個16深度的問題隊列服務(wù)。 在整數(shù)運算方面,Cortex A76將乘法和乘法累加延遲從Cortex A75的3個周期降低到2個周期,總吞吐量保持不變。而由于Cortex A76有3條整數(shù)流水線,在執(zhí)行簡單算術(shù)運算時的吞吐量相比Cortex A75的2條流水線增加了50%。 在負(fù)責(zé)浮點和ASIMD操作的“VX”(矢量執(zhí)行)流水線中,ARM也做了重要的改進(jìn)。Cortex A76的浮點算術(shù)運算延遲從3個周期降低到2個周期,乘法累加也從5個周期降低到4個周期。ARM表示,相比Cortex A75,Cortex A76的雙128bit ASIMD可帶來雙倍的執(zhí)行帶寬,四倍精度操作的執(zhí)行吞吐量增加了一倍。 ARM還在Cortex A76上引入了第四代預(yù)讀取單元,每個核心有4個不同的預(yù)讀取引擎并行運行,查看各種數(shù)據(jù)模式并將數(shù)據(jù)加載到緩存中,以更接近完美緩存命中操作的目標(biāo)。ARM在Cortex A76的緩存體系設(shè)計上沒有做絲毫妥協(xié),在帶寬和延遲兩個方面都做到了堪稱完美的水平,據(jù)說可將緩存帶寬提高90%之多。 性能和功耗預(yù)測綜合以上這些架構(gòu)改進(jìn),ARM稱Cortex A76相比Cortex A75,每周期整數(shù)性能和浮點性能可分別增長25%和35%,再加上高達(dá)90%的緩存帶寬提升,Cortex A76的GeekBench4跑分提升了28%,JavaScript性能提升了約35%(Octane,JetStream)。 ARM給出了運行SPECint2006測試的性能對比,在運行GCC編譯的基準(zhǔn)二進(jìn)制文件時,Cortex A76在2.4GHz時便干掉了驍龍845,能效比提升了15%。這也意味著,如果能如期達(dá)到3GHz頻率,Cortex A76的性能將和使用三星自研M3架構(gòu)的全新Exynos 9810持平。 除了性能增強之外,Cortex A76的能效比也有一定提升。在750mW的內(nèi)核功耗預(yù)算下,7nm的Cortex A76相比10nm的Cortex A75可提升40%性能。ARM表示,Cortex A76可實現(xiàn)四核持續(xù)滿載時保持滿速不降頻運行。 當(dāng)然,SoC的性能并不僅僅依賴每周期性能的提升,半導(dǎo)體工藝所帶來的頻率紅利也非常重要,如果臺積電7nm工藝順利投產(chǎn),讓Cortex A76運行在3GHz+的頻率上,性能提升將更加可觀。 不過此前ARM立下的頻率目標(biāo)往往有些過于樂觀,例如最初預(yù)計Cortex A73將運行在2.8GHz,Cortex A75則為3GHz,而二者的實際最高運行頻率僅為2.45GHz和2.7GHz。對半導(dǎo)體供應(yīng)商來說,工藝成熟度和不同流水線間的差異均會影響芯片運行頻率,壓低頻率上限是為了保證供貨量不得已而為之。 此外據(jù)雷鋒網(wǎng)了解,每種核心架構(gòu)在某一工藝下,都有一個能效比最佳的頻率區(qū)間。以使用三星自研M3架構(gòu)的全新Exynos 9810為例,這顆芯片的CPU大核集群在單核、雙核、四核滿載的情況下頻率分別為2.7GHz、2.3GHz、1.8GHz,功耗均為3.5瓦左右。換言之,經(jīng)過逆推可知,M3核心從1.8GHz到2.3GHz,提升500MHz頻率功耗便翻了一倍,而從2.3GHz提升到2.7GHz,僅400MHz的提升就讓功耗再次翻倍。 而從1.8GHz到2.7GHz,即便性能也線性同步提升,幅度也只有50%,功耗則翻了兩番??梢娫竭^最佳能效比區(qū)間后,沖擊高頻需要付出極大的功耗代價。而驍龍845的Kryo 385 Gold核心的表現(xiàn)也與之類似,在超過大約位于2.1GHz的閾值后,功耗飆升的幅度甚至比三星的M3核心猶有過之。 因此,首批使用Cortex A76架構(gòu)的SoC,頻率有很大可能依然達(dá)不到3GHz。雷鋒網(wǎng)認(rèn)為,考慮到核心架構(gòu)的變化和規(guī)模的增長,其實際頻率會在2.5GHz左右,但不排除隨著后期工藝成熟或?qū)⑵鋺?yīng)用在筆記本等對功耗較為寬限的設(shè)備時可沖上3GHz+的高頻。 結(jié)論與思考最近幾年里,人們一直在期待能與蘋果一較高下的強勁架構(gòu)。三星在不久前推出的自研架構(gòu)M3雖然在性能上追近了蘋果A11,代價卻是單核3.5W的恐怖功耗。在這種情況下,ARM依然選擇穩(wěn)扎穩(wěn)打的進(jìn)行世代更替,這次奧斯丁團(tuán)隊的Cortex A76并不是性能怪獸,它充分顯示了一個平衡的微架構(gòu)有多么重要。 據(jù)悉,高通和華為海思已經(jīng)在準(zhǔn)備Cortex A76 SoC的研發(fā)和生產(chǎn),我們很可能會在今年年底前看到它在商業(yè)產(chǎn)品中出貨。而三星方面則比較微妙,Cortex A76的性能并沒有超越M3,所以在理論上三星只需重點改善M4(如果有的話)的能效比即可。 不出意外的話,基于Cortex A76的架構(gòu)將在接下來的幾年里至少進(jìn)行兩次迭代升級。ARM已經(jīng)連續(xù)5年達(dá)成年度規(guī)劃目標(biāo),并且年復(fù)合增長率為20-25%,隨著移動處理器迅速接近X86處理器的性能,未來幾年的處理器市場將會更加有趣。 via:Anandtech |