-
Diese Erfindung betrifft einen
SIMD-Parallel-Datenprozessor gemäß dem Oberbegriff des Anspruchs.
-
Die gattungsbildende US-A-4 314 349 offenbart einen
SIMD-Parallel-Datenprozessor, bei dem mehrere Grund-Rechenelemente
in einer zweidimensionalen Gitteranordnung miteinander
verbunden sind. Alle Rechenelemente werden von einer einzigen
Steuersektion gesteuert und führen gleichzeitig denselben
Befehl aus. Jedes Grund-Rechenelement umfaßt einen Rechner,
einen Speicher und ein Schieberegister. Das Schieberegister
ist mit dem Speicher verbunden und in der Lage, Daten zu und
von den benachbarten Grund-Rechenelementen unter der
Steuerung durch die einzige Steuersektion, aber unabhängig
von und gleichzeitig mit dem Betrieb des Rechners und
Speichers zu übertragen.
-
Obwohl in diesem bekannten Datenprozessor das Verschieben
zu und von den Nachbarprozessoren asynchron und gleichzeitig
mit den Prozessor/Speicher-Aktivitäten ausgeführt werden
kann, laufen der Verschiebungs- und der Prozessortakt mit
derselben Geschwindigkeit ab. Der Verschiebungstakt und der
A-, P- und SR-Takt sind gemäß Offenbarung durch einfache
Gatterschaltungen von demselben Haupttakt abgeleitet; sie
weisen deshalb alle die gleiche Maximalgeschwindigkeit auf.
-
Die DE-A-3 500 040 offenbart einen SIMD-Rechner der in
Zeilen und Spalten mit Verbindungen zu den Nachbarn für den
Datenaustausch organisiert ist. In diesem System hat jedes
Prozessorelement ein Register und einen Multiplexer der Art,
daß dann ein Übertragungspfad von einem Register zu nächsten
besteht, wenn der Multiplexer richtig gesetzt ist. Die
Individualregister sind 1-Bit-Register.
-
Wie in der japanischen Offenlegungsschrift Nr. 56-123069
bisher offenbart wurde, wurde ein Parallel-Datenprozessor
vorgeschlagen, in dem mehrerer PE's (Prozessorelemente) mit
identischer Struktur in einer zweidimensionalem
Gitterkonfiguration angeordnet sind, wobei jedes der PE's in einer
nachbarlichen Beziehung verbunden ist und durch einen
identischen, von einer externen Steuersektion gelieferten,
Befehl betrieben wird, und wobei jedes PE für sich eine
Einrichtung zum Speichern der Statussignale und eine
Einrichtung zur Auswahl von einer der Betriebsarten mittels
des Statussignals aufweist, so daß jedes Eingangssignal des
benachbarten PE's und die in dem PE gespeicherten
Datensignale in das Rechnersystem übertragen werden.
-
Eine Anordnung eines PE's des vorherigen konventionellen
Parallel-Daten-Prozessors ist in Fig. 8 dargestellt, die ein
PE 2, eine Auswahlschaltung 21 zur Auswahl der Daten von der
benachbarten PE 2, eine Registerreihe 22, eine Zwei-Eingangs-ALU
23, eine Auswahlschaltung 24 zur Auswahl eines Eingangs
für die Zwei-Eingangs-ALU 23 und eine Auswahlschaltung 25 zur
Auswahl eines Eingangs für das benachbarte PE 2 umfaßt.
-
Die Betriebsweise der PE in dem konventionellen
Parallel-Datenprozessor wird jetzt im Anschluß beschrieben.
-
Beim Betrieb innerhalb des PE's werden zwei Daten von der
Registerreihe 22 aufgenommen und in der Zwei-Eingangs-ALU 23
verarbeitet, deren Ergebnis nochmals in der Registerreihe 22
gespeichert wird. Wenn eine Datenübertragung zwischen den
PE's 2 durchgeführt werden soll, dann werden die Daten aus
dem Registerreihe 22 des PE 2 auf der Dateneinspeiseseite
ausgelesen und durch beide Auswahlschaltungen 24, 25 zum
benachbarten PE 2 geleitet. Wenn das PE 2, das die Daten
empfangen hat, ein betroffenes PE ist, dann werden die Daten
durch beide Auswahlschaltungen 21, 24 und die Zwei-Eingangs-ALU
23 an die Registerreihe 22 zu ihrer Speicherung
übertragen. Wenn das PE 2 die Daten nur zum Zweck des
Datentransports empfangen hat, dann werden im Gegensatz dazu
die Daten über beide Auswahlschaltungen 21, 25 an das
benachbarte PE 2 übertragen.
-
Auf diese Weise kann die Datenübertragung zwischen PE's 2
auf derselben periodischen Basis unter Verwendung der
Registerreihe 22 und der Zwei-Eingangs-ALU 23 ausgeführt
werden.
-
In dem PE 2, das auf diese Weise in dem konventionellen
Parallel-Datenprozessor aufgebaut ist, erfordert jedoch die
Datenübertragung zwischen den PE's 2 eine Synchronisation mit
dem Betrieb in dem PE 2 unter Verwendung der Registerreihe 22
und der Zwei-Eingangs-ALU 23, und das PE 2 kann während der
Datenübertragung zwischen den PE's 2 nicht für andere Zwecke
betrieben werden.
-
Mit anderen Worten, die Synchronisation in den PE's 2
wird durch das Auslesen und Einschreiben der Registerreihe 22
als Berechnungszentrum und durch die Verarbeitungszeit in der
Zwei-Eingangs-ALU 23 bestimmt, während die Datenübertragung
zwischen den PE's 2, die mit höherer Geschwindigkeit
abgeschlossen werden sollte, eine längere nutzlose Zeit
verbraucht. Desweiteren kann die solchen Datenübertragungen
zugeordnete Registerreihe 22 eine andere Operation in dem PE
während der Datenübertragung zwischen den PE's verhindern.
-
Aus diesem Grunde ist der Parallel-Datenprozessor mit
mehreren in einer zweidimensionalen Gitteranordnung
verbundenen PE's hervorragend, was seine Erweiterbarkeit angeht,
und er kann auch leicht in seiner Leistung gesteigert werden,
hat aber ein Problem mit einer verzögerten Datenübertragung,
die für die Übertragung zwischen den PE's eine längere Zeit
benötigt.
-
Es ist eine Aufgabe der Erfindung einen
Parallel-Datenprozessor zu schaffen, der die Fähigkeit besitzt, die
Daten zwischen den PE's mit höherer Geschwindigkeit zu
übertragen, als es in dem Falle des Datenprozessors gemäß der
US-A-4 314 349 möglich ist. Weiterhin sollte eine Veränderung
des Verhältnisses zwischen der Übertragungsgeschwindigkeit
und der Verarbeitungsgeschwindigkeit lediglich relativ kleine
Änderungen bei der Auslegung erfordern.
-
Zur Lösung der obigen Aufgabe schafft die Erfindung, wie
beansprucht, einen SIMD-Parallel-Datenprozessor gemäß dem
Oberbgriff des Anspruchs, bei dem ein getrenntes Taktsignal
zur Ansteuerung des Schieberegisters vorgesehen ist. Das
ermöglicht, es die Datenübertragung zwischen den
Grund-Rechenelementen (oder PE's) mit höherer Geschwindigkeit zu
erreichen.
-
Mit dem erfindungsgemäßen SIMD-Parallel-Datenprozessor
kann die Datenübertragung zwischen den Grund-Rechenelementen
(oder PE's) mit hoher Geschwindigkeit unabhängig und
asynchron bezogen auf den Betrieb in dem PE ausgeführt
werden, nachdem die zwischen den PE's zu übertragenden Daten
aus dem Speicher in das Schieberegister übertragen wurden.
Nachdem die Daten ein Ziel-PE erreicht haben, werden die
Daten aus dem Schieberegister zurück in den Speicher geführt
um damit den Betrieb abzuschließen.
-
Zum besseren Verständnis wird die Erfindung jetzt im
Anschluß anhand ihrer bevorzugten Ausführungsformen genauer
mit Bezug auf die beiliegenden Zeichnungen beschrieben:
-
Fig. 1 ist ein Blockschaltbild, das das Aufbaubeispiel
des erfindungsgemäßen Parallel-Datenprozessor darstellt;
-
Fig. 2 ist ein Blockschaltbild einer Ausführungsform
eines PE-Aufbaus in dem erfindungsgemäßen
Parallel-Datenprozessor.
-
Fig. 3 und 4 sind Blockschaltbilder die jeweils das
Beispiel einer Verbindung der Schieberegister für die
Datenübertragung zwischen den PE s in der Westrichtung (Fig.
3) und in der Nordrichtung (Fig. 4) des in Fig. 2
dargestellten Parallel-Datenprozessors zeigen;
-
Fig. 5 ist ein Blockschaltbild eines Aufbaus für den
Leistungsvergleich zwischen einer konventionellen Vorrichtung
und der erfindungsgemäßen Vorrichtung;
-
Fig. 6 und 7 stellen Zeitdiagramme dar, die bei
Verwendung der konventionellen und der erfindungsgemäßen
Vorrichtung als Aufbau von Fig. 5 erhalten werden; und
-
Fig. 8 ist ein Blockschaltbild eines PE-Aufbaus in dem
konventionellen Parallel-Datenprozessor.
-
Fig. 1 ist ein Blockschaltbild, das das Aufbaubeispiel
des erfindungsgemäßen Parallel-Datenprozessor darstellt, das
ein PE 2 mit einem Speicher 3 und einer ALU 4 mit
Rechenfunktion umfaßt. Das Bezugszeichen 19 kennzeichnet ein
Beispiel eines Parallel-Datenprozessor, der 4·4 PE
2-Elemente, von denen jedes einen, von einer Steuersektion 20
gegebenen, identischen Befehl gleichzeitig ausführen kann.
Desweiteren kann jede PE 2 Daten nur an eine benachbarte PE 2
in der Nord-, Ost-, Süd- oder Westrichtung übertragen.
-
Fig. 2 ist ein Blockschaltbild einer Ausführungsform
eins PE-Aufbaus in dem erfindungsgemäßen
Parallel-Datenprozessor. In der nachfolgenden Beschreibung der Zeichnungen
werden dieselben Bezugszeichen zum Kennzeichnen derselben
oder äquivalenter Teile in jeder Figur verwendet. In Fig. 2
steht das Bezugszeichen 1 für ein PE, das den
erfindungsgemäßen Parallel-Datenprozessor bildet, während das
Bezugszeichen 2 dasselbe PE für die konventionelle Vorrichtung
einschließlich des Speichers 3 und der ALU 4 darstellt. Das
Bezugszeichen 5 stellt ein erfindungsgemäß angeordnetes
Schieberegister dar, das die Daten aus dem Speicher 3 über
eine Einschreibeleitung 17 speichern und einen Wert des
Schieberegisters 5 über eine Ausleseleitung 18 in den
Speicher 3 schreiben kann. Eine Bitanzahl des
Schieberegisters muß nicht spezifiziert werden.
-
In der in Fig. 2 dargestellten Ausführungsform ist die
Datenübertragung in paralleler Form zwischen dem
Schieberegister 5 und dem Speicher 3 möglich, kann aber nur durch
die Verschiebung von einer Ein-Bit-Einheit bewerkstelligt
werden. Das Bezugszeichen 10 kennzeichnet eine
Auswahlschaltung für die Bestimmung, von welcher benachbarten PE 1
die Daten gewählt werden sollen, während die Bezugszeichen 11
bis 14 Leitungen zur Eingabe eines Datenbits von jeder der
Ost-, West, Süd und Nord-PE's 1 kennzeichnen. Das
Bezugszeichen 16 steht für eine Leitung zur Eingabe der von der
Datenauswahlschaltung 10 selektierten Daten in das
Schieberegister 5, während das Bezugszeichen 15 eine Leitung zur
sequentiellen Einspeisung jedes einzelnen Bit der
Ausgangssignale des Schieberegister 5 in die benachbarten vier PE's
in der Ost-, West, Süd und Nord-Richtung kennzeichnet.
-
Der Betrieb des Schieberegisters 5 schließt den Betrieb
der Datenübertragung bezüglich des Speichers 3 in der PE 1
und die Datenverschiebung zwischen den benachbarten der PE's
aufgrund der Datenübertragung dazwischen ein, wobei beide
asynchron bezogen auf den ersteren sein können, der synchron
zum Betrieb in der PE 1 ist, während letzterer mittels eines
Hochgeschwindigkeitstakts ausgeführt wird. Das Bezugszeichen 6
kennzeichnet eine Taktleitung, die sowohl für die Ausführung
als auch für die Datenübertragung zwischen dem Speicher 3 und
dem Schieberegister 5 eingesetzt werden kann, während das
Bezugszeichen 7 eine Hochgeschwindigkeitstaktleitung
kennzeichnet, die für das Schieberegister 5 während der
Datenübertragung zwischen den PE's benutzt werden kann. Das
Bezugszeichen 8 steht für eine Auswahlschaltung zur Auswahl
einer der zwei Taktleitungen 6, 7 für das Schieberegister 5,
während das Bezugszeichen 9 für eine Taktleitung zum
Schieberegister 5 steht.
-
Die Fig. 3 und 4 sind Blockschaltbilder, die jeweils
Beispiele der Verbindung von Schieberegistern für die
Datenübertragung zwischen den PE's in die Westrichtung (Fig.
3) und in die Nordrichtung (Fig, 4) in dem
Parallel-Datenprozessor, wie in Fig. 2 gezeigt, darstellen; Fig. 5 ist ein
Blockschaltbild eines Aufbaus für den Leistungsvergleich
zwischen einer konventionellen Vorrichtung und der
erfindungsgemäßen Vorrichtung; und die Fig. 6 und 7 stellen
Zeitdiagramme dar, die bei Verwendung der konventionellen und
der erfindungsgemäßen Vorrichtung als der Aufbau von Fig. 5
erhalten werden.
-
Der erfindungsgemäße Betrieb des Parallel-Datenprozessors
wird jetzt beschrieben.
-
Zuerst wird ein Verfahren für die Datenübertragung
zwischen den PE's beschrieben, das enthält:
-
(1) das Auslesen aus dem Speicher 3,
-
(2) die Datenübertragung zwischen den PE's mittels des
Schieberegisters 5,
-
(3) das Einschreiben in den Speicher 3, und
-
(4) die Wiederholung der Schritte (1) bis (3).
(1) Auslesen aus dem Speicher 3
-
Sowohl der Speicher 3 als auch das Schieberegister 5
werden über die Taktleitung 6 getaktet, um die
Übertragungsdaten aus dem Speicher 3 auszulesen und dann die Daten über
eine Einschreibeleitung 17 in dem Schieberegister 5 zu
speichern. Danach wird ein PE im PE1 von dem Schieberegister
5 getrennt, und der Betrieb kann unabhängig von der
Datenübertragung zwischen den PE's 1 bis zum Schritt (3) des
Einschreibens in den Speicher 3 fortgesetzt werden.
(2) Datenübertragung zwischen den PE's mittels des
Schieberegisters 5
-
Die in dem Schieberegister 5 gespeicherten Daten werden
zwischen den PE's 1 unabhängig vom Betrieb mit Hilfe des
Hochgeschwindigkeitstakts übertragen. Im Falle der
Datenübertragung zwischen den PE's 1, z. B. in der Westrichtung, bildet
das Schieberegister 5 in der PE 1 ein Schieberegister zur
Verschiebung in Westrichtung, wie es in Fig. 3 dargestellt
ist. Diese Verschiebungsoperation zwischen den
Schieberegistern 5 ermöglicht die Datenübertragung zwischen den PE's
1. In ähnlicher Weise erfolgt, wie in Fig. 4 dargestellt,
die Datenübertragung zwischen den PE's 1 in die Nordrichtung.
-
Ein derartiger Betrieb beinhaltet nur den
Verschiebungsbetrieb zwischen den Schieberegistern 5 und benötigt
demzufolge nicht den gleichen Taktzyklus, wie für den
Verarbeitungsbetrieb. Zu diesen Zweck wird der
Hochgeschwindigkeitstakt, der asynchron zum Verarbeitungsbetrieb
läuft, benutzt. Desweiteren ist diese Schiebeoperation nicht
mit dem Speicher 3 und der ALU 4 für den Verarbeitungsbetrieb
verknüpft und kann demzufolge unabhängig von dem
Verarbeitungsbetrieb in der PE 1 ausgeführt werden.
(3) Einschreiben in den Speicher 3
-
Nach der Datenübertragung zwischen den PE's 1 werden die
Daten, die das Schieberegister 5 des Ziel-PE's 1 erreichen,
in den Speicher 3 eingeschrieben. In diesem Falle wird die
Taktleitung für das Schieberegister 5 auf die Taktleitung 6
für den Verarbeitungsbetrieb umgeschaltet.
(4) Wiederholung der Schritte (1) bis (3)
-
Wenn die zwischen den PE's 1 zu übertragenden Daten nicht
gänzlich in das Schieberegister 5 eingeschoben werden können,
dann sollten die Schritte (1) bis (3) wiederholt werden.
-
Die Hochgeschwindigkeitsleistung des erfindungsgemäßen
Prozessors wird unter Verwendung der in Fig. 5 dargestellten
Ausführungsform qualitativ mit der des konventionellen
Prozessors verglichen. Es werden nämlich Daten von der PE 1,
die davon in einer optionalen Anzahl von PE's in der Ost-,
West-, Süd- und Nordrichtung entfernt liegt, für den Betrieb
eingespeist, dessen Ergebnis dann wieder auf das
ursprüngliche PE 1 zurückgespeist wird.
-
Eine derartige Betriebsweise der konventionellen
Vorrichtung ist in Fig. 6 dargestellt, in der ein Symbol (N→) die
Datenübertragung zwischen den PE's 1 von der nördlichen PE
zur Ziel-PE anzeigt, während ein Symbol (→N) die
Datenübertragung zwischen den PE's von der Ziel-PE zur nördlichen PE
(und auf gleiche Weise für die PE's aus der östlichen (E),
westlichen (W) und südlichen (S) Richtung) anzeigt. Ein
Symbol (NOP) kennzeichnet den Betrieb für die Daten, die von
der nördlichen PE 1 (und in gleicher Weise von E, W und S)
eingespeist werden.
-
Die gleiche der Erfindung entsprechende Betriebsweise ist
in Fig. 7 dargestellt, bei der sowohl die Datenübertragung
als auch der Verarbeitungsbetrieb in der PE 1 gleichzeitig
ausgeführt werden können. Zusätzlich kann die
Datenübertragung zwischen den PE's 1 asynchron zum
Verarbeitungsbetrieb in der PE 1 mit hoher Geschwindigkeit, wie z. B. der
doppelten Geschwindigkeit im Vergleich zu der Geschwindigkeit
der Datenübertragung zwischen den PE's 1, wie es in Fig. 6
gezeigt ist, ausgeführt werden. Die Datenübertragung kann
nicht gleichzeitig in beiden Richtungen ausgeführt werden,
aber es kann eine bemerkenswert hohe Geschwindigkeit im
Vergleich zur konventionellen Vorrichtung erreicht werden.
-
Obwohl die Datenübertragung zwischen den PE's 1 unter
Verwendung des Schieberegister 5 beschrieben wurde, kann die
obige Ausführungsform auch für die Dateneingabe und
Datenausgabe verwendet werden. Da die Operation der Dateneingabe
und -Ausgabe in den Parallel-Datenprozessor viel Zeit
verbraucht, ermöglicht der erfindungsgemäße Prozessor die
schnelle Eingabe und Ausgabe der Daten. Für den Fall, daß das
Schieberegister 5 als Dateneingang und Ausgang eingesetzt
wird, reicht jedoch die Datenübertragung in nur einer
einzigen Richtung aus, so daß die Auswahlschaltung 10 oder
dergleichen nicht notwendig ist. Desweiteren können für den
Fall, daß der erfindungsgemäße Prozessor sowohl für die
Datenübertragung zwischen den PE's 1 als auch für die
Dateneingabe und -Ausgabe eingesetzt wird, zwei Schieberegister 5
und ihre zugehörigen Schaltungen in dem PE vorgesehen werden.
-
Wie es hierin oben beschrieben wurde, weist der
erfindungsgemäße Parallel-Datenprozessor in jedem PE das
Schieberegister auf, das zu einer unabhängigen und asynchronen
Datenübertragung zwischen den benachbarten PE's in der Lage
ist, so daß der signifikante Effekt der schnellen
Datenübertragung zwischen den PE's gegenüber der konventionellen
Vorrichtung dieses Typs erzielt wird.