DEENESPTFRRUARHIKOZHNL
AUTOSAR_CP_SWS_EthernetInterface FIG-742eb141ba2257e5 821 × 373 px 1 Release(s)

Figure 9.9: Link State Change

SHA-256 Inhalts-Fingerabdruck: 742eb141ba2257e5c36276df0b3b402e150bc653f78ec2d3c6da7eb1dda965bf
✦ 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

  • Diagrammtyp: UML-Sequenzdiagramm (Interaction Diagram).
  • Architektur-Kontext: AUTOSAR Classic Platform, 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, typischerweise EthSM). Die Abfrage kann konfigurierbar über ein kombiniertes Fragment (alt) entweder über die Empfangs-Hauptfunktion (EthIf_MainFunctionRx) oder eine separate Zustands-Hauptfunktion (EthIf_MainFunctionState) getriggert werden, gesteuert über das Vorhandensein des Konfigurationsparameters EthIfMainFunctionStatePeriod.

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).
Kontrollstrukturen & Schnittstellen
  • Kombiniertes Fragment alt:
    • Operand [EthIfMainFunctionStatePeriod NOT defined]: Ausführung des Link-State-Pollings im Kontext von EthIf_MainFunctionRx().
    • Operand [EthIfMainFunctionStatePeriod defined]: Ausführung des Link-State-Pollings im Kontext der separaten EthIf_MainFunctionState().
  • EthIf_MainFunctionRx():
    • Typ: Schedulable Entity / zyklische BSW-Hauptfunktion. Führt das Polling aus, wenn EthIfMainFunctionStatePeriod nicht definiert ist.
  • EthIf_MainFunctionState():
    • Typ: Schedulable Entity / zyklische BSW-Hauptfunktion. Führt das periodische Polling aus, wenn EthIfMainFunctionStatePeriod definiert ist.
  • 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 bzw. Doppelzeiger auf Ergebnisvariable vom Typ EthTrcv_LinkStateType.
    • Rückgabewert: Std_ReturnType (E_OK, E_NOT_OK).
  • UL_LinkStateChange(CtrlIdx, LinkState):
    • Typ: Konfigurierbarer synchroner Callback/Notification-Callout.
    • Implementierung: Typischerweise EthSM_TrcvLinkStateChg(uint8 CtrlIdx, EthTrcv_LinkStateType TransceiverLinkState).
    • Parameter: CtrlIdx (logischer EthIf-Controller-Index), LinkState (neuer Transceiver-Status).

3. Dynamisches Verhalten & Sequenzablauf

  1. Bedingter zyklischer Trigger (alt-Fragment):
    • Fall [EthIfMainFunctionStatePeriod NOT defined]: Der BSW Scheduler ruft periodisch EthIf_MainFunctionRx() auf :EthIf auf.
    • Fall [EthIfMainFunctionStatePeriod defined]: Der BSW Scheduler ruft periodisch EthIf_MainFunctionState() auf :EthIf auf.
  2. Synchrones Transceiver-Polling: Aus der jeweiligen Hauptfunktion heraus iteriert :EthIf über die konfigurierten Transceiver und ruft synchron EthTrcv_GetLinkState(Std_ReturnType, uint8, EthTrcv_LinkStateType*) auf :EthTrcv auf, um den aktuellen PHY-Status abzufragen.
  3. Zustandsprüfung / Filterung: :EthTrcv liefert den Status zurück. EthIf vergleicht das Ergebnis mit dem intern gecachten Link-Status des jeweiligen Controllers/Transceivers.
  4. Ereignis-Notification: Weicht der ausgelesene Status vom vorherigen Status ab (Flankenwechsel Link Up ↔ Link Down), transformiert EthIf den TrcvIdx auf den zugeordneten CtrlIdx und meldet die Statusänderung synchron via UL_LinkStateChange(CtrlIdx, LinkState) an den UL (EthSM).
  5. Rückkehr: Nach Abarbeitung der Statusänderung im State Manager kehrt der Kontrollfluss zu EthIf zurück und schließt den Ausführungszyklus der aufrufenden Hauptfunktion ab.

4. Normative Relevanz & Entwickler-Hinweise

  • Entkopplung von Empfangs- und Zustandsverarbeitung: Durch Einführung von EthIf_MainFunctionState() kann das Polling der Transceiver-Zustände unabhängig von der Frame-Empfangsverarbeitung (EthIf_MainFunctionRx) getaktet werden.
  • Konfigurationsgesteuertes Verhalten: Über den Konfigurationsparameter EthIfMainFunctionStatePeriod kann gesteuert werden, ob das abwärtskompatible Verhalten (Polling in Rx-Task) oder die entkoppelte Ausführung in einer eigenen Task gewählt wird.

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

R24-11 → R25-11 keine inhaltliche Änderung Vorgänger: FIG-3219f63034f5bbe5

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

UL «module» | :EthIf | «module» | :EthTrcv | alt | [EthIfMainFunctionStatePeriod NOT defined] | [EthIfMainFunctionStatePeriod defined] | EthIf_MainFunctionState() | EthTrcv_GetLinkState(Std_ReturnType, uint8, EthTrcv_LinkStateType**) | EthIf_MainFunctionRx() | UL_LinkStateChange(CtrlIdx, LinkState)

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_CP_SWS_EthernetInterface S. 211 9.9 Figure 9.9: Link State Change