- Adaptive AUTOSAR平臺與車用高性能控制器開發
- 楊世春等
- 1896字
- 2024-04-25 18:24:48
1.3.2 AP(自適應平臺)與CP(經典平臺)的對比
無論是自適應平臺還是經典平臺,總體目標都是一致的:更好的管理數量增多,功能復雜度增加的汽車ECU、改善ECU軟件質量和可靠性、提升產品升級靈活性,縮短產品推向市場的時間、可拓展的架構解決方案。但是它們在各方面都有很大的區別。
首先,CP AUTOSAR一般運行在8bit、16bit、32bit的微控制器(MCU)中,如英飛凌的TC3xx、瑞薩的RH850等。AP AUTOSAR可以運行在64bit的高性能處理器(MPU)、CPU等中,如瑞薩的H3、英偉達的Xavier等。除此之外,AP AUTOSAR也可以運行在虛擬硬件上。
硬件不同,其算力也不同。CP是無法運行在高算力的芯片上的,而AP則可以在算力高于20000 DMIPs的芯片上運行。芯片算力越高,就意味著相同時間可以處理更為復雜的算法,那么軟件可實現的功能也就越高。
CP和AP的軟件架構也是不同的,CP的軟件架構有明顯的上下層關系,其軟件架構如圖1-23所示。

圖1-23 AUTOSAR CP的軟件架構
可以看出,AUTOSAR CP主要有微控制器層、基礎軟件層、RTE層和應用層。AUTOSAR CP架構設計原則為:
1)CP AUTOSAR將與硬件相關的以及通用系統功能定義為BSW模塊。
2)應用功能定義為獨立的軟件組件SWC。
3)RTE分離SWC和BSW。
4)BSW可配置,并且可以被多個產品線的ECU重復使用。
5)CP是不開源的。
而AP的軟件架構則如圖1-24所示。

圖1-24 AP的軟件架構
圖中所有的模塊均稱為功能集群(Functional Clusters,FC),功能集群又分成兩部分:Foundation(FO)和Service。每個功能集群都是相互獨立的,沒有相互依存(Dependency)的關系,也就是說,一個廠家搭建的軟件架構不一定需要設計圖1-24中所有的FC,只需要根據軟件需求設計相應的FC即可,可以降低系統開發成本。AP的設計原則是:
1)遵循面向服務的架構(SOA)設計范式(理念)。
2)充分利用其他領域軟件成熟技術,重用軟件市場成熟組件,縮短開發周期。
3)充分利用各種開源軟件。
在軟件開發過程階段,CP與AP都主要都包括以下三個階段:
1)設計階段:設計ARXML。
2)代碼生成:基于ARXML生成代碼。
3)集成:集成Application、編譯調試等。
AP與CP在軟件開發過程中主要有以下不同:
1)在AUTOSAR AP設計階段,需要進行Service和Manifest的設計,而CP則無此過程;CP需要進行ECU配置設計,而AP沒有ECU配置這個設計項。
當然,CP與AP都需要進行系統設計和診斷設計,具體的不同體現在設計細節上。
2)在代碼生成時,CP生成的是基礎軟件模塊相關的代碼,AP生成的是FC相關的代碼和Manifest,需要注意的是,AP中不是所有的FC都會生成相關的代碼和Manifest。
3)集成時,AP AUTOSAR需要考慮OEM Application Cloud,而CP則不用。
AP在軟件設計階段不需要考慮軟件應用具體部署到什么位置,即哪個ECU。軟件開發人員只需要按照軟件的功能需求進行軟件開發即可,AP程序的驗證也可以不在ECU上驗證,AP可以通過將軟件部署到虛擬ECU來驗證各類軟件的正確性。
4)CP與AP還有一個很大的區別是通信方式。以往汽車ECU間的通信是通過CAN,各ECU將信號往總線上發送,各個ECU又從總線上各取所需。在以往的車輛上,這種通信方式是可以的,但是當新的技術涌現出來,總線上已經不足以傳輸數量如此龐大的信號時,我們就需要提出一種新的通信方式以滿足傳輸大量信號數據的需求。這時候面向服務的通信架構(Service Oriented Architecture,SOA)就出現了,SOA是將應用程序的不同功能單元(稱為服務)進行拆分,并通過這些服務之間已定義好的接口和協議聯系起來。接口是采用中立的方式進行定義的,它應該獨立于實現服務的硬件平臺、操作系統和編程語言。而在AP系統中,所有應用由一組服務組成,其中一個服務可以依次使用另一個服務,應用程序可以根據其需要使用一個或多個服務。服務可以駐留在應用程序運行的本地ECU上,也可以位于正在運行AP另一個實例的遠程ECU上。數據只在需要的時候傳輸,總線的使用率降低了很多。
5)CP與AP的調度方式也是不同的,CP AUTOSAR OS采用固定的任務調度配置。在OS Task中調度BSW Main Functions以及SWC的Runnable Entities,按既定規則順序執行,并協同BSW Modules和App SWC的模式切換。而AP AUTOSAR支持多種動態調度策略,配置在運行時完成,配置信息在Manifest文件中體現。AP AUTOSAR中與調度相關的模塊主要為執行管理(EM)和狀態管理(SM),應用程序運行在Process、Thread中。CP AUTOSAR中,任務的調度周期可以到微秒(μs)級別;而AP AUTOSAR是在毫秒(ms)級,一般是幾十至上百毫秒。
6)CP的狀態管理較為簡單,而AP主要有以下三種狀態管理:
①Function Group(FG)State:功能組狀態。Machine State:Machine狀態是一種典型的功能組狀態。
②Process State:進程狀態。EM通過Function Group來改變Process State。
③Execution State:進程的執行狀態。
AP的狀態管理結構如圖1-25所示。

圖1-25 AP的狀態管理架構
CP與AP的主要區別見表1-1。
表1-1 CP與AP的主要區別

因此,與CP相比,基于AP開發的ECU具有更加智能、更大的計算力(基于SOA架構使得AP能夠支持多核并行處理),更好的安全性,更好的兼容性,更靈活敏捷的開發,更易實現物聯(基于以太網的SOA通信,更易實現無線、遠程、云連接以及部署V2X應用)。