汽車軟件正在迅速發展,其復雜性、安全性要求以及對高效開發流程的需求與日俱增。在這一背景下,虛擬ECU(vECU)成為加速開發和驗證的關鍵工具,而將Rust語言集成進AUTOSAR Classic環境則為行業帶來了寶貴的新可能。雖然在全新項目中使用Rust看似簡單,但將其整合到現有基于C語言的AUTOSAR Classic軟件棧中,將更具現實意義和實用價值。這是因為現有的、經過系列驗證的汽車軟件堆棧通常以C代碼實現,而將這些堆棧移植到Rust需要承擔高昂的完全重寫成本。此外,由于對供應鏈的依賴性,這項工作十分復雜,而且并非所有場景都需進行此類遷移,因此其商業可行性仍有待考量。Rust與C語言的互操作性為這一難題提供了巧妙的解決方案,可以在保留AUTOSAR Classic堆棧的主要部分(如RTE、BSW和MCAL)的同時,用Rust實現新的AUTOSAR軟件組件(SWC),或者將現有的AUTOSAR SWC逐步從C語言遷移到Rust代碼。
這種混合方法使開發者能夠在AUTOSAR Classic項目中發揮Rust的價值,同時保持現有的開發工作流程。在vECU開發中,與新思科技Silver等市場領先的工具相結合時,這種靈活性顯得尤為重要。通過支持在AUTOSAR Classic項目中使用Rust SWC,Silver為在混合編程語言環境中進行更安全、更快速的汽車軟件開發開辟了可能。
Rust在汽車領域的應用:挑戰與現狀
多年來,AUTOSAR Classic環境下的軟件開發完全依賴于C語言。雖然C語言的性能優越,但Rust在性能相當的情況下,通過內置支持來避免某些類型的內存相關漏洞(如越界讀/寫),從而降低了任務關鍵型應用程序的風險。從本質上講,C語言中與內存相關的漏洞往往難以察覺,在某些情況下甚至可能永遠無法被發現。對于需要遵守ISO 26262和ISO 21448等標準的安全關鍵型系統來說,這無疑是一個嚴峻的挑戰。值得一提的是,內存相關漏洞通常占安全漏洞的很大一部分,這也進一步凸顯了問題的嚴重性[1, 2, 3, 4]。
Rust在汽車行業的優勢已得到廣泛認可,因此AUTOSAR聯盟于2022年在其安全工作組中啟動了對Rust在AUTOSAR Adaptive中應用的研究[5]。2023年11月,AUTOSAR聯盟在R23-11版本中發布了如何用Rust編寫AUTOSAR Adaptive應用程序的初步提案[6],這突顯了Rust在基于POSIX的軟件棧中的相關性 。Rust優勢顯而易見。例如,得益于內置的所有權系統和借用規則,Rust可以避免多線程AUTOSAR Adaptive應用程序中的并發錯誤。鑒于Rust已在AUTOSAR Adaptive中展現出的顯著優勢,將其用于實現AUTOSAR Classic SWC也是順理成章的事。
虛擬ECU和Rust:強大的組合
虛擬ECU的重要性
虛擬ECU(vECU)徹底改變了汽車行業的軟件開發和測試。通過在虛擬環境中模擬物理ECU的行為,可以在無需依賴物理硬件的前提下,更快地開發和驗證軟件。這樣,即使沒有硬件,也可以提前啟動軟件開發和測試。此外,以SDV為核心的流程(如CI/CD)可以在整個開發周期中充分利用虛擬ECU,從而更快地獲得代碼更改后的預期結果。如同Silver這樣的市場領先的軟件,構建了虛擬ECU,使其基于AUTOSAR Classic平臺的軟件開發與驗證得以加速。
Rust在Level 1層級vECU中的作用
2024年,新思科技發布了一份全面的白皮書[7],介紹了AUTOSAR Classic和基于POSIX的軟件棧的vECU級別分類。新思科技Silver可以生成Level 1-Level 3 vECU,而本文主要聚焦于AUTOSAR Classic Level 1 vECU。新思科技Silver Level 1 vECU提供了一個虛擬化的AUTOSAR Classic RTE,可以在典型主機或云端的軟件在環(SiL)仿真中運行AUTOSAR Classic SWC,因此目標機不需要AUTOSAR Classic軟件棧或物理硬件的支持。RTE由Silver根據AUTOSAR XML文件生成,這一過程與真實ECU的AUTOSAR Classic工作流程完全一致。用Rust實現AUTOSAR Classic SWC時,RTE生成過程確保了Rust SWC能夠訪問RTE的C語言接口。因此,根據所提供的規范,通過新思科技Silver調度和執行可運行實體,可以實現RTE與仿真中其他SWC的通信。下圖為將Rust SWC集成到Level 1級vECU的高層架構,展示了如何通過新思科技Silver生成的RTE與基于C語言的SWC進行通信。
新思科技繼續引領技術發展,推動在SiL仿真中驗證Rust SWC
Rust在汽車行業越來越受歡迎。最近,多家主流汽車量產軟件供應商已經宣布,支持將基于Rust的SWC集成到現有基于C語言的AUTOSAR Classic軟件棧中,具體示例請見參考資料[8]。
新思科技作為汽車測試和仿真領域的市場領導者,正與首批標桿客戶合作,通過SiL仿真驗證基于Rust的軟件。本文概述了新思科技Silver如何通過生成虛擬RTE的Level 1 vECU,對基于Rust的AUTOSAR Classic SWC進行了驗證。展望未來,相關用例還將持續涌現,共同為Rust在汽車行業的廣泛應用鋪平道路。
-
AUTOSAR
+關注
關注
10文章
378瀏覽量
22610 -
新思科技
+關注
關注
5文章
865瀏覽量
51460 -
智能汽車
+關注
關注
30文章
3082瀏覽量
108359 -
Rust
+關注
關注
1文章
234瀏覽量
7075
原文標題:Rust上車新趨勢!看新思科技如何無縫驗證更安全的智能汽車軟件
文章出處:【微信號:Synopsys_CN,微信公眾號:新思科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
硬件輔助驗證(HAV) 對軟件驗證的價值
新思科技邀您相約DVCon China 2025
密碼賦能|事關智能網聯汽車產品準入、召回及軟件在線升級管理

新思科技與Vector達成戰略合作
2025年汽車行業發展:更智能、更安全、更迅速

新思科技推出基于AMD芯片的新一代原型驗證系統
新思科技推出全新硬件輔助驗證產品組合
新思科技全新升級業界領先的硬件輔助驗證產品組合,助力下一代半導體與設計創新
魏牌全新藍山榮獲汽車座艙個人信息安全保護驗證證書
新思科技助力汽車制造商加速推進SDV開發
軟件與半導體技術重塑汽車行業:新思科技助力提升汽車智能化與可靠性
新思科技PCIe 7.0驗證IP(VIP)的特性

評論