代碼的生成和編寫方式,甚至采購方式都與最近的歷史完全不同。隨著對人工智能和提高安全性等技術的需求,系統復雜性正在迅速增長。我們也看到了更多的自主機器及其固有的復雜性,包括高安全完整性。結果是代碼庫正在擴展。當今的開發人員需要跟上步伐。
Arm正在為動力總成(也稱為車輛和運動動力學應用)鋪平道路,因為用戶可以通過Arm處理器和工具以及生態系統合作伙伴的組合實現更好的性能。
系統復雜性的增加導致了新一代工具的使用,即基于模型的控制開發工具。這些工具可以滿足對更“成熟”的控制系統的需求,以監控和調節相關硬件。
C仍然是首選語言
C仍然是動力總成控制系統中最流行的編程語言,無論是手工編碼還是自動生成,因為編譯后的代碼的執行速度以及其廣泛的編譯器支持。但是,開發人員必須采取適當的預防措施,因為可以創建使用一個工具鏈和處理器正常運行的代碼,但不能在另一個工具鏈和處理器上運行。
這里描述的情況促使汽車行業創建了一套來自MISRA(汽車工業軟件可靠性協會)的C語言軟件開發指南。該指南的目標是強制使用 C 的子集,以最大限度地提高代碼安全性、安全性和可移植性。
另一個趨勢是使用 Eclipse 平臺作為許多工具的集成開發環境 (IDE) 的基礎。這提供了這些工具的使用之間的共性,無論是從用戶體驗的角度來看,還是從不同的工具如何相互交互的角度來看。
對于開發人員的武器庫來說,一個這樣的工具是Arm開發工作室,它具有Arm編譯器。使用這些工具,開發人員可以優化由基于模型的設計流生成的代碼。Arm 開發工作室是一個嵌入式 C/C++ 開發工具鏈,可加速基于 Arm 的 SoC 的系統設計和軟件開發,特別是那些基于 Cortex-M、Cortex-R 和 Cortex-A 處理器的 SoC。Arm 開發工作室涵蓋整個產品生命周期,從 SoC 架構探索到軟件集成和測試。
Arm 編譯器為 Arm 架構的最新架構功能和擴展提供早期和準確的支持。它本質上是一個工具鏈,是為開發裸機軟件、固件和RTOS應用程序而量身定制的,其中顯然包括汽車。此外,它還通過了 TUV SUD 的認證,可用于符合 ISO 26262、IEC 61508、EN 50128 和 IEC 62304 標準的高完整性安全應用。
另一個基于Eclipse的工具,ASCET-DEVELOPER,是汽車領域已經使用了二十多年的自動代碼生成器的一個例子。該工具在許多汽車原始設備制造商中很受歡迎,可用于汽車動力總成和底盤軟件的原型和生產,甚至滿足最高的安全要求。對于有經驗的C開發人員來說,它可以是一個非常直觀的工具,原理圖(或塊狀)圖和生成的C代碼之間有密切的聯系。
如圖所示,ASCET-DEVELOPER 框圖、狀態機和 C 代碼都可以駐留在 Eclipse 窗口中。
在此過程中添加檢查
程序框圖和狀態機不斷被翻譯成ESDL(嵌入式系統描述語言),允許ASCET-DEVELOPER在編輯圖時和構建之前檢查圖表。構建完成后,將生成符合MISRA標準的可移植源代碼。如果使用適當的工具,將MISRA C代碼從一個微處理器遷移到另一個微處理器可能非常簡單。
為ISO 26262或IEC 61508創建最大的安全完整性系統不需要復雜的過程。相反,它需要一個干凈的過程,從頭到尾具有良好的可追溯性。將 Arm 微處理器的強大功能、靈活性和安全性與 Arm 開發工作室和符合 ASIL-D 標準的 Arm 編譯器套件相結合,可以實現簡單的流程。通過提供基于 Eclipse 的 IDE,開發人員現在能夠利用各種版本管理插件和類似可用的第三方工具。
審核編輯:郭婷
-
處理器
+關注
關注
68文章
19852瀏覽量
234190 -
ARM
+關注
關注
134文章
9340瀏覽量
376154 -
soc
+關注
關注
38文章
4362瀏覽量
222184
發布評論請先 登錄
IAR發布RISC-V開發工具鏈v3.40.1版本
IAR發布Arm開發工具鏈v9.70.1版本
在IAR Arm開發工具鏈中--function_sections編譯選項的使用

評論