DD218803A3 - Multiprozessorsystem - Google Patents
Multiprozessorsystem Download PDFInfo
- Publication number
- DD218803A3 DD218803A3 DD25681983A DD25681983A DD218803A3 DD 218803 A3 DD218803 A3 DD 218803A3 DD 25681983 A DD25681983 A DD 25681983A DD 25681983 A DD25681983 A DD 25681983A DD 218803 A3 DD218803 A3 DD 218803A3
- Authority
- DD
- German Democratic Republic
- Prior art keywords
- processor
- input
- output
- array
- register
- Prior art date
Links
Landscapes
- Multi Processors (AREA)
Abstract
DIE ERFINDUNG BEZIEHT SICH AUF DIE PARALLELE INFORMATIONSVERARBEITUNG. SO ERFORDERT BEISPIELSWEISE DIE DIGITALE BILDVERARBEITUNG UND ANDERE ANWENDUNGEN, BEI DENEN GROSSE DATENMENGEN MIT VIELEN ALGORITHMEN SCHNELL ZU VERARBEITEN SIND, DERARTIGE HOCHLEISTUNGSFAEHIGE RECHNERSYSTEME. ES SOLL EINE VERBINDUNGSSTRUKTUR EINES MULTIPROZESSORSYSTEMS GESCHAFFEN WERDEN, MIT WELCHER AUCH EINE GEWUENSCHTE MENGE VON RAEUMLICH NICHT UNMITTELBAR BENACHBARTEN PROZESSORELEMENTEN FLEXIBEL DIREKT KOMMUNIZIEREN KANN. WEITERHIN SOLLEN DATEN VON PARALLELEN SPEICHERN SEHR SCHNELL GEWUENSCHTEN PROZESSORELEMENTEN ZUGEFUEHRT WERDEN. ERFINDUNGSGEMAESS SIND ARRAYELEMENTEN, BESTEHEND AUS PROZESSOR UND VERBINDUNGSNETZWERK, REGISTER NACHGESCHALTET, WOBEI DIESE REGISTER ENTSPRECHEND DER DATENVERARBEITUNGSAUFGABE DURCHGESCHALTET SIND. DIE TAKTUNG DER REGISTER KANN UNTERBROCHEN WERDEN.
Description
Multiprozessorsystem Anwendungsgebiet der Erfindimg
Die Srfindung bezieht sich auf das Gebiet der Informations-; verarbeitung und betrifft die Parallelverarbeitung» beispielsweise die von Bilddaten.
Die digitale Bildverarbeitung und andere Zweige der Informationsverarbeitung, bei denen große Datenmengen mit einer Vielzahl von verschiedenen Algorithmen schnell zu verarbeiten:. Λ sind, erfordern für den Routineeinsatz hochleistungsfähige Rechnersysteme.
Der internationale Trend auf diesem Gebiet ist durch die Parallelverarbeitung bestimmt, bei der mehrere Prozessoren zeitlich parallel eine Verarbeitungsaufgabe lösen· Praktisch' realisie-rt sind heute Systeme mit über 16000 Einzelprozessoren, wobei diese jedoch über einen sehr eingeschränkten Funktionsumfang und nur über eine Wortbreite von 1 Bit verfügen. (MPP/Sigarch Newaletter 8(1980), S. 168-173 oder US-PS 4 314 349). ' . ' - :;:;';. V /
Systeme, bei denen die Einzelprozessoren komplizierter und leistungsfähiger sind, gibt es ebenfalls (z.B. Minerva/Third Ann. Symp. on Computer Architecture Clearwater, USA Januar 1976* S. 34-39) oder sind angekündigt (CLIP 6/IEEE CH 1967-2/81 S. 25-30), wobei die leistungsfähigsten verwendeten Einzelprozessoren komplette Mikroprozessoren sind. Die Anzahl der verwendeten Einzelprozessoren ist in diesen Fällen kleiner Ϊ und liegt im Bereich von etwa 16-256.
Die Eignung von Multiprozessorsysteiaen für bestimmte Aufgabenklassen wird entscheidend durch die Möglichkeiten der Kommunikation der Prozessorelemente untereinander sowie der Prozessorelemente mit den Datenspeichern bestimmt. Die Notwendigkeit spezialisierter Kommunikationsstrukturen ergibt sich für Multiprozessorsysterne, weil erstens wegen der großen Anzahl von Einzelkomponenten (Prozessorelemente, Speicherelemente) nicht mehr jede Komponente mit jeder
Komponente unmittelbar1 verbunden werden kann, zweitens die in der. Rechentechnik etablierte Busstruktur immer nur ein sendendes Element zuläßt und eine echte parallele Kommunikation - nicht zuläßt. . . ' - .
In (Sthrdherg US-PS 4 167. 728) wurden deshalb die Einzelprozessoren in Reihe geschaltet, so daß jeder der Einzelprozessoren eine Teilaufgabe bearbeiten kann und die Ergebnisse an den nachgeschalteten Einzelprozessor weiterleiten kann. Eine solche Pipeline-Ärchitektur hat aber den Hachteil, daß die Parallelität des Systems nur dann voll genutzt werden kann, wenn die auszuführenden Operationen selbst durch einen Pipeline-Algorithmus ausführbar sind, wenn sie über möglichst viele Daten homogen und kaskadierbar, sind.
Günstiger sind deshalb Netzwerke von Prozessorelementen, bzw.* > Prozessorfeider oder Prozessorarrays, d.h. Anordnungen, bei denen die Prozesaorelemente ....' rechteckig, oder speziell quadratisch. zusammengeschaltet sind (CLIP 17 Third International Joint conferences on Pattern Recognition, 1976, Coronado, USA, ρ 728-733). ..'
Bislang haben j edoch auch solche Prozesacrfelder, was.ihre Kommunikationsstruktur betrifft, Eigenschaften, die ihre flexible Verwendung für das breite Spektrum der heute bekannten Algorithmen beeinträchtigen·
Insbesondere weisen bekannte Prozessorfelder die folgenden Nachteile auf: _ , a· Die einzelnen Prozessorelemente sind jeweils nur mit ihren vier (achsenparallelen) oder acht (achsenparallelen und diagonalen) Nachbarn direkt verbunden, um insgesamt den Leitungsaufwand in vertretbaren Grenzen zu halten. Ein freier flexibler Datenaustausch zwischen beliebigen Prozessorelementen ist i:auf diese Weise, nicht möglich, da Daten zwischen räumlich weiter auseinanderliegenden ,Prozessorelementen schrittweise von den dazwischenliegenden Prozessoielementen weitergeleitet werden müssen. In einem konkreten Prozessorfeld (US-PS 3 979 728) wurde dieser ITachteil teilweise beseitigt, indem ein zusätzlicher Steuerrechner über horizontale und vertikale Leitungen innerhalb des Arrays direkten Zugang zu den Prozessorelernen-
ten hat und die Prozessorelemente- außer zu ihren vier Nachbarn jeweils zu einem weiteren, weiter entfernt liegenden Prozessorelement eine direkte Verbindung besitzen. Auch hier ist der Datenaustausch zwischen weiter auseinanderliegenden Prozessorelementen im allgemeinen.nur schrittweise .über dazwischenliegende Prozessorelemente möglich und aufwendig. Um den Leitungsaufwand teilweise zu reduzieren, werden, wie im US-PS 4.270.170 beschrieben, verzweigte : Verbindungen zwischen benachbarten Prozessorelementen verwendet, so daß durch ein Routing Signal ein Freigabe- . signal jeweils für eine der möglichen Verbindungen erzeugt wird, : /
Auch diese Verbindungsstruktur hat den Nachteil,'-daß sie nur den Datenaustausch mit unmittelbaren Nachbarn des Prozessorarrays- erlaubt und somit nicht genügend flexibel ..
ist. ' . . ' :' ' ; :
Ein weiterer, die Flexibilität des Datenaustausches und die Anwendbarkeit bitweise oder .bitgruppenweise ^erarbeitungsälgorithmen einschränkender Nachteil bisheriger : .Kommunikationsstrukturen in bekannten Prozessorarrays besteht darin,, daß die unterschiedliche Weiterleitung verschiedener Bits oder Bitgruppen von Daten zu verschiedenen Prozessorelementen nicht unmittelbar möglich ist.
Um bei der Abarbeitung von Algorithmen ^auf den /Transport von Daten zwischen den Prozessoreilemeliten /weitgehend ;: verzichten zu können, wird jede&;#ro|;öss;o:relement mit /einem eigenen internen Datenspeicher ausgerüstet> in dem ein Teil der Daten (in der Bildverarbeitung beispielsweise ein kleines· quadratisches Bildfragment) vor Abarbeitung des Algorithmus abgespeichert wird» '
Prinzipieller Nachteil ist es, daß die Kommunikation ' zwischen den Prozessorelementen dann sehr aufwendig wird, \ wenn die Prozessoren Daten benötigen, die in Datenspeichern anderer Prozessoren abgelegt sind.
Ein weiterer Hachteil dieser Vorgehensweise ist es,'daß sich ein Teil der erforderlichen'Algorithmen nur schwer oder.gar nicht in Algorithmen zerlegen läßt, die hauptsächlich von vornherein bestimmte, in prozessoreigene Datenspeicher ablegbare Daten benötigen. . : : :
In einem konkreten Prozessors ray' '(LIPP/1Oth Ann/International Symposium on Computer Architecture, 13.-12.6,83, Stockholm/ Schweden) wurde dieser Hachteil teilweise gemildert, indem die Datenspeicher zwischen die Prozessorelemente gelegt wurden, so daß jedes Prozessorelement; zu vier solchen Speichern direkten Zugriff hat. Für das Beispiel der Bildverarbeitung ist damit die Ppagmentgröße, die durch ein Prozessorelement direkt erreichbar ist, nur vervierfacht (verdoppelt in Zeilen- und Spaltenrichtung), so daß die prinzipiellen Nachteile einer solchen Anordnung bestehen bleiben. Auch die Ein- und Ausgabe der Daten ist in diesem Fall... aufwendig. , . . , " \
Es wurde weiterhin 'eine Lösung laut DE-OS 3 044792· bekannt, bei der jedes Datum, das- von einem Mikroprozessor .zu nur einem anderen Mikroprozessor übertragen wird, mit "einer zu- .: sätzlichen Mehrbitadresse versehen wird. Bei' jeder übertragung muß also ein aufwendiger und langsamer Adressenvergleich durchgeführt werden. .
Ziel der Eerfindung ' ..' :
Ziel der Erfindung ist es, die genannten Nachteile bekannter Prozessorarrays zu beseitigen und eine Yerbindungsstruktur zwischen den Prozessorelementen anzugeben, die eine schnelle und flexible-Kommunikation gewährleistet. -
Darlegung des Wesens der Erfindung > ;.
Der Erfindung liegt die Aufgabe zugrunde, eine Verbindungsstruktur für ein MuIt iprozessorsy stem für parallelisierbare Aufgaben der Informationsverarbeitung zu schaffen. Dabei soll gesichert sein, daß eine gewünschte Menge von auch räumlich nicht unmittelbar benachbarten Prozessorelementen flexibel direkt miteinander kommunizieren kann, ohne daß dabei
zusätzlich zu den Yerbindungaleitungen zwischen Nachbarelementen weitere direkte Verbindungsleitungen (wie etwa direkte Verbindungsleitungen zu übernächsten Nachbarn.u.a.) vorgesehen sind und ohne daß die auszutauschenden Daten zusätzlich durch Adressen zu ergänzen sind, die ihren Bestimmungsort und ihren Weg im Prozessorsystem festlegen.
Der Austausch der Daten zwischen Prozessorelementen soll bitweise oder bitgruppenweise unterschiedlich möglich sein. Weiterhin'Sollen beim gemeinsamen Betrieb eines erfindungsgemäßen Prozessorarrays mit einem parallelen Datenspeicher sehr schnell Daten gewünschten Prozessoren des Arrays zugeführt werden können.
Erfindungsgemäß wird die Aufgabe unter Verwendung von Arrayelementen, die jeweils einen Prozessor und ein Verbindungsnetzwerk aufweisen, wobei jeder Ausgang eines Arrayelementes über ein getaktetes Register mit einem Eingang eines anderen Arrayelementes oder mit einem Arrayausgang und jeder Eingang des Arrayelementes jeweils nur mit einem Ausgang eines anderen Arrayelementes über das getaktete Register oder mit einem Arrayeingahg verbunden ist, dadurch gelöst, daß mehrere der getakteten Register so beschaltet sind, daß bei einem Signal auf einem an einen Arrayprozessor P und oder Steuerprozessor angeschlossenen Durchschalteingang das Eingangsignal sofort am Registrierausgang anliegt. Das Verbindungsnetzwerk V des Arrayelementes IT, das an einem Ausgang eines Arrayelementes "TT, über ein Register mit einem Durchschalteingang angeschlosäen ist, muß die Durchschaltung seines mit diesem Register verbundenen Einganges auf einen der Ausgänge des Arrayelementes, zu dem es gehört, ermöglichen.
In vorteilhafter Auskleidung der Erfindung besitzt mindestens eines der Register einen Eingang zur Taktfreigabe, an den ein ein Freigabesignal tragender Ausgang eines Prozessors eines Arrayelementes und/oder ein ein Freigäbesignal tragender Ausgang des Steuerprozessors des Multiprozessoraystems angeschlossen ist.
Es ist weiterhin vorteilhaft, daß die Arrayelemente rasterförmig in Zeilen und Spalten angeordnet sind, wobei jedes
Arrayelement vier Ausgänge und vier Eingänge zur zeilen-'und spaltenweisen Verbindung der benachbarten Arrayelemente sowie 'wahlweise einen zusätzlichea Eingang besitzt. Sine günstige Ausführung ergibt sich auch, wenn die in Reihen und Spalten angeordneten Arrayelemente acht Ausgänge und acht Eingänge zur Verbindung mit den in Zeilen- oder Spaltenrichtung sowie in Richtung der Diagonale benachbarten Arrayelementen aufweist, . ,
Besonders vorteilhaft ist es, die·.Verbindungsleitungen zwischen den Arrayelementen der jeweiligen Seilen und Spalten zu unidirektionalen Ringleitungen .zusammenzufassen, an denen externe parallele Speicher angeschlossen sind.
Ausführungsbeispiel
Nachstehend soll die Erfindung an Ausführungsbeispielen näher erläutert werden. Dabei zeigen die Abbildungen in
,- T das Blockschaltbild eines Jrrayeleaientes mit nachgeschalteten Registern
Fig. 2 ein Prozessorarray; bestehend aus neun Arrayelementen mit zwei Ein- und Ausgängen . .
Pig.:3 ein Verbindungsnetzwerk.
Fig. 4 Ausführungen durchschältbarer Register
Fig. 5 ein spezielles -Arrayelement tait nachgeschalteten ; durchschaltbareη und nicht durchschaltbaren Registern.
Fig. 6 eine vereinfachte Darstellung eines Arrayelementes mit Registern nach Fig. 5
Fig. 7 ein Prozessorarray, bestehend aus Arrayelementen '.'.' und Registern nach Fig« 6 .
Fig. 8 einen Teil eines Prozessorarrays mit Verzweigungen
Fig. 9 ein Proaessorarray mit angeschlossenen parallelen • Speichern
Fig.. 10 eine konkretisierte Ausführung eines Arrayelementes mit Registern
Pig. 11 eine konkretisierte Ausführung eines Arrayelementes tnit Ringleitung
Fig. 1 zeigt ein Arrayelement mit nachgeschalteten Registern, wobei mindestens eines der nachgeschalteten Register durchschaltbar ist und alle iiachgeschalteten Register einen Eingang zur Taktfreigabe besitzen.
Das Arrayelement IT^ 1 besteht aus einem Prozessor Pj_ 2 -mit rb Eingängen 9 ηη. >1 und m. >:1 Datenausgängen und einem Verbindungsnetzwerk V^ 3 mit k^+m,. Dateneingängen 10; 11 und I1+Ii1
Datenausgängen 6;7;8, 1^-Vn. Datenausgänge 8 des Verbindungs- ; netzwerkes V. 3 sind mit den Eingängen 9 des. Prozessors P. 2 verbunden, dessen m. Datenausgänge 13 mit m. Datenausgängen vora .Verbindungsnetzwerk V^ 3 verbunden sind. Das Verbindungsnetzwerk V. 3 besitzt darüberhinaus allgemein mehrkanalige. Steuereingänge 12, die mit Steuerausgängen des Steuerrechners des Arrays und/oder mit Steuerausgangen von Prozessoren von Arrayelementen verbunden sind, wie es beim Aufbau von P-rozessorarrays auf gabenge mäi3 üblich ist.
Die r. Ausgänge 6,. r. >1, des Verbindungsnetzwerkes V. 3 sind · jeweils m±% dem Dateneingang der durchschaltbaren Register ? ί···ι3· verbunden, die einen Eingang für das Signal 0 i · α
zur Durchschaltung und einen Eingang zur Taktfreigabe besitzen und deren Ausgang 14 mit Eingängen von weiteren Arrayelementen oder mit Ausgängen des Array verbunden ist. Der <ias Signal zur Durchschaltung tragende Eingang der durchschaltbaren Register Y^ , j=1,...r^ ist aufgabengemaß mit \ einem das Signal zur Durchschaltung tragenden Ausgang eines Prozessors, beispielsweise des Prozessors P. 2 und/oder mit einem,das Signal zur Durchschaltung tragenden Ausgang des Steuerrechners für das Multiprozessorsystem verbunden. Diese Verbindungen sind aus Gründen der Übersichtlichkeit der Zeichnung nicht eingezeichnet.
Die l.-rH Ausgänge 7 des Verbindungsnetzwerkes V^ 3 sind jeweils EnTt dem Dateneingang von nichtdurchschaltbaren Registern R37I4-' ,·.., R^ *· verbunden, die ebenfalls einen Eingang zur Taktfreigabe besitzen.
Jeder Eingang zur Taktfreigabe der.Register "; ist aufgabengemäß mit einem das Taktfreigabesignal tragenden Ausgang eines Prozessors,: beispielsweise des Prozessors .?. 2 und/oder mit einem das.Taktfreigabesignal tragenden Ausgang des Steuer- ; rechners verbunden. Diese Verbindungen sind ebenso aus Gründen der übersichtlichen Darstellung nicht eingezeichnet. , ' ,Darüberhinaus besitzt das Verbinduhgsnetzwerk V. 3 aufgabengemäß gegebenenfalls noch weitere Ausgänge, die beispielsweise, über ein Bussystem mit dem Steuerrechner des lultiprozessorsystems direkt verbunden sind, wie das für Prozessorarrays bekannt ist. Da diese Verbindungen darüberhinaus nicht Gegen-* stand der· Erfindung' sind, wird darauf hier nicht näher eingegangen. ., ' .. . . . . . ' : ; . Das Verbind-ungsnetzwerk stellt in Abhängigkeit von. den auf ·: seinen Steuerleitungen 12 anliegenden Signalen Verbindungen zwischen seinen Eingängen und Ausgängen her. Dabei -ist die·'v. Bedingung einzuhalten, daß ait jedeni Ausgang 6;7;8.höchstens eine der .Eingangsleitungen 1Q;11 gleichzeitig verbunden ist. Die Prozessoren können beispielsweise Mikroprozessoren, /2UB. 8-Bit-Mikroprozessoren, Signalprozessoren aii't eingeschränktem Funktionsumfang oder unterschiedlicher ,Wortbreite sein. Da die verschiedenen Prozessortypen wie Mikroprozessoren oder beispielsweise 1-Bit-Prozessoren ausgebildeten Entwerfern gut bekannt1 sind und die spezielle Art der verwendeten Prozessoren nicht Gegenstand der Erfindung ist, wird auf die spezielle Art der Prozessoren hier nicht näher eingegangen. : Die konkrete Festlegung der durch das Verbindungsnetzwerk V. realisierten Verbindungen erfolgt aufgabengemäß. ; . :: , Da die aufgabengemäße Realisierung eines Verbindungsnetzwerkes einem ausgebildeten Entwerfer: ebenfalls keine Schwierigkeiten: macht und die Realisierung von Verbindungsnetzwerken; nicht Gegenstand vorliegender Erfindung ist und darüberhinaus/in; einem Ausführungsbeispiel ein Verbindungsnetzwerk erläutert ist, wird auf die Realisierung aufgäbengemäßer Verbindungs^; netzwerke hier nicht eingegangen. \ ·
.Pig 2 zeigt ein erfindungsgemäSes Prozessorarray aus netin Arrayelementen.
Es besitzt die Eingänge A 71; B 74; C 77 und die sechs Ausgänge A' 33; B' 86; C 89; D' 91; Ξ' 92 und ?' 93.
Das Arrayeleme.nt It* i besteht aus dem Verbindungsnetzwerk V.. 2i und dem Prozessor P. 3i*
Jedem Ausgang ist- jeweils ein durchschaltbares Register J .. 4i bzw. J? ρ 5i nachgeschaltet, wobei i die'Werte 1 bei 9 annimmt. Das Verbindungsnetsv/erk V. 2i besitzt drei Eingänge 1; 2 ; 3 und vier Ausgänge 1' ;2 f ;3'.;4'. Der Ausgang 1.' ist jeweils mit dem Eingang des durchschaltbareη Registers £^ 4i verbunden, der Ausgang.2' ist jeweils mit dem Eingang des ,durchschaltbaren Registers j 2 5i verbunden. Der Ausgang 31 ist -jeweils an den ersten Eingang des Prozessors F. 3i angeschlossen. Der Ausgang 4' ist jeweils mit dem zweiten Eingang des Prozessors P-. 3i verbunden, dessen Ausgang mit dem Eingang 3 des.vorgeschalteten Verbindungsnetzwerkes V. 2i.verbunden ist. , Der Eingang A 71 des Prozessorarrays ist mit dem Eingang 1 , eines Umschalters S^ 61 verbunden, dessen Ausgang mit dem Eingang 1 des Verbindungsnetzwerkes V. 21 verbunden ist. Der Ausgang des steuerbaren Registers j> 41 ist mit dem Eingang T des Verbindungsnetzwerkes V0 22 verbunden. Der Ausgang des steuerbaren Registers S^ 42 ist an den Eingang 1 des Ver-, bindungsnetzwerkes V- 23 geführt. Der Ausgang des steuerbaren Registers .fij 43 ist mit dem Ausgang Ar 83 des Prozessorarrays und mit dem Eingang 2 des Umschalters S.. 61 verbunden. Der Eingang B 74 des Prozessorarrays ist mit dem Eingang 1 des Umschalters S2 64 verbunden, dessen Ausgang mit dem Eingang 1 vom Verbindungsnetzwerk V. 24 verbunden ist« Der Ausgang vom durchschaltbaren Register S^ 44 ist mit dem Eingang 1 des Verbindungsnetzwerkes Vj- 25 verbunden. Der Ausgang vom durchschaltbaren Register ξ + 45 ist an den Eingang 1 des Verbindungsnetzwerkes Vg 26 aageschlossen. Der Ausgang des durchschaltbaren Registers ζί? 46 ist mit dem Ausgang B 86 des Prozessorarrays und· mit dem Eingang 2 des Umschalters S2 64 verbunden.
Der Eingang C 77 des Prozessorarrays ist mit dem Eingang 1 des Umschalters S-, 67 verbunden, dessen Ausgang mit dem
Eingang 1 vom Verbindungsnetzwerk Vv 27 verbunden ist. Der Ausgang des durchschaltbaren Registers $ L 47 ist mit dem Eingang 1 vom Verbindungsnetzwerk 28 verbunden. Der Ausgang vom durchschaltbaren Register JP^ 43 ist an den Eingang 1 vom Verbindungsnetzwerk Vq 29 geführt. Der Ausgang vom durchschaltbaren Register _f ^ 49 ist an den Ausgang C S3 des Prozessorarrays und an den Eingang 2 des Umschalters S7 67 angeschlossen,
ρ 1 ' Der Ausgang des durchschaltbaren Registers Jp 51 ist mit dem Eingang 2 des Verbindungsnetzwerkes V^ 24 verbunden..
Der Ausgang des durchschaltbaren Registers 1! 54 ist mit dem Eingang 2 des Verbindungsnetz?/erkes V7 27 verbunden, .
Der Ausgang dea durchschaltbaren Registers Sj- 57 ist an den Ausgang D* 91 des Prozessorarrays und an den.Eingang 2 des Verbindungsnetzwerkes V1 21 angeschlossen.
Der-Ausgang des durchschaltbaren Registers Jö 52 ist mit dem Eingang 2 vom Verbindungsnetzwerk Vj- 25 verbunden.
Der Ausgang des durchschaltbaren Registers J -i 55 ist an den Eingang 2 des Verbindungsnetzwerkes Vg 28 geführt.
Der Ausgang des durchschaltbaren Registers J~ 58 ist mit dem Ausgang. E' 9.2 und mit dem Eingang 2. des Verbindungsnetzwerkes
V9 22 verbunden. .
Der Ausgang des durchschaltbaren Registers J^ 53 ist an den Eingang 2 des Verbindungsnetzwerkes Vfi 26 angeschlossen.
Der Ausgang vom durchschaltbaren Register ο 2 56 ist mit dem Eingang 2 des Verbindungsnetzwerkes VQ 29 verbunden.
Q 9 Weiterhin ist der Ausgang des durchschaltbaren Registers J 2 59 an den Ausgang F1 93 und an den Eingang 2 vom Verbindungsnetzwerk V- 23 angeschlossen.
Die Verbindungsnetzwerke V. 21, V2 22, ...,Vg 29 können beispielsweise als Kreuz schienennet zwe rke realisiert sein. Ein Verbindungsnetzwerk mit drei Eingängen und vier Ausgängen zeigt Pig. 3» .
Ss "besitzt die Eingänge 1;2;3 und die Ausgänge 1f ;2T;3';4' und die Schalter T 94, T12 94, T13 94, T14 94, T21 94, T22 94, T23 94, T24 94, T31 94,. T32 94, T33 94, T34 94, die entweder geöffnet oder geschlossen sein können. .
Der Schalter. T- · kann dabei eine Verbindung zwischen dem Ein-
' J .. . . . . . '. ' ' · .
-Ί1 -
gang i und dem Ausgang .j herstellen, wenn T. . geschlossen ist»
In Pig. 3 sind die Schalter T11, T13, T32, T.4 geschlossen,-, alle anderen Schalter sind geöffnet.
Demgemäß ist der Eingang 1 mit deai Ausgang 1' und mit dem Ausgang 3', der Eingang 2 mit dem Ausgang 2f und der Eingang ait dem Ausgang 4' verbunden.
Die Realisierung eines Verbindungsnetzwerkes als Kreusschienenne tzwerk.' ist. natürlich nur eine Variante unter anderen, einem ausgebildeten Entwerfer gut bekannten Varianten, Da die optimale Realisierung eines Verbindungsnetzwerkes nicht Gegenstand der Erfindung ist und darüberhinaus in einem weiteren Anwendungsbeispiel ein weiteres konkretes Verbindungsnetzwerk verwendet wird, wird auf die optimale Realisierung nicht näher eingegangen·
Aus Gründen der übersichtlichen Darstellung sind die Steuer- und Taktfreigabeleitungen für die Register in Fig. 2 nicht eingezeichnet.
Die Verbindungen, die in einem konkreten Pail durch ein Verbindungsnetzwerk V.. 2i realisiert wurden, beschreiben wir durch eine Liste L-, in der alle Paare von Eingängen und Ausgängen aufgeführt sind, die miteinander verbunden sind. Die nicht aufgeführten Paare von Eingängen und Ausgängen sind nicht verbunden· ·
Das in .Pig· ..3 dargestellte Verbindungsnetzwerk wird demgemäß durch die Liste L : (1, 1'), (1, 3'), (2, 2'), (3» 4 9 . beschrieben, da der Eingang 1 mit dem Ausgang 1' und mit dem Ausgang 3',..·. der Eingang-2 mit dem Ausgang 2\, der Eingang 3 mit dem Ausgang 4* verbunden sind. V/eitere Paare treten in der Liste nicht auf, da keine weiteren Verbindungen zwischen Eingängen und Ausgängen bestehen.
1.In einem ersten Schaltungsbeispiel entsprechend der Pig· stellen die Verbindungsnetzwerke V.. 21 ,.·· ,Vq 29 die durch die folgenden Listen beschriebenen Verbindungen her: L1: (1, 1»), (1, 2'),(1, 3'), L3: (1, 2»), (1, 4'), 0.3, 1f), ^3: (1, 31), (3, V),O, 4'), L4: (1, 3'), (2, 2'), (3, 11), (3, 4·), L5: (1, 1·), (2, 3'), (3, 2'J, 03, 4'),
L6: (1, 1V), (3, 3'), (3, 4.'), L7: (1, 3'), (2, 1'), (3, 4'), I-8.(1, V), (2, 4'), (3, 1'), (3, 2V), L9: (1,3'), (3,1'),
C, V). -, . : -
Die Steuersignale der durchschaltharen Register 41;51;52;54; 45;46j47 sind 1. Diese Register, sind damit durchgeschaltet. Die Steuersignale aller anderen Register sind. Hull, so daß diese Register als gewöhnlich getaktete Register arbeiten. Das Taktfreigabesignal des Registers 58 hängt vom Zustand des Prozessors .38 ab. Es ist beispielsweise dann Q, wenn das Vota Prozessor 38 ermittelte Ergebnis kleiner oder gleich deai bis zu.diesem Zeitpunkt ermittelten Maximalwert ist und •sonst 1, so daß nur dann ein neuer Wert in das Register 58 . eingeschrieben wird, wenn dieser Wert größer ist als der . bisher enthaltene Wert. -
Die Taktfreigabesignale aller anderen Register sollen 1 sein.
Die an die jeweiligen Ausgänge 3f und 41 der Verbindungsnetzwerke Vv angeschlossenen Eingänge der Prozessoren P- werden ebenfalls mit 3' .und'4' bezeichnet.
Die Schalter S^, .S2-und So sind in Stellung 1. . , Am Eingang. A 71 liegt zum Zeitpunkt t der Wert x-'(t), am Eingang B 74. der Wert :i2(t) und am .Eingang C 77 der Wert s.(t), Der Wert -x-(t) liegt dann gleichzeitig am Eingang 3' vom Prozessor P. 31, am Eingang 3' vom Prozessor Pg 38, am Eingang 41 vom Prozessor P2 32 und am Eingang 31 vom Prozessor P1- 35 an« Der Wert Ji2Ct) liegt am Eingang 31 vom Prozessor P, 34 an und der Wert OCo(t) liegt am Eingang 3f vom'Prozessor Ργ 37 an. Der vom Prozessor P^ 34 zum Zeitpunkt t berechnete Wert liegt als Eingang'«des getakteten Registers S \ 44 an und wird im nächsten Takt über die durchgeschalteten steuerbaren Register S^ 45 und S\ 46 unmittelbar an den Ausgang B 86 ausgegeben.
Der vom Prozessor Po 38 zum Zeitpunkt t ermittelte Wert liegt
08 am Eingang des Registers J? 48 an und im nächsten Takt. am
Eingang 3' vom Prozessor Pq 39» '
Gleichzeitig liegt dieser Wert am Eingang des Registers S2 53 an. Dieser Wert wird aber nur dann von diesem Register 58 übernommen, wenn das Taktfreigabesignal gleich 1 ist.
Das ist genau dann der Fall, wenn der vom Prozessor Pq zum Zeitpunkt t berechnete.Wert größer ist als alle bisher berechneten Werte. Damit liegt am Eingang 3' des Prozessors P2 32 stets der größte, bis zu diesem Zeitpunktsvom Prozessor Pg- 38 berechnete Werte an. " : : An weiteren Verbindungen seien hier noch beschrieben: . Der vom Prozessor P^ 35 zum Zeitpunkt t berechnete Wert liegt am Eingang des getakteten Registers S ρ 55 an und nach einem Takt am Eingang 4' des Prozessors Pg 38. Der Wert der vom Prozessor P9 32 zum Zeitpunkt t^berechnet wird,
Cf ^ '
"liegt am Eingang des Registers 3 "1 42 an und im nächsten Takt am Eingang 31 des Prozessors P3 33. ' . An diesem Beispiel ist für einen geübten Entwerfer bereits . zu erkennen, daß zustandsgesteuerte Flip-Flops in der Art des Bauelementes SN 7475 Schaltkreise sind, mit denen sich die durchschaltbaren .Register der Anordnung besonders einfach realisieren lassen. Ebenso sind Flip-Flops in. der Art des SN 7474 mit . verschalte ten R und S-Bingängen oder Re*- gister mit nachgeschaltets Umschalter geeignete Fig» 4 zeigt diese drei möglichen Schaltungsbeispiele als STL-Mode 11,: wobei in allen drei Fällen das Singangsignal bei Durchschalten unmittelbar am Ausgang anliegt und im Beispiel a und b der vorangegangene. Registerinhalt zerstört wird, wogegen dieser im Beispiel c erhalten bleibt.
2. In einem zweiten Schaltungsbeispiel des Arrays stellen/die Verbindungsnetzwerke V1 21,...,Vq 29 die durch die folgen- den Listen beschriebenen Verbindungen her: .-
. L3: (1,3'), (2,4»), (3,2·), L6=L9=L3. Die Taktfreigabesignale für die Register 41,...,49 und 51,...,59 sind 1, die Steuersignale für diese Register sind sämtlich 0.
Die Schalter S j 61, S2 64 und S3 67'.sind, in Stellung 1. Zum Zeitpunkt t liegen am Eingang A 71, B 74 und C 77 die Signale X1(t), .X9 (ΐ) und x^(t) an.
^1Ct) liegt am Eingang 3' des Prozessors P1 31 und am Eingang des Registers J ' 41 an, .
XgCt) liegt am Eingang 3' des Prozessors P, 34 und am Eingang des Registers S: 44 an,
So(t) liegt am Eingang 3' deέ Prozessors P7 37 und am Eingang
öl . /- .
des· Registas JTi 47 an. . ,
Die Daten X^, xo, x_ gleiten zeilenweise unverändert, getaktet durch das Prozessorarray, so daß zum Zeitpunkt x^'Ct-1) am ' Eingang 3f des Prozessors P0 32 und am Eingang des Registers
ov; 42 anliegt und daß au diesem Zeitpunkt am Eingang 3' des Prozessors P„ 33 x-(t-2) anliegt, :
Entsprechende Aussagen gelten für xoCt-I) und. x.2Ct-2) und die Eingänge 3'der Prozessoren P1- 35 und P4- 36 und für x~(t-1) und x~'Ct-2.) und die Eingänge der Prozessoren Pp 38 und Pg 39«
Die vom Prozessor P- 31 errechneten Ergebnisse werden mit . einer Taktverzögerung um 1 über das Register J2 51 an den Eingang.4' des Prozessors. P^ 34 gegeben. Die .vom Prozessor P. 34 errechneten Ergebnisse werden mit einer Taktverzögerung' um 1 über das Register S % 54 an deη Eingang 4* des Prozessors ?j 37 gegeben. / ' ' . ·
Die Ergebnisse des Prozessors-P^ 37 werden .'mit einer Taktver- / zögerung um 1 über das Register $ L 57 an den Ausgang Df 91 und an den Eingang 3' des Prozessors P^ 31 gegeben.
Die vom Prozessor P0 32 errechneten Ergebnisse werden mit einer
' ' ' ' .« ρ .
Taktverzögerung um 1 über das Register J | 52 an den Eingang 3f des Prozessors P1- 35 gegeben.
Die vom Prozessor P1- 35 errechneten Ergebnisse werden mit einer Taktverzögerung um T über das Register S 2 55 an den Eingang 3f des Prozessors Pg 38 gegeben. ·
Die vom Prozessor P0 38 errechneten Ergebnisse werden über
O 8 ο das Register i2 58 an den Eingang E' 92 und an den Eingang 4' des Prozessors P2 32 gegeben.
Die vom Prozessor P^ 33 errechneten Ergebnisse werden mit einer Taktverzögerung von 1 über das Register S0 53 an den Eingang des Prozessors,Pg 36 gegeben. Die vom Prozessor Pg errechneten Ergebnisse werden über das Register J2 :5δ an den Eingang 3' des Prozessors Pq 39 gegeben. .
Der vom Prozessor Pq 39 errechnete Wert -wird, aiii einer Takt- : verzögerung um 1 über das Register J| 59 an den Ausgang Έν S3 und an den Eingang 3' des Prozessors P^ 33 gegeben.' : ' .. Horizontal gleiten die anliegenden Daten taktweise .unverändert durch das Array» 'Vertikal ist eine rekursive, spaltenweise , Berechnung möglich. , .'
,3. In einem dritten Schaltung3beispiel stellen d'ie Verbindungs- , ...- netzwerke V ^ 21,..., VG 29 die durch die folgenden "Listen beschriebenen Verbindungen her: ;
I1: (1,2»), (2..V), L2: (1,3'), L4: (1,2), (2,1), L5: (1,3.1), ' ''L7: (1,1')» (2,2')» L8: (1,3·)· Die Verbindungsnetzwerke V3 23, Vg 26 und Vq 29 stellen' keine Verbindungen!her. ' Das Steuersignal für die. . durchschaltbaren Register S } ,41, j\ 51, S\ 44, 2\ 54 und s] 47,i|-57 ist 1, sd daß die ; Register durchgeschaltet sind.
Das Steuersignal für alle anderen, durchschaltbaren, . Register ist, o. ' ·' ·· ' ' :' ·.; '- /;' ' :'.; :' '': ' ·.-. .'.' Die Schalter S ' 71 ;-S2 74, S3 77 sind in Stellung 1· Liegen nun zum Zeitpunkt t an den Eingängen A 71, ::B. 74;und , C 77 die Werte ^|(t), ^2(t), ^3(t) als Werte an, die beispielsweise von einem parallelen Speicher ausgegeben werden, so liegen zum ;Zeitpunkt t ^.(t) am Eingang 3' des Prozessors ?c 35, Σ2(^) am Eingang des Prozessors Pp (32) und: x^Ct·) am '' Eingang 3' des Prozessors Pg 38 an. :
Die Daten, die in der zweiten Spalte des Arrays an-den Prozessoreingängen anliegen, sind gegenüber den Daten in der ersten Spalte permutiert. ΐ
4. In einem vierten Schaltungsbeispiel stellen die Vfrbindungsnetzwerke V- 21,..., Vg 29 die durch die folgenden Ms ten beschriebenen Verbindungen dar: .-.,: :
Die Schalter S^ 61 und S3 67 sind in Position 1 und S2 64 :^ ist in Position 2. . ; .
- Ib -
Das Steuersignal für die zustandsgesteuerten Register S]- 41, S\ 42, ":S\ 44, ;?| 54, ' § \
Jf^, 51, S.\ 42, :S\ 44, ;?| 54, ' § \ 45, 3\a1 ist jeweils 1, so daß die Regjs tef durchge schalte t sind.
Das .Steuersignal für alle anderen Register ist 0# Liegt nun zum Zeitpunkt t ah den Eingängen A 71, 3 74 und C 77 x.j(t), S9Ct) und *~(t): als Wert- an, beispielsweise als Ausgabe eines parallelen Speichers, dann liegt jeweils an den Eingängen 3' derProzessorelemente P1-P7, Pq 3.1-37;39 der Wert X-Ot) an, während am Eingang 3f vom Prozessor Pg 38 der Wert 2n(t) anliegt»
Weiterhin wird gezeigt, wie sich süx erfindungsgemäßes Prozessorarray aus Arrayelementen aufbauen läßt, bei denen einer echten Teilmenge der Ausgänge des Verbindungsnetzwerkes durchschalt.bare Register nachgeschaltet sind, während allen anderen Ausgängen normale getaktete Register 'nachgeschaltet sind«
Fig, 5 zeigt ein speziallesProzessorelement, Die Eingänge U 10,> 10, 0 10,-S 10, IO:iOr IW 10, SW 10, SO 10 sind mit den Eingängen 1,2,3,4,5,6,7,8,9 des Verbindungs-'netzwerkes V 3 verbunden. Der Ausgang 1f voci Verbindungsnetzwerk V 3 ist-mit dem Eingang eines : durchschaltbareη Registers 4·' verbunden, dessen Ausgang mit dem Ausgang U Λ\} verbünde η ist. Der Ausgang 2f vom Verbindungsnetzwerk T 3ist an den Eingang eines durchsehaltbaren Registers 4 angeschlossen, dessen Ausgang init dem Ausgang wi? verbunden i3t.
Der Ausgang 3' vom Verbindungsnetzwerk V 3 ist mit dem Eingang eines durchschaltbaren Registers 4 verbünden, dessen Ausgang , an den Ausgang dl? angeschlossen ist. Der Ausgang 4' vom Verbindungsnetzwerk V 3 ist ait dem Eingang eines zustandsgesteuerten Registers 4 verbunden, dessen Ausgang mit dem Ausgang S17 verbunden ist·
Die . Ausgänge 6',7 ',8f, 9' des Verbindungsnetzwerke s V 3 sind jeweils mit dem Eingang von-- Registern 5 verbunden, deren Ausgänge mit den Ausgängen NO· ,M1, SW , SO* 17 verbunden sind. Der Ausgang 51 vom Verbindungsnetzwerk V 3 ist an den Eingang eines Prozessors 2 angeschlossen, dessen Ausgang mit dem Eingang 5 vom Verbindungsnetzwerk V3 verbunden:ist. Die Leitungen für die Steuersignale der ;" ' -
- IY -
Register und für das Verbindungsnetzwerk sind ebenso wie die Leitungen für die Taktsignale weggelassen, :
Um das Prozessozarray übersichtlich anschaulich darstellen zu können, symbolisieren wir das in Pig» 5 dargestellte Arrayelement durch das in Fig. 6 dargestellte Symbol,': Der mit 95 bezeichnete Kreis symbolisiert daa Verbindungsnetswerk V 3 und den damit verbundenen Prozessor P 2. Den Eingängen Hy W, S, 0, NW, SW, SO, NO, den Ausgängen H', '/», S1-,. Ό1, HW', SW, SO*, SO1, den Registern 5 und den durch- schaltbaren Registern 4 von Fig. 4 entsprechen die gleich be- ' zeichneten Siügänge, Ausgänge, Register und durchsdhaltbaren. Register von Pig. 5.
Einen Ausschnitt eines erfindungsgemäßen Prozessorarrays aus den in'Pig, 5 und 6 dargestellten Arrayelementen zeigt Pig. 7. Für ein beliebiges nicht am Rande des Prozessorarrays liegendes Prozessorelement des Prozessorarrays gilt: . '
Der Ausgang IV ist mit dem Eingang Ii des vertikal darunter , liegenden Prozessorelementes verbunden, der Ausgang Sf ist mit dem Eingang S der vertikal, darüber liegenden·Elementes verbunden, der Ausgang Wf ist mit dem Eingang W des horizontal rechts liegenden Arrayelementes verbunden, der Ausgang 0f. ist mit dem Eingang 0 des horizontal Iink3 liegenden Arrayelementes ver- bunden, der Ausgang NW* ist mit dem Eingang HW des haupt-diagonal unten liegenden Arrayelementes verbunden, der Ausgang SOf ist mit dem Eingang SO des hauptdiagonal oben liegenden .Array·-: elementes verbunden, der Ausgang SW ist mit dem Eingang SY/ des1 nebendiagonal oben liegenden Arrayelementes verbunden, der' Ausgang STO' ist mit dem Eingang ISO des nebendiagonal unten liegenden Arrayelementes verbunden. ,
Horizontal und vertikal ist ein Datenaustausch über die durchschal tbaren Register 4 möglich, während, in Richtung der Haupt- und 3Jebendiagonaleη ein taktweiser Datenaustausch über die getakteten Register 5 von üiachbar zu Nachbar möglich ist. Die Verschaltung der Sauelemente ist aufgabengemaß. , "Im folgenden wird gezeigt, wie die Erfindung im PalIe ver-.zweigter Verbindungen, wo zum Zwecke der Einsparung von Anschlüssen, durch zusätzliche Routing-Signale genau eine der möglichen Verbindungen zwischen Nachbarn mit einem Freigabesignal·
belegt/wird, angewendet wird.
Fig.. 8 zeigt eios η Ausschnitt aus einem erf indungsgesiäßen Prozessorarray, der verzweigte, Verbindungen enthält. . ·. Die als Kreise dargestellten Elemente 9.51; 952,' 9531 954; 955 und 956 bestehen aus einem Verbindungsnetzwerk und einem Prozessor.
In Fig· 7 sind nur einige ausgewählte Verbindungen des Prοzessorarrays gezeichnet. ·
Das Element .951 ist über ein durchsehaltbares Register 4 durch eine verzweigte Verbindung mit den Arrayelementen 952 und 955 * verbunden, wobei durch ein Routing-Signal rv festgelegt wird', ob die Verbindung vom Element 951 nach 952 oder die Verbindung vom Element' 951 nach 955 durch ein Freigabesignal ausgewählt wird. - : ' '"...- ''· , . '· ;
Das Element 952 ist über ein durchschaltbares Register 4 durch eine verzweigte Verbindung mit den Elementen 953 und 954 verbunden, wobei durch das Routing-Signal r2 festgelegt wird, ' 'ob die Verbindung .'vom'. Element 952 nach 953 oder vom Element 952 nach'954 durch ein Freigabesignal ausgewählt wird. Das Element 955 ist über ein Register 5-mit dem Element 956 verbunden
Ist durch das Routing-Signal r.. die.Verbindung vom Element
951 nach 952 ausgewählt und ist das Steuersignal'des durch-schaltbaren Registers 4, dessen Eingang mit dem Ausgang vom Element 951 verbunden ist, 1, so ist der eingezeichnete Eingang von 952 durch das Verbindungsnetzwerk von 952 unmittelbar mit dem eingezeichneten Ausgang verbunden.
Ist das Steuersignal des durchschaltbaren Registers 4, dessen Eingang mit dem Ausgang vom Element 952 verbunden ist, 0 und ist durch das Routing-Signal r2 die Verbindung vom Element
952 nach 953 ausgewählt, so liegt ein» zum Zeitpunkt t am Ausgang vom Element 951 anliegendes Signal im nächsten fakt am Eingang vom Element 95-3 an. ;
Es wird weiterhin noch eine: vorteilhafte Variante eines Prozessoreleiaentes zur erfindungsgemäßen Realisierung eines Prozes- sorarrays mit flexibler Kommunikationsstruktür betrachtet. ,In jeder Zeile und in .jeder Spalte des Arrays wird jeweils eine unidirektionale Datenringleitung angeordnet, die an den Arrayselten mit den bidirektionalen Datenleitungen eines an sich
- 19 - ': - : '.
bekannten parallelen Speichern verbunden sind. Das Array wird dadurch realisiert, daß in jeder Zeile und Spalte jeweils eine unidirektionale Datenringleitung 103 angeordnet wird, die an den Arrayseiten mit den birekticnalen; Datenleitungen 104 eines an sich bekannten Speichers 102 mit P.arallelzugriff zu Έ Datenworten verbunden ist (Flgi 9). In die Hingleitungen 103 innerhalb jedes Prozessorelementes 101 ist ein Umschalter 113» gefolgt von einem durchschaltbareη Register 11.1 eingefügt (Pig· 10). Die durchschaltbaren Register 111 erhalten ihren Takt T aus einem Gatter 112, welches durch die Durchschaltsignale DQ, D,,r, D3, D-j des. jeweiligen Prozessors gesperrt werden können. Im gesperrten Zustand dieses Gatters werden die Daten ata Eingang des Registers 111 direkt an den Ausgang weitergeleitet, im geöffnetenGatterzustand werden. die Daten taktweise von Register zu.Register innerhalb des Ringes weitergeschoben. Der Schalter 113 legt entweder die-auf der Ringleitung ankommenden Daten auf den Registereingang oder die Ausgangsdaten eines Umschalters» Die vier Steuersignale SQ, S.w, Sg, S-- sind ebenfalls .Ausgänge' des Prozessors 116· Sin Schalter 115 verbindet entweder', den Ausgang eines Multiplexers 114 oder den Datenausgang des Prozessors 116 mit dem Umschalter 113, wobei der Multiplexer 114 die vier Datenleitungen der zwei Ringleitungen 103 auswählt. Dazu erhält der Multiplexer 114 zwei Steuerleitungen Ξ aus dem Prozessor 116, die die Auswahl eins aus vier vornehmen, und der Umschalter 115 eine Steuerleitung Sj, die die Schalterstellung bestimmt. Nicht erfindungsgemäß notwendig, jedoch aufgabengemäß, sind die vier Datenleitungen der zwei Ringleitungen 103 auch den Prozessoren selber zuaufiinren· In Fig..'· 10 werden diese Datenleitungen deshalb direkt angezapft, aber ebenso . ist es möglich, wie nachfolgend in einem detaillierteren Beispiel noch "gezeigt wird, z, B. die über den Multiplexer 114 ausgewählten Daten auf den Dateneingang des Prozessors zu legen· Insbesondere bei Mikroprozessoren, die mit einem Befehl immer nur ein Datum lesen können, ist die letzte Variante oder ein weiterer Multiplexer 114, der nun die Daten für den Dateneingang des Prozessors 116 auswählt, sinnvoll.
Im Betrieb der Anordnung werden auf diese Weise die Daten - auf. den. Ringleitungen zyklisch geschoben, . . '
- auf den Ringleitungen, direkt ohne 'Taktung zu weiter ent-': . fernten Prozessorelementen durchgesehaltet,
- von einer der vier Datenleitungen oder vom .jeweiligen Prozessor auf eine oder mehrere andere Datenleitungen umgelenkt.
Es ist zu erwähnen, daß die Anordnung auch, mit weniger als vier Datenspeichern 102 betrieben v/erden kann und daß die Steuersignale D für den Betrieb von Anordnungen, bei denen nicht für jedes Register 111 getrennt entschieden werden muß, ob es als Schieberegister au takten ist, auch in geeignet kodierter Form aus dem Prozessor 116 ausgegeben werden können»
Die Anordnung soll nachstehend näher erläutert werden. Sie i3t dazu in Pig« 11 als Schaltung untersetzt. Das Beispiel hat wieder die Register 111, die Gatter 112, die Umschalter 113♦ die hier als Multiplexer ausgeführt sind, sowie den Prozessor 116. Die Umschalter 114 und 115 sind hier mit Hilfe von BUS-Schaltkreisen realisiert, die auf einer Seite unidirektional Daten empfangen,und senden, auf der anderen Seite an einen bidirektionalen 3US angeschlossen werden können. Über den Ausgang S_ des Prozessors 116 wird an,die. Schaltkreise 117 das Richtungssignal angelegt, welches bestimmt, ob die Daten der Ringleitungen auf den Dateneingang des Prozessors 116 geschaltet werden oder ob dieser Daten an die Umschalter 113 sendet· Im Falle.des Datenempfanges wird durch eine 2-Bit-Adresse E^, E2 einer der vier Schaltkreise 117 aktiviert, wobei die Selektion der jeweiligen Adresse mit Hilfe der Gatter 118 erfolgt. Die Entscheidung zwischen getakteteis und durchgeschalteten Betrieb der Register 111 wird in diesem Ausführungsbeispiel für alle vier Register gemeinsam getroffen, so daß die Statuseingänge der Gatter 112 alle mit nur einem Statusausgang D des Prozessors 116 verbunden sind. Auf diese Weise iö't das Kommando, welches die Xommunikationswege eines Proaessorelementes vollständig bestimmt, auf das S-Bit-Wort S0, S¥, S^9 Sg, E^, E2J Sj, D reduziert. Zusätzlich -wurde erreicht, daß der Datenaustausch mit dem Prozessor über ein bidirektionales Datenport DB erfolgen kann.
Claims (5)
- Erfindungsansprüch1. Multiprozessorsystem, bestehend aus einem Array von mehreren Arrayelementen, die wahlweise an einem. Steuer- " rechner des Multiprozessorsystems angeschlossen sind,, die jeweils einen Prozessor und ein Verbindungsnetzwerk aufweisen, wobei jeder Ausgang eines Arrayelementes über ein getaktetes Register mit einem Eingang eines anderen Arrayelernentes oder mit einem Arrayausgang und jeder V Eingang des Arrayelementes jeweils nur mit einem Ausgang eines anderen Arrayelementes über das getaktete Register oder mit einem Arrayeingang verbunden ist, •dadurch gekennzeichnet,daß mehrere getaktete Register (4) so beschältet- sind, daß bei einem Signal auf einem an einen1 Arrayprozessor P (2) und/oder Steuerprozessor angeschlossenen Durchschalteingang das Eingangssignal sofort am Registerausgang anliegt, wobei das Verbindungsnetzwerk V (3) des Arrayelementes Ή^, das an einen Ausgang eines Arrayelementes IK über ein Register (4). mit einem Durchsehalteingang angeschlossen ist, die Durchschaltung seines mit diesem Register (4) verbundenen Einganges auf einen der Ausgänge des Arrayelementes, zu dem es gehört, ermöglichen muß.
- 2. HuItiprozessoren nach Punkt 1, dadurch gekennzeichnet, daß mindestens eines der Register (4;5) einen Eingang zur Taktfreigabe besitzt, an dem ein ein Taktfreigabesignal tragender Ausgang eines Prozessors eines Arrayelementes und/oder ein ein Freigabesignal tragenden Ausgang des Steuerprozessors des Multiprozessorsystems angeschlossen ist.
- 3. Multiprozessorsystem nach Punkt 1, dadurch gekennzeichnet, daß die Arrayelemente rasterförmig in Zeilen und Spalten angeordnet sind, wobei jedes Arrayelement vier Ausgänge und vier Eingänge zur zeilen- und spaltenweisen Verbindung der benachbarten Arrayelemente sowie wahlweise einen zusätzlichen Eingang besitzt.12" ill/' i^'t-1 >· 1 ^f^PQ
- 4. Multiprozessorsystem nach Punkt 1, dadurch gekennzeichnet, daß die in Reihen und Spalten angeordneten 'Arrayelemente '; acht Ausgänge undfacht Eingänge zur Verbindung mit den in Zeilen- und Spaltenrichtung sowie in Richtung der Diagonale benachbarten Arrayelemente aufweisen..
- 5. Multiprozessorsystem nach: .Punkt 1, 2 und,5, dadurch gekennzeichnet, daß die Yerbindungsleitungen zwischen den Arrayelementen der jeweiligen Zeilen und Spalten zu uni-. direktionalen Ringleitungen 'zusammengefaßt sind, an denen .die externen parallelen Speicher angeschlossen sind.Hierzu 11 Blatt Zeichnungen
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DD25681983A DD218803A3 (de) | 1983-11-17 | 1983-11-17 | Multiprozessorsystem |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DD25681983A DD218803A3 (de) | 1983-11-17 | 1983-11-17 | Multiprozessorsystem |
Publications (1)
Publication Number | Publication Date |
---|---|
DD218803A3 true DD218803A3 (de) | 1985-02-13 |
Family
ID=5552024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DD25681983A DD218803A3 (de) | 1983-11-17 | 1983-11-17 | Multiprozessorsystem |
Country Status (1)
Country | Link |
---|---|
DD (1) | DD218803A3 (de) |
-
1983
- 1983-11-17 DD DD25681983A patent/DD218803A3/de not_active IP Right Cessation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69419760T2 (de) | Mehrfachport-verteilte speicherschnittstelle und zugehöriges verfahren | |
DE69822796T2 (de) | Nutzerprogrammierbarer prozessor | |
DE3856015T2 (de) | Berechnungseinrichtung für Parallelprozessoren | |
DE3784050T2 (de) | Ein paralleler datenprozessor. | |
DE69231933T2 (de) | Programmierbare logische zelle und programmierbares logisches feld | |
DE3786298T2 (de) | Verfahren und Schalter zum Vermitteln von Informationen. | |
DE3049437C2 (de) | Matrixanordnung einer Vielzahl von Verarbeitungselementen | |
DE69827589T2 (de) | Konfigurierbare Verarbeitungsanordnung und Verfahren zur Benutzung dieser Anordnung, um eine Zentraleinheit aufzubauen | |
DE4417575C2 (de) | Verbesserte Array-Architektur für programmierbare logische Zellen | |
DE2819571C2 (de) | ||
DE3854568T2 (de) | SIMD-Feldrechner. | |
DE60132585T2 (de) | Vorrichtung und verfahren zum ausgeben der gruppierung von befehlen in einem vliw-prozessor | |
DE602004009324T2 (de) | Integrierte datenverarbeitungsschaltung mit mehreren programmierbaren prozessoren | |
DE2916066B2 (de) | Anordnung zur Verarbeitung von Daten | |
DE4416881A1 (de) | Datenverarbeitungseinrichtung | |
DE2716369A1 (de) | Mikroprozessorsystem | |
DE2916065C2 (de) | Datenverarbeitungseinrichtung | |
DE3788617T2 (de) | Vektordatenverarbeitungssystem mit einer E/A-Steuerung für jeden Vektordatenprozessor und einer anderen E/A-Steuerung für mindestens einen anderen Vektordatenprozessor. | |
DE3543471C1 (de) | In integrierter Technik hergestellter Baustein zur Erstellung integrierter Schaltungen | |
DE60221515T2 (de) | Speichersystem für schleifenbeschleunigung nach wunsch | |
DE3885234T2 (de) | Bildelementdatenverarbeitungsvorrichtung. | |
WO2001065829A1 (de) | Verfahren und vorrichtung zum auslesen von bilddaten eines teilbereichs eines bildes | |
DD218803A3 (de) | Multiprozessorsystem | |
DE3887851T2 (de) | Makrozellenmuster für halbleiterintegrierten Schaltkreis. | |
EP1038235B1 (de) | Vorrichtung zum hierarchischen verbinden einer mehrzahl von funktionseinheiten in einem prozessor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENJ | Ceased due to non-payment of renewal fee |