AUTOSAR_SWS_FlexRayISOTransportLayer
FIG-64d72b7a1daac4ad
407 × 575 px
1 Release(s)
Figure 7: Frame sequence a segmented unacknowledged data transfer with known message
SHA-256 Inhalts-Fingerabdruck:
64d72b7a1daac4ad43c6e1c822ceca222d9daa49f356bea0917b9545b18e9b1c
✦
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: UML-Sequenzdiagramm / Protokoll-Ablaufdiagramm (Message Sequence Chart) mit vertikalen Zeitachsen (t).
- Funktionale Einordnung: Dargestellt ist der segmentierte, unquittierte Datentransfer mit bekannter Nachrichtenlänge (Segmented unacknowledged data transfer with known message length) gemäß ISO 10681-2 im AUTOSAR-Basissoftwaremodul
FrIsoTp(FlexRay ISO Transport Layer, SpezifikationAUTOSAR_SWS_FlexRayISOTransportLayer, R4.0.3). - Systemkontext: Das Modul
FrIsoTpvermittelt als Transportschicht im AUTOSAR Classic Communication Stack zwischen dem PDU Router (PduR) oben und dem FlexRay Interface (FrIf) unten. Es übernimmt Segmentierung, Reassemblierung, Flusssteuerung und Pufferverwaltung für Diagnosenachrichten (DCM) oder große Applikations-PDUs über das FlexRay-Kommunikationsnetzwerk.
2. Komponenten, Entitäten & Schnittstellen
- Akteure (Lebenslinien):
- Sender / Transmitter (linke Zeitachse): Sendende
FrIsoTp-Instanz (Initiator der Übertragung viaFrIsoTp_Transmit()). - Empfänger / Receiver (rechte Zeitachse): Empfangende
FrIsoTp-Instanz (koordiniert Pufferreservierung überPduR_FrIsoTpStartOfReception()).
- Sender / Transmitter (linke Zeitachse): Sendende
- Dargestellte Protokolldateneinheiten (N-PDUs / Frame-Typen nach ISO 10681-2):
StartFrame (STFU): Start Frame Unacknowledged. Enthält Gesamtnachrichtenlänge (Message Length, ML) und die erste Datennutzlast.FlowControl_CTS (FC.CTS): Flow-Control-PDU mit Flow Status Clear To Send. Gibt Pufferverfügbarkeit, Blockgröße (Block Size, BS) und Frame-Separation-Time frei.ConsecutiveFrame (CF1): Segmentierte Folge-Frames innerhalb eines Blocks; indiziert durch Sequenzzähler/Toggle-Kennung zur Überwachung der Übertragungsreihenfolge.ConsecutiveFrame_EOB (CFEOB): Consecutive Frame End Of Block. Letztes Segment eines definierten Blocks, welches das Ende des autorisierten Sende-Budgets signalisiert und die nächste Flusssteuerungsantwort erzwingt.LastFrame (LF): Letztes Segment der Gesamtnachricht (enthält die verbleibende Restnutzlast ohne EOB-Quittungsanforderung).
- Schnittstellen & Interaktion:
- Obere Schicht (
PduR): Aufrufe vonPduR_FrIsoTpCopyTxData()(Sender) bzw.PduR_FrIsoTpCopyRxData()(Empfänger). - Untere Schicht (
FrIf): Physischer Versand/Empfang viaFrIf_Transmit(),FrIf_TxConfirmation()undFrIf_RxIndication().
- Obere Schicht (
3. Dynamisches Verhalten & Sequenzablauf
- Transfer-Initialisierung:
- Der Sender überträgt einen
StartFrame (STFU)an den Empfänger (Auslöser:FrIsoTp_Transmit(), Pufferabruf viaPduR_FrIsoTpCopyTxData()). - Der Empfänger validiert die im STFU übermittelte Nachrichtenlänge via
PduR_FrIsoTpStartOfReception().
- Der Sender überträgt einen
- Erste Flusssteuerung (Handshake):
- Bei ausreichendem Puffer signalisiert der Empfänger Empfangsbereitschaft mittels
FlowControl_CTS (FC.CTS)(inkl. maximaler Blockgröße BS und minimalem Frame-Abstand).
- Bei ausreichendem Puffer signalisiert der Empfänger Empfangsbereitschaft mittels
- Erster Block-Datentransfer:
- Der Sender feuert asynchron innerhalb des autorisierten Zeitrasters aufeinanderfolgende
ConsecutiveFrame (CF1). - Der Block wird mit
ConsecutiveFrame_EOB (CFEOB)abgeschlossen. Der Sender stoppt die Übertragung und wartet auf eine erneute Freigabe.
- Der Sender feuert asynchron innerhalb des autorisierten Zeitrasters aufeinanderfolgende
- Zweite Flusssteuerung:
- Der Empfänger prüft den internen Pufferstatus und sendet einen weiteren
FlowControl_CTS (FC.CTS).
- Der Empfänger prüft den internen Pufferstatus und sendet einen weiteren
- Finaler Block & Abschluss:
- Der Sender setzt den Transfer mit
ConsecutiveFrame (CF1)fort. - Die Übertragung endet mit dem
LastFrame (LF). - Bei erfolgreichem Empfang schließt der Empfänger mit
PduR_FrIsoTpRxIndication(..., E_OK)ab; der Sender bestätigt die erfolgreiche Übertragung viaPduR_FrIsoTpTxConfirmation(..., E_OK).
- Der Sender setzt den Transfer mit
- Abbruchbedingungen & Timeouts:
- Ablauf der Timer N_Ar, N_As, N_Cr (z. B. Ausbleiben von
FC.CTSoderCF) führt zu Verbindungsabbruch (E_NOT_OK) und Det-Fehlermeldung (FRISOTP_E_TIMEOUT_*). - Senden eines
FC.WT(Wait) verzögert den Zyklus;FC.OVFLW(Overflow) bricht den Transfer sofort ab.
- Ablauf der Timer N_Ar, N_As, N_Cr (z. B. Ausbleiben von
4. Normative Relevanz & Entwickler-Hinweise
- Puffer- und Memory-Management:
- Da es sich um einen unacknowledged transfer handelt, erfolgt keine Fehlerkorrektur via Retransmission auf Frame-Ebene (im Gegensatz zum acknowledged transfer mit
ACK/NACK). Geht ein CF verloren, bricht die Gesamt-PDU ab. - Entwickler müssen sicherstellen, dass der PduR-Puffer groß genug konfiguriert ist, um Überläufe (
FC.OVFLW) zu verhindern.
- Da es sich um einen unacknowledged transfer handelt, erfolgt keine Fehlerkorrektur via Retransmission auf Frame-Ebene (im Gegensatz zum acknowledged transfer mit
- Konfigurationsparameter (AUTOSAR FrIsoTp):
FrIsoTpBlockSize (BS): Legt fest, nach wie vielen CFs einCFEOBgesetzt und einFC.CTSerwartet werden muss.FrIsoTpBandwidthControl: Steuerung des minimalen Sendeabstands zwischen CFs (Mapping auf FlexRay-Slots / statisches vs. dynamisches Segment).FrIsoTpTimeoutCr,FrIsoTpTimeoutAs,FrIsoTpTimeoutBs: Exakte Dimensionierung der Protokoll-Timer zur Vermeidung von Deadlocks auf dem Bus.
- FlexRay-Besonderheiten:
- Das Scheduling der N-PDUs muss mit dem FlexRay-Kommunikationszyklus (Cycles, Static/Dynamic Slots) harmonisiert werden; Jitter und Slot-Zuweisung beeinflussen direkt die Einhaltung der ISO-10681-2-Timingvorgaben.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.