張平
英特爾Atom是面向嵌入式、超低功耗、超輕薄以及網(wǎng)絡(luò)等設(shè)備的處理器產(chǎn)品。自從2011年發(fā)布以來,Atom就以超低功耗和獨(dú)特的功能特性得到了市場的青睞,并已經(jīng)發(fā)展成為繼酷睿處理器產(chǎn)品后英特爾旗下又一大處理器家族。相比酷睿處理器架構(gòu)不斷更新和發(fā)展的狀況,Atom系列產(chǎn)品由于面向的市場對性能沒有那么敏感,因此架構(gòu)進(jìn)步不算太塊。隨著英特爾的工藝發(fā)展至10nm時(shí)代,Atom處理器家族終于迎來了全新的架構(gòu)和產(chǎn)品代號,那就是Lakefield產(chǎn)品和對應(yīng)的Tremont架構(gòu)。今天本文就和大家一起來了解---F這兩款全新設(shè)計(jì)的產(chǎn)品。
英特爾在近期的新聞發(fā)布會中更新了旗TAtom處理器的架構(gòu)路線圖。在現(xiàn)有的G0ldmont Plus之后,分別~Tremont、Gracemont和Future Mont三代產(chǎn)品。其中代號為Tremont的全新超低功耗處理器架構(gòu)將在2019年正式發(fā)布,采用10nm工藝制造。不僅如此,這款架構(gòu)還將搭配英特爾稱作“Foveros”的3D堆疊封裝技術(shù),和Core架構(gòu)的核心一起形成大小核搭配的Lakefiled處理器。近期,英特爾又公布了更多有關(guān)Tremont架構(gòu)的信息。
Atom處理器發(fā)展回顧
英特爾的Atom處理器和相關(guān)產(chǎn)品面向諸多市場,包括嵌入式平臺、網(wǎng)絡(luò)設(shè)備、智能手機(jī)、平板電腦、NAs、控制中心甚至部分定制工業(yè)產(chǎn)品等。從2011年開始,Atom相關(guān)產(chǎn)品先后使用了saItwell、silvermont、Airmont、Goldmont、GoIdmont Plus;五代架構(gòu),前兩代采用的工藝是32n m和22nm,后面三代都采用14nm,主要原因是英特爾10nm工藝的嚴(yán)重延期。
在發(fā)展過程中,Atom處理器在所有的產(chǎn)品領(lǐng)域其實(shí)存在著一定程度的重疊。一般來說,同一個(gè)系列會采用相同的內(nèi)核,并且由于Atom全部采用的soc設(shè)計(jì)方案,因此在不同的市場中規(guī)格相同的產(chǎn)品有可能會以不同的型號出現(xiàn)。另外,面向手機(jī)的Atom處理器在2016年后就不再推出了,面向平板電腦的產(chǎn)品也不再更新。未來在Tremont架構(gòu)對應(yīng)的LakefiIed產(chǎn)品發(fā)布后,Atom將可能重新回到平板電腦、上網(wǎng)本等產(chǎn)品中。
另外值得注意的變化是,隨著英特爾將酷睿微架構(gòu)的核心功耗范圍從每核心1.5W擴(kuò)展到每核心20W,Atom在將再更多的市場中展示自己的能力。Atom的面積相比Core等大核心而言小很多,并且功耗也低很多,其可量化的性能函數(shù)低于core架構(gòu),因此能夠在更低性能需求的場合下帶來更好的性能和功耗表現(xiàn)。借助新的Tremont架構(gòu),英特爾可以結(jié)合Atom和Core的特點(diǎn),實(shí)現(xiàn)更寬廣的性能、功耗輸出。3 O%性能提升——Tremont的設(shè)計(jì)目標(biāo)
對于cPu的設(shè)計(jì)而言,早期的重點(diǎn)話題都是處理器的性能,對功耗的關(guān)注反而很少。發(fā)展至今天,設(shè)備的續(xù)航時(shí)間和功耗效率等有關(guān)功耗的話題已經(jīng)成為了諸如電池供電設(shè)備中最常被提到的話題。性能和電源是處理器的一體兩面,在設(shè)計(jì)中需要很好地平衡二者的關(guān)系。目前一些處理器公司嚴(yán)格控制功耗和性能的比值,他們只允許功率和性能以相同的百分比增強(qiáng),或者性能,功率的比最多是2:1。
在英特爾的有關(guān)資料中,有趣的是,他們明確表示Tremont是在考慮性能的基礎(chǔ)上構(gòu)建的,其目的是比上一代處理器架構(gòu)大幅度提高原始時(shí)鐘下處理器的吞吐能力。根據(jù)英特爾自己的指標(biāo)也就是SPEc來看,英特爾宣稱Tremont的性能相比Goldmont PIus平均提高了30%。
值得注意的是,這樣的數(shù)據(jù)來自于較為早期的Tremont設(shè)計(jì)方案,應(yīng)該代表最小的性能提升幅度。英特爾給出的性能提升示意圖顯示,三個(gè)sPEc項(xiàng)目得到了65%以上的性能提升,有關(guān)這三個(gè)項(xiàng)目,英特爾沒有給出詳細(xì)信息,也沒有告知有關(guān)編譯代碼的相關(guān)內(nèi)容,據(jù)估計(jì)有可能是libquantum、lbm等相關(guān)測試。不過,英特爾宣稱這項(xiàng)測試中Tremont和Goldmont Plus上使用了相同的編譯文件。有關(guān)最終數(shù)據(jù)的呈現(xiàn)方式,英特爾沒有說明他們是否進(jìn)行過數(shù)據(jù)處理,比如是否根據(jù)處理器的頻率調(diào)整了性能,或者給出的是每頻率性能等。因此這份數(shù)據(jù)的參考意義有限,僅能從表面上進(jìn)行分析。
當(dāng)然,即使大量的數(shù)據(jù)和內(nèi)容沒有給出,但是僅僅從處理器代際更迭的角度來看,30%的性能提升都是相當(dāng)夸張的。但是就這么認(rèn)為Tremont是成功的還為時(shí)尚早。因?yàn)槌宋⒓軜?gòu)的進(jìn)步和10nm制程外,還有一些其他因素影響到整個(gè)處理器的設(shè)計(jì)比如功耗表現(xiàn)更為寬泛、芯片面積更大等等。為此,英特爾沒有給出詳細(xì)的功耗設(shè)計(jì)區(qū)間和其他信息,只是公布了Lakefiled處理器,它擁有1個(gè)Core大核心、4個(gè)Tremont小核心,并且將其和傳統(tǒng)Atom 7w處理器進(jìn)行了比較。
這樣一來,將14nm的GoIdmontPIus(標(biāo)準(zhǔn)的14nm工藝,并非14nm+或者14nm++)和10nm的Tremont進(jìn)行比較將變得困難。因?yàn)轵?qū)動Tremont提升性能的因素很多。當(dāng)然,從架構(gòu)角度來分析這個(gè)問題也是一個(gè)很重要的方面,接下來我們將從架構(gòu)部分對Tremont進(jìn)行分析。
更大的前端和緩存設(shè)計(jì)
對于一直關(guān)注core微體系架構(gòu)的讀者而言,應(yīng)該對英特爾core微體系架構(gòu)不斷擴(kuò)大的規(guī)模和微架構(gòu)結(jié)構(gòu)有所印象。更大的架構(gòu)規(guī)模意味著有更多的指令正在運(yùn)行,與之匹配的則是更大的緩存、更大的緩沖區(qū)、更大的TLB、更多的執(zhí)行端口和更多的指令及支持。當(dāng)然,一味地做大架構(gòu)也并不能帶來最好的結(jié)果,整個(gè)處理器架構(gòu)還必須做到智能化設(shè)計(jì)擁有可以最大限度調(diào)用內(nèi)部資源的能力。因?yàn)閮H僅擴(kuò)展架構(gòu)對一些簡單的指令集來說是毫無意義的。
在Tremont上,整個(gè)架構(gòu)設(shè)計(jì)的關(guān)鍵部分在于擴(kuò)大架構(gòu)規(guī)模。但是英特爾采用了兩個(gè)不同的步驟和方法來精確管控處理器內(nèi)部的計(jì)算過程。
關(guān)鍵提升之一:指令預(yù)取和分支預(yù)測
Atom處理器在微架構(gòu)上的一個(gè)主要飛躍就是預(yù)取器和分支預(yù)測器。不過在Tremont上,英特爾放棄了之前Atom處理器微架構(gòu)的相關(guān)設(shè)計(jì),而是將最新的大核心sunny Cove架構(gòu)上的預(yù)取器和分支預(yù)測器移植到了Tremont上。當(dāng)然,英特爾也表示,出于芯片面積和功耗方面的考慮,兩者在設(shè)計(jì)上還是存在一定差異的,但是其原理相似,并且分支預(yù)測歷史記錄表等元素和核心設(shè)計(jì)處于同一順序。另外,英特爾聲稱u預(yù)測沒有帶來性能懲罰,而L2預(yù)測的懲罰比之前幾代要小。
關(guān)鍵提升之二:解碼引擎大變革
從表面上看,Tremont包合了一個(gè)6寬度也就是6-wide的解碼引擎和一個(gè)4寬度的分配和調(diào)度引擎。這種設(shè)計(jì)其實(shí)很奇怪,因?yàn)橐话銇砜?,我們希望解碼引擎和調(diào)度引擎的寬度基本相等,或者調(diào)度引擎寬度比解碼引擎大,以確保重排序緩沖區(qū)由于等待過久而溢出。在sunny Cove的微架構(gòu)中,英特爾設(shè)計(jì)了4至06寬度的解碼引擎,支持微操作緩存,指令會隨后進(jìn)入大型的重排序緩沖區(qū),并且向后端的10寬度調(diào)度部分進(jìn)行分發(fā)。在這里,Tremont和Sunny Cove的比例完全相反。
那么實(shí)施情況是怎樣的呢?實(shí)際ATremont中的6-wide解碼引擎并不是一個(gè)完整的設(shè)計(jì),它采用了2個(gè)3-wide的解碼引擎并發(fā)而來。這意味著,每個(gè)解碼引擎在處理不同的分支預(yù)測時(shí),都可以采用單獨(dú)的指令流,在這種情況下,與單獨(dú)的6-wide解碼引擎相比,2個(gè)3-wide的解碼引擎的平均利用率更高。當(dāng)不存在分支預(yù)測時(shí),可以對其中一個(gè)(一組)解碼引擎進(jìn)行時(shí)鐘門控操作以節(jié)省功耗。對于單個(gè)指令流而言,Tremont實(shí)際上只是3-wide解碼,4-wide的調(diào)度。
英特爾隨后也說明,在技術(shù)上,他們可以通過更新微碼將解碼引擎更改為一個(gè)6-wide整體,而不再是2個(gè)3-wide的設(shè)計(jì)。這種更改將不會出現(xiàn)在OEM自選的功能中,但是根據(jù)英特爾的具體要求,這種設(shè)計(jì)可以根據(jù)不同的用戶的需求進(jìn)行更改。
另一個(gè)需要特別指出的是,Tremont沒有微操作緩存。英特爾對此的解釋是,微操作緩存可以更好地利用寬解碼的設(shè)計(jì)方案,但是在Tremont上,每個(gè)解碼引擎的寬度都不大,通過使用這種雙引擎的設(shè)計(jì),實(shí)際上帶來了性能的提升并節(jié)省了芯片面積。英特爾沒有明確指出哪一個(gè)方案的最終實(shí)現(xiàn)效果更出色,但是考慮到Atorrl產(chǎn)品的功耗范圍和Atom內(nèi)核的典型指令流程,現(xiàn)有的方案應(yīng)該是實(shí)現(xiàn)性能、功耗和面積的最優(yōu)組合。
在解碼引擎之后,英特爾在Tremont上做出的另一個(gè)改進(jìn)是重新排序緩沖區(qū)。Tremont的緩沖區(qū)被設(shè)計(jì)為支持208條指令而之前的Goldmont只有78條,加強(qiáng)版Goldmont PIuS則提升至了95條。相比而言,Tremont帶來了一個(gè)巨大的提升。另外,英特爾沒有說明Tremont是否有能力將指令融合至ROB的微操作中(Goldmont沒有這個(gè)設(shè)計(jì))。在實(shí)際的微操作處理中,指令采用的是1:1奇偶校驗(yàn)。緩存設(shè)計(jì):更大、更寬
Tremont的緩存設(shè)計(jì)變化比較大。英特爾增加了Tremont的u緩存容量,目前的u指令緩存設(shè)計(jì)了32KB容量、8路關(guān)聯(lián)。u數(shù)據(jù)緩存方面,Atom之前的幾個(gè)版本都采用的是24KB容量、6路關(guān)聯(lián)的方案,在Tremont上,它被提升至32KB容量和8路關(guān)聯(lián),這使~Tremont的u數(shù)據(jù)緩存和LI指令緩存的容量、關(guān)聯(lián)設(shè)計(jì)完全一樣,延遲方面,Tremont的L1數(shù)據(jù)緩存延遲為3個(gè)周期。相比之下,大核心的core微架構(gòu)體系中Skylake的數(shù)據(jù)緩存為32KB、延遲為4個(gè)周期,sunny Cove的數(shù)據(jù)緩存為48KB,延遲為5個(gè)周期。
L2緩存方面,對于之前的Atom處理器而言,這實(shí)際上是系統(tǒng)模塊中為所有內(nèi)核劃分的最后一級緩存,其容量和設(shè)計(jì)取決于系統(tǒng)模塊的要求。在之前的22nm silvermont中,每核心采用了512KB的方案,在Goldmont中,每核心增加至1MB。對于Tremont,英特爾稱L2緩存容量會因產(chǎn)品而異,從每個(gè)模塊1.5MB到4.5MB均可。Tremont的一個(gè)模塊最多可以包含4個(gè)內(nèi)核,因此有可能出現(xiàn)4.5MB每核心的L2緩存方案,或者1.5MB 4個(gè)核心的L2緩存方案。在一個(gè)模塊中,所有內(nèi)核都可以訪問緩存,但是不可以訪問其他模塊的L2緩存。英特爾能夠通過微碼將L2重置為包合式或者非包含式緩存。
英特爾表示,Tremont的L2緩存平均具有17個(gè)周期的延遲。關(guān)聯(lián)性方面則取決于容量,1.5MB的L2緩存將擁有12路關(guān)聯(lián),4.5MB則擁有18路關(guān)聯(lián),相應(yīng)的,可以推測出3MB L2設(shè)計(jì)可能擁有15路關(guān)聯(lián)。
Tremont還增加了對跨模塊的全局L3緩存的支持,L2和L3緩存都能支持Qos,從而允許為特定線程或者虛擬機(jī)確定數(shù)據(jù)優(yōu)先級,并增加執(zhí)行內(nèi)存帶寬。值得一提的是,英特爾在Broadwell Xeon上引入的這項(xiàng)技術(shù)可以避免數(shù)據(jù)中心的多核心處理器的某個(gè)核心受到其他核心帶來的數(shù)據(jù)訪問和優(yōu)先級排序干擾等問題。
更寬的后端設(shè)計(jì)
Tremont在后端設(shè)計(jì)上頗為激進(jìn),擁有8個(gè)執(zhí)行端口和7個(gè)數(shù)據(jù)保留單元(reservation station)。Tremont的地址生成單元也就是2個(gè)AGu占用了組合數(shù)據(jù)保留單元,同時(shí)也為處于排隊(duì)中的微碼操作提供額外的存儲空間。這樣做的原因是由于2個(gè)AG u提供了2x16字節(jié)的存儲空間,或者2x16的負(fù)載空間,或者每次使用其中的一個(gè)。英特爾顯然希望Tremont的AGu單元更為活躍一些。相比之下,在sunny Cove這類大核心設(shè)計(jì)中,所有的整數(shù)和浮點(diǎn)都使用統(tǒng)一的數(shù)據(jù)保留單元,AGu則獨(dú)占3個(gè)。
在整數(shù)性能方面,除了兩個(gè)AGu外,Tremont還擁有3個(gè)ALU,一個(gè)跳轉(zhuǎn)端口和一個(gè)存儲數(shù)據(jù)端口。每個(gè)ALu支持不同的功能,其中一個(gè)啟用位移功能,另一個(gè)則支持乘法和除法。與Core微架構(gòu)的執(zhí)行單元相比,Tremont的ALu相對更為輕巧一些,不過英特爾在此處沒有更多說明。
在浮點(diǎn)端,Tremon伎持三個(gè)不同的端口,其中2個(gè)ALU,1個(gè)存儲端口。2個(gè)ALu鐘的一個(gè)支持FADD也就是融合加法,另一個(gè)支持FMuL也就是融合乘法和除法。兩種ALu都支持具有4個(gè)周期延遲的128位SIMD和128位AES,以及4個(gè)周期的單個(gè)指令sHA 256。但是并不支持256位向量計(jì)算。另外,Tremont還支持GFNI指令這可以幫助一些特殊的計(jì)算。
在TLB方面,Tremont支持一個(gè)更大的1024條目的L2 TLB緩存,支持1024x4K條目、32x2M條目或者8xlG條目。相比之前的Goldmont,Tremont在這方面做出了很大的提升。
其他方面
英特爾本次公開的內(nèi)容主要是關(guān)于Tremont的微體系架構(gòu),其他一些信息包括SoC以及Lakefiled等都沒有給出太多具體的內(nèi)容。此外,英特爾也沒有提到有關(guān)lTremont的GPU支持。不過英特爾還是提到Tremont將是第一個(gè)完全支持Speed shift/ACPI的Atom微架構(gòu),以實(shí)現(xiàn)更決的高頻率操作。
在加密和安全性能方面,Tremont支持全面內(nèi)存加密,能夠有效地防止物理攻擊。另外還能夠支持Rooted Secure Boot和Boot Guard等功能。對之前英特爾爆出的“幽靈”漏洞等問題,英特爾宣稱Tremont和CascadeLake具有相同的保護(hù)級別。
功耗方面,目前消息不多。不過有消息稱在具有4個(gè)Tremon骸心的模塊中,所有的核心都可以共享相同的頻率,不過每個(gè)核可以進(jìn)入獨(dú)立的C狀態(tài)以減少不使用時(shí)的功耗。
寫在最后
隨著英特爾將core微架構(gòu)的實(shí)際功耗降低至1.5W,Tremont架構(gòu)的Atom處理器將如何在傳統(tǒng)的2mw到2w范圍內(nèi)發(fā)揮自己的作用將變得很有趣。目前,也有一些聲音在討論Tremont將如何和ARM Cortex-A76或者高通的Kryo核心競爭。當(dāng)然,Tremont所擁有的x86優(yōu)勢是無可動搖的。
另一個(gè)問題則是目前英特爾的產(chǎn)能問題。目前英特爾的產(chǎn)品需求主要集中在14nm工藝上,在10nm階段只有部分移動處理器上市,隨后的10nm+階段Tremont、Lakefield以及SnowRidge都將現(xiàn)身。不過目前沒有消息給出10nm和10nm+之間的差異,以及英特爾是否會再次遭工藝問題。英特爾首發(fā)支持10nm+的處理器是Ice Lake,這款產(chǎn)品將在今年用在高端筆記本電腦中,搭載了Tremont的Lakefield已經(jīng)宣布將用于surface Neo?,F(xiàn)在還不清楚Surface Neo的銷量。另外,之前英特爾將Atom架構(gòu)的產(chǎn)品規(guī)劃進(jìn)入了Pentium和Celeron處理器陣列,但實(shí)際表現(xiàn)并不出色。綜合這些因素,我們有可能很難在下一代除了Atom之外的消費(fèi)級處理器上看到Tremont架構(gòu)的使用70
未來,我們還將進(jìn)一步跟蹤Tremont的相關(guān)情況,包括產(chǎn)品型號、規(guī)格和性能等,對此有興趣的讀者不妨留意。