Heute erfolgt der Datenaustausch zwischen den zahlreichen Steuergeräten, Sensoren und Aktoren in Kraftfahrzeugen weitestgehend über CAN-Netzwerke. Mit der Einführung der neuen x-by-wire Systeme ergeben sich jedoch erhöhte Anforderungen insbesondere an Fehlertoleranz und Echtzeitanforderung der Nachrichtenübertragung. FlexRay erfüllt diese erhöhten Anforderungen durch eine Nachrichtenübertragung in festen Zeitschlitzen und durch die fehlertolerante und redundante Nachrichtenübertragung auf zwei Kanälen.
Zugriff auf das Übertragungsmedium
FlexRay arbeitet nach dem Verfahren des TDMA (Time Division Multiple Access). Dabei sind den Komponenten bzw. Nachrichten feste Zeitschlitze zugewiesen, in denen sie einen exklusiven Zugriff auf den Bus haben. Die Zeitschlitze wiederholen sich in einem festgelegten Zyklus. Der Zeitpunkt, zu dem eine Nachricht über den Bus übertragen wird, kann exakt vorausgesagt werden, der Buszugriff erfolgt daher deterministisch.Die feste Zuordnung der Bus-Bandbreite auf die Komponenten bzw. Nachrichten durch feste Zeitschlitze hat aber den Nachteil, dass die Bandbreite nicht optimal ausgenutzt wird. Deshalb unterteilt FlexRay den Zyklus in einen statischen und einen dynamischen Teil. Die festen Zeitschlitze befinden sich im statischen Teil am Anfang eines Buszyklusses. Im dynamischen Teil werden die Zeitschlitze dynamisch vergeben. Darin wird der exklusive Buszugriff jeweils nur für eine kurze Zeit (den sog. "Minislots") ermöglicht. Nur wenn innerhalb eines Minislots ein Buszugriff erfolgt, wird der Zeitschlitz um die benötigte Zeit verlängert. Bandbreite wird also nur verbraucht, wenn sie auch tatsächlich benötigt wird.

Bild 1: FlexRay Kommunikationszyklus
Datenrate von FlexRay
FlexRay kommuniziert über zwei physikalisch getrennte Leitungen mit einer Datenrate von je 10 MBit/s. Die zwei Kanäle dienen hauptsächlich der redundanten und damit fehlertoleranten Übertragung von Nachrichten, können jedoch auch unterschiedliche Nachrichten übertragen, wodurch sich die Datenrate verdoppelt.FlexRay kann auch mit niedrigeren Datenraten von 2,5 oder 5 MBit/s betrieben werden. Für die Datenübertragung sind Bus-Topologien, aktive und passive Stern-Topologien sowie gemischte Topologien definiert.
Synchronisierung der Teilnehmer
Um synchrone Funktionen zu realisieren und die Bandbreite durch kleine Abstände zwischen zwei Nachrichten zu optimieren, benötigen die verteilten Komponenten im Kommunikationsnetzwerk eine gemeinsame Zeitbasis (globale Zeit). Für die Uhrensynchronisation werden spezifische statische Nachrichten als Synchronisationsnachrichten übertragen. Mit Hilfe eines speziellen Algorithmus wird die lokale Uhrzeit einer Komponente so korrigiert, dass alle lokalen Uhren zu einer globalen Uhr synchron laufen.Struktur eines FlexRay-Netzknotens
Ein FlexRay-Netzknoten besteht aus Host-Prozessor, FlexRay-Communication-Controller (CC), optionalem Bus-Guardian (BG) und Bus-Treiber (BD). Der Host-Prozessor liefert und verarbeitet die Daten, die über den FlexRay-Controller übertragen werden.Über den Bus-Treiber erfolgt die Anschaltung an den Bus, der Bus-Guardian überwacht den Zugriff auf den Bus. Der Host-Prozessor teilt hierbei dem Bus-Guardian mit, welche Zeitschlitze der FlexRay-Controller belegt hat. Der Bus-Guardian erlaubt dann dem FlexRay-Controller nur in diesen Zeitschlitzen den Sendezugriff. Der Empfang von Daten ist jederzeit möglich.

Bild 2: FlexRay Netzknoten
