瑞薩電子在2023年10月底推出強(qiáng)大的RA8系列MCU,具備突破性的3000 CoreMark,并可滿足客戶應(yīng)用所需的完全確定性、低延遲及實(shí)時(shí)操作要求。RA8系列MCU同時(shí)也是業(yè)界首款采用Arm Cortex-M85處理器的產(chǎn)品,能夠提供卓越的6.39 CoreMark/MHz性能——這一性能水平將使系統(tǒng)設(shè)計(jì)人員能夠使用RA MCU替代應(yīng)用中常用的微處理器(MPU)。全新系列產(chǎn)品是廣受歡迎的基于Arm Cortex-M處理器的RA產(chǎn)品家族中的一員。此外,為其它RA產(chǎn)品構(gòu)建的現(xiàn)有設(shè)計(jì)可以輕松移植到新型RA8 MCU上。
新型RA8系列MCU部署了Arm Helium技術(shù),即Arm的M型矢量擴(kuò)展單元(M-profile Vector Extension——MVE)。MVE是ARM v8.1M架構(gòu)中非常重要的一部分。目前ARM v8.1M架構(gòu)下的內(nèi)核包括Cortex-M52、Cortex-M55、Cortex-M85三種。下面的表格Arm Cortex-M Processor Comparison Table詳細(xì)展示了從Armv6到Armv8.1M內(nèi)核之間的不同??梢匀菀椎匕l(fā)現(xiàn),Cortex-M85是目前性能最強(qiáng)的Arm Cortex-M內(nèi)核MCU。
Arm v8.1-M架構(gòu)是Arm v8-M架構(gòu)的擴(kuò)展版本。除了新的矢量指令集架構(gòu)(Helium)以外,還有幾個(gè)其他新特性:
循環(huán)和分支增強(qiáng)的附加指令集(低開銷分支擴(kuò)展,Low Overhead Branch Extension)。
支持半精度浮點(diǎn)指令。
調(diào)試功能增強(qiáng),包括性能監(jiān)測單元(Performance Monitoring Unit,PMU)和針對信號(hào)處理應(yīng)用程序開發(fā)的調(diào)試附加功能支持。
用于FPU的TrustZone管理增強(qiáng)指令集。
非特權(quán)調(diào)試擴(kuò)展。
內(nèi)存保護(hù)單元(Memory Protection Unit,MPU)提供了一個(gè)新的內(nèi)存屬性,即“特權(quán)模式下永不執(zhí)行”(Privileged eXecute Never,PXN)的屬性。這允許當(dāng)CPU處于特權(quán)模式下時(shí)阻止執(zhí)行任意代碼,而這些代碼可能已經(jīng)寫入了用戶空間。這是一個(gè)重要的安全特性。
可靠性、可用性及可維護(hù)性(Reliability,Availability and Serviceability,RAS)擴(kuò)展。
引入Helium是為了在Cortex-M內(nèi)核MCU上實(shí)現(xiàn)更高效的DSP類和機(jī)器學(xué)習(xí)操作。它和Cortex-A內(nèi)核MPU中Neon有很多相似之處。Neon和Helium都使用FPU中的寄存器作為矢量寄存器。兩者都使用128位向量,并且許多向量處理指令對于兩種體系結(jié)構(gòu)都是通用的。
然而,Helium是一種全新的設(shè)計(jì),可在小型處理器中實(shí)現(xiàn)高效的信號(hào)處理性能。它為嵌入式用例提供了許多新的架構(gòu)功能,因?yàn)樗槍γ娣e(成本)和功耗進(jìn)行了優(yōu)化,為M-Profile架構(gòu)帶來了類似Neon的功能(Cortex-A的SIMD注指令)。Helium經(jīng)過優(yōu)化,可有效利用較小Cortex-M內(nèi)核中的所有可用硬件。下表詳細(xì)給出了Helium和Neon之間的對比信息。
Helium與Neon對比表
注:SIMD(Single Instruction Multiple Data)即單指令多數(shù)據(jù),表示在該硬件中的多個(gè)處理單元中可以同時(shí)對多個(gè)數(shù)據(jù)項(xiàng)執(zhí)行相同的操作,也就是說,CPU可以同時(shí)執(zhí)行并行計(jì)算,但只有一個(gè)指令正在執(zhí)行。這是數(shù)據(jù)級(jí)的并行。
目前有許多系統(tǒng)將Cortex-M處理器和專用可編程的DSP處理器結(jié)合來使用。Helium允許這樣的系統(tǒng)只用一個(gè)處理器來實(shí)現(xiàn)。這樣做有如下優(yōu)點(diǎn):
從軟件開發(fā)的角度來看,它允許使用單個(gè)工具鏈,而不是分別對CPU和DSP使用各自的編譯器和調(diào)試器。這就意味著程序員只需要熟悉一種架構(gòu)。
消除了對處理器間通信的需求,這點(diǎn)可能非常重要,因?yàn)橐獙?shí)時(shí)交互的兩個(gè)運(yùn)行時(shí)處理器中的不同軟件進(jìn)行調(diào)試既困難也耗時(shí)。
Cortex-M系列的CPU相比專用DSP而言,更易于編程。
在硬件設(shè)計(jì)層面,使用一個(gè)處理器(而不是兩個(gè)處理器)可以簡化系統(tǒng),從而減少芯片面積和成本,并縮短開發(fā)周期。
在詳細(xì)介紹Helium之前,我們現(xiàn)在來聊聊標(biāo)量和矢量的概念。
數(shù)學(xué)和物理世界中的觀點(diǎn)
標(biāo)量是一個(gè)只要大小的量
- 比如純數(shù)字,質(zhì)量,速率,溫度,體積等
矢量是一個(gè)有大小而且有方向的量
- 比如速度,加速度,位移,重力,摩擦力等
計(jì)算機(jī)科學(xué)世界中的觀點(diǎn)
標(biāo)量(處理器)是一次性處理一個(gè)數(shù)據(jù)元素的處理器。
- 通常用來處理通用的計(jì)算任務(wù),如文字處理和電子表格。
- 功耗低,價(jià)格便宜。
矢量(處理器)是一次性對多組數(shù)據(jù)(每組一般為兩個(gè)數(shù)據(jù))成批地進(jìn)行同樣的運(yùn)算,得到一批結(jié)果的處理器。如一次將100個(gè)加數(shù)與100個(gè)被加數(shù)相加,同時(shí)得到100個(gè)和的運(yùn)算。
- 對于圖像,視頻,音頻數(shù)據(jù)處理等需要并行處理大量數(shù)據(jù)的任務(wù)特別有用。
- 也可用于科學(xué)計(jì)算,加速復(fù)雜算法的處理。
- 功耗高,價(jià)格稍高。
Helium寄存器、數(shù)據(jù)類型和通道
Helium寄存器是128位的,一共有8個(gè)Helium寄存器,寄存器數(shù)量不可修改。它和浮點(diǎn)單元(FPU)共同使用。在FPU中使用S0~S31來訪問32個(gè)單精度(32位)寄存器,同樣的硬件寄存器也可看做16個(gè)雙精度(64位)寄存器D0~D15。例如,D0和S0、S1共用64位相同的硬件寄存器。
在Helium架構(gòu)中,Helium使用8個(gè)矢量寄存器Q0~Q7。這就意味著,Helium寄存器Q0和S0~S3、D0~D1浮點(diǎn)寄存器使用相同的物理寄存器,Q1和S4~S7、D2~D3浮點(diǎn)寄存器使用相同的物理寄存器,其他Helium寄存器以此類推。因?yàn)镠elium寄存器重用了標(biāo)量FPU寄存器,所以當(dāng)發(fā)生異常時(shí)無須使用額外的資源去保存和恢復(fù)這些寄存器(同樣不影響中斷延遲)。
每個(gè)Helium寄存器都可以劃分為8位,16位,32位寬的通道。每個(gè)通道可以被一條指令看作:
整型數(shù)值(8/16/32位寬)
定點(diǎn)飽和值(Q7/Q15/Q31)
浮點(diǎn)數(shù)值(半精度FP16/單精度FP32)
下圖是一個(gè)矢量寄存器相加的示例。Helium寄存器q5和q0都是8個(gè)int16的元素?cái)?shù)據(jù)(8個(gè)通道),將他們相加的結(jié)果存在q0中。
Helium允許矢量中的每個(gè)通道有條件地執(zhí)行,這稱作通道預(yù)測。矢量預(yù)測狀態(tài)和控制寄存器(VPR)保存每個(gè)通道的條件值。某些矢量指令(比如矢量比較VCMP)可以改變VPR中的條件值,當(dāng)這些條件值被設(shè)置好以后,接下來就可以使用VPT(矢量條件預(yù)測)指令,以每個(gè)通道為基礎(chǔ)在矢量預(yù)測中實(shí)現(xiàn)條件執(zhí)行。
審核編輯:劉清
-
處理器
+關(guān)注
關(guān)注
68文章
19286瀏覽量
229817 -
dsp
+關(guān)注
關(guān)注
553文章
7998瀏覽量
348904 -
嵌入式
+關(guān)注
關(guān)注
5082文章
19123瀏覽量
305151 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8418瀏覽量
132628 -
Cortex-M85
+關(guān)注
關(guān)注
0文章
13瀏覽量
543
原文標(biāo)題:RA8 Cortex-M85 Helium入門指南(1)
文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論