AUTOSAR_SWS_NVRAMManager
FIG-b8583606f88a63ba
659 × 373 px
1 Release(s)
Figure 11: UML sequence diagram NvM_SetDataIndex
SHA-256 Inhalts-Fingerabdruck:
b8583606f88a63badd0d3d5a2edfa1926f735c9b9f293fb6ea38b573390c2db9
✦
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-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):
SW Component: Software-Komponente der Applikationsschicht (ASW) bzw. BSW-Komponente (z. B. Diag / Dem). Interagiert standardmäßig über den RTE-PortNvM_Service(ClientServerInterfaceNvM_Servicemit OperationSetDataIndex) oder per direktem C-API-Aufruf.NvM::NvM: BSW-Modul NVRAM Manager (ModulpaketNvM), dargestellt mit 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.