原文:https://baijiahao.baidu.com/s?id=1653270937449528501&wfr=spider&for=pc
一、AUTOSAR和OSEK概述
AUTOSAR與OSEK二者都是汽車電子軟件的標(biāo)準(zhǔn)。
OSEK基于ECU開發(fā),AUTOSAR基于整體汽車電子開發(fā)。

1、AUTOSAR
AUTOSAR一般就是指AUTOSAR構(gòu)架/標(biāo)準(zhǔn),AUTOSAR的全稱是AUTomotive Open System ARchitecture),隨著多年的發(fā)展,越來越多的行業(yè)內(nèi)的公司加入到了AUTOSAR聯(lián)盟中,這其中有OEM(汽車整車廠),Tier1(汽車零部件供應(yīng)商),芯片制造商以及工具制造商,AUTOSAR構(gòu)架/標(biāo)準(zhǔn)也成為了汽車E/E設(shè)計(jì)的發(fā)展方向。
2、OSEK
OSEK,是指德國(guó)的汽車電子類開放系統(tǒng)和對(duì)應(yīng)接口標(biāo)準(zhǔn)(open systems and the corresponding interfaces for automotive electronics),
而VDX則是汽車分布式執(zhí)行標(biāo)準(zhǔn)(vehicle distributed executive),后者最初是由法國(guó)獨(dú)自發(fā)起的,后來加入了OSEK團(tuán)體。兩者的名字都反映出OSEK/VDX的目的是為汽車電子制定標(biāo)準(zhǔn)化接口。該標(biāo)準(zhǔn)完全獨(dú)立,
對(duì)目標(biāo)系統(tǒng)只限制了少量的條件。這樣,就可以應(yīng)用一些簡(jiǎn)單的處理器替代那些昂貴的解決方案,來控制任務(wù)執(zhí)行,并不需要任何附加條件。事實(shí)上,在此基礎(chǔ)上,也可以合理使用一些更復(fù)雜的CPU,于是該標(biāo)準(zhǔn)便對(duì)任何可能的目標(biāo)平臺(tái)都沒有了限制。
標(biāo)準(zhǔn)定義了三個(gè)組件來構(gòu)成OSEK/VDX標(biāo)準(zhǔn):實(shí)時(shí)的操作系統(tǒng)(OSEK OS),通訊子系統(tǒng)(OSEK-COM)和網(wǎng)絡(luò)管理系統(tǒng)(OSEK-NM)。這樣定義的一個(gè)好處是方便了各個(gè)組件版本的定義,這已在實(shí)際應(yīng)用中得到了體現(xiàn)。
在1995年召開的研討會(huì)上眾多的廠商對(duì)OSEK和VDX的認(rèn)識(shí)達(dá)成了共識(shí),產(chǎn)生了OSEK/VDX規(guī)范(1997年發(fā)布),簡(jiǎn)稱OSEK規(guī)范。
它主要由四部分組成:操作系統(tǒng)規(guī)范(OSEK Operating System,OSEK OS)、通信規(guī)范(OSEK Communication , OSEK COM )、網(wǎng)絡(luò)管理規(guī)范( OSEK Net Management, OSEK NM)和OSEK實(shí)現(xiàn)語言(OSEK Implementation Language,OIL)。
AUTOSAR中規(guī)定的操作系統(tǒng)就是OSEK,而通信和網(wǎng)絡(luò)管理雖然和OSEK有區(qū)別,但思路一樣的。
所以認(rèn)為,AUTOSAR是基于OSEK提出的(但不僅基于OSEK),OSEK被AUTOSAR標(biāo)準(zhǔn)軟件架構(gòu)包含。
二、AUTOSAR架構(gòu)的主要特點(diǎn):
1、模塊化和可配置性
定義了一套汽車ECU軟件構(gòu)架,將不依賴硬件的軟件模塊和依賴硬件的軟件模塊分別優(yōu)雅的封裝起來,從而可以讓ECU可以集成由不同供應(yīng)商提供的軟件模塊,增加了功能的重用性,提高了軟件質(zhì)量。軟件可以根據(jù)不同的ECU功能需求和資源情況進(jìn)行靈活配置。
2、標(biāo)準(zhǔn)化接口
定義了一系列的標(biāo)準(zhǔn)API來實(shí)現(xiàn)軟件的分層化。
3、提出了RTE的概念
RTE全稱是Runtime Environment,采用RTE實(shí)現(xiàn)了ECU內(nèi)部和ECU之間的節(jié)點(diǎn)通訊,RTE處于功能軟件模塊和基礎(chǔ)軟件模塊之間,使得軟件集成更加容易。
4、具有標(biāo)準(zhǔn)的測(cè)試規(guī)范
針對(duì)功能和通訊總線制定了標(biāo)準(zhǔn)的測(cè)試規(guī)范,測(cè)是規(guī)范涵蓋的范圍包括對(duì)于AUTOSAR的應(yīng)用兼容性(例如RTE的需求,軟件服務(wù)行為需求和庫(kù)等)和總線兼容性(總線處理行為和總線協(xié)議等),它的目標(biāo)是建立標(biāo)準(zhǔn)的測(cè)試規(guī)范從而減少測(cè)試工作量和成本。
AUTOSAR標(biāo)準(zhǔn)有四個(gè)核心內(nèi)容:ECU軟件構(gòu)架,軟件組件(software components),虛擬功能總線(Virtual Functional Bus),AUTOSAR設(shè)計(jì)方法(Methodology)。
三、OSEK的特點(diǎn):
OSEK規(guī)范為實(shí)現(xiàn)其制定的初衷并滿足汽車控制領(lǐng)域?qū)ο到y(tǒng)安全性和節(jié)省有限資源的特殊要求,制定了系統(tǒng)而全面的操作系統(tǒng)規(guī)范。
1、實(shí)時(shí)性
由于越來越多的微處理器被應(yīng)用到汽車控制領(lǐng)域,如汽車剎車的防抱死系統(tǒng)、動(dòng)力設(shè)備的安全控制等這些系統(tǒng)直接關(guān)系著人的生命安全,即使出現(xiàn)絲毫的差錯(cuò)也會(huì)導(dǎo)致危及生命安全的嚴(yán)重后果,因此要求操作系統(tǒng)具有嚴(yán)格的實(shí)時(shí)性。OSEK操作系統(tǒng)通過靜態(tài)的系統(tǒng)配置、占先式調(diào)度策略、提供警報(bào)機(jī)制和優(yōu)化系統(tǒng)運(yùn)行機(jī)制以提高中斷響應(yīng)速度等手段來滿足用戶的實(shí)時(shí)需求。
2、可移植性
OSEK規(guī)范詳細(xì)規(guī)定了操作系統(tǒng)運(yùn)行的各種機(jī)制,并在這些機(jī)制基礎(chǔ)上制定了標(biāo)準(zhǔn)的應(yīng)用程序編程接口,使那些獨(dú)立編寫的代碼能夠很容易地整合起來,增強(qiáng)了應(yīng)用程序的可移植性。OSEK還制定了標(biāo)準(zhǔn)的OIL,用戶只需更改OIL配置文件中與硬件相關(guān)部分,便可實(shí)現(xiàn)不同微處理器之間的應(yīng)用程序移植。通過這些手段,減少了用于維護(hù)應(yīng)用程序軟件和提高它的可移植性的花費(fèi),降低了應(yīng)用程序的開發(fā)成本
3、可擴(kuò)展性
為了適用于廣泛的目標(biāo)處理器,支持運(yùn)行在廣泛硬件基礎(chǔ)上的實(shí)時(shí)程序,OSEK操作系統(tǒng)具備高度模塊化和可靈活配置的特性。它定義了不同的符合級(jí)別( Conformance Classes),并采用對(duì)不同應(yīng)用程序有可靠接收能力的體系結(jié)構(gòu),從而增強(qiáng)了系統(tǒng)的可擴(kuò)展性。OSEK操作系統(tǒng)可以在很少的硬件資源(RAM,ROM,CPC時(shí)間)環(huán)境下運(yùn)行,即便在8位微處理器上也是如此。
四、AUTOSAR介紹
AUTOSAR是Automotive Open System Architecture(汽車開放系統(tǒng)架構(gòu))的首字母縮寫,AUTOSAR為汽車開放系統(tǒng)架構(gòu),從最底層開始包括ECU硬件、基礎(chǔ)軟件模塊、服務(wù)系統(tǒng)模塊、操作系統(tǒng)、復(fù)雜驅(qū)動(dòng)、ECU抽象層、AUTOSAR運(yùn)行時(shí)環(huán)境、應(yīng)用層軟件。
微控制器抽象層:它是基礎(chǔ)軟件中最低一層,主要包含驅(qū)動(dòng),大部分是一些軟件模塊。
ECU抽象層:這一層是與微控制器抽象層進(jìn)行對(duì)接外部驅(qū)動(dòng)設(shè)備訪問提供API(應(yīng)用程序編程接口)。
AUTOSAR基礎(chǔ)軟件最高層與應(yīng)用軟件關(guān)系密切,在IO信號(hào)訪問ECU抽象層中時(shí)提供操作系統(tǒng)、存儲(chǔ)管理、診斷服務(wù)、ECU狀態(tài)管理。
Runtime Environment 運(yùn)行時(shí)環(huán)境是AUTOSAR虛擬功能總線的接口(Virtual Function Bus)簡(jiǎn)稱VFB。
RTE包含系統(tǒng)服務(wù)、實(shí)時(shí)操作系統(tǒng)、錯(cuò)誤管理器、庫(kù)功能。Operating System 操作系統(tǒng),AUTOSAR.OS包含中斷處理、調(diào)度處理、系統(tǒng)時(shí)間和始終同步、本地消息處理、錯(cuò)誤檢驗(yàn)機(jī)制、看門狗監(jiān)控技術(shù)(主要監(jiān)控與計(jì)時(shí)約束有關(guān)的應(yīng)用執(zhí)行)可以提高可靠性。

這里說的AUTOSAR隨著汽車智能化和網(wǎng)聯(lián)化發(fā)展,被稱為Classic AutoSAR。
Classic AutoSAR是基于強(qiáng)實(shí)時(shí)性的嵌入式OS上開發(fā)出來的軟件架構(gòu),能滿足傳統(tǒng)汽車定制化的功能需求,且能很好勝任;但是一旦要汽車接入網(wǎng)絡(luò),網(wǎng)絡(luò)很可能有延遲、干擾,很可能無法滿足強(qiáng)實(shí)時(shí)性。
這種情況下Classic AutoSAR就無能為力了,所以就需要一套能夠滿足非實(shí)時(shí)性的架構(gòu)系統(tǒng)軟件,在這樣的背景下,Adaptive AUTOSAR就誕生了。但是由于Adaptive AUTOSAR安全級(jí)別基本還停留在ASIL-B(最高是D),所以很多需要強(qiáng)安全級(jí)別的ECU當(dāng)下還是需要Classic AutoSAR(能滿足ASIL-D)來實(shí)現(xiàn)。
基于Classic AutoSAR平臺(tái)開發(fā)的汽車控制器,具有如下特點(diǎn):
1、硬實(shí)時(shí),可在us時(shí)間內(nèi)完成事件的實(shí)時(shí)處理,硬實(shí)時(shí)任務(wù)必須滿足最后期限的限制,以保證系統(tǒng)的可靠運(yùn)行。
2、高功能安全等級(jí),其可達(dá)到ASIL-D的安全等級(jí)。
3、對(duì)CPU、RAM或Flash等資源具有較低的占用率。
4、軟件功能通常是固化不可動(dòng)態(tài)變更的。
Apdative Autosar作為異構(gòu)軟件平臺(tái)的軟件架構(gòu),主要用于域控制器,可以成為連接Classic AutoSAR和Linux這樣的非實(shí)時(shí)OS的橋梁,其具有如下特點(diǎn):
1、軟實(shí)時(shí),具有毫秒級(jí)內(nèi)的最后期限,且偶爾錯(cuò)過最后期限也不會(huì)造成災(zāi)難性后果。
2、具有一定的功能安全要求,可達(dá)到ASIL-B或更高。
3、與經(jīng)典平臺(tái)不同的是,它更適用于多核動(dòng)態(tài)操作系統(tǒng)的高資源環(huán)境,如QNX。

Adaptive Autosar與Classic Autosar相比,雖實(shí)時(shí)性要求有所降低,但在保證一定功能安全等級(jí)的基礎(chǔ)上,大大提高了對(duì)高性能處理能力的支持,以支持智能互聯(lián)應(yīng)用功能的開發(fā),因此C++將成為Adaptive Autosar平臺(tái)的主要開發(fā)語言。

Adaptive Autosar的出現(xiàn)是為了在Classic Autosar平臺(tái)基礎(chǔ)上,針對(duì)不同的應(yīng)用場(chǎng)景實(shí)現(xiàn)兩者的共存和協(xié)作,Classic Autosar平臺(tái)支持高安全性和高實(shí)時(shí)性的應(yīng)用場(chǎng)景,因此對(duì)于深度嵌入式的軟件功能需部署運(yùn)行在經(jīng)典平臺(tái)上;而Adaptive Autosar則支持大數(shù)據(jù)的并行處理,所以對(duì)于高性能運(yùn)算的功能則需要運(yùn)行在Adaptive平臺(tái)上。隨著無人駕駛技術(shù)的如火如荼,車聯(lián)網(wǎng)及萬物互連、云技術(shù)的日益發(fā)展,Adaptive Autosar的出現(xiàn)不僅可滿足現(xiàn)有需求,還可滿足未來汽車技術(shù)的革新變化,由于其支持各種自適應(yīng)的部署、復(fù)雜的微控制器以及各種非Auosar系統(tǒng)的互動(dòng),未來汽車將擁有不同類型的架構(gòu)并互相進(jìn)行補(bǔ)充。