作為今年HotChips會(huì)議的重頭戲之一,我們很高興終于看到三星披官方披露了其今年最新新的CPU設(shè)計(jì)Exynos M3。
今年1月份,媒體首次報(bào)道了三星的新微架構(gòu)的相關(guān)信息,從那時(shí)起我們就很清楚,這是一個(gè)不容忽視的關(guān)注點(diǎn):因?yàn)槿窃谛阅芊矫嫒〉昧司薮蟮奶嵘?,這在他們近些年來的硅設(shè)計(jì)產(chǎn)品上前所未見。
但在接下來的幾個(gè)月中,對于新款Exynos 9810及其M3內(nèi)核的披露卻越來越少。中間我們有過很多探索,但總不能窺到其內(nèi)心。當(dāng)中更是沒有三星的任何內(nèi)容做參考。
回顧三星這系列架構(gòu)的發(fā)展,對產(chǎn)業(yè)來說,這是一個(gè)很好的創(chuàng)新和推動(dòng)。
在2016年的HotChips上,三星首次展示了其初代微架構(gòu)Exynos M1。據(jù)了解,三星的CPU IP是在德克薩斯州奧斯汀的“三星奧斯汀研發(fā)中心”(簡稱SARC)開發(fā)的,該中心成立于2010年,目標(biāo)是為三星的S.LSI部門和Exynos芯片組建立內(nèi)部IP。在這個(gè)中心里,有來自AMD,英特爾和其他公司和高等院校的、才華橫溢的資深專家,后續(xù)的內(nèi)存控制器和自定義互連的出現(xiàn),就是他們的工作成果。當(dāng)然,三星首款定制CPU,更是其中的明星。
據(jù)我們了解,三星在2012年就開始了Exynos M1的設(shè)計(jì),在經(jīng)歷非常短的開發(fā)周期后,這款芯片就Tape-out了。它的首次亮相是在2016年推出的Galaxy S7上,當(dāng)時(shí)這款機(jī)器搭載的Exynos 8890就用了這個(gè)架構(gòu)。多年來,SARC一直在向外擴(kuò)張,2017年,圣何塞的高級計(jì)算實(shí)驗(yàn)室(ACL)開業(yè)并加入了SARC的聯(lián)合章程——為其設(shè)計(jì)組合中添加了定制GPU IP,他們希望在幾年內(nèi)將其實(shí)現(xiàn)產(chǎn)品化。
Exynos M1是一個(gè)從零開始的設(shè)計(jì),因此我們很自然期待后續(xù)幾代人能將其作為進(jìn)一步開發(fā)的起點(diǎn)。隨著M1的淘汰,SARC團(tuán)隊(duì)在2015年第一季度開始使用現(xiàn)有的M1 RTL設(shè)計(jì)M3。首先,這是一個(gè)增量開發(fā),但在2016年第一季度,由于目標(biāo)設(shè)定得更高,且有更大的性能推動(dòng),為此其計(jì)劃后來有了比較大的變化。
后來三星又推出了M2 ,值得一提的是,由于M2在整個(gè)工作負(fù)載中有20%IPC改進(jìn),所以即使生產(chǎn)芯片的時(shí)鐘速度降低了12%,但是這它的性能還是優(yōu)于M1。三星在M2中實(shí)現(xiàn)了一些最初計(jì)劃到M3的一些功能,這就使得新的M3設(shè)計(jì)變得更加激進(jìn)。
在這里,三星明確指出了業(yè)界最無情的方面之一,那就是在發(fā)布周期內(nèi),IP和芯片必須同步。我們看到SoC多個(gè)供應(yīng)商的產(chǎn)品,都是為了抓住新產(chǎn)品的商業(yè)發(fā)布窗口而緊急推向市場。
對比Exynos M3的概述以及M1的原始幻燈片,我們看到了很多的相似之處,但M3在桌面上增加了更多。SARC團(tuán)隊(duì)將微架構(gòu)寬度從4寬解碼單元(wide decode unit)增加到6,這是新μarch的整體核心特征。我們看到一個(gè)新增的帶有乘法器功能的整數(shù)ALU、第二個(gè)負(fù)載單元和一個(gè)大幅擴(kuò)展的浮點(diǎn)/ SIMD,這就將計(jì)算容量提升了三倍之多。
三星從未真正對M2微體系結(jié)構(gòu)公開,并且也沒有與之相關(guān)的特定編譯器機(jī)器模型,但在今天的披露中,我們看到的一個(gè)變化是三星進(jìn)行了從96到100個(gè)條目(entries)的微小調(diào)整,重新排序緩沖。正如我們在1月份的第一次μarch披露中所提到的那樣,M3大大擴(kuò)展到最多228個(gè)條目,這使得μarch從這一方面看,與英特爾的核心設(shè)計(jì)更為相似(盡管我們無法直接進(jìn)行不同ISA的密度比較,且隨著指令的復(fù)雜性而變化)。
當(dāng)Arm公布了A76的μarch細(xì)節(jié),特別是128-entry ROB(這看起來比M3還?。?。在他們看來,這是性能和面積/功耗之間的平衡。特別值得一提的是,ROB capacity增加了7%,但只帶來1%的性能提升。
三星解釋說,ROB capacity是一個(gè)選擇,它與微架構(gòu)的其余部分以及各種緩沖區(qū)和后端調(diào)度程序容量的設(shè)計(jì)密切相關(guān) - μarch寬度和μarch寬度相互補(bǔ)充以提高性能,而一個(gè)如如M3這樣的,更廣寬度的μarch能夠更快地填充ROB,從而從更大的容量中獲得更強(qiáng)的性能??偟膩碚f,考慮到提高性能和節(jié)省成本,M3采用了與M1 / M2不同的設(shè)計(jì)。
一個(gè)更大的前端
深入了解前端的更多細(xì)節(jié),我們看到了分支預(yù)測器(branch predicto)和fetch單元的各種改進(jìn)。M1的分支預(yù)測器與其他μarch的不同之處在于它能夠在每個(gè)周期采用兩個(gè)分支并且在后端具有兩個(gè)分支端口。M3似乎保持這個(gè)寬度,但是將μBTB從64個(gè)增加到128個(gè)。mainBTB仍保留在4K條目中,但在采用了分支之后,延遲方面已有了明顯提升。
除此之外,分支預(yù)測器質(zhì)量總體上也有了提升,這就使得錯(cuò)過分支平均減少了15%。有趣的是,三星實(shí)際上發(fā)布了一個(gè)實(shí)際的MPKI(Misses per kilo instructions)值,這是迄今為止Arm(或任何供應(yīng)商?)都沒有看到的東西。在這里,三星監(jiān)控來自各種應(yīng)用程序和用例的,不斷擴(kuò)展的4000-6000代碼跟蹤套件,以便在開發(fā)過程中驗(yàn)證其性能。
分支預(yù)測器和fetch單元分別供給decoupled address隊(duì)列和decoupled instruction指令隊(duì)列,這樣做或者可以使得這些單元在實(shí)現(xiàn)中進(jìn)行時(shí)鐘門控。
fetch單元的帶寬已加倍,現(xiàn)在每個(gè)周期最多可讀取48個(gè)字節(jié),相當(dāng)于每個(gè)周期12個(gè)32b指令 ,這就讓獲取與解碼容量的比率變?yōu)?:1,比1.5:1的比率有了明顯增加( M1中的24B / c,4解碼)。三星解釋說,以應(yīng)對更廣泛的微架構(gòu)上越來越大的分支泡沫問題,需要大幅增加這樣的設(shè)計(jì)。他們承認(rèn),平均而言,所采用分支之間的距離小于12條指令,但較大的寬度對臨時(shí)指令突發(fā)有很大幫助。
雖然這種變化具有很高的瞬時(shí)功率利用率,但是當(dāng)指令隊(duì)列(現(xiàn)在是深度的兩倍)被填充得比解碼單元解碼還快時(shí),因?yàn)樗试Sfetch單元被時(shí)鐘門控,這就使得它對所使用的功率具有整體凈正面影響,。在這里,整體能效與分支預(yù)測器質(zhì)量更緊密相關(guān),因?yàn)樵讷@取指令時(shí)實(shí)際上并不重要。
指令緩存/ L1I為64KB。我們不確定這是否比M2增加,因?yàn)樗茈y測量,但它肯定是M1μarch的兩倍。
指令轉(zhuǎn)換后備緩沖區(qū)(ITLB)已從256個(gè)條目增加到512個(gè)條目。需要注意的是,三星正在采用三級層次結(jié)構(gòu),而不是我們在Arm的處理器中看到的結(jié)構(gòu)。A75和A76分別具有第一級32和48條μITLB,其中mainTLB 共有1280個(gè)條目,包括1024個(gè)條目(頁面最大為64KB)和一個(gè)輔助256條目表(頁數(shù)> = 1MB)。
三星也有一級數(shù)據(jù)和指令TLB,但沒有透露L1 ITLB的大小。
Middle-Machine:更廣泛的解碼,重命名和發(fā)送
來到Middle-Machine(解碼器,重命名,調(diào)度),我們看到了1.5倍寬的解碼單元的這個(gè)事實(shí)。三星在此處未披露任何細(xì)節(jié),但它改進(jìn)了指令/μOP融合功能。重命名和調(diào)度吞吐量匹配解碼寬度; 這里,重要的是不要嘗試過多地解讀它并將其與Arm的CPU內(nèi)核進(jìn)行比較,因?yàn)槲覀冋谡務(wù)摬煌?yīng)商之間的不同μOP類型。在這里,三星μarch支持自M1以來的多調(diào)度形式; 解碼器發(fā)出一個(gè)μOP,可以同時(shí)調(diào)度到多個(gè)調(diào)度程序,但在ROB中,他們?nèi)匀恢粚⑵溆?jì)為一個(gè)調(diào)度和一個(gè)條目。
在整數(shù)核心中,我們看到兩個(gè)額外的調(diào)度器,因此M3現(xiàn)在能夠發(fā)出9μOps,而不是前代產(chǎn)品的7μOps。其中一個(gè)新端口是具有乘法功能的附加ALU單元,使MUL吞吐量加倍,并將簡單整數(shù)算術(shù)吞吐量提高25%。
輔助附加端口是第二負(fù)載AGU,其能夠使核心的負(fù)載帶寬加倍。
浮點(diǎn)單位“野獸”
在浮點(diǎn)核心中,我們看到了一個(gè)與先前的μarch非常不同的“野獸”。在這里,三星增加了第三條管道,增加了在FPU中發(fā)送(dispatched)和發(fā)布(issued)的μOP。就簡單的浮點(diǎn)能力而言,M3通過3個(gè)128b FMAC / FADD單元,使乘法和算術(shù)吞吐量增加了三倍。這意味著吞吐量直接從從3 FLOPS(1x FMAC(2)+ 1x FADD(1))增長到6 FLOPS(3x FMAC(2))。
因?yàn)閳?zhí)行吞吐量的急劇增加,所以必須擴(kuò)展調(diào)度程序和物理寄存器文件,也就是說將調(diào)度程序從32增加到62,將FP PRF從96增加到192個(gè)。
三星一直在努力減少執(zhí)行延遲,這也適用于浮點(diǎn)流水線。在這里,乘法單元已經(jīng)將周期從4個(gè)周期削減到3個(gè)周期,這也有利于FMAC從5個(gè)周期下降到4個(gè)周期。簡單的浮點(diǎn)添加將周期從3降到2,與此同時(shí),F(xiàn)DIV能升到Radix-64單元,且顯著減少了分區(qū)延遲。
在這里稍微提一下,我記得Arm已經(jīng)在A76中大肆宣傳其新的浮點(diǎn)管道已有好幾年了,他們?yōu)樾潞诵牡摹白钕冗M(jìn)”VX數(shù)據(jù)路徑感到非常自豪。但三星似乎在擊敗了Arm,因?yàn)镸3具有相同的浮點(diǎn)延遲,同時(shí)具有更高的執(zhí)行吞吐量以及更低的延遲ASIMD功能。當(dāng)我們可以并排測試硅產(chǎn)品時(shí),我們將來會(huì)更詳細(xì)地比較這些。
新負(fù)載/存儲單元
在加載/存儲單元中,由于增加了第二個(gè)128b的負(fù)載端口,我們再次看到讀取帶寬加倍。這里的負(fù)載使用延遲在4個(gè)周期內(nèi)保持不變。存儲帶寬同樣有相應(yīng)的提升。這一代M3具有雙帶寬優(yōu)勢,因?yàn)樗膬蓚€(gè)LD單元工作在128b /周期,而A75則為64b /周期。
總體而言,LD / ST調(diào)度程序的容量已經(jīng)增加,在存儲緩沖區(qū)方面,盡管我們沒有確切的值,但可以看到也大概增加了一倍。為了更好地服務(wù)于更廣泛的μarch,L1數(shù)據(jù)高速緩存上的outstanding misses已從8增加到12,這意味著在高速緩存misses期間,該單元可以提供多達(dá)12個(gè)并發(fā)數(shù)據(jù)請求,而核心/系統(tǒng)從更高層次獲取數(shù)據(jù)緩存級別或內(nèi)存??紤]到M3μarch的機(jī)器寬度(machine width),這看起來似乎很低 。Arm沒有公開披露A75以及此前產(chǎn)品在這方面的規(guī)格,但他們將MLP /內(nèi)存級并行性作為A76披露的一個(gè)重點(diǎn),這里L(fēng)1D提供多達(dá)20個(gè)outstanding misses。這比M3可以做的更多。
在這里,三星的預(yù)取器需要具有最高質(zhì)量,以避免任何內(nèi)存瓶頸,并實(shí)現(xiàn)最佳完美cache-hit操作的目標(biāo),實(shí)際上他們說新的“混合”(hybridized)預(yù)取器已經(jīng)有所增強(qiáng)。在這里hybridized本質(zhì)上意味著會(huì)有更多的預(yù)取者,或者單個(gè)預(yù)取器能夠處理不同類型的內(nèi)存模式。
幻燈片再次提到了我們之前在指令方面描述的新TLB層次結(jié)構(gòu)(hierarchy)。在數(shù)據(jù)方面,我們看到與M1相同的32-entry micro-DTLB,但是現(xiàn)在有一個(gè)全新的mid-level DTLB,它有512個(gè)條目。指令TLB和數(shù)據(jù)TLB現(xiàn)在都由增強(qiáng)的和更大的統(tǒng)一的具有4096個(gè)條目的L2 TLB服務(wù),而前一代中只有1024個(gè)條目。
核心管道:一切都有成本
擴(kuò)大微架構(gòu)需要付出成本代價(jià)。與Exynos M1相比,M3在其管道深度上增加了兩個(gè)周期,并添加了輔助調(diào)度階段(secondary dispatch stage),以及用于寄存器讀?。╯econd stage)的第二階段。通常CPU流水線深度計(jì)為從預(yù)測/分支到寄存器回寫的階段,在這種情況下,M3在17 stages,而M1為15 stages,A75和A76則為13 stages。
Branch misprediction penalty是16個(gè)周期,因?yàn)橛幸粋€(gè)驅(qū)動(dòng)周期(drive cycle)回到前端,再次比M1上的14c penalty多2個(gè)周期。如果μarch在各階段之間存在任何其他快速路徑,可以減少關(guān)鍵情況下的延遲,那么三星也不會(huì)談?wù)摗3和M1的缺點(diǎn)是它的Arm對應(yīng)物位于3對2級取指和解碼單元(+2級),2對1級寄存器重命名單元(+1),以及需要第二個(gè)調(diào)度階段(+1)。
三星承認(rèn),雖然這是一個(gè)負(fù)面因素,但為了讓更大的μarch按計(jì)劃完成,這是一個(gè)必要的“”惡魔,雖然機(jī)器在分支誤預(yù)測方面做得很好,但這是新μarch的一個(gè)大成本。
總的來說,三星的微體系結(jié)構(gòu)選擇實(shí)際上并沒有在實(shí)際產(chǎn)品中體現(xiàn)出很大的時(shí)鐘速度優(yōu)勢。這似乎只是讓他們在物理設(shè)計(jì)和限制關(guān)鍵路徑方面做得更好,以便在合理的電壓下實(shí)現(xiàn)更高的頻率。
一個(gè)新的3級緩存層次結(jié)構(gòu)
遠(yuǎn)離CPU核心本身,我們正在研究新的L2 / L3緩存層次結(jié)構(gòu)。與A75和A76一樣,M3引入了新的私有L2緩存作為核心和共享最后一級緩存之間的中間級別。新的私有L2包含較低的數(shù)據(jù)緩存,每個(gè)核心的容量為512KB。與共享L2相比,M1中的訪問延遲從22個(gè)周期減少到12個(gè)周期。三星在這里的表現(xiàn),與Arm的A75相比處于劣勢,因?yàn)閾?jù)后者的數(shù)據(jù)顯示,其L2 hit 延遲只有8個(gè)周期。值得注意的是,在實(shí)際物理實(shí)現(xiàn)的硅片中,由于RAM和物理布局中的設(shè)計(jì)選擇,這個(gè)數(shù)字可能會(huì)上升。實(shí)際上,Snapdragon 845在2.8GHz時(shí)的L2延遲測量為 ~4.4ns,而2.7GHz Exynos 9810的數(shù)據(jù)約為4.6ns。
L2緩存的帶寬也增加了一倍,現(xiàn)在實(shí)現(xiàn)了32B /周期,而M1則為16B /周期。作為對比,A75從L2讀取帶寬16B /周期,寫入帶寬則為32B /周期。
當(dāng)三星最初公布其Exynos 9810的L3緩存是如何工作的時(shí)候,我們感覺是有點(diǎn)混亂的但。最終我們得到了澄清,那就是Arm實(shí)際上并沒有允許第三方核心插入其DynamiQ集群/ L3系統(tǒng),也就是說新SoC的硅實(shí)現(xiàn)與Arm的對應(yīng)物無任何關(guān)系。
在這里,我們看到以NUCA((Non-uniform cache architecture:非統(tǒng)一緩存架構(gòu))方式實(shí)現(xiàn)的大型4MB緩存??偣灿?個(gè)1MB的片(slice),每個(gè)“片”位于CPU核心的對面。由于布局不均勻,核心與切片之間的訪問延遲并不相同。核心訪問相鄰切片有32個(gè)周期的延遲,但在CPU和最遠(yuǎn)切片之間的訪問則有44個(gè)周期的延遲。三星在典型模式中引用了37個(gè)周期平均延遲的數(shù)據(jù)。
在這里,與Arm的方案相比,M3似乎更弱。
Arm A75的L3 hit有25個(gè)周期的延遲。在實(shí)際中,我們看到Snapdragon 845達(dá)到~11.4ns,而Exynos 9810則測得 11ns到20ns之間。雖然DSU較低的最大時(shí)鐘可能是一個(gè)缺點(diǎn),但實(shí)際上它在相反情況下也是一個(gè)優(yōu)勢; 當(dāng)CPU核心的時(shí)鐘頻率降低時(shí),他們?nèi)匀豢梢岳每焖龠\(yùn)行的DSU / L3緩存及其較低的延遲。相反,M3的緩存層次結(jié)構(gòu)與其CPU內(nèi)核一起減慢。
M1 / M2的總線單元處理多達(dá)28個(gè)outstanding misses,而M3處理多達(dá)80個(gè)未完成的utstanding misses-,如果這應(yīng)用到L3或者如果在某個(gè)方面L2塊包含在該圖中,則缺乏清晰度。Arm從不談?wù)揂75的功能,但詳細(xì)說明A76能夠處理L2緩存上的46個(gè)outstanding misses,在DSU的L3上有94個(gè)outstanding misses。
L3切片之間的數(shù)據(jù)分區(qū)由address hash決定,并且所有切片同時(shí)通電。相比之下,較大的SoC中的DSU默認(rèn)使用兩個(gè)片實(shí)現(xiàn),其中每個(gè)片可以是一半斷電 -,在斷電能力方面給出L3的1/4的粒度。我不確定SD845是如何在這里實(shí)現(xiàn)的。
最后,三星解釋說,這種切片設(shè)計(jì)旨在為高端移動(dòng)設(shè)備之外的不同設(shè)計(jì)實(shí)現(xiàn)更好的可配置性,當(dāng)然這仍然是最優(yōu)先考慮的因素。但S.LSI在汽車領(lǐng)域也在努力。
對于緩存層次結(jié)構(gòu)總體,三星承認(rèn)最終產(chǎn)品并未達(dá)到他們真正想要的水平。最終產(chǎn)品就像這樣,因?yàn)楸仨氝M(jìn)行權(quán)衡才能獲得為這一代實(shí)現(xiàn)的3級緩存層次結(jié)構(gòu)。在這里,我認(rèn)為我們將更加關(guān)注下一代M4。
物理布局:理解硅片
三星今年披露了其芯片的核心平面圖,我們很樂于見到這個(gè),以下是對這些術(shù)語的一些簡短說明:
pL2: Private L2 cache, here we see the 512KB cache implemented in what seems to be two banks/slices.
FPB: Floating point data path; the FP and ASIMD execution units themselves.
FRS: Floating point schedulers as well as the FP/vector physical register file memories.
MC: Mid-core, the decoders and rename units.
DFX: This is debug/test logic and stands for “design for X” such as DFD (Design for debug), DFT (Design for test), DFM (Design for manufacturability), and other miscellaneous logic.
LS: Load/store unit along with the 64KB of L1 data cache memories.
IXU: Integer execution unit; contains the execution units, schedulers and integer physical register file memories.
TBW: Transparent buffer writes, includes the TLB structures.
FE: The front-end including branch predictors, fetch units and the 64KB L1 instruction cache memories.
Exynos 9810平面圖
與M1相比,M3中幾乎所有功能單元的尺寸都大大增加,最終內(nèi)核功能模塊的面積為2.52mm2,另外還有0.98mm2的512LB L2緩存和邏輯。
Exynos 9810平面圖
在這里,三星展示了整個(gè)集群平面圖,再次標(biāo)記了4個(gè)核心,它們彼此相鄰排列,L2和L3幻燈片也有序地彼此相鄰放置。這種布局似乎節(jié)省了一些布局工作,因?yàn)槊總€(gè)塊設(shè)計(jì)一次然后簡單地復(fù)制4次。
IPC提高59%
最后,三星談了一下他們的性能分析基礎(chǔ)架構(gòu)以及它們?nèi)绾瓮ㄟ^RTL和模型模擬運(yùn)行各種工作負(fù)載跟蹤,以便評估設(shè)計(jì)選擇、發(fā)現(xiàn)錯(cuò)誤并對μarch進(jìn)行微調(diào)。
在這張幻燈片中,我們最終得到了核心IPC增長的官方數(shù)字:~59%。
正如我們在圖表中看到的那樣,所有工作負(fù)載的增長都不是線性的,切我們看到高ILP工作負(fù)載的增長僅有限25%,而MLP工作負(fù)載可能則幾乎沒有增加。另外,還有很多混合工作負(fù)載的IPC增加了> 80%。
性能和效率:三星的數(shù)據(jù)
接下來的幻燈片展示了M2,M3和A75的GeekBench4性能表現(xiàn)。代表產(chǎn)品則分別是Exynos 8895,Exynos 9810和Snapdragon 845。
功率效率(Power efficiency)一直是M3的一個(gè)重要主題
正如我們在評測中所述,三星的2.7GHz高頻率需要非常高的電壓和功耗。雖然它展示了領(lǐng)先的性能,但最終效率卻低于Exynos 8895的M2。這里的數(shù)字代表有源系統(tǒng)功率,這意味著在CPU,內(nèi)存控制器和DRAM方面,就像我們在AT測量它一樣。
將時(shí)鐘降低到與M2相同的2.3GHz,根據(jù)三星的演示,我們在效率方面看到M3的領(lǐng)先。
下圖則顯示了完成工作負(fù)載套件的能源使用情況以及測試期間的平均功耗。左邊的條形表示效率,條形越短(焦耳越?。?,平臺效率越高。右邊的條代表性能分?jǐn)?shù),條形越長,性能越好。
我還重新測試了M3的三個(gè)頂級頻率的工作負(fù)載; 1794,2314和2704MHz,讓我們更廣泛地了解效率如何隨性能而變化。
總體而言,M3提供了非常動(dòng)態(tài)的結(jié)果范圍。在(幾乎)等效的峰值性能與這一代的A75競爭結(jié)果相比,M3能夠發(fā)揮良好的效率優(yōu)勢。M3的低性能點(diǎn)仍然優(yōu)于M2的2.3GHz最高性能 ,同時(shí)還具有顯著的功率和能效優(yōu)勢。
時(shí)鐘頻率在2.3GHz的時(shí)候,M3的性能則明顯優(yōu)于A75。
最后在2.7GHz進(jìn)一步拉大了性能差距,但效率卻很高,比其他任何最新的SoC消耗更多的功耗。
三星的未來戰(zhàn)略與結(jié)論
最后,三星更多地討論了該項(xiàng)目的時(shí)間表以及如何開展工作。
正如我們在介紹中所說的那樣,M3的計(jì)劃在2014年第2季度開始,隨著M1的完成,RTL也在2015年第1季度開始。在這里,三星改變了節(jié)奏和規(guī)劃,將最初計(jì)劃用于M3的一部分功能放入M2中。在這里,最初的M3計(jì)劃進(jìn)行了修訂,以便在2016年第一季度實(shí)現(xiàn)更大的微架構(gòu)性能推動(dòng)。
RTL于2017年第一季度交付給SoC團(tuán)隊(duì),用于Exynos 9810的第一個(gè)EVT0流片。值得注意的是,實(shí)際生產(chǎn)的硅片是EVT1,其tape-out在2017年中期發(fā)生。而最后商用的Exynos 9810在2018年3月上市。
M3對于三星設(shè)計(jì)團(tuán)隊(duì)來說是一次相當(dāng)大的突破工作,因?yàn)樗麄儾坏貌唤?jīng)歷一個(gè)近乎項(xiàng)目重構(gòu)的規(guī)劃,并且必須應(yīng)對極端的時(shí)間壓力。在截止日期前推出下一代產(chǎn)品。
由于時(shí)間限制,三星在這個(gè)產(chǎn)品上留下了很多的改進(jìn)空間,特別是微體系結(jié)構(gòu)中較弱的部分之一——緩存層次結(jié)構(gòu)(cache hierarchy,),這是三星方面表示其并不滿意的東西,這是推動(dòng)設(shè)計(jì)團(tuán)隊(duì)努力繼續(xù)前進(jìn)的動(dòng)力所在。
三星不愿意透露任何一種物理實(shí)現(xiàn)細(xì)節(jié)。由于HotChips是一個(gè)微體系結(jié)構(gòu)論壇,因此披露信息保留在M3的μarch中。正如我們過去所看到的,當(dāng)供應(yīng)商以不同方式實(shí)施時(shí),單個(gè)微體系結(jié)構(gòu)的性能和功耗特性可能會(huì)大不相同??紤]到這一點(diǎn),在測量最終產(chǎn)品時(shí),很難將硅片的這些相互纏繞的方面分開。
M3看起來像一個(gè)整體堅(jiān)實(shí)的微體系結(jié)構(gòu),感覺更像我們在桌面級產(chǎn)品中看到的。感覺三星在利用μarch的性能方面采取了更直接的方法 ,在許多方面它表現(xiàn)得比Arm更加“兇猛”, 這也解釋了M3的硅尺寸比較大的原因。
在評估IP的效率時(shí),查看更高級別的微體系結(jié)構(gòu)是不夠的,因?yàn)榫w管結(jié)構(gòu)的實(shí)際電氣工程方面和設(shè)計(jì)選擇中的細(xì)節(jié)很容易超過任何明顯的更高級別特性。況且,沒有供應(yīng)商真的會(huì)披露這些細(xì)節(jié),更不用說它將遠(yuǎn)遠(yuǎn)超出公眾讀者的范圍。
在這里,最后的幻燈片可能是最具啟發(fā)性的披露,讓我們一瞥三星未來的戰(zhàn)略:
據(jù)說SARC設(shè)計(jì)團(tuán)隊(duì)現(xiàn)在每年都會(huì)有強(qiáng)勁的年度發(fā)布節(jié)奏和持續(xù)改進(jìn)。事實(shí)上,當(dāng)我在詢問一些不同的設(shè)計(jì)選擇和規(guī)格時(shí),我在M3和A76之間進(jìn)行比較時(shí),三星提醒我,Arm的新核心的真正競爭將是明年的新款Exynos M4,而不是M3。
到目前為止,我們只發(fā)布了兩代改進(jìn)版,但M2和M3的IPC增長率分別為20%和59%,三星確實(shí)發(fā)布了雖然短暫但非常強(qiáng)勁的追趕軌跡。
就在幾天前, Arm公開宣布其性能核心路線圖至2020年,揭示了A76繼任者Deimos和Hercules,承諾約15%和10%的代際收益。M3在預(yù)計(jì)性能方面似乎已達(dá)到或超過A76(至少在SPEC2006中),因此根據(jù)M4的功率效率,我們可能最終看到三星定制設(shè)計(jì)的競爭優(yōu)勢得到回報(bào)。
總的來說,我們感謝三星做了如今所見的微架構(gòu)披露,作為超越Arm的產(chǎn)品,它們在這個(gè)秘密行業(yè)中是一個(gè)相當(dāng)罕見的事件。希望S.LSI和SARC解決Exynos 9810和M3的弱點(diǎn),并努力使明年的SoC取得更大的成功。我們一定期待得到它!