DE69431846T2 - System für asynchronen datentransfer und steuerung des quellenverkehrs - Google Patents
System für asynchronen datentransfer und steuerung des quellenverkehrsInfo
- Publication number
- DE69431846T2 DE69431846T2 DE69431846T DE69431846T DE69431846T2 DE 69431846 T2 DE69431846 T2 DE 69431846T2 DE 69431846 T DE69431846 T DE 69431846T DE 69431846 T DE69431846 T DE 69431846T DE 69431846 T2 DE69431846 T2 DE 69431846T2
- Authority
- DE
- Germany
- Prior art keywords
- bus
- users
- data
- clock
- frame
- 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 - Lifetime
Links
- 238000012546 transfer Methods 0.000 title claims description 31
- 230000002457 bidirectional effect Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 210000004027 cell Anatomy 0.000 description 58
- 238000010586 diagram Methods 0.000 description 13
- 210000005056 cell body Anatomy 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 241001522296 Erithacus rubecula Species 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000006727 cell loss Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000009432 framing Methods 0.000 description 2
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 230000023402 cell communication Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
- H04L12/4035—Bus networks with centralised control, e.g. polling in which slots of a TDMA packet structure are assigned based on a contention resolution carried out at a master unit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
- H04L2012/5609—Topology
- H04L2012/5613—Bus (including DQDB)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5614—User Network Interface
- H04L2012/5615—Network termination, e.g. NT1, NT2, PBX
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Bus Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
- Die Erfindung betrifft generell asynchrone Datenkommunikation zwischen einem Bus-Master und einer Mehrzahl von Bus- Benutzern. Genauer gesagt, betrifft diese Erfindung einen Bus-Rahmen und eine Bus-Struktur für ein asynchrones Datentransfersystem, welches es einem Bus-Master erlaubt, die Betriebscharakteristika des Busses zu ändern, ohne daß eine Notwendigkeit zum Ändern der Betriebscharakteristika der Bus- Benutzer besteht.
- Datenkommunikation zwischen einem Bus-Master und einer Mehrzahl von Bus-Benutzern ist in dem Stand der Technik gut bekannt. Solche Kommunikationssysteme umfassen im allgemeinen einen bidirektionalen Daten-Bus, an den der Bus-Master und sämtliche der Bus-Benutzer angeschlossen sind. Der Bus-Master erzeugt typischerweise mindestens ein Synchronisiertaktsignal, das von allen Bus-Benutzern an einem von dem Daten-Bus getrennten Taktbus empfangen wird. Eine Dateneinheit, die der Busbreite entspricht, kann zu dem Bus oder von dem Bus während eines Taktzyklus übertragen werden. Während sämtliche Bus-Benutzer gleichzeitig Daten von dem Bus übertragen können, kann während eines beliebigen gegebenen Taktzyklus nur ein Bus-Benutzer Daten auf den Bus übertragen. Der Bus- Benutzer (der der Bus-Master sein kann), der Daten auf den Bus überträgt, wird bezeichnet als "Zugriff" habend oder "aktiv" seiend. Um zu bestimmen, welchem Bus-Benutzer Zugriff während eines bestimmten Taktzyklus gegeben wird, wird ein Arbitrierungsverfahren eingeführt. Typischerweise wird jedem Bus-Benutzer ein Zeitschlitz in einer bestimmten Anzahl von Zeitschlitzen, genannt ein Daten-"Rahmen", zugewiesen. Der Rahmen, welcher den Bus-Zugriff bestimmt, kann mit einem oder mehreren Zeitschlitzen zum Austausch von Steuerinformationen zusätzlich zu den Zeitschlitzen, welche für den Datentransfer vorgesehen sind, versehen werden. Wenn die Taktzyklen von sämtlichen der Bus-Benutzer über den Taktbus empfangen werden, wartet jeder Bus-Benutzer auf seinen zugewiesenen Zeitschlitz und überträgt dann Daten auf den Bus während seines zugewiesenen Zyklus.
- Es wurde erkannt, daß insbesondere bei asynchronen Datenübertragungssystemen Bus-Benutzer während ihres zugewiesenen Zeitschlitzes nicht immer zur Datenübertragung auf den Bus bereit sind. Umgekehrt, bei anderen Bus-Benutzern sammeln sich möglicherweise Daten zur Übertragung auf den Bus schneller als der ihnen zugewiesene Zugriff auf den Rahmen es ihnen erlaubt, die Daten auf den Bus zu übertragen. Folglich ist es oft wünschenswert, den Zugriffsmechanismus so einzustellen, um manchen Benutzern im Vergleich mehr Zugriff als anderen zu geben; d. h. mehr Schlitze in dem Rahmen. Viele ausgefeilte Algorithmen sind entwickelt worden zum Zuweisen von Bus- Zugriff. Jedoch erfordern es diese bekannten Systeme typischerweise, daß jeder Bus-Benutzer sich des Arbitrierungsschemas bewußt ist, so daß jeder Bus-Benutzer sagen kann, wieviel Zugriff ihm zugewiesen worden ist.
- Im US-Patent Nummer 4,763,320, erteilt für Rudolph et al., ist ein System für asynchronen Datentransfer und Steuerung des Quellenverkehrs offenbart, das einen bidirektionalen Daten-Bus, einen bidirektional mit dem bidirektionalen Daten- Bus verbundenen Bus-Master und eine Mehrzahl von bidirektional mit dem bidirektionalen Daten-Bus verbundenen Bus- Benutzern umfaßt, wobei die Mehrzahl von Bus-Benutzern Schreibzugriff auf den bidirektionalen Daten-Bus durch den Bus-Master erteilt bekommen in Abhängigkeit von Anfragen, die von der Mehrzahl von Bus-Benutzern vorgenommen wurden, wobei die Anfragen durch die Mehrzahl der Bus-Benutzer während eines Anfragefelds eines Rahmens gemacht werden und der Schreibzugriff einem Bus-Benutzer durch den Bus-Master während eines Erteilungsfelds des Rahmens gestattet wird, wobei der Rahmen das Anfragefeld, ein Datenfeld und das Erteilungsfeld umfaßt. Die Benutzer und der Master kommunizieren entsprechend einem Datenrahmen, in welchem ein erster Abschnitt des Rahmens eine Anfragephase, ein zweiter Abschnitt des Rahmens eine Zuweisungsphase und ein dritter Abschnitt des Rahmens eine Datenphase ist. Benutzer, die Zugriff auf den Bus während der Anfragephase des Rahmens anfordern, wird ein Kanal (Zeitschlitz) während der Zuweisungsphase zugewiesen und übertragen Daten während eines zugewiesenen. Kanals der Datenphase.
- US-Patent Nummer 4,750,168, erteilt für Trevitt, offenbart ein Verfahren und eine Vorrichtung zum schnellen Zuteilen von Kanälen auf einem TDM-Bus. Die Vorrichtung umfaßt ein Taktvorspann, der ein Taktsignal und einen Rahmenvorspann aufweist, welcher Rahmenpulse trägt, wobei ein Puls für jede vorbestimmte Anzahl von Pulsen des Taktsignals auf dem Takt- Vorspann steht. Alle Benutzer an dem Bus überwachen Anfragen zur Bus-Benutzung und beenden die Übertragung, wenn ein Konflikt entsteht. Jeder Benutzer versucht weiterhin, sich einen freien Kanal zu sichern. Der Benutzer, der eine vollständige Anfrage ohne einen Konflikt überträgt, erhält Zugriff auf den Bus.
- Es ist daher ein Ziel, eine Bus-Struktur und ein Bus-Rahmen- Format für ein asynchrones Datentransfersystem bereitzustellen, das automatisch einstellbaren Bus-Zugriff für alle Bus- Benutzer bereitstellt.
- Es ist ein weiteres Ziel der Erfindung, ein asynchrones Datentransfersystem mit einer Bus-Struktur und einem Bus- Rahmen-Format zu schaffen, das von den Bus-Benutzern nicht verlangt, daß sie sich des zum Zuweisen des Bus-Zugriffs verwendeten Arbitrierungsschemas bewußt sind.
- Es ist ein weiteres Ziel der Erfindung, bei einem asynchronen Datentransfersystem ein Zugriffsidentifikationsverfahren zu schaffen, um zu bestimmen, welcher Bus-Benutzer Zugriff auf den Bus zu jedem beliebigen Zeitpunkt hat.
- Es ist weiter ein Ziel der Erfindung, ein asynchrones Datentransfersystem mit einer Bus-Struktur und einem Bus-Rahmen- Format zu schaffen, das es jedem der Bus-Benutzer erlaubt, Zugriff auf den Bus anzufordern, und dem Bus-Master erlaubt, Zugriff auf den Bus zu gewähren.
- In Übereinstimmung mit dieser Erfindung wird ein System für asynchronen Datentransfer und Steuerung des Quellenverkehrs des in dem US-Patent Nummer 4,763,320 offenbarten Typs bereitgestellt, welches dadurch gekennzeichnet ist, daß das System weiter umfaßt einen ersten Takt-Bus mit einem ersten Taktsignal einer ersten Frequenz, wobei der Bus-Master an den ersten Takt-Bus angeschlossen ist und die Mehrzahl von Bus- Benutzern an den ersten Takt-Bus angeschlossen sind und das erste Taktsignal empfangen, worin der Mehrzahl von Bus- Benutzern einzeln Schreibzugriff auf den bidirektionalen Daten-Bus durch den Bus-Master in Abhängigkeit von Anforderungen gestattet wird, die von der Mehrzahl von Bus-Benutzern gemacht worden sind, wobei die Anforderungen durch die Mehrzahl von Bus-Benutzern gemacht werden während eines Anforderungsfelds eines sich wiederholenden Bus-Rahmen-Formats und der Schreibzugriff einem einzelnen Bus-Benutzer durch den Bus-Master während eines Erteilungsfelds des sich wiederholenden Bus-Rahmen-Formats gestattet wird, wobei das sich wiederholende Bus-Rahmen-Format eine vorbestimmte Anzahl von Zyklen des ersten Taktsignals, ein Datenfeld und das Erteilungsfeld umfaßt, wobei die vorbestimmte Anzahl von Zyklen das Anforderungsfeld definiert, wobei eine der Anforderungen, die während des Anforderungsfelds eines ersten Rahmens gemacht werden, in dem Erteilungsfeld des ersten Rahmens gestattet wird zum Schreibzugriff auf das Datenfeld eines zweiten Rahmens.
- Gemäß einer alternativen Ausführungsform der Erfindung, wird ein zusätzliches Daten-Taktsignal auf einem dritten Daten-Bus bereitgestellt durch den Bus-Benutzer, welchem Bus-Zugriff gestattet worden ist. Dieser Datentakt hat eine höhere Rate als der Systemtakt und wird gesteuert durch den Zugriff ha benden Bus-Benutzer während des folgenden Datenübertragungsabschnitts des Rahmens. Die Verwendung des zusätzlichen Datentakts ist insbesondere bei Hochgeschwindigkeitsanwendungen zweckmäßig, da die Takt- und Datensignale aus derselben Quelle generiert werden, und dadurch ein Versatz auf wirksame Weise vermieden werden kann. Um einen möglichen Konflikt zwischen Signalen auf dem Daten-Bus, die von dem Bus-Master und dem Zugriff habenden Bus-Benutzer gesteuert werden, zu vermeiden, weist das zusätzliche, von dem Zugriff habenden Bus- Benutzer gesteuerte Daten-Taktsignal eine erhöhte Taktrate (bezogen auf den Systemtakt) auf. Dies stellt sicher, daß die Datenübertragung beendet ist, bevor der Bus-Master seine Steuerinformation auf den Datenbus ausgibt.
- Weitere Ziele und Vorteile der Erfindung werden Fachleuten bei Bezugnahme auf die ausführliche Beschreibung in Verbindung mit den beigefügten Figuren deutlich werden.
- Fig. 1 ist ein schematisches Diagramm einer ersten Ausführungsform der Bus-Struktur gemäß der Erfindung;
- Fig. 2 ist ein schematisches Diagramm einer zweiten Ausführungsform der Bus-Struktur gemäß der Erfindung;
- Fig. 3 ist eine Darstellung, die einen beispielhaften Bus- Rahmen gemäß der Erfindung zeigt;
- Fig. 4 ist ein Timing-Diagramm, das drei Taktsignale gemäß der alternativen Ausführungsform der Erfindung zeigt;
- Fig. 5 ist ein Diagramm ähnlich zu Fig. 1, das eine dritte Ausführungsform der Erfindung zeigt;
- Fig. 6 ist ein schematisches Diagramm der Struktur von Bus- Erweiterungen gemäß der Erfindung;
- Fig. 7 ist eine Darstellung ähnlich zu Fig. 3, die einen beispielhaften Bus-Rahmen gemäß der dritten Ausführungsform der Erfindung zeigt;
- Fig. 8 ist eine Darstellung, die ein Format für eine Bus- Zugriffs-Prioritätscodierung zeigt;
- Fig. 9 ist ein Timing-Diagramm, das vier Taktsignale gemäß der dritten Ausführungsform der Erfindung zeigt;
- Fig. 10 ist ein Diagramm ähnlich zu Fig. 5, das eine Rückplatinen-Takt-Implementierung zeigt; und
- Fig. 11a bis 11g sind Darstellungen, die verschiedene Adreß- Strukturen gemäß der dritten Ausführungsform der Erfindung zeigen.
- Nun bezugnehmend auf Fig. 1, umfaßt eine erste Ausführungsform der Bus-Struktur gemäß der Erfindung einen Bus-Master 10 und eine Mehrzahl von Bus-Benutzern 12, 14, 16, die alle mit einem bidirektionalen Daten-Bus 18 verbunden sind, einen Systemtakt-Bus 20 und einen Rahmentakt-Bus 22. Obgleich nur drei Bus-Benutzer 12, 14, 16 dargestellt sind, so versteht es sich, daß viele Bus-Benutzer mit den Bussen 18, 20, 22 verbunden werden können, wie durch die gestrichelten Linien in Fig. 1 angedeutet ist. Wie bereits oben erwähnt, ist der Daten-Bus 18 bidirektional, um es jedem der Bus-Benutzer 12, 14, 16 und dem Bus-Master 10 zu ermöglichen, Daten zu dem Daten-Bus 18 hin oder von dem Daten-Bus 18 her zu übertragen. Die Taktbusse 20, 22 sind durch den Bus-Master 10 gesteuert und sind für all die Bus-Benutzer 12, 14, 16 nur lesbar ("read only"). Der Daten-Bus 18 ist vorzugsweise 32 Bit breit und erlaubt die Übertragung von zwei 16-Bit-Worten (4 Bytes) während eines einzigen Zyklus des Systemtakts 20.
- Gemäß einer zweiten Ausführungsform der Erfindung, welche für Hochgeschwindigkeitsanwendungen bevorzugt ist, umfaßt die Bus-Struktur einen Datentakt-Bus 24, wie in Fig. 2 dargestellt ist. Der Datentakt-Bus 24 ist gesteuert durch den Bus- Benutzer 12, 14, 16, dem Zugriff auf den Daten-Bus gewährt ist, und wird durch alle anderen Bus-Benutzer 12, 14, 16 gelesen. Wie es nachfolgend detaillierter erläutert werden wird, ist der zusätzliche Datenbus 24 mit einer höheren Frequenz als der Systemtakt-Bus 20 gesteuert, um die Veränderung der Verzögerungszeit zwischen den Daten, die auf den Bus durch den Zugriff habenden Benutzer geschrieben werden, und ihrem entsprechenden Taktsignal zu verringern.
- Gemäß der Erfindung wird die Struktur des Datentransfers zwischen den Bus-Benutzern 12, 14, 16 oder zwischen einem Bus- Benutzer und dem Bus-Master 10 durch einen Bus-Rahmen erreicht. Bei der bevorzugten Ausführungsform der Erfindung besteht der Rahmen aus sechzehn Zyklen des Systemtakts 20. Der erste Zyklus des Rahmens ist gekennzeichnet durch ein aktives Signal auf dem Systemrahmenbus 22. Ein erfindungsgemäßer Rahmen ist beispielhaft in Fig. 3 dargestellt.
- Bevor es nun um Fig. 3 geht, ist sich zu vergegenwärtigen, daß das Datenübertragungsformat des Busses dazu ausgelegt ist, die Übertragung der Inhalte von ATM-(asynchroner Transfer-Modus)Zellen aufzunehmen, wie sie bei BISDN-("broadband integrated services digital network")Systemen verwendet werden. Der erste Zyklus, der von den Bus-Benutzern gesteuert ist, enthält das "Anforderungs"-Feld. Der zweite Zyklus, gesteuert durch einen Bus-Benutzer, enthält eine optionale Präfix für die ATM-Zelle, die für systemspezifische Zwecke verwendet werden kann, wie z. B. ein Routing-Präfix für interne Zellen, wie es bei manchen ATM-Switches verwendet wird. Der dritte Zyklus, der von dem Bus-Benutzer gesteuert ist, enthält die ersten 4 Bytes der ATM-Zelle, enthaltend Zahlenfelder für Zellen-VPI (virtual path indicator) und -VCI (virtual circuit indicator) und Felder für die PTI (payload type indicator) und CLP (cell loss priority). Die nächsten 12 Zyklen, die ebenso durch den Bus-Benutzer gesteuert sind, enthalten die ATM-Zellen-Nutzdaten von 48 Bytes (ATM cell payload). Der Endzyklus des Bus-Rahmens wird gesteuert durch den Bus-Master und enthält Informationen dazu, welchem Benutzer der Bus- Zugriff während des nächsten (folgenden) Bus-Rahmens gestattet ist.
- Genauer gesagt und wie auch aus Fig. 3 ersichtlich, übertragen die Bus-Benutzer während des ersten Taktzyklus (0) des Rahmens eine "Anforderung" zum Zugriff auf den nächsten folgenden Rahmen. Die Anforderungen werden von jedem Benutzer, der Zugriff auf eine Leitung des Daten-Busses während des Taktzyklus (0) hat und einen Marker setzt (d. h. eine "1" and den Daten-Bus bringt), übertragen, sofern der Benutzer eine Anforderung macht. Die Kombination der einzigartigen Anforderungssignale von jedem der, beispielsweise 32, Bus-Benutzer auf dem Daten-Bus ergibt ein Doppelwort, das anzeigt, welche der Bus-Benutzer eine Anforderung vornehmen. Z. B., wenn es 32 Bus-Benutzer sind und alle eine Anforderung vornehmen, dann wird das Doppelwort nur "1" enthalten. Es versteht sich, daß, wenn nur manche oder keiner der Benutzer eine Anforderung vornehmen, das Doppelwort eine andere Form annimmt. Wenn es mehr als 32 Bus-Benutzer sind und der Daten-Bus 32 Bit breit ist, können unterschiedliche Schemen verwendet werden, um korrekten Zugriff der Benutzer auf den Daten-Bus zu garantieren. Diese Schemen werden unten diskutiert. Es versteht sich ferner, daß anstatt nur Zugriff auf eine Leitung zu haben, jeder Benutzer auf alle Leitungen während des Anforderungszyklus zugreifen kann, daß jedoch alle bis auf die bestimmte interessierende Leitung auf Null gesetzt sind. Da bei typischen Bus-Ausführungen Interfaces mit offenem Transistor verwendet werden, die auf einen Zustand hoher Spannung für logisch Null gebracht werden, bewirkt das Schreiben einer Eins auf eine zugewiesene Leitung eines Benutzers das Belegen der Leitung mit einem niedrigen Spannungswert als logische Eins. Zurückkehrend zu dem Bus-Rahmen-Format nach Fig. 3, ist ein zweiter Taktzyklus (1) des Rahmens optional vorgesehen für ein internes Zellen-Routing-Feld, wie vorstehend beschrieben. Der dritte Taktzyklus (2) des Rahmens enthält die Informationsfelder des ATM-Zellenkopfs, wie es durch den oben genannten BISDN-Standard beschrieben ist. Basierend im wesentlichen auf den BISDN-Standard umfaßt der ATM-Zellenkopf entweder ein 4-Bit-Flußkontrollfeld ABCD mit einem 8-Bit- Indikator für den virtuellen Pfad-Indikator VPI, einen 16- Bit-Indikator für den virtuellen Kanal VCI, einen 3-Bit- Indikator für den Nutzdatentyp und einen Indikator mit einem Bit für CLP (cell loss priority), oder eine 12-Bit-VPI, 16- Bit-VCI, 3-Bit-PTI und eine 1-Bit CLP.
- Der vierte Taktzyklus (3) bis zum fünfzehnten Taktzyklus (14) des Bus-Rahmens enthält die Nutzlast ("payload") der ATM- Zelle. Da jeder Taktzyklus das Aufbringen eines Doppelworts (32 Bits) erlaubt, welches tatsächlich 4 Bytes auf dem Daten- Bus entspricht, ermöglichen die 12 Taktzyklen das Aufbringen von 48 Bytes von Daten auf den Bus durch den Bus-Benutzer, der die vorhergehende Gestattung erhalten hat.
- Der letzte Taktzyklus (15) des Rahmens enthält Informationen von dem Bus-Master, die denjenigen Bus-Benutzer identifiziert, der Zugriff auf den nächsten folgenden Rahmen haben wird. In einem System mit 32 Bus-Benutzern wird der Bus- Benutzer, der als nächstes Zugriff auf den Rahmen hat, identifiziert mittels einer Gestattungsnummer (Grant Num) von 5 Bit. Die Gültigkeit der Gestattungsnummer wird sichergestellt durch ein Gestattungsfreigabe-Bit (grant enable bit - GEN). In einem System mit mehr als 32 Bus-Benutzern werden zusätzliche Systemsteuer-Bits verwendet, um die Seiten- oder Gruppennummer zu identifizieren, die zu dem oben beschriebenen Anforderungsfeld gehört.
- Wie vorstehend bereits gesagt, können verschiedene Anforderungsschemen verwendet werden. Z. B. können Anforderungen seitenweise erfolgen, um mehr als 32 Bus-Benutzer unterzubringen. Bei seitenweisen Anforderungen gibt der Bus-Master eine bestimmte Seite während des letzten Zyklus von jedem aufeinanderfolgenden Rahmen frei, und die der freigegebenen Seite zugehörigen Bus-Benutzer werden Anforderungen während des ersten Zyklus des nächsten folgenden Rahmens vornehmen. Eine nächste Seite wird freigegeben während des nächsten Rahmens usw., bis alle Seiten freigegeben worden sind und der Vorgang wieder von vorne beginnt. Zusätzlich kann das Anforderungsfeld segmentiert sein, um sowohl seitenweise Anforderungen und direkte Anforderungen aufzunehmen, so daß Bus- Benutzer, die Priorität haben, nicht zu warten brauchen bis sie aufgerufen werden. Alternativ kann das Direktanforderungssegment des Anforderungsfelds einer Seitenanforderung zugeordnet sein, worin all die Bus-Benutzer, die einer bestimmten Seite zugeordnet sind, anfordern können, daß ihre Seite außerhalb der Reihe freigegeben wird. Den Fachleuten wird es aufgrund der vorstehend gegebenen Erläuterungen ohne weiteres klar sein, daß viele verschiedene Anforderungsfelder ausgebildet sein können, um die Ziele der Erfindung zu berücksichtigen, worin jeder Bus-Benutzer unabhängig voneinander Zugriff auf den Bus wie gewünscht anfordern kann.
- Wie vorstehend erwähnt, ist der bevorzugte Bus-Rahmen gemäß der Erfindung innerhalb von 16 Zyklen des Systemtakts (15, wenn das interne Routing-Feld nicht verwendet wird) beendet, wobei der Rahmen beginnt mit einem aktiven Signal des Systemrahmen-Taktbusses. Fig. 4 zeigt ein Timing-Diagramm, das Zyklen des Systemzellen-Rahmentakt-Busses im Vergleich zu Zyklen des Systemtakt-Busses darstellt. Fig. 4 zeigt ferner die Zyklen des Datentakt-Busses, der eine höhere Frequenz als der Systemtakt-Bus hat, gemäß der alternativen Ausführungsform der Erfindung, die vorstehend unter Bezugnahme auf Fig. 2 beschrieben ist. Wie aus Fig. 4 zu ersehen ist, beginnen die Datentakt-Buszyklen nach dem 4. Zyklus (3) des Rahmens und dauern für 12 Zyklen mit einer höheren Rate als der Systemtakt an, so daß sie vor dem Ende des 15. Zyklus (14) des Systemtakts enden. Tatsächlich umfaßt der von dem Zugriff habenden Benutzer gesteuerte Datentakt-Bus vorzugsweise zwölf Zyklen zwischen den Taktzyklen 4 und 13 (einschließlich) des Systemtakts. Es versteht sich aus der vorgehenden Erläuterung des Rahmens, daß während dieser zwölf Zyklen des von dem Zugriff habenden Benutzer gesteuerten Datentakt-Busses der Zugriff habende Benutzer die 48 Bytes auf den Daten-Bus überträgt. Das Verwenden des Datentakts zum Steuern der Übertragung dieser 48 Bytes vermindert die relative Verschiebung zwischen den Daten auf dem Daten-Bus und ihrem Taktsignal. Mit anderen Worten, der Takt-/Daten-Versatz wird auf einen Minimum gehalten. Durch Erhöhen der Datenrate des von dem Benutzer gesteuerten Datentakt-Bus wird die Gefahr einer Datenkollision zwischen ATM-Zellen-Daten, die von dem Zugriff habenden Benutzer stammen, und den Steuerdaten, die auf dem Daten-Bus durch den Bus-Master gelegt werden, vermieden.
- Für Fachleute versteht es sich, daß während der Zeit zwischen dem ersten Zyklus des Rahmens und dem letzten Zyklus des Rahmens der Bus-Master eine Entscheidung fällen muß, welchem Bus-Benutzer Zugriff auf den nächsten Rahmen zu gewähren ist. Wie bereits erwähnt, ist es möglich, daß sämtliche Bus- Benutzer gleichzeitig Zugriff anfordern. Gemäß der Erfindung werden die Anforderungen, die von dem Bus-Benutzern während des ersten Zyklus des Rahmens gemacht werden, zwischengespeichert ("latched") durch den Bus-Master, so daß die Bus- Benutzer ihre Anforderungen nicht zu wiederholen brauchen, während sie auf die Zugriffsgestattung warten. Darüber hinaus können Bus-Benutzer eine gesonderte Anforderung entsprechend zu der Anzahl von Zellen, die mit zu sendenden Daten gefüllt sind, registrieren. Dadurch kann die Anzahl von registrierten Anforderungen von jedem Bus-Benutzer verwendet werden, um dem Bus-Master zu zeigen, wieviele Daten der Bus-Benutzer zu senden hat.
- Die Entscheidung des Bus-Masters zum Gewähren von Zugriff auf dem Bus-Rahmen wird vorgenommen entsprechend einem Arbitrierungs-Algorithmus. Jeder von zahlreichen Arbitrierungs- Algorithmen kann verwendet und sie können, wenn gewünscht, die Menge an Daten, die ein Bus-Benutzer zu senden hat, die Priorität, die einem Bus-Benutzer gegeben ist, die Häufigkeit von Zugriffsanforderungen durch einen Benutzer etc. berücksichtigen. Darüber hinaus kann durch Speichern der Inhalte des Anforderungsfelds über einige Zeit ein mit dem Bus-Master verbundener Prozessor sinnvolle Entscheidungen bezüglich des Gewährens von Zugriff basierend auf den letzten Verkehrsmustern auf dem Bus treffen. Fachleute werden anerkennen, daß Bus-Benutzer sich nicht bewußt zu sein brauchen, welcher Algorithmus die Entscheidung des Bus-Masters bestimmt, welchem Bus-Benutzer Zugriff bei dem nächsten Bus-Rahmen zu geben ist. Das sequentielle Anfordern durch Bus-Benutzer und Gestatten durch den Bus-Master gemäß der Erfindung vermeidet die Notwendigkeit zum Rekonfigurieren der Bus-Benutzer jedesmal, wenn das Arbitrierungsverfahren geändert wird. Die Verwendung eines zentralen Bus-Masters mit der Fähigkeit zur Busarbitrierung wie oben beschrieben, erlaubt eine schnelle Veränderung der betrieblichen Charakteristiken des Bus- Systems von einem einzigen Ort aus, ohne Notwendigkeit, irgendeinen der anderen Bus-Benutzer zu informieren.
- Beispiele für Bus-Arbitrierungsalgorithmen, die verwendet werden können, umfassen ein Round-robin-Protokoll, ein modifiziertes Round-robin-Protokoll, ein Kreis-Prioritäts- Protokoll, ein Quellenraten-Steuerungs-Protokoll, etc. In ei nem Round-robin-Protokoll werden Bus-Benutzern sequentielle Prioritätszahlen zugewiesen und die Anforderungen werden gestattet in der Reihenfolge der Prioritätszahlen. Z. B., wenn die Bus-Benutzer 1, 3, 5 und 9 Zugriff während eines ersten Rahmens anfordern und Bus-Benutzer 2, 4 und 6 Zugriff in einem zweiten Rahmen anfordern, dann wird ihnen Zugriff gestattet in der Reihenfolge 1, 2, 3, 4, 5, 6, 9. Wenn während eines dritten Rahmens ein Bus-Benutzer 8 Zugriff anfordert, wird ihm der Zugriff gewährt bevor dem Bus-Benutzer 9 Zugriff gewährt wird, obwohl der Bus-Benutzer 9 zuerst Zugriff angefordert hat. Nachdem Zugriff gestattet ist, wird der Benutzer an das Ende der Zugriffsliste gesetzt. Ein modifiertes Roundrobin-Protokoll folgt demselben Verfahren mit der Ausnahme, daß es eine Prioritätsreihenfolge basierend, darauf hinzugefügt, wer zuerst anfordert. In dem oben genannten Beispiel würde Zugriff gestattet in der Reihenfolge 1, 3, 5, 9, 2, 4, 6. Wenn während eines dritten Rahmens der Bus-Benutzer 8 Zugriff anfordert, wird ihm nach dem Bus-Benutzer 6 Zugriff gewährt. Wiederum, nachdem Zugriff gewährt worden ist, wird der Benutzer an das Ende Zugriffsliste gesetzt. Das Round-robin- Protokoll kann implementiert sein unter Verwendung eines "circular priority coder", der den Bus-Benutzern Zugriff gemäß einer vorbestimmten sequentiellen Priorität gestattet. Nachdem einem Bus-Benutzer Zugriff gestattet worden ist, wird ihm die niedrigste Priorität gegeben und die Priorität von allen anderen Bus-Benutzern wird sequentiell um einen Schritt erhöht. Da der Bus-Master den Zugriff von jedem Bus-Benutzer alleine steuert, kann ein beliebiges Protokoll verwendet werden, um die Priorität des Zugriffs zu bestimmen. Wie vorstehend erwähnt, kann der Bus-Master Informationen von Bus- Beobachtungs-Einrichtungen beziehen, um ein Quellenraten- Protokoll auszuführen, bei welchem die Priorität des Zugriffs bestimmt wird nach der Anzahl von Anforderungen, die von jedem Bus-Benutzer vorgenommen worden sind. Z. B. kann einem Bus-Benutzer, der häufig Anforderungen vorgenommen hat, eine hohe Priorität zugewiesen werden, und einem Bus-Benutzer, der nur wenig Anforderungen vorgenommen hat, eine niedrige Priorität zugewiesen werden. Während die Aktivität des Busses überwacht wird, können die Prioritätszuweisungen geändert werden.
- Nun der Fig. 5 zuwendend, umfaßt eine dritte Ausführungsform der Erfindung einen Timing-Master und Bus-Arbitrierer 100 und eine Mehrzahl von Benutzern 112, 114, 116, die mit einem bidirektionalen Daten-Bus 118, einem Takt-Bus 120 und einem Rahmen-Bus 122 verbunden sind. Die Benutzer 112, 114, 116 sind ferner verbunden mit einem bidirektionalen Bestätigungs- (ACK)Bus 126 und einem bidirektionalen Überlastungs- (CONJ)Bus 128. ATM-Zellen können von jedem beliebigen Benutzer zu einem beliebigen anderen Benutzer übertragen werden oder zu einer beliebigen Anzahl von anderen Benutzern (multicast). Ein Benutzer nach dem anderen sendet eine Zelle auf den Bus, die von dem Bus durch jeden Benutzer oder mehrere Benutzer gelesen werden kann. Der Bus-Timing-Master bildet die Quelle für den Systemübertragungstakt und das Bus-Rahmen-Signal, welche beide verwendet werden, um sämtlich Bus-Zugriffsoperationen zu synchronisieren. Der Bus-Zugriff ist gesteuert durch den Bus-Arbitrierer. Benutzer fordern Bus-Zugriff von dem Bus- Arbitrierer an. Der Bus-Arbitrierer nimmt Zugriffsanforderungen an, bringt sie wie erforderlich in eine Reihenfolge und gibt Gestattungen aus. Wenn eine Gestattung erteilt wird, ist es an einem Benutzer, eine Zelle auf den Bus zu senden. Sämtliche Gestattungen sind nur für eine einzige Zellen-Zeit auf dem Bus. Wenn einem Benutzer Zugriff durch den Bus- Arbitrierer gestattet wird, wird er seine Annahme durch Belegen der ACK-Leitung während der Gestattungsphase des laufenden Bus-Zyklus anzeigen. Örtliche Bedingungen an dem angesprochenen Anschluß, wie z. B. eine Ballung, kann dazu führen, daß ein ACK nicht erzeugt wird. Der sendende Bus- Benutzer kann eine Ballungsanzeige an dem Ziel ermitteln durch Abtasten eines belegten CONJ-Signals auf der CONJ- Leitung während der Gestattungsphase desselben Rahmens, in welchem die Zelle gesendet worden war.
- Der Bus kann ausgeführt sein auf einer einzigen Karte und daher kann eine Gleichförmigkeit des Entwurfs erreicht werden. Als eine Folge kann die Betriebsgeschwindigkeit einer Implementation auf einer einzigen Karte verhältnismäßig hoch sein. Z. B. kann ein Switch, der 8 SONET/SDH 155,52 MHz-Leitungen vollständig miteinander verbindet, auf einer einzigen Karte mit einer Bus-Betriebsgeschwindigkeit von etwa 48 MHz implementiert sein. Die häufigste physische Implementation des Busses ist die mit mehreren Einsteckkarten in eine Rückplatine. Das wäre das Modell für die meisten Terminal-Multiplexer oder Hinzufügungs-/Entnehmungs-("add/drop")Multiplexers. Diese Systeme werden im allgemeinen mit Geschwindigkeiten unterhalb derjenigen betrieben, die bei einer Implementierung auf einer einzigen Karte erreichbar sind, da variierende Lasten und Rückplatinen-Effekte bei dieser Ausführung mit auftreten. Es ist zu erwarten, daß SONET/SDH 155,52 und 622,04 MHz Hinzufügungs-/Entnehmungs-Multiplexer oder ringstrukturierte Hinzufügungs-/Entnehmungs-Multiplexer implementiert werden mit Bus-Implementierungen, die nur mit oder unter 30 MHz laufen.
- Eine der Hauptanwendungen des Busses gemäß der Erfindung ist das Konzentrieren des Verkehrs von Benutzer mit niedriger Rate bis hin zu 155,52 oder 622,04 MHz-Leitungen zum Zurückverbinden zu einem ATM-Schaltsystem. Insbesondere für T1- und E1-Anwendungen kann die Anzahl von Leitungen, die mit dem Multiplexer verbunden werden können, größer sein als für eine einfache Rückplatine zuträglich ist. Daher sieht die Erfindung Bus-Erweiterungen wie die in Fig. 6 dargestellten vor. Wie gezeigt, wird ein Bus 101 als das Hauptbus-Segment benutzt. Andere Busse 201, 301 werden als Erweiterungs-Segmente bezeichnet. Der Betrieb von jedem Segment ist logisch unabhängig von den übrigen Segmenten. D. h., daß jedes Segment seine eigene Taktquelle und seinen eigenen Bus-Arbitrierer aufweist. Bus-Benutzer können an ein beliebiges Bus-Segment angeschlossen sein. Die Verbindung von einem Erweiterungsbus zu dem Hauptbus besteht durch zwei Bus-Benutzer, die einander Rücken-an-Rücken verbunden sind, wobei einer mit dem Hauptbus verbunden ist, so daß die Verbindung zwischen dem Hauptbus 101 und dem Erweiterungsbus 201 durch die Bus-Benutzer 111 und 211 geführt ist. In ähnlicher Weise ist die Verbindung zwischen dem Hauptbus 101 und dem Erweiterungsbus 301 durch die Bus-Benutzer 115 und 315 geführt. Ein Doppelzugriffs- Mechanismus wird verwendet beim logischen Verbinden der Erweiterungsbusse mit dem Hauptbus. Ein Benutzer auf einer Erweiterung fordert erst an und erhält dann Zugriff auf den Erweiterungsbus, an den er angeschlossen ist. Der Benutzer, der als Verbindung mit dem Hauptbus dient, nimmt alle Zellen an, die für Benutzer bestimmt sind, die nicht an diesen Erweiterungsbus angeschlossen sind, und leitet sie weiter zu seinem verbundenen Benutzer an dem Hauptbus. Dieser Hauptbus- Benutzer fordert dann Zugriff auf den Hauptbus, um die Zelle von dem Erweiterungsbus weiterzuleiten.
- Mehrere unterschiedliche Möglichkeiten für Zellen-Routing werden durch die Bus-Struktur gemäß der Erfindung unterstützt. Ein paar Routing-Möglichkeiten und diese unterstützende Zell-Adressierungsmodi sind:
- Adressierungsmodus Routing
- Einfache Adresse, Daten Von einem beliebigen Benutzer an einem beliebigen Bus-Segment zu einem beliebigen Benutzer an einem beliebigem Segment
- Einfach Adresse, Steuerung Von der Steuerungseinheit eines beliebigen Bus-Benutzers an einem beliebigen Bus-Segment zu der Steuerungseinheit von einem beliebigen Bus- Benutzer an einem beliebigen Segment
- Einfache Adresse, Loopback Von der Steuerungseinheit von einem beliebigen Bus-Benutzer an einem beliebigen Bus- Segment, durch einen beliebigen spezifizierten Bus- Benutzer zurück zu der Steuerungseinheit des ursprünglichen Bus-Benutzers an einem beliebigem Segment
- Mehrfache Adressen, Daten Von einem Bus-Benutzer an einem beliebigen Bus-Segment zu einem beliebigen Satz von Bus- Benutzern an beliebigen Bus- Segmenten
- Mehrfache Adressen, Steuerung Von der Steuerungseinheit eines Bus-Benutzers an einem beliebigen Bus-Segment zu den Steuerungseinheiten eines beliebigen Satzes von Bus- Benutzern an beliebigen Bus- Segmenten
- Rundruf, Daten Von einem beliebigen Bus- Benutzer an einem beliebigen Bus-Segment zu sämtlichen Bus- Benutzern an allen Bus- Segmenten
- Rundruf, Steuerung Von der Steuerungseinheit eines beliebigen Bus-Benutzers an einem beliebigen Bus- Segment an die Steuerungseinheiten von sämtlichen Benutzern an allen Segmenten
- Diese Möglichkeiten erlauben Zellen-Kommunikation einschließlich Benutzerdaten und Bus-Steuerinformationen. Spezifische Adreßmodi werden im Detail nachfolgend erläutert.
- In jeder Ausführung eines Bus-Systems wird angenommen, daß es zumindest einen Systemsteuerprozessor gibt, der für den gesamten Systembetrieb verantwortlich ist. Darüber hinaus gibt es möglicherweise individuelle Modulprozessoren, mit denen die Benutzer versehen sind. Daher besteht ganz allgemein der Bedarf nach einer bestimmten Form von Intra-System-Kommunikationen zwischen dem Systemprozessor und dem Modulprozessoren. Bus-Implementationen können entweder einen getrennten Inter-Prozessor-Bus für diese Intra-System-Kommunikation aufweisen oder, wenn gewünscht, können den Bus selbst benutzen. Die Zell-Routing-Typen wie oben beschrieben, die vom Datentyp sind, sind für diese Systemkommunikationen und Steuerungszwecke gedacht.
- Das Format von allen auf den Bus gegebenen Zellen folgt einem vorgegebenen Rahmen wie oben beschrieben unter Bezugnahme auf Fig. 3. Bei der Ausführungsform der Erfindung, wie sie in Fig. 5 und 6 dargestellt ist, ist jedoch ein modifiziertes Zellenformat, wie das in Fig. 7 dargestellte, wünschenswert.
- Wie in Fig. 7 dargestellt ist, ist das Format von allen auf den Bus gegebenen Zellen eine 16-Zyklus-Struktur. Ein 32-Bit- Wort wird mit jedem Zyklus des Systemtransfer-Takts übertragen. Es gibt drei Phasen für den Zellenbus-Zyklus: Anforderung, Zellkörper und Gestattung. Während des Anforderungs- Bus-Zyklus können Bus-Benutzer Zugriff auf den Bus anfordern. Zugriffsanforderungen werden vorgenommen, indem ein Benutzer ein oder zwei zugewiesene Bits auf dem Bus belegt. Jedem Bus- Benutzer sind ein oder zwei bestimmte Bit-Positionen in dem 32-Bit-Bus-Wort zugewiesen. M Benutzern werden 2 Bits auf dem Bus zugewiesen. Die verbleibenden 32-2M Bit-Positionen werden jeweils einer Bit-Position zugewiesen. Der Buszugriff wird gesteuert durch den Bus-Arbitrierer auf Basis einer Benutzerzugriffs- Anforderungspriorität. Anforderungen hoher Priorität wird Buszugriff gewährt vor denen mit niedrigeren Prioritäten. Bus Benutzer werden in zwei Kategorien eingeteilt: diejenigen mit sich dynamisch ändernder Buszugriffs-Priorität und diejenigen mit fester Buszugriffs-Priorität. Denjenigen mit sich dynamisch ändernder Buszugriffs-Priorität werden zwei Bit-Positionen zugewiesen, Nb und Na in dem 32-Bit Feld. Bis zu 16 Bus-Benutzern können zwei Anforderungsbits zugewiesen werden. Diese Benutzer werden numeriert von 0 bis M-1. Das Zuweisen von zwei Anforderungsbits, Na und Nb, zu dem Benutzer N ermöglicht es diesem Benutzer, Buszugriff mit drei verschiedenen Ebenen von physischer Zugriffspriorität anzufordern, wie in Fig. 7 bestimmt ist.
- Die Zuweisung von Bus-Prioritäten an die Bus-Benutzer kann auf zwei Wegen durchgeführt werden, in Abhängigkeit von den Systementwurfserfordernissen. Der einfachste Weg ist es, die Prioritätszuweisung durch das Design des Systems festzulegen. Z. B. können den niedrigen 14 Anschlüssen eine variable Priorität zugewiesen werden, während den verbleibenden 4 eine feste Priorität zugewiesen werden kann. Benutzer mit einer festen Priorität würden normalerweise auf eine niedrige Priorität gesetzt, jedoch kann das Systemdesign dies ändern. Der Vorteil der festen Zuweisung ist, daß es keine Systemkonfigurationsphase für die Busstruktur gibt, so daß kein Wiederherstellungsverfahren im Fall eines Systemsausfalls oder Nachladen benötigt wird. Anschlüssen mit variabler Zugriffspriorität werden aufeinanderfolgende Zahlen von 0 aufwärts zugewiesen, und Anschlüssen mit fester Zugriffspriorität werden Zahlen von 31 abwärts zugewiesen. Daher ist es für eine System steuerungseinheit möglich, Anschlüsse abzufragen und die Trennung zwischen Benutzern mit dynamischer Priorität und mit fester Priorität zu bestimmen. Wenn eine Steuerbotschaft, die eine Antwort erfordert, an jede Zahl von 0 bis 31, gesendet wird und wenn nur 16 antworten, dann haben alle variable Priorität. Wenn aber alle 32 antworten, dann haben sie alle feste Priorität. Jede Teilung ruft eine Antwort hervor, bei welcher es algorithmisch möglich ist, die Anzahl von Benutzern in jeder Klasse zu bestimmen.
- Während der folgenden 14 Buszyklen von jedem Busrahmen, wie in Fig. 7 dargestellt ist, wird der Bus gesteuert durch den Anschluß des Benutzers, der eine Gestattung zum Senden einer Zelle auf den Bus erhalten hat. Das Format von all den Zellen ist identisch. Das erste 32-Bit Word des Zellkörpers enthält Busrouting-Informationen und Fehlererkennungs-Informationen. Die nächsten 13 Buszyklen enthalten die 52 Bites der Zelle, die zu dem Bus gesendet werden, abzüglich des HEC (Header Error Check). Der HEC wird nicht intern übertragen.
- Das erste 32-Bit Word des Zellkörpers enthält in seinen oberen zwei Bytes die Busrouting-Information, zusammen mit einem Fehlerschutz für diese Information. Dies identifiziert den Benutzer, zu dem die Zelle zu routen ist, oder identifiziert die Zelle als eine Rundruf- oder Mehrempfängerzelle, wie nachfolgend detailliert beschrieben wird.
- Das Busrouting-Informationsfeld wird 12 Bits breit sein. Um ein korrektes Routing auf den Bus sicherzustellen, enthalten die 4 LSB des Routingfeldes einen Hamming-Code über die oberen 12.
- Um Anwendungen zu unterstützen, bei denen der Bus vielleicht ein "front-end" für einen größeren Switch ist, und Anwendungen, bei denen der Switch selbst vielleicht einen Routing- Header benötigt, wird ein 2 Byte Erweiterungsfeld für externe Routing-Header eingefügt. Diese beiden Bytes sind optional in ihrer Verwendung. Wenn sie nicht verwendet werden, enthält dieses Feld ausschließlich Nullen.
- Während der folgenden 13 Buszyklen (2 bis 14) werden der Kopf und die Nutzdaten einer Zelle an den Bus gesendet durch den Benutzer, dem Zugriff gegeben wurde. Die vier Bytes des Kopfs (GFC, VPI, VCI, PTI und CLP) sind in einem Zyklus ausgerichtet. Jeder nachfolgende Zyklus (3 bis 14) enthält vier Zellennutzdatenbytes. Die Byteausrichtung der Zellennutzdatenbytes ist dieselbe wie diejenige der Kopfbytes. D. h., die führenden Bits des Kopfes (GFC) sind in dem am höchsten signifikanten Ende des 32-Bit Buswortes, und das führende Byte (Byte 0) der Zellennutzdaten ist in der am höchsten signifikanten Byteposition. D. h., das Format ist Big Endian.
- Während des Gestattungszyklus (15) weist der Bus eine geteilte Steuerung auf. Die Zelle BIP-8 (Bit-verschachtelte Parität, nachfolgend beschrieben) wird gesteuert als das letzte Byte der Übertragung durch den Bus-Benutzer, dem Zugriff gewährt wurde. Die niederen 7 Bits sind gesteuert durch den Bus-Arbitrierer. Der Bus-Arbitrierer kann eine Gestattung für einen Anschluß geben, um eine Zelle auf den Bus während jedes Gestattungszyklus zu senden. Um interne Busfehler zu erkennen, wird eine Bit-versetzte Parität (BIP) über das Datenfeld von dem ersten Routingkopfbyte bis zum letzten Datenbyte berechnet. Diese Prüfsumme wird erzeugt durch den Benutzer, dem Zugriff gewährt wurde, und wird geprüft durch den empfangenen Bus-Benutzer. Bei einem Fehler wird die Zelle verworfen. Die 5 LSB des Gestattungswortes enthalten eine binär codierte Zahl (0 bis 31), welche die Nummer des Benutzers ist, dem der Bus-Arbitrierer eine Gestattung erteilt. Das MSB ist in Bit- Position 4 und das LSB in Position 0. Ein Gestattungsfreigabebit wird gesetzt auf 1, wann immer eine Gestattung einem Benutzer erteilt wird. Eine Prüfung auf ungerade Parität, berechnet über die 5 Bits des Gestattungsfelds plus dem Gestattungsfreigabefeld, wird in Bit 6 angeordnet. Dient dies zum Schutz gegen Busfehler. Der Rest des Gestattungsfeldes ist unbenutzt, kann jedoch verwendet werden für allgemeine Systemsteuerungszwecke oder andere Datenerweiterungen für den Zellkörper.
- Fig. 9 zeigt ein Nenn-Timing-Diagramm, daß die Abfolge von Operationen auf dem Bus in bezug auf Taktflanken darstellt. Übertragungen sind basiert auf den Flanken eines Busübertragungstakts (BTC) mit einem 32-Bit-Wort pro Taktflanke. Busrahmenzeit ist bestimmt durch einen Rahmenpuls (BF) der einmal während jeder 16 Zyklen des BTC auftritt. Daten werden auf den Bus geschrieben während einer Taktflanke des BTC und werden von dem Bus angenommen bei der nächstfolgenden gleichen Flanke des BTC. Die Bus-Routing-Adresse wird zusammen mit ihrem Fehlererkennungsfeld während des ersten Zyklus des Zellkörpers auf den Bus gelegt. Wenn der adressierte Benutzer ein Routingfeld seiner Adresse, und ohne angezeigte Fehler, erkennt, wird er eine Zellannahme anzeigen durch Belegen der ACK-Leitung während der Zuteilungsphase des laufenden Buszyklus. Ein zweites optionales Bedingungsanzeigebit, CONJ, ist eingeschlossen um die Kommunikation einer Ballungsanzeige an dem Ziel zurück zu dem sendenden Benutzer zu ermöglichen. Das Timing des CONJ-Signal ist identisch mit demjenigen des ACK- Signals, während der Gestattungsphase desselben Rahmens, in welchem die Zelle gesendet worden ist. Ein aktives CONJ ist eine Anzeige von Ballung. Ein inaktives CONJ ist keine Anzeige. Die Definition welche Bedingung Ballung definiert und die daraus folgenden Aktionen einer aktiven CONJ-Anzeige sind nicht spezifiziert. Vorzugsweise wird jedoch ein CONJ-Signal gesendet, bevor der Bus-Benutzer nicht mehr imstande ist, weitere Daten zu empfangen.
- Für Rückplatinenanwendungen wird eine spezielle Taktbehandlung bestimmt, um Datenübertragungen zu ermöglichen, die Verzögerungseffekte durch die Rückplatine einschließen. Die Quelle des Bustransfer-Takts wird physisch verbunden mit einem Ende des Busses wie in Fig. 10 dargestellt ist. Zwei Bus-Transfer-Takte-Pfade werden in der Rückplatine installiert. Diese beiden werden verbunden an dem. Ende der Rückplatine, das demjenigen gegenüber ist, an dem die BTC angeschlossen ist. Unter Verwendung dieser Konfiguration beginnt ein BTC-Puls an einem Ende einer Taktleitung, pflanzt sich entlang des Pfads fort, "dreht um" an dem Endes des Pfads und pflanzt sich dann fort zurück in die Richtung der originalen Quelle. Dabei gibt es eine klare, vorhersagbare Verzögerung, die mit der Fortpflanzung des Taktpulses in diesem Aufbau einher geht. Die erste Leitung, die direkt mit der BTC-Quelle verbunden ist, wird von allen Bus-Benutzern zu dem Zeitpunkt verwendet, wenn Daten vom dem Bus gelesen werden. Die zweite Leitung, die für die "Rückwärts"-Richtung wird von allen Bus- Benutzern zu dem Zeitpunkt verwendet, wenn Daten auf den Bus geschrieben werden.
- Wie vorstehend bereits erwähnt wurde, unterstützt die Busadressierung eine Anzahl von unterschiedlichen Modi sowohl für Benutzerdatenzellen-Verbindung wie auch für Steuerungs- und Diagnosezwecke. Unterschiedliche Adressstrukturen sind in Fig. 11a bis 11g dargestellt. Die Fig. 11a zeigt die für die normale Übertragung von Zellen von einem Benutzer zu einem anderen Benutzer verwendete Struktur, die oben bezeichnet worden ist als "einfache Adresse, Daten". Die Bus-Benutzer- Adresse (A0 bis A4) ist ein 5-Bit Feld zum Identifizieren eines Benutzers auf dem Hauptbus oder einem Erweiterungsbus. A0 ist das LSB. Ein 3-Bit Feld (R0 bis R2) ist enthalten, um entweder Zellen-Routing in dem Fall einer einfachen PHY (physische Schicht des ATM BISDN Protokoll-Referenzmodells) - Implementationen, oder PHY-Gerät-Auswahl in dem Fall von Multi-PHY-Implementationen zu ermöglichen, R0 ist das LSB. Wenn Bit M auf logisch 1 gesetzt ist, wird eine Multi-PHY- Implementation ausgewählt. In diesem Fall wird das R-Feld verwendet, um eines von 8 PHY-Schicht-Geräten zu adressieren. Wenn Bit M auf logisch 0 gesetzt ist, wird eine einfache PHY- Implementation ausgewählt, und das R-Feld wird verwendet zum Auswählen, in welche Ausgabeschlange eine Zelle zu routen ist. Ein 2-Bit Feld (X0 bis X1) wird verwendet zum Auswählen der Buserweiterungsnummer für einen Benutzer. X0 ist das LSB. Ein 4-Bit CRC Fehlerprüfcode (H0 bis H3) ist zum Fehlerschutz enthalten. Sämtliche nicht zugewiesenen Bits von allen Adressstrukturen werden auf Null gesetzt am Quellenpunkt und werden an allen Zielpunkten ignoriert. Die Unterfelder R, X, M und A sind alle obligatorisch in der "einfache Adresse, Daten" Adressstruktur.
- Die zum Senden von Steuerzellen von einem Bus-Benutzer zu einem anderen einzigen Bus-Benutzer verwendete Adressstruktur ist oben bezeichnet als "einfache Adresse, Steuerung" und ist in Fig. 11b dargestellt. Bei dieser Struktur sind die Unterfelder X und A obligatorisch.
- Die Struktur für "einfache Adresse, Loopback" ist in Fig. 11c dargestellt. Dies stellt das Adressieren für eine Zelle dar, die bei einem Bus-Benutzer ankommt, der vorher eingerichtet worden ist, um Zellen zu einem bestimmten Ort zurückzuführen. Bei dieser Struktur sind die Felder X und A obligatorisch.
- Fig. 11d zeigt die zum Unterscheiden von Zellen, die von sämtlichen Benutzern zu akzeptieren sind, verwendete Struktur "Rundrufadresse, Daten". Bei dieser Struktur gibt es keine obligatorischen Felder über die Zelltypen-Kodierung hinaus.
- Die "Rundrufadresse, Steuerung" Adressstruktur ist in Fig. 11e dargestellt. Diese Adressstruktur wird verwendet zum Unterscheiden von Zellen, die von den Steuerungseinrichtungen sämtlicher Benutzer zu akzeptieren sind. Es gibt keine obligatorischen Felder abgesehen von der Zelltypen-Kodierung.
- Für die in den Fig. 11f und 11g dargestellte "mehrfache Adresse, "Daten" und "mehrfache Adresse, Steuerung" wird ein 9-Bit Feld (M0 bis M8) verwendet, um mit den verschiedenen Mehrfachsitzungen verbundene Zellen zu unterscheiden. M0 ist das LSB und das M-Unterfeld ist obligatorisch bei dieser Adressstruktur.
- Die Reihenfolge der Operationen auf einem Bus gemäß der Erfindung ist festgelegt. Der Anforderungszyklus ist der erste bei einem Busübertragungsrahmen. Während des Anforderungszy klusses können beliebige oder alle der Bus-Benutzer an einem Haupt- oder Erweiterungsbus Anforderungen für den Buszugriff vornehmen. Eine Buszugriffsanforderung wird durch einen Bus- Benutzer vorgenommen, der eine Zelle zu senden hat, und wird durchgeführt durch den Benutzer durch Belegen seines zugewiesenen Anforderungsbits oder der Bit während des Anforderungszyklus. Die verwendete elektrischen Technologien sind allfällig von dem "open-drain" -Typ, so daß das Belegen eines Anforderungsbits bedeutet, der Benutzer sein Bit oder seine Bits während des Anforderungszyklus herunterzieht ("pulldown"). Die Bus-Benutzer, die nur eine festgesetzte Zugriffspriorität und daher nur eine Zuweisung für ein 1-Bit Anforderungsfeld haben, werden das zugewiesene Bit belegen, wenn eine Zelle zum Senden bereit ist. Diejenigen Bus- Benutzer, die zwei zugewiesene Anforderungsbits, und daher eine variable Priorität haben, werden entweder eins oder zwei Bits während des Anforderungszyklus belegen, wobei die Ebene der Priorität von den Betriebsbedingungen abhängt.
- Ein Bus-Benutzer, der für variable Priorität bestimmt ist, kann immer noch sämtliche Anforderungen mit einem Wert der Priorität durchführen. Zwei Beispiele sind ein Bus-Benutzer mit hohem Aufkommen und ein Bus-Benutzer mit niedrigem Aufkommen. Der Benutzer mit hohem Aufkommen kann sämtliche Anforderungen mit hoher Priorität vornehmen, um so eine Schlangenbildung am Eingang zu verhindern, während der Anschluß mit niedrigem Aufkommen sämtliche Anforderungen mit niedriger Priorität vornehmen kann, da er es sich leisten kann, auf den Dienst ein wenig zu warten. Alternativ kann ein Benutzer dynamisch entscheiden, basierend auf momentanen Messungen seiner eigenen internen Bedingungen oder auf anderen Faktoren, seine Zugriffspriorität zu ändern. Z. B. kann der Wert der Priorität erhöht werden durch einen Benutzer, wenn die Tiefe seiner Eingabeschlange eine bestimmte Grenze überschreitet. Der Bus erlaubt es beiden Mechanismen zu koexistieren, allein unter der Voraussetzung, daß der Bus-Arbitrierer weiß, welche Bus-Benutzer eine feste Priorität haben, was deren Priorität ist, und welche Bus-Benutzer eine dynamische Priorität haben.
- Während der 14 Zyklen der Zellkörperphase des Rahmens wird der Benutzer, dem gegenwärtig Zugriff gewährt worden ist, eine Zelle auf den Bus legen. Der Benutzer wird sämtliche 14 Zyklen ansteuern, in der in Fig. 7 bestimmten Reihenfolge, und wenn sämtliche Felder vollständig sind, wird der finale Zyklus des Rahmens der Gestattungszyklus sein, während welchem der Bus-Arbitrierer Zugriff zu dem Bus für einen bestimmten Benutzer für eine Zelle gibt. Die Buszugriffsgestattung, die der Bus-Arbitrierer während des Gestattungszyklusses gibt, ist für den unmittelbar nächsten Zellkörper. Das bedeutet den Zellkörper, der bei dem auf den Gestattungszyklus nächst folgenden zweiten Taktzyklus beginnt. Der auf den Gestattungszyklus unmittelbar folgende nächste Zyklus ist der nächste Anforderungszyklus, wobei der folgende der erste des nächsten folgenden Zellkörpers ist.
- Hierin sind verschiedene Ausführungsformen eines System für asynchronen Datentransfer und Steuerung des Quellenverkehrs beschrieben und erläutert worden. Während bestimmte Ausführungsformen Erfindungen beschrieben worden sind, so ist nicht beabsichtigt, daß die Erfindung insoweit begrenzt ist, viel mehr ist es beabsichtigt, daß die Erfindung so breit in ihrem Schutzbereich ist, wie es der Stand der Technik erlaubt, und daß die Beschreibung entsprechend zu verstehen ist. Folglich versteht es sich mit einer beschriebenen Busrahmenbreite von 32 Bit, daß auch andere Rahmen-Konfigurationen verwendet werden können. Dementsprechend, während die bevorzugte Anzahl von Zyklen des Rahmens 16 beträgt, kann ebenso ein Rahmen mit 15 Zyklen verwendet werden, ohne von dem Gedanken der Erfindung abzuweichen. Ebenso, während drei spezifische Taktbusse dargestellt worden sind, so versteht es sich, daß andere Typen von Taktbussen verwendet werden können, wobei ähnliche Ergebnisse erreicht werden. Außerdem, während bestimmte Formate in bezug auf das Anforderungsfeld offenbart worden sind, versteht es sich, daß genauso gut auch andere Formate verwendet werden können.
- Außerdem, während bestimmte Formate in bezug auf das Gestattungsfeld offenbart worden sind, so versteht es sich, daß auch andere Formate genauso gut verwendet werden können, um die selbe oder eine ähnliche Funktion wie die hierin beschriebene zu erreichen.
Claims (22)
1. System für asynchronen Datentransfer und Steuerung des
Quellenverkehrs, umfassend einen bidirektionalen Daten-
Bus (18), einen Bus-Master (10), der bidirektional an
den bidirektionalen Daten-Bus (18) angeschlossen ist,
und eine Mehrzahl von Bus-Benutzern (12, 14, 16), die
bidirektional an den Daten-Bus (18) angeschlossen sind,
wobei der Mehrzahl von Bus-Benutzern (12, 14, 16)
Schreibzugriff auf den Daten-Bus (18) durch den Bus-
Master (10) in Abhängigkeit von Anforderungen gestattet
ist, die von der Mehrzahl von Bus-Benutzern gemacht
werden, wobei diese Anforderungen von dieser Mehrzahl von
Bus-Benutzern während eines Anforderungsfelds eines
Rahmens gemacht wird und der Schreibzugriff einem Bus-
Benutzer durch den Bus-Master während eines
Gestattungsfelds des Rahmens gestattet wird, wobei der Rahmen das
Anforderungsfeld, ein Datenfeld und das Gestattungsfeld
umfaßt,
dadurch gekennzeichnet, daß
das System weiter umfaßt einen ersten Takt-Bus (20) mit
einem ersten Taktsignal (SCLOCK) einer ersten Frequenz,
wobei der Bus-Master (10) an den ersten Takt-Bus
angeschlossen ist und die Mehrzahl von Bus-Benutzern (12,
14, 16) an den ersten Takt-Bus (20) angeschlossen sind
und das erste Taktsignal (SCLOCK) empfangen, worin der
Mehrzahl von Bus-Benutzern einzeln Schreibzugriff auf
den bidirektionalen Daten-Bus (18) durch den Bus-Master
in Abhängigkeit von Anforderungen gestattet wird, die
von der Mehrzahl von Bus-Benutzern gemacht worden sind,
wobei die Anforderungen durch die Mehrzahl von Bus-
Benutzern gemacht werden während eines Anforderungsfelds
eines sich wiederholenden Bus-Rahmen-Formats und der
Schreibzugriff einem einzelnen Bus-Benutzer durch den
Bus-Master während eines Erteilungsfelds des sich
wiederholenden Bus-Rahmen-Formats gestattet wird, wobei das
sich wiederholende Bus-Rahmen-Format eine vorbestimmte
Anzahl von Zyklen des ersten Taktsignals, wobei die
vorbestimmte Anzahl von Zyklen das
Anforderungsfelddefiniert, ein Datenfeld und das Erteilungsfeld umfaßt,
wobei eine der Anforderungen, die während des
Anforderungsfelds eines ersten Rahmens gemacht werden, in dem
Erteilungsfeld des ersten Rahmens gestattet wird zum
Schreibzugriff auf das Datenfeld eines zweiten Rahmens.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß der
bidirektionale Daten-Bus (18) zweiunddreißig Bits breit
ist.
3. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß der erste Takt-Bus von dem Bus-
Master angesteuert ist.
4. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß der sich wiederholende Bus-Rahmen
entweder fünfzehn oder sechzehn Zyklen des ersten
Taktsignals umfaßt, und daß das Anforderungsfeld während
eines ersten der fünfzehn oder sechzehn Taktzyklen
auf
tritt und das Erteilungsfeld während eines letzten der
fünfzehn oder sechzehn Taktzyklen auftritt.
5. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß jeder der Mehrzahl von Bus-Benutzern
eine eindeutige Identifikationsnummer innerhalb einer
Seite hat, und die Bus-Benutzer Anforderungen während
des Anforderungsfelds ihrer Seite machen durch Schreiben
ihrer eindeutigen Identifikationsnummer auf den
bidirektionalen Daten-Bus (18).
6. System nach Anspruch 5, dadurch gekennzeichnet, daß jede
der eindeutigen Identifikationsnummern aus einer
Mehrzahl von binären Nullen und einer einzelnen binären Eins
besteht.
7. System nach Anspruch 5, dadurch gekennzeichnet, daß die
Mehrzahl von Bus-Benutzern nach Gruppen angeordnet ist,
und die eindeutige Identifikationsnummer eine
Gruppenidentifikationsnummer einschließt.
8. System nach Anspruch 7, dadurch gekennzeichnet, daß die
Mehrzahl von Bus-Benutzern Anforderungen jeweils in
einer Gruppe nach einer anderen machen, wobei das
Erteilungsfeld eine Gruppenidentifikationsnummer einschließt,
die diejenige Gruppe identifiziert, die als nächstes
Anforderungen abgibt.
9. System nach Anspruch 5, dadurch gekennzeichnet, daß das
Erteilungsfeld eine Mehrzahl von Bits umfaßt, die sich
auf eine der eindeutigen Identifikationsnummern
innerhalb der Seite beziehen, worin diese eine der
eindeuti
gen Identifikationsnummern einem Bit entspricht, das auf
den bidirektionalen Daten-Bus (18) während des
Anforderungsfelds geschrieben wurde.
10. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß eine vorbestimmte Datenmenge in das
Datenfeld geschrieben werden kann, und jeder der
Mehrzahl von Bus-Benutzern eine Anforderung für jede
vorbestimmte Datenmenge macht, die jeder der Mehrzahl von
Bus-Benutzern zu senden hat.
11. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß es weiter einen Takt-Rahmen-Bus (22)
mit einem zweiten Taktsignal (SCFRAME) einer zweiten
Frequenz umfaßt, worin der Bus-Master und jeder der
Mehrzahl von Bus-Benutzern an den zweiten Takt-Bus
angeschlossen sind, und jeder Zyklus des zweiten Taktsignals
ein erstes der vorbestimmten Anzahl von ersten
Taktsignalen anzeigt, die den sich wiederholenden Bus-Rahmen
umfassen.
12. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß es weiter einen zweiten Takt-Bus
(24) mit einem zweiten Taktsignal (DCLOCK) einer zweiten
Frequenz umfaßt, wobei die zweite Frequenz höher ist als
die erste Frequenz, worin jeder der Mehrzahl von Bus-
Benutzern an den zweiten Takt-Bus angeschlossen ist, und
jeder der Mehrzahl von Bus-Benutzern mit der zweiten
Frequenz auf den bidirektionalen Daten-Bus (18)
schreibt.
13. System nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß es weiter einen Bestätigungs-Bus
(126) aufweist, worin die Mehrzahl von Bus-Benutzern an
den Bestätigungs-Bus angeschlossen sind, und worin der
einzelne Bus-Benutzer, dem Zugriff gestattet ist, den
Bestätigungs-Bus während des Erteilungsfelds des zweiten
Rahmens belegt.
14. System nach Anspruch 13, dadurch gekennzeichnet, daß
jedem der Bus-Benutzer ein Bit in dem Anforderungsfeld
zugewiesen ist und Anforderungen vorgenommen werden durch
die Bus-Benutzer mittels Belegen ihres jeweiligen Bits
in dem Anforderungsfeld.
15. System nach Anspruch 14, dadurch gekennzeichnet, daß
zumindest einigen der Bus-Benutzer zwei Bits in dem
Anforderungsfeld zugewiesen sind und eine Anforderung
durchführen durch Belegen von einem oder beiden der beiden
Bits, wobei die Priorität des Zugangs dadurch bestimmt
wird, welches der beiden Bits belegt ist.
16. System nach einem der Ansprüche 13 bis 15, dadurch
gekennzeichnet, daß jeder der Mehrzahl von Bus-Benutzern
eine Adresse hat, und daß die Adresse eines Ziel-Bus-
Benutzers auf den bidirektionalen Daten-Bus (18) während
eines Routing-Felds des Bus-Rahmen-Formats geschrieben
ist.
17. System nach einem der Ansprüche 13 bis 16, dadurch
gekennzeichnet, daß es weiterhin umfaßt:
einen Überlastungs-Bus (128), wobei jeder der Mehrzahl
von Bus-Benutzern bidirektional an den Überlastungs-Bus
angeschlossen ist, worin ein belegter Überlastungs-Bus
während des Erteilungsfelds eine Überlastungs-Bedingung
des Ziel-Bus-Benutzers anzeigt.
18. System nach Anspruch 16, dadurch gekennzeichnet, daß die
Adresse eines Ziel-Bus-Benutzers auf den bidirektionalen
Daten-Bus (18) durch einen anderen Bus-Benutzer oder den
Bus-Master geschrieben wird.
19. System nach Anspruch 16, dadurch gekennzeichnet, daß es
weiterhin umfaßt:
f) einen zweiten bidirektionalen Daten-Bus (201);
g) einen zweiten Takt-Bus (201);
h) einen zweiten Bus-Master (200), der bidirektional
an den zweiten bidirektionalen Daten-Bus
angeschlossen ist und an den ersten Takt-Bus
angeschlossen ist; und
i) eine Mehrzahl von zweiten Bus-Benutzern (211, 212,
214, 216), die bidirektional an den zweiten
bidirektionalen Daten-Bus angeschlossen sind und an
den zweiten Takt-Bus angeschlossen sind, wobei
einer der zweiten Bus-Benutzer (211) bidirektional
an einen der ersten Bus-Benutzer (111)
angeschlossen ist, worin der Mehrzahl von zweiten Bus-
Benutzern individuell Schreibzugriff auf den
zweiten bidirektionalen Daten-Bus durch den zweiten
Bus-Master in Abhängigkeit von Anforderungen
ge
stattet wird, die von der Mehrzahl von zweiten
Bus-Benutzern gemacht werden, wobei die
Anforderungen durch die Mehrzahl von zweiten Bus-
Benutzern während des Anforderungsfelds
vorgenommen werden.
20. Verfahren zur asynchronen Datenübertragung und
Quellenverkehrssteuerung, worin ein Bus-Master (10) und eine
Mehrzahl von Bus-Benutzern (12, 14, 16) an einen
bidirektionalen Daten-Bus (18) und einen ersten Takt-Bus
(20) angeschlossen sind, wobei die Methode umfaßt ein
Definieren eines Rahmens mit einem Anforderungsfeld,
während dessen Bus-Benutzer, die Daten, zu senden haben,
eine Anforderung zum Zugriff auf den bidirektionalen
Daten-Bus schreiben, einem Erteilungsfeld, während dessen
der Bus-Master eine Erteilung zum Zugriff auf den
bidirektionalen Daten-Bus schreibt, und Datenfeldern,
während derer Daten auf den bidirektionalen Daten-Bus
geschrieben wird, dadurch gekennzeichnet, daß
a) der Rahmen ein Bus-Rahmen-Format zur
Datenübertragung ist, der definiert ist durch eine vorbestimmte
Anzahl von ersten Taktzyklen des ersten Takt-Bus,
während derer Daten auf den bidirektionalen Daten-
Bus geschrieben wird, wobei die Methode weiter
umfaßt
b) Definieren eines der vorbestimmten Anzahl von
ersten Taktzyklen des Bus-Rahmen-Formats als das
Anforderungsfeld, während dessen Bus-Benutzer, die
Daten zu senden haben, eine Anforderung zum Zugriff
auf den bidirektionalen Daten-Bus schreiben;
c) Definieren einer weiteren vorbestimmten Anzahl von
ersten Taktzyklen des Bus-Rahmen-Formats als das
Erteilungsfeld, während dessen der Bus-Master eine
Erteilung zum Zugriff auf den bidirektionalen
Daten-Bus schreibt und dabei einen ausgewählten der
Bus-Benutzer, die Daten zu senden haben,
identifiziert;
d) Definieren einer Mehrzahl der vorbestimmten Anzahl
von ersten Taktzyklen des Bus-Rahmen-Formats als
die Datenfelder, während derer ein vorher
ausgewählter der Mehrzahl von Bus-Benutzern Daten auf
den bidirektionalen Daten-Bus schreibt, wobei die
Datenfelder dem Anforderungsfeldfolgen und dem
Erteilungsfeld vorangehen, worin der eine ausgewählte
der Bus-Benutzer, die Daten zu senden haben,
identifiziert ist in dem Erteilungsfeld eines ersten
Rahmens, um in einem zweiten Rahmen der vorher
ausgewählte aus der Mehrzahl von Bus-Benutzern zu
sein.
21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, daß
es weiterhin umfaßt:
f) Anschließen eines Rahmen-Takt-Bus (22) an den Bus-
Master und die Mehrzahl von Bus-Benutzern; und
g) Starten eines Rahmens bei jedem Taktzyklus des
Rahmen-Takt-Bus.
22. Verfahren nach Anspruch 20 oder 21, dadurch
gekennzeichnet, daß es weiterhin umfaßt:
Zuweisen einer eindeutigen Identifikationsnummer
innerhalb einer Seite an die Mehrzahl von Bus-Benutzern,
worin die Bus-Benutzer, die Daten zu senden haben, während
des Anforderungsfelds für die Seite Zugriff anfordern
durch Schreiben auf den bidirektionalen Daten-Bus an
mindestens der einen Bit-Position, die der eindeutigen
Identifikationsnummer der Bus-Benutzer entspricht, und
wobei der Bus-Master während des Erteilungsfelds durch
Schreiben einer Mehrzahl von Bits entsprechend der
eindeutigen Identifikationsnummer des ausgewählten eines
der Bus-Benutzer Zugriff auf den bidirektionalen Daten-
Bus gestattet.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12388193A | 1993-09-20 | 1993-09-20 | |
US21339894A | 1994-03-14 | 1994-03-14 | |
PCT/US1994/010642 WO1995008887A1 (en) | 1993-09-20 | 1994-09-20 | Asynchronous data transfer and source traffic control system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69431846D1 DE69431846D1 (de) | 2003-01-16 |
DE69431846T2 true DE69431846T2 (de) | 2003-07-17 |
Family
ID=26822004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69431846T Expired - Lifetime DE69431846T2 (de) | 1993-09-20 | 1994-09-20 | System für asynchronen datentransfer und steuerung des quellenverkehrs |
Country Status (11)
Country | Link |
---|---|
US (1) | US5901146A (de) |
EP (1) | EP0724796B1 (de) |
JP (1) | JP3516684B2 (de) |
CN (1) | CN1088299C (de) |
AU (1) | AU7838894A (de) |
CA (1) | CA2170602C (de) |
DE (1) | DE69431846T2 (de) |
DK (1) | DK0724796T3 (de) |
ES (1) | ES2187535T3 (de) |
PT (1) | PT724796E (de) |
WO (1) | WO1995008887A1 (de) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6104724A (en) * | 1993-09-20 | 2000-08-15 | Transwitch Corp. | Asynchronous data transfer and source traffic control system |
US5729546A (en) * | 1995-06-21 | 1998-03-17 | Cisco Systems, Inc. | Expandable communication cell bus for multiplexing and concentrating communication cell traffic onto high speed lines |
CA2273044A1 (en) * | 1996-11-27 | 1998-06-18 | Dsc Telecom L.P. | Method and apparatus for high-speed data transfer that minimizes conductors |
IT1290336B1 (it) * | 1997-02-17 | 1998-10-22 | Italtel Spa | Metodo di comunicazione tra una unita' centrale e una pluralita' di unita' periferiche per il tramite di un bus sincrono ad alta velocita, |
IT1290337B1 (it) * | 1997-02-17 | 1998-10-22 | Italtel Spa | Sistema per la trasmissione di dati tra una unita' centrale e una pluralita' di unita' periferiche per il tramite di un bus sincrono ad |
US6160653A (en) * | 1997-03-26 | 2000-12-12 | Sun Microsystems, Inc. | Optical computer bus with dynamic bandwidth allocation |
US6119188A (en) * | 1997-05-27 | 2000-09-12 | Fusion Micromedia Corp. | Priority allocation in a bus interconnected discrete and/or integrated digital multi-module system |
GB2327579B (en) * | 1997-07-22 | 2000-06-07 | Motorola Israel Ltd | Apparatus for controlling of data transportation and a method |
US6480498B1 (en) * | 1998-07-01 | 2002-11-12 | National Semiconductor Corporation | High speed network switch bus clock |
US6535520B1 (en) * | 1998-08-14 | 2003-03-18 | Cisco Technology, Inc. | System and method of operation for managing data communication between physical layer devices and ATM layer devices |
US6724772B1 (en) * | 1998-09-04 | 2004-04-20 | Advanced Micro Devices, Inc. | System-on-a-chip with variable bandwidth |
US6639899B1 (en) * | 1999-10-14 | 2003-10-28 | Alcatel Canada Inc. | Method and apparatus for providing integral cell payload integrity verification in ATM Telecommunication devices |
FR2820921A1 (fr) | 2001-02-14 | 2002-08-16 | Canon Kk | Dispositif et procede de transmission dans un commutateur |
KR100441606B1 (ko) * | 2001-10-05 | 2004-07-23 | 삼성전자주식회사 | 복수의 모듈들간의 데이터 송수신 시스템 및 송수신제어방법 |
US7313151B2 (en) * | 2002-02-06 | 2007-12-25 | Transwitch Corporation | Extendible asynchronous and synchronous interface bus for broadband access |
US20030206550A1 (en) * | 2002-04-30 | 2003-11-06 | Transwitch Corporation | Methods and apparatus for increasing the number of UTOPIA ports in an ATM device |
US7120327B2 (en) * | 2002-11-27 | 2006-10-10 | International Business Machines Corporation | Backplane assembly with board to board optical interconnections |
US7274657B2 (en) * | 2002-12-23 | 2007-09-25 | Transwitch Corporation | Methods and apparatus for providing redundancy in an asynchronous data transfer and source traffic control system |
US7342885B2 (en) * | 2003-01-15 | 2008-03-11 | Transwitch Corporation | Method and apparatus for implementing a backpressure mechanism in an asynchronous data transfer and source traffic control system |
EP1445704A1 (de) * | 2003-02-06 | 2004-08-11 | STMicroelectronics S.r.l. | Synchronisationsverfahren zum Datenaustausch in einem Kommunikationsnetzwerk und zugehörige Schaltungsanordnung und Architektur |
US7430201B1 (en) | 2003-03-21 | 2008-09-30 | Transwitch Corporation | Methods and apparatus for accessing full bandwidth in an asynchronous data transfer and source traffic control system |
US7350002B2 (en) * | 2004-12-09 | 2008-03-25 | Agere Systems, Inc. | Round-robin bus protocol |
FR2907930B1 (fr) * | 2006-10-27 | 2009-02-13 | Viaccess Sa | Procede de detection d'une utilisation anormale d'un processeur de securite. |
EP2028797B1 (de) * | 2007-08-23 | 2010-02-24 | Siemens Aktiengesellschaft | Verfahren zur Datenübertragung |
CN102347877A (zh) * | 2010-07-30 | 2012-02-08 | 中兴通讯股份有限公司 | 总线调度方法及装置 |
TWI490698B (zh) * | 2013-05-10 | 2015-07-01 | Integrated Circuit Solution Inc | 高速資料傳輸架構 |
US9563590B2 (en) * | 2014-03-17 | 2017-02-07 | Nxp Usa, Inc. | Devices with arbitrated interface busses, and methods of their operation |
CN106874237B (zh) * | 2017-03-08 | 2019-08-27 | 上海冉能自动化科技有限公司 | 基于二总线的数据同步方法及系统 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1086397A (en) * | 1976-09-14 | 1980-09-23 | Charles G. Diefenderfer | Polling an data communication system having a pulse position to binary address conversion circuit |
US4156798A (en) * | 1977-08-29 | 1979-05-29 | Doelz Melvin L | Small packet communication network |
US4375681A (en) * | 1980-06-03 | 1983-03-01 | Rockwell International Corporation | Protected muldem with interchangeable circuits of different data rates |
US4460993A (en) * | 1981-01-12 | 1984-07-17 | General Datacomm Industries Inc. | Automatic framing in time division multiplexer |
US4488293A (en) * | 1981-12-23 | 1984-12-11 | International Telephone And Telegraph Corporation | Asynchronous digital TDM multiplexer-demultiplexer combination |
US4660169A (en) * | 1983-07-05 | 1987-04-21 | International Business Machines Corporation | Access control to a shared resource in an asynchronous system |
DE3424866C2 (de) * | 1984-07-06 | 1986-04-30 | Messerschmitt-Bölkow-Blohm GmbH, 8012 Ottobrunn | Verfahren und Anordnung zur Übertragung von Daten, insbesondere in einem Flugzeug |
US4685101A (en) * | 1984-12-20 | 1987-08-04 | Siemens Aktiengesellschaft | Digital multiplexer for PCM voice channels having a cross-connect capability |
US4789926A (en) * | 1985-08-06 | 1988-12-06 | International Business Machines Corporation | Digital data processing arbitration system |
US4727536A (en) * | 1986-06-19 | 1988-02-23 | General Datacomm, Inc. | Variable control and data rates in highly efficient multiplexer |
US4750168A (en) * | 1986-07-07 | 1988-06-07 | Northern Telecom Limited | Channel allocation on a time division multiplex bus |
US4815074A (en) * | 1986-08-01 | 1989-03-21 | General Datacomm, Inc. | High speed bit interleaved time division multiplexer for multinode communication systems |
US4817037A (en) * | 1987-02-13 | 1989-03-28 | International Business Machines Corporation | Data processing system with overlap bus cycle operations |
US5048012A (en) * | 1987-04-03 | 1991-09-10 | Advanced Micro Devices, Inc. | Data link controller with flexible multiplexer |
JPH02117242A (ja) * | 1988-10-27 | 1990-05-01 | Toshiba Corp | パケット通信装置のバス制御方式 |
EP0390978A1 (de) * | 1989-04-03 | 1990-10-10 | Koninklijke Philips Electronics N.V. | Kommunikationssystem mit zweiadrigem Hauptbus zur Verbindung von Brücken zu dreiadrigen sekundären Bussen |
FR2648652B1 (fr) * | 1989-06-19 | 1994-03-18 | Alcatel Business Systems | Interface pour acces en emission et en reception au support de transmission synchrone d'un reseau de commutation reparti |
DE69021873T2 (de) * | 1990-05-11 | 1996-04-04 | Alcatel Nv | Datenübertragungsanordnung bestehend aus einer Haupteinrichtung angeschlossen an einer Mehrzahl von sekundären Einrichtungen. |
US5276678A (en) * | 1990-06-18 | 1994-01-04 | Intelect, Inc. | Distributed switching and telephone conferencing system |
GB2264844B (en) * | 1992-02-28 | 1995-09-20 | Texas Instruments Ltd | Signal interface for coupling a network front end circuit to a network adapter circuit |
US5572686A (en) * | 1995-06-05 | 1996-11-05 | Apple Computer, Inc. | Bus arbitration scheme with priority switching and timer |
-
1994
- 1994-09-20 PT PT94929268T patent/PT724796E/pt unknown
- 1994-09-20 JP JP50989195A patent/JP3516684B2/ja not_active Expired - Fee Related
- 1994-09-20 CA CA002170602A patent/CA2170602C/en not_active Expired - Fee Related
- 1994-09-20 ES ES94929268T patent/ES2187535T3/es not_active Expired - Lifetime
- 1994-09-20 EP EP94929268A patent/EP0724796B1/de not_active Expired - Lifetime
- 1994-09-20 CN CN94193976A patent/CN1088299C/zh not_active Expired - Fee Related
- 1994-09-20 WO PCT/US1994/010642 patent/WO1995008887A1/en active IP Right Grant
- 1994-09-20 DE DE69431846T patent/DE69431846T2/de not_active Expired - Lifetime
- 1994-09-20 DK DK94929268T patent/DK0724796T3/da active
- 1994-09-20 AU AU78388/94A patent/AU7838894A/en not_active Abandoned
-
1997
- 1997-10-29 US US08/960,499 patent/US5901146A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP3516684B2 (ja) | 2004-04-05 |
AU7838894A (en) | 1995-04-10 |
DE69431846D1 (de) | 2003-01-16 |
PT724796E (pt) | 2003-04-30 |
EP0724796A1 (de) | 1996-08-07 |
EP0724796B1 (de) | 2002-12-04 |
JPH09504919A (ja) | 1997-05-13 |
CN1134207A (zh) | 1996-10-23 |
CA2170602A1 (en) | 1995-03-30 |
DK0724796T3 (da) | 2003-03-31 |
CA2170602C (en) | 2004-03-23 |
CN1088299C (zh) | 2002-07-24 |
ES2187535T3 (es) | 2003-06-16 |
EP0724796A4 (de) | 1999-11-24 |
WO1995008887A1 (en) | 1995-03-30 |
US5901146A (en) | 1999-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69431846T2 (de) | System für asynchronen datentransfer und steuerung des quellenverkehrs | |
DE60130079T2 (de) | Verfahren und vorrichtung zur paketvermittlung mittels eines geteilten pufferspeichers | |
DE69631055T2 (de) | Speicherschnittstelleneinheit, vermittlungssystem mit gemeinsamem speicher und verfahren dazu | |
DE68919856T2 (de) | Nachrichtenvermittlungselement zur übertragung von zellen unterteilt in teilzellen. | |
DE3300262C2 (de) | ||
DE2953444C2 (de) | Anordnung und Verfahren für ein digitales Datenübertragungsnetzwerk | |
DE69028267T2 (de) | Paketvermittlungsnetzwerk mit Rundsendefähigkeit | |
DE69032384T2 (de) | Datenpuffer | |
DE69636825T2 (de) | Verzögerungsminimalisierungssystem mit garantierter Bandbreite für Echtzeitverkehr | |
DE69533680T2 (de) | Verfahren und Vorrichtung zur dynamischen Bestimmung und Zuteilung von Zugriffsguoten für ein gemeinsames Betriebsmittel | |
DE69108434T2 (de) | Mehrgruppen-Signalprozessor. | |
DE2828731C2 (de) | Adapter | |
DE2607819C2 (de) | Nachrichtenübertragung in einem zeitmultiplexen Schleifensystem | |
DE19929516B4 (de) | Hochgeschwindigkeits-Netzwerkschalter | |
DE69028266T2 (de) | Paketvermittlungsnetzwerk für unterschiedliche Typen von Paketen | |
DE69832149T2 (de) | ATM-Zellenübermittlungssystem | |
DE68918981T2 (de) | Asynchrones Zeitmultiplexnetzwerk. | |
EP0692893B1 (de) | Vorrichtung zur Vermittlung in digitalen Datennetzen für asynchronen Transfermodus | |
DE69024641T2 (de) | Schnittstelle für Zugang als Sender und Empfänger gestützt auf synchroner Übertragung in einem verteilten Netz | |
EP0329005A1 (de) | Verfahren zum Einrichten von über Koppelvielfache einer mehrstufigen Koppelanordnung verlaufenden virtuellen Verbindungen | |
EP0566961A2 (de) | Verfahren und Schaltungsanordnung zum Überprüfen der Einhaltung vorgegebener Übertragungsbitraten in einer ATM- Vermittlungseinrichtung | |
DE3936339C2 (de) | DMA-Controller | |
DE69021332T2 (de) | Datenformat für Informationspakete. | |
DE69831308T2 (de) | Verfahren zur übersetzung eines atm-zellenkopfs | |
DE2749884C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: TR TECHNOLOGY FOUNDATION LLC, WILMINGTON, DEL., US |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: TR TECHNOLOGIES FOUNDATION LLC, WILMINGTON, DE, US |