DE3115453A1 - Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbus - Google Patents
Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbusInfo
- Publication number
- DE3115453A1 DE3115453A1 DE3115453A DE3115453A DE3115453A1 DE 3115453 A1 DE3115453 A1 DE 3115453A1 DE 3115453 A DE3115453 A DE 3115453A DE 3115453 A DE3115453 A DE 3115453A DE 3115453 A1 DE3115453 A1 DE 3115453A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- action
- bus
- period
- transmission medium
- 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.)
- Granted
Links
- 238000004891 communication Methods 0.000 title claims description 104
- 238000012546 transfer Methods 0.000 title claims description 15
- 230000009471 action Effects 0.000 claims description 109
- 230000005540 biological transmission Effects 0.000 claims description 75
- 238000012545 processing Methods 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 13
- 230000035484 reaction time Effects 0.000 claims description 11
- 230000007704 transition Effects 0.000 claims description 11
- 230000003334 potential effect Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 24
- 230000006698 induction Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 230000004044 response Effects 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 5
- 239000013078 crystal Substances 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000004377 microelectronic Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000036962 time dependent Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 210000004072 lung Anatomy 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- NEOZOXKVMDBOSG-UHFFFAOYSA-N propan-2-yl 16-methylheptadecanoate Chemical compound CC(C)CCCCCCCCCCCCCCC(=O)OC(C)C NEOZOXKVMDBOSG-UHFFFAOYSA-N 0.000 description 1
- 230000036632 reaction speed Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
- G06F13/4213—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with asynchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/374—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Multi Processors (AREA)
Description
S.V. Philips* Bloeilampenfabrieksn, Eindhoven ■; -:* - - : : ί..-. ;-■;■·
ψ-
PHN 9/36 Jf . 10.3.1981
Datenütjertragungssystem mit mehreren Datenquellen und
Datenempfängern und mit Kommunikationsbus
Die Erfindung betrifft ein Datenverarbeitungssysteiii
mit mehreren Datenquellen und Datenempf ängern, die mit einem Kommunikationsbus verbunden sind, der aus zumindest
einem Ubertragungsmedium für die Übertragung von zumindest zwei logischen Zuständen (θ und 1) besteht.
Derartige Systeme sind bekannt, insbesondere
solche Systeme, in denen die Datenquellen und Datenempfänger
wenigstens teilweise aus Signalprozessoreinheiten wie Mikroprozessoren und dergleichen bestehen.. Durch- die sich
ständig vergrössernde Verfügbarkeit von Mikroelektronik in Form ständig fortschreitender Integration elektronischer
Funktionen auf sog, Chips ist die Zeit für die Verwendung der Mikroelektronik in Bereichen da, in denen möglichst
.wenig Kosten anfallen dürfen. Darunter befinden sicii die
Gebrauchsartikel wie Video- und Audiogeräte und dergleichen. Wenn Zusammenarbeit zwischen mehreren Gex'äten in einer
Schaltung (beispielsweise in einer Video- oder Audioschaltung der Geräte) wünschenswert oder erforderlich ist, ist
eine Kommunikation zwischen den verschiedenen Teilen notwendig. Hierbei arbeiten bestimmte Geräte oder ihre Teile
als Datenquelle oder Datenempfänger, oder sie enthalten sogar beide Funktionen. In einem System mit mehreren Daten-,
quellen und Datenempfängern ist es beispielsweise aus der
Veröffentlichung von Casaglia in "Euromicro Newsletter", Oktober 19/6, Vo-1.2,· Nr.4, S.5 ff. bekannt, für die Interkommunikation
einen sog. Kommunikationsbus zu verwenden. Bisher waren diese Kommunikationsbusse breit angelegt,
d.h. es waren einige Leitungen darin aufgenommen, die einen glatten Verlauf der Kommunikation versorgen. Systeme mit
4-Leitungs- und 8-Leitungsbussen usw., sind allgemein bekannt. Der gezielteste Versuch zur Lösung des Problems
einer asynchronen Kommunikation zwischen Quellen und Empfängern erfordert vier leitungen: Mindestens eine Daten-
. .. .. __ JI f b 4 b J
PHN 9736 ytC 10.3.1981
leitung und 3 "Handshake"-Leitungen. Bei dieser Lösung
(siehe beispielsweise Fall Joint Comp.Conf. 1972, S.719... 7^0) ist eine Kommunikation zwischen den Moduln möglich
ohne ihre gegenseitige Kenntnis der inneren Verarbeitungsgeschwindigkeit.
Jedoch ist ein derartiger Kommunikationsbus zu kompliziert und oft zu teuer, um als Bus in jeden
Bereichen in Betracht gezogen werden zu können, in denen
es sich darum handelt, die Kosten.niedrig zu halten. Es
wurde nach Lösungen gesucht, bei denen der Kommunikations-
1^ bus und die über sie zu betreibende Kommunikation möglichst
einfach und preisgünstig sind. Insbesondere würde ein Bus mit einer Mindestanzahl von Ubertragungsleitungen in Betracht
kommen. Die Mindestanzahl bedeutet hier zumindest ein Ubertragungsmedium, das für die Übertragung von zu-
^ mindest zwei logischen Zuständen ( 0 und 1) geeignet ist.
In der Praxis kann es ein Koaxialkabel, ein verdrilltes Aderpaar sowie auch eine drahtlose Verbindung oder eine
optische Glasfaserverbindung sein. Bei diesen letztgenannten
Beispielen gehen die Gedanken z.B. in Richtung
2" einer Verbindung mit Hilfe eines mit zumindest dem logischen
Zustand 0 oder 1 modulierten Trägerinfrarotstrahls oder Trägerlichtstrahls. Ein bekanntes Beispiel eines
eingangs erwähnten Datenverarbeitungssystems mit·mehreren Datenquellen und Datenempfängern wurde in den Konferenzdokumenten
mit der Bezeichnung EUROMICRO 1976 auf den
Seiten 299 bis 303 veröffentlicht: R.Sommer, "Cobus, a
firmware controlled data transmission system". "Cobus" . bezeichnet einen Koaxialbus, mit dem eine Kommunikation
zwischen einer Anzahl von mit Mikroprozessoren versehenen Stationen erfolgt. Jedoch erfüllt dieses System nicht die
• Bedingung niedriger Kosten: Bei den verschiedenen Prozessoren ist kein grosser Unterschied im "Zeitbegriff" erlaubt.
Für den ordnungsgemässen Verlauf der Kommunikation müssen die .sich beteiligenden Prozessoren Vorkenntnisse über die
Bitzeiträume der anderen Prozessoren haben. Dies bedeutet,.
dass jeder Prozessor mit einem teuren Kristalloszillator ausgerüstet sein muss oder dass das System einen zentralen
Taktgeber haben muss oder dass nach der Montage ein Takt-
. . 311 5A53
PHN 9736 J2f Cj 10.3.1981.
bestimmungsnetz einzustellen ist, was ebenfalls teuer und
zumal unzuverlässig ist.
Der Suche einer preisgünstigen und zuverlässigen Lösung ist inhärent, dass sie auch eine einfache Lösung
sein soll, denn wenn einmal ein derartiges System (beispielsweise bei einem Benutzer) benutzt wird, dürfen keine besonderen
Abgleiche- oder andere Anpassungsmassnahmen erforderlich sein. Dies gilt umzumehr, wenn spätere Erweiterung
mit neuen Datenquellen und/oder Datenempfängern zu einer Option des Systems gerechnet werden muss.
Der Erfindung liegt die Aufgabe zugrunde, eine Lösung anzugeben, die den erwähnten Bedingungen für niedrige
Kosten, Zuverlässigkeit, Einfachheit und einer Option zur Erweiterung entspricht.
Diese Aufgabe wird erfindungsgemäss bei. dem
eingangs erwähnten Datenverarbeitungssystem mit mehreren Datenquellen und Datenempfängern dadurch gelöst, dass
- das System mehrere Taktgeber mit gegenseitigen Toleranzen enthält, und
- in einer oder mehreren Quellen und/oder einem oder mehreren Empfängern Mittel vorgesehen sind, mit denen für
alle Quellen und/oder Empfänger, die sich aktiv an einer sich auf eine Kommunikation beziehende Aktion beteiligen
(Aktionsteilnehmer), feststellbar ist, ob der Bus zur Durchführung dieser Aktion "fertig" ist, wobei diese
Mittel ■ .
— erste und zweite Detektionsdurchführungsmittel enthalten,
mit denen feststellbar ist, dass in einem ersten bzw. zweiten Zeitraum (beispielsweise T bzw. T„. der Kommunikationsbus
für die betreffende Aktion fertig ist, wobei der erste Zeitraum kürzer als der zweite ist (z.B.
T <i( T ) und dieser erste Zeitraum von einem Fertigzeitfaktor
(z.B. a..) des betreffenden Aktionsteilnehmers bestimmt ist und der zweite Zeitraum in bestimmter Weise
von dem grössten Produkt (R.V) des Produktvorrats (Ri.Vi) aller potentiellen Aktionsteilnehmer abhängt, wuboi Je
-Ak t lurjH t.ij i Luelrnier ti Lu Prndiik l,<>
(Hi.Ai.) dur<-li ts Ljhmi ToIox-anzfaktox·
(Ri) des Taktgebers für den Ak tioiiü teilnehmer
BAD ORIGINAL
PHN 9736 /'/fO 10.3.1901
und durch einen Reaktionszeitfaktor (Vi) dieses Aktions—
teilnehmers gebildet sind,
- und bei der Detektion des Ablaufs des zweiten Zeitraums (T ) durch einen Aktionsteilnehmer für diesen und alle
weiteren Aktionsteilnehmer, die inzwischen den fertigen Zustand des Busses zumindest während ihres ersten Zeitraums
detektieren, der Bus zum Durchführen der betreffenden Aktion (tatsächlich) fertig und damit für diese
Aktion belegbar ist.
* Erfindungsgemäss ist eine grosse Freiheit in
den gegenseitigen Toleranzen der im System vorgesehenen Taktgeber gegeben. Diese Toleranzen werden berücksichtigt:
Je grosser die Toleranzen, omso langer ist der erwähnte
zweite Zeitraum durch die Abhängigkeit vom Toleranzfaktor (r).
'5 Dies bedeutet zwar eine Verringerung der Kommunikationsgeschwindigkeit, aber keine nachteiligen Folgen für die
gestellten Bedingungen. Es sei hier bemerkt, dass in vorliegenden Systemen, wie insbesondere einem Verbrauchersystem,
der Geschwindigkeitsfaktor nicht eine derartige
ausschlaggebende Rolle wie in professioneller ausgerichteten
Systemen spielt, in denen die Verwendung von Kommunikationbussen mit einer Anzahl von Leitungen (z.B. 4 oder
usw.) nicht von vornherein prohibitiv ist.
Ein Datenverarbeitungssystem mit mehreren Datenquellen und Datenempfängern kann grundsätzlich zwei Quellenarten
und/oder Empfängerarten enthalten: Aktive und passive,
d.h.
- Aktive, die sich selbständig aktiv an einer sich auf eine
Kommunikation beziehenden Aktion beteiligen können.
Im Rahmen dieser Beschreibung wird diese Art auch mit der Bezeichnung "Modul" angegeben. Eine derartige Quelle
. oder ein derartiger Empfänger kann also Meister des Systems werden. Daneben können diese aktiven Quellen
und/oder Empfänger bedarfsweise selbst passiv bleiben
oder durch eine höhere Priorität einer anderen aktiven Quelle oder eines anderen aktiven Empfängers passiv
bleiben müssen. In diesen letzten Fällen können diese Quellen und/oder Empfänger auch als Sklaven im System
PHN 9736 . tfήη ΐο.υ.ΐ<>8ΐ
eine Rolle erfüllen.
- Passive, die nicht selbständig einer Initiative zur Herstellung einer Kommunikationsverbindung nehmen können. Eine derartige Quelle und/oder ein derartiger Empfänger wird dadurch nur als Sklave des Systems eine Rolle erfüllen können.
- Passive, die nicht selbständig einer Initiative zur Herstellung einer Kommunikationsverbindung nehmen können. Eine derartige Quelle und/oder ein derartiger Empfänger wird dadurch nur als Sklave des Systems eine Rolle erfüllen können.
■ Wenn (wie oben und im Verlauf der .Beschreibung)
von Aktipnsteilnehmern die Rede ist, sind hiermit diejenigen aktiven Datenquellen und/oder Empfänger gemeint, die zu
einem bestimmten Zeitpunkt sich auch tatsächlich an einer sich auf eine Kommunikation beziehenden Aktion beteiligen.
(Dies braucht also nicht die Gesamtanzahl vorhandener aktiver Datenquellen und Empfänger zu sein, denn es liegt
nicht immer eine Situation vor, in' der die Gesamtanzahl .
teilnehmen möchte). Es sei abermals bemerkt, dass selbstverständlich
eine Datenquelle auch ein Datenempfänger sein kann und umgekehrt. Der Erfindung liegt die Erkenntnis
zugrunde, dass allen Aktionsteilnehmern die Gelegenheit geboten werden muss, sich auch tatsachlich an einer' sich
auf eine Kommunikation beziehenden Aktion zu beteiligen. Die gegenseitigen Takttoleranzen dürfen nicht dazu führen,
dass Aktionsteilnehmer mit einem zu langsamen Takt nicht mitmachen können (weil sie nicht schnell genug reagieren,
in eine solche Aktion hineingezogen zu werden). Um dies zu erreichen, ist durch die Einführung des erwähnten.ersten
und zweiten Zeitraums (z.B. T und T_.) ein sogenannter
Induktionsmechanismus erhalten, mit dem gewährleistet ist, dass alle Aktionsteilnehmer teilnehmen können. Erörterung:
Angenommen, mehrere Moduln möchten den Bus benutzen.
Hierzu müssen sie warten, bis der Bus für eine genügend ■ lange Zeit dazu fertig ist. Angenommen sei weiter, dass
der Ortstaktgeber eines ersten Moduls schneller als der eines zweiten Moduls verläuft. Damit kann der erste Modul
früher wissen (nach T^.), ob der Bus frei, d.h. für Benutzung
fertig ist, als der zweite Modul. Der erste Modul fängt damit an, den Bus zu verwenden (belegt den Bus).
Der Induktionsmechanismus sorgt nunmehr dafür, dass der
zweite Modul' (der selbst inzwischen schon den Zeitpunkt T
PHN 9736 f/JZ ""10.3.1981
detektierte) , nachdem er festgestellt hat, dass ein anderer Modul (der erste) damit anfängt, den Bus zu benutzen, in
Beantwortung darauf auch damit anfängt, den Bus zu verwenden.
Der Begriff Reaktionszeit einer Datenquelle und eines Datenempfängers bezieht sich auf die Zeit, die
ein derartiger Modul benötigt, um auf ein Datenbit anzusprechen. Im Normalfall ist die Reaktionszeit.das Produkt
eines Faktors Vi > 1 und der Taktsignaldauer für einen
derartigen Modul (Mi).
'9 * In der vorangehenden Beschreibung wird einige
• Male der Begriff "sich auf eine Kommunikation beziehende
Aktion" verwendet. Eine Kommunikation besteht aus einer '■ Anzahl·durchzuführender Aktionen:
- die Anfrage ("start") mehrerer Aktionsteilnehmer zur ^ Herstellung einer Kommunikationsverbindung,
- die Durchführung eines Wählverfahrens zwischen mehreren,
eine Kommunikationsverbindung anfragenden Aktionsteil—
nehmern auf Basis von Prioritäts- und/oder Adressdaten (Meisterwahl),
- die vom Meister hergestellte Verbindung mit der Quelle oder dem Empfänger, die bzw. der in dieser Kommunikation als Sklavedient (sog. "öffne Sklave"-Phase),
- die vom Meister hergestellte Verbindung mit der Quelle oder dem Empfänger, die bzw. der in dieser Kommunikation als Sklavedient (sog. "öffne Sklave"-Phase),
- die Datenübertragung selbst.
Der erwähnte erfindungsgemässe Induktionsmechanismus
ist insbesondere wichtig bei den zuerst genannten zwei Aktionen: mehrere Aktiönsteilnehmer müssen
trotz ihrer Takttoleranzen mitmachen können. Für die zwei letztgenannten Aktionen ist dies an sich nicht mehr dringend
der Fall, es handelt sich dabei um die direkte Verbindung zwischen einem Meister und einem Sklaven, der adressiert
wird und mit dem Meister eine Datenübertragung aufnimmt.
Da es dem Meister dabei also bekannt ist, wer der Sklave ist, ist es denkbar, dass er dabei auch die Reaktionsgeschwindigkeit
des Sklaven kennt und diese bei der Daten-Übertragung berücksichtigt. Dabei ist praktisch die Möglichkeit
gegeben, die Dätenübertragungsgeschwindigkeit an die betreffende Situation zwischen Meister und Sklaven anzupassen:
Grössere Geschwindigkeiten sind damit erreichbar.
PHN 9736 Jf IO.3.1981
Langsamer reagierende Datenquellen und/oder Datenempfäriger
brauchen dabei nicht berücksichtigt zu werden.
Um insbesondere für die erwähnte erste Aktion die Induktion zu ermöglichen, ist das Datenverarbeituiigssystem
mit mehreren Datenquellen und Datenempfängern nach der vorliegenden Erfindung dadurch gekennzeichnet, dass
die Mittel zum Feststellen eingerichtet sind, ob der Kommunikationsbus zum Durchführen einer Aktion für das
Einbringen von Anfragen (Start) mehrerer Aktions teilnehmer zur Herstellung einer Koiiununikat ions verbindung l'ei· ti;.; L^t.
Um insbesondere für die erwähnte zweite Aktion die Induktion zu ermöglichen, ist das Datenverarbeitungssystem dadurch
gekennzeichnet, dass .die Mittel zum Feststellen eingerichtet sind, ob der Kommunikationsbus zum Durchführen einer Aktion
'° " für die Ausführung eines ¥ählverfahrens zwischen mehreren,
eine Kommunikationsverbindung anfragenden Datenquellen und/oder Datenempfängern (Aktionsteilnehmer) auf Basis von
Prioritäts-'und/oder Kenndaten fertig ist.
Um zu schnellen und eindeutigen Entscheidungen am Kommunikationsbus in den Fällen zu gelangen, in denen
mehrere Aktionsteilnehmer ihre Daten dem Bus zuführen, Ls t
eine weitere Ausführung des Datenverarbeitungssystems dadurch gekennzeichnet, dass der aus mindestens einem
Ubertraguhgsmedium bestehende Kommunikationsbus je Anschlussstelle
eines Aktionsteilnehmers mit einer verdrahteten
logischen Gatterfunktion versehen ist ("wired AND" oder "wired OR").
Insbesondere sind Lösungen wichtig, bei denen
der Kommunikationsbus insbesondere .aus einem einzigen oder
aus zwei Ubertragungsmedien besteht. Dabei hat für die
Aktion hinsichtlich der Anfragen.(Start) mehrerer Aktionsteilnehmer das System mit einem einzigen Ubertragungsmedium
einen minimalen zweiten Zeitraum T .. ,. der je potentiellem Aktionsteilnehmer (Mi) die Formel TT.. = a„ Tci =
~s six Ii ~~~~
(R ov). Tc ί erfüllt, worin Tci die Pur Lodenduuer dc>s Taktgebers Tür diesen Ak Lions Leilnelmier .(Mi) ist. Weiler liaL
in diesem Fall das System mit zwei Ubertragungsmedien einen zweiten Mindestzeitraum T = (R .V). Tci.
PHN «r;3ü J£ 10.3. U'Ö1
Für die Aktion hinsichtlich des WählVerfahrens
hat das System mit einem einzigen Ubertragungsmedium einen
h zweiten Mindestzeiträum T = a^Tci = (R «V).Tci. Weiter
hat in diesem letzten Fall das System mit zwei Ubertragungsmedien einen zweiten Mindestzeitraum T„. = (R.V.).Tci.
r ι ———
Eine geeignete Ausführungsform einer Datenquelle und/oder eines Datenempfangers zur Verwendung in einem er—
findungsgemässen Datenverarbeitungssystem für eine aktive
Beteiligung an einer, sich auf eine. Kommunikation beziehenden
Aktion ist dadurch gekennzeichnet, dass die Datenquelle und/oder der Datenempfänger zumindest einen Steuereingang
und einen Steuerausgang besitzen, und wobei in der Quelle und/oder im Empfänger die Mittel
- über den Steuerausgang nach dem Feststellen in den zweiten, die Detektion durchführenden Mitteln, dass der zweite
Zeitraum (z.B. T ) abgelaufen ist, einen am Kommunikationsbus vorhandenen logischen Zustand "fertig" in einen
logischen Zustand "belegt" umsetzen,
- am Steuerausgang ebenfalls den logischen Zustand "belegt"
^" abgeben, wenn am Steuereingang der von einem anderen
Aktionsteilnehmer am Bus erzeugte logische Zustand "belegt" erhalten ist und ausserdem die Quelle und/oder der Empfänger
inzwischen selbst mit den ersten, die Detektion durchführenden Mitteln festgestellt hat, dass zumindest
der erste Zeitraum (z.B. T..) abgelaufen ist, womit die Quelle und/oder der Empfänger zur Beteiligung
an d.er Durchführung einer betreffenden Aktion ansteuerbar
In der Praxis wird es vorkommen, dass die erwähnte Datenquelle und/oder der erwähnte Datenempfänger ein
Digitalsignalprozessor ist, der programmierte Funktionsmittel enthält, die die erwähnten Mittel enthalten, und
dessen einer Eingang als der erwähnte Steuereingang und dessen einer Ausgang als der erwähnte Steuerausgang arbeitet.
Eine Verbesserung kann bei dem auf die erwähnte Weise benutzten Sigitalsignalprozessor als Datenquelle
und/oder Datenempfänger dadurch erreicht werden, dass vor
der Quelle und/oder dem Empfänger ein "fertig"-"belegt"-
PHN 9736 -Jf IO.3.I98I
Zustandsübergangsdetektor angeordnet ist, mit dem ein "fertig"-"belegf'-Ubergang am Kommunikationsbus eine verkürzte
Reaktionszeit zum Abgeben des logischen Belegtzustands an seinem Steuerausgang durch die Datenquelle
und/oder den Empfänger selbst ergibt, wenn sie bzw. er 'ausserdem inzwischen festgestellt hat, dass zumindest der
erste Zeitraum abgelaufen ist. Hiermit wird die Reaktionszeit der Quelle und/oder des Empfängers verkürzt, so dass
eine Verbesserung der Kommunikationsgeschwindigkeit entsteht.
In solchen Fällen, in denen dies auf Grund des Typs von Datenquelle und/oder Datenempfänger anwendbar
und/öder wirtschaftlich vertretbar ist, ist es möglich,
eine insbesondere hinsichtlich der Reaktionszeit vorteilhafte Lösung zu erhalten. Dazu ist die" Datenquelle und/oder
der Datenempfanger dadurch gekennzeichnet, dass ein erster
Teil und ein zweiter Teil vorhanden sind, von denen der erste Teil im wesentlichen die Quellen- und/oder Empfängerfunktion
enthält und über zumindest einen Anfrageausgang und einen Freigabeeingang mit dem zweiten Teil verbunden
ist 5 und der zweite Teil einen entsprechenden Anfrageeingang
und einen Freigabeausgang besitzt und weiter mit
den Mitteln zur Feststellung versehen ist, ob der Kommunikationsbus zum Durchführen einer sich auf eine Kommunikation
• beziehenden Aktion fertig ist, zu welchem Zweck der zweite Teil mit dem Steuereingang und Steuerausgang mit dem Bus
verbindbar ist. Auch ist es dabei möglich, dass der zweite Teil ebenfalls Kennvergleichsmittel enthält, mit denen die
eigene Identität der Datenquelle und/oder des Datenempfängers
mit einer über den Kommunikationsbus zugeführten Kennung
vergleichbar ist.
•Eine besondere Ausführungsform der erwähnten
Lösung ist weiter noch dadurch gekennzeichnet, dass die Mittel im zxveiton Teil einen Festwertspeicher, einen Adresszähler und ein" logisches UND-Funktionselement enthalten,
wobei der Festwertspeicher vom Adresszähler adressierbar ist, der Adresszähler Taktsignale zählt, die über einen
Taktgebereingang aus dem ersten Teil zugeführt werden, nachdem zunächst ein Anfragesißnal über den Anfrageeiii{;ang
it, ->ü:: -ο j
PHN 9736
orhnl Lon wurde, beim Erre LcLion der Zählers to 1 lung, die den
ersten Zeitraum (Τ ) darstellt, der adressierte Festwertspeicher
ein Ausgangsbit erzeugt, mit dem das logische UND-Element fertig gestellt wird, beim Erreichen der
Zähler stellung, die den zweiten Zeitraum (T13.) darstellt,
xsl
oder soviel früher als über den Steuereingang der Bus-Fertig-Signal
in ein Bus-Belegt-Signal übergeht, mit dem dann über das ÜND-Funktionselement der Zähler in die
Zählerstellung des zweiten Zeitraums (T ) gesetzt wird, der Festwertspeicher ab dieser jetzt adressierten Stelle
ebenfalls den logischen Belegt-Zustand am Steuerausgang erzeugt.
Schliesslich sei bemerkt, dass es hierbei weiter noch möglich ist, dass der mit Hilfe des Adress—
Zählers adressierte Festwertspeicher in Zusammenarbeit mit den Kennvergleichsmitteln zum Durchführen des Kennungs—
Vergleichs geeignet ist.
Der Kommunikationsbus besteht zumindest■aus
einem Ubertragungsmedium. Dieg; ist die vorteilhafteste
Lösung, sei es, dass die Kommunikationsgeschwindigkeit nicht sehr, hoch ist, weil die Taktgebertoleranzen eine
grosse ..Rolle spielen.
Lösungen mit mehreren Ubertragungsmedien sind unter Verwendung des erfindungsgemässen Induktionsprinzips
ebenfalls möglich. Eine Ausgestaltung des erfindungsgemässai
Datenverarbeitüngssystems ist dadurch gekennzeichnet, dass
der Kommunikationsbus aus zwei Ubertragungsmedien besteht, von denen das eine als Steuerübertragungsmedium und' das
andere als Datenübertragungsmedium dient, wobei zumindest
jeder Aktionsteilnehmer mit einem Steuermediumsehreib—
anschluss und Steuermediumleseanschluss und mit einem . Datenübertragungsmediumschreibanschluss und einem Daten—
übertragungsmediumleseänschluss versehen ist. Eine andere Ausführungsform ist dadurch gekennzeichnet, dass der Kommu-
- "
nikationsbus aus drei Ubertragungsmedien besteht, von denen zwei als Steuerübertragungsmedium dienen und das
dritte als Datenüberträgungsmedieum dient, wobei zumindest jeder Aktionsteilnehmer mit Steuerübertragungsmediumschreib—
BAD ORIGINAL
9736 >r . 10.3.1981
anschiüssen und mit SteuerübertragungsinediumleseariHchLüssen
und mit einem Datenübertragungsmediurasdireibansciiluss und
einem Datenübertragungsmediumleseanschluss versehen sind.
Eine weitere besondere Ausführungsform mit einem' mehrfachen Ubertragungsmedium ist dadurch gekennzeichnet, dass der
Kommunikationsbus.aus drei Ubertragungsmedien besteht, von denen eines als Steuerübertragungsmedium und die zwei anderen
als Datenübertragungsmedien dienen, wobei zumindest jeder Aktionsteilnehmer mit einem Steuerübertragungsmediumschreib-1"
anschluss und einem Steuerübertragungsmediumleseanschluss und mit Datenübertragungsmediumschreibanschlüssen und Daten—
übertragungsmediumleseanschlüssen versehen sind.
Nachstehend wird die Erfindung an Hand der
Zeichnung näher erläutert. Es sei darauf hingewiesen, dass ^ es sich nur um Beispiele handelt, auf die sich die Erfindung
nicht beschränkt. Es zeigen:
Fig. 1 schematisch einige Aktionen, aus denen die Kommunikation an einem Kommunikationsbus· besteht,
Fig. 2 ein Datenverarbeitungssystem mit mehreren Datenquellen und Datenempfängern mit einer einzigen Leitung
als Ubertragungsmedium,
Fig. 3 das dem System nach Fig. 2 zugeordnete
Zeitdiagramm,
Fig. 4 ein Datenverarbeitungssystem mit mehreren
Datenquellen und Datenempfängern mit zwei Leitungen als
"Ubertragungsmedium, . ·
Fig. 5 das dem System nach Fig. 4 zugeordnete
Zeitdiagramm,
' Fig. 6 ein System mit drei Leitungen als Ubertragungsmedium,
Fig. 7 eine etwas geänderte Ausführung des Systems mit drei Leitungen als Ubertragungsmedium,
Fig. 8a und 8b Beispiele von Moduln, die· als Digitalsignalprozessor ausgeführt sind,
Fig. 9 ein Flussdiagramm zur Durchführung von
Unterbrechungen,
Fig. 10 ein Flussdiagramm eines Hauptprogramms,
Fig. 11 ein Flussdigramm eines Unterbrechung-
PHN 9736 · . . +«" " 10.3-1981
Verfahrens,
■ . Fig. 12 ein Flussdiagramm eines detaillierten
Unterbrechungsverfahrens,
Fig. 13 ein Flussdiagramm der "Bus Fertig"-"
Prüfung, ■
Fig. Ik ein Blockschaltbild einer Datenquelle
und/oder eines Datenempfängers, bestehend aus einem ersten
und einem zweiten Teil,
Fig. 15 ein detailliertes Schema des Blocks.chaltbilds
nach Fig. 14, . ·
. Fig. 16 ein Zeitbitdiagramm für das Schema nach Fig. 15 >
Fig. 17 das Schema eines "Fertig-Belegt-Ubergang'V Detektors.
' In Fig. 1 ist schematisch dargestellt, aus welchen Aktionen eine Kommunikation an einem.Bus bestehen kann :
' In Fig. 1 ist schematisch dargestellt, aus welchen Aktionen eine Kommunikation an einem.Bus bestehen kann :
- Warte, bis der Bus für eine Kommunikationsaktion fertig ist- (Block 20). Der Bus wird als "fertig" betrachtet,
wenn er für eine genügend lange Zeit keine Aktion aufweist. Hierbei handelt es sich darum, dass allen Aktionsteilnehmern
diese Situation "Bus fertig" bekannt ist, so dass sie sich alle an der folgenden Aktion beteiligen können.
- Schiedsverfahren (Block 22) ist diese folgende Aktion,
die sich auf die Durchführung eines Wählverfahrens auf
Basis von Prioritäts— und/oder Kenndaten bezieht. Damit wird bestimmt, welcher Modul der Meister im System wird.
■ - Sklavenwahl (Block 24): Der Meister erzeugt eine Zieladresse. Alle Moduln vergleichen diese Adresse mit der.
eigenen..Kennung. Die Quelle oder der Empfänger, die eine
Übereinstimmung feststellt, betrachtet sich selbst als
Sklave. Dies ist die sog. "öffne Sklave"-Phase.
- Diese Quelle oder dieser Empfänger wird in den meisten Fällen seine Eigenkenimng noch dem Meister bekanntgeben,
-so dass er prüfen kann, ob der richtige Sklave gewählt
ist (Block 26).
- Datenübertragung (Block 28). Die zu übertragenden Daten werden über den Bus weitergeleitet. Der Sklave betrachtet
PHN 9736 ■ · ^T 10.3-1981
die Übertragung als beendet, wenn er feststellt, dass der
Bus wieder freigegeben wird (keine Aktion innerhalb eines bestimmten Zeitraums). Da nach dem Schiedsverfahren und
der Sklavenwahl normalerweise eine Punkt-zu-Punkt-Verbindung vorhanden ist', können andere Dauereinschränkungen als. zuvor
gelten. Diese Einschränkungen können für die betrelTüiido
Meister—Sklave—Konfiguration optimal gewählt werden, wodurch
■ eine höhere Datenübertragungsgeschwindigkeit erreichbar ist. Wahrend der Datenübertragung kann vor Bitübertragungs-
^ fehl.ern geschützt werden. Dies erfolgt durch ein sog. Bitechoverfahren,
bei dem der Empfänger jedes Bit neu aussendet (echot). Die Quelle vergleicht dabei das ausgestrahlte
mit dem empfangenen Bit.
• Es sei bemerkt, dass ausser dem Block 26 auch
^5 der Block 28 nicht immer auftreten wird. Es gibt Fälle,
bei denen ein Meister durch das Offnen eines Sklaven damit seinen Kommunikationsauftrag beendet.
In den erfindungsgemässen Systemen erfolgt
die Datenübertragung im allgemeinen bitseriell über das zumindest eine Ubertragungsmedium. Yie oben bereits beschrieben
wurde, tritt dabei das Problem der Synchronisation auf, wenn kein Zentraltaktgeber, keine Quarzoszillatoren
und keine Einstellnetze verwendet werden können oder
dürfen.
. Durch das erwähnte Xnduktionsprinzip ermöglicht die Erfindung, dass die Taktgeber im System, die insbe-. sondere je Modul oder gegebenenfalls je"Modulgruppe vorgesehen sein,können j Toleranzen aufweisen. Angenommen sei, dass je aktiver Quelle und/oder aktivem Empfänger eine
. Durch das erwähnte Xnduktionsprinzip ermöglicht die Erfindung, dass die Taktgeber im System, die insbe-. sondere je Modul oder gegebenenfalls je"Modulgruppe vorgesehen sein,können j Toleranzen aufweisen. Angenommen sei, dass je aktiver Quelle und/oder aktivem Empfänger eine
T
Toleranz R. besteht: R. = imax .
Toleranz R. besteht: R. = imax .
1 1T..
xmm
Beispiel: Eine Abweichung von -20$ bis +80^ gibt ein R±=2,25.
Nachstehend sei angenommen, dass alle Zeiträume jeder aktiven Quelle und/oder jedes aktiven Empfängers denen des.
dieser aktiven Quelle und/oder diesem aktiven Empfänger zugeordneten Taktgebers (T1.) proportional ist.
In Fig. 2 ist ein Datenverarbeitungssystem mit mehreren Datenquellen und Datenempfängern mit. einer einzigen
PHN 9736 ■ " *Ζ
"1Ο."3". 1981
Leitung als Ubertragungsmedium dargestellt. C ist dabei
der Einfachleitungsbus, über den zwei logische Zustände
0 und 1 übertragbar sind. Mit M1, M2 ... Mn sind Datenquellen
und Datenempfänger bezeichnet. Sie können aktive . und passive Quellen und/oder Empfänger sein. Da es für
die Erläuterung der Erfindung nicht interessiert, da,ss es
ausser aktiven auch passive Quellen und/oder Empfänger geben kann, wird weiter unten davon ausgegangen, dass in
den Beispielen nur die Rede von aktiven Datenquellen und
IQ Datenempfängern ist. Sie werden nachstehend meistens mit
dem allgemeinen Begriff Modul bezeichnet.
Jeder Modul kann Daten lesen oder schreiben
oder beides aus der bzw. zur Leitung, jedoch vor der Herstellung einer Kommunikationsverbindung müssen alle Moduln
Kommunikationssteuerinf ormation aus dem'Kommunikationsbus
lesen und darin schreiben können. Jeder Modul hat dazu einen Ausgang C¥ (Modul Ml), CW (Modul M2) ... zum Schreiben
in den Bus und einen Eingang CR zum Lesen des Busses. Dabei ist die Information an C gleich der Information an
den Eingängen CR (Modul M1), CR (Modul M2 ... CR (Modul Mn). Zum Schreiben sei angenommen, dass die Busleitung C eine
verdrahtete logische Gatterfunktion besitzt: Ein verdrahtetes UND- oder ein verdrahtetes ODER-Gattor. Im Zusammenhang
mit den später in dieser Beschreibung benutzten Beispielen und mit der dabei gewählten Signaldefinition des logischen
Zustande "belegt1.1 = "niedrig" = O und "frei"= "hoch" = 1
wird die .logische UND—Eunktion für die Bestimmung des
logischen Zustands am Bus benutzt. Auf diese Weise ist der Zustand auf der Leitung C von C = CW(m1).CW(M2)... bestimmt.
Bekanntlich kann ein verdrahtetes UND-Gatter beispielsweise mit offenen Kollektorbustreibern verwirklicht werden.
In Fig. 3 ist ein Zeitdiagramm dargestellt,
das zum Beispiel nach Fig. 2 gehört. In diesem Zeitdiagramm . stellen C die Signale am Bus dar. CW (M1) und CW (M2) geben
die Signalzustände an den Schreibausgängen der Moduln MI
und M2 an. Ln diesem Beispiel sei anceriomnien, dass beide
Moduln eine Anfrage zur Kommunikation machen. Weiter' in diesem Beispiel ist der Taktgeber des Moduls M1 schneller
, PHN.9736 ■ #5 ' 10.3.1981
als der von Μ2. Zeitlich gesehen geschieht folgendes:
1) Ein vorangehender Meister des' Systems (ein Modul Mi) hat seine Verwendung des Busses beendet.
2) Wenn nach einem ersten Zeitraum T (in
diesem Fall also Tür M1 ) die C-Le i tuiip, n.i.c-lil den 1 of.i .schon
Zustand ändert, wird der Bus als "frei" betrachtet (C=1).
Wenn der Bus in den logischen Zustand "belegt" tritt (C=o), bevor der Zeitraum T abgelaufen ist, wird der Bus als
belegt betrachtet. Dabei wird erneut gewartet, bis der Bus freigegeben wird. Siehe links von 1 ) .
3) Nach T.1 wird gewartet, bis der zweite Zeitraum
T^1 abgelaufen ist, bevor der Modul MI einen.Anfang
damit nacht, den Bus zu verwenden. Dies geschieht durch das Abgeben eines Startbits: CW (M'1) bewirkt den logischen
^ Zustand■"belegt", wodurch C=o wird. Inzwischen hat der
Modul M2 seinen ersten Zeitraum T durchlaufen, und er stellt auf der Leitung C fest, dass C=o wird. Darauf spricht
der Modul M2 an, indem auch er an seinem Ausgang CW (M2-)
den logischen "Belegt"—Zustand bewirkt. Dies geschieht nicht sofort, denn der Modul benötigt eine Reaktionszeit,
bevor dieser Vorgang verwirklicht wird. Diese Reaktionszeit ■
wird mit T00 bezeichnet. Die hier erwähnten Zeiträume,
die Reaktionszeit und die für den ganzen Vorgang interessierenden Toleranzen der Taktgeber werden weiter·unten
näher erläutert, um eine Einsicht in die gegenseitigen Abhängigkeiten zu gewinnen.
Der Teil zwischen 1) und 3) ist in Fig. 3 .mit
WBF bezeichnet, und es handelt sich hier also um die. Aktion . "warten, bis der Bus fertig ist", dies ist das Einbringen
aller,Anfragen (Start) aller Aktionsteilnehmer.
. k) Das Startbit nimmt eine .Zeit T11 (Modul Ml)
bzw. T12 (Modul M2) in Anspruch. Auf der Leitung C ist
dies Tsb durch die verdrahtete UND-Fünktion. Anschliessend
wird ein Datenbit (hoher oder niedriger Zustand) auf den Bus gebracht. Dies geschieh L sowohl vom Aktions teilnehmer
Modul Ml als auch M2. Das zuerst züge fühl-te Datenbit ist
das bedeutsamste Bit der Kennung eines jeden der Moduln M1 und M2.
. BAD ORIGINAL
PHN 9736 . . }tf 10V3.198I
5) Zum Zeitpunkt t=T21 wird das Datenbit an C vom Modul M1 gelesen. Zum Zeitpunkt t=T22 wird dieses
Datenbit vom Modul M2 gelesen.In M2 geschieht dies also später infolge seines langsamen Taktgebers.
■ ' * Dieser Teil der Kommunikation betrifft die Aktion zum Durchführen einer Wahl zwischen den Aktionsteilnehmern
auf der Basis von Kenndaten.' Hiermit wird bestimmt,
wer der Meister wird.Dies wird auch mit Schiedsverfahren
.bezeichnet. Durch die verdrahtete UND-Funktion vergleichen
ig die Moduln ihre Bits: Hier also zunächst ihr bedeutsamstes
Bit, und das Ergebnis davon ist, dass ein zugeführtes niedriges Signal, über ein zugeführtes höhe's Signal siegt.
. Sobald ein Aktionsteilnehmer über seinen Leseeingang feststellt, dass ein von ihm zugeführtes hohes Signal offensichtlich
von einem anderen niedrig gemacht ist, zieht dieser Teilnehmer' seine Teilnahme zurück und stimmt also
damit ein, dass er das Schiedsverfahren verloren hat. In
den folgenden Phasen ist dieser Modul dann kein aktiver Teilnehmer mehr und hält seinen Ausgang (wie auch alle
anderen Nicht-Teilnehmer) im logischen Zustand "hoch.": CW (Mi) =1.
6) Nach T31 bzw. T32 wird ein Stoppbit ausge-.sändt
(von den noch aktiven Teilnehmern). Dieses Bit ist ein logisch hohes Signal.
7) Von einem weiteren.ersten Zeitraum T_., bzw.
• TE2 an wird nunmehr von den (noch) aktiven Teilnehmern
festgestellt, ob es einen Übergang auf der Leitung C=I —o
gibt. Dies deutet auf ein neues Startbit hin. Dieser Teil des Verfahrens bezieht sich auf die Behandlung des ersten
Datenbits: TFB' in Fig. 3.
8) Diese Wartezeit unter 7) läuft, bis ein
weiterer zweiter Zeitraum (tf ) abgelaufen ist. Hier tritt
wieder das erwähnte Induktionsprinzip auf: Nach T (für Modul M1) und T (für Modul M2), welche Zeiträume also
wieder mit erstem Zeitraum zu bezeichnen sind, wird gewartet, bis einer der beiden Moduln seinen eignen zweiten
Zeitraum T1-,, bzw. T„o durchlaufen hat. Der Modul M1 err 1 r d.
·
reicht als erster (schnellerer Taktgeber)' seinen T_ ' , und
9736 yr 10.3.1981
dabei gelangt für beide Moduln ein neues' Startbit auf der Leitung G. Jedoch, wie unter 3) erwähnt, eilt der Modul M2
etwas nach.. Nach, seiner Reaktionszeit Tn .
Nach T„ tritt ein Übergang C = 1—^0 auf, d.h.
ein neues Startbit. Ab jetzt werden alle Phasen k) - 8)
wiederum durchlaufen: TSB-Behandlung des zweiten Datenbits usw. Dies wird zumindest wiederholt, bis alle zur Herstellung
der Kommunikationsverbindung erforderlichen Datenbits verarbeitet sind. Hierbei sei auf die Blöcke verwiesen
^ und auf ihre Beschreibung an Hand der Fig. 1, wo die Tat-
■ sache erwähnt ist, dass nach der Herstellung der Verbindung
sich die Zeiteinschränkungen ändern können und dadurch eine schnellere Punkt-zu—Punkt—Datenübertragung zwischen
■ einem Meister und einem Sklaven möglich ist.
'° Für das Verständnis der Erfindung ist eine
Erläuterung der Zusammenhänge zwischen den erwähnten Zeiträumen wichtig. Für das an Hand'der Fig. 2 und 3 erläuterte
Ausführungsbeispiel kann folgendes berechnet werden. Angenommen, Tci ist der Ortstaktgeberzeitraum eines Moduls
Mi. Der Entwurf eines Moduls wird als derart angenommen, dass alle entsprechenden Zeiträume vom erwähnten Zeitraum
Tci abgeleitet sind: Τπ. = a_..Tci; T.. = a...Tci; T0. =
· Rx Ri Ai Ai Bi .
aBi°Tci' Tli = ali'Tci» T2i = a2i.Tci; T3i =a3i.Tci;'
TEi = aE±'Tc±' TFi = a Tci . . (1)
Hierin sind die Symbole aji Konstanten, a. .. und a_ . sind
interne Fertigzeitfaktoren, a.. betrifft die Anzahl der
Taktzeiträume, die in einem Modul Mi für eine Anfrage zur Herstellung einer Kommunikationsverbindung erforderlich sind,
a^. bezieht sich auf die Anzahl der Taktzeiträume, die
ein Modul Mi benötigt, um nach einem Datenbit ein Stoppbit (nach T'J1) yiuiaurUiiroji. Um du« {;o.s Lock I
<; /. i«>L zu orrt.· i.cJioii-,
insbesondere mit einer einzigen Leitung dennoch eine gute
Kommunikationsverbindung herzustellen, ohne dass den Taktgebern im System schwere Bedingungen gestellt zu werden
brauchen, müssen die Symbole aR. und a„. für das ganze
System und nicht nur je Modul Mi gelten, denn die erwähnten zweiten Zeiträume ΤΏ. und T„. sind für eine gute Verarbei-
Bi J? 1
tung der Aktionen kritisch. Nachstehend wird abgeleitet,
BADORIGINAL
3 Ί Ί b 4 b ό
PHN 9736 *βτ 10.3.1981
we Lohe Anforderungen a„ . und a„. erfüllen müssen.
Das Z ext diagramm nacli Fig. 3 zeigt, welche
Bedingungen für eine gute Verarbeitung der Aktionen erfüllt werden müssen:
. ^Ri ^TIi (2A)
• ■ ' . · TIi C T2i (2B)
T2i < T3i (2C)
T3i <Tpi -(2D)
OL1. <· T_. --(2E)
ίο <· _El s-£i ;
• · TFi ^ ^Ai
Hierin bedeutet T ein maximaler Zeitraum und T ein minimaler Zeitraum. Es ist definiert: Toleranzfaktor
Ri = Tci/Tci. Hiermit und mit (i) und (2) wird
. . a1i/aRi >Ri.
' ' a2i/a1i >Ri
• a3i/a2i > Ri (3C)
aF±^± >
Ri — (3D)
; . aAi/aFi 7 Ri (3E)
aBi/aAi 7Ri ^ ■'
und ausserdem a_. p>
a31 (zumindest nicht einander gleich
. Davon ausgehend, dass im Normalfall eine Situation mit möglichst grosser Kommunikationsgeschwindigkeit
angestrebt wird, kann (3A-3F) mit (3&) wie folgt geschrieben
werden:
all.= RLan. (4a)
JXl
a2i = Ri.aii (4b)
30' a31 = Ri.a2i
• aFi = Ri.a3i
aAi = Ri-aFi
4 Es folgt daraus dass: a^. = Ri.aR. = Ri.Vi
(aAi = Ri.aRi = R?.Vi (5B)
3 aBi = Ri-aRi = Ri-Vi
und aEi > Ri.aRi (5D)
PHN 9736 γ? ΙΟ.3.1981
Dies gilt je Modul. Da es sich für diese Symbole darum .handelt, für das ganze System die Aktionen ("Bus fertig",
"Wahl des Meisters") möglichst fehlerfrei zu machen, muss als Systemkonstante der grösste Wert von a„. = a„ und
xjx Jb) ■ - .
a~. = ä„ aus dem Vorrat der zugeordneten Produkte gewählt
werden. Dies bedeutet also, dass das grösste Produkt der Faktoren Ri und Vl aus dem Vorrat aller Produkte von Ri
und Vi der Moduln dabei ausschlaggebend ist. Moduln mit grosser Taktgebertoleranz und grosser Reaktionszeit ergeben
'iO' grosse Produkte für Ri und Vi, aber auch Moduln mit kleiner
Taktgebertoleranz und sehr grosser Reaktionszeit und umgekehrt,
ergeben grosse Produkte für Ri und Vi. Dieses grösste Produkt ist mit R.V. bezeichnet.. Damit liegen die Abhängigkeiten
der zwei Zeiträume fest:.
aB = R6 . V und a^R^.V- : - _ _ (6)
Damit ist T= R6 . Tci und T = R . V . Tci - -(7)
Hierin ist also V=V der Reaktionszeitfaktor dieses
P
bestimmten Moduls M , für den mit R = R dieses Moduls
bestimmten Moduls M , für den mit R = R dieses Moduls
P P
das grösste Produkt V.R.'entsteht. Die Reaktionszeit dieses
Moduls ist T = V.Tcp. Daraus folgen die minimalen zwei Zeiträume T13 = R-Tn und T_ = R4.TD _-__-■-_ (8).
~D ~üp ~~V ~~Kp
Der Τπ ist ein Mass für die Dauer des Mindestzyklus
("frame") für die Kommunikation eines Datenbits.bei
einer sich auf eine Kommunikation beziehende Aktion. In der Praxis kann die interne Reaktionszeit
ΤΏ. eines Moduls Mi nicht begrenzt verkleinert werden;
Ki
dies ist von der gewählten Ausführung abhängig. Wenn eine Kommunikation mit einem programmierten Mikroprozessor erfolgt
j ist heutzutage ein T73. von beispielsweise 10 Mikro-
ivX
Sekunden erreichbar. Bei vollständiger Hardware-Verwirklichung der Mittel kann für T beispielsweise an 2 Mikro-
Jtil
Sekunden bis 0,2 MikrοSekunde gedacht werden. Bei quarzgesteuerten
Taktgebern liegt R ganz nahe bei 1, jedoch wenn billigere Taktgeber, beispielsweise mit einfachen RC-Oszillatoren,
angewandt werden (und dies wird hier angenommen), . kann R schon einen Faktor k oder grosser sein.
lHp i.o 1 ν Liioi· nitifVl i chcii ;S L Lua t, i
<m :
ig i :: ].:-\-·'ό 1
PHN 9736 gtr 10.3.1981
Angenommen R=A und T = 10 Mikrosekunden. Dabei ist
Tn = 46.1Ο#4θ Millisekunden und T_ = Τ( frame) c» 2, 6 Milli-
—Jjp ___________ —* —
Sekunden und also T(frame) = R.T.(frame) = 10,4 Millisekunden
und auch ΤΏ = 16O Millisekunden.
■ Bp
Dies bedeutet im ungünstigsten Zustand("worstcase"), dass die Kommunikationsgeschwindigkeit bei einer
Aktion etwa 99 Baud ist.
Wäre T = 2 bis 0,2 Mikrosekunde (infolge der Kp
vorhandenen Hardware·, siehe weiter bei Fig. 14 und 15) > so
vergrössert. sich, die erwähnte niedrigste Geschwindigkeit
auf etwa 500 - 5000 Baud.
Es sei hier bemerkt, dass es möglich ist, den T„. zu .verkleinern, auch wenn das Verfahren mit einem
programmierten Signalprozessor gesteuert wird. Dazu kann ein einfacher "Hoch"-zu"Niedrig"-Zustanddetektor zwischen
der Busleitung C und dem Modul aufgenommen werden. Der Detektor arbeitet wie folgt: Sobald der Bus nach "niedrig"
geht (C *o), bringt er über eine Schaltung die CW (Mi)=O.
Es sei bemerkt, dass aus obiger Beschreibung folgt, dass bei der Definition eines Systems nach der vorliegenden
Erfindung also festgestellt werden kann, welches das grösste Produkt (R.V) sein darf. Mit anderen Worten,
unter Berücksichtigung eines möglichst unvorteilhaften,
gerade noch zulässigen Moduls ist die Gewissheit, dass alles einwandfrei durch die Berücksichtigung des erwähnten
■ Produkts (R.V) verlaufen wird, gefestigt.
■ In Fig. h ist ein Datenverarbeitungssystem mit
mehreren Datenquellen und Datenempfängern dargestellt,
in. dem der Einzelleitungsbus nach Fig. 2 um eine zusätzen
liehe Leitung erweitert ist. Dieser Zweileitungsbus, der mit den zwei Leitungen, die je für die Übertragung zweier .logischer Zustände 0 und 1 geeignet istr, weniger preisgünstig ist als der Einzelleitungsbus, bietet den Vorteil, dass eine grössere Kommunikationsgeschwindigkeit erreich—
liehe Leitung erweitert ist. Dieser Zweileitungsbus, der mit den zwei Leitungen, die je für die Übertragung zweier .logischer Zustände 0 und 1 geeignet istr, weniger preisgünstig ist als der Einzelleitungsbus, bietet den Vorteil, dass eine grössere Kommunikationsgeschwindigkeit erreich—
bar ist. M1 , M-2 ... Mn sind wiederum Moduln,· die als
aktive Aktionsteilnehmer auftreten können. K ist eine Steuerleitung und D eine Datenleitung. Jeder Modul hat
einen Schreibausgang KW zur Steuerleitung und einen Lese-
PHN 9736 -Tt 10.3.1981
eingang KR von'der Steuex-ieitung K. Jeder Modul hat weiterhin einen Schreibausgang DW zur Datenleitung und einen Leseeingang·
von der Datenleitung D. Beide Leitungen haben die verdrahtete UND-Eigenschaf t: K = KW(M1 ) .KW(M2) ·. und
5D= DW(Mi).DW(M2)
Fig. 5 zeigt das Zeitdiagramm, das zum System 'nach Fig. 4 gehört. Im Prinzip geschieht hier mehr oder
weniger· dasselbe wie bei Fig. 3» insbesondere bildet die Verteilung der Aktionen auf die Leitungen K und D den
Unterschied. Wiederum sei angenommen,-dass der Modul M1
schneller als M2 ist. Zeitlich gesehen geschieht folgendes:
1) Ein vorangehender Meister hat die Benutzung des Busses beendet.. Alle Aktionsteilnehmer starten mit der Rückwärtszählung
der.Zeit T , in der Erwartung des fertigen Zustands des Busses (C = 1).
2) Wenn nach deni ersten Zeitraum· T. . (in diesem Fall für den
Modul M1 der T ) die K-Leitung den logischen Zustand nicht ändert, wird der Bus als "frei" betrachtet. Wenn der.
Bus den logischen. Belegtzustand bekommt (K = θ) , bevor der Zeitraum T.. abgelaufen ist, wird der Bus als belegt betrachtet.
Dabei wird erneut gewartet, bis der Bus freigegeben wird. In Fig. 5 ist die Benutzung des Busses mit BIU
angegeben. Wenn der Bus fertig ist (nach T), wird an prt 2) ein Datenbit (DB) des Moduls M1 am Ausgang DW(MI)
auf die Leitung D gebracht. Gleiches gilt für den Modul M2 nach Ablauf seines ersten Zeitraums T . Am Ausgang DW(M2)
wird ein Datenbit (DB) auf D gebracht. Die verdrahtete . UND-*Funktion der Leitung D bestimmt das Ergebnis dex· beiden
zugeführten Datenbits (eine "O" überdeckt eine "1").
3) Der Modul (hier Ml), der als erster feststellt, dass
sein, zweiter Zeitraum T^.. (hier T„ ) abgelaufen ist, bringt
einen logischen Zustand 0 auf die K-Leitung: Über den Schreibausgang KW(Mi) wird K = O. Andere Moduln., die inzwischen
selbst den Ablauf ihres ersten Zeitraums T,. fest-
Ai gestellt haben, reagieren darauf: "Induktion" und schreiben
selbst (nach ihrer Reaktionszeit T ) auch eine 0 auf der K-Leitung. In Fig. 5: Auf 3) nach TR? wird am Schreibausgang
KW(M2) eine O auf die Leitung K geschrieben. Diese
PHN 9736 ^S '" " '■ ' "10:3.1981
Phase ist die Aktion "Fertigzustand des Busses abwarten":
WI)F in Fig. r>. . .
k) Nach obiger K =>
O-Aktion wird die Datenleitung D abgetastet: Jeder Modul, der sich, an der Aktion beteiligt,
tastet'die Leitung D nach, einem Zeitraum T„. ab (die Unterschiede
sind wiederum durch die Taktgebertoleranzen verursacht) . Damit wird der Zustand der Leitung D in die
Moduln über ihre Eingärige DR(M1) und DR(M2) ... gebracht.
5) Nach dem Abtasten schreiben alle betreffenden Moduln
einen logischen Zustand 1 auf die K-Leitung über ihren Ausgang KW(Mx). Der Modul Ml macht dies nach dem Zeitraum
T21, M2 und mögliche andere Moduln zu anderen Zeitpunkten T2i, wobei:
6) Zum Zeitpunkt 6) alle Moduln über ihren Ausgang KW(Mx)
15' die Leitung K = 1 gemacht haben. Hiermit hat die Leitung K
daher den Zustand 1 angenommen (verdrahtetes UND).
7) Nach der Detektion des Übergangs 6) geben alle Aktions-Li;
iinelimer ein neues Datenbit (Du) ' axtf die Leitung D.
Dar Modul MI macht dies nach dem Zeitraum T^. vom Zeit-
Ü/X
pünkt 6) an. T ist ein Zeitraum, der im Modul Mi benötigt
Ü/X
wird, um ein neues Datenbit auf der Leitung D abzugeben. Andere Moduln machen das gleiche, und zwar vor dem Ablauf
von Tx,.. T_. und'T_. sind wieder der erwähnte erste und
. ■ -b-x . L·! Hx
zweite Zeitraum. Es tritt hier wiederum "Induktion".auf.
8) Nach dem zweiten Zeitraum T„. geht die Leitung K erneut
in den Zustand O über. Zu diesem Zeitpunkt ist es sicher, dass alle Aktionsteilnehmer ihr neues Datenbit auf der
Leitung D zugeführt haben (Modul M2 machte dies bei 7)>
siehe Leitung DW(M2) in Fig. 5). Die verdrahtete UND-Funktion
der Datenleitung D bestimmt wiederum das Ergebnis der zu-geführten Datenbits. Die Phase von 3) - 8) ist die- Aktion
für die Kommunikation des ersten Bits mit der Bezeichnung ■ TFB. Die Phasen k) - 8) werden so oft durchlaufen, wie
für die Herstellung der Kommunikationsverbindung notwendig ist, d.h. zumindest bis· die Schiedsverfahren- und "öffne-Sklave"-Phase
verarbeitet ist: Kommunikation d.es zweiten Bits (TSB) usw. Auch für dieses Beispiel wird hier eine
Berechnung der Zeiträume im Zusammenhang mit den Taktgeber-
BAD ORIGINAL
PHN 9736 -S-? " 10.3.1981
toleranzen angegeben. Tci ist wiederum der Ortstaktzeitraum
des Moduls Mi. Alle entsprechenden Zeiträume sind je Modul von diesem Zeitraum abgeleitet.
Ri ~ Ri * ' Ai ~ Ai" ' Bi "" Bi" ' Si . οχ
T2i = a2i.Tcx; T = aE-.Tci; Tp. = a^-Tcx. . . (1)
Hierin sind die Symbole aji Konstanten, a. . und a^,. sind
AX JIiX
wiederum interne Fertigzeitfaktoren, a. ■. bezieht sich auf
Ax
die Anzahl der Taktzeiträume, die in einem Modul Mi für
eine .Anfrage zur Herstellung einer Kommuiiikationsverbiridung
erforderlich ist. a^. bezieht sich auf die Anzahl der Takt-
Ü/X
Zeiträume, die ein Modul Mi benötigt, um ein neues Datenbit
(beispielsweise nach Heranziehung aus einem Speicher) dem Bus anzubieten. Wie oben müssen auch hier a„. und a„.
für das ganze System und nicht je Modul gelten. Nachstehend wird für das Zxveileitungssystem abgeleitet, was a„. = a.-,
Dl ±5
und a-r,. = a— erfüllen müssen.
Jb χ jf
Das Zeitdiagramm nach Fig. 5 ermöglicht eine
gute Aktionsverarbeitung nur dann, wenn folgende Bedingungen
erfüllt sind:
TRi <. T2i- (2A) '
i j.— . — — — — — — — — — — — ^i£x>y
f". T.. (2C)
Fx ζ Ax v '
T~ T ( ?T>^
■ -Ä-1 <
Bi j '
Mit" definiertem Ri = Tci/Tci kann aus 1) und 2) abgeleitet
werden:
a2i/aRi> Ri (3A)
aFi/aEi
> Ri
aAi/aFi
> Ri —
aBi/Aai >
Ri (3D)
Aus der Tatsache, dass normalerweise eine Situation mit der grösstmöglichen Kommunikationsgeschwindigkeit angestrebt
werden wird, kann (3A - 3D) wie folgt geschrieben werden:
a2i = Ri, aR. "■ :
_ _"H1 _ -1 ^
aFi - Ki.aEi
a ■. = Ri.a_. (4C)
Ai Fx x '
a-.. = Ri.a. . ——
Bi Ax
Es folgt daraus, da««: a„. = RLa1,. = Ri.Vi (5A)
1' X L· X
(aAi = R2L aEi= R2LVi (5B))
aBi = R3X. aEi= R3i. Vi (5c)
Es geht hieraus hervor, dass der Reaktionszeitfaktor
Vi = a,,, der .Fertigzeitfaktor zum Zuführen eines neuen
. Dat'enbits . ist.
. Dat'enbits . ist.
Auf entsprechende Weise wie oben für das Einleitungssystem beschrieben, müssen auch hier die Konstanten
a_. = aD und a„. = a„ als grösster Wert des Produkts (R. V)
±ix ±3 α χ i*
aus dem Vorrat der Produkte (RLVi) gewählt werden. Damit
liegen die Abhängigkeiten der zweiten Zeiträume fest:
aß = r3v und a^ = R.V ; ■ (6)
Damit ist dann 'T13. = R^'.V.Tci und T1-. = R.V.Tci (7)
XiX £ X
. Hierin ist also V = a_ (=Vp) der Fertigzeitfaktor dieses
Moduls Mp, für den das grösste Produkt (R.V) entsteht.
Die Reaktionszeit dieses Moduls ist (Fertigzeit) T_ = V.Tcp. Damit sind die kleinstmöglichen zweiten Zeiträume:
Die Reaktionszeit dieses Moduls ist (Fertigzeit) T_ = V.Tcp. Damit sind die kleinstmöglichen zweiten Zeiträume:
T„ = R3.T und T™ = R.T (8)
Hinsichtlich des Mindestzykluszeitraums ("frame")
für die Kommunikation eines Datenbits bei einer Aktion folgt: (siehe weiter Fig. 5) aus (8( und (4a) mit (1).
sodass T(frame) = R(T E' + T R ' (8A)
Angenommen sei, wie es praktisch häufig gewählt wird,
T = T , womit Τ(frame) = 2R.T . Dies ist also vorteilhafter als im Falle eines Einzelleitungssystems. Es gibt ein Verhältnis mit R statt mit R^·. Bei einem R = k weicht dies bereits um .einen Faktor 6k ab. Unter Berücksichtigung von 2R ist dies also ein Faktor 32.
T = T , womit Τ(frame) = 2R.T . Dies ist also vorteilhafter als im Falle eines Einzelleitungssystems. Es gibt ein Verhältnis mit R statt mit R^·. Bei einem R = k weicht dies bereits um .einen Faktor 6k ab. Unter Berücksichtigung von 2R ist dies also ein Faktor 32.
Zahleribeispiel: Angenommen R = 4, T_ = 10 Mikrosekunden
■KP
(und also auch T = 10 Mikrosekunden). Dabei ist
(und also auch T = 10 Mikrosekunden). Dabei ist
T(frame) = 2.4.10 = 80 Mikrosekunden und dabei ist ΤΏ =
Bp
ό4θ Mikrosekunden. In diesem Fall ist dabei die ungünstigste
.Situation ("worst case").: T(frame) = R.T. (frame)—320 MikroSekunden.
Dies bedeutet eine niedrigste Kommunikationsgeschwindigkeit von etwa 3000 Baud.
PHN -9736 «-f 10.3.1981
Audi hier ist eine Geschwindigkeitserhöhung
durch Anordnung eines eini'achon "Hoch" — zu- "Niedrig" —Zua taiuls—
detektors zwischen der K-Leitung und den Moduleingängen KR(Mi) möglich. Sobald ein 1 -—*. 0 -Übergang auftritt,
bringt die Detektorschaltung die Leitung K auf 0. Hiermit wird die Reaktionszeit T wesentlich verkleinert.
In der Datenkommunikationsphase (nach der Herstellung einer Kommunikationsverbindung) arbeitet ein Modul
als Sender (Quelle), und ein anderer Modul empfängt die
W . Daten (Empfänger). Es kann erforderlich sein, die Datenübertragung
vor Kommunikat ion s fehl er η zu sichern. Die.s kann dadurch gemacht werden, dass der Empfänger jedes empfangene
•Bit wieder zurücksendet ("Echo"). Dez· Sender vergleicht das empfangene Bit mit dem eben von ihm abgesandten Bit.
Durch dieses abwechselnde Absenden und Empfangen der Datenbits wird selbstverständlich die Kommunikationsgeschwindigkeit
herabgesetzt.
Mit den beschriebenen Einzelleitungs— und Zwei—
leitungssystemen ist das Induktionsprinzip ausführlich
iU genug erörtert. Es sei hier bemerkt, dass eine Vergrösserung
der Leitungsanzahl ebenso möglich ist: Beispielsweise ein Dreileitungssys.tem, in dem zwei Steuerleitungen und' eine
Datenleitung vorgesehen sind. In diesen Fällen ist das Induktionsprinzip ebenfalls anwendbar. Jedoch wird der
Nutzfaktor dabei kleiner, weil die grössere Leitungsanzahl
kostenerhöhend wirkt, was eben durch das vorliegende System vermieden werden muss. Beim Dreileitüngssystem.
tritt zwar wieder eine Erhöhung der Kommunikationsgeschwindigkeit auf, aber seine Einfachheit wird auch wieder geringer..
•Kommunikationsfehler können im Dreileitungssystem auf
gleichartige Weise wie oben für das Zweileitungssys tern
genannt, detektiert werden.
In Fig. 6 ist zur Veranschaulichung ein System
mit drei Leitungen als Ubertragungsmedium dargestellt.
Es gibt zwei Steuerleitungen KA und KB und eine Datenleitung D. Die Moduln Ml, M2 .... Mn besitzen Anschlüsse,
mit denen sie mit diesen Leitungen verbunden sind: Ein . AusgangsanSchluss KAW (Mi), mit dem Steuerdaten vom Modul Mi
PHN 9736 -grS· · ■ 10.3.1981
auf die Leitung KA geschrieben werden. Ein Eingangsanschluss KAR(Mi), mit dem Steuerinformation vomModul Mi
von der Leitung KA ausgelesen wird. Ebenso gibt es einen Eingangsanschluss KBW(Mi) und einen EingangsanSchluss KBR(Mi)
zum Schreiben bzw. zum Lesen auf der Steuerleitung KB.
Weiter hat jeder Modul einen Datenleitungsschreibanschluss DW(Mi) und einen Datenleitungsleseanschluss DR(Mi). Ein
zugeordnetes Zeitdiagramm spricht, nach den in Fig. 3 und gegebenen Zeitdiagrammen, für sich und wird hier nicht
weiter erläutert.
In ■ der Zusammenfassung lässt sich hinsichtlich der obigen
Beschreibung folgendes schliessen:
- Wie in der Einführung bereits erwähnt, werden zumindest vier Leitungen zum Betreiben einer asynchronen Kommunikation
an· einem Bus benötigt.
- Wenn weniger Leitungen verfügbar sind, müssen zeitabhängige Bestimmungen eingeführt werden.
— Die vorliegende Beschreibung gibt an, wie diese zeitabhängigen
Bestimmungen lauten und welche einfache Lösung
2" für die Kommunikation über Busse mit zumindest einem Ubertragungsmedium
möglich ist. Es sei bemerkt, dass sich die . Erfindung an sich nicht auf Einzel—, Zwei— oder Dreileitungsbusse
beschränkt, jedoch wird praktisch bei mehr als drei Leitungen die Vierleitungslösung mit einem Handshake-Ver-
■ fahren häufig bevorzugt.
— Die Kommunikationsgeschwindigkeit ist in vorliegenden
Systemen stark von der ungünstigsten (worst case) Taktgeberungenauigkeit·der
Moduln abhängig. Das Einzel-Leitungssystem ist besonders· einfach und preisgünstig für Anwendüngen
insbesondere in Gebrauchsartikeln und dergleichen. Nachteilig dabei ist schon, dass ein Empfänger die Geschwindigkeit
der Quelle, aus der er Daten empfängt, nicht reduzieren kann. Das Zweileitungssystem hat eine Zusatzleitung,
mit der es neben einer grösseren Kommunikations- (rofichvi indifiko LL auch m'otfl icJi IsL1 diesen NEichLuil de.s
Jtinzellei Lungssys teins zu beseitigen. Denn (unter Hinweis .
auf Fig. 5) sowohl ein Meister- als auch ein Sklaven-Modul des Systems kann die Datengeschwindigkeit dadurch herab-
PHN 9736 >7" 10.3.1981
setzen, dass die Leitung K=O für einen Zeitraum bedarfsmässig
gehalten wird (Zeitpunkt (6) verschiebt sich nach rechts in Fig. 5)· Das Dreileitungssystem gibt im allgemeinen
keine zweimal grössere Kommunikationsgeschwindig-
g keit. Deshalb wird, wenn drei Leitungen verfügbar sind,
das System nach dem Zweileitungsprinzip bevorzugt: Eine Leitung ist dabei Steuerleitung, und die zwei.anderen Leitungen
dienen dabei als zwei parallele Datenleitungen.
Zur Veranschaulichung dieses letzten Falls ist in Fig. 7 diese Form des Dreileitungsbusses dargestellt.
Es gibt eine Steuerleitung K und zwei Datenleitungen DA und DB. Die Moduln· M1 , M2 . . . Mn besitzen einen .Steuerleitungsschreibanrichluss
KW(Mi) und einen Steuerleitungsleseanschluss
KR(Mi). Weiter besitzen sie für eine jede
^5 der Datenleiturigen einen Datenleitungsschreibanschluss
DAW(Mi) und DBW(Mi) und einen Datenleitungsleseanschluss DAR(Mi) und DBR(Mi).
Ein Detail von Ausführungsbeispielen eines Datenverarbeitungssystems mit mehreren Datenquellen und
Datenempfängern, bei dem der Bus aus einem einzigen Ubertragungsmedium
besteht, ist in Fig. 2 im allgemeinen dargestellt. Die Moduln Mi können digitale·Signalprozessoren
sein. Diese Prozessoren sind mit eigenen Speichern ausgerüstet und können bestimmte Aufgaben durchführen. Wenn eine
Kommunikation mit anderen Moduln notwendig· ist, geschieht dies über den Bus. Die Prozessoren mit Speichern werden
vorzugsweise vom Typ sein, bei denen sog. Mikroprozessoren als Prozessor dienen. Mit Speichern, die möglicherweise
auf dem gleichen Chip angeordnet sind, werden diese Moduln auch Mikrocomputer genannt» Ein Beispiel eines derartigen
Mikrocomputers ist der Typ 8o48. Dabei kann eine Eingabe/—
lAusgabeanschluss (E/A), beispielsweise Anschluss 3^>
sowohl als Schreibausgang CW als auch als Leseeingang CR dienen. (Dazu im Programm zugeordnet). Es können auch zwei
Anschlüsse verwendet werden: ein E/A-Anschluss jh (P17) als
CR und ein E/A-Anschluss 38 (P27) als CW. Weiter ist für
einen derartigen Prozessor ein gesondert,ei* Eingung.sujischluss
(Nr0 6) noch erforderlich, um Unterbrechungen empfangen
BAD ORJGiNAL
PHN 9736 &€ I0V3.I98I
zu können (INT). Dieser kann also auch als CR betrachtet werden, wenn auch nui· für eine gewisse Aufgabe, auf die
weiter unten näher eingegangen werden wird (Fig. 11 und 12). In Fig. 8 ist dies nochmals dargestellt: in Fig. 8a und
Fig. 8b sind mit Ci Taktgeber gemeint.
In Fig. 9 ist dargestellt, wie ein Prozessor
mit einem Unterbrechungseingang INT, wie beispielsweise 8048, Unterbrechungen verarbeiten kann: ab SRT = Start im
Block 30-folgt immer die Frage: Gibt es eine Unterbrechung
.10 lNT(Block 32)?, wenn nicht (n) wird ein Befehl des Hauptprogramms
ausgeführt: MPI im Block 2>h. Danach wird wieder
festgestellt (zurück zum Block 30), ob es eine Unterbrechung gibt. Wenn es keine Unterbrechung gibt (y), wird
das Unterbrechungsprogramm vollständig ausgeführt: IPIS (Block 36). Dabei wird wieder geprüft, ob es eine Unterbrechung
gibt (Block 30), usw. Diese Art der Unterbrechungsverarbeitung
ist eine spezifische Eisenschaft beispielsweise
vom 8048.
Ein Mikroprozessor wie 8021, der keine Unterbrechung
kennt, besitzt einen Eingangsanschluss, der als
Unterbrechung definiert werden kann, mit dem die Unterbrechungsverarbeitung in das Gesamtprogramm aufgenommen
werden kann.
In Fig. 10 ist ein Flussdiagramm eines möglichen
Prozessorhauptprogramms dargestellt. Ein derartiges Hauptprogramm kann jede Art von Programm sein und besteht im
beschriebenen Beispiel aus dem Block 38, Anfang BEG. Darauf folgt eine Initialisierung INIT, Block 4θ. Im Block 42
werden Ortsoperationen LOP vom Hauptprogramm durchgeführt.
Dabei wird immerhin stets darauf geachtet, ob es Unterbrechungen gibt (siehe Fig. 9). Wenn im Hauptprogramm ein
Zustand erreicht wird, in dem eine Kommunikation mit einem anderen Modul erforderlich ist, stellt der Prozessor in
diesem Zustand eine Anfrage zum Herstellen einer Kommunikation REQ, d.h. dieser Modul möchte Meister des Systems
werden. Diese Anfrage muss verarbeitet werden. Dies ist .nur möglich, wenn der Bus für diese .Aktion "fertig" ist,
welcher Zustand im Block 44 geprüft wird : RDY?, der in
BAD ORIGINAL
PHN 9736 jF) 10.3.1981
diesem Beispiel die erwähnten Mittel HS umfasst. Ist der
Bus "fertig", wird die Freigabe (ADR) zur Aktion gegeben
(Y des Blocks 44). Dieser Block 44 ist hier besonders
■wichtig, denn es handelt sich um das Thema in der vor-
■wichtig, denn es handelt sich um das Thema in der vor-
liegenden Erfindung. Der Block 44 enthält die programmierten Funktionsmittel, die die erwähnten Mittel sind, mit
denen feststellbar ist, ob der Bus zum Durchführen von
Aktionen, die sich auf die Kommunikation beziehen, "fertig" ist« ¥ird diese Freigabe nicht gegeben (N des Blocks 44), wird erneut ein Versuch angestellt usw. ; Wird dagegen
Freigabe gegeben (Y), werden die Systemübertragungsoperationen TOP für die Datenübertragung, z.B. Senden, durchgeführt, Block 46. Arn En do dieser Operation wird der Bus wiederum freigegeben, Signal REQ , und Rückkehr zum Block Dabei, werden die Unterbrechungseingänge wieder zum Empfangen von Unterbrechungen freigemacht ("enable interrupt ( s)"), denn bei der Anfrage zur Freigabe (Block 44 sind (ist) diese (dieser) gesperrt ("disabled interrupt(s)"), damit vermieden wird, dass zwischenzeitliche Unterbrechungen den
denen feststellbar ist, ob der Bus zum Durchführen von
Aktionen, die sich auf die Kommunikation beziehen, "fertig" ist« ¥ird diese Freigabe nicht gegeben (N des Blocks 44), wird erneut ein Versuch angestellt usw. ; Wird dagegen
Freigabe gegeben (Y), werden die Systemübertragungsoperationen TOP für die Datenübertragung, z.B. Senden, durchgeführt, Block 46. Arn En do dieser Operation wird der Bus wiederum freigegeben, Signal REQ , und Rückkehr zum Block Dabei, werden die Unterbrechungseingänge wieder zum Empfangen von Unterbrechungen freigemacht ("enable interrupt ( s)"), denn bei der Anfrage zur Freigabe (Block 44 sind (ist) diese (dieser) gesperrt ("disabled interrupt(s)"), damit vermieden wird, dass zwischenzeitliche Unterbrechungen den
Prozess stören. Siehe weiter die Beschreibung bei Fig.13·
Wenn (siehe den punktierten Teil der Fig.10) eine Datenquelle und/oder ein Datenempfänger aus einem ersten Teil
und einem zweiten Teil besteht, wobei der erste Teil ein digitaler Signalprozessor ist, der die Quellen- und/oder
Empfängerfunktion erfüllt, und der zweite Teil, auch mit Schiedsrichter bezeichnet, die erwähnten Mittel enthält,
wird eine Anfrage REQ aus dem Block 42 in den Schiedsrichter (Block 43) gebracht. Hier wird dann die Freigabe
abgewartet, siehe wiederum Block 44 , ACK. Nach Ablauf.
der Übertragung gibt der Schiedsrichter den Bus wieder
frei: REQ (Block 48). Der Schiedsrichter muss dies auch
feststellen: Block 50. Wenn ja (Y), wird ACK ^ ACK und kehrt der Prozess zum Block 42 zurück. Wenn nein (Ν), wird 48 wiederholt. Zu diesem Punkt sei bemerkt, dass der erwähnte Block 44 deshalb so wichtig ist, weil hier der
Konflikt entsteht, wer der Meister wird, wenn mehrere
Moduln in ihrem betreffenden Block 44 ankommen. Insbesondere ist es hier daher wichtig, dass ein schneller Modul einen
frei: REQ (Block 48). Der Schiedsrichter muss dies auch
feststellen: Block 50. Wenn ja (Y), wird ACK ^ ACK und kehrt der Prozess zum Block 42 zurück. Wenn nein (Ν), wird 48 wiederholt. Zu diesem Punkt sei bemerkt, dass der erwähnte Block 44 deshalb so wichtig ist, weil hier der
Konflikt entsteht, wer der Meister wird, wenn mehrere
Moduln in ihrem betreffenden Block 44 ankommen. Insbesondere ist es hier daher wichtig, dass ein schneller Modul einen
PHN 9736 ?ö 10.3.1981
langsamen nicht verdrängt. Dies erfordert also die beschriebene "Induktion". Nachstehend wird dargestellt,
wie dies vor sich geht: siehe Fig. 13 und Fig. 15 mit Fig.i6.
Der Vollständigkeit halber sei noch darauf hingewiesen, dass, wenn ein Modul Meister ist, er einen
Sklaven anzeigen wird. Er sendet eine Identität des Sklaven aus und versucht, den Sklaven zu unterbrechen. Dies ist
der Grund, weshalb oben in den Beispielen nach Fig. 8a und 8b die INT-Eingänge dargestellt sind. Der Vorgang ist in
Fig. 11 dargestellt. Im Block 52 kommt die Unterbrechung
INT an, die vom Meister über den Bus allen anderen Quellen und Empfängern zugesandt wird (praktisch, ist diese INT als
Signal INT angegeben durch die Bezeichnungen: Eingänge INT). Im Block 54 prüfen alle Quellen und Empfänger, ob die
zugeführte Identität i ihrer eigenen Identität i ist.
.Wenn nicht (n), ist die Unterbrechung beendet: END, Block
Wenn ja (y), wird im Block 56 die Ubertragungsoperation TOP
(z.B. empfangen) durchgeführt. Beim Ablauf folgt dann END, Block 58.
ZO Der Block 5^· enthält den Identitätsvergleich
für die Sklavenwahl. Dies wird ausführlicher nachstehend beschrieben in:
Fig. 12. Der Block 6O ist der Anfang BEG. Im Block 62 wird eine Blockzählerstellung bt = O und die
Zeitzahlerstellung Tt = ο eingestellt. Im Block 64 wird gewartet, bis eine Zeit Tt = T2i (angenommen Mi ist der
Modul, in dem geprüft wird) (siehe T2i in Fig. 3) abgelaufen ist. Zu T2i wird ein am Bus vorhandenes Identitätsbit als Datenbit abgetastet, Block 66. Es ist das Bit bt
der Kennung j, das vom Anschluss P 17 (siehe Fig. 8) in ein Register des Prozessors gebracht wird: btj = P17·
Der Bitzähler wird mit 1 inkrementiert: bt + 1, Block 68.
Im Block 70 wird geprüft, ob die gewünschte Kennbitanzahl
(oder soviel mehr als gegebenenfalls für andere Zwecke
auch noch, erwünscht ist), beispielsweise bt = 4, erreicht
ist. Wenn nicht (n), wird bis zu Tt = T (siehe Fig. 3)
gewartet: Block 72. Sobald danach der Übergang des Busses C
nach "O" festgestellt wird: Block 74 (wobei PI7 = ο sein sol)
(siehe Fig, 3·Τ_,.) wird erneut angefangen: Zähler Tt = ο
Block 76) und zurück zum Block Sk. 1st die Anzahl bt = 4 erreicht, Block 70 (y), wird der Inhalt des Registers, in
dem die Kennung j eingeführt ist, mit der Kennung des betreffenden Moduls verglichen, Block 78. Ist i ^ j, so
ist es nicht als Sklave bestimmt und endet das Unterbrechungsprogramm:
END, Block 82 (=- Block 58 nach Fig. 1i). Ist i = j gleich, so ist dieser Modul als Sklave gewählt
und wird die ÜberLragungsoperation TOP durchgeführt, Block
(Block 56, Fig.11). Es folgt dann wieder Block 82, END.
Es stellt sich hier also heraus, dass für
Sklavenwahl jede andere Quelle und jeder andere Empfänger als' der Meister selbst unterbrochen und- gezwungen' wird,
den Identitätsvergleich durchzuführen. Dies nimmt viel Zeit in Anspruch: die Quellen und Empfänger, die feststellen,
dass 1 φ- j sind, sind vergebens unterbrochen worden und
haben also eine überflüssige Unterbrechung ihres Hauptprogramms. Dieser Nachteil kann durch das Anbringen eines
sog, Bedingtunterbrechungsmechanismus beseitigt werden.
2" Hiermit wird ohne direkte Un lerbrechung de« Prozossurf)
selbst, zunächst der Identitätsvergleich durchgeführt. Wenn tatsächlich i = j, so folgt eine Unterbrechung des
Prozessors selbst. Der erwähnte Bedingtunterbrechungsmecha— nismus ist in der deutschen Patentanmeldung P 30 35 718.7
" vom 27· September 1979 beschrieben und kann auf eine für
den Fachmann auf der Hand liegende Weise angepasst werden, um im System der vorliegenden Anmeldung zur Versorgung
.der Sklavenwahl verwendet werden zu können.
In Fig. 13 ist ein.Flussdiagramm der Prüfung
Bus "fertig"? dargestellt (es ist der Block kk nach Fig.10)
In diesem Beispiel mit dem digitalen Signalprozessor sind hiermit die erwähnten Mittel HS angegeben, die also programmierte
Funktionsmittel sind. Der Anfang ist mit SRT durch REQ (siehe Fig. 1O) Block 84 bezeichnet. Im Block 86 werden
die Unterbrechungseingänge ausser Betrieb gesetzt:DABINT.
Hiermit wird vermieden, dass ein Modul unterbrochen wird, wenn er selbst eine Aktion zum Einbringen einer Anfrage
macht. Im Block 88 wird die Zeit zurückgestellt: Tt = 0;
PHN 9736 . gfZ 10.3. 1981
dies geschieht durch die Rückstellung eines Zählers CR auf O (CR: = θ). Im Block 90 wird geprüft, ob die Leitung C,
die über den Anschluss P17 ankommt, den Zustand "1" hat. Wenn nicht (N), ist der Bus besetzt und wird wiederum ein
5. Versuch durch Rückgang zum Block 88 gemacht. Ist im Block ΡΊ7 = 1 (Y), wird der Zähler CR mit Hilfe des Taktgebers
für diesen Modul Mi mit "1" inkrementiert, d.h. CR: = CR+1
(Block 92). Im Block 94 wird festgestellt, ob die Zählerstellung
CR =a.. erreicht ist. Dieses a . ist hier also wiederum der Zeitfaktor a.., wie oben bereits erwähnt
Ax
wurde. Ist CR = a,., bedeutet dies, dass Tt = a...Tci =T..
Ax' Ax Ax
ist, der sog. erste Zeitraum. Der Block <)K enthält also
die ersten, die Detektion durchführenden Mittel: FDETM für den ersten Zeitraum T . Ist diese Stellung CR = a .
noch nicht erreicht (n), wird nach Block 90 zurückgegangen.
Ist a.. erreicht, ist dieser Modul an sich für die Aktion
Ax
fertig. Es.wird im Block $6 der Bitzähler bt auf 0 zurückgestellt:
bt: = 0, weiter wird geprüft (Block 98) ob die
Leitung C immer noch "1" führt und also belegt ist, d.h.
ob er "Bus fertig" angibt. Wenn hier die Leitung C und also
. PI7 = 0 ist (N des Blocks 98), ist der "Bus fertig" und
kann die folgende Aktion anfangen. Solange C = 1 ist im Block' 98 (Y) , wird der Zähler CR—»CR+1 (Block 100.). Im
Block 102 wird festgestellt, ob die Stellung.CR = a^ er-
reicht ist. Hier gilt wenn (Υ), dass Tt = T = a_Tci ist.
Der Block 102 enthält also die zweiten, die Detektion durchführenden Mittel SDETM. Diese Stellung a„ wird also
als Systemkonstante in den Speicher des Prozessors aufgenommen sein (wie die obengenannte a.., die jedoch eine
Information des Moduls Mi selbst ist). Ist die Stellung aR
erreicht (Υ), kann also die folgende Aktion gestartet werden. Solange diese Stellung nicht erreicht ist (N), wird nach
zurückgekehrt. Es wird wiederum geprüft, ob inzwischen
C = PI7 bereits "O" geworden ist. Dies ist inzwischen mög—
lieh, weil in einem anderen Modul sein zweiter Zeitraum Tn.
inzwischen abgelaufen ist. Wenn ja (das bedeutet hier N), ist diese Aktion "Bus f;ertig" abgelaufen (Punkt 103 in Fig. 13)
Wenn nicht, d.h. PI7 = 1 (y), wird CK wiederum um "1" inkre—
PHN 9736 /tö IO.3.198I
mentiert usw. Die Leitung "IND" in Fig. 13 bezieht sich
also auf die sog. Induktion. Der Zähler CR geht nicht bis an weiter, wenn ein anderer Modul seinen Zeitraum
ΐΏ. = a-Q.Tcj früher erreicht und dies durch C=O=P17 kenntlieh
gemacht hat. Hat Mi selbst inzwischen zumindest
T.. = a...Tel durchlaufen, so stellt auch er fest, dass
Ai Aa '
der Bus "fertig" ist. Hiermit haben dann alle Moduln, die eine Anfrage (REQ) eingereicht haben, ihre Aktion für das
Einbringen ihrer Anfrage (Start) beendet. Dies ist der Punkt (3) in Fig. 3'. Der Bus ist im C "= O-Zustand. Die
folgende Aktion kann anfangen, nachdem die betreffenden Prozessoren, die dieses C=O festgestellt haben, selbst
ihren Schreibausgang (P17 oder beispielsweise P27) auf 0
zurückgestellt haben (Block 1θ4). Die folgende Aktion, die
mit einem Startbit anfängt, bezieht sich auf die Feststellung, wer der Meister des Systems wird, auf der Basis
von Prioritäts-und/oder Kenndaten. Im Block lOk wird ausser
dem Schreibausgang C¥ (mit P17 im weiteren bezeichnet,
siehe auch Fig. 8a und 8b): = 0 auch die Zeit: = 0 durch .
das Rückstellen des Zählers CR: = 0. Die Zeitzählung startet
erneut. Es wird gewartet, bis Tt = TIi = aliTci abgelaufen
ist (für das Startbit), Block 106. Dabei gibt der Schreibausgang C¥ (PI7) das erste Datenbit der Kennung und/oder
der Priorität ab: P17: = bti (Block 108). Der umkreiste
" Buchstabe A unten zeigt auf den umkreisten Buchstaben A
oben, an welcher Stelle der Prozess weitergeht. Im Block wird gewartet, bis Tt = T2i abgelaufen. Dabei ist CR = a2i.
Dies ist der Punkt (5) in Fig. 3>
in dem die Leitung C abgetastet wird ("sample"). Im Block 112 ist geprüft, was
"*" die Leitung C enthält: Das verdrahtete UND der angebotenen
Bits bti usw. , Bezeichnung mit PI7 = IiAB. Leseeingang CR
(PI7) liest den Inhalt. Sind alle betreffenden (hier ersten) Bits gleich, so ist Y des Blocks 112 der Ausgang für alle
Moduln, Wenn jedoch von einem oder mehreren Moduln dieses Bit 0 und für die anderen Moduln dieses Bit 1 ist, so ist
für diesen/diese letzter·« Moduln das Soliiculsver 1'ahrtMi verloren,
und dieser (diese) erreicht(en) den Ausgang N von 112,
Dieser (diese) Modulen) beteiligt(en) sich nicht mehr in
PHN 9736 ^T 10.3.1981
der Wahl des Meisters. Dies wird je Bit der Kennung und/oder der Priorität verarbeitet, so dass schliesslich einer als
Meister übrigbleibt. Nach N des Blocks 112 wird (werden) vom Modul (von den Moduln) im Block 114 wiederum die
Unterbrechung(en) freigegeben, und sie sind wieder ansprechbar
(enabled) EABINT). Damit sind für diese Moduln (für
diesen Modul) die Aktionen zur Herstellung einer Kommunikationsverbindung
(also als Meister) nicht erfolgreich, ausgegangen, und er erreicht (sie erreichen) die Situation N
des Blocks 44 (Fig. 10), wie im Block II6 der Fig. 13 ange-. geben ist.
Für die Moduln, die noch nicht aus dem Wählprozess ausgeschieden sind, geht es über Y von 112 weiter:
Der Bitzähler wird eine Stellung erhöht bt—*bt+1 (Block 118)
Im Block 120 wird· festgestellt, ob die maximale Anzahl
der Prioritäts- und/oder Kennbits (bt max.+i) bereits .erreicht ist. Wenn ja, (y) ist der Wählprozess abgelaufen
und ist der (jetzt einzige) -Modul, der diesen Punkt erreicht hat, der Meister des Systems: Der Block 122 gibt
dies mit Y, 44, an, das auf den Y-Ausgang des Blocks 44 nach Fig. 10 zurückweist: ACK. Die Übertragung der Daten
kann anfangen: TOP usw. nach Fig. 10. Ist das Maximum btmax noch nicht erreicht (n), Block 129, wird gewartet, bis
Tt = T3i = a3iTci abgelaufen ist, Zähler CR = a3i (Block 124),
Damit ist der Bitzeitraum von bti abgelaufen und setzt der Modul (Mi) den Ausgang PI7: = 1, Block 127. Dies ist
CW(Mi) = 1 nach Punkt (6) in Fig. 3· Nach einer Reaktionszeit
Tt = T = a„..Tci ist es sicher, dass dieser Modul
ü/l Üil
Mi der C-Leitung wiederum den Zustand C=1 über PI7 als
Schreibausgang zugeführt hat, Block 128. Es handelt sich hier also um den ersten Zeitraum für diese Aktion mit dem
Fertigzeitfaktor a„. . Der Prozess wartet darauf im Block 128,
dieser enthält also die sog. ersten, die Detektion durchführenden Mittel FDETM für diese Aktion. Im Block 130
" wird festgestellt, ob die C-Leitung selbst tatsächlich =1
wird durch Zuführung von 1 aus dem Schreibausgang CW(P17). Dies, geschieht über CR(P17) als Leseeingang. Wenn C = PI7 =
1(y) ist, bedeutet dies, dass noch kein Modul seinen
PHN 9736 ^ " 10.3.1981
zweiten Zeitraum T„. erreicht hat. Der Zähler CR wird
i) ι
wieder um 1 inkreraentiert: CR —} CR+1, Block 132. Im
Block 134 wird festgestellt, ob die erreichte CR-Stellung
inzwischen gleich dem Reaktionszeitfaktor a„ ist. Dies
g betrifft also die sog. zweiten, die Detektion durchführenden
Mittel SDETM für diese Aktion. Ist diese Stellung a„ noch nicht erreicht (N), wird erneut festgestellt, ob inzwischen
kein anderer Modul durch das Erreichen dieser Stellung ap
dem Wert von C =PC17= 1 in C=O geändert hat (wiederum
Block 130 also). Bleibt C = PI7 = 1 , so folgt erneut 132 usw.
Erzeugt inzwischen ein anderer Modul C=O, so gilt N dos
Blocks 13Ο: Die Induktion tritt auf, und der Prozess springt
zum Punkt 103 zurück. Dies ist Punkt (8) in Fig. 3. Es wird ein folgendes Datenbit zugeführt: Block IO8 gibt das
folgende Bit bti (zweites usw.) ab, das wieder über die verdrahtete UND-Funktion beurteilt wird (Block 112) usw.
Wenn kein anderer Modul a„ früher zurückzählte, wird zu·
einem bestimmten Zeitpunkt im Block 134 CR = a„im betreffenden
Modul erreicht. Dies bedeutet, über Y von 134 wird dann der Punkt 103 des Prozesses erreicht. Darauf
geht es wieder weiter, bis entweder der Modul aus dem •Wählprozess herausgestossen wird: N des Blocks 112, oder
der Modul als Meister angezeigt ist, Y des Blocks 120, was erreicht wird, nachdem das letzte Bit verglichen ist
und es sich in 120 ergibt, dass nicht weiter gewählt zu werden braucht: bt = btmax+1.
In Fig. 14 ist ein Blockschaltbild einer Datenquelle und/oder eines Empfängers dargestellt, die bzw. der
aus einem ersten Teil DL1 und einem zweiten Teil DL2 besteht.
DL2 ist der Teil, der die Quellen- und oder die Empfängerfunktion
enthält. Über einen Anfrageausgang REQ ist DLI mit einem Anfrageeingang REQ von DL2 verbunden. Über einen
Freigabeeingang ACK ist DLI mit einem Freigabeausgang von DL2 verbunden. DL2 enthält die erwähnten Mittel US. Die
Taktsignalquelle für DLI ist über C1 mit DL2 verbunden.
DL2 ist mit einem früher genannten Schreibausgang CW und Leseeingang CR mit der Busleitung C verbunden. DL1 ist
selbst mit einem Unterbrechungseingang INT und einer (oder
6ϊ
PHN 9736 j#6 IO.3.I981
gegebenenfalls zwei) Eingangs- bzw. Ausgangsverbindung
bildenden Leitung(en) aus dem Eingangs/Ausgangsanschluss (den Eingangs-/Ausgangsanschlüssen) E/A mit der Busleitung C
verbunden. Die INT hat wieder die gleiche Funktion, wie bereits erwähnt wurde, siehe Fig. 8 usw. Die E/A-Verbindung
spricht an, wenn die Verbindung Meister-Sklave hergestellt ist und die Datenübertragung erfolgt.
Es handelt sich darum, dass in DL2 die Mittel HS insbesondere dazu ausgelegt sind, ausserhalb DL1 feststellen
zu können, ob der Bus zum Durchführen der erwähnten Aktionen "fertig" ist. Für den Zusammenhang mit den Vorgängen
im.Hauptprogramm eines Moduls Mi, von dem DL2 ein Teil ist, sei hier auf Fig. 10 verwiesen und auf die
Beschreibung dieser Vorgänge insbesondere in den punktiert angegebenen Blöcken 43, 48 und 5O·
Im allgemeinen ist es vorteilhaft, in DL2 auch die Aktion für die Meisterwahl anzubringen.
In Fig. 15 ist ein detailliertes Schema des
Teils DL2 nach Fig. 14 dargestellt.
In Fig. 16 ist ein Zeitbitdiagramm (Adress- und Dateninhalt) dargestellt, das zur Fig. I5 gehört.
In Fig. 15 ist statt eines ausgearbeiteten
logischen Schaltschemas mit vielen logischen Teilen (wie viele Gatter, Zweistellungenelementen usw.) eine Lösung
gewählt, bei der die erwähnten Mittel ein Festwertspeicher ROM, ein Adresszähler ADCR, ein logisches UND-Funktionselement,
hier das NAND 14O, sind. Weiter ist in diesem Beispiel auch vorgesehen, dass die Wählaktion in den im
Teil DL2 befindlichen Kennvergleichsmitteln erfolgen kann.
Diese Vergleichsmittel IDCOMP arbeiten mit dem vom Zähler
ADCR adressierten Festwertspeicher ROM und weiter mit einer Kippstufe DFF und einem Exklusiv-ODER-Gatter 142.
Weiter gibt es noch einen Inverter 144 mit offenem Kollektor
und eine NAND i46 mit offenem Kollektor,, die beide den
Schreibausgang CW bilden. Die Elemente 148 und I50 sind
weitere Inverter. 141 ist ein weiteres Nicht-ODER-Gatter.
Die Wirkung wird im Zusammenhang mit Fig. 16 erläutert:
to
9736 yf 10.3.1981
Hier sind links die Adressen A(o .... η, n+1, n + 2, n + 'j) ,
die Zeiten Tt und damit zusammenhängend die ZeitfakLoren
a· . , a-o ali ... a„ angeordnet, die Adressteile der Adressen
A von ROM darstellen. Rechts sind die Inhalte der Speicherstellen angegeben, die an Ausgängen DO, 1,2,3, 4,5 »6 von ROM
bei einer betreffenden Adressierung erscheinen.
Angenommen, es gibt keine Anfrage REQ = 0. Angenommen, die Leitung C=O, dabei ist am Ausgang des
Gatters i4i eine 0 vorhanden, mit der CLR = 0 ist, also
ein Löschvorgang einer im Zähler ADCR (gegebenenfalls) vorhandenen Stellung auftritt ("clear"). Der Zähler tritt
in den Zustand A(o ...n, . . . . ) = 0, und damit führen alle
Ausgänge eine 0. Waren durch A(...n+1) und/oder n+2, ...) einer oder mehrere Ausgänge 1, so ist jetzt dieser Zustand
aufgehoben.
Angenommen, es gibt keine Anfrage: REQ = 0, und angenommen, die Leitung C = 1, so ist ebenfalls am Ausgang
des Gatters 141 eine 0 vorhanden, und es1 geschieht dasselbe;
Löschen.
Angenommen, es gibt eine Anfrage: REQ = 1, und angenommen, die Leitung C ist O (also "belegt", so geschieht das gleiche wie oben.
Angenommen, es gibt eine Anfrage: REQ = 1, und angenommen, die Leitung C ist O (also "belegt", so geschieht das gleiche wie oben.
Angenommen, es gibt eine Anfrage REQ = 1 und es sei die Leitung C = 1, so sind alle Eingänge von 141
gleich 0 (denn, weil D4 = 0, ist LD = 1 und liegt also
. nach dem Inverter 150 auch eine 0 am Gatter i4i), so dass
CLR = 1 ist und der Adresszähler ADCR tatsächlich zu zählen anfängt. Die Taktimpulse an C1 (aus dem Modultaktgeber)
werden gezählt. Die Adressen, die ADCR durchläuft A(o), A( 1) , usw. ergeben nocli immer für alle D = O. Ändert sich
die Leitung C = 1 wieder in C=O, so kehrt der Vorgang wieder zurück: Löschen ('.'clear") des Zählers ADCR. Dies
bedeutet, dass der Bus die Anfrage nicht gewährt, denn er war noch mit einer früheren Kommunikation beschäftigt.
Es sei bemerkt, dass an REQ = 1 in einem Register IDCOMP,
am Eingang L gesteuert, die Kenn- und/oder Priotitätsdaten IDi des Moduls i gespeichert worden. Danach ist dieses
Register vorbereitet "S", um an seinem Taktgeber {s den
PHN 9716 'VS 10.3.1^01
Inhalt nach rechts zu schieben. Ist REQ = 1, C = 1 und
erreicht ADCR die Stellung a , für die Tt = T (siehe Fig.3)
aT3.IL ill
(der erste Zeitraum) , so erscheint arn Ausgang D4 von ROM eine 1, mit der das Gatter 1A-O vorbereitet wird. Das bedeut.et,
dass ab jetzt die "Induktion" auftreten kann.
Der Zahler zählt inzwischen weiter, wobei keine ROM-Ausgänge
geändert werden. Erreicht der Zähler ADCR die Stellung a_,
so ist der Zeitraum Tt = T_. und damit der zweite Zeitraum erreicht. In diesem Zustand wird der' Ausgang D1 von ROM
Ό gleich 1.' Hiermit wird über den Inverter 144, der einen
offenen Kollektor hat, die Leitung auf C=O gebracht (Punkt (3) in Fig. 3) · Dies geschieht, auch, wenn vor der
Stellung a„ über die Leitung C selbst eine 0 zugeführt wird.
Dies ist möglich, weil ein anderer Modul seinen TD . früher
. -DJ erreicht. Hiermit wird über den Inverter 148 das NAND 1 4θ
geöffnet (denn d4 war bereits 1), und damit wird LD = 0,
so dass der Zähler ADCR mit einer Stellung aR geladen wird
(aR ist am Zähler fest verdrahtet und wird beim Ladebefehl
in den Zähler geladen). Hiermit ist dann Induktion aufgetreten, es erscheint auch D1 = 1 und damit führt auch
dieser Modul C=O über den Schreibausgang CV. Anschliessend wird das Startbit (Strecke (3) - (4) in Fig. 3) ausgesandt:
C=O, bis Tt = TIi = a1i. Tci passiert wird. Der Zähler
ADCR geht ab a„ weiter. (Es tritt kein Löschen auf, denn D4 ist wieder 0, und damit ist LD = 1, und über den Inverter
150 liegt eine 0 an einem Eingang von NOR l4i, d.h.CLR = 1).
In der Stellung aR + all wird D2 = 1. Damit
öffnet sich das Gatter 146: das bedeutet, dass ein (bedeutsamstes)
Bit der Kenn-, und/oder Prioritätsdaten IDi, die im Register IDCOMP vorhanden sind, auf die Leitung C gegeben wird. Hier wird also eine i/o als eine o/l auf der '
Leitung C geschrieben (Punkt (4) in Fig. 3)· -An der Leitung
C tritt mit Bits anderer Moduln die verdrahtete UND—Funktion.
auf. Beim Weiterzählen bis a„+a2i erzeugt der.ROM am Aus —
gang D2 immer noch eine 1, so dass das erwähnte Bit nach
wie vor zugeführt wird. Ausserdem ist DO auch 1, und damit
wird die Kippstufe DFF getaktet (sie war bereits durch
REQ = 1 vcafoereitet. Hier steht der Punkt (5) in.Fig. 3
PHN 9736
("sample") an. Am Eingang von DFF liegt das Signal vor, das am Ausgang des Exklusiv-ODER-Gatters 142 vorhanden ist.
Dieses Signal ist das Ergebnis der Exklusiv-ODER-Funktion
des Bits, das vom Modul selbst aus IDCOMP zugeführt wird,
g und des Bits, das auf der C-Leitung vorhanden ist. Es kann
dasselbe Bit sein (beide O oder beide i) oder verschieden.
Bei Gleichheit liegt am Eingang von DFF eine 1, so dass am Ausgang ebenfalls eine 1 erscheint, die festgehalten
wird, wenigstens solange keine neue D0=1 als Taktimpuls
^O erscheint. Die erwähnte 1 adressiert ROM am Adressteil
A(n+3)=1> so dass die Gesamtadresse A(a2i,0,0,i) vorliegt. Wenn die erwähnten Bits ungleich sind, erscheint am Ausgang
von DFF eine 0 und wird der Adressteil A(N+3) = 0. Die Gesamtadresse ist dabei A(a2i,0,0,θ). Dies bedeutet: Bei
Ϊ5 Gleichheit entscheidet das Schiedsverfahren günstig. Der
Modul darf sich nach wie vor an dem Schiedsverfahren mit
einem folgenden Bit beteiligen. Der Speicher ROM ist jetzt von der erwähnten A(N+3)=1 in einem bestimmten Teil adressiert,
wodurch der Modul die Möglichkeit hat, der Meister zu werden. Bei Ungleichheit entscheidet das Schiedsverfahren
ungünstig. Der Modul kann jetzt kein Meister werden, weil Moduln mit höheren Kennummern und/oder höherer Priorität
ebenfalls REQ = 1 haben. Schiedsverfahrenbeispiel:
Identitäten M1=O1 nach Inversion, Zuführung zur Leitung C 10, ■ Identitäten M2=10 nach Inversion, Zuführung zur Leitung C 01,
Identitäten M3=11 nach Inversion, Zuführung zur Leitung.C
Für das bedeutsamste Bit gibt die Leitung C durch verdrahtetes UND den Wert 0. Mit den Mitteln IDCOMP zxisammen mit
DFF und 142 gibt dies in:
•30 M1- eine 0 am Ausgang von DFF, damit A(n+3) = 0 fehlerhaft.
M2 eine 1 am Ausgang von DFF, damit A(n+3) = 1 richtig. M3 eine 1 am Ausgang von DFF, damit A(n+3) = 1 richtig.
Also nur M2 und M3 beteiligen sich im weiteren Schiedsverfahren
(für das zweite Bit). Beim zweiten Bit gilt, dass ebenfalls C=O erscheint. Hiermit erscheint in M2 eine 0
am Ausgang von DFF und also A(n+3) = 0 flasch. Nur für M3 wird A(n+3) = 1 richtig. M3 ist gewählt. Im ROM geschieht
folgendes: Bei "falsch" wird im Teil vom ROM, für den der
PHN 9736 Jrtr 10.3.1981
Adressteil A(N+3) = 0 gilt, bei weiterzälilendem Adresszähler adressiert. In diesem Teil von ROM bleibt immer
D1=D2=D3=0. Damit werden keinen weiteren Bits dem Schiedsverfahren
zugeführt. CW ist damit immer 1 und übt keinen Einfluss mehr aus. Durch D3=0 tritt also kein ACK auf, was
bedeutet, dass dieser Modul keine Erlaubnis für eine Datenübertragung
als Meister des Systems erhält. Inzwischen wird am Zähler ADCR weitergezählt (alle Moduln; jedoch beeinflussen
nur die Moduln, die sich am weiteren Schiedsverfahren beteiligen, die Leitung C) .
Der Zähler ADCR erreicht den Zeitraum Tt=Tbi+T3i, bei dem die Stellung a +&3± erreicht wird (Punkt (6) in
Fig. 3)· Hier sind alle Ausgänge DO... 6=0. Auf der
•Leitung C herrscht der 1-Zustand (Stoppbit nach Punkt (5) in Fig. 3). Der Zähler zählt nach aB.+aE- weiter (Punkt (7)
Fig. 3)· Dabei ist wiederum der erste Zeitraum T nach T
HiI ' JjI
erreicht. Induktion kann auftreten: Ausgang D4=1, womit
das Gatter 1kO wieder vorbereitet wird. So auch Do=!.
Damit erreicht der Speicher ROM den Teil, der mit dem " Adressteil A(ri+2)=1 adressiert wird. Hierin sind die
Steuerbits für die Verarbeitung des zweiten Bits der Prioritäts—
und/oder Kenndaten gespeichert, (in diesem Beispiel mit T>3 und Do sind 2 =k Bits gedacht). Der Zähler ADCR geht
weiter, bis die Stellung a„ + a™ erreicht ist, d.h. der
z.weite Zeitraum T^. = a„.Tci nach T . . Damit ist wieder
D1=1 (und.Do bleibt 1 durch die folgende Verarbeitung des
zweiten Bits). Das zweite Bit wird aus dem Register IDCOMP herausgeschoben und am Gatter 146 bereitgestellt. Durch
D=1 herrscht auch 0 auf der Leitung C. Über CR liefert sie
eine 1 am Gatter i4o, das bereits vorbereitet ist. Es
tritt wieder LD=O auf, wodurch der Zähler ADCR wieder in die Stellung a_ gezwungen wird. Ab diesem Punkt (Punkt (8)
in Fig. 3) fängt der Zyklus erneut mit der Stellung a„ an.
Der Zähler zählt nach Tt=T +T1 weiter, in der das zweite Bit der Prioritäts- und/oder Kenndaten vom Gatter 142
(durch D2=i) zur Leitung C geht usw.
Wenn vor dem Erreichen der Stellung a_+a„
durch den Zähler auf der Leitung C eine 0 an CR gelesen
PHN 9736 JfT IO.3.I98I
wird, wird hierdurch immer (induktion) aR in ADCR geladen
und springt der Prozess zum neuen Zyklus weiter (Punkt (8) Fig. 3)· Von hier startet also der neue Zyklus Tür das
Schiedsverfahren des folgenden Bits, siehe oben, usw.
. Wenn ein Modul immer "richtig" siegt, A(n+3) bleibt immer 1, liegt am Ende des Zyklus für das letzte
Bit (hier also vier) an der Adresse A(an. + a_,1,1,i) am
iD J?
Ausgang D3 = 1, d.h. ACK=I, und damit ist dieser Modul
also Meister gewählt.
* Es wird klar sein, dass die Reaktionszeit T
des in Fig. 15 dargestellten Aufbaus klein ist. Denn bei
der induktion (angenommen, T_. ist erreicht, d.h. C=O durch
Modul Mj) wird im Modul Mi direkt über den Inverter i48
.das Gatter 14O, und den Zähler ADCR der ROM an einer
^ Stelle, an der D1=1 ist, adressiert. Hiermit macht auch
dieser Modul Mi die Leitung C=O.Τπ. ist völlig schaltungs-
Ki
massig bestimmt, im Gegensatz zu dem T_. im Beispiel nach
jxi
Fig, 13. Dabei muss der programmierte digitale. Signalprozessor
entweder nach dem Block 98 (N) oder nach dem Block 102 für den Fall T Ai/T B- und nach dem Block 130 (N)
oder nach dem Block 134 für den Fall T /T Programmschritte
durchlaufen, um dafür zu sorgen, dass an seinem Anschluss CW=PI7 eine 0 liegt (Block 104)(und für Tt= 0,
dass ausserdem der Zähler CR: = 0 wird). Dies nimmt mehr
Zeit in Anspruch, wodurch T grosser als im schaltungs-
xijL.
massigen Fall ist. Um dies zu begünstigen, kann zwischen
dem Bus und dem als Datenquelle und/oder Datenempfänger
benutzten programmierten Digitalsignalprozessor ein "fertig-besetzt"-»Zustandsübergangsdetektor angeordnet
JU werden.
Dies ist in Fig. 17 dargestellt. Der Detektor
besteht aus einem Inverter 152 und einem NICHT-UND-Gatter 15
Der Inverter I52 empfängt ein Signal von der Busleitung C
und das Gatter 15^· sowohl aus dem Inverter 15·'- al a auch
aus dem Prozessor Mi (8048). Der Ausgang von 154 ist wieder
mit der Busleitung G verbunden.
Der Ausgang P27 ist in diesem Beispiel ein Anschluss des Prozessors Mi (hier 8θ48), der derart während
BAD ORIGINAL
PHN 9736 kz 10.3.1981
dor AkLioiien der vorliegenden Anmeldung definiert ist,
dass bei cR=aAi (Block 94, FDETM) und bei CR=aE±(Block 128,
FDETM nach Fig. 13) an P27=1 liegt. Damit geschieht folgendes:
Das Gatter 15^· ist vorbereitet, Angenommen, es erreicht
über C ein O-Zustand den Inverter 152. Dabei wird über
auch eine 0 ab diesem Modul Mi an die Leitung C gegeben. Also: sobald nach T.. oder T,,. eines Moduls Mi die Leitung C
Al ILl
auf 0 kommt (durch Mi selbst bei T„. bzw. T„., aber insbesondere
von einem anderen Modul Mj bei T13 . bzw. T^.),
Bj- Fj
sorgt Mi dafür, dass dieser selbst auch C=O wird. Hiermit
ist T . verringert. Der Anschluss P27 ist weiter so definiert, dass er bei der Lieferung von P17:=0 (Block 104)
vom Prozessor wieder 0 wird, so dass der Detektor weiter keinen Einfluss ausübt (es wird immer 1 durch das Gatter
1^ erzeugt) .
Es sei bemerkt, dass es selbstverständlich auch
möglich ist, statt eines Anschlusses (P27) für diese Ausgabe
eine Lösung zu wählen, bei der unter Umgehung des Prozessors das Gatter 154 gesteuert wird. In Fig. 17 ist
dies als Beispiel noch für den Zeitraum T dargestellt: Innerhalb des strichpunktierten Rahmens. Dabei ist ein
zusätzlicher Zähler DETCR angeordnet, der beim Erreichen der O-Stellung einen Übertrag CY liefert. Die Leitung, auf
der CY erscheint, ist mit dem Gatter 154 verbunden. Die
Wirkung ist wie folgt: Der Prozessoranschluss PI6 ist als
der invertierte Löscheingang (CLE) des Zahlers DETCR definiert, mit dem nur während der Aktion (Pi6=i), in der
T eine Rolle spielt, der Zähler nicht gelöscht wird. Weiter ist der 1LOxLeT immer, trotz der Steuerung über LD
und CK, von keinerlei Bedeutung und führt auch CY=O-Signal.
Beim jeweiligen Auftritt eines 0-1-Ubergangs auf der Leitung C wird der Zähler DETCR von LD=1 mit einem Wert gleich
-a.. geladen, wobei eine früher erreichte Stellung, die
Al
bei einem früheren Versuch zum Rückwärtszählen von —a..
erreicht Hein kann, übei'sohrieben wird. Der Anschluss TO
des Prüzeasors isL als Taktausgang definiert, über den
Zählimpulse den Zähler DETCR erreichen, der rückwärts zählt. Wenn es gelingt, die Zählersteilung = 0 zu
PHN 9736 V5" 10.3.1981
erreichen, ist also T erreicht, und es geschieht folgendes
CY erzeugt ein Ubertragssignal am Gatter 15^» das damit
vorbereitet ist. Wird von Mi selbst oder insbesondere von einem anderen Modul Mj die Leitung C=O, so bedeutet dies
am Inverter 152, dass das Gatter i^k auch eine 0 Tür die
Leitung C erzeugt. Dam! L isL wiederum die sc-luiel J .ti Hciik
erreicht und also T verkleinert. Der Zähler selbst läuft nicht mehr weiter, denn CY=1 erzeugt eine Blockierung am
Erregereingang; ENA=I, also die Erregung ist 0. Damit bleibt
auch CY=I. Dies geschieht dann, bis diese Aktion beendet ist, d.h. in diesem Beispiel, dass P17: =0 geworden ist.
P16 ist dabei wieder 0 und also CLE = 0, d.h. der Zähler
wird gelöscht, mit welcher Aktion CY wieder 0 wird und das Gatter 15^ nicht länger vorbereitet ist. Der Detektor
kann weiter keinen Einfluss mehr ausüben.
BAD ORiGJNAL
Claims (1)
- PHN 9736 Jrt"~ 10.3.01PATENTANSPRÜCHEIy Datenverarbeitungssystem mit mehreren Datenquellen und Datenempfängern, die mit einem Kommunikations— bus verbunden sind, der aus zumindest einem Ubertragungsmedium für die Übertragung von zumindest zwei logischen Zuständen (θ und 1) besteht, dadurch gekennzeichnet, dass- das System mehrere Taktgeber mit gegenseitigen. Toleranzen enthält, und- in einer oder mehreren Quellen und/oder einem oder mehreren Empfängern Mittel (HS) vorgesehen sind, mit denen für alle Quellen und/oder Empfänger (Mi) , die sich, aj^tiv an einer sich auf eine Kommunikation beziehenden Aktion beteiligen (Aktionsteilnehmer), feststellbar ifft, ob der Bus (c) zum Durchführen dieser Aktion "fertig" ist, wobei diese Mittel(HS) -erste und zweite Detektionsdurchführungsmitt.el enthalten, mit denen feststellbar ist, dass in einem ersten bzw. einem zweiten Zeitraum (z.B. T bzw. T) der Kommunikationsbus für die Aktion fertig ist, wobei der erste Zeitraum kürzer als der zweite Zeitraum ist (z.B. T.. TR.) und dieser erste durch einen Fertigzeitfaktor (z.B. a ) des betreffenden Aktionsteilnehmers (Mi) bestimmt ist und der zweite Zeitraum in bestimmter Weise von dem grössten Produkt (R.V.)· des Vorrats an Produkten (Ri.Vi) aller potentiellen Aktionsteilnehmer (Mi) die Produkte (Ri.Vi) durch einen Toleranzfaktor (Ri) des Taktgebers für den Aktionsteilnehmer (Mi) und durch einen Reaktionszeitfaktor (Vi) dieses Aktionsteilnehmers (Mi) gebildet sind,- und bei der Detektion des Ablaufs des zweiten Zeitraums(T._.) durch einen Aktionsteilnehmer (Mi) für diesen und alle weiteren Aktionsteilnehmer (Mj, Mk ...), die inzwisehen den fertigen Zustand des Busses (C) während ihres ersten Zeitraums (T. . , T.T/., .,.) de tektier ten, der ßub(u)Aj auzum Durchführen der betreffenden Aktion (tatsächlich) fertig und damit für diese Aktion belegbar ist.J I IPHN 9736 >5" TO.3·19812. 'Datenverarbeitungssystein nach. Anspruch 1 , dadurch gekennzeichnet, dass die Mittel (HS) zum. Feststellen eingerichtet sind, ob der Koramunikationsbus (c) zum Durchführen einer Aktion für das Einbringen von Anfragen (Start) mehrerer Aktionsteilnehmer (Mi)- zur Herstellung einer Kommunikationsverbindung fertig ist.3. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, dass die Mittel (HS) zum Feststellen eingerichtet sind, ob der Kommunikationsbus (c) zum Durchführen einer Aktion für die Ausführung eines Vählverfahrens zwischen mehreren, die Kommunikationsverbindung anfragenden Datenquellen und/oder Empfängern (Aktionsteilnehmer. Mi) auf der Basis von Prioritäts- und/oder Kenndaten fertig ist.h. Datenverarbeitungssystem nach Anspruch 1, odereinem der folgenden Ansprüche, dadurch gekennzeichnet, dass der aus 'zumindest einem Ubertragungsmedium bestehende Kommunikationsbus je Anschlusstelle eines Aktionsteilnehmers (Mi) mit einein verdrahteten logischen Gatter versehen ist ("wired UND" oder "wired ODER").5· . Datenverarbeitungssystem nach Anspruch 1 und 2, dadurch gekennzeichnet, dass der Bus aus einem einzigen Ubertragungsmedium besteht, bei dem der minimale zweite• Zeitraum (T ) je potentiellen Alctionsteilnehmer (Mi)6
die Beziehung T51 = aß.Tci = (R .V).Tci erfüllt, worin Tci der Periodenzeitraum des Taktgebers für diesen Aktionsteilnehmer (Mi) ist.6. Datenverarbeitungssystem nach Anspruch 1 und 3»dadurch gekennzeichnet, dass der Bus aus einem einzigen Ubertragungsmedium (c) besteht und der minimale zweite. Zeitraum (T ) je potentiellen Aktionsteilnehmer (Mi) die Beziehung Tp. = a„.Tci = (r .V).Tci erfüllt, worin Tci der Periodenzeitraum des Taktgebers für diesen Alctionsteilnehmer (Mi) ist.7· Datenverarbeitungssysfem nach Anspruch 1 und 2,dadurch gekennzeichnet, -dass der Bus aus zwei Ubertragungsmedien (K, D-) besteht und. der minimale zweite Zeitraum (T ) . je potentiellem Aktionsteilnehmer (Mi) die BeziehungPHN 9736 Mr 10.3.1981T^. = (R .ν).Tci erfüllt, worin Tci der Periodenzeitraum des Taktgebers für diesen Aktionsteilnehmer (Mi) ist. 80 Datenverarbeitungssystem mit mehrfachen Datenquellen und Datenempfängern nach Anspruch 1 und 3s dadurch gekennzeichnet, dass der Bus aus zwei Übertragungsmedj.en (K, D) besteht und der minimale zweite Zeitraum (T ) je potentiellem Aktionsteilnehmer (Mi) die Beziehung T_. = (R.V).Tci erfüllt, -worin Tci der Periodenzeitraum des Taktgebers für diesen Aktionsteilnehmer (Mi) ist.9« Datenquelle und/oder Empfänger zur Verwendungin einem Datenverarbeitungssystem nach Anspruch 1 für eine aktive Beteiligung an einer sich auf eine Übertragung beziehenden Aktion, dadurch gekennzeichnet, dass die Datenquelle und/oder der Datenempfänger zumindest einen Steuereingang (CR) und einen Steuerausgang (CV) -b,esitzen, wobei in der Quelle und/oder im Empfänger die Mittel:- über den Steuerausgang (CW) nach dem Feststellen in den zweiten, die Detektion durchführenden Mitteln, dass der zweite Zeitraum (z,B„ ^-r·) abgelaufen ist, einen am Kommunikationsbus vorhandenen logischen Zustand "fertig" in einen logischen Zustand "belegt" umsetzen,- am Steuerausgang (C¥) ebenfalls den logischen Belegtzustand abgeben s wenn am Steuereingang (CR) der von einem anderen Aktionsteilnehmer am Bus erzeugte logische Zustand "besetzt" erhalten ist und ausserdem die Quelle und/oder der Empfänger inzwischen selbst mit den ersten, die Detektion durchführenden Mitteln festgestellt hat, dass zumindest der erste Zeitraum (z.B. ^a-) abgelaufen ist, womit die Quelle und/oder der Empfänger zur Beteiligung an der Durchführung einer betreffenden Aktion ansteuerbar ist.1Oo Datenquelle und/oder Datenempfänger nach ■ Anspruch 9s dadurch gekennzeichnet, dass sie bzw. er ein Digitalsignalprozessor ist, der programmierte Funktionsmittel besitzt, die die Mittel enthalten und von dem ein Eingang als der Steuereingang (CR) und ein Ausgang als der Steuerausgang (CW) arbeitet.J I I b 4 S JPHN 9736 -*Τ7" 10.3.19811 1. Datenquelle und/oder Datenempfänger nach Anspruch 10, dadurch gekennzeichnet, dass vor der Quelle und/oder dem Empfänger ein "Fertig-Belegt"-Zustandsübergangsdetektor angeordnet ist, mit dem ein "Fertig-Belegt"-Übergang am Kommunikationsbus eine verkürzte Reaktionszeit zum Abgeben des logischen Belegtzustands an seinem Steueraüsgang (CW) durch die Datenquelle und/oder den Empfänger selbst ergibt, wenn sie bzw. er ausserdem inzwischen festgestellt hat, dass zumindest der erste Zeitraum abgelaufen ist.12. Datenquelle und/oder Datenempfänger nach Anspruch 9» dadurch gekennzeichnet, dass ein erster Teil (DL1) und ein zweiter Teil (DL2) vorhanden sind, von denen der erste Teil (DLi) im wesentlichen die Quellen- und/oder Empfängerfunktion enthält und über zumindest einen Anfrageausgang (REQ) und einen Freigabeeingang (ACE) mit dem zweiten Teil (DL2) verbunden ist und der zweite Teil einen entsprechenden Anfrageeingang (REQ) und einen Freigabeausgang (ACE) besitzt und weiter mit den Mitteln (HS) zur Feststellung versehen ist, ob der Kommunikationsbus zum Durchführen einer sich auf eine Kommunikation beziehenden Aktion fertig ist, zu welchem Zweck der zweite Teil mit dem Steuereingang (CR) und dem Steuerausgang (CW) mi L dem Bus (z.B. C) verbindbar ist.13· Datenquelle und/oder Datenempfänger nach Anspruch 12, dadurch, gekennzeichnet, dass der zweite Teil (DL2) ebenfalls Kennvergleichsmittel (iDCOMP) enthält, mit denen die eigene Identität der Datenquelle und/oder des Datenempfängers mit einer dem Kommunikationsbus züge—^ führten Kennung vergleichbar ist.Ik. . Datenquelle und/oder Datenempfänger nach Anspruch' 12, dadurch gekennzeichnet, dass die Mittel im zweiten Teil einen Festwertspeicher (ROM), einen Adresszähler (ADCR) und ein logisches UND-Funktionselement (i4o) enthalten, wobei der Festwertspeicher vom Adresszähler adressierbar ist, der Adresszähler bei unbelegtem Bus Taktsignale zählt, die über einen Taktgebereingang (Cl) aus dem ersten Teil zugeführt werden, nachdem zunächst9736 ' >er "10.3.1981ein Afragesignal über den Anfrageingang (REQ) erhalten wurde, beim Erreichen der Zählerstellung, die den ersten Zeitraum (z.B. T..) darstellt, der adressierte Festwertspeicher ein Ausgangsbit erzeugt, mit dem das logische UND~Funktionselement #(i4o) fertiggestellt wird, beim Er-- reichen der Zählerstellung, die den zweiten Zeitraum (z.B. T ) darstellt oder soviel früher als am Steuereingang (CR) das Busfertigsignal in das Busbelegtsignal übergeht, mit dem dann über das UND- Funktionselement (i4o) der Zähler (ADC!?) in die Zahlerstellung des zweiten Zeitraums (z.B. T_. gesetzt wird, der Festwertspeicher ab der dabei adressierten Stelle ebenfalls den logischen Belegtzustand am Steuerausgang erzeugt.
15» . Datenquelle und/oder Datenempfänger nach Anspruch Ik, dadurch gekennzeichnet, dass der mit Hilfe • des Adresszählers (ADCR) adressierte Festwertspeicher (ROM) in Zusammenarbeit mit den den Kennvergleichsmitteln (IDCOMP) zum Durchführen eines Kennungsvergleichs geeignet ist. 160. ' Datenverarbeitungssystem nach Anspruch 1, ■ dadurch gekennzeichnet, dass der Kommunikationsbus aus zwei Ubertragungsmedien (K, D) besteht, von denen das eine als Steuerübertragungsmedium (K) und das andere als Datenübertragungsmedium . (d) dient, wobei zumindest jeder Aktioristeilnehmer (Mi) mit einem Steuermediumsehreibanschluss und einem Steuermediumleseanschluss (KW(Mx) und IiR(Mi)) und . mit einem Datenübertragungsmediumschreibanschluss und einem Dätenübertragungsmediumleseanschluss (DW(Mi) und DR(Mi)) ver sehen ist.17« Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, dass der Kommunikationsbus aus drei Ubertragungsmedien besteht, von denen zwei als Steuer-■übertragüngsmedium (KA, KB) dienen und das dritte als Datenübertragungsmedium (d) dient, wobei zumindest jeder. Aktionsteilnehmer (Mi) mit Steuerübertragungsmediumschreibanschlüssen und Steuerübertragungsmediumleseanschlüssen (KATi(Mi), KWB(Mi) und KAR(Mi), KBR(Mi)) und einem Datenübertragungsmediumschreibanschluss und einem Datenübertragungsmediumleseanschluss (DW(Mi) und DR(Mi)) versehen sind.973618. Datenverarbeitungssystem nach. Anspruch 1 , dadurch gekennzeichnet, dass der Kommunikationsbus aus •drei Ubertragungsmedien besteht, von denen eines als Steuerübertragungsmedium (κ) dient und die zwei anderen als Datenübertragungsmedien (DA und DB) dienen, wobei zumindest jeder Aktionsteilnehmer (Mi) mit einem Steuerübertragungsmediums ehr eibanschluss und einem Steuerübertragungsmediumleseanschl-uss (KW(Mi) und KR(Mi)) und mit Datenübertragungsmediumschreibanschlüssen und Datenübertragungsmediumleseanschlüssen (DAW(Mi), DWB(Mi) und DAR(Mi), DBR(Mi)) versehen sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL8002346A NL8002346A (nl) | 1980-04-23 | 1980-04-23 | Multi databron- en dataontvangersysteem met communicatiebus. |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3115453A1 true DE3115453A1 (de) | 1982-04-15 |
DE3115453C2 DE3115453C2 (de) | 1990-09-20 |
Family
ID=19835186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3115453A Granted DE3115453A1 (de) | 1980-04-23 | 1981-04-16 | Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbus |
Country Status (11)
Country | Link |
---|---|
US (1) | US4418386A (de) |
JP (2) | JPS56169453A (de) |
AU (1) | AU544216B2 (de) |
CA (1) | CA1164968A (de) |
CH (1) | CH654126A5 (de) |
DE (1) | DE3115453A1 (de) |
FR (1) | FR2481485B1 (de) |
GB (1) | GB2074819B (de) |
IT (1) | IT1135779B (de) |
NL (1) | NL8002346A (de) |
SE (1) | SE449801B (de) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58500227A (ja) * | 1981-06-17 | 1983-02-10 | ザ ボ−イング コンパニ− | 改良自律端末デ−タ通信システム |
US4332027A (en) * | 1981-10-01 | 1982-05-25 | Burroughs Corporation | Local area contention network data communication system |
US4513370A (en) * | 1982-07-19 | 1985-04-23 | Amdahl Corporation | Data transfer control system and method for a plurality of linked stations |
GB8316463D0 (en) * | 1983-06-16 | 1983-07-20 | Secr Defence | Priority resolution in bus oriented computer systems |
US4654820A (en) * | 1983-11-30 | 1987-03-31 | At&T Bell Laboratories | Interrupt bus structure |
DE3402076A1 (de) * | 1984-01-21 | 1985-08-01 | Philips Patentverwaltung Gmbh, 2000 Hamburg | Verfahren und anordnung zur datenuebertragung |
JPS61161840A (ja) * | 1985-01-10 | 1986-07-22 | Sharp Corp | デ−タ伝送方式 |
JPS61161842A (ja) * | 1985-01-11 | 1986-07-22 | Sharp Corp | 信号送出方式 |
IT1184933B (it) * | 1985-03-28 | 1987-10-28 | Olivetti & Co Spa | Circuito di integrazione per la trasmissione e la ricezione di dati |
US5101478A (en) * | 1985-06-28 | 1992-03-31 | Wang Laboratories, Inc. | I/O structure for information processing system |
US4908749A (en) * | 1985-11-15 | 1990-03-13 | Data General Corporation | System for controlling access to computer bus having address phase and data phase by prolonging the generation of request signal |
US5237670A (en) * | 1989-01-30 | 1993-08-17 | Alantec, Inc. | Method and apparatus for data transfer between source and destination modules |
US5274774A (en) * | 1989-01-31 | 1993-12-28 | Wisconsin Alumni Research Foundation | First-come first-serve arbitration protocol |
US5088024A (en) * | 1989-01-31 | 1992-02-11 | Wisconsin Alumni Research Foundation | Round-robin protocol method for arbitrating access to a shared bus arbitration providing preference to lower priority units after bus access by a higher priority unit |
US5333301A (en) * | 1990-12-14 | 1994-07-26 | International Business Machines Corporation | Data transfer bus system and method serving multiple parallel asynchronous units |
US5251305A (en) * | 1991-04-04 | 1993-10-05 | Unisys Corporation | Apparatus and method for preventing bus contention among a plurality of data sources |
US5245261A (en) * | 1991-10-24 | 1993-09-14 | International Business Machines Corporation | Temperature compensated overcurrent and undercurrent detector |
DE4135553A1 (de) * | 1991-10-29 | 1993-05-06 | Alcatel Sel Aktiengesellschaft, 7000 Stuttgart, De | Verfahren und schaltungsanordnung zur datenblockuebertragung ueber ein bussystem |
US5613038A (en) * | 1992-12-18 | 1997-03-18 | International Business Machines Corporation | Communications system for multiple individually addressed messages |
US5963719A (en) * | 1996-01-22 | 1999-10-05 | Cabletron Systems, Inc. | Two-pin distributed ethernet bus architecture |
EP0861547B1 (de) * | 1996-09-18 | 2005-07-06 | Koninklijke Philips Electronics N.V. | Nachrichtenverteilungssystem |
US6081904A (en) * | 1998-04-30 | 2000-06-27 | International Business Machines Corporation | Method for insuring data integrity during transfers |
EP0980166A1 (de) * | 1998-08-06 | 2000-02-16 | Siemens Aktiengesellschaft | Aktives Publishing |
GB0004088D0 (en) * | 2000-02-21 | 2000-04-12 | Nokia Networks Oy | Packet data services in a telecommunications system |
JP4120978B2 (ja) | 2001-02-27 | 2008-07-16 | ヤマハ株式会社 | 電子楽器用バスシステム |
EP2845110B1 (de) * | 2012-04-30 | 2018-10-24 | Hewlett-Packard Enterprise Development LP | Reflektierende speicherbrücke für externe rechnerknoten |
US10762011B2 (en) | 2012-04-30 | 2020-09-01 | Hewlett Packard Enterprise Development Lp | Reflective memory bridge for external computing nodes |
EP3912048B1 (de) * | 2019-01-15 | 2023-07-19 | Heldeis, Christoph | Verfahren zur impliziten adressierung von elektronischen einheiten und entsprechende einheiten |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1980001025A1 (en) * | 1978-11-06 | 1980-05-15 | Boeing Co | Autonomous terminal data communication system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3543246A (en) * | 1967-07-07 | 1970-11-24 | Ibm | Priority selector signalling device |
US3593300A (en) * | 1967-11-13 | 1971-07-13 | Ibm | Arrangement for automatically selecting units for task executions in data processing systems |
JPS5812611B2 (ja) * | 1975-10-15 | 1983-03-09 | 株式会社東芝 | デ−タテンソウセイギヨホウシキ |
JPS5296836A (en) * | 1976-02-10 | 1977-08-15 | Toshiba Corp | Multiplex data processing system |
US4096569A (en) * | 1976-12-27 | 1978-06-20 | Honeywell Information Systems Inc. | Data processing system having distributed priority network with logic for deactivating information transfer requests |
US4110823A (en) * | 1977-02-17 | 1978-08-29 | Xerox Corporation | Soft display word processing system with multiple autonomous processors |
GB2008293B (en) * | 1977-10-25 | 1982-05-06 | Digital Equipment Corp | Data processing system with read operation splitting |
-
1980
- 1980-04-23 NL NL8002346A patent/NL8002346A/nl not_active Application Discontinuation
-
1981
- 1981-04-13 GB GB8111624A patent/GB2074819B/en not_active Expired
- 1981-04-16 DE DE3115453A patent/DE3115453A1/de active Granted
- 1981-04-16 CA CA000375726A patent/CA1164968A/en not_active Expired
- 1981-04-16 AU AU69597/81A patent/AU544216B2/en not_active Ceased
- 1981-04-17 IT IT21288/81A patent/IT1135779B/it active
- 1981-04-20 US US06/255,916 patent/US4418386A/en not_active Expired - Fee Related
- 1981-04-21 CH CH2606/81A patent/CH654126A5/de not_active IP Right Cessation
- 1981-04-21 SE SE8102494A patent/SE449801B/sv not_active IP Right Cessation
- 1981-04-21 FR FR8107897A patent/FR2481485B1/fr not_active Expired
- 1981-04-22 JP JP5992681A patent/JPS56169453A/ja active Granted
-
1989
- 1989-08-25 JP JP1217654A patent/JPH02180450A/ja active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1980001025A1 (en) * | 1978-11-06 | 1980-05-15 | Boeing Co | Autonomous terminal data communication system |
Non-Patent Citations (4)
Title |
---|
CASAGLIA, G.F.. Distributed Computing System. A Biased Review, IN: Euromicro Newsletter, October 1976, Vol. 2, Nr. 4, S. 5-18 * |
SOMMER, RenE: Cobus, A Firmwave Controlled Data Transmission System, IN: Micro processing and Microprogramming, Second Euromicro Symposium, 1976, S. 299-304 * |
SOMMER, René: Cobus, A Firmwave Controlled Data Transmission System, IN: Micro processing and Microprogramming, Second Euromicro Symposium, 1976, S. 299-304 |
THURBER, Kenneth, J., JENSEN, Douglas, JACK, Larry, A., u.a.: A systematic approach to the design of digital bussing structures, Fall Joint Computer Conference, 1972, S. 719-740 * |
Also Published As
Publication number | Publication date |
---|---|
CH654126A5 (de) | 1986-01-31 |
FR2481485B1 (fr) | 1987-09-18 |
JPS56169453A (en) | 1981-12-26 |
IT1135779B (it) | 1986-08-27 |
GB2074819A (en) | 1981-11-04 |
NL8002346A (nl) | 1981-11-16 |
GB2074819B (en) | 1984-08-30 |
SE8102494L (sv) | 1981-10-24 |
AU544216B2 (en) | 1985-05-23 |
CA1164968A (en) | 1984-04-03 |
JPH035102B2 (de) | 1991-01-24 |
JPH023577B2 (de) | 1990-01-24 |
US4418386A (en) | 1983-11-29 |
AU6959781A (en) | 1981-10-29 |
IT8121288A0 (it) | 1981-04-17 |
JPH02180450A (ja) | 1990-07-13 |
SE449801B (sv) | 1987-05-18 |
FR2481485A1 (fr) | 1981-10-30 |
DE3115453C2 (de) | 1990-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3115453A1 (de) | Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbus | |
DE3779694T2 (de) | Rechnernetzwerksystem. | |
EP2622826B1 (de) | Verfahren zur automatischen adressvergabe an gleichartige busteilnehmer | |
DE2953444C2 (de) | Anordnung und Verfahren für ein digitales Datenübertragungsnetzwerk | |
DE69225671T2 (de) | Semaphormechanismus für Datenverarbeitungssystem | |
DE60118073T2 (de) | Geräte, Software, und Verfahren zur Umplanung von Mehrparteiensitzungen nach frühzeitiger Auflösung einer Sitzung | |
EP0339740B1 (de) | Verfahren zum Erteilen einer Zugriffsberechtigung für ein Nachrichtenübertragungssystem | |
DE2901762A1 (de) | Datenuebertragungs- und verarbeitungsanlage | |
DE3300699A1 (de) | Verfahren und schaltungsanordnung zur adressierung der speicher mehrerer datenverarbeitender einrichtungen in einem mehrfachleitungssystem | |
DE3114816A1 (de) | Schaltungsanordnung fuer eine datenverarbeitende anlage mit mehreren unterschiedlichen einheiten und einer prioritaetssteuerung | |
DE2913288A1 (de) | Multiprozessorsystem | |
DE2943149C2 (de) | Ringnetzwerk mit mehreren an eine Daten-Ringleitung angeschlossenen Prozessoren | |
DE4104601A1 (de) | Empfangsdatenverarbeitungsanlage | |
DE3882192T2 (de) | Schnittstelleanordnung für die Verbindung zwischen einerseits getrennten Stationen und andererseits einem für den Nachrichtenverkehr zwischen diesen Stationen benutzten physikalischen Mittel. | |
DE10143356A1 (de) | Akzeptanz-Filter | |
DE69027342T2 (de) | Bidirektionales Datenkommunikationssystem | |
EP0610202B1 (de) | Verfahren zur informationsübertragung in einem mehrere teilnehmer aufweisenden bussystem | |
DE2629401C2 (de) | ||
DE69612092T2 (de) | Digitales datenbussystem mit arbitrierung | |
DE102017109703B3 (de) | Verfahren zur Koordination des Zugriffs auf eine Ressource eines verteilten Computersystems, Computersystem und Computerprogramm | |
DE68914128T2 (de) | Zugangsberechtigungsfreigabe-Optimierungsverfahren zu einem aus offenen Kanälen bestehenden Netz. | |
DE102012204536A1 (de) | Netzwerk und Verfahren zur Übertragung von Daten über ein gemeinsames Übertragungsmedium | |
DE68907935T2 (de) | Verfahren und Anordnung zur Uebertragung einer Nachricht in einem Nachrichtenübertragungsnetz mit mehreren Masterstationen und mindestens einer Slavestation, insbesondere in einem Fahrzeug. | |
DE69637421T2 (de) | Verfahren für ein Datenbussystem mit Mitteln zur Ressourcensteuerung und Übertragungsstation | |
WO2012136783A1 (de) | Verfahren und vorrichtung zur datenübertragung zwischen verbundenen bussystemen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: H04L 11/00 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |