DEENESPTFRRUARHIKOZHNL

Watchdog Manager (WdgM)

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

Guide du moduleGÉNÉRÉ PAR IA

Surveille le déroulement et la synchronisation temporelle du logiciel via des points de contrôle (checkpoints) et commande en fonction de cela le déclenchement des watchdogs.
GÉNÉRÉ PAR IA non vérifié Modèle : claude-opus-5-5 · Effort : high · Température : non réglable · Prompt : 112cef190a48 Provenance Questions ouvertes (4)
Ancre causale : R20-11 Valable à partir de R20-11 Synthétisé pour cette version de spécification.
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Surveille le déroulement et la synchronisation temporelle du logiciel via des points de contrôle (checkpoints) et commande en fonction de cela le déclenchement des watchdogs.

Le Watchdog Manager surveille l'exécution du logiciel. Les Supervised Entities signalent des points de contrôle via WdgM_CheckpointReached [SWS_WdgM_00263]. Le cyclique WdgM_MainFunction évalue l'Alive, la Deadline et la Logical Supervision et consolide les résultats en statuts locaux et un statut global. Tant que tout est en ordre, le WdgM applique une condition de déclenchement valide via la Watchdog Interface. Si le statut global atteint STOPPED, le pilote ne déclenche plus et une réinitialisation par watchdog s'ensuit [SWS_WdgM_00360]. Les changements de mode ne sont autorisés qu'avec un statut global OK ou FAILED.

Le Watchdog Manager surveille l'exécution des Supervised Entities et ne laisse les watchdogs matériels continuer à être déclenchés que tant que la surveillance est correcte. La temporisation du déclenchement elle-même incombe au pilote de watchdog. Le WdgM ne définit qu'une condition de déclenchement (SWS WdgM p. 56) via la Watchdog Interface. Il requiert impérativement pour cela WdgIf_SetMode, WdgIf_SetTriggerCondition, GetElapsedValue et Det_ReportRuntimeError [SWS_WdgM_00161].

Après WdgM_Init, la surveillance commence avec le premier appel de WdgM_MainFunction [SWS_WdgM_00406]. Les entités signalent des points de contrôle via WdgM_CheckpointReached [SWS_WdgM_00263]. Chaque appel incrémente l'Alive Counter et vérifie immédiatement la Deadline et la Logical Supervision (SWS WdgM p. 79). La fonction principale évalue périodiquement les Alive Counters et les délais d'expiration de deadline [SWS_WdgM_00404].

Acquisition des checkpoints et évaluation cycliqueSupervised EntityWdgMOsSchM / Os-TaskRTE (Mode-Ports)WdgIfUse Case: SE-Kontext (ereignisgesteuert)WdgM_CheckpointReached(SEID, CheckpointID)Incrémenter le compteurAlive du checkpointGetElapsedValue(CounterID, ...)Deadline Supervision:Trop tôt / trop tard ?Logical Supervision:Transition autorisée ?E_OK / E_NOT_OKUse Case: OS-Scheduler-Kontext (zyklisch)WdgM_MainFunction()loopPour chaque Supervised EntityAlive Supervision(je Supervision Reference Cycle)Deadline-Timeout-Erkennung(falls aktiviert)Local Supervision Status bestimmenGlobal Supervision Status bestimmenChangement d'état viamode_{…} / globalmodeWdgIf_SetTriggerCondition(...)

Diagramme de séquence : les points de contrôle sont acquis sur événement, l'évaluation et le déclenchement s'effectuent de manière cyclique. Sources : SWS WdgM p. 32, [SWS_WdgM_00263]

Un statut local est généré par entité à partir des résultats. FAILED est alors récupérable, EXPIRED ne l'est pas [SWS_WdgM_00359]. À partir de là, le WdgM forme un statut global qui s'intensifie via EXPIRED vers STOPPED. Dans STOPPED, le pilote ne déclenche plus et une réinitialisation par watchdog s'ensuit [SWS_WdgM_00360]. Le WdgM signale les changements d'état via des ports de mode locaux et un port de mode global [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 Surveillance échouée, dans la limite d'erreurs EXPIRED WDGM_GLOBAL_STATUS_EXPIRED OK->EXPIRED Limite d'erreurs dépassée STOPPED WDGM_GLOBAL_STATUS_STOPPED OK->STOPPED Échec de WdgIf_SetMode lors du changement de mode FAILED->OK Fehler behoben (Interpretation) FAILED->EXPIRED Limite d'erreurs dépassée FAILED->STOPPED Échec de WdgIf_SetMode lors du changement de mode EXPIRED->STOPPED WdgMExpiredSupervisionCycleTol épuisé RESET Watchdog-Reset STOPPED->RESET Le pilote ne déclenche plus

Diagramme d'états : Global Supervision Status de DEACTIVATED à STOPPED ; deux transitions sont signalées comme interprétation. Sources : [SWS_WdgM_00387], [SWS_WdgM_00360]

Les changements de mode par WdgM_SetMode ne sont possibles qu'avec un statut global OK ou FAILED [SWS_WdgM_00145]. Si WdgMOffModeEnabled est FALSE, le WdgM refuse un mode Off [SWS_WdgM_00031]. En cas d'échec de WdgIf_SetMode, le statut global passe à STOPPED (SWS WdgM p. 57). Après une réinitialisation, WdgM_GetFirstExpiredSEID fournit dès avant WdgM_Init l'entité qui a expiré en premier [SWS_WdgM_00346] [SWS_WdgM_00348].

Rôle : surveillance logicielle entre les Supervised Entities et le watchdog matériel

Le Watchdog Manager (WdgM) surveille l'exécution des Supervised Entities, c'est-à-dire des SW-C, CDD ou processus BSW. Selon le résultat, il décide si les watchdogs matériels continuent d'être déclenchés. La temporisation réelle du déclenchement incombe au pilote de watchdog. Le WdgM applique uniquement, via la Watchdog Interface, une condition de déclenchement qui ordonne au pilote de poursuivre le déclenchement (SWS WdgM p. 56). Il requiert impérativement pour cela WdgIf_SetMode, WdgIf_SetTriggerCondition, GetElapsedValue et Det_ReportRuntimeError [SWS_WdgM_00161]. Il utilise de manière optionnelle Dem_SetEventStatus, Det_ReportError, Mcu_PerformReset et BswM_WdgM_RequestPartitionReset [SWS_WdgM_00162].

Les Supervised Entities signalent des points de contrôle via WdgM_CheckpointReached [SWS_WdgM_00263]. Les modules de gestion de mode contrôlent le cycle de vie avec WdgM_Init, WdgM_SetMode et WdgM_DeInit [SWS_WdgM_00151] [SWS_WdgM_00154] [SWS_WdgM_00261]. L'évaluation cyclique est assurée par WdgM_MainFunction à partir de SchM_WdgM.h [SWS_WdgM_00159]. Le concept de sécurité attribue au WdgM la surveillance logique du flux de programme par le biais de points de contrôle et de transitions autorisées (SafetyConceptStatusReport p. 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

Diagramme de contexte : le WdgM relie les notifications de points de contrôle de l'application à la pile de watchdog ainsi qu'à Os, DET, DEM, Mcu et BswM. Sources : [SWS_WdgM_00161], [SWS_WdgM_00162], SWS WdgM p. 85

Cycle de vie : initialisation, changements de mode et désinitialisation

Le Global Supervision Status est préaffecté statiquement avec WDGM_GLOBAL_STATUS_DEACTIVATED [SWS_WdgM_00387]. Dans cet état, les services rejettent les requêtes avec WDGM_E_UNINIT ou retournent sans effet [SWS_WdgM_00253] [SWS_WdgM_00395]. WdgM_Init reçoit un pointeur vers WdgM_ConfigType [SWS_WdgM_00355]. La fonction initialise toutes les variables du module et établit le mode initial (SWS WdgM p. 74). Interprétation : ensuite, le statut global devrait être WDGM_GLOBAL_STATUS_OK, car les entités actives dans le mode initial démarrent localement avec OK (SWS WdgM p. 30). Question Q-a1728b38f957607d (ouverte)

Un nouvel appel de WdgM_Init en dehors de DEACTIVATED reste sans effet [SWS_WdgM_00390]. Une réinitialisation s'effectue donc via WdgM_DeInit suivi de WdgM_Init (SWS WdgM p. 74). La surveillance et le Watchdog Handling ne commencent qu'avec le premier appel de WdgM_MainFunction après l'initialisation [SWS_WdgM_00406].

WdgM_SetMode bascule vers un autre mode configuré [SWS_WdgM_00154], mais uniquement avec un statut global OK ou FAILED [SWS_WdgM_00145]. Pour les entités désactivées dans le nouveau mode :

Les entités restant actives conservent leur état [SWS_WdgM_00182]. Pour chaque watchdog, le WdgM définit les paramètres de mode via WdgIf_SetMode [SWS_WdgM_00186]. Tant qu'un changement est en cours, WdgM_GetMode fournit encore l'ancien mode (SWS WdgM p. 77).

WdgM_SetMode_Ablauf start WdgM_SetMode(Mode) d1 Statut global OK ou FAILED ? start->d1 e1 Retour sans action d1->e1 Non d2 Le nouveau mode utilise-t-il WDGIF_OFF_MODE et WdgMOffModeEnabled = FALSE ? d1->d2 Oui e2 kein Moduswechsel, WDGM_E_DISABLE_NOT_ALLOWED, E_NOT_OK d2->e2 Oui wechsel Changement de mode : SE désactivées dans le nouveau mode → WDGM_LOCAL_STATUS_DEACTIVATED, résultats corrects, compteur d'erreurs à 0 ; les SE actives conservent leur état ; WdgIf_SetMode pour chaque watchdog (WdgMWatchdogMode) d2->wechsel Non d3 WdgIf_SetMode erfolgreich? wechsel->d3 ok E_OK d3->ok Oui nok WDGM_E_SET_MODE, Global Status STOPPED, E_NOT_OK d3->nok Non

Diagramme d'activité : un changement de mode passe par la vérification de statut, la protection contre le mode Off et la définition des modes de watchdog ; si cette dernière échoue, il se termine dans STOPPED. Sources : [SWS_WdgM_00145], [SWS_WdgM_00031], [SWS_WdgM_00186], [SWS_WdgM_00139] ; l'ordre de vérification est une interprétation

Lors de la transition vers SLEEP, l'EcuM appelle WdgM_DeInit. La fonction bascule d'abord vers un mode de veille défini par l'intégrateur. Ainsi, malgré les watchdogs fenêtrés, la condition de déclenchement autorise le reste de l'arrêt sans reset. Ensuite, le module se désinitialise (SWS WdgM p. 59). La surveillance et le Watchdog Handling s'arrêtent alors [SWS_WdgM_00407]. Pendant SLEEP, le BswM ou l'EcuM doivent prendre en charge le déclenchement.

WdgM-Lebenszyklus: Start, Moduswechsel, DeinitialisierungEcuM / BswMSchM / Os-TaskWdgMWdgIfDemUse Case: commencerWdgM_Init(ConfigPtr)Modulvariablen initialisieren,Initial-Modus herstellenWdgIf_SetMode(DeviceIndex, WdgMode)erster Aufruf WdgM_MainFunction()Surveillance etWatchdog Handling startenoptWdgMDemStoppedSupervisionReport = TRUEDem_SetEventStatus(WDGM_E_SUPERVISION, PASSED)Use Case: BetriebWdgM_SetMode(Mode)WdgIf_SetMode(...) je WatchdogE_OK / E_NOT_OKUse Case: Transition vers SLEEPWdgM_DeInit()WdgIf_SetMode(...) pour le mode veilleSurveillance etWatchdog Handling stoppenPendant SLEEP, les modules BSW encoreModules BSW (BswM/EcuM) les watchdogs

Diagramme de séquence : du démarrage à la désinitialisation avant SLEEP, en passant par le changement de mode. Sources : SWS WdgM p. 102, [SWS_WdgM_00406], [SWS_WdgM_00408], [SWS_WdgM_00407]

Points de contrôle et les trois fonctions de surveillance

Une Supervised Entity signale un Checkpoint avec WdgM_CheckpointReached(SEID, CheckpointID) [SWS_WdgM_00263]. Les deux identifiants sont de type uint16. Un Checkpoint n'est unique que grâce à la paire constituée de la SE-ID et de la Checkpoint-ID [SWS_WdgM_00356] [SWS_WdgM_00357]. L'appel accomplit trois tâches (SWS WdgM p. 79) :

  • Il incrémente l'Alive Counter du Checkpoint.
  • Il vérifie la Deadline Supervision quant à une arrivée trop précoce ou trop tardive.
  • Il exécute la Logical Supervision.

Si l'entité est désactivée dans le mode actuel, le service renvoie E_NOT_OK et signale WDGM_E_SEDEACTIVATED [SWS_WdgM_00319].

L'Alive Supervision vérifie les séquences cycliques. La fonction principale évalue les Alive Counters au rythme de WdgMSupervisionReferenceCycle, un multiple du Supervision Cycle (SWS WdgM p. 42). La Deadline Supervision vérifie si les limites WdgMDeadlineMin/WdgMDeadlineMax sont respectées entre le Checkpoint de début et de fin. Les horodatages sont fournis par GetElapsedValue avec l'OS-Counter de l'entité ; la mise à l'échelle s'effectue via OsSecondsPerTick [SWS_WdgM_00373] [SWS_WdgM_00374]. Si l'horodatage initial est 0, la vérification se termine avec succès sans mesure [SWS_WdgM_00354]. Si le Checkpoint de fin est manquant, WdgM_MainFunction détecte un timeout, pour autant que WdgMEnableTimeoutDetection soit défini [SWS_WdgM_00403] [SWS_WdgM_00404].

La Logical Supervision vérifie l'ordre des Checkpoints. Il existe pour chaque graphe un Activity Flag que WdgM_Init met à false. Un graphe commence à un Initial Checkpoint (SWS WdgM p. 51). Les graphes internes appartiennent à une entité et s'appliquent dans tous les modes. Les graphes externes relient plusieurs entités et sont configurés par mode (SWS WdgM p. 46, [SWS_WdgM_00366]).

Acquisition des checkpoints et évaluation cycliqueSupervised EntityWdgMOsSchM / Os-TaskRTE (Mode-Ports)WdgIfUse Case: SE-Kontext (ereignisgesteuert)WdgM_CheckpointReached(SEID, CheckpointID)Incrémenter le compteurAlive du checkpointGetElapsedValue(CounterID, ...)Deadline Supervision:Trop tôt / trop tard ?Logical Supervision:Transition autorisée ?E_OK / E_NOT_OKUse Case: OS-Scheduler-Kontext (zyklisch)WdgM_MainFunction()loopPour chaque Supervised EntityAlive Supervision(je Supervision Reference Cycle)Deadline-Timeout-Erkennung(falls aktiviert)Local Supervision Status bestimmenGlobal Supervision Status bestimmenChangement d'état viamode_{…} / globalmodeWdgIf_SetTriggerCondition(...)

Diagramme de séquence : les Checkpoints sont acquis de manière événementielle, l'évaluation et le déclenchement s'effectuent de façon cyclique dans la fonction principale. Sources : SWS WdgM p. 32, [SWS_WdgM_00263], [SWS_WdgM_00404], [SWS_WdgM_00197]

Statut de surveillance local et global

À partir des trois résultats, le WdgM détermine le Local Supervision Status pour chaque entité (SWS WdgM p. 30). WDGM_LOCAL_STATUS_FAILED est réversible : si l'entité adopte à nouveau un comportement normal, elle revient à OK. Si les échecs dépassent une limite, elle bascule vers WDGM_LOCAL_STATUS_EXPIRED [SWS_WdgM_00359]. Cette tolérance ne s'applique qu'à l'Alive Supervision. En cas d'erreurs de Deadline ou Logical, le premier résultat incorrect conduit dès lors à EXPIRED (SWS WdgM p. 30).

Local_Supervision_Status init WdgM_Init OK WDGM_LOCAL_STATUS_OK init->OK SE active dans le mode initial DEACT WDGM_LOCAL_STATUS_DEACTIVATED init->DEACT SE inactive dans le mode initial FAILED WDGM_LOCAL_STATUS_FAILED OK->FAILED Alive-Ergebnis fehlerhaft, Toleranz > 0 EXPIRED WDGM_LOCAL_STATUS_EXPIRED OK->EXPIRED Erreur de Deadline/Logical ou erreur Alive sans tolérance OK->DEACT WdgM_SetMode : SE désactivée dans le nouveau mode FAILED->OK Tous les résultats sont à nouveau corrects FAILED->EXPIRED Échecs supérieurs à la tolérance FAILED->DEACT WdgM_SetMode : SE désactivée dans le nouveau mode

Diagramme d'états : cycle de vie du Local Supervision Status d'une Supervised Entity. Sources : SWS WdgM p. 30, [SWS_WdgM_00359], [SWS_WdgM_00315]

Pour l'ensemble du logiciel, il existe un Global Supervision Status avec les valeurs DEACTIVATED, OK, FAILED, EXPIRED et STOPPED (SWS WdgM p. 36). EXPIRED signifie : la limite d'erreurs est dépassée, mais le pilote déclenche encore. Dans STOPPED, le pilote a pour consigne de ne plus déclencher, et un reset du watchdog s'ensuit [SWS_WdgM_00360]. WdgMExpiredSupervisionCycleTol définit la durée pendant laquelle le WdgM reste dans EXPIRED en multiples du Supervision Cycle (SWS WdgM p. 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 Surveillance échouée, dans la limite d'erreurs EXPIRED WDGM_GLOBAL_STATUS_EXPIRED OK->EXPIRED Limite d'erreurs dépassée STOPPED WDGM_GLOBAL_STATUS_STOPPED OK->STOPPED Échec de WdgIf_SetMode lors du changement de mode FAILED->OK Fehler behoben (Interpretation) FAILED->EXPIRED Limite d'erreurs dépassée FAILED->STOPPED Échec de WdgIf_SetMode lors du changement de mode EXPIRED->STOPPED WdgMExpiredSupervisionCycleTol épuisé RESET Watchdog-Reset STOPPED->RESET Le pilote ne déclenche plus

Diagramme d'états : escalade du Global Supervision Status jusqu'au reset ; les deux transitions signalées comme interprétation ne sont pas formellement documentées. Sources : [SWS_WdgM_00387], [SWS_WdgM_00360], SWS WdgM p. 36, SWS WdgM p. 57

Ports, messages d'état et services d'interrogation

Pour chaque Supervised Entity, le WdgM met à disposition un port de surveillance [SWS_WdgM_00146]. Il s'appelle localSupervision_{SupervisedEntityCheckpointName} et porte la SE-ID et la Checkpoint-ID comme arguments définis par le port [SWS_WdgM_00147] [SWS_WdgM_00333]. Le statut local est interrogé via localSupervisonStatus_{SupervisedEntityName} [SWS_WdgM_91003] [SWS_WdgM_91004]. Les requêtes globales telles que GetGlobalStatus ou GetFirstExpiredSEID passent par globalSupervision [SWS_WdgM_91002] [SWS_WdgM_91001].

Le WdgM notifie de lui-même les changements d'état via des Mode-Ports : mode_{SupervisedEntityName} pour chaque entité et une seule fois globalmode [SWS_WdgM_00149] [SWS_WdgM_00150]. Tous deux utilisent le Mode Declaration Group WdgM_Mode avec les valeurs SUPERVISION_OK à SUPERVISION_DEACTIVATED [SWS_WdgM_00334]. Les changements locaux sont notifiés immédiatement, les globaux une seule fois chacun [SWS_WdgM_00197] [SWS_WdgM_00199]. Le Mode-Port local et le Mode-Port global ont des interfaces distinctes. Ainsi, les ports locaux peuvent être adressés via l'Indirect Port API sans que le port global n'apparaisse dans cette liste (SWS WdgM p. 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

Diagramme de collaboration : les SW-C et les utilisateurs globaux sont reliés au WdgM via des Service-Ports et des Mode-Ports. Sources : SWS WdgM p. 99, [SWS_WdgM_00147], [SWS_WdgM_00149], [SWS_WdgM_00150], [SWS_WdgM_91002]

Les services d'interrogation et WdgM_CheckpointReached sont réentrants. WdgM_SetMode et WdgM_PerformReset ne le sont pas [SWS_WdgM_00175] [SWS_WdgM_00263] [SWS_WdgM_00154] [SWS_WdgM_00264]. Les modules BSW qui commandent ou interrogent le WdgM de manière globale le décrivent via GlobalSupervisionNeeds (TPS BSWMDT p. 257).

Configuration : modes, Supervised Entities et déclenchements de watchdog

Le WdgM prend en charge VARIANT-PRE-COMPILE et VARIANT-POST-BUILD (SWS WdgM p. 97). Les paramètres compatibles post-build se trouvent dans WdgM_ConfigType [SWS_WdgM_00355]. L'ECU Integrator effectue la configuration de manière descendante et évalue pour cela les ServiceNeeds issues de l'ECU Extract (TR Methodology p. 389). SupervisedEntityNeeds décrivent pour chaque entité, entre autres, l'activation au démarrage, la désactivation autorisée, les temps de cycle d'Alive et les cycles d'erreur tolérés (SWC-Template p. 716).

Un WdgMMode comprend les parties suivantes (SWS WdgM p. 119) :

  • WdgMModeId
  • WdgMExpiredSupervisionCycleTol
  • Conteneurs pour l'Alive Supervision, la Deadline Supervision et la Logical Supervision externe
  • Conteneurs pour les paramètres de statut locaux
  • WdgMTrigger

Un déclencheur définit WdgMWatchdogMode (FAST/SLOW/OFF) et WdgMTriggerConditionValue (SWS WdgM p. 125). WdgMGeneral contient des commutateurs tels que WdgMDevErrorDetect et WdgMImmediateReset (SWS WdgM p. 107). Pour la Deadline Supervision, chaque entité requiert un OS-Counter (SWS WdgM p. 46).

Comportement en cas d'erreur

Lorsque WdgMDevErrorDetect est actif, le WdgM signale les erreurs de développement au DET, telles que WDGM_E_UNINIT, WDGM_E_PARAM_SEID, WDGM_E_INV_POINTER ou WDGM_E_CPID [SWS_WdgM_00004]. Si le module n'est pas initialisé, un schéma fixe s'applique : avec vérification, WDGM_E_UNINIT est signalé ; sans vérification, le service retourne sans effet [SWS_WdgM_00279] [SWS_WdgM_00394]. Comme erreurs d'exécution, on trouve WDGM_E_DISABLE_NOT_ALLOWED, WDGM_E_SEDEACTIVATED et WDGM_E_SET_MODE [SWS_WdgM_00402].

Si WdgMOffModeEnabled est FALSE, WdgM_SetMode refuse un mode avec WDGIF_OFF_MODE. Le service signale alors WDGM_E_DISABLE_NOT_ALLOWED et renvoie E_NOT_OK [SWS_WdgM_00031]. WdgM_Init se comporte exactement de la même manière pour un tel mode initial [SWS_WdgM_00030]. Si WdgIf_SetMode échoue, le WdgM signale WDGM_E_SET_MODE et définit le statut global sur STOPPED [SWS_WdgM_00139]. Le reset suit immédiatement si un Immediate Reset est configuré, sinon à l'expiration du premier watchdog (SWS WdgM p. 57).

Si le statut global atteint STOPPED, le WdgM signale l'événement DEM WDGM_E_SUPERVISION comme erreur [SWS_WdgM_00375]. Après le démarrage, il signale optionnellement ce même événement comme PASSED [SWS_WdgM_00408]. Après un redémarrage, WdgM_GetFirstExpiredSEID fournit l'entité ayant atteint EXPIRED en premier [SWS_WdgM_00346]. Le service est déjà disponible avant WdgM_Init [SWS_WdgM_00348]. Il lit la valeur en double inversé depuis la RAM non initialisée et renvoie E_NOT_OK en cas d'incohérence [SWS_WdgM_00349]. WdgM_Init efface la valeur [SWS_WdgM_00370]. Vraisemblablement, le WdgM l'écrit lors de la première transition d'une entité vers EXPIRED. Question Q-bb8ada25b04b0758 (ouverte)

WdgM_PerformReset met la condition de déclenchement de tous les pilotes à 0 et ne la met plus à jour par la suite (SWS WdgM p. 82). L'EcuM exécute ce service comme l'une de ses cibles de reset (SWS EcuM p. 72).

Escalade jusqu'au reset et évaluation de la causeSchM / Os-TaskWdgMRAM non initialiséeDemWdgIf / WdgMcuEcuM / AufruferWdgM_MainFunction()SE erreichtWDGM_LOCAL_STATUS_EXPIREDSEID doppelt-invers ablegenInterprétation : stockage lors de lapremière transition vers EXPIREDGlobal Status EXPIREDloopjusqu'à épuisement de WdgMExpiredSupervisionCycleTolWdgM_MainFunction()Global Status STOPPEDDem_SetEventStatus(WDGM_E_SUPERVISION, FAILED)(falls konfiguriert)altImmediate Reset konfiguriertMcu_PerformReset()sinonplus de condition de déclenchement correctele premier watchdog expire→ Hardware-ResetUse Case: Après le redémarrageWdgM_GetFirstExpiredSEID(&SEID)Lire la valeur et son inverseE_OK + SEID / E_NOT_OK + 0WdgM_Init(ConfigPtr)Effacer la valeur enregistrée

Diagramme de séquence : escalade depuis la Supervised Entity expirée jusqu'au reset et évaluation de la cause après le redémarrage. Sources : [SWS_WdgM_00360], [SWS_WdgM_00375], [SWS_WdgM_00349], [SWS_WdgM_00370], SWS WdgM p. 57 ; le moment de stockage est une interprétation

Preuves détaillées supplémentaires

Guide généré par IA pour WdgM (Classic, R20-11) sur la base des extraits de spécification joints. Les exigences liées font foi. Certains passages de documents proviennent de releases ultérieures et n'ont été utilisés que là où ils ne contredisent pas les exigences R20-11. Les affirmations identifiées comme des interprétations ne sont pas formellement documentées.

Watchdog Manager (WdgM)

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

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

fonction WdgM_Init [SWS_WdgM_00151] 📄 PDF

void WdgM_Init (const WdgM_ConfigType* ConfigPtr);

Initializes the Watchdog Manager.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : c034e317eda3 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction WdgM_Init initialise le Watchdog Manager de manière synchrone et est non réentrante [SWS_WdgM_00151]. Le seul paramètre transmis est ConfigPtr, qui pointe vers les données de configuration post-build (WdgM_ConfigType) [SWS_WdgM_00151]. La fonction ne possède formellement aucune valeur de retour (void) [SWS_WdgM_00151].

Gestion des erreurs et conditions limites

Avant l'initialisation, le Watchdog Manager doit se trouver dans l'état WDGM_GLOBAL_STATUS_DEACTIVATED : si le paramètre de configuration de développement WdgMDevErrorDetect est désactivé et que le module n'est pas dans cet état, WdgM_Init retourne sans effet [SWS_WdgM_00390].

Si le commutateur de configuration WdgMOffModeEnabled n'est pas activé et que le mode initial spécifié via ConfigPtr désactiverait le watchdog (WDGIF_OFF_MODE), la fonction s'interrompt sans autre action et signale l'erreur d'exécution WDGM_E_DISABLE_NOT_ALLOWED au Default Error Tracer (DET) [SWS_WdgM_00030]. Le retour avec E_NOT_OK exigé dans la spécification devrait être interprété comme une interruption interne sur erreur, étant donné que la signature impose void [SWS_WdgM_00151]. Question Q-83a164f8f4669d4d (ouverte)

Interaction et ordre d'appel

  • Diagnostic d'erreurs avant l'initialisation : la fonction WdgM_GetFirstExpiredSEID() doit déjà être disponible avant l'appel de WdgM_Init afin de lire la Supervised Entity ID (SEID) ayant préalablement expiré [SWS_WdgM_00348].
  • Nettoyage de la RAM : pendant l'initialisation, WdgM_Init efface la valeur de SEID doublement inversée de la première entité ayant expiré, enregistrée dans la RAM non initialisée [SWS_WdgM_00370].
  • Notification d'état au DEM : lors du premier appel de WdgM_MainFunction suivant WdgM_Init, le module signale au DEM [SWS_WdgM_00408] l'état PASSED pour WDGM_E_SUPERVISION lorsque le paramètre WdgMDemStoppedSupervisionReport est activé.

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité I2)

fonction WdgM_DeInit [SWS_WdgM_00261] 📄 PDF

void WdgM_DeInit (void);

De - initializes the Watchdog Manager.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : f81345e92521 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction synchrone WdgM_DeInit sert à la désinitialisation du Watchdog Manager [SWS_WdgM_00261]. L'interface possède le service ID 0x01, est mise à disposition via le fichier d'en-tête WdgM.h, et ne reçoit aucun paramètre d'entrée ni ne renvoie de valeur de retour à l'appelant [SWS_WdgM_00261]. Le contexte d'appel prévu est probablement la séquence d'arrêt ordonnée du calculateur, dans laquelle les surveillances actives sont arrêtées de manière contrôlée avant la mise hors tension. Question Q-50d7e49c71d2dfd3 (ouverte)

Périmètre fonctionnel et interaction

Dans le cadre de la désinitialisation, le module WdgM arrête totalement les fonctions de surveillance (Supervision Functions) pour l'ensemble des algorithmes de surveillance configurés (Supervision Algorithms) et met fin en même temps à la gestion du watchdog (Watchdog Handling) [SWS_WdgM_00407].

Gestion des erreurs et conditions limites

Si le Watchdog Manager se trouve déjà dans l'état global WDGM_GLOBAL_STATUS_DEACTIVATED au moment de l'appel, le comportement dépend du paramètre de configuration WdgMDevErrorDetect : si cette détection de développement est désactivée, WdgM_DeInit retourne immédiatement et sans aucun effet [SWS_WdgM_00388].

En ce qui concerne la concurrence, il est établi que la fonction est non réentrante [SWS_WdgM_00261]. L'appel ne doit donc en aucun cas être effectué de manière interruptive ou parallèle à partir de plusieurs contextes.

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR R20-11.

fonction WdgM_SetMode [SWS_WdgM_00154] 📄 PDF

Std_ReturnType WdgM_SetMode (WdgM_ModeType Mode);

Sets the current mode of Watchdog Manager.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 3fd969cfebd9 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et sémantique

La fonction WdgM_SetMode sert à basculer de manière synchrone le Watchdog Manager dans l'un des modes de fonctionnement configurés ([SWS_WdgM_00154]). Elle attend comme paramètre de transmission Mode de type WdgM_ModeType. La valeur de retour Std_ReturnType signale par E_OK la réussite du changement de mode et par E_NOT_OK un échec ([SWS_WdgM_00154]).

Restrictions et traitement des erreurs

La fonction n'est pas réentrante (Non Reentrant) ([SWS_WdgM_00154]). L'exécution est liée à l'état global actuel du Watchdog Manager :

  • Si le module ne se trouve ni dans l'état WDGM_GLOBAL_STATUS_OK ni dans WDGM_GLOBAL_STATUS_FAILED, la fonction retourne sans exécuter aucune action ([SWS_WdgM_00145]).
  • Si le paramètre de configuration WdgMDevErrorDetect est désactivé, un appel dans l'état WDGM_GLOBAL_STATUS_DEACTIVATED reste sans aucun effet ([SWS_WdgM_00392]).

Interaction et répercussions

En présence d'un état global valide (WDGM_GLOBAL_STATUS_OK ou WDGM_GLOBAL_STATUS_FAILED), WdgM_SetMode met à jour les entités surveillées ainsi que les watchdogs :

  • Pour chaque Supervised Entity activée dans le mode cible, l'état actuel est conservé ([SWS_WdgM_00182]).
  • Pour chaque Supervised Entity désactivée dans le mode cible, l'état local passe à WDGM_LOCAL_STATUS_DEACTIVATED ; les résultats de Active, Deadline et Logical Supervision sont définis sur correct et le compteur de cycles erronés est réinitialisé à 0 ([SWS_WdgM_00315]). Le passage à un mode comportant la désactivation de l'entité assainit en outre les erreurs qui avaient auparavant conduit à WDGM_GLOBAL_STATUS_FAILED ([SWS_WdgM_00182]).
  • Enfin, les paramètres de mode de watchdog configurés sont activés pour chaque watchdog matériel via l'interface WdgIf_SetMode ([SWS_WdgM_00186]).

Cette note d'utilisation se base sur la spécification AUTOSAR R20-11 et a été organisée par une IA.

Guide de l'implémenteur à venir (complexité I2)

fonction 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.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 3c32ca59b4bb Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et sémantique

La fonction synchrone signale au Watchdog Manager l'atteinte d'un checkpoint au sein d'une Supervised Entity [SWS_WdgM_00263]. Elle prend en paramètres d'entrée l'identifiant de l'entité surveillée (SEID) ainsi que l'identifiant du checkpoint atteint (CheckpointID) et retourne E_OK en cas de mise à jour réussie du compteur d'activité (Alive) ou E_NOT_OK en cas d'erreurs [SWS_WdgM_00263].

Traitement des erreurs et état

Si le Watchdog Manager se trouve dans l'état WDGM_GLOBAL_STATUS_DEACTIVATED, le comportement dépend de la configuration de l'identifiant de développement : lorsque WdgMDevErrorDetect est activé, la fonction signale l'erreur WDGM_E_UNINIT au Default Error Tracer (DET) et retourne sans autre effet [SWS_WdgM_00279]. Si WdgMDevErrorDetect est désactivé, le retour s'effectue sans notification et sans aucun effet [SWS_WdgM_00394].

Concurrence et échéances

L'appel est spécifié comme réentrant [SWS_WdgM_00263]. Pour déterminer les horodatages et les différences temporelles lors de la surveillance des échéances (deadline), la fonction utilise la fonction d'OS GetElapsedValue avec la CounterID configurée pour l'entité [SWS_WdgM_00373]. La mise à l'échelle des différences temporelles par rapport aux valeurs limites s'effectue via le paramètre OsSecondsPerTick [SWS_WdgM_00374]. Si un Deadline End Checkpoint atteint l'appel en mode actif et que l'horodatage du checkpoint de début associé vaut 0, la fonction se termine avec succès sans mesure de différence [SWS_WdgM_00354].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification d'AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité I2)

fonction 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.

fonction WdgM_PerformReset [SWS_WdgM_00264] 📄 PDF

void WdgM_PerformReset (void);

Instructs the Watchdog Manager to cause a watchdog reset.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 9885fefa4e38 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et contexte d'appel

La fonction synchrone WdgM_PerformReset ordonne au Watchdog Manager de provoquer le déclenchement d'une réinitialisation par le watchdog [SWS_WdgM_00264]. L'interface est déclarée via l'en-tête WdgM.h et possède le service ID 0x0f [SWS_WdgM_00264]. Elle n'accepte aucun paramètre d'entrée ni de sortie et ne fournit aucune valeur de retour [SWS_WdgM_00264].

Concurrence et restrictions

Puisque WdgM_PerformReset est définie comme non réentrante (Non Reentrant), aucun appel multiple concurrent ou interruptif ne doit avoir lieu [SWS_WdgM_00264]. Les appelants doivent par conséquent s'assurer que les appels sont synchronisés ou effectués de façon exclusive à partir d'un contexte approprié.

Comportement dépendant de l'état et traitement des erreurs

L'exécution est soumise aux états globaux du Watchdog Manager : si le paramètre de configuration WdgMDevErrorDetect est désactivé et que le module se trouve dans l'état global WDGM_GLOBAL_STATUS_DEACTIVATED, la fonction retourne sans aucun effet [SWS_WdgM_00401]. Une réinitialisation n'a absolument pas lieu dans ce cas. Le comportement avec la détection de développement activée (WdgMDevErrorDetect) n'est pas spécifié dans le contenu ; Interpretation : dans ce cas, une erreur de développement correspondante devrait probablement être signalée à l'état désactivé. Question Q-8a726bba4154540f (ouverte)

Cette note d'utilisation a été générée de manière automatisée sur la base de la spécification AUTOSAR R20-11.

fonction 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.

fonction WdgM_MainFunction [SWS_WdgM_00159] 📄 PDF

void WdgM_MainFunction (void);

Performs the processing of the cyclic Watchdog Manager jobs.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 6960691f573c Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et déroulement cyclique

La fonction WdgM_MainFunction exécute les tâches périodiques du Watchdog Manager [SWS_WdgM_00159]. Elle possède la signature void WdgM_MainFunction(void), ne prend aucun paramètre, ne renvoie aucune valeur de retour et est mise à disposition via l'en-tête SchM_WdgM.h [SWS_WdgM_00159]. Lors du premier appel après l'initialisation du module, elle démarre à la fois l'ensemble des fonctions de surveillance (pour tous les algorithmes de surveillance, y compris les cycles de référence) et la gestion du watchdog [SWS_WdgM_00406].

Surveillance des échéances et détection de timeout

Dans les appels cycliques, WdgM_MainFunction effectue la surveillance des échéances (deadline) pour détecter les dépassements de délai pour toutes les unités ayant une surveillance active et actualise leur résultat [SWS_WdgM_00404] :

  • Si la détection est activée via WdgMEnableTimeoutDetection, la fonction contrôle toutes les surveillances de deadline configurées dans le mode actif pour lesquelles le checkpoint de départ a été signalé, mais dont le checkpoint de fin correspondant est encore en attente [SWS_WdgM_00403].
  • Si la différence temporelle mesurée par rapport à l'horodatage actuel dépasse le maximum WdgMDeadlineMax, la fonction définit le résultat de surveillance de la Supervised Entity comme étant en erreur (incorrect) [SWS_WdgM_00403].

Interaction avec le système d'exploitation

Pour déterminer les horodatages et les différences, WdgM_MainFunction appelle la fonction d'OS GetElapsedValue avec l'ID de compteur configuré pour l'unité (paramètre WdgMOSCounter) [SWS_WdgM_00373]. La mise à l'échelle des valeurs de différence par rapport aux valeurs limites WdgMDeadlineMin et WdgMDeadlineMax s'effectue à l'aide du paramètre OsSecondsPerTick [SWS_WdgM_00374].

Ce texte a été généré automatiquement à partir de la spécification AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité 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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : dbc1e33f878e Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type WdgM_Mode est défini comme une Mode Declaration Group de la catégorie EXPLICIT_ORDER et sert à représenter les états de surveillance du module [SWS_WdgM_00334].

Utilisation et plage de valeurs

Le mode initial défini est SUPERVISION_OK [SWS_WdgM_00334]. Des valeurs numériques explicites sont prédéfinies pour les différents modes [SWS_WdgM_00334] :

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

Pour la valeur de transition (on transition value) entre les modes, la valeur 255 est définie [SWS_WdgM_00334].

Interaction

En raison de son classement dans la catégorie EXPLICIT_ORDER et de l'affectation de valeurs ordinales fixes, le groupe devrait être prévu pour une représentation ordonnée des états au sein du Watchdog Manager [SWS_WdgM_00334]. Question Q-47c55c3bc2e2a23d (ouverte)

Ce texte a été rédigé par une IA sur la base de la spécification.

Guide de l'implémenteur à venir (complexité 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.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7f77d0becca2 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type WdgM_LocalStatusType est utilisé pour les variables qui représentent l'état de surveillance local actuel d'une entité surveillée individuelle (Supervised Entity) dans le Watchdog Manager [SWS_WdgM_00359]. Le type de données est dérivé du type de base uint8 et est mis à disposition via l'en-tête Rte_WdgM_Type.h [SWS_WdgM_00359].

La plage de valeurs comprend quatre états discrets selon [SWS_WdgM_00359] :

  • WDGM_LOCAL_STATUS_OK (valeur 0) : la surveillance de la Supervised Entity ne présente aucune erreur.
  • WDGM_LOCAL_STATUS_FAILED (valeur 1) : la surveillance a échoué, mais peut encore être guérie (« healed ») si l'entité revient à un comportement normal. Cela s'applique tant qu'une limite d'erreurs configurable n'est pas dépassée ; dans le cas contraire, l'état bascule vers WDGM_LOCAL_STATUS_EXPIRED.
  • WDGM_LOCAL_STATUS_EXPIRED (valeur 2) : la surveillance a échoué de manière permanente ; cet état ne peut plus être quitté.
  • WDGM_LOCAL_STATUS_DEACTIVATED (valeur 4) : la surveillance locale de la Supervised Entity est temporairement désactivée.

En raison de sa définition dans Rte_WdgM_Type.h, le type devrait être principalement destiné à l'échange d'états de surveillance entre composants logiciels et à travers la RTE [SWS_WdgM_00359]. Question Q-a9e584dc4c7cfa3b (ouverte)

Ce texte a été généré par une IA. Toutes les indications reposent exclusivement sur les données de spécification d'AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité 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.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : f7b49aed5af1 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type de données WdgM_GlobalStatusType sert à la définition de variables représentant l'état de surveillance global du module Watchdog Manager [SWS_WdgM_00360]. Il est dérivé du type de base uint8 et est mis à disposition via l'en-tête Rte_WdgM_Type.h [SWS_WdgM_00360].

La plage de valeurs comprend cinq états de surveillance définis [SWS_WdgM_00360] :

  • WDGM_GLOBAL_STATUS_OK (0) : la surveillance ne présente aucune erreur.
  • WDGM_GLOBAL_STATUS_FAILED (1) : la surveillance a échoué, mais se trouve encore dans la limite d'erreurs admissible.
  • WDGM_GLOBAL_STATUS_EXPIRED (2) : la surveillance a échoué et la limite d'erreurs admissible a été dépassée, mais le pilote du watchdog n'a pas encore reçu l'instruction d'arrêter le déclenchement.
  • WDGM_GLOBAL_STATUS_STOPPED (3) : la limite d'erreurs a été dépassée et le pilote du watchdog a reçu l'instruction d'arrêter le déclenchement, de sorte qu'un reset du watchdog est imminent.
  • WDGM_GLOBAL_STATUS_DEACTIVATED (4) : le module WdgM n'est pas initialisé et ne pilote donc pas les watchdogs.

À travers ces états, le type modélise l'ensemble du cycle de surveillance, depuis la désactivation avant l'initialisation jusqu'à l'escalade à plusieurs niveaux avec reset final du watchdog en cas d'erreurs persistantes, en passant par le fonctionnement normal ou tolérant aux pannes [SWS_WdgM_00360].

Cette note d'utilisation a été générée par une IA sur la base de la spécification AUTOSAR.

Guide de l'implémenteur à venir (complexité I1)

type WdgM_ModeType [SWS_WdgM_00358] 📄 PDF

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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 991ebd8bd655 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le type de données WdgM_ModeType sert à distinguer sans ambiguïté les différents modes configurés pour le Watchdog Manager [SWS_WdgM_00358]. Il est mis à disposition des composants logiciels et des modules du logiciel de base via le fichier d'en-tête Rte_WdgM_Type.h [SWS_WdgM_00358].

Conformément à la spécification [SWS_WdgM_00358], le type présente les propriétés suivantes :

  • Type de base : WdgM_ModeType est dérivé du type de données standard uint8 [SWS_WdgM_00358].
  • Plage de valeurs : la plage de valeurs s'étend de 0 à <Number of Modes> [SWS_WdgM_00358].
  • Dépendance vis-à-vis de la configuration : la limite supérieure réelle de la plage de valeurs dépend du nombre de modes configurés pour le Watchdog Manager [SWS_WdgM_00358].

Comme il s'agit d'une définition de type, aucun paramètre d'exécution, code d'erreur ou sémantique d'asynchronisme n'existe. Interprétation : en raison de la déclaration dans Rte_WdgM_Type.h, WdgM_ModeType devrait principalement être utilisé pour l'échange d'informations de mode via des interfaces RTE entre le logiciel d'application et le Watchdog Manager. Question Q-27975280bc68720e (ouverte)

Cette note d'utilisation est basée sur la spécification AUTOSAR CP R20-11.

Guide de l'implémenteur à venir (complexité I1)

type globalmode [SWS_WdgM_00150] 📄 PDF

-

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 747dfe1f1d56 Provenance Questions ouvertes (3)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

L'élément globalmode est défini, conformément à la spécification [SWS_WdgM_00150], en tant que port fourni (Provided Port Interface) du Watchdog Manager (WdgM) dans la plateforme AUTOSAR Classic de la version R20-11. Le type d'interface indiqué est WdgM_GlobalMode. L'élément sert dans le système global d'interface de port formelle par le biais de laquelle le module expose son état aux autres composants logiciels.

La spécification [SWS_WdgM_00150] ne fournit pas de détails supplémentaires concernant l'utilisation concrète, les paramètres, les valeurs de retour ou les structures de données. Selon l'interprétation, l'interface de port devrait principalement servir à fournir l'état global actuel de surveillance du Watchdog Manager à des instances de niveau supérieur telles que le BswM ou des SW-C applicatifs. Question Q-6a0217eb1d28c1b4 (ouverte) En l'absence d'indications divergentes dans les sources, la mise à disposition du mode s'effectue vraisemblablement de façon synchrone via la RTE.

En matière de traitement des erreurs, de notifications DET ou DEM ainsi que de codes d'erreur spécifiques, [SWS_WdgM_00150] reste entièrement silencieux. De même, aucune disposition normative relative à la réentrance, aux priorités ou aux contextes d'appel n'est consignée dans la charge utile ; selon l'interprétation, l'accès devrait néanmoins être soumis aux règles générales de concurrence de la gestion d'états de WdgM. Question Q-28fa9de4b06e3b0d (ouverte) Aucune exigence associée n'est disponible pour cet élément.

Cette note d'utilisation a été générée par une IA sur la base de la spécification AUTOSAR R20-11.

Guide de l'implémenteur à venir (complexité 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#ea32f751
Content hash
ea32f751
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_WatchdogManager.pdf#nameddest=SWS_WdgM_00151

Initialisation et état

WdgM_DeInit fonction

De - initializes the Watchdog Manager.

void WdgM_DeInit (void);

Returns the version information of this module.

void WdgM_GetVersionInfo (Std_VersionInfoType* VersionInfo);
WdgM_Init fonction

Initializes the Watchdog Manager.

void WdgM_Init (const WdgM_ConfigType* ConfigPtr);

Services

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 fonction

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 fonction

Sets the current mode of Watchdog Manager.

Std_ReturnType WdgM_SetMode (WdgM_ModeType Mode);

Cyclique

Performs the processing of the cyclic Watchdog Manager jobs.

void WdgM_MainFunction (void);

Types

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.