DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_NVRAMManager FIG-e516cdad13248dcb 831 × 274 px 1 Release(s)

Figure 12: UML sequence diagram NvM_Init

SHA-256 Inhalts-Fingerabdruck: e516cdad13248dcb3031f3ef968218a0ba126e86859b93eb9cca7aa2ffa9c2cc
✦ 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 ECU State Manager (EcuM) während der BSW-Startsequenz (ECU-Startup-Phase).
  • Architektur-Einordnung: Schnittstelle zwischen System Services («module» EcuM) und Memory Services («module» NvM) im AUTOSAR Classic BSW-Schichtenmodell.

2. Komponenten, Entitäten & Schnittstellen

  • Lifelines / Komponenten:
    • «module» EcuM: Ruft als koordinierende Instanz des BSW-Lifecycles die Initialisierungsroutinen der Basissoftware-Module auf.
    • «module» NvM: Zentrales Speicherdienst-Modul zur synchronen/asynchronen Verwaltung von NVRAM-Blockdaten.
  • Schnittstellen & Interaktionen:
    • Synchroner Aufruf: NvM_Init() (Signatur: void NvM_Init(void)).
    • Synchroner Rücksprung: NvM_Init() (Rückgabe des Kontrollflusses an den EcuM).

3. Dynamisches Verhalten & Sequenzablauf

  1. Trigger: EcuM initiiert die Modulinitialisierung im synchronen Teil der Startup-Sequenz (typischerweise innerhalb der Init Block-Phase).
  2. Synchroner Ablauf:
    • EcuM blockiert, bis NvM_Init() vollständig abgearbeitet ist.
    • NvM überführt seinen internen Modulzustand von NVM_UNINIT in NVM_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().
  3. Abschluss: NvM_Init() kehrt direkt zum EcuM zurück.

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-Fehler NVM_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).

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R3.2.3 → R4.0.3 redaktionell Vorgänger: FIG-13b5c0556afe5a24
  • Äußerer Diagrammrahmen samt Kopf sd NvM_Init entfernt.
  • Metadaten-Notizblock („Status: Proposed by TO...“) unten links entfernt.
R4.0.3 → R4.1.3 keine inhaltliche Änderung Nachfolger: FIG-cc762845e79f801a

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«module» | NvM | «module» | EcuM Comment: Initialization of NVRAM manager is performed synchronously | NvM_Init() | NvM_Init()

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R4.0.3 AUTOSAR_SWS_NVRAMManager S. 117 12 Figure 12: UML sequence diagram NvM_Init