日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

功能安全開發(fā)(五)軟件開發(fā)

 yeshuheng 2019-09-05

軟件功能安全開發(fā)中主要針對的是軟件的系統(tǒng)性失效。這里面主要是針對各階段開發(fā)活動提出了相應(yīng)的規(guī)范性要求,并對不同ASIL等級軟件開發(fā),所需要進(jìn)行的具體測試方法和內(nèi)容。

1避免軟件系統(tǒng)性失效

軟件功能開發(fā)遵循V模型開發(fā),即從需求開始,分層次進(jìn)行軟件的架構(gòu)設(shè)計、單元設(shè)計和具體的代碼開發(fā)。與每階段設(shè)計開發(fā)對應(yīng)的是相應(yīng)的集成和測試工作。

2 軟件V模型開發(fā)

ISO26262里對軟件開發(fā)的很多具體規(guī)范性要求很多,并且比較詳細(xì)。但對這些規(guī)范的合規(guī)性檢查就是不太容易操作的事情了。對于代碼的靜態(tài)分析和語義代碼分析,在開發(fā)中可以借助專業(yè)工具依據(jù)具體的規(guī)范標(biāo)準(zhǔn)(如MISRA-C等)進(jìn)行檢查,工具可以幫助查找所有錯誤和不符合項。而對于一些設(shè)計規(guī)則,如軟件架構(gòu)設(shè)計要注意層次性,高內(nèi)聚,低耦合。這種指導(dǎo)性的要求,在實際開發(fā)中,開發(fā)者不太容易對開發(fā)產(chǎn)物進(jìn)行準(zhǔn)確評價。這里簡單介紹一下業(yè)界使用比較廣泛的架構(gòu)設(shè)計標(biāo)準(zhǔn)和設(shè)計思路。

汽車電子領(lǐng)域最常用的軟件架構(gòu)設(shè)計標(biāo)準(zhǔn)之一是AUTOSARAUTOmotive Open System Architecture)。AUTOSAR標(biāo)準(zhǔn)是2003年歐洲寶馬為首幾家OEM聯(lián)合一些Tier1成立的聯(lián)盟,目標(biāo)是開發(fā)適用于汽車電子開發(fā)的支持分布式、功能驅(qū)動的汽車電子軟件開發(fā)方法和軟件架構(gòu)標(biāo)準(zhǔn)化方案。AUTOSAR采用了分層式的設(shè)計,實現(xiàn)了軟件和硬件的分離。

AUTOSAR通過中間層RTE(Runtime Enviroment)作為虛擬總線,成功的實現(xiàn)上層應(yīng)用軟件層(Application Software Layer)和下層基于硬件的基礎(chǔ)軟件層(Basic Software)。采用AUTOSAR架構(gòu)設(shè)計,在進(jìn)行應(yīng)用層軟件開發(fā)時,可以不受硬件ECU的限制,擺脫了對硬件的依賴。RTE集合了所有AUTOSAR提供的通信機(jī)制。應(yīng)用軟件被劃分為各個組件,通過系統(tǒng)配置,軟件組件會被映射到指定的ECU上,而組件間的虛擬連接也同時映射CAN,FlexRay,MOST等總線上。軟件組件與RTE通信,是通過預(yù)先定義好的端口來實現(xiàn)的。各軟件組件之間不允許直接互相通信,RTE層封裝好COM等通信層BSW后,為上層應(yīng)用軟件提供RTE API,軟件組件再使用端口的方式進(jìn)行通信。

3 AUTOSAR架構(gòu)簡介

AUTOSAR架構(gòu)中共分六層:

1.應(yīng)用軟件層(Application Layer

2.運行環(huán)境RTE(RuntimeEnvironment)

3.服務(wù)層(Services Layer

4.ECU抽象層(ECU Abstraction Layer

5.微控制器抽象層(MicrocontrollerAbstraction Layer

6.復(fù)雜驅(qū)動(Complex DeviceDrivers

4 AUTOSAR 分層

微控制器抽象層是處理控制器依賴的各功能,包括IO驅(qū)動、通信驅(qū)動、內(nèi)存驅(qū)動和微控制器驅(qū)動。這一層也相當(dāng)于傳統(tǒng)嵌入式開發(fā)中的底層驅(qū)動。

      ECU抽象層是基于ECU依賴的各功能,這一層經(jīng)過微控制器抽象層的隔離,已經(jīng)是不依賴特定的微控制器了。ECU抽象層主要包括IO硬件抽象層、通信抽象層、內(nèi)存抽象層和車載設(shè)備抽象層。ECU抽象層將微控制器抽象層各功能抽象為ECU層的功能。

服務(wù)層主要包括了通信服務(wù)、內(nèi)存服務(wù)和系統(tǒng)服務(wù)。這一層可以隔離大部分ECU依賴的功能。而在開發(fā)中,一些極高實時性的傳感器采樣、執(zhí)行器控制等功能,需要通過專門的復(fù)雜驅(qū)動來實現(xiàn)。

軟件開發(fā)中采用AUTOSAR架構(gòu),成功的將應(yīng)用層與底層隔離開了。這樣車廠或者Tier1可以專心進(jìn)行與產(chǎn)品功能直接相關(guān)的應(yīng)用層開發(fā),在應(yīng)用層上建立起區(qū)別于對手的特征。對于中間層和底層,可以交由專業(yè)的供應(yīng)商來完成,而且這一部分有越來越趨同的現(xiàn)象。中間層和底層對用戶是不可見的,車廠對于這部分工作甚至可以采用共同的平臺供應(yīng)商,這樣對成本和產(chǎn)品成熟、穩(wěn)定性都是有很大幫助的。

當(dāng)然,上面提到的AUTOSAR的優(yōu)勢只是理論上的。在實際產(chǎn)品開發(fā)中,應(yīng)用層開發(fā)方或者最終產(chǎn)品負(fù)責(zé)方是不可能真的做到完全不管中間層和底層實現(xiàn)的,只是這種參與和投入程度相比傳統(tǒng)的方式大大減少。作為系統(tǒng)開發(fā)和集成方,對于功能安全產(chǎn)品開發(fā),其負(fù)責(zé)的工作不僅包括軟件開發(fā),也包括達(dá)到標(biāo)準(zhǔn)對硬件指標(biāo)的要求。而對于硬件設(shè)計,其是與采用的控制器型號、外圍驅(qū)動和通信設(shè)備、甚至電容電阻是直接相關(guān)的。對于硬件相關(guān)的診斷,大多需要相應(yīng)的軟件功能來調(diào)用和實現(xiàn)。對于很多軟件功能診斷,同樣會對硬件設(shè)備提出要求。在系統(tǒng)架構(gòu)設(shè)計上,需要兼顧軟硬件需求,合理設(shè)計系統(tǒng)架構(gòu)。汽車設(shè)計中常采用的架構(gòu)包括從傳統(tǒng)發(fā)動機(jī)設(shè)計演變而來的EGAS三層架構(gòu)。在功能安全的系統(tǒng)架構(gòu)設(shè)計中,我們可以考慮借鑒類似EGAS這種業(yè)界比較成熟的架構(gòu)設(shè)計思路。

5 EGAS三層架構(gòu)

(本文及功能安全開發(fā)系列文章中,所有例子和相關(guān)參數(shù)均為個人交流使用,所有均為假設(shè),無任何項目相關(guān)或驗證。僅供參考學(xué)習(xí))

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多