近年來,汽車應(yīng)用中使用的軟件出現(xiàn)了驚人的增長,汽車領(lǐng)域的軟件實(shí)現(xiàn)有很多需要考慮的問題,包括安全標(biāo)準(zhǔn)、聯(lián)網(wǎng)汽車安全性和高效開發(fā),但傳統(tǒng)的軟件架構(gòu)也不能忽視。本期討論這些軟件架構(gòu)方面的考慮。
關(guān)鍵項(xiàng)
對于大多數(shù)系統(tǒng)來說,快速的軟件啟動(dòng)時(shí)間是必不可少的,以使汽車盡可能快地進(jìn)入安全工作狀態(tài)。
響應(yīng)能力也非常重要,因?yàn)楫?dāng)汽車高速行駛時(shí),事件發(fā)生得非??臁榱斯芾磉@些功能,大多數(shù)汽車架構(gòu)都支持并行處理。因此,軟件還需要支持核間的通信和同步。
安全完整性等級(SIL)
由于成本和采購限制,汽車軟件可能必須提供支持不同SIL等級的功能。為了防止針對不同SIL等級設(shè)計(jì)的軟件之間的干擾,開發(fā)人員可以利用處理器的內(nèi)存保護(hù)單元(MPU)或內(nèi)存管理單元(MMU),實(shí)現(xiàn)隔離。
MMU
可以選擇支持基于任務(wù)分配內(nèi)存區(qū)域的RTOS,進(jìn)一步增強(qiáng)空間分離。每個(gè)任務(wù)都可以被授予對特定內(nèi)存區(qū)域的訪問權(quán)限,上下文切換將重新配置MPU/MMU寄存器以反映活動(dòng)任務(wù)的內(nèi)存訪問權(quán)限。
是否需要實(shí)時(shí)操作系統(tǒng)?
有一些成熟的技術(shù),可以在不使用 RTOS 的情況下編寫良好的嵌入式軟件。但隨著解決方案復(fù)雜性的增長,使用RTOS好處更多,RTOS的優(yōu)點(diǎn)包括:
基于優(yōu)先級的調(diào)度,分離關(guān)鍵處理與非關(guān)鍵處理。
RTOS負(fù)責(zé)管理時(shí)間并提供API功能,實(shí)現(xiàn)更簡潔、更小的應(yīng)用程序代碼。
抽象時(shí)間依賴關(guān)系和基于任務(wù)的設(shè)計(jì),減少了模塊之間的相互依賴,易于維護(hù)。
基于任務(wù)的API促進(jìn)了模塊化測試及團(tuán)隊(duì)獨(dú)立開發(fā)。
事件驅(qū)動(dòng)結(jié)構(gòu)確保了高效的處理,無需浪費(fèi)時(shí)間輪詢事件是否發(fā)生。
后臺處理在空閑任務(wù)中進(jìn)行,保證CPU負(fù)載測量、后臺CRC校驗(yàn)等任務(wù)不影響主處理。
預(yù)認(rèn)證軟件模塊
開發(fā)汽車軟件既復(fù)雜又耗時(shí),但利用已有的模塊可以簡化開發(fā)過程。許多預(yù)先認(rèn)證的模塊已基于ISO 26262標(biāo)準(zhǔn)進(jìn)行了驗(yàn)證。預(yù)認(rèn)證軟件模塊提供健壯可靠的軟件,但評估模塊與特定處理器和編譯器組合的兼容性至關(guān)重要。建議選擇基于使用的處理器和編譯器組合設(shè)計(jì)和驗(yàn)證過的預(yù)認(rèn)證軟件,如果可能的話,甚至可以選擇相同的編譯器版本和編譯器設(shè)置,消除了在目標(biāo)硬件上重新測試的需要。
SAFERTOS是經(jīng)過安全預(yù)認(rèn)證的嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),為功能安全的最高標(biāo)準(zhǔn)而設(shè)計(jì),并通過TüV SüD認(rèn)證,符合IEC 61508 SIL 3和ISO 26262 ASIL D。SAFERTOS還包含支持安全關(guān)鍵汽車軟件開發(fā)的功能:
可通過TüV SüD獲得ISO 26262 ASIL D預(yù)認(rèn)證;
支持廣泛的汽車處理器;
快速啟動(dòng),響應(yīng)速度快;
任務(wù)分離和隔離特性;
提供OSEK OS適配層;
廣泛應(yīng)用于汽車行業(yè);
審核編輯:黃飛
-
cpu
+關(guān)注
關(guān)注
68文章
11077瀏覽量
217030 -
RTOS
+關(guān)注
關(guān)注
24文章
851瀏覽量
121155 -
實(shí)時(shí)操作系統(tǒng)
+關(guān)注
關(guān)注
1文章
202瀏覽量
31333 -
汽車軟件
+關(guān)注
關(guān)注
1文章
130瀏覽量
3478
原文標(biāo)題:汽車軟件開發(fā)中的架構(gòu)思考
文章出處:【微信號:麥克泰技術(shù),微信公眾號:麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
ECU電控軟件開發(fā)及測試介紹

簡單之美——軟件開發(fā)實(shí)踐者的思考
汽車CAN總線仿真軟件開發(fā)
嵌入式軟件開發(fā)中的程序架構(gòu)
架構(gòu)之美(精選版)_InfoQ企業(yè)軟件開發(fā)叢書
如何加速自動(dòng)駕駛汽車的軟件開發(fā)進(jìn)程
嵌入式軟件開發(fā)中三種程序架構(gòu)

“進(jìn)化·創(chuàng)新·革命”:來自AutoSW 2021智能汽車軟件開發(fā)大會AutoSW的邀請函

利用汽車開發(fā)標(biāo)準(zhǔn)規(guī)范汽車應(yīng)用程序的軟件開發(fā)
汽車軟件開發(fā)流程介紹
汽車功能安全軟件開發(fā)階段軟件架構(gòu)安全設(shè)計(jì)
常見的軟件架構(gòu)分層
軟件開發(fā)必讀!華為云軟件開發(fā)生產(chǎn)線 CodeArts 深度體驗(yàn)指南

AUTOSAR軟件開發(fā)流程簡介

評論