Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
CONFLICT DETECTOR FOR A SUBSCRIBER STATION OF A SERIAL BUS SYSTEM AND METHOD FOR COMMUNICATION IN A SERIAL BUS SYSTEM
Document Type and Number:
WIPO Patent Application WO/2021/028269
Kind Code:
A1
Abstract:
The invention relates to a conflict detector (15; 15A; 15B; 15C; 25; 35) for a serial bus system (1) and a method for detecting a bus conflict in a serial bus system (1). The conflict detector (15; 15A; 15B; 15C; 25; 35) has at least one counter (150; 152) for counting the occurrence of a property of pulses of a digital received signal (RxD; RxD1), which is generated by the subscriber station (10; 20; 30) from a signal (VDIFF) which is serially received from a bus (40) of the bus system (1), wherein the signal (VDIFF) received from the bus (40) was formed from a transmission signal (TxD; TxDI; TxD2) that was sent serially to the bus (40) from a communication control device (11) of the subscriber station (10; 20; 30) for a frame (450), and wherein, in a first communication phase (451; 453, 451), the subscriber station (10; 20; 30) generates bus states (401; 402) for the frame (450) by means of a first operating mode and, in a second communication phase (452), generates bus states (401; 402; U_D0; U_D1) for the frame (450) by means of a second operating mode, which differs from the first operating mode, and a comparison block (153; 153A; 153B; 153C), which is designed to compare a measurement result determined from a counted measurand (Zasym; Zrx) of the at least one counter (150; 152) to at least one threshold value (Ts) and, by means of a conflict indicator signal (S_K), to indicate for the communication control device (11) when the comparison block (153; 153A; 153B; 153C) determines in the comparison that the subscriber station (10; 20; 30) has no exclusive, collision-free access to the bus (40) in the second communication phase (452).

Inventors:
HARTWICH FLORIAN (DE)
WALKER STEFFEN (DE)
MUTTER ARTHUR (DE)
VAFI DARIUS (DE)
Application Number:
PCT/EP2020/071919
Publication Date:
February 18, 2021
Filing Date:
August 04, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BOSCH GMBH ROBERT (DE)
International Classes:
H04L12/40
Domestic Patent References:
WO2019030080A12019-02-14
Foreign References:
DE102011106687A12013-01-10
DE102015209196A12016-03-10
US20100124298A12010-05-20
Download PDF:
Claims:
Ansprüche

1) Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) für eine Teilnehmerstation (10; 20; 30) für ein serielles Bussystem (1), mit mindestens einem Zähler (150; 152) zum Zählen des Auftretens einer Eigenschaft von Pulsen eines digitalen Empfangssignals (RxD; RxDl), das von der Teilnehmerstation (10; 20; 30) aus einem von einem Bus (40) des Bussystems (1) seriell empfangenen Signal (VDIFF) erzeugt wird, wobei das von dem Bus (40) empfangene Signal (VDIFF) aus einem Sendesignal (TxD; TxDl; TxD2) gebildet wurde, das von einer Kommunikationssteuereinrichtung (11) der Teilnehmerstation (10; 20; 30) für einen Rahmen (450) seriell zu dem Bus (40) gesendet wurde, und wobei die Teilnehmerstation (10; 20; 30) in einer ersten Kommunikationsphase (451; 453, 451) Buszustände (401; 402) für den Rahmen (450) mit einer ersten Betriebsart erzeugt und in einer zweiten Kommunikationsphase (452) Buszustände (401; 402; U_D0; U_D1) für den Rahmen (450) mit einer zweiten Betriebsart erzeugt, die sich von der ersten Betriebsart unterscheidet, und einem Vergleichsblock (153; 153A; 153B; 153C), der ausgestaltet ist, ein aus einem Zählwert (Zasym; Zrx) des mindestens einen Zählers (150; 152) ermitteltes Messergebnis mit mindestens einem Schwellwert (Ts) zu vergleichen und mit einem Konfliktanzeigesignal (S_K) für die Kommunikationssteuereinrichtung (11) anzuzeigen, wenn der Vergleichsblock (153; 153A; 153B; 153C) bei dem Vergleich ermittelt, dass die Teilnehmerstation (10; 20; 30) in der zweiten Kommunikationsphase (452) keinen exklusiven, kollisionsfreien Zugriff auf den Bus (40) hat.

2) Konfliktdetektor (15; 15B; 15C; 25; 35) nach Anspruch 1, wobei die Eigenschaft von Pulsen des digitalen Empfangssignals (RxD; RxDl) der Pegel des Pulses ist, und wobei der mindestens eine Zähler (150; 152) zum Zählen der Häufigkeit des Auftretens eines ersten Pegels des digitalen Empfangssignals (RxD; RxDl) über der Zeit ausgestaltet ist oder der mindestens eine Zähler (150) ausgestaltet ist, beim Auftreten eines ersten Pegels des digitalen Empfangssignals (RxD; RxDl) seinen Zählwert (Zrx) zu inkrementieren und beim Auftretens des zweiten Pegels des digitalen Empfangssignals (RxD; RxDl) seinen Zählwert (Zrx) zu dekrementieren.

3) Konfliktdetektor (15; 15B; 15C; 25; 35) nach Anspruch 1 oder 2, wobei die Eigenschaft von Pulsen des digitalen Empfangssignals (RxD; RxDl) die Pulslänge (TI; T2; T3) des Pulses ist.

4) Konfliktdetektor (15B; 25; 35) nach einem der vorangehenden Ansprüche, wobei der mindestens eine Zähler (150; 152) und/oder der Vergleichsblock (153B) ausgestaltet sind/ist, zur Ermittlung der Eigenschaft von Pulsen des digitalen Empfangssignals (RxD; RxDl) ein Status-Signal (S_l) der Kommunikationssteuereinrichtung (11) zu verwenden, das den Takt zum Abtasten von Bits des digitalen Empfangssignals (RxD; RxDl) über der Zeit und/oder den Takt der Kommunikationssteuereinrichtung (11) umfasst.

5) Konfliktdetektor (15C; 25; 35) nach Anspruch 3, wobei der Vergleichsblock (153C) ausgestaltet ist, die Pulslänge (TI; T2, T3) eines Pulses des digitalen Empfangssignals (RxD; RxDl) mit einer Pulslänge (T4; T5, T6) eines Pulses des Sendesignals (TxD; TxDl; TxD2; TxD_d) zu vergleichen, um zu ermitteln, ob die Teilnehmerstation (10; 20; 30) in der zweiten Kommunikationsphase (452) keinen exklusiven, kollisionsfreien Zugriff auf den Bus (40) hat.

6) Konfliktdetektor (15A; 25; 35) nach Anspruch 1, wobei die Eigenschaft von Pulsen des digitalen Empfangssignals (RxD; RxDl) der Unterschied des Pegels des Pulses zu dem entsprechenden Pegel eines Pulses des Sendesignals (TxD; TxDl; TxD2; TxD_d) ist. 7) Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) nach einem der vorangehenden Ansprüche, zudem mit mindestens einem zusätzlichen Zähler (151) zum Zählen des Auftretens einer Eigenschaft von Pulsen des digitalen Sendesignals (TxD; TxDl; TxD2; TxD_d), wobei der Vergleichsblock (153; 153A; 153B; 153C) ausgestaltet ist, ein aus dem Zählwert (Ztx) des mindestens einen zusätzlichen Zählers (151) ermitteltes Messergebnis mit mindestens einem Schwellwert (Ts) zu vergleichen, um zu ermitteln, ob die Teilnehmerstation (10; 20; 30) in der zweiten Kommunikationsphase (452) keinen exklusiven, kollisionsfreien Zugriff auf den Bus (40) hat.

8) Konfliktdetektor (15; 25; 35) nach Anspruch 7, wobei der Vergleichsblock (153) ausgestaltet ist, einen Zählwert (Zrx) des mindestens einen Zählers (152), der zum Zählen des Auftretens einer Eigenschaft von Pulsen des digitalen Empfangssignals (RxD; RxDl) vorgesehen ist, zu vergleichen mit einem Zählwert (Ztx) des mindestens einen zusätzlichen Zählers (151), der zum Zählen des Auftretens einer Eigenschaft von Pulsen des digitalen Sendesignals (TxD; TxDl; TxD2; TxD_d) vorgesehen ist, um anhand einer sich ändernden Differenz der verglichenen Zählwerte (Zrx, Ztx) zu ermitteln, ob die Teilnehmerstation (10; 20; 30) in der zweiten Kommunikationsphase (452) keinen exklusiven, kollisionsfreien Zugriff auf den Bus (40) hat.

9) Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) nach Anspruch 7 oder 8, wobei der Konfliktdetektor (15A; 25; 35) ausgestaltet ist, als Sendesignal ein verzögertes Sendesignal (TxD_d) zu verwenden, das um eine Laufzeit (TLD) verzögert ist, die das Sendesignal (TxD; TxDl; TxD2) benötigt, um von einem TxD-Anschluss der

Kommunikationssteuereinrichtung (11) über den Bus (40) zu einem RxD- Anschluss der Kommunikationssteuereinrichtung (11) zu gelangen.

10) Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) nach einem der vorangehenden Ansprüche, zudem mit mindestens einem Zähler zum Zählen von steigenden und/oder fallenden Flanken der Pulse des digitalen Empfangssignals (RxD; RxDl) oder des Sendesignals (TxD; TxDl; TxD2; TxD_d).

11) Teilnehmerstation (10; 20; 30) für ein serielles Bussystem (1), mit einer Kommunikationssteuereinrichtung (11; 21; 31) zum Steuern einer Kommunikation der Teilnehmerstation (10; 20; 30) mit mindestens einer anderen Teilnehmerstation (10; 20; 30) des Bussystems (1), einer Sende-/Empfangseinrichtung (12; 22; 32) zum Senden eines von der Kommunikationssteuereinrichtung (11; 21; 31) für einen Rahmen (450) erzeugten Signals (TxD; TxDl; TxD2) auf einen Bus (40) des Bussystems (1) und zum Empfangen eines Signals (VDIFF) von dem Bus (40), und einem Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) nach einem der vorangehenden Ansprüche, wobei die Sende-/Empfangseinrichtung (12; 22; 32) in einer ersten Kommunikationsphase (451; 453, 451) Buszustände (401; 402) für den Rahmen (450) mit einer ersten Betriebsart erzeugt und in einer zweiten Kommunikationsphase (452) Buszustände (401; 402; U_D0; U_D1) für den Rahmen (450) mit einer zweiten Betriebsart erzeugt, die sich von der ersten Betriebsart unterscheiden.

12) Teilnehmerstation (10; 20; 30) nach Anspruch 11, wobei die Buszustände (401, 402) des in der ersten Kommunikationsphase (451; 453, 451) von dem Bus (40) empfangenen Signals (VDIFF) eine längere Bitzeit (T_bl) haben als die Buszustände (U_D0, U_D1) des in der zweiten Kommunikationsphase (452) empfangenen Signals und/oder die Buszustände (401, 402) des in der ersten Kommunikationsphase (451; 453, 451) von dem Bus (40) empfangenen Signals mit einem anderen Physical Layer erzeugt wurden als die Buszustände (U_D0, U_D1) des in der zweiten Kommunikationsphase (452) empfangenen Signals, und wobei die Kommunikationssteuereinrichtung (11; 21; 31) ausgestaltet ist, an den Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) ein Einschaltsignal (S_E) auszugeben, um den Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) nur für die zweite Kommunikationsphase (452) einzuschalten und für die erste Kommunikationsphase (451; 453, 451) auszuschalten oder den Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) umzuschalten von einer Kommunikationsphase auf eine andere.

13) Teilnehmerstation (10; 20; 30) nach Anspruch 11 oder 12, wobei in der ersten Kommunikationsphase (451; 453, 451) ausgehandelt wird, welche der Teilnehmerstationen (10, 20, 30) des Bussystems (1) in der nachfolgenden zweiten Kommunikationsphase (452) zumindest zeitweise einen exklusiven, kollisionsfreien Zugriff auf den Bus (40) bekommt.

14) Bussystem (1), mit einem Bus (40), und mindestens zwei Teilnehmerstationen (10; 20; 30), welche über den Bus (40) derart miteinander verbunden sind, dass sie seriell miteinander kommunizieren können und von denen mindestens eine Teilnehmerstation (10; 30) eine Teilnehmerstation (10; 30) nach einem der Ansprüche 11 bis 13 ist.

15) Verfahren zur Erkennung eines Buskonflikts in einem seriellen Bussystem (1), wobei das Verfahren mit einem Konfliktdetektor (15;

15A; 15B; 15C; 25; 35) für eine Teilnehmerstation (10; 20; 30) des seriellen Bussystems (1), ausgeführt wird, und wobei der Konfliktdetektor (15; 15A; 15B; 15C; 25; 35) die Schritte ausführt,

Zählen, mit mindestens einem Zähler (150; 152), des Auftretens einer Eigenschaft von Pulsen eines digitalen Empfangssignals (RxD; RxDl), das von der Teilnehmerstation (10; 20; 30) aus einem von einem Bus (40) des Bussystems (1) seriell empfangenen Signal (VDIFF) erzeugt wird, wobei das von dem Bus (40) empfangene Signal (VDIFF) aus einem Sendesignal (TxD; TxDl; TxD2) gebildet wurde, das von einer Kommunikationssteuereinrichtung (11) der Teilnehmerstation (10; 20; 30) in einem Rahmen (450) seriell zu dem Bus (40) gesendet wurde, und wobei die Teilnehmerstation (10; 20; 30) in einer ersten Kommunikationsphase (451; 453, 451) Buszustände (401; 402) für den Rahmen (450) mit einer ersten Betriebsart erzeugt und in einer zweiten Kommunikationsphase (452) Buszustände (401; 402; U_D0; U_D1) für den Rahmen (450) mit einer zweiten Betriebsart erzeugt, die sich von der ersten Betriebsart unterscheidet,

Vergleichen, mit einem Vergleichsblock (153; 153A; 153B; 153C), eines aus einem Zählwert (Zasym; Zrx) des mindestens einen

Zählers (150; 152) ermittelten Messergebnisses mit mindestens einem Schwellwert (Ts), und

Anzeigen mit einem Konfliktanzeigesignal (S_K) für die Kommunikationssteuereinrichtung (11), wenn der Vergleichsblock (153; 153A; 153B; 153C) bei dem Vergleich ermittelt, dass die

Teilnehmerstation (10; 20; 30) in der zweiten Kommunikationsphase (452) keinen exklusiven, kollisionsfreien Zugriff auf den Bus (40) hat.

Description:
Beschreibung

Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems und

Verfahren zur Kommunikation in einem seriellen Bussystem

Technisches Gebiet

Die vorliegende Erfindung betrifft einen Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems und ein Verfahren zur Erkennung eines Buskonflikts in einem seriellen Bussystem, das mit hoher Datenrate und großer Fehlerrobustheit arbeitet.

Stand der Technik

Für die Kommunikation zwischen Sensoren und Steuergeräten, beispielsweise in Fahrzeugen, wird häufig ein Bussystem eingesetzt, in welchem Daten als Nachrichten im Standard ISO11898-l:2015 als CAN Protokoll-Spezifikation mit CAN FD übertragen werden. Die Nachrichten werden zwischen den Busteilnehmern des Bussystems, wie Sensor, Steuergerät, Geber, usw., übertragen.

Um zunehmenden Datenverkehr im Bussystem und/oder eine höhere Datenübertragungsgeschwindigkeit realisieren zu können als bei Classical CAN, wurde im CAN FD Nachrichten- Format eine Option zur Umschaltung auf eine höhere Bitrate innerhalb einer Nachricht geschaffen. Bei solchen Techniken wird die maximal mögliche Datenrate durch Einsatz einer höheren Taktung im Bereich der Datenfelder über einen Wert von 1 MBit/s hinaus gesteigert. Solche Nachrichten werden nachfolgend auch als CAN FD-Rahmen oder CAN FD- Nachrichten bezeichnet. Bei CAN FD ist die maximale Nutzdatenlänge von 8 Bytes bei Classical CAN auf bis zu 64 Bytes erweitert und die Datenübertragungsraten sind deutlich höher als bei Classical CAN. Im Automobilbereich übliche Bussysteme verwenden eine differentielle Zweidraht-Busleitung, die zwischen zwei logischen Bitpegeln unterscheidet. Bei Classical CAN (ISO 11898-2) oder CAN FD und LIN (ISOJ.7987-4) wird nur jeweils einer der beiden logischen Bus-Pegel getrieben, der andere wird über einen Abschlusswiderstand der Busleitung eingestellt. Dadurch kann der getriebene, dominante Bus-Pegel den nicht getriebenen, rezessiven Buspegel überschreiben. Dies wird genutzt, um mittels Arbitration für einen Sender für eine vorbestimmte Zeitdauer einen kollisionsfreien Zugriff auf die Busleitung zu gewährleisten. Gemäß einer anderen Nutzung kann im Fehlerfall ein Fehlerrahmen (Error-Flag) auf den Bus gesendet werden. Bei dem zeitgesteuerten FlexRay (ISO 17458-4) werden beide logischen Buspegel getrieben. Diese symmetrischen Buspegel erlauben eine höhere Bitrate, aber weder Arbitration noch Fehlerrahmen wie bei Classical CAN/CAN FD.

Auch wenn ein Classical CAN oder CAN FD basiertes Kommunikationsnetzwerk im Hinblick auf beispielsweise seine Robustheit sehr viele Vorteile bietet, hat es doch eine deutlich geringere Bitrate im Vergleich zu einer Datenübertragung bei zum Beispiel 100 Base-Tl Ethernet. Außerdem ist die bisher mit CAN FD erreichte Nutzdatenlänge von bis zu 64 Bytes für einige Anwendungen zu gering.

Um diese Probleme zu lösen, wird derzeit ein CAN FD- Nachfolgesystem entwickelt, das nachfolgend CAN XL genannt wird. In der Daten-Phase eines CAN-XL-Rahmens sollen beide Buszustände (0, 1) getrieben werden, um höhere Datenraten zu erreichen.

Wenn nun bei CAN-XL in der Datenphase beide Buszustände aktiv getrieben werden, so führt das Senden eines Fehlerrahmens (Error-Flag) zu einer Überlagerung von getriebenen Signalen, wodurch sich „analoge“ Pegel auf dem Bus einstellen. Damit ist das resultierende RxD Signal nicht mehr genau vorhersagbar und somit das Verfahren von Classical CAN/CAN FD in Bezug auf Fehlerrahmen nicht verwendbar.

Offenbarung der Erfindung Daher ist es Aufgabe der vorliegenden Erfindung, einen Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems und ein Verfahren zur Erkennung eines Buskonflikts in einem seriellen Bussystem bereitzustellen, welche die zuvor genannten Probleme lösen. Insbesondere sollen ein Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems und ein Verfahren zur Erkennung eines Buskonflikts in einem seriellen Bussystem bereitgestellt werden, bei welchen eine hohe Datenrate und eine flexible Reaktion auf aktuelle Betriebszustände sowie eine große Fehlerrobustheit der Kommunikation realisiert werden kann.

Die Aufgabe wird durch einen Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems mit den Merkmalen von Anspruch 1 gelöst. Der Konfliktdetektor hat mindestens einen Zähler zum Zählen des Auftretens einer Eigenschaft von Pulsen eines digitalen Empfangssignals, das von der Teilnehmerstation aus einem von einem Bus des Bussystems seriell empfangenen Signal erzeugt wird, wobei das von dem Bus empfangene Signal aus einem Sendesignal gebildet wurde, das von einer Kommunikationssteuereinrichtung der Teilnehmerstation für einen Rahmen seriell zu dem Bus gesendet wurde, und wobei die Teilnehmerstation in einer ersten Kommunikationsphase Buszustände für den Rahmen mit einer ersten Betriebsart erzeugt und in einer zweiten Kommunikationsphase Buszustände für den Rahmen mit einer zweiten Betriebsart erzeugt, die sich von der ersten Betriebsart unterscheidet, und einem Vergleichsblock zum Vergleich des Messergebnisses des mindestens einen Zählers mit mindestens einem Schwellwert und zum Anzeigen mit einem Konfliktanzeigesignal für die Kommunikationssteuereinrichtung, wenn der Vergleichsblock bei dem Vergleich ermittelt, dass die Teilnehmerstation in der zweiten Kommunikationsphase keinen exklusiven, kollisionsfreien Zugriff auf den Bus hat.

Aufgrund der Ausgestaltung des Konfliktdetektors ist auch in dem Fall, dass in der Datenphase beide Buszustände in einem Rahmen aktiv getrieben werden, das Erkennen eines Sendekonflikts sehr kostengünstig möglich. Dies gilt auch, wenn es auf dem Bus zu einer Überlagerung von getriebenen Signalen kommt, wodurch sich „analoge“ Pegel auf dem Bus einstellen, so dass das resultierende Empfangssignal RXD nicht mehr genau vorhersagbar ist.

Die Erkennung oder Detektion des Buskonfliktes mit dem Konfliktdetektor, insbesondere in der Kommunikationssteuereinrichtung (Protocol Controller), ist sehr kostengünstig, weil in der Kommunikationssteuereinrichtung viele Informationen digital vorliegen und ein genauer Takt zur Verfügung steht. Daher kann die Detektion des Buskonfliktes sehr genau erfolgen. Noch dazu ist die Detektion einfach zu implementieren, nämlich beispielsweise mittels eines oder mehrerer Zähler. Damit vereinfacht und verbilligt sich eine Sende- /Empfangseinrichtung (Transceiver) für CAN XL, was den Einsatz von CAN XL begünstigt.

Zusätzlich oder alternativ ist der Konfliktdetektor in eine Sende- /Empfangseinrichtung der Teilnehmerstation integriert.

Noch dazu ist es möglich, dass die Buskonflikt- Erkennung mit aktuell verfügbaren CAN Transceivern nutzbar ist.

Daher ist jede Teilnehmerstation des Bussystems aufgrund der Ausgestaltung des Konfliktdetektors in der Lage, die Sendung einer beliebigen anderen Teilnehmerstation mit einem Fehlerrahmen zu stören bzw. zu unterbrechen. Die verwendeten Fehlerrahmen realisieren eine einfache Fehlerbehandlung, was wiederrum die Robustheit des CAN XL Protokolls erhöht. Außerdem kann im Fehlerfall Zeit gespart werden, indem eine derzeit gesendete Nachricht abgebrochen wird und danach andere Information auf dem Bus übertragen werden kann. Das ist insbesondere bei Rahmen von großem Nutzen, die länger sind als ein CAN FD Rahmen mit 64 Byte in der Datenphase, insbesondere bei Rahmen die 2-4kbyte oder mehr enthalten sollen.

Als Folge davon kann mit dem Konfliktdetektor auch bei Steigerung der Menge der Nutzdaten pro Rahmen ein Empfang der Rahmen mit großer Flexibilität im Hinblick auf aktuelle Ereignisse im Betrieb des Bussystems und mit geringer Fehlerquote gewährleistet werden. Somit kann in dem seriellen Bussystem auch mit großer Fehlerrobustheit kommuniziert werden, wenn eine hohe Datenrate und eine Steigerung der Menge der Nutzdaten pro Rahmen erfolgt.

Daher ist es mit dem Konfliktdetektor in dem Bussystem insbesondere möglich, in einer ersten Kommunikationsphase eine von CAN bekannte Arbitration beizubehalten und dennoch die Übertragungsrate gegenüber Classical CAN oder CAN FD nochmals beträchtlich zu steigern.

Dies trägt mit dazu bei, eine Nettodatenrate von mindestens 5 Mbit/s bis etwa 8 Mbit/s oder 10 Mbit/s oder höher zu realisieren. In diesem Fall ist ein Bit weniger als 100 ns lang. Noch dazu kann die Größe der Nutzdaten bis zu 4096 Byte pro Rahmen betragen. Selbstverständlich sind beliebige andere Werte für die Anzahl von Byte pro Rahmen möglich, insbesondere 2048 Byte oder ein sonstiger Wert.

Das von dem Konfliktdetektor durchgeführte Verfahren kann auch zum Einsatz kommen, wenn in dem Bussystem auch mindestens eine CAN FD tolerante CAN-Teilnehmerstation, die gemäß dem Standard der ISO 11898-1:2015 ausgestaltet ist, und/oder mindestens eine CAN FD Teilnehmerstation vorhanden ist, die Nachrichten nach dem Classical CAN-Protokoll und/oder CAN FD Protokoll senden. Prinzipiell kann der Konfliktdetektor auch bei CAN FD eingesetzt werden, um die dort verwendete Transmitter Delay Compensation Funktion zu ersetzen bzw. zu ergänzen.

Vorteilhafte weitere Ausgestaltungen des Konfliktdetektors sind in den abhängigen Ansprüchen angegeben.

Möglicherweise ist die Eigenschaft von Pulsen des digitalen Empfangssignals der Pegel des Pulses, wobei der mindestens eine Zähler zum Zählen der Häufigkeit des Auftretens eines ersten Pegels des digitalen Empfangssignals über der Zeit ausgestaltet sein kann. Alternativ kann der mindestens eine Zähler ausgestaltet sein, beim Auftreten eines ersten Pegels des digitalen Empfangssignals seinen Zählwert zu inkrementieren und beim Auftreten des zweiten Pegels des digitalen Empfangssignals seinen Zählwert zu dekrementieren. Die Häufigkeit des Auftretens eines vorbestimmten Pegels kann mit einem vorbestimmten Takt gewählt werden. Der daraus resultierende Zählwert kann auch als akkumulierte Dauer bezeichnet werden.

Denkbar ist, dass die Eigenschaft von Pulsen des digitalen Empfangssignals die Pulslänge des Pulses ist. Hierbei kann der mindestens eine Zähler (150; 152) und/oder der Vergleichsblock ausgestaltet sein, zur Ermittlung der Eigenschaft von Pulsen des digitalen Empfangssignals ein Status-Signal der Kommunikationssteuereinrichtung zu verwenden, das den Takt zum Abtasten von Bits des digitalen Empfangssignals und/oder den Takt der Kommunikationssteuereinrichtung umfasst. Alternativ kann der Vergleichsblock ausgestaltet sein, die Pulslänge eines Pulses des digitalen Empfangssignals mit einer Pulslänge eines Pulses des Sendesignals zu vergleichen, um zu ermitteln, ob die Teilnehmerstation in der zweiten Kommunikationsphase keinen exklusiven, kollisionsfreien Zugriff auf den Bus hat.

Gemäß einer anderen Variante ist die Eigenschaft von Pulsen des digitalen Empfangssignals der Unterschied des Pegels des Pulses zu dem entsprechenden Pegel eines Pulses des Sendesignals.

Gemäß noch einer anderen Variante hat der Konfliktdetektor zudem mindestens einen zusätzlichen Zähler zum Zählen des Auftretens einer Eigenschaft von Pulsen des digitalen Sendesignals, wobei der Vergleichsblock ausgestaltet ist, ein aus dem Zählwert des mindestens einen zusätzlichen Zählers ermitteltes Messergebnis mit mindestens einem Schwellwert zu vergleichen, um zu ermitteln, ob die Teilnehmerstation in der zweiten Kommunikationsphase keinen exklusiven, kollisionsfreien Zugriff auf den Bus hat. Hierbei ist der Vergleichsblock gemäß einer Option ausgestaltet, einen Zählwert des mindestens einen Zählers, der zum Zählen des Auftretens einer Eigenschaft von Pulsen des digitalen Empfangssignals vorgesehen ist, zu vergleichen mit einem Zählwert des mindestens einen zusätzlichen Zählers, der zum Zählen des Auftretens einer Eigenschaft von Pulsen des digitalen Sendesignals vorgesehen ist, um anhand einer sich ändernden Differenz der verglichenen Zählwerte zu ermitteln, ob die Teilnehmerstation in der zweiten Kommunikationsphase keinen exklusiven, kollisionsfreien Zugriff auf den Bus hat. Bei den genannten Varianten kann der Konfliktdetektor ausgestaltet sein, als Sendesignal ein verzögertes Sendesignal zu verwenden, das um eine Laufzeit verzögert ist, die das Sendesignal benötigt, um von einem TxD-Anschluss der Kommunikationssteuereinrichtung über den Bus zu einem RxD- Anschluss der Kommunikationssteuereinrichtung zu gelangen.

Der Konfliktdetektor hat optional zudem mindestens einen Zähler zum Zählen von steigenden und/oder fallenden Flanken der Pulse des digitalen Empfangssignals oder des Sendesignals.

Der zuvor beschriebene Konfliktdetektor kann Teil einer Teilnehmerstation für ein serielles Bussystem sein, die zudem eine Kommunikationssteuereinrichtung zum Steuern einer Kommunikation der Teilnehmerstation mit mindestens einer anderen Teilnehmerstation des Bussystems, und eine Sende- /Empfangseinrichtung zum Senden eines von der

Kommunikationssteuereinrichtung für einen Rahmen erzeugten Signals auf einen Bus des Bussystems und zum Empfangen eines Signals von dem Bus aufweist, wobei die Sende-/Empfangseinrichtung in einer ersten Kommunikationsphase Buszustände für den Rahmen mit einer ersten Betriebsart erzeugt und in einer zweiten Kommunikationsphase Buszustände für den Rahmen mit einer zweiten Betriebsart erzeugt, die sich von der ersten Betriebsart unterscheiden.

Bei der Teilnehmerstation können, aufgrund der unterschiedlichen Bitraten in den zwei Kommunikationsphasen, die Buszustände des in der ersten Kommunikationsphase von dem Bus empfangenen Signals länger sein, insbesondere eine längere Bitzeit haben, als die Buszustände des in der zweiten Kommunikationsphase empfangenen Signals. Zusätzlich oder alternativ wurden die Buszustände des in der ersten Kommunikationsphase von dem Bus empfangenen Signals mit einem anderen Physical Layer erzeugt als die Buszustände des in der zweiten Kommunikationsphase empfangenen Signals. Hierbei kann die Kommunikationssteuereinrichtung ausgestaltet sein, an den Konfliktdetektor ein Einschaltsignal auszugeben, um den Konfliktdetektor nur für die zweite Kommunikationsphase einzuschalten und für die erste Kommunikationsphase auszuschalten, oder den Konfliktdetektor umzuschalten von einer Kommunikationsphase auf eine andere. Möglicherweise wird in der ersten Kommunikationsphase ausgehandelt, welche der Teilnehmerstationen des Bussystems in der nachfolgenden zweiten Kommunikationsphase zumindest zeitweise einen exklusiven, kollisionsfreien Zugriff auf den Bus bekommt.

Die zuvor beschriebene Teilnehmerstation kann Teil eines Bussystems sein, das zudem einen Bus und mindestens zwei Teilnehmerstationen umfasst, welche über den Bus derart miteinander verbunden sind, dass sie seriell miteinander kommunizieren können. Hierbei ist mindestens eine der mindestens zwei Teilnehmerstationen eine zuvor beschriebene Teilnehmerstation.

Die zuvor genannte Aufgabe wird zudem durch ein Verfahren zur Kommunikation in einem seriellen Bussystem nach Anspruch 15 gelöst. Das Verfahren wird mit einem Konfliktdetektor für eine Teilnehmerstation des serielles Bussystems ausgeführt, wobei der Konfliktdetektor die Schritte ausführt, Zählen, mit mindestens einem Zähler, des Auftretens einer Eigenschaft von Pulsen eines digitalen Empfangssignals, das von der Teilnehmerstation aus einem von einem Bus des Bussystems seriell empfangenen Signal erzeugt wird, wobei das von dem Bus empfangene Signal aus einem Sendesignal gebildet wurde, das von einer Kommunikationssteuereinrichtung der Teilnehmerstation in einem Rahmen seriell zu dem Bus gesendet wurde, und wobei die Teilnehmerstation in einer ersten Kommunikationsphase Buszustände für den Rahmen mit einer ersten Betriebsart erzeugt und in einer zweiten Kommunikationsphase Buszustände für den Rahmen mit einer zweiten Betriebsart erzeugt, die sich von der ersten Betriebsart unterscheidet,

Vergleichen, mit einem Vergleichsblock, eines aus einem Zählwert des mindestens einen Zählers ermittelten Messergebnisses mit mindestens einem Schwellwert, und Anzeigen mit einem Konfliktanzeigesignal für die Kommunikationssteuereinrichtung, wenn der Vergleichsblock bei dem Vergleich ermittelt, dass die Teilnehmerstation in der zweiten Kommunikationsphase keinen exklusiven, kollisionsfreien Zugriff auf den Bus hat.

Das Verfahren bietet dieselben Vorteile, wie sie zuvor in Bezug auf den Konfliktdetektor und/oder die Teilnehmerstation genannt sind. Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen.

Zeichnungen

Nachfolgend ist die Erfindung unter Bezugnahme auf die beiliegende Zeichnung und anhand von Ausführungsbeispielen näher beschrieben. Es zeigen:

Fig. 1 ein vereinfachtes Blockschaltbild eines Bussystems gemäß einem ersten Ausführungsbeispiel;

Fig. 2 ein Schaubild zur Veranschaulichung des Aufbaus von Nachrichten, die von einer Sende-/Empfangseinrichtung für eine Teilnehmerstation des Bussystems gemäß dem ersten Ausführungsbeispiel gesendet werden können;

Fig. 3 ein vereinfachtes schematisches Blockschaltbild einer Teilnehmerstation des Bussystems gemäß dem ersten Ausführungsbeispiel;

Fig. 4 bis Fig. 7 einen zeitlichen Verlauf von Signalen, die im Normalbetrieb in dem Bussystem gemäß dem ersten Ausführungsbeispiel auftreten;

Fig. 8 einen zeitlichen Verlauf eines Sendesignals TxDl in einer Datenphase einer Nachricht, die von einer ersten Teilnehmerstation des Bussystems gemäß dem ersten Ausführungsbeispiel gesendet wird;

Fig. 9 einen zeitlichen Verlauf eines Sendesignals TxD2, das von einer anderen Teilnehmerstation zum Abbruch des Sendesignals TxDl von Fig. 8 gesendet wird; Fig. 10 bis Fig. 12 einen zeitlichen Verlauf von Signalen, die sich aufgrund der Sendesignale TxDl, TxD2 von Fig. 8 und Fig. 9 in dem Bussystem gemäß dem ersten Ausführungsbeispiel einstellen;

Fig. 13 ein Schaubild zur Veranschaulichung der Funktion eines Konfliktdetektors einer Teilnehmerstation des Bussystems gemäß dem ersten Ausführungsbeispiel;

Fig. 14 ein vereinfachtes schematisches Blockschaltbild einer Teilnehmerstation des Bussystems gemäß einem zweiten Ausführungsbeispiel;

Fig. 15 ein vereinfachtes schematisches Blockschaltbild einer Teilnehmerstation des Bussystems gemäß einem dritten Ausführungsbeispiel;

Fig. 16 ein Beispiel für Signalverläufe zur Veranschaulichung der Funktionsweise eines Konfliktdetektors der Teilnehmerstation des Bussystems gemäß dem dritten Ausführungsbeispiel;

Fig. 17 ein vereinfachtes schematisches Blockschaltbild einer Teilnehmerstation des Bussystems gemäß einem vierten Ausführungsbeispiel; und

Fig. 18 ein Beispiel für Signalverläufe zur Veranschaulichung der Funktionsweise eines Konfliktdetektors der Teilnehmerstation des Bussystems gemäß dem vierten Ausführungsbeispiel.

In den Figuren sind gleiche oder funktionsgleiche Elemente, sofern nichts Anderes angegeben ist, mit denselben Bezugszeichen versehen.

Beschreibung der Ausführungsbeispiele

Fig. 1 zeigt als Beispiel ein Bussystem 1, das insbesondere grundlegend für ein Classical CAN-Bussystem, ein CAN FD-Bussystem, ein CAN XL-Bussystem, und/oder Abwandlungen davon, ausgestaltet ist, wie nachfolgend beschrieben. Das Bussystem 1 kann in einem Fahrzeug, insbesondere einem Kraftfahrzeug, einem Flugzeug, usw., oder im Krankenhaus usw. Verwendung finden. In Fig. 1 hat das Bussystem 1 eine Vielzahl von Teilnehmerstationen 10, 20, 30, die jeweils an einen Bus 40 mit einer ersten Busader 41 und einer zweiten Busader 42 angeschlossen sind. Die Busadern 41, 42 können auch CAN_H und CAN_L oder CAN-XL_H und CAN-XL_L genannt werden und dienen zur elektrischen Signalübertragung nach Einkopplung der Differenzpegel oder dominanten Pegel bzw. Erzeugung von rezessiven Pegeln für ein Signal im Sendezustand. Über den Bus 40 sind Nachrichten 45, 46 in der Form von Signalen zwischen den einzelnen Teilnehmerstationen 10, 20, 30 seriell übertragbar. Tritt bei der Kommunikation auf dem Bus 40 ein Fehler auf, wie durch den gezackten schwarzen Blockpfeil in Fig. 1 dargestellt, kann ein Fehlerrahmen 47 (Error Flag) gesendet werden. Die Teilnehmerstationen 10, 20, 30 sind beispielsweise Steuergeräte, Sensoren, Anzeigevorrichtungen, usw. eines Kraftfahrzeugs.

Wie in Fig. 1 gezeigt, hat die Teilnehmerstation 10 eine

Kommunikationssteuereinrichtung 11, eine Sende-/Empfangseinrichtung 12 und einen Konfliktdetektor 15. Die Teilnehmerstation 20 hat dagegen eine Kommunikationssteuereinrichtung 21, eine Sende-/Empfangseinrichtung 22 und optional einen Konfliktdetektor 25. Die Teilnehmerstation 30 hat eine Kommunikationssteuereinrichtung 31, eine Sende-/Empfangseinrichtung 32 und einen Konfliktdetektor 35. Die Sende-/Empfangseinrichtungen 12, 22, 32 der Teilnehmerstationen 10, 20, 30 sind jeweils direkt an den Bus 40 angeschlossen, auch wenn dies in Fig. 1 nicht veranschaulicht ist.

Die Kommunikationssteuereinrichtungen 11, 21, 31 dienen jeweils zur Steuerung einer Kommunikation der jeweiligen Teilnehmerstation 10, 20, 30 über den Bus 40 mit mindestens einer anderen Teilnehmerstation der Teilnehmerstationen 10, 20, 30, die an den Bus 40 angeschlossen sind.

Die Kommunikationssteuereinrichtung 11 erstellt und liest erste Nachrichten 45, die beispielsweise modifizierte CAN Nachrichten 45 sind. Hierbei sind die modifizierten CAN Nachrichten 45 auf der Grundlage eines CAN XL-Formats aufgebaut, das in Bezug auf Fig. 2 detaillierter beschrieben ist. Die Kommunikationssteuereinrichtung 21 kann bis auf die nachfolgend noch genauer beschriebenen Unterschiede wie ein herkömmlicher CAN-Controller nach ISO 11898-1:2015 ausgeführt sein. Die Kommunikationssteuereinrichtung 21 erstellt und liest zweite Nachrichten 46, beispielsweise Classical CAN- Nachrichten 46. Die Classical CAN-Nachrichten 46 sind gemäß dem Classical Basisformat aufgebaut, bei welchem in der Nachricht 46 eine Anzahl von bis zu 8 Datenbytes umfasst sein können. Alternativ ist die CAN-Nachricht 46 als CAN FD Nachricht aufgebaut, bei welcher eine Anzahl von bis zu 64 Datenbytes umfasst sein können, die noch dazu mit einer deutlich schnelleren Datenrate als bei der Classical CAN-Nachricht 46 übertragen werden. Im letzteren Fall ist die Kommunikationssteuereinrichtung 21 wie ein herkömmlicher CAN FD-Controller ausgeführt.

Die Kommunikationssteuereinrichtung 31 kann ausgeführt sein, um je nach Bedarf eine CAN XL-Nachricht 45 oder eine Classical CAN-Nachricht 46 für die Sende-/Empfangseinrichtung 32 bereitzustellen oder von dieser zu empfangen. Die Kommunikationssteuereinrichtung 31 erstellt und liest also eine erste Nachricht 45 oder zweite Nachricht 46, wobei sich die erste und zweite Nachricht 45, 46 durch ihren Datenübertragungsstandard unterscheiden, nämlich in diesem Fall CAN XL oder CAN. Alternativ ist die Classical CAN-Nachricht 46 als CAN FD Nachricht aufgebaut. Im letzteren Fall ist die Kommunikationssteuereinrichtung 31 wie ein herkömmlicher CAN FD-Controller ausgeführt.

Die Sende-/Empfangseinrichtung 12 kann als CAN XL-Transceiver ausgeführt sein. Die Sende-/Empfangseinrichtung 22 kann wie ein herkömmlicher CAN Transceiver oder CAN FD Transceiver ausgeführt sein. Die Sende- /Empfangseinrichtung 32 kann ausgeführt sein, um je nach Bedarf Nachrichten 45 gemäß dem CAN XL- Format oder Nachrichten 46 gemäß dem derzeitigen CAN-Basisformat für die Kommunikationssteuereinrichtung 31 bereitzustellen oder von dieser zu empfangen. Die Sende-/Empfangseinrichtungen 12, 32 sind zusätzlich oder alternativ wie ein herkömmlicher CAN FD Transceiver ausführbar. Mit den beiden Teilnehmerstationen 10, 30 ist eine Bildung und dann Übertragung von Nachrichten 45 mit dem CAN XL Format sowie der Empfang solcher Nachrichten 45 realisierbar.

Fig. 2 zeigt für die Nachricht 45 einen CAN XL Rahmen 450, wie er von der Sende-/Empfangseinrichtung 12 oder der Sende-/Empfangseinrichtung 32 gesendet wird. Der CAN XL-Rahmen 450 ist für die CAN-Kommunikation auf dem Bus 40 in unterschiedliche Kommunikationsphasen 451 bis 453 unterteilt, nämlich eine Arbitrationsphase 451, eine Datenphase 452 und eine Rahmenendphase 453.

In der Arbitrationsphase 451 wird mit Hilfe eines Identifizierers bitweise zwischen den Teilnehmerstationen 10, 20, 30 ausgehandelt, welche Teilnehmerstation 10, 20, 30 die Nachricht 45, 46 mit der höchsten Priorität senden möchte und daher für die nächste Zeit zum Senden in der anschließenden Datenphase 452 einen exklusiven Zugriff auf den Bus 40 des Bussystems 1 bekommt.

In der Datenphase 452 werden die Nutzdaten des CAN-XL-Rahmens bzw. der Nachricht 45 gesendet. Die Nutzdaten können entsprechend dem Wertebereich eines Datenlängecodes beispielsweise bis zu 4096 Bytes oder einen größeren Wert aufweisen.

In der Rahmenendphase 453 kann ein Re-Integrations-Muster enthalten sein, das den empfangenden Teilnehmerstationen ermöglicht, nach einem Fehler den Beginn der Rahmenendphase 453 zu finden. Zudem kann in einem Endefeld in der Rahmenendphase 453 mindestens ein Acknowledge-Bit enthalten sein. Außerdem kann eine Folge von 11 gleichen Bits vorhanden sein, welche das Ende des CAN XL Rahmens 450 anzeigen. Mit dem mindestens einen Acknowledge-Bit kann mitgeteilt werden, ob ein Empfänger in dem empfangenen CAN XL Rahmen 450 bzw. der Nachricht 45 einen Fehler entdeckt hat oder nicht.

In der Arbitrationsphase 451 und der Rahmenendphase 453 wird ein Physical Layer wie bei Classical CAN und CAN-FD verwendet. Der Physical Layer entspricht der Bitübertragungsschicht oder Schicht 1 des bekannten OSI-Modells (Open Systems Interconnection Modell).

Während der Phasen 451, 453 findet das bekannte CSMA/CR-Verfahren Verwendung, welches gleichzeitigen Zugriff der Teilnehmerstationen 10, 20, 30 auf den Bus 40 erlaubt, ohne dass die höher priorisierte Nachricht 45, 46 zerstört wird. Dadurch können dem Bussystem 1 relativ einfach weitere Bus- Teilnehmerstationen 10, 20, 30 hinzugefügt werden, was sehr vorteilhaft ist.

Das CSMA/CR-Verfahren hat zur Folge, dass es sogenannte rezessive Zustände auf dem Bus 40 geben muss, welche von anderen Teilnehmerstationen 10, 20,

30 mit dominanten Zuständen auf dem Bus 40 überschrieben werden können. Im rezessiven Zustand herrschen an der einzelnen Teilnehmerstation 10, 20, 30 hochohmige Verhältnisse, was in Kombination mit den Parasiten der Busbeschaltung längere Zeitkonstanten zur Folge hat. Dies führt zu einer Begrenzung der maximalen Bitrate des heutigen CAN-FD-Physical-Layer auf derzeit etwa 2 Megabit pro Sekunde im realen Fahrzeug- Einsatz.

Ein Sender der Nachricht 45 beginnt ein Senden von Bits der Datenphase 452 auf den Bus 40 erst, wenn die Teilnehmerstation 10 als der Sender die Arbitration gewonnen hat und die Teilnehmerstation 10 als Sender damit zum Senden einen exklusiven Zugriff auf den Bus 40 des Bussystems 1 hat.

Ganz allgemein können in dem Bussystem mit CAN XL im Vergleich zu Classical CAN oder CAN FD folgende abweichenden Eigenschaften realisiert werden: a) Übernahme und ggf. Anpassung bewährter Eigenschaften, die für die Robustheit und Anwenderfreundlichkeit von Classical CAN und CAN FD verantwortlich sind, insbesondere Rahmenstruktur mit Identifier und Arbitrierung nach dem CSMA/CR- Verfahren, b) Steigerung der Netto-Datenübertragungsrate auf etwa 10 Megabit pro Sekunde, c) Anheben der Größe der Nutzdaten pro Rahmen auf eine beliebige Länge, beispielsweise bis etwa 4 kbyte.

Fig. 3 zeigt den grundlegenden Aufbau der Teilnehmerstation 10 mit der Kommunikationssteuereinrichtung 11, der Sende-/Empfangseinrichtung 12 und dem Konfliktdetektor 15. Die Teilnehmerstation 30 ist in ähnlicher Weise aufgebaut, wie in Fig. 3 gezeigt, außer dass der Konfliktdetektor 35 nicht in die Kommunikationssteuereinrichtung 31 integriert ist, sondern separat von der Kommunikationssteuereinrichtung 31 und der Sende-/Empfangseinrichtung 32 vorgesehen ist. Bei der Teilnehmerstation 20 ist der optional vorhandene Konfliktdetektor 25 in die Sende-/Empfangseinrichtung 22 integriert. Daher sind die Teilnehmerstationen 20, 30 und die Einrichtungen 25, 35 nicht separat beschrieben. Die nachfolgend beschriebenen Funktionen des Konfliktdetektors 15 sind bei jedem der Konfliktdetektoren 25, 35 identisch vorhanden.

Gemäß Fig. 3 hat die Teilnehmerstation 10 zusätzlich zu dem Konfliktdetektor 15 in der Kommunikationssteuereinrichtung 11 einen Senden/Empfangen-Block 111. Der Senden/Empfangen-Block 111 ist ein Protokoll-Controller, der das Sendesignal TxD gemäß dem Protokoll für beispielsweise einen Rahmen 450 für eine Nachricht 45 oder für einen Rahmen für eine Nachricht 46 erstellt und das Sendesignal TxD an die Sende-/Empfangseinrichtung 12 weitergibt und zum Empfangen eines Empfangssignals RxD von der Sende-/Empfangseinrichtung 12 übernimmt. Die Sende-/Empfangseinrichtung 12 ist an den Bus 40 angeschlossen, genauer gesagt dessen erste Busader 41 für CAN_H oder CAN- XL_H und dessen zweite Busader 42 für CAN_L oder CAN-XL_L. Für einen Rahmen 450 wird das Sendesignal TxD von der Sende-/Empfangseinrichtung 12 in Signale CAN-XL_H, CAN-XL_L für den Bus 40 umgesetzt, wie zuvor beschrieben. Das RxD-Signal wird erzeugt, wie ebenfalls zuvor beschrieben.

Der Konfliktdetektor 15 hat einen ersten Zähler 151, einen zweiten Zähler 152, einen Vergleichsblock 153 und einen optionalen Kompensationsblock 154. Der Konfliktdetektor 15 erfasst die Signale RxD und TxD, um einen Konflikt auf dem Bus 40 zu erkennen. Der Konfliktdetektor 15 liefert als Ergebnis ein Konfliktanzeigesignal S_K, um zu signalisieren, ob ein Konflikt auf den Bus 40 vorhanden ist oder nicht. Hat das Konfliktanzeigesignal S_K beispielsweise den Wert 1, wurde also beispielsweise ein Konflikt detektiert, so wird der Senden/Empfangen-Block 111 daraufhin beispielsweise einen Fehlerrahmen 47 auf den Bus 40 senden, anstatt mit dem bis dahin gesendeten Rahmen 450 fortzufahren. Zudem sendet der Senden/Empfangen-Block 111 an den Konfliktdetektor 15 optional ein Enable-Signal oder Einschaltsignal S_E, wenn der Konfliktdetektor 15 nur während eines gültigen Sendevorgangs arbeiten soll.

Optional kann der Senden/Empfangen-Block 111 ein Statussignal S_l an den Konfliktdetektor 15 senden. In dem Statussignal S_l sind diejenigen Informationen enthalten, die der Senden/Empfangen-Block 111 dem Konfliktdetektor 15 bereitstellt, beispielsweise eine Laufzeit TLD für den Kompensationsblock 154, was in Bezug auf Fig. 13 genauer beschrieben ist.

Der Konfliktdetektor 15 von Fig. 3 arbeitet mit dem CAN Takt, der dem Takt der Kommunikationssteuereinrichtung 11, insbesondere des CAN XL Protocol Controllers, entspricht. Der CAN Takt ermöglicht durch seine relativ hohe Frequenz eine genaue Erfassung von Abweichungen in den Signalen RxD, TxD. Zusätzlich oder alternativ kann ein Zeitquantentakt (TimeQuanta Takt) verwendet werden, welcher vom Senden/Empfangen-Block 111 verwendet wird. Der Zeitquantentakt ist ein heruntergeteilter CAN Takt. Das Teilungsverhältnis kann ein Benutzer mit dem sogenannten Bit- Rate- Prescaler Parameter im CAN XL Controller einstellen.

Die genauere Funktion des Konfliktdetektors 15 ist nachfolgend nach Erläuterung der Signale im Bussystem 1 gemäß Fig. 4 bis Fig. 12 genauer beschrieben.

Fig. 4 bis Fig. 7 veranschaulichen Signale im Normalbetrieb des Bussystems 1. Hierbei setzt die Sende-/Empfangseinrichtung 12 im Laufe der Zeit t ein Sendesignal TXD oder TxD der Kommunikationssteuereinrichtung 11 gemäß Fig. 4 in entsprechende Signale CAN-XL_H und CAN-XL_L für die Busadern 41, 42 um und sendet diese Signale CAN-XL_H und CAN-XL_L an den Anschlüssen für CAN_H und CAN_L auf den Bus 40, wie in Fig. 5 gezeigt. Aus den Signalen CAN-XL_H und CAN-XL_L von Fig. 5 bildet sich auf dem Bus 40 über der Zeit t eine Differenzspannung VDIFF = CAN-XL_H - CAN-XL_L aus, deren Verlauf in Fig. 6 gezeigt ist.

Mit Ausnahme eines Leerlauf- oder Bereitschaftszustands (Idle oder Standby), hört die Sende-/Empfangseinrichtung 12 im Normalbetrieb immer auf eine Übertragung von Daten bzw. Nachrichten 45, 46 auf dem Bus 40 und zwar unabhängig davon, ob die Sende-/Empfangseinrichtung 12 Sender der Nachricht 45 ist oder nicht. Dabei bildet die Sende-/Empfangseinrichtung 12 aus vom Bus 40 empfangenen Signalen CAN-XL_H und CAN-XL_L mit Empfangsschwellen T_u, T_d gemäß Fig. 6 ein Empfangssignal RXD oder RxD, wie in Fig. 7 über der Zeit t gezeigt. Für die Phasen 451, 453 wird mindestens eine Empfangsschwelle T_u verwendet, die in dem schraffierten Bereich in dem linken Teil von Fig. 6 liegt. Wie in Fig. 6 dargestellt, verwendet die Sende-/Empfangseinrichtung 12 in den Kommunikationsphasen 451, 453 die von Classical CAN/CAN-FD bekannte erste Empfangsschwelle T_u mit der typischen Lage von 0,7 V gemäß der ISO11898-2:2016, um die Buszustände 401, 402 in der ersten Betriebsart sicher erkennen zu können. Dagegen wird für die Datenphase 452 auf mindestens eine Empfangsschwelle T_d umgeschaltet, die in dem schraffierten Bereich in dem rechten Teil von Fig.6 liegt. Die Sende-/Empfangseinrichtung 12 gibt das Empfangssignal RXD oder RxD an die Kommunikationssteuereinrichtung 11 weiter, wie in Fig. 3 gezeigt.

Gemäß dem Beispiel von Fig. 4 und Fig. 5 haben die Signale CAN-XL_H und CAN-XL_L in den zuvor genannten Kommunikationsphasen 451, 453 entsprechend den Zuständen H, L des Sendesignals TxD von Fig. 4 die dominanten und rezessiven Buspegel 401, 402, wie von CAN bekannt. Dagegen unterscheiden sich die Signale CAN-XL_H und CAN-XL_L in der Datenphase 452 von den herkömmlichen Signalen CAN_H und CAN_L. In der Datenphase 452 werden anstelle der Buspegel 401, 402 nun die Buspegel U_D1, U_D0 entsprechend den Datenzuständen H, L des Sendesignals TXD aktiv getrieben. Auf dem Bus 40 bildet sich das Differenzsignal VDIFF = CAN-XL_H - CAN-XL_L aus, wie in Fig. 6 gezeigt.

Zudem wird von einer ersten Bitzeit T_btl in den Phasen 451, 453 auf eine zweite Bitzeit T_bt2 in der Phase 452 umgeschaltet. Die erste Bitzeit T_btl ist größer als die zweite Bitzeit T_bt2, auch wenn dies in Fig. 4 bis Fig. 7 zur Vereinfachung nicht dargestellt ist. Daher werden die Bits der Signale in den Phasen 451, 453 langsamer übertragen als in der Datenphase 452. Bei einer Bitrate von beispielsweise lOMbil/s in der Datenphase 452 hat die zweite Bitzeit T bt2 den Wert 100ns. Somit ist, die Bitzeitdauer T_bt2 in der Datenphase 452 bei dem gezeigten Beispiel von Fig. 4 und Fig. 5 deutlich kürzer als die Bitzeitdauer T_btl, die in der Arbitrationsphase 451 und der Rahmenendphase 453 verwendet wird.

Somit wird die Sende-/Empfangseinrichtung 12 von dem Zustand, der in dem linken Teil von Fig. 4 gezeigt ist, für die Datenphase 452 in den Zustand umgeschaltet, der im rechten Teil von Fig. 4 gezeigt ist. Die Sende- /Empfangseinrichtung 12 wird somit von einer ersten Betriebsart in eine zweite Betriebsart umgeschaltet.

Die Abfolge der Datenzustände H, L von Fig. 4 und somit der daraus resultierenden Buszustände U_D0, U_D1 für die Signale CAN-XL_H, CAN-XL_L in Fig. 5 und der daraus resultierende Verlauf der Spannung VDIFF von Fig. 6 dient nur der Veranschaulichung der Funktion der Sende-/Empfangseinrichtung 12. Die Abfolge der Datenzustände H, L von Fig. 4 und somit der daraus resultierenden Buszustände U_D0, U_D1 in Fig. 5 ist je nach Bedarf wählbar.

Fig. 8 bis Fig. 12 zeigen für die Datenphase 452 einen Signalverlauf der Signale TxDl, TxD2, CAN-XL_H und CAN-XL_L, deren Differenzspannung VDIFF = CAN-XL_H - CAN-XL_L und des resultierenden Empfangssignals RxD. Bei dem in Fig. 8 bis Fig. 12 gezeigten Fall, sendet beispielsweise die Sende- /Empfangseinrichtung 12 das Sendesignal TxDl für einen Rahmen 450, wobei beispielsweise die Teilnehmerstation 30, die in der Datenphase 452 eigentlich nur Empfänger des Rahmens 450 ist, einen Abbruch des Rahmens 450 erreichen möchte und daher das Sendesignal TxD2 sendet.

Es gibt verschiedene Gründe, warum ein Abbruch des Rahmens 450 erfolgen soll:

- die Teilnehmerstation 30 als RX-Teilnehmerstation hat einen Fehler in der Header Prüfsumme (CRC = Cyclic Redundancy Check) der CAN XL Nachricht 45 festgestellt, und möchte dies signalisieren, und/oder

- die Teilnehmerstation 20, die eine CAN FD Teilnehmerstation ist, hat eventuell das Umschalten zu dem Format des Rahmens 450 aufgrund eines Bit Fehlers nicht erkannt und sendet einen Fehlerrahmen 47 während der Datenphase 452 des Rahmens 450, und/oder

- die Teilnehmerstation 30 als RX-Teilnehmerstation hat eine Nachricht 45, 46 mit höherer Priorität zu senden, und/oder

- zwei CAN-XL-Teilnehmerstationen, beispielsweise die Teilnehmerstationen 10, 30 verwenden versehentlich den gleichen Identifizierer und senden somit beide in der Datenphase 452.

Möchte beispielsweise die Teilnehmerstation 30 einen Abbruch des Rahmens 450 erreichen, welchen die Sende-/Empfangseinrichtung 12 mit dem Signal TxDl von Fig. 8 sendet, so sendet die Teilnehmerstation 30 das Sendesignal TxD2 gemäß Fig. 9 zum Bus 40. In der Phase 455 des Sendens des Fehlerrahmens 47, die mit der fallenden Flanke des Sendesignals TxD2 bei einem Zeitpunkt t2 beginnt, ergeben sich daher gemäß Fig. 10 und Fig. 11 Spannungszustände auf dem Bus 40, die von den Spannungszuständen auf dem Bus 40 im Normalbetrieb der Datenphase 452 abweichen.

Ganz allgemein gilt, dass die sendende Teilnehmerstation, die das Sendesignal TxDl sendet, in der Datenphase 452 zum Treiben der Busleitungen 41, 42 auf einen Sende-Betriebsmodus umschaltet. Dagegen wird für alle empfangenden Teilnehmerstationen, wie die Teilnehmerstation 30, die in Fig. 11 gezeigte mindestens eine Empfangsschwelle Td eingeschaltet. Hierbei bleibt jedoch der Bustreiber der empfangenden Teilnehmerstation 30 im passiven Empfangszustand (CAN-recessive-state), bis die empfangende Teilnehmerstation 30 eventuell den Fehlerrahmen 47 sendet, wie in Fig. 9 für das Sendesignal TxD2 gezeigt und zuvor erwähnt. Der Fehlerrahmen 47 gemäß dem rechten Teil von Fig. 7 wird dann aktiv als "dominant" gesendet werden. Um die Interoperabilität von CAN-XL und CAN-FD zu ermöglichen, wird ein Fehlerrahmen 47 wie bereits bei CAN/CAN-FD durch die Aneinanderreihung von 6 oder mehr (je nach Bit- Stuffing- Methode) Bits mit positivem VDIFF repräsentiert.

Wird in dem zuvor beschriebenen Fall von Teilnehmerstation 30 ein Fehlerrahmen 47 gesendet, ändert sich in der Folge gemäß Fig. 11 der transiente Verlauf der Differenzspannung VDIFF sehr stark. Aus Sicht aller Teilnehmerstationen 10, 20, 30 wird ein Bit mit positiver Differenzspannung VDIFF, also der Buszustand U_D1, noch verstärkt bzw. die positive Differenzspannung VDIFF wird vergrößert. Dagegen wird ein Bit, das sich als der Buszustand U_D0 auf dem Bus 40 ausbildet, von der Differenzspannung VDIFF = -2 V auf eine Differenzspannung VDIFF von etwa 0V erhöht. Der entstehende Spannungswert für den Buszustand U_D0 hängt stark von den Parametern der treibenden Sende- /Empfangseinrichtungen 12, 22, 32 bzw. des Senders 121, sowie der Anordnung der Abschlusswiderstände ab.

Wie in Fig. 12 schematisch mit einer Ellipse 60 dargestellt, kann dies im Ergebnis zu einem nicht erkannten 1-Puls im Empfangssignal RxD führen. Möglich ist auch, dass ein 1-Puls am RxD-Anschluss und somit im Empfangssignal RxD verkürzt ist, wie in Fig. 12 mit einer Ellipse 65 markiert. Über die Darstellung von Fig. 12 hinaus ist die Differenzspannung VDIFF im realen Fall noch von hochfrequenten Schwingungen überlagert, welche durch Bustopologie, Phasenlage und Impedanz der Teilnehmerstation bestimmt sind, die den Fehlerrahmen 47 sendet. Verkürzte oder verlängerte 1-Pluse (oder 0-Pulse) können auch von einem von CAN FD bekannten TDC-Verfahren (TDC = Transmitter Delay Compensation = Verzögerungskompensation der Sende- /Empfangseinrichtung) in den meisten Fällen nicht erkannt werden.

Auch wenn die Fehlererkennung durch die Hinzunahme von weiteren Empfangsschwellen in der Sende-/Empfangseinrichtung 12 verbessert werden kann, so gibt es jedoch Signalverläufe, welche auch dadurch nicht mehr als Fehler erkannt werden können.

Gemäß Fig. 3 hat der Konfliktdetektor 15 in der Teilnehmerstation 10 für die Erkennung eines Sendekonflikts, der den Buskonflikt gemäß Fig. 11 verursacht, die Zähler 151, 152 und den Vergleichsblock 153. Bei dem Sendekonflikt hat die Teilnehmerstation 10 in der Datenphase 452 keinen exklusiven, kollisionsfreien Zugriff mehr auf den Bus 40.

Der Konfliktdetektor 15 erfasst die Signale RxD und TxD unter Verwendung der beiden Zähler 151, 152. Hierbei wird der Zähler 151 zur Auswertung des Sendesignals TxD verwendet, wobei der Zähler 151 seinen Zählwert Ztx verändert. Der Zähler 152 wird zur Auswertung des Empfangssignals RxD verwendet, wobei der Zähler 152 seinen Zählwert Zrx verändert. Die Zähler 151, 152 zählen jeweils nicht nur die Anzahl der Pegel in den betrachteten Signalen TxD, RxD. Sondern die Zähler 151, 152 zählen jeweils auch die akkumulierte Dauer des Auftretens über der Zeit t mit einem Takt, insbesondere dem CAN Takt. Der CAN-Takt ist in der Kommunikationssteuereinrichtung 11 vorhanden und wird an den Konfliktdetektor 15 mit dem Statussignal S_l weitergeleitet.

Der Sende-Empfangen-Block 111 setzt zu Beginn der Datenphase 452, also bei dem Zeitpunkt tl das Enable-Signal oder Einschaltsignal S_E auf 1, um die Konflikterkennung mit dem Konfliktdetektor 15 zu starten. Da in diesem Ausführungsbeispiel das verzögerte TxDl Signal TxDl_d verwendet wird, wird auch das Enable-Signal S_E um die Zeitdauer bzw. Laufzeit TLD verzögert auf 1 gesetzt, wie in Fig. 13 veranschaulicht. Mit der Flanke des Einschaltsignals S_E werden die Zählwerte Ztx, Zrx der Zähler 151, 152 auf Null zurückgesetzt.

Der Konfliktdetektor 15 vergleicht die Signale RxD, TxD miteinander, um einen Buskonflikt zu erkennen. Dazu ermittelt er die Dauer des Auftretens eines der Buspegel (0 oder 1) fortlaufend in der Datenphase 452 eines Rahmens 450 am RxD und am TxD-Signal. Der Zählwert Ztx des Zählers 151 wird einmal pro Taktperiode um 1 inkrementiert, wenn das Sendesignal TxD einen Wert H hat, beispielsweise wenn gilt TxD = 1, wie in Fig. 13 gezeigt. Der Zählwert Zrx des Zählers 152 wird um 1 inkrementiert, wenn das Empfangssignal RxD einen Wert H hat, beispielsweise wenn gilt RxD = 1, wie in Fig. 13 gezeigt. Ist beispielsweise der Pegel des RxD-Signals für die Dauer von 40 Taktperioden auf dem Wert H, so wird der Zähler Zrx in dieser Zeit um 40 inkrementiert. Alternativ können die Zähler 151, 152 ihren Zählwert Ztx, Zrx erhöhen, wenn die Zustände TxD = 0 und RxD = 0 der jeweils von den Zählern 151, 152 betrachteten Signale TxD, RxD erfasst werden.

Die von dem Konfliktdetektor 15 ermittelte Dauer des Auftretens eines der Buspegel (0 oder 1) ist somit die Häufigkeit des Auftretens eines vorbestimmten Pegels. Die Dauer wird somit mit einem vorbestimmten Takt gezählt, insbesondere dem CAN-Takt, der der Takt der Kommunikationssteuereinrichtung 11 ist. Der aus der Zählung resultierende Zählwert Ztx, Zrx kann auch als akkumulierte Dauer bezeichnet werden, wie zuvor beschrieben.

Aus dem Vergleich der Messungen der Zähler 151, 152 für die Signale TxD und RxD mit dem Vergleichsblock 153 lässt sich der Buskonflikt ableiten. Hierfür bildet der Vergleichsblock 153 eine Differenz D = Ztx - Zrx als Messergebnis, wie in Fig. 13 veranschaulicht. Hierbei berücksichtigt der Konfliktdetektor 15, dass das TxD-Signal ideal ist, aber das RxD-Signal auch im konfliktfreien Fall nicht ideal ist, also vom TxD Signal verschieden ist.

Zur Erkennung eines Konfliktes muss der Vergleichsblock 153 die Differenz D der Zählwerte Ztx, Zrx der Zähler 151, 152 regelmäßig bilden und bewerten. Regelmäßig bedeutet beispielsweise 1 Mal pro Bitzeit T_bt2 oder 1-mal pro 5 Bitzeiten T_bt2. Vereinfacht gilt, wenn die Differenz D stark zunimmt (oder abnimmt), dann besteht ein Buskonflikt. Die Änderung der aktuell gebildeten Differenz D zu der letzten gebildeten Differenz D wird als DeltaD bezeichnet.

Wenn DeltaD eine Schwelle Ts, die auch als DeltaDiffRef bezeichnet werden kann, überschreitet bzw. deutlich überschreitet, dann ist die Asymmetrie größer als im Normalbetrieb und es liegt höchstwahrscheinlich ein Buskonflikt vor. Die Schwelle Ts kann auf verschiedene Arten festgelegt werden. Beispielsweise kann DeltaD im normalen Betrieb gemessen werden, insbesondere im ersten erfolgreich gesendeten Rahmen. Alternativ kann DeltaD laufend mit jedem erfolgreich gesendeten Rahmen gemessen werden. Wird zum Beispiel im fehlerfreien Fall ein DeltaD = +2 gemessen, so nimmt die Differenz D pro Bitzeit T_bt2 um 2 zu, wenn ein Bit mit dem Wert TxD=l gesendet wird. Die Schwelle Ts kann dann beispielsweise als „im fehlerfreien Fall gemessenes DeltaD“ + 2 definiert sein, also bei dem genannten Beispiel als Ts = 2 + 2 = 4.

Alternativ kann die Schwelle Ts initial vorgegeben werden. Wird beispielsweise die Differenzänderung DeltaD ein Mal pro Bitzeit T_bt2 ermittelt, dann ist beispielsweise ein möglicher Wert für die Schwelle Ts eine halbe Bitzeit T_bt2. Somit gilt, wenn ein gesendetes Bit 20 CAN Taktperioden lang ist, dann ist eine Schwelle Ts =10. Fig. 13 zeigt ein spezielles Beispiel für einen Verlauf der Zählerwerte Ztx, Zrx für den Verlauf des Signals TxD2, mit welchem der Fehlerrahmen 47 gesendet wird, des verzögerten Sendesignals TxDl_d und des resultierenden Signals RxDl. Bei dem gezeigten Beispiel ist angenommen, dass ohne Buskonflikt auch das Empfangssignal RxDl ideal ist, um das Bild zu vereinfachen. In Wirklichkeit wird das RxDl-Signal im Normalbetrieb (ohne Buskonflikt) leicht asymmetrisch sein, das heißt, dass die 1 Bits etwas länger sind als die 0 Bits, oder umgekehrt. Das hat zur Folge, dass die zwei Zähler Ztx und Zrx langsam auseinanderlaufen. Das RxDl-Signal ist aufgrund der Laufzeit TLD über den Bus 40, genauer gesagt vom TxD-Anschluss der sendenden Teilnehmerstation zu dem RxD-Anschluss der gleichen sendenden Teilnehmerstation, um die Laufzeit TLD gegenüber dem TxD-Signal verzögert. Jedes Bit hat die Bitzeit T_bt2. In der Zeitdauer T_K entsteht bzw. besteht der Konflikt auf dem Bus 40, da die schematisch eingezeichnete Schwelle Ts überschritten wird.

Im Fall eines Buskonfliktes wird die Bitasymmetrie verstärkt. Dies führt in dem Beispiel von Fig. 13 dazu, dass die 1 Pegel am Bus 40 verkürzt werden. Somit nimmt der Zählwert Zrx des Zählers 152 in der Zeitdauer T_K langsamer zu als der Zählwert Ztx des Zählers 151.

Für eine schnellere und genauere Detektion eines Konfliktes, also optional, kompensiert der Konfliktdetektor 15 mit dem Kompensationsblock 154 die Laufzeit TLD vom TxD-Signal über den Transceiver zum RxD-Signal. Hierbei verwendet der Kompensationsblock 154 einen Takt, insbesondere den CAN-Takt und/oder den Takt zum Abtasten von Bits des digitalen Empfangssignals und/oder einen sonstigen Takt, der von der Kommunikationssteuereinrichtung 11 über das Status-Signal S_l bereitgestellt werden kann. Die Laufzeit TLD kann auch als Transmitter Loop Delay (TLD) bezeichnet werden. Wird die Laufzeit TLD nicht berücksichtigt und kompensiert, muss die Differenz der zwei Zähler Ztx und Zrx toleranter ausgewertet werden. Insbesondere muss die Schwelle Ts für eine Detektion eines Buskonflikts größer sein, als der Wert der Differenz D, um den sich einer der Zähler 151, 152 während der Zeit TLD ändern kann.

Für die Kompensation misst der Senden/Empfangen-Block 111 die Laufzeit TLD. Dies kann z.B. an der ersten steigenden oder fallenden Flanke in der Datenphase 452 erfolgen. Die Messung der Laufzeit TLD erfolgt prinzipiell genauso wie es bei CAN FD für die TDC Funktion notwendig ist. Der Senden/Empfangen-Block 111 stellt dem Konfliktdetektor 15 die gemessene Laufzeit TLD als Information über das Status-Signal S_l bereit.

Infolge dessen kann der Konfliktdetektor 15 mit dem Kompensationsblock 154 das von dem Senden/Empfangen-Block 111 gesendete TxD-Signal verzögern, anstatt das TxD-Signal direkt zu verarbeiten. Somit betrachtet der Konfliktdetektor 15 das Signal TxD_d, wie im oberen Teil von Fig. 13 dargestellt. Zudem wird das Einschaltsignal S_E nach dem Beginn der Datenphase 452 um die Laufzeit TLD verzögert generiert. Damit wird das RxD-Signal von dem Konfliktdetektor 15 erst ab dem Zeitpunkt analysiert, ab dem das RxD-Signal gültig ist. Fig. 13 zeigt das Empfangssignal RxDl, das von der Teilnehmerstation 10 bei dem zuvor genannten Beispiel erzeugt wird, bei dem die Teilnehmerstation 10 das Sendesignal TxDl sendet und die Teilnehmerstation 30 das Sendesignal TxDl mit einem Sendesignal TxD2 abbrechen möchte.

Der Kompensationsblock 154 kann als Schieberegister ausgestaltet sein. Alternativ und viel ressourcensparender kann der Kompensationsblock 154 als Zustandsautomat ausgestaltet sein. Dies ist möglich, weil in der als Sender agierenden Teilnehmerstation bekannt ist, aus wie vielen CAN Taktperioden bzw. Zeitquanten (TimeQuanta) ein gesendetes Bit besteht.

Die Kommunikationssteuereinrichtung 11 reagiert in der Datenphase 452 auf den signalisierten Sendekonflikt bzw. Buskonflikt mit dem Abbruch der Datenphase 452 und gegebenenfalls zusätzlich mit dem Senden eines Bitmusters, beispielsweise eines Fehlerrahmens 47, das den anderen Teilnehmerstationen 20, 30 das Ende der Datenphase 452 signalisiert. Die Kommunikationssteuereinrichtung 11 schaltet in die Arbitrationsphase 451 zurück.

Bei den Teilnehmerstationen 20, 30 kann die Signalisierung des Konflikts in der Datenphase 452 durch ein Signal von der jeweiligen Sende- /Empfangseinrichtung 22, 32 an die zugehörige

Kommunikationssteuereinrichtung 21, 32 erfolgen. Das Signal kann das Empfangssignal RXD sein, welches die entsprechende Sende- /Empfangseinrichtung 22 oder der Konfliktdetektor 35 mit einem vorbestimmen Bitmuster abändert, um den Konflikt zu signalisieren. Alternativ oder zusätzlich kann die entsprechende Sende-/Empfangseinrichtung 22, 32 oder der Konfliktdetektor 25, 35 ein separates Signal erzeugen, das über eine separate Signalleitung an die zugehörige Kommunikationssteuereinrichtung 21, 31 gesendet wird und insbesondere mindestens einen Schaltimpuls oder ein vorbestimmtes Bitmuster zur Signalisierung des Konflikts hat.

Weil in der Datenphase 452 der Sendekonflikt bzw. Buskonflikt an die zugehörige Kommunikationssteuereinrichtung 11, 21, 31 signalisiert wird, kann die im klassischen CAN herkömmliche Bitfehler-Prüfung durch den Vergleich von Sendesignal TXD mit Empfangssignal RXD ersetzt werden durch die Prüfung des Konfliktanzeigesignals S_K. Das Konfliktanzeigesignal S_K hat insbesondere ein vorbestimmtes Bitmuster, das den Sendekonflikt bzw. Buskonflikt signalisiert bzw. anzeigt. Insbesondere kann das Konfliktanzeigesignal S_K eine T als "OK-Signal" und eine 'O' als "Konflikt- Meldung" senden.

Optional bei den vorangehend beschriebenen Ausgestaltungen der Detektoren 15, 25, 35 ist, dass Flanken mindestens eines der Signale TxD, RxD mit erkannt und gezählt werden können. Hierfür kann mindestens ein zusätzlicher Zähler vorhanden sein. Wird pro Bit mehr als eine Flanke gezählt, so deutet dies auf einen Fehler hin. Der Konfliktdetektor 15, 25, 35 kann ein solches Ereignis beispielsweise sofort mit dem Signal S_K als Buskonflikt melden. Alternativ kann ein solches Ereignis erfasst werden, indem der Zählwert zusätzlich um einen vorbestimmten Wert inkrementiert wird, z.B. Zrx := Zrx + 1/2 Bitzeit T_b2.

Optional könnten bei den vorangehend beschriebenen Ausgestaltungen der Detektoren 15, 25, 35 die Zähler 151, 152 anstatt nur einen Buspegel zu zählen auch beide Buspegel zählen. In einem solchen Fall könnte beispielsweise der Zähler 151 bei dem Pegel 1 den Zählwert Ztx inkrementieren und bei dem Pegel 0 den Zählwert Ztx dekrementieren. Besonders vorteilhaft an den zuvor beschriebenen Varianten der Bewertung ist, dass die Ausgestaltung der Sende-/Empfangseinrichtung 12 sowohl für homogene CAN-XL-Bussysteme, bei welchen nur CAN XL Nachrichten 45 und keine CAN FD Nachrichten 46 versandt werden, als auch für gemischte Bussysteme einsetzbar ist, bei welchen entweder CAN XL Nachrichten 45 oder CAN FD Nachrichten 46 versandt werden. Daher ist die Sende- /Empfangseinrichtung 12 universell einsetzbar.

Fig. 14 veranschaulicht eine Ausgestaltung eines Konfliktdetektors 15A gemäß einem zweiten Ausführungsbeispiel. Der Konfliktdetektor 15A und die Kommunikationssteuereinrichtung 11 gemäß dem vorliegenden Ausführungsbeispiel sind bis auf die nachfolgend beschriebenen Unterschiede ausgestaltet, wie der Konfliktdetektor 15 und die Kommunikationssteuereinrichtung 11 gemäß dem vorangehenden Ausführungsbeispiel.

Der Konfliktdetektor 15A führt eine akkumulierte Bitasymmetrie-Messung durch. Hierfür hat der Konfliktdetektor 15A nur ein Zähler 150, der den Unterschied zwischen dem RxD-Signal und dem TxD-Signal misst bzw. zählt. Der Zähler 150 wird dann inkrementiert, wenn das Signal RxD und das um die Laufzeit TLD verzögerte TxD-Signal verschieden sind. Damit zählt der Zähler 150 des Detektors 15A den Unterschied, also die Bit-Asymmetrie, zwischen RxD und TxD. Bei hohen Bitraten von beispielsweise 5 Mbit/s oder mehr ist es sehr vorteilhaft, wenn das RxD-Signal mit dem verzögerten, also kompensierten TxD Signal verglichen wird. Die Verzögerung des TxD-Signals übernimmt der Kompensationsblock 154. Diese Variante ist ähnlich zu der Variante, die der Konfliktdetektor 15 gemäß dem vorangehenden Ausführungsbeispiel ausführt.

Wie bei dem vorangehenden Ausführungsbeispiel wird der Zähler 150 mit der Flanke des Einschaltsignals S_E zurückgesetzt auf Null und zählt anschließend mit dem CAN Takt und/oder Zeitquantentakt (TimeQuanta Takt) die Unterschiede zwischen dem RxD-Signal und dem um die Laufzeit TLD verzögerten TxD- Signal. Außerdem wird ein Zählwert Zasym des Zählers 150 in regelmäßigen Abständen, beispielsweise einmal pro Bitzeit ausgewertet, wie in Bezug auf das vorangehende Ausführungsbeispiel beschrieben. Überschreitet die Änderung des Zählwerts Zasym als Messergebnis einen Schwellwert, so liegt eine große Asymmetrie vor und somit ist ein Buskonflikt erkannt. Der Konfliktdetektor 15A signalisiert den Buskonflikt mit dem Signal S_K.

Um die Änderung des Zählwerts Zasym leichter bewerten zu können, kann der Zählwert Zasym mit der Frequenz der Auswertung zurückgesetzt werden. Wird der Zählwert Zasym beispielsweise 1-mal pro Bitzeit T_bt2 ausgewertet, kann der Zähler 150 bei der Auswertung auch zurückgesetzt werden. Dies hat den Vorteil, dass die Änderung des Zählwerts Zasym genau dem Wert des Zählwerts Zasym entspricht, weil die Zählung immer wieder bei 0 startet. Der Nachteil eines solchen des Zurücksetzens ist, dass damit die Historie verloren geht.

Fig. 15 veranschaulicht eine Ausgestaltung eines Konfliktdetektors 15B gemäß einem dritten Ausführungsbeispiel. Der Konfliktdetektor 15B und die Kommunikationssteuereinrichtung 11 gemäß dem vorliegenden Ausführungsbeispiel sind bis auf die nachfolgend beschriebenen Unterschiede ausgestaltet, wie der Konfliktdetektor 15 und die

Kommunikationssteuereinrichtung 11 gemäß dem ersten Ausführungsbeispiel.

Der Konfliktdetektor 15B führt ein Messen von Pulslängen im RxD-Signal aus. Hierfür hat der Konfliktdetektor 15B den Zähler 152, mit dem der Konfliktdetektor 15 B fortlaufend die Pulslängen im RxD-Signal vermisst. Aus dem Vergleich der Pulslängen als Messergebnis mit Schwellwerten Ts lässt sich mit einem Vergleichsblock 153B ein Konflikt ableiten.

In Fig. 16 sind Beispiele für unterschiedliche Pulslängen TI, T2, T3 im RxDl- Signal der Teilnehmerstation 10 gezeigt, das im Vergleich zu dem verzögerten Sendesignal TxDl_d über der Zeit t dargestellt ist. Die Pulslängen TI, T2, T3 hängen vom gesendeten Bitmuster in dem Sendesignal TxDl ab. Der Konfliktdetektor 15B geht davon aus, dass im Fall eines Buskonfliktes die Bitasymmetrie im RxDl-Signal stark zunimmt. Somit erkennt der Konfliktdetektor 15B einen Buskonflikt, wenn bei dem RxDl-Signal die 1-Pulse bzw. 1-Phasen deutlich verkürzt sind. Dies ist beispielsweise für die Pulslängen TI, T3 der 1- Pulse des RxDl-Signals von Fig. 16 der Fall. Für die Ermittlung der Pulslängen TI, T2, T3 im RxDl-Signal zählt der Zähler 152 die 1-Pulse und O-Pulse des RxDl-Signals. Ein Puls entspricht einem konstanten Signalwert, der von 2 Flanken begrenzt wird. In Fig. 16 hat das RxDl-Signal zwei 1-Pulse, die die unterschiedlichen Pulslängen TI, T3 haben, und einen 0_Puls mit der Pulslänge T2.

Über das Status-Signal S_l erhält der Konfliktdetektor 15B, insbesondere sein Vergleichsblock 153B, den Abtastpunkttakt, mit dem die einzelnen Bits des RxDl-Signals von dem Senden-/Empfangen-Block 111 abgetastet werden.

Damit steht dem Konfliktdetektor 15B, insbesondere seinem Vergleichsblock 153B, die Information über die Anzahl von abgetasteten Bits zur Verfügung. Dadurch ist dem Konfliktdetektor 15B, insbesondere seinem Vergleichsblock 153B, bekannt, wie vielen Bits der aktuelle Puls entspricht, dessen Pulslänge TI, T2, T3 von dem Zähler 152 gemessen wurde.

Zur Konflikterkennung vergleicht der Vergleichsblock 153B die jeweils gemessene Pulslänge TI, T2, T3 mit mindestens einem Schwellwert Ts. Der mindestens eine Schwellwert Ts von Fig. 16 gibt an, wie kurz ein Puls sein darf, ab dem ein Konflikt erkannt wird. Beispielsweise ist eine halbe Bitzeit T_b2 ein möglicher Wert. Alternativ oder zusätzlich kann ein Schwellwert Ts verwendet werden, der länger als eine Bitzeit T_b2 ist. In einem solchen Fall gibt der Schwellwert Ts an, wie lang ein Puls sein darf, ab dem ein Konflikt erkannt wird. Somit wird anstatt nach einer Verkürzung der Pulslängen der Pulse in dem RxDl-Signal nach einer Verlängerung der Pulslängen der Pulse in dem RxDl- Signal gesucht.

Beispielweise kann für jede Bitfolge mit konstantem Wert ein Schwellwert Ts angegeben werden. Wenn jedes S-te Bit ein Fixed Stuff-Bit ist, dann gibt es 2*S Bitfolgen: 0, 00, 000, ..., S mal 0; 1, 11, 111, ..., S mal 1. Das heißt es werden 2*S Schwellwerte benötigt.

Alternativ kann der Schwellwert Ts als die erlaubte Verkürzung oder Verlängerung eines Pulses angegeben werden. Beispielsweise ist die erlaubte Verkürzung oder Verlängerung ein halbe Bitzeit T_b2. Somit ist der Schwellwert Ts bei der Pulslänge T3, die bei dem Beispiel von Fig. 16 zwei Bits entspricht, 1,5 Bitzeiten. Da die Länge einer Bitzeit T_b2 in CAN Takt Perioden als Information vorliegt, kann der Schwellwert Ts sehr leicht für jede Bitfolge dynamisch ermittelt werden. Das hat den großen Vorteil, dass nur ein Schwellwert Ts eingestellt werden muss.

Eine vereinfachte Auswertung mit dem Vergleichsblock 153B besteht darin, dass nach zu kurzen Pulsen gesucht wird. Beispielsweise ist der Vergleichsblock 153B derart eingestellt, dass ein Puls als ein zu kurzer Puls bewertet wird, wenn ein Puls beispielsweise kürzer ist als eine halbe Bitzeit T_b2. Diese Variante ist sehr einfach, weil nur ein Vergleichswert bzw. Schwellwert Ts notwendig ist. Bei ungünstigen Bitfolgen könnte es jedoch sein, dass diese Pulslänge trotz Buskonflikt nicht unterschritten wird.

Der mindestens eine Schwellwert Ts kann auf verschiedene Arten festgelegt werden. Insbesondere kann der Schwellwert Ts fest konfiguriert sein. Alternativ oder zusätzlich kann der Schwellwert Ts im normalen Betrieb gemessen werden, beispielsweise im ersten erfolgreich gesendeten Rahmen 450 oder laufend mit jedem erfolgreich gesendeten Rahmen 450 oder es kann eine Kombination daraus sein.

Der Vorteil der Funktion des Konfliktdetektors 15B liegt darin, dass die Variante sehr einfach umzusetzen ist, da nur das RxD-Signal analysiert wird. Außerdem, insbesondere gleichzeitig, ist das von dem Konfliktdetektors 15B durchgeführte Verfahren in der Lage, jede beliebige Bitfolge zu bewerten/analysieren, die an dem RxD-Anschluss der Kommunikationssteuereinrichtung 11 empfangen wird.

Gemäß einer ersten Modifikation des Konfliktdetektors 15B ermittelt der Konfliktdetektor 15B im RxD-Signal unerlaubt lange Pulslängen, um fehlende Fixed Stuff-Bits zu detektieren. Bei CAN XL verwendet die Kommunikationssteuereinrichtung 11 in der Datenphase 452 Fixed Stuff-Bits oder andere festgelegte, wiederkehrende Bitmuster für die Synchronisation.

Eine unerlaubt lange Pulslänge wertet der Konfliktdetektor 15B, genauer gesagt sein Vergleichsblock 153, als Buskonflikt oder einen anderen Fehler. Ist beispielsweise jedes S-te Bit ein Fixed Stuff-Bit, dann hat die maximale erlaubte Pulslänge TI, T2, T3 mit einem konstanten Pegel einen Wert von S Bits. Das auf diese Bitfolge folgende Bit ist ein Fixed Stuff-Bit mit inversem Wert des S-ten Bits.

Somit wird auch bei der Modifikation des Konfliktdetektors 15B der Zähler 152 verwendet, um die Pulslängen zwischen zwei Flanken zu messen. Wird eine Pulslänge von beispielsweise S+l idealen Bitlängen bzw. Bitzeiten T_b2 oder S+0,8 idealen Bitlängen bzw. Bitzeiten T_b2 gemessen, so fehlt ein Fixed Stuff- Bit. In diesem Fall entscheidet der Konfliktdetektor 15B, genauer gesagt sein Vergleichsblock 153 B, dass ein Buskonflikt vorliegt. Der Konfliktdetektor 15 B, genauer gesagt sein Vergleichsblock 153B, meldet den Buskonflikt über das Konfliktanzeigesignal S_K an die Kommunikationssteuereinrichtung 11.

Zusätzlich zu dem zuvor genannten Vorteil des Konfliktdetektors 15B liegt der Vorteil der beschriebenen ersten Modifikation des Konfliktdetektors 15B darin, dass der Parameter S eine CAN XL Eigenschaft ist. Daher wird für die Funktion des modifizierten Konfliktdetektors 15B gar keine Konfiguration benötigt. Jedoch erkennt der Konfliktdetektor 15B gemäß der ersten Modifikation nur fehlende Bits im Datenstrom des RXD-Signals. Geringe Änderungen in der Bitasymmetrie kann der modifizierte Konfliktdetektor 15B nicht feststellen.

Verwendet jedoch ein Bussystem 1 nur Transceiver bzw. Sende/Empfangseinrichtungen 12, 22, 32 CAN XL ausschließlich im Arbitrationsmodus, also mit rezessiven und dominanten Buspegeln, so reicht diese Art der Konfliktdetektion aus. Grund dafür ist, dass der Fehlerrahmen 47 also dominant gesendet wird und somit das Sendesignal der sendenden Teilnehmerstation überschreiben kann.

Gemäß einer zweiten Modifikation des Konfliktdetektors 15B vergleicht der Konfliktdetektor 15B im RxD-Signal die Pulslängen eines 1-Pulses und eines 0- Pulses, um eine Bit Asymmetriemessung zwischen zwei steigendenden oder zwei fallenden Flanken am RxD-Signal vorzunehmen.

Beispielsweise kann bei der Bitfolge von Fig. 16 die Bitasymmetrie zwischen zwei steigenden Flanken gemessen werden. Wie bereits erwähnt, hat in dem RxDl-Signal die erste 1-Phase bzw. der erste 1-Puls eine Pulslänge TI und die erste O-Phase bzw. der erste O-Puls hat eine Pulslänge T2. Aufgrund der Fixed Stuff-Bits kann eine O-Phase bzw. eine 1-Phase zwischen 1 und S Bits lang werden. Insgesamt gibt es S*S Bitfolgen aus möglichen O-Phasen und 1-Phasen.

Der Konfliktdetektor 15B, genauer gesagt sein Vergleichsblock 153B, ermittelt bei der vorliegenden zweiten Modifikation somit die Asymmetrie beispielsweise aus der Dauer bzw. Pulslänge TI der 1-Phase und der Dauer bzw. Pulslänge T2 der O-Phase sowie der Zahl der Bits pro Phase. Überschreitet die Bitasymmetrie einen Schwellwert, so erkennt der Konfliktdetektor 15B, genauer gesagt sein Vergleichsblock 153B, einen Buskonflikt. Der Konfliktdetektor 15B, genauer gesagt sein Vergleichsblock 153B, meldet den Buskonflikt über das Konfliktanzeigesignal S_K an die Kommunikationssteuereinrichtung 11.

Vorteilhaft an der zweiten Modifikation des Konfliktdetektors 15B ist wie zuvor, dass diese Variante eine geringe Komplexität hat, da der Konfliktdetektor 15B nur das RxD-Signal vermisst.

Fig. 17 veranschaulicht eine Ausgestaltung eines Konfliktdetektors 15C gemäß einem vierten Ausführungsbeispiel. Der Konfliktdetektor 15C und die Kommunikationssteuereinrichtung 11 gemäß dem vorliegenden Ausführungsbeispiel sind bis auf die nachfolgend beschriebenen Unterschiede ausgestaltet, wie der Konfliktdetektor 15 und die

Kommunikationssteuereinrichtung 11 gemäß dem ersten Ausführungsbeispiel.

Der Konfliktdetektor 15C führt ein Messen von Pulslängen mit konstanten Bit- Wert-Phasen im TxD-Signal und RxD-Signal aus. Optional ist das verzögerte Signal TxD_d verwendbar, wie mit dem gestrichelt gezeichneten Block 154 dargestellt. Anschließend erfolgt der Vergleich zusammengehöriger Pulslängen. Im Idealfall sind die Pulslängen im TxD-Signal identisch mit den Pulslängen im RxD-Signal. Hierfür hat der Konfliktdetektor 15B den ersten Zähler 151, mit dem der Konfliktdetektor 15C fortlaufend die Pulslängen in dem TxD-Signal vermisst. Außerdem hat der Konfliktdetektor 15C den zweiten Zähler 152, mit dem der Konfliktdetektor 15C fortlaufend die Pulslängen in dem RxD-Signal vermisst. Aus dem Vergleich der Pulslängen mit Schwellwerten Ts lässt sich mit dem Vergleichsblock 153C ein Konflikt ableiten.

In Fig. 18 sind zusätzlich zu den Beispielen für unterschiedliche Pulslängen TI, T2, T3 im RxDl-Signal der Teilnehmerstation 10 Beispiele für unterschiedliche Pulslängen T4, T5, T6 im verzögerten Sendesignal TxDl_d über der Zeit t dargestellt. Die Pulslängen TI, T2, T3, T4, T5, T6 hängen vom gesendeten Bitmuster in dem Sendesignal TxDl ab.

Der Konfliktdetektor 15C misst somit mit seinen Zählern 151, 152 die O-Phasen und 1-Phasen, die zwischen zwei Flanken der jeweiligen Signale TxDl_d, RxDl auftreten. Alternativ zu dem Signal TxDl_d von Fig. 18 kann der Zähler 151 die O-Phasen und 1-Phasen vermessen, die zwischen zwei Flanken des Signals TxDl auftreten.

Der Vergleichsblock 153C vergleicht die gemessene erste 1-Phase im RxD- Signal, also die Pulslänge TI bei dem Beispiel von Fig. 18, mit der ersten 1- Phase im TxD-Signal, also der Pulslänge T4 bei dem Beispiel von Fig. 18. Der Vergleich erfolgt durch eine Differenzbildung, z.B. Asym=T4-Tl. Als nächstes wird die O-Phase verglichen. Das Ergebnis bei dem Beispiel von Fig. 18 ist Asym=T5-T2.

Das von dem Vergleichsblock 153C ermittelte Vergleichsergebnis entspricht dem Betrag der Bitasymmetrie Asym. Überschreitet die Bitasymmetrie Asym einen gewissen Schwellwert, so liegt ein Buskonflikt vor. Somit führt der Vergleichsblock 153C zusätzlich einen Vergleich mit einem Schwellwert durch. Der Konfliktdetektor 15C, genauer gesagt sein Vergleichsblock 153C, meldet den Buskonflikt über das Konfliktanzeigesignal S_K an die Kommunikationssteuereinrichtung 11.

Der Vorteil der zuvor beschriebenen Funktion des Konfliktdetektors 15C ist, dass der Konfliktdetektor 15C keine Information über die Anzahl der Bits in einer Phase, insbesondere der Datenphase 452, benötigt. Der Konfliktdetektor 15C muss lediglich zählen und anschließend vergleichen. Noch dazu ist der Konfliktdetektor 15C implizit in der Lage, auch zusätzliche Flankenwechsel zu detektieren, die nur im Falle eines Buskonflikts erwartet werden. Vom Buskonflikt erzeugte zusätzliche Flanken im RxD-Signal würden nämlich dazu führen, dass die Auswertelogik des Vergleichsblocks 153C durcheinander kommt und sehr große Bitasymmetrien ermittelt. Werden solche sehr große Bitasymmetrien ermittelt, wird der Schwellwert sicher überschritten und damit ist der Buskonflikt detektiert.

Alle zuvor beschriebenen Ausgestaltungen der Konfliktdetektoren 15, 15A, 15B, 15C, 25, 35 und deren Modifikationen, der Teilnehmerstationen 10, 20, 30, des Bussystems 1 und des darin ausgeführten Verfahrens können einzeln oder in allen möglichen Kombinationen Verwendung finden. Insbesondere können alle Merkmale der zuvor beschriebenen Ausführungsbeispiele und/oder deren Modifikationen beliebig kombiniert werden. Zusätzlich oder alternativ sind insbesondere folgende Modifikationen denkbar.

Selbstverständlich sind bei allen zuvor beschriebenen Ausführungsbeispielen beliebig viele Zähler 150, 151 zum Messen der Pulslängen des analysierten Sendesignals TxD, TxDl, TxD_d einsetzbar. Selbstverständlich sind bei allen zuvor beschriebenen Ausführungsbeispielen beliebig viele Zähler 150, 152 zum Messen der Pulslängen des analysierten Empfangssignals RxD, RxDl einsetzbar.

Auch wenn die Erfindung zuvor am Beispiel des CAN-Bussystems beschrieben ist, kann die Erfindung bei jedem Kommunikationsnetzwerk und/oder Kommunikationsverfahren eingesetzt werden, bei welchem zwei verschiedene Kommunikationsphasen verwendet werden, in denen sich die Buszustände unterscheiden, die für die unterschiedlichen Kommunikationsphasen erzeugt werden. Insbesondere ist die Erfindung bei Entwicklungen von sonstigen seriellen Kommunikationsnetzwerken, wie insbesondere Ethernet, Feldbussystemen, usw. einsetzbar.

Insbesondere kann das Bussystem 1 gemäß den Ausführungsbeispielen ein Kommunikationsnetzwerk sein, bei welchem Daten seriell mit zwei verschiedenen Bitraten übertragbar sind. Es ist vorteilhaft, jedoch nicht zwangsläufige Voraussetzung, dass bei dem Bussystem 1 zumindest für bestimmte Zeitspannen ein exklusiver, kollisionsfreier Zugriff einer Teilnehmerstation 10, 20, 30 auf einen gemeinsamen Kanal gewährleistet ist.

Die Anzahl und Anordnung der Teilnehmerstationen 10, 20, 30 in dem Bussystem 1 der Ausführungsbeispiele ist beliebig. Insbesondere kann die

Teilnehmerstation 20 in dem Bussystem 1 entfallen. Es ist möglich, dass eine oder mehrere der Teilnehmerstationen 10 oder 30 in dem Bussystem 1 vorhanden sind. Denkbar ist, dass alle Teilnehmerstationen in dem Bussystem 1 gleich ausgestaltet sind, also nur Teilnehmerstation 10 oder nur Teilnehmerstation 30 vorhanden sind.

Alle zuvor beschriebenen Varianten für die Erkennung des Buskonflikts können zeitlicher Filterung unterliegen, um die Robustheit in Bezug auf elektromagnetische Verträglichkeit (EMV) und gegenüber elektrostatischer Aufladung (ESD), Pulsen und anderen Störungen zu erhöhen.