AUTOSAR_CP_RS_MemoryServices
FIG-c652592b649c2085
932 × 771 px
3 Release(s)
Figure 3.1: Relationship between the acronyms defined in the table in chapter 3
SHA-256 Inhalts-Fingerabdruck:
c652592b649c20858938d771ecdb01b8d368dcebedcc8ad2632fe9e0945dec0e
✦
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
- Diagrammtyp: UML-Klassendiagramm / Metamodell-Strukturdiagramm (Komponenten-Strukturmodell, Frame
id Component Model). - Architektur-Kontext: AUTOSAR Classic Platform, Memory Services (
AUTOSAR_CP_RS_MemoryServices, Referenz zuAUTOSAR_CP_SWS_NVRAMManager). - Technischer Zweck: Formale Strukturdefinition und Begriffsabgrenzung des logischen Konzepts NVRAM Block. Es visualisiert die Zerlegung eines NVRAM-Blocks in seine physischen Speicher- und Verwaltungsanteile im flüchtigen, nicht-flüchtigen und Festwertspeicher sowie deren Bezug zu Anwendungsnutzdaten (
NV Data) und elementaren Speicherobjekten (Basic Storage Object).
2. Komponenten, Entitäten & Schnittstellen
«abstract» NVRAM Block:- Abstrakte Wurzel- und Aggregationsentität, repräsentiert die konfigurierte logische NVRAM-Verwaltungseinheit (identifiziert über
BlockId). - Attribute:
- BlockManagement Type(definiert die Managementstrategie:NATIVE,REDUNDANToderDATASET). - Constraints:
{exact composition depends on Management type}(Zusammensetzung und Anzahl der Teilblöcke hängen vom konfigurierten Typ ab).{handling depends on BlockManagement Type}(Zugriffs- und Redundanzstrategien variieren je nach Typ).
- Abstrakte Wurzel- und Aggregationsentität, repräsentiert die konfigurierte logische NVRAM-Verwaltungseinheit (identifiziert über
- Teilblöcke (Bestandteile via strikter Komposition
NVRAM Block◆):NV Block: Enthält persistente Nutzdaten sowie NvM-Overhead (Header, Prüfsumme/CRC). Responsibility:stored in NV memory(Flash/EEPROM via Fee/Ea).RAM Block: Flüchtigen Speicherbereich zur Laufzeitbedienung (permanent oder über temporäre Puffer bereitgestellt). Responsibility:stored in RAM.ROM Block: Optionaler Festwertbereich für Rückfall-/Defaultdaten. Responsibility:stored in ROM.Administrative Block: Interner NvM-Verwaltungsdatensatz pro Block. Responsibility:stored in RAM. Führt Zustand, Schutzflags und Ergebnisstatus.
- Nutzdaten & Speicherobjekt-Abstraktion:
«user data» NV Data: Repräsentiert die reinen Anwendungs-Nutzdaten. Steht in Kompositionsbeziehung (◆) zuNV Block,RAM BlockundROM Block. DerAdministrative Blockbesitzt keine Beziehung zuNV Data.Basic Storage Object: Kleinste atomare, hardware-/mediumspezifische Speichereinheit. Alle vier Teilblöcke (NV Block,RAM Block,ROM Block,Administrative Block) implementieren diese Entität über Realisierungsbeziehungen («realize», gestrichelte Pfeile).
3. Dynamisches Verhalten & Sequenzablauf (falls zutreffend)
- Klassifikation: Statisches Modell; kein Sequenzablauf direkt im Diagramm enthalten.
- Statischer Laufzeitbezug der Entitäten:
- Startup (
NvM_ReadAll):NV Datawird aus demNV Block(über das zugrunde liegendeBasic Storage Object) verifiziert und in dasBasic Storage ObjectdesRAM Blocktransferiert. Bei Integritätsfehlern erfolgt optional ein Restore aus demROM Block. - Laufzeit-Verwaltung: Der
Administrative Blockhält flüchtige Attribute (NvM_RequestResultType, Dynamic Write Protection, Valid/Invalid-, Changed/Unchanged-Flags). Job-Queuing und Zustandsüberwachung finden ausschließlich hier statt. - Persistierung (
NvM_WriteBlock,NvM_WriteAll): Überträgt geänderteNV Dataaus demRAM Blockasynchron über die Abstraktionsschicht (MemIf → Fee/Ea) in dasBasic Storage ObjectdesNV Block.
- Startup (
4. Normative Relevanz & Entwickler-Hinweise
- Konfiguration (
NvMBlockDescriptor):NvMBlockManagementType:NVM_BLOCK_NATIVE: Genau 1NV Block, 1RAM Block(optional permanent), max. 1ROM Block, 1Administrative Block.NVM_BLOCK_REDUNDANT: 2NV Blocks zur Fehlertoleranz, 1RAM Block, max. 1ROM Block, 1Administrative Block.NVM_BLOCK_DATASET: NNV Blocks (Multi-Record-Szenarien), 1RAM Block, MROM Blocks, 1Administrative Block.
- RAM-Footprint & Allokation:
- Für jeden konfigurierten NVRAM-Block wird zwingend RAM-Speicher für den
Administrative Blockreserviert (Array in der NvM-BSW), unabhängig davon, ob ein permanenterRAM Blockkonfiguriert ist. - Fehlt ein permanenter
RAM Block(NvMRamBlockDataAddress == NULL), muss die Applikation bei Lese-/Schreib-APIs einen validen Puffer auf ein temporäresBasic Storage Objectübergeben.
- Für jeden konfigurierten NVRAM-Block wird zwingend RAM-Speicher für den
- API-Vertrag & Zugriffsschutz:
- Applikationen (SWCs) dürfen ausschließlich auf das
Basic Storage ObjectdesRAM Blockzugreifen. Direkte Zugriffe auf denNV Blockverletzen die Schichtenarchitektur (Bypass des MemIf/NvM). - Der
Administrative Blockist für Applikationen gekapselt; sein Status kann nur indirekt viaNvM_GetErrorStatus()abgefragt bzw. über Verwaltungs-APIs (NvM_SetRamBlockStatus(),NvM_SetBlockProtection()) modifiziert werden.
- Applikationen (SWCs) dürfen ausschließlich auf das
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.