本系列學習筆記基于 AUTOSAR Adaptive Platform 官方檔案 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf,作者:Zijian/TENG
原文地址(獲取最新更新):https://www.cnblogs.com/tengzijian/p/15221138.html
縮寫
- TS:Time Synchronization
- TBR:Time Base Resources
- NM:Network Management
- SM:State Management
- PN:Partial Network
11 時間同步
11.1 概覽
不同應用/ECU之間的時間同步(TS)非常重要,尤其是在分布式系統中,需要確定不同事件的相關性時:要么能及時追蹤這些事件,要么能在精確的時間點觸發這些事件,
因此,AP 向應用提供了時間同步 API,用于取得和其他物體、ECU 同步的時間資訊,
時間同步功能由不同的時基資源(TBR,Time Base Resources)提供,時基資源在系統中以預編譯配置的形式呈現,
11.2 設計
AP 中用到下列三種技術來滿足時間同步需求:
- CP 中的 StbM
- chrono 庫 - C++11 的
std::chrono或boost::chrono - POSIX 時間介面
經過對這些模塊的介面和其所覆寫需求的分析,AP 決定設計一套包含 CP StbM 功能,但遵循 std::chrono 風格的時間同步 API,
時間同步模塊考慮了以下功能:
- 啟動行為
- 構造行為(初始化)
- 正常操作
- 錯誤處理
今后的 release 中還會考慮:
- 關閉行為
- 錯誤分類
- 版本檢查
11.3 架構
對每個時基資源 TBR,應用都可以訪問其特定的類實作,
通過該句柄,應用可以查詢提供的時基型別(上述五種型別之一),然后獲取該時基型別的特定類實作,應用還可以通過該句柄直接創建 timer,
TS 模塊不提供將 TBR 和其他節點/ECU 時基同步(如 network time protocol 或 time agreement protocol)的方法,
時基資源 TBR 的實作可能有一個專門的周期性的功能,從時間同步以太網等模塊取得時間資訊,來同步 TBR,
應用程式使用由 TBR 提供和管理的時間資訊,TBR 充當時基代理,提供對同步時基的訪問,這樣 TS 模塊從“真實”時基提供者中抽象出來,
12 網路管理
12.1 網路管理演算法概覽
AUTOSAR NM 基于去中心化的網路管理策略,即每個網路節點僅依據接收/傳輸的 NM 報文,獨立地執行活動,
AUTOSAR NM 演算法基于周期性的 NM 報文,NM 報文通過多播訊息發送,集群中所有的節點都會接收,
收到 NM 報文意味著發送節點想要保持網路集群處于喚醒狀態,如果某個節點想要進入睡眠模式,它會停止發送 NM 報文,但如果仍然收到來自其他節點的 NM 訊息,則暫緩進入睡眠模式,最終如果所有的節點都不再發送 NM 報文(意味著所有節點都想進入睡眠模式),則經過一定時間(定時器超時),所有的節點都將進入睡眠模式,
如果 NM 集群中的任意節點需要總線通信,可以開始發送 NM 報文,喚醒整個 NM 集群,
12.2 架構
AP 規范描述了 AP 網路管理的功能、API 設計和配置,無關底層通信媒介,目前只考慮了以太網,但該架構獨立于總線技術,
網路管理 NM 旨在由狀態管理 SM 控制,因為部分網路 PN 的控制需要協調相關應用集(通過 SM 控制的 Functional Group State),本章內容尚未反映該設計,

其主要目的是協調底層網路(區域網路 PN,VLAN 或物理通道)在內部協調狀態機的正常模式和總線睡眠模式的轉換,
它向狀態管理 SM 提供了服務介面,用于請求/釋放網路及查詢狀態,它協調不同實體(網路句柄)的請求,并通過網路提供聚合的機器請求,
如果使用了區域網路 PN 功能,則 NM 訊息可以包含 PN 請求,ECU 可以忽略請求其他 PN 的 NM 報文,在這種情況下,即使其他 PN 仍有通信,ECU 依然可以關倍訓部分關閉,
更多關于 Adaptive AUTOSAR 文章
AUTOSAR AP 學習筆記總目錄
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297264.html
標籤:其他
