DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_OS FIG-c2c1b9a41881a1e4 949 × 550 px 3 Release(s)

Figure 7.8: Explicit Schedule Table Synchronization The Operating System module provides the service SetScheduleTableAsync() (see SWS_Os_00422) to cancel synchronization being performed at adjustable expiry points on a schedule table.

SHA-256 Inhalts-Fingerabdruck: c2c1b9a41881a1e48cf2aaee5845370de4b194f80918b54319413a7174122bce
✦ 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

Timing- und Zustandsdiagramm zur expliziten Synchronisation einer OS-Schedule-Table (AUTOSAR_SWS_OS). Das Diagramm illustriert das Zusammenspiel zwischen den internen Zuständen einer Schedule Table (STOPPED, WAITING, RUNNING, RUNNING_AND_SYNCHRONOUS), den Ablaufpunkten (Expiry Points EP1, EP2, EP3), dem zu Grunde liegenden Zähler der Schedule Table (Drive Counter) sowie einer externen bzw. übergeordneten Synchronisationszeitbasis (Synchronization Counter).

2. Komponenten, Entitäten & Schnittstellen

  • Schedule Table (Tbl): Enthält Expiry Points EP1 (Offset 2), EP2 (Offset 5), EP3 (Offset 8) bei einer Gesamtdauer (Duration) von 10 Ticks (Wertebereich 0 bis 9).
  • Expiry Points (EP1, EP2, EP3): Konfigurierte Aktionszeitpunkte mit definierbaren maximalen Anpassungsgrenzen (MaxShorten, MaxLengthen) zur Phasenkorrektur.
  • Drive Counter: Zeitbasis/Zähler des OS (hier 16-Bit-Darstellung mit Überlauf bei 65535 auf 0), der den physikalischen Fortschritt der Tabelle steuert.
  • Synchronization Counter: Referenzzähler (Wertebereich 0 bis 9 zyklisch), an den die Tabelle synchronisiert wird.
  • OS-API-Schnittstellen:
    • StartScheduleTableSynchron(ScheduleTableType ScheduleTableID)
    • SyncScheduleTable(ScheduleTableType ScheduleTableID, GlobalTimeTickType GlobalTime)
    • SetScheduleTableAsync(ScheduleTableType ScheduleTableID) (in der Spezifikation zur Beendigung der Synchronisation genannt)

3. Dynamisches Verhalten & Sequenzablauf

  1. Startphase: StartScheduleTableSynchron(Tbl) versetzt die Schedule Table von STOPPED in den Zustand WAITING.
  2. Erster Synchronisationsaufruf: Bei SyncScheduleTable(Tbl, 8) wird der initiale Berechnungsabgleich durchgeführt (DriveCtr.Match = DriveCtr.Now + (Duration - 8) + InitialOffset = 65535 + 2 + 2 = 3), wodurch die Tabelle synchron bei Offset 0 im Zustand RUNNING_AND_SYNCHRONOUS gestartet wird.
  3. Erste Abweichung (Verlängerung/Lengthening):
    • Aufruf von SyncScheduleTable(Tbl, 5): Aus der aktuellen Position auf der Tabelle (PositionOnTbl = NextEP.Offset - (DriveCtr.Match - DriveCtr.Now) = 8 - (9 - 8) = 7) ergibt sich eine Abweichung Deviation = PositionOnTbl - 5 = 2.
    • Die Schedule Table wechselt in den Zustand RUNNING.
    • Die Korrektur erfolgt am verstellbaren Ablaufpunkt EP3: EP3.Delay = EP3.Delay + Adjustment mit Adjustment = min(MaxLengthen, Deviation) = min(..., 2) = 2. Die Verzögerung vergrößert sich von 3 auf 5 (+2 Verlängerung der Tabelle).
    • Nach erfolgreicher Anpassung kehrt die Tabelle in den Zustand RUNNING_AND_SYNCHRONOUS zurück.
  4. Zweite Abweichung (Verkürzung/Shortening):
    • Aufruf von SyncScheduleTable(Tbl, 3): Berechnung ergibt PositionOnTbl = 2 - (25 - 24) = 1 und eine negative Abweichung Deviation = PositionOnTbl - 3 = -2.
    • Die Schedule Table wechselt wieder in den Zustand RUNNING.
    • Der Abbau der Abweichung wird auf mehrere Expiry Points aufgeteilt (jeweils um -1 verkürzt):
      • An EP1: EP1.Delay = EP1.Delay - min(MaxShorten, Deviation) = 2 - 1 = 1.
      • An EP2: EP2.Delay = EP2.Delay - min(MaxShorten, Deviation) = 3 - 1 = 2.
    • Nach vollständiger Kompensation von insgesamt 2 Ticks erreicht die Schedule Table wieder den Zustand RUNNING_AND_SYNCHRONOUS.

4. Normative Relevanz & Entwickler-Hinweise

  • Das Diagramm konkretisiert die Anforderungen zur expliziten Synchronisation gemäß AUTOSAR OS (u. a. SWS_Os_00422, SWS_Os_00199, SWS_Os_00206).
  • Die Abweichung (Deviation) bestimmt, ob Ablaufpunkte verzögert (MaxLengthen) oder vorgezogen (MaxShorten) werden. Entwickler müssen beachten, dass eine Phasenkorrektur über konfigurierte Schwellwerte (OsScheduleTableMaxLengthen, OsScheduleTableMaxShorten) begrenzt ist und sich somit über mehrere Expiry Points oder Tabelleniterationen erstrecken kann.
  • Der Wechsel zwischen RUNNING und RUNNING_AND_SYNCHRONOUS erfolgt deterministisch anhand der verbleibenden Abweichung im Vergleich zum konfigurierten Synchronisationspräzisionsfenster (OsScheduleTableSyncPrecision).

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Erkannte Spezifikationsbelege & Anforderungen auf dieser Seite

Vorkommen in AUTOSAR-Releases (3)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R4.1.3 AUTOSAR_SWS_OS S. 63 7.8 Figure 7.8: Explict Schedule Table Synchronization The Operating System module provides the service SetScheduleTableAsync() (see SWS_Os_00422) to cancel synchronization being performed at adjustable expiry points on a schedule table. The Operating System module provides the service GetScheduleTableStatus() (see SWS_Os_00227) to query the state of a schedule table also with respect to synchronization.
R4.2.2 AUTOSAR_SWS_OS S. 63 7.8 Figure 7.8: Explict Schedule Table Synchronization The Operating System module provides the service SetScheduleTableAsync() (see SWS_Os_00422) to cancel synchronization being performed at adjustable expiry points on a schedule table. The Operating System module provides the service GetScheduleTableStatus() (see SWS_Os_00227) to query the state of a schedule table also with respect to synchronization.
R20-11 AUTOSAR_SWS_OS S. 56 7.8 Figure 7.8: Explicit Schedule Table Synchronization The Operating System module provides the service SetScheduleTableAsync() (see SWS_Os_00422) to cancel synchronization being performed at adjustable expiry points on a schedule table.