AUTOSAR_CP_SWS_WatchdogManager
FIG-ab4f94ea3427e6b3
932 × 1202 px
3 Release(s)
Figure 7.1: Overview of Watchdog Manager Supervision
SHA-256 Inhalts-Fingerabdruck:
ab4f94ea3427e6b3198584a2dcb1e88b68c8eb2aee0d033d4d628c064e21f3b3
✦
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: UML-Aktivitätsdiagramm mit zwei Swimlanes (Partitionen: Ausführungskontexte
SE contextvs.OS Scheduler context), Kontrollflüssen, Datenknoten (Objekt-/Pufferzustände) und Iterationsbereich (For each SE). - Funktionale Einordnung: AUTOSAR Classic Platform, Basic Software (BSW), System Services Layer (
WdgM). Das Diagramm visualisiert die funktionale Entkopplung zwischen der ereignisgesteuerten Erfassung von Checkpoints innerhalb überwachter Software-Entitäten (Supervised Entity– SW-C/BSW-Modul) und der periodisch-zyklischen Aggregation, Bewertung und Watchdog-Servicierung im Task-Kontext des Betriebssystems.
2. Komponenten, Entitäten & Schnittstellen
- Partitionen / Kontexte:
SE context: Thread/Task-Kontext der aufrufenden Supervised Entity (SW-C Runnable, BSW-Task).OS Scheduler context: Zyklischer BSW-Task-Kontext (typischerweise 10 ms – 100 ms Raster).
- APIs & Entry Points:
WdgM_CheckpointReached(WdgM_SupervisedEntityIdType, WdgM_CheckpointIdType): Synchrone BSW-API, ausgelöst durch die SE zur Meldung des Erreichens eines definierten Kontrollpunkts.WdgM_MainFunction(): Periodische Hauptfunktion des Watchdog-Managers, gerufen durch das BSW Scheduler / OS.
- Interne Datenstrukturen & Puffer (Data Stores):
Alive Indication Counters: Puffer für Checkpoint-Trefferzähler je Alive-Überwachung.Result of each Deadline Supervision of SE: Zwischenergebnis (korrekt / fehlerhaft; Zeitfenster zwischen Start- und End-Checkpoint eingehalten/verletzt).Result of each Logical Supervision of SE: Zwischenergebnis (korrekt / fehlerhaft; Programmlaufkontrolle über Transitionen im Kontrollflussgraphen).Result of each Alive Supervision of SE: Auswertung der Trefferzähler gegen konfigurierte Min/Max-Toleranzgrenzen (WdgMExpectedAliveIndications, Toleranzen).Local Supervision Status of SE (state): Lokaler Zustand je SE (WdgM_LocalStatusType:OK,FAILED,EXPIRED,DEACTIVATED).Global Supervision Status (state): Gesamtsystemstatus (WdgM_GlobalStatusType:OK,FAILED,EXPIRED,STOPPED,DEACTIVATED).
- Beziehungen & Abhängigkeiten:
- 1:n-Beziehung zwischen globalem Status und lokalen SE-Zuständen (
For each SE). - n:1-Beziehung der Teilüberwachungen (Alive, Deadline, Logical) zum jeweiligen
Local Supervision Status. - Ausgehende Hardwareschnittstelle: Ansteuerung des Hardware-Watchdogs via Watchdog Interface (
WdgIf_SetTriggerCondition).
- 1:n-Beziehung zwischen globalem Status und lokalen SE-Zuständen (
3. Dynamisches Verhalten & Sequenzablauf
- Asynchroner/Ereignisgesteuerter Pfad (
SE context):- Aufruf von
WdgM_CheckpointReached()durch die übergeordnete Supervised Entity. - Atomare Inkrementierung des
Alive Indication Counterfür den gemeldeten Kontrollpunkt (Increment Alive Indication Counter of Checkpoint). - Synchrone Auswertung der Deadline Supervision für vorzeitiges Eintreffen und Verzögerungen (
Deadline Supervision of SE (early arrivals and delays)): Berechnung des Zeitabstands zum korrespondierenden Start-Checkpoint und Ablage des Zwischenergebnisses inResult of each Deadline Supervision of SE (correct/incorrect). - Synchrone Auswertung der Kontrollflussüberwachung (
Logical Supervision of SE): Validierung der Transition vom vorangegangenen Kontrollpunkt im Programmlaufgraphen und Ablage des Zwischenergebnisses inResult of each Logical Supervision of SE (correct/incorrect). - Rückkehr in die Applikation über den Ablaufendknoten.
- Aufruf von
- Periodisch-zyklischer Pfad (
OS Scheduler context):- Periodischer Aufruf der Hauptfunktion
WdgM_MainFunction()im Task-Kontext des Betriebssystems. - Iteration über alle überwachten Entitäten (
For each SE):- Zyklische Auswertung der Alive-Überwachung (
Alive Supervision of SE) anhand der gepuffertenAlive Indication Countersgegen konfigurierte Toleranzgrenzen und Ablage des Status inResult of each Alive Supervision of SE (correct/incorrect). - Zyklische Auswertung der Deadline Supervision auf Fristüberschreitungen (
Deadline Supervision of SE (timeouts)) und Ablage des Status inResult of each Deadline Supervision of SE (correct/incorrect). - Bestimmung des lokalen Überwachungsstatus (
Determine the Local Supervision Status of SE) unter Aggregation der Zwischenergebnisse von Alive-, Deadline- und Logical Supervision sowie Aktualisierung vonLocal Supervision Status of SE (state).
- Zyklische Auswertung der Alive-Überwachung (
- Zyklusabschluss und Hardware-Ansteuerung:
- Bestimmung des globalen Überwachungsstatus (
Determine Global Supervision Status) über alle lokalen Zustände hinweg und Ablage inGlobal Supervision Status (state). - Ausführung von Fehlerbehandlungsmaßnahmen (
Handle errors). - Berechnung und Setzen der Trigger-Bedingung für die Hardware-Watchdog-Ansteuerung (
Set condition for HW watchdog triggering) via Watchdog Interface. - Abschluss des Kontrollflusses im Ablaufendknoten.
- Bestimmung des globalen Überwachungsstatus (
- Periodischer Aufruf der Hauptfunktion
4. Normative Relevanz & Entwickler-Hinweise
- Konkurrenz- & Reentrancy-Anforderungen:
WdgM_CheckpointReached()muss reentrant und multikernfähig sein. Der Zugriff aufAlive Indication Counterssowie Zustandsvariablen der Deadline- und Logical-Supervision erfordert OS-Interruptsperren oder atomare Operationen, da Checkpoints preemptiv zuWdgM_MainFunction()und untereinander aus unterschiedlichen Tasks aufgerufen werden. - Laufzeit-Budgetierung: Alive Supervision ist extrem leichtgewichtig im SE-Kontext (reines Inkrement). Deadline- und Logical-Supervision evaluieren Zeit- und Graph-Bedingungen synchron im Task-Kontext der SE; dies erhöht die Worst-Case Execution Time (WCET) der Applikationstask direkt.
- Jitter & Scheduling-Treue: Die Alive-Überwachung ist hochgradig empfindlich gegenüber Perioden-Jitter der
WdgM_MainFunction()sowie der SE-Tasks. Toleranzschwellen (WdgMMinMargin,WdgMMaxMargin) müssen im ARXML passend zur OS-Task-Aktivierung und Watchdog-Manager-Periodizität ausgelegt werden, um Fehlauslösungen (false positives) zu verhindern. - Modus-Umschaltung (
WdgMMode): Im laufenden Betrieb können Überwachungskonfigurationen (welche SEs aktiv sind, welche Checkpoints gelten) über Watchdog-Modi gewechselt werden. Vor dem Auswerten lokaler Zustände muss die Gültigkeit der SE im aktuellen Modus sichergestellt sein.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.