1. AutoSAR 簡介

近年來,汽車E/E系統的的複雜程度快速增加,其中功能代碼爆炸式增長,硬體平台種類增多,開發流程和文件格式未統一等問題給汽車電子系統的研發提出了更大的挑戰。

自2003年起,全球全球各大汽車整車廠、汽車零部件供應商、汽車電子軟體系統公司聯合建立的一套標準協議,擬定了一個符合汽車電子軟體開發的、開放的以及標準化的軟體架構,即Auto SAR。AUTOSAR成員之間開展合作的主要目標是:使基本系統功能以及介面標椎化,使軟體開發合作夥伴之間能交換、轉換和集成各自的車載網路功能,最大限度地提高車輛售後的軟體更新和系統升級效率。

AutoSAR架構的主要目標有三個:

  • 建立獨立於硬體的分層軟體架構
  • 為實施應用提供方法論,包括制定無縫的軟體架構堆疊流程並將應用軟體整合至ECU
  • 制定各種車輛應用介面規範,作為應用軟體整合標準,以便軟體構件在不同汽車平台復用
  1. Auto SAR分層模型

為了實現應用程序和硬體模塊之間的分離,AutoSAR架構中的電子軟體架構被分為四層,從上到下依次為:應用層(Application Layer),運行時環境(Run Time Environment,RTE),基礎軟體層(Basic Software,BSW)和微控制器(Microcontroller)。

    1. 應用層(Application Layer)

    應用層中的功能由各軟體組件SWC(Software Component)實現,組件中封裝了部分或者全部汽車電子功能,包括對其具體功能的實現以及對應描述,如控制大燈,空調等部件的運作,但與汽車硬體系統沒有連接。

      1. 運行時環境(Run Time Environment,RTE)

      中間件部分給應用層提供了通信手段,這裡的通信是一種廣義的通訊,可以理解成介面,應用層與其他軟體體的信息交互有兩種,第一種是應用層中的不同模塊之間的信息交互;第二種是應用層模塊同基礎軟體之間的信息交互。而RTE就是這些交互使用的介面的集散地,它匯總了所有需要和軟體體外部交互的介面。從某種意義上來看,設計符合AUTOSAR的系統其實就是設計RTE。

        1. 基礎軟體層(Basic Software,BSW)

        根據不同的功能對基礎軟體繼續可以細分成四部分,分別為服務層(Service Layer),ECU抽象層(ECUAbstract Layer),複雜驅動(ComplexDriver)和MCAL(Microcontroller Absstraction Layer),四部分之間的互相依賴程度不盡相同。

        • 服務層(Service Layer),這一層基礎軟體提供了汽車ECU非應用相關的服務,包括OS,網路通訊,內存管理(NVRAM),診斷(UDS,故障管理等),ECU狀態管理模塊等。
        • ECU抽象層(ECU Abstract Layer),這一層軟體提供了ECU應用相關的服務,它是對一個ECU的抽象,它包括了所有的ECU的輸入輸出,比如AD,DIO,PWM等。
        • MCAL(Microcontroller Absstraction Layer),這一層軟體是對ECU所使用的主控晶元的抽象,它跟晶元的實現緊密相關,是ECU軟體的最底層部分,直接和主控晶元及外設晶元進行交互。
        • 複雜驅動(Complex Drivers),汽車ECU中有一些領域的ECU會處理相當複雜的硬體信號,執行相當複雜的硬體動作,例如發動機控制,ABS等,這些功能相關的軟體很難抽象出來適用於所有的汽車ECU,它是跟ECU的應用以及ECU所使用的硬體緊密相關的,屬於AUTOSAR構架中在不同的ECU上無法移植的部分。
        1. 微控制器(Microcontroller)

        底層驅動層由各晶元廠家提供

        推薦閱讀:

        相关文章