DEENESPTFRRUARHIKOZHNL

Watchdog Manager (WdgM)

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

Guia do móduloGERADO POR IA

Monitora a execução e o timing do software por meio de checkpoints e controla, de forma dependente disso, o disparo dos watchdogs.
GERADO POR IA não revisado Modelo: claude-opus-5-5 · Esforço: high · Temperatura: não controlável · Prompt: 112cef190a48 Procedência Perguntas em aberto (4)
Âncora causal: R20-11 Válido a partir de R20-11 Sintetizado para esta versão de especificação.
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Monitora a execução e o timing do software por meio de checkpoints e controla, de forma dependente disso, o disparo dos watchdogs.

O Watchdog Manager monitora a execução do software. Supervised Entities reportam checkpoints via WdgM_CheckpointReached [SWS_WdgM_00263]. A função cíclica WdgM_MainFunction avalia Alive, Deadline e Logical Supervision, consolidando os resultados em status locais e um status global. Enquanto tudo estiver em ordem, o WdgM define uma condição de disparo válida por meio da Watchdog Interface. Se o status global atingir STOPPED, o driver não dispara mais e ocorre um reset pelo watchdog [SWS_WdgM_00360]. Transições de modo só são permitidas com status global OK ou FAILED.

O Watchdog Manager monitora a execução de Supervised Entities e só permite a continuidade dos disparos dos hardware watchdogs enquanto a supervisão estiver em ordem. O timing de disparo propriamente dito fica a cargo do watchdog driver. O WdgM apenas define uma condição de disparo (SWS WdgM p. 56) por meio da Watchdog Interface. Para isso, necessita obrigatoriamente de WdgIf_SetMode, WdgIf_SetTriggerCondition, GetElapsedValue e Det_ReportRuntimeError [SWS_WdgM_00161].

Após WdgM_Init, o monitoramento começa com a primeira chamada de WdgM_MainFunction [SWS_WdgM_00406]. Entities reportam checkpoints via WdgM_CheckpointReached [SWS_WdgM_00263]. Cada chamada incrementa o Alive Counter e verifica imediatamente Deadline e Logical Supervision (SWS WdgM p. 79). A função principal avalia ciclicamente os Alive Counters e os timeouts de deadline [SWS_WdgM_00404].

Registo de checkpoints e avaliação cíclicaSupervised EntityWdgMOsSchM / Os-TaskRTE (Mode-Ports)WdgIfUse Case: SE-Kontext (ereignisgesteuert)WdgM_CheckpointReached(SEID, CheckpointID)Incrementar Alive Counterdo CheckpointGetElapsedValue(CounterID, ...)Deadline Supervision:muito cedo / muito tarde?Logical Supervision:transição permitida?E_OK / E_NOT_OKUse Case: OS-Scheduler-Kontext (zyklisch)WdgM_MainFunction()looppara cada Supervised EntityAlive Supervision(je Supervision Reference Cycle)Deadline-Timeout-Erkennung(falls aktiviert)Local Supervision Status bestimmenGlobal Supervision Status bestimmenmudança de status viamode_{…} / globalmodeWdgIf_SetTriggerCondition(...)

Diagrama de sequência: checkpoints são registrados orientados a eventos, enquanto a avaliação e o disparo ocorrem ciclicamente. Fontes: SWS WdgM p. 32, [SWS_WdgM_00263].

A partir dos resultados, surge um estado local para cada Entity. FAILED é recuperável neste contexto, EXPIRED não [SWS_WdgM_00359]. A partir disso, o WdgM forma um estado global, que escala através de EXPIRED para STOPPED. Em STOPPED, o driver deixa de realizar o trigger e segue-se um reset de watchdog [SWS_WdgM_00360]. O WdgM reporta alterações de estado através de Mode Ports locais e de uma Mode Port 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 Supervisão falhou, dentro do limite de erros EXPIRED WDGM_GLOBAL_STATUS_EXPIRED OK->EXPIRED Limite de erros excedido STOPPED WDGM_GLOBAL_STATUS_STOPPED OK->STOPPED WdgIf_SetMode na mudança de modo falhou FAILED->OK Fehler behoben (Interpretation) FAILED->EXPIRED Limite de erros excedido FAILED->STOPPED WdgIf_SetMode na mudança de modo falhou EXPIRED->STOPPED WdgMExpiredSupervisionCycleTol esgotado RESET Watchdog-Reset STOPPED->RESET O driver não dispara mais

Diagrama de estados: Global Supervision Status de DEACTIVATED a STOPPED; duas transições estão assinaladas como interpretação. Fontes: [SWS_WdgM_00387], [SWS_WdgM_00360]

Trocas de modo através de WdgM_SetMode apenas são possíveis com o estado global OK ou FAILED [SWS_WdgM_00145]. Se WdgMOffModeEnabled for FALSE, o WdgM rejeita um modo Off [SWS_WdgM_00031]. Se WdgIf_SetMode falhar, o estado global passa para STOPPED (SWS WdgM p. 57). Após um reset, WdgM_GetFirstExpiredSEID fornece, logo antes de WdgM_Init, a Entity que expirou primeiro [SWS_WdgM_00346] [SWS_WdgM_00348].

Papel: supervisão de software entre Supervised Entities e o watchdog de hardware

O Watchdog Manager (WdgM) monitoriza a execução de Supervised Entities, ou seja, de SW-Cs, CDDs ou fluxos de BSW. Consoante o resultado, decide se os watchdogs de hardware continuam a sofrer trigger. O temporizador de trigger propriamente dito reside no driver de watchdog. O WdgM apenas define, através da Watchdog Interface, uma condição de trigger que instrui o driver a continuar o trigger (SWS WdgM p. 56). Como requisitos obrigatórios para isso, necessita de WdgIf_SetMode, WdgIf_SetTriggerCondition, GetElapsedValue e Det_ReportRuntimeError [SWS_WdgM_00161]. Opcionalmente, utiliza Dem_SetEventStatus, Det_ReportError, Mcu_PerformReset e BswM_WdgM_RequestPartitionReset [SWS_WdgM_00162].

As Supervised Entities reportam checkpoints através de WdgM_CheckpointReached [SWS_WdgM_00263]. Módulos de gestão de modo controlam o ciclo de vida com WdgM_Init, WdgM_SetMode e WdgM_DeInit [SWS_WdgM_00151] [SWS_WdgM_00154] [SWS_WdgM_00261]. A avaliação cíclica é assegurada por WdgM_MainFunction a partir de SchM_WdgM.h [SWS_WdgM_00159]. O conceito de segurança atribui ao WdgM a supervisão lógica do fluxo de programa através de checkpoints e transições permitidas (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

Diagrama de contexto: o WdgM liga as notificações de checkpoint da aplicação à stack de watchdog, bem como a Os, DET, DEM, Mcu e BswM. Fontes: [SWS_WdgM_00161], [SWS_WdgM_00162], SWS WdgM p. 85

Ciclo de vida: inicialização, troca de modo e desinicialização

O Global Supervision Status está estaticamente pré-definido com WDGM_GLOBAL_STATUS_DEACTIVATED [SWS_WdgM_00387]. Neste estado, os serviços rejeitam pedidos com WDGM_E_UNINIT ou retornam sem efeito [SWS_WdgM_00253] [SWS_WdgM_00395]. WdgM_Init recebe um ponteiro para WdgM_ConfigType [SWS_WdgM_00355]. A função inicializa todas as variáveis do módulo e estabelece o modo inicial (SWS WdgM p. 74). Interpretação: após isso, o estado global deverá ser WDGM_GLOBAL_STATUS_OK, uma vez que as Entities ativas no modo inicial começam localmente com OK (SWS WdgM p. 30). Pergunta Q-a1728b38f957607d (aberta)

Uma nova chamada de WdgM_Init fora de DEACTIVATED permanece sem efeito [SWS_WdgM_00390]. Uma reinicialização é, por isso, efetuada através de WdgM_DeInit e subsequente WdgM_Init (SWS WdgM p. 74). A supervisão e o Watchdog Handling iniciam-se apenas com a primeira chamada de WdgM_MainFunction após a inicialização [SWS_WdgM_00406].

WdgM_SetMode muda para outro modo configurado [SWS_WdgM_00154], embora apenas com o estado global OK ou FAILED [SWS_WdgM_00145]. Para Entities que estejam desativadas no novo modo, aplica-se:

Entities que permaneçam ativas mantêm o seu estado [SWS_WdgM_00182]. Para cada watchdog, o WdgM define os parâmetros de modo através de WdgIf_SetMode [SWS_WdgM_00186]. Enquanto uma transição estiver em curso, WdgM_GetMode ainda retorna o modo anterior (SWS WdgM p. 77).

WdgM_SetMode_Ablauf start WdgM_SetMode(Mode) d1 Global Status OK ou FAILED? start->d1 e1 Retorno sem ação d1->e1 não d2 Novo modo utiliza WDGIF_OFF_MODE e WdgMOffModeEnabled = FALSE? d1->d2 sim e2 kein Moduswechsel, WDGM_E_DISABLE_NOT_ALLOWED, E_NOT_OK d2->e2 sim wechsel Troca de modo: SE desativada no novo modo → WDGM_LOCAL_STATUS_DEACTIVATED, resultados corretos, contador de erros 0; SE ativas mantêm o estado; WdgIf_SetMode por watchdog (WdgMWatchdogMode) d2->wechsel não d3 WdgIf_SetMode erfolgreich? wechsel->d3 ok E_OK d3->ok sim nok WDGM_E_SET_MODE, Global Status STOPPED, E_NOT_OK d3->nok não

Diagrama de atividades: uma troca de modo passa pela verificação de estado, proteção de modo Off e definição dos modos de watchdog; se esta última falhar, termina em STOPPED. Fontes: [SWS_WdgM_00145], [SWS_WdgM_00031], [SWS_WdgM_00186], [SWS_WdgM_00139]; a ordem de verificação constitui uma interpretação

Na transição para SLEEP, o EcuM invoca WdgM_DeInit. A função comuta primeiramente para um modo de sleep definido pelo integrador. Desta forma, a condição de trigger permite a conclusão do shutdown sem reset, apesar dos watchdogs baseados em janelas. Em seguida, o módulo desinicializa-se (SWS WdgM p. 59). A supervisão e o Watchdog Handling são interrompidos durante o processo [SWS_WdgM_00407]. Durante SLEEP, o BswM ou o EcuM têm de assumir a execução do trigger.

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

Diagrama de sequência: desde o arranque, passando pela troca de modo, até à desinicialização antes de SLEEP. Fontes: SWS WdgM p. 102, [SWS_WdgM_00406], [SWS_WdgM_00408], [SWS_WdgM_00407]

Checkpoints e as três funções de monitoramento

Uma Supervised Entity reporta um checkpoint com WdgM_CheckpointReached(SEID, CheckpointID) [SWS_WdgM_00263]. Ambos os identificadores são do tipo uint16. Um checkpoint apenas é unívoco através do par constituído por SE-ID e Checkpoint-ID [SWS_WdgM_00356] [SWS_WdgM_00357]. A chamada desempenha três funções (SWS WdgM p. 79):

  • Incrementa o Alive Counter do checkpoint.
  • Verifica na Deadline Supervision a ocorrência de chegadas demasiado antecipadas ou tardias.
  • Executa a Logical Supervision.

Se a Entity estiver desativada no modo atual, o serviço retorna E_NOT_OK e reporta WDGM_E_SEDEACTIVATED [SWS_WdgM_00319].

A Alive Supervision verifica fluxos cíclicos. A função principal avalia os Alive Counters ao ritmo do WdgMSupervisionReferenceCycle, um múltiplo do Supervision Cycle (SWS WdgM p. 42). A Deadline Supervision verifica se os limites WdgMDeadlineMin/WdgMDeadlineMax são cumpridos entre o checkpoint de início e o de fim. Os carimbos temporais são fornecidos por GetElapsedValue com o OS-Counter da Entity; o escalonamento é feito através de OsSecondsPerTick [SWS_WdgM_00373] [SWS_WdgM_00374]. Se o carimbo temporal de início for 0, a verificação termina com sucesso sem medição [SWS_WdgM_00354]. Na ausência do checkpoint de fim, WdgM_MainFunction deteta um timeout, desde que WdgMEnableTimeoutDetection esteja definido [SWS_WdgM_00403] [SWS_WdgM_00404].

A Logical Supervision verifica a ordem dos checkpoints. Para cada grafo existe uma Activity Flag, que WdgM_Init define como false. Um grafo tem início num Initial Checkpoint (SWS WdgM p. 51). Grafos internos pertencem a uma Entity e aplicam-se em todos os modos. Grafos externos interligam várias Entities e são configurados por modo (SWS WdgM p. 46, [SWS_WdgM_00366]).

Registo de checkpoints e avaliação cíclicaSupervised EntityWdgMOsSchM / Os-TaskRTE (Mode-Ports)WdgIfUse Case: SE-Kontext (ereignisgesteuert)WdgM_CheckpointReached(SEID, CheckpointID)Incrementar Alive Counterdo CheckpointGetElapsedValue(CounterID, ...)Deadline Supervision:muito cedo / muito tarde?Logical Supervision:transição permitida?E_OK / E_NOT_OKUse Case: OS-Scheduler-Kontext (zyklisch)WdgM_MainFunction()looppara cada Supervised EntityAlive Supervision(je Supervision Reference Cycle)Deadline-Timeout-Erkennung(falls aktiviert)Local Supervision Status bestimmenGlobal Supervision Status bestimmenmudança de status viamode_{…} / globalmodeWdgIf_SetTriggerCondition(...)

Diagrama de sequência: os checkpoints são registados com base em eventos; a avaliação e o trigger ocorrem ciclicamente na função principal. Fontes: SWS WdgM p. 32, [SWS_WdgM_00263], [SWS_WdgM_00404], [SWS_WdgM_00197]

Estado de supervisão local e global

A partir dos três resultados, o WdgM forma o Local Supervision Status para cada Entity (SWS WdgM p. 30). WDGM_LOCAL_STATUS_FAILED é recuperável: se a Entity voltar a comportar-se normalmente, regressa a OK. Se as falhas ultrapassarem um limite, comuta para WDGM_LOCAL_STATUS_EXPIRED [SWS_WdgM_00359]. Esta tolerância aplica-se apenas à Alive Supervision. Em falhas de Deadline e Logical, logo o primeiro resultado incorreto conduz a EXPIRED (SWS WdgM p. 30).

Local_Supervision_Status init WdgM_Init OK WDGM_LOCAL_STATUS_OK init->OK SE ativo no modo inicial DEACT WDGM_LOCAL_STATUS_DEACTIVATED init->DEACT SE não ativo no modo inicial FAILED WDGM_LOCAL_STATUS_FAILED OK->FAILED Alive-Ergebnis fehlerhaft, Toleranz > 0 EXPIRED WDGM_LOCAL_STATUS_EXPIRED OK->EXPIRED erro de Deadline/Logical ou erro de Alive sem tolerância OK->DEACT WdgM_SetMode: SE desativada no novo modo FAILED->OK todos os resultados novamente corretos FAILED->EXPIRED falhas acima da tolerância FAILED->DEACT WdgM_SetMode: SE desativada no novo modo

Diagrama de estados: ciclo de vida do Local Supervision Status de uma Supervised Entity. Fontes: SWS WdgM p. 30, [SWS_WdgM_00359], [SWS_WdgM_00315]

Para a totalidade do software existe um Global Supervision Status com os valores DEACTIVATED, OK, FAILED, EXPIRED e STOPPED (SWS WdgM p. 36). EXPIRED significa: o limite de erros foi ultrapassado, mas o driver ainda realiza o trigger. Em STOPPED, o driver está instruído a não efetuar mais triggers, seguindo-se um reset de watchdog [SWS_WdgM_00360]. O tempo que o WdgM permanece em EXPIRED é determinado por WdgMExpiredSupervisionCycleTol em múltiplos do 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 Supervisão falhou, dentro do limite de erros EXPIRED WDGM_GLOBAL_STATUS_EXPIRED OK->EXPIRED Limite de erros excedido STOPPED WDGM_GLOBAL_STATUS_STOPPED OK->STOPPED WdgIf_SetMode na mudança de modo falhou FAILED->OK Fehler behoben (Interpretation) FAILED->EXPIRED Limite de erros excedido FAILED->STOPPED WdgIf_SetMode na mudança de modo falhou EXPIRED->STOPPED WdgMExpiredSupervisionCycleTol esgotado RESET Watchdog-Reset STOPPED->RESET O driver não dispara mais

Diagrama de estados: escalonamento do Global Supervision Status até ao reset; as duas transições marcadas como interpretação não se encontram expressamente documentadas. Fontes: [SWS_WdgM_00387], [SWS_WdgM_00360], SWS WdgM p. 36, SWS WdgM p. 57

Portos, mensagens de estado e serviços de consulta

Para cada Supervised Entity, o WdgM disponibiliza uma Supervision Port [SWS_WdgM_00146]. Designa-se localSupervision_{SupervisedEntityCheckpointName} e transporta SE-ID e Checkpoint-ID como argumentos definidos pela porta [SWS_WdgM_00147] [SWS_WdgM_00333]. O estado local é consultado através de localSupervisonStatus_{SupervisedEntityName} [SWS_WdgM_91003] [SWS_WdgM_91004]. Consultas globais como GetGlobalStatus ou GetFirstExpiredSEID decorrem através de globalSupervision [SWS_WdgM_91002] [SWS_WdgM_91001].

O WdgM reporta por iniciativa própria as alterações de estado através de Mode Ports: para cada Entity mode_{SupervisedEntityName} e uma vez globalmode [SWS_WdgM_00149] [SWS_WdgM_00150]. Ambos utilizam o Mode Declaration Group WdgM_Mode com os valores SUPERVISION_OK a SUPERVISION_DEACTIVATED [SWS_WdgM_00334]. As alterações locais são reportadas de imediato, e as globais apenas uma vez em cada ocorrência [SWS_WdgM_00197] [SWS_WdgM_00199]. A Mode Port local e a global possuem interfaces distintas. Deste modo, as portas locais podem ser acedidas através da Indirect Port API, sem que a porta global surja nessa lista (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

Diagrama de colaboração: SW-Cs e utilizadores globais estão vinculados ao WdgM através de Service Ports e Mode Ports. Fontes: SWS WdgM p. 99, [SWS_WdgM_00147], [SWS_WdgM_00149], [SWS_WdgM_00150], [SWS_WdgM_91002]

Os serviços de consulta e WdgM_CheckpointReached são reentrantes. WdgM_SetMode e WdgM_PerformReset não o são [SWS_WdgM_00175] [SWS_WdgM_00263] [SWS_WdgM_00154] [SWS_WdgM_00264]. Módulos de BSW que controlem ou consultem o WdgM globalmente descrevem isso através de GlobalSupervisionNeeds (TPS BSWMDT p. 257).

Configuração: modos, Supervised Entities e triggers de watchdog

O WdgM suporta VARIANT-PRE-COMPILE e VARIANT-POST-BUILD (SWS WdgM p. 97). Parâmetros compatíveis com Post-build constam em WdgM_ConfigType [SWS_WdgM_00355]. O ECU Integrator configura de forma top-down, avaliando para esse efeito os ServiceNeeds do ECU Extract (TR Methodology p. 389). SupervisedEntityNeeds descrevem por Entity, entre outros aspetos, a ativação no arranque, a desativação permitida, os tempos de ciclo de Alive e os ciclos de falha tolerados (SWC-Template p. 716).

Um WdgMMode compreende as seguintes partes (SWS WdgM p. 119):

  • WdgMModeId
  • WdgMExpiredSupervisionCycleTol
  • Contentores para Alive Supervision, Deadline Supervision e Logical Supervision externa
  • Contentores para parâmetros de estado local
  • WdgMTrigger

Um trigger define WdgMWatchdogMode (FAST/SLOW/OFF) e WdgMTriggerConditionValue (SWS WdgM p. 125). WdgMGeneral contém parâmetros de comutação como WdgMDevErrorDetect e WdgMImmediateReset (SWS WdgM p. 107). Para a Deadline Supervision, cada Entity necessita de um OS-Counter (SWS WdgM p. 46).

Comportamento em caso de erro

Com WdgMDevErrorDetect ativo, o WdgM reporta erros de desenvolvimento ao DET, tais como WDGM_E_UNINIT, WDGM_E_PARAM_SEID, WDGM_E_INV_POINTER ou WDGM_E_CPID [SWS_WdgM_00004]. Com o módulo não inicializado, vigora um padrão fixo: com verificação é reportado WDGM_E_UNINIT, sem verificação o serviço retorna sem efeito [SWS_WdgM_00279] [SWS_WdgM_00394]. Como erros de runtime existem WDGM_E_DISABLE_NOT_ALLOWED, WDGM_E_SEDEACTIVATED e WDGM_E_SET_MODE [SWS_WdgM_00402].

Se WdgMOffModeEnabled for FALSE, WdgM_SetMode rejeita um modo com WDGIF_OFF_MODE. O serviço reporta então WDGM_E_DISABLE_NOT_ALLOWED e retorna E_NOT_OK [SWS_WdgM_00031]. WdgM_Init comporta-se da mesma forma perante um modo inicial desse tipo [SWS_WdgM_00030]. Se WdgIf_SetMode falhar, o WdgM reporta WDGM_E_SET_MODE e define o estado global como STOPPED [SWS_WdgM_00139]. O reset ocorre de imediato caso esteja configurado um Immediate Reset; caso contrário, aquando da expiração do primeiro watchdog (SWS WdgM p. 57).

Se o estado global atingir STOPPED, o WdgM reporta o evento de DEM WDGM_E_SUPERVISION como erro [SWS_WdgM_00375]. Após o arranque, reporta opcionalmente o mesmo evento como PASSED [SWS_WdgM_00408]. Após um reinício, WdgM_GetFirstExpiredSEID fornece a Entity que atingiu EXPIRED em primeiro lugar [SWS_WdgM_00346]. O serviço fica disponível logo antes de WdgM_Init [SWS_WdgM_00348]. Lê o valor em formato duplamente inverso a partir da RAM não inicializada e, em caso de inconsistência, retorna E_NOT_OK [SWS_WdgM_00349]. WdgM_Init apaga o valor [SWS_WdgM_00370]. Presumivelmente, o WdgM efetua a sua escrita aquando da primeira transição de uma Entity para EXPIRED. Pergunta Q-bb8ada25b04b0758 (aberta)

WdgM_PerformReset define a condição de trigger de todos os drivers para 0 e deixa de a atualizar a partir desse momento (SWS WdgM p. 82). O EcuM inclui este serviço como um dos seus alvos de reset (SWS EcuM p. 72).

Escalação até o reset e avaliação da causaSchM / Os-TaskWdgMRAM não inicializadaDemWdgIf / WdgMcuEcuM / AufruferWdgM_MainFunction()SE erreichtWDGM_LOCAL_STATUS_EXPIREDSEID doppelt-invers ablegenInterpretação: armazenamento naprimeira transição para EXPIREDGlobal Status EXPIREDloopaté WdgMExpiredSupervisionCycleTol se esgotarWdgM_MainFunction()Global Status STOPPEDDem_SetEventStatus(WDGM_E_SUPERVISION, FAILED)(falls konfiguriert)altImmediate Reset konfiguriertMcu_PerformReset()caso contrárionenhuma condição de disparo correta adicionalo primeiro watchdog expira→ Hardware-ResetUse Case: Após o reinícioWdgM_GetFirstExpiredSEID(&SEID)Ler valor e inversoE_OK + SEID / E_NOT_OK + 0WdgM_Init(ConfigPtr)apagar o valor armazenado

Diagrama de sequência: escalonamento desde a Supervised Entity expirada até ao reset e avaliação da causa após o reinício. Fontes: [SWS_WdgM_00360], [SWS_WdgM_00375], [SWS_WdgM_00349], [SWS_WdgM_00370], SWS WdgM p. 57; o momento de armazenamento constitui uma interpretação

Evidências mais detalhadas

Guia gerado por IA para o WdgM (Classic, R20-11) com base nos excertos anexos da especificação. Os requisitos hiperligados são normativos. Algumas passagens do documento provêm de releases posteriores e apenas foram utilizadas onde não contradizem os requisitos de R20-11. Declarações identificadas como interpretação não se encontram comprovadas.

Watchdog Manager (WdgM)

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

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

função WdgM_Init [SWS_WdgM_00151] 📄 PDF

void WdgM_Init (const WdgM_ConfigType* ConfigPtr);

Initializes the Watchdog Manager.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: c034e317eda3 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

A função WdgM_Init inicializa o Watchdog Manager de forma síncrona e não é reentrante [SWS_WdgM_00151]. O único parâmetro de entrada utilizado é ConfigPtr, que referencia os dados de configuração post-build (WdgM_ConfigType) [SWS_WdgM_00151]. A função formalmente não possui valor de retorno (void) [SWS_WdgM_00151].

Tratamento de erros e condições de contorno

Antes da inicialização, o Watchdog Manager deve encontrar-se no estado WDGM_GLOBAL_STATUS_DEACTIVATED: se o parâmetro de configuração de desenvolvimento WdgMDevErrorDetect estiver desativado e o módulo não estiver neste estado, WdgM_Init retorna sem qualquer efeito [SWS_WdgM_00390].

Caso o comutador de configuração WdgMOffModeEnabled não esteja ativado e o modo inicial predefinido via ConfigPtr desativasse o watchdog (WDGIF_OFF_MODE), a função aborta sem qualquer ação adicional e reporta o erro de tempo de execução WDGM_E_DISABLE_NOT_ALLOWED ao Default Error Tracer (DET) [SWS_WdgM_00030]. O retorno com E_NOT_OK exigido na especificação deverá ser entendido, em termos de interpretação, como uma interrupção interna por erro, uma vez que a assinatura prescreve void [SWS_WdgM_00151]. Pergunta Q-83a164f8f4669d4d (aberta)

Interação e ordem

  • Diagnóstico de erros antes da inicialização: a função WdgM_GetFirstExpiredSEID() deve estar disponível antes da chamada de WdgM_Init para ler o Supervised Entity ID (SEID) que expirou anteriormente [SWS_WdgM_00348].
  • Limpeza da RAM: durante a inicialização, WdgM_Init limpa o valor de SEID duplamente invertido da primeira entidade expirada, armazenado na RAM não inicializada [SWS_WdgM_00370].
  • Notificação de estado ao DEM: na primeira chamada de WdgM_MainFunction após WdgM_Init, o módulo reporta ao DEM [SWS_WdgM_00408] o estado PASSED para WDGM_E_SUPERVISION se o parâmetro WdgMDemStoppedSupervisionReport estiver definido.

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função WdgM_DeInit [SWS_WdgM_00261] 📄 PDF

void WdgM_DeInit (void);

De - initializes the Watchdog Manager.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: f81345e92521 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

A função síncrona WdgM_DeInit serve para a desinicialização do Watchdog Manager [SWS_WdgM_00261]. A interface possui o Service-ID 0x01, é disponibilizada através do arquivo de cabeçalho WdgM.h e não recebe parâmetros de entrada nem retorna um valor ao chamador [SWS_WdgM_00261]. Como contexto de chamada, presume-se que esteja prevista a sequência ordenada de shutdown da unidade de comando, na qual os monitoramentos ativos são encerrados de forma controlada antes do desligamento. Pergunta Q-50d7e49c71d2dfd3 (aberta)

Escopo funcional e interação

No âmbito da desinicialização, o módulo WdgM para completamente as funções de monitoramento (Supervision Functions) em todos os algoritmos de monitoramento (Supervision Algorithms) configurados e encerra, simultaneamente, a operação do watchdog (Watchdog Handling) [SWS_WdgM_00407].

Tratamento de erros e condições de contorno

Se o Watchdog Manager já se encontrar no estado global WDGM_GLOBAL_STATUS_DEACTIVATED no momento da chamada, o comportamento dependerá do parâmetro de configuração WdgMDevErrorDetect: se essa detecção de desenvolvimento estiver desativada, WdgM_DeInit retorna imediatamente e sem qualquer efeito [SWS_WdgM_00388].

Em relação à concorrência, está definido que a função é não reentrante [SWS_WdgM_00261]. A chamada não deve, portanto, ocorrer de forma interruptiva ou paralela a partir de múltiplos contextos sob hipótese alguma.

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

função WdgM_SetMode [SWS_WdgM_00154] 📄 PDF

Std_ReturnType WdgM_SetMode (WdgM_ModeType Mode);

Sets the current mode of Watchdog Manager.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 3fd969cfebd9 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função WdgM_SetMode serve para a comutação síncrona do Watchdog Manager para um dos modos de operação configurados ([SWS_WdgM_00154]). Como parâmetro de passagem, ela espera Mode do tipo WdgM_ModeType. O valor de retorno Std_ReturnType sinaliza com E_OK a realização bem-sucedida da mudança de modo e com E_NOT_OK uma falha ([SWS_WdgM_00154]).

Restrições e tratamento de erros

A função não é reentrante (Non Reentrant) ([SWS_WdgM_00154]). A execução está vinculada ao status global atual do Watchdog Manager:

  • Se o módulo não estiver nem no status WDGM_GLOBAL_STATUS_OK nem em WDGM_GLOBAL_STATUS_FAILED, a função retorna sem executar nenhuma ação ([SWS_WdgM_00145]).
  • Se o parâmetro de configuração WdgMDevErrorDetect estiver desativado, uma chamada no status WDGM_GLOBAL_STATUS_DEACTIVATED permanece sem qualquer efeito ([SWS_WdgM_00392]).

Interação e impactos

Se houver um status global válido (WDGM_GLOBAL_STATUS_OK ou WDGM_GLOBAL_STATUS_FAILED), WdgM_SetMode atualizará as entidades monitoradas bem como os watchdogs:

  • Para cada Supervised Entity ativada no modo de destino, o estado atual é mantido ([SWS_WdgM_00182]).
  • Para cada Supervised Entity desativada no modo de destino, o estado local muda para WDGM_LOCAL_STATUS_DEACTIVATED; os resultados de Active, Deadline e Logical Supervision são definidos como corretos e o contador de ciclos de falha é redefinido para 0 ([SWS_WdgM_00315]). A mudança para um modo com desativação da entidade também limpa erros que anteriormente levaram a WDGM_GLOBAL_STATUS_FAILED ([SWS_WdgM_00182]).
  • Por fim, os parâmetros configurados do modo de watchdog para cada hardware watchdog são ativados por meio da interface WdgIf_SetMode ([SWS_WdgM_00186]).

Esta nota de uso é baseada na especificação AUTOSAR R20-11 e foi curada por uma IA.

Guia do implementador em breve (complexidade I2)

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 3c32ca59b4bb Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função síncrona reporta ao Watchdog Manager o alcance de um checkpoint dentro de uma Supervised Entity [SWS_WdgM_00263]. Recebe como parâmetros de entrada o identificador da entidade monitorizada (SEID), bem como o identificador do checkpoint alcançado (CheckpointID), e retorna E_OK em caso de atualização bem-sucedida do contador de alive ou E_NOT_OK em caso de erros [SWS_WdgM_00263].

Tratamento de erros e estado

Se o Watchdog Manager estiver no estado WDGM_GLOBAL_STATUS_DEACTIVATED, o comportamento depende da configuração do identificador de desenvolvimento: com WdgMDevErrorDetect ativado, a função reporta o erro WDGM_E_UNINIT ao Default Error Tracer (DET) e retorna sem qualquer outro efeito [SWS_WdgM_00279]. Se WdgMDevErrorDetect estiver desativado, o retorno ocorre sem mensagem e sem qualquer efeito [SWS_WdgM_00394].

Concorrência e deadlines

A chamada está especificada como reentrante [SWS_WdgM_00263]. Para determinar timestamps e diferenças de tempo na monitorização de deadline, a função utiliza a função do OS GetElapsedValue com o CounterID configurado para a entidade [SWS_WdgM_00373]. O escalonamento das diferenças de tempo para os valores-limite ocorre através do parâmetro OsSecondsPerTick [SWS_WdgM_00374]. Se um checkpoint final de deadline atingir a chamada no modo ativo e o timestamp do checkpoint inicial correspondente for 0, a função termina com sucesso sem medição de diferença [SWS_WdgM_00354].

Esta nota de utilização foi criada automaticamente com base na especificação do AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função 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.

função WdgM_PerformReset [SWS_WdgM_00264] 📄 PDF

void WdgM_PerformReset (void);

Instructs the Watchdog Manager to cause a watchdog reset.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 9885fefa4e38 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e contexto de chamada

A função síncrona WdgM_PerformReset instrui o Watchdog Manager a provocar o disparo de um reset de watchdog [SWS_WdgM_00264]. A interface é declarada através do cabeçalho WdgM.h e possui o Service-ID 0x0f [SWS_WdgM_00264]. Ela não recebe parâmetros de entrada nem de saída e não retorna nenhum valor [SWS_WdgM_00264].

Simultaneidade e restrições

Como WdgM_PerformReset está definida como não reentrante (Non Reentrant), não deve ocorrer nenhuma chamada múltipla concorrente ou interruptiva [SWS_WdgM_00264]. Os chamadores devem, portanto, assegurar que as chamadas sejam sincronizadas ou emitidas de forma exclusiva a partir de um contexto apropriado.

Comportamento dependente do estado e tratamento de erros

A execução está sujeita aos estados globais do Watchdog Manager: se o parâmetro de configuração WdgMDevErrorDetect estiver desativado e o módulo se encontrar no status global WDGM_GLOBAL_STATUS_DEACTIVATED, a função retorna sem qualquer efeito [SWS_WdgM_00401]. Nesse caso, um reset deixa completamente de ocorrer. O comportamento com a detecção de desenvolvimento ativada (WdgMDevErrorDetect) não está especificado no payload; interpretação: nesse caso, presume-se que um erro de desenvolvimento correspondente seja reportado no estado desativado. Pergunta Q-8a726bba4154540f (aberta)

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.

função 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.

função WdgM_MainFunction [SWS_WdgM_00159] 📄 PDF

void WdgM_MainFunction (void);

Performs the processing of the cyclic Watchdog Manager jobs.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6960691f573c Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e execução cíclica

A função WdgM_MainFunction executa as tarefas periódicas do Watchdog Manager [SWS_WdgM_00159]. Possui a assinatura void WdgM_MainFunction(void), não recebe parâmetros, não retorna nenhum valor e é disponibilizada através do cabeçalho SchM_WdgM.h [SWS_WdgM_00159]. Na primeira chamada após a inicialização do módulo, inicia tanto todas as funções de monitorização (para todos os algoritmos de monitorização, incluindo os ciclos de referência) como o tratamento do watchdog [SWS_WdgM_00406].

Monitorização de deadline e deteção de timeout

Nas chamadas cíclicas, WdgM_MainFunction executa a monitorização de deadline para a deteção de timeouts para todas as unidades com monitorização ativa e atualiza o respetivo resultado [SWS_WdgM_00404]:

  • Se a deteção através de WdgMEnableTimeoutDetection estiver ativada, a função verifica todas as monitorizações de deadline configuradas no modo ativo nas quais o checkpoint inicial foi reportado, mas o checkpoint final correspondente ainda está pendente [SWS_WdgM_00403].
  • Se a diferença de tempo medida em relação ao timestamp atual exceder o máximo WdgMDeadlineMax, a função define o resultado de monitorização da Supervised Entity como incorreto (incorrect) [SWS_WdgM_00403].

Interação com o sistema operativo

Para determinar timestamps e diferenças, WdgM_MainFunction chama a função do OS GetElapsedValue com o ID de contador configurado para a unidade (parâmetro WdgMOSCounter) [SWS_WdgM_00373]. O escalonamento dos valores de diferença para os valores-limite WdgMDeadlineMin e WdgMDeadlineMax é efetuado com base no parâmetro OsSecondsPerTick [SWS_WdgM_00374].

Este texto foi gerado automaticamente com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

tipo 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

tipo WdgM_SupervisedEntityIdType [SWS_WdgM_00356] 📄 PDF

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

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

tipo 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

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: dbc1e33f878e Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O tipo WdgM_Mode está definido como Mode Declaration Group da categoria EXPLICIT_ORDER e serve para representar estados de monitorização do módulo [SWS_WdgM_00334].

Utilização e gama de valores

O modo inicial definido é SUPERVISION_OK [SWS_WdgM_00334]. Para os modos individuais estão predefinidos valores numéricos explícitos [SWS_WdgM_00334]:

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

Para o valor de transição (on transition value) entre modos está definido o valor 255 [SWS_WdgM_00334].

Interação

Devido à classificação na categoria EXPLICIT_ORDER e à atribuição de valores ordinais fixos, é provável que o grupo esteja previsto para um mapeamento ordenado de estados dentro do Watchdog Manager [SWS_WdgM_00334]. Pergunta Q-47c55c3bc2e2a23d (aberta)

Este texto foi gerado por uma IA com base na especificação.

Guia do implementador em breve (complexidade I1)

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

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 7f77d0becca2 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O tipo WdgM_LocalStatusType é utilizado para variáveis que mapeiam o estado de monitorização local atual de uma entidade monitorizada individual (Supervised Entity) no Watchdog Manager [SWS_WdgM_00359]. O tipo de dados é derivado do tipo base uint8 e é disponibilizado através do cabeçalho Rte_WdgM_Type.h [SWS_WdgM_00359].

A faixa de valores abrange quatro estados distintos conforme [SWS_WdgM_00359]:

  • WDGM_LOCAL_STATUS_OK (valor 0): a monitorização da Supervised Entity não apresenta erros.
  • WDGM_LOCAL_STATUS_FAILED (valor 1): a monitorização falhou, mas ainda pode ser recuperada («healed») caso a entidade retorne ao comportamento normal. Isto aplica-se desde que um limite de erros configurável não seja ultrapassado; caso contrário, o estado transita para WDGM_LOCAL_STATUS_EXPIRED.
  • WDGM_LOCAL_STATUS_EXPIRED (valor 2): a monitorização falhou permanentemente; já não é possível sair deste estado.
  • WDGM_LOCAL_STATUS_DEACTIVATED (valor 4): a monitorização local da Supervised Entity está temporariamente desativada.

Devido à definição em Rte_WdgM_Type.h, o tipo deverá destinar-se principalmente à troca de estados de monitorização entre componentes de software e através da RTE [SWS_WdgM_00359]. Pergunta Q-a9e584dc4c7cfa3b (aberta)

Este texto foi criado por uma IA. Todas as informações baseiam-se exclusivamente nos dados de especificação do AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

tipo WdgM_GlobalStatusType [SWS_WdgM_00360] 📄 PDF

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

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: f7b49aed5af1 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O tipo de dados WdgM_GlobalStatusType serve para a definição de variáveis que representam o estado de monitorização global do módulo Watchdog Manager [SWS_WdgM_00360]. É derivado do tipo base uint8 e é disponibilizado através do cabeçalho Rte_WdgM_Type.h [SWS_WdgM_00360].

O intervalo de valores abrange cinco estados de monitorização definidos [SWS_WdgM_00360]:

  • WDGM_GLOBAL_STATUS_OK (0): a monitorização não apresenta qualquer erro.
  • WDGM_GLOBAL_STATUS_FAILED (1): a monitorização falhou, mas ainda se encontra dentro do limite admissível de erros.
  • WDGM_GLOBAL_STATUS_EXPIRED (2): a monitorização falhou e o limite admissível de erros foi ultrapassado, mas o controlador do watchdog ainda não foi instruído a interromper o desencadeamento.
  • WDGM_GLOBAL_STATUS_STOPPED (3): o limite de erros foi ultrapassado e o controlador do watchdog foi instruído a parar o desencadeamento, de modo que um reset do watchdog está iminente.
  • WDGM_GLOBAL_STATUS_DEACTIVATED (4): o módulo WdgM não está inicializado e, portanto, não controla os watchdogs.

Através destes estados, o tipo mapeia todo o ciclo de monitorização, começando na desativação antes da inicialização, passando pela operação regular ou tolerante a falhas, até à escalada em vários níveis com reset final do watchdog em caso de erros persistentes [SWS_WdgM_00360].

Esta nota de utilização foi criada por uma IA com base na especificação AUTOSAR.

Guia do implementador em breve (complexidade I1)

tipo WdgM_ModeType [SWS_WdgM_00358] 📄 PDF

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

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 991ebd8bd655 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O tipo de dados WdgM_ModeType serve para a distinção unívoca dos diferentes modos projetados para o Watchdog Manager [SWS_WdgM_00358]. Ele é disponibilizado para componentes de software e módulos de software básico através do arquivo de cabeçalho Rte_WdgM_Type.h [SWS_WdgM_00358].

De acordo com a especificação [SWS_WdgM_00358], o tipo apresenta as seguintes propriedades:

  • Tipo base: WdgM_ModeType é derivado do tipo de dados padrão uint8 [SWS_WdgM_00358].
  • Faixa de valores: a faixa de valores compreende de 0 a <Number of Modes> [SWS_WdgM_00358].
  • Dependência de configuração: o limite superior real da faixa de valores depende do número de modos configurados para o Watchdog Manager [SWS_WdgM_00358].

Por se tratar de uma definição de tipo, não existem parâmetros de tempo de execução, códigos de erro ou semânticas de assincronia. Interpretação: devido à declaração em Rte_WdgM_Type.h, WdgM_ModeType provavelmente deve ser utilizado primariamente para a troca de informações de modo por meio de interfaces RTE entre o software de aplicação e o Watchdog Manager. Pergunta Q-27975280bc68720e (aberta)

Esta nota de uso baseia-se na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

tipo globalmode [SWS_WdgM_00150] 📄 PDF

-

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 747dfe1f1d56 Procedência Perguntas em aberto (3)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O elemento globalmode está definido conforme a especificação [SWS_WdgM_00150] como uma porta fornecida (Provided Port Interface) do Watchdog Manager (WdgM) na plataforma AUTOSAR Classic na release R20-11. Como tipo de interface é indicado WdgM_GlobalMode. O elemento serve, no sistema global, como interface formal de porta através da qual o módulo expõe o seu estado a outros componentes de software.

A especificação [SWS_WdgM_00150] não fornece mais detalhes relativos à utilização concreta, aos parâmetros, valores de retorno ou estruturas de dados. Como interpretação, a interface de porta deverá servir primariamente para fornecer a instâncias superiores, como o BswM ou SW-Cs de aplicação, o estado de monitorização global atual do Watchdog Manager. Pergunta Q-6a0217eb1d28c1b4 (aberta) Na falta de outras indicações nas fontes, a disponibilização do modo é presumivelmente processada de forma síncrona através da RTE.

No que diz respeito ao tratamento de erros, mensagens DET ou DEM, bem como códigos de erro específicos, [SWS_WdgM_00150] é totalmente omisso. Da mesma forma, não constam no payload definições normativas sobre reentrância, prioridades ou contextos de chamada; contudo, em termos de interpretação, o acesso deverá estar sujeito às regras gerais de concorrência da gestão de estados do WdgM. Pergunta Q-28fa9de4b06e3b0d (aberta) Não existem requisitos relacionados para este elemento.

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade 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#c97531d5
Content hash
c97531d5
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_WatchdogManager.pdf#nameddest=SWS_WdgM_00151

Inicialização e estado

WdgM_DeInit função

De - initializes the Watchdog Manager.

void WdgM_DeInit (void);

Returns the version information of this module.

void WdgM_GetVersionInfo (Std_VersionInfoType* VersionInfo);
WdgM_Init função

Initializes the Watchdog Manager.

void WdgM_Init (const WdgM_ConfigType* ConfigPtr);

Serviços

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 função

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 função

Sets the current mode of Watchdog Manager.

Std_ReturnType WdgM_SetMode (WdgM_ModeType Mode);

Cíclico

Performs the processing of the cyclic Watchdog Manager jobs.

void WdgM_MainFunction (void);

Tipos

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.