安全操作系統Flexible Safety RTOS提供了空間隔離保護,簡化安全產品的設計,其安全插件可幫助用戶安全團隊提高微控制器診斷覆蓋率。
集成了Flexible Safety RTOS及其安全插件(PFM程序流監控、E2E安全通信、CRC校驗)的關鍵應用中,為滿足產品認證需求,還需執行一系列的自測試工作。針對STM32平臺,廠商提供了X-CUBE-STL(STM32預認證功能安全包,實現了IEC 61508安全完整性等級(SIL2/3)認證)
ST提供的安全手冊列出了單片機安全分析中應考慮的硬件、軟件和應用層安全要求。部分Flexible Safety RTOS和Safety Addon安全插件已涵蓋的安全要求如下:
CPU_SM_1 -應用軟件中的控制流監控由PFM實現
CPU_SM_4 -應用軟件的堆棧強化由安全插件E2E實現
MPU_SM_0 -MPU配置寄存器的周期性讀回由Flexible Safety RTOS提供
FLASH_SM_0 -Flash的定期軟件測試由STL或CRC模塊實現
FLASH_SM_1 -應用軟件中的控制流監控由PFM實現
RAM_SM_0 - SRAM內存的定期軟件測試由STL完成
RAM_SM_2 -應用軟件的堆棧強化由E2E實現
RAM_SM_3 -應用軟件中與安全相關變量的信息冗余由E2E實現
RAM_SM_4 -應用軟件中的控制流監控由PFM覆蓋
RAM_SM_5 - RAM中應用軟件的定期完整性測試由CRC覆蓋
BUS_SM_1 -芯片內數據交換中的信息冗余由E2E覆蓋
DMA_SM_1 -通過DMA傳輸的數據包的信息冗余由E2E實現
注意:應用中使用的外設接口(CAN, I2C, SPI, USB, ETH等)可能需要信息冗余技術。
如何在Flexible Safety RTOS的應用中集成X-CUBE-STL?
集成步驟
在使用Flexible Safety RTOS的系統中集成在X-CUBE-STL,需先將Flexible Safety RTOS示例包及安全插件模塊解壓到一個文件夾中,然后添加X-CUBE-STL,生成的文件結構如下:
現在,可以開始集成工作了。步驟如下:
將X-CUBE-STL添加到make過程
將所需的X-CUBE-STL段添加到鏈接過程中
為flash測試編寫校驗程序
在代碼中集成和執行X-CUBE-STL
基于IAR編譯器的具體操作如下:
Makefile
Embedded Office為項目提供了一個示例makefile文件,位于項目根目錄中。Makefile描述了BSP、RTOS和安全插件的構建規則。現在我們需要將X-CUBE_STL集成到構建過程中。
添加STM32_Safety_STL源代碼和頭文件搜索路徑:
添加鏈接的STL_Lib.a:
添加stl_user_param_template .c需要的編譯器定義STM32F407xx,用于選擇正確的硬件。
鏈接命令文件
與makefile類似,Embedded Office在示例根目錄中提供了一個鏈接命令文件,該文件依賴于開發環境。IAR中鏈接文件擴展名為“.icf”。
在該文件中,我們為X-CUBE_STL內存測試添加了一個"backup_buffer_section":
注意:此段在RAM測試期間使用,因此RAM內容不會被破壞。
FLASH測試校驗和
確保在下載應用程序時,同時下載flash測試的CRC校驗和。校驗和須存儲在flash中。用戶可以使STM32CubeProgrammer編程CRC。
使用Lauterbach Trace32調試器時,在腳本文件*.cmm中執行以下代碼,計算CRC校驗并將其放置到所需的位置:
示例應用
現在我們可以在應用中調用X-CUBE-STL測試函數。選擇調用位置時,需考慮以下因素:
所有測試功能需要特權訪問權限
測試函數在有限的時間內關閉中斷
我們選擇在hook函數調用測試功能:
注1:空閑任務堆棧必須足夠大。參見STM32F4系列自測庫用戶指南了解所需的STL堆棧。
注2:上面的示例調用了所有STL演示。在實際項目中,僅需選擇涵蓋安全要求的測試。
注3:Flexible Safety RTOS的安全手冊強制執行MPU配置的在線測試。
作為替代方案,可以在啟動安全應用程序之前將一個或多個STL測試作為POST測試執行:
? ? ? ? ?
結論
STM32自測庫與Flexible Safety RTOS和安全插件的集成為從事安全關鍵項目的軟件開發人員提供了強大的解決方案。通過利用自測庫的全面安全檢查、實時故障檢測和診斷報告功能,開發人員可以確保出色的功能安全性、可靠性,并符合行業法規。
審核編輯:劉清
-
寄存器
+關注
關注
31文章
5343瀏覽量
120377 -
STM32
+關注
關注
2270文章
10900瀏覽量
356045 -
MPU
+關注
關注
0文章
359瀏覽量
48803 -
RTOS
+關注
關注
22文章
813瀏覽量
119643 -
CRC校驗
+關注
關注
0文章
84瀏覽量
15209
原文標題:如何在Flexible Safety RTOS安全應用中集成X-CUBE-STL?
文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論