Buszugriffsverfahren und Erweiterung durch TTCAN

Innerhalb des CAN-Systems wird ein dezentrales Verfahren für den Buszugriff eingesetzt. Aufgrund der Eigenschaften dieses CSMA/CA-Verfahrens, ist ein gleichzeitiger Sendewunsch mehrerer Teilnehmer möglich. Eine Priorisierung, und damit eine Vermeidung von Konflikten, wird durch die sogenannte Arbitrierungsphase vorgenommen. Außerdem waren die Fähigkeiten zur deterministischen Datenübertragung, des im 1986 veröffentlichten CAN-Protokoll, begrenzt. Erhöhte Anforderungen gaben daher den Ausschlag zur Entwicklung des TTCAN-Netzwerks, welches die Steuerung des zeitlichen Ablaufs übernimmt. Dieser Beitrag wird sowohl das Buszugriffsverfahren durch die Arbitrierungsphase, als auch die Erweiterung des CAN-Systems durch TTCAN, näher erläutern und die Prinzipien detailliert darstellen.

Regelung des Buszugriffsverfahrens durch den Arbitrierungsvorgang

Das Buszugriffsverfahren ist für die Regelung der Zugriffe verantwortlich, die durch die Teilnehmer des Busses ausgelöst werden. Dabei wird zwischen dem deterministischen, also dem kontrollierten, Verfahren und dem zufälligen Verfahren unterschieden. Bei letzterem wird der gleichzeitige Zugriff mehrerer Teilnehmer zugelassen, wobei es kollisionsfreie und nicht kollisionsfreie Verfahren gibt.

Bei einem deterministischen Buszugriffsverfahren liegt ein kontrollierter Vorgang vor, der einen parallelen Zugriff mehrerer Teilnehmer ausschließt und gleichzeitig eine zeitliche Vorhersage zum Antwortverhalten des Bussystems ermöglicht. Das kontrollierte Verfahren kann zentral oder dezentral gesteuert werden. Die Vorteile der zentralen Steuerung des Buszugriffes sind in der geringen Komplexität der Steuerungslogistik zu sehen, was jedoch auch eine höhere Abhängigkeit von der Funktion des Steuergerätes schafft.

Das CAN-System nutzt ein CSMA/CA-Verfahren (Carrier Sense Multiple Access/Collision Avoidance). Bei diesem Buszugriffsverfahren handelt es sich um ein zufälliges Verfahren, welches Kollisionen vollständig vermeidet. Dies wird durch eine Arbitrierungsphase erreicht, die dem Sendevorgang vorgeschaltet ist.

Während der Phase werden durch einen bitweisen Vergleich, diejenigen Knoten ermittelt, welche die höchste Priorität aufweisen. Die konkurrierenden Knoten, die im Vergleich unterlegen waren, entfernen sich vom Bus und unternehmen anschließend einen erneuten Sendeversuch. Der bitweise Vergleich in der Arbitrierungsphase basiert auf zwei festgelegten Buspegeln. Dabei handelt es sich um den überstimmenden Low-Pegel und dem nachgebenden High-Pegel.

Der Arbitrierungsvorgang ist im CAN-System klar strukturiert. Er setzt sich aus dem Start of Frame (SOF), dem Identifier, dem Remote Transmission Request (RTR), dem Steuerfeld und dem Datenfeld zusammen. Der Sendevorgang einer CAN-Botschaft beginnt mit dem überstimmenden SOF. Anschließend führt der Identifier einen bitweisen Verglich der drei konkurrierenden Netzknoten durch.

Alle arbitrierenden Teilnehmer vergleichen den Wert des aktuellen Bit auf dem Bus, mit den von ihm aufgeschalteten Bits. Wenn nun ein Teilnehmer mit einem High-Pegel auf einen Low-Pegel trifft, zieht er sich aufgrund der geringeren Priorität zurück und unternimmt einen erneuten Sendeversuch. Der dominante Teilnehmer kann nach Abschluss der Arbitrierung, die Nachricht ohne Verluste senden, was diesem Verfahren auch den Namen „verlustlose Arbitrierung“ einbringt.

Erweiterung des CAN-Systems durch TTCAN

Wie eingangs bereits erwähnt wurde, ist die deterministische Datenübertragung des CAN-Systems limitiert. Aufgrund dieser Beschränkung und unter Berücksichtigung zukünftiger sicherheitsrelevanter Regelsysteme, wurde das CAM-System um eine zeitgesteuerte Nachrichtenübertragung erweitert. Diese funktioniert nach dem Prinzip des TDMA (Time Division Multiple Access) und ist in der ISO 11898-4 (IS5) spezifiziert.

Bei dem TDMA-Verfahren handelt es sich um ein dezentral gesteuertes, deterministisches Buszugriffsverfahren, das zeitgesteuert abläuft. Das zeitgesteuerte Verfahren bietet jedem Teilnehmer exklusive Zeitfenster, in welchem der Bus benutzt werden kann. Die Zuteilung des Zeitschlitzes ist zyklisch und typischerweise für jede Botschaft genauso lang. Eine wichtige Voraussetzung dieses Mechanismus, ist eine hohe Synchronität aller sich im System befindlichen Zeitblasen.

In dem TTCAN-Netzwerk übernimmt ein Netzknoten die Steuerung des zeitlichen Ablaufs. Dieser Knoten wird auch als Time Master betitelt, welcher die zyklische Basiskommunikation durch Referenz-Nachrichten startet. Innerhalb des Basiszyklus findet die Übertragung der Botschaften statt, die durch Zeitmarkierungen voneinander getrennt werden.

Die Zeitfenster, die jedem Teilnehmer zur Kommunikation mit dem Bussystem eingeräumt werden, können exklusiv, arbitrierend oder frei sein. Ersteres liegt vor, wenn eine zyklische Nachricht ohne Buskonflikt übertragen werden soll und dafür der Mechanismus der kontrollierten Datenübertragung benötigt wird. Für eine ereignisgesteuerte Übertragung nach dem CSMA/CA-Verfahren, dient das arbitrierende Zeitfenster. Für spätere Erweiterungen sind die freien Zeitfenster vorgesehen.

Ereignissteuerung durch TTCAN

Zusammenfassend kann festgehalten werden, dass mit der Erweiterung des CAN-Netzwerks durch TTCAN, ein zeitgesteuertes Protokoll zur Verfügung steht. Dieses erlaubt eine nahezu freie Skalierbarkeit zwischen zeitgesteuerten und ereignisgesteuerten Systemen, wodurch die Vorteile beider Systeme ausgeschöpft werden können.

TTCAN kann einen Migrationspfad zu bereits bestehenden, ereignisgesteuerten CAN-Anwendungen anbieten und damit eine Zeitsteuerung ermöglichen. Auch wenn viele Kommunikationssysteme bereits von der Zeitsteuerung profitieren, gibt es dennoch Fälle, in denen nicht alle Buszugriffe einem starren Raster folgen sollen. Dann tritt der Anwenderwunsch nach mehr Flexibilität, zwischen ereignis- und zeitgesteuerten Funktionalitäten, auf, welchem durch die Erweiterung mit TTCAN genüge getan wird.

Ein weiterer Vorteil von TTCAN sind die geringen Kosten, bei gleichzeitig hoher Qualität in der Synchronisierung der Netzwerkzeit. Die Echtzeitperformance von CAN-Netzwerken wird durch das TTCAN-Protokoll erhöht, wodurch dieses zu einer günstigen Kommunikationsschicht für eine Vielzahl von Anwendungen wird.