DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_NVRAMManager FIG-d7c79184f838cbf9 808 × 373 px 1 Release(s)

Figure 10: UML sequence diagram NvM_Init

SHA-256 Inhalts-Fingerabdruck: d7c79184f838cbf9cea51f2f21fdec16ced8b9ab52223e462a19772ef91401f4
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07

1. Diagrammtyp & Architektur-Kontext

  • Klassifikation: UML 2.0 Sequenzdiagramm (sd Initialization).
  • 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 (ModeManagement::EcuM) und Memory Services (NvM::NvM) im AUTOSAR Classic BSW-Schichtenmodell.

2. Komponenten, Entitäten & Schnittstellen

  • Lifelines / Komponenten:
    • ModeManagement::EcuM: Ruft als koordinierende Instanz des BSW-Lifecycles die Initialisierungsroutinen der Basissoftware-Module auf.
    • NvM::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)

R2.1.20 → R3.0.7 redaktionell Nachfolger: FIG-f63a497fda471151
  • Diagrammkopf von sd Initialization zu sd Nv M_Init umbenannt.
  • Erste Lifeline von ModeManagement::EcuM zu EcuM::EcuM umbenannt.
  • Zweite Lifeline um Stereotyp «module» oberhalb von NvM::NvM ergänzt.
  • Metadaten-Notizblock („Status: Proposed by TO as per NvM SWS 1.44“, „Description:“, „Comments:“) unten links ergänzt.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

sd Initialization | NvM::NvM ModeManagement::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
R2.1.20 AUTOSAR_SWS_NVRAMManager S. 68 10 Figure 10: UML sequence diagram NvM_Init