使用ARM的TrustZone技術,針對安全和非安全應用劃分系統
摘要:隨著ARM Cortex-A9多處理器和FPGA SoC的推出,可把現有的分立微控制器和數字邏輯功能集成到一個多核器件中。這減小了功耗和體積,而主要難點之一是在一個器件中同時實現安全關鍵和非安全關鍵軟件單元。
本文引用地址:http://www.104case.com/article/164382.htm隨著ARM Cortex-A9多處理器和FPGA SoC的推出,很多開發人員看到了合并現有系統的機會,這通過將分立微控制器(MCU)和數字邏輯集成到一個多核器件中來實現。最大的好處是減小了功耗和體積,而一個主要難點是在一個器件中同時實現安全關鍵和非安全關鍵軟件單元。圖1顯示了使用三個分立器件實現的一個典型電機控制系統。系統有一個非安全網絡/用戶接口處理器,一個電機控制監控微控制器和一片用于實現硬核實時電機控制器的FPGA。圖1中的陰影部分含有設計的安全關鍵單元,需要通過外部權威機構進行安全認證。

把一個電機控制系統合并到SoC中,支持使用一個器件來實現信號處理、監控和通信等應用。Altera的28 nm Cyclone V SoC便是適用于這方面應用的一個器件實例。它具有低功耗FPGA架構和硬核處理器系統(HPS),含有ARM Cortex-A9雙處理器內核和外設。HPS包括對ARM TrustZone技術的支持;這也可以延伸到FPGA架構中。
ARM的TrustZone技術支持把多核系統劃分成關鍵系統資源運行的安全的環境和其他系統資源運行的非安全環境。因此,TrustZone隔離系統的關鍵部分只能在安全環境下訪問這些部分;其基礎是Cortex-A9 MPCore硬件和AMBA AXI3總線標準。在TrustZone支持系統中,每一AXI會話包括一個非安全(NS)比特,用于表示此次會話來自非安全還是安全環境。每次會話利用這一信息,系統中的從機可以選擇根據其TrustZone狀態進行響應。例如,處于安全模式的一個系統復位控制器只響應來自安全環境的復位申請,忽略非安全環境的響應,否則會產生錯誤。這一方法可以延伸到系統中的所有從機,在SoC器件中提供一個安全環境子系統。這一安全子系統與非安全環境隔離,可以用于運行可信軟件,或者,在我們的安全軟件中,不會受到流氓軟件的危害,也不會受到來自系統非安全部分AXI會話的影響。安全檢查器可以接受這類保護。

可以使用Altera的Cyclone V SoC來開發電機控制實例。這些器件在Cortex-A9 MPCore處理器、HPS外設、SDRAM控制器和FPGA上采用了ARM的TrustZone技術,能夠在SoC的所有外設中構建安全感知功能。在這個例子中,系統軟件的控制部分運行在µC/OS-II RTOS上,用戶接口軟件運行在Linux上。為能夠對此提供支持,Cortex-A9 MPcore處理器被配置為一個內核運行Linux,另一個內核運行µC/OS-II,實現AMP操作。
linux相關文章:linux教程
存儲器相關文章:存儲器原理
汽車防盜機相關文章:汽車防盜機原理
評論