AUTOSAR_SWS_ECUStateManager
FIG-70879b6d276c3179
877 × 855 px
1 Release(s)
Figure 17: The WakeupValidation Sequence
SHA-256 Inhalts-Fingerabdruck:
70879b6d276c3179298b1d2c3b263fd4889db36d079d2f95c6978aa8e08c7872
✦
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 mit kombinierten Fragmenten (
loop,opt). - Funktionaler Kontext: Spezifikation des Wakeup-Validierungsprotokolls im Basic Software (BSW) Mode Management gemäß
AUTOSAR_SWS_ECUStateManager(R4.0.3). - Zweck: Absicherung gegen transiente Störimpulse (z. B. Spikes auf Busleitungen, CAN-Transceiver-Glitches). Validierungsbedürftige Wakeup-Ereignisse verbleiben im Zustand
PENDING, bis der Treiber/die Quelle das Signal als valide bestätigt oder der konfigurierte Validierungs-Timer (EcuMValidationTimeout) abläuft.
2. Komponenten, Entitäten & Schnittstellen
Beteiligte BSW-Module (Lifelines)
«module» EcuM(ECU State Manager): Zentrale Instanz zur Verwaltung von BSW-Zuständen, Sleep-/Wakeup-Zyklen und Wakeup-Quellen-Zustandsautomaten.Integration Code: OEM-/Plattform-spezifischer BSW-Integrationscode (Callouts/Callbacks), welcher die Abstraktionsbrücke zwischen generischem EcuM und hardware-/busspezifischen Treibern schlägt.«module» Wakeup Source: Physische oder logische Aufweckquelle (z. B. CanIf, LinIf, FrIf, Gpt, Icu, WdgM).«module» ComM(Communication Manager): Verwaltet Kommunikationsmodi; wird bei validiertem Bus-Wakeup zwecks Kanal-Aufweckung benachrichtigt.«module» BswM(BSW Mode Manager): Regelsystem für Modus-Übergänge; steuert die Gesamtreaktion der BSW auf Statusänderungen von Wakeup-Events (VALIDATED,EXPIRED).
Datentypen & Schnittstellen
EcuM_WakeupSourceType: Bitmaske/Identifier der jeweiligen Wakeup-Quelle.NetworkHandleType: Eindeutiger Identifikator des betroffenen Kommunikationskanals.EcuM_WakeupStatusType: StatusexemplareECUM_WKSTATUS_VALIDATEDundECUM_WKSTATUS_EXPIRED.- APIs & Callouts:
- Callouts (EcuM → Integration Code):
EcuM_StartWakeupSources(),EcuM_CheckValidation(),EcuM_StopWakeupSources(). - Treiber-Schnittstelle:
<Module>_CheckValidation(). - Notification-APIs:
EcuM_ValidateWakeupEvent(),ComM_EcuM_WakeUpIndication(),BswM_EcuM_CurrentWakeup().
- Callouts (EcuM → Integration Code):
3. Dynamisches Verhalten & Sequenzablauf
- Initialisierung & Quellaktivierung:
EcuMermittelt über den internen AufrufEcuM_GetPendingWakeupEvents(EcuM_WakeupSourceType)die anstehenden, unvalidierten Wakeup-Quellen.- Synchroner Callout
EcuM_StartWakeupSources(...)an denIntegration Code, um Peripherie, Clocks oder Transceiver für die Prüfung vorzubereiten. - Lokaler Start des Überwachungstimers:
Start validation timeout().
- Validierungsschleife (
loop WHILE no wakeup event has been validated AND timeout not expired):- EcuM triggert zyklisch den Callout
EcuM_CheckValidation(...). - Der
Integration Codeleitet dies an die betroffene Quell-Treiberinstanz weiter (<Module>_CheckValidation()). - Erfolgsfall (
opt Wakeup validated):- Die Quelle erkennt ein gültiges Muster/Frame und signalisiert dies asynchron via Callback
EcuM_ValidateWakeupEvent(EcuM_WakeupSourceType)an den EcuM. - EcuM meldet den Netzwerk-Wakeup an den Kommunikationsmanager:
ComM_EcuM_WakeUpIndication(NetworkHandleType). - EcuM aktualisiert den Zustand im Modemanager:
BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_VALIDATED). - Das
loop-Kriterium ist erfüllt; die Schleife terminiert.
- Die Quelle erkennt ein gültiges Muster/Frame und signalisiert dies asynchron via Callback
- EcuM triggert zyklisch den Callout
- Fehlschlag / Timeout (
opt No wakeup event was validated):- Läuft der Timer ab, ohne dass ein
EcuM_ValidateWakeupEvent()erfolgt ist, greift dieser Zweig:- EcuM informiert den BSW Mode Manager über das Ablaufen:
BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_EXPIRED). - EcuM deaktiviert die Quelle über den Callout
EcuM_StopWakeupSources(...)an denIntegration Code(ECU kehrt typischerweise in den Sleep-Zustand zurück).
- EcuM informiert den BSW Mode Manager über das Ablaufen:
- Läuft der Timer ab, ohne dass ein
4. Normative Relevanz & Entwickler-Hinweise
- Konfigurationsverträge (ECUC):
- Jede Wakeup-Quelle mit Validierungsbedarf erfordert den Parameter
EcuMValidationTimeout > 0. Ist kein Timeout projektiert, gilt das Event unmittelbar nach dem Auslösen als validiert. - Das Mapping zwischen
EcuM_WakeupSourceTypeundComMChannelIdbzw.NetworkHandleTypemuss in der EcuM-Konfiguration hinterlegt sein, damitComM_EcuM_WakeUpIndication()die korrekte Netzwerkinstanz adressiert.
- Jede Wakeup-Quelle mit Validierungsbedarf erfordert den Parameter
- Implementierungspflichten für Integratoren:
EcuM_StartWakeupSources()undEcuM_StopWakeupSources()müssen reentrant bzw. idempotent ausgelegt sein, falls mehrere Wakeup-Quellen gleichzeitig aktiv sind.<Module>_CheckValidation()wird synchron im Kontext der EcuM-Hauptfunktion aufgerufen. Hier dürfen keine blockierenden Hardware-Pollen-Schleifen laufen; die eigentliche Protokollprüfung erfolgt asynchron im Treiber/Interface.
- BswM-Regelwerk:
- Der BswM muss Regeln für
ECUM_WKSTATUS_VALIDATED(z. B. Übergang in RUN-State, Starten aller BSW-Kommunikationsstacks) undECUM_WKSTATUS_EXPIRED(z. B. Re-Entry in GO_OFF_ONE / SLEEP) bereitstellen.
- Der BswM muss Regeln für
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.