DE10234145A1 - Method for arbitrating access to a data bus - Google Patents

Method for arbitrating access to a data bus

Info

Publication number
DE10234145A1
DE10234145A1 DE10234145A DE10234145A DE10234145A1 DE 10234145 A1 DE10234145 A1 DE 10234145A1 DE 10234145 A DE10234145 A DE 10234145A DE 10234145 A DE10234145 A DE 10234145A DE 10234145 A1 DE10234145 A1 DE 10234145A1
Authority
DE
Germany
Prior art keywords
priority
ring
bus
arbitration
subscriber
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.)
Ceased
Application number
DE10234145A
Other languages
German (de)
Inventor
Dieter Brueckner
Franz-Josef Goetz
Dieter Klotz
Juergen Schimmer
Matthias Schweikart
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE10234145A priority Critical patent/DE10234145A1/en
Priority to EP02774357A priority patent/EP1430406B1/en
Priority to ES02774357T priority patent/ES2243765T3/en
Priority to AT02774357T priority patent/ATE297568T1/en
Priority to DE50203368T priority patent/DE50203368D1/en
Priority to PCT/DE2002/003436 priority patent/WO2003027869A2/en
Publication of DE10234145A1 publication Critical patent/DE10234145A1/en
Priority to US10/809,852 priority patent/US7360002B2/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control

Abstract

Die Erfindung betrifft ein Verfahren zur Arbitrierung eines Zugriffs auf einen Datenbus zwischen Teilnehmern (Tn1, Tn2...), wobei die Teilnehmer durch zumindest einen Arbitrierungsring (12; 38, 40, 42, 44, 46, 48) gekoppelt sind, mit folgenden Schritten: DOLLAR A a) Anforderung des Zugriffs eines ersten der Teilnehmer, DOLLAR A b) Prüfung, ob ein erstes Signal zur Anzeige, dass der Arbitrierungsring freigegeben ist, an einem Eingang (16) des ersten Teilnehmers anliegt, DOLLAR A c) Ausgabe (18) eines zweiten Signals durch den ersten Teilnehmer, wenn das erste Signal anliegt, DOLLAR A d) Prüfung, ob das erste Signal an dem Eingang des ersten Teilnehmers am Ende eines vorgegebenen Zeitintervalls noch anliegt, DOLLAR A e) Zugriff des ersten Teilnehmers, wenn das erste Signal am Ende des vorgegebenen Zeitintervalls noch anlag.The invention relates to a method for arbitrating access to a data bus between subscribers (Tn1, Tn2 ...), the subscribers being coupled by at least one arbitration ring (12; 38, 40, 42, 44, 46, 48) with the following Steps: DOLLAR A a) request for access by a first of the participants, DOLLAR A b) check whether a first signal to indicate that the arbitration ring is available is present at an input (16) of the first participant, DOLLAR A c) output ( 18) a second signal by the first participant when the first signal is present, DOLLAR A d) checking whether the first signal is still present at the input of the first participant at the end of a predetermined time interval, DOLLAR A e) access by the first participant if the first signal was still present at the end of the specified time interval.

Description

Die Erfindung betrifft ein Verfahren zur Arbitrierung eines Zugriffs auf einen Datenbus, wobei die Teilnehmer durch zumindest einen Arbitrierungsring gekoppelt sind, sowie einen entsprechenden Teilnehmer und ein Kommunikationssystem. The invention relates to a method for arbitration Access to a data bus, the participants through at least one arbitration ring are coupled, and one corresponding participants and a communication system.

Unter einem synchronen, getakteten Kommunikationssystem mit Äquidistanz-Eigenschaften versteht man ein System aus wenigstens zwei Teilnehmern, die über ein Datennetz zum Zweck des gegenseitigen Austausches von Daten bzw. der gegenseitigen Übertragung von Daten miteinander verbunden sind. Dabei erfolgt der Datenaustausch zyklisch in äquidistanten Kommunikationszyklen, die durch den vom System verwendeten Kommunikationstakt vorgegeben werden. Teilnehmer sind beispielsweise zentrale Automatisierungsgeräte, Programmier-, Projektierungs- oder Bediengeräte, Peripheriegeräte wie z. B. Ein-/Ausgabe-Baugruppen, Antriebe, Aktoren, Sensoren, speicherprogrammierbare Steuerungen (SPS) oder andere Kontrolleinheiten, Computer, oder Maschinen, die elektronische Daten mit anderen Maschinen austauschen, insbesondere Daten von anderen Maschinen verarbeiten. Teilnehmer werden auch Netzwerkknoten oder Knoten genannt. Unter Kontrolleinheiten werden im folgenden Regler- oder Steuerungseinheiten jeglicher Art verstanden, aber auch beispielsweise Switches und/oder Switch-Controller. Als Datennetze werden beispielsweise Bussysteme wie z. B. Feldbus, Profibus, Ethernet, Industrial Ethernet, FireWire oder auch PC-interne Bussysteme (PCI), etc., insbesondere aber auch isochrones Realtime Ethernet verwendet. Under a synchronous, clocked communication system with A system understands equidistance properties at least two participants who are on a data network for the purpose of mutual exchange of data or the mutual Transmission of data are interconnected. there The data exchange takes place cyclically in equidistant Communication cycles by the used by the system Communication clock can be specified. Participants are, for example central automation devices, programming, Configuration or operating devices, peripheral devices such as B. Input / output modules, drives, actuators, sensors, programmable logic controllers (PLC) or other control units, Computers, or machines that share electronic data with others Exchange machines, especially data from others Process machines. Participants also become network nodes or Called knot. Below are control units Regulator or control units of any kind understood but also, for example, switches and / or switch controllers. As data networks, for example, bus systems such. B. Fieldbus, Profibus, Ethernet, Industrial Ethernet, FireWire or also PC internal bus systems (PCI), etc., in particular but isochronous realtime ethernet is also used.

Datennetze ermöglichen die Kommunikation zwischen mehreren Teilnehmern durch die Vernetzung, also Verbindung der einzelnen Teilnehmer untereinander. Kommunikation bedeutet dabei die Übertragung von Daten zwischen den Teilnehmern. Die zu übertragenden Daten werden dabei als Datentelegramme verschickt, d. h. die Daten werden zu mehreren Paketen zusammengepackt und in dieser Form über das Datennetz an den entsprechenden Empfänger gesendet. Man spricht deshalb auch von Datenpaketen. Der Begriff Übertragung von Daten wird dabei in diesem Dokument völlig synonym zur oben erwähnten Übertragung von Datentelegrammen oder Datenpaketen verwendet. Data networks enable communication between several Participants through networking, i.e. connecting the individual participants among themselves. Communication means that Transfer of data between participants. The too transmitted data are sent as data telegrams, d. H. the data is packed into several packages and in this form via the data network to the corresponding Recipient sent. One therefore speaks of data packets. The term transmission of data is used in this Document completely synonymous with the transfer of Data telegrams or data packets used.

In verteilten Automatisierungssystemen, beispielsweise im Bereich Antriebstechnik, müssen bestimmte Daten zu bestimmten Zeiten bei den dafür bestimmten Teilnehmern eintreffen und von den Empfängern verarbeitet werden. Man spricht dabei von echtzeitkritischen Daten bzw. Datenverkehr, da ein nicht rechtzeitiges Eintreffen der Daten am Bestimmungsort zu unerwünschten Resultaten beim Teilnehmer führt, im Gegensatz zur nicht echtzeitkritischen, beispielsweise inter- bzw. intranetbasierten Datenkommunikation. Gemäss IEC 61491, EN61491 SERCOS interface - Technische Kurzbeschreibung (http:/ / www.sercos.de/deutsch/index_deutsch.htm) kann ein erfolgreicher echtzeitkritischer Datenverkehr der genannten Art in verteilten Automatisierungssystemen gewährleistet werden. In distributed automation systems, for example in Drive technology area, certain data must be certain Times arrive at the designated participants and processed by the recipients. One speaks of real-time critical data or data traffic, as a not timely arrival of the data at the destination leads to undesirable results for the participant, in contrast to not real-time critical, for example inter- or intranet-based data communication. According to IEC 61491, EN61491 SERCOS interface - Brief technical description (http: / / www.sercos.de/deutsch/index_deutsch.htm) can successful real-time critical data traffic of the type mentioned can be guaranteed in distributed automation systems.

Automatisierungskomponenten (z. B. Steuerungen, Antriebe, . . .) verfügen heute im Allgemeinen über eine Schnittstelle zu einem zyklisch getakteten Kommunikationssystem. Eine Ablaufebene der Automatisierungskomponente (Fast-cycle) (z. B. Lageregelung in einer Steuerung, Drehmomentregelung eines Antriebs) ist auf den Kommunikationszyklus synchronisiert. Dadurch wird der Kommunikationstakt festgelegt. Andere, niederperformante Algorithmen (Slow-cycle) (z. B. Temperaturregelungen) der Automatisierungskomponente können ebenfalls nur über diesen Kommunikationstakt mit anderen Komponenten (z. B. Binärschalter für Lüfter, Pumpen, . . .) kommunizieren, obwohl ein langsamerer Zyklus ausreichend wäre. Durch Verwendung nur eines Kommunikationstaktes zur Übertragung von allen Informationen im System entstehen hohe Anforderungen an die Bandbreite der Übertragungsstrecke. Automation components (e.g. controls, drives,...) generally have an interface to today a cyclically clocked communication system. A Execution level of the automation component (fast cycle) (e.g. Position control in a controller, torque control of a drive) is synchronized to the communication cycle. This will the communication clock is fixed. Other, low-performing Algorithms (slow cycle) (e.g. temperature controls) of the Automation components can also only use this Communication clock with other components (e.g. Binary switch for fans, pumps,. , .) communicate, although a slower cycle would be sufficient. By using only one Communication clock for the transmission of all information the system places high demands on the bandwidth of the Transmission link.

Aus dem Stand der Technik sind verschiedene zentralisierte und dezentrale Arbitrierungsverfahren für den Zugriff auf einen Datenbus bekannt. Bei dem zentralisierten Arbitrierungsverfahren entscheidet ein zentraler Arbiter, welcher Busteilnehmer, der eine Zugriffsanforderung gestellt hat, Zugriff auf den Bus bekommt. Ein Beispiel für ein zentralisiertes Arbitrierungsverfahren ist der Round-Robin Algorithmus. Various are centralized from the prior art and decentralized arbitration procedures for access to known a data bus. With the centralized A central arbiter decides which arbitration procedure Bus subscriber who has made an access request, access gets on the bus. An example of a centralized Arbitration is the round robin algorithm.

Bei den dezentralen Arbitrierungsverfahren erfolgt die Busarbitrierung dezentral in jedem Busteilnehmer. Ein Beispiel für ein derartiges Verfahren ist der Daisy-Chain Algorithmus. In the case of decentralized arbitration procedures, the Bus arbitration decentralized in every bus participant. An example for one such method is the daisy chain algorithm.

Der Erfindung liegt die Aufgabe zugrunde, ein verbessertes Arbitrierungsverfahren zu schaffen sowie einen verbesserten Teilnehmer und ein Kommunikationssystem. The invention has for its object an improved To create arbitration procedures as well as an improved one Participants and a communication system.

Die der Erfindung zugrunde liegenden Aufgaben werden mit den Merkmalen der entsprechenden unabhängigen Patentansprüche jeweils gelöst. Bevorzugte Ausführungsform der Erfindung sind in den abhängigen Patentansprüchen angegeben. The objects underlying the invention are with the Features of the corresponding independent claims solved in each case. Preferred embodiments of the invention are specified in the dependent claims.

Die Erfindung ermöglicht die Schaffung eines Kommunikationssystems, in dem die Anzahl der Arbitrierungsringe unabhängig von der Anzahl der Busteilnehmer ist. Das entsprechende Arbitrierungsverfahren funktioniert also unabhängig von der Anzahl der Teilnehmer und ist somit im Prinzip beliebig skalierbar. Dabei kann eine maximale Verzögerungszeit für den Zugriff auf einen Bus, die sogenannte Latency-Time, garantiert werden. The invention enables the creation of a Communication system in which the number of arbitration rings is independent on the number of bus participants. The corresponding Arbitration procedure works independently of that Number of participants and is therefore in principle arbitrary scalable. A maximum delay time for the Access to a bus, the so-called latency time, be guaranteed.

Nach einer bevorzugten Ausführungsform der Erfindung werden Zugriffsanforderungen unterschiedlicher Prioritäten unterstützt, indem für jede der möglichen Prioritäten ein separater Arbitrierungsring vorgesehen ist. According to a preferred embodiment of the invention Access requests of different priorities supported by one for each of the possible priorities separate arbitration ring is provided.

Nach einer weiteren bevorzugten Ausführungsform der Erfindung

  • - ist jedem Busteilnehmer eine Arbitrierungseinheit zugeordnet,
  • - kann jede Arbitrierungseinheit eines Busteilnehmers z. B. zwei Prioritäten LP und HP unterstützen, wobei LP die niedrige Priorität und HP die hohe Priorität kennzeichnet.
According to a further preferred embodiment of the invention
  • an arbitration unit is assigned to each bus subscriber,
  • - Each arbitration unit of a bus participant z. B. support two priorities LP and HP, with LP identifying the low priority and HP identifying the high priority.

Nach einer weiteren bevorzugten Ausführungsform der Erfindung sind die Arbitrierungseinheiten der Busteilnehmer bei zwei unterstützten Prioritäten zu einem niederprioren Ring und zu einem hochprioren Ring zusammengeschaltet. Vorteilhaft ist es dabei, wenn die Arbitrierungseinheit eines Busteilnehmers den niederprioren Ring unterbrechen kann, damit keine kombinatorische Rückkopplung auftritt. Dieser Busteilnehmer ist der niederpriore Ringmaster. According to a further preferred embodiment of the invention are the arbitration units of the bus participants for two supported priorities to a lower priority ring and interconnected in a high priority ring. It is advantageous when the arbitration unit of a bus participant lower priority ring can interrupt so none combinatorial feedback occurs. This bus participant is the low priority ringmaster.

Nach einer weiteren bevorzugten Ausführungsform der Erfindung

  • - ist der niederpriore Ringmaster immer der aktuelle Busmaster, der Schreib- und Lesezugriffe über den Bus ausführen kann,
  • - kann jeder Busteilnehmer der niederpriore Ringmaster und damit Busmaster werden,
  • - wird ein Busteilnehmer der neue niederpriore Ringmaster,
  • - wenn bei diesem Busteilnehmer der niederpriore Bus- Request aktiviert ist und
  • - der bisherige Busmaster bereit ist, sein Buszugriffsrecht abzugeben und
  • - kein weiterer niederpriorer Busrequest eines Busteilnehmers zwischen dem alten und dem neuen niederprioren Ringmaster anliegt,
  • - muss immer die Arbitrierungseinheit eines Busteilnehmers den hochprioren Ring unterbrechen, damit keine kombinatorische Rückkopplung auftritt. Dieser Busteilnehmer ist der hochpriore Ringmaster,
  • - kann jeder Busteilnehmer der hochpriore Ringmaster werden,
  • - muss ein Busteilnehmer der als Busmaster hochpriore Schreib- und Lesezugriffe ausführt, sowohl niederpriorer Ringmaster als auch hochpriorer Ringmaster sein,
  • - muss ein Busteilnehmer der als Busmaster niederpriore Schreib- und Lesezugriffe ausführt, der niederpriore Ringmaster sein,
  • - ist ein hochpriorer Ringmaster zum Masterwechsel am hochprioren Ring bereit, wenn
  • - kein hochpriorer Busrequest bei diesem Busteilnehmer anliegt oder
  • - ein hochpriorer Busrequest anliegt und dieser Busteilnehmer bereits Busmaster ist.
According to a further preferred embodiment of the invention
  • - the lower priority ring master is always the current bus master, which can carry out write and read accesses via the bus,
  • - every bus participant can become the lower priority ring master and thus bus master,
  • - If a bus participant becomes the new low-priority ring master,
  • - if the low-priority bus request is activated for this bus device and
  • - the previous bus master is ready to give up his bus access right and
  • - there is no further low-priority bus request from a bus subscriber between the old and the new low-priority ring master,
  • - The arbitration unit of a bus subscriber must always interrupt the high-priority ring so that no combinatorial feedback occurs. This bus participant is the high priority ring master,
  • - every bus participant can become the high-priority ring master,
  • - a bus participant who carries out high priority write and read accesses as bus master must be both low priority ring master and high priority ring master,
  • - A bus participant who carries out write and read accesses as bus master with low priority must be the lower priority ring master,
  • - a high priority ring master is ready to change the master on the high priority ring if
  • - there is no high priority bus request from this bus subscriber or
  • - A high priority bus request is pending and this bus participant is already the bus master.

Ist eine von den o. g. beiden Bedingungen erfüllt, wird am Ausgang der Arbitrierungseinheit des hochprioren Ringmasters der Signalpegel für "HP-Ring freigegeben" am hochprioren Ring ausgegeben. Is one of the above both conditions is met on Output of the arbitration unit of the high priority ring master the signal level for "HP ring released" on the high priority ring output.

Empfängt der hochpriore Ringmaster den Signalpegel "HP-Ring freigegeben" den er am Ausgang seiner Arbitrierungseinheit auf den hochprioren Ring gelegt hat, wieder am Eingang seiner Arbitrierungseinheit, hat kein anderer Busteilnehmer einen hochprioren Bus-Request gestellt. In diesem Fall kommt es zu keinem Masterwechsel am hochprioren Ring. The high priority ring master receives the signal level "HP ring released "at the exit of his arbitration unit placed on the high priority ring, again at the entrance of his Arbitration unit, no other bus participant has one high priority bus request. In this case it happens no change of master on the high priority ring.

Keine von beiden Bedingungen ist erfüllt, wenn der hochpriore Ringmaster trotz einem aktivierten hochprioren Busrequest nicht der Busmaster ist. In diesem Fall wird am Ausgang der Arbitrierungseinheit des hochprioren Ringmasters der Signalpegel für "HP-Ring belegt" am hochprioren Ring ausgegeben. Neither condition is met if the high priority Ringmaster despite an activated high priority bus request is not the bus master. In this case the Arbitration unit of the high priority ring master Signal level for "HP ring occupied" output on the high-priority ring.

Nach einer weiteren bevorzugten Ausführungsform der Erfindung

  • - wird ein Busteilnehmer ab dem nächsten Bustakt der neue hochpriore Ringmaster, wenn folgende Bedingungen erfüllt sind,
  • - der hochpriore Bus-Request muss aktiviert sein,
  • - am Eingang seiner Arbitrierungseinheit muss der Signalpegel für "HP-Ring freigegeben" anliegen.
According to a further preferred embodiment of the invention
  • - a bus participant becomes the new high-priority ring master from the next bus cycle if the following conditions are met,
  • - the high priority bus request must be activated,
  • - The signal level for "HP ring released" must be present at the input of its arbitration unit.

Damit im aktuellen Bustakt diese Bedingungen nicht auch bei anderen Busteilnehmern erfüllt werden und es nur einen hochprioren Ringmaster geben darf, gibt dieser Busteilnehmer am Ausgang seiner Arbitrierungseinheit den Signalpegel für "HP- Ring belegt" am hochprioren Ring aus. Dieser Signalpegel bleibt solange aktiviert bis der neue hochpriore Ringmaster zum Masterwechsel am hochprioren Ring bereit ist und auf den Signalpegel für "HP-Ring freigegeben" am hochprioren Ring umschaltet. So that these conditions do not apply to the current bus cycle other bus participants are met and there is only one high priority ring master, this bus participant gives on Output of its arbitration unit the signal level for "HP- Ring occupied "on the high priority ring. This signal level remains activated until the new high-priority ring master is ready to change the master on the high priority ring and on the Signal level for "HP ring released" on the high priority ring switches.

Ist nach der Initialisierung des Bussystems ein Busteilnehmer als Busmaster, und als hochpriorer Ringmaster voreingestellt, kann in jeder Arbitrierungseinheit die maximale Zugriffszeit auf den Bus parametriert werden. Is a bus device after initialization of the bus system preset as bus master and as high priority ring master, can the maximum access time in each arbitration unit be parameterized on the bus.

Voreingestellt ist ein Bustakt. Ein Busmaster kann das Buszugriffsrecht jederzeit vor Ablauf der maximalen Zugriffszeit wieder abgeben. Hat ein anderer Busteilnehmer einen (nieder- oder hochprioren) Bus-Request gestellt, gibt die Arbitrierungseinheit des aktuellen Busmasters das Buszugriffsrecht spätestens nach Ablauf der maximalen Zugriffszeit wieder ab. Ist die maximale Zugriffszeit abgelaufen, erfolgt dieser Master-Wechsel auch dann, wenn beim bisherigen Busmaster das Bus-Request noch gesetzt ist. Solange kein anderer Busteilnehmer einen (nieder- oder hochprioren) Busrequest stellt, behält der aktuelle Busmaster das Buszugriffsrecht auch nach Ablauf der maximalen Zugriffszeit. The default is a bus cycle. A bus master can do that Right of access to the bus at any time before the maximum access time has expired hand in again. If another bus participant has a (low or high-priority) bus request, the Arbitration unit of the current bus master the bus access right at the latest after the maximum access time has expired. If the maximum access time has expired, this takes place Master change even if this is the case with the previous bus master Bus request is still set. As long as no other Bus participant makes a (low or high priority) bus request, the current bus master also retains the bus access right Expiration of the maximum access time.

Nach einer weiteren bevorzugten Ausführungsform der Erfindung kann in jeder Arbitrierungseinheit eine Pausezeit parametriert werden, die ablaufen muss, bevor ein Busmaster nach Abgabe seines Buszugriffsrechts wieder Busmaster werden kann. Voreingestellt ist ein Bustakt. Diese Pausezeit wird auch dann eingehalten, wenn der Busteilnehmer einen niederprioren oder hochprioren Bus-Request an seine Arbitrierungseinheit gestellt hat. According to a further preferred embodiment of the invention there can be a pause in each arbitration unit be parameterized, which must run before a bus master after Submission of his bus access right can become bus master again. The default is a bus cycle. This pause time will also then complied with if the bus subscriber has a lower priority or high priority bus request to its arbitration unit has asked.

Nach einer weiteren bevorzugten Ausführungsform der Erfindung ergibt sich folgender Ablauf der Arbitrierung bei zwei unterstützten Prioritäten:

  • - Solange der aktuelle Busmaster das Buszugriffsrecht behalten will, aktiviert die Arbitrierungseinheit des Busmasters "Bus belegt" (z. B. eine logische 0) am niederprioren Ring.
  • - Ist der aktuelle Busmaster bereit das Buszugriffsrecht abzugeben, aktiviert dessen Arbitrierungseinheit "Busfreigabe" (z. B. eine logische 1) am niederprioren Ring.
  • - Damit ein Busteilnehmer, der einen niederprioren Bus- Request an seine Arbitrierungseinheit gestellt hat, der neue Busmaster werden kann, müssen folgende Bedingungen erfüllt sein:
  • - am hochprioren Eingang seiner Arbitrierungseinheit muss der Signalpegel für "HP-Ring freigegeben" anliegen,
  • - am niederprioren Eingang seiner Arbitrierungseinheit muss der Signalpegel für "Busfreigabe" anliegen,
  • - die parametrierte Pausezeit zwischen Abgabe und erneutem Erhalt des Buszugriffsrechts muss abgelaufen sein.
According to a further preferred embodiment of the invention, the following sequence of arbitration results with two supported priorities:
  • - As long as the current bus master wants to keep the bus access right, the arbitration unit of the bus master activates "Bus occupied" (e.g. a logical 0) on the lower priority ring.
  • - If the current bus master is ready to hand over the bus access right, its arbitration unit activates "bus release" (eg a logical 1) on the lower priority ring.
  • - The following conditions must be fulfilled so that a bus node that has made a low-priority bus request to its arbitration unit can become the new bus master:
  • the signal level for "HP ring released" must be present at the high-priority input of its arbitration unit,
  • the signal level for "bus release" must be present at the low-priority input of its arbitration unit,
  • - The parameterized pause time between delivery and renewed receipt of the bus access right must have expired.

Sind alle Bedingungen erfüllt, wird dieser Busteilnehmer ab dem nächsten Bustakt der neue Busmaster. Damit im aktuellen Bustakt diese Bedingungen nicht auch bei anderen Busteilnehmern erfüllt werden und es nur einen Busmaster geben darf, gibt dieser Busteilnehmer am Ausgang seiner Arbitrierungseinheit den Signalpegel für "Bus belegt" am niederprioren Ring aus. Dieser Signalpegel bleibt solange aktiviert bis der neue Busmaster bereit ist das Buszugriffsrecht wieder abzugeben und auf den Signalpegel für "Busfreigabe" am niederprioren Ring umschaltet. If all conditions are met, this bus participant is off the next bus cycle the new bus master. So in the current Bus clock these conditions do not apply to others Bus participants are met and there can only be one bus master, gives this bus participant at the exit of his Arbitration unit the signal level for "Bus occupied" on the lower priority ring out. This signal level remains activated until the new one Busmaster is ready to surrender the bus access right again and the signal level for "bus release" on the lower priority Ring switches.

Empfängt ein Busmaster den Signalpegel "Busfreigabe" den er am Ausgang seiner Arbitrierungseinheit auf den niederprioren Ring gelegt hat, wieder am Eingang seiner Arbitrierungseinheit, sind im aktuellen Bustakt von keinem Busteilnehmer die Bedingungen für einen Masterwechsel am Bus erfüllt worden. In diesem Fall behält der aktuelle Busmaster das Buszugriffsrecht und kann weitere Schreib- oder Lesezugriffe auf die gemeinsam genutzten Ressourcen ausführen, bis ein anderer Busteilnehmer einen Bus-Request stellt. If a bus master receives the signal level "bus release" it at the output of its arbitration unit on the lower priorities Ring has put back at the entrance of his Arbitration unit, are in the current bus clock of no bus participant Conditions for a master change on the bus have been met. In In this case the current bus master keeps this Bus access right and can further write or read access to the run shared resources until another Bus participant makes a bus request.

Damit ein Busteilnehmer, der einen hochprioren Bus-Request an seine Arbitrierungseinheit gestellt hat, der neue Busmaster werden kann, müssen folgende Bedingungen erfüllt sein:

  • - der Busteilnehmer muss der hochpriore Ringmaster sein,
  • - am niederprioren Eingang seiner Arbitrierungseinheit muss der Signalpegel für "Busfreigabe" anliegen,
  • - die parametrierte Pausezeit zwischen Abgabe und erneutem Erhalt des Buszugriffsrechts muss abgelaufen sein.
The following conditions must be fulfilled so that a bus node that has made a high-priority bus request to its arbitration unit can become the new bus master:
  • - the bus participant must be the high-priority ring master,
  • the signal level for "bus release" must be present at the low-priority input of its arbitration unit,
  • - The parameterized pause time between delivery and renewed receipt of the bus access right must have expired.

Sind alle Bedingungen erfüllt, wird dieser Busteilnehmer ab dem nächsten Bustakt der neue Busmaster. Da die Arbitrierungseinheiten der Busteilnehmer einen Ring bilden, ist mit dieser Methode eine Gleichbehandlung der Busteilnehmer und eine maximale Verzögerungszeit von Bus-Request zu Buszuteilung sichergestellt. If all conditions are met, this bus participant is off the next bus cycle the new bus master. Since the Arbitration units of the bus participants form a ring with this method an equal treatment of the bus participants and one Maximum delay time from bus request to bus assignment ensured.

Sind weitere Prioritäten gefordert, ist für jede zusätzliche Priorität ein weiterer Prioritäts-Ring erforderlich. If further priorities are required, there is an additional one for each Priority another priority ring required.

Ansonsten gelten obige Aussagen weiterhin, mit folgender Verallgemeinerung:
Damit ein Busteilnehmer, der einen Bus-Request einer gegebenen Priorität N an seine Arbitrierungseinheit gestellt hat, der neue Busmaster werden kann, müssen folgende Bedingungen erfüllt sein:

  • - an jedem der höherprioren Eingänge seiner Arbitrierungseinheit muss jeweils der Signalpegel für "Ring freigegeben" anliegen,
  • - der Busteilnehmer muss der Ringmaster dieser Prioritätsebene N sein,
  • - am niederprioren Eingang seiner Arbitrierungseinheit muss der Signalpegel für "Busfreigabe" anliegen,
  • - die parametrierte Pausezeit zwischen Abgabe und erneutem Erhalt des Buszugriffsrechts muss abgelaufen sein.
Otherwise, the above statements still apply, with the following generalization:
The following conditions must be fulfilled so that a bus participant who has made a bus request of a given priority N to its arbitration unit can become the new bus master:
  • the signal level for "ring released" must be present at each of the higher priority inputs of its arbitration unit,
  • the bus subscriber must be the ring master of this priority level N,
  • the signal level for "bus release" must be present at the low-priority input of its arbitration unit,
  • - The parameterized pause time between delivery and renewed receipt of the bus access right must have expired.

Sind alle Bedingungen erfüllt, wird dieser Busteilnehmer ab dem nächsten Bustakt der neue Busmaster. If all conditions are met, this bus participant the new bus master from the next bus cycle.

Dieses Verfahren erfüllt alle Anforderungen an ein leistungsfähiges Arbitrierungsverfahren, bei einem gleichzeitig minimalen Planungs- und Projektierungsaufwand. This procedure meets all the requirements for a powerful arbitration process, at the same time minimal planning and project planning.

Der Einsatz des beschriebenen Arbitrierungsverfahren ist insbesondere bei der Echtzeit-Ethernet-Kommunikation im Feldbus- Bereich möglich. The use of the arbitration procedure described is especially with real-time Ethernet communication in the fieldbus Range possible.

Von besonderem Vorteil ist es darüber hinaus, dass die offenbarten Verfahren in Automatisierungssystemen, insbesondere bei und in Verpackungsmaschinen, Pressen, Kunststoffspritzmaschinen, Textilmaschinen, Druckmaschinen, Werkzeugmaschinen, Roboter, Handlingsystemen, Holzverarbeitungsmaschinen, Glasverarbeitungsmaschinen, Keramikverarbeitungsmaschinen sowie Hebezeugen eingesetzt bzw. verwendet werden können. It is also of particular advantage that the disclosed methods in automation systems, in particular in and in packaging machines, presses, Plastic injection machines, textile machines, printing machines, machine tools, Robots, handling systems, woodworking machines, Glass processing machines, ceramic processing machines as well Hoists can be used or used.

Im Weiteren werden bevorzugte Ausführungsbeispiele der Erfindung mit Bezugnahme auf die Zeichnungen näher erläutert. Es zeigen: Preferred exemplary embodiments of the Invention explained with reference to the drawings. It demonstrate:

Fig. 1 Arbitrierung mit einer Priorität - Zustand nach Reset, Teilnehmer 2 ist Busmaster, Fig. 1 arbitration with priority - state after reset, subscriber 2 is the bus master,

Fig. 2 ein Flussdiagramm einer Ausführungsform eines erfindungsgemäßen Verfahrens mit einer Priorität, Fig. 2 is a flow diagram of an embodiment of a method according to the invention with a priority,

Fig. 3 Arbitrierung mit einer Priorität - Teilnehmer 1 und 4 aktivieren Busrequest, Teilnehmer 4 wird Busmaster, mit Timing-Diagramm, Fig. 3 arbitration with priority - activate subscriber 1 and 4 Busrequest, subscriber 4 is a bus master, with timing diagram

Fig. 4 Arbitrierung mit einer Priorität - Teilnehmer 4 deaktiviert Busrequest; Teilnehmer 1 wird Busmaster, mit Timing-Diagramm, Fig. 4 arbitration with priority - subscriber 4 disabled bus request; Participant 1 becomes bus master, with timing diagram,

Fig. 5 Arbitrierung mit einer Priorität - Teilnehmer 1 deaktiviert Busrequest und bleibt Busmaster, mit Timing-Diagramm, Fig. 5 arbitration with priority - subscriber 1 remains disabled bus request and bus master, with timing diagram

Fig. 6 Arbitrierung mit drei Prioritäten - Zustand nach Reset; Teilnehmer 2 ist Busmaster, Fig. 6 arbitration with three priorities - state after reset; Participant 2 is bus master,

Fig. 7 eine Ausführungsform eines erfindungsgemäßen Verfahrens mit mehreren Prioritäten, Fig. 7 shows an embodiment of a method according to the invention having a plurality of priorities,

Fig. 8 Arbitrierung mit drei Prioritäten - Teilnehmer 3, 4 und 5 aktivieren Busrequests unterschiedlicher Priorität; Teilnehmer 5 wird Busmaster, Fig. 8 arbitration with three priorities - User 3, 4 and 5 enable bus requests of different priority; Participant 5 becomes bus master,

Fig. 9 Arbitrierung mit drei Prioritäten - Teilnehmer 5 deaktiviert Busrequest; Teilnehmer 4 wird Busmaster, Fig. 9 arbitration with three priorities - Participants 5 disabled bus request; Participant 4 becomes bus master,

Fig. 10 Arbitrierung mit drei Prioritäten - Teilnehmer 4 deaktiviert Busrequest; Teilnehmer 3 wird Busmaster, Fig. 10 arbitration with three priorities - Participants 4 disabled bus request; Participant 3 becomes bus master,

Fig. 11 Arbitrierung mit drei Prioritäten - Teilnehmer 4 und 6 aktivieren Busrequests unterschiedlicher Priorität; Teilnehmer 3 deaktiviert Busrequest; Teilnehmer 6 wird Busmaster, Fig. 11 arbitration with three priorities - subscriber 4 and 6 enable bus requests of different priority; Participant 3 deactivates bus request; Participant 6 becomes bus master,

Fig. 12 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Zustand nach Reset; Teilnehmer 2 ist Busmaster, Fig. 12 arbitration with three priorities and virtual participants - state after reset; Participant 2 is bus master,

Fig. 13 eine Ausführungsform eines erfindungsgemäßen Verfahrens mit einer Arbitrierungseinheit als virtuellem Teilnehmer, Fig. 13 shows an embodiment of a method according to the invention with an arbitration unit as a virtual subscriber,

Fig. 14 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Teilnehmer 1, 3 und 4 aktivieren Busrequests unterschiedlicher Priorität; Teilnehmer 3 wird Busmaster, Fig. 14 arbitration with three priorities and virtual participants - activate subscriber 1, 3 and 4 bus requests of different priority; Participant 3 becomes bus master,

Fig. 15 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Teilnehmer 2 aktiviert Busrequest; Teilnehmer 3 deaktiviert Busrequest; Teilnehmer 4 wird Busmaster, Fig. 15 arbitration with three priorities and virtual participants - Participant 2 activates bus request; Participant 3 deactivates bus request; Participant 4 becomes bus master,

Fig. 16 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Teilnehmer 3 aktiviert Busrequest; Teilnehmer 4 deaktiviert Busrequest; Teilnehmer 1 wird Busmaster, Fig. 16 arbitration with three priorities and virtual participants - Participant 3 activates bus request; Participant 4 deactivated bus request; Participant 1 becomes bus master,

Fig. 17 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Teilnehmer 1 deaktiviert Busrequest; Teilnehmer 3 wird Busmaster, FIG. 17 arbitration with three priorities and virtual participants - participants 1 deactivated Busrequest; Participant 3 becomes bus master,

Fig. 18 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Teilnehmer 3 deaktiviert Busrequest: Teilnehmer 2 wird Busmaster, Fig. 18 Arbitration with three priorities and virtual participants - participant 3 deactivates bus request: participant 2 becomes bus master,

Fig. 19 Arbitrierung mit drei Prioritäten und virtuellen Teilnehmern - Teilnehmer 2 deaktiviert Busrequest und bleibt Busmaster. Fig. 19 Arbitration with three priorities and virtual nodes - node 2 deactivates bus request and remains bus master.

Fig. 1 zeigt ein Blockdiagramm eines erfindungsgemäßen Kommunikationssystems. Das Kommunikationssystem beinhaltet einen Datenbus 10 auf den Teilnehmer Tn 1, Tn 2, Tn 3, Tn 4 und Tn 5 des Kommunikationssystems zugreifen können. Die Teilnehmer Tn 1 bis Tn 5 sind durch einen Arbitrierungsring 12 gekoppelt. Der Arbitrierungsring 12 hat eine Umlaufrichtung, die, in dem hier betrachteten Ausführungsbeispiel, der Uhrzeigersinn ist. Fig. 1 shows a block diagram of a communication system according to the invention. The communication system includes a data bus 10 which the subscribers Tn 1, Tn 2, Tn 3, Tn 4 and Tn 5 of the communication system can access. The participants Tn 1 to Tn 5 are coupled by an arbitration ring 12 . The arbitration ring 12 has a circumferential direction, which, in the exemplary embodiment considered here, is clockwise.

Die Fig. 1 zeigt den Zustand nach Reset: Der Teilnehmer Tn 2 ist Busmaster und Ringmaster, solange keine Zugriffsanforderung, d. h. ein sogenannter Busrequest aktiviert wird. Ein Busrequest kann beispielsweise von einer Applikation eines Teilnehmers erzeugt werden. Unter "Busmaster" wird im Folgenden derjenige Teilnehmer verstanden, der auf den Datenbus 10 zugreifen darf. Figs. 1 shows the state after reset: The participant Tn 2 is bus master and master ring, as long as no access request that is, a so-called bus request is activated. A bus request can, for example, be generated by an application of a subscriber. In the following, “bus master” is understood to mean the subscriber who is allowed to access the data bus 10 .

Jeder der Teilnehmer Tn 1 bis Tn 5 hat ein Arbitrierungsmodul 14 mit einem Eingang 16 und einem Ausgang 18. An dem Eingang 16 kann das Signal "Bus/Ring belegt" oder "Bus/Ring freigegeben" empfangen werden. Das Signal an dem Eingang 16 wird im Allgemeinen unverändert an dem Ausgang 18 ausgegeben. Each of the participants Tn 1 to Tn 5 has an arbitration module 14 with an input 16 and an output 18 . The signal "Bus / ring occupied" or "Bus / ring enabled" can be received at input 16 . The signal at input 16 is generally output unchanged at output 18 .

Nur wenn ein Teilnehmer die Rolle eines Ringmasters für den Arbitrierungsring 12 hat, kann dieser Teilnehmer, bei dem Signal "Bus/Ring belegt" an seinem Eingang 16, an seinem Ausgang 18 das Signal "Bus/Ring freigegeben" ausgeben. In der hier betrachteten Konfiguration sind der Busmaster und der Ringmaster identisch, da es nur einen Arbitrierungsring 12 gibt. In dem hier betrachteten Beispiel ist der Busmaster und der Ringmaster der Teilnehmer Tn 2. Only if a participant has the role of a ring master for the arbitration ring 12 can this participant, in the case of the "bus / ring occupied" signal at its input 16 , output the "bus / ring released" signal at its output 18 . In the configuration considered here, the bus master and the ring master are identical since there is only one arbitration ring 12 . In the example considered here, the bus master and the ring master are the subscribers Tn 2.

Das Flussdiagramm der Fig. 2 veranschaulicht die Arbeitsweise des Kommunikationssystems der Fig. 1. In dem Schritt 20 ist einer der Teilnehmer Tn X Busmaster und gleichzeitig Ringmaster. Der Teilnehmer Tn X hat aktuellen Zugriff auf den Datenbus 10, so dass auf dem Arbitrierungsring 12 das Signal "Bus/Ring belegt" umläuft. The flow diagram of FIG. 2 illustrates the mode of operation of the communication system of FIG. 1. In step 20 , one of the subscribers Tn X is the bus master and at the same time the ring master. The subscriber Tn X has current access to the data bus 10 , so that the "bus / ring occupied" signal circulates on the arbitration ring 12 .

In dem Schritt 22 möchte der Teilnehmer Tn X den Datenbus 10 freigeben. Der Grund hierfür kann sein, dass der Teilnehmer Tn X keinen Busrequest mehr hat oder dass eine vorgegebene maximale Zeit für die Belegung des Datenbusses abgelaufen ist. Da der Teilnehmer Tn X Ringmaster ist, kann er das Signal "Bus/Ring freigegeben" an seinem Ausgang 18 ausgeben, was in dem Schritt 22 erfolgt. In step 22 , the subscriber Tn X wants to release the data bus 10 . The reason for this may be that the subscriber Tn X no longer has a bus request or that a predetermined maximum time for occupying the data bus has expired. Since the subscriber Tn X is the ring master, he can output the "bus / ring released" signal at his output 18 , which is done in step 22 .

In dem Schritt 24 hat ein anderer der Teilnehmer Tn Y eine Zugriffsanforderung. Diese kann von einer Applikation des Teilnehmers Tn Y kommen. In dem Schritt 26 prüft der Teilnehmer Tn Y ob an seinem Eingang 16 das Signal "Bus/Ring freigegeben" anliegt. Ist dies nicht der Fall, so muss der Teilnehmer Tn Y so lange warten, bis dieses Signal an seinem Eingang 16 anliegt. In step 24 , another of the participants Tn Y has an access request. This can come from an application of the subscriber Tn Y. In step 26, the subscriber Tn Y checks whether the signal "bus / ring released" is present at its input 16 . If this is not the case, the subscriber Tn Y must wait until this signal is present at its input 16 .

Sobald das Signal "Bus/Ring freigegeben" an dem Eingang 16 des Teilnehmers Tn Y anliegt, gibt der Teilnehmer Tn Y in dem Schritt 28 an seinem Ausgang 18 das Signal "Bus/Ring belegt" aus. Dies erfolgt beispielsweise zu Beginn eines Bustakts. As soon as the "bus / ring released" signal is present at the input 16 of the subscriber Tn Y, the subscriber Tn Y outputs the signal "bus / ring occupied" at its output 18 in step 28 . This takes place, for example, at the beginning of a bus cycle.

In dem Schritt 30 prüft der Teilnehmer Tn Y, ob das Signal "Bus/Ring freigegeben" am Ende des Bustakts noch an seinem Eingang 16 anliegt. Wenn dies der Fall ist, bedeutet dies, dass entweder kein anderer der Teilnehmer ein Signal "Bus/Ring belegt" auf den Arbitrierungsring 12 ausgegeben hat, nachdem das Signal "Bus/Ring freigegeben" anlag, oder dass ein anderer Teilnehmer zwar ein solches Signal "Bus/Ring belegt" ausgegeben hat, dieser Teilnehmer aber im Umlaufsinn des Arbitrierungsrings 12 von dem aktuellen Ringmaster weiter entfernt ist als der Teilnehmer Tn Y. Vorteilhafterweise wird die Länge des Bustakts im Wesentlichen gleich der Länge für den Umlauf eines Signals um den Arbitrierungsring 12 oder länger gewählt. In step 30, the subscriber Tn Y checks whether the "bus / ring enabled" signal is still present at its input 16 at the end of the bus cycle. If this is the case, it means that either no other of the subscribers has issued a "bus / ring occupied" signal to the arbitration ring 12 after the "bus / ring released" signal was present, or that another subscriber did such a signal "Bus / ring occupied", but this subscriber is further away from the current ring master in the sense of rotation of the arbitration ring 12 than the subscriber Tn Y. Advantageously, the length of the bus clock is essentially equal to the length for the circulation of a signal around the arbitration ring 12 or chosen longer.

Wenn die Bedingung des Schritts 30 erfüllt wird, wird der Teilnehmer Tn Y in dem Schritt 32 neuer Busmaster und zugleich neuer Ringmaster für den Arbitrierungsring 12. Ist die Bedingung des Schritts 30 nicht erfüllt, so geht die Ablaufsteuerung des Teilnehmers Tn Y zurück zu dem Schritt 26. If the condition of step 30 is fulfilled, the subscriber Tn Y in step 32 becomes a new bus master and at the same time a new ring master for the arbitration ring 12 . If the condition of step 30 is not met, the sequence control of the subscriber Tn Y goes back to step 26 .

Die Fig. 3 zeigt ein entsprechendes Timing-Diagramm. Zunächst ist der Teilnehmer Tn 2 Busmaster und Ringmaster des Arbitrierungsrings 12. Der Ring-Output an dem Ausgang 18 des Teilnehmers Tn 2 ist auf logisch 1, d. h. "Bus/Ring freigegeben". Zu Beginn des Bustakts 34 erhält der Teilnehmer Tn 1 eine Zugriffsanforderung auf den Datenbus 10, d. h. das Signal Busreq_Tn 1 geht von logisch 0 auf logisch 1; ebenso erhält der Teilnehmer Tn 4 eine Zugriffsanforderung auf den Datenbus 10, so dass auch das Signal Busreq_Tn 4 von logisch 0 auf logisch 1 geht. FIG. 3 shows a corresponding timing diagram. First, the subscriber Tn 2 is the bus master and ring master of the arbitration ring 12 . The ring output at the output 18 of the subscriber Tn 2 is at logic 1, ie "bus / ring released". At the beginning of the bus clock 34 , the subscriber Tn 1 receives an access request to the data bus 10 , ie the signal Busreq_Tn 1 goes from logic 0 to logic 1; Likewise, the subscriber Tn 4 receives an access request to the data bus 10 , so that the signal Busreq_Tn 4 also goes from logic 0 to logic 1.

Da das Signal "Bus/Ring freigegeben" auf dem Arbitrierungsring 12 umläuft und der Teilnehmer Tn 1 dies an seinem Eingang 16 empfängt, gibt der Teilnehmer Tn 1 daraufhin an seinem Ausgang 18, d. h. bei seinem Ring-Output, das Signal "Bus/Ring belegt". Ebenso verhält es sich für den Teilnehmer Tn 4. Since the "bus / ring released" signal circulates on the arbitration ring 12 and the subscriber Tn 1 receives this at its input 16 , the subscriber Tn 1 then outputs the "bus / ring" signal at its output 18 , ie in its ring output busy". The same applies to subscriber Tn 4.

Die von den Teilnehmern Tn 1 und Tn 4 ausgegebenen Signale "Bus/Ring belegt" beginnen dann im Uhrzeigersinn durch den Arbitrierungsring 12 über die einzelnen Teilnehmer zu propagieren. Zum Ende des Bustakts 34 prüfen die Teilnehmer Tn 1 und Tn 4 jeweils an deren Eingängen 16, ob das Signal an den jeweiligen Eingängen 16 noch "Bus/Ring freigegeben" ist. The signals "Bus / Ring busy" output by the subscribers Tn 1 and Tn 4 then begin to propagate clockwise through the arbitration ring 12 via the individual subscribers. At the end of the bus clock 34 , the subscribers Tn 1 and Tn 4 each check at their inputs 16 whether the signal at the respective inputs 16 is still "bus / ring enabled".

Dies ist für den Teilnehmer Tn 4 der Fall, da dieser im Uhrzeigersinn näher an dem noch aktuellen Ringmaster Tn 2 in dem Arbitrierungsring 12 angeordnet ist. Am Eingang 16 des Teilnehmers Tn 1 liegt hingegen bereits "Bus/Ring belegt" an. Aufgrund dessen wird der Teilnehmer Tn 4 der neue Busmaster und gleichzeitig auch der neue Ringmaster des Arbitrierungsrings 12 und kann auf den Datenbus 10 zugreifen. This is the case for subscriber Tn 4, since it is arranged clockwise closer to ring master Tn 2, which is still current, in arbitration ring 12 . In contrast, "bus / ring occupied" is already present at input 16 of subscriber Tn 1. As a result, the subscriber Tn 4 becomes the new bus master and at the same time also the new ring master of the arbitration ring 12 and can access the data bus 10 .

Die Fig. 4 zeigt eine entsprechende Situation, in der der Teilnehmer Tn 4 seinen Busrequest deaktiviert, d. h. an seinem Ausgang 16 von "Bus/Ring belegt" auf "Bus/Ring freigegeben" zurückschaltet. Nachdem der Teilnehmer Tn 4 also seine Zugriffsanforderung abgearbeitet hat oder die maximale Zugriffszeit abgelaufen ist, kommt nunmehr der Teilnehmer Tn 1 an die Reihe und wird neuer Bus- und Ringmaster. FIG. 4 shows a corresponding situation in which the subscriber Tn 4 deactivates his bus request, ie switches back at his output 16 from "bus / ring occupied" to "bus / ring released". After subscriber Tn 4 has thus processed his access request or the maximum access time has expired, subscriber Tn 1 now has a turn and becomes the new bus and ring master.

Die Fig. 5 zeigt eine Situation, in der der bisherige Ring- und Busmaster Tn 1 seinen Busrequest deaktiviert und zunächst Bus- und Ringmaster bleibt, da kein Busrequest eines anderen Teilnehmers aktiv ist. FIG. 5 shows a situation in which the previous ring and bus master Tn 1 disables its bus request and first bus and ring master remains because no bus request of another user is active.

Die Fig. 6 zeigt eine alternative Ausführungsform eines erfindungsgemäßen Kommunikationssystems mit mehreren Arbitrierungsringen. Fig. 6 shows an alternative embodiment of a communication system according to the invention with several Arbitrierungsringen.

Das Kommunikationssystem beinhaltet die Teilnehmer 1, 2, 3, 4, 5 und 6 sowie den Datenbus 10. Die Teilnehmer 1 bis 6 haben Arbitrierungsmodule 36, die durch Arbitrierungsringe 38, 40 und 42 miteinander gekoppelt sind. Der Arbitrierungsring 38 dient dabei zur Bearbeitung von Zugriffsanforderungen auf den Bus 10 mit der höchsten Priorität 1. Entsprechend dient der Arbitrierungsring 40 für Zugriffsanforderungen der Priorität 2 und der Arbitrierungsring 42 für Zugriffsanforderungen der Priorität 3. The communication system includes subscribers 1, 2, 3, 4, 5 and 6 as well as data bus 10 . Participants 1 to 6 have arbitration modules 36 which are coupled to one another by arbitration rings 38 , 40 and 42 . The arbitration ring 38 is used to process access requests to the bus 10 with the highest priority 1. Accordingly, the arbitration ring 40 serves for access requests of priority 2 and the arbitration ring 42 for access requests of priority 3.

Die Fig. 6 zeigt den Zustand dieses Kommunikationssystems nach einem Reset, wobei Teilnehmer 2 der Busmaster und gleichzeitig der Ringmaster der Arbitrierungsringe 38, 40 und 42 ist. Fig. 6 shows the state of this communication system after a reset, said subscriber 2 is the bus master and at the same time, the ring master of Arbitrierungsringe 38, 40 and 42.

Das Flussdiagramm der Fig. 7 veranschaulicht die Arbeitsweise eines Kommunikationssystems vom Typ, wie es in der Fig. 6 dargestellt ist, mit einer Anzahl von N-Prioritäten und einer Anzahl von N-Arbitrierungsringen. The flowchart of FIG. 7 illustrates the operation of a communication system of the type shown in FIG. 6 with a number of N priorities and a number of N arbitration rings.

In dem Schritt 50 ist einer der Teilnehmer X des Kommunikationssystems Busmaster und Ringmaster der Arbitrierungsringe. Dies ist der initiale Zustand nach einem Reset. In dem Schritt 52 legt der Teilnehmer X das Signal "Bus/Ring freigegeben" auf den niederpriorsten Ring des Kommunikationssystems, d. h. in dem Beispiel der Fig. 6 auf den Arbitrierungsring 42. Dies entspricht dem Schritt 22 der Ausführungsform der Fig. 2. In step 50 , one of the subscribers X of the communication system is bus master and ring master of the arbitration rings. This is the initial state after a reset. In step 52 , subscriber X applies the "bus / ring enabled" signal to the lowest-priority ring of the communication system, ie to arbitration ring 42 in the example in FIG. 6. This corresponds to step 22 of the embodiment in FIG. 2.

In dem Schritt 54 hat der Teilnehmer Y des Kommunikationssystems eine Zugriffsanforderung auf den Datenbus 10 mit der Priorität i, wobei 1 ≤ i ≤ N. Dieser Schritt entspricht dem Schritt 24 in der Ausführungsform der Fig. 2. In step 54 , the subscriber Y of the communication system has an access request to the data bus 10 with priority i, where 1 ≤ i N. N. This step corresponds to step 24 in the embodiment in FIG. 2.

In dem Schritt 56 prüft der Teilnehmer Y, ob das Signal "Ring freigegeben" auf dem Arbitrierungsring, der der Priorität i zugeordnet ist, an dem Eingang des Teilnehmers Y anliegt. Ist das nicht der Fall, so muss der Teilnehmer Y so lange warten, bis diese Bedingung erfüllt ist. Wenn die Bedingung jedoch erfüllt ist, so gibt der Teilnehmer Y, beispielsweise am Anfang eines Bustakts, das Signal "Ring belegt" an seinem Ausgang auf den Arbitrierungsring der Priorität i aus. In step 56, the subscriber Y checks whether the "ring released" signal is present on the arbitration ring assigned to priority i at the input of the subscriber Y. If this is not the case, subscriber Y must wait until this condition is met. If the condition is fulfilled, however, the subscriber Y outputs the signal "ring occupied" at its output on the arbitration ring of priority i, for example at the beginning of a bus cycle.

In dem Schritt 60 prüft der Teilnehmer Y, ob das Signal "Ring freigegeben" an dem Eingang des Teilnehmers Y für den Arbitrierungsring der Priorität i am Ende des Bustakts noch anliegt. Ist dies nicht der Fall, so geht die Ablaufsteuerung des Teilnehmers Y zurück zu dem Schritt 56. In step 60, subscriber Y checks whether the "ring released" signal is still present at the input of subscriber Y for the arbitration ring of priority i at the end of the bus cycle. If this is not the case, the flow control of subscriber Y goes back to step 56 .

Ist die Bedingung erfüllt, so wird danach der Schritt 62 ausgeführt. Die Schritte 56, 58 und 60 entsprechen den Schritten 26, 28 und 30 der Ausführungsform der Fig. 2, wobei der Arbitrierungsring, der der Priorität i zugeordnet ist, an die Stelle des einzigen Arbitrierungsrings 12 (vgl. Fig. 1) tritt. If the condition is met, step 62 is then carried out. Steps 56 , 58 and 60 correspond to steps 26 , 28 and 30 of the embodiment in FIG. 2, the arbitration ring which is assigned to priority i taking the place of the single arbitration ring 12 (cf. FIG. 1).

In dem Schritt 62 wird der Teilnehmer Y neuer Ringmaster des Arbitrierungsrings der Priorität i. Damit ist der Teilnehmer Y aber noch nicht zum Busmaster geworden. In step 62 , subscriber Y becomes the new ring master of the arbitration ring of priority i. However, subscriber Y has not yet become the bus master.

Dazu muss zunächst in dem Schritt 64 von dem Teilnehmer Y geprüft werden, ob das Signal "Ring belegt" auf dem Arbitrierungsring mit der niedrigsten Priorität N oder einem Arbitrierungsring mit einer Priorität, die größer ist als die Priorität i, an einem der Arbitrierungsringeingänge des Teilnehmers Y anliegt. Wenn dies der Fall ist, muss der Teilnehmer Y so lange warten, bis das Signal "Ring belegt" durch "Ring freigegeben" ersetzt wird. For this purpose, the user Y must first check in step 64 whether the signal "Ring occupied" on the arbitration ring with the lowest priority N or an arbitration ring with a priority that is greater than priority i at one of the arbitration ring inputs of the subscriber Y is present. If this is the case, subscriber Y must wait until the signal "Ring occupied" is replaced by "Ring released".

Dann wird der Teilnehmer Y in dem Schritt 66 das Signal "Ring belegt" auf dem niederpriorsten Ring ausgeben, um dann in dem Schritt 68 neuer Busmaster und Ringmaster des niederpriorsten Ring zu werden. Then, in step 66, subscriber Y will output the "ring occupied" signal on the low-priority ring in order to then become the new bus master and ring master of the low-priority ring in step 68 .

Die Fig. 8 zeigt den Zustand des Kommunikationssystems der Fig. 6, wenn der Teilnehmer 2 zunächst Busmaster ist und der Teilnehmer 3 eine Zugriffsanforderung auf den Datenbus 10 mit der Priorität 3 hat ("Request-Prio 3") und ferner der Teilnehmer 4 einen Request-Prio 2 hat und der Teilnehmer 5 einen Request-Prio 1 hat. In dieser Situation wird der Teilnehmer 5 neuer Ringmaster des Arbitrierungsrings 38 der Priorität 1; der Teilnehmer 4 wird neuer Ringmaster des Arbitrierungsrings 40 der Priorität 2 und der Teilnehmer 5 wird neuer Ringmaster des Arbitrierungsrings 42 der Priorität 3, obwohl bei Teilnehmer 3 ein Request-Prio 3 aktiv ist. FIG. 8 shows the state of the communication system of FIG. 6 when subscriber 2 is initially bus master and subscriber 3 has an access request to data bus 10 with priority 3 ("request priority 3") and subscriber 4 also has one Has request priority 2 and subscriber 5 has a request priority 1. In this situation, the subscriber 5 becomes the new ring master of the arbitration ring 38 of priority 1; subscriber 4 becomes the new ring master of arbitration ring 40 of priority 2 and subscriber 5 becomes new ring master of arbitration ring 42 of priority 3, although a request priority 3 is active for subscriber 3.

Teilnehmer 3 könnte nur dann neuer Ringmaster der Priorität 3 werden, wenn keine Zugriffsanforderung mit einer höheren Priorität aktiv ist. Danach wird immer der Teilnehmer Ringmaster der Priorität 3, der den Busrequest mit der höchsten Priorität gestellt hat. Jeder Ringmaster der Priorität 3 ist gleichzeitig auch Datenbus-Master. Deshalb wird der Teilnehmer 5 der neue Busmaster. Participant 3 could only be the new ring master of priority 3 if there is no access request with a higher one Priority is active. After that, the participant always becomes the ring master priority 3, the bus request with the highest Priority. Each ring master is priority 3 at the same time also data bus master. Therefore the Participant 5 the new bus master.

Die Fig. 9 zeigt den Zustand des Kommunikationssystems ausgehend von dem Zustand der Fig. 8, d. h. der Ausgangspunkt, dass der Teilnehmer 5 Busmaster ist. Der Teilnehmer 5 deaktiviert seinen Request-Prio 1, wobei der Teilnehmer 3 einen Request-Prio 3 und der Teilnehmer 4 einen Request-Prio 2 hat. In diesem Fall bleibt der Teilnehmer 5 Ringmaster des Arbitrierungsrings 38 der Priorität 1, da kein anderer Teilnehmer eine Zugriffsanforderung auf den Datenbus 10 der Priorität 1 aktiviert hat. Ferner bleibt der Teilnehmer 4 Ringmaster des Arbitrierungsrings 40 der Priorität 2 und wird neuer Ringmaster des Arbitrierungsrings 42 der Priorität 3, obwohl bei Teilnehmer 3 ein Request-Prio 3 aktiv ist. FIG. 9 shows the state of the communication system based on the state of FIG. 8, ie the starting point that the subscriber 5 is the bus master. The participant 5 deactivates his request priority 1, the participant 3 having a request priority 3 and the participant 4 having a request priority 2. In this case, the subscriber 5 remains the ring master of the arbitration ring 38 of priority 1, since no other subscriber has activated an access request to the data bus 10 of priority 1. In addition, the subscriber 4 remains the ring master of the arbitration ring 40 of priority 2 and becomes the new ring master of the arbitration ring 42 of priority 3, although a request priority 3 is active for subscriber 3.

Teilnehmer 3 könnte nur dann neuer Ringmaster der Priorität 3 werden, wenn kein Request einer höheren Priorität aktiv ist. Bei diesem Verfahren wird immer der Teilnehmer Ringmaster der Priorität 3, der den Busrequest mit der höchsten Priorität gestellt hat. Jeder Ringmaster der Priorität 3 ist gleichzeitig auch Datenbus-Master. Deshalb wird jetzt Teilnehmer 4 der neue Busmaster. Participant 3 could only be the new ring master of priority 3 if no request with a higher priority is active. With this procedure, the participant is always the ring master of the Priority 3, the bus request with the highest priority has asked. Each ring master is priority 3 at the same time also data bus master. Therefore participant 4 is now the new busmaster.

Die Fig. 10 zeigt den Zustand des Kommunikationssystems, wobei der Teilnehmer 4 der alte Busmaster ist. Dieser deaktiviert seinen Request-Prio 2. Der Teilnehmer 3 hat einen Request-Prio 3. In dieser Situation bleibt der Teilnehmer 5 Ringmaster des Arbitrierungsrings 38 der Priorität 1, da kein anderer Teilnehmer einen Request der Priorität 1 aktiviert hat. Der Teilnehmer 4 bleibt Ringmaster des Arbitrierungsrings 40 der Priorität 2, da kein anderer Teilnehmer einen Request der Priorität 2 aktiviert hat. Der Teilnehmer wird neuer Ringmaster des Arbitrierungsrings 42 der Priorität 3, da kein Request einer höheren Priorität aktiv ist. Fig. 10 shows the state of the communication system, wherein the subscriber 4 is the old bus master. This deactivates his request priority 2. The participant 3 has a request priority 3. In this situation, the participant 5 remains the ring master of the arbitration ring 38 of priority 1, since no other participant has activated a request of priority 1. The subscriber 4 remains the ring master of the arbitration ring 40 of priority 2, since no other subscriber has activated a request of priority 2. The subscriber becomes the new ring master of the arbitration ring 42 of priority 3, since no request of a higher priority is active.

Bei diesem Verfahren wird immer der Teilnehmer Ringmaster der Priorität 3, der den Busrequest mit der höchsten Priorität gestellt hat. Jeder Ringmaster der Priorität 3 ist gleichzeitig auch Datenbus-Master. Deshalb wird jetzt der Teilnehmer 3 der neue Busmaster. With this procedure, the participant is always the ring master of the Priority 3, the bus request with the highest priority has asked. Each ring master is priority 3 at the same time also data bus master. Therefore the participant is now 3rd the new bus master.

Die Fig. 11 zeigt den Zustand des Kommunikationssystems, in dem der Teilnehmer 4 einen Request-Prio 3 aktiviert und der Teilnehmer 6 seinen Request-Prio 2 aktiviert. In dieser Situation wird der Teilnehmer 6 sofort der neue Ringmaster des Arbitrierungsrings der Priorität 2. Dies ist unabhängig vom Zeitpunkt, zu dem der bisherige Busmaster, d. h. der Teilnehmer 3, seinen Busrequest deaktiviert. Fig. 11 shows the state of the communication system, in which the subscriber 4 activates a request priority 3 and the subscriber 6 its request priority 2 activated. In this situation, subscriber 6 immediately becomes the new ring master of the arbitration ring of priority 2. This is independent of the point in time at which the previous bus master, ie subscriber 3, deactivated his bus request.

Der Teilnehmer 6 kann jedoch frühestens Busmaster werden, wenn der bisherige Busmaster, d. h. der Teilnehmer 3, den Busrequest deaktiviert. Die Priorität des Busrequests vom Busmaster spielt hierbei keine Rolle. However, subscriber 6 can become bus master at the earliest if the previous bus master, d. H. the participant 3, the Bus request deactivated. The priority of the bus request from Busmaster does not matter here.

Sobald der bisherige Busmaster, Teilnehmer 3, den Request- Prio 3 deaktiviert, wird Teilnehmer 6 der neue Ringmaster der Priorität 3 und somit neuer Busmaster. As soon as the previous bus master, subscriber 3, receives the request Priority 3 deactivated, participant 6 becomes the new ring master of the Priority 3 and thus the new bus master.

Teilnehmer 4 wird trotz aktiviertem Request-Prio 3 nicht der Ringmaster der Priorität 3, da ein Request einer höheren Priorität aktiv ist. Nachdem der bisherige Busmaster, Teilnehmer 3, seinen Busrequest deaktiviert hat, ergibt sich die Situation in Fig. 11. Despite activated request priority 3, subscriber 4 does not become the ring master of priority 3, since a request of a higher priority is active. After the previous bus master, subscriber 3, has deactivated his bus request, the situation in FIG. 11 results.

Aktiviert dagegen z. B. Teilnehmer 2 den Request-Prio 3, bevor der aktuelle Busmaster Teilnehmer 6 bereit zur Busabgabe ist (d. h. seinen Busrequest deaktiviert), wird Teilnehmer 2 der neue Ringmaster der Priorität 3 und somit neuer Busmaster, wenn Teilnehmer 6 den Busrequest deaktiviert und zu diesem Zeitpunkt kein höher priorer Request eines anderen Teilnehmers aktiviert ist. Teilnehmer 4 hat zwar früher als Teilnehmer 2 Busrequest-Prio 3 aktiviert, wurde jedoch beim Busmaster-Wechsel von Teilnehmer 3 nach Teilnehmer 6 übersprungen. Activates z. B. Participant 2 the request priority 3 before the current bus master subscriber 6 is ready to deliver the bus (i.e. his bus request deactivated), subscriber 2 becomes the new priority 3 ring masters and thus new bus master, when participant 6 deactivates the bus request and for this No other request with a higher priority at the time Participant is activated. Participant 4 has earlier than Participant 2 bus request priority 3 activated, but was at Busmaster change from subscriber 3 to subscriber 6 skipped.

Aktiviert z. B. Teilnehmer 5 Busrequest-Prio 1 oder Busrequest-Prio 2 bevor der aktuelle Busmaster, Teilnehmer 2, bereit zur Busabgabe ist, wird beim nächsten Busmaster-Wechsel Teilnehmer 4 wieder nicht berücksichtigt. Der Grund, dass beim Busmaster-Wechsel ein Teilnehmer, der den niederpriorsten Busrequest aktiviert, nicht berücksichtigt wird, ist der, dass der Ringmaster dieser niedrigsten Priorität in diesem Verfahren immer auch der Busmaster ist. Activates e.g. B. Participants 5 bus request priority 1 or Bus request priority 2 before the current bus master, participant 2, is ready to deliver the bus, will be the next bus master change Participant 4 again not considered. The reason that when changing the bus master, a participant who low priority bus request is activated, is not taken into account of that the ringmaster in this lowest priority this method is always the bus master.

Um diesen Nachteil, die Nicht-Berücksichtigung eines Teilnehmers beim Busmaster-Wechsel zu vermeiden, ist das oben beschriebene Verfahren so zu modifizieren, dass zusätzlich zu den N Prioritätsringen ein Busmaster-Ring eingeführt wird. Bei 3 Prioritäten sind somit 4 Ringe notwendig: 3 Prioritätsringe und 1 Busmaster-Ring. Im Gegensatz zum oben beschriebenen Verfahren verhält sich der niederpriorste Ring analog zu den höher prioren Ringen. Busmaster ist in diesem Verfahren der Ringmaster des Busmaster-Rings. To overcome this disadvantage, disregarding one Avoiding the participant when changing the bus master is above to modify the described method so that in addition to A bus master ring is introduced into the N priority rings. With 3 priorities, 4 rings are necessary: 3 Priority rings and 1 bus master ring. In contrast to the above described procedure, the lowest priority ring behaves analogously to the higher priority rings. Busmaster is in this process the ringmaster of the busmaster ring.

Vorteil der beiden vorgestellten Verfahren ist die Minimierung der Wartezeit eines Teilnehmers, der einen hochprioren Busrequest gestellt hat, auf die Buszuteilung. Nachteil beider Verfahren ist die Möglichkeit von langen Wartezeiten bei Teilnehmern, die einen niederprioren Busrequest gestellt haben, wenn gleichzeitig viele hochpriore Busrequests von anderen Teilnehmern anstehen. The advantage of the two methods presented is that Minimize the waiting time of a participant who has a high priority Busrequest has put on the bus allocation. disadvantage Both procedures involve the possibility of long waiting times Participants who made a low priority bus request if there are many high priority bus requests from queue up to other participants.

Ein weiteres Arbitrierungsverfahren, das auf der Ringstruktur basiert, besitzt die Vorteile der beiden obigen Verfahren, bei gleichzeitiger Verringerung von deren Nachteilen. Another arbitration procedure based on the ring structure based, has the advantages of the two above methods, while reducing their disadvantages.

Dieses Arbitrierungsverfahren ist gekennzeichnet durch

  • - N Prioritätsringe, die analog zu den oben beschriebenen funktionieren, wobei N ≥ 2 ist,
  • - einen virtuellen Teilnehmer im Prioritätsring (N-1), der die Teilnehmer im Prioritätsring der Priorität N repräsentiert. N ist die niedrigste Priorität,
  • - einen virtuellen Teilnehmer im Prioritätsring (N-2), der die Teilnehmer im Prioritätsring der Priorität (N-1) repräsentiert,
  • - einen virtuellen Teilnehmer im Prioritätsring (N-3), der die Teilnehmer im Prioritätsring der Priorität (N-2) repräsentiert,
  • - etc.
  • - einen virtuellen Teilnehmer im Prioritätsring 1, der die Teilnehmer im Prioritätsring der Priorität 2 repräsentiert,
  • - jeder virtuelle Teilnehmer eines Arbitrierungsringes muss immer dann, wenn ein Teilnehmer des repräsentierten Ringes zur Busabgabe bereit ist, einen Teilnehmer seiner oder einer höheren Prioritätsebene das Buszugriffsrecht überlassen,
  • - Datenbus-Master ist immer der Ringmaster des Arbitrierungsringes mit der höchsten Priorität.
This arbitration procedure is characterized by
  • N priority rings, which function analogously to those described above, where N ≥ 2,
  • - A virtual participant in the priority ring (N-1), which represents the participants in the priority ring of priority N. N is the lowest priority,
  • a virtual subscriber in the priority ring (N-2), which represents the subscribers in the priority ring of priority (N-1),
  • a virtual subscriber in the priority ring (N-3), which represents the subscribers in the priority ring of priority (N-2),
  • - Etc.
  • a virtual participant in priority ring 1, which represents the participants in priority ring of priority 2,
  • each virtual subscriber of an arbitration ring must grant the bus access right to a subscriber of his or a higher priority level whenever a subscriber of the represented ring is ready for bus delivery,
  • - The data bus master is always the ring master of the arbitration ring with the highest priority.

Die Fig. 12 zeigt ein Blockdiagramm eines Ausführungsbeispiels eines solchen Kommunikationssystems mit einem Arbitrierungsverfahren mit N = 3, d. h. für drei Prioritäten und drei Arbitrierungsringe. FIG. 12 shows a block diagram of an exemplary embodiment of such a communication system with an arbitration method with N = 3, ie for three priorities and three arbitration rings.

Der Arbitrierungsring 44 ist der Priorität 1 zugeordnet und verbindet die Arbitrierungsmodule 14 der Priorität 1 der Teilnehmer miteinander sowie das Arbitrierungsmodul 50 einer Arbitrierungseinheit, die im Weiteren als virtueller Teilnehmer bezeichnet wird. Das Arbitrierungsmodul 50 repräsentiert die Arbitrierungsmodule 14 der Priorität 2 in dem Arbitrierungsring 44 der Priorität 1. Wenn eine Zugriffsanforderung auf den Datenbus mit der Priorität 2 in einem der Teilnehmer vorliegt, so wird dies von dem Arbitrierungsmodul 50 in dem Arbitrierungsring 44 der Priorität 1 durch eine Zugriffsanforderung mit der Priorität 1 repräsentiert. The arbitration ring 44 is assigned to priority 1 and connects the arbitration modules 14 of the participants' priority 1 with one another and the arbitration module 50 of an arbitration unit, which is referred to below as a virtual subscriber. The arbitration module 50 represents the arbitration modules 14 of priority 2 in the arbitration ring 44 of priority 1. If there is an access request to the data bus with priority 2 in one of the participants, this is done by the arbitration module 50 in the arbitration ring 44 of priority 1 by a Priority 1 access request represented.

Entsprechend verhält es sich mit dem Arbitrierungsmodul 52 in dem Arbitrierungsring 46, welches Zugriffsanforderungen der Teilnehmer mit der Priorität 3 in dem Arbitrierungsring 46 der Priorität 2 repräsentiert. The same applies to the arbitration module 52 in the arbitration ring 46 , which represents access requests of the participants with priority 3 in the arbitration ring 46 of priority 2.

Datenbusmaster ist immer der Ringmaster des Arbitrierungsrings mit der höchsten Priorität. Beim Ringmasterwechsel gelten pro Arbitrierungsring weiterhin die entsprechenden Timing-Diagramme der Fig. 3 bis 5. The data bus master is always the ring master of the arbitration ring with the highest priority. When changing the ring master, the corresponding timing diagrams in FIGS. 3 to 5 continue to apply for each arbitration ring.

Die Fig. 12 zeigt den Zustand nach Reset: Der Teilnehmer 2 ist Busmaster, solange kein Busrequest aktiviert wird. Figs. 12 shows the state after reset: The participant 2 is bus master, as long as no bus request is activated.

Die Fig. 13 veranschaulicht anhand eines Flussdiagramms die Arbeitsweise eines Kommunikationssystems vom Typ der Fig. 12. In dem Schritt 60 hat einer der Teilnehmer Y eine Zugriffsanforderung auf den Datenbus mit der Priorität i. In dem Schritt 62 wird diese Zugriffsanforderung von dem virtuellen Teilnehmer der Priorität i-1 in dem Arbitrierungsring der Priorität i-1 durch eine entsprechende Zugriffsanforderung der Priorität i-1 repräsentiert. FIG. 13 uses a flow chart to illustrate the mode of operation of a communication system of the type of FIG. 12. In step 60 , one of the subscribers Y has an access request to the data bus with priority i. In step 62 , this access request is represented by the virtual subscriber of priority i-1 in the arbitration ring of priority i-1 by a corresponding access request of priority i-1.

In dem Schritt 64 wird der virtuelle Teilnehmer der Priorität i-1 Ringmaster in dem Arbitrierungsring der Priorität i-1. Ferner wird der virtuelle Teilnehmer auch Busmaster (Schritt 66), so dass der Teilnehmer Y in dem Schritt 68 auf den Bus zugreifen kann. In step 64 , the virtual subscriber of priority i-1 becomes the ring master in the arbitration ring of priority i-1. Furthermore, the virtual subscriber also becomes bus master (step 66 ), so that subscriber Y can access the bus in step 68 .

Die Fig. 14 zeigt den Zustand des Kommunikationssystems, wenn zunächst der Teilnehmer 2 der alte Busmaster ist. Im selben Bustakt aktiviert der Teilnehmer 3 ein Request-Prio 3, der Teilnehmer 1 ein Request-Prio 2 und der Teilnehmer 4 ein Request-Prio 1. Daraufhin wird der Teilnehmer 3 neuer Ringmaster des Arbitrierungsrings 48 der Priorität 3; der virtuelle Teilnehmer mit dem Arbitrierungsmodul 52 wird neuer Ringmaster des Arbitrierungsrings 46 der Priorität 2; der virtuelle Teilnehmer mit dem Arbitrierungsmodul 50 wird neuer Ringmaster des Arbitrierungsrings 44 der Priorität 1 und der Teilnehmer 3 erhält schließlich den Zugriff auf den Datenbus 10. Fig. 14 shows the state of the communication system when initially the subscriber 2 is the old bus master. In the same bus cycle, subscriber 3 activates a request priority 3, subscriber 1 a request priority 2 and subscriber 4 a request priority 1. The subscriber 3 then becomes the new ring master of the arbitration ring 48 of priority 3; the virtual subscriber with the arbitration module 52 becomes the new ring master of the arbitration ring 46 of priority 2; the virtual subscriber with the arbitration module 50 becomes the new ring master of the arbitration ring 44 of priority 1 and the subscriber 3 finally receives access to the data bus 10 .

In der Fig. 15 ist der Teilnehmer 3 aktueller Busmaster. Der Teilnehmer 2 aktiviert Request-Prio 3. In the Fig. 15 of the subscriber 3 is the current bus master. Participant 2 activates request priority 3.

Damit sind folgende Busrequests aktiv, wenn der aktuelle Busmaster Teilnehmer 3 bereit zum Busmaster-Wechsel ist:

  • - Teilnehmer 2: Request-Prio 3 ist aktiv;
  • - Teilnehmer 1: Request-Prio 2 ist aktiv;
  • - Teilnehmer 4: Request-Prio 1 ist aktiv;
  • - Teilnehmer 2 wird neuer Ringmaster des Arbitrierungsrings der Priorität 3;
  • - Teilnehmer 1 wird neuer Ringmaster des Arbitrierungsrings der Priorität 2;
  • - Teilnehmer 4 wird neuer Ringmaster des Arbitrierungsrings der Priorität 1;
  • - Teilnehmer 4 wird der neue Datenbus-Master.
The following bus requests are thus active when the current bus master subscriber 3 is ready to change the bus master:
  • - Participant 2: Request priority 3 is active;
  • - Participant 1: Request priority 2 is active;
  • - Participant 4: Request priority 1 is active;
  • - Subscriber 2 becomes the new ring master of the arbitration ring with priority 3;
  • - Subscriber 1 becomes the new ring master of the arbitration ring with priority 2;
  • - Participant 4 becomes the new ring master of the arbitration ring with priority 1;
  • - Participant 4 becomes the new data bus master.

Bei Fig. 16 ist Teilnehmer 4 aktueller Busmaster; Teilnehmer 3 aktiviert Request-Prio 1. . In Fig 16 participants is 4 current bus master; Participant 3 activates request priority 1.

Damit sind folgende Busrequests aktiv, wenn der aktuelle Busmaster Teilnehmer 4 bereit zum Busmaster-Wechsel ist:

  • - Teilnehmer 2: Request-Prio 3 ist aktiv;
  • - Teilnehmer 1: Request-Prio 2 ist aktiv;
  • - Teilnehmer 3: Request-Prio 1 ist aktiv;
  • - Teilnehmer 2 bleibt Ringmaster des Arbitrierungsrings der Priorität 3;
  • - Teilnehmer 1 bleibt Ringmaster des Arbitrierungsrings der Priorität 2;
  • - virtueller Teilnehmer-P2 wird neuer Ringmaster des Arbitrierungsrings der Priorität 1;
  • - Teilnehmer 1 wird der neue Datenbus-Master.
The following bus requests are active when the current bus master subscriber 4 is ready to change the bus master:
  • - Participant 2: Request priority 3 is active;
  • - Participant 1: Request priority 2 is active;
  • - Participant 3: Request priority 1 is active;
  • Subscriber 2 remains ring master of the arbitration ring of priority 3;
  • - Subscriber 1 remains the ring master of the priority 2 arbitration ring;
  • - virtual subscriber P2 becomes the new ring master of the arbitration ring of priority 1;
  • - Subscriber 1 becomes the new data bus master.

Bei Fig. 17 ist Teilnehmer 1 aktueller Busmaster: . In Fig 17 participants is 1 Current bus master:

Damit sind folgende Busrequests aktiv, wenn der aktuelle Busmaster Teilnehmer 1 bereit zum Busmaster-Wechsel ist:

  • - Teilnehmer 2: Request-Prio 3 ist aktiv;
  • - Teilnehmer 3: Request-Prio 1 ist aktiv;
  • - Teilnehmer 2 bleibt Ringmaster des Arbitrierungsrings der Priorität 3;
  • - virtueller Teilnehmer-P3 wird neuer Ringmaster des Arbitrierungsrings der Priorität 2;
  • - Teilnehmer 3 wird neuer Ringmaster des Arbitrierungsrings der Priorität 1;
  • - Teilnehmer 3 wird der neue Datenbus-Master.
The following bus requests are thus active when the current bus master subscriber 1 is ready to change the bus master:
  • - Participant 2: Request priority 3 is active;
  • - Participant 3: Request priority 1 is active;
  • Subscriber 2 remains ring master of the arbitration ring of priority 3;
  • - virtual subscriber P3 becomes the new ring master of the arbitration ring of priority 2;
  • - Participant 3 becomes the new ring master of the arbitration ring of priority 1;
  • - Participant 3 becomes the new data bus master.

Bei Fig. 18 ist Teilnehmer 3 aktueller Busmaster: In FIG. 18, subscriber 3 is the current bus master:

Damit sind folgende Busrequests aktiv, wenn der aktuelle Busmaster Teilnehmer 3 bereit zum Busmaster-Wechsel ist:

  • - Teilnehmer 2: Request-Prio 3 ist aktiv;
  • - Teilnehmer 2 bleibt Ringmaster des Arbitrierungsrings der Priorität 3;
  • - virtueller Teilnehmer-P3 bleibt Ringmaster des Arbitrierungsrings der Priorität 2;
  • - virtueller Teilnehmer-P2 wird neuer Ringmaster des Arbitrierungsrings der Priorität 1;
  • - Teilnehmer 2 wird der neue Datenbus-Master.
The following bus requests are thus active when the current bus master subscriber 3 is ready to change the bus master:
  • - Participant 2: Request priority 3 is active;
  • Subscriber 2 remains ring master of the arbitration ring of priority 3;
  • virtual subscriber P3 remains ring master of the arbitration ring of priority 2;
  • - virtual subscriber P2 becomes the new ring master of the arbitration ring of priority 1;
  • - Subscriber 2 becomes the new data bus master.

Bei Fig. 19 ist Teilnehmer 2 aktueller Busmaster:
Damit sind keine Busrequests aktiv, wenn der aktuelle Busmaster Teilnehmer 3 bereit zum Busmaster-Wechsel ist:

  • - Teilnehmer 2 bleibt Ringmaster des Arbitrierungsrings der Priorität 3;
  • - virtueller Teilnehmer-P3 bleibt Ringmaster des Arbitrierungsrings der Priorität 2;
  • - virtueller Teilnehmer-P2 bleibt Ringmaster des Arbitrierungsrings der Priorität 1;
  • - Teilnehmer 2 bleibt Datenbus-Master, bis ein anderer Teilnehmer einen Busrequest aktiviert.
. In Fig 19 participants 2 is the current bus master:
This means that no bus requests are active if the current bus master subscriber 3 is ready to change the bus master:
  • Subscriber 2 remains ring master of the arbitration ring of priority 3;
  • virtual subscriber P3 remains ring master of the arbitration ring of priority 2;
  • - virtual subscriber P2 remains ring master of the arbitration ring of priority 1;
  • - Participant 2 remains the data bus master until another participant activates a bus request.

Claims (9)

1. Verfahren zur Arbitrierung eines Zugriffs auf einen Datenbus zwischen Teilnehmern (Tn1, Tn2, . . .), wobei die Teilnehmer durch zumindest einen Arbitrierungsring (12; 38, 40, 42, 44, 46, 48) gekoppelt sind, mit folgenden Schritten: a) Anforderung des Zugriffs eines ersten der Teilnehmer, b) Prüfung, ob ein erstes Signal zur Anzeige, dass der Arbitrierungsring freigegeben ist, an einem Eingang (16) des ersten Teilnehmers anliegt, c) Ausgabe (18) eines zweiten Signals durch den ersten Teilnehmer, wenn das erste Signal anliegt, d) Prüfung, ob das erste Signal an dem Eingang des ersten Teilnehmers am Ende eines vorgegebenen Zeitintervalls noch anliegt, e) Zugriff des ersten Teilnehmers, wenn das erste Signal am Ende des vorgegebenen Zeitintervalls noch anlag. 1. A method for arbitrating access to a data bus between subscribers (Tn1, Tn2,...), The subscribers being coupled by at least one arbitration ring ( 12 ; 38 , 40 , 42 , 44 , 46 , 48 ), with the following steps : a) requesting access by a first of the participants, b) checking whether a first signal to indicate that the arbitration ring is released is present at an input ( 16 ) of the first participant, c) output ( 18 ) of a second signal by the first subscriber when the first signal is present, d) checking whether the first signal is still present at the input of the first subscriber at the end of a predetermined time interval, e) Access by the first participant if the first signal was still present at the end of the predetermined time interval. 2. Verfahren zur Arbitrierung eines Zugriffs auf einen Datenbus zwischen Teilnehmern (Tn1, Tn2, . . .), wobei die Teilnehmer durch eine Anzahl von Arbitrierungsringen (12; 38, 40, 42, 44, 46, 48) gekoppelt sind, und jedem Arbitrierungsring eine Priorität zugeordnet ist, mit folgenden Schritten: a) Anforderung des Zugriffs eines ersten der Teilnehmer mit einer ersten Priorität, b) Prüfung, ob ein erstes Signal zur Anzeige, dass der der ersten Priorität zugeordnete Arbitrierungsring freigegeben ist, an einem Eingang (16) des ersten Teilnehmers anliegt, c) Ausgabe (18) eines zweiten Signals auf dem der ersten Priorität zugeordneten Arbitrierungsring durch den Teilnehmer, wenn das erste Signal an dem Eingang anlag, d) Prüfung, ob das erste Signal an dem Eingang am Ende eines vorgegebenen Zeitintervalls noch anliegt, e) Prüfung, ob das zweite Signal an einem Eingang des Teilnehmers für den niederpriorsten Arbitrierungsring oder an einem Eingang des Teilnehmers für einen Arbitrierungsring, der einer höheren Priorität als der ersten Priorität zugeordnet ist, anliegt, f) Ausgabe des zweiten Signals auf den niederpriorsten Ring, g) Zugriff des ersten Teilnehmers. 2. A method for arbitrating access to a data bus between subscribers (Tn1, Tn2,...), The subscribers being coupled by a number of arbitration rings ( 12 ; 38 , 40 , 42 , 44 , 46 , 48 ) and each Arbitration ring is assigned a priority, with the following steps: a) requesting access by a first of the participants with a first priority, b) checking whether a first signal for indicating that the arbitration ring assigned to the first priority is released is present at an input ( 16 ) of the first participant, c) output ( 18 ) of a second signal on the arbitration ring assigned to the first priority by the subscriber if the first signal was present at the input, d) checking whether the first signal is still present at the input at the end of a predetermined time interval, e) checking whether the second signal is present at an input of the subscriber for the lowest-priority arbitration ring or at an input of the subscriber for an arbitration ring that is assigned a higher priority than the first priority, f) output of the second signal on the low-priority ring, g) Access of the first participant. 3. Verfahren nach Anspruch 2, mit einem virtuellen Teilnehmer (50, 52) zur Repräsentierung von Zugriffsanforderungen der Teilnehmer einer zweiten Priorität in einem Arbitrierungsring, der einer höheren dritten Priorität zugeordnet ist. 3. The method according to claim 2, comprising a virtual subscriber ( 50 , 52 ) for representing access requests of the subscribers of a second priority in an arbitration ring which is assigned a higher third priority. 4. Verfahren nach Anspruch 1, 2 oder 3, wobei es sich bei dem vorgegebenen Zeitintervall um einen Bustakt des Datenbusses handelt. 4. The method of claim 1, 2 or 3, wherein it is predetermined time interval around a bus clock of the data bus is. 5. Teilnehmer für den Zugriff auf einen Datenbus (10) und zur Kopplung mit einem Arbitrierungsring (38, 40, 42, 44, 46, 48) mit: a) Mitteln zur Anforderung eines Zugriffs, b) Mitteln zur Prüfung, ob ein erstes Signal zur Anzeige, dass der Arbitrierungsring freigegeben ist, an einem Eingang (16) des ersten Teilnehmers anliegt, c) Mitteln zur Ausgabe (18) eines zweiten Signals durch den ersten Teilnehmer, wenn das erste Signal anliegt, d) Mitteln zur Prüfung, ob das erste Signal an dem Eingang des ersten Teilnehmers am Ende eines vorgegebenen Zeitintervalls noch anliegt, e) Mitteln zum Zugriff des ersten Teilnehmers, wenn das erste Signal am Ende des vorgegebenen Zeitintervalls noch anlag. 5. Participants for access to a data bus ( 10 ) and for coupling to an arbitration ring ( 38 , 40 , 42 , 44 , 46 , 48 ) with: a) means for requesting access, b) means for checking whether a first signal for indicating that the arbitration ring is released is present at an input ( 16 ) of the first participant, c) means for the output ( 18 ) of a second signal by the first subscriber when the first signal is present, d) means for checking whether the first signal is still present at the input of the first subscriber at the end of a predetermined time interval, e) means for access by the first participant if the first signal was still present at the end of the predetermined time interval. 6. Teilnehmer zum Zugriff auf einen Datenbus (10) und zur Kopplung mit einer Anzahl von Arbitrierungsringen (38, 40, 42, 44, 46, 48), wobei jedem Arbitrierungsring eine Priorität zugeordnet ist, mit a) Mitteln zur Anforderung des Zugriffs eines ersten der Teilnehmer mit einer ersten Priorität, b) Mitteln zur Prüfung, ob ein erstes Signal zur Anzeige, dass der der ersten Priorität zugeordnete Arbitrierungsring freigegeben ist, an einem Eingang (16) des ersten Teilnehmers anliegt, c) Mitteln zur Ausgabe (18) eines zweiten Signals auf dem der ersten Priorität zugeordneten Arbitrierungsring durch den Teilnehmer, wenn das erste Signal an dem Eingang anlag, d) Mitteln zur Prüfung, ob das erste Signal an dem Eingang am Ende eines vorgegebenen Zeitintervalls noch anliegt, e) Mitteln zur Prüfung, ob das zweite Signal an einem Eingang des Teilnehmers für den niederpriorsten Arbitrierungsring oder an einem Eingang des Teilnehmers für einen Arbitrierungsring, der einer höheren Priorität als der ersten Priorität zugeordnet ist, anliegt, f) Mitteln zur Ausgabe des zweiten Signals auf den niederpriorsten Ring, g) Mitteln zum Zugriff des ersten Teilnehmers. 6. Participants for access to a data bus ( 10 ) and for coupling with a number of arbitration rings ( 38 , 40 , 42 , 44 , 46 , 48 ), with each arbitration ring being assigned a priority with a) means for requesting access from a first of the participants with a first priority, b) means for checking whether a first signal for indicating that the arbitration ring assigned to the first priority is enabled is present at an input ( 16 ) of the first subscriber, c) means for the subscriber to output ( 18 ) a second signal on the arbitration ring assigned to the first priority if the first signal was present at the input, d) means for checking whether the first signal is still present at the input at the end of a predetermined time interval, e) means for checking whether the second signal is present at an input of the subscriber for the low-priority arbitration ring or at an input of the subscriber for an arbitration ring which is assigned a higher priority than the first priority, f) means for outputting the second signal to the low-priority ring, g) means for access by the first participant. 7. Arbitrierungseinheit zur Verfügungstellung eines virtuellen Teilnehmers zur Arbitrierung eines Zugriffs auf einen Datenbus (10) zwischen Teilnehmern, wobei die Teilnehmer durch eine Anzahl von Arbitrierungsringen (38, 40, 42, 44, 46, 48) gekoppelt sind, und jedem Arbitrierungsring eine Priorität zugeordnet ist, mit Mitteln (50, 52) zur Repräsentierung von Zugriffsanforderungen der Teilnehmer einer zweiten Priorität in einem Arbitrierungsring, der einer höheren dritten Priorität zugeordnet ist. 7. Arbitration unit providing a virtual subscriber for arbitrating access to a data bus ( 10 ) between subscribers, the subscribers being coupled by a number of arbitration rings ( 38 , 40 , 42 , 44 , 46 , 48 ), and a priority for each arbitration ring is assigned, with means ( 50 , 52 ) for representing access requests of the subscribers of a second priority in an arbitration ring which is assigned to a higher third priority. 8. Teilnehmer nach einem der vorhergehenden Ansprüche 5, 6 oder 7, wobei es sich bei dem vorgegebenen Zeitintervall um einen Bustakt (34) handelt. 8. Participant according to one of the preceding claims 5, 6 or 7, wherein the predetermined time interval is a bus cycle ( 34 ). 9. Kommunikationssystem mit mehreren Teilnehmern, wobei jeder Teilnehmer nach einem der vorhergehenden Ansprüche 5 bis 8 ausgebildet ist, und mit einem oder mehreren der Arbitrierungsringe (38, 40, 42, 44, 46, 48) zur Kopplung der Teilnehmer. 9. Communication system with several participants, each participant being designed according to one of the preceding claims 5 to 8, and with one or more of the arbitration rings ( 38 , 40 , 42 , 44 , 46 , 48 ) for coupling the participants.
DE10234145A 2001-09-26 2002-07-26 Method for arbitrating access to a data bus Ceased DE10234145A1 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE10234145A DE10234145A1 (en) 2001-09-26 2002-07-26 Method for arbitrating access to a data bus
EP02774357A EP1430406B1 (en) 2001-09-26 2002-09-13 Method for the arbitration of access to a data bus
ES02774357T ES2243765T3 (en) 2001-09-26 2002-09-13 PROCEDURE FOR ARBITRATION OF AN ACCESS TO A DATA BUS.
AT02774357T ATE297568T1 (en) 2001-09-26 2002-09-13 METHOD FOR ARBITRATION OF ACCESS TO A DATA BUS
DE50203368T DE50203368D1 (en) 2001-09-26 2002-09-13 METHOD FOR ARBITRATING ACCESS TO A DATA BUS
PCT/DE2002/003436 WO2003027869A2 (en) 2001-09-26 2002-09-13 Method for the arbitration of access to a data bus
US10/809,852 US7360002B2 (en) 2001-09-26 2004-03-26 Method of arbitrating access to a data bus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10147437 2001-09-26
DE10234145A DE10234145A1 (en) 2001-09-26 2002-07-26 Method for arbitrating access to a data bus

Publications (1)

Publication Number Publication Date
DE10234145A1 true DE10234145A1 (en) 2003-04-24

Family

ID=7700333

Family Applications (2)

Application Number Title Priority Date Filing Date
DE10234145A Ceased DE10234145A1 (en) 2001-09-26 2002-07-26 Method for arbitrating access to a data bus
DE50203368T Expired - Lifetime DE50203368D1 (en) 2001-09-26 2002-09-13 METHOD FOR ARBITRATING ACCESS TO A DATA BUS

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE50203368T Expired - Lifetime DE50203368D1 (en) 2001-09-26 2002-09-13 METHOD FOR ARBITRATING ACCESS TO A DATA BUS

Country Status (1)

Country Link
DE (2) DE10234145A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1785788A1 (en) * 2005-11-15 2007-05-16 Dewert Antriebs- und Systemtechnik GmbH Method and device for controlling an electric equipment system of a piece of furniture

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1785788A1 (en) * 2005-11-15 2007-05-16 Dewert Antriebs- und Systemtechnik GmbH Method and device for controlling an electric equipment system of a piece of furniture
EP1785787A1 (en) * 2005-11-15 2007-05-16 Dewert Antriebs- und Systemtechnik GmbH Method and device for programming and controlling an electric equipment system of a piece of furniture

Also Published As

Publication number Publication date
DE50203368D1 (en) 2005-07-14

Similar Documents

Publication Publication Date Title
EP1430406B1 (en) Method for the arbitration of access to a data bus
DE3300261C2 (en)
DE69834519T2 (en) Bus control system and method
EP0179936B1 (en) Method and apparatus for global bus control
DE3546683C3 (en) Method for operating a data processing system
DE102008018633B4 (en) Method, bus components and control system for Ethernet-based control of an automation system
DE3035718C2 (en) Signal processor arrangement with condition interruption unit
DE3300262C2 (en)
EP2030118B1 (en) Multi-processor gateway
DE3820544C2 (en) Local area network system with a multi-computer system coupled to it and method for controlling it
DE10147422A1 (en) Communication system and method for synchronizing a communication cycle
EP1502400B1 (en) Method and system for transmitting data via switchable data networks
DE102018001574B4 (en) Master-slave bus system and method for operating a bus system
EP1430643B1 (en) Method for transmitting real time data messages in a cyclic communications system
EP1509005B1 (en) Method and apparatus for transmitting data over a bus-network using broadcast
EP2485153B1 (en) Switch assemblies and method for controlling data exchange in a switch assembly
EP3015992B1 (en) Method for managing prioritized input data
DE10006265B4 (en) Device for controlling the data exchange in a communication subscriber
EP1075110B1 (en) Combined master/slave-producer/consumer communication method for a network
DE10234145A1 (en) Method for arbitrating access to a data bus
EP1430690B1 (en) Method for accessing a command unit for a data network
DE202011052249U1 (en) Timing for microcontroller system bus for multiport slave modules
EP0764901B1 (en) Interrupt handling in an operating system
DE10237350A1 (en) Method for accessing a command unit for a data network
DE60103221T2 (en) Device and method for signal group transmission between digital signal processors in a digital signal processing unit

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection