AUTOSAR_CP_SWS_SynchronizedTimeBaseManager
FIG-323265cc1c560898
795 × 514 px
2 Release(s)
Figure 9.4: Explicit synchronization of OS Schedule Table
SHA-256 Inhalts-Fingerabdruck:
323265cc1c560898d0cd3ae218a35f9b22cb0d96cfcbc341ccf006ad626f8d83
✦
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
- Diagrammtyp: UML-Sequenzdiagramm (Interaktionsdiagramm).
- Architektur-Kontext: AUTOSAR Classic Platform (CP), Schicht der Basissoftware (BSW), System Services.
- Technischer Zweck: Darstellung des expliziten Synchronisationsmechanismus einer AUTOSAR-OS-Schedule-Table über den Synchronized Time-Base Manager (
StbM). Es spezifiziert den synchronen Kontrollfluss, über den derStbMzyklisch die globale Zeitbasis abgreift und an das Betriebssystem (Os) übergibt, um eine zeitgesteuerte Task-Abarbeitung (z. B. für zeitgetriebene Busse wie FlexRay, TSN/Ethernet) an ein globales Zeitnormal anzugleichen.
2. Komponenten, Entitäten & Schnittstellen
- Akteure & Lebenslinien:
BSW Task (OS task or cyclic call): Periodischer Ausführungskontext (Zyklustrigger des BSW-Schedulers bzw. der Taskebene).«module» StbM: Synchronized Time-Base Manager (BSW-Servicemodul zur Verwaltung, Umrechnung und Weitergabe synchronisierter Zeitbasen).«module» Os: AUTOSAR Operating System (stellt Zähler, Alarme und zeitgesteuerte Schedule Tables bereit).
- Schnittstellen & Parameter:
StbM_MainFunction(): Periodische Hauptfunktion desStbM(Scheduled Function / BSW-API).GetScheduleTableStatus(StatusType, ScheduleTableType, ScheduleTableStatusRefType*): Synchroner OS-Serviceaufruf zur Ermittlung des aktuellen Betriebszustands der referenzierten Schedule Table.SyncScheduleTable(ScheduleTableType, GlobalTimeTickType): Normative AUTOSAR OS-API zur Synchronisation der Schedule Table mit dem aktuellen Zählerwert der globalen Zeitbasis.
- Interaktionsoperanden & Kontrollstrukturen:
alt-Fragment: Bedingte Verzweigung basierend auf dem Rückgabewert vonGetScheduleTableStatus.- Bedingung
[ScheduleStatus == SCHEDULETABLE_WAITING or SCHEDULETABLE_RUNNING or SCHEDULETABLE_RUNNING_AND_SYNCHRONOUS]: Ausführungspfad zur Synchronisation der aktiven bzw. synchronisierbaren Schedule Table viaSyncScheduleTable. - Bedingung
[else]: Leerer Ausführungspfad; unterdrückt den Synchronisationsaufruf, wenn die Schedule Table nicht aktiv ist.
- Bedingung
3. Dynamisches Verhalten & Sequenzablauf
- Trigger: Der BSW-Scheduler ruft im Kontext einer periodischen Task synchron
StbM_MainFunction()auf. - Statusabfrage:
StbMruft synchronGetScheduleTableStatus(StatusType, ScheduleTableType, ScheduleTableStatusRefType*)beimOsauf, um den aktuellen Laufzeitzustand der konfigurierten OS-Schedule-Table abzufragen. DasOsliefert das Ergebnis an denStbMzurück. - Bedingte Synchronisation (
alt-Fragment):- Bedingung erfüllt (
SCHEDULETABLE_WAITING,SCHEDULETABLE_RUNNINGoderSCHEDULETABLE_RUNNING_AND_SYNCHRONOUS): DerStbMruft synchronSyncScheduleTable(ScheduleTableType, GlobalTimeTickType)auf demOsauf und übergibt die berechneten globalen Zeit-Ticks. Das Betriebssystem gleicht den Stand der Schedule Table ab und bestätigt den Aufruf viaSyncScheduleTable()-Rückkehr. [else]: Befindet sich die Schedule Table in einem anderen Zustand (z. B.SCHEDULETABLE_STOPPEDoderSCHEDULETABLE_NEXT), wird kein Synchronisationsaufruf an das OS abgesetzt.
- Bedingung erfüllt (
- Abschluss:
StbM_MainFunction()terminiert und gibt den Kontrollfluss an die aufrufende BSW-Task zurück.
4. Normative Relevanz & Entwickler-Hinweise
- Normative Vorbedingung & Statussicherung: Vor dem Aufruf von
SyncScheduleTable()muss derStbMden Zustand der Schedule Table zwingend überGetScheduleTableStatus()verifizieren. Die Synchronisation ist normativ nur in den BetriebszuständenSCHEDULETABLE_WAITING,SCHEDULETABLE_RUNNINGoderSCHEDULETABLE_RUNNING_AND_SYNCHRONOUSzulässig; ein Aufruf im ZustandSCHEDULETABLE_STOPPEDwürde zu OS-Fehlern (E_OS_STATE) führen. - Konfigurationsabhängigkeit (BSW/OS):
- Im
StbM-Konfigurationsbaum muss die explizite Synchronisation aktiviert und die Ziel-Schedule-Table überStbMOSScheduleTableRefreferenziert sein. - Im Betriebssystem (
Os) muss die betreffende Schedule Table mitOsScheduleTableSyncStrategy = EXPLICITkonfiguriert werden.
- Im
- Granularität & Rundung: Entwickler müssen sicherstellen, dass die Tick-Auflösung (
OsCounter/OsSecondsPerTick) und die Genauigkeit derStbM-Zeitbasis zueinander kompatibel sind, um Quantisierungsfehler bei der Umrechnung aufGlobalTimeTickTypezu minimieren. - Echtzeitbedingungen & Jitter: Das Aufrufintervall der
StbM_MainFunction()bestimmt maßgeblich die Nachführrate. Ein hoher Task-Jitter überträgt sich direkt auf die zeitliche Erfassung und Übergabe an das OS;SyncScheduleTable()darf nur aufgerufen werden, wenn die globale Zeitbasis gültig ist.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.