DE19843810A1 - Datenbus - Google Patents

Datenbus

Info

Publication number
DE19843810A1
DE19843810A1 DE19843810A DE19843810A DE19843810A1 DE 19843810 A1 DE19843810 A1 DE 19843810A1 DE 19843810 A DE19843810 A DE 19843810A DE 19843810 A DE19843810 A DE 19843810A DE 19843810 A1 DE19843810 A1 DE 19843810A1
Authority
DE
Germany
Prior art keywords
block
message
data bus
data
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19843810A
Other languages
English (en)
Inventor
Peter Buehring
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Corporate Intellectual Property GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Corporate Intellectual Property GmbH filed Critical Philips Corporate Intellectual Property GmbH
Priority to DE19843810A priority Critical patent/DE19843810A1/de
Priority to EP99203000A priority patent/EP0989701A3/de
Priority to JP11269784A priority patent/JP2000112882A/ja
Priority to US09/406,283 priority patent/US6542947B1/en
Publication of DE19843810A1 publication Critical patent/DE19843810A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)
    • H04L12/4135Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD) using bit-wise arbitration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40143Bus networks involving priority mechanisms
    • H04L12/40163Bus networks involving priority mechanisms by assigning priority to messages according to a message field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

Bei einem Datenbus für eine serielle Datenübertragung zwischen Geräten, welche Daten über den Datenbus senden und/oder empfangen können, wobei auf dem Datenbus rezessive und dominante Zustände vorgesehen sind, denen jeweils ein Bitwert zugeordnet ist, ist zur Unterbrechung einer Nachricht niedrigerer Priorität durch eine Nachricht höherer Priorität ohne zeitliche Verzögerung und ohne zusätzliche Datenkanäle vorgesehen, daß Nachrichten in Nachrichtenblöcken übertragen werden, wobei jeder Nachrichtenblock zu Beginn einen Starblock mit (n+k) dominanten und j nachfolgenden rezessiven Bits und nachfolgende Datenblöcke mit n Datenbits und m nachfolgenden rezessiven Bits aufweist, DOLLAR A daß ein laufend übertragener Nachrichtenblock niedriger Priorität durch ein anderes Gerät zur Übertragung eines Nachrichtenblockes mit hoher Priorität unterbrochen werden kann, indem dieses einen neuen Startblock auf dem Datenbus erzeugt und nachfolgend die zugehörigen Datenblöcke sendet, DOLLAR A und daß ein einen Nachrichtenblock auf dem Datenbus sendendes Gerät laufend überprüft, ob auf dem Datenbus ein Startblock auftaucht und gegebenenfalls die Sendung seines Nachrichtenblockes abbricht.

Description

Die Erfindung betrifft einen Datenbus für eine serielle Datenübertragung zwischen Geräten, welche Daten über den Datenbus senden und/oder empfangen können, wobei auf dem Datenbus rezessive und dominante Zustände vorgesehen sind, denen jeweils ein Bitwert zugeordnet ist.
Bei derartigen Datenbussen besteht mitunter der Wunsch, eine laufend übertragene Nachricht zu unterbrechen, wenn eine Nachricht höherer Priorität übertragen werden soll. Dies ist in den meisten Fällen nur mit Einschränkungen möglich, da entweder ein sehr aufwendiger Mechanismus zur Bevorzugung dringender Nachrichten vorgesehen ist, eine dringende Nachricht nicht wirklich sofort gesendet werden kann oder zusätzliche Übertragungskanäle zur Signalisierung einer dringenden Nachricht vorgesehen sind.
So ist beispielsweise bei der US 5,546,392 ein zusätzlicher Übertragungskanal zur Signalisierung einer dringenden Nachricht vorgesehen.
Es ist Aufgabe der Erfindung, einen seriellen Datenbus anzugeben, bei dem in einem Kanal eine Nachricht geringerer Priorität jederzeit und sofort von einer Nachricht höherer Priorität unterbrochen werden kann, so daß bei Bedarf ohne Verzögerung die Nachricht höherer Priorität auf den Datenbus übertragen werden kann.
Diese Aufgabe ist erfindungsgemäß dadurch gelöst, daß Nachrichten in Nachrichtenblöcken übertragen werden, wobei jeder Nachrichtenblock zu Beginn einen Startblock mit (n+k) dominanten und j nachfolgenden rezessiven Bits und nachfolgende Datenblöcke mit n Datenbits und m nachfolgenden rezessiven Bits aufweist,
daß ein laufend übertragener Nachrichtenblock niedriger Priorität durch ein anderes Gerät zur Übertragung eines Nachrichtenblockes mit hoher Priorität unterbrochen werden kann, indem dieses einen neuen Startblock auf dem Datenbus erzeugt und nachfolgend die zugehörigen Datenblöcke sendet,
und daß ein einen Nachrichtenblock auf dem Datenbus sendendes Gerät laufend überprüft, ob auf dem Datenbus ein Startblock auftaucht und gegebenenfalls die Sendung seines Nachrichtenblockes abbricht.
Auf dem seriellen Datenbus existieren zwei Zustände; der rezessive und der dominante Zustand. Beiden Zuständen werden verschiedene Bitwerte zugeordnet, beispielsweise dem dominanten Zustand der Bitwert Null und dem rezessiven Zustand der Bitwert Eins. Der Bus kann dabei beispielsweise so ausgelegt sein, daß eine sendende Quelle den dominanten Zustand dadurch erzielt, daß sie die Amplitude des Busses auf Null oder nahezu Null absenkt. Der rezessive Zustand kann durch hochohmiges Verhalten der Quelle erzielt werden, da der Bus dann von sich aus einen hohen Pegel einnimmt. Findet keine Nachrichtenübertragung statt, so nimmt der Bus ebenfalls den rezessiven Zustand ein.
Für den erfindungsgemäßen Datenbus ist festgelegt, in welcher Form Nachrichten übertragen werden. Dies geschieht in Form von Nachrichtenblöcken, wobei jeder Nachrichtenblock zu Beginn einen Startblock und diesem nachfolgend wenigstens einen Datenblock aufweist. Sowohl für die Startblöcke wie für die Datenblöcke sind bestimmte Formate festgelegt. So ist für jeden Startblock zu Beginn eines Nachrichtenblockes festgelegt, daß dieser n+k dominante und j nachfolgende rezessive Bits aufweisen muß. Datenblöcke weisen hingegen maximal n Datenbits auf, denen m nachfolgende rezessive Bits folgen. Aus dieser Festlegung ergibt sich bereits, daß dann, wenn mehr als n dominante Bits auf dem Bus auftauchen, es sich um einen Startblock handeln muß, da Datenblöcke maximal n Daten aufweisen und somit, selbst wenn diese n Datenbits alle dominant sind, maximal n dominante Bits hintereinander in einem Datenblock auftauchen können, da jedem Datenblock immer m nachfolgende rezessive Bits folgen. Es ergibt sich insoweit also bereits eine eindeutige Identifizierung der Startblöcke. Für den erfindungsgemäßen Datenbus sind ferner Nachrichtenblöcke verschiedener Prioritäten festgelegt. Es sind wenigstens zwei Prioritäten vorgesehen, welche so gestaltet sind, daß ein laufend übertragener Nachrichtenblock der niedrigeren Priorität durch einen Nachrichtenblock der höheren Priorität jederzeit und sofort unterbrochen werden kann. Dies geschieht dadurch, daß der Sender des Nachrichtenblockes mit der höheren Priorität auf dem Datenbus einen Startblock des Nachrichtenblockes der höheren Priorität erzeugt. Dies geschieht gegebenenfalls während der Übertragung des Nachrichtenblockes der niedrigeren Priorität. Der Sender des Nachrichtenblockes mit der höheren Priorität erreicht dies dadurch, daß er n+k dominante Bits auf dem Datenbus als Startblock erzeugt. Hierzu können gegebenenfalls auch dominante Bits des übertragenen Nachrichtenblockes der niedrigeren Priorität eingesetzt werden. Es können aber auch rezessive Bits dieses Nachrichtenblockes der niedrigeren Priorität durch dominante Bits überschrieben werden. Entscheidend ist dabei nur, daß der Sender des Nachrichtenblockes mit der höheren Priorität n+k dominante Bits mit j nachfolgenden rezessiven Bits auf dem Datenbus erzeugt.
Die Übertragung der Nachricht mit der höheren Priorität kann nur dann gelingen, wenn der Sender der Nachricht mit der niedrigeren Priorität die Sendung seines Nachrichtenblockes abbricht, wenn er einen Startblock auf dem Datenbus erkennt. Es ist also für den erfindungsgemäßen Datenbus ferner vorgesehen, daß ein Sender einer Nachricht laufend auf dem Datenbus überprüfen muß, ob ein Startblock eines anderen Senders auf dem Datenbus auftaucht. Ist dies der Fall, muß der Sender seine Nachricht unterbrechen. Entsprechend überprüft ein Empfänger ständig, ob ein neuer Startblock auftaucht. Ist dies der Fall bevor der Empfang der vorhergehenden Nachricht regulär beendet wurde, wird der Empfang abgebrochen und mit dem Empfang einer neuen Nachricht nach dem Startblock begonnen.
Damit ist erreicht, daß ein Nachrichtenblock einer höheren Priorität jederzeit die Übertragung eines Nachrichtenblockes einer niedrigeren Priorität unterbrechen kann, indem er einen Startblock der Nachricht mit der höheren Priorität auf dem Bus erzeugt.
Es sind für die Abstimmung zwischen den Nachrichtenblöcken der verschiedenen Prioritäten keine zusätzlichen Kanäle oder Signalisierungen auf dem Bus erforderlich. Vielmehr kann bei dem erfindungsgemäßen Datenbus auf äußerst einfache Weise eine laufende Nachricht niedrigerer Priorität durch eine Nachricht höherer Priorität unterbrochen werden. Ferner ist gewährleistet, daß die dringende Nachricht wirklich sofort gesendet werden kann und nicht erst eine bestimmte Zeit abwarten muß, um eine bereits auf dem Bus befindliche Nachricht zu Ende zu bringen oder um einen Entscheidungsprozeß abzuwickeln. Durch die Einfachheit der Vorgehensweise ist der erfindungsgemäße Datenbus äußerst einfach zu implementieren.
Durch die Ausgestaltung der Erfindung gemäß Anspruch 2 ist bereits im vorhinein bestimmt, daß nur das festgelegte Gerät die Übertragung anderer Nachrichtenblöcke unterbrechen darf.
Es kann darüber hinaus vorteilhaft festgelegt sein, wie gemäß einer weiteren Ausgestaltung der Erfindung vorgesehen ist, daß festgelegt ist, mit welcher Nachricht und somit also mit welchem Nachrichtenblock andere laufend übertragene Nachrichtenblöcke unterbrochen werden dürfen.
Wie nach einer weiteren Ausgestaltung der Erfindung vorgesehen ist, kann ein laufend übertragener Nachrichtenblock im einfachsten Fall bereits dann unterbrochen werden, wenn auf dem Datenbus das (n+1)te Bit eines Datenblocks dominant ist. Dann ist bereits grundsätzlich die Vermutung gegeben, daß ein anderer Sender einen Startblock auf dem Bus erzeugt, auch wenn noch nicht die n+k erforderlichen dominanten Bits auf dem Bus vorhanden sind. Es kann auf diese Weise der schnellstmögliche Abbruch der Übertragung des Datenblockes mit der niedrigeren Priorität erreicht werden.
Soll hingegen sichergestellt sein, daß es sich mit höherer Sicherheit um einen Startblock handelt, so kann vorteilhaft, wie gemäß weiterer Ausgestaltung der Erfindung vorgesehen, das sendende Gerät die Sendung seines Nachrichtenblockes erst dann abbrechen, wenn auf dem Bus eine festgelegte Anzahl von Bits zwischen dem n+1ten und (n+k)ten Bit dominant sind. Es kann damit je nach gewählter vorgegebener Anzahl eine hohe Sicherheit erzielt werden, daß es sich nicht um einen Datenfehler, sondern um einen Startblock eines anderen sendenden Gerätes handelt.
Im einfachsten Falle kann, wie gemäß weiterer Ausgestaltung der Erfindung vorgesehen ist, ein sendendes Gerät seinen Nachrichtenblock bereits dann abbrechen, wenn eine bitweise Überprüfung ergibt, daß ein als rezessiv gesendetes Bit auf dem Datenbus tatsächlich dominant ist. Es handelt sich dann entweder um den Startblock eines anderen sendenden Gerätes oder um einen Datenfehler.
Will ein Gerät auf dem Datenbus eine Nachricht höherer Priorität übertragen und einen gerade auf dem Datenbus übertragenen Nachrichtenblock niedrigerer Priorität zu diesem Zwecke unterbrechen, so muß ein Startblock mit n+k dominanten Bits erzeugt werden. Hierzu kann das sendende Gerät in einer Phase, in der in der zweiten Nachricht rezessive Bits erzeugt werden, diese durch n+k dominante Bits ersetzen. Es kann aber auch, wie gemäß weiterer Ausgestaltung der Erfindung vorgesehen ist, bei der Erzeugung der dominanten Bits seines Startblockes dominante Bits des gerade übertragenen Nachrichtenblockes niedrigerer Priorität mit einbeziehen. Es kann also dominante Bits des Nachrichtenblockes niedrigerer Priorität mit nutzen für die Erzeugung der dominanten Bits seines Startblockes. Damit wird eine noch schnellere Unterbrechung und damit auch schnellere Übertragung des Nachrichtenblockes höherer Priorität erzielt.
Um die Verlustzeiten insbesondere für den Startblock und für die Zeit, die für die rezessiven Bits am Ende der Blöcke benötigt wird, gering zu halten ist nach weiterer Ausgestaltung der Erfindung vorgesehen, daß die Anzahl der rezessiven Bits in den Startblöcken und den Datenblöcken jeweils nur eins beträgt und daß die Anzahl der dominanten Bits eines Startblockes um eins größer ist als die Anzahl der Datenbits in den Datenblöcken. Damit ist das Prozedere gemäß des erfindungsgemäßen Datenbusses bereits durchführbar und es wird minimal zusätzlicher Zeitaufwand für die Erkennung der Startblöcke benötigt.
Im einfachsten Falle können, wie gemäß weiterer Ausgestaltung der Erfindung vorgesehen ist, nur Nachrichten zweier Prioritäten existieren. Es ist damit auf einfachste Weise klar, welche Nachricht andere Nachrichten unterbrechen darf.
Zur Signalisierung der Priorität einer übertragenen Nachricht können vorteilhaft die Merkmale gemäß Anspruch 11 eingesetzt werden.
Nachfolgend wird ein Ausführungsbeispiel der Erfindung anhand der Zeichnung näher erläutert. Es zeigen:
Fig. 1 eine schematische Darstellung der Struktur eines Nachrichtenblockes auf dem erfindungsgemaßen Datenbus und
Fig. 2 eine schematische Darstellung der Unterbrechung der Übertragung eines Nachrichtenblockes niedrigerer Priorität durch einen Nachrichtenblock höherer Priorität.
In Fig. 1 ist ein Nachrichtenblock NB, wie er auf dem erfindungsgemäßen Datenbus übertragen werden könnte, schematisch dargestellt.
Es ist schematisch angedeutet, daß auf dem Bus zwei Zustände existieren können. Einerseits existiert der dominante Zustand d, welcher in dem Ausführungsbeispiel einen niedrigen Pegel bedeutet. Ferner existiert ein rezessiver Zustand r, welcher in dem Ausführungsbeispiel einen hohen Pegel auf dem Bus bedeutet. Es kann beispielsweise festgelegt sein, daß dem dominanten Zustand der Bitwert 0 und dem rezessiven Zustand des Busses der Bitwert 1 zugeordnet ist.
Zu Beginn jedes Nachrichtenblockes NB wird ein Startblock SOF übertragen. Es ist festgelegt, daß in jedem Startblock zu Beginn n+k dominante Bits übertragen werden. Dies ist in der Figur durch entsprechende niedrige Amplitude auf dem Niveau d der dominanten Bits angedeutet. Es ist ferner festgelegt, daß den n+k dominanten Bits in dem Startblock j rezessive Bits nachfolgen. Dies ist in der Fig. 1 dadurch erkennbar, daß am Ende des Startblockes SOF der Datenbus hohen Pegel annimmt, also wenigstens ein rezessives Bit übertragen wird.
Innerhalb des Nachrichtenblockes wird eine vorgegebene Anzahl von Datenblöcken DB übertragen; in dem Ausführungsbeispiel gemäß Fig. 1 handelt es sich um zehn Datenblöcke.
Innerhalb eines jeden Datenblockes DB werden zunächst n Datenbits übertragen. Innerhalb jeden Datenblockes folgen den n Datenbits m rezessive Bits. Diese sind in der Figur jeweils hinter den Datenbits angedeutet und mit br gekennzeichnet.
Die in der Figur angedeuteten Datenbits bd jedes Datenblockes DB können, je nach Inhalt der zu übertragenen Nachricht entweder rezessiv oder dominant sein.
Im einfachsten Falle kann für die Anzahl j der rezessiven Bits in dem Startblock und der Anzahl m der rezessiven Bits in den Datenblöcken festgelegt sein, daß sie jeweils nur ein Bit betragen, daß also j = 1 und m = 1 gilt.
Ferner kann festgelegt sein, daß die Anzahl n+k der dominanten Bits in dem Startblock nur um ein Bit höher ist als die Anzahl n der Datenbits in den Datenblöcken, daß also k = 1 ist. Es wird damit eine minimale Länge des Startblockes erzielt und somit auch eine minimale Übertragungszeit für die Startblöcke.
Es soll im folgenden für die Erläuterung des Ausführungsbeispiels angenommen werden, daß in jedem Datenblock vier Datenbits übertragen werden, daß also n = 4 ist, und daß der Startblock nur um ein Bit länger ist, daß also k = 1 ist. Ferner soll die Anzahl der rezessiven Bits nur 1 betragen, es gilt also j = 1 und m = 1.
Diese Verabredung soll insbesondere für die Erläuterung des Vorgangs der Unterbrechung eines laufend übertragenen Nachrichtenblockes durch einen Nachrichtenblock höherer Priorität gemäß Fig. 2 gelten.
Für die Darstellung gemäß Fig. 2 gilt, daß d die Übertragung eines dominanten Bits und r die Übertragung eines rezessiven Bits auf dem Datenbus andeutet. Fett dargestellte Bits d oder r gehören entweder zu einem Startblock SOF oder sind ein rezessives Bit eines Datenblockes DB.
In Fig. 2A ist zunächst eine mögliche Übertragung eines Nachrichtenblockes niedrigerer Priorität auf dem Datenbus angedeutet. Der Nachrichtenblock weist zu Beginn einen Startblock SOF auf, in dem zunächst fünf dominante Bits d und ein nachfolgend übertragenes rezessives Bit r auftaucht. In der Darstellung gemäß Fig. 2A folgen diesem Startblock SOF vier Datenblöcke DB, in denen jeweils zunächst vier Datenbits d oder r und nachfolgend jeweils ein rezessives Bit r übertragen wird.
Es kann nun beispielsweise zum Zeitpunkt t1, der in Fig. 2B durch einen Balken signalisiert ist, der Wunsch bestehen, diese übertragene Nachricht gemäß Fig. 2A zu unterbrechen. Es soll statt dessen ein Nachrichtenblock höherer Priorität übertragen werden.
Die Übertragung eines neuen Nachrichtenblockes mit der höheren Priorität erfordert zu Beginn dieser Nachricht die Übertragung eines neuen Startblockes SOF.
Dazu ist es erforderlich, daß auf dem Datenbus fünf dominante Bits d erzeugt werden. Dies kann beispielsweise in einer Übertragungslücke geschehen oder dadurch geschehen, daß fünf rezessive Bits auf dem Datenbus durch dominante Bits ersetzt werden. Diese Alternativen stehen jedoch oftmals dann nicht zur Verfügung, wenn laufend eine Nachricht auf dem Datenbus übertragen wird, beispielsweise die Nachricht gemäß Fig. 2A. In diesem Falle ist es einfacher und vor allem schneller, wenn auf dem Datenbus befindliche dominante Bits d mit in die Erzeugung des Startblockes SOF des Nachrichtenblockes mit der höheren Priorität einbezogen werden. Dazu werden in dem Beispiel gemäß Fig. 2 die ersten beiden dominanten Bits des zweiten Datenblockes der Nachricht gemäß Fig. 2A in die Erzeugung des Startblockes mit einbezogen. In Fig. 2C ist dargestellt, daß das sendende Gerät, das den Nachrichtenblock mit der höheren Priorität auf dem Datenbus übertragen will, selbst nur einen verkürzten Startblock SOFv erzeugt, welcher von sich aus nur drei dominante Bits d enthält.
Diese Anzahl ist deshalb so gewählt worden, weil zum Zeitpunkt t1, als der Wunsch der Übertragung der Nachricht mit der höheren Priorität entstand, bereits zwei dominante Datenbits in dem zweiten Datenblock der Nachricht gemäß Fig. 2A auf dem Bus waren. Es ist deshalb ab dem Zeitpunkt t1 nur noch erforderlich, daß der Sender des Nachrichtenblockes mit der höheren Priorität drei weitere Datenbits d auf dem Bus erzeugt.
Nachdem auf diese Weise ein neuer Startblock erzeugt worden ist, können nachfolgend die Datenblöcke DB der Nachricht mit der höheren Priorität auf dem Datenbus übertragen werden, wie dies gemäß Fig. 2C angedeutet ist.
In Fig. 2F ist das Ergebnis der Unterbrechung des Nachrichtenblockes gemäß Fig. 2A durch den Nachrichtenblock höherer Priorität gemäß Fig. 2C dargestellt. Fig. 2F zeigt hierzu zunächst den Startblock SOF der Nachricht mit der geringeren Priorität und nachfolgend einen Datenblock DB des Nachrichtenblockes mit der geringeren Priorität gemäß Fig. 2A. Die nachfolgend ursprünglich in der Nachricht gemäß Fig. 2A übertragenen beiden dominanten Bits d sind bereits mit genutzt für den Startblock SOF der nachfolgend übertragenen Nachricht höherer Priorität. In diesem Startblock SOF sind die beiden Bits des zweiten Nachrichtenblockes DB der Nachricht gemäß Fig. 2A und die drei Bits, die der Sender tatsächlich gemäß Fig. 2C übertragen hat, zusammengefaßt zu einem neuen Startblock SOF, der fünf dominante Bits d enthält, denen ein rezessives Bit r folgt. Nachfolgend erscheinen gemäß Fig. 2F auf dem Datenbus die Datenblöcke DB der Nachricht höherer Priorität gemäß Fig. 2C.
Es ist somit gelungen, die Nachricht höherer Priorität gemäß Fig. 2C wirklich sofort zu starten. Es ist sogar gelungen, bereits vor dem gewünschten Startzeitpunkt t1 übertragene dominante Bits d der Nachricht gemäß Fig. 2A für den Startblock des Nachrichtenblockes höherer Priorität mit zu nutzen.
Eine wesentliche Voraussetzung für das Gelingen dieser schnellen Übertragung des Nachrichtenblockes höherer Priorität gemäß Fig. 2C ist, daß der Sender des Nachrichtenblockes niedrigerer Priorität gemäß Fig. 2A die Übertragung dieses Nachrichtenblockes sofort abbricht, wenn die dringendere Nachricht gemäß Fig. 2C gesendet werden soll.
Es können hierzu verschiedene Vereinbarungen getroffen werden. Die Sendung kann dann unterbrochen werden, wenn ein Startblock eines anderen Gerätes auf dem Bus auftaucht. Die Sendung kann aber auch bereits dann unterbrochen werden, wenn ein Bit, das als rezessives Bit r gesendet wurde, auf dem Datenbus tatsächlich als dominantes Bit auftaucht. Dieser Fall wurde für die Darstellung gemäß Fig. 2 gewählt. In Fig. 2D ist angedeutet, daß zum Zeitpunkt t2 der Sender der Nachricht gemäß Fig. 2A erkennt, daß das unmittelbar vor dem Zeitpunkt t2 gesendete rezessive Bit r des zweiten Datenblockes des Nachrichtenblockes auf dem Datenbus tatsächlich, wie die Darstellung gemäß Fig. 2F zeigt, als dominantes Bit auftaucht. Dies ist deshalb der Fall, weil der Sender der Nachricht mit der höheren Priorität gemäß Fig. 2C den verkürzten Startblock mit drei dominanten Bits erzeugt hat und somit das letzte Bit vor dem Zeitpunkt t2 auf dem Datenbus als dominantes Bit auftaucht.
Da der Sender der Nachricht gemäß Fig. 2A laufend die Bits auf dem Datenbus überprüft, erkennt er zum Zeitpunkt t2, daß das letzte von ihm als rezessives Bit übertragene Bit auf dem Datenbus tatsächlich als dominantes Bit auftaucht. Er unterbricht daher die Sendung seiner Nachricht, wie dies in Fig. 2E dargestellt ist. Das letzte von ihm als rezessives Bit übertragene Bit, das auf dem Datenbus tatsächlich als dominantes Bit auftaucht, ist das letzte übertragene Bit, da dies zum Zeitpunkt t2 erkannt wurde und die Sendung der Nachricht entsprechend der Darstellung gemäß Fig. 2E abgebrochen wurde. Der letzte übertragene Datenblock ist ein verkürzter Datenblock DBv, der im nachfolgenden nicht mehr weiter übertragen wird.
Es gelingt somit auf dem erfindungsgemäßen Datenbus, eine Nachricht niedrigerer Priorität jederzeit durch eine Nachricht höherer Priorität zu unterbrechen, ohne daß hierfür zusätzliche Übertragungskapazität erforderlich ist und ohne daß eine Verzögerung der Unterbrechung durch ein Abstimmungsverfahren auftritt.

Claims (13)

1. Datenbus für eine serielle Datenübertragung zwischen Geräten, welche Daten über den Datenbus senden und/oder empfangen können, wobei auf dem Datenbus rezessive und dominante Zustände vorgesehen sind, denen jeweils ein Bitwert zugeordnet ist, dadurch gekennzeichnet,
daß Nachrichten in Nachrichtenblöcken übertragen werden, wobei jeder Nachrichtenblock zu Beginn einen Startblock mit (n+k) dominanten und j nachfolgenden rezessiven Bits und nachfolgende Datenblöcke mit n Datenbits und m nachfolgenden rezessiven Bits aufweist,
daß ein laufend übertragener Nachrichtenblock niedriger Priorität durch ein anderes Gerät zur Übertragung eines Nachrichtenblockes mit hoher Priorität unterbrochen werden kann, indem dieses einen neuen Startblock auf dem Datenbus erzeugt und nachfolgend die zugehörigen Datenblöcke sendet,
und daß ein einen Nachrichtenblock auf dem Datenbus sendendes Gerät laufend überprüft, ob auf dem Datenbus ein Startblock auftaucht und gegebenenfalls die Sendung seines Nachrichtenblockes abbricht.
2. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß nur ein festgelegtes Gerät befugt ist, andere Nachrichtenblöcke zu unterbrechen.
3. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß vorgegeben ist, mit welcher Art Nachricht ein Gerät andere Nachrichtenblöcke unterbrechen darf.
4. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß ein sendendes Gerät die Sendung eines Nachrichtenblocks abbricht, wenn das (n+1)te Bit eines Datenblockes auf dem Datenbus nicht rezessiv ist.
5. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß ein sendendes Gerät die Sendung eines Nachrichtenblocks abbricht, wenn eine vorgegebene Anzahl von Bits von dem (n+1)ten bis einschließlich zum (n+k)ten Bit eines Datenblockes auf dem Datenbus nicht rezessiv ist/sind.
6. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß ein sendendes Gerät einen eigenen Nachrichtenblock auf dem Bus während des Sendens bitweise überprüft und dann abbricht, wenn auf dem Datenbus ein als rezessives Bit gesendetes Bit tatsächlich als dominantes Bit auftaucht.
7. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß ein Gerät beim Erzeugen eines Startblocks eines einen anderen Nachrichtenblock unterbrechenden Nachrichtenblocks gegebenenfalls auf dem Datenbus vorhandenen dominante Bits in den zu erzeugenden Starblock einbezieht.
8. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß ein Empfänger ständig überprüft, ob während eines übertragenen ersten Nachrichtenblockes ein neuer Startblock eines neuen zweiten Nachrichtenblockes auftaucht, und daß der Empfänger gegebenenfalls den Empfang des übertragenen ersten Nachrichtenblockes abbricht und mit dem Empfang des zweiten, neuen Nachrichtenblockes beginnt.
9. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß n = 4, m = 1, k = 1 und j = 1 betragen.
10. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß zwei Prioritätsstufen für Nachrichtenblöcke vorgesehen sind.
11. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß ein Datenfehler erkannt wird, wenn nach n Datenbits kein rezessives Bit auf dem Datenbus auftritt und kein Startblock identifiziert wird.
12. Datenbus nach Anspruch 1, dadurch gekennzeichnet, daß nach einem Startblock abhängig von der Priorität des zu sendenden Nachrichtenblockes ein Senden einer vorgegebenen Anzahl von rezessiven bzw. dominanten Bits erfolgt.
13. Verwendung des Datenbusses für Fahrzeuge zum Austausch von Nachrichten zwischen Steuergeräten, insbesondere zum sofortigen und andere Nachrichtenblöcke unterbrechenden Senden eines Nachrichtenblockes, der eine Auslösung eines Airbags des Fahrzeugs auslöst.
DE19843810A 1998-09-24 1998-09-24 Datenbus Withdrawn DE19843810A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE19843810A DE19843810A1 (de) 1998-09-24 1998-09-24 Datenbus
EP99203000A EP0989701A3 (de) 1998-09-24 1999-09-15 Datenbus
JP11269784A JP2000112882A (ja) 1998-09-24 1999-09-24 デ―タバス
US09/406,283 US6542947B1 (en) 1998-09-24 1999-09-24 Data bus for serial data transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19843810A DE19843810A1 (de) 1998-09-24 1998-09-24 Datenbus

Publications (1)

Publication Number Publication Date
DE19843810A1 true DE19843810A1 (de) 2000-03-30

Family

ID=7882092

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843810A Withdrawn DE19843810A1 (de) 1998-09-24 1998-09-24 Datenbus

Country Status (4)

Country Link
US (1) US6542947B1 (de)
EP (1) EP0989701A3 (de)
JP (1) JP2000112882A (de)
DE (1) DE19843810A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10000303B4 (de) * 2000-01-05 2011-09-29 Robert Bosch Gmbh Verfahren und Vorrichtung zum Austausch von Daten zwischen wenigstens zwei mit einem Bussystem verbundenen Teilnehmern
DE10008081B4 (de) * 2000-02-22 2004-02-05 Siemens Ag Serielles Bussystem
CN1180373C (zh) * 2000-03-03 2004-12-15 皇家菲利浦电子有限公司 具有用于与一个接收数据流同步的装置的数据载体
DE10030358A1 (de) * 2000-06-21 2002-01-03 Heidenhain Gmbh Dr Johannes Verfahren und Vorrichtung zur seriellen Datenübertragung zwischen einem Positionsmesssystem und einer Verarbeitungseinheit
US6721918B2 (en) * 2000-12-29 2004-04-13 Intel Corporation Method and apparatus for encoding a bus to minimize simultaneous switching outputs effect
JP3668697B2 (ja) * 2001-04-09 2005-07-06 三菱電機株式会社 データ送信方法及びデータ送信装置
US7061137B2 (en) * 2002-10-16 2006-06-13 Omega Patents, L.L.C. Vehicle data communications bus disrupter and associated methods
US7907628B2 (en) * 2003-11-19 2011-03-15 Honeywell International Inc. Priority based arbitration for TDMA schedule enforcement in a multi-channel system
JP4657179B2 (ja) * 2006-09-05 2011-03-23 ティーオーエー株式会社 データ伝送方法
DE102008010385B4 (de) * 2008-02-21 2009-10-29 Ic-Haus Gmbh Verfahren und Datenübertragungsanlage zur seriellen Datenübertragung zwischen einer Leiteinrichtung und wenigstens einer Teilnehmereinrichtung
DE102011003729A1 (de) * 2010-02-08 2011-08-11 Robert Bosch GmbH, 70469 Neuartige Schaltung und Methode zur Kommunikation über eine einzelne Leitung
TWI512478B (zh) * 2011-01-18 2015-12-11 Asmedia Technology Inc 匯流排主控器與相關方法
DE112016007532T5 (de) * 2016-12-21 2019-09-26 Vacon Oy Priorisierte serielle kommunikation
US10579549B2 (en) 2017-12-05 2020-03-03 Qualcomm Incorporated Staggered transmissions on a multi-drop half-duplex bus

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3546683C3 (de) * 1985-02-22 2003-10-09 Bosch Gmbh Robert Verfahren zum Betreiben einer Datenverarbeitungsanlage
DE4129205A1 (de) * 1991-03-28 1992-10-01 Bosch Gmbh Robert Verfahren zum aufbau von botschaften fuer den datenaustausch und/oder fuer die synchronisation von prozessen in datenverarbeitungsanlagen
US5323385A (en) * 1993-01-27 1994-06-21 Thermo King Corporation Serial bus communication method in a refrigeration system
DE69433866T2 (de) * 1993-02-15 2005-06-30 Honda Giken Kogyo K.K. Verfahren zur Übertragung von Daten
US5574848A (en) * 1993-08-24 1996-11-12 National Semiconductor Corporation Can interface selecting one of two distinct fault recovery method after counting a predetermined number of recessive bits or good can frames
EP0813324A1 (de) * 1996-06-13 1997-12-17 Cerberus Ag Serieller Datenbus und dessen Verwendung
US5760489A (en) * 1996-10-04 1998-06-02 Motorola, Inc. Method for transmitting signals between a microprocessor and an interface circuit
US6111888A (en) * 1997-05-27 2000-08-29 Micro Motion, Inc. Deterministic serial bus communication system
US6385210B1 (en) * 1998-04-17 2002-05-07 Ford Global Technologies, Inc. Method for detecting and resolving data corruption in a UART based communication network

Also Published As

Publication number Publication date
JP2000112882A (ja) 2000-04-21
EP0989701A2 (de) 2000-03-29
US6542947B1 (en) 2003-04-01
EP0989701A3 (de) 2004-01-02

Similar Documents

Publication Publication Date Title
DE2953444C2 (de) Anordnung und Verfahren für ein digitales Datenübertragungsnetzwerk
DE2745295C2 (de) Steuerschaltung für ein Duplex-Funkübertragungssystem
DE102012223124B4 (de) Fahrzeugkommunikationssteuervorrichtung
DE3803326C2 (de)
DE3115455C2 (de)
EP2695076B1 (de) Verfahren und vorrichtung zur erhöhung der datenübertragungskapazität in einem seriellen bussystem
DE19843810A1 (de) Datenbus
EP0009627B1 (de) Übertragungssystem zum Fernkopieren und zur elektronischen Übermittlung von Hauspost
DE19639845C1 (de) Lokales Netzwerk mit Sende- und Empfangsvorrichtung
EP2795848B1 (de) Teilnehmerstation eines bussystems und verfahren zur übertragung von nachrichten zwischen teilnehmerstationen eines bussystems
DE10143356A1 (de) Akzeptanz-Filter
DE19922171A1 (de) Kommunikationssystem mit einem Kommunikationsbus
EP0570338B1 (de) Verfahren und Einrichtung zur Zugriffsüberwachung und zum Zugriffsschutz in Kommunikationsnetzwerken
WO1999001959A2 (de) Verfahren und anordnung zur codierung digitaler daten
DE10246793A1 (de) Übertragungssteuervorrichtung, welche ein CAN-Protokoll verwendet
DE10127417A1 (de) Transport-Protokoll für die Gerätekommunikation
WO2023036597A1 (de) Verfahren und system zur steuerung einer übertragung von daten in abhängigkeit wenigstens eines attributs einer datei
DE4210094C2 (de) Multiplexes Übertragungsverfahren
DE102020214097A1 (de) Vorrichtung zur Übertragung von Daten über ein Bussystem und Betriebsverfahren hierfür
DE19852276C2 (de) Verfahren zum Empfang einer Nachricht über einen seriellen Datenbus, Funktionseinheit und lokales Netzwerk
EP0199028B1 (de) Nachrichtenübermittlungsverfahren für Fernmeldeanlagen, insbesondere Fernsprechvermittlungsanlagen, in denen für über bidirektionale Nachrichtenwege zu übermittelnde Nachrichten eine Längenangabe und eine Artinformation gebildet wird
DE3205948A1 (de) Datenkommunikationssystem
DE102020110708A1 (de) Vorrichtung und Verfahren zum Versenden einer Nachricht an zumindest zwei Empfänger für ein Kraftfahrzeug
EP0192069B1 (de) Verfahren zum Übertragen von Datensignalen
DE2448802C3 (de) Verfahren und Schaltungsanordnungen zum automatischen Aufrufen einer von mehreren Endstellen durch eine Zentralstation

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee