在美國(guó)時(shí)間10月20日至10月29日在線舉行的“ 2020年秋季Linley處理器大會(huì)”的最后一天,Arm透露了Cortex-X1以及Cortex-A78的衍生產(chǎn)品Cortex-A78C的細(xì)節(jié)。
什么是Cortex-X1?
Cortex-X1是5月26日與Cortex-A78一起公布的CXC(Cortex-X定制)計(jì)劃的第一款產(chǎn)品,之前曾經(jīng)做過(guò)簡(jiǎn)單的介紹。在這次線上研討會(huì)上Arm公司對(duì) Cortex-X1做了更加詳細(xì)的介紹。(圖一)。
X1面向更高的性能而不是效率,是一個(gè)不同于傳統(tǒng)產(chǎn)品的高性能產(chǎn)品線。
在前端方面,BTB的容量提高了50%,X1 Fetch的指令5條/周期,Micro-Op的Cache有8個(gè)微操作/周期的指令要傳遞給解碼器。而Cortex-A78 Fetch的指令為4條/周期,Micro-Op Cache為6個(gè)微操作/周期。BranchPredictor最多可以處理2個(gè)Branch/cycle,這對(duì)于Cortex-X1和Cortex-A78來(lái)說(shuō)是一樣的。
圖2:微碼Cache的大小可能與Zen 3或Sunny Cove相當(dāng)。
指令分派同時(shí)發(fā)出8條微碼(圖3)。ALU有6個(gè)執(zhí)行單元,F(xiàn)PU有4個(gè)執(zhí)行單元。此外,據(jù)說(shuō)由于指令分派的增強(qiáng),亂序窗口的大小增加了40%。盡管未在此處列出,但ROB等似乎也在變大。此外,F(xiàn)P / ASIMD端的IQ大小將增加一倍。
圖3:Cortex-A78具有與Cortex-X1相同的ALU,但只有兩個(gè)FPU,指令分派也為6條微碼
就LSU而言,Cortex-X1(圖4)和Cortex-A78(圖5)的結(jié)構(gòu)本身完全相同。數(shù)據(jù)L1和L2的帶寬增加了一倍的是與Cortex-A77相比,并且認(rèn)為由加載/存儲(chǔ)單元本身處理的數(shù)據(jù)量已從16字節(jié)/周期增加到32字節(jié)/周期。此外,可以看出正在采取適合數(shù)據(jù)訪問(wèn)的措施,例如將動(dòng)態(tài)加載窗口大小增加33%,將L2TLB增加66%。此外,L2已增強(qiáng)到最大1MB,并且還支持8MB L3。
圖4:雙FPU的加載/存儲(chǔ)單元有點(diǎn)差。一個(gè)周期最多可以輸出512位數(shù)據(jù)
·
圖5:這是Cortex-A78,L1-D本身是一個(gè)選項(xiàng),并且不支持L3,這可能是因?yàn)樾阅?面積比或性能/功耗比。
Cortex-A78C適用于移動(dòng)設(shè)備,也適用于邊緣應(yīng)用
接下來(lái)是Cortex-A78C。這是Cortex-A78的衍生產(chǎn)品,盡管它是供移動(dòng)使用的,但我們認(rèn)為它更適合于固定設(shè)備或IoT Edge(圖6)。
圖6:與Cortex-A78的唯一區(qū)別是多核配置和安全性。
首先是多核配置。在使用DynamIQ的所謂big.LITTLE配置中,Cortex-A78成為大內(nèi)核,Cortex-A55合并為L(zhǎng)ITTLE內(nèi)核,但Cortex-A78C是統(tǒng)一的,也就是說(shuō),所有內(nèi)核都是Cortex-A78C,允許6到8個(gè)核心和高達(dá)8MB的L3(圖7)。
· 圖7:使用了DynamIQ,但是沒(méi)有核心調(diào)度(因此它不是big.LITTLE)
這款Corte-A78C的目標(biāo)被定義為“大屏幕設(shè)備”,但是當(dāng)您查看圖8時(shí),您還會(huì)看到筆記本PC和幾乎像PC的車(chē)載設(shè)備。
圖8:簡(jiǎn)而言之,它適用于計(jì)算密集型設(shè)備,我認(rèn)為它適用于Edge IoT Gateway
在Cortex-A78C中還增加了更多的安全性設(shè)計(jì)。ROP(面向返回的程序)或JOB(面向跳轉(zhuǎn)的程序設(shè)計(jì))是一種經(jīng)常用于未經(jīng)授權(quán)的程序入侵的技術(shù),在預(yù)先將惡意代碼加載到內(nèi)存中后,其跳轉(zhuǎn)類(lèi)似于Return或Jump。它是一種重寫(xiě)目標(biāo)并將控制權(quán)轉(zhuǎn)移到惡意代碼的方法。為此,Arm v8.3-a添加了一個(gè)稱(chēng)為指針身份驗(yàn)證代碼(PAC)的功能。這是一種用系統(tǒng)中注冊(cè)的PAC替換部分跳轉(zhuǎn)目標(biāo)地址的機(jī)制,如果重寫(xiě)了跳轉(zhuǎn)目標(biāo)地址,則PAC將消失,因此將其判斷為無(wú)效的跳轉(zhuǎn)目標(biāo),并且將中斷執(zhí)行。在那兒。它本身也已安裝在Cortex-A78中,但是Cortex-A78C將能夠使用Arm v8.6-A(由Matterhorn實(shí)現(xiàn))提供的增強(qiáng)指針認(rèn)證代碼(EPAC)。(圖9)。
圖9
目前,Arm尚未正式發(fā)布Cortex-A78C。