AUTOSAR_SWS_EthernetInterface
FIG-e9cc4258f9d6866c
875 × 332 px
1 Release(s)
Figure 9.7: Link State Change
SHA-256 Inhalts-Fingerabdruck:
e9cc4258f9d6866cb39587b58f691e3cf669397d68cbe3d8d3277402b179fab5
✦
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
- Diagrammtyp: UML-Sequenzdiagramm (Interaction Diagram).
- Architektur-Kontext: AUTOSAR Classic Platform (Release R4.0.3), Communication Stack, Ethernet-Subsystem (BSW).
- Funktionale Einordnung: Dargestellt wird die zyklische Überwachung und Propagierung von Link-Statusänderungen (Ethernet PHY Link Up/Down) mittels Polling über das Ethernet Interface (
EthIf) an übergeordnete Schichten (Upper Layer, typischerweiseEthSM). In Release R4.0.3 ist dieser Polling-Mechanismus architekturell innerhalb der Empfangs-Hauptfunktion (EthIf_MainFunctionRx) verankert.
2. Komponenten, Entitäten & Schnittstellen
Akteure & Lifelines
UL(Upper Layer): Generische Repräsentation der übergeordneten BSW-Schicht, primär der Ethernet State Manager (EthSM), optional Netzwerkmanagement oder IP-Stack (TcpIp).«module» :EthIf: BSW-Schicht Ethernet Interface (HAL-Abstraktion). Kapselt Controller- und Transceiver-Hardwaretreiber und verwaltet Controller-Indizes (CtrlIdx).«module» :EthTrcv: MCAL-/Hardwareabstraktions-Treiber Ethernet Transceiver Driver. Bedient die Hardwareschnittstelle zum physischen Ethernet-PHY (z. B. via MDIO/SMI).
Schnittstellen & Aufrufsignaturen
EthIf_MainFunctionRx():- Typ: Schedulable Entity / zyklische BSW-Hauptfunktion (Aufruf über BSW-Scheduler / SchM).
- Kontext: Führt im R4.0.3-Standard neben dem Frame-Empfang auch das Polling des Transceiver-Link-Status aus.
EthTrcv_GetLinkState(Std_ReturnType, uint8, EthTrcv_LinkStateType**):- Typ: Synchrone MCAL-Treiber-API (
EthTrcv_GetLinkState(uint8 TrcvIdx, EthTrcv_LinkStateType* LinkStatePtr)). - Parameter:
TrcvIdx(Index des Transceivers), Zeiger auf Ergebnisvariable vom TypEthTrcv_LinkStateType(ETHTRCV_LINK_STATE_ACTIVE,ETHTRCV_LINK_STATE_DOWN). - Rückgabewert:
Std_ReturnType(E_OK,E_NOT_OK).
- Typ: Synchrone MCAL-Treiber-API (
UL_LinkStateChange(CtrlIdx, LinkState):- Typ: Konfigurierbarer synchroner Callback/Notification-Callout.
- Implementierung: Typischerweise
EthSM_TrcvLinkStateChg(uint8 CtrlIdx, EthTrcv_LinkStateType TransceiverLinkState). - Parameter:
CtrlIdx(logischerEthIf-Controller-Index),LinkState(neuer Transceiver-Status).
3. Dynamisches Verhalten & Sequenzablauf
- Zyklischer Trigger: Der BSW Scheduler (OS Task) ruft die periodische Funktion
EthIf_MainFunctionRx()auf der Instanz:EthIfauf. - Synchrones Transceiver-Polling:
EthIfiteriert über die konfigurierten Transceiver und ruft synchronEthTrcv_GetLinkState(...)auf:EthTrcvauf, um den aktuellen PHY-Status über die Hardwareschnittstelle (MII/MDIO) abzufragen. - Zustandsprüfung / Filterung:
:EthTrcvliefert den Status zurück.EthIfvergleicht das Ergebnis mit dem intern gecachten Link-Status des jeweiligen Controllers/Transceivers. - Ereignis-Notification: Weicht der ausgelesene Status vom vorherigen Status ab (Flankenwechsel Link Up ↔ Link Down), transformiert
EthIfdenTrcvIdxauf den zugeordnetenCtrlIdxund meldet die Statusänderung synchron viaUL_LinkStateChange(CtrlIdx, LinkState)an denUL(EthSM). - Rückkehr: Nach Abarbeitung der Statusänderung im State Manager kehrt der Kontrollfluss zu
EthIfzurück undEthIf_MainFunctionRx()schließt ihren Ausführungszyklus ab.
4. Normative Relevanz & Entwickler-Hinweise
- Kopplung an Rx-Task (R4.0.3-Spezifikum): In R4.0.3 erfolgt das Polling innerhalb von
EthIf_MainFunctionRx. Entwickler müssen beachten, dass langsame Hardware-Zugriffe (z. B. blockierendes MDIO-Bitbanging oder synchrone SMI-Transfers inEthTrcv_GetLinkState) direkte Jitter- und Latenzeffekte auf das Rx-Packet-Processing haben können. (Hinweis: In späteren AUTOSAR-Releases wurde dies in separate State-MainFunctions wieEthIf_MainFunctionStateentkoppelt). - Konfigurationsparameter (ECUC):
- Verknüpfung der Callbacks über
EthIfDispatchNotificationbzw.EthIfTrcvLinkStateChgNotificationFunction(statische Bindung aufEthSM_TrcvLinkStateChg). - Zuordnung der Entitäten über
EthIfEthTrcvRefund Zuordnung des logischenEthIfCtrlzum physischenEthTrcv.
- Verknüpfung der Callbacks über
- Link-Prellen & Flapping: Der Treiber muss ein Prellen des physikalischen Links (z. B. während der Auto-Negotiation) berücksichtigen. Statuswechsel sollten erst signalisiert werden, wenn der Hardware-Link stabil ist, um kaskadierende Zustandswechsel im
EthSM(Mode-Request-Kaskaden, IP-Adressfreigaben imTcpIp) zu verhindern. - Fehlerbehandlung: Schlägt
EthTrcv_GetLinkStatemitE_NOT_OKfehl, darfEthIfkeine Zustandsänderung an denULmelden; es erfolgt eine Meldung an das DET (ETHIF_E_INV_TRCV_IDXbzw. Laufzeitfehler je nach Spezifikationsstand).
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.