-
Verfahren und Vorrichtung zum parallelen Übertragen von Daten in einem
-
Mul tiprozessorsystem Die Erfindung betrifft ein Verfahren zum parallelen
Übertragen von Daten zwischen mehreren als Sender und/oder Empfänger arbeitenden
Einheiten in einem Multiprozessorsystem, wobei in einem Zyklus zumindest Daten von
einem Sender bereitgestellt werden, die Bereitstellung angezeigt wird, mindestens
ein Empfänger die Daten übernimmt und den Empfang quittiert, der Sender sodann die
Daten zurücknimmt und anschließend ein weiterer Zyklus durchgeführt werden kann,
sowie eine Einrichtung zur parallelen Übertagung von Daten zwischen mehreren Multiprozessorsystemen,
mit parallelen, die Multiprozessorsysteme verbindenden Leitungen.
-
Die Ef indung bezieht sich dabei insbesonsere auf Waren und Einrichtungen
zum Einsatz im Bereich der Meßtechnik und Meß -und Prozeßdatenverarbeitung. Gattungsgemäße
Verfahren und Einrichtungen dienen zur Abwicklung des Datenverkehrs zwischen verschiedenen
Rechnern und Meßgeräten, wie Voltmetern, Frequenzgeneratoren und anderen.
-
Bei allen Verfahren werden die einzelnen Meßgeräte von
einenizentralen
Steuergerät (Kontroller) gesteuert und programmiert.
-
Dieses zentrale Steuergerät sorgt auch für die Abwicklung des Datenverkehrs.
Das Steuergerät ruft mit Hilfe eines Steuersignals auf einer Steuerleitung über
einen sogenannten Datenbus ein bestimmtes Rechen-oder Meßgerät auf, welches dann
aufgrund dieser Zuteilung die bei ihm anstehende Information als Sender an einen
Empfänger übersenden kann.
-
Dieser wird ebenfalls von der Steuerung in ähnlicher Weise aufgerufen,
wobei dem Empfänger seitens der Steuerung ein Befehl zukommt, das der von dem Sender
Daten zu übernehmen hat. Die eigentliche Datenübertragung erfolgt dann im sogenannten
Hand-Shake-Betrieb. Der Einsatz dieses Verfahrens erfordert die vollständige Kenntnis
aller von der Verfahrensvorschrift zugelassenen Zustände des Systems. Weiterhin
ist das Verfahren, wie sich aus der vorstehenden Erläuterung ergibt, bestenfalls
noch für Meßgeräte geeignet, aber zu langsam zur Multi-Prozessorsteuerung mit mehreren
Prozessoren bei numerischem Steuerungsverfahren, bei denen zentrale Ablaufsteuerungen,
Dialogabwicklungen, Durchführung von Rechnungen, Regelungen und Jnterpolatio nen
vorgenommen werden müssen. Mittels dieses Verfahrens, das im sogenannten IEC-Bus
verwirklicht ist, muß darüber hinaus ein kompliziertes Leitungsprotokoll geführt
werden. Ähnlich arbeitet ein weiteres Verfahren, das sogenannte CAMAC-System. Auch
hier vermittelt ein System-Kontroller, so daß grundsätzlich die vorgenannten Nachteile
auch hier gegeben sind. Darüber hinaus ist der Kontroller von dem verwendeten Rechnertyp
abhängig. Bei einem weiteren neueren Verfahren enthält eines der Teilnehmergeräte
ein Zentral steuerwerk, das Rechnerzeit belegt, die nicht für die eigentlichen Aufgaben
dieses Teilnehmergerätes zur Verfügung steht. Zur Herstellung der Kommunikationsverbindung
sind eine Vielzahl von Leitungen erforderlich. Jedes Teilnehmergerät muß einen Kommunikationsbereich
freihalten, wodurch Speicherkapazität verloren geht. Darüber hinaus muß die Software
die Adresse
der jeweiligen Hardware kennen, ist also hardware-abhängig.
-
Insgesamt kann gesagt werden daß bekannte Verfahren und Einrichtungen
oft viele Leitungen bab#n#, däß grundsätzlich ein kompliziertes Leitungsprotokoll
geführt werden muß, daß die Buszuteilung über ein zentrales Steuergerät erfolgt,
das entweder separat oder in einem Tei Inehmergerät vorgesehen ist, wodurch im letzteren
Fall eine Blockierung dieses Gerätes erfolgen kann. Grundsätzlich fehlt bekannten
Einrichtungen auch die bei Prozeßsteuerungen erforderliche Schnelligkeit. Weiterhin
müssen die Geräte im allgemeinen Prozessoren gleicher Art aufweisen.
-
Der Erfindung liegt daher die Aufgabe zugrunde ein Verfahren und eine
Einrichtung zum parallelen Übertragen von Daten zwischen mehreren als Sender und/oder
Empfänger arbeitenden Prozessoreinheiten zu schaffen, das schnell ist, wenig konstruktiven
und wenig Protokoll ieraufwand erfordert.
-
Die genannte Aufgabe wird erfindungsgemäß durch ein Verfahren gelöst,
welches dadurch gekennzeichnet ist, daß zwischen den Einheiten ein Freigabesignal
umläuft, bis es durch eine Einheit festgehalten wird, um eine Datenübertragung durchzuführen.
Zur Durchführung des Verfahrens ist eine Einrichtung vorgesehen, bei der mindestens
eine die Prozessoreinheiten verbindende Ringleitung vorgesehen ist, auf der ein
Freigabesignal umläuft und daß in der Ringleitung Schaltelemente angeordnet sind,
mittels derer der Umlauf des Freigabesignals durch ein von einer Prozessoreinheit
abgegebenes Belegsignål abstoppbar ist.Die Nachteile der bekannten Verfahren werden
bei dem erfindungsgemäßen Verfahren dadurch gelöst, daß die einzelnen selbstständfgen
Prozessoreinheiten über eine Ringleitung~ direkt ohne Zwischenschaltung eines zentralen
Steuerwerks die# Belegung der Datenleitung anfordern und sobald ein umlaufendes
Freigabesignal bei ihnen angelangt ist, die Datenleitungen belegen können. Durch
die Vermeidung der Zwischenschaltung eines zentralen Steuerwerks wird
die
Geschwindigkeit erhöht und außerdem der konstruktive Aufwand vermindert. Es wird
vermieden, daß Rechner und Speicherzeit separat zur Steuerung der Zuteilung belegt
und damit für die eigentlichen Aufgaben fortgenommen wird. Aufgrund der Ausgestaltung
mit lediglich einer Ringleitung erübrigt sich die Vorsehung vieler Steuerleitungen
und es wird die Notwendigkeit eines komplizierten Leitungsporotokolls vermieden.
Zwar sind Ringleitungen an sich schon bekannt, bei diesen wird aber die gesamte
Information vom Sender durch sämtliche Rechner bis zum Empfänger durchgeschleust,
was beim erfindungsgemäßen Verfahren nicht der Fall ist. Erfindungsgemäß werden
praktisch nur Telegramme zum Kommunikationsaufbau gesendet, wobei die Durchführung
des erfindungsgemäßen Verfahrens prozessorunabhängig ist. Insgesamt wird in einfacher
Weise ein Verbindungsaufbau erreicht, der zuverlässig Störungen oder Verklemmungen
durch Zugriff verschiedener Geräte auf die Kommuni kationsleitungen ausschaltet.
-
Gemäß einer bevorzugten Ausführungsform ist vorgesehen, daß das Freigabesignal
für die Dauer der Datenübertragung festgehalten wird, wobei weiterhin derart vorgegangen
werden kann, daß das Festhalten des Freigabesignals der Prozessoreinheit bestätigt
wird.Die Anbrderung oder Belegung der Datenübertragungsleitungen erfolgt vorteilhafterweise
dadurch, daß das umlaufende Freigabesignal durch ein Belegsignal festgehalten wird.
-
Nach der Datenübertragung ist vorgesehen, daß das Festhalten des Freigabesignals
durch ein Rückmeldesignal der Prozessoreinheit mitgeteilt wird.
-
Insbesondere zur Durchführung des Verfahrens weist die Einrichtung
eine Ausgestaltung derart auf, daß die Prozessoreinheiten jeweils mit einem in der
Ringleitung liegenden elektronischen Element verbunden sind, mittels dessen der
Prozessoreinheit angezeigt wird, daß das Freigabesignal ange halten ist. Die Beleg-
oder Stafettenlogik, zum Durchlassen des Freigabesignals bzw. Anhalten des selbens
durch ein Belegsignal wird derart gesteuert, daß eine elektronischeLogikschaltung
zum Anhalten des
Freigabesignals aufgrund eines Belegsignals mit
einem Steuerregister eines jedem Gerät zugeordneten peripheren Schnittstel lenbausteins
mittels mindestens einer Leitung für das Belegsignal und einer Leitung für das Rückmeldesignal
verbunden ist. Diese Logik ist dabei derart ausgestaltet, daß die elektronische
Schaltung zum Abstoppen des Freigabesignals aufgrund eines Belegsignals eine sequentielle
Schaltung mit synchroner Logik ist.
-
Weitere Vorteile und Merkmale der Erfindung ergeben sich aus den Ansprüchen
und aus der nachfolgenden Beschreibung, in der ein bevorzugtes Ausführungsbeispiel
der Erfindung unter Bezugnahme auf die Zeichnung im einzelnen erläutert ist. Dabei
zeigt: Fig. 1 eine Prinzipdarstellung der erfindungsgemäßen Einrichtung; Fig. 2
ein Blockschaltbild eines Interfaces der erfindungsgemäßen Einrichtung und zur Durchführung
des erfindungsgemäßen Verfahrens; Fig. 3 eine Ablaufdarstellung einer bevorzugten
Ausführungsform des erfindungsgemäßen Verfahrens und Fig. 4 ~ ein Schaltbild der
wesentlichen Elemente eines Interfaces der erfindungsgemäßen Einrichtung.
-
Bei der erfindungsgemäßen Einrichtung bzw. dem erfindungsgemäßen Kommunikationsbus
werden mehrere Geräte, die miteinander kommunitieren sollen,miteinander verbunden.
In Figur 1 bezeichnen 21.1,21.2 und 21.3 Mikroprozessoren. Die Prozessoren 21.1
bis 21.3 sind in ansich herkömmlicher Weise an eine
Busschiene
2 mit einem bidirektionalen Datenbus 3 von acht bzw. sechszehn oder auch mehr prallelen
Leitungen zur gleichzeitigen Übertragung von acht-, sechszehn. oder mehr-Bit-Wörter
sowie einem Adressbus24 angeschlossen. Weiterhin weist die Busschiene Handshake-Leitungen
auf, wobei erfindungsgemäß bei der dargestellten Ausführungsform zwei Handshake-Leitungen#
1 und26.2 vorgesehen sind. Die peripheren Schnittstellenbausteine sind in der Fig.
1 im einzelnen nicht dargestellt, aber der Figur 2 zu entnehmen. Erfindungsgemäß
ist nun jedem Prozessor21.1 bis21.3 eine Stafettenlogik 7 , 7' und 7'' zugeordnet,
die in einerflingleitung 28 angeordnet sind,die derart sämtliche Stafettenlogiken
7, 7'.... und über diese sämtliche Prozessoren 1,1 ... 1.n miteinander verbindet.
Auf der Ringleitung 28 lätitein Freigabesignal oder Bus-Grant-Signal BG um, das
weiter unten genauer erläutert wird. Jeder Prozessor2l.i steht mit seiner Stafettenlogik
7 über Anforderung- und RückmeldeleitungenP . 1,29.2,29.3 bzw. 31.1, 31.2 und 31.3
in Verbindung, über die ein Busanforderungs- oder Festhaltesignal BUS Request, BR,
und einem Rückmeldesignal BACK gesendet werden kann.
-
Gemäß dem erfindungsgemäßen Verfahren wird bei Einschaltung der Einrichtung
und eines hierdurch ausgelösten Reset-Signals, das über eine Reset-Leitung das System
in einen definierten Grundzustand versetzt.
-
Gleichzeitig wird ein Taktsignal mit beispielsweise zwei Megahertzauf
einer Taktleitung 34 initiiert (Fig. 3). Weiterhin läuft auf der Ringleitung 8 das
Bus-Grant-Signal um ~und erreicht zum Zeitpunkt t1 den Prozessor21.1, zum Zeitpunkt
t2 den Prozessor21.2, zum Zeitpunkt t3 den Proz,essor21.3 und im dargestellten Ausführungsbeispiel
zum Zeitpunkt t4 wieder den Prozessor21. 1. So lange das Bus-Grant-Signal auf der
Ringleitung28in dieser Weise umläuft ist die Ringleitung freigegeben.
-
Ein Prozessor, im dargestellten Ausführungsbeispiel der Prozessor
1.1 sendet nun, wenn er beispielsweise Daten übermitteln will, über seine Anforderungslei
tungP . 1 ein BUSRequest, BR-Signal, mittels dessen dann über eine logische Schaltung
von der Stafettenlogik 7 das
Freigabesignal BG auf der Ringleitung
28 blockiert wird und daher nicht zum folgenden Prozessor weiterlaufen kann. Aufgrund
einer Rückmeldung BACK, die anzeigt, daß der Bus nun für den Prozessor21.1 reserviert
ist, kann dieser seine Verbindung mit einem oder mehreren der anderen Prozessoren21.2,21.3
usw. in an sich bekannter Weise mittels sogenannten Handshake-Betriebs herstellen
und durchführen. Der Prozessor 1.1 I egt also seine Daten auf den Bus 22,stellt
die Verbindung her, indem er eine Adresse aussendet, die von den anderen Prozessoren
gehört wird und von denen der oder die angesprochenen feststellen, daß sie angerufen
wurden, damit ihren Datenteil für den Empfang vorbereiten und die Bereitschaft durch
ein Ready- for- Data-Signal (RFD) anzeigen. Der Sender legt dann die Daten auf den
Bus und sendet anschließend ein sogenanntes Data- Valid-Signal (DAV). Nach Empfang
der Daten durch die angesprochenen Empfänger quittieren diese jeweils den Empfang
durch sogenannte Data-Accepted-Signale (DA 0) bis die gesamte Nachricht in diesem
Handshake-Betrieb übertragen wurde. Schließlich schickt der Sender eine Ende Kennung,
das das Ende seiner Datenübertragung anzeigt, woraufhin die Empfänger die Eingabe,
den Empfang abschalten.
-
Das Vorstehende ist in den Zeichnungen im einzelnen nicht dargestellt,
da es an sich bekannt ist. Erfindungsgemäß nimmt der Sender21.1 nun seine Busanforderung
zurück, so daß das BG-Signal weiter auf der Ringleitung 28 umlaufen kann. Bei dem
in der Fig. 3 dargestellten Beispiel belegt anschließend zu einem Zeitpunkt t5 der
Prozessor21.2 den Bus, in dem er das BG-Signal sperrt, nachdem er schon ab dem Zeitpunkt
t4, den Bus angefordert hatte, er kann ihn aber erst jetzt belegen, da das Freigabesignal
auf der Leitung 28 erst jetzt zu ihm gelangt, weil der Prozessor 1.1 bisher gesperrt
hatte. Der Ablauf der Datenübertragung erfolgt in gleicher Weise wie vorstehend
beschrieben. Nach Beendigung der Datenübertragung wird der Bus wieder freigegeben
und zu einem Zeitpunkt t6 gelangt das BG-Signal zum Prozessor 21.3
und
kann, soweit keine weitere Busanforderung vorliegt bzw. erfolgt, in der weiter in
Fig. 3 dargestellten Weise auf der Ringleitung 28 zwischen den drei Prozessoren
des Beispiels umlaufen.
-
Das Interface der erfindungsgemäßen Art ist in einem Blockschaltbild
in Fig. 2 gezeigt und weist zunächst eine periphere Schnittstellenlogik 16 auf,
die beispielsweise durch einen Input- Output-Ohip (l/O-0hi# also ein Eingangs- Ausgangsbaustein
derart eines MC 6821 verwirklicht sein kann. Zusätzlich sind Vergleichslogik-Bausteine
vorgesehen. Das Interface 36 enthält ein Adressregister 37, das mit dem Adressbus
24 verbunden ist, ein Datenregister 38, das an den bidirektionalen Datenbus 23gekoppelt
ist und ein Steuerregister 39, zu dem die Handshake-Leitungen 2fi 1und26.2 führen.
Die Register 37, 38, 39 sind sämtlich mit dem internen Bus 15 des jeweiligen Prozessors
verbunden. Steuer- und Datenregister 38, 39 sind über Schreib-Leseleitungen 40 miteinander
gekoppelt. Am Adressbus 4 ist eine Vergleichslogik 22 vorgesehen, mittels der verglichen
wird, ob die aufgerufene Adresse mit der Adresse der jeweiligen Prozessoreinheit
übereinstimmt, woraufhin dann die Steuerlogik 19 aufgrund eines Transfer-Request
über die Leitung 21 die Vorbereitungen zur Datenübertragung trifft. Über die Stafettenlogik
7,1, in die die Ringleitung als Eingangsleitung 1,1 hinein und als Ausgangsleitung
8.2 herausführt, wird in der erläuterten Weise die Freigabe des Busses 2 bzw. Belegung
aufgrund des Anforderungssignals BR vorgenommen. Von der Steuerlogik 19 führt eine
Irterruptletung 24 zum jeweiligen Prozessor, über die aufgrund der Mitteilung des
Zielprozessors oder Empfängers mittels eines Handshake-Sign als, daß er zur Datenannahme
bereit ist, im angesprochenen Prozessor von der Steuerlogik 19 ein interrupt erzeugt
wird, worauf er jeweils das nächste Datenbyte sendet.
-
Eine konkrete Schaltung zur Sperrung und Wiederfreigabe des BG-Signals,
also die Stafettenlogik 7 ist in der Fig. 4 dargestellt. Sie
besteht
aus Flip-Flops 7.01, 7.02, 7.11 und 7.12 sowie logischen Schaltelementen 7.21, 7.22,
7.23, 7.3 und 7.4. Der Ausgang der Flip-Flops zu einem Zeitpunkt hängt vom (inneren
Zustand) des Flip-Flops und den Eingängen zu einem vorhergehenden Zeitpunkt ab.
Die Schaltung ist derart, daß ein auf der Leitung 28.1 zu einem Zeitpunkt einlaufendes
Freigabesignal beim nächsten Takt WCLK auf der Leitung 34 über die den Ausgangsteil
28.2 der Ringleitung 28 zur nächsten Prozessoreinheit weitergegeben wird, wenn auf
der Leitung 29 ein Blockier- oder Anforderungssignal vorhanden ist. Wenn über die
Leitung 29 ein Anforderungssignal BR anliegt, so wird das nächste auf der Leitung
28.1 einlaufende BG-Signal beim nächsten Takt nicht an der Ausgangsleitung 28.2
weitergegeben, sondern so lange gesperrt, wie die Datenübergabe dauert und erst
nach Wegnehmen des Signals BR auf der Leitung 29 wird über 28.2 ein Impuls abgegeben.
-
Die in der vorstehenden Beschreibung, in der Zeichnung sowie in den
Ansprüchen offenbarten Merkmale der Erfindung können sowohl einzeln als auch in
geeigneten Kombinationen für die Verwirklichung der Erfindung in ihren verschiedenen
Ausführungsformen wesentlich sein.
-
- Leerseite -