Arm已經(jīng)在其Cortex-M架構(gòu)中添加了神經(jīng)網(wǎng)絡(luò)處理指令,針對物聯(lián)網(wǎng)網(wǎng)絡(luò)外部邊緣的產(chǎn)品,例如可以識別少量語音而無需連接到云的設(shè)備,例如人聲喚醒命令。
“M-Profile Vector Extensions”(MVE)已經(jīng)在“Helium”品牌下宣布,與該公司的高端Cortex-A內(nèi)核的Neon SIMD(單指令多數(shù)據(jù))擴展非常類似。氦擴展還將處理數(shù)字信號處理,提供比現(xiàn)有DSP指令更高的性能,這些指令是為了將Cortex-M3轉(zhuǎn)換為Cortex-M4而創(chuàng)建的。
Arm將Helium描述為“針對M-profile架構(gòu)量身定制的Neon技術(shù)的優(yōu)化SIMD功能,以及針對新興用例的新編程功能和數(shù)據(jù)類型”。
與標(biāo)準的32位Armv8-M指令一起使用固定長度的128位向量(具有聚集負載和散布存儲,低開銷循環(huán)和預(yù)測)和增加的算術(shù)支持(固定和浮點,包括半精度和單精度浮點數(shù)和8位整數(shù)和復(fù)雜數(shù)學(xué),由150條指令共同覆蓋,包括8位向量點積。
同時,支持新指令的硬件包括通過“TrustZone for Armv8-M”擴展和PSA原則的安全功能。
總體而言,從現(xiàn)有的Armv8.1-M指令集架構(gòu)(ISA)可以看出,與現(xiàn)有的Armv8-M架構(gòu)(基于int32中的復(fù)雜FFT估算)相比,預(yù)計性能提升高達5倍,高達15倍機器學(xué)習(xí)(基于int8中的矩陣乘法)。
Armv8.1-M核心實施選項包括:
省略了氦,帶有可選的標(biāo)量浮點(帶或不帶雙精度支撐)
氦只支持向量整數(shù),帶有可選的標(biāo)量浮點(帶或不帶雙精度支持)
具有向量整數(shù)加浮點的氦(支持矢量單精度和半精度),帶標(biāo)量浮點(帶或不帶雙精度支持)
那么指令集指令是否會導(dǎo)致硅足跡大幅增加?
不,根據(jù)Arm,特別是在執(zhí)行氦指令時將重新使用一些現(xiàn)有的v8-M硬件。沒有確切的數(shù)據(jù)發(fā)布。
除語音處理外,還可以預(yù)見振動分析和視覺應(yīng)用。
如今,多個供應(yīng)商的工具鏈和模型都可以使用。包括Armv8.1-M在內(nèi)的硅產(chǎn)品有望在兩年內(nèi)上市。
除了矢量處理,Helium亮點還包括:
交織和解交織加載和存儲指令(VLD2 / VST2,步長為2,VLD4 / VST4,步長為4)
向量收集載荷和向量散布存儲向量寄存器中元素的存儲器訪問,使用另一個向量寄存器中的元素定義向量中每個元素的地址偏移量。
允許軟件處理任意存儲器訪問模式,并可用于模擬特殊尋址模式,如循環(huán)尋址,這些模式通常用于信號處理。
還可以幫助加速各種數(shù)據(jù)處理任務(wù)中數(shù)組中數(shù)據(jù)元素的非順序訪問向量復(fù)數(shù)值處理支持整數(shù)(8,16和32位)和浮點數(shù)(32位),例如VCADD,VCMUL,VCMLA指令車道預(yù)測位整數(shù)支持。
-
ARM
+關(guān)注
關(guān)注
134文章
9272瀏覽量
373742 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2922文章
45688瀏覽量
385642 -
Cortex-M
+關(guān)注
關(guān)注
2文章
229瀏覽量
30169
原文標(biāo)題:Arm為Cortex-M添加了神經(jīng)網(wǎng)絡(luò)指令
文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
評論