DE4326964A1 - Bus mit virtueller Paketbildung und verteilter Arbitration - Google Patents
Bus mit virtueller Paketbildung und verteilter ArbitrationInfo
- Publication number
- DE4326964A1 DE4326964A1 DE4326964A DE4326964A DE4326964A1 DE 4326964 A1 DE4326964 A1 DE 4326964A1 DE 4326964 A DE4326964 A DE 4326964A DE 4326964 A DE4326964 A DE 4326964A DE 4326964 A1 DE4326964 A1 DE 4326964A1
- Authority
- DE
- Germany
- Prior art keywords
- bus
- module
- coupled
- assignment
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/372—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a time-dependent priority, e.g. individually loaded time counters or time slot
Description
Die vorliegende Erfindung bezieht sich allgemein auf
die Architektur eines Computerbusses und insbesondere auf
einen Bus mit virtueller Paketbildung, der zum pakettierten
Informationsübertragen dient und eine verteilte Arbitrati
onstechnik mit flexibler Prioritätszuordnung einschließt.
Bei digitalen Computersystemen, die eine Vielzahl von
Modulen wie etwa Prozessormodule, Steuermodule, Kommunika
tions-Schnittstellen (Relais-)Module usw. aufweisen, wird
ein Medium eingesetzt, über das diese Module Daten gegen
seitig übertragen können. Üblicherweise ist das eingesetzte
Medium ein physikalischer Datenkanal, der als Sammelleitung
oder Bus bekannt ist. Der Bus ist mit einem Kommunikations
port bzw. -anschluß an jedem Modul verbunden. Bei typischen
Architekturgestaltungen von Datenbussen wird die Informa
tion mit jeweils einem Wort zu einem Zeitpunkt über den Bus
übertragen. Da sich mehrere Module denselben Bus teilen,
müssen die Module weiterhin für jedes gesendete Wort mit
einander bezüglich des Buszugriffes in Konkurrenz treten.
Ein Computerbus weist typischerweise mehrere Leitungen
für die Übertragung und für die Steuerung der Übertagung
von unterschiedlichen Arten von Informationen zwischen den
an den Bus angeschlossenen Modulen auf. Herkömmliche Archi
tekturgestaltungen von Sammelleitungen umfassen eine Bus
struktur mit paralleler Datenübertragung und mehrere Steu
erleitungen. Üblicherweise ist der Datenbus N Bits breit,
wobei N die Anzahl von Bits je Wort bezeichnet.
In zeitlicher Hinsicht wird der Bus in eine Reihe von
Zeitschlitzen unterteilt, die als Buszyklen bezeichnet wer
den. Ein Buszyklus stellt die Zeitperiode dar, während der
einem Modul Zugriff zu dem Bus gewährt wird. Bei
herkömmlichen Gestaltungen der Bus-Architektur besitzt der
Buszyklus dieselbe Länge wie ein Taktzyklus. Folglich wird
bei herkömmlichen Systemen ein Wort mit N Bits durch ein
Modul bei jedem Taktzyklus übertragen.
Ein üblicher Ablauf bei einem Computersystem mit einer
herkömmlichen Bus-Architektur wird nachstehend beschrieben.
Ein erstes Modul will ein Wort oder eine Reihe von Worten
über den Datenbus zu einem zweiten Modul senden (oder über
tragen). Das erste Modul signalisiert, daß es auf den Bus
zugreifen möchte. Eine Einrichtung zum Vergeben des Zu
griffs zu dem Bus bestimmt, ob dem ersten Modul der Zugang
bei dem nächsten Buszyklus gestattet wird. Falls das erste
Modul keinen Zugriff erhält, muß das erste Modul seine An
forderung solange wiederholen, bis es Zugang erhält. Sobald
dem ersten Modul Zugriff zum Bus gewährt wird, kann es das
erste Wort über den Bus zu dem zweiten Modul senden. Der
selbe Vorgang muß erneut für jedes nachfolgende Wort, das
das erste Modul zu senden wünscht, wiederholt werden. In
manchen Fällen können beschränkte Formen von Mehrfach-Wort
übertragungen durch ein Modul zugelassen werden.
Die herkömmlichen Bus-Architekturgestaltungen sind in
zweierlei Hinsicht beschränkt. Zum einen sind sie dahinge
hend beschränkt, daß sie bei jedem Buszyklus lediglich eine
Übertragung eines einzelnen Worts (oder eine beschränkte
Übertragung mehrfacher Wörter) erlauben. Zum anderen sind
sie dahingehend beschränkt, daß zur Steuerung des Zugriffs
zu dem Bus durch die verschiedenen Module Arbitrationsver
fahren bzw. Zugriffsbeurteilungsmethoden eingesetzt werden.
Durch diese herkömmlichen Bus-Architekturgestaltungen
mit Einzelwort-Buszugriff erhält das Computersystem ledig
lich begrenzte Kommunikationsflexibilität und es wird nicht
bei allen Umgebungs- bzw. Einsatzbedingungen optimales Sy
stemverhalten erzielt. In manchen Umgebungen kann es erfor
derlich sein, daß das Computersystem an verschiedene Tele
kommunikations-Netzwerke angeschlossen wird. Beispielsweise
kann das Computersystem als eine Kommunikations-Steuerein
richtung ausgeführt werden, die die Kommunikation zwischen
den an einen Knoten schnittstellenmäßig angeschlossenen
Netzwerken steuert. Als alternatives Beispiel kann das Com
putersystem für wissenschaftliche oder geschäftliche Zwecke
eingesetzt werden und in einfacher Weise an die Netzwerke
zum Erhalten von Daten schnittstellenmäßig angeschlossen
sein.
Unabhängig von der bei diesen Umgebungen zugrundelie
genden Funktion des Computers ist es notwendig, daß der
Computer Daten von den verschiedenen Telekommunikations-
Netzwerken, an die er angeschlossen ist, aufnimmt und in
manchen Fällen Daten an diese abgibt. Diese Telekommunika
tions-Netzwerke arbeiten typischerweise auf der Paketebene
bzw. mit Paketbildung. Dies bedeutet, daß die Netzwerke Da
ten in Einheiten, die als Pakete definiert sind, übertra
gen. Die charakteristischen Eigenschaften des Pakets sind
in Abhängigkeit von dem jeweils befolgten besonderen Kommu
nikationsstandard definiert. Pakete sind typischerweise
hinsichtlich ihrer Länge durch eine bestimmte Anzahl von
Bits oder als eine bestimmte Anzahl von Bytes mit 8 Bit
(Oktets) definiert. Beispielsweise ist in der Kommunikati
onsspezifikation für den asynchronen Übertragungsmodus (ATM
= Asynchronous Transfer Mode) ein Paket auf 53 Bytes mit
jeweils 8 Bit festgelegt.
Die bei herkömmlichen Bus-Architekturgestaltungen ein
gesetzten Übertragungsverfahren mit Übertragung eines Ein
zelworts oder einer beschränkten Anzahl von mehreren Worten
sind nicht direkt mit diesen Paket-Kommunikationsstandards
kompatibel. Falls beispielsweise ein Datenpaket bei einer
Netzwerk-Schnittstellenkarte empfangen wird, kann dieses
Paket nicht direkt über den herkömmlichen Computer-Bus ge
sendet werden. Statt dessen müssen die Daten "entpackt" (aus
dem Paket herausgenommen), über den Bus mit jeweils einem
Wort aus N Bit zu einem Zeitpunkt gesandt und dann, wenn
sie für eine weitere Kommunikation über ein weiteres Netz
werk bestimmt sind, erneut in Pakete strukturiert werden.
Diese Inkompatibilität führt zu dem Erfordernis einer zu
sätzlichen Schaltung in den Schnittstellen-Modulen. Diese
zusätzliche Schaltung muß es ermöglichen, daß die Schnitt
stellenkarten die Daten entpacken, die Daten erneut zu Pa
keten verpacken und sowohl auf der Paketebene als auch auf
der Wortebene arbeiten können.
Herkömmliche Bus-Architekturgestaltungen sind hinsicht
lich ihrer Arbitrationsmethoden bzw. Entscheidungsmethoden
beschränkt. Bei vielen herkömmlichen Systemen wird die Bus-
Arbitration bzw. der Buszugriff durch eine zentrale Ent
scheidungsstelle (Arbiter) gehandhabt. Bei diesen Systemen
besitzt jedes Modul eine Leitung für die Anforderung eines
Buszugriffs und eine Leitung, über die dem Modul signali
siert wird, wenn der Zugriff gewährt wird. Oftmals sind
weitere Steuerleitungen zur Bereitstellung zusätzlicher In
formation wie etwa des Status des Arbitrations-bzw. Ent
scheidungssystems hinzugefügt. Bei Systemen, die mit zen
tralisierter Entscheidung arbeiten, sendet jedes Modul eine
Buszugriffsanforderung an die zentrale Entscheidungsstelle.
Die zentrale Entscheidungsstelle gewährt in jeder Zugriffs
periode einem Modul den Buszugriff auf der Grundlage der
Priorität der anfordernden Module.
Bei anderen Entscheidungsverfahren ist die Arbitrati
ons-bzw. Entscheidungsfunktion auf die Module verteilt, die
an den Bus angeschlossen sind. Bei diesen Systemen ist eine
Arbitrationsschaltung bzw. Entscheidungsschaltung in jedem
Modul enthalten, so daß die Module selbst bestimmen können,
ob sie auf den Bus zugreifen dürfen. Oftmals erfordern
diese Systeme Entscheidungsbusse, um eine verteilte Arbi
tration bzw. Entscheidung zu ermöglichen. Diese Entschei
dungsbusse besitzen typischerweise eine Breite von Y oder
2Y Leitungen, wobei Y die Anzahl der Module bezeichnet. Wie
bei einem zentralisierten System wird eine Konkurrenz da
durch gelöst, daß die Priorität der anfordernden Systeme
bewertet und demjenigen anfordernden Modul, das die höchste
Priorität besitzt, Zugriff gestattet wird.
Herkömmliche Entscheidungstechniken sind hinsichtlich
der Art der Zuordnung der Modulpriorität beschränkt, wo
durch die Flexibilität der Operationen des Computerbusses
begrenzt wird. Diese Beschränkung ist sowohl bei zentrali
sierten als auch bei verteilten Entscheidungsverfahren vor
handen. Bei herkömmlichen Systemen werden Prioritäten in
unterschiedlicher Weise zugeordnet. Hierbei können die
Prioritäten auf der Grundlage einer physikalischen Adresse,
einer Busposition oder der Position des Kartenschlitzes des
Moduls zugeordnet werden. Diese Prioritäten sind festgelegt
und können nicht geändert werden, es sei denn, das Modul
wird anders positioniert oder seine Adresse wird geändert.
Herkömmliche Entscheidungsverfahren, die mit dieser ersten
Art des Prioritätsvergabeverfahrens arbeiten, ermöglichen
in manchen Fällen eine Flexibilität dadurch, daß die Rei
henfolge der Priorität der Positionen der Module rotierend
geändert wird.
Ein zweites Verfahren der Zuordnung von Prioritäten in
herkömmlichen Systemen besteht darin, daß eine anfängliche
Zuordnung getroffen und dann die Priorität jedes Moduls
beim Start jedes nachfolgenden Buszyklus rotierend geändert
wird. Bei diesem Verfahren beginnt jedes Modul mit einer
anfänglichen Priorität. Jedesmal dann, wenn einem Modul Zu
griff gewährt wird, verschieben sich die Prioritäten der
Module. Bei manchen Methoden werden alle Prioritäten jedes
Moduls in festgelegter Weise inkrementiert oder dekremen
tiert.
Somit sind herkömmliche Bus-Architekturgestaltungen in
zweierlei Hinsicht beschränkt. Einerseits sind sie dahinge
hend beschränkt, daß sie lediglich die Übertragung eines
einzelnen Datenworts bei jedem Buszyklus erlauben.
Andererseits sind sie dahingehend beschränkt, daß die
eingesetzten Entscheidungsverfahren eine begrenzte
Flexibilität bei der Zuordnung und Änderung der Prioritäten
der Module bieten. Zusätzlich benötigen herkömmliche, mit
verteilter Entscheidung arbeitende Verfahren
Entscheidungsbusse mit mehrfachen Signalpfaden oder einer
Anzahl von Signalpfaden, die proportional zu der Anzahl von
an dem Bus hängenden Modulen ist.
Folglich sind herkömmliche Bus-Architekturgestaltungen
hinsichtlich der Flexibilität, die sie beim Anschluß an ex
terne Kommunikationsnetzwerke bieten, und auch hinsichtlich
ihrer Methoden der Arbitration bzw. Entscheidungsfindung
und der Zuordnung der Modulprioritäten beschränkt.
Mit der vorliegenden Erfindung wird ein System und ein
Verfahren für eine Bus-Kommunikation auf der Paketebene ge
schaffen, die eine flexible, verteilte Bus-Arbitration bzw.
-zuordnung aufweisen. Der in Übereinstimmung mit der vor
liegenden Erfindung stehende Bus ist derart strukturiert,
daß Daten in Einheiten von Paketen übertragen werden, wobei
Pakete eine Mehrzahl von Worten mit einer Länge von N Bits
aufweisen und N die Breite des Datenbusses bezeichnet.
Das in Übereinstimmung mit der vorliegenden Erfindung
stehende Entscheidungsverfahren ist eine Methode der ver
teilten Arbitration bzw. Zuordnung, wobei jedes hinsicht
lich des Buszugriffes konkurrierende Modul mit einer Bus-
Arbitrations- bzw. Zuordnungslogik versehen ist. Eine ein
zelne Bus-Arbitrationsleitung ist für den Anschluß an die
Entscheidungsschaltung jedes Moduls vorgesehen. Die Bus-Ar
bitrationslogik umfaßt eine Logik zur Bestimmung der Prio
rität der Module und zur Bestimmung des Zeitpunkts der Ge
währung des Buszugriffes für ein Modul auf der Basis der
Priorität des Moduls.
In Übereinstimmung mit der vorliegenden Erfindung ist
der Bus in zeitlicher Hinsicht in Bus-Zyklusperioden unter
teilt, die als Buspaket-Zeitschlitze bzw. BUP-Zeitschlitze
bekannt sind. Ein Buspaket-Zeitschlitz (BUP-Zeitschlitz)
definiert die Zeitperiode, für die einem Modul der Zugriff
gestattet wird. Der Zugriff wird für jeden Buspaket-Zeit
schlitz durch die Arbitrations- bzw. Entscheidungsschaltung
frei festgelegt. Der Buspaket-Zeitschlitz ist weiterhin in
Zugriffs-Zeitschlitze unter Heranziehung eines Taktsignals
für die Zugriffszeit unterteilt.
In Übereinstimmung mit der vorliegenden Erfindung wird
ein digitaler Zähler beim Beginn des Buspakets-Zeitschlit
zes unter Heranziehung eines Buspaket-Takts (BUP-Takt) zu
rückgesetzt. Der digitale Zähler beginnt Impulse des Zu
griffzeit-Takts zu zählen, so daß er Zugriffs-Zeitschlitze
zählt. Der Ausgangswert des Zählers wird an einen Verglei
cher abgegeben.
Ein Statusgerät zeigt die Priorität des Moduls an und
gibt einen Prioritätswert an den Vergleicher ab. Der Ver
gleicher vergleicht den Prioritätswert mit dem Wert des
Zählers und erzeugt einen Vergleichs-Zeitimpuls dann, wenn
diese Werte gleich groß sind. Der Vergleichs-Zeitimpuls
wird zur letztendlichen Beanspruchung des Zugriffs zu dem
Bus eingesetzt.
Der Vergleicher jedes Moduls vergleicht die Anzahl der
gezählten Zugriffs-Zeitschlitze mit dem Prioritätswert des
Moduls. Somit wird ein Vergleichs-Zeitimpuls für ein Modul
mit einer niedrigeren Prioritätszahl (d.h einer höheren
Priorität) früher erzeugt. Das Modul, das zuerst den Zu
griff zum Bus anfordert und einen Vergleichs-Zeitimpuls er
zeugt, legt die Arbitrations- bzw. Entscheidungsleitung ul
timativ bzw. definitiv auf 0, wodurch der Zugriff durch die
anderen Module gesperrt wird.
Falls ein Modul mit einer höheren Priorität
(niedrigeren Prioritätszahl) nicht bereits Zugriff zu dem
Bus angefordert und die Entscheidungsleitung auf niedrigen
Pegel gelegt hat, wird der Vergleichs-Zeitimpuls eines an
fordernden Moduls zur Erzeugung eines Buszugänglichkeits
bzw. Busverfügbarkeitssignal eingesetzt, falls dieses Modul
den Bus anfordert. Dieses Busverfügbarkeitssignal wird dann
zum Herabziehen bzw. Festlegen der Entscheidungsleitung auf
niedrigen Pegel eingesetzt, wodurch die Erlangung des Bus
zugriffes durch andere Module gesperrt wird.
Die Busarbitration bzw. Buszuordnung findet während ei
nes gegenwärtigen Buspaket-Zeitschlitzes statt, um zu be
stimmen, welches Modul Zugang zu dem Bus während des näch
sten Buspaket-Zeitschlitzes erhalten wird. Zum Beginn jedes
Buspaket-Zeitschlitzes wird ein Zählerwert auf seinen an
fänglichen Wert zurückgesetzt und es kann die Priorität des
Moduls auf der Grundlage einer Anzahl von Prioritätszuord
nungsverfahren aktualisiert werden. Eine Anzahl von Priori
tätszuordnungs- bzw. Prioritätsvergabeverfahren kann zur
Festlegung der Priorität der Module für jeden Buspaket-
Zeitschlitz eingesetzt werden. Die Fähigkeit zur Realisie
rung unterschiedlicher Prioritätsschemata schafft maximale
Systemflexibilität.
Weitere Merkmale und Vorteile der vorliegenden Erfin
dung sowie der Aufbau und die Betriebsweise unterschiedli
cher Ausführungsbeispiele der Erfindung werden nachstehend
unter Bezugnahme auf die beigefügten Zeichnungen näher be
schrieben. In den Zeichnungen bezeichnen gleiche Bezugszei
chen identische oder funktional gleichartige Elemente. Wei
terhin bezeichnet die an der äußersten linken Position ste
hende Ziffer einer Bezugszahl die Zeichnung, in der die Be
zugszahl zuerst auftritt.
Die Erfindung wird nachstehend anhand von Ausführungs
beispielen unter Bezugnahme auf die Zeichnungen näher be
schrieben. Es zeigen:
Fig. 1 ein Blockschaltbild eines Computersystems, das
als ein Netzwerk-Kommunikationsknoten arbeitet, der eine
als Beispiel dienende Umgebung bzw. Einsatzmöglichkeit der
vorliegenden Erfindung bildet,
Fig. 2A ein Blockschaltbild, das den Aufbau des in
Übereinstimmung mit der vorliegenden Erfindung stehenden
Busses mit virtuellen Paketen bzw. virtueller Paketbildung
veranschaulicht,
Fig. 2B ein Zeitdiagramm, das die Unterteilung des
Busses mit virtueller Paketbildung in Buspaket-Zeitschlitze
veranschaulicht,
Fig. 3 ein Schaltbild eines Ausführungsbeispiels der
vorliegenden Erfindung,
Fig. 4A und 4B ein Ablaufdiagramm, das die Be
triebsweise der vorliegenden Erfindung veranschaulicht,
Fig. 5 ein Zeitdiagramm, das die zeitliche Anordnung
von Schlüssel-Zeitsteuerungssignalen einer Arbitrations
schaltung gemäß einem Ausführungsbeispiel der vorliegenden
Erfindung veranschaulicht,
Fig. 6 ein alternatives Ausführungsbeispiel der vor
liegenden Erfindung, das ohne einen Zähler realisiert ist,
Fig. 7 ein Blockdiagramm, das die Entscheidung bei Mo
dulen veranschaulicht, die in Gruppen von Modulen angeord
net sind,
Fig. 8 ein Diagramm, das eine Realisierung der Ent
scheidungsschaltung gemäß der vorliegenden Erfindung mit
einer optische Entscheidungs-Faserleitung veranschaulicht.
1. Überblick über die vorliegende Erfindung,
2. Modellumgebung bzw. beispielhafte Umgebung,
3. der Bus,
4. Busarbitration bzw. -zuordnung,
5. Prioritätszuordnungsverfahren,
6. Vergrößerung der Modulkapazität,
7. Betrieb bei hohen Geschwindigkeiten.
2. Modellumgebung bzw. beispielhafte Umgebung,
3. der Bus,
4. Busarbitration bzw. -zuordnung,
5. Prioritätszuordnungsverfahren,
6. Vergrößerung der Modulkapazität,
7. Betrieb bei hohen Geschwindigkeiten.
Die vorliegende Erfindung schafft ein System und ein
20 Verfahren für die paketstrukturierte Buskommunikation ein
schließlich einer flexiblen, verteilten Busarbitration bzw.
Buszuordnung. Der Bus gemäß der vorliegenden Erfindung ist
derart strukturiert, daß Datenübertragungen in Einheiten
von Paketen gehandhabt werden. Die Pakete enthalten M Wör
ter, wobei jedes der M Wörter eine Länge von N Bits be
sitzt. N bezeichnet die Breite des Datenbusses.
Der Bus benutzt ein verteiltes Arbitrations- bzw. Zu
ordnungs- oder Entscheidungsschema, wobei jedes Modul, das
hinsichtlich des Buszugriffs konkurriert, eine Bus-Arbitra
tions- bzw. Zuordnungslogik besitzt. Die Buszuordnungslogik
enthält eine Logik zur Bestimmung der Priorität des Moduls
und zur Bestimmung des Zeitpunktes der Gewährung des Buszu
griffes durch das Modul auf der Grundlage der Priorität des
Moduls.
Die Bus-Zuordnungslogik ist zur Bereitstellung flexi
bler Prioritätsvergabeverfahren imstande. In Übereinstim
mung mit der vorliegenden Erfindung kann eine Anzahl von
alternativen Prioritätsvergabeverfahren eingesetzt werden.
Mit Hilfe dieser Verfahren werden die Systemflexibilität
und Anpassungsfähigkeit verbessert.
Somit kann die Arbitration bzw. Zuordnung in Überein
stimmung mit der vorliegenden Erfindung unter Einsatz le
diglich einer einzigen Bus-Zuordnungsleitung realisiert
werden, die mit jedem Modul verbunden ist. Diese einzige
Bus-Zuordnungsleitung wird dazu eingesetzt, anzuzeigen, ob
einem weiteren Modul bereits ein Zugriff zu dem Bus während
des nächsten Buszyklus gestattet wurde.
Die vorliegende Erfindung wurde für den Einsatz bei ei
nem Computersystem entwickelt, das als ein Netzwerk-Paket
schalter fungiert. Fig. 1 zeigt ein Blockschaltbild, in
dem ein Computersystem, das als Netzwerk-Paketschalter 100
konfiguriert ist, und seine typischen Schnittstellen veran
schaulicht sind. Unter Bezugnahme auf Fig. 1 wird nun die
Modellumgebung bzw. als Beispiel dienende Umgebung be
schrieben. Ein Netzwerk-Paketschalter 100 der Modell
umgebung enthält zwei separate Busse. Ein virtueller Paket
bus bzw. Bus 102 mit virtueller Paketbildung (im folgenden
auch als VPB 102 bezeichnet) ist in Übereinstimmung mit der
vorliegenden Erfindung ein Hochgeschwindigkeitsbus mit vir
tuellem asynchronem Übertragungsmodus (VATM = Virtual Asyn
chronous Transfer Mode). Des weiteren ist ein Standard-VME-
Bus 104 zur Handhabung von lokaler Status- und Steuerin
formation niedriger Geschwindigkeit vorgesehen.
T-1-Rahmen-Vermittlungsmodule 106 akzeptieren bis zu 4
T-1-Rahmen-Vermittlungskanäle und verpacken die Daten von
diesen Kanälen in ATM-Pakete (ATM = Asynchronous Transfer
Mode = Asynchroner Übertragungsmodus). Übertragungs-
Schnittstellenmodule (Trunk Interface Modules) 108 akzep
tieren die ATM-Pakete vom Bus 102 mit virtueller Paketbil
dung. Die Übertragungs-Schnittstellenmodule verbinden die
ATM-Pakete mit Standard-T-3-Formaten oder SONET-Formaten
für den Transport. Prozessormodule 110 stellen das Manage
ment bzw. die Verwaltung der Netzwerkelemente und deren
Kopplung mit einem externen Ethernet-Netzwerk 110 bereit.
Das externe Ethernet-Netzwerk 114 bildet den Knoten mit ei
ner Schnittstelle für das Netzwerk-Management. Ein doppelt
redundantes Spannungsversorgungsmodul 112 stellt die Sy
stemspannungsversorgung bereit.
Die Funktion des Netzwerk-Paketschalters 100 besteht in
dem Empfang von Datenpaketen, die von Benutzern von Netz
werk-Datenservices wie etwa dem Rahmenvermittlungsservice
(Frame Relay Service) und dem geschalteten Mehrfach-Mega
bit-Datenservice (SMDS = Switched Multi-Megabit Data Ser
vice) herrühren, und leiten diese Datenpakete an andere
Netzwerkknoten in Übereinstimmung mit der Adresse der Pa
kete weiter. Zusätzlich empfängt der Netzwerk-Paketschalter
100 Datenpakete von anderen Knoten, die an die Position des
Paketschalters adressiert sind. Der Bus 102 mit virtueller
Paketbildung, der den Gegenstand dieser Erfindung bildet,
schafft den internen Kommunikationspfad für die Datenpakete
zwischen Modulen für den Benutzerzugriff wie etwa dem T-1-
Rahmen-Vermittlungsmodul 106 und Kommunikationsgliedern
zwischen den Knoten, die üblicherweise als Übertragungs
stellen (Trunks) bezeichnet werden und beispielsweise durch
die Übertragungs-Schnittstellenmodule 108 gebildet sind.
Pakete, die ihre Quelle bei einer Benutzer-Schnittstelle
bei einem aus einer Mehrzahl von Rahmenvermittlungsmodulen
106 haben, können über den Bus zu jedem der Übertragungsmo
dule 108 oder über die Rahmenvermittlungsmodule 106 zu an
deren lokalen Benutzern geleitet werden.
Fig. 2A zeigt den in Übereinstimmung mit der vorlie
genden Erfindung stehenden Bus 102 mit virtueller Paket
bildung. Gemäß Fig. 2 umfaßt der Bus 102 mit virtueller
Paketbildung einen Datenbus 202, eine gemeinsame Bus-Zuord
nungsleitung 204 und eine Buspaket (BUP) Taktleitung 206.
Bei einem bevorzugten Ausführungsbeispiel ist der Bus 102
mit virtueller Paketbildung ein Rückwand- bzw. Rückseiten-
Bus, an den eine Mehrzahl von Modulen 208 angeschlossen
ist. Die Module 208 können Schaltungskarten sein, die in
dem Rückseiten-Bus 102 mit virtueller Paketbildung unter
Benützung von Kartenrand-Verbindern eingesteckt sind. Die
Module 208 können Module wie etwa ein Prozessormodul 110
und ein Übertragungsschnittstellen-Modul 108 enthalten, wie
in dem Unterabschnitt "Modellumgebung" dieser Anmeldung be
schrieben ist.
Bei einem bevorzugten Ausführungsbeispiel besitzt der
Datenbus 202 eine Breite von 64 Bits (d.h N beträgt 64).
Diese Breite führt dazu, daß der Bus 102 mit virtueller
Paketbildung mit einem Paket-Standard mit 53 8-Bit-Bytes
kompatibel ist und darüber hinaus zusätzliche Bits für an
dere Systemfunktionen zur Verfügung stehen. Bei dem bevor
zugten Ausführungsbeispiel des Busses mit virtueller Paket
bildung werden ATM-Pakete mit 53 8-Bit-Bytes eingesetzt. Bei
einem Datenbus mit einer Breite von 64 Bit sind sieben (7)
Busübertragungen für jedes Paket erforderlich, wobei 3 8-
Bit-Bytes als zusätzliche Bits zu Verfügung stehen (7 Bus
übertragungen × 8 8-Bit-Bytes je Übertragung - 53 8-Bit-
Bytes). Diese zusätzlichen Bits können für eine Vielzahl
von Zwecken wie etwa die Übertragung einer fehlerkorrigie
renden Paritätsinformation zur Erfassung von Paketfehlern,
zur Übertragung von Zustandsinformation usw. eingesetzt
werden. Es sind auch andere Ausführungsbeispiele in Be
tracht gezogen, bei denen der Datenbus 202 eine von 64 Bit
abweichende Breite besitzt.
Ein einzigartiges bzw. besonderes Merkmal des Busses
102 mit virtueller Paketbildung in Übereinstimmung mit der
vorliegenden Erfindung besteht darin, daß er eine Daten
übertragung in Gruppen von Wörtern (Paketen) ermöglicht.
Ein Paket ist dahingehend definiert, daß es eine Länge von
M Wörtern besitzt. Bei einem bevorzugtem Ausführungsbei
spiel beträgt die Länge des Pakets sieben Worte (d. h. M ist
sieben). Um die Datenübertragung in Einheiten von Paketen
handzuhaben, ist die Länge des Buszyklus so festgelegt, daß
es die Paketlänge abdeckt. Folglich wird bei dem in Über
einstimmung mit der vorliegenden Erfindung stehenden Bus
102 mit virtueller Paketbildung ein Paket-Zeitgabe-Konzept
zur Bestimmung des Buszyklus eingesetzt.
Fig. 2B zeigt das Paket-Zeitgabe-Konzept des in Über
einstimmung mit der vorliegenden Erfindung stehenden Busses
102 mit virtueller Paketbildung. Unter Bezugnahme auf die
Fig. 2A und 2B wird das Paket-Zeigabe- bzw. Zeitsteuerungs-
Konzept näher erläutert. Die Buspaket-Taktleitung 206 führt
ein Buspaket-Taktsignal 226 zu allen Modulen 208 am Bus 102
mit virtueller Paketbildung. Das Buspaket-Taktsignal 226
unterteilt den Bus 102 mit virtueller Paketbildung in zeit
licher Hinsicht in Buszyklus-Perioden. Diese Buszyklus-Pe
rioden werden Buspaket-Zeitschlitze (BUP-Zeitschlitze) ge
nannt. Das Buspaket-Taktsignal 226 ist ein Zeitsteue
rungsimpuls, der den Beginn jedes Buspaket-Zeitschlitzes
markiert. Die Länge des Buspaket-Zeitschlitzes L ist aus
reichend groß, um die Buspaket-Länge M handzuhaben. Die
Buspaket-Länge L (bzw. M) ist die minimale Datenübertra
gungs-Zeiteinheit des Busses 102 mit virtueller Paketbil
dung. Alle Datenübertragungen auf dem Bus 102 mit virtuel
ler Paketbildung erfolgen innerhalb des Buspaket-Zeit
schlitzes, der durch das Buspaket-Taktsignal 226 festgelegt
ist.
Somit wird bei einem bevorzugtem Ausführungsbeispiel,
bei dem M = 7 ist, die Buspaket-Länge L derart gewählt, daß
sieben Bus-Wörter 228 mit N Bit innerhalb dieser Zeit über
tragen werden können. Damit ist der Datenbus 202 durch eine
Breite von N Bit und Perioden mit einer durch die Buspaket-
Länge L definierten Länge definiert bzw. bestimmt.
In Übereinstimmung mit der vorliegenden Erfindung wird
die Buszuordnung bzw. Bus-Arbitration mit verteilter Basis
gehandhabt. Jedes an den Bus angeschlossene Modul ist mit
einer Arbitrationsschaltung bzw. Zuordnungsschaltung verse
hen, die dazu dient, während des aktuellen Buspaket-Zeit
schlitzes zu bestimmen, ob ihr zugehöriges Modul während
des nächsten Buspaket-Zeitschlitzes auf den Bus zugreifen
kann. Die Zuordnungsschaltung enthält logische Elemente zur
Bestimmung der aktuellen Priorität des Moduls und zur Be
stimmung, ob der Buszugriff auf der Grundlage dieser Prio
rität zugelassen wird. Weiterhin ist eine Schaltung zur Ak
tualisierung der Modulpriorität vorgesehen. Die Zuordnungs
schaltung wird mit dem Buspaket-Takt 226 und mit einem Zu
griffszeittakt gespeist.
Während des gegenwärtigen Buspaket-Zeitschlitzes be
ginnt die Zuordnungsschaltung mit der Zählung der Impulse
des Zugriffszeittakt-Signals. Die Zuordnungsschaltung ver
gleicht den gezählten Wert mit der gegenwärtigen Priorität
des Moduls. Wenn der gezählte Wert gleich groß ist wie die
Priorität des Moduls, wird dem Modul Zugang zu dem Bus wäh
rend des nächsten Buspaket-Zeitschlitzes gewährt, falls
zwei Bedingungen erfüllt sind. Diese beiden Bedingungen
sind: (i) das Modul muß einen Zugriff anfordern, und (ii)
der Bus darf nicht bereits durch ein Modul mit einer höhe
ren Priorität beansprucht worden sein. Wenn einem Modul Zu
griff zu dem Bus gewährt wird, legt dieses Modul die Zuord
nungsleitung (Arbitrationsleitung) solange auf niedrigen
Pegel, bis der gegenwärtige Buspaket-Zeitschlitz abgelaufen
ist. Wenn die Zuordnungsleitung auf niedrigem Pegel liegt,
erhält kein weiteres Modul Zugriff für den nächsten Buspa
ket-Zeitschlitz.
Fig. 3 zeigt eine schematische Darstellung zur Veran
schaulichung der Zuordnungsschaltung in Übereinstimmung mit
der vorliegenden Erfindung. Gemäß Fig. 3 ist ein Bus-
Schiedsrichter bzw. eine Bus-Zuordnungsschaltung
(Busarbiter) 300 schnittstellenmäßig mit der gemeinsamen
Buszuordnungsleitung 204, mit einem Zugriffszeittakt 308
und mit dem Buspaket-Taktsignal 226 gekoppelt.
Die Buszuordnungseinrichtung 300 enthält mehrere logi
sche Komponenten, die nachstehend erläutert werden. Die
Buszuordnungseinrichtung 300 enthält ein Zustands- bzw.
Statusgerät 302. Das Statusgerät 302 dient zur Anzeige der
Priorität des Moduls in digitaler Form. Die Buszuordnungs
einrichtung 300 enthält weiterhin einen Zähler 304 und ei
nen Vergleicher 306. Der Zähler 304 zählt Flanken des Zu
griffszeittakts 308. Bei einem bevorzugtem Ausführungsbei
spiel beginnt der Zähler 304 ausgehend von einem anfängli
chen Wert zu zählen und inkrementiert seinen Wert bei jedem
positiven Übergang des Zugriffszeittakt-Signals 308, wobei
der Zählstand als ein Zählstandssignal 354 abgegeben wird.
Der Zähler 304 wird durch das Buspaket-Taktsignal 226 auf
seinen anfänglichen Wert zurückgesetzt. Alternative Aus
führungsbeispiele können in Betracht gezogen werden, bei
denen der Zähler 304 dekrementiert statt inkrementiert wird
und bei denen der Zähler 304 auf negative Flanken an
spricht.
Der Vergleicher 306 vergleicht die Priorität des Mo
duls, die durch das Statusgerät 302 angezeigt wird, mit dem
Zählstandssignal 354.
Ein Puffer 310 wird zur Überwachung der Zuordnungslei
tung 204 eingesetzt, um zu ermitteln, ob der Zugriff zu dem
Bus für den nächsten Buspaket-Zeitschlitz noch zur Verfü
gung steht. Wenn die Zuordnungsleitung 204 auf hohem Pegel
liegt, steht der Bus noch für den nächsten Buspaket-Zeit
schlitz zur Verfügung. Falls aber die Zuordnungsleitung 204
auf niedrigem Pegel liegt, hat bereits ein anderes Modul
den Bus für den nächsten Zeitschlitz beansprucht.
Ein Flip-Flop 314 wird gesetzt, wenn der Zähler 304 die
Priorität des Moduls, die durch das Zustandsgerät 302 ange
zeigt wird, erreicht, falls der Bus noch für den nächsten
Buspaket-Zeitschlitz zur Verfügung steht. Wenn das Flip-
Flop 314 gesetzt ist und das Modul den Zugriff zum Bus für
den nächsten Buspaket-Zeitschlitz anfordert, wird ein Tran
sistor 316 eingeschaltet. Wenn der Transistor 316 durchge
schaltet ist, wird die Zuordnungsleitung 204 auf niedrigen
Pegel gezogen, wodurch andere Module am Zugriff zum Bus
während des nächsten Buspaket-Zeitschlitzes gehindert wer
den.
Das Zustandsgerät 302 wird mit einem anfänglichen, die
anfängliche Priorität des Moduls anzeigenden Wert über ein
Anfangswertsignal 366 geladen. Der Prioritätswert des Mo
duls kann durch ein Aktualisierungssignal 368 für jeden
Buspaket-Zeitschlitz aktualisiert werden.
Die Fig. 4A und 4B zeigen ein Ablaufdiagramm der Ar
beitsweise der Buszuordnungseinrichtung 300 gemäß vorlie
gender Erfindung. Fig. 5 zeigt ein Zeitdiagramm, das die
zeitliche Beziehung zwischen den verschiedenen Signalen der
Buszuordnungseinrichtung 300 gemäß vorliegender Erfindung
veranschaulicht. Bezugnehmend auf die Fig. 3, 4A, 4B und 5
wird nachstehend die Arbeitsweise der Buszuordnungseinrich
tung 300 beschrieben. Die Betriebsweise der Buszuordnungs
einrichtung 300 bei einem als Beispiel dienenden Modul wird
mit Bezug zu Ereignissen beschrieben, die in den Buszuord
nungseinrichtungen 300 von anderen Modulen auftreten. Die
Buszuordnungseinrichtung 300 arbeitet bei jedem Modul in
gleichartiger Weise.
In einem Schritt 402 markiert zu einem Zeitpunkt τ = 0
ein Buspaket-Taktimpuls 502 des Buspaket-Taktsignals 226
den Beginn eines aktuellen Buspaket-Zeitschlitzes. Die Zeit
während dieses aktuellen Buspaket-Zeitschlitzes wird dazu
benutzt, zu bestimmen, welches Modul Zugriff zu dem Bus
während des nachfolgenden Buspaket-Zeitschlitzes erhält.
Der nächste Buspaket-Zeitschlitz beginnt zu einem Zeitpunkt
τ = 2. Zusätzlich wird der Zähler 304 durch den Buspaket-
Taktimpuls 502 auf einen anfänglichen Wert zurückgesetzt
und auch das Flip-Flop 314 rückgesetzt. Ferner setzt der
Buspaket-Taktimpuls 502 das Status gerät 302 auf einen an
fänglichen Prioritätswert, der durch das Anfangswertsignal
366 bestimmt ist, oder auf einen aktualisierten Prioritäts
wert, der durch das Aktualisierungssignal 368 bestimmt ist.
In einem Schritt 404 beginnt der Zähler 304 mit der
Zählung der Impulse 504 des Zugriffszeittakts 308. Der Zu
griffszeittakt 308 besitzt eine Rate bzw. Frequenz, die hö
her ist als die des Buspaktet-Takts 226. Somit unterteilt
der Zähler 304 jeden Buspaket-Zeitschlitz im wesentlichen
in eine bestimmte Anzahl von kürzeren Zeitschlitzen, wie
dies in Fig. 5 dargestellt ist. Die Länge dieser Zeit
schlitze ist durch die Periode des Zugriffszeittakts 308
bestimmt. Falls beispielsweise der Zugriffszeittakt 308 ei
ne Rate bzw. Frequenz besitzt, die 16 mal größer als die
des Buspaket-Takts 226 ist, wird der Zähler 304 16 mal
innerhalb des Buspaket-Zeitschlitzes inkrementiert (oder
dekrementiert). Folglich unterteilt der Zähler 304 bei die
sem Beispiel den Buspaket-Zeitschlitz in 16 Segmente.
Der Zähler 304 beginnt mit der Zählung der Impulse 504
des Zugriffszeittakts 308, ausgehend von seinem anfängli
chen Wert, und gibt das Zählstandssignal 354 an den Ver
gleicher 306 ab. Der Zähler 304 setzt die Zählung der Im
pulse 504 solange fort, bis der nächste Buspaket-Taktimpuls
502 den Zähler 304 auf seinen anfänglichen Wert zurück
setzt. Nach Rücksetzung beginnt der Zähler 304 erneut, aus
gehend von seinem anfänglichen Wert, zu zählen. Bei einem
bevorzugten Ausführungsbeispiel liegt das Zählstandssignal
304 in der Form eines digitalen Worts vor. Die Breite des
Worts ist so gewählt, daß es den maximalen, durch den Zäh
ler 304 erreichten Wert enthalten kann. Dieser maximale
Wert kann durch das Verhältnis zwischen der Frequenz des
Zugriffszeittakts 308 und der Frequenz des Buspaket-Takts
226 festgelegt sein.
Das Statusgerät 302 zeigt die Priorität des Moduls kon
tinuierlich während der gesamten Periode des Buspaket-Zeit
schlitzes an. Das Statusgerät gibt an den Vergleicher 306
ein Modul-Prioritätssignal 352 (auch als Zeitzugriffsstatus
352 bezeichnet) ab. Jedes an den Bus angeschlossene Modul
besitzt bei jeglichem gegebenen Buspaket-Zeitschlitz einen
einzigartigen bzw. eigenen Zeitzugriffsstatus 352. Bei ei
nem bevorzugten Ausführungsbeispiel wird der Zeitzugriffs
status 352 jedes Moduls in der Form eines digitalen Worts
dargestellt. Die Breite dieses digitalen Worts ist so ge
wählt, daß es ausreichend breit ist, um jeweils den eigenen
bzw. einzigartigen Zeitzugriffsstatus 352 für jedes Modul
repräsentieren zu können.
Während der Zähler 304 die Impulse 504 zählt, ver
gleicht der Vergleicher 306 das Zählstandssignal 354 mit
dem Zeitzugriffsstatus 352, der durch das Zustandsgerät 302
angezeigt wird.
Wenn das Zählstandssignal 354 gleich dem Zeitzugriffs
status 352 (d. h. dem Prioritätswert) ist, gibt der Verglei
cher 306 in einem Schritt 406 einen Vergleichs-Zeitimpuls
506 über einen Vergleicher-Ausgangssignalpfad 356 ab. Der
Vergleichs-Zeitimpuls 506 zeigt an, daß der Zähler 304 den
Zeitzugriffsstatus 352 des Moduls erreicht hat. Das Auftre
ten dieses Ereignisses ist in Fig. 5 durch einen Zeitpunkt
τ = 1 bezeichnet.
Wenn, wie bei dem vorstehend beschriebenen Beispiel,
der Zugriffszeittakt 308 den Buspaket-Zeitschlitz in 16
Segmente unterteilt, werden durch den Zähler 304 16 be
stimmte Zählwerte in einem Buspaket-Zeitschlitz erzeugt.
Somit können bei diesem Beispiel 16 Module jeweils einen
eigenen Zeitzugriffsstatus 352 besitzen. Jeder dieser eige
nen Zeitzugriffszustände 352 definiert ein eigenes Zeitzu
griffsfenster in einem Buspaket-Zeitschlitz.
Falls in einem Schritt 408 ein anderes Modul, das eine
höhere Priorität als das betrachtete Modul besitzt, den Zu
griff zu dem Bus für den nächsten Buspaket-Zeitschlitz an
gefordert hat, liegt die Zuordnungsleitung 204 bereits auf
einem niedrigen Zustand (was noch beschrieben wird), und
der Zuordnungsvorgang ist abgeschlossen. Das betrachtete
Modul erhält dann keinen Zugriff während des nächsten Zeit
schlitzes. Der Zuordnungsprozeß beginnt erneut beim Schritt
402 bei dem nächsten Buspaket-Taktimpuls 502 des Buspaket-
Takts 226. Falls andererseits der Bus noch für den nächsten
Buspaket-Zeitschlitz zur Verfügung steht, setzt die Buszu
ordnungseinrichtung 300 den Ablauf bei einem Schritt 410
fort. Der Schritt 408 wird im weitern Text in größeren Ein
zelheiten erläutert.
Im Schritt 410 wird der Vergleichs-Zeitimpuls 506 an
einen Eingangsanschluß S des Flip-Flops 314 angelegt. Der
Vergleichs-Zeitimpuls 506 setzt einen Ausgangsanschluß Q
des Flip-Flops 314 auf hohen Pegel. Dies führt dazu, daß
ein Ausgangssignal 360 des Flip-Flops auf hohen Pegel wech
selt.
Falls das Modul keinen Zugriff zu dem Bus für die näch
ste Zuordnungsperiode anfordert, besitzt ein Busanforde
rungssignal 362 in einem Schritt 412 niedrigen Pegel und
der Zuordnungsvorgang für dieses Modul ist beendet. Die Zu
ordnung beginnt erneut bei dem Schritt 402 beim nächsten
Buspaket-Taktimpuls 502 des Buspaket-Takts 226.
Falls jedoch das Modul einen Zugriff auf den Bus für
die nächste Zuordnungsperiode anfordert, erzeugt das Modul
ein Busanforderungssignal 362 mit hohem Pegel. Bei einem
Schritt 414 bewirken das auf hohem Pegel liegende Flip-
Flop-Ausgangssignal 360 und das an ein UND-Glied 320 ange
legte Busanforderungssignal 362 mit hohem Pegel, daß das
Busverfügbarkeitssignal 364 auf hohen Pegel wechselt. Wenn
das Busverfügbarkeitssignal 364 auf hohem Pegel liegt, wird
der Transistor 316 eingeschaltet. Der Kollektor des Tran
sistors 316 ist mit der Buszuordnungsleitung 204 verbunden,
während die Source mit Masse verbunden ist. Die Bus
zuordnungsleitung 204 wird über einen Widerstand
(Hochziehwiderstand = pull-up-Widerstand) 322 auf hohem
Spannungspegel bei Vcc gehalten. Wenn folglich der Tran
sistor 316 durch ein an seine Basis angelegtes Busverfüg
barkeitssignal 364 durchgeschaltet wird, wird die Bus
zuordnungsleitung 204 auf Massepotential gelegt. Wenn die
Buszuordnungsleitung 204 auf niedrigem Pegel liegt, wird
keinem anderen Modul Zugriff zu dem Bus gewährt.
Zusätzlich signalisiert das Busverfügbarkeitssignal 364
dem Modul, daß dem Modul Zugang zu dem Bus für den nächsten
Buspaket-Zeitschlitz gewährt wurde.
Bei dem bevorzugtem Ausführungsbeispiel ist der Transi
stor 316 ein bipolarer Transistor. Für den Fachmann ist oh
ne weiteres ersichtlich, daß auch jede andere Art von elek
trischer Schaltvorrichtung dieselbe Funktion wie der Tran
sistor 316 durchführen kann, vorausgesetzt, sie ist ausrei
chend schnell. Alternative Schaltbauelemente enthalten MOS-
Feldeffekttransistorbauelemente oder logische Standard-Tor
schaltungen, die im Stande sind, die Zuordnungsleitung auf
Massepotential zu ziehen bzw. zu legen.
Bei einem Schritt 416 sendet zu einem Zeitpunkt τ = 2
das Modul, das Zugriff erhalten hat, sein Paket über den
Bus. Zu diesem Zeitpunkt beginnt der Zuordnungsprozeß er
neut beim Schritt 402. Der Impuls 502 des Buspaket-Takts
226 setzt den Zähler 304 auf seinen anfänglichen Wert zu
rück, aktualisiert (oder setzt alternativ zurück) die Prio
rität des Statusgeräts 302 und setzt das Flip-Flop 314 zu
rück. Wenn das Flip-Flop 314 zurückgesetzt ist, ist das
Flip-Flop-Ausgangssignal 360 auf niedrigen Pegel gelegt.
Dies führt dazu, daß das Busverfügbarkeitssignal 364 auf
niedrigen Pegel wechselt, wodurch der Transistor 316 abge
schaltet wird. Bei abgeschaltetem Transistor 316 wird die
Buszuordnungsleitung 204 durch den Hochzieh-Widerstand 322
auf hohen Pegel gelegt.
Wie vorstehend beim Schritt 408 erläutert wurde, wird
dem betrachtetem Modul nur dann Zugang zu dem Bus gewährt,
wenn kein anderes Modul höherer Priorität den Zugang an
fordert. Die Art und Weise, in der diese Bestimmung ge
troffen wird, wird nachstehend in größeren Einzelheiten be
schrieben. Der Zähler 304 jedes Moduls zählt Impulse 504
des Zugriffszeittakts 308. Bei einer als Beispiel dienenden
Ausführungsform ist der Zähler 304 als ein Aufwärtszähler
realisiert und beginnt ausgehend von seinem anfänglichen,
bei 0 liegenden Wert zu zählen. Folglich wird ein Modul mit
einem niedrigeren Zeitzugriffsstatus 352 seinen Vergleichs-
Zeitimpuls 506 früher als ein Modul mit einem höheren Zeit
zugriffsstatus 352 erzeugen. Das erste Modul, das den Ver
gleichs-Zeitimpuls 506 erzeugt und den Bus mit Hilfe eines
auf hohem Pegel liegenden Busanforderungssignals 362 an
fordert, bringt die Zuordnungsleitung 204 auf niedrigen Pe
gel, wie vorstehend erläutert wurde. Zugriff wird diesem
Modul für den nächsten Buspaket-Zeitschlitz gestattet. Da
her muß der Zugriff für alle anderen Module gesperrt wer
den.
Sobald ein Modul die Zuordnungsleitung 204 auf niedri
gen Pegel gelegt hat, gibt ein in jeder Buszuordnungsein
richtung vorhandener Puffer 310 ein niedrigen Pegel besit
zendes Busbelegungssignal 358 an einen Eingang eines UND-
Glieds 318 ab. Dieses niedrigen Pegel besitzende Busbele
gungssignal 358 verhindert, daß der Vergleichs-Zeitimpuls
506 das Flip Flop 314 setzt. Dies bedeutet, daß dann, wenn
ein Modul die Zuordnungsleitung 204 auf niedrigen Pegel
gelegt hat, kein anderes Modul sein Flip Flop-Ausgangssi
gnal 360 auf hohen Pegel bringen kann, ein hohen Pegel be
sitzendes Busverfügbarkeitssignal 364 erzeugen und bei dem
nächsten Buspaket-Zeitschlitz auf den Bus zugreifen kann.
Zusätzliche Ausführungsbeispiele können in Betracht ge
zogen werden, die alternative Realisierungen der Buszuord
nungseinrichtung 300 umfassen. Beispielsweise kann das Flip
Flop 314 ein JK-Flip Flop sein, das durch den Vergleichs-
Zeitimpuls 506 getaktet wird. Der J-Eingang wird bei diesem
Ausführungsbeispiel durch das Busanforderungssignal 362 ge
speist werden. Folglich ist das Ausgangssignal Q dann ein
Signal mit hohem Pegel, wenn das Busanforderungssignal 362
hohen Pegel besitzt und der Vergleichs-Zeitimpuls 406 auf
tritt. Das JK-Flip Flop wird auch in diesem Fall durch den
Buspaket-Takt 226 rückgesetzt.
Ein weiteres alternatives Ausführungsbeispiel der Bus
zuordnungseinrichtung 300 kann dadurch realisiert werden,
daß der Zähler 304 durch ein Zustandsgerät ersetzt wird und
das Zustandsgerät 302 nicht mehr vorhanden ist. In Fig. 6
ist eine Darstellung gezeigt, die dieses alternative Aus
führungsbeispiel der Buszuordnungseinrichtung 300 veran
schaulicht. Gemäß Fig. 6 ist eine Modulzugriffsnummer 652
fest in dem Vergleicher 306 verdrahtet. Die Modulzugriffs
nummer 652 ist für jedes Modul einzigartig bzw. eigenstän
dig. Jedes Modul initialisiert ein Zustandsgerät 602 durch
einen einzigartigen bzw. eigenen Initialisierungswert 656.
Die Impulse des Zugriffszeittakts 308 takten das Zustands
gerät 602. Das Ausgangssignal 654 des Zustandsgeräts bzw.
des Statusgeräts werden bei jedem Impuls des Zugriffszeit
takt 308 inkrementiert. Der Vergleicher 306 vergleicht das
Ausgangssignal 654 des Statusgeräts mit der Modulzugriffs
nummer 652. Wenn die Nummern übereinstimmen, wird ein ver
gleichs-Zeitimpuls 506 erzeugt. Der Vergleichs-Zeitimpuls
506 wird wie bei dem bevorzugten Ausführungsbeispiel dazu
eingesetzt, die Buszuordnungsleitung 204 auf niedrigen Pe
gel zu ziehen. Ein Impuls 502 des Buspaket-Taktsignals 226
inkrementiert das Status gerät bei dem Beginn jedes neuen
Buspaket-Zeitschlitzes auf einen neuen Status.
Es wird nun wiederum auf Fig. 3 Bezug genommen. Es
kann ein weiteres, alternatives Ausführungsbeispiel in Be
tracht gezogen werden, bei dem das Busbelegungssignal 358
direkt dem Zähler 304 (anstelle des UND-Glieds 318, wie
dies dargestellt ist) zugeführt wird. Bei diesem Ausführu
ngsbeispiel wird der Zähler 304 am Zählen gehindert, wenn
das Busbelegungssignal 358 niedrigen Pegel besitzt. Daher
ist das UND-Glied 318 nicht erforderlich.
Bei einem anderen alternativen Ausführungsbeispiel der
Buszuordnungseinrichtung 300 wird das Busanforderungssignal
352 an das UND-Glied 318 angelegt, wodurch der Buszugriff
ohne Notwendigkeit des UND-Glieds 320 aktiviert oder ge
sperrt wird.
Diese alternativen Ausführungsbeispiele dienen als Bei
spiele für zahlreiche funktionell äquivalente Ausführungs
beispiele der Buszuordnungsschaltung gemäß der vorliegenden
Erfindung.
Die in Übereinstimmung mit der vorliegenden Erfindung
stehende Buszuordnung bringt Flexibilität hinsichtlich der
Zuordnung und Aktualisierung der Modulpriorität. Zahlreiche
Prioritätsvergabe- bzw. Prioritätszuordnungsverfahren sind
in Betracht gezogen, gemäß denen die Prioritäten der Module
bestimmt werden. Verschiedene Prioritätszuordnungsschemata
können auf der Basis der Anforderungen des Computersystems
realisiert werden, wodurch das Systemverhalten optimiert
wird. Beispiele solcher Prioritätsvergabeverfahren werden
im nachstehenden Text skizziert.
Es wird erneut auf Fig. 3 Bezug genommen. Wie zuvor
angegeben, wird die Priorität eines Moduls durch das Sta
tusgerät 302 gesteuert. Das Statusgerät 302 gibt einen
Zeitzugriffsstatus 352 ab, der die Modulpriorität anzeigt.
Das Statusgerät 302 ist in seiner einfachsten Ausführung
eine festgelegte, fest verdrahtete Nummer. Bei dieser
Ausgestaltung ist jedem Modul eine eigene, feste
Prioritätsnummer (Zeitzugriffsstatus 352) zugeordnet. Die
Priorität kann entsprechend einer Anzahl von unterschiedli
chen Strategien zugeordnet werden. Beispielsweise kann die
Prioritätsnummer jedes Moduls entsprechend der Position des
Moduls am Bus zugeordnet werden.
Bei einem bevorzugten Ausführungsbeispiel ist das Zu
standsgerät 302 derart realisiert , daß es durch jeden Bus
paket-Taktimpuls 502 aktualisiert wird. Dies ermöglicht ei
ne Änderung der Priorität jedes Moduls für jeden Buspaket-
Zeitschlitz. Die Statusgeräte 302 in allen Modulen müssen
synchronisiert und identisch sein, derart, daß der Zeitzu
griffsstatus 352 für jedes Modul einzigartig bzw. eigen
ständig ist.
Eine Vielzahl von Prioritätsschemata zur Bestimmung der
Modulpriorität bei jedem Buspaket-Taktimpuls 502 kann rea
lisiert werden. Die Realisierung dieser verschiedenen Sche
mata wird durch Veränderung der Art und Weise der Realisie
rung des Statusgeräts 302 erzielt. Als Beispiel kann ein
einfaches Prioritätschema durch Einsatz eines Modulo-N-Zäh
lers als Statusgerät 302 realisiert werden. Bei dieser Aus
gestaltung wird der Modulo-N-Zähler durch die Modulnummer
initialisiert. Die Initialisierung findet durch Zuführung
eines Initialisierungssignals 366 zum Statusgerät 302
statt. Nach ihrer Initialisierung werden alle Modulo-N-Zäh
ler aller Module bei jedem Buspaket-Schlitz durch den Bus
paket-Taktimpuls 502 dekrementiert. Folglich wird nach je
dem Buspaket-Zeitschlitz die Priorität jedes Moduls um 1
erhöht. Falls ein Modul Zugriff zum Bus anfordert und die
sen während eines Buspaket-Zeitschlitzes erhält, wird das
Modul-Zeitzugriffsfenster 352 eine Zugriffszeit später be
wegt, wenn der Buspaket-Taktimpuls 502 den Modulo-N-Zähler
dekrementiert. Das Modul, das den niedrigsten Prioritäts-
Zeitzugriffsstatus besaß, wird auf die höchste Priorität
verschoben und die Priorität aller anderen Module verrin
gert sich.
Alternativ kann ein dem Wettspiel "Round Robin" ent
sprechendes Schema dadurch realisiert werden, daß der Zu
griffsstatus des auf den Bus mit virtueller Paketbildung
zugreifenden Moduls auf die niedrigste Priorität ( letzter
zeitlicher Zugriff) verschoben und die Priorität aller Mo
dule, die eine niedrigere Priorität hatten, inkrementiert
wird. In diesem Fall wird jedes Modul mit einem Zugriffs
status, der später liegt als das Zugang zum Bus erhaltende
Modul, seinen Status inkrementieren, während solche mit hö
heren Prioritäten in dem aktuellen Status verbleiben würden
und der Benutzer, der zeitlich am wenigsten zurückliegend
den Bus benützt hat, auf die letzte Zugriffszeit verschoben
würde. Die Steuerung des Statusgeräts würde über die Aktua
lisierungsleitung des Statusgeräts erfolgen.
Ein Pseudo-Zufallsfolgen-Generator (PRS generator =
Pseudo random sequence generator) kann ebenfalls zur Erzeu
gung des Zugriffszeitstatus eingesetzt werden. Falls alle
Module identische Pseudo-Zufallsfolgen-Generatoren enthal
ten und jedes Modul den Generator mit einem einzigartigen
bzw. eigenen Status wie etwa seiner Modulnummer initiali
siert, werden alle Pseudo-Zufallsfolgen-Generatoren bei je
dem Buspaket-Schlitz inkrementiert, wodurch allen Modulen
dieselbe durchschnittliche Langzeit-Buspriorität verliehen
wird. Das Statusgerät kann jedes Gerät sein, das einen ein
zigartigen bzw. eigenen Status für jedes Modul erzeugt und
das durch die Initialisierung synchronisiert werden kann.
Dies kann Tabellennachschlageverfahren umfassen.
Gemäß der vorstehend beschriebenen Zuordnungstechnik
ist die Anzahl von Modulen, die hinsichtlich des Buszu
griffs konkurrieren können, durch das Verhältnis zwischen
dem Zugriffszeittakt und dem Buspaket-Takt begrenzt. Anders
ausgedrückt ist die Anzahl von Modulen, die hinsichtlich
des Buszugriffs konkurrieren können, auf die Anzahl von Zu
griffszeitfenstern beschränkt, die innerhalb eines Buszeit
schlitzes erzeugt werden können.
Vom Standpunkt der Realisierung ist es wünschenswert,
das Verhältnis zwischen dem Zugriffszeittakt und dem Buspa
ket-Zeittakt zu minimieren. Dies hat jedoch die Wirkung,
daß die Anzahl von Modulen, die in dem System untergebracht
werden können, begrenzt ist.
Diese Beschränkung kann dadurch überwunden werden, daß
Module in Gruppen von Modulen realisiert bzw. unterteilt
werden. Bei dieser Realisierung ist eine einzige Zuord
nungsleitung für jede Gruppe von Modulen vorhanden. Die Zu
ordnungsleitungen werden sowohl zur Bestimmung der Gruppen
priorität als auch zur Bestimmung der Priorität der einzel
nen Module eingesetzt.
Fig. 7 zeigt zwei Module, d.h ein Modul für jede von
zwei Gruppen. Das Konzept der Gruppenpriorität wird anhand
von zwei Gruppen von Modulen erläutert. Es ist für den
Fachmann offensichtlich, daß dieses Konzept auf jede belie
bige Anzahl von Gruppen von Modulen erweitert werden kann.
Gemäß Fig. 7 ist das Modul A1 als zu einer Gruppe A gehö
rend dargestellt. Ein Modul B1 ist als zu einer Gruppe B
gehörend gezeigt. Zwei Zuordnungsleitungen 704A, 704B sind
schnittstellenmäßig mit allen Modulen in der Gruppe A und
in der Gruppe B gekoppelt. Aus Einfachheitsgründen ist
lediglich ein Modul in jeder Gruppe gezeigt.
Jedes Modul umfaßt eine Gruppen-Prioritätslogik 702.
Die Gruppen-Prioritätslogik 702 dient dazu, Buskonkurrenz
konflikte zwischen den Gruppen zu lösen.
Ein Prioritätssignal 732 wird an die Gruppen-Priori
tätslogik 702 angelegt. Das Prioritätssignal 732 zeigt die
Priorität der Gruppe an. Jede Gruppe besitzt einen eigenen,
durch das Prioritätssignal 732 repräsentierten Prioritäts
wert.
Alle Module in der Gruppe B konkurrieren hinsichtlich
des Zugriffs zu dem Bus in einer Weise, wie sie vorstehend
bezüglich der bevorzugten Ausführungsbeispiele beschrieben
wurde. Wenn angenommen wird, daß die Gruppe B die höchste
Priorität besitzt, wird die Buszuordnungsleitung 706B durch
einen Transistor 706 auf niedrigen Pegel gelegt, sobald ei
nem Modul in der Gruppe B Zugang zu dem Bus gewährt wurde.
Sobald die Zuordnungsleitung 704B auf niedrigen Pegel ge
legt ist, wird ein Signal niedrigen Pegels durch einen Puf
fer 708A in der Gruppe A empfangen und dieses Signal nied
rigen Pegels wird an die Gruppen-Prioritätslogik 702A über
einen Eingang Q eingangsseitig angelegt. Dieses Signal
niedrigen Pegels am Eingang Q der Gruppen-Prioritätslogik
702A besitzt den Effekt, daß verhindert wird, daß ein Modul
in der Gruppe A einen Transistor 706A einschaltet und die
Zuordnungsleitung 704 A auf niedrigen Pegel zieht.
Die Geschwindigkeit der Zuordnungsleitung ist ein
Schlüsselfaktor bei der Gesamtgeschwindigkeit des mit vir
tueller Paketbildung arbeitenden Busses gemäß der vorlie
genden Erfindung. Die Zuordnungsleitung kann unter Einsatz
einer optischen Faser zur Erhöhung der Bandbreite reali
siert werden. Fig. 8 zeigt eine Realisierung einer Zuord
nungsleitung unter Einsatz einer optischen Faser. Bezugneh
mend auf Fig. 8 wird die Realisierung mittels optischer
Faser näher erläutert. Eine Zuordnungsleitung 802 ist unter
Einsatz einer optischen Faser gebildet. Die optische Faser
kann als eine inkohärente optische Faser oder einfach als
ein optisches Lichtrohr ausgeführt sein. Die die Zuord
nungsleitung 802 bildende optische Faser ist mit der Zuord
nungsschaltung unter Einsatz eines Optokopplers 804 verbun
den. Eine Photodiode (LED = Light Emitting Diode) 808 setzt
elektrischen Strom in ein optisches Signal 810 um. Das op
tische Signal 810 wird durch den optischen Koppler 804 auf
die Zuordnungsleitung 802 gekoppelt. Somit fließt dann,
wenn der Transistor 316 durch ein hohen Pegel besitzendes
Busverfügbarkeitssignal 364 eingeschaltet wird (wie bei dem
vorstehend beschriebenen Ausführungsbeispiel), Strom durch
die Leuchtdiode 808. Das von der Leuchtdiode 808 abgegebene
Licht wird auf die Zuordnungsleitung 802 gekoppelt. Folg
lich ist in der Zuordnungsleitung 802 Licht vorhanden, wenn
einem Modulzugriff für den nächsten Buspaket-Zeitschlitz
gewährt wurde.
Eine Photodiode 812 empfängt optische Energie von dem
Optokoppler 804. Das Fehlen von Licht auf der Zuordnungs
leitung 802 bewirkt, daß der Strom in der Photodiode 812
auf einen Pegel verringert wird, der als Dunkelstrompegel
bekannt ist. Bei Vorliegen des Dunkelstrompegels kann Strom
nicht von Vcc zu Masse durchgeleitet werden und ein Signal
mit hohem logischen Pegel wird an den Eingang des Puffers
310 angelegt.
Falls andererseits Licht auf der Zuordnungsleitung 802
vorhanden ist, verbindet die Photodiode 812 Vcc mit Masse,
wodurch an den Eingang des Puffers 310 ein Signal mit nied
rigem Pegel angelegt wird.
Auch wenn vorstehend unterschiedliche Ausführungsbei
spiele der vorliegenden Erfindung beschrieben wurden, ver
steht es sich, daß diese als Beispiele dienen und die Er
findung nicht beschränken sollen.
Es wird ein Computerbus beschrieben, der zum Übertragen
von Daten zwischen einer Vielzahl von mit ihm gekoppelten
Modulen dient und eine flexible, verteilte Buszugriffsbe
stimmung besitzt. Eine Mehrzahl von Datenleitungen dient
zur Übertragung von Datenbits zwischen den an den Bus ange
schlossenen Modulen. Eine einzige Zuordnungsleitung ist mit
jedem Modul gekoppelt und dient zur Anzeige, ob der Bus für
den nächsten Buszyklus zur Verfügung steht. Ein Buspaket-
Takt wird zur Unterteilung des Busses in als Buspaket-Zeit
schlitze bezeichnete Zyklusperioden eingesetzt. Ein Zu
griffszeittakt unterteilt diese Buspaket-Zeitschlitze in
Zeitzugriffsschlitze. Der Buspaket-Zeitschlitz ist die
Zeiteinheit, während der einem Modul Zugriff zu dem Bus ge
währt wird. Der Buspaket-Zeitschlitz ist so gewählt, daß
Modulen Zugang zu dem Bus für eine durch eine Paketlänge
definierte Zeitdauer gewährt wird. Jedes am Bus angeschlos
sene Modul ist mit einer Zuordnungsschaltung versehen, über
die bestimmbar ist, ob dem Modul Zugang zu dem Bus während
des nächsten Buspaket-Zeitschlitzes gewährt wird. Die Zu
ordnungsschaltung zählt die Anzahl von aufgetretenen Zeit
schlitzen und vergleicht den Zählerwert mit einem Modul-
Prioritätswert und gibt einen Vergleichs-Zeitimpuls ab,
wenn die Werte übereinstimmen. Ein Modul mit einer niedri
geren Prioritätsnummer legt die Zuordnungsleitung auf nied
rigen Pegel und beansprucht den Bus für den nächsten Buspa
ket-Zeitschlitz′ falls dieses Modul den Bus für den näch
sten Buspaket-Zeitschlitz beansprucht. Sobald ein Modul die
Zuordnungsleitung auf niedrigen Pegel gelegt hat, wird kei
nem anderen Modul Zugriff zu dem Bus während des nächsten
Buspaket-Zeitschlitzes gewährt. Wenn der nächste Buspaket-
Zeitschlitz auftritt, wird dem Modul, dem Zugriff zu dem
Bus für dieses Zeitintervall gewährt wurde, Zugang gegeben
und die Zähler jedes Moduls werden zurückgesetzt und es
wird die Priorität jedes Moduls aktualisiert.
Claims (17)
1. Computerbus für die Übertragung von Daten zwischen
einer Mehrzahl von mit ihm gekoppelten Modulen (208), mit
- a) einer Mehrzahl von mit jedem Modul (208) gekoppelten Datenleitungen, über die Bits von Wörtern übertragbar sind,
- b) einer einzigen, mit jedem Modul (208) gekoppelten Arbitrations- bzw. Zuordnungsleitung (204),
- c) einem mit jedem Modul gekoppelten Buspaket-Takt (206, 226), der zur zeitlichen Unterteilung des Busses in als Buspaket-Zeitschlitze bezeichnete Zyklusperioden einsetzbar ist,
- d) einem Zugriffszeittakt (308), der mit jedem Modul gekoppelt ist und zur Unterteilung der Buspaket-Zeit schlitze in Zugriffszeitschlitze einsetzbar ist, und
- e) einer Arbitrations- bzw. Zuordnungsschaltung (300) für jedes Modul am Bus, die mit dem Buspaket-Takt, mit der Zuordnungsleitung und mit dem Zugriffszeittakt gekoppelt und derart ausgelegt ist, daß sie im Hinblick auf die Kon kurrenz der Vielzahl von Modulen betreffend den Bus ent scheidet.
2. Computerbus nach Anspruch 1, dadurch gekennzeichnet,
daß die Buspaket-Zeitschlitze ausreichende zeitliche Länge
besitzen, derart, daß ein eine Mehrzahl von Worten enthal
tendes Paket zwischen den Modulen während eines Buspaket-
Zeitschlitzes übertragen werden kann.
3. Computerbus nach Anspruch 1 oder 2, dadurch gekenn
zeichnet, daß die Zuordnungsschaltung (300) jedes Moduls
- 1) ein Statusgerät (352) mit einem mit dem Buspaket- Takt (226) gekoppelten Eingang und einem mit einem Verglei cher (306) gekoppelten Ausgang aufweist,
- 2) daß der Vergleicher (306) einen mit dem Statusgerät (302) gekoppelten Eingang und einen mit einem Flipflop (314) gekoppelten Ausgang besitzt und derart ausgelegt ist, daß er einen Vergleichs-Zeitimpuls (356) erzeugt,
- 3) daß das Flipflop (314) einen mit dem Vergleicher (306) gekoppelten und auf ein durch die Zuordnungsleitung (204) erzeugtes Busbelegungssignal (358) ansprechenden ersten Eingang und einen Ausgang, der zur Erzeugung eines Busver fügbarkeitssignals (364) dient, aufweist und
- 4) daß die Zuordnungsschaltung (300) jedes Moduls einen Transistor (316) besitzt, der eine mit dem Flipflop-Ausgang gekoppelte Basis, einen mit Massepotential gekoppelten Emitter und einen mit der Zuordnungsleitung (204) gekoppel ten Kollektor aufweist und derart betreibbar ist, daß er die Zuordnungsleitung auf niedrigen Pegel legt, wenn das Mo dul das Busverfügbarkeitssignal (364) erzeugt.
4. Computerbus nach Anspruch 3, dadurch gekennzeichnet,
daß die Zuordnungsschaltung (300) einen Zähler (304) umfaßt,
der einen ersten, mit dem Buspaket-Takt gekoppelten Ein
gang, einen zweiten, mit dem Zugriffszeittakt (308) gekop
pelten Eingang und einen mit dem Vergleicher (306) gekoppel
ten Ausgang besitzt und derart ausgelegt ist, daß er die
Impulse des Zugriffszeittakts zählt, durch Impulse des Bus
paket-Takts zurückgesetzt wird und ein Zählstandssignal
(354) erzeugt, und daß das Statusgerät (302) so ausgelegt
ist, daß es ein Prioritätswertsignal (352) an den
Vergleicher angibt.
5. Computerbus nach Anspruch 3 oder 4, dadurch gekenn
zeichnet, daß die Zuordnungsschaltung (300) ein UND-Glied
(320) aufweist, das mit dem Flipflop (314) gekoppelt ist, auf
ein Busanforderungssignal (362) und auf das Ausgangssignal
des Flipflops (314) anspricht und das Busverfügbarkeitssi
gnal (364) lediglich dann erzeugt′ wenn das Modul einen Bus
zugriff anfordert.
6. Computerbus nach einem der Ansprüche 3 bis 5, da
durch gekennzeichnet, daß der Vergleicher (306) mit dem
Flipflop (314) über ein UND-Glied (318) gekoppelt ist, das
einen mit der Zuordnungsleitung (204) gekoppelten Eingang
besitzt.
7. Computerbus nach einem der Ansprüche 3 bis 6, ge
kennzeichnet durch einen Puffer (310), der mit Zuordnungs
leitung (204) gekoppelt ist und so ausgelegt ist, daß er das
Busbelegungssignal (358) erzeugt.
8. Computerbus nach einem der Ansprüche 3 bis 7, da
durch gekennzeichnet, daß der Vergleicher (306) einen Ein
gang besitzt, der zur Aufnahme einer Modulzugriffsnummer
ausgelegt ist, und daß das Statusgerät (302) derart ausge
legt ist, daß es ein inkrementiertes Ausgangssignal bereit
stellt, wobei das Statusgerät (302) weiterhin derart ausge
staltet ist, daß es einen Initialisierungswert (366) emp
fängt.
9. Computerbus nach einem der Ansprüche 3 bis 8, ge
kennzeichnet durch ein Hochzieh-Widerstand (322), der zwi
schen die Zuordnungsleitung (204) und Vcc geschaltet und so
ausgelegt ist, daß er die Zuordnungsleitung auf hohem Pegel
solange hält, bis der Transistor (316) eingeschaltet wird.
10. Computerbus nach einem der Ansprüche 3 bis 9, da
durch gekennzeichnet, daß die Zuordnungsleitung ein opti
sches Faserkabel (802) ist und daß die Zuordnungsschaltung
eine erste Photodiode (808), die zwischen Vcc und den
Transistor (316) geschaltet und so ausgelegt ist, daß sie
Licht abgibt, wenn der Transistor (316) durch das Busverfüg
barkeitssignal (364) durchgeschaltet wird,
eine zweite Photodiode (812), die zwischen Vcc und Mas sepotential geschaltet ist und derart ausgelegt ist, daß sie ein Busbelegungssignal mit niedrigem Pegel erzeugt, wenn die zweite Photodiode durch auf der optischen Faser- Zuordnungsleitung vorhandenes Licht eingeschaltet ist, und
optische Koppler (804) zum Einkoppeln von Licht von der ersten Photodiode in die optische Faser-Zuordnungsleitung und zum Auskoppeln von Licht aus der optischen Faser-Zuor dungsleitung zu der zweiten Photodiode aufweist.
eine zweite Photodiode (812), die zwischen Vcc und Mas sepotential geschaltet ist und derart ausgelegt ist, daß sie ein Busbelegungssignal mit niedrigem Pegel erzeugt, wenn die zweite Photodiode durch auf der optischen Faser- Zuordnungsleitung vorhandenes Licht eingeschaltet ist, und
optische Koppler (804) zum Einkoppeln von Licht von der ersten Photodiode in die optische Faser-Zuordnungsleitung und zum Auskoppeln von Licht aus der optischen Faser-Zuor dungsleitung zu der zweiten Photodiode aufweist.
11. Computerbus nach einem der vorhergehenden Ansprü
che, gekennzeichnet durch eine Mehrzahl von Zuordnungslei
tungen (704A, 704B), die mit jedem der Module gekoppelt sind,
um eine Zuordnungsentscheidung für Modulgruppen bereitzu
stellen, wobei die Zuordnungsschaltung weiterhin eine Grup
penzuordnungslogik (702A, 702B) besitzt, die mit zumindest
einer der Zuordnungsleitungen gekoppelt ist.
12. Verfahren zum Entscheiden der Konkurrenz zwischen
einer Vielzahl von Modulen bei einem Computerbus mit einer
Zuordnungsleitung′ mit den Schritten
- 1) Unterteilen des Busses in zeitlicher Hinsicht in Buszyklen, die als Buspaket-Zeitschlitze bekannt sind, wobei die Länge des Buspaket-Zeitschlitzes unter Einsatz eines Buspaket-Taktes definiert wird,
- 2) weiteres Unterteilen des Buspaket-Zeitschlitzes in eine Mehrzahl von Zugriffszeitschlitzen unter Einsatz eines Zugriffszeittakts, wobei die Frequenz des Zugriffszeittakts ein Mehrfaches der Frequenz des Buspaket-Taktes ist,
- 3) Vergleichen eines Prioritätswerts des Moduls mit einem die Anzahl von aufgetretenen Zugriffszeitschlitzen repräsentierenden Wert bei jedem Modul,
- 4) Erzeugen eines Vergleichs-Zeitimpulses, wenn der Prioritätswert gleich dem Wert ist, der die Anzahl von auf getretenen Zugriffszeitschlitzen repräsentiert,
- 5) Erzeugen eines Busverfügbarkeitssignals auf der Grundlage des Vergleichs-Zeitimpulses, der Busverfügbarkeit und eines Busanforderungssignals, und
- 6) Legen der Zuordnungsleitung auf niedrigen Pegel un ter Einsatz des Busverfügbarkeitssignals.
13. Verfahren nach Anspruch 12, gekennzeichnet durch
den Schritt der Aktualisierung des Prioritätswerts jedes
Moduls zu Beginn des Buspaket-Zeitschlitzes.
14. Verfahren nach Anspruch 12 oder 13, dadurch gekenn
zeichnet, daß der Buspaket-Zeitschlitz ausreichende Länge
besitzt, um eine Übertragung von Daten in Paketen zu ermög
lichen.
15. Computerbus zum Übertragen von Daten zwischen einer
Mehrzahl von mit ihm gekoppelten Modulen, mit
- a) einer Mehrzahl von Datenleitungen, die mit jedem Modul (208) gekoppelt sind und zur Übertragung von Bits von Wörtern betreibbar sind,
- b) einer einzigen Zuordnungsleitung (204), die mit je dem, Modul gekoppelt ist,
- c) einem Buspaket-Takt (206,226), der an jedes Modul an gelegt wird und zur Unterteilung des Busses in zeitlicher Hinsicht in Zyklusperioden, die als Buspaket-Zeitschlitze bezeichnet sind, betreibbar ist,
- d) einen an jedes Modul (208) angelegten Zugriffszeit takt (308), der zur Unterteilung der Buspaket-Zeitschlitze in Zugriffszeitschlitze einsetzbar ist, und
- e) einer Einrichtung (300) zum Treffen einer Entschei dung bei Konkurrenz zwischen den Modulen hinsichtlich des Zugriffs zum Computerbus, die mit dem Buspaket-Takt, mit der Zuordnungsleitung und mit dem Zugriffszeittakt gekop pelt ist.
16. Computerbus nach Anspruch 15, dadurch gekennzeich
net, daß die Einrichtung (300) zum Treffen der Entscheidung
- 1) eine erste Einrichtung zum Zählen von Impulsen des Zugriffszeittakts und zum Erzeugen eines ersten, die Anzahl der gezählten Impulse repräsentierenden Signals,
- 2) eine zweite Einrichtung zum Vergleichen des ersten Signals mit einer eine Priorität des Moduls repräsentieren den Zahl und zum Erzeugen eines Vergleichs-Zeitimpulses,
- 3) eine dritte Einrichtung zum Erzeugen eines Busver fügbarkeitssignals, die mit der zweiten Einrichtung gekop pelt ist und auf ein Busbelegungssignal und auf den Ver gleichszeitimpuls anspricht, und
- 4) eine vierte Einrichtung zum Legen der Zuordnungs leitung auf niedrigen Pegel aufweist, die mit der dritten Einrichtung und mit der Zuordnungsleitung gekoppelt ist und auf das Busverfügbarkeitssignal anspricht.
17. Computerbus nach Anspruch 16, dadurch gekennzeich
net, daß die Einrichtung (300) zum Treffen der Entscheidung
eine fünfte Einrichtung zum Initialisieren und Aktualisie
ren der Modulzyklusnummer aufweist, die mit der zweiten
Einrichtung gekoppelt ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/929,445 US5430848A (en) | 1992-08-14 | 1992-08-14 | Distributed arbitration with programmable priorities |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4326964A1 true DE4326964A1 (de) | 1994-02-17 |
Family
ID=25457872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4326964A Withdrawn DE4326964A1 (de) | 1992-08-14 | 1993-08-11 | Bus mit virtueller Paketbildung und verteilter Arbitration |
Country Status (8)
Country | Link |
---|---|
US (1) | US5430848A (de) |
JP (1) | JPH07295924A (de) |
CA (1) | CA2103780A1 (de) |
DE (1) | DE4326964A1 (de) |
DK (1) | DK92893A (de) |
FR (1) | FR2694828B1 (de) |
GB (1) | GB2269728B (de) |
SE (1) | SE9302626L (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4407795A1 (de) * | 1994-03-09 | 1995-09-14 | Sel Alcatel Ag | Verfahren und Schaltungsanordnung zur Koordination des Zugriffs mehrerer Nachrichtenquellen auf einen Bus |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4242133A1 (de) * | 1992-12-14 | 1994-06-16 | Siemens Ag | Anordnung mit mehreren Funktionseinheiten |
US5434850A (en) | 1993-06-17 | 1995-07-18 | Skydata Corporation | Frame relay protocol-based multiplex switching scheme for satellite |
US6771617B1 (en) | 1993-06-17 | 2004-08-03 | Gilat Satellite Networks, Ltd. | Frame relay protocol-based multiplex switching scheme for satellite mesh network |
US5729702A (en) * | 1993-06-21 | 1998-03-17 | Digital Equipment Corporation | Multi-level round robin arbitration system |
US6178475B1 (en) * | 1994-12-19 | 2001-01-23 | Advanced Micro Devices Inc. | Multimedia system employing timers to properly allocate bus access |
KR0155269B1 (ko) * | 1995-01-16 | 1998-11-16 | 김광호 | 버스 중재방법 및 그 장치 |
US5710891A (en) * | 1995-03-31 | 1998-01-20 | Sun Microsystems, Inc. | Pipelined distributed bus arbitration system |
US5572686A (en) * | 1995-06-05 | 1996-11-05 | Apple Computer, Inc. | Bus arbitration scheme with priority switching and timer |
DE69632289T2 (de) * | 1995-07-25 | 2005-05-19 | Jin-Young Cho | Verteiltes serielles schiedsverfahren |
US5894562A (en) * | 1996-10-28 | 1999-04-13 | Motorola, Inc. | Method and apparatus for controlling bus arbitration in a data processing system |
US5915102A (en) * | 1996-11-06 | 1999-06-22 | International Business Machines Corporation | Common arbiter interface device with arbitration configuration for centralized common bus arbitration |
US5948089A (en) * | 1997-09-05 | 1999-09-07 | Sonics, Inc. | Fully-pipelined fixed-latency communications system with a real time dynamic bandwidth allocation |
US6560682B1 (en) | 1997-10-03 | 2003-05-06 | Intel Corporation | System and method for terminating lock-step sequences in a multiprocessor system |
US6092137A (en) * | 1997-11-26 | 2000-07-18 | Industrial Technology Research Institute | Fair data bus arbitration system which assigns adjustable priority values to competing sources |
US6138200A (en) * | 1998-06-09 | 2000-10-24 | International Business Machines Corporation | System for allocating bus bandwidth by assigning priority for each bus duration time slot to application using bus frame and bus duration |
US6363445B1 (en) | 1998-10-15 | 2002-03-26 | Micron Technology, Inc. | Method of bus arbitration using requesting device bandwidth and priority ranking |
ES2267303T3 (es) * | 1998-10-30 | 2007-03-01 | Avocent Huntsville Corporation | Ordenador dividido. |
US6418494B1 (en) * | 1998-10-30 | 2002-07-09 | Cybex Computer Products Corporation | Split computer architecture to separate user and processor while retaining original user interface |
IL130039A (en) * | 1999-05-19 | 2003-07-06 | Eci Telecom Ltd | Cell bus and method for using same |
US6810422B1 (en) | 2000-01-14 | 2004-10-26 | Lockheed Martin Tactical Defense Systems | System and method for probabilistic quality of communication service determination |
DE10028370B4 (de) * | 2000-06-08 | 2005-05-04 | Siemens Ag | Verfahren zur Datenkommunikation zwischen mehreren MAC-Steuereinheiten |
GB2372916A (en) * | 2001-02-28 | 2002-09-04 | Motorola Inc | Dynamic bus arbitration for shared bus architecture |
US6886051B2 (en) * | 2002-03-28 | 2005-04-26 | Seagate Technology Llc | Device discovery method and apparatus |
US7024505B2 (en) * | 2002-03-28 | 2006-04-04 | Seagate Technology Llc | Fair arbitration method in a distributed arbitration system |
US7007138B2 (en) * | 2002-04-17 | 2006-02-28 | Matsushita Electric Industiral Co., Ltd. | Apparatus, method, and computer program for resource request arbitration |
US7321623B2 (en) | 2002-10-01 | 2008-01-22 | Avocent Corporation | Video compression system |
US7065595B2 (en) * | 2003-03-27 | 2006-06-20 | International Business Machines Corporation | Method and apparatus for bus access allocation |
US7478025B1 (en) * | 2003-04-18 | 2009-01-13 | Unisys Corporation | System and method to support dynamic partitioning of units to a shared resource |
US9560371B2 (en) | 2003-07-30 | 2017-01-31 | Avocent Corporation | Video compression system |
US7107376B2 (en) * | 2004-01-26 | 2006-09-12 | International Business Machines Corp. | Systems and methods for bandwidth shaping |
US7457461B2 (en) | 2004-06-25 | 2008-11-25 | Avocent Corporation | Video compression noise immunity |
US7783820B2 (en) * | 2005-12-30 | 2010-08-24 | Avocent Corporation | Packet-switched split computer having disassociated peripheral controller and plural data buses |
EP2016767A4 (de) | 2006-04-28 | 2014-08-13 | Avocent Corp | Dvc-delta-befehle |
FI122301B (fi) * | 2006-08-25 | 2011-11-30 | Atomia Oy | Piiri, menetelmä ja järjestely yksinkertaisen ja luotettavan hajautetun väyläarbitroinnin toteuttamiseksi |
DE102011007437A1 (de) * | 2010-11-15 | 2012-05-16 | Continental Teves Ag & Co. Ohg | Verfahren und Schaltungsanrodnung zur Datenübertragung zwischen Prozessorbausteinen |
US8984194B2 (en) * | 2011-01-21 | 2015-03-17 | Numia Medical Technology Llc | Multi-master bus arbitration and resource control |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4320502A (en) * | 1978-02-22 | 1982-03-16 | International Business Machines Corp. | Distributed priority resolution system |
US4229791A (en) * | 1978-10-25 | 1980-10-21 | Digital Equipment Corporation | Distributed arbitration circuitry for data processing system |
US4481580A (en) * | 1979-11-19 | 1984-11-06 | Sperry Corporation | Distributed data transfer control for parallel processor architectures |
US4412281A (en) * | 1980-07-11 | 1983-10-25 | Raytheon Company | Distributed signal processing system |
IT1129371B (it) * | 1980-11-06 | 1986-06-04 | Cselt Centro Studi Lab Telecom | Commutatore di messaggi a struttura distribuita su canale ad accesso casuale per colloquio a messaggi tra unita elaborative |
US4453551A (en) * | 1981-02-25 | 1984-06-12 | John Anderson | Apparatus for pattern recognition of ECG signals for detecting fibrillation |
US4442504A (en) * | 1981-03-09 | 1984-04-10 | Allen-Bradley Company | Modular programmable controller |
FR2513407B1 (fr) * | 1981-09-24 | 1987-01-16 | Finger Ulrich | Systeme d'arbitrage des demandes d'acces de plusieurs processeurs a des ressources communes, par l'intermediaire d'un bus commun |
US4453215A (en) * | 1981-10-01 | 1984-06-05 | Stratus Computer, Inc. | Central processing apparatus for fault-tolerant computing |
USRE33705E (en) * | 1982-02-24 | 1991-10-01 | Digital Equipment Corporation | Interchangeable interface circuit structure |
US4570217A (en) * | 1982-03-29 | 1986-02-11 | Allen Bruce S | Man machine interface |
US4560985B1 (en) * | 1982-05-07 | 1994-04-12 | Digital Equipment Corp | Dual-count, round-robin ditributed arbitration technique for serial buses |
US4556939A (en) * | 1983-04-29 | 1985-12-03 | Honeywell Inc. | Apparatus for providing conflict-free highway access |
US4637013A (en) * | 1983-07-05 | 1987-01-13 | Canon Kabushiki Kaisha | Token exchange data transmission system having system configuration discrimination |
US4766536A (en) * | 1984-04-19 | 1988-08-23 | Rational | Computer bus apparatus with distributed arbitration |
US4612542A (en) * | 1984-12-20 | 1986-09-16 | Honeywell Inc. | Apparatus for arbitrating between a plurality of requestor elements |
US4730268A (en) * | 1985-04-30 | 1988-03-08 | Texas Instruments Incorporated | Distributed bus arbitration for a multiprocessor system |
US4908749A (en) * | 1985-11-15 | 1990-03-13 | Data General Corporation | System for controlling access to computer bus having address phase and data phase by prolonging the generation of request signal |
US4785396A (en) * | 1986-01-28 | 1988-11-15 | Intel Corporation | Push-pull serial bus coupled to a plurality of devices each having collision detection circuit and arbitration circuit |
US4802161A (en) * | 1986-09-16 | 1989-01-31 | Gte Communication Systems Corporation | Packet bus interface |
US4785394A (en) * | 1986-09-19 | 1988-11-15 | Datapoint Corporation | Fair arbitration technique for a split transaction bus in a multiprocessor computer system |
JPH0366358A (ja) * | 1989-08-03 | 1991-03-22 | Terumo Corp | 生体信号計測装置 |
US4972313A (en) * | 1989-08-07 | 1990-11-20 | Bull Hn Information Systems Inc. | Bus access control for a multi-host system using successively decremented arbitration delay periods to allocate bus access among the hosts |
US5301677A (en) * | 1992-02-06 | 1994-04-12 | Cardiac Pacemakers, Inc. | Arrhythmia detector using delta modulated turning point morphology of the ECG wave |
US8340766B2 (en) * | 2010-10-07 | 2012-12-25 | St. Jude Medical, Atrial Fibrillation Division, Inc. | Method and system for identifying cardiac arrhythmia driver sites |
WO2013123549A1 (en) * | 2012-02-20 | 2013-08-29 | Adelaide Research & Innovation Pty Ltd | Method for identifying a cardiac region for ablation |
-
1992
- 1992-08-14 US US07/929,445 patent/US5430848A/en not_active Expired - Fee Related
-
1993
- 1993-08-02 GB GB9315988A patent/GB2269728B/en not_active Expired - Fee Related
- 1993-08-10 CA CA002103780A patent/CA2103780A1/en not_active Abandoned
- 1993-08-11 DE DE4326964A patent/DE4326964A1/de not_active Withdrawn
- 1993-08-12 DK DK092893A patent/DK92893A/da not_active Application Discontinuation
- 1993-08-13 JP JP5201652A patent/JPH07295924A/ja active Pending
- 1993-08-13 FR FR9309962A patent/FR2694828B1/fr not_active Expired - Fee Related
- 1993-08-13 SE SE9302626A patent/SE9302626L/ not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4407795A1 (de) * | 1994-03-09 | 1995-09-14 | Sel Alcatel Ag | Verfahren und Schaltungsanordnung zur Koordination des Zugriffs mehrerer Nachrichtenquellen auf einen Bus |
US5651008A (en) * | 1994-03-09 | 1997-07-22 | Alcatel N.V. | Method and circuit arrangement for coordinating access by a plurality of information sources to a bus |
Also Published As
Publication number | Publication date |
---|---|
DK92893D0 (da) | 1993-08-12 |
CA2103780A1 (en) | 1994-02-15 |
JPH07295924A (ja) | 1995-11-10 |
SE9302626D0 (sv) | 1993-08-13 |
GB2269728B (en) | 1996-06-12 |
SE9302626L (sv) | 1994-02-15 |
US5430848A (en) | 1995-07-04 |
GB9315988D0 (en) | 1993-09-15 |
DK92893A (da) | 1994-02-15 |
GB2269728A (en) | 1994-02-16 |
FR2694828B1 (fr) | 1995-03-31 |
FR2694828A1 (fr) | 1994-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4326964A1 (de) | Bus mit virtueller Paketbildung und verteilter Arbitration | |
DE3803326C2 (de) | ||
DE3546683C3 (de) | Verfahren zum Betreiben einer Datenverarbeitungsanlage | |
DE69733857T2 (de) | Steuerungsübertragungsbus für Netzwerkgeräte | |
DE69819303T2 (de) | Verfahren und vorrichtung zur übertragung von mehrfachkopien durch vervielfältigung von datenidentifikatoren | |
DE69533230T2 (de) | Verfahren und vorrichtung zur verbesserung der fehlertoleranz eines netzwerkes | |
DE3300261C2 (de) | ||
DE69433293T2 (de) | Netzwerkübertragungsverfahren für Systeme mit virtuellem Speicher | |
DE602005004529T2 (de) | Verfahren zum Verwalten einer Vielzahl von virtuellen Verbindungen zur gemeinsamen Nutzung auf einer Verbindungsleitung und Netzwerk zur Implementierung dieses Verfahrens | |
DE69937598T2 (de) | Auf Identifikationsmarken basierendes Paketvermittlungssystem | |
DE69722224T2 (de) | Anordnung für media-zugriffe in einem netz mit universellen vielfachzugriffsknoten und kollisionerkennungsknoten | |
WO1996003696A1 (de) | Arbitrierung bei verzögernder buskopplung | |
DE69632289T2 (de) | Verteiltes serielles schiedsverfahren | |
DE60125678T2 (de) | Vermittlungstelle mit Flusssteurungverwaltung | |
EP1940654B1 (de) | Verfahren zur Anbindung eines FlexRay-Teilnehmers mit einem Mikrocontroller an eine FlexRay-Kommunikationsverbindung über eine FlexRay-Kommunikationssteuereinrichtung, und FlexRay-Kommunikationssystem zur Realisierung dieses Verfahrens | |
EP1776807A1 (de) | Verfahren und vorrichtung zum zugriff auf daten eines botschaftsspeichers eines kommunikationsbausteins | |
DE1933577B2 (de) | Einrichtung zum Übertragen von Daten zwischen einem Rechner und mehreren ent fernt liegenden Anschlußgeraten | |
DE3424866A1 (de) | Verfahren und anordnung zur uebertragung von daten, insbesondere in einem flugzeug | |
EP1787204A1 (de) | Botschaftsverwalter und verfahren zur steuerung des zugriffs auf daten eines botschaftsspeichers eines kommunikationsbausteins | |
DE102005048581B4 (de) | Teilnehmerschnittstelle zwischen einem FlexRay-Kommunikationsbaustein und einem FlexRay-Teilnehmer und Verfahren zur Übertragung von Botschaften über eine solche Schnittstelle | |
DE60125611T2 (de) | Verfahren und Vorrichtung zur Kommunikation zwischen einem ersten und einem zweiten Netz | |
EP0408130A2 (de) | Anordnung zur Bitratenanpassung zweier Signale | |
WO2006015908A1 (de) | Verfahren zur speicherung von botschaften in einem botschaftsspeicher und botschaftsspeicher | |
DE102014114754A1 (de) | Eine Kommunikationsvorrichtung, die ein unterbrechendes Angleichungsmuster verwendet | |
EP3676995B1 (de) | Master eines bussystems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |