Arm的下一代CPU指令集架構(gòu)(ISA:指令集架構(gòu))“ Armv9”開始推出。該公司正在逐步擴(kuò)展當(dāng)前的ISA“ Armv8”,而擴(kuò)展的高潮最終將成為Armv9的搭建橋梁。至于Armv9,一位CPU行業(yè)人士表示,安全性增強(qiáng)是最重要的關(guān)鍵。Arm在Armv8.3之后的階段擴(kuò)展中專注于安全性,并被視為邁向Armv9的一步。
Arm的指令集架構(gòu)的發(fā)展對(duì)于當(dāng)前的IT行業(yè)至關(guān)重要。這是因?yàn)楦咝阅蹸PU的指令集體系結(jié)構(gòu)幾乎被x86 / x64和Arm兩個(gè)系統(tǒng)所壟斷。對(duì)于移動(dòng)和嵌入式應(yīng)用程序,Arm是最大的力量。即使不使用Arm本身的CPU內(nèi)核IP,Apple的A系列SoC的CPU內(nèi)核和Qualcomm的Snapdragon SoC的Kryo內(nèi)核也符合Arm的指令集。Arm的指令集體系結(jié)構(gòu)更改會(huì)影響許多計(jì)算設(shè)備。
該公司在2011年使用Armv8將CPU ISA 64位化,同時(shí)極大地改變了架構(gòu) 使用AArch64(一種智能且有條理的64位體系結(jié)構(gòu)),并對(duì)ISA進(jìn)行了重新分區(qū),然后重新開始。在Armv8基礎(chǔ)之上,Arm目前正在建立擴(kuò)展指令。擴(kuò)展從三個(gè)方向進(jìn)行:虛擬化和RAS等服務(wù)器的系統(tǒng)擴(kuò)展,深度學(xué)習(xí)的計(jì)算擴(kuò)展以及安全性擴(kuò)展。
此外,Arm還發(fā)布了未來CPU體系結(jié)構(gòu)擴(kuò)展的方向。引入事務(wù)性內(nèi)存以擴(kuò)展CPU內(nèi)核數(shù)量,增加了用于車載的功能安全功能,支持用于深度學(xué)習(xí)的矩陣運(yùn)算,針對(duì)矢量市場中的某些市場將矢量擴(kuò)展到256位。
它還允許獲得Arm許可的客戶將自定義指令合并到Arm指令集中。定制指令從用于嵌入式用途的Cortex-M開始,但也正在考慮將其部署到實(shí)時(shí)的Cortex-R和計(jì)算的Cortex-A中。到目前為止,Arm尚未允許被許可方添加自定義指令,以防止破壞CPU指令集體系結(jié)構(gòu)。Cortex-A類中的自定義說明將謹(jǐn)慎進(jìn)行,以免造成干擾。客戶自定義指令的引入旨在與允許客戶自定義指令的RISC-V指令集體系結(jié)構(gòu)相反。
不斷升級(jí)的Armv8-A指令集
Arm CPU當(dāng)前的指令集架構(gòu)是第8代“ Armv8”。即使具有相同的Armv8名稱,它也會(huì)按CPU配置文件分為ISA系列的三種類型。“ Armv8-A”用于高性能CPU“ Cortex-A”系列,“ Armv8-R”用于實(shí)時(shí)CPU“ Cortex-R”系列,“ Armv8-M”用于嵌入式MCU“ Cortex-M”系列,每個(gè)配置文件都有不同的指令集。
此外,對(duì)指令集進(jìn)行了較小的升級(jí)。用于高性能CPU的Armv8-A在小數(shù)點(diǎn)后也有一個(gè)版本。從Armv8.1-A開始,十進(jìn)制版本每年都會(huì)增加“ .1”,現(xiàn)在宣布了Armv8.6-A。Armv8.6-A是ISA在2019年的擴(kuò)展,Armv8.5-A是2018年,Armv8.4-A是2017年。
傳統(tǒng)上,當(dāng)出現(xiàn)新的Arm ISA小數(shù)點(diǎn)版本時(shí),新的小數(shù)點(diǎn)版本幾乎同步地添加到Arm自己的CPU核心IP中。但這不是現(xiàn)在。Arm的高端CPU核心IP“ Cortex-A77” ISA版本為Armv8.2-A。下一個(gè)內(nèi)核Hercules也是Armv8.2-A。實(shí)際上,自2015年Armv8.2-A起,CPU核心IP ISA版本就沒有增加。
Apple CPU內(nèi)核幾乎沒有Armv8.3-A。已經(jīng)發(fā)布了過去幾年的Armv8.x,但尚未在CPU上完全實(shí)現(xiàn)。這這種情況有些復(fù)雜。首先,ISA版本和CPU實(shí)施ISA版本名稱之間存在關(guān)聯(lián)。每個(gè)Armv8.x一代ISA版本都包含多個(gè)功能。使用Arm ISA,如果您具有特定世代的所有功能,則可以首次聲明該版本。
例如,如果實(shí)現(xiàn)了Armv8.2-A的所有功能,它將成為Armv8.2-A CPU。但是,除了Armv8.0-A的基本功能之外,如果僅實(shí)現(xiàn)Armv8.2-A功能的一部分,它將成為Armv8.0-A CPU而不是Armv8.2-A CPU。
在實(shí)際的核心IP示例中,Cortex-A77實(shí)現(xiàn)了Armv8.2-A之前的所有功能,但僅實(shí)現(xiàn)了Armv8.3-A和Armv8.4-A的某些功能。因此,ISA版本是Armv8.2-A CPU。完全裝有Armv8.4-A的CPU內(nèi)核尚未出現(xiàn)。由于該功能的“旋鈕”,無法滿足Armv8 ISA的升級(jí)條件,并且版本無法升級(jí)。
但是,這種情況將在不久的將來改變。Arm CPU內(nèi)核是下一代“ Matterhorn”,并且可以立即實(shí)現(xiàn)Armv8.6-A的許多功能。 Matterhorn是該指令集的主要里程碑。Arm將 Matterhorn的CPU代號(hào)規(guī)則從當(dāng)前的希臘神話更改為Yamana名稱,而且還切換了CPU體系結(jié)構(gòu)以及代號(hào)。 Matterhorn可能是“ Armv9之前的CPU”。
過去兩年中,Arv8.x指令擴(kuò)展集中在安全性擴(kuò)展上
過去,隨著分階段添加功能,Arm的指令集是在Arm的CPU核心IP中同步實(shí)現(xiàn)的。但是,自Armv8.2-A以來,它的實(shí)施并不順利,新功能的積累也有所重疊。因此,如前所述,CPU內(nèi)核的ISA版本似乎未從Armv8.2-A升級(jí)。
剩下這么多的原因是什么?它與Armv8.2-A及更高版本功能的內(nèi)容有關(guān)。最后三代的Armv8.x擴(kuò)展專注于安全性。特別是,Armv8.4-A和8.5-A主要是與安全相關(guān)的擴(kuò)展。
從Meltdown和Spectre開始,這是為了處理CPU微體系結(jié)構(gòu)上的安全性問題。2017年,CPU廠商出現(xiàn)了側(cè)面通道攻擊類型Meltdown和Spectre。因此,在過去幾年中,開發(fā)高性能CPU的供應(yīng)商(包括Intel和AMD以及Arms)一直致力于將安全功能集成到CPU體系結(jié)構(gòu)和微體系結(jié)構(gòu)中。
就Arm而言,高度依賴Arm平臺(tái)的Google已成為重要的合作伙伴,并在架構(gòu)上采取了先進(jìn)的安全措施。它內(nèi)置在最新的ISA十進(jìn)制版本中,例如Armv8.4-A(2017)和Armv8.5-A(2018)。
如果您查看上面每個(gè)Armv8.xA版本中的新功能,則可以看到對(duì)安全性的偏愛。在該圖中,SIMD / FP(浮點(diǎn))算術(shù)系統(tǒng)功能以綠色顯示,安全功能以紫色顯示,系統(tǒng)和內(nèi)存功能以卡其色顯示。安全功能從Armv8.3-A開始,并隨著Armv8.4-A / Armv8.5-A迅速增加。
重點(diǎn)再次從安全轉(zhuǎn)向深度學(xué)習(xí)
側(cè)通道攻擊問題極大地改變了高性能CPU架構(gòu)的發(fā)展。在此之前,您只需要實(shí)現(xiàn)一種良好的加速技術(shù),但是在Meltdown / Spectre之后,您現(xiàn)在需要檢查該技術(shù)是否存在安全問題。并且已經(jīng)有必要將用于邊信道攻擊的基本安全功能整合到體系結(jié)構(gòu)/微體系結(jié)構(gòu)中。
自2017年中以來,高性能CPU供應(yīng)商一直在努力解決此問題。除Arm之外,包括Intel和AMD在內(nèi)的所有高性能CPU供應(yīng)商的當(dāng)前目標(biāo)是完善一種可免受側(cè)通道攻擊的體系結(jié)構(gòu)。
Armv8-A指令集的演變清楚地表明了這種情況。Arm正在遷移到Matterhorn,其安全擴(kuò)展由Armv8.5-A分隔。因此,下一個(gè)指令擴(kuò)展Armv8.6-A不是偏向于安全性,而是專注于深度學(xué)習(xí)。
Arm在Armv8.2-A中支持FP16(16位半精度浮點(diǎn)算術(shù)),在Armv8.4-A中支持8位點(diǎn)積指令。其加強(qiáng)了對(duì)CPU的SIMD(單指令,多數(shù)據(jù))操作的深度學(xué)習(xí)支持。Armv8.6-A進(jìn)一步支持矩陣運(yùn)算和BFloat16,以加強(qiáng)對(duì)深度學(xué)習(xí)的興趣。將矩陣運(yùn)算和BFloat16帶入CPU的原因之一是支持邊緣側(cè)訓(xùn)練。支持在中間邊緣進(jìn)行輕度訓(xùn)練,而不是在云側(cè)進(jìn)行繁重訓(xùn)練。
本文由電子發(fā)燒友翻譯自pc.watch
-
ARM
+關(guān)注
關(guān)注
134文章
9309瀏覽量
375061 -
cpu
+關(guān)注
關(guān)注
68文章
11037瀏覽量
216015 -
指令集
+關(guān)注
關(guān)注
0文章
228瀏覽量
23713
發(fā)布評(píng)論請(qǐng)先 登錄
Arm 公司面向移動(dòng)端市場的 ?Arm Lumex? 深度解讀
Arm 公司面向汽車市場的 ?Arm Zena? 深度解讀
NVIDIA 采用納微半導(dǎo)體開發(fā)新一代數(shù)據(jù)中心電源架構(gòu) 800V HVDC 方案,賦能下一代AI兆瓦級(jí)算力需求

光庭信息推出下一代整車操作系統(tǒng)A2OS

Arm解讀Armv9 CPU為何是打造高性能、高能效移動(dòng)計(jì)算的關(guān)鍵
Arm 推出 Armv9 邊緣 AI 計(jì)算平臺(tái),以超高能效與先進(jìn) AI 能力賦能物聯(lián)網(wǎng)革新

Arm發(fā)布基于Armv9架構(gòu)的Cortex-A320處理器
Arm推出全球首個(gè)Armv9邊緣AI計(jì)算平臺(tái)
百度李彥宏談?dòng)?xùn)練下一代大模型
基于Armv9架構(gòu)的MediaTek天璣8400移動(dòng)芯片問世
一文詳解Arm架構(gòu)Armv9.6-A中的最新功能

意法半導(dǎo)體下一代汽車微控制器的戰(zhàn)略部署
Armv9 CPU中SVE2的實(shí)際用例

實(shí)現(xiàn)具有電平轉(zhuǎn)換功能的下一代無線信標(biāo)

24芯M16插頭在下一代技術(shù)中的潛力

評(píng)論