DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_CANTransportLayer FIG-d26c88460396078f 926 × 712 px 1 Release(s)

Figure 3: CAN Transport Layer life cycle 7.1.2 Transmit request The transmit operation, CanTp_Transmit(), will allow upper layers to ask for data transfer using CAN transport protocol facilities (segmentation, extended addressing format and so on).

SHA-256 Inhalts-Fingerabdruck: d26c88460396078fac390b08815c862e213e415801131f05d3449775e594a695
✦ 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-Zustandsdiagramm (stm CanTp Life Cycle) zur Modellierung des Lebenszyklus und der Betriebsmodi des BSW-Moduls CAN Transport Layer (CanTp) innerhalb der AUTOSAR Classic Platform (Communication Stack / ComStack). Das Modul vermittelt zwischen der CAN-Treiberschicht (CanIf) und oberen Schichten (wie PduR und Dcm) und realisiert Transportprotokollmechanismen gemäß ISO 15765-2 (Segmentierung, Reassemblierung, Flusskontrolle). Das Diagramm spezifiziert die globalen Modulzustände sowie das nebenläufige Kanalzustandsmodell für parallele Übertragungsinstanzen.

2. Komponenten, Entitäten & Schnittstellen

  • Modulzustände (Hauptzustände):
    • CANTP_OFF: Deinitialisierter Ruhezustand des BSW-Moduls.
    • CANTP_ON: Aktiver Betriebszustand; hierarchischer Verbundzustand mit orthogonalen Regionen zur parallelen Kanalabwicklung.
  • Kanal-Subzustände innerhalb von CANTP_ON:
    • [Rx Connection Channel]: Region für Empfangskanäle mit den Subzuständen CANTP_RX_WAIT (Warten auf Empfang) und CANTP_RX_PROCESSING (laufende Reassemblierung/Verarbeitung).
    • [Tx Connection Channel]: Region für Sendekanäle mit den Subzuständen CANTP_TX_WAIT (Warten auf Sendeauftrag) und CANTP_TX_PROCESSING (laufende Segmentierung/Übertragung).
    • [Other Connection Channel]: Region für weitere Verbindungskanäle nach identischem Verhaltensmuster (CANTP_Xx_WAIT und CANTP_Xx_PROCESSING).
  • Pseudozustände: Initial-Pseudozustand (oberste Ebene), lokale Initial-Pseudozustände (Init) je orthogonaler Region sowie Endzustand (PowerDown).
  • Schnittstellen und Ereignisse:
    • APIs des BSW-Moduls: CanTp_Init() (mit Guards [with error] und [without error]), CanTp_Shutdown().
    • Kommunikationsereignisse: Transmit N-SDU (ausgelöst durch CanTp_Transmit()), Receive N-PDU (ausgelöst durch CanTp_RxIndication()).
    • Systemereignisse: PowerUp, PowerDown (gesteuert durch ECU State Manager / EcuM bzw. BswM).

3. Dynamisches Verhalten & Sequenzablauf

  • Initialisierung:
    • Nach Systemstart (PowerUp) tritt das Modul in den Zustand CANTP_OFF ein.
    • Ein fehlerhafter Aufruf CanTp_Init() [with error] führt über eine Selbsttransition zurück nach CANTP_OFF.
    • Ein erfolgreicher Aufruf CanTp_Init() [without error] überführt das Modul von CANTP_OFF nach CANTP_ON.
    • CanTp_Shutdown() im Zustand CANTP_OFF verbleibt via Selbsttransition in CANTP_OFF.
  • Betrieb innerhalb von CANTP_ON:
    • Beim Eintritt in CANTP_ON wechseln alle orthogonalen Regionen über ihre jeweiligen lokalen Init-Transitionen in den Wartezustand (CANTP_RX_WAIT bzw. CANTP_TX_WAIT).
    • Im Empfangskanal führt der Eingang einer N-PDU (Receive N-PDU) in CANTP_RX_PROCESSING. Sobald alle N-PDUs der Botschaft verarbeitet sind oder keine weiteren erwartet werden ([no more N-PDU expected]), erfolgt der Rücksprung nach CANTP_RX_WAIT.
    • Im Sendekanal bewirkt die Sendeanforderung (Transmit N-SDU) den Übergang nach CANTP_TX_PROCESSING. Nach vollständiger Übertragung aller Fragmente ([no more N-SDU to transmit]) kehrt der Kanal nach CANTP_TX_WAIT zurück.
    • Ein erneuter Aufruf von CanTp_Init() während CANTP_ON triggert eine externe Selbsttransition auf CANTP_ON, wodurch sämtliche Kanäle reinitialisiert und in ihre jeweiligen Wartezustände zurückgesetzt werden.
  • Beendigung:
    • Der Aufruf CanTp_Shutdown() in CANTP_ON führt zurück in den Zustand CANTP_OFF.
    • Aus beiden Hauptzuständen (CANTP_OFF und CANTP_ON) terminiert das Systemereignis PowerDown direkt in den Endzustand.

4. Normative Relevanz & Entwickler-Hinweise

  • Normative Vorbedingungen: Im Zustand CANTP_OFF ist das Modul uninitialisiert; alle Datenübertragungs- und Management-APIs (z. B. CanTp_Transmit(), CanTp_CancelTransmit(), CanTp_CancelReceive(), CanTp_ChangeParameter()) müssen mit Fehlercode (DET CANTP_E_UNINIT) abgewiesen werden.
  • Nebenläufigkeit und Kanalisolation: Die orthogonalen Regionen spiegeln die geforderte Unabhängigkeit mehrerer logischer Übertragungskanäle (CanTpChannel) wider. Jeder Kanal verwaltet seine eigenen internen Protokollzeitgeber (N_Ar, N_As, N_Br, N_Bs, N_Cr, N_Cs gemäß ISO 15765-2) sowie Pufferreferenzen autark.
  • Re-Initialisierungsverhalten: Die Selbsttransition an CANTP_ON via CanTp_Init() erzwingt den sofortigen Abbruch aller laufenden Empfangs- und Sendevorgänge über alle Kanäle hinweg. Puffer müssen freigegeben und betroffene obere Schichten über den Verbindungsabbruch informiert werden.
  • Geordnetes Herunterfahren: Vor dem Auslösen von CanTp_Shutdown() muss sichergestellt werden, dass keine unvollständigen N-SDU-Transfers verbleiben, da der Moduswechsel nach CANTP_OFF laufende Reassemblierungen und Übertragungen hart abbricht.

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

R19-11 → R20-11 keine inhaltliche Änderung Vorgänger: FIG-44b91b26b6f356a5

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Erkannte Spezifikationsbelege & Anforderungen auf dieser Seite

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

stm CanTp Life Cycle | CANTP_ON | [Rx Connection Channel] | [Tx Connection Channel] | [Other Connection Channel] | Init | Init | CANTP_RX_WAIT CANTP_RX_PROCESSING | CANTP_TX_WAIT CANTP_TX_PROCESSING | CANTP_OFF | - Based on the same substates: CANTP_Xx_WAIT and CANTP_Xx_PROCESSING, | - Based on the same transitions: Receive/transmit and no more N-PDU. | Receive N-PDU | CanTp_Init ( ) [without error] | CanTp_Init ( ) [no more N-PDU expected] | CanTp_Shutdown() CanTp_Init ( ) [with error] | CanTp_Shutdown ( ) | PowerUp | PowerDown | PowerDown | Transmit N-SDU | [no more N-SDU to transmit]

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R20-11 AUTOSAR_SWS_CANTransportLayer S. 25 3 Figure 3: CAN Transport Layer life cycle 7.1.2 Transmit request The transmit operation, CanTp_Transmit(), will allow upper layers to ask for data transfer using CAN transport protocol facilities (segmentation, extended addressing format and so on).