從Adaptive AUTOSAR的角度看SOA


來源 |  汽車ECU開發(fā)


前言


身處汽車行業(yè)的我們深知,新技術(shù)的應(yīng)用或者新概念的提出,一定是事出有因的。通常是為了搶奪新技術(shù)高地,讓汽車更好地滿足未來的需求。那么,汽車電子電氣架構(gòu)領(lǐng)域掀起的這股SOA熱潮是由什么導(dǎo)致的?什么是SOA?SOA能帶來什么好處?怎樣實(shí)施SOA呢?Adaptive AUTOSAR與SOA是什么關(guān)系?


1、為什么汽車要上SOA


① 老車新體驗(yàn),快速滿足市場需求


從Adaptive AUTOSAR的角度看SOA的圖1


必須打破車內(nèi)靜態(tài)交互模型

車輛內(nèi)部控制器通過傳統(tǒng)總線連接,從而實(shí)現(xiàn)通信交互,但是信號的收發(fā)關(guān)系和路由信息通常是靜態(tài)的、不可更改的。如果后期突然新增節(jié)點(diǎn),改矩陣和路由表?再如果,車輛上市后想新增一個功能到某個控制器,OTA可以將軟件包本身下載到該控制器,但這個“新朋友”怎樣從其他節(jié)點(diǎn)獲得所需信息呢?


必須建立功能靈活治理的系統(tǒng)架構(gòu)

OTA是目前解決車輛在線升級、持續(xù)提升用戶用車體驗(yàn)的好方法。一個功能一個盒子的時代已經(jīng)過去了。但OTA僅僅是途徑,車輛的電子電氣架構(gòu)和軟件設(shè)計(jì)架構(gòu)能否支持功能更新呢?如果一個新增功能的實(shí)現(xiàn),與車輛原有的系統(tǒng)架構(gòu)、驅(qū)動方式、通信方式不匹配,甚至相沖突,這肯定是不可行的。那么應(yīng)該怎樣解決呢?


② 萬物互聯(lián),汽車接入物聯(lián)網(wǎng)


從Adaptive AUTOSAR的角度看SOA的圖2


汽車在不久的將來會在互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、能源物聯(lián)網(wǎng)中都占有重要的地位。所以汽車必須具備開放性、網(wǎng)聯(lián)性甚至自主性和自進(jìn)化性。自動駕駛、V2X、邊緣計(jì)算都是目之可見的應(yīng)用場景,電子電氣架構(gòu)和軟件平臺架構(gòu)在面對這些需求的時候,應(yīng)如何處理?已有的電子電氣架構(gòu)及相應(yīng)的解決方案,很難解決目前汽車所遇到的挑戰(zhàn),需要新的方法論來打破僵局,于是車載SOA作為解決方案被提了出來。


2、SOA詳解


① 先說說什么是SOA


從Adaptive AUTOSAR的角度看SOA的圖3


? SOA是Service-Oriented Architecture的縮寫,面向服務(wù)的架構(gòu)。

? BEA資深SOA架構(gòu)師Jeff Davies在其《SOA權(quán)威指南》中說到:SOA不是一種具體的技術(shù),而是一種架構(gòu)策略層面的指導(dǎo)思想。

? OASIS(結(jié)構(gòu)化信息標(biāo)準(zhǔn)促進(jìn)組織)對SOA的定義是:SOA是一個范式,以達(dá)到組織利用處于不同所有權(quán)范圍控制下的分布式系統(tǒng)。

? 百度百科對SOA的定義是:面向服務(wù)的架構(gòu)(SOA)是一個組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))進(jìn)行拆分,并通過這些服務(wù)之間定義良好的接口和協(xié)議聯(lián)系起來。接口是采用中立的方式進(jìn)行定義的,它應(yīng)該獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺、操作系統(tǒng)和編程語言。這使得構(gòu)建在各種各樣的系統(tǒng)中的服務(wù)可以以一種統(tǒng)一和通用的方式進(jìn)行交互。


從Adaptive AUTOSAR的角度看SOA的圖4


SOA的概念出自IT界,到現(xiàn)在都沒有一個公認(rèn)的定義,但是SOA的目標(biāo)及其應(yīng)具有的特性卻是清晰明了的:

目標(biāo):

構(gòu)建靈活可變的平臺系統(tǒng)

特性:

服務(wù)間——松耦合、無狀態(tài)、無依賴

服務(wù)內(nèi)——高內(nèi)聚且完整、可復(fù)用、可靈活重組

服務(wù)通信——標(biāo)準(zhǔn)化


② 從中我們看到SOA實(shí)現(xiàn)的重點(diǎn)在于:


? 服務(wù)通信標(biāo)準(zhǔn)化,即面向服務(wù)的通信(SOC,Service-Oriented Communication)

? 以服務(wù)重用、靈活重組為目的的服務(wù)劃分,即面向服務(wù)的重用共享設(shè)計(jì)(SORS,Service-Oriented Reuse-shared Design)

? 還有一個隱形的重點(diǎn),就是用于承載和適配SOC和SORS的軟件實(shí)現(xiàn),即基于服務(wù)的軟件架構(gòu)(SOSA,Service-Oriented Software Architecture)

在車載環(huán)境中,SOME/IP基本解決了SOC,但SORS呢?SOSA呢?僅有SOC的SOA是沒有靈魂的,是不完整,也不可能實(shí)現(xiàn)SOA的目標(biāo)。


3、汽車SOA(v-SOA)怎么實(shí)現(xiàn)呢


從Adaptive AUTOSAR的角度看SOA的圖5


v-SOA:vehicle SOA,即應(yīng)用在車輛上的SOA 。SOA在IT領(lǐng)域基本是基于以太網(wǎng)實(shí)現(xiàn)的,車載環(huán)境下最優(yōu)的實(shí)現(xiàn)方式應(yīng)該是繼承成熟的技術(shù)和實(shí)現(xiàn)思路。好在車載以太網(wǎng)發(fā)展至今也有了幾年的積累,國內(nèi)自主研發(fā)應(yīng)用以太網(wǎng)技術(shù)的新一代車型,已經(jīng)陸續(xù)量產(chǎn)發(fā)售了。站在車載以太網(wǎng)的肩膀上去實(shí)現(xiàn)SOA,無疑是一種不錯的選擇。


聚焦于汽車電子,接下來從SOC、SORS和SOSA這三點(diǎn)來介紹v-SOA的實(shí)現(xiàn)。


① SOC面向服務(wù)的通信(Service Oriented Communication)


SOC主要為了實(shí)現(xiàn)通信標(biāo)準(zhǔn)化,動態(tài)建立通信關(guān)系,連接信息孤島。車載以太網(wǎng)協(xié)議架構(gòu)中的SOME/IP(Service-Oriented MiddleWare over IP)就是基于SOA思想定義的通信中間件。熟悉SOME/IP的朋友都知道,SOME/IP是針對車載環(huán)境定義一套通信協(xié)議,出自AUTOSAR??梢赃_(dá)到屏蔽系統(tǒng)異構(gòu)性,實(shí)現(xiàn)互操作的目的。所以,就實(shí)現(xiàn)SOC而言,我們完全能夠通過SOME/IP來完成(當(dāng)然SOC并非僅能通過SOME/IP來實(shí)現(xiàn),在滿足一些前提條件時,其他傳輸協(xié)議也可以使用,比如DDS等)。


通信行為

SOME/IP吸收了RPC機(jī)制,順利地繼承了Server-Client的模型。SOME/IP Service Discovery可以讓Client靈活可靠地找到Server,并訂閱感興趣的服務(wù)內(nèi)容。Client可以用Request-Response、Fire&Forget的模型訪問Server所提供的Services;Server可以利用Notification推送給Client已經(jīng)訂閱的服務(wù)內(nèi)容。由于以太網(wǎng)采用交換機(jī)的組網(wǎng)方式,拓?fù)鋬?nèi)以太網(wǎng)節(jié)點(diǎn)的交互能夠二層轉(zhuǎn)發(fā),網(wǎng)內(nèi)節(jié)點(diǎn)可以動態(tài)地建立服務(wù)提供與消費(fèi)的關(guān)系,不依賴于其他額外的機(jī)制和組件。


從Adaptive AUTOSAR的角度看SOA的圖6

SOME/IP通信示例


例如,訂閱機(jī)制,高精地圖Server向外提供高精地圖數(shù)據(jù)(Offer Service),ADAS控制單元想要訂閱其車道線相關(guān)信息(Subscribe EventGroup),高精地圖Server同意其訂閱請求(Subscribe EventGroup Ack),而后Server開始發(fā)布高精地圖的車道線數(shù)據(jù)給ADAS控制單元。


再如,請求與響應(yīng)機(jī)制,HU想要獲取DVR內(nèi)存信息,此時DVR是Server,HU是client,由HU向DVR發(fā)出request,DVR收到請求后,根據(jù)自身當(dāng)前狀態(tài),回復(fù)response。


服務(wù)接口描述

統(tǒng)一的服務(wù)接口描述是跨系統(tǒng)通信的重要組成,SOME/IP有自己的一套序列化原則,系統(tǒng)設(shè)計(jì)階段要基于SOME/IP提供的數(shù)據(jù)類型,統(tǒng)一設(shè)計(jì)服務(wù)接口描述,例如下表,還要進(jìn)一步定義尋址信息等。


從Adaptive AUTOSAR的角度看SOA的圖7


② SORS面向服務(wù)的重用共享設(shè)計(jì)(Service-Oriented Reuse-shared Design)


汽車電子電氣架構(gòu)(EEA)的演進(jìn)如下圖所示:


從Adaptive AUTOSAR的角度看SOA的圖8


當(dāng)前整車架構(gòu)多處于分布式階段(下圖),車內(nèi)所有具備以太網(wǎng)通信能力的節(jié)點(diǎn)離散地掛在網(wǎng)關(guān)上,沒有域控制器、中央處理器或者高性能處理節(jié)點(diǎn)等概念。如此實(shí)現(xiàn)SOC是沒有問題的,但是以此實(shí)現(xiàn)SOA是有困難的。原因是功能太分散,每個節(jié)點(diǎn)的資源由于初期規(guī)劃功能簡單,而不可能預(yù)留豐富的資源供量產(chǎn)后新增功能使用和消耗,因此很難在此基礎(chǔ)上實(shí)現(xiàn)功能重構(gòu)。


從Adaptive AUTOSAR的角度看SOA的圖9


這也是下一代電子電氣架構(gòu)(下圖)產(chǎn)生的原因之一,即需要新的架構(gòu)來適配新的發(fā)展需求,本著邏輯上移的原則,可以將更多的實(shí)現(xiàn)邏輯置于高性能、多資源的中央類節(jié)點(diǎn)之中。


從Adaptive AUTOSAR的角度看SOA的圖10


SORS是基于下一代智能網(wǎng)聯(lián)架構(gòu)來實(shí)現(xiàn)的,主要是完成服務(wù)實(shí)現(xiàn),并且體現(xiàn)服務(wù)復(fù)用性而進(jìn)行的設(shè)計(jì)工作。使服務(wù)本身高內(nèi)聚,服務(wù)之間能夠低耦合,提高服務(wù)的可重用性,明確邊界概念。


這個事情在什么階段做?誰來做呢?

在整車功能概念設(shè)計(jì)階段,OEM整車電子電氣架構(gòu)部門來做。這樣的答案并不出乎意料,畢竟車輛本身的功能還有誰會比架構(gòu)部門更加如數(shù)家珍呢?正如大家所熟知的,伴隨著整車功能邏輯的定義和梳理,架構(gòu)會主導(dǎo)或者參與到需求開發(fā)、功能定義、功能實(shí)現(xiàn)、子系統(tǒng)設(shè)計(jì)、零部件設(shè)計(jì)等過程中去,SORS的實(shí)現(xiàn)最好能夠貫穿始終,并最終在功能實(shí)現(xiàn)的環(huán)節(jié)體現(xiàn)出來。


具體怎樣做呢?

SORS沒有技術(shù)標(biāo)準(zhǔn)更沒有國際規(guī)范,只有一些未經(jīng)全部驗(yàn)證的車載領(lǐng)域的SORS實(shí)現(xiàn)方法論。目前來看有兩種思路,一是自下而上,二是自上而下。


? 自下而上:由整車末端硬件開始向中心硬件進(jìn)行梳理和盤點(diǎn),特定的硬件可以提供相同或者相似的服務(wù)。例如,陽光雨量傳感器可以提供光照強(qiáng)度和雨量的信息。這樣我們就可以抽象出來一個陽光雨量的服務(wù)。只要這個硬件在,我們的服務(wù)就會在,不受任何約束。之后可以繼續(xù)向中心探索,挖掘硬件對應(yīng)的功能、提供的數(shù)據(jù)等,進(jìn)行服務(wù)抽取。


? 自上而下:由車輛既有功能和業(yè)務(wù)流程入手。例如整車防盜認(rèn)證,會有各級防盜認(rèn)證流程,期間會調(diào)用到很多的模塊或者算法,比如隨機(jī)化算法、防盜認(rèn)證算法等??梢詫⑦@些算法抽取出來形成不同的算法服務(wù),從一個個的功能業(yè)務(wù)鏈入手,分化抽離出服務(wù)庫。最后可以逆向重建,即從服務(wù)庫中挑選出一個個服務(wù)模塊,通過排列組合的調(diào)用就可以將原始的功能業(yè)務(wù)場景還原出來。


SORS的設(shè)計(jì)方法對將來功能新增的影響是巨大的。在傳統(tǒng)開發(fā)模式下,新增功能只能由OEM規(guī)劃并部署,甚至需要重新開發(fā)車型,創(chuàng)意受限,周期長且投入大。在SORS開發(fā)模式下,OEM在平臺/車型研發(fā)階段將分析車輛本身擁有的一切軟硬件資源,并提供重復(fù)利用的可能。OEM或授權(quán)的第三方可以基于服務(wù)庫輕松開發(fā)新功能,快速完成迭代,并通過OTA技術(shù)部署到車端,持續(xù)提高用戶體驗(yàn)。


③SOSA面向服務(wù)的軟件架構(gòu)(Service Oriented Software Architecture)


Adaptive AUTOSAR這個基于服務(wù)理念的中間件,就是一種SOSA。它體現(xiàn)了基于服務(wù)的架構(gòu)思想:運(yùn)行環(huán)境(ara)分成了Foundation和Service兩部分。


從Adaptive AUTOSAR的角度看SOA的圖11

 Adaptive AUTOSAR架構(gòu)邏輯視圖(R20-11)


Foundation: 

CM(Communication Management)包攬了節(jié)點(diǎn)間&進(jìn)程間通信

EM(Execution Management)負(fù)責(zé)進(jìn)程控制執(zhí)行

REST(RESTful)體現(xiàn)外溝通的連通性

PHM(Platform Health Management)系統(tǒng)平臺健康管理

TimeSyn(Time Synchronization)時間同步模塊

. . . . . .

Service:

SM(State Management)監(jiān)管了AP上運(yùn)行的所有功能組和進(jìn)程的狀態(tài)轉(zhuǎn)換 

UCM(Update and Config Management)主導(dǎo)的應(yīng)用程序更新、AP自更新以及OS更新的整套更新理念

NM(Network Management)網(wǎng)絡(luò)管理模塊


Adaptive AUTOSAR作為中間件,需要配合支持POSIX標(biāo)準(zhǔn)的操作系統(tǒng)使用,上層的自適應(yīng)應(yīng)用(AA)會通過ARA運(yùn)行環(huán)境由AP來統(tǒng)一配置、管理、調(diào)度和分配資源。


4、Adaptive AUTOSAR與SOA


現(xiàn)有的操作系統(tǒng)和架構(gòu),比如Android,不能滿足SOA基于服務(wù)的實(shí)現(xiàn)嗎?AP也是AUTOSAR推出的,和CP有什么關(guān)系呢?為什么要引入AP呢?


從Adaptive AUTOSAR的角度看SOA的圖12


? Non-AUTOSAR(信息娛樂)的控制器:占用較大的硬件資源、不具有實(shí)時性、運(yùn)行非車規(guī)級的操作系統(tǒng)上(比如Linux、Android)。

? CP AUTOSAR開發(fā)出來的控制器:實(shí)時性強(qiáng)、消耗資源少、軟件資源固定。

? Adaptive AUTOSAR是一種異構(gòu)的軟件平臺,可以成為連接Classic AUTOSAR和非實(shí)時OS的橋梁。它的特點(diǎn)是:軟實(shí)時(毫秒級別),滿足功能安全要求(ASIL-B以上)、更適合于多核的高資源消耗環(huán)境、支持動態(tài)部署。


AP和CP都屬于AUTOSAR家族,是親兄弟的關(guān)系。CP推出的時間比較早,AP則是2017年才正式出現(xiàn)并有了初版AP規(guī)范集。正如大家所知道的,目前CP在各類車載ECU的開發(fā)實(shí)現(xiàn)中占有很大的使用比例,主要是應(yīng)對嵌入式ECU的開發(fā)。這很符合上文所說的一個盒子一個功能的整車分布式E/E架構(gòu)的需求,明確具體功能后可以精準(zhǔn)地控制ECU本身的軟硬件開發(fā),并且CP軟件架構(gòu)的模塊化方式配合AUTOSAR OS也可以充分滿足一些特定功能對ECU本身運(yùn)行時的實(shí)時性要求。


從Adaptive AUTOSAR的角度看SOA的圖13


普通的OS例如Android,在某些場景下不能滿足汽車的功能安全需求。此時AP登上歷史舞臺,作為HPC(High Performance Controller)類型ECU的重要組成部分,AP所做就是統(tǒng)一管理下屬OS以及周邊資源,使得系統(tǒng)運(yùn)行時的一切調(diào)度、狀態(tài)和資源消耗都處在一個可控的范圍內(nèi),以滿足車載安全性、確定性的要求。當(dāng)資源豐富時,可選擇的余地就會大一些,比如可以充分利用多核異構(gòu)架構(gòu)來處理復(fù)雜場景,使用Hypervisor等虛擬化技術(shù),使CP、AP和非AUTOSAR系統(tǒng)共同存在于HPC中。


從Adaptive AUTOSAR的角度看SOA的圖14


基于信號和基于服務(wù)這兩種通信方式如何結(jié)合起來,是對新一代E/E架構(gòu)提出的挑戰(zhàn)。Adaptive AUTOSAR這個基于服務(wù)理念的中間件,是我們實(shí)現(xiàn)SOA的一種不錯的選擇。


登錄后免費(fèi)查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項(xiàng)目客服
  • 培訓(xùn)客服
  • 平臺客服

TOP