AUTOSAR_SWS_NVRAMManager
FIG-6eae05a1bd8d9253
658 × 461 px
2 Release(s)
Figure 11: UML sequence diagram NvM_SetDataIndex
SHA-256 Inhalts-Fingerabdruck:
6eae05a1bd8d925393c7ac3d13f61a12c0fd91bfb899f32176dfb131b1ba772c
✦
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):
Generic Elements::NvM User: Aufrufende Instanz (Software-Komponente der Applikationsschicht bzw. BSW-Modul wie Dem/Diag), die Speicherungsdienste des NvM anfordert.«module» NvM::NvM: BSW-Modul NVRAM Manager mit Stereotyp«module»und Dekompositionssymbol (Sub-Interaction / interne Realisierung).
- Schnittstellen & Parameter:
- Synchroner Aufruf:
NvM_SetDataIndex(BlockId, DataIndex)BlockId: Identifikator des NVRAM-Blocks (NvM_BlockIdType).DataIndex: Zu selektierender Index des Datensatzes (uint8, Wertebereich0 .. (NvMDatasetBlockCount - 1)bzw. NV/ROM-Datensätze).
- Rückgabewert: Impliziter synchroner Return (
Std_ReturnType:E_OK/E_NOT_OK).
- Synchroner Aufruf:
3. Dynamisches Verhalten & Sequenzablauf
- Trigger: Die
SW Componentruft synchronNvM_SetDataIndex(BlockId, DataIndex)auf. - Interne Verarbeitung (NvM):
- Validierung: Prüfung auf Modulinitialisierung (
NVM_UNINIT), Gültigkeit derBlockIdsowie Zulässigkeit des Block-Management-Typs (mussNVM_BLOCK_DATASETsein). - Bereichsprüfung: Validierung von
DataIndexgegen 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.
- Validierung: Prüfung auf Modulinitialisierung (
- 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_SetDataIndexist eine rein synchrone Verwaltungsfunktion. Im Gegensatz zuNvM_ReadBlockoderNvM_WriteBlocktriggert 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_DATASETzulässig. Für Blöcke vom TypNVM_BLOCK_NATIVEoderNVM_BLOCK_REDUNDANTist der Aufruf unzulässig und führt bei aktivem Det (NVM_DEV_ERROR_DETECT == STD_ON) zum EntwicklungsfehlerNVM_E_PARAM_BLOCK_TYPEmit RückgabeE_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-FehlerNVM_E_BLOCK_PENDING, um Inkonsistenzen zwischen selektiertem Datensatz und adressierten Speicherbereichen zu verhindern. - Konfigurationsabhängigkeit: Die Obergrenze von
DataIndexist streng gekoppelt an die Summe ausNvMDatasetBlockCountundNvMNvramBlockIdentifier/ROM-Blöcken im BSW-Parameterbaum.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.