AUTOSAR_CP_SWS_BSWModeManager
FIG-710ae2db93ca79f2
932 × 742 px
6 Release(s)
Figure 7.1: Pseudocode representation of an example rule with two conditions.
SHA-256 Inhalts-Fingerabdruck:
710ae2db93ca79f23ea3eed31d517647f640879d49130242256e9e719161d588
✦
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: Architekturskizze mit eingebetteter Pseudocode-Strukturlogik (Ausführungsmodell).
- Technischer Zweck: Spezifikation des grundlegenden Evaluierungs- und Ausführungsprinzips der Modus-Arbitrierung (
BswMRule) im Basic Software Mode Manager (BswM) gemäß AUTOSAR Classic Platform (CP SWS BSWModeManager, Doc-ID 313). - Systemkontext: Veranschaulicht die Schichteninteraktion zwischen der RTE (Runtime Environment) und dem BswM (Service Layer). Eingehende Zustandsanzeigen, Mode-Switches und Ereignisse werden über Port-Mechanismen in logischen Ausdrücken verdrahtet, um deterministische Aktionen im BSW-Stack anzustoßen.
2. Komponenten, Entitäten & Schnittstellen
- RTE (Runtime Environment): Abstraktions- und Transportschicht, über welche Mode Requests von Applikations-SW-Cs (
BswM_RequestMode/ Mode-Switch-Ports) an den BswM signalisiert werden. - BswM (Basic Software Mode Manager): Zentrales BSW-Arbitrierungsmodul.
- Entitäten der
BswMRule(Metamodell-Referenz nach Kap. 10.2):BswMLogicalExpression: Zusammengesetzter boolescher Ausdruck mit dem logischen OperatorAND(&&).BswMModeRequestPort(MyModeRequestPort): Zustandstragender Port. Hält den zuletzt angeforderten/gemeldeten Modus. Auswertung viaBswMModeConditionmit RelationsoperatorEQUALgegen den EnumbestandteilMODE_A.BswMEventRequestPort(ComMInitiateReset): Ereignisbasierter Port (Trigger ohne Nutzdaten, typischerweise von ComM oder SchM). Besitzt die ZuständeSETundCLEAR. Evaluierungsbedingung prüft auf StatusIS_SET.BswMRuleTrueActionList(True Action List): Geordnete Aktionssequenz (BswMActionList), die bei WahrheitswertTRUEder Regel abgearbeitet wird.BswMRuleFalseActionList(False Action List): Alternative Aktionssequenz, die bei WahrheitswertFALSEausgeführt wird.
3. Dynamisches Verhalten & Sequenzablauf
- Triggerung / Latenz:
- Immediate: Auswertung erfolgt synchron im Aufruferkontext des Melders (z. B. Direktaufruf von
BswM_ComM_CurrentModeoder RTE-Mode-Switch-Notification). - Deferred: Zwischenspeicherung des Zustands/Events und asynchrone Regelauswertung im zyklischen Taskkontext der
BswM_MainFunction().
- Immediate: Auswertung erfolgt synchron im Aufruferkontext des Melders (z. B. Direktaufruf von
- Evaluierung des Ausdrucks:
- Abfrage von
MyModeRequestPort: Liegt der aktuelle Zustand beiMODE_A? - Abfrage des Flags von
ComMInitiateReset: Befindet sich der Port im ZustandSET? - Boolesche Konjunktion (
AND).
- Abfrage von
- Aktionsausführung:
- Zweig
TRUE: Abarbeitung aller in derTrue Action Listenthaltenen Items (z. B. PDU-Gruppen aktivieren/deaktivieren viaCom_IpduGroupControl, Starten von Timern, State-Requests an andere BSW-Module). - Zweig
FALSE: Ausführung der konfigurierten Fallback-/Deaktivierungsaktionen.
- Zweig
- Lebenszyklus von Event-Ports:
- Das Eintreffen eines Events setzt den Port atomar auf
SET. - Der Zustand
SETbleibt persistent erhalten, bis er explizit durch eine konfigurierte Aktion des TypsBswMClearEventRequestinnerhalb einer Action List aufCLEARzurückgesetzt wird. Ohne diese Rücksetz-Aktion bleibt die Bedingung dauerhaft wahr.
- Das Eintreffen eines Events setzt den Port atomar auf
4. Normative Relevanz & Entwickler-Hinweise
- Zustands- vs. Ereignisselektoren: Entwickler müssen strikt zwischen
BswMModeRequestPort(wert-/zustandsbasiert) undBswMEventRequestPort(ereignisbasiert/Latch-Semantik) unterscheiden. Ereignisse verlangen zwingend eine explizite Rücksetzstrategie (BswMClearEventRequest), um Flankentriggerung korrekt zu modellieren und Endlosschleifen zu verhindern. - Kontext- & Laufzeitbudget (Immediate vs. Deferred):
- Ist eine Regel mit
BswMRuleEvalMethod = IMMEDIATEkonfiguriert, laufen alle Aktionen der Action List im Kontext des Melder-Interrupts bzw. der aufrufenden Task. Blockierende Treiberaufrufe oder tiefe Callouts sind hier unzulässig. - Zeitkritische oder ressourcenintensive BSW-Umkonfigurationen müssen als
DEFERREDparametriert werden.
- Ist eine Regel mit
- Deterministische Initialisierung: Beim ECU-Startup (nach
BswM_Init) müssen gültige Init-Werte für Mode-Ports (BswMModeInitValue) und der definierte Initialstatus für Event-Ports (CLEAR) sichergestellt sein, um undefinierte Verzweigungen vor der ersten gültigen Meldung abzufangen.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.