AUTOSAR_SWS_WatchdogDriver
FIG-10a29405f31a4750
863 × 634 px
1 Release(s)
Figure 3: Data exchange between watchdog driver and hardware
SHA-256 Inhalts-Fingerabdruck:
10a29405f31a4750ebf8cc8b2543971a1e7596131f38ab2fe2afac3a8ff9c3fb
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Sequenzdiagramm (
sd Data Exchange w. watchdog hardware). - Architektur-Kontext: AUTOSAR Classic Platform (MCAL / System Services), Spezifikationsstand R2.1.20.
- Funktionale Einordnung: Interaktionsmuster zwischen der Abstraktionsschicht (Watchdog Interface,
WdgIf), dem konkreten Hardware-Treiber (Watchdog Driver,Wdg) und der physikalischen Watchdog-Peripherie (Watchdog Hardware, intern/On-Chip oder extern via SPI/DIO). Es visualisiert den periodischen Refresh-Mechanismus bei hardwareseitig wechselnden Ansteuerungssequenzen (Challenge-Response-, Token- oder Fenster-Watchdogs).
2. Komponenten, Entitäten & Schnittstellen
- Akteure / Lifelines:
Watchdog Interface(WdgIf): Obere Abstraktionsschicht (BSW), zuständig für das Routing der Trigger-Aufrufe an den spezifischen WDG-Treiberkanal.Watchdog Driver(Wdg): MCAL-Treiber (konform zuAUTOSAR_SWS_WatchdogDriver), kapselt die registerspezifischen Schreib-/Lesezugriffe auf die Ziel-Hardware.Watchdog Hardware: Physikalische Überwachungsschaltung (Microcontroller-interner Watchdog-Timer oder externes Watchdog-ASIC/PMIC).
- Schnittstellen & Interaktionen:
Wdg_Trigger(void): Synchrone C-Funktionsschnittstelle (API) vomWdgIfzumWdg.trigger WDG hardware: Hardwarenahe Schreiboperation (Memory-Mapped I/O Registerzugriff oder SPI-Kommando) zur Rücksetzung des Überwachungszählers.update activation code: Hardware-Statusaktualisierung bzw. Bereitstellung eines veränderten Aktivierungscodes (z. B. LFSR-Folgecode, invertierter Toggle-Wert, Challenge-Token oder Next-Window-Sequenz) von der Hardware an den Treiber.
- Beziehungen & Stereotypen:
- Direkte 1:1-Steuerungsbeziehung pro Treiberinstanz.
- Schichtenbindung:
WdgIfoperiert hardwareunabhängig;Wdgoperiert streng hardwarespezifisch und hardwarenah.
3. Dynamisches Verhalten & Sequenzablauf
Das Diagramm stellt zwei aufeinanderfolgende Trigger-Zyklen dar:
- Zyklus 1 – Trigger-Aufruf:
Watchdog Interfaceruft synchronWdg_Trigger(void)auf.Watchdog Driverbedient die Hardware übertrigger WDG hardwareunter Verwendung des aktuell gültigen Aktivierungscodes.- Der Aufruf
Wdg_Trigger(void)kehrt synchron perreturnzumWatchdog Interfacezurück.
- Zyklus 1 – Code-Aktualisierung (Hardware-Feedback):
- Nach erfolgtem Trigger modifiziert die Hardware ihren Zustand und signalisiert/aktualisiert einen neuen Aktivierungswert (
update activation code), der asynchron oder beim nächsten Registerzugriff durch den Treiber erfasst/abgeglichen wird.
- Nach erfolgtem Trigger modifiziert die Hardware ihren Zustand und signalisiert/aktualisiert einen neuen Aktivierungswert (
- Zyklus 2 – Folgetrigger mit modifiziertem Code:
Watchdog Interfacesetzt den nächsten periodischen AufrufWdg_Trigger(void)ab.Watchdog Driverführttrigger WDG hardwaremit dem im vorherigen Schritt aktualisierten Aktivierungscode aus.- Funktionsrückkehr via
return. - Die Hardware generiert wiederum die nächste Iteration des Codes (
update activation code).
4. Normative Relevanz & Entwickler-Hinweise
- Treiber-Implementierung (MCAL):
- Der Treiber darf keine statischen Refresh-Konstanten „blind“ schreiben, sofern die Hardware dynamische Token/Codes erwartet. Der Treiber muss interne Zustandsvariablen zur Verfolgung des Codes verwalten oder Statusregister vor/nach dem Schreibzugriff auslesen.
- Reentrancy:
Wdg_Trigger()ist non-reentrant. Gleichzeitige Aufrufe aus verschiedenen Task-Kontexten oder ISRs führen zu Race Conditions bezüglich desactivation codeund lösen unweigerlich einen Watchdog-Reset aus.
- API-Einschränkungen & Versionskontext:
- Die Schnittstelle
Wdg_Trigger(void)entspricht dem frühen AUTOSAR-Standard (R2.1.20). In späteren AUTOSAR-Releases (R4.x+) wurde dieses synchrone Triggering abgelöst durch das KonzeptWdg_SetTriggerCondition(Timeout)in Kombination mit der internen zyklischen TreiberfunktionWdg_MainFunction(), um die Trennung von logischem Software-Monitoring (WdgM) und physikalischer Hardware-Bedienung zu schärfen.
- Die Schnittstelle
- Echtzeitanforderungen:
Wdg_Trigger(void)muss strikt deterministisch innerhalb des zulässigen Hardware-Fensters (Open Window) ausgeführt werden. Blockierende SPI-Transfers bei externen Watchdogs müssen timing-optimiert abgewickelt werden.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.