DE3928481C2 - Prioritätsorientiertes dezentrales Busvergabesystem - Google Patents

Prioritätsorientiertes dezentrales Busvergabesystem

Info

Publication number
DE3928481C2
DE3928481C2 DE19893928481 DE3928481A DE3928481C2 DE 3928481 C2 DE3928481 C2 DE 3928481C2 DE 19893928481 DE19893928481 DE 19893928481 DE 3928481 A DE3928481 A DE 3928481A DE 3928481 C2 DE3928481 C2 DE 3928481C2
Authority
DE
Germany
Prior art keywords
bus
priority
information
data bus
data
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.)
Expired - Fee Related
Application number
DE19893928481
Other languages
English (en)
Other versions
DE3928481A1 (de
Inventor
Gerhard Wergen
Peter Stein
Herbert Mueller
Peter Neumann
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.)
Diehl Stiftung and Co KG
Original Assignee
Diehl GmbH and Co
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 Diehl GmbH and Co filed Critical Diehl GmbH and Co
Priority to DE19893928481 priority Critical patent/DE3928481C2/de
Priority to GB9017898A priority patent/GB2236459B/en
Priority to FR9010770A priority patent/FR2651345B1/fr
Publication of DE3928481A1 publication Critical patent/DE3928481A1/de
Application granted granted Critical
Publication of DE3928481C2 publication Critical patent/DE3928481C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

Die Erfindung betrifft ein Busvergabesystem gemäß dem Oberbegriff des Anspruches 1.
Ein gattungsgemäßes System ist aus dem IBM Tech. Dis. Bul. Vol. 16, No. 3, Aug. 1973, S. 874 bis 876 bekannt. Ein Busvergabesystem gattungsgemäßer Art ist bekannt aus dem Beitrag von G. Färber "Ein dezentralisierter fairer Bus-Arbiter" in ELEKTRONIK 1980, Heft 8, Seiten 60 bis 68, dort insbesondere Abschnitt 1 "Zuteilungs- Verfahren". Die Funktionsprobleme bei der Realisierung eines fairen Bus-Arbiters" sind auch dargestellt in dem Aufsatz von G. Angel´ "Algorithmus und Implementierung eines dezentralen, fairen und fehlertoleranten Busarbiters in ELEKTONIK Nr. 9, 1981, Seiten 79 bis 84. Um bei hohem Nachrichtenaufkommen auf der Empfangsleitung eines digitalen lokalen Kommunikationssystemes mit der logischen Struktur einer Schleife Nachrichten hoher Priorität sofort senden zu können und im übrigen die Nachrichtenpakete weitgehend nach Priorität geordnet durchlaufen zu lassen, ist es aus der DE 34 13 144 A1 bekannt, jedem Nachrichtenpaket zusätzlich zum Prioritätskennzeichen ein Anforderungskennzeichen zuzuordnen. In ankommenden Nachrichtenpaketen gleicher Priorität wird von der Sendung beanspruchenden Station das Anforderungsbit des fremden Nachrichtenpakets auf "1" gesetzt. Damit sollen die sonst zu langen Signallaufzeiten bei großer Netzausdehnung beherrscht werden. Andererseits wird nach der EP 0 154 725 A2 eine Prioritätsermittlung durch Abgabe eines Auswahl-Startsignales in sendebereiten Datenverarbeitungseinheiten, die auf eine Mehrleiteranordnung zugreifen wollen, veranlaßt, um dadurch in jeder empfangsbereiten Datenverarbeitungseinheit die Abgabe einer Empfangskennung auszulösen. Dadurch wird eine Prioritätszuordnung auf den Datenverkehr zwischen zwei unmittelbar einander zugeordneten Einheiten reduziert.
Nachteilig bei den bekannten Verfahren der Buszugangs- Vergabe ist insbesondere, daß diese relativ unflexibel sind, weil sie im wesentlichen auf Prioritäten-Vorgaben für die einzelnen auf den Bus zugreifenden peripheren Teilnehmer basieren. Eine wirkliche Flexibilität ist auch dadurch nicht erreichbar, daß die den einzelnen Teilnehmern zugeordneten Prioritäten beispielsweise nach Maßgabe eines angestrebten aber tatsächlich dann noch nicht zustande gekommenen Bus-Zuganges variabel sein können, um einen ursprünglich mit niederer Priorität angesetzten Teilnehmer nicht praktisch völlig vom Bus-Zugang auszuschließen. Die herkömmlichen Arbitrierungs-Systeme sind darüber hinaus für die Belange der Praxis insofern oft nachteilig, als sie gewöhnlich eines besonderen Arbitrator-Bausteines zur Abfrage der einzelnen peripheren Teilnehmer bedürfen, der dann auch die Buszugangs-Steuerung übernimmt. Der Einsatz besonderer Schaltungseinheiten für die Durchführung übergeordneter und nebengeordneter Aufgaben bedingt aber großen Platzbedarf auf einer Schaltungsplatine nicht nur für diesen zusätzlichen Schaltungsaufwand, sondern auch für zahlreiche zusätzliche Steuerleitungen neben dem eigent­ lichen Datenbus des Bus-Systemes.
Das wirkt sich besonders dann nachteilig aus, wenn zur Realisierung eines kompakten, leistungsfähigen Mirkrorechner-Konzeptes Teilneh­ mer unterschiedlichster Art - wie insbesondere Signalprozessoren, spezielle Hardwareschaltungen und/oder analoge und digitale Ein­ gabegeräte (etwa Sensoren) und Ausgabegeräte (etwa Steuerschaltun­ gen) - bei hohem Datendurchsatz mittels Datenblock-Transfers zusam­ menwirken müssen.
In Erkenntnis dieser Gegebenheiten liegt der Erfindung die Aufgabe zugrunde, ein Busvergabesystem gattungsgemäßer Art derart auszubil­ den, daß trotz aufgabenabhängig-variabler Buszugriffs-Priorität der einzelnen System-Teilnehmer bei relativ schmalem System-Bus, also mit möglichst wenigen Kontrolleitungen parallel zum eigentli­ chen Datenbus, eine rasche und eindeutige Arbitrierung für die Buszuteilung re­ alisiert werden kann.
Diese Aufgabe ist erfindungsgemäß im wesentlichen dadurch gelöst, daß der System-Bus und seine Teilnehmer gemäß dem Kennzeichnungsteil des Anspruches 1 ausgelegt sind.
Nach dieser Lösung steht der Datenbus, so lange keine Informations­ übertragung erfolgt, allen Teilnehmern gleichzeitig zur parallelen Übermittlung ihrer momentanen Buszugriffs-Prioritäten (wenn über­ haupt ein Buszugang momentan erwünscht wird) zur Verfügung. Jeder Teilnehmer liefert nicht nur (über wenigstens eine ihm fest zuge­ ordnete Leitung des Datenbusses) an alle anderen - den gesamten Da­ tenbus abfragenden - Teilnehmer seine eigene, momentane Prioritäts­ nachricht; jeder Teilnehmer vergleicht darüber hinaus seine eigene momentane Priorität mit allen anderen Teilnehmer-Prioritäten, so daß jeder Teilnehmer für sich feststellen kann, ob seine Zugriffs­ priorität im System-Bus momentan die höchste ist oder aber nicht.
Wenn das nicht der Fall ist, wird der nächste Arbitrierungszyklus abgewartet, der sich an die momentan einzuleitende Informations­ übertragung unmittelbar anschließt. Wenn jedoch ein Teilnehmer fest­ stellt, daß er die höchste Priorität hat, belegt er damit für sich den Buszugang, womit die Arbitrierung zunächst beendet und allen anderen Teilnehmern der Bus-Zugang verwehrt wird. Sollten mehrere Teilnehmer im momentanen Arbitrierungszyklus gleiche informations­ abhängige (Software-) Priorität aufweisen, dann gewinnt derjenige Teilnehmer den Bus-Zugang, der außerdem die höchste Hardwareprio­ rität aufweist. Jede Hardwarepriorität ist schaltungstechnisch (bei­ spielsweise über manuell setzbare Schalter) fest vorgegeben, und zwar so, daß sie innerhalb des Systemes nur einmal vorkommt. Dadurch ist auch bei gleichen Softwareprioritäten nur einem Teilnehmer tat­ sächlich der Bus-Zugriff ermöglicht. Die Leitungen des Datenbus werden von diesem nun für die Dauer der sich anschließenden Informa­ tionsübertragung für Prioritätsinformation gesperrt. Die Informations­ übertragung beginnt mit einer Steuerinformation, in der Angaben über die anzusprechenden anderen Teilnehmer enthalten sind, sowie Angaben über die dort zu erfolgende Verarbeitung und die Länge der daraufhin übermittelten Datenblöcke. Mit Ausgabe aller anstehenden Informations-Datenblöcke auf den Datenbus schaltet der Teilnehmer, der den Buszugriff gewonnen hat, den Datenbus wieder zur gleichzei­ tigen Aufnahme aktuellen Prioritätsnachrichten aller an dem System-Bus angeschlossenen Teilnehmer frei, und es beginnt der nächstfolgende Arbitrierungszyklus, also die Ausgabe der Prioritätsnachrichten aller Teilnehmer auf die ihnen zugeordneten Leitungen des Datenbus und der Vergleich aller Prioritätsnachrichten mit der eigenen an­ stehenden Priorität in jedem der angeschlossenen Teilnehmer. Falls momentan jeder Teilnehmer eine Prioritätsnachricht des Inhalts "kein Buszugang erforderlich" ausgibt, schließt sich unmittelbar ein neuer solcher Arbitrierungszyklus an, so daß praktisch keine Fehlzeiten auftreten: Sobald nur ein Teilnehmer den Buszugang benötigt, erhält er ihn - wenn mehrere Teilnehmer gleichzeitig den Buszugang wünschen, schalten alle diejenigen sich selbst sogleich wieder ab, die fest­ stellen, daß sie momentan nicht höchste Buszugriffs-Priorität haben.
Ein solches System ist ersichtlich außerordentlich sparsam hinsicht­ lich des Aufwandes an Leitungen im System-Bus und hinsichtlich der erforderlichen Arbitrierungszeiten. Insbesondere wird keine über­ geordnete Steuerschaltung für die Arbitrierung und Buszuweisung benötigt. Das System ist auch sehr flexibel erweiterbar, da die Anzahl der anschließbaren Teilnehmer nur dadurch begrenzt ist, wie­ viele Datenbus-Leitungen in Zuordnung zu dem jeweiligen Teilnehmer verfügbar und, je nach dem Informationsumfang der Prioritätsnachricht, für die Prioritätsverschlüsselung benötigt werden. Das System ist in seiner Wirkungsweise auch unabhängig vom Charakter der Teilnehmer (Prozessoren oder nicht-intelligente Schaltungen), und es erlaubt eine Busanforderung unabhängig davon, ob eine Information in den Bus eingespeist oder aus dem Bus abgerufen werden soll und unabhän­ gig davon, mit wievielen anderen Teilnehmern derjenige, der den Bus-Zugriff wünscht, für die Verteilung oder Einsammlung seiner Informationen gleichzeitig kommunizieren möchte. Trotz dieser viel­ fältigen Funktionsmöglichkeiten wird nur ein Minimum an Steuerlei­ tungen neben dem eigentlichen Datenbus benötigt, da dieser nachein­ ander für die Arbitrierung und für die Informationsübermittlung herangezogen wird.
Um die Arbitrierungszeit weiter zu verkürzen, erfolgt ein Datenaus­ tausch zweckmäßigerweise stets unter Zwischenspeicherung in schnel­ len Speichern (RAMs) in den einzelnen Teilnehmern, wenn ein Teil­ nehmer nicht selbst bereits als schnelle Hardwareschaltung ausge­ legt ist. Dadurch ist der Informationsaustausch nicht davon abhän­ gig, wie schnell die Aufnahme bzw. Abgabe von Prozessor-Informatio­ nen ist; während der periphere Prozessor die aus dem System-Bus in den Zwischenspeicher übernommene Information einliest, kann be­ reits der nächste Arbitrierungszyklus über den Datenbus ablaufen.
Dieses leistungsfähige Buszuteilungsverfahren zeichnet sich also auch durch hohe Ablaufgeschwindigkeit aus. Es benötigt grundsätzlich nur zwei Taktzyklen des Bus-Systemes: Im ersten Takt gibt jeder Teilnehmer seine aktuelle Prioritätsnachricht über den Datenbus an alle anderen Teilnehmer, und im zweiten Takt erkennt jeder Teil­ nehmer für sich selbst, daß er die Arbitration nicht gewonnen hat - anderenfalls er alle anderen Teilnehmer vom Bus-Zugriff aus­ schließt -, um seine anstehende Information an die zugeordneten Teilnehmer zu übermitteln.
Zusätzliche Alternativen und Weiterbildungen sowie weitere Merk­ male und Vorteile der Erfindung ergeben sich aus den weiteren Ansprü­ chen und aus nachstehender Beschreibung eines in der Zeichnung unter Beschränkung auf das Wesentliche stark abstrahiert skizzierten be­ vorzugten Realisierungsbeispiels zur erfindungsgemäßem Lösung. Es zeigt
Fig. 1 nach Art eines zweipoligen Blockschaltbildes den System-Bus für die prioritätsgestaffelte Datenkommunikation zwischen unterschiedlichen, an den Bus angeschlossenen Teilnehmern und
Fig. 2 ein Zeitdiagramm für den Ablauf der Prioritäts-Zuordnung in dem Bus-System gem. Fig. 1.
Der zeichnerisch skizzierte System-Bus 101 führt im wesentlichen einen Datenbus D von b Bit Breite zur Blockübertragung von binär codierten Informationen I, insbesondere von Datenblöcken IB. Zur Kennzeichnung einer übertragenen Information I als Datenblock IB führt der System-Bus 101 zusätzlich eine Strobe-Leitung, deren Po­ tential während einer Daten-Übertragung seinen normalen Zustand ändert, wie unten näher beschrieben. Das momentane Potential auf einer Busy-Leitung Y gibt an, ob über den Daten-Bus D gerade In­ formationen I übertragen werden oder aber ob der Daten-Bus D frei ist für den Austausch für Prioritätsnachrichten P zwischen den an den System-Bus 101 angeschlossenen Teilnehmern N, die als Sender bzw. als Empfänger von Datenblöcken IB in Betracht kommen können. Die Synchronsteuerung für das Zusammenwirken der Teilnehmer N erfolgt über eine Clock- oder Takt-Leitung T.
Je nach den Funktionen der Teilnehmer N, insbesondere nach deren Bedeutung für die Funktion eines Systems, haben die auszutauschen­ den (abzugebenden und aufzunehmenden) Informationen I unterschied­ liche Prioritätswerte Pd. So hat eine Information I einen höheren Prioritätswert Pd, wenn sie essentiell ist für die Aufrechterhaltung der System-Funktion, verglichen mit einer Information I, die nur einem Überwachungs- oder Benachrichtigungszweck dient, ohne unmittel­ bar in den weiteren Ablauf der Systemfunktion einzugreifen. Wenn unterschiedliche Bus-Teilnehmer N gleichzeitig im Verkehr mit anderen Teilnehmern N Informationen I über den Datenbus D übermitteln (abgeben oder aufnehmen) wollen, bekommt zunächst derjenige Teilnehmer N den Bus-Zugriff, dessen Informationsbedarf im Vergleich mit den anderen anstehenden Zugriffswünschen den höchsten Prioritätswert Pd aufweist. Um das beurteilen zu können, erfolgt vor der Übertragung von Informationen I über den Datenbus D ein Austausch der jeweiligen Prioritätswerte Pd zwischen den Teilnehmern N. Hierfür sind jedem der Teilnehmer N eine Anzahl von a Leitungen aus den b Leitungen des Datenbus D fest zugeordnet, nämlich jedem der Teilnehmer N andere Leitungen a. Wenn die Anzahl n von Teilnehmern N so über den Datenbus D der Leitungsanzahl b versorgt wird, wenn also den n Teilnehmern N jeweils a Prioritätsleitungen aus dem Datenbus D zugeordnet werden, dann gilt die Grenze
a×n b.
In Fig. 1 ist ein optimales Ausnutzungsbeispiel eingetragen, nämlich für eine Daten-Bus-Breite von b=32; bei n=16 Teilnehmern N kön­ nen jedem a=2 Leitungen für den Austausch der Prioritätsnachrichten P zur Verfügung gestellt werden (2×16=32).
Da jede der beiden Leitungen a eine 1-Bit-Information führen kann und die Prioritätsnachricht P infolge der Zuordnung von a=2 Lei­ tungen eine Breite von 2 Bit aufweist, beträgt der Informationsum­ fang der Prioritätsnachricht P vier unterschiedliche binär-codierte Werte, von denen einer in einem Takt-Zyklus über den Datenbus D an alle Teilnehmer N übermittelt werden kann. Wenn im darauffolgenden Taktzyklus ein anderer Wert übermittelt wird, ergibt sich aus der Wertfolge eine zweistellige Prioritätsinformation des Informations­ umfanges von 4 Bit. Zweckmäßigerweise wird der niedrigste Wert (0) als höchste Priorität definiert, weil dieser sich schaltungs­ mäßig am leichtesten abfragen läßt; mit der Folge, daß derjenige Teilnehmer N, der momentan gar keinen Buszugriff wünscht, als Priori­ tätsnachricht P den höchsten Wert (15) ausgibt.
Jeder der Teilnehmer Nn verfügt in der Regel über eine Datenquelle 102 (beispielsweise einen Meßwandler und/oder einen Signalprozessor) bzw. über eine Datensenke 103 (beispielsweise einen Signalprozessor und/oder einen Digital-Analog-Wandler), die über eine Koppelschal­ tung 104 mit dem Systembus 101 verbunden sind. Zur Reduzierung der Bus-Belegzeiten kann in jedem Teilnehmer N ein schneller Zwischen­ speicher (RAM) 105 vorgesehen sein, der die Information I aus dem bzw. für den Datenbus D aufnimmt, wenn die Übertragung aus der Daten­ quelle 102 bzw. in die Datensenke 103 zu langwierig würde (beispiels­ weise weil es sich um einen Signalprozessor handelt). Der Zwischen­ speicher 105 ist jedoch dann entbehrlich, wenn der Teilnehmer N über einen schnellen Eingangsspeicher verfügt, wie etwa im Falle des FIFO-Speichers eines Analog-Digital-Wandlers oder im Falle eines Eingangsregisters vor einem Digital-Analog-Wandler; bzw. wenn eine spezielle Schaltung realisiert ist, die raschen Zugriff zum unmittel­ baren Datenaustausch ermöglicht.
Die wesentliche Funktion der Koppelschaltung 104 besteht darin, je nach den momentanen Anforderungen den Zugriff zum Systembus 101 für die Aufnahme oder Abgabe von Informationen I zu realisieren. Dafür ist jede Busanforderung zur Ausgabe oder zur Aufnahme von Informationen I mit einer Prioritätsnachricht P verknüpft, die im jeweiligen Teilnehmer N nach Maßgabe seines Einsatzes aktuell er­ zeugt wird, beispielsweise im Zuge der Gewinnung und Verarbeitung der Informationen I. Im gezeichneten Beispielsfalle ist die vom Teilnehmer Ni abzugebende Information Ii verknüpft mit der zugeord­ neten Prioritätsnachricht Pi, die in einem Prioritätsspeicher 106 (in zwei Folgen von zwei Bits d, d′ aufgetrennt) bereitgehalten wird. Die eigentliche zu übermittelnde Information I wird in einem Infor­ mationsregister 107 zwischengespeichert.
Wenn keiner der Teilnehmer N momentanen Buszugriff hat, wenn also über den Datenbus D momentan weder Informationen I noch Prioritäts­ nachrichten P übermittelt werden, dann führt die Open-Collector-Busy­ leitung Y (im dargestellten Beispielsfalle, Fig. 2) High-Potential. Dadurch ist in jedem der an den Systembus 101 angeschlossenen Teil­ nehmer N der Prioritätsspeicher 6 zur Abgabe der Prioritätsnachricht P freigesteuert. Das erfolgt in zwei aufeinanderfolgenden Taktzyklen durch die Bit-Folge d-d′, ausgegeben nacheinander auf die zugeordne­ ten beiden Leitungen a des Datenbusses D. So gibt jeder Teilnehmer N seine aktuelle Prioritätsnachricht P auf die ihm zugeordneten Leitungen a des Datenbusses D, an den in jedem Teilnehmer N eine Prioritäts-Abfrageschaltung 108 angeschlossen ist. Diese nimmt nach­ einander die beiden Bits d, d′ der seriellen Prioritätsnachrichten P aller Teilnehmer N, die gleichzeitig über die zugeordneten Lei­ tungspaare a einkommen, auf, und sie fragt ab, ob die so wieder zusammengesetzte Prioritätsnachricht Pi des eigenen Teilnehmers Ni einen höheren Dringlichkeitsgrad aufweist, als die Prioritäts­ nachrichten P der anderen Teilnehmer N. Falls das nicht der Fall ist, falls also über die anderen Leitungspaare a eine höhere Prio­ ritätsnachricht P eingeht, als selbst (Pi) zur Verfügung gestellt wird, sperrt die Abfrageschaltung 108i über eine Torschaltung 109 eine Wiederholung der Ausgabe der Prioritätsnachricht Pi aus dem Prioritätsspeicher 106; denn offensichtlich hat ein anderer Teilneh­ mer N eine Busanforderung zur Abgabe oder Aufnahme von Informatio­ nen I mit höherem Dringlichkeitsgrad anstehen.
Wenn ein Teilnehmer Ni zwar eine Prioritätsnachricht Pi mit höchstem momentan auf dem Datenbus D vorliegenden Dringlichkeitsgrad führt, aber ein anderer der Teilnehmer N eine Prioritätsnachricht P gleichen hohen Dringlichkeitsgrades ausgibt, dann entscheidet über den Bus­ zugriff nicht mehr allein die mit der Information I gekoppelte Prio­ ritätsnachricht P, sondern aus den nun gleichgewichtigen Anforde­ rungen erhält derjenige Teilnehmer Ni den Zuschlag für den Buszu­ griff, der die höchste schaltungstechnisch fest vorgegebene Geräte­ priorität PKi aufweist. Die kann aus einem Kennungsgeber K geliefert werden, bei dem es sich beispielsweise um einen manuell einstell­ baren Codierschalter handelt. Es ist nur dafür zu sorgen, daß jede Schaltstellung im System nur einmal vorkommt, daß also jeder Teil­ nehmer Nn eine andere Kennung Kn erhält, gestaffelt nach Maßgabe seiner Bedeutung im Rahmen der Gesamtfunktion des Systems.
Wenn so der betroffene Teilnehmer Ni herausgefunden hat, daß er selbst die höchste Softwarepriorität (und gegebenenfalls darüber hinaus auch noch die höchste Hardwarepriorität bei mehreren anste­ henden gleichhohen Softwareprioritäten) aufweist, wird, ausgelöst über die Abfrageschaltung 108, auf der Busy-Leitung Y das Potential gewechselt, im Beispielsfalle der Fig. 1 symbolisiert durch Umsteu­ erung einer Kippstufe 110. Dadurch wird in allen Teilnehmern N die Ausgabe von Prioritätsnachrichten P gesperrt (in Fig. 1 veranschau­ licht durch Ansteuerung der Torschaltung 109), so daß nunmehr der Datenbus D für die Übertragung von Informationen I zur Verfügung steht.
Als erste Information I wird ein Block von Steuerinformationen ICi ausgegeben, indem eine Torschaltung 111 hinter einem Steuerspeicher 112 in dem Teilnehmer Ni, der den Bus-Zugriff soeben gewonnen hat, freigeschaltet wird. Diese Steuerinformation beinhaltet vor allem, mit welchem bzw. mit welchen weiteren Teilnehmer(n) Nn dieser Teil­ nehmer Ni zum Datenaustausch (Abgabe oder Aufnahme von Datenblöcken Ib) in Verbindung treten soll. In im Fig. 1 skizzierten Beispiels­ falle sei das der weitere Teilnehmer Nn, der in der Zeichnung oben nur unvollständig skizziert (tatsächlich ebenso wie der Teilnehmer Ni ausgestattet) ist. Jener Kommunikationsteilnehmer Nn ist durch seine Kennung Kn individualisiert. Außerdem enthält die beispielsweise von der Datenquelle 102 generierte Steuerinformation IC beispiels­ weise Angaben darüber, nach wievielen Takten die Übertragung des eigentlichen Datenblockes IB einsetzen und wie lang dieser sein wird, sowie Angaben über die empfangsmäßige Behandlung dieses Daten­ blockes etwa hinsichtlich Zwischenspeicherung und/oder Weiterverar­ beitung im empfangenden Teilnehmer Na.
Alle Teilnehmer n gehen also auf Empfang für die nun über den Daten­ bus D übermittelte Ziel-Kennung Kn, wenn ein Gatter 113 freigesteuert wird, weil das Potential auf der Busy-Leitung Y umgeschaltet wurde, während auf der Strobe-Leitung S noch das bisherige Potential ansteht (vgl. Fig. 2). Als erstes werden diejenigen Leitungen a des Daten­ bus D ausgewertet, die (nun keine Prioritätsnachricht mehr, sondern) die Ziel-Kennung Kn für den nachfolgenden Datenblock Ib führen. Das können diesselben Leitungen a sein, die vorher die Prioritätsnach­ richt P führen konnten, so lange die Busy-Leitung Y noch auf High stand (vgl. Fig. 2). Ein Vergleicher 114 gibt in demjenigen, und nur in demjenigen, Teilnehmer Nn ein Quittungssignal 115 aus, bei dem die empfangene Anforderungs-Kennung mit der eigenen Kennung Kn übereinstimmt. Durch Übermittlung mehrerer Anforderungskennungen Kn′ können so mehrere Teilnehmer Nn′ gleichzeitig über eine Steuer­ information Ic angesprochen werden.
Als Quittungssignal 115 dient zweckmäßigerweise die Rückmeldung der Kennung Kn eines jeden der angesprochenen Teilnehmer Nn, so daß über einen Vergleicher 116 abgeprüft werden kann, ob alle Teil­ nehmer Nn erreicht wurden, die von der aktuellen Steuerinformation ICi angesprochen werden sollten. Vorteilhaft ist es, wenn diese angesprochenen Teilnehmer Nn am Ende des Quittungssignales 115 eine definierte Signalfolge abgeben, beispielsweise über eine bestimmte Anzahl von Taktzyklen High-Potential und dann Übergang auf Low-Poten­ tial. Wenn auch diese Markierung vom Vergleicher 116 erfaßt ist, steuert er über einen Umschalter 117 das bisher auf der Strobe-Lei­ tung S anstehende Potential um (gemäß Fig. 2 von High auf Low), und er schaltet gleichzeitig ein Ausgabegatter 118 für die nun über den Datenbus D an die angesprochenen Teilnehmer Nn zu übermittelnden Datenblöcke IBi. Diese Binärinformationen auf dem Datenbus D sind also dadurch als Informations-Datenblöcke IB gekennzeichnet, daß (wie im dargestellten Beispielsfalle) die Busy-Leitung Y noch auf Low-Potential gezogen ist und nun zusätzlich die Strobe-Leitung S auf Low-Potential gelegt ist. Am Ende der Datenblock-Übertragung werden dann beide Potentiale wieder hochgesetzt, nämlich durch An­ steuerung der Kippstufe 110 bzw. des Umschalters 117. Dabei kann diese Ende-Information am Ende des letzten Datenblockes IB enthalten sein; oder aber sie ist in den Datenblock-Steuerangaben IBc enthal­ ten, beispielsweise in Form der Länge der auf die Steuerinformation ICi folgenden Datenblöcke IBi.
In den empfangenden Teilnehmern Nn bewirkt die Abgabe des Anspra­ che-Quittungssignales 115 die Vorbereitung einer Freigabeschaltung 119, die dann mit Umschalten des Potentiales auf das Strobe-Leitung S ein Eingangsregister 120 zur Entgegennahme der daraufhin auf dem Datenbus D anstehenden Datenblöcke IBi freigibt.
Wenn am Ende der Übertragung von Datenblöcken IB das Potential auf der Busy-Leitung Y wieder auf High geschaltet wird, startet damit der nächste der beschriebenen Arbitration-Abläufe zur Feststellung, welcher Teilnehmer N eine Busanforderung mit höchstem Dringlichkeits­ grad aufweist.

Claims (6)

1. Prioritätsorientiertes dezentrales Busvergabesystem für eine Anzahl (n) von Teilnehmern (N) an einem Datenbus (D) für Übermittlung von Prioritätsnachrichten (P) und Informationen (I), wobei Teilnehmern (N) individuell wenigstens eine der Leitungen (a) des Datenbus (D) zur Übermittlung von Prioritätsnachrichten (P) zugeordnet ist und die Teilnehmer (N) mit einer Abfrageschaltung (108) zum Vergleich ihrer aktuellen Prioritätsnachrichten (P) mit den gleichzeitig auf dem Datenbus (D) anstehenden Prioritätsnachrichten (P) von anderen Teilnehmern (N) ausgestattet sind, woraufhin der Teilnehmer (N), dessen auf dem Datenbus (D) anstehende Prioritätsnachricht (P) aktuell den höchsten Dringlichkeitsgrad aufweist, seine Information (I) übermittelt und anschließend den Datenbus (D) wieder zur Aufnahme aktueller Prioritätsnachrichten (P) freischaltet, dadurch gekennzeichnet, daß vor Übermittlung der Informationen (I) in aufeinanderfolgenden Systemtaktzyklen zunächst alle sendewilligen Teilnehmer (N) ihre Prioritätsnachricht (P), die bei Zusammentreffen mehrerer momentan gleicher höchstwertiger informationsabhängiger Software-Prioritätsnachrichten (Pd) um eindeutige teilnehmerspezifische Hardware-Prioritätskennungen (Pk) ergänzt sind, einander gleichzeitig über den Datenbus (D) übermitteln, woraufhin der Teilnehmer (N) mit aktuell höchstem Dringlichkeitsgrad seiner Prioritätsnachricht (P) die Ausgabe weiterer Prioritätsnachrichten (P) auf den Datenbus (D) sperrt und seine Information (I) an, den adressierten Teilnehmern (N) zugeordnete, schnelle Aufnahme-Speicher (105) überträgt, um anschließend den Datenbus (D) wieder zur Aufnahme aktueller Prioritätsnachrichten (P) aller gleichzeitig sendeinteressierten Teilnehmer (N) freizuschalten.
2. Busvergabesystem nach Anspruch 1, dadurch gekennzeichnet, daß jeder Teilnehmer (N) auf die ihm zugeordnete Leitung bzw. Leitungen (a) des Datenbus (D) in aufeinanderfolgenden Taktzy­ klen des System-Busses (101) eine bitserielle Prioritätsnachricht (Pd, Pd′) ausgibt.
3. Busvergabesystem nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß nach Abschluß der Abitrierung über den Datenbus (D) Informa­ tionen (I) übermittelt werden, die zunächst Blocksteuerinforma­ tionen (IC) und anschließend die eigentlichen Datenblöcke (IB) beinhalten.
4. Busvergabesystem nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß derjenige Teilnehmer (N), der aufgrund momentan höchster Priorität (P) den Zugang zum System-Bus (101) gewinnt, eine pa­ rallel zum Datenbus (D) vorhandene Busy-Leitung (Y) bis zum Ab­ schluß der Blockübermittlung von Informationen (I) über den Daten­ bus (D) umschaltet und dann wieder für die leitungsmäßige Zuord­ nung des Datenbus (D) zu den einzelnen Teilnehmern (N) für den nächsten Arbitrierungszyklus freigibt.
5. Busvergabesystem nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der System-Bus (101) zusätzlich zum Datenbus (D) eine Strobe- Leitung (S) führt, die derjenige Teilnehmer (N), der aufgrund momentan höchster Priorität (P) den Buszugang gewonnen hat, zur Kennzeichnung der momentanen Übermittlung von eigentlichen Informations-Datenblöcken (IB) umschaltet, wenn eine vorangehen­ de Übermittlung von Blocksteuerinformationen (IC) über den Daten­ bus (D) beendet ist und so lange die Übermittlung von Informations- Datenblöcken (IB) noch nicht beendet ist.
6. Busvergabesystem nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß jeder Teilnehmer (N) mit einem Quittungsgeber (121) ausge­ stattet ist, der auf die ihm für die Arbitrierung zugeordnete Leitung(en)(a) des Datenbus (D) ein Quittungssignal (115) ausgibt, wenn seine Teilnehmer-Kennung (K) in einer Blocksteuer­ information (IB) als Adresse für abzuliefernde oder abzurufende Datenblöcke (IB) enthalten ist, die der den Buszugang aufgrund höchster Priorität (P) gewinnende Teilnehmer (N) nach Gewinn der aktuellen Arbitrierung und vor Übermittlung des eigentlichen Informations-Datenblockes (IB) auf den Datenbus (D) ausgibt.
DE19893928481 1989-08-29 1989-08-29 Prioritätsorientiertes dezentrales Busvergabesystem Expired - Fee Related DE3928481C2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE19893928481 DE3928481C2 (de) 1989-08-29 1989-08-29 Prioritätsorientiertes dezentrales Busvergabesystem
GB9017898A GB2236459B (en) 1989-08-29 1990-08-15 A priority-oriented bus allotment system
FR9010770A FR2651345B1 (fr) 1989-08-29 1990-08-29 Systeme d'allocation a orientation prioritaire d'un bus.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19893928481 DE3928481C2 (de) 1989-08-29 1989-08-29 Prioritätsorientiertes dezentrales Busvergabesystem

Publications (2)

Publication Number Publication Date
DE3928481A1 DE3928481A1 (de) 1991-03-14
DE3928481C2 true DE3928481C2 (de) 1994-09-22

Family

ID=6388077

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19893928481 Expired - Fee Related DE3928481C2 (de) 1989-08-29 1989-08-29 Prioritätsorientiertes dezentrales Busvergabesystem

Country Status (3)

Country Link
DE (1) DE3928481C2 (de)
FR (1) FR2651345B1 (de)
GB (1) GB2236459B (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546587A (en) * 1991-05-30 1996-08-13 Tandem Computers Incorporated Decentralized bus arbitration system which continues to assert bus request signal to preclude other from asserting bus request signal until information transfer on the bus has been completed
AT403629B (de) * 1994-03-24 1998-04-27 Keba Gmbh & Co Bus-system, insbesondere prioritätsorientiertes bus-system
WO1996037849A1 (en) * 1995-05-26 1996-11-28 Jin Young Cho Sequential polling/arbitration method using signal bisection and device therefor for multinode network
DE10258469B4 (de) * 2002-12-09 2013-10-02 Volkswagen Ag Verfahren und Vorrichtung zur Datenübermittlung in einem verteilten System
US8490107B2 (en) 2011-08-08 2013-07-16 Arm Limited Processing resource allocation within an integrated circuit supporting transaction requests of different priority levels

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2210426C2 (de) * 1972-03-03 1973-11-08 Nixdorf Computer Ag, 4790 Paderborn Verfahren zur vorranggesteuerten Auswahl einer von mehreren Funktions einheiten zur Anschaltung an eine ihnen gemeinsam zugeordnete Einrichtung in Datenverarbeitungsanlagen und Schaltung zur Durchführung des Verfahrens
DE3009308A1 (de) * 1980-03-11 1981-10-01 Siemens AG, 1000 Berlin und 8000 München Verfahren und anordnung zum uebertragen von datensignalen
US4458314A (en) * 1982-01-07 1984-07-03 Bell Telephone Laboratories, Incorporated Circuitry for allocating access to a demand shared bus
DE3241777A1 (de) * 1982-10-29 1984-05-03 Siemens AG, 1000 Berlin und 8000 München Verfahren zur steuerung des zugriffs von datenuebertragungseinrichtungen auf eine gemeinsame busleitung
DE3374464D1 (en) * 1983-03-29 1987-12-17 Ibm Arbitration device for the allocation of a common resource to a selected unit of a data processing system
DE3407870C1 (de) * 1984-03-02 1985-08-14 Nixdorf Computer Ag, 4790 Paderborn Verfahren und Schaltungsanordnung zum Einleiten einer Datenuebertragungsverbindung
DE3413144A1 (de) * 1984-04-07 1985-10-17 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Digitales lokales kommunikationssystem mit der logischen struktur einer schleife
GB2167628B (en) * 1984-04-19 1988-06-22 Rational Computer bus apparatus with distributed arbitration
US4901234A (en) * 1987-03-27 1990-02-13 International Business Machines Corporation Computer system having programmable DMA control
IL89355A0 (en) * 1988-02-24 1989-09-10 Ardent Computer Corp Method and apparatus for controlling access to a system bus

Also Published As

Publication number Publication date
GB2236459A (en) 1991-04-03
FR2651345A1 (fr) 1991-03-01
GB2236459B (en) 1994-01-19
FR2651345B1 (fr) 1995-07-07
GB9017898D0 (en) 1990-09-26
DE3928481A1 (de) 1991-03-14

Similar Documents

Publication Publication Date Title
EP1309920B1 (de) Adressvergabeverfahren für mindestens einen neu an ein bussystem angeschlossenen busteilnehmer
DE3300261C2 (de)
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE3300260C2 (de)
DE3642324C2 (de) Multiprozessoranlage mit Prozessor-Zugriffssteuerung
DE2913288A1 (de) Multiprozessorsystem
WO1996003696A1 (de) Arbitrierung bei verzögernder buskopplung
EP0329005B1 (de) Verfahren zum Einrichten von über Koppelvielfache einer mehrstufigen Koppelanordnung verlaufenden virtuellen Verbindungen
DE3106862C2 (de) Prioritätszuteilschaltungsanordnung
DE4032725C2 (de) Steuerungsverfahren für Kommunikationsantwort
DE3928481C2 (de) Prioritätsorientiertes dezentrales Busvergabesystem
EP0509114B1 (de) Verfahren zum Übertragen von Daten an mehrere Datenstationen
EP0725516A2 (de) Verfahren zur Bestimmung der Position eines Netzteilnehmers in einem Netzwerk
DE102008001548B4 (de) Teilnehmerknoten eines Kommunikationssystems, Kommunikationssystem und Verfahren zum Übertragen einer Nachricht in dem Kommunikationssystem
BE1025127B1 (de) Kommunikationssystem zur seriellen Kommunikation zwischen Kommunikationsgeräten
DE19830803C2 (de) CAN-Modul
DE10307424A1 (de) Datenvermittlungsvorrichtung und Multiplex-Kommunikationssysteme
DE102014112901A1 (de) Kommunikationseinrichtung, Kommunikationssystem und Verfahren zum synchronisierten Senden von Telegrammen
EP0104638B1 (de) Verfahren zur Vorbereitung der Anschaltung einer von mehreren datenverarbeitenden Einrichtungen an ein zentral taktgesteuertes Mehrfach-Leitungssystem
DE2833048A1 (de) Schaltungsanordnung zur aufnahme und abgabe von informationsdaten und signalisierungsdaten bei einer programmgesteuerten vermittlungszentrale
DE102006042317B4 (de) Verfahren und Vorrichtung zur Übertragung digitaler Daten
EP1241835B1 (de) Empfangseinrichtung für einen CAN-Bus
DE69830531T2 (de) Rechnernetzwerk mit nichtdeterministischem Zugriff
DE19612675C2 (de) Verfahren zur Informationsübertragung
EP0064759A2 (de) Verfahren und Schaltungsanordnung zur Übermittlung einer Anforderung eines Prozessors an einen Speichermodul in einem Multiprozessorsystem mit mehreren Speichermoduln

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: DIEHL STIFTUNG & CO., 90478 NUERNBERG, DE

8339 Ceased/non-payment of the annual fee