DEENESPTFRRUARHIKOZHNL
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 Operator AND (&&).
    • BswMModeRequestPort (MyModeRequestPort): Zustandstragender Port. Hält den zuletzt angeforderten/gemeldeten Modus. Auswertung via BswMModeCondition mit Relationsoperator EQUAL gegen den Enumbestandteil MODE_A.
    • BswMEventRequestPort (ComMInitiateReset): Ereignisbasierter Port (Trigger ohne Nutzdaten, typischerweise von ComM oder SchM). Besitzt die Zustände SET und CLEAR. Evaluierungsbedingung prüft auf Status IS_SET.
    • BswMRuleTrueActionList (True Action List): Geordnete Aktionssequenz (BswMActionList), die bei Wahrheitswert TRUE der Regel abgearbeitet wird.
    • BswMRuleFalseActionList (False Action List): Alternative Aktionssequenz, die bei Wahrheitswert FALSE ausgeführt wird.

3. Dynamisches Verhalten & Sequenzablauf

  1. Triggerung / Latenz:
    • Immediate: Auswertung erfolgt synchron im Aufruferkontext des Melders (z. B. Direktaufruf von BswM_ComM_CurrentMode oder RTE-Mode-Switch-Notification).
    • Deferred: Zwischenspeicherung des Zustands/Events und asynchrone Regelauswertung im zyklischen Taskkontext der BswM_MainFunction().
  2. Evaluierung des Ausdrucks:
    • Abfrage von MyModeRequestPort: Liegt der aktuelle Zustand bei MODE_A?
    • Abfrage des Flags von ComMInitiateReset: Befindet sich der Port im Zustand SET?
    • Boolesche Konjunktion (AND).
  3. Aktionsausführung:
    • Zweig TRUE: Abarbeitung aller in der True Action List enthaltenen Items (z. B. PDU-Gruppen aktivieren/deaktivieren via Com_IpduGroupControl, Starten von Timern, State-Requests an andere BSW-Module).
    • Zweig FALSE: Ausführung der konfigurierten Fallback-/Deaktivierungsaktionen.
  4. Lebenszyklus von Event-Ports:
    • Das Eintreffen eines Events setzt den Port atomar auf SET.
    • Der Zustand SET bleibt persistent erhalten, bis er explizit durch eine konfigurierte Aktion des Typs BswMClearEventRequest innerhalb einer Action List auf CLEAR zurückgesetzt wird. Ohne diese Rücksetz-Aktion bleibt die Bedingung dauerhaft wahr.

4. Normative Relevanz & Entwickler-Hinweise

  • Zustands- vs. Ereignisselektoren: Entwickler müssen strikt zwischen BswMModeRequestPort (wert-/zustandsbasiert) und BswMEventRequestPort (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 = IMMEDIATE konfiguriert, 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 DEFERRED parametriert werden.
  • 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.

Aus dem Dokument extrahierter Text & Kontext

Begleitender Spezifikationstext:

Specification of Basic Software Mode Manager AUTOSAR CP R25-11 7.1.2 Mode Conditions and Logical Expressions. The logical expression that comprises a mode arbitration rule can use different operators such as AND, OR, XOR, NOT and NAND. Each term in the expression corresponds to a mode request condition. If the mode condition references a BswMModeRequestPort, the condition will verify if a requested or indicated mode is EQUAL or NOT_ EQUAL to a certain mode. If the condition references a BswMEventRequestPort, the condition will verify if the request port is SET or CLEAR. BswMEventRequestPort events requests differ from mode requests in that the requester sends no requested mode/value to the BswM and as such, there is no mode condition for the BswM to evaluate. Rather, there is only the reception of the event for the BswM to evaluate. When the requester sends/calls the event, then the BswMEventRequestPort will be in a SET state. The BswM can then later place the BswMEventRequestPort into a CLEAR state by executing a BswMClearEventRequest action. An example rule with two conditions is shown in Figure 7.1. The rules and the set of available logical operations are defined as a part of the ECU configuration described in chapter 10.2. Figure 7.1: Pseudocode representation of an example rule with two conditions. 25 of 222 Document ID 313: AUTOSAR_CP_SWS_BSWModeManager

Vorkommen in AUTOSAR-Releases (6)

Release Dokument Seite Nr. Bildunterschrift im Dokument
EXTERN AUTOSAR_SWS_BSWModeManager S. 23 7.1 Figure 7.1: Pseudocode representation of an example rule with two conditions.
R21-11 AUTOSAR_SWS_BSWModeManager S. 20 7.1 Figure 7.1: Pseudocode representation of an example rule with two conditions.
R22-11 AUTOSAR_SWS_BSWModeManager S. 23 7.1 Figure 7.1: Pseudocode representation of an example rule with two conditions.
R23-11 AUTOSAR_CP_SWS_BSWModeManager S. 26 7.1 Figure 7.1: Pseudocode representation of an example rule with two conditions.
R24-11 AUTOSAR_CP_SWS_BSWModeManager S. 26 7.1 Figure 7.1: Pseudocode representation of an example rule with two conditions.
R25-11 AUTOSAR_CP_SWS_BSWModeManager S. 25 7.1 Figure 7.1: Pseudocode representation of an example rule with two conditions.