大家好,我是痞子衡,是正經搞技術的痞子,今天痞子衡給大家介紹的是ARM Cortex-M功能模塊,不過側重點是三款安全特性處理器,
ARM Cortex-M處理器家族發展至今(2020),已有8代產品,除了上一篇 《Cortex-M功能模塊看差異》 介紹過的CM0/CM0+、CM1、CM3、CM4、CM7,還有主打安全特性的CM23、CM33、CM35P,
1.Cortex-M安全特性
近幾年來, 物聯網成為了嵌入式系統開發者們的熱門話題,當你提及物聯網,安全是每個人都十分關注的話題,嵌入式系統產品需要更好的方案來保證系統的安全,鑒于此,ARM發布了全新ARMv8-M架構,以及基于該架構的三款處理器ARM Cortex-M23/33/35P,引入了如下安全特性:
1.1 TrustZone
ARMv8-M架構包含了一個叫做TrustZone的安全擴展,這項安全加密技術誕生于2004年,之后隨著移動應用的普及在Cortex-A系列處理器上發揚光大,而在物聯網的嵌入式領域中,一直都使用功耗比更加優秀的Cortex-M處理器并不具有此功能,直到現在Cortex-M23/33的出現,才將這種技術帶到了物聯網底層中,
TrustZone匯入了安全和非安全狀態的正交劃分,非安全狀態的軟體只能訪問非安全狀態的存盤空間和外圍設備,安全軟體可以訪問兩種狀態下的所有資源,TrustZone安全機制可以阻止黑客控制整個設備,限制了攻擊的影響,還可以實作系統遠程恢復,此外ARMv8-M架構也引入了堆疊邊界檢查和增強的MPU設計,促使額外安全措施的采用,
1.2 Anti-tampering
物理攻擊的定義可分為侵入式及非侵入式攻擊等兩大類,侵入式攻擊需要拆除芯片封裝,利用芯片層級的漏洞發動攻擊,而非侵入式攻擊,則如旁路攻擊(Side-Channel Attacks,簡稱SCA),在距離芯片很近的情況下,偵測如芯片的耗電或在操作密碼時放射出的電磁場等外洩的資訊,這兩種攻擊的目標不外乎在裝置植入惡意程式,或是取得內部敏感資訊,
ARM推出的全新Cortex-M35P,是Cortex-M產品線中首款具備防竄改以及防御物理攻擊能力的處理器,Cortex-M35P搭載與SC000、SC300等SecurCore處理器相同的防竄改技術,可幫助嵌入式安全開發人員阻止物理篡改并實作更高級別的安全認證,
2.Cortex-M功能模塊差異
由于CM23是CM0/CM0+的升級,CM33是CM3/CM4的升級,故我們僅針對性地比較原版與升級版內核,
2.1 CM0+ vs CM23

那么CM23到底改進了什么?
- ARMv8-M Baseline CPU內核:ARM公司于2016年推出的內核,相比ARMv6-M新增了32-bit硬體除法器,
- NVIC嵌套向量中斷控制器:最大支持240個外部中斷,但保持4級搶占優先級(2bit)不變,
- AHB5總線:一條32bit AMBA-5標準的高性能system總線負責所有Flash、SRAM指令和資料存取,,
- MPU存盤器保護單元:最大可將記憶體分為16*8個region,
- 除錯模塊:最大4個硬體斷點Breakpoint保持不變,資料監測點Watchpoint最大增為4個,
- ETM跟蹤單元:ETM提供實時指令和資料跟蹤,
- Systick定時器:定時器個數增大到2個,
那么CM23到底增加了什么?
- TrustZone軟體安全特性:,TrustZone匯入了安全和非安全狀態的正交劃分,非安全狀態的軟體只能訪問非安全狀態的存盤空間和外圍設備,安全軟體可以訪問兩種狀態下的所有資源,
2.2 CM4 vs CM33

前面比較完了CM0+與CM23,再來看看CM33比CM4增強在了哪里:
那么CM33到底改進了什么?
- ARMv8-M Mainline CPU內核:ARM公司于2016年推出的內核,相比ARMv7E-M去除了指令分支預測,
- NVIC嵌套向量中斷控制器:最大支持480個外部中斷,但保持8-256級優先級(8bit)不變,
- 2x AHB5總線:2條AHB5總線,其中AHB-P外設介面完成原來system總線功能, AHB-S從屬介面負責外部總線控制器(如DMA)功能,
- MPU存盤器保護單元:最大可將記憶體分為16*8個region,
- Systick定時器:定時器個數增大到2個,
那么CM33到底增加了什么?
- TrustZone軟體安全特性:TrustZone匯入了安全和非安全狀態的正交劃分,非安全狀態的軟體只能訪問非安全狀態的存盤空間和外圍設備,安全軟體可以訪問兩種狀態下的所有資源,
2.3 CM33 vs CM35P

前面比較完了CM33與CM4,再來看看CM35P比CM33增強在了哪里:
那么CM35P到底改進了什么?
額,CM35P相比CM33并沒有改進什么現有模塊,
那么CM35P到底增加了什么?
- I-Cache快取區:即是我們通常理解的L1 Cache,Cache大小為2-16KB,
- Anti-tampering物理安全特性:具備抵御各種物理攻擊的設計,能夠透過嵌入式安全機制協助開發者防御物理竄改攻擊,讓產品取得更高層級的安全認證,
歡迎訂閱
文章會同時發布到我的 博客園主頁、CSDN主頁、微信公眾號 平臺上,
微信搜索"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦,

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/17236.html
標籤:嵌入式
上一篇:宏定義能否被賦值
