DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_NVRAMManager FIG-70541ec551937c09 878 × 612 px 1 Release(s)

Figure 11: UML sequence diagram NvM_SetDataIndex

SHA-256 Inhalts-Fingerabdruck: 70541ec551937c09e2f9f6524f9dc26ca2eca6afc69c59d83583854d280c70a5
✦ 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 (sd NvM_SetDataIndex).
  • Technischer Zweck & Einordnung: Spezifikation des synchronen Interaktionsmusters zur Selektion eines Datensatz-Elements innerhalb eines Dataset-NVRAM-Blocks (NVM_BLOCK_DATASET). Im AUTOSAR-Gesamtsystem (Classic Platform, Memory Stack) gehört der NVRAM Manager (NvM) zu den System Services. Das Diagramm modelliert den Steuerungsfluss beim Umschalten des aktiven Datenindexes für nachfolgende Lese-, Schreib- oder Wiederherstellungsoperationen.

2. Komponenten, Entitäten & Schnittstellen

  • Beteiligte Instanzen (Lifelines):
    • NvM User: Aufrufende Instanz (Software-Komponente der Applikationsschicht bzw. BSW-Modul wie Dem oder Dcm).
    • «module» NvM: BSW-Modul NVRAM Manager mit Stereotyp «module» und Dekompositionssymbol.
  • Schnittstellen & Parameter:
    • Synchroner Aufruf: NvM_SetDataIndex(NvM_BlockIdType, uint8)
      • NvM_BlockIdType: Identifikator des NVRAM-Blocks (BlockId).
      • uint8: Zu selektierender Index des Datensatzes (DataIndex).
    • Rückgabewert: Explizite synchrone Rückkehr NvM_SetDataIndex() (Rückgabetyp Std_ReturnType).

3. Dynamisches Verhalten & Sequenzablauf

  1. Trigger: Die SW Component ruft synchron NvM_SetDataIndex(BlockId, DataIndex) auf.
  2. Interne Verarbeitung (NvM):
    • Validierung: Prüfung auf Modulinitialisierung (NVM_UNINIT), Gültigkeit der BlockId sowie Zulässigkeit des Block-Management-Typs (muss NVM_BLOCK_DATASET sein).
    • Bereichsprüfung: Validierung von DataIndex gegen die konfigurierte Anzahl an Datensätzen (NvMDatasetBlockCount / ROM-Instanzen).
    • Zustandsprüfung: Prüfung, ob der angeforderte Block aktuell in einer laufenden asynchronen Operation gebunden ist (Busy-Flag im administrativen Block).
    • Aktualisierung: Bei erfolgreicher Validierung wird der Index direkt im internen administrativen Block (NvM_AdminBlockTable) im RAM hinterlegt.
  3. Abschluss: Unmittelbare synchrone Rückkehr (Return) zur aufrufenden Komponente ohne Einreihung in die NvM-Job-Queue. Es finden keine Callbacks, keine MemIf- und keine Fls/Fee-Treiberinteraktionen statt.

4. Normative Relevanz & Entwickler-Hinweise

  • Synchroner API-Vertrag: NvM_SetDataIndex ist eine rein synchrone Verwaltungsfunktion. Im Gegensatz zu NvM_ReadBlock oder NvM_WriteBlock triggert sie keinen Hintergrundjob und liefert kein asynchrones Callback-Signal.
  • Blocktyp-Restriktion: Die Funktion ist normativ ausschließlich für Blöcke des Typs NVM_BLOCK_DATASET zulässig. Für Blöcke vom Typ NVM_BLOCK_NATIVE oder NVM_BLOCK_REDUNDANT ist der Aufruf unzulässig und führt bei aktivem Det (NVM_DEV_ERROR_DETECT == STD_ON) zum Entwicklungsfehler NVM_E_PARAM_BLOCK_TYPE mit Rückgabe E_NOT_OK.
  • Nebenläufigkeit & Queueing: Ein Aufruf während einer bereits laufenden asynchronen Bearbeitung desselben Blocks führt zur Ablehnung (E_NOT_OK) und Det-Fehler NVM_E_BLOCK_PENDING, um Inkonsistenzen zwischen selektiertem Datensatz und adressierten Speicherbereichen zu verhindern.
  • Konfigurationsabhängigkeit: Die Obergrenze von DataIndex ist streng gekoppelt an die Summe aus NvMDatasetBlockCount und NvMNvramBlockIdentifier/ROM-Blöcken im BSW-Parameterbaum.

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

R3.1.5 → R3.2.3 redaktionell Vorgänger: FIG-6eae05a1bd8d9253
  • Lifelines: Bei beiden Instanzen wurde der Paketpräfix entfernt (Generic Elements::NvM User zu NvM User und «module» NvM::NvM zu «module» NvM).
  • Aufruf-Nachricht: In der Signatur von NvM_SetDataIndex wurden die Parameternamen (BlockId, DataIndex) durch die Datentypen (NvM_BlockIdType, uint8) ersetzt.
  • Rückkehr-Nachricht: Die Beschriftung NvM_SetDataIndex wurde um ein leeres Klammernpaar zu NvM_SetDataIndex() ergänzt.
R3.2.3 → R4.0.3 normative Änderung Nachfolger: FIG-be5127f322ad5273
  • Aufruf-Nachricht: In der Signatur wurde Std_ReturnType als zusätzlicher erster Parameter eingefügt (NvM_SetDataIndex(Std_ReturnType, NvM_BlockIdType, uint8)).
  • Diagrammrahmen: Der äußere UML-Rahmen sd NvM_SetDataIndex wurde entfernt.
  • Kommentarfeld: Der Metadaten- und Kommentarblock („Status: Proposed by TO...“) wurde entfernt.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

sd NvM_SetDataIndex | «module» | NvM | NvM User | Status: Proposed by TO as per NvM SWS 1.44 | Description: | Comments: | NvM_SetDataIndex(NvM_BlockIdType, uint8) | NvM_SetDataIndex()

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R3.2.3 AUTOSAR_SWS_NVRAMManager S. 94 11 Figure 11: UML sequence diagram NvM_SetDataIndex