AUTOSAR_CP_SWS_FlexRayStateManager
FIG-85c7eb19defd631a
888 × 970 px
1 Release(s)
Figure 9.11: Transition from FullCom to NoCom
SHA-256 Inhalts-Fingerabdruck:
85c7eb19defd631aeb349f8b960c83f4ab711b4867c95afa86f069a0957329ca
✦
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 2.x Sequenzdiagramm (Interaktionsdiagramm).
- Technischer Zweck: Spezifikation des zweistufigen Deaktivierungs- und Shutdown-Ablaufs eines FlexRay-Clusters beim Wechsel von voller Kommunikation (
COMM_FULL_COMMUNICATION) in den inaktiven Modus (COMM_NO_COMMUNICATION). - Funktionale Einordnung: Der FlexRay Communication Controller (CC) unterliegt deterministischen TDMA-Zyklusregeln und kann nicht ohne Protokollverletzungen abrupt gestoppt werden. Der Ablauf entkoppelt die synchrone Busanforderung des
ComMvom hardwarenahen, zyklusgebundenen Anhalten des Protokoll-Engines (POC: HALT), dem anschließenden Transceiver-Standby und der Überführung des Controllers in den ZustandREADY.
2. Komponenten, Entitäten & Schnittstellen
Alle Akteure sind als AUTOSAR-Basissoftwaremodule («module») im jeweiligen Namensraum typisiert:
ComM(from ComM): Communication Manager (Service Layer). Initiiert Kommunikationsmodi und empfängt die globale Modus-Indikation.SchM(from SchM): BSW Scheduler / RTE. Triggert periodisch die zyklische Task-Verarbeitung der State-Machine.BswM(from BswM): Basic Software Mode Manager (Service Layer). Arbitriert Zustände und Aktionen anhand gemeldeter Sub-Zustände (HALT_REQ,READY).FrSM(from FrSM): FlexRay State Manager (System Services). Zentrale Statemachine für die Cluster-Zustandsverwaltung.FrIf(from FrIf): FlexRay Interface (Communication Hardware Abstraction). Abstrakte Treiberschnittstelle für Controller (Fr) und Transceiver (FrTrcv).
Schnittstellen / Signaturen:
FrSM_RequestComMode(NetworkHandleType BusHandle, ComM_ModeType ComMode)FrIf_SetState(uint8 CtrlIdx, FrIf_StateType Transition)mit ÜbergangFRIF_GOTO_OFFLINEFrIf_HaltCommunication(uint8 CtrlIdx)ComM_BusSM_ModeIndication(NetworkHandleType BusHandle, ComM_ModeType ComMode)BswM_FrSM_CurrentState(FrSM_ModeType CurrentState)(Modi:HALT_REQ,READY)FrSM_MainFunction_<FrSMCluster.ShortName>()FrIf_GetPOCStatus(uint8 CtrlIdx, Fr_POCStatusType* FrIf_POCStatusPtr)FrIf_SetTransceiverMode(uint8 FrIf_CtrlIdx, uint8 FrIf_ChnlIdx, FrTrcv_TrcvModeType FrTrcvMode)FrIf_ControllerInit(uint8 FrIf_CtrlIdx)
3. Dynamisches Verhalten & Sequenzablauf
Phase 1: Synchrone Initiierung (Kontext: Aufrufender Task des ComM)
- Trigger:
ComMfordert überFrSM_RequestComMode(BusHandle, COMM_NO_COM)die Busabschaltung an. - Tx/Rx-Stopp:
FrSMentkoppelt die PDU-Verarbeitung synchron durch Aufruf vonFrIf_SetState(CtrlIdx, FRIF_GOTO_OFFLINE)(Sperrung aller PDU-Routen imFrIf). - Zyklus-Halt anfordern:
FrSMweist den Controller viaFrIf_HaltCommunication(CtrlIdx)an, die Kommunikation einzustellen. (Hinweis: Der Hardware-POC verbleibt bis zum Erreichen des aktuellen FlexRay-Zyklusendes im ZustandNORMAL_ACTIVEund geht erst am Zyklusende inHALTüber). - Frühe Quittierung: Noch im synchronen Ausführungskontext informiert
FrSMdenComMüberComM_BusSM_ModeIndication(BusHandle, COMM_NO_COM), dass der Moduswechsel aus Netzwerk-Perspektive akzeptiert ist. - Mode-Arbitration Trigger:
FrSMmeldet den Übergangszustand überBswM_FrSM_CurrentState(HALT_REQ)an denBswM. - Return:
FrSM_RequestComModekehrt synchron mitE_OKzumComMzurück.
Phase 2: Asynchroner Abschluss & Re-Initialisierung (Kontext: FrSM_MainFunction)
- Zyklischer Aufruf:
SchMaktiviertFrSM_MainFunction_<FrSMCluster.ShortName>(). - POC-Polling:
FrSMliest den Controller-Zustand überFrIf_GetPOCStatus(CtrlIdx, FrIf_POCStatusPtr)aus. - Transceiver Sleep/Standby: Sobald
POCState == HALTdetektiert wurde, versetztFrSMdie Transceiver der Cluster-Kanäle überFrIf_SetTransceiverMode(FrIf_CtrlIdx, FrIf_ChnlIdx, STANDBY)in den stromsparenden Modus. - Controller-Reset: Über
FrIf_ControllerInit(FrIf_CtrlIdx)wird der FlexRay-CC vonHALTzurück in den ZustandREADYüberführt, um für nachfolgende Kaltstarts/Wakeups betriebsbereit zu sein. - Abschlussmeldung:
FrSMmeldet den erreichten Endzustand viaBswM_FrSM_CurrentState(READY)an denBswM.
4. Normative Relevanz & Entwickler-Hinweise
- Asynchrone Modus-Diskrepanz: Für den
ComMist der Bus nach Phase 1 logisch sofort offline (COMM_NO_COM). Die Hardware schaltet jedoch verzögert (am TDMA-Zyklusende) ab. Ein sofortiger Re-Start (COMM_FULL_COM) während Phase 1 führt zu internen State-Machine-Konflikten bzw. wird abgewiesen, solangeHALT_REQaktiv ist. - Konfigurationsabhängigkeit der Task-Zykluszeit: Die Periodizität der
FrSM_MainFunctiondefiniert direkt die Latenz bis zum Erreichen des Standby-Zustands. Sie sollte an die FlexRay-Zykluszeit (typisch 5 ms) angepasst werden, um unnötige Verzögerungen beim ECU-Shutdown zu vermeiden. - Controller-Zustand nach Shutdown: Der FlexRay-Controller verbleibt im Zustand
READY(nicht uninitialisiert oderHALT). Treiber-Entwickler müssen sicherstellen, dassFrIf_ControllerInit()die CHI-Ressourcen korrekt vorbereitet hinterlässt, ohne die globale Konfiguration zu invalidieren. - Transceiver-Kanalbehandlung: Bei Dual-Channel-Clustern (Kanal A und B) muss
FrIf_SetTransceiverMode()pro konfiguriertem Kanalindex (FrIf_ChnlIdx) abgesetzt werden. - Fehlerbehandlung (POC-Timeout): Sollte der Controller aufgrund gestörter Synchronisation den Zustand
HALTnicht innerhalb des parametrierten Timeouts (FrSMDurationHaltReq) erreichen, greift der interne Fehlerpfad des FrSM (Übergang nachFrSM_StartupErrorbzw. Dem-Report).
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.