版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第第頁Armv9核心A710、A715和A510微架構(gòu)解讀1、引言
在上一篇文章“從A76到A78——在變化中學(xué)習(Arm)微架構(gòu)”中,我們了解了Arm處理器微架構(gòu)的基本組成,介紹了Armv8架構(gòu)最后幾代經(jīng)典處理器架構(gòu)?,F(xiàn)在,Arm公司已經(jīng)在2023年3月推出了其(最新)的Armv9架構(gòu)系列處理器,距上一代Armv8系列架構(gòu)發(fā)布相隔了整整10年時間。新一代的Armv9(產(chǎn)品),不但會帶來更強大的計算性能,在安全、(AI)等領(lǐng)域也帶來了全新的設(shè)計。可以說,Armv9系列繼承了Armv8架構(gòu)的優(yōu)勢,同時也為Arm公司的下一個十年拉開了帷幕。本文將著重介紹基于Armv9架構(gòu)的A710、A715、A510等處理器架構(gòu),讓大家了解Armv9架構(gòu)和Armv8架構(gòu)的差異。
ARM處理器路線圖
6、A710和A715微架構(gòu)介紹
6.1A78回顧
文章都寫了一半了,終于到聊到正題了?還沒有!因為A710是基于A78微架構(gòu)優(yōu)化而來,我們先要先回顧一下A78。這里和大家快速回顧下A78的微架構(gòu),4路decode,加上MopCache可以一次最多提供6路Mops指令進入執(zhí)行單元,整數(shù)執(zhí)行單元提供2個Branch,4個ALU,浮點單元提供2個FPU,存儲單元提供2個LSAGU,1個LDAGU和2個ST-Data通路。
6.2A710和A715簡介
A710是Armv9家族的第一顆大核心,A710也是第一次正式引入了SVE2擴展指令集,A710沒有放棄32bit的支持,可以同時兼容32bit和64bit應(yīng)用。
A715是Armv9家族的第二顆大核心,值得注意的是核心序號只加了5,難道Arm覺得還達不到A720的預(yù)期?我們后續(xù)揭曉。A715相比A710最大的變化是輕裝上陣,拋棄了32bit的支持,讓設(shè)計師可以更加聚焦設(shè)計一款純64bit的核心。
6.3A710能效
Arm在A710這一代產(chǎn)品希望重點優(yōu)化能效。根據(jù)Arm提供的性能功耗曲線數(shù)據(jù),A710依然是一顆高能效比的核心,相比A78在同樣的能耗下性能可以提升約10%,同樣的性能條件下功耗可以降低約30%,需要注意2點,第一是這個數(shù)據(jù)是在高頻率區(qū)間取得的,低頻率區(qū)間的能效曲線和A78較為接近;第二是性能的提升是在L3緩存增加情況下得出的,緩存增大理論也貢獻了一部分性能得分。
可惜A710的出生似乎有些生不逢時,大家寄予厚望的采用了A710的第一代產(chǎn)品高通驍龍8Gen1處理器,由于采用了(三星)工藝代工,整體能效表現(xiàn)一般,直到高通公司第二年將工藝切換TSMC并量產(chǎn)了驍龍8+Gen1芯片,整體芯片能效有了明顯提升,才發(fā)揮出了A710應(yīng)有的實力。
驍龍8+Gen1和8Gen1能效對比數(shù)據(jù)
6.4A710架構(gòu)設(shè)計
A710在前端設(shè)計部分上和A78差異不大,同樣提供了1.5K的MOPcache,提供了可動態(tài)配置3264KB的L1緩存和可動態(tài)配置256512KB的L2緩存。Arm在A710上的優(yōu)化點是提升了分支預(yù)測的能力,將關(guān)鍵的分支預(yù)測結(jié)構(gòu)體容量空間翻了一番,此外L1的TLB容量也翻了一倍。
A710微架構(gòu)的一個關(guān)鍵的修改在指令分發(fā)Dispatch模塊,該模塊發(fā)生了一些有趣的變化,大家還記得A77新引入MOPcache時就是4路decode和6路dispatch,A78同樣繼承如此,到了A710上Arm將其減少到了5路dispatch。減少一條通路意味著可以節(jié)省芯片電路和面積,另一方向性能上也難免會有一定的損失。為了彌補這個損失,Arm宣稱做了一系列基于MOPcache的優(yōu)化,并將分支預(yù)測到分支執(zhí)行的流水線縮減到10個(時鐘)周期,從而達成宣稱的能效優(yōu)化指標。
目前(網(wǎng)絡(luò))上A710的(資料)并不多,特別缺乏后端設(shè)計部分的(詳細資料),根據(jù)推測后端設(shè)計和A78比差異不大,推測ROB應(yīng)該會增加,推測訪存LSU的單元和A78沒有明顯變化,后續(xù)我們可以在A715上再次論證。
Arm還提到A710通過優(yōu)化數(shù)據(jù)預(yù)?。╬refetcher)來提升性能和能效,減少CPU的數(shù)據(jù)預(yù)取次數(shù),可以減少對于DSU的訪問參數(shù),同業(yè)也可以降低對于(DRAM)的訪問次數(shù),從圖中數(shù)據(jù)看,相比A78,A710在DSU和DRAM的訪問上都有明顯改善。
簡單總結(jié)下,A710相比A78的設(shè)計僅相隔了一年,并不是一個準備多年的全新架構(gòu)升級,在A78的基礎(chǔ)上,A710保留了32bit的支持,優(yōu)化了流水線和數(shù)據(jù)預(yù)取能力,前端分支預(yù)測和指令通路是最明顯的變化。這次Armv9架構(gòu)升級涉及到X2、A710和A510三款核心,相比之下X2和A510的變化更多,我們后續(xù)會詳細分析。
6.5A715能效
目前最新的Arm大核心是A715,從官方數(shù)據(jù)中我們可以看出A715這一代的目標并不是以提升性能為主,同樣功耗下性能只提升了5%,或許這也是被叫做A715的一個原因。在能效方面,相同性能下可以降低20%的功耗。
再來看一下DVFS曲線,A715的曲線和A710比較接近,同樣功耗下性能有小幅度提升。后續(xù)這幾代Arm大核心微架構(gòu)上都不會有像A75、A76那樣大幅變化,基本是保持A715對A710這樣的穩(wěn)定功耗優(yōu)化,性能小幅度提升。
從數(shù)據(jù)上看,A715整體的能效優(yōu)化幅度不高,可以認為A715是A710的一個小改款。結(jié)合微架構(gòu)分析整體看,Arm需要一顆更經(jīng)濟的核心來支撐整個產(chǎn)品線以及平衡性能和功耗。
6.6A715架構(gòu)設(shè)計
很幸運,網(wǎng)絡(luò)有高手(Cardyak)放出了A715的微架構(gòu)圖,我們可以借此一窺A77到A715的變化。
A715的前端分支預(yù)測能力有了進一步提升,Arm在Armv9上很重視分支預(yù)測能力,每一代都有一些優(yōu)化。A710相比A78提升了分支預(yù)測能力,這次A715進一步優(yōu)化,以提升IPC和能效。細節(jié)上,A715將Direc(ti)onPredictor的容量提升了一倍,從而進一步提升分支預(yù)測的準確性。A715每個周期支持預(yù)測2個分支,比A710多支持了條件分支的預(yù)測能力。此外,在分支預(yù)測方案上,Arm傳統(tǒng)支持0級和2級預(yù)測模型,這次A715將2級預(yù)測模型拆分成3級,增加了一個fasterturnaroud功能,在發(fā)現(xiàn)預(yù)測錯誤時可以快速返回,提升分支預(yù)測效率。最后是訪問指令緩存(Icache)方面,A715將指令緩存的查找?guī)捯蔡嵘艘槐?,從而支持更好的訪問指令緩存的效率。
解碼模塊依然是Armv9重點優(yōu)化的部分,也是A715變化最大的模塊。在A715上有一個關(guān)鍵的修改,Arm出于成本考慮,將自A77開始加入的MOPcache模塊移除了。MOPcache可以緩存一些常用的核心指令,降低從L1取指令的負擔,但是Arm宣稱可以通過其他優(yōu)化方法,進一步提升性能和能效。第一點,A715是一顆純64bit的大核心,憑借這一點,可以節(jié)省原來為了兼容32bit而增加的(晶體管)電路;第二是A715上增加了一路decode通路,從4通路提升到5通路,在A710之后Dispatch也改成了5通路,A715這一代Fetch和Dispatch到后端模塊的通道正好對齊都是5通路,可以發(fā)揮最高的效率;第三是采用了小尺寸的decoder,將原來A710的統(tǒng)一大尺寸decoder拆分成4個小尺寸的decoder,便于分配資源和節(jié)省能耗;最后是A715提升了復(fù)雜指令(NEONSVESVE2)的吞吐率,讓它們可以快速發(fā)送到對應(yīng)的執(zhí)行單元。
在ROB重排序緩沖方面,A715提供了192個entry,相比A77的160個entry提升了20%,和A77至A715的性能提升可以匹配上。執(zhí)行單元的Issueentry還是120個,這個大小自A76開始就沒有變化。在執(zhí)行單元上,A715相比A710和A78都沒有明顯變化,還是2個Branch,4個ALU,浮點單元提供2個FPU,存儲單元提供2個LSAGU,1個LDAGU和2個ST-Data通路,看來Arm認為這塊的設(shè)計非常合理不需要改變。
在存儲單元上,A715增大了Lo(ad)Replay隊列尺寸,可以提供更多的數(shù)據(jù)預(yù)取和L2訪問機會。此外A715提供了2倍的DataCacheBanks,可以支持更多同步讀寫數(shù)據(jù),降低并發(fā)沖突從而降低能耗。A715的L2的TLBentry增大了50%,達到了1.5K個entry,提升了數(shù)據(jù)預(yù)取的準確性,也可以降低內(nèi)存的訪問,進而提升綜合性能。
6.7小結(jié)
階段總結(jié)下,A715相比A710的微架構(gòu)修改較大,A715取消了32bit的支持,取消了MOPcache,優(yōu)化了分支預(yù)測、指令單元和存儲單元,統(tǒng)一了指令通路數(shù)量,還提出了小decoder的模型。目前A715已經(jīng)在高通驍龍8Gen2,MTK天璣9200等產(chǎn)品成功應(yīng)用,搭配最新的4nm工藝,性能和能效表現(xiàn)可圈可點。
7、A510微架構(gòu)介紹
7.1A510簡介
我們并沒有花很多篇幅去介紹A55這顆處理器,因為A55實在是“久經(jīng)沙場”,伴隨著A75登場,歷經(jīng)A75-A78四代產(chǎn)品。到Armv9時代,Arm認為必須更新一下A5x系列的小核心產(chǎn)品線了,于是我們看到了最新的A510系列小核心處理器。
21年Arm更新了A510產(chǎn)品線,22年Arm又做了小幅度優(yōu)化,更新了A510r產(chǎn)品線。由于Arm維持了每年迭代的產(chǎn)品快速更新策略,進入Armv9后一年需要更新X2、A710和A510三款產(chǎn)品,難免造成資源分散。例如對于32bit的支持問題上,A710支持32bit,X2和A510不支持,但是在22年更新的A510r第二代產(chǎn)品,又加入了32bit的支持。
7.2A510能效
官方數(shù)據(jù)顯示A510可以提升35%的性能,能效優(yōu)化20%,ML性能是以前A55的3倍。從能效曲線看,性能提升35%都是保守的,后續(xù)的架構(gòu)分析也可以支撐這一說法,但是能效的20%優(yōu)化要加限定詞,限定在A55高頻率段區(qū)間比較合理,因為整體的功耗和性能提升成正比,簡單說就是A510的極限性能和極限功耗都增加了。
對于A510的能效,Arm也提出后續(xù)會不斷優(yōu)化,例如A510r重新設(shè)計了一些電路,宣稱可以提升5%的能效。下一代的Hayes也會繼續(xù)優(yōu)化能效。為什么A510的性能提升,能效沒有進一步提升呢?在后面的架構(gòu)設(shè)計部分大家應(yīng)該可以得出一些推論。
7.3A510架構(gòu)設(shè)計
上面是A510的微架構(gòu)圖和A55的架構(gòu)簡圖,從圖中可以看到A510相比A710的大核心設(shè)計,確實有很多簡化的地方,但是相比A55還是有明顯增強的。
A510和A55一樣,是一顆不支持亂序執(zhí)行(OoO-Outofoder)的核心,不支持OoO意味著沒有重排序緩沖(ROB)模塊,可以節(jié)省芯片面積,缺點則是無法充分填充和利用流水線,指令執(zhí)行的效率較低。
此外,第一代的A510不支持32bit應(yīng)用,第二年Arm在A510r上,又把32bit應(yīng)用的支持加回來了。
A510為了進一步優(yōu)化芯片面積,采用了拼接核心設(shè)計,如圖中所示,兩顆A510被封裝在一起,共享L2緩存、L2TLB等模塊。這種(硬件)設(shè)計對于軟件調(diào)度器的設(shè)計提供了優(yōu)化思路,因為共享L2,在2顆共享核心之間調(diào)度的效率會高于跨L2,所以軟件在選擇任務(wù)遷移時,如果還是移動到小核心執(zhí)行,應(yīng)當優(yōu)先去選擇共享L2的那個CPU去執(zhí)行,效率會最高。
在前端設(shè)計上,A510相比A55最大的改變是將2寬度流水線拓展到了3寬度,如指令Fetch能力從2提升到3,等于增加了一條通路,這也是A510同頻率性能可以提升的關(guān)鍵影響因素。此外,A55每個周期可以fetch64-bit,A510每時鐘周期則可以fetch128-bit指令。同時,A510還借鑒了Armv9系列架構(gòu)的分支預(yù)測方案設(shè)計,相比A55可以提供更為準確的分支預(yù)測能力,減少流水線的損失。
A510相比A55的通路增加是完整的,在指令Fetch模塊后,指令Decode和Issue模塊的通路也從2增加到3,提升了50%。
運算單元部分,小核心僅有1個Branch單元沒有變化,ALU數(shù)量(含MAC、DIV)從2提升到4,也提升了50%。FPU(又叫做VPU)被挪到了2個核心共享,雖然無法直接對比,根據(jù)Arm提供的數(shù)據(jù)看FP也有50%的性能提升。
存儲模塊上,A510相比A55也有明顯提升,A55提供了1個Load和1個Store通路,A510雖然還是2通路,但是一個支持Load,另一個同時支持Load和Store,Load能力有提升。同時,Load帶寬從A55的64bit提升到128bit,如圖中顯示L1帶寬可以提升4倍,L2和L3分別也提升了2倍。此外,DataPrefetcher模塊也引入了Armv9的系列優(yōu)化,可以提升數(shù)據(jù)預(yù)取準確性。
最后,A510的兩個核心還共享了矢量運算單元(VPU),用于處理ScalarFP、NEON、SVE2等指令,Arm期望通過這種設(shè)計進一步優(yōu)化小核心的面積,優(yōu)化能效。
7.4小結(jié)
相隔4年,Arm終于更新了A5x系列小核心,看完后還是感覺有點不夠過癮,意猶未盡的感覺。雖然A510相比A55,不論在整數(shù)、浮點還是存儲性能上都有明顯的提升(見上圖),但是整體處理器的能效并沒有明顯的改善,究其根因,這次A510的升級,并沒有引入OoO亂序執(zhí)行等大核心的先進特性,而是基于A55的架構(gòu)上通過增加通路和運算模塊達成的性能提升,總體能效改善不夠明顯。
A510的這次升級,也導(dǎo)致終端廠商在實際產(chǎn)品開發(fā)中,針對A510的小核心的處理需要更加謹慎,例如盡可能利用和A55性能接近的區(qū)間,獲取最大能效收益,在軟件調(diào)度時需要考慮2個共享核心內(nèi)優(yōu)先調(diào)度以獲取最低的開銷等等。
相信Arm公司對于A5x會持續(xù)迭代優(yōu)化,在后續(xù)的A510r和Haye
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 共享知識產(chǎn)權(quán)協(xié)議版3篇
- 公司間借款協(xié)議書案例3篇
- 會議服務(wù)合同規(guī)范版本專業(yè)示例3篇
- 借款合同延期范例3篇
- 合同變更管理技巧3篇
- 產(chǎn)品委托加工協(xié)議書3篇
- 墻體廣告合同范例
- 自助洗車合同范例
- 焊工承包協(xié)議合同范例
- 武漢軟件工程職業(yè)學(xué)院《電子測量》2023-2024學(xué)年第一學(xué)期期末試卷
- 蘇州預(yù)防性試驗、交接試驗費用標準
- 最新【SD高達G世紀-超越世界】各強力機體開發(fā)路線
- 泡沫混凝土安全技術(shù)交底
- 完整MAM-KY02S螺桿空壓機控制器MODBUSⅡ通信協(xié)議說明
- 《納米材料工程》教學(xué)大綱要點
- 長春市勞動合同樣本(共10頁)
- 南京祿口機場二期擴建工程項目融資分析報告(第一稿)
- 《做陽光少年主題班會》PPT課件(1)
- 供熱企業(yè)安全生產(chǎn)檢查全套記錄表格
- 【原創(chuàng)】仁愛英語 七年級上冊情景交際+看圖寫話(有答案)
- 臺灣華嚴實驗室水結(jié)晶實驗報告與念佛殊勝利益簡體版
評論
0/150
提交評論