-
Die vorliegende Erfindung bezieht sich auf eine
Konfliktauflösungsanordnung für eine Telefonzentrale bzw. ein
Nachrichtensystem, kleiner oder mittlerer Kapazität, wie etwa
eine Nebenstellenanlage. Genauer gesagt bezieht sie sich auf
eine Konfliktauflösungsanordnung, die während der
gleichzeitigen Erzeugung eines digitalen Rahmens auf einen lokalen
Ortsnetzbus durch mehrere lokale digitale Schnittstellen
eingreift, die miteinander Informationen austauschen können.
-
Ein solcher Konflikt wird derzeit üblicherweise durch
die Aussendung eines speziellen Testrahmens, der einzig für
diesen Zweck vorgesehen ist, über ein Ortsnetz gelöst, das aus
einem Kabel besteht. Daraus ergibt sich ein nachteiliger
Durchsatzverlust, da es jetzt erforderlich ist, die
Übertragung eines ganzen Rahmens abzuwarten, ehe die Nutzinformation
übertragen werden kann.
-
Ziel der Erfindung ist die Vermeidung dieses
Nachteils. Sie bezieht sich hierzu auf eine
Konfliktauflösungsanordnung für eine digitale Telefonzentrale, die mit
Schnittstellenkarten ausgerüstet ist, die je einen
Eingangs-/Ausgangsmikroprozessor zum Zugriff zu einem lokalen Ortsbus für
die Informationsübertragung in digitalen Rahmen zwischen
Karten besitzen, wobei der Zugriff jeder Schnittstelle auf den
lokalen Bus bidirektional ist und durch einen Verstärker
BUFFER mit offenem Kollektor bewirkt wird, wobei diese
Schnittstellen durch einen zentralisierten Taktgeber getaktet werden
und einen bidirektionalen Zugriff auf einen Belegungsdraht
haben, um ihn im Falle der Übertragung eines Rahmens über die
Leitung zwangsweise in einen bestimmten Zustand zu versetzen,
derart, daß das Signal auf diesem Belegungsdraht auch ein
Rahmensynchronisationssignal bildet. Ein solches System ist in
der Druckschrift EP-A-0 178205 beschrieben.
-
Gemäß einem Merkmal der Erfindung ist die Anordnung
mit Mitteln zum Festsetzen einer bestimmten Anzahl von die
geographische Lage kennzeichnenden Bits ausgerüstet, die den
an den höherwertigen Stellen befindlichen festen Teil eines
Konfliktmoduls bilden, der von der betrachteten Schnittstelle
am Rahmenanfang und für die Dauer des Rahmens während der
Zeitdauer ausgegeben wird, in der die Schnittstelle sendet,
während die restlichen Bits des Konfliktmoduls, die an den
niederwertigen Stellen liegen, einen variablen Teil abhängig
von der Anzahl der von der Schnittstelle seit ihrer letzten
Sendephase durchgeführten Fehlversuche bilden.
-
Die nachfolgende Beschreibung eines
Ausführungsbeispiels anhand der beiliegenden schematischen Zeichnungen dient
zum besseren Verständnis der Erfindung und ihrer Vorteile und
sonstigen Merkmale.
-
Figur 1 ist ein Blockschaltbild des Abschnittes der
Nebenstellenanlage mittlerer Kapazität, die die Durchführung
der Erfindung ermöglicht;
-
Figur 2 zeigt die Lage eines Konfliktbytes in einem
Rahmen, und sie zeigt ferner die Form des Belegungssignals der
Übertragungsleitung;
-
Figur 3 zeigt das allgemeine Belegungsprinzip der
Leitung nach aufeinander folgenden Prioritäten;
-
Figur 4 ist ein erläuterndes Zeitdiagramm des
Verfahrens gemäß der Erfindung.
-
Gemäß Figur 1 handelt es sich um eine digitale
Telefonnebenstellenanlage mittlerer Kapazität, von der nur ein
Teil dargestellt ist, wobei dieser Teil enthält:
-
- eine Gruppe von einsteckbaren Karten A, B, C, D,
E,..., zu denen die Rechenkarten des Typs ZE (zentrale
Prozessoreinheit), beispielsweise die Karte A, und die
"Anschlußkarten" (beispielsweise die Karten B bis E) gehören, die mit den
möglicherweise sehr unterschiedlichen (nicht dargestellten)
Fernsprechendgeräten verbunden sind. Jede Anschlußsatzkarte B,
C, D, E, ist mit einem Eingangs-/Ausgangsmikroprozessor 2 bis
5 ausgestattet, derart, daß jede der Karten A, B, C,..., eine
Schnittstelle mit Mikroprozessor dieses Typs bildet;
-
- einen lokalen Verbindungs- und Übertragungsbus LAN,
der aus einem einzigen Draht oder einer bidirektionalen
Anbindung besteht und in der Schrankverdrahtung liegt;
-
- einen Belegungsdraht, BUSY genannt, der ebenfalls
bidirektional arbeitet, und der es in an sich bekannter Weise
ermöglicht, den anderen Schnittstellen anzuzeigen, ob der
Übertragungs-Verbindungsbus LAN belegt ist. Der Belegungsdraht
liefert auch das Rahmensynchronisationssignal;
-
- einen Taktdraht CLK, der sein Signal von einem
zentralisierten (nicht dargestellten) Taktsignalgenerator
empfängt und der dieses Signal an alle Schnittstellen überträgt.
-
Jede der Schnittstellen A, B, C, ..., liefert Daten
über einen Leistungsverstärker oder BUFFER vom Typ des
"offenen Kollektors", an die Übertragungsleitung LAN, was die
nachfolgende, an sich allgemein bekannte Wirkung hervorruft:
-
falls mehrere Schnittstellen gleichzeitig ein Signal
"1" an die Leitung LAN legen, ist das auf dieser Leitung
tatsächlich auftretende Signal das Signal "1";
-
falls dagegen mindestens eine dieser Schnittstellen
ein Signal "0" sendet, ist das auf dieser Leitung tatsächlich
auftretende Signal eine "0": anders ausgedrückt hat die
Aussendung einer "0" durch eine oder mehrere dieser
Schnittstellen zur Folge, daß die Übertragungsleitung "zwangsweise auf 0
gebracht wird".
-
Darüber hinaus wird beispielsweise über Zugriffsbusse
6 bis 10, die von der zentralen Logikeinheit kommen, jeder
Schnittstellenkarte A, B, C, ..., einer Binärzahl zugewiesen,
die die geographische Lage dieser Karte bezeichnet. Die
Binärzahl oder geographische Lage ist also für jede der Karten
definitionsgemäß verschieden. Wird beispielsweise angenommen,
daß die Anzahl der Schnittstellenkarten nicht größer als 32
ist, werden die geographischen Positionen dieser Karten durch
Binärzahlen mit 5 Bits kodiert.
Beispiel:
-
0 0 1 0 0 für die Karte A
-
1 0 0 1 1 für die Karte B
-
0 1 0 0 1 für die Karte C
-
In Figur 2 sieht man, daß das Belegungssignal BUSY,
das sich definitionsgemäß auf Pegel 1 befindet, wenn die LAN-
Leitung frei ist, bei der Übertragung einer digitalen Meldung
im Verlaufe eines Rahmens T durch eine der Schnittstellen
zwangsweise auf Pegel 0 gebracht wird. Es geht wieder auf
Pegel 1 zurück, wenn die Leitung freigegeben wird.
-
Wenn mehrere Schnittstellen gleichzeitig auf den Bus
LAN zuzugreifen wünschen, kommt es zu einer "Kollision" und
man muß eine Konfliktauflösungsanordnung benutzen, die fähig
ist, den "Meister" des Busses zu bestimmen, das heißt, daß
diejenige Schnittstelle, die den Vorteil der günstigsten
Priorität besitzt, als einzige zum Senden autorisiert ist.
Natürlich sollen alle Schnittstellen autorisiert sein, nacheinander
und eine nach der anderen ihre Nachricht auszusenden, derart,
daß der Konflikt für jede Schnittstelle eine Priorität
definieren muß, die sich zyklisch ändert.
-
Gemäß der Erfindung bilden die ersten Bits eines
Rahmens einen Konfliktmodul, der beispielsweise aus einem ersten
Byte ITO des Rahmens T besteht. Dieser Modul setzt sich aus
zwei Teilen zusammen:
-
einem feststehenden Teil G an den höherwertigen
Stellen, wie man in der Zeichnung sieht, und aus mehreren
Bits, beispielsweise fünf Bits D&sub3;, D&sub4;, D&sub5;, D&sub6;, D&sub7;, bestehend,
die zusammen eine Binärzahl entsprechend der vorgenannten
geographischen Stelle der betrachteten Schnittstelle
definieren;
-
einem veränderlichen Teil P an den niedrigerwertigen
Stellen und mehrere Bits enthaltend, beispielsweise den drei
Bits D&sub0;, D&sub1;, und D&sub2;, die gemeinsam die drei ersten der acht
Binärzahlen entsprechend den Dezimalziffern 0 bis 7
definieren.
-
Da jede der Schnittstellen durch einen Verstärker mit
offenem Kollektor auf die LAN-Leitung zugreift, hat diejenige
Priorität, die als erste eine 0 sendet. In einem solchen Falle
geben diejenigen Schnittstellen, die gleichzeitig eine 1
gesendet haben, sofort ihren Zugriffsversuch auf die Leitung
auf. Falls mehrere Schnittstellen gleichzeitig eine 0 gesendet
haben, streben sie alle den Zwangszugriff auf die betreffende
Leitung an, solange, bis nur eine davon übrig bleibt, die dann
allein eine 0 gesendet hat. Diese gewinnt den Konflikt und
wird "Meister". Natürlich handelt es sich dabei nur um die
Schnittstellen, die eine Nachricht zu senden haben und die
anschließend den Zugriff auf den Bus fordern.
-
Wie man nachfolgend sieht, bewirkt das im Verlaufe
eines Rahmens T durch eine Schnittstelle erfolgende Senden den
Übergang des variablen Teils P des Konfliktmoduls,
beispielsweise des Bytes ITO, nach dem Aussenden des letzten Bytes ITn
auf den Wert, der die niedrigste Priorität dieser
Schnittstelle angibt, das heißt, den Binärwert:
-
1 1 1
-
Die Schnittstellen, die nach der Kollision einen
Fehlschlag erleiden, verringern, falls möglich, den Binärwert der
Zahl P, um nach jedem Fehlschlag demjenigen Wert immer näher
zu kommen, der die höchste Priorität hat, das heißt:
-
0 0 0
-
Anders ausgedrückt findet für die Schnittstellen, die
nach der Kollision einen Fehlschlag erlitten haben, eine
Rückwärtszählung statt, die von der Binärzahl entsprechend der
Ziffer 7 bis zur Binärzahl entsprechend der Ziffer 0 geht,
also die folgende Sequenz durchläuft:
-
1 1 1
-
1 1 0
-
1 0 1
-
1 0 0
-
0 1 1
-
0 1 0
-
0 0 1
-
0 0 0
-
Da weiter die Binärzahl G für jede Karte verschieden
ist, ergibt sich, daß zwei verschiedene Karten niemals eine
identische Priorität haben, das heißt, die gleiche Zahl ITO im
betrachteten Beispiel. Infolgedessen ist der Konflikt nach
Übermittlung des Konfliktmoduls, das heißt im vorliegenden
Falle des ITO-Bytes, notwendigerweise aufgelöst ist.
-
Nebenbei sei bemerkt, daß das Signal BUSY nach der
Übermittlung des letzten Bytes ITn des Senderahmens T einer
Nachricht wieder auf den Wert 1 übergeht. Dieser Rahmen T kann
also einer variable Länge haben. Das Signal BUSY bildet hier
das Rahmensynchronisationssignal, was insbesondere zur
Erzielung eines maximalen Durchsatzes interessant ist.
-
Figur 3 zeigt das zentralisierte Taktsignal CLK, das
sogenannte BUSY-Signal auf dem Draht mit der gleichen
Benennung, und die Art und Weise, wie dieses Signal beispielsweise
von den Schnittstellen A, C, E ausgesendeten Signalen
aktiviert wird. ln dem Diagramm sind die Operationen zum Testen
des BUSY-Drahtes durch senkrechte Pfeile f gekennzeichnet,
während die Operationen zur Aktivierung desselben durch leicht
schräggestellte F dargestellt sind.
-
Beginnt man links, das heißt entlang der Zeitachse,
dann stellt man fest, daß die Schnittstellen A und C, die
beide jede zum Senden bereit sind, den BUSY-Draht (der auf dem
Pegel 1 liegt und somit frei ist) mit den abfallenden Flanken
des Taktes CLK testen, während sie ihn beide (indem sie ihn
auf den Pegel 0 bringen) mit einer ansteigenden Flanke
aktivieren (mit der nächsten Anstiegsflanke, falls der Test
positiv ist).
-
Der Konflikt wird durch das Byte ITO aufgelöst und
gilt als zugunsten der Schnittstelle A gelöst.
-
Die Schnittstelle C hat sich also aus der Aktion
zurückgezogen und fährt dann mit dem Testen des BUSY-Drahtes
solange fort, bis sie den Draht, der inzwischen wieder den
Zustand 1 angenommen hat, ihrerseits aktivieren kann.
-
In dem Diagramm wird gezeigt, wie die Schnittstelle E
nach der Übermittlung der dann von C ausgesendeten Information
ihrerseits den BUSY-Draht an einer abfallenden Flanke des
Taktes CLK testet, um ihn ihrerseits an der nachfolgenden
Anstiegsflanke zu aktivieren.
-
Figur 4 zeigt ein praktisches Beispiel, das es
ermöglicht, die Erfindung ganz zu verstehen.
-
Bei diesem Beispiel wird unterstellt, daß man sich in
den Zeitpunkt der Initialisierung des Systems versetzt, wobei
nur von den Schnittstellen A, B und C angenommen wird, daß sie
eine Nachricht zur Übersendung an eine andere Schnittstelle
bereithalten.
-
In der Zeichnung sind von oben bis unten dargestellt:
-
das zentralisierte Taktsignal CLK während der
Aussendung des Bytes ITO und des Anfangs der Aussendung des
ersten Bytes D'&sub0;, D'&sub1;, D'&sub2;,... des Rahmens, wobei dieses Byte
dann in an sich bekannter Weise das Zielbyte ist;
-
im Bereich der geschleiften Klammer I: die ersten
Bits, welche die Schnittstellen A, B, C auszusenden wünschen
und welche nur der Meister tatsächlich aussendet, sowie den
Anfang des tatsächlich über den Draht LAN ausgesendeten
Rahmensignals;
-
- im Bereich der nachfolgenden geschleiften Klammern
II, III, IV: Signale gleicher Art wie für die obige Phase I,
aber bezogen auf das Aussenden der drei folgenden Rahmen.
-
Zunächst bezugnehmend auf die Phase I erkennt man, daß
sich bei der Initialisierung die veränderlichen Prioritätsbits
D&sub0;, D&sub1;, D&sub2; aller Schnittstellen auf 0 befinden (Zustand
"sämtlich 0") und daß sie somit alle die höchste variable Priorität
definieren. Der Konflikt kann somit nur von den Bits D&sub3;, D&sub4;,
D&sub5;, D&sub6;, D&sub7; der geographischen Lage G gelöst werden.
-
Bei der Schnittstelle A ist die geographische Lage G:
-
0 0 1 0 0
-
und der Rahmen, den sie nach dem Zustand ITO auszusenden
wünscht, beginnt mit:
-
1 1 0 ... (D&sub0;, D&sub1;, D&sub2;, ...)
-
Bei der Schnittstelle B ist die geographische Lage G:
-
1 0 0 1 1
-
und der Rahmen, den sie nach ITO auszusenden wünscht, beginnt
mit:
-
0 1 1...
-
Bei der Schnittstelle C ist die geographische Lage:
-
0 1 0 0 1
-
und sie wünscht auszusenden:
-
1 1 0...
-
Auf dem Draht LAN erscheint der "Rückkanal", das
heißt, das Signal, das von jeder der Schnittstellen gelesen
worden ist und das tatsächlich über die Leitung gesendet wird.
-
Nach dem Senden der drei ersten Bits P senden die
Schnittstellen A und C mit der Anstiegsflanke des Taktes
entsprechend dem Bit D&sub3;) beide eine 0, während die Schnittstellen
B eine 1 sendet. Da in "offenem Kollektor" gearbeitet wird,
ist das tatsächlich über die Leitung LAN gesendete Signal eine
0.
-
Nach dem unter Bezugnahme auf Figur 3 erläuterten
Prinzip erfolgt die Wiederablesung bei der nachfolgenden
abfallenden Taktflanke an der durch den kleinen Pfeil f&sub1;
angezeigten Stelle. Die Schnittstelle B, die dann feststellt, daß
das erneut gelesene Signal nicht das gesendete Signal ist,
läßt dann die Aktion fallen und beendet das Senden wie durch
die Schraffuren in dem Diagramm angezeigt ist. Die beiden
anderen Schnittstellen lesen erneut eine 0 und fahren
entsprechend mit dem Senden fort.
-
An der folgenden ansteigenden Taktflanke (bei D&sub4;)
sendet die Schnittstelle A eine 0, während die Schnittstelle C
eine 1 sendet: der Draht LAN empfängt eine 0, derart, daß die
Schnittstelle C beim erneuten Lesen bei f&sub2; seine Aktivität
aufgibt. Nur die Schnittstelle A bleibt "Meister" und fährt
mit dem Aussenden ihrer Nachricht über den Draht LAN fort, bis
der ganze Rahmen übertragen ist. Der BUSY-Draht kehrt dann in
den Zustand 1 zurück (am Rahmenende), wird aber sofort von den
Schnittstellen B und C getestet, die immer noch ihre Nachricht
auszusenden wünschen, und er wird in diesem Beispiel auch von
der Schnittstelle A getestet, von der angenommen wird, daß sie
eine andere auszusendende Nachricht hat, die beginnt mit:
-
0 1 1 ... (D'&sub0;, D'&sub1;, D&sub2;).
-
Dann kommt Phase II.
-
Das Signal, das die Schnittstelle A auszusenden
wünscht, ist für die Phase II sehr verändert. Nicht nur die
Bits D'&sub0;, D'&sub1;, D'&sub2;... sind verändert, sondern darüber hinaus
sind die drei veränderlichen Prioritätsbits D&sub0;, D&sub1;, D&sub3;,
inzwischen auf den Wert
-
1 1 1
-
übergegangen, was der niedrigsten Priorität entspricht.
-
Die Signale, die die Schnittstellen B und C zu senden
wünschen, sind relativ zur Phase I natürlich unverändert
geblieben, in der sich die Schnittstellen B und C zurückziehen
mußten.
-
Bei Anwendung der gleichen Überlegungen wie zuvor
stellt man schließlich fest, daß die Schnittstelle A bei f&sub3;
aufgibt, das heißt, an der Anstiegsflanke des ersten
Taktimpulses, während die Schnittstelle B bei f&sub4; aufgibt, und die
Schnittstelle C schließlich der Meister bleibt.
-
Geht man zur Phase III über, in der auch von der
Schnittstelle C angenommen wird, daß sie jetzt eine andere
Nachricht senden will, stellt man fest, daß sich die variable
Priorität P der Schnittstelle A um einen Binärwert
dekrementiert hat, um den Wert:
-
1 1 0 anzunehmen,
-
und daß die Schnittstelle C ihrerseits den Wert:
-
1 1 1
-
angenommen hat.
-
Es ist somit klar, daß im Erfolgsfalle nach der
Kollision die Binärzahl P ihren Maximalwert annimmt: 1 1 1, daß
heißt, "lauter eins", unabhängig vom Wert der drei Bits.
-
Dies ist auch in der Phase IV der Fall, in der die
Zahl P der Schnittstelle B (die in Phase III der Meister war)
den Wert 1 1 1 niedrigster Priorität angenommen hat, während
die Werte der Schnittstellen A und C beide um einen Binärwert
dekrementiert wurden.
-
Natürlich ist die Erfindung nicht auf das soeben
beschriebene Ausführungsbeispiel beschränkt. So können die
Zahlen P und G unterschiedliche Länge haben. Bei einer Anzahl der
Schnittstellen über 32 würde die geographische Lage
beispielsweise 6 Bits, und die veränderliche Priorität P zwei Bits
umfassen. Anstelle eines Bytes als Konfliktmodul könnte eine
andere Gruppe von n Bits in besonderen Konfigurationen
verwendet werden. Die Bits betreffend die geographische Lage
könnten durch Verkabelung ein für alle mal fixiert werden,
etc.. Die vorliegende Erfindung benutzt ein einfaches und
schnelles Prinzip. Sie ermöglicht die Verwendung von billigen
integrierten Schaltkreisen, wie etwa die "ASIC" Schaltkreise,
und sie führt dementsprechend zu günstigen Herstellungskosten.