當(dāng)前位置:首頁 > 公眾號精選 > wenzi嵌入式軟件
[導(dǎo)讀]引言筆者接觸嵌入式領(lǐng)域軟件開發(fā)已近五年,幾乎用的都是ARMCortexM內(nèi)核系列的微控制器。在這五年期間,感謝C語言編譯器的存在,讓我不用接觸匯編即可進行開發(fā),但是彷佛也錯過了一些風(fēng)景,沒有領(lǐng)域到編譯器之美和CPU之美,所以決定周末無聊的休息時間通過尋找資料、動手實驗、得出結(jié)論的...

引言

筆者接觸嵌入式領(lǐng)域軟件開發(fā)已近五年,幾乎用的都是 ARM Cortex M 內(nèi)核系列的微控制器。在這五年期間,感謝 C 語言編譯器的存在,讓我不用接觸匯編即可進行開發(fā),但是彷佛也錯過了一些風(fēng)景,沒有領(lǐng)域到編譯器之美和 CPU 之美,所以決定周末無聊的休息時間通過尋找資料、動手實驗、得出結(jié)論的方法來探索 ARM CPU 架構(gòu)的美妙,以及 C 語言編譯器的奧秘。(因為我個人實在是不贊同學(xué)校中微機原理類課程的教學(xué)方法)。

一、ARM CPU Architecture

ARM CPU 架構(gòu)[1]是一個用于計算機處理器的「精簡指令集」(RISC)架構(gòu)家族。它是世界上最普遍的處理器架構(gòu),從傳感器、可穿戴設(shè)備、智能手機、到超級計算機,每年會有數(shù)十億基于 ARM 的設(shè)備出貨。

ARM CPU 架構(gòu)基于 RISC 精簡指令集,包括:

  • 「一個統(tǒng)一的寄存器文件」,其中指令不限于作用于特定的寄存器;
  • 「一種加載或存儲架構(gòu)」,其中數(shù)據(jù)處理僅對寄存器內(nèi)容進行,而不是直接對內(nèi)存內(nèi)容進行;
  • 「簡單的尋址模式」,所有加載或者存儲模式僅由寄存器內(nèi)容和指令字段決定。
根據(jù)不同的應(yīng)用場景,ARM CPU 架構(gòu)分為:

架構(gòu)定義使用案例實現(xiàn)(處理器內(nèi)核)
A 系列復(fù)雜的電腦應(yīng)用(服務(wù)器、網(wǎng)絡(luò)設(shè)備、手機、TV)Cortex-A、Neoverse
R 系列用于需要實時響應(yīng)的場景(嚴(yán)格的安全性應(yīng)用、需要確定響應(yīng)的應(yīng)用、自動駕駛)Cortex-R
「M 系列」「功耗和尺寸比較重要的設(shè)備,尤其嵌入式設(shè)備和 IoT 設(shè)備,比如小型傳感器、通信模組、智能家居產(chǎn)品等」「Cortex-M」
在本系列文章中,我們將以 Cortex M 內(nèi)核為主進行探索,不去考慮 Cortex A 系列和 Cortex R 系列。

二、Cortex M 內(nèi)核

Cortex-M 處理器家族基于 ARM M 架構(gòu)定義,為嵌入式系統(tǒng)提供了低延遲和高度確定的操作,主要包括的 Cortex-M 系列內(nèi)核如下圖:

從圖中大致可以看出:

① Cortex-M0、Cortex-M0 、Cortex-M1 系列內(nèi)核使用 Armv6-M 架構(gòu),「常用的 Cortex-M3、Cortex M4、Cortex M7 系列內(nèi)核使用 Armv7-M 架構(gòu)」,Cortex-M23 系列使用 Armv8-M Baseline 架構(gòu),Cortex-M33、Cortex-M33P、Cortex-M55 系列使用 Armv8-M Mainline 架構(gòu)。

② 從 Coretx-M23 系列開始,Cortex-M 內(nèi)核中開始擁有「TrustZone 特性」

③ Cortex-M4、CortexM7、Cortex-M33、Cortex-M35P、Cortex-M55 系列中才有「數(shù)字信號處理擴展」(DSP)。

④ Cortex-M33、Cortex-M55 系列中開始擁有「ARM 自定義指令」。

⑤ Cortex-M33、Cortex-M35P、Cortex M55 系列擁有「協(xié)處理器接口」。

接下來我們一一了解。

1. Cortex M0

Cortex M0[2]處理器是 ARM 最小的處理器之一,主要特點是小體積,目的是使開發(fā)人員能夠在 8 位的價格點上實現(xiàn) 32 位的性能。Cortex M0 處理器使用 AHB-Lite 總線、擁有三級流水線,支持部分 Thumb/Thumb-2 指令集。

2. Cortex M0

Cortex M0 [3]處理器在 Cortex M0 處理器的基礎(chǔ)上,進一步降低了功耗,提升了性能。Cortex M0 處理器使用 AMBA AHB-Lite 總線、降低為兩級流水線,支持部分 Thumb/Thumb-2 指令集。

3. Cortex M1

Cortex M1[4]是首個專為 FPGA 上的實現(xiàn)而設(shè)計的處理器。使用 AMBA AHB-Lite 總線、三級流水線,支持部分 Thumb/Thumb-2 指令集。

4. Cortex M3

Cortex-M3[5]處理器是專為高性能、低成本平臺開發(fā)設(shè)計的,包括汽車車身系統(tǒng)、工業(yè)控制系統(tǒng)、無線網(wǎng)絡(luò)、傳感器等,使用 3 個 AMBA AHB-Lite 總線 (哈佛總線架構(gòu)),三級流水線,支持部分 Thumb/Thumb-2 指令集、支持 8 to 256 優(yōu)先級等級。

5. Cortex M4

Cortex-M4[6]處理器是一款高效的嵌入式處理器,使用 3 個 AMBA AHB-Lite 總線 (哈佛總線架構(gòu)),三級流水線,支持 Thumb/Thumb-2 部分指令集,支持 8 to 256 優(yōu)先級等級。相比 CortexM3,「增加了 DSP 擴展、可選的單精度浮點單元」。

6. Cortex M7

Cortex M7[7]處理器是一款高性能、節(jié)能的處理器,「6 級大規(guī)模流水線」,支持 Thumb/Thumb-2 指令集,支持 8 to 256 優(yōu)先級等級,支持 DSP 擴展、可選的單精度浮點單元,使用 1 個 64-bit AMBA4 AXI 總線, 1 個 32-bit AHB 外設(shè)接口、1 個 為外部主機訪問 TCMs 內(nèi)存提供的 32-bit AMBA AHB 從機接口,「擁有指令 cache、數(shù)據(jù) cache、指令 TCM、數(shù)據(jù) TCM」。

7. Cortex M23

Cortex M23[8]處理器是一款非常簡潔的處理器,對于大多數(shù)需要安全性的 IoT 和嵌入式應(yīng)用,帶有 TrustZone 的 Cortex-M23 是一個理想的處理器。

Cotex-M23 使用 Armv8-M baseline 架構(gòu),擁有「2 級流水線」,使用 AMBA 5 AHB 總線,支持 Thumb/Thumb-2 部分指令集,支持 4 個優(yōu)先級等級。還增加了指令支持硬件單周期乘法(32x32)和快速除法(32/32)。

8. Cortex M33

Cortex-M33[9]適用于需要有效安全性或者數(shù)字信號控制的嵌入式和 IoT 應(yīng)用場景。Cortex-M33 有非常多的可選特性,包括 DSP 擴展、用于硬件強制隔離的 TrustZone 安全特性、一個協(xié)處理器接口、內(nèi)存保護單元、浮點計算單元。

Cotex-M33 使用 Armv8-M Mainline 架構(gòu),擁有「3 級流水線」,使用 2 個 AMBA5 AHB 總線(哈佛架構(gòu)),支持 Thumb/Thumb-2 指令集,支持 8 to 256 個中斷優(yōu)先級等級,可選的 TrustZone for Armv8-M 支持,「DSP 擴展中支持可選的 DSP/SIMD 指令」,可選的協(xié)處理器接口支持。

推薦傻孩子大佬的一篇文章:深度剖析,簡單粗暴,詳解 Cortex-M23/33 特性[10]。

9. Cortex M35P

Cortex-M35P[11]處理器使用 TrustZone for Armv8-M,具有硬件安全和可選的軟件隔離特性。對于試圖阻止物理篡改并希望獲得更高級別安全認(rèn)證的嵌入式開發(fā)人員,ARM 提供了 Cortex-M35P 這款處理器。

Cotex-M35P 使用 Armv8-M Mainline 架構(gòu),擁有「3 級流水線」,使用 2 個 AMBA5 AHB 總線(哈佛架構(gòu)),支持 Thumb/Thumb-2 指令集,支持 8 to 256 個中斷優(yōu)先級等級,具有可選的協(xié)處理器接口支持、TrustZone for Armv8-M 支持、DSP 支持,并且具有物理安全特性,「內(nèi)置保護,防止入侵和非入侵式攻擊」。

10. Cortex M55

目前最新一代的 Cortex M 系列處理器為 Cortex M55。

Cortex-M55[12]是首個基于 Armv8.1-M 架構(gòu)的處理器,采用 ARM Helium 技術(shù)(MVE,M 系列矢量擴展),為下一代小型嵌入式設(shè)備帶來了增強的機器學(xué)習(xí)水平和信號處理的性能,包括可穿戴設(shè)備,智能語音設(shè)備等。

Cotex-M55 擁有「4 級流水線」,使用 AMBA 5 AXI5 64-bit 主機總線,可選的 64bit 協(xié)處理器接口支持、可選的 TrustZone 支持,可選的 Helium 技術(shù)支持,「DSP 擴展中支持 32 位 DSP/SIMD 指令擴展」。

總結(jié)

認(rèn)識了 Cortex-M 陣營都有哪些成員后,可以看到 ARM Cortex-M 越來越注重安全性能和 AI 性能,這也給了我們一個發(fā)展方向,未來物聯(lián)網(wǎng)的發(fā)展也不再是僅限于對接一下云平臺上報數(shù)據(jù)這么簡單,而是更多的提升物聯(lián)網(wǎng)設(shè)備安全能力和 AI 能力,畢竟硬件設(shè)備遭遇入侵比電腦中毒更加可怕,如果端側(cè) AI 處理能力大大提升,則數(shù)據(jù)處理可直接在終端中完成,而不用去消耗不必要的云端算力~

至此,ARM 探索之旅第一站就結(jié)束啦!下一站再會!

注:本文所有圖片均來源于ARM。

參考

ARM CPU 架構(gòu): https://developer.arm.com/architectures/cpu-architecture


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉