DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_RTE FIG-30e0876dfac64583 540 × 318 px 1 Release(s)

Figure 4.25: ParameterElementGroup in single pointered method context

SHA-256 Inhalts-Fingerabdruck: 30e0876dfac645833f576398849d151e863b782d76959e9c3d1c49e7bf515f69
✦ 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: Physisches Speicher- und Zeiger-Layout-Diagramm (Memory Mapping / Data Indirection Model).
  • Technischer Zweck: Visualisierung des Adressierungs- und Indirektionsprinzips für die Software-gestützte Datenemulation mittels Single Pointered Method (Data Emulation with SW support) in der AUTOSAR Runtime Environment (AUTOSAR_SWS_RTE, Kap. 4.2.8.3.5).
  • Systemische Einordnung: Ermöglicht Online-Kalibrierung (MCD-Tools via XCP/CDD) von Kalibrierparametern im Flash/ROM oder NVRAM über Laufzeit-Zeigerumlenkung im RAM ohne hardwarebasierte Emulationseinheit (z. B. Overlay-RAM).

2. Komponenten, Entitäten & Schnittstellen

  • Calibration reference table (<RteParameterRefTab>):
    • Typ: Global sichtbares, lineares Pointer-Array vom Basistyp void* (normiert über [SWS_Rte_03913] und benannt via [SWS_Rte_03947]).
    • Allokationsort: Explizit im flüchtigen Schreib-/Lese-Speicher (RAM).
    • Semantik: Jeder Tabelleneintrag (Slot) hält die Basisadresse einer zugeordneten ParameterElementGroup. Bei NVRAM-Parametern zeigt der Eintrag direkt auf den als RAM-Puffer fungierenden Per-Instance-Memory (PIM, [SWS_Rte_03936]).
  • ParameterElementGroup:
    • Struktur: Zusammenhängender Speicherblock (ROM/Flash oder RAM/PIM).
    • Kardinalität: 1:1 zu genau einem Slot in der <RteParameterRefTab>. Fasst ein oder mehrere Kalibrierelemente logisch/physisch zusammen, um die Zeigertabellengröße zu begrenzen.
  • ParameterElement:
    • Struktur: Konkreter Kalibrierparameter (Skalar, Achse, Kennlinie CURVE, Kennfeld MAP oder Struktur/Record).
    • Kardinalität: 1:n zu einer ParameterElementGroup.
    • Adressierungsbeziehung: Ein Einzelelement besitzt keinen eigenen Eintrag in der Zeigertabelle; es wird über die Gruppen-Basisadresse zzgl. eines zur Compile-/Linkzeit feststehenden Byte-Offsets adressiert: $$\text{Addr}(\text{ParameterElement}_i) = \text{RteParameterRefTab}[k] + \text{Offset}_i$$

3. Dynamisches Verhalten & Sequenzablauf

  1. Lesezugriff durch SWC/RTE (Normalbetrieb):
    • RTE-API (Rte_CData_* / Rte_Prm_*) dereferenziert den Zeiger aus <RteParameterRefTab>[GroupIndex].
    • Ausführung der Speicherleseoperation mit relativem Offset auf das Ziel-ParameterElement.
  2. Online-Kalibrierung / Datenemulation (Trigger durch XCP / CDD / BSW):
    • Kopieren: Externe Kalibriertools (über XCP on CAN/Ethernet) oder ein CDD fordern die Allokation eines Schatten-RAM-Puffers an und spiegeln den Inhalt der originalen (Flash-basierten) ParameterElementGroup.
    • Modifikation: Anpassen einzelner ParameterElement-Werte innerhalb des Schatten-RAMs.
    • Zeigerswap (Atomic Pointer Switch): Der entsprechende Zeiger in <RteParameterRefTab>[GroupIndex] wird atomar von der Flash-Basisadresse auf die Startadresse des modifizierten Schatten-RAM-Blocks umgebogen.
    • Wirkung: Sämtliche nachfolgenden Lesezugriffe aller Runnable Entities auf Elemente dieser Gruppe liefern unmittelbar die geänderten Kalibrierwerte.

4. Normative Relevanz & Entwickler-Hinweise

  • Standardisierung & A2L-Generierung ([SWS_Rte_03947], SRS_Rte_00154):
    • Das Symbol <RteParameterRefTab> ist fix spezifiziert, damit externe Kalibriertools (ASAP2/MCD) und BSW-Module (z. B. Memory Emulation Treiber) die Tabellenbasis ohne proprietäre Linker-Symbolschnittstellen im ELF/A2L auflösen können.
  • Granularitäts-Trade-off (Group-Sizing):
    • Je kleiner die ParameterElementGroup (Extremfall: 1 Parameter = 1 Gruppe), desto feingranularer ist die RAM-Puffer-Zuweisung bei der Kalibrierung, aber desto größer der permanente RAM-Verbrauch der Zeigertabelle (sizeof(void*) * N).
    • Große Gruppen sparen Pointer-RAM in der Tabelle, bedingen aber größere zusammenhängende RAM-Arbeitsbereiche beim Kalibrieren kompletter Gruppen.
  • Laufzeit-Overhead & Codegenerierung:
    • Jeder Zugriff erfordert eine indirekte Adressierung (load-indirect + Base-Register-Addition) anstelle direkter PC-relativer oder absoluter Flash-Adressierung.
  • NVRAM-Integration ([SWS_Rte_03936], SRS_Rte_00157):
    • Für NVRAM-gepufferte Kalibrierparameter zeigt der Tabelleneintrag statisch auf den korrespondierenden RAM-Mirror (PIM/NvM-RAM-Block), womit ein konsistenter Zugriffspfad über dieselbe Indirektionslogik gewährleistet bleibt.

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

R4.0.3 → R4.1.3 keine inhaltliche Änderung Vorgänger: FIG-cd2d2ba30ce28e1c

Keine inhaltlichen Änderungen erkennbar.

R4.1.3 → R4.2.2 keine inhaltliche Änderung Nachfolger: FIG-8af5c0174d9a8d9c

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Erkannte Spezifikationsbelege & Anforderungen auf dieser Seite

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R4.1.3 AUTOSAR_SWS_RTE S. 177 4.25 Figure 4.25: ParameterElementGroup in single pointered method context