1 簡介和功能概述
??AUTOSAR基礎軟件模塊“RAM測試”的功能、API和配置。
??RAM測試是對RAM單元的物理健康狀況的測試。它不是為了測試RAM的內容。用于寄存器的RAM也經過測試。
??在本文檔中,RAM單元被理解為內存單位,可由處理器單獨尋址。因此,對于16位處理器,單元大小(以位為單位)例如為16。
??存在不同的RAM測試算法。它們針對不同的故障模型集,實現不同的覆蓋率,導致不同的運行時間,并且具有破壞性或非破壞性。覆蓋率還取決于底層物理RAM架構。ISO 26262僅區分了三個基本覆蓋率級別:低(60%)、中(90%)和高(99%)[11]。AUTOSAR規范也使用了這種基本區別。
??必須進行ECU安全分析,以確定需要哪種RAM測試診斷覆蓋率(低、中或高)。然后在編譯時選擇適當的RAM測試算法和其他配置參數。在運行時,應用軟件可以在編譯的算法之間(以及其他參數之間)進行選擇。
??RAM測試可以由測試環境同步調用(以下稱為“前臺測試”),也可以由OS任務或其他循環調用方法循環調用(以下稱為“后臺測試”)。測試環境可以選擇測試參數、啟動和停止測試以及獲取狀態報告。開發錯誤會報告給默認錯誤跟蹤器(DET),生產錯誤會報告給診斷事件管理器(DEM)。
??RamTst模塊由用于后臺測試的RamTst_MainFunction()、用于前臺測試的API、多個配置和狀態API(應用程序編程接口)以及多個配置容器組成。
??RamTst_MainFunction()是用于后臺測試的調度函數。
- 對于后臺測試,RamTst_MainFunction()由調度程序,并且可以中斷。一個完整的測試包括使用一個在當前選定的配置定義的內存空間上執行算法。整個測試將分為多次預定的通話進行。
- 對于前臺測試,RamTst_RunFullTest()或RamTst_RunPartial