DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_DiagnosticCommunicationManager FIG-46c1fc3695a247ce 490 × 485 px 1 Release(s)

Figure 7.12: IOSequence 00

SHA-256 Inhalts-Fingerabdruck: 46c1fc3695a247ce87e5bd5531cef23360425af923ddac297109dd44f0eb3cb3
✦ 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

UML-Sequenzdiagramm (sd IOSequence 00) im Kontext der AUTOSAR Classic Platform (SWS Diagnostic Communication Manager, DCM). Es modelliert die asynchrone Interaktion bei einer Ein-/Ausgabesteuerung (UDS Service 0x2F – InputOutputControlByIdentifier) mit dem Steuerparameter returnControlToECU (0x00) über die Laufzeitumgebung (RTE) zu einer Software-Komponente (SWC) unter Verwendung von Sender-Receiver-Kommunikation mit Aktualisierungs-Flags (IsUpdated).

2. Komponenten, Entitäten & Schnittstellen

Beteiligte Lebenslinien (Akteure/Komponenten):

  • Tester: Externes Diagnose-Prüfgerät (UDS-Client).
  • Dcm: AUTOSAR Diagnostic Communication Manager (BSW-Modul).
  • RTE: AUTOSAR Runtime Environment (Kommunikationsinfrastruktur).
  • SWC: Anwendungs-Software-Komponente (Application Software Component).

Schnittstellen und Datenelemente:

  • Diagnosenachrichten: 2F D001 00 80 (Request), 6F D001 00 1234 (Positive Response).
  • Sender-Receiver-Schnittstellen / RTE-APIs:
    • Write IOControlRequest_{DID} / Datenelement underControl = ~CEMR & underControl
    • Write IOControlRequest_{DID}.IOOperationRequest mit Parametern controlEnableMask = 0x80, inputOutputControlParameter = 0x00 und RTE IsUpdated-Flag
    • Read DataServices_{DID} mit Rückgabewert data = 0x1234
    • Read IOControlRequest_{DID} (Rückgabe underControl)
    • IsUpdatedWriteIOControlRequest_{DID}().IOOperationRequest (Rückgabe status)
    • Read IOControlRequest_{DID}.IOOperationRequest
    • Write IOControlResponse_{DID} mit Parametern IOOperationResponse = 0x00 und {Ack|Nack}
    • Write DataServices_{DID}(data = 0x1234)
  • Lokale Operation: Process IOControlRequest innerhalb der SWC.

3. Dynamisches Verhalten & Sequenzablauf

  1. Der Tester sendet die Diagnoseanfrage 2F D001 00 80 (returnControlToECU, DID 0xD001, Control Enable Mask Record / CEMR 0x80) an das Dcm.
  2. Das Dcm schreibt über die RTE den Zustand underControl = ~CEMR & underControl (Write IOControlRequest_{DID}).
  3. Das Dcm schreibt die Operationsdaten controlEnableMask = 0x80, inputOutputControlParameter = 0x00 via Write IOControlRequest_{DID}.IOOperationRequest in die RTE, wodurch das interne IsUpdated-Flag gesetzt wird.
  4. Im kombinierten Fragment alt pos Response liest das Dcm über Read DataServices_{DID} die aktuellen Daten (0x1234) aus der RTE und sendet die positive UDS-Antwort 6F D001 00 1234 an den Tester.
  5. Zeitlich entkoppelt fragt die SWC über die RTE Read IOControlRequest_{DID} den Wert underControl ab.
  6. Die SWC prüft über IsUpdatedWriteIOControlRequest_{DID}().IOOperationRequest den Aktualisierungsstatus (status).
  7. Im kombinierten Fragment alt check IsUpdated liest die SWC bei gesetztem Flag den Operationsauftrag via Read IOControlRequest_{DID}.IOOperationRequest, verarbeitet die Anforderung (Process IOControlRequest), setzt IOOperationResponse = 0x00 und bestätigt den Empfang über Write IOControlResponse_{DID}({Ack|Nack}).
  8. Abschließend aktualisiert die SWC den Datenwert via Write DataServices_{DID}(data = 0x1234) in der RTE.

4. Normative Relevanz & Entwickler-Hinweise

Das Diagramm veranschaulicht die Entkopplung zwischen synchroner Diagnoseverarbeitung im DCM und asynchroner Ausführung in der SWC bei Verwendung von Sender/Receiver-Kommunikation mit Übertragungsquittierung bzw. IsUpdated-Mechanismus. Entwickler von SWCs und DCM-Konfigurationen müssen sicherstellen, dass:

  • die DCM-Antwort an den Tester unmittelbar nach Aktualisierung der RTE-Puffer und Auslesen der Datenbasis erfolgt, ohne zwingend das Beenden der internen Abarbeitung durch die SWC abzuwarten;
  • die SWC zyklisch oder ereignisgesteuert den IsUpdated-Status pollt bzw. auswertet und die Rückmeldung (Ack|Nack) über die Response-Schnittstelle setzt;
  • die Bitmaskenlogik (underControl = ~CEMR & underControl) bei returnControlToECU die Freigabebits der CEMR in der Steuerungsmaske korrekt zurücksetzt.

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

R19-11 → R20-11 keine inhaltliche Änderung Nachfolger: FIG-cffc7be269f63106

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

sd IOSequence 00 | Tester Dcm RTE SWC | 2F D001 00 80 Tester requests IOControl ⦁ DID D001 ⦁ returnControlToECU ⦁ CEMR 0x80 Write IOControlRequest_{DID} ⦁ underControl = ~CEMR & underControl) | Write IOControlRequest_{DID}.IOOperationRequest ⦁ controlEnableMask = 0x80 ⦁ inputOutputControlParameter = 0x00 ⦁ Set IsUpdated Flag | 6F D001 00 1234 | ⦁ IOOperationResponse = 0x00 ⦁ Set IsUpdated Flag | alt pos Response | alt check IsUpdated | [underControl]: | [Write IOControlResponse_{DID}({Ack|Nack}]: | [Process IOControlRequest]: | [Read IOControlRequest_{DID}]: | [positive response]: | [Read DataServices_{DID}]: | [Read IOControlRequest_{DID}.IOOperationRequest]: | [data = 0x1234]: | [status]: | [IsUpdatedWriteIOControlRequest_{DID}().IOOper...]: | [Write DataServices_{DID}(data = 0x1234)]:

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R19-11 AUTOSAR_SWS_DiagnosticCommunicationManager S. 185 7.12 Figure 7.12: IOSequence 00