DE3115453A1 - Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbus - Google Patents

Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbus

Info

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
Application number
DE3115453A
Other languages
English (en)
Other versions
DE3115453C2 (de
Inventor
Hendrik 5621 Eindhoven Vrielink
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Publication of DE3115453A1 publication Critical patent/DE3115453A1/de
Application granted granted Critical
Publication of DE3115453C2 publication Critical patent/DE3115453C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4213Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with asynchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/374Handling 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]

Landscapes

  • Engineering & Computer Science (AREA)
  • 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.
■ 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 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ü 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 :
- 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
T
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
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—
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 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.
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:
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.
Zahleribeispiel: Angenommen R = 4, T_ = 10 Mikrosekunden
■KP
(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-
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
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
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
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 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=a(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)

  1. PHN 9736 Jrt"~ 10.3.01
    PATENTANSPRÜCHE
    Iy 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 au
    zum Durchführen der betreffenden Aktion (tatsächlich) fertig und damit für diese Aktion belegbar ist.
    J I I
    PHN 9736 >5" TO.3·1981
    2. '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, oder
    einem 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 Beziehung
    PHN 9736 Mr 10.3.1981
    T^. = (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 Verwendung
    in 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 J
    PHN 9736 -*Τ7" 10.3.1981
    1 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ächst
    9736 ' >er "10.3.1981
    ein 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.
    9736
    18. 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.
DE3115453A 1980-04-23 1981-04-16 Datenuebertragunssystem mit mehreren datenquellen und datenempfaengern und mit kommunikationsbus Granted DE3115453A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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