DEENESPTFRRUARHIKOZHNL
AUTOSAR_CP_SWS_ECUStateManager FIG-00a4ce2f4a29546d 927 × 1228 px 1 Release(s)

Figure 7.16: The WakeupValidation Sequence

SHA-256 Inhalts-Fingerabdruck: 00a4ce2f4a29546dcd2eeea0a199aaf20b19747972e191d6c9c901f11dc4c528
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08

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): Verwaltet BSW-Zustände, Sleep-/Wakeup-Zyklen und Wakeup-Quellen.
  • Integration Code: Integrationscode (Callouts/Callbacks) als Vermittlungsinstanz zwischen EcuM und bus-/treiberspezifischen Modulen.
  • «module» Wakeup Source: Physische oder logische Aufweckquelle (z. B. CanIf, LinIf, FrIf, Gpt, Icu, WdgM).
  • «module» ComM (Communication Manager): Kommunikationsmanager; verarbeitet Kanal- und PNC-Aufweckungen (ComM_EcuM_WakeUpIndication, ComM_EcuM_PNCWakeUpIndication).
  • «module» BswM (BSW Mode Manager): Regelsystem für BSW-Modusübergänge; verarbeitet Wakeup-Statusmeldungen (VALIDATED, EXPIRED).
  • «module» CanSM (CAN State Manager): Modemanager für CAN-Netzwerke; wird über den Integrationscode beim Starten und Stoppen von CAN-Wakeup-Quellen angesteuert.

Datentypen & Schnittstellen:

  • Datentypen: EcuM_WakeupSourceType, NetworkHandleType, PNCHandleType, Std_ReturnType, EcuM_WakeupStatusType (ECUM_WKSTATUS_VALIDATED, ECUM_WKSTATUS_EXPIRED).
  • APIs & Callouts:
    • Callouts (EcuM → Integration Code): EcuM_StartWakeupSources(EcuM_WakeupSourceType), EcuM_CheckValidation(EcuM_WakeupSourceType), EcuM_StopWakeupSources(EcuM_WakeupSourceType).
    • Schnittstelle Integration Code → CanSM: CanSM_StartWakeupSource(Std_ReturnType, NetworkHandleType), CanSM_StopWakeupSource(Std_ReturnType, NetworkHandleType).
    • Treiber-Prüfaufruf: <Module>_CheckValidation().
    • Notifikations- und Callback-APIs: EcuM_ValidateWakeupEvent(EcuM_WakeupSourceType), ComM_EcuM_WakeUpIndication(NetworkHandleType), ComM_EcuM_PNCWakeUpIndication(PNCHandleType), BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_VALIDATED), BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_EXPIRED).

3. Dynamisches Verhalten & Sequenzablauf

  1. Initialisierung & Quellaktivierung:
    • EcuM ermittelt über den internen Aufruf EcuM_GetPendingWakeupEvents(EcuM_WakeupSourceType) die anstehenden unvalidierten Wakeup-Quellen.
    • Synchroner Callout EcuM_StartWakeupSources(...) an den Integration Code.
    • Der Integration Code ruft synchron CanSM_StartWakeupSource(Std_ReturnType, NetworkHandleType) am CanSM auf, um den betroffenen CAN-Kanal für die Validierung vorzubereiten.
    • Lokaler Start des Überwachungstimers im EcuM: Start validation timeout().
  2. Validierungsschleife (loop WHILE no wakeup event has been validated AND timeout not expired):
    • EcuM ruft zyklisch den Callout EcuM_CheckValidation(EcuM_WakeupSourceType) im Integration Code auf.
    • Der Integration Code leitet die Prüfung an den zuständigen Treiber weiter: <Module>_CheckValidation().
    • Erfolgsfall (opt Wakeup validated):
      • Die Quelle erkennt ein gültiges Aufwecksignal und meldet dies asynchron via Callback EcuM_ValidateWakeupEvent(EcuM_WakeupSourceType) an den EcuM.
      • EcuM meldet den Netzwerk-Wakeup an den Kommunikationsmanager: ComM_EcuM_WakeUpIndication(NetworkHandleType).
      • EcuM signalisiert zusätzlich die Teilnetz-Cluster-Aktivierung via ComM_EcuM_PNCWakeUpIndication(PNCHandleType) an den ComM.
      • EcuM aktualisiert den Status im Modemanager: BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_VALIDATED).
      • Die Schleifenbedingung ist erfüllt; die Validierungsschleife terminiert.
  3. Fehlschlag / Timeout (opt No wakeup event was validated):
    • Läuft der Validierungstimer ohne Bestätigung ab, signalisiert EcuM das Timeout an den Modemanager: BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_EXPIRED).
    • EcuM ruft den Callout EcuM_StopWakeupSources(EcuM_WakeupSourceType) im Integration Code auf.
    • Der Integration Code ruft synchron CanSM_StopWakeupSource(Std_ReturnType, NetworkHandleType) am CanSM auf, um die Validierungsphase für den CAN-Kanal zu beenden.

4. Normative Relevanz & Entwickler-Hinweise

  • Partial Networking (PNC): Durch ComM_EcuM_PNCWakeUpIndication(PNCHandleType) wird Partial Networking unterstützt. Der EcuM notifiziert den ComM gezielt über den aufgeweckten Teilnetz-Cluster, wodurch nur relevante Kommunikationskanäle und BSW-/SWC-Komponenten hochgefahren werden müssen.
  • Benachrichtigungsreihenfolge: Im Erfolgsfall erfolgt die Benachrichtigung sequentiell: Zuerst Kanalindikation (ComM_EcuM_WakeUpIndication), direkt gefolgt von der PNC-Indikation (ComM_EcuM_PNCWakeUpIndication), bevor der Modemanager (BswM) den validierten Status erhält.
  • Konfigurationsabhängigkeit: Die Schnittstelle ComM_EcuM_PNCWakeUpIndication setzt voraus, dass Partial Networking im EcuM und ComM aktiviert und konfiguriert ist.

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R24-11 → R25-11 redaktionell Vorgänger: FIG-e3ec960813af40ab
  • Lebenslinie EcuM: Der durchgehende Ausführungsbalken wurde korrigiert und wieder auf die tatsächlichen Ausführungsabschnitte beschränkt; die Kopfzeilenbeschriftungen des loop- und des zweiten opt-Fragments (no bzw. No) sind wieder vollständig freigestellt und sichtbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«module» | EcuM | «module» | ComM | «module» | Wakeup Source | Integration Code «module» | BswM | «module» | CanSM | loop WHILE no wakeup event has been validated AND timeout not expired | opt Wakeup validated | opt No wakeup event was validated | <Module>_CheckValidation() | BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_EXPIRED) | EcuM_ValidateWakeupEvent(EcuM_WakeupSourceType) | EcuM_StopWakeupSources(EcuM_WakeupSourceType) | ComM_EcuM_PNCWakeUpIndication(PNCHandleType) | CanSM_StopWakeupSource(Std_ReturnType, NetworkHandleType) | EcuM_GetPendingWakeupEvents(EcuM_WakeupSourceType) | ComM_EcuM_WakeUpIndication(NetworkHandleType) | Start validation timeout() | EcuM_StartWakeupSources(EcuM_WakeupSourceType) | EcuM_CheckValidation(EcuM_WakeupSourceType) | BswM_EcuM_CurrentWakeup(Source, ECUM_WKSTATUS_VALIDATED) | CanSM_StartWakeupSource(Std_ReturnType, NetworkHandleType)

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_CP_SWS_ECUStateManager S. 65 7.16 Figure 7.16: The WakeupValidation Sequence