Einführung in FlexRay

     
FlexRay Controller
12/31


Der FlexRay Controller entlastet den Host bei sämtlichen Kommunikationsfunktionen (siehe interaktive Grafik „FlexRay Knoten“). Mit dem Host ist der FlexRay Controller über das sog. CHI (Controller Host Interface) verbunden. In der CHI untergebracht sind frei konfigurierbare Puffer für Sende- und Empfangsbotschaften. Puffer für Empfangsbotschaften sind zusätzlich mit Akzeptanzfilter ausgestattet. In der CHI sind auch Status- und Steuerregister untergebracht.

Den Kern des FlexRay Controllers stellt die „Protocol Engine“ dar (siehe interaktive Grafik „FlexRay Knoten“). Sie setzt sich aus mehreren Kommunikationskomponenten zusammen. So sorgt die Komponente „Media Access Control (MAC)“ für den Buszugriff. Die Komponente „Coding“ übernimmt das Codieren der vom MAC erhaltenen Bytes. Die Komponente „Decoding“ übernimmt das Decodieren des vom FlexRay Transceiver erhaltenen logischen Bitstroms.

Die Komponente „Frame & Symbol Processing (FSP)“ überprüft die Einhaltung des dem FlexRay Cluster zugrunde gelegten Kommunikationszyklus genauso wie die Empfangsbotschaften auf Übertragungsfehler. Für die Synchronisierung des FlexRay Knotens sorgt die Komponente „Clock Synchronization Process“. Die Komponente „Wake Up & Start Up“ kümmert sich um den Wake Up und Start Up.

Ein FlexRay Controller kann in Abhängigkeit des Kommunikationsfortschrittes acht unterschiedliche Zustände einnehmen (siehe Grafik „Controllerzustände“). Jeder Controllerzustand ist durch bestimmte kommunikationsspezifische Tätigkeiten gekennzeichnet, bei denen ganz bestimmte Kommunikationskomponenten aktiv sind. Für die Controllerzustandsübergänge ist die Kommunikationskomponente „Protocol Operation Control (POC)“ verantwortlich.
 

FlexRay Knoten

FlexRay Knoten

Controllerzustände

Controllerzustände

Controllerzustände

Vertiefung

Nach Anlegen der Betriebsspannung nimmt der FlexRay-Controller den Zustand „Default Config“ solange ein, bis er vom Host in den Zustand „Config“ versetzt wird, um konfiguriert zu werden. Nach Abschluss versetzt der Host den FlexRay-Controller in den Zustand „Ready“: der FlexRay-Controller ist zwar betriebsbereit, muss aber noch den Startup durchlaufen. Allerdings kann der FlexRay-Controller in diesem Zustand bereits sog. „Wakeup Patterns“ empfangen. Nach Empfang eines selbigen wechselt der FlexRay-Controller in den Zustand „Wake Up“, den er auch einnehmen muss, wenn er den FlexRay-Cluster wecken will. Über den Zustand „Startup“ gelangt ein FlexRay-Controller in den Betriebszustand („Normal Active“): der FlexRay-Controller nimmt an der FlexRay-Kommunikation teil.

In die Zustände „Normal Passive“ und „Halt“ wechselt der FlexRay-Controller nach Detektion bestimmter Fehler. Im Zustand „Normal Passive“ kann ein FlexRay-Controller nur noch empfangen. Im Zustand „Halt“ stoppt der FlexRay-Controller alle internen Prozesse und muss im Anschluss daran in den Zustand „Default Config“ wechseln.

Der Host kann den Controller von jedem Zustand aus in den Zustand „Halt“ versetzen. Der Host kann den Controller von den Zuständen „Wake Up“, „Startup“, „Normal Active“ und „Normal Passive“ in den Zustand „Ready“ versetzen.

© 2006-2010 Vector Informatik GmbH. 2009-10-28