縮寫
- AP: AUTOSAR Adaptive Platform
- CP: AUTOSAR Classic Platform
- AA: Adaptive Application
- ARA: AUTOSAR Runtime for Adaptive Applications
- FC: Functional Clusters
背景
傳統 CP 強實時性,能很好滿足傳統 ECU 需求,但智能化、網聯化帶來的網絡延遲、干擾等因素無法滿足強實時性。需要滿足非實時需求的平台,所以有了AP。CP、AP 將在一段時間內共存,AP 不是為了取代 CP。
和 CP 對比
CP | AP | |
---|---|---|
開發語言 | C | C++ 14 & STL |
實時性 | 硬實時 us 級 | 軟實時 ms 級 |
性能/算力 | 相對較弱,資源占用低 | 相對較強,資源占用高;大數據並行處理,高性能運算 |
應用場景 | 傳統 ECU | 自動駕駛 ADAS、智能座艙、車聯網 |
主要通信方式 | 針對基於信號的通信(CAN、LIN)優化 | 基於以太網,面向服務通信 SOA,SOME/IP |
安全等級 | ASIL D | ASIL B (Vector up to ASIL D) |
操作系統 | OSEK | POSIX PSE51, 類 Unix 系統: QNX, Linux, PikeOS... |
代碼執行 | 直接從 ROM 執行代碼 | 應用從 NvM 載入 RAM 運行 |
地址空間 | 所有應用共享同一地址空間(MPU 提供安全支持) | 每個應用由獨立的(虛擬)地址空間(需要 MMU 支持) |
任務調度 | 固定的任務配置 | 支持多種(動態)調度策略 |
運行環境 | RTE:Runtime Environment | ARA:AUTOSAR Runtime for Adaptive Applications |
功能 | 固定,所有應用編譯鏈接為一個整體(一個 HEX 文件) | 應用作為獨立的可執行文件,獨立編譯、上傳(部署);可靈活在線升級,應用可安裝卸載 |
whole stack compiled and linked in one piece | Services as POSIX process, separately installable | |
模塊 | 完全定義了所有模塊 | 更少的模塊,只有 API 定義 |
All modules completely specified | Less modules, only API specification | |
配置 | 編譯前配置,編入二進制文件 | 運行時從 Manifests 文件動態載入配置 |
configuration compiled in | Configuration loaded from manifests |
AP 架構
AUTOSAR Adaptive Platform(AP) 是 ARA(AUTOSAR Runtime for Adaptive Applications)的實現。
AP 提供了兩種接口:Service 和 API,為 Adaptive Application 提供了運行時環境 ARA。
- API/Foundation(直接調用 API)
- Execution Management (ara::exec)
- Communication Management (ara::com)
- Diagnostics (ara::diag,從 R19-11 開始,從 Service 挪到 API/Foundation)
- Persistency (ara::per)
- Platform Health Management (ara::phm)
- Log & Trace (ara::log)
- Service(通過
ara::com
進程間通信)- Update & Conf Management (ara::ucm)
- State Management (ara::sm)
- Network Management (ara::nm)