DEENESPTFRRUARHIKOZHNL

Watchdog Manager (WdgM)

ModulWdgM (Watchdog Manager)
BSW-Modul-ID13
Standard-Header#include "WdgM.h"
SWS-SpezifikationAUTOSAR_SWS_WatchdogManager.pdf
ClusterSystem Services

Modul-GuideKI-GENERIERT

Überwacht Ablauf und Timing der Software über Checkpoints und steuert davon abhängig das Triggern der Watchdogs.
KI-GENERIERT ungeprüft Modell: claude-opus-5-5 · Aufwand: high · Temperatur: nicht steuerbar · Prompt: 112cef190a48 Herkunft Offene Fragen (4)
Kausaler Anker: R20-11 Gültig ab R20-11 Neu synthetisiert für diesen Spezifikationsstand.
KI-generiertclaude-opus-5-5 · 2026-10-13

Überwacht Ablauf und Timing der Software über Checkpoints und steuert davon abhängig das Triggern der Watchdogs.

Der Watchdog Manager überwacht die Ausführung der Software. Supervised Entities melden Checkpoints über WdgM_CheckpointReached [SWS_WdgM_00263]. Die zyklische WdgM_MainFunction bewertet Alive-, Deadline- und Logical Supervision und verdichtet die Ergebnisse zu lokalen Status und einem globalen Status. Solange alles in Ordnung ist, setzt der WdgM über das Watchdog Interface eine gültige Triggerbedingung. Erreicht der globale Status STOPPED, triggert der Treiber nicht mehr, und ein Watchdog-Reset folgt [SWS_WdgM_00360]. Moduswechsel sind nur bei globalem Status OK oder FAILED zulässig.

Der Watchdog Manager überwacht die Ausführung von Supervised Entities und lässt die Hardware-Watchdogs nur weiter triggern, solange die Überwachung in Ordnung ist. Das Trigger-Timing selbst liegt im Watchdog-Treiber. Der WdgM setzt über das Watchdog Interface nur eine Triggerbedingung (SWS WdgM S. 56). Zwingend benötigt er dafür WdgIf_SetMode, WdgIf_SetTriggerCondition, GetElapsedValue und Det_ReportRuntimeError [SWS_WdgM_00161].

Nach WdgM_Init beginnt die Überwachung mit dem ersten Aufruf von WdgM_MainFunction [SWS_WdgM_00406]. Entities melden Checkpoints über WdgM_CheckpointReached [SWS_WdgM_00263]. Jeder Aufruf erhöht den Alive Counter und prüft sofort Deadline und Logical Supervision (SWS WdgM S. 79). Die Hauptfunktion wertet zyklisch die Alive Counter und Deadline-Timeouts aus [SWS_WdgM_00404].

Checkpoint-Erfassung und zyklische AuswertungSupervised EntityWdgMOsSchM / Os-TaskRTE (Mode-Ports)WdgIfUse Case: SE-Kontext (ereignisgesteuert)WdgM_CheckpointReached(SEID, CheckpointID)Alive Counter desCheckpoints erhöhenGetElapsedValue(CounterID, ...)Deadline Supervision:zu früh / zu spät?Logical Supervision:Transition zulässig?E_OK / E_NOT_OKUse Case: OS-Scheduler-Kontext (zyklisch)WdgM_MainFunction()loopfür jede Supervised EntityAlive Supervision(je Supervision Reference Cycle)Deadline-Timeout-Erkennung(falls aktiviert)Local Supervision Status bestimmenGlobal Supervision Status bestimmenStatuswechsel übermode_{…} / globalmodeWdgIf_SetTriggerCondition(...)

Sequenzdiagramm: Checkpoints werden ereignisgesteuert erfasst, die Bewertung und das Triggern erfolgen zyklisch. Quellen: SWS WdgM S. 32, [SWS_WdgM_00263]

Aus den Ergebnissen entsteht je Entity ein lokaler Status. FAILED ist dabei heilbar, EXPIRED nicht [SWS_WdgM_00359]. Daraus bildet der WdgM einen globalen Status, der über EXPIRED nach STOPPED eskaliert. In STOPPED triggert der Treiber nicht mehr, und ein Watchdog-Reset folgt [SWS_WdgM_00360]. Statusänderungen meldet der WdgM über lokale Mode-Ports und einen globalen Mode-Port [SWS_WdgM_00197] [SWS_WdgM_00198].

Global_Supervision_Status stat statische Initialisierung DEACT WDGM_GLOBAL_STATUS_DEACTIVATED stat->DEACT OK WDGM_GLOBAL_STATUS_OK DEACT->OK WdgM_Init (Interpretation) FAILED WDGM_GLOBAL_STATUS_FAILED OK->FAILED Überwachung fehlgeschlagen, innerhalb Fehlerlimit EXPIRED WDGM_GLOBAL_STATUS_EXPIRED OK->EXPIRED Fehlerlimit überschritten STOPPED WDGM_GLOBAL_STATUS_STOPPED OK->STOPPED WdgIf_SetMode beim Moduswechsel fehlgeschlagen FAILED->OK Fehler behoben (Interpretation) FAILED->EXPIRED Fehlerlimit überschritten FAILED->STOPPED WdgIf_SetMode beim Moduswechsel fehlgeschlagen EXPIRED->STOPPED WdgMExpiredSupervisionCycleTol erschöpft RESET Watchdog-Reset STOPPED->RESET Treiber triggert nicht mehr

Zustandsdiagramm: Global Supervision Status von DEACTIVATED bis STOPPED; zwei Übergänge sind als Interpretation markiert. Quellen: [SWS_WdgM_00387], [SWS_WdgM_00360]

Moduswechsel per WdgM_SetMode sind nur bei globalem Status OK oder FAILED möglich [SWS_WdgM_00145]. Ist WdgMOffModeEnabled FALSE, lehnt der WdgM einen Off-Modus ab [SWS_WdgM_00031]. Scheitert WdgIf_SetMode, geht der globale Status nach STOPPED (SWS WdgM S. 57). Nach einem Reset liefert WdgM_GetFirstExpiredSEID schon vor WdgM_Init die Entity, die zuerst abgelaufen ist [SWS_WdgM_00346] [SWS_WdgM_00348].

Rolle: Software-Überwachung zwischen Supervised Entities und Hardware-Watchdog

Der Watchdog Manager (WdgM) überwacht die Ausführung von Supervised Entities, also von SW-Cs, CDDs oder BSW-Abläufen. Abhängig vom Ergebnis entscheidet er, ob die Hardware-Watchdogs weiter getriggert werden. Das eigentliche Trigger-Timing liegt im Watchdog-Treiber. Der WdgM setzt über das Watchdog Interface nur eine Triggerbedingung, die den Treiber zum Weitertriggern anweist (SWS WdgM S. 56). Zwingend benötigt er dafür WdgIf_SetMode, WdgIf_SetTriggerCondition, GetElapsedValue und Det_ReportRuntimeError [SWS_WdgM_00161]. Optional nutzt er Dem_SetEventStatus, Det_ReportError, Mcu_PerformReset und BswM_WdgM_RequestPartitionReset [SWS_WdgM_00162].

Supervised Entities melden Checkpoints über WdgM_CheckpointReached [SWS_WdgM_00263]. Mode-Management-Module steuern den Lebenszyklus mit WdgM_Init, WdgM_SetMode und WdgM_DeInit [SWS_WdgM_00151] [SWS_WdgM_00154] [SWS_WdgM_00261]. Die zyklische Auswertung leistet WdgM_MainFunction aus SchM_WdgM.h [SWS_WdgM_00159]. Das Sicherheitskonzept ordnet dem WdgM die logische Programmflussüberwachung über Checkpoints und erlaubte Transitionen zu (SafetyConceptStatusReport S. 15).

WdgM_Kontext SWC SW-Cs / CDDs (Supervised Entities) RTE RTE SWC->RTE CheckpointReached, Statusabfragen RTE->SWC Statuswechsel WdgM WdgM RTE->WdgM Service-Ports Mgr EcuM / BswM Mgr->WdgM WdgM_Init, WdgM_SetMode, WdgM_DeInit, WdgM_PerformReset SchM SchM / Os-Task SchM->WdgM WdgM_MainFunction (zyklisch) WdgM->RTE Mode-Ports (lokal / global) WdgM->Mgr BswM_WdgM_RequestPartitionReset (optional) WdgIf WdgIf WdgM->WdgIf WdgIf_SetMode, WdgIf_SetTriggerCondition Os Os WdgM->Os GetElapsedValue Det DET WdgM->Det Det_ReportRuntimeError, Det_ReportError (optional) Dem DEM WdgM->Dem Dem_SetEventStatus (optional) Mcu Mcu WdgM->Mcu Mcu_PerformReset (optional) Wdg Wdg-Treiber (intern / extern) WdgIf->Wdg HW Watchdog-Hardware Wdg->HW Triggern

Kontextdiagramm: Der WdgM verbindet die Checkpoint-Meldungen der Anwendung mit dem Watchdog-Stack sowie mit Os, DET, DEM, Mcu und BswM. Quellen: [SWS_WdgM_00161], [SWS_WdgM_00162], SWS WdgM S. 85

Lebenszyklus: Initialisierung, Moduswechsel und Deinitialisierung

Der Global Supervision Status ist statisch mit WDGM_GLOBAL_STATUS_DEACTIVATED vorbelegt [SWS_WdgM_00387]. In diesem Zustand weisen Dienste mit WDGM_E_UNINIT ab oder kehren wirkungslos zurück [SWS_WdgM_00253] [SWS_WdgM_00395]. WdgM_Init erhält einen Zeiger auf WdgM_ConfigType [SWS_WdgM_00355]. Die Funktion initialisiert alle Modulvariablen und stellt den Initial-Modus her (SWS WdgM S. 74). Interpretation: Danach dürfte der globale Status WDGM_GLOBAL_STATUS_OK sein, weil die im Initial-Modus aktiven Entities lokal mit OK starten (SWS WdgM S. 30). Frage Q-a1728b38f957607d (offen)

Ein erneuter WdgM_Init-Aufruf außerhalb von DEACTIVATED bleibt ohne Wirkung [SWS_WdgM_00390]. Eine Re-Initialisierung erfolgt daher über WdgM_DeInit und anschließendes WdgM_Init (SWS WdgM S. 74). Überwachung und Watchdog Handling beginnen erst mit dem ersten Aufruf von WdgM_MainFunction nach der Initialisierung [SWS_WdgM_00406].

WdgM_SetMode wechselt in einen anderen konfigurierten Modus [SWS_WdgM_00154], allerdings nur bei globalem Status OK oder FAILED [SWS_WdgM_00145]. Für Entities, die im neuen Modus deaktiviert sind, gilt:

Aktiv bleibende Entities behalten ihren Zustand [SWS_WdgM_00182]. Für jeden Watchdog setzt der WdgM die Modusparameter über WdgIf_SetMode [SWS_WdgM_00186]. Solange ein Wechsel läuft, liefert WdgM_GetMode noch den alten Modus (SWS WdgM S. 77).

WdgM_SetMode_Ablauf start WdgM_SetMode(Mode) d1 Global Status OK oder FAILED? start->d1 e1 Rückkehr ohne Aktion d1->e1 nein d2 Neuer Modus nutzt WDGIF_OFF_MODE und WdgMOffModeEnabled = FALSE? d1->d2 ja e2 kein Moduswechsel, WDGM_E_DISABLE_NOT_ALLOWED, E_NOT_OK d2->e2 ja wechsel Moduswechsel: im neuen Modus deaktivierte SE → WDGM_LOCAL_STATUS_DEACTIVATED, Ergebnisse korrekt, Fehlzähler 0; aktive SE behalten Zustand; WdgIf_SetMode je Watchdog (WdgMWatchdogMode) d2->wechsel nein d3 WdgIf_SetMode erfolgreich? wechsel->d3 ok E_OK d3->ok ja nok WDGM_E_SET_MODE, Global Status STOPPED, E_NOT_OK d3->nok nein

Aktivitätsdiagramm: Ein Moduswechsel durchläuft Statusprüfung, Off-Mode-Schutz und das Setzen der Watchdog-Modi; schlägt Letzteres fehl, endet er in STOPPED. Quellen: [SWS_WdgM_00145], [SWS_WdgM_00031], [SWS_WdgM_00186], [SWS_WdgM_00139]; die Prüfreihenfolge ist eine Interpretation

Beim Übergang in SLEEP ruft der EcuM WdgM_DeInit auf. Die Funktion schaltet zuerst in einen vom Integrator definierten Sleep-Modus. Damit erlaubt die Triggerbedingung trotz fensterbasierter Watchdogs den restlichen Shutdown ohne Reset. Danach deinitialisiert sich das Modul (SWS WdgM S. 59). Überwachung und Watchdog Handling stoppen dabei [SWS_WdgM_00407]. Während SLEEP müssen BswM oder EcuM das Triggern übernehmen.

WdgM-Lebenszyklus: Start, Moduswechsel, DeinitialisierungEcuM / BswMSchM / Os-TaskWdgMWdgIfDEMUse Case: StartWdgM_Init(ConfigPtr)Modulvariablen initialisieren,Initial-Modus herstellenWdgIf_SetMode(DeviceIndex, WdgMode)erster Aufruf WdgM_MainFunction()Überwachung undWatchdog Handling startenoptWdgMDemStoppedSupervisionReport = TRUEDem_SetEventStatus(WDGM_E_SUPERVISION, PASSED)Use Case: BetriebWdgM_SetMode(Mode)WdgIf_SetMode(...) je WatchdogE_OK / E_NOT_OKUse Case: Übergang in SLEEPWdgM_DeInit()WdgIf_SetMode(...) für Sleep-ModusÜberwachung undWatchdog Handling stoppenWährend SLEEP triggern noch aktiveBSW-Module (BswM/EcuM) die Watchdogs

Sequenzdiagramm: vom Start über den Moduswechsel bis zur Deinitialisierung vor SLEEP. Quellen: SWS WdgM S. 102, [SWS_WdgM_00406], [SWS_WdgM_00408], [SWS_WdgM_00407]

Checkpoints und die drei Überwachungsfunktionen

Eine Supervised Entity meldet einen Checkpoint mit WdgM_CheckpointReached(SEID, CheckpointID) [SWS_WdgM_00263]. Beide Kennungen sind vom Typ uint16. Ein Checkpoint ist nur durch das Paar aus SE-ID und Checkpoint-ID eindeutig [SWS_WdgM_00356] [SWS_WdgM_00357]. Der Aufruf leistet drei Dinge (SWS WdgM S. 79):

  • Er erhöht den Alive Counter des Checkpoints.
  • Er prüft die Deadline Supervision auf zu frühes oder zu spätes Eintreffen.
  • Er führt die Logical Supervision aus.

Ist die Entity im aktuellen Modus deaktiviert, liefert der Dienst E_NOT_OK und meldet WDGM_E_SEDEACTIVATED [SWS_WdgM_00319].

Alive Supervision prüft zyklische Abläufe. Die Hauptfunktion wertet die Alive Counter im Takt der WdgMSupervisionReferenceCycle aus, einem Vielfachen des Supervision Cycle (SWS WdgM S. 42). Deadline Supervision prüft, ob zwischen Start- und End-Checkpoint die Grenzen WdgMDeadlineMin/WdgMDeadlineMax eingehalten werden. Die Zeitstempel liefert GetElapsedValue mit dem OS-Counter der Entity; skaliert wird über OsSecondsPerTick [SWS_WdgM_00373] [SWS_WdgM_00374]. Ist der Start-Zeitstempel 0, endet die Prüfung ohne Messung erfolgreich [SWS_WdgM_00354]. Fehlt der End-Checkpoint, erkennt WdgM_MainFunction einen Timeout, sofern WdgMEnableTimeoutDetection gesetzt ist [SWS_WdgM_00403] [SWS_WdgM_00404].

Logical Supervision prüft die Reihenfolge der Checkpoints. Je Graph gibt es ein Activity Flag, das WdgM_Init auf false setzt. Ein Graph beginnt an einem Initial Checkpoint (SWS WdgM S. 51). Interne Graphen gehören zu einer Entity und gelten in allen Modi. Externe Graphen verbinden mehrere Entities und werden je Modus konfiguriert (SWS WdgM S. 46, [SWS_WdgM_00366]).

Checkpoint-Erfassung und zyklische AuswertungSupervised EntityWdgMOsSchM / Os-TaskRTE (Mode-Ports)WdgIfUse Case: SE-Kontext (ereignisgesteuert)WdgM_CheckpointReached(SEID, CheckpointID)Alive Counter desCheckpoints erhöhenGetElapsedValue(CounterID, ...)Deadline Supervision:zu früh / zu spät?Logical Supervision:Transition zulässig?E_OK / E_NOT_OKUse Case: OS-Scheduler-Kontext (zyklisch)WdgM_MainFunction()loopfür jede Supervised EntityAlive Supervision(je Supervision Reference Cycle)Deadline-Timeout-Erkennung(falls aktiviert)Local Supervision Status bestimmenGlobal Supervision Status bestimmenStatuswechsel übermode_{…} / globalmodeWdgIf_SetTriggerCondition(...)

Sequenzdiagramm: Checkpoints werden ereignisgesteuert erfasst, die Bewertung und das Triggern erfolgen zyklisch in der Hauptfunktion. Quellen: SWS WdgM S. 32, [SWS_WdgM_00263], [SWS_WdgM_00404], [SWS_WdgM_00197]

Lokaler und globaler Überwachungsstatus

Aus den drei Ergebnissen bildet der WdgM für jede Entity den Local Supervision Status (SWS WdgM S. 30). WDGM_LOCAL_STATUS_FAILED ist heilbar: Verhält sich die Entity wieder normal, kehrt sie nach OK zurück. Überschreiten die Fehlschläge ein Limit, wechselt sie nach WDGM_LOCAL_STATUS_EXPIRED [SWS_WdgM_00359]. Diese Toleranz gilt nur für die Alive Supervision. Bei Deadline- und Logical-Fehlern führt schon das erste falsche Ergebnis nach EXPIRED (SWS WdgM S. 30).

Local_Supervision_Status init WdgM_Init OK WDGM_LOCAL_STATUS_OK init->OK SE im Initial-Modus aktiv DEACT WDGM_LOCAL_STATUS_DEACTIVATED init->DEACT SE im Initial-Modus nicht aktiv FAILED WDGM_LOCAL_STATUS_FAILED OK->FAILED Alive-Ergebnis fehlerhaft, Toleranz > 0 EXPIRED WDGM_LOCAL_STATUS_EXPIRED OK->EXPIRED Deadline-/Logical-Fehler oder Alive-Fehler ohne Toleranz OK->DEACT WdgM_SetMode: SE im neuen Modus deaktiviert FAILED->OK alle Ergebnisse wieder korrekt FAILED->EXPIRED Fehlschläge über Toleranz FAILED->DEACT WdgM_SetMode: SE im neuen Modus deaktiviert

Zustandsdiagramm: Lebenszyklus des Local Supervision Status einer Supervised Entity. Quellen: SWS WdgM S. 30, [SWS_WdgM_00359], [SWS_WdgM_00315]

Für die gesamte Software gibt es einen Global Supervision Status mit den Werten DEACTIVATED, OK, FAILED, EXPIRED und STOPPED (SWS WdgM S. 36). EXPIRED heißt: Das Fehlerlimit ist überschritten, der Treiber triggert aber noch. In STOPPED ist der Treiber angewiesen, nicht mehr zu triggern, und ein Watchdog-Reset folgt [SWS_WdgM_00360]. Wie lange der WdgM in EXPIRED verweilt, legt WdgMExpiredSupervisionCycleTol in Vielfachen des Supervision Cycle fest (SWS WdgM S. 36).

Global_Supervision_Status stat statische Initialisierung DEACT WDGM_GLOBAL_STATUS_DEACTIVATED stat->DEACT OK WDGM_GLOBAL_STATUS_OK DEACT->OK WdgM_Init (Interpretation) FAILED WDGM_GLOBAL_STATUS_FAILED OK->FAILED Überwachung fehlgeschlagen, innerhalb Fehlerlimit EXPIRED WDGM_GLOBAL_STATUS_EXPIRED OK->EXPIRED Fehlerlimit überschritten STOPPED WDGM_GLOBAL_STATUS_STOPPED OK->STOPPED WdgIf_SetMode beim Moduswechsel fehlgeschlagen FAILED->OK Fehler behoben (Interpretation) FAILED->EXPIRED Fehlerlimit überschritten FAILED->STOPPED WdgIf_SetMode beim Moduswechsel fehlgeschlagen EXPIRED->STOPPED WdgMExpiredSupervisionCycleTol erschöpft RESET Watchdog-Reset STOPPED->RESET Treiber triggert nicht mehr

Zustandsdiagramm: Eskalation des Global Supervision Status bis zum Reset; die beiden als Interpretation markierten Übergänge sind nicht ausdrücklich belegt. Quellen: [SWS_WdgM_00387], [SWS_WdgM_00360], SWS WdgM S. 36, SWS WdgM S. 57

Ports, Statusmeldungen und Abfragedienste

Für jede Supervised Entity stellt der WdgM einen Supervision-Port bereit [SWS_WdgM_00146]. Er heißt localSupervision_{SupervisedEntityCheckpointName} und trägt SE-ID und Checkpoint-ID als port-definierte Argumente [SWS_WdgM_00147] [SWS_WdgM_00333]. Den lokalen Status fragt man über localSupervisonStatus_{SupervisedEntityName} ab [SWS_WdgM_91003] [SWS_WdgM_91004]. Globale Abfragen wie GetGlobalStatus oder GetFirstExpiredSEID laufen über globalSupervision [SWS_WdgM_91002] [SWS_WdgM_91001].

Statusänderungen meldet der WdgM von sich aus über Mode-Ports: je Entity mode_{SupervisedEntityName} und einmal globalmode [SWS_WdgM_00149] [SWS_WdgM_00150]. Beide nutzen die Mode Declaration Group WdgM_Mode mit den Werten SUPERVISION_OK bis SUPERVISION_DEACTIVATED [SWS_WdgM_00334]. Lokale Änderungen werden sofort gemeldet, globale jeweils nur einmal [SWS_WdgM_00197] [SWS_WdgM_00199]. Lokaler und globaler Mode-Port haben verschiedene Interfaces. So lassen sich die lokalen Ports über die Indirect Port API ansprechen, ohne dass der globale Port in dieser Liste erscheint (SWS WdgM S. 101).

WdgM_Ports swc1 swc1: SWC Type A (se1, se2) lsup localSupervision_{SupervisedEntityCheckpointName} WdgM_LocalSupervision swc1->lsup CheckpointReached swc2 swc2: SWC Type A (se1, se2) swc2->lsup CheckpointReached swc3 swc3: SWC Type B (se) swc3->lsup CheckpointReached lstat localSupervisonStatus_{SupervisedEntityName} WdgM_LocalSupervisionStatus swc3->lstat GetLocalStatus glob Nutzer globaler Dienste (GlobalSupervisionNeeds) gsup globalSupervision WdgM_GlobalSupervision glob->gsup GetGlobalStatus, GetMode, GetFirstExpiredSEID, ... WdgM WdgM lsup->WdgM lstat->WdgM gsup->WdgM lmode mode_{SupervisedEntityName} WdgM_LocalMode lmode->swc1 lmode->swc2 lmode->swc3 gmode globalmode WdgM_GlobalMode gmode->swc3 WdgM->lmode Local Supervision Status WdgM->gmode Global Supervision Status

Kollaborationsdiagramm: SW-Cs und globale Nutzer sind über Service- und Mode-Ports an den WdgM gebunden. Quellen: SWS WdgM S. 99, [SWS_WdgM_00147], [SWS_WdgM_00149], [SWS_WdgM_00150], [SWS_WdgM_91002]

Die Abfragedienste und WdgM_CheckpointReached sind reentrant. WdgM_SetMode und WdgM_PerformReset sind es nicht [SWS_WdgM_00175] [SWS_WdgM_00263] [SWS_WdgM_00154] [SWS_WdgM_00264]. BSW-Module, die den WdgM global steuern oder abfragen, beschreiben das über GlobalSupervisionNeeds (TPS BSWMDT S. 257).

Konfiguration: Modi, Supervised Entities und Watchdog-Trigger

Der WdgM unterstützt VARIANT-PRE-COMPILE und VARIANT-POST-BUILD (SWS WdgM S. 97). Post-build-fähige Parameter stehen in WdgM_ConfigType [SWS_WdgM_00355]. Der ECU Integrator konfiguriert top-down und wertet dazu die ServiceNeeds aus dem ECU Extract aus (TR Methodology S. 389). SupervisedEntityNeeds beschreiben je Entity unter anderem die Aktivierung beim Start, die erlaubte Deaktivierung, die Alive-Zykluszeiten und die tolerierten Fehlzyklen (SWC-Template S. 716).

Ein WdgMMode umfasst folgende Teile (SWS WdgM S. 119):

  • WdgMModeId
  • WdgMExpiredSupervisionCycleTol
  • Container für Alive-, Deadline- und externe Logical Supervision
  • Container für lokale Statusparameter
  • WdgMTrigger

Ein Trigger legt WdgMWatchdogMode (FAST/SLOW/OFF) und WdgMTriggerConditionValue fest (SWS WdgM S. 125). WdgMGeneral enthält Schalter wie WdgMDevErrorDetect und WdgMImmediateReset (SWS WdgM S. 107). Für Deadline Supervision braucht jede Entity einen OS-Counter (SWS WdgM S. 46).

Verhalten im Fehlerfall

Bei aktivem WdgMDevErrorDetect meldet der WdgM Entwicklungsfehler an den DET, etwa WDGM_E_UNINIT, WDGM_E_PARAM_SEID, WDGM_E_INV_POINTER oder WDGM_E_CPID [SWS_WdgM_00004]. Bei nicht initialisiertem Modul gilt ein festes Muster: Mit Prüfung wird WDGM_E_UNINIT gemeldet, ohne Prüfung kehrt der Dienst wirkungslos zurück [SWS_WdgM_00279] [SWS_WdgM_00394]. Als Laufzeitfehler gibt es WDGM_E_DISABLE_NOT_ALLOWED, WDGM_E_SEDEACTIVATED und WDGM_E_SET_MODE [SWS_WdgM_00402].

Ist WdgMOffModeEnabled FALSE, lehnt WdgM_SetMode einen Modus mit WDGIF_OFF_MODE ab. Der Dienst meldet dann WDGM_E_DISABLE_NOT_ALLOWED und liefert E_NOT_OK [SWS_WdgM_00031]. WdgM_Init verhält sich bei einem solchen Initial-Modus genauso [SWS_WdgM_00030]. Scheitert WdgIf_SetMode, meldet der WdgM WDGM_E_SET_MODE und setzt den globalen Status auf STOPPED [SWS_WdgM_00139]. Der Reset folgt sofort, wenn ein Immediate Reset konfiguriert ist, sonst beim Ablauf des ersten Watchdogs (SWS WdgM S. 57).

Erreicht der globale Status STOPPED, meldet der WdgM das DEM-Event WDGM_E_SUPERVISION als Fehler [SWS_WdgM_00375]. Nach dem Start meldet er dasselbe Event optional als PASSED [SWS_WdgM_00408]. Nach einem Neustart liefert WdgM_GetFirstExpiredSEID die Entity, die als erste EXPIRED erreicht hat [SWS_WdgM_00346]. Der Dienst steht schon vor WdgM_Init zur Verfügung [SWS_WdgM_00348]. Er liest den Wert doppelt-invers aus nicht initialisiertem RAM und liefert bei Inkonsistenz E_NOT_OK [SWS_WdgM_00349]. WdgM_Init löscht den Wert [SWS_WdgM_00370]. Vermutlich schreibt der WdgM ihn beim ersten Übergang einer Entity nach EXPIRED. Frage Q-bb8ada25b04b0758 (offen)

WdgM_PerformReset setzt die Triggerbedingung aller Treiber auf 0 und aktualisiert sie danach nicht mehr (SWS WdgM S. 82). Der EcuM führt diesen Dienst als eines seiner Reset-Ziele (SWS EcuM S. 72).

Eskalation bis zum Reset und UrsachenauswertungSchM / Os-TaskWdgMnicht initialisierter RAMDEMWdgIf / WdgMcuEcuM / AufruferWdgM_MainFunction()SE erreichtWDGM_LOCAL_STATUS_EXPIREDSEID doppelt-invers ablegenInterpretation: Ablage beimersten Übergang nach EXPIREDGlobal Status EXPIREDloopbis WdgMExpiredSupervisionCycleTol erschöpftWdgM_MainFunction()Global Status STOPPEDDem_SetEventStatus(WDGM_E_SUPERVISION, FAILED)(falls konfiguriert)altImmediate Reset konfiguriertMcu_PerformReset()sonstkeine korrekte Triggerbedingung mehrerster Watchdog läuft ab→ Hardware-ResetUse Case: Nach dem NeustartWdgM_GetFirstExpiredSEID(&SEID)Wert und Inverses lesenE_OK + SEID / E_NOT_OK + 0WdgM_Init(ConfigPtr)gespeicherten Wert löschen

Sequenzdiagramm: Eskalation vom abgelaufenen Supervised Entity bis zum Reset und Auswertung der Ursache nach dem Neustart. Quellen: [SWS_WdgM_00360], [SWS_WdgM_00375], [SWS_WdgM_00349], [SWS_WdgM_00370], SWS WdgM S. 57; der Ablagezeitpunkt ist eine Interpretation

Weiterführende Detailbelege

KI-generierter Leitfaden für WdgM (Classic, R20-11) auf Basis der beigefügten Spezifikationsauszüge. Normativ sind die verlinkten Requirements. Einige Dokumentstellen stammen aus späteren Releases und wurden nur genutzt, wo sie den R20-11-Requirements nicht widersprechen. Als Interpretation gekennzeichnete Aussagen sind nicht belegt.

Watchdog Manager (WdgM)

Performs alive supervision, deadline supervision, and logical program flow monitoring.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

function WdgM_Init [SWS_WdgM_00151] 📄 PDF

void WdgM_Init (const WdgM_ConfigType* ConfigPtr);

Initializes the Watchdog Manager.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: c034e317eda3 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Funktion WdgM_Init initialisiert den Watchdog Manager synchron und ist nicht reentrant [SWS_WdgM_00151]. Als einziger Übergabeparameter dient ConfigPtr, der auf die Post-Build-Konfigurationsdaten (WdgM_ConfigType) verweist [SWS_WdgM_00151]. Die Funktion besitzt formal keinen Rückgabewert (void) [SWS_WdgM_00151].

Fehlerbehandlung und Randbedingungen

Vor der Initialisierung muss sich der Watchdog Manager im Zustand WDGM_GLOBAL_STATUS_DEACTIVATED befinden: Ist der Entwicklungskonfigurationsparameter WdgMDevErrorDetect deaktiviert und das Modul nicht in diesem Zustand, kehrt WdgM_Init wirkungslos zurück [SWS_WdgM_00390].

Falls der Konfigurationsschalter WdgMOffModeEnabled nicht aktiviert ist und der über ConfigPtr vorgegebene initiale Modus den Watchdog deaktivieren würde (WDGIF_OFF_MODE), bricht die Funktion ohne weitere Aktion ab und meldet den Laufzeitfehler WDGM_E_DISABLE_NOT_ALLOWED an das Default Error Tracer (DET) [SWS_WdgM_00030]. Die in der Spezifikation geforderte Rückgabe mit E_NOT_OK dürfte dabei als Interpretation eines internen Fehlerabbruchs zu verstehen sein, da die Signatur void vorschreibt [SWS_WdgM_00151]. Frage Q-83a164f8f4669d4d (offen)

Zusammenspiel und Reihenfolge

  • Fehlerdiagnose vor Initialisierung: Die Funktion WdgM_GetFirstExpiredSEID() muss bereits vor dem Aufruf von WdgM_Init verfügbar sein, um die zuvor abgelaufene Supervised Entity ID (SEID) auszulesen [SWS_WdgM_00348].
  • RAM-Bereinigung: Während der Initialisierung löscht WdgM_Init den im nicht-initialisierten RAM abgelegten, doppelt-invertierten SEID-Wert der ersten abgelaufenen Entität [SWS_WdgM_00370].
  • Statusmeldung an das DEM: Innerhalb des ersten Aufrufs von WdgM_MainFunction nach WdgM_Init meldet das Modul bei gesetztem Parameter WdgMDemStoppedSupervisionReport den Status PASSED für WDGM_E_SUPERVISION an das DEM [SWS_WdgM_00408].

Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.

Implementer's Guide folgt (Komplexität I2)

function WdgM_DeInit [SWS_WdgM_00261] 📄 PDF

void WdgM_DeInit (void);

De - initializes the Watchdog Manager.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f81345e92521 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die synchrone Funktion WdgM_DeInit dient der Deinitialisierung des Watchdog Managers [SWS_WdgM_00261]. Die Schnittstelle besitzt die Service-ID 0x01, wird über die Header-Datei WdgM.h bereitgestellt und nimmt weder Eingabeparameter entgegen, noch liefert sie einen Rückgabewert an den Aufrufer zurück [SWS_WdgM_00261]. Als Aufrufkontext dürfte vermutlich die geordnete Shutdown-Sequenz des Steuergeräts vorgesehen sein, in der aktive Überwachungen vor dem Abschalten kontrolliert beendet werden. Frage Q-50d7e49c71d2dfd3 (offen)

Funktionsumfang und Zusammenspiel

Im Rahmen der Deinitialisierung stoppt das Modul WdgM die Überwachungsfunktionen (Supervision Functions) über sämtliche konfigurierten Überwachungsalgorithmen (Supervision Algorithms) hinweg vollständig und beendet zugleich die Watchdog-Bedienung (Watchdog Handling) [SWS_WdgM_00407].

Fehlerbehandlung und Randbedingungen

Befindet sich der Watchdog Manager zum Aufrufzeitpunkt bereits im globalen Zustand WDGM_GLOBAL_STATUS_DEACTIVATED, ist das Verhalten vom Konfigurationsparameter WdgMDevErrorDetect abhängig: Ist diese Entwicklungserkennung deaktiviert, kehrt WdgM_DeInit unmittelbar und ohne jede Wirkung zurück [SWS_WdgM_00388].

Hinsichtlich der Nebenläufigkeit ist festgelegt, dass die Funktion nicht-reentrant ist [SWS_WdgM_00261]. Der Aufruf darf daher keinesfalls unterbrechend oder parallel aus mehreren Kontexten heraus erfolgen.

Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.

function WdgM_SetMode [SWS_WdgM_00154] 📄 PDF

Std_ReturnType WdgM_SetMode (WdgM_ModeType Mode);

Sets the current mode of Watchdog Manager.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 3fd969cfebd9 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Semantik

Die Funktion WdgM_SetMode dient dem synchronen Umschalten des Watchdog Managers in einen der konfigurierten Betriebsmodi ([SWS_WdgM_00154]). Als Übergabeparameter erwartet sie Mode vom Typ WdgM_ModeType. Der Rückgabewert Std_ReturnType signalisiert mit E_OK die erfolgreiche Durchführung des Moduswechsels und mit E_NOT_OK ein Fehlschlagen ([SWS_WdgM_00154]).

Einschränkungen und Fehlerbehandlung

Die Funktion ist nicht reentrant (Non Reentrant) ([SWS_WdgM_00154]). Die Ausführung ist an den aktuellen globalen Status des Watchdog Managers gebunden:

  • Befindet sich das Modul weder im Status WDGM_GLOBAL_STATUS_OK noch in WDGM_GLOBAL_STATUS_FAILED, kehrt die Funktion ohne Ausführung jeglicher Aktionen zurück ([SWS_WdgM_00145]).
  • Ist der Konfigurationsparameter WdgMDevErrorDetect deaktiviert, bleibt ein Aufruf im Status WDGM_GLOBAL_STATUS_DEACTIVATED ohne jede Wirkung ([SWS_WdgM_00392]).

Zusammenspiel und Auswirkungen

Liegt ein gültiger globaler Status (WDGM_GLOBAL_STATUS_OK oder WDGM_GLOBAL_STATUS_FAILED) vor, aktualisiert WdgM_SetMode die überwachten Entitäten sowie die Watchdogs:

  • Für jede im Zielmodus aktivierte Supervised Entity wird der aktuelle Zustand beibehalten ([SWS_WdgM_00182]).
  • Für jede im Zielmodus deaktivierte Supervised Entity wechselt der lokale Zustand zu WDGM_LOCAL_STATUS_DEACTIVATED; die Ergebnisse von Active, Deadline und Logical Supervision werden auf korrekt gesetzt und der Fehlzykluszähler wird auf 0 zurückgesetzt ([SWS_WdgM_00315]). Durch den Wechsel in einen Modus mit Deaktivierung der Entität werden zudem Fehler bereinigt, die zuvor zu WDGM_GLOBAL_STATUS_FAILED geführt hatten ([SWS_WdgM_00182]).
  • Abschließend werden die konfigurierten Watchdog-Modusparameter für jeden Hardware-Watchdog über die Schnittstelle WdgIf_SetMode wirksam geschaltet ([SWS_WdgM_00186]).

Dieser Nutzungshinweis basiert auf der AUTOSAR-Spezifikation R20-11 und wurde durch eine KI kuratiert.

Implementer's Guide folgt (Komplexität I2)

function WdgM_CheckpointReached [SWS_WdgM_00263] 📄 PDF

Std_ReturnType WdgM_CheckpointReached (WdgM_SupervisedEntityIdType SEID, WdgM_CheckpointIdType CheckpointID);

Indicates to the Watchdog Manager that a Checkpoint within a Supervised Entity has been reached.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 3c32ca59b4bb Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Semantik

Die synchrone Funktion meldet dem Watchdog Manager das Erreichen eines Checkpoints innerhalb einer Supervised Entity [SWS_WdgM_00263]. Sie übernimmt als Eingangsparameter die Kennung der überwachten Entität (SEID) sowie die Kennung des erreichten Checkpoints (CheckpointID) und liefert E_OK bei erfolgreicher Aktualisierung des Alive-Zählers oder E_NOT_OK bei Fehlern zurück [SWS_WdgM_00263].

Fehlerbehandlung und Status

Befindet sich der Watchdog Manager im Status WDGM_GLOBAL_STATUS_DEACTIVATED, hängt das Verhalten von der Konfiguration der Entwicklungskennung ab: Bei aktiviertem WdgMDevErrorDetect meldet die Funktion den Fehler WDGM_E_UNINIT an den Default Error Tracer (DET) und kehrt ohne weitere Wirkung zurück [SWS_WdgM_00279]. Ist WdgMDevErrorDetect deaktiviert, erfolgt die Rückkehr ohne Meldung und ohne jegliche Wirkung [SWS_WdgM_00394].

Nebenläufigkeit und Deadlines

Der Aufruf ist reentrant spezifiziert [SWS_WdgM_00263]. Zur Bestimmung von Zeitstempeln und Zeitdifferenzen bei der Deadline-Überwachung nutzt die Funktion die OS-Funktion GetElapsedValue mit der für die Entität konfigurierten CounterID [SWS_WdgM_00373]. Die Skalierung der Zeitdifferenzen auf die Grenzwerte erfolgt über den Parameter OsSecondsPerTick [SWS_WdgM_00374]. Erreicht ein Deadline End Checkpoint den Aufruf im aktiven Modus und beträgt der Zeitstempel des zugehörigen Start-Checkpoints 0, beendet sich die Funktion erfolgreich ohne Differenzmessung [SWS_WdgM_00354].

Dieser Nutzungshinweis wurde automatisch erstellt auf Basis der Spezifikation von AUTOSAR R20-11.

Implementer's Guide folgt (Komplexität I2)

function WdgM_GetLocalStatus [SWS_WdgM_00169] 📄 PDF

Std_ReturnType WdgM_GetLocalStatus (WdgM_SupervisedEntityIdType SEID, WdgM_LocalStatusType* Status);

Returns the supervision status of an individual Supervised Entity.

function WdgM_PerformReset [SWS_WdgM_00264] 📄 PDF

void WdgM_PerformReset (void);

Instructs the Watchdog Manager to cause a watchdog reset.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 9885fefa4e38 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Aufrufkontext

Die synchrone Funktion WdgM_PerformReset weist den Watchdog Manager an, die Auslösung eines Watchdog-Resets herbeizuführen [SWS_WdgM_00264]. Die Schnittstelle wird über den Header WdgM.h deklariert und besitzt die Service-ID 0x0f [SWS_WdgM_00264]. Sie nimmt weder Ein- noch Ausgabeparameter entgegen und liefert keinen Rückgabewert [SWS_WdgM_00264].

Nebenläufigkeit und Einschränkungen

Da WdgM_PerformReset als nicht reentrant (Non Reentrant) definiert ist, darf kein nebenläufiger oder unterbrechender Mehrfachaufruf erfolgen [SWS_WdgM_00264]. Aufrufer müssen daher sicherstellen, dass Aufrufe synchronisiert oder exklusiv aus einem geeigneten Kontext abgesetzt werden.

Zustandsabhängiges Verhalten und Fehlerbehandlung

Die Ausführung unterliegt den globalen Zuständen des Watchdog Managers: Ist der Konfigurationsparameter WdgMDevErrorDetect deaktiviert und befindet sich das Modul im globalen Status WDGM_GLOBAL_STATUS_DEACTIVATED, kehrt die Funktion ohne jegliche Wirkung zurück [SWS_WdgM_00401]. Ein Reset unterbleibt in diesem Fall vollständig. Das Verhalten bei aktivierter Entwicklungserkennung (WdgMDevErrorDetect) ist im Payload nicht spezifiziert; Interpretation: In diesem Fall dürfte im deaktivierten Zustand vermutlich ein entsprechender Entwicklungsfehler gemeldet werden. Frage Q-8a726bba4154540f (offen)

Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R20-11 generiert.

function WdgM_GetFirstExpiredSEID [SWS_WdgM_00346] 📄 PDF

Std_ReturnType WdgM_GetFirstExpiredSEID (WdgM_SupervisedEntityIdType* SEID);

Returns SEID that first reached the stat e WDGM_ LOCAL_ STATUS_ EXPIRED.

function WdgM_MainFunction [SWS_WdgM_00159] 📄 PDF

void WdgM_MainFunction (void);

Performs the processing of the cyclic Watchdog Manager jobs.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 6960691f573c Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und zyklischer Ablauf

Die Funktion WdgM_MainFunction führt die periodischen Aufgaben des Watchdog Managers aus [SWS_WdgM_00159]. Sie besitzt die Signatur void WdgM_MainFunction(void), nimmt keine Parameter entgegen, liefert keinen Rückgabewert und wird über den Header SchM_WdgM.h bereitgestellt [SWS_WdgM_00159]. Beim ersten Aufruf nach der Initialisierung des Moduls startet sie sowohl sämtliche Überwachungsfunktionen (für alle Überwachungsalgorithmen einschließlich der Referenzzyklen) als auch das Watchdog-Handling [SWS_WdgM_00406].

Deadline-Überwachung und Timeout-Erkennung

In den zyklischen Aufrufen führt WdgM_MainFunction die Deadline-Überwachung zur Erkennung von Timeouts für alle Einheiten mit aktiver Überwachung durch und aktualisiert deren Ergebnis [SWS_WdgM_00404]:

  • Ist die Erkennung über WdgMEnableTimeoutDetection aktiviert, prüft die Funktion alle im aktiven Modus konfigurierten Deadline-Überwachungen, bei denen der Start-Checkpoint gemeldet wurde, der zugehörige End-Checkpoint jedoch noch aussteht [SWS_WdgM_00403].
  • Übersteigt die gemessene Zeitdifferenz zum aktuellen Zeitstempel das Maximum WdgMDeadlineMax, setzt die Funktion das Überwachungsergebnis der Supervised Entity auf fehlerhaft (incorrect) [SWS_WdgM_00403].

Zusammenspiel mit dem Betriebssystem

Zur Bestimmung von Zeitstempeln und Differenzen ruft WdgM_MainFunction die OS-Funktion GetElapsedValue mit der für die Einheit konfigurierten Zähler-ID (Parameter WdgMOSCounter) auf [SWS_WdgM_00373]. Die Skalierung der Differenzwerte auf die Grenzwerte WdgMDeadlineMin und WdgMDeadlineMax erfolgt anhand des Parameters OsSecondsPerTick [SWS_WdgM_00374].

Dieser Text wurde automatisch anhand der AUTOSAR-Spezifikation R20-11 generiert.

Implementer's Guide folgt (Komplexität I2)

type WdgM_ConfigType [SWS_WdgM_00355] 📄 PDF

This structure contains all post - build configurable parameters of the Watchdog Manager. A pointer to this structure is passed to the Watchdog Manager initialization function for configuration. AUTOSAR CP R20 - of D ocument ID : AUTOSAR_SWS_WatchdogManager

type WdgM_SupervisedEntityIdType [SWS_WdgM_00356] 📄 PDF

This type identifies an individual Supervised Entity for the Watchdog Manager.

type WdgM_CheckpointIdType [SWS_WdgM_00357] 📄 PDF

This type identifies a Checkpoint in the context of a Supervised Entity for the Watchdog Manager. Note that an individual Checkpoint can only be identified by the pair of Supervised Entity ID and Checkpoint ID.

type WdgM_Mode [SWS_WdgM_00334] 📄 PDF

The category of Mode Declaration Group Wdg M_ Mode is EXPLICIT_ ORDER, The attribute value for the Mode Declaration are set as following: "SUPERVISION_ OK" = 0 "SUPERVISION_ FAILED" = 1 "SUPERVISION_ EXPIRED" = 2 "SUPERVISION_ STOPPED" = 3 "SUP ERVISION_ DEACTIVATED" = 4 The on Transition Value is defined as 255

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: dbc1e33f878e Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Der Typ WdgM_Mode ist als Mode Declaration Group der Kategorie EXPLICIT_ORDER definiert und dient der Repräsentation von Überwachungszuständen des Moduls [SWS_WdgM_00334].

Verwendung und Wertebereich

Als Initialmodus ist SUPERVISION_OK festgelegt [SWS_WdgM_00334]. Für die einzelnen Modi sind explizite numerische Werte vorgegeben [SWS_WdgM_00334]:

  • SUPERVISION_OK = 0
  • SUPERVISION_FAILED = 1
  • SUPERVISION_EXPIRED = 2
  • SUPERVISION_STOPPED = 3
  • SUPERVISION_DEACTIVATED = 4

Für den Übergangswert (on transition value) zwischen Modi ist der Wert 255 definiert [SWS_WdgM_00334].

Zusammenspiel

Durch die Einstufung in die Kategorie EXPLICIT_ORDER und die Zuweisung fester Ordinalwerte dürfte die Gruppe für eine geordnete Statusabbildung innerhalb des Watchdog Managers vorgesehen sein [SWS_WdgM_00334]. Frage Q-47c55c3bc2e2a23d (offen)

Dieser Text wurde von einer KI auf Basis der Spezifikation erstellt.

Implementer's Guide folgt (Komplexität I1)

type WdgM_LocalStatusType [SWS_WdgM_00359] 📄 PDF

This type shall be used for variables that represent the current status of supervision for individual Supervised Entitie s.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 7f77d0becca2 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Der Typ WdgM_LocalStatusType wird für Variablen verwendet, die den aktuellen lokalen Überwachungsstatus einer einzelnen überwachten Entität (Supervised Entity) im Watchdog-Manager abbilden [SWS_WdgM_00359]. Der Datentyp ist vom Basistyp uint8 abgeleitet und wird über den Header Rte_WdgM_Type.h bereitgestellt [SWS_WdgM_00359].

Der Wertebereich umfasst vier diskrete Zustände gemäß [SWS_WdgM_00359]:

  • WDGM_LOCAL_STATUS_OK (Wert 0): Die Überwachung der Supervised Entity weist keine Fehler auf.
  • WDGM_LOCAL_STATUS_FAILED (Wert 1): Die Überwachung ist fehlgeschlagen, kann jedoch noch geheilt werden („healed“), falls die Entität zu normalem Verhalten zurückkehrt. Dies gilt, solange ein konfigurierbares Fehlerlimit nicht überschritten ist; andernfalls wechselt der Status nach WDGM_LOCAL_STATUS_EXPIRED.
  • WDGM_LOCAL_STATUS_EXPIRED (Wert 2): Die Überwachung ist permanent fehlgeschlagen; dieser Zustand kann nicht mehr verlassen werden.
  • WDGM_LOCAL_STATUS_DEACTIVATED (Wert 4): Die lokale Überwachung der Supervised Entity ist temporär deaktiviert.

Aufgrund der Definition in Rte_WdgM_Type.h dürfte der Typ vor allem für den softwarekomponenten- und RTE-übergreifenden Austausch von Überwachungszuständen bestimmt sein [SWS_WdgM_00359]. Frage Q-a9e584dc4c7cfa3b (offen)

Dieser Text wurde von einer KI erstellt. Alle Angaben basieren ausschließlich auf den Spezifikationsdaten aus AUTOSAR R20-11.

Implementer's Guide folgt (Komplexität I1)

type WdgM_GlobalStatusType [SWS_WdgM_00360] 📄 PDF

This type shall be used for variables that represent the global supervision status of the Watchdog Manager module.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f7b49aed5af1 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Der Datentyp WdgM_GlobalStatusType dient der Definition von Variablen, die den globalen Überwachungsstatus des Watchdog-Manager-Moduls darstellen [SWS_WdgM_00360]. Er ist vom Basistyp uint8 abgeleitet und wird über den Header Rte_WdgM_Type.h zur Verfügung gestellt [SWS_WdgM_00360].

Der Wertebereich umfasst fünf definierte Überwachungszustände [SWS_WdgM_00360]:

  • WDGM_GLOBAL_STATUS_OK (0): Die Überwachung weist keinerlei Fehler auf.
  • WDGM_GLOBAL_STATUS_FAILED (1): Die Überwachung ist fehlgeschlagen, befindet sich jedoch noch innerhalb des zulässigen Limits an Fehlern.
  • WDGM_GLOBAL_STATUS_EXPIRED (2): Die Überwachung ist fehlgeschlagen und das zulässige Fehlerlimit wurde überschritten, der Watchdog-Treiber wurde jedoch noch nicht angewiesen, die Triggerung einzustellen.
  • WDGM_GLOBAL_STATUS_STOPPED (3): Das Fehlerlimit wurde überschritten und der Watchdog-Treiber wurde angewiesen, die Triggerung zu stoppen, sodass ein Watchdog-Reset unmittelbar bevorsteht.
  • WDGM_GLOBAL_STATUS_DEACTIVATED (4): Das Modul WdgM ist nicht initialisiert und steuert die Watchdogs daher nicht an.

Über diese Zustände bildet der Typ den gesamten Zyklus der Überwachung ab, beginnend bei der Deaktivierung vor der Initialisierung über den regulären bzw. fehlertoleranten Betrieb bis hin zur mehrstufigen Eskalation mit abschließendem Watchdog-Reset bei anhaltenden Fehlern [SWS_WdgM_00360].

Dieser Nutzungshinweis wurde von einer KI basierend auf der AUTOSAR-Spezifikation erstellt.

Implementer's Guide folgt (Komplexität I1)

type WdgM_ModeType [SWS_WdgM_00358] 📄 PDF

This type distinguishes the different modes that were configured for the Watchdog Manager.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 991ebd8bd655 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Der Datentyp WdgM_ModeType dient der eindeutigen Unterscheidung der verschiedenen Modi, die für den Watchdog Manager projektiert wurden [SWS_WdgM_00358]. Er wird für Software-Komponenten und Basissoftware-Module über die Header-Datei Rte_WdgM_Type.h bereitgestellt [SWS_WdgM_00358].

Gemäß der Spezifikation [SWS_WdgM_00358] weist der Typ folgende Eigenschaften auf:

  • Basistyp: WdgM_ModeType ist vom Standard-Datentyp uint8 abgeleitet [SWS_WdgM_00358].
  • Wertebereich: Der Wertebereich umfasst 0 bis <Number of Modes> [SWS_WdgM_00358].
  • Konfigurationsabhängigkeit: Das tatsächliche obere Limit des Wertebereichs richtet sich nach der Anzahl der für den Watchdog Manager konfigurierten Modi [SWS_WdgM_00358].

Da es sich um eine Typdefinition handelt, existieren keine Laufzeitparameter, Fehlercodes oder Asynchronitätssemantiken. Interpretation: Aufgrund der Deklaration in Rte_WdgM_Type.h dürfte WdgM_ModeType primär für den Austausch von Modusinformationen über RTE-Schnittstellen zwischen Anwendungssoftware und dem Watchdog Manager verwendet werden. Frage Q-27975280bc68720e (offen)

Dieser Nutzungshinweis basiert auf der Spezifikation AUTOSAR CP R20-11.

Implementer's Guide folgt (Komplexität I1)

type globalmode [SWS_WdgM_00150] 📄 PDF

-

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 747dfe1f1d56 Herkunft Offene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Das Element globalmode ist gemäß Spezifikation [SWS_WdgM_00150] als bereitgestellter Port (Provided Port Interface) des Watchdog Managers (WdgM) in der AUTOSAR-Classic-Plattform im Release R20-11 definiert. Als Schnittstellentyp wird WdgM_GlobalMode ausgewiesen. Das Element dient im Gesamtsystem als formale Port-Schnittstelle, über welche das Modul seinen Status für andere Software-Komponenten exponiert.

Zur konkreten Verwendung, den Parametern, Rückgabewerten oder Datenstrukturen liefert die Spezifikation [SWS_WdgM_00150] keine weiteren Details. Als Interpretation dürfte das Port-Interface primär dazu dienen, übergeordneten Instanzen wie dem BswM oder Applikations-SW-Cs den aktuellen globalen Überwachungsstatus des Watchdog Managers bereitzustellen. Frage Q-6a0217eb1d28c1b4 (offen) Mangels abweichender Angaben in den Quellen dürfte die Modusbereitstellung vermutlich synchron über die RTE abgewickelt werden.

In Bezug auf Fehlerbehandlung, DET- oder DEM-Meldungen sowie spezifische Fehlercodes schweigt [SWS_WdgM_00150] vollständig. Ebenso sind keine normativen Festlegungen zu Reentranz, Prioritäten oder Aufrufkontexten im Payload hinterlegt; als Interpretation dürfte der Zugriff jedoch den allgemeinen Nebenläufigkeitsregeln der WdgM-Zustandsverwaltung unterliegen. Frage Q-28fa9de4b06e3b0d (offen) Verwandte Requirements liegen für dieses Element nicht vor.

Dieser Nutzungshinweis wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.

Implementer's Guide folgt (Komplexität I1)

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_WdgM
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_WdgM@rel:R20-11#628a1ef9
Content hash
628a1ef9
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_WatchdogManager.pdf#nameddest=SWS_WdgM_00151

Initialisierung und Status

WdgM_DeInit function

De - initializes the Watchdog Manager.

void WdgM_DeInit (void);

Returns the version information of this module.

void WdgM_GetVersionInfo (Std_VersionInfoType* VersionInfo);
WdgM_Init function

Initializes the Watchdog Manager.

void WdgM_Init (const WdgM_ConfigType* ConfigPtr);

Dienste

Indicates to the Watchdog Manager that a Checkpoint within a Supervised Entity has been reached.

Std_ReturnType WdgM_CheckpointReached (WdgM_SupervisedEntityIdType SEID, WdgM_CheckpointIdType CheckpointID);

Returns SEID that first reached the stat e WDGM_ LOCAL_ STATUS_ EXPIRED.

Std_ReturnType WdgM_GetFirstExpiredSEID (WdgM_SupervisedEntityIdType* SEID);

Returns the global supervision status of the Watchdog Manager.

Std_ReturnType WdgM_GetGlobalStatus (WdgM_GlobalStatusType* Status);

Returns the supervision status of an individual Supervised Entity.

Std_ReturnType WdgM_GetLocalStatus (WdgM_SupervisedEntityIdType SEID, WdgM_LocalStatusType* Status);
WdgM_GetMode function

Returns the current mode of the Watchdog Manager.

Std_ReturnType WdgM_GetMode (WdgM_ModeType* Mode);

Instructs the Watchdog Manager to cause a watchdog reset.

void WdgM_PerformReset (void);
WdgM_SetMode function

Sets the current mode of Watchdog Manager.

Std_ReturnType WdgM_SetMode (WdgM_ModeType Mode);

Zyklisch

Performs the processing of the cyclic Watchdog Manager jobs.

void WdgM_MainFunction (void);

Typen

This type identifies a Checkpoint in the context of a Supervised Entity for the Watchdog Manager. Note that an individual Checkpoint can only be identified by the pair of Supervised Entity ID and Checkpoint ID.

This structure contains all post - build configurable parameters of the Watchdog Manager. A pointer to this structure is passed to the Watchdog Manager initialization function for configuration. AUTOSAR CP R20 - of D ocument ID : AUTOSAR_SWS_WatchdogManager

This type shall be used for variables that represent the global supervision status of the Watchdog Manager module.

This type shall be used for variables that represent the current status of supervision for individual Supervised Entitie s.

The category of Mode Declaration Group Wdg M_ Mode is EXPLICIT_ ORDER, The attribute value for the Mode Declaration are set as following: "SUPERVISION_ OK" = 0 "SUPERVISION_ FAILED" = 1 "SUPERVISION_ EXPIRED" = 2 "SUPERVISION_ STOPPED" = 3 "SUP ERVISION_ DEACTIVATED" = 4 The on Transition Value is defined as 255

This type distinguishes the different modes that were configured for the Watchdog Manager.

This type identifies an individual Supervised Entity for the Watchdog Manager.