DE3539510C2 - - Google Patents

Info

Publication number
DE3539510C2
DE3539510C2 DE3539510A DE3539510A DE3539510C2 DE 3539510 C2 DE3539510 C2 DE 3539510C2 DE 3539510 A DE3539510 A DE 3539510A DE 3539510 A DE3539510 A DE 3539510A DE 3539510 C2 DE3539510 C2 DE 3539510C2
Authority
DE
Germany
Prior art keywords
coupler
collision
indices
channel
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE3539510A
Other languages
English (en)
Other versions
DE3539510A1 (de
Inventor
Gerard Paris Fr Le Lann
Pierre Les Ulis Fr Rolin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institut National de Recherche en Informatique et en Automatique INRIA
Original Assignee
Institut National de Recherche en Informatique et en Automatique INRIA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institut National de Recherche en Informatique et en Automatique INRIA filed Critical Institut National de Recherche en Informatique et en Automatique INRIA
Publication of DE3539510A1 publication Critical patent/DE3539510A1/de
Application granted granted Critical
Publication of DE3539510C2 publication Critical patent/DE3539510C2/de
Granted legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Description

Die Erfindung betrifft ein Verfahren zur Übertragung von digitalen Nachrichten zwischen verschiedenen Stationen vom Typ CSMA-CD nach dem Oberbegriff des Anspruchs 1.
In einem lokalen Verteilernetz ist der Träger der Informationsübertragung zwischen den Geräten von einer Art, die jedem Gerät erlaubt, die übertragenen Nachrichten zu erkennen. Das zur Erzeugung der Elementarsignale der Nachrichten verwendete physikalische Mittel ist beliebig. Die Nachricht kann beispielsweise elektromagnetischer Natur oder optischer Natur sein.
Die Träger einer Übertragungskommunikation können Ihrerseits passiv, semipassiv oder aktiv sein. Sie werden passiv genannt, wenn sie keine die Nachrichtensignale wieder herstellende oder verstärkende Elemente enthalten. Derartige Elemente erfordern natürlich die Verwendung einer externen Energiequelle.) Die Träger werden als semiaktiv bezeichnet, wenn sie derartige Regenerier- oder Verstärkungselemente enthalten. Schließlich enthalten die aktiven Träger Elemente, welche Nachrichtensignale ganz oder teilweise modifizieren. Die vorliegende Erfindung ist auf alle diese verschiedenen Kategorien von Verteilungsträgern anwendbar, wobei festzustellen ist, daß die zuletzt erwähnten aktiven Träger in gewissen Fällen Besonderheiten bei der Anwendung aufweisen können.
Die automatisierten Geräte, die durch das Netzwerk verbunden werden sollen, können beliebig sein. Es handelt sich beispielsweise um Sensoren/Stellglieder, programmierbare Automaten, Steuer- oder Regeleinrichtungen, Datenendgeräte, Rechner, Telefoneinrichtungen, Videostationen.
Diese Geräte werden über Zugangsstationen angeschlossen, die die Verwaltung der Kommunikation auf dem oder den gemeinsam verwendeten Träger(n) sicherstellen. Jede Station arbeitet in autonomer Weise und asynchron bezüglich der anderen Stationen. Jede Station wird physikalisch an den Übertragungsträger angeschlossen, den sie mit den anderen Stationen teilt und zwar mit Hilfe einer Gesamtheit von Einrichtungen und Programmunterstützung (Hardware und Software), die als Koppler bezeichnet wird.
Die Funktion eines Kopplers besteht also darin, die Erzeugung und den Empfang von physikalischen Signalen auf dem Kommunikationsträger sowie die Übertragung und den Empfang von strukturierten Informationen in Form von Nachrichten sicherzustellen, und ferner ein Zugangsprotokoll auszuführen, das die gemeinsame Benutzung dieses Trägers verwaltet.
Die vorliegende Erfindung betrifft im besonderen die Arbeitsweise dieser Koppler. Es gibt ebensoviele Koppler wie Stationen, die an das lokale Netz angeschlossen sind. Sie sind im Prinzip alle identisch. Das einzige gemeinsame Betriebsmittel, das von den Stationen gemeinsam benutzt wird, ist somit der Träger der physikalischen Kommunikation. Die Koppler arbeiten asynchron und können nicht sofort erkennen, was die anderen Koppler in jedem Zeitpunkt tun. Ein derartiges System enthält die Wahrscheinlichkeit eines gleichzeitigen Übertragungsversuchs von verschiedenen Nachrichten, die von verschiedenen Kopplern ausgesandt werden. Ein derartiger gleichzeitiger Übertragungsversuch erzeugt eine sogenannte Kollision.
Auf dem Gebiet der Informationsnetze ist ein als CSMA (Carrier Sense Multiple Access) bezeichnetes Verfahren durch die EP 00 88 906 B1 bekannt, d. h. Mehrfachzugriff mit Abfühlung des Trägers. Nach diesem Verfahren muß ein Koppler, der eine Nachricht aussenden will, vorher den Kommunikationsträger abfühlen. Nur wenn keine Transmission im Gange ist, hat der Koppler das Recht zu senden.
Da jedoch die Ausbreitungsverzögerungen der Signale auf dem Kommunikationsträger nicht Null sind, können mehrere Stationen zum gleichen Zeitpunkt feststellen, daß keine Transmission vorhanden ist und ihre eigenen Nachrichten aussenden. Damit tritt also ein Kollisionsfall auf.
Im französischen Patent Nr. 23 06 478 der XEROX CORPORATION wird ein Protokoll vorgeschlagen, das es erlaubt, derartige Kollisionen festzustellen und nach der Feststellung der Kollision die erneuten Übertragungen, die zunächst bei einem anfänglichen Übertragungsversuch aufgrund der Kollision erfolglos blieben, zu steuern.
In seiner gegenwärtigen Entwicklungsstufe ist dieses Protokoll unter dem Namen CSMA-CD/BEB bekannt (Collision Detection and Binary Exponential Backoff). Hier ist insbesondere auf das Dokument hinzuweisen: The Ethernet Local Network: Three Reports, veröffentlicht von Xerox, Palo Alto Research Center, Vereinigte Staaten, Februar 1980.
Der Nachteil dieses bekannten Protokolls besteht darin, daß es auf Wahrscheinlichkeitsüberlegungen beruht. Es kann tatsächlich nicht mit Sicherheit garantieren, daß eine von einer bestimmten Station an den Kommunikationsträger übergebene Nachricht mit Erfolg an den Kommunikationsträger in einer endlichen Zeit übertragen werden kann, die im voraus bestimmbar wäre. Wenn eine dringende Nachricht, d. h. eine solche, die Vorrang vor anderen Nachrichten hat, übertragen werden soll, wird diese denselben Regeln unterworfen wie eine nicht dringende Nachricht ohne Priorität und kann aus diesem Grund unter Umständen nicht innerhalb der gewünschten Zeitspannen übertragen werden.
Eine Vielzahl von automatischen und informationsverarbeitenden Systemen, die in Echtzeit arbeiten, verlangen nun aber, daß alle oder ein Teil der von den Geräten erzeugten Nachrichten innerhalb bestimmter Zeitspannen übertragen werden müssen, die nach oben begrenzt sind, wobei die obere Grenze im voraus bekannt ist.
In einem ganz anderen Zusammenhang, bei dem die Übertragung in Zeitabschnitten erfolgt, die auf gleiche Weise für alle Geräte vorbestimmt sind, wurde dieses Problem von J. I. Capetanakis studiert und in dem Artikel "Generalized TDMA: The Multi-accessing Tree Protokoll", IEEE Transactions on Communications, Vol. 1, Com. 27, No. 10, Oktober 1979 beschrieben. Capetanakis schlägt einen Algorithmus zur Auflösung von Kollisionen für Übertragungsträger vom Typ der Satellitenprogramme vor. Abgesehen von der Tatsache, daß dieser Algorithmus auf Kommunikationsträger für große Entfernungen angewandt ist, da ein geostationärer Satellit 36 000 km über der Erde steht, berücksichtigt der Algorithmus die folgenden Überlegungen:
  • - Der Satellitenkanal ist synchron, alle Koppler enthalten jeweils einen physikalischen Taktgeber, der genau mit allen anderen Taktgebern synchron läuft, und die Nachrichten werden nur in Zeitscheiben übertragen, die genau bestimmt und alle gleich sind (das ist das Prinzip des Systems TDMA, für Time Division Multiple Access).
  • - Zwischen den Kopplern oder den Nachrichten besteht keine absolute oder relative Priorität.
  • - Jede Nachricht paßt genau in eine Zeitscheibe.
Es leuchtet unmittelbar ein, daß die von Capetanakis gemachten Vorschläge nicht auf Protokolle der Art CSMA-CD übertragen werden können, deren Arbeitsweise grundlegend verschieden ist von der bei TDMA-Übertragungen. Außerdem zeigt Capetanakis nicht, nach welchen Regeln ein Koppler weiß, ob er erneut das Recht hat, zu übertragen, sei er nun in einer Kollision begriffen oder nicht. Schließlich behandelt der von Capetanakis vorgeschlagene Algorithmus nicht den Fall von Fehlern oder Ausfällen.
Es bleibt also dabei, daß in den bekannten Netzen vom Typ CSMA-CD eine Kollision nach Wahrscheinlichkeitsgesichtspunkten aufgelöst wird, wie es im Vorstehenden gezeigt wurde. Für den Fall der Kollision zwischen dringenden Nachrichten besteht überhaupt keine Möglichkeit, die Übertragung dieser innerhalb einer vorher bestimmten Zeit zu garantieren.
Unter diesen Bedingungen ist es die Aufgabe der vorliegenden Erfindung, die gerade aufgezeigten Probleme zu lösen. Die Lösung wird durch die Merkmale des Anspruchs 1 verwirklicht.
Im einzelnen weist die Erfindung in Form eines neues Verfahrens und einer neuen Einrichtung die folgenden Vorteile auf:
  • - Das Verfahren arbeitet mit Optionen, wobei jede Option entweder bei der Herstellung der Koppler oder bei ihrer Installation nach der Herstellung ausgewählt werden kann.
  • - Wenn die Operation bei der Installation ausgewählt werden, ist die Änderung der Option während des Betriebs des Netzes oder des Kommunikationssystems möglich, ohne daß es notwendig wäre, seinen Betrieb vollständig zu unterbrechen.
  • - Eine erste Option, die einer "allgemeinen" Betriebsweise entspricht, erlaubt es, Koppler zu verwalten, die einen gemischten periodischen und aperiodischen Verkehr erzeugen.
  • - Eine andere Option, die einer "periodischen" Betriebsweise entspricht, erlaubt es, speziell Koppler zu verwalten, die einen periodischen Verkehr erzeugen.
  • - Das Verfahren setzt keinerlei obere besondere Grenze für die Größe der Nachrichten.
  • - Alle Nachrichten, die zur Übertragung an den physikalischen Träger übergeben sind, werden in einer endlichen Zeitspanne übertragen, deren obere Grenze für eine maximale gegebene Größe der Nachrichten bekannt ist, unabhängig davon, ob eine Kollision auftritt oder nicht. Wenn eine Kollision erfolgt, wird das zur vollständigen Auflösung dieser Kollision erforderliche Zeitintervall als Epoche bezeichnet.
  • - Wenn die Nachrichten oder die Namen der Koppler in mehrere unterschiedliche Prioritätsklassen eingeteilt sind, bestimmt sich die Reihenfolge der Übertragung von Nachrichten, bei denen eine Kollision aufgetreten ist, in einer Epoche in der Reihenfolge der Prioritäten.
  • - Innerhalb einer Epoche kann jeder Koppler eine beliebige, aber feste Anzahl von Nachrichten aussenden. Diese Anzahl kann bei der Installation des Kopplers bestimmt oder während des Betriebs des Kommunikationssystems geändert werden.
  • - Der vollständige Ausfall des Kopplers, das Auftreten eines Übertragungsfehlers oder ein Ausbau des Kopplers führt nicht zu einem totalen Ausfall des Systems. Es ist möglich, einen neuen Koppler einzubauen oder einen auszubauen, ohne den Betrieb des Systems zu unterbrechen.
Das Verfahren toleriert auch fehlerhaftes Verhalten (z. B. wetterbedingte Störungen), vorausgesetzt, daß dieses Verhalten von allen Kopplern festgestellt wird. Allgemeiner ausgedrückt, besitzt das Verfahren die gleichen Eigenschaften bezüglich der Verläßlichkeit wie das Verfahren CSMA-CD.
Wenn keine Kollision auftritt, entspricht das Verfahren des Zugangs zum Träger dem Typ CSMA-CD. Das vorgeschlagene Verfahren kann in die Struktur der Geräte integriert werden, die das Protokoll CSMA-CD/BEB realisieren.
Wie später noch deutlicher wird, schaltet das System laufend zwischen den beiden Betriebszuständen hin und her, wenn die allgemeine Betriebsweise ausgewählt wird:
  • - Zustand "Epoche in Gang": Eine Epoche wird genau als das Zeitintervall definiert, das zwischen dem Auftauchen einer Kollision liegt, wenn der Kanal im Zustand "keine Epoche" ist, und der vollständigen Auflösung dieser Kollision; im Verlauf einer Epoche können Kollisionen auftreten; der Zugangsmodus wird als "abgeschnitten" bezeichnet und wird durch das Verfahren definiert, das in dem vorliegenden Dokument beschrieben ist.
  • - Zustand "keine Epoche": Alle vorherigen Kollisionen sind aufgelöst; der Zugangsmodus wird als "zufällig (aleatorisch)" bezeichnet (CSMA-CD).
Wenn die periodische Betriebsweise ausgewählt ist, bleibt das System dauernd im Zustand "Epoche in Gang", wobei jeder Epoche eine allgemeine Kollision vorangeht, die durch das Verfahren CSMA-CD festgestellt wurde. In dieser Betriebsweise kann innerhalb einer Epoche keinerlei Kollision auftreten, wenn keine Fehler im Betrieb entstehen.
Die Erfindung erlaubt es außerdem, das Spektrum der Verkehrsklassen zu erweitern, die von Protokollen der Art CSMA-CD/BEB verwaltet werden. Im besonderen erlaubt das Verfahren nach der Erfindung für die deterministische Auflösung von Kollisionen, daß eine wirksame Verwaltung eines Nachrichtenverkehrs mit periodischem Charakter ebenso sichergestellt wird wie eines Verkehrs mit multiplen Prioritäten.
Zum besseren Verständnis der Erfindung wird auf das vorerwähnte französische Patent Nr. 23 06 478 Bezug genommen sowie auf die Norm IEEE 802.3, in der die allgemeinen Charakteristiken von Netzen des Typs ETHERNET beschrieben sind.
Im folgenden wird als p die Übertragungsverzögerung von Signalen von einem Ende zum anderen des Kommunikationsträgers bezeichnet. Mit TC wird eine Dauer von mehr als zweimal p bezeichnet und als Kanalzeitscheibe definiert (channel slot time in der vorerwähnten Norm IEEE 802.3).
Nach der Erfindung wird als "Kanalphase" das Intervall bezeichnet, das entweder einer vollständigen und erfolgreichen Übertragung einer Nachricht mit einer beliebigen Dauer von mindestens gleich TC entspricht, oder in der eine Kollision aufgetreten ist (mit den entsprechenden Störungen), oder aber ein ruhiger Zustand ohne Sendung und ohne Kollision existierte.
Ein Verfahren und eine Einrichtung mit diesen Eigenschaften sind in den Ansprüchen 1 bzw. 13 beschrieben; Ausgestaltungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der folgenden detaillierten Beschreibung und den beigefügten Zeichnungen. Es zeigt
Fig. 1 den allgemeinen Aufbau eins Kommunikationsnetzes;
Fig. 2 den prinzipiellen Aufbau eines Kopplers;
Fig. 3 in etwas genauerer Weise den Aufbau eines Schaltkreises des Kopplers aus Fig. 2;
Fig. 4 weitere Einzelheiten des Schaltkreises aus Fig. 3;
Fig. 4A und 4B Zeitdiagramme für den Schaltkreis der Fig. 3 und 4;
Fig. 5 den Aufbau einer anderen Ausführungsform der Schaltung aus Fig. 2;
Fig. 6 ein Diagramm zur Erläuterung der Funktion des "Epochenzählers";
Fig. 7A bis 7C Darstellungen der drei Ausführungsformen des Epochenzählers;
Fig. 8 ein Diagramm zur Erläuterung der Funktion einer Einrichtung nach der Erfindung;
Fig. 9A und 9B den Aufbau der beiden Ausführungsformen des zweiten Zählers;
Fig. 10 eine Variante des Diagramms in Fig. 6;
Fig. 11 eine Variante des Teils R des Diagramms in Fig. 8, der von einem gestrichelten Rahmen umgeben ist.
Die beigefügten Zeichnungen enthalten zahlreiche Elemente, die nur durch Zeichnungen vermittelt werden können. Sie stellen deshalb einen integralen Teil der Beschreibung dar, um die Erfindung zu erläutern und zu definieren.
Ebenfalls in die vorliegende Beschreibung eingeschlossen sind die bekannten Elemente, die sich auf die Netze CSMA-CD und/oder Ethernet beziehen, insbesondere das schon erwähnte Patent, die Artikel und die Norm.
Fig. 1 zeigt eine Vielzahl von Stationen S₁, . . . S i , . . . S n . Jede davon ist mit einer oder mehreren automatisierten Einrichtungen verbunden, beispielsweise Sensoren/Stellelemente, programmierbare Automaten, Steuer- oder Regeleinrichtungen, Datenverarbeitungsendgeräte, Rechner, Telefoneinrichtungen oder auch Videoendgeräte.
Jede Station S i ist physikalisch mit einem Träger oder einem Übertragungskanal SC verbunden, und zwar über eine Vorrichtung (Hardware) oder eine Kombination aus einer Vorrichtung und dazugehörigen Programmen (Software), die als Koppler bezeichnet und mit C i abgekürzt werden. Die Station S i enthält außerdem eine Steuereinheit UC i , die mit dem Koppler C i über einen internen Bus (Sammelleitung) BI i verbunden ist. In bestimmten Fällen kann man den Koppler auch in eine angeschlossene Einrichtung einbauen.
Der Übertragungskanal SC ist seinerseits ein Übertragungsträger, und zwar elektromagnetischer oder optischer Art, passiv, semipassiv oder aktiv, (d. h., ausgestattet mit Verstärkern und Regeneratoren). Er erhält mindestens eine Übertragungsleitung, wobei daran zu erinnern ist, daß mehrere Leitungen in vielen Fällen nützlich sind, um eine erhöhte Zuverlässigkeit zu erreichen, indem redundante Träger und/oder Sende/Empfangseinrichtungen und/oder übertragene Informationen verwendet werden.
Fig. 2 zeigt als Beispiel den Aufbau eines Kopplers C i (im folgenden wird der Index i weggelassen). Dieser Kuppler besteht hauptsächlich aus einem als GSC bezeichneten Schaltkreis, der den physikalischen Zugang zum Übertragungsträger SC steuert und einen mit GER bezeichneten Schaltkreis, in dem die Verwaltung von Senden, Empfangen und der Kollisionen enthalten ist.
Der Schaltkreis GSC kann in bekannter Weise mit Hilfe integrierter Schaltungen, beispielsweise dem Modell 82 501 der US-Firma INTER CORPORATION, oder mit Hilfe von diskreten Elementen, aufgebaut werden. Dieser Schaltkreis muß mindestens drei logische Signale und deren Komplemente zur Verfügung stellen:
  • - CD, mit dem angezeigt wird, daß eine Kollision festgestellt wurde, und sein Komplement ,
  • - TxD, das anzeigt, daß die Übertragungsleitung des Kopplers aktiv ist und sein Komplement ,
  • - RxD, das anzeigt, daß die Empfangsleitung des Kopplers aktiv ist und sein Komplement .
Der Zustand von TxD und steht ausschließlich unter der Steuerung des betreffenden Kopplers, während derjenige von RxD und CD sowie deren Komplemte von den anderen Kopplern abhängen.
Wenn ein einziger der Koppler sendet, geht RxD in allen Kopplern in den wahren Zustand über, und zwar spätestens nach einer Zeitdauer gleich p (wobei p die Ausbreitungsverzögerung der Signale von einem Ende zum anderen des Übertragungsträgers ist, wie es weiter oben schon definiert wurde).
Wenn zwei Koppler oder mehr den Zustand feststellen und sich zu einem Sendevorgang entschließen, geht der Zustand CD nach spätestens einer Verzögerung von 2 p bei allen Kopplern in den wahren Zustand über.
Die Tatsache, daß eine Nachricht gerade ohne Kollision übertragen wird, ist durch die folgende Bedingung dargestellt:
& RxD,
wobei das Symbol & die logische Verknüpfung UND darstellt.
Schließlich ist RxD immer wahr, wenn CD wahr ist, da im Fall einer Kollision immer notwendigerweise ein Empfangsvorgang im Gang ist (der möglicherweise inkohärent oder gestört sein kann).
Die vorstehenden Überlegungen setzen eine zeitliche Aufteilung voraus. Bei dem Verfahren CSMA-CD erfolgt diese zeitliche Aufteilung in asynchroner Weise auf dem Niveau jedes Kopplers entsprechend den Übergängen und den Kanalzeitscheiben (TC). Zur Realisierung der Erfindung erfolgt diese Aufteilung entsprechend den "Kanalphasen". Eine Kanalphase ist:
  • - entweder das Zeitintervall, das einer vollständigen und erfolgreichen Übertragung einer Nachricht entspricht (Bedingung und RxD; variable Dauer),
  • - oder dem Zeitintervall, das gleich einer Kanalzeitscheibe ist, während der eine Kollision auftritt sowie die entsprechenden Störungen (Bedingungen CD und RxD),
  • - oder ein Zeitintervall gleich der Kanalzeitscheibe, während der der Kanal ruhig ist, ohne Sendevorgang und ohne Kollision ( und ).
Diese zeitliche Aufteilung wird auf dem Niveau des Schaltkreises GER (Fig. 2) ausgeführt, von dem ein Ausführungsbeispiel, das sich im wesentlichen auf Hardware stützt, in den Fig. 3 und 4 dargestellt ist, während die Fig. 5 und folgende bevorzugte Ausführungsformen des gleichen Schaltkreises darstellen.
Hardware-Ausführung
In den Fig. 3 und 4 erkennt man den unteren Teil des internen Busses BI, sowie auf der rechten Seite die drei Signale CD, RxD und TxD, die zwischen dem Schaltkreis GER und dem schon erwähnten Schaltkreis GSC ausgetauscht werden.
Liegt eine Sendeanforderung durch die Station vor sowie eine entsprechende zu übertragende numerische Nachricht, so gibt der interne Bus BI diese Nachricht an einen Schaltkreis 10, der als Seriell-/Parallelumsetzer bezeichnet wird. Dabei kann es sich beispielsweise um einen integrierten Schaltkreis des Typs 2652 handeln, der in Frankreich von der Firma Soci´t´ RTC vertrieben wird.
Die Funktion des Schaltkreises 10 besteht beim Sendevorgang darin, die Nachricht, die ihm in Parallelform vom internen Bus BI zugeführt wird, in serielle Form umzusetzen, wobei ihr ein Vorspann und/oder Synchronisationsbit hinzugefügt werden. Diese Nachricht wird dann mit dem Signal TxD übertragen. Umgekehrt setzt der Schaltkreis 10 bei einem Empfang ohne Störungen die Informationen in Parallelform um, die ihm seriell über den Übertragungskanal von einem anderen Koppler zugehen. Der Vorspann und die Synchronisationsbits werden dabei eliminiert. Die Signale RxD und TxD werden somit direkt zwischen dem Schaltkreis 10 und dem Schaltkreis GSC der Fig. 2 ausgetauscht. Der Schaltkreis 10 reproduziert in jedem Fall das Signal RxD, das jetzt in logischer Form vorliegt, damit er es an die begleitenden Elemente abgeben kann. Der Schaltkreis 10 umfaßt noch einen Eingang 101, der mit dem Ausgang eines logischen Gliedes 11 verbunden ist. Dieser Eingang 101 ermöglicht die Prüfung auf Gültigkeit und die Initialisierung des Sendevorgangs, wenn eine Sendeanforderung einer numerischen Nachricht durch die lokale Station vorliegt.
Ein (nicht dargestellter) Taktschaltkreis liefert ein schnelles Taktsignal H an einen Eingang eines UND-Gliedes 21. Der andere Eingang des Gliedes 21, der invertiert, empfängt das logische Signal RxD, das vom Schaltkreis 10 geliefert wird. Der Ausgang dieses UND-Gliedes 21 wird an ein Zähler-Verzögerungsglied 20 gelegt, das eine Verzögerung mit einer Dauer TC liefert, d. h., der Kanalzeitscheibe. Man erkennt also, daß die Kanalzeitscheibe in asynchroner Weise auf dem Niveau jedes der Koppler definiert ist, und zwar ausgehend von dem schnellen Takt H, der zu ihm gehört.
Am Ende der Verzögerung setzt ein Ausgang 201 des Schaltkreises 20 den Schaltkreis 22 in Gang, um die "Kanalphasen" festzustellen. Der Schaltkreis 22 empfängt als andere Eingänge die Signale CD und RxD. Er weist zwei mit +:= und -:= bezeichnete Ausgänge auf. Es ist festgelegt, daß +:= zu einer Rechtsverschiebung in einem Schieberegister gehört, während -:= eine Linksverschiebung anzeigt.
Das Signal +:= wird in einem Flip-Flop 23 gespeichert. Das Ausgangssignal dieses Flip-Flops 23, der mit +:= bezeichnet ist, sowie die beiden Ausgangssignale des Schaltkreises 22, werden einerseits an einen Schaltkreis 24 zur Verwaltung der Epochen E angelegt, und andererseits an einen Schaltkreis 26, der eine Teilung durch zwei durchführt. An den Schaltkreis 26 kann auch der interne Bus BI angeschlossen sein.
Der Ausgang des Schaltkreises 26 sowie der des Flip-Flops 23, werden einem Schaltkreis 28 zugeführt, der einen zweiten Zähler darstellt, der zur Realisierung der Erfindung verwendet wird.
Schließlich wird der Ausgang des Schaltkreises 24 gleichzeitig mit dem schnellen Taktsignal H an ein UND-Glied 30 angelegt. Der Ausgang dieses Gliedes beaufschlagt einen Flip-Flop 31, der hier mit einem Draht an den internen Bus angeschlossen ist, und der mit seinem eigenen Ausgang das schon erwähnte UND-Glied 11 steuert.
Im folgenden wird auf Fig. 4 Bezug genommen, in der eine besondere Ausführungsform der Elemente aus Fig. 3 dargestellt ist.
Ein Flip-Flop 225 empfängt als Taktsignal das logische Signal RxD. An seinem Eingang D wird ein logisches Signal "1" angelegt, hier mit +5 Volt. Sein Ausgang Q geht somit am Ende des ersten Impulses im Signal RxD in den logischen Pegel "1" über. Das Signal des Ausgangs Q des Flip-Flops 225, das mit RxD′ bezeichnet ist und ein komplementäres Signal darstellt, wird an einem Steuereingang zum Laden des Schaltkreises 20 angelegt, der hier als Schieberegister ausgeführt ist. Bei Aktivierung dieses Eingangs empfängt das Schieberegister 20 ein logisches Signal "0" in allen seinen Zellen, mit Ausnahme von einer, in der ein logisches Signal "1" empfangen wird. Es wird dann durch sein Eingangssignal SL gepulst mit Hilfe des Ausgangssignals des UND-Glieds 21, das schnelle Taktimpulse H liefert, und zwar beschränkt auf die Zeitdauer des komplementierten RxD Signals. Die "Kanalzeitscheiben" werden somit nur dann ausgewertet, wenn kein Empfangsvorgang im Gang ist. Der Ausgang HTC des Schaltkreises 20 wird sofort während einer Zeitdauer erregt, die gleich einem schnellen Taktzyklus ist. Sie wird bei Abwesenheit des Signals RxD aufs neue erregt, und zwar nach einer Anzahl von schnellen Taktimpulsen, die der gewünschten Verzögerungszeit TC entsprechen. Dieser Ausgang wird zuerst an den Eingang D eines anderen Flip-Flop-Speichers 228 angelegt, dessen Takteingang den schnellen Takt H empfängt. Der Ausgang Q dieses Flip-Flops 228 erzeugt mit dem Ende des ersten schnellen Taktimpulses, der dem Erscheinen des Signals HTC folgt, einen Rücksetzimpuls Null, der an den Eingang R des Flip-Flops 225 angelegt wird. Dieser letztere ist dann wieder bereit, ein neues Signal RxD zu berücksichtigen.
Der Ausgang Q des Flip-Flops 228 erzeugt ebenfalls ein Rücksetzsignal Null für einen weiteren Flip-Flop 229, dessen Eingang D ein logisches Signal "1" empfängt und dessen Takteingang mit dem Signal CD beaufschlagt wird. Der Ausgang des Flip-Flops 229 liefert ein Signal zur Feststellung einer Kollision, das mit CD′ bezeichnet wird und somit eine Auffrischung nach jeder Kanalzeitscheibe empfängt, die durch den Verzögerungsschaltkreis 20 gemessen wird.
Nun wird das Signal +:= von einem logischen UND-Glied 221 geliefert, das einerseits das Signal HTC empfängt und andererseits das Signal CD′. Das Signal -:= wird durch ein logisches UND-Glied 222 geliefert. Ein Eingang dieses Gliedes wird durch ein ODER-Glied 223 geliefert, das einerseits das Signal HTC empfängt und andererseits das Signal RxD′. Der andere Eingang des UND-Gliedes 222, der komplementiert ist, empfängt das Signal CD′,
Das Flip-Flop 23 empfängt das Signal +:= an seinem Eingang D. Als Taktsignal wird ihm das schnelle Taktsignal H zugeführt. Das Flip-Flop übernimmt daher das Signal +:= beim ersten schnellen Taktimpuls H, der folgt, wodurch ein Signal +:=′ entsteht, das bezüglich des Signals +:= um einen Takt verzögert ist.
Die erste Funktion des eben beschriebenen Schaltkreises besteht darin, die Feststellung der Kanalphasen durchzuführen, wobei eine Kanalphase definiert ist als:
  • - eine Kollision, die während eines Zeitintervalls erfolgt, dessen Dauer gleich der Kanalzeitscheibe ist, oder
  • - eine Nachricht, die mit Erfolg abläuft, und zwar während eines variablen Zeitintervalles, mit der Dauer der Nachricht, oder
  • - eine Kanalzeitscheibe, während der weder eine Kollision noch eine Nachricht auftritt.
Der linke Teil der Fig. 4A betrifft den Fall einer Kollision. Der Anstieg des Signals RxD zeigt an, daß eine oder mehrere Nachrichten auf dem Übertragungskanal vorhanden sind. Der Anstieg des Signals CD zeigt an, daß eine Kollision aufgetreten ist, d. h., daß es sich um mehrere Nachrichten handelt. Die Signale RxD′ und CD′ gehen in den logischen Zustand wahr über, und zwar bei der abfallenden Flanke der Signale RxD und CD. Die Anstiegsflanke des Signals RxD′ setzt das Laden des Inhalts des Schieberegisters auf gültig, das anschließend das Signal HTC am Ende des ersten Impulses erzeugt, der dem schnellen Taktsignal H folgt. Durch das Flip-Flop 228 erzeugt der Abfall des Impulses HTC die Rückkehr zum Zustand Null der Signale RxD′ und CD′. In der Zwischenzeit hat der Impuls HTC ein Signal +:= am Ausgang des UND-Gliedes 221 erzeugt.
Man erkennt, daß die Verzögerungsschaltung 20 blockiert ist, sobald das Signal RxD aktiv ist, und zwar aufgrund des UND-Gliedes 21. Der Fachmann wird auch verstanden haben, daß auch die Flip-Flops und Register mit der ansteigenden Flanke des angelegten Taktsignals geladen werden, während ihr Ausgangssignal erst mit der abfallenden Flanke des Taktimpulses gültig wird, d. h., ihr Ausgangssignal wird erst bei der abfallenden Flanke erzeugt, die der Anstiegsflanke des Taktimpulses folgt.
Der rechte Teil der Fig. 4A betrifft den Fall einer Nachricht, die erfolgreich abläuft. Hier erscheint während des Signals RxD kein Signal CD. RxD′ wird wie vorher erzeugt, und HTC erscheint nach einem Taktimpuls. Die Rücksetzung zu Null betrifft nur das Signal RxD′, da das Signal CD′ nicht in den logischen Zustand wahr übergegangen ist, da kein Signal CD aufgetreten ist. In diesem Fall liefert das UND-Glied 222 ein Signal -:= während des Impulses HTC.
Fig. 4B zeigt den Fall, in dem weder eine Kollision noch eine Nachricht auftritt. In dieser Situation ist das Schieberegister 20 auf sich selbst zurückgeführt, sein einziges Bit mit "1" erscheint periodisch an seinem Ausgang 201, um das Signal HTC zu erzeugen. Dieses wird unmittelbar von einem Rücksitzimpuls gefolgt, der übrigens keine Auswirkungen auf die Flip-Flops 225 und 229 hat. Da die Bedingung CD wahr ist, liefert das UND-Glied 222 ein Signal -:=. Diese Situation wiederholt sich dreimal in Fig. 4B und zeigt somit an, daß drei aufeinanderfolgende Kanalzeitscheiben ohne Kollision und ohne Nachricht abgelaufen sind.
Der Schaltkreis in Fig. 4 kann in zwei verschiedenen Betriebsweisen arbeiten, die gemeinsam in allen Kopplern ausgewählt werden müssen, die mit dem gleichen Kommunikationsträger arbeiten.
Die Betriebsweise ist durch ein Bit (Moden-Bit) folgend definiert:
  • - der Wert "0" zeigt die allgemeine Betriebsweise an, die einer Zweiersequenz (dichotomische Sequenz) entspricht,
  • - der Wert "1" zeigt die periodische Betriebsweise an, die einer Sequenz entspricht, bei der die Indices einer nach dem anderen untersucht wird.
In dieser Ausführungsform enthält der Schaltkreis 24 ein Element 241, daß das Moden-Bit empfängt. Das Element 241 ist ein Demultiplexor, der eine Vorpositionierung der Eingänge eines Schieberegisters 241 in Abhängigkeit davon erlaubt, ob das Moden-Bit 0 ist oder 1 (das Schieberegister hat zwei Blocks von k+1 Eingängen einerseits und n-K-2 Eingängen andererseits). Hier bezeichnet n die Anzahl der potentiell an den Kanal anschließbaren Koppler, wobei n mit k Bits kodiert werden kann und k die ganzzahlige Näherung bezüglich log₂n ist, wenn log₂ den Logarithmus zur Basis 2 bedeutet.
Es ist nun darauf hinzuweisen, daß die allgemeine Betriebsweise in zwei Fälle unterteilt werden kann, wobei der eine als blockierte Eingänge (EB) bezeichnet wird, und der andere als freie Eingänge (EL). In der Betriebsweise mit blockierten Eingängen überträgt ein Schalter 305 das Ausgangssignal 242 direkt zu einem komplementären Eingang des Gliedes 30. In der Betriebsweise mit freien Eingängen wird der Ausgang Q des Flip-Flops 306 übertragen. Es ist daran zu erinnern, daß der zweite Eingang des Gliedes 30 das Taktsignal H empfängt. Sein Ausgang definiert den Takt des Flip-Flops 31, dessen Eingang D einen der Drähte des internen Busses BI empfängt, der einer Sendeanforderung für eine Nachricht entspricht. Wenn der Ausgang 242 des Registers 240 anzeigt, daß dieses Null ist, erzeugt der Ausgang Q des Flip-Flops 31 ein Signal DT, das dazu dient, das Senden gültig zu setzen und zu initialisieren, und zwar durch seine Wirkung auf einen der Eingänge des UND-Gliedes 11. Dieses autorisiert das Senden nur, wenn einerseits kein Signal vorliegt, das einen Gang befindlichen Empfang anzeigt (Signal wahr) und andererseits, wenn das Register 280 mit dem Element 28 ein Ausgangssignal 281 in einem vorbestimmten Zustand erzeugt, der den Wert 0 darstellt, wie es später noch im einzelnen erläutert wird. Der Zustand 1 des Ausgangs 281 entspricht einem Koppler nach einer Zweierteilung.
Der gleiche Ausgang 281 wird am Takteingang eines Flip-Flops 306 berücksichtigt, das dann in den wahren Zustand übergeht, so daß sein Ausgang Q das schon erwähnte UND-Glied 30 beaufschlagen kann, wenn die Bedingung "freie Eingänge" oben vorliegt und der Schalter 305 in der entsprechenden Stellung ist.
Schließlich gelangt derselbe Ausgang 281 zum komplementierten Eingang eines UND-Gliedes 261, dessen anderer Eingang das Signal +:= vom UND-Glie 221 empfängt, sowie das Signal DT, das vom Ausgang Q des Flip-Flops 31 geliefert wird.
Der Ausgang des UND-Glieds 261 wird an den Eingang SR zur Rechtsverschiebung eines Schieberegisters 260 angelegt, das eine Zweiteilung durchführt. Dieses Schieberegister 260 enthält einen Index x. Es empfängt als Taktsignal das schnelle Taktsignal H. Als Ladebefehl wird ihm der Ausgang eines UND-Gliedes 265 zugeführt. Ein erster komplementierter Eingang dieses Gliedes ist das Signal, das vom Ausgang 242 des Registers 240 zur Verwaltung der Epoche geliefert wird. Ein zweiter Eingang des Gliedes 265 ist das Signal der freien Eingänge, das vom Ausgang Q des Flip-Flops 306 geliefert wird. Ein dritter Eingang des UND-Gliedes 265 wird durch ein ODER-Glied 266 geliefert. Dieses empfängt einerseits den Auswahldraht, der ebenfalls an das Flip-Flop 31 geführt ist. Andererseits empfängt das Glied den Ausgang eines Verzögerungsschaltkreises (Monoflop) vom Typ 74 121, dessen Eingang das Ausgangssignal 242 des Register 240 zur Verwaltung der Epoche ist. Schließlich wird der Ausgang des Schaltkreises 74 121 auch an eine Reihe von UND-Gliedern 270 angelegt, deren andere Eingänge die Ausgänge eines Schaltkreises 290 sind.
Der Schaltkreis 290 kann vom internen Bus BI mit einem Wert x′ geladen werden, den er an die schon erwähnten Glieder 270 sowie an den Schaltkreis 280 überträgt. Dieser Wert x′ definiert einen oder mehrere andere Indizes, die in der Epoche verwendet werden können.
Das niedrigstwertige Bit mit der Bezeichnung LSB im Ausgang des Schieberegisters 260 öffnet ein UND-Glied 275, dessen anderer Eingang das Signal +:=′ ist. Der Ausgang dieses Gliedes 275 wird einem Demultiplexor 282 zugeführt, der durch das Signal der Betriebsart gesteuert wird.
Dadurch erhält das Schieberegister 280, das eine Größe j mit n Bits definiert, auf seinem Eingang zur Linksverschiebung SL das Signal -:=, das vom UND-Glied 222 ausgeht. Es empfängt ein Signal, das aus +:=′ und dem niedrigstwertigen Bit des Registers 260 abgeleitet ist, und zwar entweder auf seinem Eingang SR für eine Rechtsverschiebung oder auf seinem Ladeeingang in Abhängigkeit vom Zustand des Moden-Bits, das an den Demultiplexor 282 angelegt ist. Wie die anderen empfängt das Schieberegister 280 das schnelle Taktsignal H.
Das Flip-Flop 306 empfängt auf seinem Eingang D ein Signal "1" mit dem Wert +5 Volt. An seinem Takteingang wird das auf Leitung 281 anstehende Signal angelegt, das dem am weitesten links stehenden Bit des Registers 280 entspricht. Der Fachmann wird verstehen, daß beim erstmaligen Verschieben dieses Schaltkreises nach rechts das Signal 281 von "0" auf "1" übergeht. In der Folge wird dieses Signal in Abhängigkeit der aufeinanderfolgenden Verschiebungen dieses Registers (nach rechts oder nach links) wieder den Wert "0" erreichen (nach einer ausreichenden Anzahl von Verschiebungen nach links). Dann ist am Takteingang des Flip-Flops 306 ein vollständiger Impuls erschienen und sein Ausgang geht in den Zustand "1" über. Bei der Betriebsart mit freien Eingängen beaufschlagt das Flip-Flop den komplementierten Eingang des Gliedes 30 und sperrt somit eine spätere Sendeanforderung. Die Tatsache, daß das Signal 281 von "1" auf "0" übergeht, zeigt an, daß der Koppler von neuem das Recht zum Senden hat. Die Übertragung für diesen Koppler wird somit verboten, nachdem dieser einmal das Recht hatte, nach einer anfänglichen Kollision zu senden. Das Sendeverbot wird aufgehoben, wenn das Signal 242 wieder auf 0 übergeht, d. h. wenn die Epoche abgeschlossen ist. Das wird erreicht, indem das komplementierte Signal 242 an den Eingang R des Flip-Flops 306 angelegt wird (dieser Eingang ist auf 0 zurückgesetzt).
Der Betrieb dieser Elemente wird in den Fig. 3 und 4 in funktioneller Weise und zusammen mit den anderen Ausführungsformen der vorliegenden Erfindung beschrieben.
Diese anderen Ausführungsformen verwenden eine Hardwarearchitektur, die in Fig. 5 dargestellt ist. Man findet dort wieder den Schaltkreis GSC, der einen direkten Anschluß an den Übertragungskanal SC aufweist. Wie vorher liefert dieser Schaltkreis die Signale CD, RxD, TxD und deren Komplemente. Das Signal RxD wird an einem Seriell-/Parallelumsetzer 110 angelegt, der außerdem mit dem internen Bus verbunden ist und das serielle Signal TxD erzeugt. Eine Verarbeitungseinheit für die Übertragung besteht aus einem Schaltkreis 120, der auf einem Mikroprozessor 8751 oder 8080 der Firma INTEL Corporation aufgebaut werden kann. Diese Einheit 120 ist mit einer Schnittstelle 121 versehen, mit der sie Information mit dem internen Bus BI austauschen kann. Die Verarbeitungseinheit empfängt in Form von Unterbrechungsignalen die Signale CD und RxD, die vom Schaltkreis GSC verarbeitet werden.
Die von der Verarbeitungseinheit 120 verlangte Betriebsweise wird im folgenden anhand von Darstellungen in Form von Petrinetzen beschrieben, in denen aber außerdem die Abfragen eingebaut wurden, die denjenigen in Darstellungen klassischer Flußdiagramme vergleichbar sind.
Epochenzähler oder Zähler E (Fig. 6)
Der Ausgangspunkt des Diagramms in Fig. 6 ist die Initialisierung eines Kopplers (Block 50). Die Initialisierung fängt mit einem Betriebsarttest 51 an, wobei die Betriebsart durch ein Bit definiert ist, das auf den Wert "0" (allgemeine Betriebsart) oder "1" (periodische Betriebsart) gesetzt ist, und zwar bei der Herstellung der Koppler oder aber bei deren Installation. In der allgemeinen Betriebsart ist der Ausgang der Abfrage 51 ein Schritt 52, in dem ein Zähler E auf einen Wert k+1 gesetzt wird. (Das Symbol := bedeutet die Zuweisung eines numerischen Wertes zu einer Variablen). In der periodischen Betriebsart geht der Ausgang der Abfrage 51 zum Schritt 53, in dem der Wert N in den Zähler E gesetzt wird. Später wird noch ersichtlich, daß N in der periodischen Betriebsart den Wert n hat und in der allgemeinen Betriebsart den Wert 2.
Dann folgt bei Bezugszeichen 54 ein "Platz", wie er aus den Petrinetzen bekannt ist. Die dicke horizontale Linie 56 bedeutet die Abfrage des Übertragungsträgers. Auf dieser Linie 56 erscheint ein weiterer Platz 55 mit der Bezeichnung FPC als Abkürzung für "Kanalphasenende". Nur wenn die beiden Plätze 54 und 55 beide ihr Jeton besitzen, kann die Abfrage des Trägers auf Linie 56 erfolgen. (Das entspricht dem Block 2 in Fig. 3.)
Es wird daran erinnert, daß sich der Zähler E hier bei Null im Ruhezustand der Einrichtung befindet. Er geht zu ganzzahligen, positiven Werten über, wenn sich die Einrichtung in ihrem Arbeitszustand befindet, wobei er eine vorbestimmte Beziehung mit der Sequenz von Unterensemblen des Index beibehält, nach der sich die Einrichtung entwickelt. Vier Situationen können auftreten:
  • - CD und E positiv. Eine Abfrage 60 prüft dann von neuem das Moden-Bit. In der allgemeinen Betriebsart wird dann der Zähler E im Schritt 61 um eins erhöht. In der periodischen Betriebsart ist die Situation anormal. Ein Schritt 62 führt eine geeignete Fehlerbehandlung durch, um das Kommunikationsnetz wieder in Betrieb nehmen zu können.
  • - CD und E=0. Schritt 63 setzt den Zähler E auf den Wert N, wobei, wie schon gesagt, N den Wert 2 in der allgemeinen Betriebsart und den Wert n in der periodischen Betriebsart aufweist.
  • - und E positiv. Der Schritt 64 vermindert den Wert im Zähler E um eins, unabhängig von der Betriebsart.
  • - und E=0. Hier wird direkt zum Platz 54 zurückgekehrt.
Das Diagramm von Fig. 6 sowie der Aufbau des Schaltkreises 24, der dem Diagramm in den Fig. 3 und 4 entspricht, läßt sich besser verstehen, wenn die detaillierten Diagramme der Fig. 7A bis 7C betrachtet werden. Es wird nun zugelassen, daß das Zählen der Größe E durch ein Schieberegister erfolgt, das mindestens k+1 Bits (vorzugsweise k+2) für den Fall der allgemeinen Betriebsart aufweist und n Bits für die periodische Betriebsart. Trotzdem wird auch jetzt noch vom "Zähler E" gesprochen.
In der allgemeinen Betriebsart (Fig. 7A) haben alle Bits des Schieberegisters 240 anfangs den Wert 1. Ein Wert 1 wird auf der linken Seite so zugeführt, daß bei einer Verschiebung nach rechts ein Wert 1 in das höchststellige Bit des Registers 240 eingegeben wird. Umgekehrt wird ein Wert 0 an der rechten Seite zugeführt, so daß bei einer Verschiebung nach links ein Wert 0 in die Bit-Position k+2 gelangt, die sich am weitesten rechts befindet.
Die Bits 2 bis k+2 des Schieberegisters 240 sind weiterhin aufeinander rückgekoppelt, d. h. man kann sie bei Bedarf identisch zurückkopieren. So werden bei jeder Kollision die Bits 2 bis k+2 des Registers auf sich selbst zurückgeführt, während das erste Bit (Bit 1) mit 1 geladen wird, um es anschließend nach rechts zu verschieben. Dadurch erreicht man auch einen bestimmten Anfangswert, ohne einen Unterschied zu machen zwischen der ersten Kollision und den folgenden.
Der Ausgang des Zählers E ist der Zustand seines ersten Bits, wie es sich aus Fig. 7A ergibt (äquivalent zum Signal 242 in Fig. 4).
Fig. 7B betrifft den Fall der periodischen Betriebsart. Das Schieberegister 240 enthält nun n Bits. Alle können gleichzeitig durch einen externen Ladebefehl auf 1 gesetzt werden. Bei einer Verschiebung nach rechts wird ein Wert 1 links eingeführt, während bei Verschiebungen nach links ein Wert 0 auf der rechten Seite zugeführt wird. Auch hier wird der Ausgang des Zählers E durch den Zustand seines ersten Bits definiert.
Fig. 7C erläutert eine kombinierte Ausführungsform in der mit dem gleichen Register die Funktionen der Fig. 7A und 7B ausgeführt werden können. Ein Multiplexvorgang (Funktion des Schaltkreises 241 in Fig. 4) wird durch die Elemente 241 A und 241 B erreicht. Es handelt sich dabei um Multiplexer des Typs 1 aus 2. Für die allgemeine Betriebsart steht das Moden-Bit auf 0. Der Multiplexor 241 A führt die Bits 2 bis k+2 des Registers identisch zurück, während der Multiplexor 241 B die Werte 0 in die n-k-2 anderen Bits einsetzt. Im Gegensatz dazu führt in der periodischen Betriebsart der Multiplexor 241 A den Wert 1 in die Bits 2-k-2 ein, während der Multiplexor 241 B die anderen n-k-2 Bits auf den Wert 1 setzt. Der Fachmann wird hieraus erkennen, daß der so erhaltene Schaltkreis als Funktion des Zustands des Moden-Bits in der Lage ist, wahlweise entweder die Funktion der Fig. 7A oder die der Fig. 7B auszuführen.
Im folgenden wird kurz die Arbeitsweise der Einrichtungen nach der Erfindung beschrieben, und zwar für die allgemeine und die periodische Betriebsart.
Allgemeine Betriebsart
Die anfordernde Einheit hat festgestellt, daß die Maximalanzahl von aufeinanderfolgenden Kollisionen, die bei der allgemeinen Betriebsart innerhalb einer Epoche auftreten kann, gleich k-1 ist, wobei entsprechend der Vereinbarung die erste Kollision, die eine Epoche eröffnet, nicht gezählt wird. Sie hat weiterhin festgestellt, daß in dieser allgemeinen Betriebsart die maximale Anzahl von leeren aufeinanderfolgenden Scheiben im Innern einer Epoche gleich k-1 ist, wenn angenommen wird, daß vollständig ausfallsichere Koppler verwendet werden, oder k+1, wenn Ausfälle toleriert werden.
Aus diesem Grund wird der Zähler E in den Fig. 7A und 7C in den initialisierten Kopplern auf den Anfangswert k+1 gesetzt. Der Fachmann wird verstehen, daß es keine Bedeutung hat, daß der gerade initialisierte Koppler nicht mit den anderen Kopplern auf den leeren Zeitscheiben synchronisiert ist (wenn angenommen wird, daß eine Epoche gerade abläuft), und zwar aus folgendem Grund:
  • - Entweder ist diese Synchronisation unnütz, sobald der Zähler E den Wert erreicht,
  • - oder die notwendigen Synchronisation wird normalerweise erhalten, wenn der Kanal aktiv wird, bevor E den Wert 0 erreicht.
Bei der Initalisierung setzt Schritt 52 (Fig. 6) den Wert E auf k+1. Ein Jeton wird dann auf Platz 54 gelegt und der normale Betrieb beginnt. Entsprechend werden in den Einrichtungen der Fig. 3 und 4 (nicht dargestellte) analoge Funktionen durchgeführt.
Die genaue Analyse der verschiedenen möglichen Fälle erlaubt es, nachzuweisen, daß der Zähler E eines Kopplers bei der Initialisierung den Wert 0 in einer bestimmten Zeit erreicht, die nach oben begrenzt ist, während dieser Wert 0 nie erreicht wird, wenn eine Epoche im Gang ist. Das Bit k+2 erlaubt es, eine fehlerhafte Arbeitsweise eines Kopplers festzustellen.
Periodische Betriebsweise
Wenn keine Fehler aufgetreten sind, kann sich nur bei Beginn einer Epoche eine Kollision ergeben, die es einem Koppler bei der Initialisierung erlaubt, sich mit den arbeitenden Kopplern zu synchronisieren. Im Fall einer Kollision weist jeder Koppler seinem Zähler E den Wert N=n zu, der gleichzeitig der Initialisierungswert ist.
Wenn E den Wert 0 erreicht, ohne daß eine Kollision aufgetreten ist, wird damit angezeigt, daß der Koppler allein im System ist. Man kann daher das System initialisieren, indem nur ein einziger Koppler oder mehrere Koppler gleichzeitig initialisiert werden.
Wenn die Koppler initialisiert sind, erfolgt die Überwachung der Epochen entsprechend dem Mechanismus, der in Fig. 6 dargestellt ist. Dieser Mechanismus wird laufend von allen Kopplern durchgeführt. Er kann entweder verdrahtet sein, wie es in den Fig. 3, 4 und 7 der Fall war, oder aber mikroprogrammiert auf der Grundlage der Hardware in Fig. 5 und von Programmen, die den in den folgenden Figuren dargestellten Abläufen entsprechen.
Bei einem arbeitenden Koppler kann der laufende Wert von E so interpretiert werden, daß er die Anzahl der Kanalphasen darstellt, die vor dem Ende der gerade ablaufenden Epoche zu untersuchen sind.
Die Bedingung und E=0 zeigt an, daß gerade keine Epoche im Gang ist. Solange keine Kollision auftritt, ändert sich der Zähler E nicht.
Die Kondition CD und E=0 führt dazu, daß der Zähler E den Wert N annimmt, sobald die Leitung CD in den wahren Zustand übergeht und damit das Vorhandensein einer Kollision anzeigt; der Wert N ist dabei entweder 2 für die allgemeine Betriebsart, oder n für die periodische Betriebsart.
Bedingung und E positiv. Wenn eine Nachricht durchläuft oder wenn der Träger während einer Kanalscheibe im Innern einer Epoche frei bleibt, wird der Wert des Zählers E verringert. Die Beobachtung des Trägers wird erst wieder aufgenommen, wenn die vollständige Nachricht empfangen wurde, oder nachdem das Ende einer leeren Kanalzeitscheibe festgestellt wurde.
Bedingung CD und E positiv. Wenn eine neue Kollision im Innern einer Epoche auftaucht, wird der Wert E erhöht, wenn man sich in der allgemeinen Betriebsart befindet. In der periodischen Betriebsart darf dieser Fall nicht auftreten. Schritt 62 ruft dann eine Prozedur zur Bearbeitung von Fehlern, mit der die ordnungsgemäße Arbeitsweise des Netzes hergestellt wird. Anhand der Fig. 8 wird nun die eigentliche Verwaltung des Sendens von Nachrichten diskutiert.
Es wird noch einmal erinnert, daß das vorgeschlagene Verfahren in zwei Betriebsarten arbeiten kann: der allgemeinen und der periodischen. Die Betriebsart wird bei der Herstellung der Koppler oder bei deren Installation ausgewählt. In der allgemeinen Betriebsart kann jeder Koppler wahlweise mit blockierten Eingängen oder mit freien Eingängen arbeiten. In einem Koppler mit blockierten Eingängen kann keine neue Nachricht außerhalb der Nachrichten, die in Kollision getreten waren, während einer Epoche übertragen werden. In einem Koppler mit freien Eingängen kann im Gegensatz dazu ein Koppler in der Epoche eine frisch eingetroffene Nachricht aussenden, wenn er keine Nachricht im Moment der Kollision gegeben hat, die eine Epoche öffnet, und unter der Voraussetzung, daß die Bedingungen eingehalten werden, die sicherstellen, daß er die Arbeitsweise der anderen Koppler nicht stört.
Die Abgabe einer Nachricht durch die Station an den Koppler erfolgt in allen diesen Fällen durch die Aktivierung eines Befehls, der als Abgabe (m, index, F) geschrieben werden kann, und dessen Ausführung dazu führt, daß in einem Bereich des Speichers Z die folgenden Daten gespeichert werden, wobei der Speicher aus dem Schaltkreis für die Verwaltung von Sendevorgängen GER bekannt ist:
  • - die Nachricht m selbst,
  • - der zugehörige Index,
  • - eine Bool′sche Variable F, die anzeigt, daß die Nachricht erfolgreich vom Koppler an den Träger abgegeben wurde, wenn sie in den wahren Zustand übergeht.
Man stellt fest, daß in der allgemeinen Betriebsart mit blockierten Eingängen ein Koppler im Innern einer Epoche nur dann aktiv ist, wenn er tatsächlich versucht hat, eine Nachricht zu Beginn der Epoche zu übertragen (mit Kollision). Im Gegensatz dazu erlaubt das Verfahren in der allgemeinen Betriebsart mit freien Eingängen sowie in der periodischen Betriebsart einem Koppler, im Innern einer Epoche aktiv zu werden, selbst wenn keine Nachricht an diesen Koppler zu Beginn der Epoche abgegeben wurde.
In der allgemeinen Betriebsart mit freien Eingängen sowie in der periodischen Betriebsart sendet der Koppler eine Nachricht "0", die einem Ruhezustand entspricht, wenn keine Nachricht abgegeben wurde.
Die Ausführung der Befehlsabgabe, die der Fachmann ohne weiteres implementieren kann, ist unabhängig und asynchron von der Ausführung des Verwaltungsprotokolls der Sendevorgänge. Dieses Protokoll ist permanent und wird im folgenden beschrieben.
Die folgenden Stellen der Speicherzone Z werden verwendet:
  • - Nachricht: = m oder "Null",
  • - x: = index (der Index ist im voraus bestimmt, wenn die Nachricht "0" ist),
  • - Ende: = F.
Die erste Abfrage 70 stellt einen Wartevorgang dar, bis der Zähler E den Wert 0 erreicht. Dazu wird angenommen, daß eine Epoche gerade abgeschlossen ist, was einem derartigen Übergang von E auf 0 entspricht. Die folgende Abfrage 71 untersucht die verwendete Betriebsweise.
Das Senden (in der Art CSMA-CD) einer Nachricht ist im Knoten 74 dargestellt. Ein derartiger Sendevorgang wird in der periodischen Betriebsart immer versucht und ebenso in der allgemeinen Betriebsart, wenn eine Nachricht abgegeben wurde (Durchgang durch die Wartephasen 72 und 73, jedoch ohne zu warten, da nach der Annahme E gleich 0 ist).
Die Linie 75 versinnbildlicht die Beobachtung des Trägers, der auf zwei Bedingungen reagiert, wenn die Jetons auf die Knoten 74 und 76 gelegt wurden (am Ende der Kanalzeitscheibe).
In der periodischen Betriebsweise ist man sicher, daß eine Kollision CD und somit die Öffnung einer Epoche entsteht, mit Ausnahme für den Fall, wenn nur ein einziger Koppler senden will.
Anhand der Fig. 8 werden nun getrennt die allgemeine und die periodische Betriebsart beschrieben.
Allgemeine Betriebsart
In der allgemeinen Betriebsart kann eine Kollision auftreten, aber es ist gleichermaßen möglich, daß sich der Sendevorgang normal abspielt ( ). In dem letzten Fall beendet Schritt 91 den Sendevorgang, dessen Dauer mindestens gleich der Kanalzeitscheibe ist. Schritt 92 setzt die Bool′sche Variable F, die das Ende anzeigt, auf den wahren Wert. Schritt 93 untersucht, ob die gerade vorliegende Betriebsart die allgemeine Betriebsweise ist, um in diesem Fall zur Abfrage 70 zurückzukehren. Die Abfrage 71 unterscheidet wiederum zwischen den beiden Varianten "blockierte Eingänge" und "freie Eingänge" der allgemeinen Betriebsart.
Nun soll nochmals auf die Beobachtung des Trägers (Linie 75) eingegangen werden, um die andere Hypothese zu untersuchen, nach der sich eine Kollision ergibt. Man legt dazu einen Jeton auf den Knoten 77.
Im Schritt 78 wird dann der Größe j der Wert 0 zugeordnet, und in Schritt 79 eine Zweierdivision durchgeführt, die als X:=X/2 geschrieben werden kann.
Eine Abfrage 80 stellt fest, ob diese Division durch 2 möglich ist oder nicht. Wenn sie nicht möglich ist, stellt dies einen Fehler dar, der durch Aufruf einer geeigneten Prozedur (Schritt 80 A) bearbeitet wird.
Wenn die Division möglich ist, wird eine Abfrage 81 durchgeführt, die feststellt, ob der geltende Index x einer gewinnenden Untergruppe G oder einer verlierenden Untergruppe P angehört. Wenn er der gewinnenden Untergruppe angehört, wird das Senden der Nachricht erneut am Knoten 74 versucht. Wenn der gültige Index x der verlierenden Untergruppe angehört, hängt der Folgeschritt von einer neuen Abfrage 82 ab, die sich auf die Tatsache bezieht, ob die allgemeine oder die periodische Betriebsart vorliegt. In der allgemeinen Betriebsart wird direkt zum Knoten 84 gesprungen. Der Ausgang des Knotens 84 ist erneut die Beobachtung des Trägers auf der Linie 85, wobei dieses Mal die Bedingung vorliegt, daß der Träger nicht mehr bezüglich des Endes der Kanalzeitscheibe, sondern bezüglich des Kanalphasenendes beobachtet wird (FPC im Knoten 86).
Wenn keine Kollision vorliegt und wenn j gleich 0 ist, führt Leitung 87 wieder zum Senden der Nachricht 74 (alle vorangegangenen Kollisionen sind aufgelöst).
Wenn eine Kollision vorliegt, erfolgt eine neue Abfrage der Betriebsweise in 88.
In der allgemeinen Betriebsweise modifiziert Schritt 89 die Größe j um den Wert 1.
Ohne Kollision jedoch mit einem Wert der Größe j ungleich 0 verringert Schritt 90 die Größe j um 1.
Die Ausgänge der beiden Schritte 89 und 90 kehren zum Knoten 84 zurück (Kollision noch nicht aufgelöst).
Die Elemente der Fig. 8, deren Nummern zwischen 81 und 90 liegen, sind von einer gestrichelten Linie umgeben, die das Bezugszeichen R trägt, um anzuzeigen, daß es sich da um Elemente handelt, deren Aufgabe es ist, die eigentliche Kollisionsauflösung durchzuführen.
Der rechte Ausgang der Wartephase 73 zeigt an, daß in der allgemeinen Betriebsart mit blockierten Eingängen ein Sendevorgang verboten ist, wenn eine Epoche gerade abläuft (E ungleich 0), und eine Nachricht abgegeben wurde.
Der linke Ausgang der Wartephase 72 zeigt an, daß in der allgemeinen Betriebsart mit freien Eingängen der Koppler die Verwaltung der Sendevorgänge bei der Öffnung einer Epoche durchführt, d. h., sobald E ungleich 0 wird. Er ist deshalb mit Knoten 77 verbunden, bei dem das Senden einer Nachricht vorbereitet wird. Wenn die zugehörige Speicherzone Z nur die Nachricht 0 in dem Moment enthält, in dem er für das Senden autorisiert wird, gibt es keinen tatsächlichen Sendevorgang, und dieser Koppler bleibt still. Im gegenteiligen Fall sendet er seine Nachricht.
Es ist zweckmäßig, die Zweiertrennung (Zweierdivision) der Menge der Indices im einzelnen zu beschreiben, um diejenigen zu isolieren, die Kopplern mit einer zu übertragenen Nachricht entsprechen.
Die Menge X, wie sie weiter oben definiert wurde, stellt die Menge möglicher Indexwerte dar, die zu den Nachrichten und zu den Kopplungen gehören. Mit x wird der laufende Indexwert bezeichnet, der von einem aktiven Koppler verwendet wird, d. h., der an einer Epoche teilnimmt.
Ein Koppler kann einen oder mehrere Indices besitzen. Im letzten Fall werden die Indices vom Koppler in der Reihenfolge wachsender Werte verwendet.
Bei der Eröffnung einer Epoche wird die Menge der Indices, die von einem aktiven Koppler gewählt wird, mit x₀ bezeichnet. Zur Vereinfachung wird angenommen, daß diese Menge von Ausgangsindices alle Werte von 0 bis 2 k-1 umfaßt.
Der Binärbaum wird durchlaufen, indem das Abtasten von rechts nach links oder von links nach rechts erfolgt, wobei die Wahl rechts/links oder links/rechts die gleiche ist für alle Knoten, und zwar vom Stamm ("oben" am Baum) bis zu den Blättern ("unten" am Baum).
Die Menge X₀ wird somit in zwei Teilmengen aufgeteilt, und zwar auf identische Weise für alle aktiven Koppler. Die für das Abtasten gewählte Richtung bestimmt eine gewinnende Teilmenge G und eine verlierende Teilmenge P. Jeder Koppler prüft, ob sein aktueller Index x Teil von G ist.
Wenn ja, versucht der Koppler von neuem die Übertragung der Nachricht. Bei erneuter Kollision wird dasselbe Verfahren der Zweiertrennung der Indexmenge G in zwei neue Teilmengen G und P durchgeführt, und zwar bis eine Übertragung der Nachricht ohne Kollision erfolgreich durchgeführt ist.
Dieser Sachverhalt steckt hinter dem Ausdruck X:=X/2 in Fig. 8 bei Bezugszeichen 79. Dieser Vorgang läuft auch bei jeder Verschiebung (nach rechts) im Register 260 ab (Fig. 4).
Jedesmal, wenn ein Koppler feststellt, daß sein Index x zur Menge P gehört, sendet er nicht und überwacht den Träger (Linie 85). Eine mit j bezeichnete, lokale Variable erlaubt ihm, festzustellen, zu welchem Moment er autorisiert ist, ein neues Senden seiner Nachricht zu versuchen. Auf diesen Punkt wird später noch eingegangen.
Man stellt fest, daß die Regel für die Trennung in zwei Teilmengen beliebig sein kann. Beispielsweise können G und P gerade bzw. ungeraden Indexwerten zugeordnet werden, oder aber kann G für jede Ausgangsmenge (0, 2 k-1) den Indices der Menge (0, 2 k-1-1) entsprechen und P den Indices der Menge (2 k-1, 2 k -1).
Der Fachmann wird erkennen, daß es zweckmäßig ist, die Rechenregel für den Index, ausgehend von Prioritätsklassen, so zu wählen, daß bei der Erstellung eines Index die Nachrichten mit der höchsten Priorität sich in der ersten, gewinnenden Teilmenge befinden, anschließend die unmittelbar nachfolgende Priorität in der zweiten gewinnenden Teilmenge bei der zweiten Iteration, und so fort. Man garantiert auf diese Weise, daß die Reihenfolge der Nachrichtenübertragung im Innern einer Epoche die Reihenfolge der Prioritäten berücksichtigt.
Beispielsweise wird der Prioritätsrang in einem System mit statischen Prioritäten, das mehrere Klassen umfaßt, gleich der Klasse sein, oder gleich einer Funktion dieser Klasse, nach der die Konventionen gewählt wurden, um die Prioritäten zu numerieren. In einem System mit zeitlichen Prioritäten (bei physikalischem Untergang) wird der Rang beispielsweise gleich der noch verfügbaren Zeit, bevor der Untergang erfolgt, oder gleich einer Funktion dieser Zeit entsprechend den gewählten Konventionen, um die Prioritäten zu numerieren und in eine Reihenfolge zu bringen.
Im folgenden wird die Autorisierung zum neuen Senden in einer Epoche, ausgehend von der Variablen j, untersucht.
Der Anfangswert der Variablen j ist in der allgemeinen Betriebsart 0. Tritt kein Fehler auf, ist der Endwert von j ebenfalls 0.
Die verschiedenen möglichen Fälle am Ausgang der Linie 85 können wie folgt dargestellt werden:
  • - Kollision festgestellt CD: es ist noch eine Kollision aufzulösen; j erhöht (Signal 281 im Zustand 1, Fig. 4);
  • - keine Kollision , entsprechend einer Nachricht oder einer leeren Kanalzeitscheibe:
    • - wenn j verschieden ist von 0, gibt es noch mindestens eine Kollision, die nicht vollständig aufgelöst ist, der Wert von j wird daher um 1 erniedrigt (j entspricht dem Zustand des Signals 281)
    • - wenn j=0, sind alle vorhergehenden Kollisionen aufgelöst und der Koppler hat das Recht, erneut im Innern der Epoche zu senden.
Der aktuelle Wert von j kann so aufgefaßt werden, daß er die Anzahl der Kanalphasen weniger 1 angibt, die noch zu untersuchen sind, bevor der Koppler autorisiert werden kann, erneut zu senden.
In der allgemeinen Betriebsart errechnet ein Koppler immer einen Index, indem er einen logischen Namen (der eindeutig ist für diesen Koppler im System) mit dem Rang der wartenden Nachricht mit höchster Priorität aneinanderfügt (konkateniert). Wenn der Koppler in der allgemeinen Betriebsart mit freien Eingängen in eine Epoche mit einer Nachricht "0" eintritt, berechnet er den Index, indem er seinen Namen mit einem im voraus bestimmten festen Rang zusammenfügt, wobei sich der Index im Lauf der Epoche nicht ändern kann (Laden von x′ in x am Ende der Epoche, Fig. 4).
Bei einer besonderen Ausführungsform der Erfindung wird die Zweiertrennung durch die Tatsache erreicht, daß jeder Koppler ein Schieberegister mit Länge k besitzt. In diesem Register ist der Index eingeschrieben, der einer zu übertragenden Nachricht entspricht.
Die Aufteilung von X in zwei Teilmengen entspricht dann der Verschiebung der Bits in diesem Register um eine Position nach links oder nach rechts. Entsprechend dem Wert des Bits, das aus dem Register zu diesem Zeitpunkt austritt (Wert 0 oder 1), weiß ein aktiver Koppler, ob er verloren oder gewonnen hat. Die Wahl von 0 oder 1, um zu gewinnen oder zu verlieren, ist frei unter dem Vorbehalt, daß sie für alle Koppler in gleicher Weise getroffen wird. Bei jeder Iteration wird die Verschiebeoperation durchgeführt. Diese Ausführungsform wird hier jedoch nur als Beispiel dargestellt, da zahlreiche äquivalente Ausführungsformen aufgefunden werden können.
In diesem Beispiel einer Ausführungsform mit Schieberegister sind die Regeln, mit denen die Prioritäten berücksichtigt werden können, die folgenden:
  • - Wenn das Register nach links verschoben wird, werden die Indices als Funktion der Parität der höchststelligen Bits bestimmt. Jeder Index, der beispielsweise ein Bit 0 auf der linken Seite besitzt, gewinnt bezüglich eines Index, der ein Bit 1 links besitzt. In diesem Fall betrifft der Prioritätsrang den Teil der höchststelligen Bits des Index. Die Rangwerte sind gleich den statischen Prioritäten oder gleich den Zeitdauern, die noch vor dem Untergang verbleiben, wobei offensichtlich der Wert 0 den höchsten Wert der Priorität und den höchsten Rang darstellt.
  • - Wenn das Register dagegen nach rechts verschoben wird, werden die Indices selbstverständlich als Funktion der Parität der niedrigstwertigen Bits bestimmt. Jeder Index, der ein Bit 0 auf der rechten Seite besitzt, wird bezüglich eines Index gewinnen, der ein Bit 1 auf der rechten Seite hat. In diesem Fall betrifft der Rang die niedrigwertigen Bits des Index. Die Berechnung der Werte des Rangs, ausgehend von den Prioritäten oder den Zeiträumen bis zum Untergang, ist gleich wie oben. Dagegen werden die Werte des berechneten Rangs umgekehrt in das Register eingeschrieben, wobei das hochstellige Bit des Rangs das niedrigstellige Bit des Rangs wird und so fort.
Die Zähler für den Wert j werden vorteilhafterweise mit Hilfe eines Schieberegisters aufgebaut, dessen Größe mindestens gleich k Bits ist, die in der allgemeinen Betriebsart verwendet werden. Nach den obigen Ausführungen wird j mit dem Wert 0 in der allgemeinen Betriebsart geladen, wenn der Koppler verliert.
Zusammengefaßt dient der Zähler E dazu, das Vorhandensein einer Epoche und deren Dauer zu bestimmen. Er ist in allen in Betrieb, die arbeiten. Beim Einschalten eines Kopplers wird sein Zähler E auf k+1 gesetzt (Fig. 6), die maximale Anzahl von Schritten bei der Zweierteilung (obwohl eine schnellere und raffiniertere Initialisierung eines derartigen Kopplers ins Auge gefaßt werden könnte).
Im übrigen können zwei Fälle auftreten, und zwar abhängig davon, ob das Fehlen von zu sendenden Nachrichten als ein Zustand aufgefaßt wird, in dem der Koppler untätig ist, oder aber als eine Sendeanforderung für eine Nachricht "0".
Im ersten Fall (Untätigkeit) führen nur die aktiven Koppler den Rest des Verfahrens aus (Schritte 74 bis 93).
Im zweiten Fall (Nachricht "0") oder auch in der Betriebsart mit freien Eingängen führen alle in Betrieb befindlichen Koppler den Rest des Verfahrens (Schritte 74 bis 93) aus.
Periodische Betriebsweise (Fig. 8)
Die oben ausgeführten allgemeinen Überlegungen gelten zum großen Teil auch für die periodische Betriebsart. Dagegen liegt die Reihenfolge, in der die Indices untersucht werden, fest, wobei einer nach dem anderen untersucht wird, und zwar hier in steigender Reihenfolge.
Wenn E=0 (Ende einer Epoche), wird zum Knoten 74 übergegangen.
In der überwiegenden Mehrheit der Fälle werden mindestens zwei Koppler echte Nachrichten zu übertragen haben, so daß sich eine Kollision ergibt und sofort eine neue Epoche eröffnet wird.
Die Bedingung CD verlangt dann, daß zum Schritt 78 übergegangen wird, um den Schritt 79 zu erreichen. Schritt 79 teilt die Menge der Indices in eine gewinnende Teilmenge mit einem einzigen Element, dem Index 0, wobei die anderen Indices die verlierende Teilmenge definieren. (Wenn die Abfrage 80 zeigt, daß die Teilung nicht möglich ist, wird eine geeignete Fehlerbehandlung 80 A durchgeführt).
Die Abfrage 81 autorisiert den Koppler mit dem Index 0 zum unmittelbaren Senden, indem zum Knoten 74 zurückgekehrt wird. In den anderen Kopplern verleiht Schritt 83 bei der zweiten Berechnung j den Wert x-1, worauf man den Knoten 84 erreicht.
Der Koppler mit dem Index x=1 besitzt nun j=0. Der Ausgang 87 der Linie 85 führt ihn zum Knoten 74 zurück, um seinerseits zu senden, und zwar in der folgenden Kanalphase (Jeton im Knoten 86).
Die anderen Koppler gehen zum Schritt 90 über, der j um eine Einheit verringert, und kehren dann zum Knoten 84 zurück. Sie erreichen so nacheinander den Wert j=0, um das Recht zum Senden zu erhalten.
Eine Kollision im Verlauf einer Epoche ist anormal. Die Abfrage 88 bewirkt in diesem Fall, daß eine Prozedur 88 A zur Fehlerbehandlung aufgerufen wird.
Die Koppler, von denen jeder seinen Sendevorgang abgeschlossen hat, werden dann zu den Schritten 91 und 92 geführt.
Die Abfragen 93 und 94 ermöglichen ihnen, in der gleichen Epoche einen weiteren Index geltend zu machen, sofern einer vorliegt, oder aber den kleinsten von mehreren Indices, die sie noch besitzen. Der Größe j wird dabei der Wert y-x-2 zugewiesen und der Größe x der Wert y.
Die Abfrage 96 führt den Koppler dann zum Knoten 84 zurück, wenn j positiv ist oder 0.
Der Fachmann wird verstehen, daß im Fall j=-1 der Koppler unmittelbar senden muß; daher führt ihn die Abfrage 96 zum Knoten 74 zurück.
Ausnahmsweise kann es vorkommen, daß ein einziger Koppler nach dem Ende einer Epoche tatsächlich senden will. In diesem Fall erfolgt keine Öffnung einer Epoche, da der Koppler direkt über die Schritte 91 und 92 zum Knoten 74 gelangt.
Der Fachmann wird erkennen, daß sich diese periodische Betriebsweise vollständig von den Übertragungsverfahren mit mehrfachen Zugriffen durch Zeitmultiplex unterscheidet (TDMA).
Der Fachmann wird außerdem feststellen, daß die periodische Betriebsart modifiziert werden kann, um die Menge der Indices in Teilmengen zu untersuchen, die sich jeweils um den Index 2 unterscheiden.
Verallgemeinert ausgedrückt, existieren andere Zwischenformen zwischen der allgemeinen Betriebsart und dieser modifizierten periodischen Betriebsart; die Zwischenformen sind in jedem Fall durch eine Teilung der Menge der Indices definiert, und gegebenenfalls durch eine Auswerteregel, die zu dieser Teilung gehört.
Nach diesen Erläuterungen lassen sich die Arbeitsweisen der Elemente 24, 26 und 28 der Fig. 3 und 4 besser verstehen, wenn man sich auch auf die Fig. 6 oder 9 bezieht. Die Korrespondenz ergibt sich wie folgt:
  • - Block 24 oder 240 und 241 der Fig. 3 und 4 entsprechen dem Mechanismus der Fig. 6 und werden wie dieser unter Bezug auf die Fig. 7A bis 7C erläutert;
  • - Block 26 der Fig. 3 (260 und seine Umgebung in Fig. 4) entspricht den Blocks 78 bis 81 in Fig. 8;
  • - Die Blocks 282 und 290 der Fig. 4 entsprechen den Blocks 82 und 83 der Fig. 8;
  • - Der Block 28 der Fig. 3 (280 in Fig. 4) entspricht den Blocks 84 bis 90 der Fig. 8 sowie den Blocks 94 bis 96 für die Verwaltung von einem oder mehreren anderen Indices in der gleichen Epoche bei periodischer Betriebsart.
Man wird bemerkt haben, daß das Ende der Kanalzeitscheibe (FTC) durch den Draht 201 (Signal HTC) in den Fig. 3 und 4 angezeigt wird (wenn kein Empfang im Gang ist). Der Schaltkreis 22 (Gruppe 221 bis 229) zeigt das Kanalphasenende (FPC) an.
Bei der Hardware-Ausführung in den Fig. 3 und 4 ist außerdem auf folgendes hinzuweisen:
  • - Das Laden des Inhalts des Registers 290 in das Register 260 erfolgt am Ende der Epoche derart, daß bei der nächsten Epoche die Zweierteilung für diesen Wert durchgeführt wird, wenn der Koppler nichts zum Senden hat (Fig. 8, Abfrage 72, Ausgang E ≠ 0), und zwar in der allgemeinen Betriebsart mit freien Eingängen oder in der periodischen Betriebsart.
  • - Wenn eines der Signale +:= und -:= vorliegt, entspricht dies dem Auflegen eines Markierjetons auf die Knoten FTC (76, Fig. 8), FPC (86, Fig. 8), FPC (55, Fig. 6 und 10), FPC (86, Fig. 11). Die schnelle Art der Ausführung verwendet nur FPC.
  • - Das Glied 275 (Fig. 4) definiert die Zugehörigkeit des aktuellen Index zur gewinnenden Teilmenge.
Schließlich zeigen die Fig. 9A und 9B, wie der Zähler j (28 oder 280 und 290) mit Hilfe eines Schieberegisters aufgebaut werden kann.
Für die einzige allgemeine Betriebsart (Fig. 9A) wird das Register zuerst auf 0 gesetzt. Bei jeder Verschiebung tritt eine "1" auf der linken Seite oder eine "0" auf der rechten Seite ein. Sein Zustand wird durch das erste Bit bestimmt und die Größe des Registers kann auf k-Bit beschränkt sein.
Um wahlweise mit den beiden Betriebsarten zu arbeiten (Fig. 9B) wird die Größe des Registers auf 9 Bits erhöht. Die Arbeitsweise bleibt die gleiche in der allgemeinen Betriebsart.
In der periodischen Betriebsart wird der Wert von j=x-1 (Schritt 83, Fig. 8), in Form eines Wortes mit n Bits geladen, von dem (im Prinzip) nur das (j-1)-te Bit den Wert "0 08477 00070 552 001000280000000200012000285910836600040 0002003539510 00004 08358" hat und so den neuen Index definiert. Dasselbe erfolgt in Schritt 95 mit einem neuen Wert von j. Es ist klar, daß mehrere neue Indices durch mehrere Bits mit 0 in j definiert werden können.
Im folgenden werden verschiedene Varianten des Verfahrens nach der Erfindung untersucht, die sich im wesentlichen auf die allgemeine Betriebsart beziehen, die periodische Betriebsart also nicht betreffen.
Wenn während einer Epoche in der allgemeinen Betriebsart eine Kollision auftritt, hat der anfordernde Koppler festgestellt, daß mindestens zwei Indices existieren, die sich auf zwei aktive Koppler in der betrachteten Menge X beziehen, die senden wollen; die Menge wird dann in zwei Teilmengen G und P aufgeteilt. Wenn keiner dieser Indices zur gewinnenden Teilmenge gehört, was zu einer leeren Scheibe führt, die nach der Kollision festgestellt ist, kann man daraus schließen, daß sie beide zur verlierenden Teilmenge gehören. Es ist in diesem Fall nicht zweckmäßig, allen Kopplern der verlierenden Teilmenge eine neue Übertragung zu gestatten, nachdem die leere Scheibe festgestellt wurde, da dabei zwingend eine Kollision auftreten würde. Die Erfindung sieht daher vor, das Verfahren der Zweiertrennung sofort für die verlierende Teilmenge durchzuführen, so daß eine Kanalscheibe gespart wird. Dieser Schritt wird also bei jeder Feststellung von mindestens einer leeren Scheibe unternommen, die auf eine Kollision folgt.
Zu diesem Zweck wurde das Diagramm in Fig. 10 bezüglich dessen in Fig. 6 modifiziert (wobei alle Elemente weggelassen wurden, die sich auf die periodische Betriebsart beziehen). Die Schritte 61 und 63 bleiben die gleichen. Dagegen wird die Kondition und E positiv entsprechend dem Zustand von RxD aufgeteilt.
Außerdem führt ein Schritt 66 nach dem Schritt 63 eine Bool′sche Größe C in den wahren Zustand über. Nach dem Schritt 61 führt ein Schritt 67 dasselbe durch.
Nach dem Schritt 64 A, der den Wert von E um 1 herabgesetzt hat, führt Schritt 68 A die Bool′sche Größe C in den falschen Wert über, wenn das Fehlen einer Kollision tatsächlich einem erfolgreichen Sendevorgang entspricht.
Im gegenteiligen Fall, wenn das Fehlen einer Kollision einen Ruhezustand entspricht, prüft eine Abfrage 64 B die Bool′sche Variable C, die natürlich in jedem Fall in dem Speicher enthalten ist. Wenn diese wahr ist, wird zum Knoten 54 zurückgekehrt. Wenn die Bool′sche Größe C den falschen Wert aufweist, setzt Schritt 68 B den Wert von E um 1 herab.
Somit erlaubt die Bool′sche Variable C dem Auftreten von Sequenzen zu folgen, die optimiert werden können, indem ein Unterschied gemacht wird zwischen einer Kanalphase, bei der ein Sendevorgang ohne Kollision erfolgt, und einer leeren Kanalscheibe. Die Regel für das Setzen der Bool′schen Variablen C ist die gleiche wie für die Bool′sche Variable B, die später beschrieben wird.
Fig. 11 zeigt das optimierte Verfahren, mit dem die Autorisierungen zum erneuten Senden oder die Auflösung von Kollisionen verwaltet werden, und das dem Teil R in Fig. 8 entspricht, wobei alles weggelassen wurde, was die periodische Betriebsart betrifft.
Wenn sich der aktuelle Index x nach der Abfrage 61 als zur verlierenden Menge gehörig herausstellt, wird ein Knoten 81 A durchschritten, um anschließend eine Bool′sche Variable B auf ihren wahren Wert zu setzen, was in einem Schritt 81 B erfolgt. Man gelangt dann zum Knoten 84.
Bei der Beobachtung des Trägers in 85 bleiben die Verhältnisse aufgrund des Schritts 89 dieselben wie früher mit der Ausnahme, daß zu 81 A zurückgekehrt wird und nicht zu 84. Die anderen Fälle sind unterteilt.
Wenn keine Kollision aufgetreten ist und dementsprechend der Wert j=0 ist, aber ein Sendevorgang erfolgte (RxD wahr), gibt der Ausgang 87 A dasselbe Ergebnis wie früher. Ohne Kollision mit j=0 und ohne daß ein Signal auf dem Kanal übertragen wird, prüft eine Abfrage 87 B die Bool′sche Variable B. Wenn diese falsch ist, ergibt sich der gleiche Ausgang wie bei 87 A. Wenn sie wahr ist, so wird zu Knoten 77 in Fig. 8 zurückgekehrt.
Liegt keine Kollision vor und ist dabei j verschieden von 0, und wenn auf dem Kanal kein Signal mehr ansteht, prüft eine Abfrage 90 A noch die Bool′sche Variable B. Wenn diese wahr ist, kehrt der Ausgang zum Knoten 84 zurück. Ist sie falsch, erfolgt dasselbe, aber erst nachdem die Größe j um 1 herabgesetzt wurde.
Liegt schließlich keine Kollision vor und ist j verschieden von 0, ist aber eine Nachricht auf dem Übertragungskanal übertragen worden, so setzt Schritt 90 C die Größe j um 1 herab und Schritt 90 D setzt den Wert der Bool′schen Variablen auf falsch, bevor zum Knoten 84 zurückgekehrt wird.
Man ersieht daraus, daß die Bool′sche Variable B den wahren logischen Wert im Fall der Kollision annimmt und diesen Wert so lange beibehält, wie keine erfolgreiche Nachrichtenübertragung festgestellt wurde (Bedingungen RxD und ).
Diese Bool′sche Variable wird auch geprüft, wenn eine leere Kanalzeitscheibe festgestellt wurde (Bedingungen und ), und zwar unabhängig vom Wert von j.
Wenn j=0 und B falsch ist, entsprach die vorhergehende Kanalphase einer erfolgreichen Nachrichtenübertragung. In diesem Fall wird ein normaler Sendevorgang versucht, ohne daß die Schritte der Zweiteilung übersprungen werden. Wenn B wahr ist, befindet man sich im Gegenteil in einer Sequenz, die eine Optimierung erlaubt, so daß unmittelbar die Zweierteilung durchgeführt wird bevor der Untersuchung, ob eine neue Kollision aufgetreten ist.
Wenn j verschieden ist von 0 und B falsch, wird normalerweise der Wert von j herabgesetzt. Wenn B wahr ist, wird diese Herabsetzung nicht durchgeführt. Diese beiden Wählmöglichkeiten entsprechen dem, was oben beschrieben wurde.
Die vorliegende Beschreibung erstreckt sich nicht auf die Behandlung von Fehlern der Koppler oder des gemeinsamen Übertragungskanals. Diese Behandlungen betreffen das Verfahren gemäß der Erfindung nicht direkt. Als Beispiel sei nur erwähnt, daß es natürlich zweckmäßig ist, Hinweissignale und geeignete Fehlerbearbeitungen vorzusehen für anormale Fälle wie beispielsweise:
  • - CD und E positiv in der periodischen Betriebsart (Abfrage 60, Fig. 6, und Abfrage 88, Fig. 8),
  • - nicht mögliche Zweiertrennung (waagerechter Ausgang des Schrittes 80, Fig. 8),
  • - j kleiner -1 (nicht eingezeichneter Ausgang der Abfrage 96, Fig. 8).
Das Verhalten des Verfahrens nach der Erfindung im Fehlerfall ist mindestens äquivalent zu demjenigen der bekannten CMSA-CD-Verfahren.
Im übrigen kann die Erfindung entweder in Hardware und/oder Software ausgeführt werden, wobei der Integrationsgrad der gewählten Komponenten als Funktion der betreffenden Anwendung festgelegt wird. Schließlich kann die Erfindung auch für die Übertragung von analogen Nachrichten verwendet werden, obwohl sie hier im besonderen für die Übertragung von numerischen Nachrichten vorgesehen ist.

Claims (31)

1. Verfahren zur Übertragung von digitalen Nachrichten zwischen verschiedenen Stationen vom Typ CSMA-CD, in dem die folgenden Merkmale enthalten sind:
  • - jede Station (Si) ist mit mindestens einem Koppler (Ci) ausgestattet, der die Station an einen gemeinsamen Übertragungskanal (SC) anschließt, wobei der Koppler (Ci) einerseits Nachrichten an die Station (Si) übergibt und andererseits von der Station aus abzusendende Nachrichten an den Übertragungskanal (SC) einzuspeisen versucht,
  • - jeder Koppler (Ci) überwacht laufend den Übertragungskanal (SC), um eigene Übergangszustände am Ende jeder Übertragung oder jedes ihn betreffenden Empfanges festzustellen sowie Kanalzeitscheiben (TC) zu definieren, wobei sich jeder Kanalzeitscheibe von einem Übergangszustand bis zum nächsten Übergangszustand oder bis zum Ende einer vorgegebenen Zeitdauer erstreckt, und um ferner Kollisionsbedingungen zu erstellen, wenn immer zumindest zwei Koppler (Ci) eine gleichzeitige Übertragung versuchen und eine Kollision (CD) auftritt,
  • - jeder Koppler (Ci) kann auf Anforderung seiner Station (Si) nur dann mit dem Senden einer Nachricht innerhalb einer Kanalzeitscheibe (TC) beginnen, wenn auf dem Kanal kein Empfang stattfindet, ferner unterbricht jeder Koppler seinen Sendevorgang, wenn während der entsprechenden Kanalzeitscheibe (TC) ein Signal erscheint, das auf eine Kollision sowie auf gleichzeitige Sendevorgänge durch mehrere Koppler hinweist,
dadurch gekennzeichnet,
  • - daß zu Beginn einer Übertragung jedem Koppler (Ci) mindestens ein ihm zugehöriger, zumindest die Priorität der Nachricht bezeichnender Index zugeordnet wird, der aus einer Menge von vorbestimmten Indices ausgewählt wird,
  • - daß alle Koppler (Ci) mit einer durch Teilung eine Auswahl treffenden Einrichtung (Fig. 3: 26; Fig. 8: 70 bis 97) ausgestattet sind, die in einem als Epoche bezeichneten Arbeitszustand eine begrenzte Anzahl von Indices aus der Gesamtheit der Indices auswählt, wobei die auszuwählende Anzahl der Indices derart strukturiert ist, daß nach aufeinanderfolgenden, die Gesamtmenge der Indices umfassenden Auswahlvorgängen ein einziger der Indices übrigbleibt und die gesamten Auswahlvorgänge eine von der Struktur der gesamten Anzahl der Indices abhängende Maximalzahl von Schritten umfassen,
  • - daß jeder Koppler (Ci) mindestens einen auf- und abwärts zählenden Zähler (Fig. 6: E) umfaßt und nur dann eine Übertragung erlaubt, wenn sein zugeordneter Zähler einen bestimmten Bezugswert (E=0) aufweist, wobei die Zählung beim Erreichen einer Kanalzeitscheibe (TC) mit Kollision (CD) absteigend und beim Erreichen einer Kanalzeitscheibe (TC) ohne Kollision (CD) ansteigend ist, und ferner der Zählzustand beim Auftreten einer Kollision einem Einstellwert (E=N) entspricht,
  • - daß zumindest diejenigen Koppler (Ci), welche eine Kollision verursachen und während der Kollision bei auf dem Bezugswert (E=0) stehenden Zählstand gesendet haben, mit der schrittweisen Untersuchung der Indices beginnen und zwar gemäß einem vom Ende der Kanalphase (FPC), in welcher kein Empfang oder eine Kollision oder eine erfolgreiche Übertragung einer Nachricht war, abhängigen Signal,
  • - daß während jeden Schrittes der schrittweisen Untersuchung nur diejenigen Koppler zur Übertragung einer Nachricht ermächtigt werden, die einen Index haben, der zu der begrenzten, aus der Gesamtzahl der Indices ausgewählten Anzahl gehört,
  • - und daß der Zählstand erst dann den Bezugswert (E=0) erreicht, wenn die die Epoche erzeugende Kollision vollständig aufgelöst und der Koppler ermächtigt ist, frei zu senden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • - daß die Koppler (Ci), deren Automaten sich im Arbeitszustand befinden, einen zweiten Zählerstand (j) enthalten, der ebenfalls mit der Folge der Kanalphasenenden (FPC) und als Funktion des Vorhandenseins oder der Abwesenheit von Kollisionen während jeder Kanalphase fortgeschrieben wird, jedoch im Innern der Epoche und mit Einstell- und Bezugswerten, von denen mindestens einer von denjenigen des ersten Zählerstand verschieden ist.
3. Verfahren nach einem der Ansprüche 1 oder 2,dadurch gekennzeichnet,
  • - daß die genannte vorbestimmte Reihenfolge als binärer Entscheidungsbaum strukturiert ist, mit dem die Menge der Indices durch aufeinanderfolgende Zweiteilungen unterteilt werden kann, bis einer nach dem anderen erreicht werden kann,
  • - daß dem Entscheidungsbaum eine Untersuchungs-/Entscheidungsregel zugeordnet ist, die eine Funktion der Tatsache ist, daß die vorangehende Kanalphase zu einem Ruhezustand, einer Kollision oder der erfolgreichen Sendung einer Nachricht geführt hat,
  • - und daß die Einstellwerte (E=N) und die Bezugswerte (E=0) des ersten Zählerstands in Zweierschritten (N=2) aufgebaut sind, wobei dieser Zählerstand durch Erhöhung oder Herabsetzung bezüglich des Bezugswertes fortgeschrieben wird, und zwar abhängig davon, ob die vorangehende Kanalphase Gegenstand einer Kollision war oder nicht.
4. Verfahren nach den Ansprüchen 2 und 3, dadurch gekennzeichnet,
  • - daß die Untersuchungs-/Entscheidungsregel umfaßt:
    • - den Übergang zur anderen Teilmenge der gerade durchgeführten Zweierteilung, wenn eine Kanalphase mit Ruhestand oder eine Kanalphase mit erfolgreicher Sendung vorliegt,
    • - eine neue Zweierteilung der gerade untersuchten Teilmenge, wenn eine Kanalphase mit einer Kollision vorliegt,
  • - und das die Einstellwerte und die Bezugswerte des zweiten Zählerstandes die gleichen sind (j=0), wobei dieser Zählerstand in gleichen Schritten wie der erste fortgeschrieben wird, und zwar durch Erhöhen oder Herabsetzen bezüglich seines eigenen Bezugswertes, so daß dieser zweite Zählerstand einem Koppler erlaubt festzustellen, ob er in eine Teilmenge reintegriert wurde, die ihn zum Senden autorisiert.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet,
  • - daß in Gegenwart einer Kanalphase mit Ruhestand die Untersuchungs-/Entscheidungsregel eine neue, sofortige Zweierteilung der anderen Teilmenge in der gerade durchgeführten Zweierteilung umfaßt.
6. Verfahren nach einem der Ansprüche 4 oder 5, dadurch gekennzeichnet,
  • - daß in Gegenwart einer Kollision (CD), in deren Verlauf sich die Zählerstände der Koppler bei dem Bezugswert (E=0) befinden, alle Koppler (Ci) ihre Automaten in den Arbeitszustand überführen,
  • - und daß in der Folge der Epoche auch das Senden einer Nachricht durch diejenigen Koppler autorisiert wird, deren Indices zu einer Teilmenge gehören, die eine noch nicht aufgelöste Kollision hervorgerufen haben.
7. Verfahren nach einem der Ansprüche 3 bis 6, dadurch gekennzeichnet,
  • - daß der genannte Binärbaum entsprechend den aufeinanderfolgenden Bits der Indices und der Reihenfolge definiert wird, in der sie erscheinen.
8. Verfahren nach einem der Ansprüche 3 bis 7, dadurch gekennzeichnet,
  • - daß jedem Koppler (Ci) mehrere Binärindices zugeordnet werden, die jeweils verschiedenen Prioritätsniveaus entsprechen,
  • - und daß die genannte Untersuchungs-/Entscheidungsregel die Teilmengen der Indices in der Reihenfolge der Prioritäten untersucht.
9. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet,
  • - daß die genannte vorbestimmte Reihenfolge eine Folge aller Indices ist, die nacheinander genommen werden,
  • - und daß der Unterschied zwischen den Einstellwerten (E=N) und den Bezugswerten (E=0) des ersten Zählerstandes mindestens gleich der Anzahl der Schritte in der genannten Folge ist, wobei dieser Zählerstand bei jedem Kanalphasenende ohne Kollision dem Bezugswert zustrebt.
10. Verfahren nach Anspruch 9 und 2, dadurch gekennzeichnet,
  • - daß jedem Koppler mehrere Indices zugeordnet werden, wodurch ein Koppler in die Lage versetzt wird, in der gleichen Epoche mindestens eine weitere Nachricht mit einem anderen Index durchzulassen.
11. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet,
  • - daß ein Koppler (Ci), der von seiner Station keine Sendeanforderung für eine Nachricht erhalten hat, so behandelt wird, als würde er eine Nachricht "0" senden, wodurch alle Koppler so gleichzeitig ihren Automaten in den Arbeitszustand oder die Epoche überführen.
12. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet,
  • - daß für jeden in Betrieb genommenen Koppler der erste Zählerstand (E) dieses Kopplers auf einen Wert gesetzt wird, der mindestens gleich der maximalen Anzahl von Schritten in der vorbestimmten Reihenfolge ist.
13. Einrichtung zur Durchführung eines Verfahrens nach einem der vorstehenden Ansprüche mit einem Koppler, der definiert ist durch:
  • - einen Steuerschaltkreis für den Übertragungskanal (GSC), der mindestens drei logische Signale erzeugen kann, die anzeigen, daß ein Sendevorgang durch den Koppler im Gang ist (TxD) bzw. daß ein Empfangsvorgang auf dem Kanal im Gang ist (RxD) bzw. daß eine Kollision in dem Kanal festgestellt wurde (CD),
  • - einen Befehlsschaltkreis (GER), der die Verbindung zwischen der übrigen Station und dem Steuerschaltkreis (GSC) sicherstellt, und zwar als Funktion der auf dem Kanal empfangenen Signale und der Sendeanforderungen für Nachrichten, die von der Station ausgegeben werden,
dadurch gekennzeichnet,
  • - daß der Befehlsschaltkreis enthält:
    • - Vorrichtungen zum Speichern von mindestens einem Binärindex, der ihm zugeordnet ist und von mindestens einer Sendeanforderung für eine Nachricht, die sich auf diesen Index bezieht,
    • - logische Vorrichtungen für eine Kanalphase (24; FPC), um die Enden der Kanalphase zu definieren, in der kein Übertragungsvorgang (Ruhe) oder eine Kollision aufgetreten ist oder in der ein erfolgreicher Sendevorgang für eine Nachricht stattgefunden hat,
    • - erste Zählmittel (24; E), die entsprechend der Folge der Kanalphasenenden fortgeschrieben werden bis zu einem gewählten Bezugswert,
    • - logische Mehrzustandsvorrichtungen (26; 75-80), die einen Automaten definieren, der einen Ruhezustand und einen als Epoche bezeichneten Arbeitszustand besitzt, in dem er eine vorbestimmte Reihenfolge von Teilmengen von Indices erzeugt, die so strukturiert ist, daß man durch aufeinanderfolgende Wählvorgänge einen einzigen der Indices erreicht und daß auf diese Weise die gesamte Menge der Indices abgedeckt ist, wobei die genannte Reihenfolge eine Maximalanzahl von Schritten umfaßt, die eine Funktion seiner Struktur und der Gesamtanzahl von Indices ist,
    • - Vorrichtungen (11; 70-74), die den Koppler nur dann zu freien Sendevorgängen autorisieren, wenn sich der erste Zählerstand bei seinem Bezugswert (E=0) befindet,
    • - und Vorrichtungen (24; 63) die auf das Vorliegen einer Kollision reagieren, wenn sich der erste Zählerstand bei seinem Bezugswert befindet, in dem dieser erste Zählerstand auf einen gewählten Einstellwert gesetzt wird und in dem der Automat in seinen Arbeitszustand oder seine Epoche übergeführt wird,
    • - Vorrichtungen (11; 81), die den Koppler nur dann zum Senden autorisieren, wenn sein Index zu der Teilmenge gehört, die jedesmal durch den Automaten bezeichnet wird, wobei der Einstellwert und der Bezugswert so gewählt werden, daß der Zählerstand seinen Bezugswert nur nach vollständiger Auflösung der Kollision erreicht, die die Epoche erzeugt hat, und die Koppler dann von neuem zu freien Sendevorgängen autorisiert werden, während die Automaten in ihren Ruhestand zurückkehren, wodurch jede Kollision in einer beschränkten Zeit aufgelöst werden kann.
14. Einrichtung nach Anspruch 13, dadurch gekennzeichnet,
  • - daß sie zweite Zählermittel (28 j) enthält, die ebenfalls entsprechend der Folge der Kanalphasenenden (FPC) und als Funktion des Vorhandenseins oder der Abwesenheit von Kollisionen während jeder Kanalphase fortgeschrieben werden, jedoch im Innern der Epoche und mit Einstellwerten und Bezugswerten, von denen mindestens einer von denjenigen der ersten Zählervorrichtungen verschieden ist.
15. Einrichtung nach einem der Ansprüche 13 oder 14, dadurch gekennzeichnet,
  • - daß die logischen Mehrzustandsvorrichtungen so eingerichtet sind, daß sie eine vorbestimmte Reihenfolge definieren, die als binärer Entscheidungsbaum strukturiert ist, und die Menge der Indices durch aufeinanderfolgende Zweierteilungen aufteilen, bis einer nach dem anderen erreicht wird, und dem eine Untersuchungs-/Entscheidungsregel als Funktion der Tatsache zugeordnet ist, daß die vorangehende Kanalphase einen Ruhezustand, eine Kollision oder einen erfolgreichen Sendevorgang hervorgerufen hat,
  • - und daß die Einstellwerte und die Bezugswerte des ersten Zählerstands (E) in Zweierschritten aufgebaut sind, wobei der Zählerstand bezüglich des Bezugswertes um einen Schritt erhöht oder herabgesetzt wird, abhängig davon, ob die vorangehende Kanalphase Gegenstand einer Kollision war oder nicht.
16. Einrichtung nach den Ansprüchen 14 und 15, dadurch gekennzeichnet,
  • - daß die logischen Mehrzustandsvorrichtungen eine Untersuchungs-/Entscheidungsregel ausführen, die umfaßt:
    • - den Übergang zur anderen Teilmenge der gerade durchgeführten Zweierteilung, wenn eine Kanalphase mit Ruhestand oder eine Kanalphase mit einem erfolgreichen Sendevorgang vorliegt,
    • - eine neue Zweierteilung der gerade untersuchten Teilmenge, wenn eine Kanalphase mit einer Kollision vorliegt,
  • - und daß die Einstellwerte und die Bezugswerte des zweiten Zählerstands (j) die gleichen sind, wobei dieser Zählerstand wie der erste bezüglich seines eigenen Bezugswertes um einen Schritt erhöht oder herabgesetzt wird, so daß dieser zweite Zählerstand einem Koppler erlaubt festzustellen, ob er wieder in eine Teilmenge integriert wurde, die ihn zum Senden autorisiert.
17. Einrichtung nach Anspruch 16, dadurch gekennzeichnet,
  • - daß bei Vorliegen einer Kanalphase mit Ruhezustand die Untersuchungs-/Entscheidungsregel eine sofortige neue Zweierteilung für die andere Teilmenge der gerade durchgeführten Zweierteilung enthält.
18. Einrichtung nach einem der Ansprüche 16 oder 17, dadurch gekennzeichnet,
  • - daß bei Vorliegen einer Kollision (CD), während der sich der erste Wählstand des Kopplers beim Bezugswert (E=0) befindet, der Koppler seinen Automaten systematisch in den Arbeitszustand überführt,
  • - und daß in der Folge der Epoche die Sendung einer Nachricht durch den Koppler für die Indices autorisiert bleibt, die zu einer Teilmenge gehören, die zu einer noch nicht aufgelösten Kollision geführt hat.
19. Einrichtung nach einem der Ansprüche 15 bis 18, dadurch gekennzeichnet,
  • - daß die logischen Multizustandsvorrichtungen so ausgeführt sind, daß der genannte Binärbaum entsprechend den aufeinanderfolgenden Bits der Indices und der Reihenfolge, in der sie angeordnet sind, definiert ist.
20. Einrichtung nach Anspruch 19, dadurch gekennzeichnet,
  • - daß die logischen Multizustandsvorrichtungen Vorrichtungen enthalten, die ein Register (260) bilden, dessen Kapazität mindestens gleich ist der maximalen Anzahl von signifikanten Bits, die in den Indices der vorbestimmten Menge vorhanden sind, und Vorrichtungen zum Vergleichen des Inhalts des Registers mit dem aktuellen Index.
21. Einrichtung nach Anspruch 20, dadurch gekennzeichnet,
  • - daß der Koppler als Antwort auf eine Epoche seinen aktuellen Index in das Register (260) lädt, das ein bei jeder Zweierteilung betätigtes Schieberegister ist, wobei sich der Vergleich auf das Bit bezieht, das am nutzbaren Ende des Registers auf der Seite der Verschiebung liegt.
22. Einrichtung nach einem der Ansprüche 15 bis 21, dadurch gekennzeichnet,
  • - daß der Koppler anfänglich mehrere Indices mit unterschiedlichen Prioritäten empfängt, die genannte Untersuchungs-/Entscheidungsregel die Teilmengen der Indices in der Reihenfolge der Prioritäten untersucht und die Sendeanforderungen für Nachrichten jeweils mit einem der Indices als Funktion ihrer Priorität verbunden sind.
23. Einrichtung nach einem der Ansprüche 13 oder 14, dadurch gekennzeichnet,
  • - daß die genannte vorbestimmte Reihenfolge eine Folge aller nacheinander genommenen Indices ist,
  • - und daß der Unterschied zwischen dem Einstellwert (E=N) und dem Bezugswert (E=0) des ersten Zählerstandes mindestens gleich ist der Anzahl von Schritten in der genannten Folge, wobei der Zählerstand bei jedem Kanalphasenende ohne Kollision in Richtung auf den Bezugswert fortgeschrieben wird.
24. Einrichtung nach Anspruch 23 und Anspruch 14, dadurch gekennzeichnet,
  • - daß dem Koppler mehrere Indices zugeordnet werden, wodurch es dem Koppler ermöglicht wird, mindestens eine weitere Nachricht mit einem anderen Index in der gleichen Epoche durchzulassen.
25. Einrichtung nach einem der Ansprüche 13 bis 24, dadurch gekennzeichnet,
  • - daß sich der Koppler so verhält, als würde er eine Nachricht "0" übertragen wollen, wenn er keine Sendeanforderung für eine Nachricht von seiner Station erhalten hat und so seinen Automaten systematisch in den Arbeitszustand oder die Epoche überführt, sobald eine Kollision während des Ruhezustandes desselben Automaten auftritt.
26. Einrichtung nach einem der Ansprüche 13 bis 25, dadurch gekennzeichnet,
  • - daß mindestens eine der ersten und zweiten Zählerstandvorrichtungen ein Schieberegister enthält.
27. Einrichtung nach einem der Ansprüche 13 bis 26, dadurch gekennzeichnet,
  • - daß der erste Zählerstand des Kopplers zu seinem Inbetriebsetzen auf einen Wert gesetzt wird, der mindestens gleich ist der Maximalzahl von Schritten der vorbestimmten Reihenfolge (E=k+1 oder E=N).
28. Einrichtung nach einem der Ansprüche 13 bis 27, dadurch gekennzeichnet,
  • - daß er zwischen dem Betrieb nach einem der Ansprüche 15 bis 22 und dem Betrieb nach einem der Ansprüche 23 und 24 umgeschaltet werden kann.
29. Einrichtung nach einem der Ansprüche 13 bis 28, dadurch gekennzeichnet,
  • - daß sie mehrere der beanspruchten Koppler enthält, die an einen gemeinsamen Übertragungsträger angeschlossen sind.
DE19853539510 1984-11-07 1985-11-07 Verfahren und einrichtung zur uebertragung von nachrichten zwischen verschiedenen stationen ueber ein lokales verteilernetz Granted DE3539510A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8416957A FR2597686B1 (fr) 1984-11-07 1984-11-07 Procede et dispositif pour la transmission de messages entre differentes stations, a travers un reseau local a diffusion.

Publications (2)

Publication Number Publication Date
DE3539510A1 DE3539510A1 (de) 1988-01-07
DE3539510C2 true DE3539510C2 (de) 1990-03-08

Family

ID=9309353

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19853539510 Granted DE3539510A1 (de) 1984-11-07 1985-11-07 Verfahren und einrichtung zur uebertragung von nachrichten zwischen verschiedenen stationen ueber ein lokales verteilernetz

Country Status (7)

Country Link
US (1) US4847835A (de)
CA (1) CA1257006A (de)
DE (1) DE3539510A1 (de)
FR (1) FR2597686B1 (de)
GB (1) GB2188215B (de)
IT (1) IT1185725B (de)
SE (1) SE462775B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3930316A1 (de) * 1989-09-11 1991-03-21 Carmelita Dr Rer Nat Goerg Kanalzugriffsverfahren fuer ein als bus-system konfiguriertes lokales uebertragungsnetz

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2675324B1 (fr) * 1991-04-15 1994-07-29 Cap Sesa Procede et dispositif pour la resolution de collisions au cours d'une transmission de messages entre differentes stations, a travers un reseau local a diffusion.
FR2689713B1 (fr) 1992-04-02 1994-09-23 Inst Nat Rech Inf Automat Dispositif de transmission de données pour réseau à accès aléatoire, avec résolution de collision perfectionnée, et procédé correspondant.
FR2726954B1 (fr) 1994-11-15 1997-01-24 Dassault Electronique Unite-relais entre station et canal de communication, en particulier pour reseau ethernet
JPH1098787A (ja) * 1996-09-24 1998-04-14 Matsushita Electric Ind Co Ltd 送受信方式
FR2760161B1 (fr) * 1997-02-27 1999-09-24 Alsthom Cge Alcatel Reseau informatique a acces non deterministe, mais a temps d'acces deterministe
US6807189B1 (en) * 1999-04-09 2004-10-19 Advanced Micro Devices, Inc. Method for reducing collisions, latency and latency jitter in a network by maintaining a contention-resolution derived queue ordering
US6765924B1 (en) * 1999-08-19 2004-07-20 Intel Corporation Networking method and apparatus using silent slots to facilitate transmission collision detection
US20080016248A1 (en) * 2006-07-14 2008-01-17 George Tsirtsis Method and apparatus for time synchronization of parameters
US9408746B2 (en) 2010-03-31 2016-08-09 Ocuject, Llc Device and method for intraocular drug delivery
US9421129B2 (en) * 2012-04-02 2016-08-23 Ocuject, Llc Intraocular delivery devices and methods therefor
US9504603B2 (en) 2012-04-02 2016-11-29 Ocuject, Llc Intraocular delivery devices and methods therefor
GB2526810B (en) * 2014-06-03 2017-07-05 Canon Kk Method and apparatus for transmitting sensor data in a wireless network

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4063220A (en) * 1975-03-31 1977-12-13 Xerox Corporation Multipoint data communication system with collision detection
US4199661A (en) * 1978-05-05 1980-04-22 Control Data Corporation Method and apparatus for eliminating conflicts on a communication channel
US4531238A (en) * 1981-12-03 1985-07-23 Xerox Corporation Statistical contention control for star configured communication networks
US4466096A (en) * 1982-03-11 1984-08-14 International Business Machines Corporation Apparatus and method for providing transmitter hierarchy control for efficient channel management
JPS5913444A (ja) * 1982-07-14 1984-01-24 Fuji Xerox Co Ltd 再送制御方式
US4513370A (en) * 1982-07-19 1985-04-23 Amdahl Corporation Data transfer control system and method for a plurality of linked stations
US4513427A (en) * 1982-08-30 1985-04-23 Xerox Corporation Data and clock recovery system for data communication controller
US4593282A (en) * 1983-04-14 1986-06-03 At&T Information Systems Inc. Network protocol for integrating synchronous and asynchronous traffic on a common serial data bus
JPS59194546A (ja) * 1983-04-19 1984-11-05 Nec Corp アクセス方式
US4598285A (en) * 1983-05-27 1986-07-01 At&T Bell Laboratories Scheme for reducing transmission delay following collision of transmissions in communication networks
US4628311A (en) * 1983-10-19 1986-12-09 International Business Machines Corporation Carrier sense multiple access with collision avoidance utilizing rotating time staggered access windows
US4630264A (en) * 1984-09-21 1986-12-16 Wah Benjamin W Efficient contention-resolution protocol for local multiaccess networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3930316A1 (de) * 1989-09-11 1991-03-21 Carmelita Dr Rer Nat Goerg Kanalzugriffsverfahren fuer ein als bus-system konfiguriertes lokales uebertragungsnetz

Also Published As

Publication number Publication date
IT8522734A0 (it) 1985-11-06
DE3539510A1 (de) 1988-01-07
GB8527202D0 (en) 1987-07-08
SE8505234D0 (sv) 1985-11-06
FR2597686B1 (fr) 1988-12-23
CA1257006A (fr) 1989-07-04
SE462775B (sv) 1990-08-27
US4847835A (en) 1989-07-11
IT1185725B (it) 1987-11-12
GB2188215A (en) 1987-09-23
FR2597686A1 (fr) 1987-10-23
GB2188215B (en) 1988-07-13

Similar Documents

Publication Publication Date Title
DE3300261C2 (de)
DE3300260C2 (de)
DE3539510C2 (de)
DE3300263C2 (de)
DE2451008C2 (de) Schaltungsanordnung zur Steuerung der Datenübertragung innerhalb einer digitalen Rechenanlage
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE2901762A1 (de) Datenuebertragungs- und verarbeitungsanlage
DE2212501C2 (de) Einrichtung zur Übertragung asynchroner, digitaler Signale
DE4032725C2 (de) Steuerungsverfahren für Kommunikationsantwort
EP0443003B1 (de) Kanalzugriffsverfahren für ein als bus-system konfiguriertes lokales übertragungsnetz
DE2461091C3 (de) Gerät zur Erfassung und Weitergabe der Anzahl von ein bestimmtes Ereignis repräsentierenden Signalen
WO2004111859A2 (de) Verfahren, vorrichtung und system zum austausch von daten über ein bussystem
EP0862827B1 (de) Verfahren zum überprüfen eines gemäss einem kommunikationsprotokoll durchgeführten datenaustausches
DE3636317C2 (de)
EP0009600B1 (de) Verfahren und Schnittstellenadapter zum Durchführen von Wartungsoperationen über eine Schnittstelle zwischen einem Wartungsprozessor und einer Mehrzahl einzeln zu prüfender Funktionseinheiten eines datenverarbeitenden Systems
DE2515884C2 (de) Verfahren und Einrichtungen zur verschlüsselten Übertragung von Nachrichten
EP0175095A1 (de) Datenübertragungsverfahren über einen Multiprozessorbus
DE60013023T2 (de) Methode und Einheit zum Steuern der Ausgabe-Ordnung von temporär gespeicherten Daten oder Objekten
DE2629401A1 (de) Datenverarbeitungssystem
DE19502230C2 (de) Fuzzy-Regler für ein technisches System
EP0908891B1 (de) Schaltungsanordnung zur Behandlung von Zugriffskonflikten
EP0064759A2 (de) Verfahren und Schaltungsanordnung zur Übermittlung einer Anforderung eines Prozessors an einen Speichermodul in einem Multiprozessorsystem mit mehreren Speichermoduln
DE10216920A1 (de) Verfahren und Vorrichtung zur Überprüfung einer Überwachungsfunktion eines Bussystems und Bussystem
EP0100460B1 (de) Anforderungsauswahlsteuerung in einem Prozessor-Speicher-Verbindungssystem
DE3736468A1 (de) Verfahren zum prioritaetsgesteuerten zugriff und anordnung zum durchfuehren des verfahrens

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: H04L 11/16

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee