AUTOSAR_CP_SWS_NVRAMManager
FIG-da18245034865a93
932 × 354 px
3 Release(s)
Figure 9.1: UML sequence diagram NvM_Init
SHA-256 Inhalts-Fingerabdruck:
da18245034865a9378ce8444fa86bd8cf799feb89738dc45bb57cab0dea17cec
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Sequenzdiagramm (rahmenlos, ohne
sd-Kopf). - Technischer Zweck: Spezifikation der synchronen Basis-Initialisierung des NVRAM Managers (
NvM) durch den BSW Mode Manager (BswM) während der BSW-Startsequenz (Init-Phase). - Architektur-Einordnung: Schnittstelle zwischen System Services (
«module» BswM) und Memory Services («module» NvM) im AUTOSAR Classic BSW-Schichtenmodell.
2. Komponenten, Entitäten & Schnittstellen
- Lifelines / Komponenten:
«module» BswM: Führt als BSW Mode Manager im Rahmen konfigurierter Startup-Aktionslisten (Action Lists) die synchrone Initialisierung des NvM aus.«module» NvM: Zentrales Speicherdienst-Modul zur synchronen/asynchronen Verwaltung von NVRAM-Blockdaten.
- Schnittstellen & Interaktionen:
- Synchroner Aufruf:
NvM_Init(const NvM_ConfigType*)(Signatur:void NvM_Init(const NvM_ConfigType* ConfigPtr)). - Synchroner Rücksprung: Unbeschrifteter Antwortpfeil (Rückgabe des Kontrollflusses an den
BswM).
- Synchroner Aufruf:
3. Dynamisches Verhalten & Sequenzablauf
- Trigger:
BswMinitiiert die Modulinitialisierung über eine konfigurierte Action/Action List im synchronen Teil der Startup-Sequenz. - Synchroner Ablauf:
BswMblockiert bzw. wartet, bisNvM_Init(const NvM_ConfigType*)vollständig abgearbeitet ist.NvMwertet den übergebenen Konfigurationszeiger aus und überführt seinen internen Modulzustand vonNVM_UNINITinNVM_IDLE.- Interne Datenstrukturen, Block-Verwaltungstabellen (
Administrative Blocks), Queue-Pointer und Pufferzustände werden initialisiert. - Kein I/O-Zugriff: In diesem Schritt finden keine Flash-/EEPROM-Lesezugriffe statt. Das Laden permanenter Datenblöcke erfolgt nachgelagert über den asynchronen Multi-Block-Dienst
NvM_ReadAll().
- Abschluss: Rückkehr des Kontrollflusses direkt an den
BswM.
4. Normative Relevanz & Entwickler-Hinweise
- Reihenfolge & BSW-Abhängigkeiten: Unterlagerte Abstraktions- und Treiberschichten (
MemIf,Fee/Ea,Fls/Eep) müssen vor oder in direkter zeitlicher Korrelation initialisiert werden, spätestens jedoch bevor asynchrone Jobs (NvM_ReadAll()) abgesetzt werden. - API-Gültigkeit & Vorbedingungen: Vor Abschluss von
NvM_Init()führt der Aufruf jedweder funktionalen NvM-API zum Det-FehlerNVM_E_NOT_INITIALIZED(Default Error Tracer). - Ausführungsbedingungen:
NvM_Init()ist nicht reentrant, darf ausschließlich im privilegierten Kontext vor Aktivierung des Task-Schedulings / OS ausgeführt werden und besitzt deterministische, rein CPU-gebundene Laufzeit (keine blockierenden Hardware-Polling-Schleifen über MemIf).
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.