AUTOSAR_CP_SWS_FlexRayISOTransportLayer
FIG-5950d05187b8aea4
830 × 607 px
4 Release(s)
Figure 14: Transmit data overview in ‘Immediate Buffer Access’ mode Figure 14 depicts the internal processing for data transmission in principle 11 if “Immediate Buffer Access” mode is configured12. Below there is a description of the different steps which are necessary to transmit data via FrTp. Step 1 - 4 [SWS_FrTp_00136] ⌈Sending Fr N-SDU data shall always be initiated by the
SHA-256 Inhalts-Fingerabdruck:
5950d05187b8aea441280bab15755e73a5ee0b8cf4fcc55f1319222ad0fa56d5
✦
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 (Interaktionsdiagramm mit Kontrollstrukturen und Verzweigungen).
- Technischer Zweck: Spezifikation des standardisierten Sendeablaufs einer Fr-N-SDU im FlexRay ISO Transport Layer (
FrTpgemäß ISO 10681-2 / AUTOSAR ComStack) bei Konfiguration des Betriebsmodus „Immediate Buffer Access“. - Einordnung im AUTOSAR-Gesamtsystem:
- Vertikale Einbettung im Kommunikationsstack: Oberhalb des FlexRay Interface (
FrIf), unterhalb des PDU Routers (PduR). - Asynchrone Entkopplung des Sendeauftrags: Trennung zwischen API-Aufrufkontext (
FrTp_Transmit) und Task-Kontext der zyklischen Hauptfunktion (FrTp_MainFunction). - Speicherarchitektur: Im Immediate Buffer Access Mode fordert
FrTpN-SDU-Nutzdaten segmentweise direkt und bedarfsgesteuert viaPduR_FrTpCopyTxDataan, anstatt die gesamte SDU im Transport Layer zwischenzupuffern.
- Vertikale Einbettung im Kommunikationsstack: Oberhalb des FlexRay Interface (
2. Komponenten, Entitäten & Schnittstellen
- Beteiligte BSW-Module (Lebenslinien):
PduR(PDU Router): Vermittler zur oberen Schicht (Upper Layer, z. B. DCM oder COM). Agiert als Sendeinitiator, Datenquelle und Empfänger der finalen Übertragungsbestätigung.FrTp(FlexRay ISO Transport Layer): Protokollinstanz für Segmentierung, Reassemblierung, Flusskontrolle (Flow Control) und Kanal-/Ressourcenverwaltung.FrIf(FlexRay Interface): Abstraktionsschicht zur unteren Treiberebene (FlexRay Driver / CC). Übernimmt segmentierte N-PDUs und meldet Bus-Bestätigungen zurück.
- Schnittstellen & Callbacks (APIs):
FrTp_Transmit(TxSDU-ID, const PduInfoType*): Synchrone Sendeanforderung (PduR→FrTp).FrTp_Main()bzw.FrTp_MainFunction(): BSW-Scheduler-Einsprungpunkt zur periodischen Abarbeitung von Timeouts, Flusskontrolle und Segmentübertragung.PduR_FrTpCopyTxData(PduIdType, const PduInfoType*, const RetryInfoType*, PduLengthType*): Synchroner Callback (FrTp→PduR) zum Abfragen von Längeninformationen bzw. zum Kopieren von Nutzdaten in den Ziel-Puffer.FrIf_Transmit(PduIdType, const PduInfoType*): Sendeanforderung einer N-PDU an das FlexRay-Interface (FrTp→FrIf).FrTp_TxConfirmation(PduIdType): Asynchroner Bestätigungs-Callback des Bus-Sendevorgangs (FrIf→FrTp).PduR_TxConfirmation(PduIdType, Std_ReturnType): Asynchrone Erfolgs-/Fehlermeldung über den vollständigen SDU-Transfer (FrTp→PduR).
- Interne Entitäten, Flags & Zustände:
TxSDU-ID: Numerische Identifikation der N-SDU.TxPDU-ID: Identifikation der allokierten N-PDU aus dem PDU-Pool.Channel: Allokierte logische Verbindungskanal-Ressource (1:1-Zuordnung während eines aktiven Transfers).TX_SDU_AVAILABLE: Synchronisations-Flag zwischen API-Ebene und Task-Kontext.TxPduState: Lokaler N-PDU-Ressourcenstatus (Wertebereich:Idle/Busy).
3. Dynamisches Verhalten & Sequenzablauf
- Sendeinitiierung (Aufrufkontext des PduR, synchron):
- 01:
PduRruftFrTp_Transmit(TxSDU-ID, ..)auf [[SWS_FrTp_00136]](assets/figures/59/5950d05187b8aea441280bab15755e73a5ee0b8cf4fcc55f1319222ad0fa56d5.webp). - 02:
FrTpvalidiert dieTxSDU-IDauf Konfigurationsgültigkeit und Initialisierungszustand. - 03: Allokation eines freien Transportkanals aus dem Kanal-Pool und Aufbau des Verbindungsstatus.
- 04: Setzen des Flags
TX_SDU_AVAILABLE(TxSDU-ID). Rückkehr ausFrTp_Transmit(E_OK).
- 01:
- Segment-Assemblierung & Sendeausführung (Kontext
FrTp_Main, periodisch):- 05: Eintritt in die zyklische Task
FrTp_Main. - 06:
FrTpruftPduR_FrTpCopyTxData(TxSDU-ID, ..)auf (Prüfung der Datenverfügbarkeit im PduR). - 07: Allokation einer freien
TxPDU-IDaus dem konfigurierten PDU-Pool [[SWS_FrTp_01043]](assets/figures/59/5950d05187b8aea441280bab15755e73a5ee0b8cf4fcc55f1319222ad0fa56d5.webp), [[SWS_FrTp_01044]](assets/figures/59/5950d05187b8aea441280bab15755e73a5ee0b8cf4fcc55f1319222ad0fa56d5.webp). - 08: Erneuter Aufruf von
PduR_FrTpCopyTxData(TxSDU-ID, ..)zum tatsächlichen Kopieren der Nutzdatenmenge für das aktuelle Segment in den N-PDU-Puffer. - 09: Formatierung von Adressinformationen (Source/Target Address) und PCI (Protocol Control Information: SF, FF oder CF).
- 10: Übergabe der N-PDU an das Interface via
FrIf_Transmit(TxPDU-ID).
- 05: Eintritt in die zyklische Task
- Unterer Bestätigungspfad (Asynchron via Interrupt oder FrIf-MainFunction):
- 11:
FrIfmeldet erfolgreiche Übertragung über den FlexRay-Controller perFrTp_TxConfirmation. - 12: Rücksetzen des PDU-Status auf
TxPduState = "Idle"(Rückgabe der PDU an den Pool).
- 11:
- Flusssteuerung & Übertragungsabschluss (Folgende Zyklen von
FrTp_Main):- 13: Nächste Abarbeitung von
FrTp_Main. - 14–16 (Verzweigung Flusskontrolle):
- IF 14: FlowControl-Frame wird erwartet (z. B. nach First Frame oder Ablauf von BlockSize BS).
- THEN 15: Zustand verharrt im Wartezustand auf Empfang des FC-Frames (Überwachung von Timer N_Bs).
- ELSE 16: Kein FC erforderlich; direkter Sprung zu Schritt 17.
- 17–21 (Verzweigung Segmentierungsabschluss):
- IF 17: Alle Bytes der N-SDU wurden erfolgreich übertragen.
- THEN 18–20: Freigabe des Verbindungskanals (18), Rücksetzen des Flags
TX_SDU_AVAILABLE(19) und synchrone Benachrichtigung des PDU Routers überPduR_TxConfirmation(TxSDU-ID, E_OK)(20). - ELSE 21: Weiterer Datenübertragungsbedarf; Schleifenrücksprung zu Schritt 06 zur Übertragung des nächsten Consecutive Frames (CF).
- 13: Nächste Abarbeitung von
4. Normative Relevanz & Entwickler-Hinweise
- Puffer-Bereitstellungsstrategie:
- Im Modus Immediate Buffer Access (im PDU-Pool konfiguriert) ist die obere Schicht verpflichtet, bei Aufruf von
PduR_FrTpCopyTxDataunmittelbar Daten mit RückgabewertBUFREQ_OKzu liefern. Liefert der PduR/Upper-LayerBUFREQ_BUSY, muss FrTp die Übertragung verzögern oder nach Timeout (N_Cs) mit Fehler abbrechen.
- Im Modus Immediate Buffer Access (im PDU-Pool konfiguriert) ist die obere Schicht verpflichtet, bei Aufruf von
- Pool- & Ressourcen-Dimensionierung:
- Die Anzahl gleichzeitiger Verbindungen wird hart durch die Anzahl konfigurierter FrTp-Kanäle (
FrTpChannel) begrenzt. - Steht bei Schritt 07 keine freie
TxPDU-IDim PDU-Pool zur Verfügung (alle N-PDUs blockiert), blockiert die Übertragung des nächsten Segments, bisFrTp_TxConfirmation(Schritt 11/12) Ressourcen freigibt.
- Die Anzahl gleichzeitiger Verbindungen wird hart durch die Anzahl konfigurierter FrTp-Kanäle (
- Timing- und Scheduling-Abhängigkeit:
- Der zeitliche Abstand zwischen Segmenten wird durch die Zykluszeit der
FrTp_MainFunctionsowie den im FC-Frame ausgehandelten Trennungszeit-Parameter (ST_min) bestimmt. Eine Unterdimensionierung der Task-Frequenz führt zu Durchsatzeinbrüchen und potenziellen N_As/N_Bs-Timeout-Verletzungen.
- Der zeitliche Abstand zwischen Segmenten wird durch die Zykluszeit der
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.