DE3049437A1 - Matrixanordnung einer vielzahl von verarbeitungselementen fuer parallelprozessoren - Google Patents
Matrixanordnung einer vielzahl von verarbeitungselementen fuer parallelprozessorenInfo
- Publication number
- DE3049437A1 DE3049437A1 DE19803049437 DE3049437A DE3049437A1 DE 3049437 A1 DE3049437 A1 DE 3049437A1 DE 19803049437 DE19803049437 DE 19803049437 DE 3049437 A DE3049437 A DE 3049437A DE 3049437 A1 DE3049437 A1 DE 3049437A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- data
- processing elements
- processing
- processing element
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C5/00—Measuring height; Measuring distances transverse to line of sight; Levelling between separated points; Surveyors' levels
- G01C5/005—Measuring height; Measuring distances transverse to line of sight; Levelling between separated points; Surveyors' levels altimeters for aircraft
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8023—Two dimensional arrays, e.g. mesh, torus
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/006—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation at wafer scale level, i.e. wafer scale integration [WSI]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
Description
Matrixanordnung einer Vielzahl von Verarbeitungselementen für Parallelprozessoren
Die Erfindung betrifft das Gebiet der Datenprozessoren und mehr im einzelnen sehr große Parallelprozessoren, die in der
Lage sind, große Datenmengen rasch und kostengünstig zu handhaben.
Zur Zeit gehen die Anforderungen an Datenprozessoren
dahin, daß eine große Vielzahl von Daten arithmetisch und logisch in kurzen Zeiträumen verarbeitet werden muß, um vorher erhaltene
Resultate laufend auf den letzten Stand zubringen oder auch große Felder zu überwachen, von denen Daten gewonnen werden
und an denen Korrelationen vorgenommen werden können. Beispielsweise beabsichtigen die USA zur Zeit, Bildsensoren in Erdumlauf
zu setzen, welche Daten in einer Menge von bis zu 10 Bits pro Tag erzeugen können. Für solch ein Bildsystem werden vielfältige
Bildverarbeitungsaufgaben wie beispielsweise geometrische Korrektur,
Korrelation, Bildregistrierung, Merkmalswahl, multispektrale
Klassifikation sowie Flächenmessung erfordert, um nützliche Information
aus der Masse der erhaltenen Daten zu gewinnen und zwar wird erwartet, daß die Arbeitsbelastung für ein Datenverarbeitungssystem, das in Verbindung mit solchen kreisenden Bildfühlern verwendet
wird, ii
Sekunde liegt.
Sekunde liegt.
9 10 wendet wird, im Bereich zwischen 10 und 10 Operationen je
Schnelle Verarbeitungssysteme und komplizierte Parallelprozessoren,
die zur simultanen Verarbeitung einer Vielzahl von Daten in der Lage sind, sind seit einer Reihe von Jahren bekannt. Und zwar betreffen
die früheren US-PSen 3 800 289, 3 812 467 und 3 936 806
130039/1016
des Anmelders sämtlich eine Konstruktion zur starken Vergrößerung der Datenverarbeitungsfähigkeit von Digitalcomputern.
Ähnlich betrifft die US-PS 3 863 233, welche übertragen ist auf die Goodyear Aerospace Corporation, die Bevollmächtiqte der vorliegenden
Anmeldung, insbesondere ein Datenverarbeitunqselement für einen assoziativen oder parallelen Prozessor, der auch die
Da tonverarbeltungsgesohwindigkeit erhöht, indem er eine Vielzahl
von Recheneinheiten, eine für jedes Wort, in der Speicheranordnung enthält. Jedoch besitzen selbst die beachtlichen Fortschritte
dieser bekannten Lehren nicht die Fähigkeit, große Mengen von oben beschriebenen Daten kostenwirksam zu handhaben.
Ein System der geforderten Art umfaßt Tausende von Verarbeitunqselementen,
von denen jedes sein eigenes arithmetisches und logisches
Netzwerk enthält, welches in Verbindung mit seinem eigenen Speicher arbeitet, wobei es die Fähigkeit besitzt, mit anderen
ähnlichen Verarbeitungselementen innerhalb des Systems zu kommunizieren. Mit Tausenden von solchen Verarbeitungselementen, die
simultan arbeiten (Massenparallelismus) kann die erforderliche
Geschwindigkeit erzielt werden. Aufgrund der Tatsache, daß
typische Satellitenbilder Millionen von Bildelementen (oder
Pixels) umfassen, welche im allgemeinen gleichzeitig verarbeitet werden können, eignet sich ferner solch ein Aufbau gut zur Lösung
des vorerwähnten Problems.
In einem System, das zur Verarbeitung einer großen Datenmenge in einem Massenparallelbetrieb in der Lage ist, ist es sehr wünschenswert,
daß das System in der Lage ist, bitserielle Berechnungen zur Kostenersparnis durchzuführen. Um aber die Geschwindigkeit
bei der bitseriellen Verechnung zu erhöhen, ist es anzustreben, ein Schieberegister variabler Länge aufzunehmen, so daß
verschiedene Wortlängen untergebracht werden können. Ferner ist es wünschenswert, daß die Massenanordnung von Verarbeitungselementen
zum gegenseitigen Verkehr in der Lage ist, so daß die Daten wenigstens zwischen benachbarten Verarbeitungselementen
verschoben werden können. Ferner ist es wünschenswert, daß jedes Verarbeitungselement in der Lage ist, sämtliche zwischen zwei
Datenbits mögliche Booleschen Operationen durchzuführen, und daß
130039/1016
jedes derartige Verarbeitungselement seinen eigenen Speicher mit
direktem Zugriff (RAM) aufweist. Außerdem sollte solch ein Systun,
um effektiv zu sein, Mittel aufweisen zum Umgehen nicht oder falsch arbeitender Verarbeitungselemente, ohne die Vollständigkeit
des Systems zu vermindern.
Daher ist ein Gegenstand der Erfindung die Schaffung einer Vielzahl
von Verarbeitungselementen für einen Prozessor mit paralleler
Anordnung, bei welchem jedes dieser Elemente ein Schieberegister variabler Länge wenigstens zur Mitwirkung bei arithmetischen
Berechnungen aufweist.
Ein anderer Gegenstand der Erfindung ist die Schaffung einer Vielzahl
von Verarbei ti:ngselementen für einen Prozessor mit paralleler
Anordnung, bei welchem jedes. Verarbeitungselemerit zur Interkommunikation
wenigstens mit bestimmten benachbarten Verarbei turqselementen
in der Lage ist.
Noch ein weiterer Gegenstand der Erfindung ist die Schaffung einer Vielzahl von Verarbeitungselemen |.en für einen Prozessor
mit paralleler Anordnung, bei welchem jedes Verarbeitungselernen I
zur Durchführung bitserieller mathematischer Berechnungen in der Lage ist.
Ein zusätzlicher Gegenstand der Erfindung ist die Schaffung einer Vielzahl von Verarbeitungselementen für einen Prozessor mit paralleler
Anordnung, bei welchem jedes Verarbeitungselement in
der Lage ist zur Durchführung sämtlicher Boolescher Funktionen, welche sich zwischen zwei Bits von Binärdaten ausführen lassen.
Noch ein weiterer Gegenstand der Erfindung ist die Schaffung einer Vielzahl von Verarbeitungselementen für einen Prozessor mit
paralleler Anordnung, bei welchem jedes Verarbeitungselement seinen eigenen Speicher und seine eigene Daten-Sammelschiene aufweist.
130039/1016
Noch pin weiterer Gegenstand der Erfindung ist die Schaffung einer Vielzahl von Verarbeitungselementen für einen Prozessor
mit paralleler Anordnung, bei welchem bestimmte dieser Verarbeitungselemente
umgangen werden können, wenn sich herausstellen sollte, daß sie nicht oder schlecht funktionieren, wobei dieses
Umgehen die Vollständigkeit des Systems nicht vermindert.
Noch ein weiterer Gegenstand der Erfindung ist die Schaffung einer Vielzahl von Verarbeitungselementen für einen Prozessor
mit paralleler Anordnung, welcher eine kostengünstige Verarbeitung einer großen Vielzahl von Daten mit guter Zeitnutzung erzielt.
Die Gegenstände der Erfindung werden erzielt durch eine Matrix einer Vielzahl von Verarbeitungselementen, die untereinander verbunden
sind und von denen jedes umfaßt: einen Speicher, einen Addierer sowie Kommunikationsmittel, die mit benachbarten Verarbeitungselementen
innerhalb der Matrix verbunden sind und ferner mit dem Addierer und dem Speicher verbunden sind, um Daten
zwischen dem Speicher, dem Addierer und den benachbarten Verarbeitungselementen
zu transferieren.
Ein Ausführungsbeispiel der Erfindung wird nachfolgend anhand
der Zeichnungen beschrieben. Es zeigt:
Figur 1 ein Blockschaltbild eines Verarbeitungssystems
zur parallelen Massenverarbeitung, welches die Verknüpfung der Matrixeinheit zeigt, die eine
Vielzahl von Verarbeitungselementen umfaßt;
Figur 2 ein Blockschaltbild eines einzelnen Verarbeitungselementes,
das den Grundbaustein der Matrixanordnung von Figur 1 bildet;
Figur 3, be- ein Schaltbild der Steuersignal-Erzeugungsschal -
stehend aus den . j w u · χ. τ 4. tu * ,
r-, ^. op tung der Verarbeitungselemente, welche auf einem
Chip angebracht ist und die Summenoder-Bäume und Paritäts-Bäume enthält;
130039/1016
Figur 4- ein detailliertes Schaltbild der grundsätzlichen
Schaltung eines Verarbeitungselementes; und
Figur 5,um~ Schaltbilder des Schaltungskreises, der zur Befassend
die seitigung nicht arbeitender oder schlecht funktIc)-Figuren
5A,5B y w
nierender Verarbeitungselemente aus der Matrixanordnung
verwendet wird.
Aus Figur 1 ist ersichtlich, daß ein großer Parallelprozessor allgemein durch das Bezugszeichen 10 bezeichnet ist. Fin Hauptelement
des Prozessors 10 ist die Matrixanordnung 1?, welche In einer bevorzugten Ausführungsform eine Matrix aus 128 χ 128 Verarbeitungselementen,
also insgesamt 16 384· Verarbei tungselemen Lc
umfaßt, die nachfolgend zu beschreiben sind.Die Matrixanordnunq 1? nimmt auf ihrer linken Seite Daten auf und gibt auf ihrer
rechten Seite Daten ab über 128 parallele Leitungen. Die maxim.i-Ie
Transfergeschwindigkeit von 128-Bit-Datenspalten beträgt
10 MHz für eine maximale Bandbreite vor» 1,28 Milliarden Bits je
Sekunde. Eingabe, Ausgabe oder beide können simultan mit der Verarbeitung
stattfinden.
Elektronische Schalter Zh wählen die Eingabe der Ma brixanordnunq
12 aus der 128-Bit-Eingabeschnittstelle des Prozessors 10 oder
von dem Eingaberegister 16. Ähnlich kann die Ausgabe der Matrixanordnung 12 über Schalter 26 zu der 128-Bit-Ausgabeschn i ttste I 1 c·
des Prozessors 10 oder zu dem Ausgaberegister 14- gelenkt werden. Diese Schalter 24-, 26 werden durch die Programm- und Datenbehandlungseinheit
18 unter geeigneter Programmsteuerung gesteuert. Steuersignale zu der Matrixanordnung 1.2 und Statusbit von der
Matrixanordnung können mit dem externen Steuer-Interface des
Prozessors 10 oder mit der Matrixsteuereinheit 20 verbunden sein.
Auch dieser Transfer wird durch elektronische Schalter 22 bewerkstelligt,
welche der Steuerung durch die Behandlungseinheit:
1H unter 1 legen.
130039/1016
Die Matrixsteuereinheit 20 sendet Steuersignale und Speicheradressen
an alle Verarbeitungselemente der Matrixanordnung 12 und erhält Statusbits von diesen. Die Einheit 20 ist ausgelegt
zur Durchführung von Buchführungsvorgängen wie zum Beispiel
Adressenberechnung, Schleifensteuerung, Verzweigung, Abruf von
Unterprogrammen und dgl.. Sie arbeitet simultan mit der Verarbeitunqselementsteuerung
derart, daß die volle Verarbeitungskaprtzitc-it.
der Verarbeitungselemente der Matrixanordnung 12 auf
die /u behandelnden Daten angewandt werden kann. Die Steuereinheit: 20 umfaßt drei getrennte Steuereinheiten; die Verarbeitunqse
lernent-Steuereinheit führt mikrokodierte Vektorverarbeitunqsproqramme
aus und steuert die Verarbeitungselemente und ihre zugehörigen Speicher; die Eingabe/Ausgabe-Steuereinheit steuert
das Schieben von Daten durch die Matrixanordnung 12; und die Hauptsteuereinheit führt die Anwendungsprogramme aus, führt die
skalare Verarbeitung intern durch und macht Aufrufe an die Verarbeitungselement-Steuereinheit
für sämtliche Vektorverarbeitunq.
Die Programm- und Datenbehandlungseinheit 18 handhabt den Datenfluß
zwischen den Einheiten des Prozessors 10, lädt Programme in die Steuereinheit 20, führt Systemtests und Diagnoseprogramme aus
und sorgt für Programmentwicklungsmöglichkeiten. Die Einzelheiten dieses Aufbaus sind nicht wichtig zum Verständnis der Erfindung,
aber es sollte bemerkt werden, daß die Einheit 18 günstigerweise einen Minicomputer umfassen kann wie beispielsweise
den Digital Equipment Corporation (DEC) PDP-11/34- mit Schnittstellenleitungen (Interfaces) zu der Steuereinheit 20, der
Matrixanordnung 12 (Register 14,16) und dem externen Computer-Interface. Wie allgemein bekannt ist, kann die Einheit 18 auch
periphere Geräte umfassen, beispielsweise ein Magnetbandgerät 28, Platten 3o, einen Zeilendrucker 32 und ein alphanumerisches Endgerät
34.
130039/1016
Zwar hat der Aufbau von Figur 1 eine qewisse Bedeutung für die
Wirkung des Gesamtsystems, das die Erfindung enthält, es versteht sich aber, daß die Einzelheiten dieses Aufbaus nicht erforderlich
sind zur Würdigung des Rahmens und der Breite des Hrfindungsgedankens. An dieser Stelle soll nur gesagt werden,
daß die JMatrixanordnung 12 den Erfindungsgedanken umfaßt, der
hier im einzelnen zu beschreiben ist, und daß diese Matrixanordnung eine große Vielzahl von untereinander verbundenen Verarbeitungselementen
umfaßt, von denen jedes seinen eigenen Speicher hat, arithmetische Berechnungen durchführen kann, ein voJI.es
Komplement Boolescher Fur>Ktionen durchzuführen in der Lage !stund ferner in der Lage ist, wenigstens mit den orthogonal benachbarten
Verarbeitungselementen auf allen Seiten zu verkehren,
die hier mit Norden, Süden, Osten und Westen bezeichnet werden.
Wie aus Figur 2 ersichtlich, ist ein einzelnes Verarbeitungse 1 cement
allgemein durch das Bezugszeichen 36 bezeichnet.. Das Verarbeitungselement
umfaßt ein P-Register 38, welches zusammen mit.
seiner Eingabelogik 40 sämtliche Logik- und Weiter 1 eitungsfunktionen
für das Verarbeitungselement 36 durchführt. Die A-, B- und
C-Register 42 bis 46, das Schieberegister 48 variabler Länge und die zugehörige Logik des Volladdierers 50 bilden das Rechenwerk
des Verarbeitungselementes 36. Das G-Register 52 ist vorgesehen, um das Maskieren arithmetischer und logischer Operationen zu
steuern, während das S-Register 54 dazu verwendet wird, Daten in
das und aus dem Verarbeitungselement 36 zu schieben, ohne seine Operationen zu stören. Schließlich sind die vorerwähnten Elemente
des Verarbeitungselementes 36 mittels einer doppelseitig gerichteten
Daten-Sammelschiene 58 zu einem ein/igen Verknüpften Speicher
56 mit direktem Zugriff (RAM) verbunden.
Gemäß derzeitiger Konstruktion ist das Verarbeitungselement 36
durch LSI-Technik auf eine solche Größe reduziert, daß ein einzelner Chip acht solche Verarbeitungselemente enthalten kann
130039/1016
zusammen mit einem Paritäts-Baum, einem Summenoder-Schaltkreis
und einer zugehörigen Steuerdecodierung. In der bevorzugten Ausführurigsform
sind die acht Verarbeitungselemente auf einen Chip in zwei Reihen zu je vier Spalten angeordnet. Da sich die Größe
von RAM-Speichern durch die LSI-Technik zur Zeit rasch ändert, wird es vorgezogen, den Speicher 56, obwohl er einen Teil des
Verarbeitungselementes 36 ausmacht, von der integrierten Schaltung
des restlichen Aufbaus des Verarbeitungselementes getrennt zu halten, so daß, wenn es die Technologie erlaubt, größere
Speicher mit den Verarbeitungselementen vereinigt werden können,
ohne die gesamte Systemkonstruktion zu ändern.
Die Datenschiene 58 ist der hauptsächliche Datenweg für das Verarbeitungselement
36. Während jedes Maschinenzyklus kann er ein Datenbit von irgendeiner von sechs Quellen zu einer oder mehreren
Fmpfanqsstellen transferieren. Die Quellen umfassen ein aus der
adressierten Stelle in dem RAM-Speicher 56 qelesenes Bit, den Zustand der Reqister B, C, P oder S oder den Zustand der Äquivalenzfunktion,
die durch das Element 60 erzeugt wird und den Äquivalenzzustand anzeiqt, der zwischen den Ausqänqen der Reqister
P und G besteht. Die Äquivalenzfunktion wird während einer
Ausbiendneqieroperation (masked-negate) als Quelle verwendet.
Die Bestimmungsorte eines Datenbits auf der Datenschiene 58 sind die adressierten Stellen des Speichers 56, die Register A, G oder
S, die mit dem Register P verbundene Logik, der Eingang zu dem Summenoder-Baum und dor Eingang zu dem Paritätsbaum.
Vor Betrachtung der Schaltung des Verarbeitungselementes 36 im ein/einen sollte Figur 3 beachtet werden, in welcher die Schaltung
(■>?, zur Erzeugung der Steuersignale zum Betrieb der Verarbeitungselemente
qezeiqt ist. Die Schaltunq von Figur 3 ist in ein LSI-Chip einbezoqen, welches acht Verarbeitungselemente umfaßt,
und ist verantwortlich für die Steuerung dieser zuqeordneten Elemente.
130039/1016
Grundsätzlich umfaßt die Schaltung von Figur 3 eine Decodierlogik,
die Steuersignale auf den Leitungen L 0 bis LF durch Programmsteuerung erhält und diese Signale verwandelt in die
Steuersignale Kl bis K27 zum Anlegen an die Verarbeitungselemente
36, den Summenoder-Baum oder den Paritäts-Baum. Zusätzlich erzeugt die Schaltung in Figur 3 aus dem Haupttakt des
Systems alle anderen zur Steuerung des Verarbeitungselementes36 notwendigen Taktimpulse.
Ein Fachmann kann aus der Schaltung von Figur 3 die Beziehung zwischen der programmierten Eingabefunktion auf den Leitungen
L 0 bis LF und den Steuersignalen Kl bis K27 direkt ableiten. Zum Beispiel ergeben die Inverter 64-, 66 K 1 = LC . Ähnlich ergeben
die Inverter 68 bis 72 und das NAND-Gatter Ik K16 = LO'LI.
Desgleichen ergibt sich K18 = L2*L3*LVU6 .
Taktimpulse zur Steuerung der Verarbeitungselemente 36 werden im
wesentlichen auf die gleiche Art wie die Steuersignale erzeugt. Das ist dem Fachmann ohne weiteres ersichtlich aus einer Betrachtung
der Schaltung 62 von Figur 3. Beispielsweise gilt für den Takt S-CLK = S-CLK-ENABLE-Main CLK aufgrund der Inverter 76, 78
und des NAND-Gatters 80. Ähnlich giJ t Takt G-CLK = L8-MAJN CLK
aufgrund von Invertern 76, 82 und eines NAND-Gatters 84.
Ferner ist aus Schaltung 62 von Figur 3 /u ersehen, daß eine
Einrichtung zur Bestimmung eines Paritätsfehlers und des Summenoders
der Daten sämtlicher Verarbeitungselemente auf der Datenschiene vorgesehen ist. Das Datenbit auf der Datensohiene kann
dem Summenoder-Baum geliefert werden, der ein Baum von InkJusiv-Oder-Logikelementen
ist, welcher das InkJusiv-Oder aller Verarbeitungselement-Datenschienenzustände
bildet und die Ergebnisse der Matrixsteuereinheit 20 zuführt.
Um die Anwesenheit von Verarbeitungselementen in bestimmten Zuständen
zu ermitteln, sind Gruppen von acht Verarbeitungselementen
oder-mäßig verknüpft in einem Summenoder-Baum mit acht
130039/1016
Eingängen, dessen Ausqangssignal dann einem Oder-Baum mit 204-8
Eingängen außerhalb des Chips zugeführt wird, um ein Summenoder sämtlicher 16384- Verarbeitungselemente zu erhalten.
Fehler in dem RAM-Speicher 56 können auf übliche Art bestimmt worden durch Paritätserzeugung und eine Prüfschaltung. Bei jeder
Gruppe von acht Verarbeitungselementen 36 gibt es einen Paritätsfehler-Flipflop
86, der auf binär 1 gesetzt wird, wenn ein Paritätsfehler in einem zugeordneten Speicher 56 ermittelt wird.
Wie in der Schaltung 62 gezeigt, umfaßt der Summenoder-Baum die
drei durch das Bezugszeichen 88 bezeichneten Gatter, während der Paritätsfehler-Baum aus sieben Exklusiv-Oder-Gattern besteht,
die durch das Bezugszeichen 90 bezeichnet sind. Während Leseoperationen wird das Paritätsausgangssignal am Ende des Zyklus
durch den M-Takt in den Haltekreis im Flipflop 86 aufgenommen. Während Schreibvorgängen wird die Parität über den Paritätsbit-Stift
des Chips an einen Paritätsspeicher abgegeben. Der Paritätsspeicher
umfaßt einen den Elementen 56 ähnlichen Speicher mit Direktzugriff. Der während Schreibvorgängen bei dem Paritätsbit
gespeicherte Paritätszustand wird exklusiv-oder-mäßig
mit dem Ausgangssigna L des Paritäts-B3ums 90 während Leseoperationen
verknüpft, um den Halte-Flipflop (latch) 86 zu beeinflussen.
Wie gezeigt, bestimmt das Steuersignal K23, ob eine Lese- oder
Schreiboperation ausgeführt wird, während K24- zum Löschen des
Paritätsfehler-Flipflop 86 verwendet wird. Der Summenoder-Baum
88 verknüpft oder-mäßig sämtliche Datenbits D0-D7 auf den zugehörigen Datenschienen1 eitungen der acht Verarbeitungselemente
des Chips. Wie ersichtlich werden die Paritätssignale und die
Summenoder-Signale über die gleiche Gatter-Matrix 92 transfe-
/ durch
riert, welche'K27 gesteuert wird, um zu bestimmen , ob Parität oder Summenoder von dem Chip zu der Matrixsteuereinheit 20 transferiert wird. Die Ausgänge der Flipflops 86 sämtlicher Verarbeitungselemente sind mit dem 204-8-Eingangs-Summenoder-Baum derartig verbunden, daß das Vorhandensein irgendeines gesetzten
riert, welche'K27 gesteuert wird, um zu bestimmen , ob Parität oder Summenoder von dem Chip zu der Matrixsteuereinheit 20 transferiert wird. Die Ausgänge der Flipflops 86 sämtlicher Verarbeitungselemente sind mit dem 204-8-Eingangs-Summenoder-Baum derartig verbunden, daß das Vorhandensein irgendeines gesetzten
130039/1016
Flipflops 86 abqefraqt werden kann. Durch Verbindung eines Flipflops, der bei einem Fehler hält oder verriegelt, kann die
Matrixsteuereinheit 20 der Reihe nach Spalten von Verarbeitunqselementen
sperren, bis die Spalte gefunden ist, die das fehlerhafte Element enthält.
Wie nachfolgend weiter erörtert wird, wird das Steuersignal K?"j
dazu verwendet, die Paritäts- und Summenoder-Ausqänge von dem Chip zu sperren, wenn das Chip gesperrt und nicht weiter im
System verwendet wird.
Währenddie Verwendung von Summen-Oder-und Paritätsfunktionen bekannt
ist, ist ihre Verwendung in der Erfindung wichtig, um beim Lokalisieren fehlerhafter Verarbeitungselemente /u helfen,
so daß diese Elemente aus dem Operationssystem entfert werden können. Die Bäume 88, 9o, die über das Netzwerk 9? gegenseitig
ausschließend getort sind, sorgen für die Möglichkeit, Spalten
von Verarbeitungselementen 36 auf Parität zu prüfen, und bieten
ferner das Summenoder-Netzwerk zur Bestimmung des Vorhandenseins
von Verarbeitungselementen in besonderen Logikzuständen, um auf diese Weise die Antwortstelle auf eine Suchoperation festzustellen.
Die Anzahl von für dieses Verfahren erforderlichen
Schaltkreiselementen ist auf einem Minimum gehalten worden unter Verwendung eines einzigen Ausgangssignals für die zwei Bäume,
wobei dieses Ausgangssiqnal durch Programmsteuerung mehrfach ausgenützt
wird.
Schließlich ist aus Figur 3 zu ersehen, daß das Sperrsignal, das
zur Beseitung einer vollständigen Spalte von Verarbei tungse lement-Chips aus der Matrixanordnung 12 verwendet wird, zu diesem Zweck
das Signal K25,K26 erzeugt. Wie oben erwähnt, sperrt: das Steuersignal
K25 die Summenoder- und Paritätsausgänge für zugeordnete Verarbeitungselemente. Weitere Funktionen der Signale K?.5,K26
hinsichtlich der Beseitigung gewählter Verarbeitungselemente wird
unten anhand von Figur 5 erörtert.
130039/1016
Aus Figur 4 und ihrer Korrelation mit Figur 2 ist ersichtlich, daß der Volladdierer Logikgatter 94-100 umfaßt. Dieser VoIladdlerer
steht in Verbindung mit dem Register B, das einen Flipflop 102 aufweist, welcher das Summenbit erhält, ferner mit dem
Register C, das einen Flipflop 104 aufweist, welcher das Übertragbit erhält, und steht außerdem in Verbindung mit dem Schieberegister
48 variabler Länge, welches Schieberegister 106-110 mit 16,8 und 4 Bits aufweist, sowie Flipflops 112, 114 und Multiplexer
116-120.
Der Addierer erhält ein Eingangssignal von dem Schieberegister,
und /war das Ausgangssignal' A-Registers 122, und ein Eingangssignal
von der Logik- und Leit-Untereinheit, und zwar das Ausgangssignal des P-Registers 124. Oeweils wenn die Kontrollleitung
K21 eine logische 1 ist und BC-CLK getaktet wird,addiert der Addierer die zwei Eingangsbits von den Registern A und P zu
dem Übertragbit, das in dem C-Register 104 gespeichert ist, um eine Zweibit-Summe zu bilden. Das Bit geringster Wertigkeit der
Summe wird durch Takt in das B-Register 102 eingelesen, und das mit höchster Wertigkeit der Summe wird durch Takt in das C-Register
104 eingelesen, so daß es das Übertragbit für den nächsten Maschinenzyklus wird. Wenn K21 auf einer logischen 0
ist, wird das P-Bit durch 0 ersetzt.
Wie gezeigt, setzt die Steuerleitung K12 das C-Register 4 auf den Binär-1-Zustand,während die Steuerleitunq K13 das C-Register
auf den Binär-0-Zustand zurücksetzt. Die Steuerleitung K16 leitet den Zustand des B-Registers 102 auf die doppelseitig gerichtete
Datenschiene 58, während die Steuerleitung K22 das Ausgangssignal des C-Registers auf die Datenschiene leitet.
In Betrieb enthält der Volladdierer von Figur 4 eine übertragfunktion,
die folgendermaßen ausgedrückt wird: C AP ν PC ν AC.
130039/1016
Derneue Zustand des Übertraqregisters C, dem Flipflop 104-, ist
äquivalent den und-mäßig verbundenen Zuständen der Reqister Λ
und P oder den und-mäßig verbundenen Zuständen der Reqister B und C oder den und-mäßiq verbundenen Zuständen der Reqister A
und C. Diese Übertragfunktion wird erhalten unbeschadet der Tatsache,
daß keine Rückkopplunq von Ausqanqssignalen des C-Reqisters zu seinen Eingangssignalen vorhanden ist, da der OK-Flipflop
104 der Regel folgt:
C <— α£ ν KC.
C <— α£ ν KC.
Der neue Zustand des Registers C ist das Komplement des qegenwärtigen
Zustands des Reqisters C, und-mäßiq verbunden mit dem 3-Eingang, oder das Komplement des K-Ei.ngangs, und-mäßiq verbunden
mit dem gegenwärtigen Zustand des Registers C. Dementsprechend folgt in der Schaltung von Figur 4 der Flipflop .104
der Regel:
C .<— APC ν (AvP)C.
Dor zu letzt angegebene Ausdruck ist der zuerst angegebenen Über-Lragfunktion
äquivalent.
Bezüglich des Summenausdrucks erhält das Reqister B, der Flipflop 102, ein Summenbit, welches eine Exklusiv-0der-Funktion der Zustände
der Register A, P und C ist entsprechend dem Ausdruck :
B <— A § P Θ C .
Das Gatter 98 erzeugt ASP von den Gattern 94 und 96, welches
Ergebnis das Gatter 100 exklusiv-oder-mäßig mit C verknüpft, um
den Summenausdruck zu erhalten.
Das Schieberegister des Rechenwerkes des Verarbeitungselementes
36 hat dreißig Stufen. Diese Stufen gestatten den Schieberegistern, variierende Längen zu haben, um so verschiedene Wortgrößen
unterzubringen und damit die Zeit für Rechenoperationen in bitseriellen
Berechnungen wesentlich zu vermindern, wie sie bei der Multiplikation auftreten.
130039/1016
Steuerleitungen K1-K4 steuern Multiplexer 116-120 so, daß bestimmte
Teile des Schieberegisters umgangen werden können, was
bewirkt, daß die Länge des Schieberegisters wahlweise auf 2, 6, 10, 14·, 18, 22, 26 oder 30 Stufen eingestellt wird. Datenbits
werden in das Schieberegister über das B-Reigster 102 einqeführt, welche die Summenbits von dem Addierer sind. Die Datenbits verlassen
das Schieberegister durch das A-Register 122 und laufen zurück durch den Addierer. Die A- und B-Register fügen dem Rundweg
zwei Verzögerungsstufen zu. Dementsprechend beträgt die Rundweglänqe
eines Rechenprozesses 4·, 8, 12, 16, 20, 24-, 28 oder 32
Stufen je nachdem, wie die Zustände der Steuerleitungen K1-K4 die
Multiplexer 112-120 regulieren.
Das Schieberegister gibt Daten an das A-Register 122 ab, welches
über Steuerleitungen Kl, K2 und Multiplexer 120 zwei andere Eingänge wählen kann. Ein Eingang ist eine logische 0. Dieser wird
verwendet, um das Schieberegister in einen Gesamt-0-Zustand zu löschen. Der andere Eingang ist die doppelseitig gerichtete Datenschiene
58. Diese kann verwendet werden, um Daten direkt in den Addierer einzuführen.
Das A-Reqister 122 wird durch A-CLK getaktet und die anderen 30 Stufen des Schieberegisters werden durch SR-CLK getaktet. Da die
letzte Stufe des Schieberegisters einen gesonderten Takt hat, können Daten von der doppelseitig gerichteten 'Datenschiene 58
oder eine logische 0 in den Addierer eingeführt werden, ohne Daten in dem Schieberegister zu stören.
Wie oben erörtert, liefert das P-Register 124- ein Eingangssignal
an den Addierer 50, wobei ein solches Eingangssignal von einem der orthogonal angrenzenden Verarbeitungselemente 36 oder von
der Datenschiene 58 zugeführt wird. Das P-Register 124 erhält
Daten von dem P-Register benachbarter Verarbeitungselemente 36
mittels des Multiplexers 126 durch Steuerung von Steuersignalen,! K5, K6. Bei dem Transferieren von Daten von dem Multiplexer 126
zu dem P-Register 124 erfolgt der Transfer über einen Inverter und über UND-Gatter 130, 132. Der Transfer wird bewirkt durch
130039/1016
die Steuerung des Steuersignals K7, um den echten Wert und das
Komplement der Daten an den 3-bzw. K-Eingang des Flipflops I?4
anzulegen. Die Daten werden unter Steuerung des Taktes P-CLK in den Haltekreis aufgenommen (latched). Wie bemerkt, sind das wahre
und das Komplement-Ausgangssignal des P-Flipflops 1?Λ auch darauf
eingerichtet, zu den P-Flipflps benachbarter Verarbeitungselemente
36 geleitet zu werden. Das Komplement wird von dem Chip weggeleitet, welches das unmittelbare Verarbeitungselement enthält,
aber wird an dem Bestimmungsort durch oinen Treiber invertiorL,
um den wahren Zustand des P-Flipflops /u liefern. Der wahre Zustand
wird nicht invertiert und wird den benachbarten Verarbeitungselementen
auf demselben Chip zugeführt. Wie im einzelnen in Figur 4- gezeigt, steht die Logikschaltung 40 unter der Kontrolle
von Steuerleitungen K8-K11. Diese Logik erhält Daten von der Datenschiene 58 entweder in dem wahren Zustand oder komplementär
über den Inverter 130. Die Logikschaltung 40 ist dann unter dor
Kontrolle der Steuersignale K8 - KIl in der Lage, alle sechzehn Booleschen Logikfunktionen auszuführen, die zwischen den Daten
von der Datenschiene und den in dem P-Register \?Λ vorhandenen
Daten ausgeführt werden können. Das Resultat wird dann in dem P-Register 124 gespeichert.
Es versteht sich, daß bei K7 = 0 die Gatter 130 und 132 gesperrt sind. Die Steuerleitungen K8 und K9 gestatten dann, daß 0, 1,
D oder D zu dem J-Eingang des P-Registers dem Flipflop 124, getort
wird. D ist der Zustand der Datenschiene 58. Unabhängig davon gestatten die Steuerleitungen KlO und KIl, daß 0, 1, D oder
D zu dem K-Eingang gesandt wird. Gemäß der Regel der 3-K-Flipf1op-Operation
wird der neue Zustand des P-Registers folgendermaßen
definiert:
P <— 3P ν KP .
Wie ersichtlich, können durch Wahl aller vier Zustände von K
alle sechszehn logischen Funktion von P und D erhalten werden.
130 039/1016
Wie oben besprochen, kann das Ausgangssignal des Registers P in arithmetischen Berechnungen des Verarbeitungselementes 36 verwendet
werden oder kann zu der Datenschiene 58 geleitet werden. Wenn K21 auf einer logischen 1 ist, wird der augenblickliche Zustand
des Registers P für die Addierlogik freigegeben. Wenn K14 eine logische 0 ist, wird das Ausgangssignal des Registers P für
die Datenschiene freigegeben. Wenn Kl5 eine logische 0 ist, wird
das Ausgangssignal des Registers P exklusiv-oder-mäßig mit dem
Komplement des G-Registers 132 verknüpft und das Resultat wird für die Datenschiene freigegeben. Es ist zu bemerken, daß bestimmte
Transfers auf die Datenschiene über doppelseitig gerichtete Übertragungsgatter 134 und 136 erzielt werden, welche
durch die Steuersignale K14 und K15 freigegeben werden. Diese Gatterarten sind dem Fachmann wohlbekannt.
Das Maskierregister G, bezeichnet durch das Bezugszeichen 132,
umfaßt einen einfachen D-Flipflop. Das Register G liest den Zustand der doppelseitig gerichteten Datenschiene bei dem positiven
Übergang von G-CLK. Die Steuerleitung K19 steuert das Maskieren
oder das Ausblenden der Takte der arithmetischen Untereinheit (A-CLK, SR-CLK und BC-CLK). Wenn Kl9 = 1 ist, werden diese Takte
nur zu den arithmetischen Untereinheiten derjenigen Verarbeitungselemente
gesandt, wo G = 1. Die arithmetischen Untereinheiten derjenigen Verarbeitungselemente, bei denen G=O ist, werden
nicht getaktet, und kein Register und keine Untereinheiten
ändern den Zustand. Wenn K19 = 0 ist, nehmen die arithmetischen Untereinheiten aller Verarbeitungselemente an der Operation teil.
Die Steuerleitung K20 steuert das Maskieren der Logik-und Leit-Ufitereinheit.
Wenn K20 = 1 ist, wird der Takt P-CLK nur zu den Logik-und Leit-Untereinheiten derjenigen Verarbeitungselemente
gesandt, wo G = 1. Die Logik- und Leit-Untereinheiten derjenigen Verarbeitungselemente, bei denen G=O ist, werden nicht getaktet
und ihre Register P ändern den Zustand nicht.
130039/1016
Translationsoperationen werden ausgeblendet, wenn die Steuerleitung
K20 = 1 ist. In den Verarbeitungselementen, wo G = 1 ist, wird das Register P getaktet durch P-CLK und erhält den
Zustand seines Nachbarn. In denjenigen Elementen, wo G-O ist, wird das Register P nicht getaktet und ändert den Zustand nicht.
Ohne Rücksicht darauf, ob G = 0 oder G=I ist, sendet jedes Verarbeitungselement den Zustand eines Registers P zu seinen
Nachbarn.
Nun wifd die Äquivalenzfunktion betrachtet, für welche durch
das Inklusiv-Oder-Gatter 138 gesorgt ist, welches ein logisches
1-Signal liefert, wenn seine Eingangssignale von den P- und G-Registern
gemeinsame Logikzustände aufweisen. Anders ausgedrückt liefert das Gatter 138 die Ausgangsfunktion P © G . Dieses
Resultat wird dann der Datenschiene zugeführt.
Das Register S umfaßt einen D-Flipflop 14-0 mit der Eingabe unter
der Kontrolle des Multiplexers 14-2. Das Ausgangssigrui I von dom
Register S wird auf die Datenschiene 5β übertragen mittels des
doppelseitigen gerichteten Übertragungsgatters 144. Der Flipflop
140 liest den Zustand seines Eingangs bei dem Übergang des Taktimpulses S-CLK-IN . Wenn die Steuerleitung K17 auf einer logischen
0 ist, erhält der Multiplexer 14? den Zustand des Registers
S des westlich unmittelbar benachbarten Verarbeitunqselementes.
In diesem Fall schiebt jeder Impuls S-CLK-IN die Daten in den Registern S um eine Stelle nach Osten. Um den Zustand des S-Registers
140 in dem örtlichen Speicher zu speichern, wird die Steuerleitung K18 auf eine logische 0 qesetzt, um das doppel-
/ und
seitig gerichtete Ubertragungsgatter 144 freizugeben 'das komplementäre
Ausgangssignal S-Registers 140 durch den Inverter 146 und zu der Datenschiene 58 durchzulassen. Das S-Register 140
kann mit einem Datenbit von dem lokalen Speicher 56 geladen werden, in dem K17 auf eine logische 1 gesetzt wird und so die Datenschiene
58 für die Eingabe von dem Flipflop 140 freiqeqeben wird.
130039/1016
Wie oben erwähnt, hat der große Parallelprozessor 10 die besondere
Eigenschaft, daß die Matrixanordnung 12 in der Lage ist, einen Satz von Spalten von Verarbeitungselementen 36 zu umgehen,
falls ein Irrtum oder Fehler in diesem Satz auftreten sollte. Wie oben besprochen, hat jedes Chip zwei Verarbeitungselemente 36 in
jeder von vier Spalten der Matrixanordnung. Die Erfindung sperrt Spalten von Chips und dementsprechend Sätze von Spalten von Vererbe
i tungselementen. Grundsätzlich werden die Spalten einfach dadurch außer Betrieb gesetzt, daß die Sätze von Spalten übersprungen
werden durch gegenseitige Verbindung der Eingänge und Ausgänge der östlichsten und westlichsten Verarbeitungselemente
auf den Chips, welche den Satz von Spalten bilden. Das Verfahren der Sperrung der Ausgangssignale des Summenoder-Baumes und des
Paritäts-Baumes der Chips ist oben beschrieben worden. Es ist
aber auch erforderlich, die Ausgaben der P- und S-Register zu umgehen,
welche mit den östlichen und westlichen Nachbarchips in Verbindung stehen.
Wie in Figur 5A gezeigt, umfaßt ein Chip acht Verarbeitungselemen
le PEO - PE7, die angeordnet sind wie früher beschrieben. Das Register S jedes Verarbeitungselementes kann Daten von dem Register
S des unmittelbar westlich benachbarten Verarbeitungselementes
erhalten und kann Daten auf das Reqister S des unmittelbar östlich benachbarten Verarbeitungselementes transferieren. Falls
/ von freigegeben, gestattet das Chip, daß Daten 7S-INO über die S-Register
von PEO - PE3 fließen und dann bei S-OUT 3 hinaus zu dem Nachbarchip. Ein ähnlicher Datenfluß erfolgt von S-1N7 nach S-0UT4.
Wenn es erwünscht ist, eine Spalte von Chips zu sperren, werden die Ausgangsgatter der Spalte von Chips gesperrt, welche
die S-Registerdaten zu dem benachbarten östlichen Chip leiten. Das heißt, das Steuersignal K25 kann die Ausgabegatter 14-8, 150
sperren und gleichzeitg damit dieUmgehungsgatter 152, 154 freigeben.
Dieses verbindet S-INO mit S-0UT3 und S-IN7 mit S-0UT4·
für alle Chips in der Spalte miteinander.
130039/1016
In Figur 5B ist zu sehen, daß die Verbindungen zwischen den P-Registern
östlich-westlich benachbarter Chips auch umgangen worden können. P-Registerdaten werden von dem Chip auf der Westseite
über Inverter 156, 158 erhalten und werden zu diesem durch Gatter 160, 162 übertragen. Ähnlich werden P-Registerdaten von
dem Chip auf der Ostseite erhalten über Inverter 16A-, 166 und zu diesem über Gatter 168, 170 übertragen. Wenn der Chip freigegeben
ist und P-Registerdaten nach Westen zu leiten sind, dann wird die Steuerleitung K6 auf eine logische 1 gesetzt und K26
auf eine logische 0, so daß die Gatter 160, 162 freigegeben werden
und die Gatter 168, 170 gesperrt werden. Bei Weiterleitung
nach Osten werden K6 auf 0 und K26 auf 1 gesetzt. Um den Chip zu sperren, werden K6 und K26 beide auf eine logische 0 gesetzt,
um alle Ost-West-Ausgaben des P-Registers von dem Chip zu sperren, und K25 wird gesetzt, um den doppelseitig gerichteten Umgehungsgattern 172, 174 zu gestatten, WEST-O mit OST-3 und WEST-7 mit
EAST-4- zu verbinden. Dieses verbindet die P-Register PE3 des
West-Chips mit PEO des Ost-Chips sowie PE4· des West-Chips mit
PE7 des Ost-Chips.
Durch Sperren der Paritäts- und Summenoder-Bäume und durch Überspringen
der Eingänge und Ausgänge angrenzender P- und S-Register der Chips in einer Spalte kann eine ganze Spalte von Chips außer
Dienst gestellt werden, falls ein Fehler ermittelt wird. Es versteht sich, daß zwar die Verarbeitungselemente der gesperrten
Chips nach Sperrung nicht aufhören zu arbeiten, aber einfach die Auswirkung ihrer Ausgangssignale auf das. System als Gan/.es beseitigt
wird. Ferner leuchtet ein, daß durch Beseitigung von Spalten nichts unternommen werden zu braucht bezüglich der Verbindung
zwischen nördlichen und südlichen Nachbarn untereinander. Schließlich wird durch Beseitigung kompletter Chips anstelle
von Spalten von Verarbeitungselementen die Menge von Umqehunqsgattern stark vermindert.
In der bevorzugten Ausfühhrungsform der Erfindung umfaßt die
Matrixanordnung 12 128 Reihen und 132 Spalten von Verarbe i. tungselementen
36.
1 30039/1016
Anders ausgedrückt sind 64- Reihen und 33 Spalten von Chips vorhanden.
Dementsprechend ist eine extra Spalte von Chips über die zur Erzielung der erwünschten quadratischen Anordnung notwendigen
Spalten vorhanden. Dies gestattet die Aufrechterhaltung einer
quadratischen Anordnung selbst dann, wenn ein fehlerhaftes Chip
gefunden ist und eine Spalte von Chips aus dem Dienst entfernt werden muß.
Es ist also ersichtlich, daß die Gegenstände der Erfindung durch den hier dargestellten Aufbau erfüllt worden sind. Ein großer
Parullelprozessor mit einer einzigen Matrixanordnung einer großen
Vielzahl von miteinander verbundenen und kommunizierenden Verarbeitungselementen
erzielt eine rasche Parallelverarbeitung. Ein Schieberegister variabler Länge gestattet bitserielle arithmetische
Berechnungen auf rasche Art und reduziert die Systemkosten. 3edes Verarbeitungselement ist in der Lage, sämtliche
erforderlichen mathematischen Berechnungen und logischen Funktionen
auszuführen und ist ferner in der Lage, nicht nur mit benachbarten Verarbeitungselementen zu verkehren sondern auch mit sein
nem eigenen ganzheitlich zugeordnetem Speicher mit Direktzugriff.
Vorsorge ist getroffen zur Beseitigung einer vollständigen Spalte von Verarbeitungschips, in welchen wenigstens ein Verarbeitungselement
mit einem Fehler gefunden worden ist. Dieser Aufbau führt insgesamt zu einem höchst zuverlässigen Datenprozessor, welcher
in der Lage ist, große Mengen von Daten in rascher Weise zu handhaben.
Obzwar nur das beste Vorgehen und bevorzugte Ausführungsform der
Erfindung im einzelnen beschrieben worden sind, versteht e:sich, daß die Erfindung nicht dadurch oder darauf beschränkt ist.
Folglich sollte zur Würdigung des wahren Rahmens und der Breite der Erfindung auf die Ansprüche Bezug genommen werden.
Der Patentanwalt
130039/1018
Claims (6)
1.) Matrixanordnung einer Vielzahl von Verarbeitungselementen,
die untereinander verbunden sind, dadurch gekennzeichnet, daß jedes Verarbeitungselement (36) einen Addierer (50) umfaßt,
ferner ein erstes und ein zweites Datenregister (42,38), die mit dem Addierer verbunden sind und ihm Datenbits zuführen,
ein Übertragregister (46), das mit dem Addierer (50) verbunden
ist und von diesem aus arithmetischen Operationen folgende Datenbits erhalt, einen Speicher sowie eine Daten-Sammelschiene
(58), die das erste, das zweite und das Übertragregister (42, 38, 46) und den Speicher zum Datentransfer zwischen diesen unter
einander verbindet.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß jedes Verarbeitungselement (36) ein Schieberegister (48) wahlweise
veränderlicher Länge enthält, welches zwischen das erste Datenregister (42) und den Addierer (50) zwischengeschaJtet ist.
3. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß das Übertragregister (46) einen 3-K-Flipflop (104) aufweist, der
nach der Regel C ^— APvPCvAC arbeitet, worin A der Zustand des
ersten Registers (42), P der Zustand des zweiten Registers (38) und C der Zustand des Übertragregisters (46) sind.
4. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß
jedns Verarbeitungselement (36) ein Summenregister (44) umfaßt,
d.ir. /wischen das Schieberegister (48) und den Addierer (50)
130039/1016
ORIGINAL INSPECTED
/wischenqeschaltet ist und nach der Reqel B <— A©P©C arbeitet,
worin B, A, P und C die jeweiligen Zustände des Summen-, des ersten, des zweiten und des Übertraqreqisters sind.
5. Anordnunq nach Anspruch 1, dadurch gekennzeichnet, daß jedes Verarbeitungselement (36) eine Loqikeinrichtunq (40) umfaßt, die
mit dem zweiten Reqister (38) verbunden ist zur Durchführunq der sechzehn logischen Funktionen, die zwischen den Daten des zweiten
Registers und einem Datenbit von der Datensammelschiene (58) möglich sind.
6. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß das
zweite Register (38) jedes Verarbeitunqselementes (36) kommunikativ
verbunden ist mit dem zweiten Register (38) orthogonal benachbarter Verarbeitunqselemente (36) innerhalb der Matrixanordn
u η g (12).
130039/1016
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/108,883 US4314349A (en) | 1979-12-31 | 1979-12-31 | Processing element for parallel array processors |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3049437A1 true DE3049437A1 (de) | 1981-09-24 |
DE3049437C2 DE3049437C2 (de) | 1984-11-15 |
Family
ID=22324619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3049437A Expired DE3049437C2 (de) | 1979-12-31 | 1980-12-30 | Matrixanordnung einer Vielzahl von Verarbeitungselementen |
Country Status (7)
Country | Link |
---|---|
US (1) | US4314349A (de) |
JP (1) | JPS56101262A (de) |
CA (1) | CA1154168A (de) |
DE (1) | DE3049437C2 (de) |
FR (1) | FR2472784A1 (de) |
GB (2) | GB2062915B (de) |
IT (1) | IT1134924B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0981079A2 (de) * | 1998-08-17 | 2000-02-23 | Philips Corporate Intellectual Property GmbH | Programmierbare 1-Bit Datenverarbeitungsanordnung |
Families Citing this family (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ZA811458B (en) * | 1980-03-28 | 1982-03-31 | Int Computers Ltd | Data processing system |
US4507726A (en) * | 1982-01-26 | 1985-03-26 | Hughes Aircraft Company | Array processor architecture utilizing modular elemental processors |
JPS59501183A (ja) * | 1982-06-25 | 1984-07-05 | ヒユ−ズ・エアクラフト・カンパニ− | 機能プログラマブル短絡プレーン |
US4745546A (en) * | 1982-06-25 | 1988-05-17 | Hughes Aircraft Company | Column shorted and full array shorted functional plane for use in a modular array processor and method for using same |
US4507748A (en) * | 1982-08-02 | 1985-03-26 | International Telephone And Telegraph Corporation | Associative processor with variable length fast multiply capability |
GB2129589B (en) * | 1982-11-08 | 1986-04-30 | Nat Res Dev | Array processor cell |
US4549280A (en) * | 1982-12-20 | 1985-10-22 | Sperry Corporation | Apparatus for creating a multiplication pipeline of arbitrary size |
US4739474A (en) * | 1983-03-10 | 1988-04-19 | Martin Marietta Corporation | Geometric-arithmetic parallel processor |
JPS59172064A (ja) * | 1983-03-18 | 1984-09-28 | Fujitsu Ltd | ビデオ・システムにおける並列処理方式 |
US4814973A (en) * | 1983-05-31 | 1989-03-21 | Hillis W Daniel | Parallel processor |
US5146608A (en) * | 1983-05-31 | 1992-09-08 | Hillis W Daniel | Parallel processor array system controlled in response to composition status signal |
US4621339A (en) * | 1983-06-13 | 1986-11-04 | Duke University | SIMD machine using cube connected cycles network architecture for vector processing |
US4616330A (en) * | 1983-08-25 | 1986-10-07 | Honeywell Inc. | Pipelined multiply-accumulate unit |
DE3506749A1 (de) * | 1984-02-27 | 1985-09-26 | Nippon Telegraph & Telephone Public Corp., Tokio/Tokyo | Matrixprozessor und steuerverfahren hierfuer |
CA1233260A (en) * | 1985-03-13 | 1988-02-23 | Chuck H. Ngai | High performance parallel vector processor having a modified vector register/element processor configuration |
GB8521672D0 (en) * | 1985-08-30 | 1985-10-02 | Univ Southampton | Data processing device |
US4852048A (en) * | 1985-12-12 | 1989-07-25 | Itt Corporation | Single instruction multiple data (SIMD) cellular array processing apparatus employing a common bus where a first number of bits manifest a first bus portion and a second number of bits manifest a second bus portion |
US4797852A (en) * | 1986-02-03 | 1989-01-10 | Intel Corporation | Block shifter for graphics processor |
GB8612454D0 (en) * | 1986-05-22 | 1986-07-02 | Inmos Ltd | Redundancy scheme for multi-stage apparatus |
JPS6364178A (ja) * | 1986-08-29 | 1988-03-22 | インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション | 画像処理システム |
US4910665A (en) * | 1986-09-02 | 1990-03-20 | General Electric Company | Distributed processing system including reconfigurable elements |
US5170484A (en) * | 1986-09-18 | 1992-12-08 | Digital Equipment Corporation | Massively parallel array processing system |
US5146606A (en) * | 1986-09-18 | 1992-09-08 | Digital Equipment Corporation | Systems for interconnecting and configuring plurality of memory elements by control of mode signals |
US4985832A (en) * | 1986-09-18 | 1991-01-15 | Digital Equipment Corporation | SIMD array processing system with routing networks having plurality of switching stages to transfer messages among processors |
US6108763A (en) * | 1986-09-18 | 2000-08-22 | Grondalski; Robert S. | Simultaneous parity generating/reading circuit for massively parallel processing systems |
JPS63192153A (ja) * | 1987-02-05 | 1988-08-09 | Agency Of Ind Science & Technol | 並列デ−タ処理装置 |
US5163133A (en) * | 1987-02-17 | 1992-11-10 | Sam Technology, Inc. | Parallel processing system having a broadcast, result, and instruction bus for transmitting, receiving and controlling the computation of data |
JPH0727515B2 (ja) * | 1987-03-05 | 1995-03-29 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 2次元メッシュ・アレイの処理要素 |
US5058001A (en) * | 1987-03-05 | 1991-10-15 | International Business Machines Corporation | Two-dimensional array of processing elements for emulating a multi-dimensional network |
JPH0833842B2 (ja) * | 1987-05-01 | 1996-03-29 | 株式会社日立製作所 | 論理演算装置 |
US5129092A (en) * | 1987-06-01 | 1992-07-07 | Applied Intelligent Systems,Inc. | Linear chain of parallel processors and method of using same |
US4847612A (en) * | 1988-01-13 | 1989-07-11 | Plug Logic, Inc. | Programmable logic device |
US5023606A (en) * | 1988-01-13 | 1991-06-11 | Plus Logic, Inc. | Programmable logic device with ganged output pins |
USRE34444E (en) * | 1988-01-13 | 1993-11-16 | Xilinx, Inc. | Programmable logic device |
US5179705A (en) * | 1988-03-23 | 1993-01-12 | Dupont Pixel Systems, Ltd. | Asynchronous arbiter state machine for arbitrating between operating devices requesting access to a shared resource |
US5038282A (en) * | 1988-05-11 | 1991-08-06 | Massachusetts Institute Of Technology | Synchronous processor with simultaneous instruction processing and data transfer |
JP2930341B2 (ja) * | 1988-10-07 | 1999-08-03 | マーチン・マリエッタ・コーポレーション | データ並列処理装置 |
US5020059A (en) * | 1989-03-31 | 1991-05-28 | At&T Bell Laboratories | Reconfigurable signal processor |
US4967107A (en) * | 1989-05-12 | 1990-10-30 | Plus Logic, Inc. | Programmable logic expander |
US5253308A (en) * | 1989-06-21 | 1993-10-12 | Amber Engineering, Inc. | Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing |
CA2021192A1 (en) * | 1989-07-28 | 1991-01-29 | Malcolm A. Mumme | Simplified synchronous mesh processor |
US5297289A (en) * | 1989-10-31 | 1994-03-22 | Rockwell International Corporation | System which cooperatively uses a systolic array processor and auxiliary processor for pixel signal enhancement |
GB8925723D0 (en) * | 1989-11-14 | 1990-01-04 | Amt Holdings | Processor array system |
JPH05506113A (ja) * | 1990-01-05 | 1993-09-02 | マスパー・コンピューター・コーポレイション | 並列プロセッサメモリシステム |
JPH05506526A (ja) * | 1990-01-05 | 1993-09-22 | マスパー・コンピューター・コーポレイション | クワッドクロスバー及びハイパーバーパーソナリティを備えるラウタチップ |
US5280474A (en) * | 1990-01-05 | 1994-01-18 | Maspar Computer Corporation | Scalable processor to processor and processor-to-I/O interconnection network and method for parallel processing arrays |
IT1247640B (it) * | 1990-04-26 | 1994-12-28 | St Microelectronics Srl | Operazioni booleane tra due qualsiasi bit di due qualsiasi registri |
US5247613A (en) * | 1990-05-08 | 1993-09-21 | Thinking Machines Corporation | Massively parallel processor including transpose arrangement for serially transmitting bits of data words stored in parallel |
US5101371A (en) * | 1990-06-04 | 1992-03-31 | The United States Of America As Represented By The Director Of The National Security Agency | Apparatus for performing a bit serial orthogonal transformation instruction |
US5752067A (en) * | 1990-11-13 | 1998-05-12 | International Business Machines Corporation | Fully scalable parallel processing system having asynchronous SIMD processing |
US5630162A (en) * | 1990-11-13 | 1997-05-13 | International Business Machines Corporation | Array processor dotted communication network based on H-DOTs |
US5815723A (en) * | 1990-11-13 | 1998-09-29 | International Business Machines Corporation | Picket autonomy on a SIMD machine |
US5966528A (en) * | 1990-11-13 | 1999-10-12 | International Business Machines Corporation | SIMD/MIMD array processor with vector processing |
US5590345A (en) * | 1990-11-13 | 1996-12-31 | International Business Machines Corporation | Advanced parallel array processor(APAP) |
US5963746A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | Fully distributed processing memory element |
US5794059A (en) * | 1990-11-13 | 1998-08-11 | International Business Machines Corporation | N-dimensional modified hypercube |
US5765012A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Controller for a SIMD/MIMD array having an instruction sequencer utilizing a canned routine library |
US5809292A (en) * | 1990-11-13 | 1998-09-15 | International Business Machines Corporation | Floating point for simid array machine |
US5588152A (en) * | 1990-11-13 | 1996-12-24 | International Business Machines Corporation | Advanced parallel processor including advanced support hardware |
US5828894A (en) * | 1990-11-13 | 1998-10-27 | International Business Machines Corporation | Array processor having grouping of SIMD pickets |
US5734921A (en) * | 1990-11-13 | 1998-03-31 | International Business Machines Corporation | Advanced parallel array processor computer package |
ATE180586T1 (de) * | 1990-11-13 | 1999-06-15 | Ibm | Paralleles assoziativprozessor-system |
US5617577A (en) * | 1990-11-13 | 1997-04-01 | International Business Machines Corporation | Advanced parallel array processor I/O connection |
US5765015A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Slide network for an array processor |
US5765011A (en) * | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams |
US5625836A (en) * | 1990-11-13 | 1997-04-29 | International Business Machines Corporation | SIMD/MIMD processing memory element (PME) |
US5963745A (en) * | 1990-11-13 | 1999-10-05 | International Business Machines Corporation | APAP I/O programmable router |
JPH06103599B2 (ja) * | 1990-11-16 | 1994-12-14 | 三菱電機株式会社 | 半導体集積回路装置 |
US6378061B1 (en) * | 1990-12-20 | 2002-04-23 | Intel Corporation | Apparatus for issuing instructions and reissuing a previous instructions by recirculating using the delay circuit |
US5594918A (en) * | 1991-05-13 | 1997-01-14 | International Business Machines Corporation | Parallel computer system providing multi-ported intelligent memory |
WO1993014459A1 (en) * | 1992-01-17 | 1993-07-22 | Caelum Research Corporation | Modular parallel processing system |
US5506992A (en) * | 1992-01-30 | 1996-04-09 | Saxenmeyer; George | Distributed processing system with asynchronous communication between processing modules |
JP2642039B2 (ja) * | 1992-05-22 | 1997-08-20 | インターナショナル・ビジネス・マシーンズ・コーポレイション | アレイ・プロセッサ |
US5542074A (en) * | 1992-10-22 | 1996-07-30 | Maspar Computer Corporation | Parallel processor system with highly flexible local control capability, including selective inversion of instruction signal and control of bit shift amount |
US5450604A (en) * | 1992-12-18 | 1995-09-12 | Xerox Corporation | Data rotation using parallel to serial units that receive data from memory units and rotation buffer that provides rotated data to memory units |
US5428804A (en) * | 1992-12-18 | 1995-06-27 | Xerox Corporation | Edge crossing circuitry for SIMD architecture |
KR940022276A (ko) * | 1993-03-11 | 1994-10-20 | 오오가 노리오 | 병렬연산 처리장치 |
US6073185A (en) * | 1993-08-27 | 2000-06-06 | Teranex, Inc. | Parallel data processor |
US5557734A (en) * | 1994-06-17 | 1996-09-17 | Applied Intelligent Systems, Inc. | Cache burst architecture for parallel processing, such as for image processing |
JPH0830577A (ja) * | 1994-07-15 | 1996-02-02 | Mitsubishi Electric Corp | Simdプロセッサ |
US5590356A (en) * | 1994-08-23 | 1996-12-31 | Massachusetts Institute Of Technology | Mesh parallel computer architecture apparatus and associated methods |
WO1996008778A1 (en) * | 1994-09-13 | 1996-03-21 | Lockheed Martin Corporation | Parallel data processor |
US6140838A (en) | 1995-04-21 | 2000-10-31 | Johnson; Mark B. | High density and high speed magneto-electronic logic family |
US7050329B2 (en) * | 1995-04-21 | 2006-05-23 | Johnson Mark B | Magnetic spin based memory with inductive write lines |
US6064083A (en) | 1995-04-21 | 2000-05-16 | Johnson; Mark B. | Hybrid hall effect memory device and method of operation |
US6741494B2 (en) * | 1995-04-21 | 2004-05-25 | Mark B. Johnson | Magnetoelectronic memory element with inductively coupled write wires |
US6067633A (en) * | 1998-03-31 | 2000-05-23 | International Business Machines Corp | Design and methodology for manufacturing data processing systems having multiple processors |
US6067609A (en) * | 1998-04-09 | 2000-05-23 | Teranex, Inc. | Pattern generation and shift plane operations for a mesh connected computer |
US6173388B1 (en) | 1998-04-09 | 2001-01-09 | Teranex Inc. | Directly accessing local memories of array processors for improved real-time corner turning processing |
US6185667B1 (en) | 1998-04-09 | 2001-02-06 | Teranex, Inc. | Input/output support for processing in a mesh connected computer |
US6212628B1 (en) | 1998-04-09 | 2001-04-03 | Teranex, Inc. | Mesh connected computer |
WO2000019608A2 (de) * | 1998-09-30 | 2000-04-06 | Koninklijke Philips Electronics N.V. | Schaltungsanordnung zum verarbeiten von datensignalen |
US7966475B2 (en) | 1999-04-09 | 2011-06-21 | Rambus Inc. | Parallel data processing apparatus |
US7627736B2 (en) | 1999-04-09 | 2009-12-01 | Clearspeed Technology Plc | Thread manager to control an array of processing elements |
GB2349484A (en) * | 1999-04-09 | 2000-11-01 | Pixelfusion Ltd | Parallel data processing system with SIMD array |
US7506136B2 (en) | 1999-04-09 | 2009-03-17 | Clearspeed Technology Plc | Parallel data processing apparatus |
US7802079B2 (en) | 1999-04-09 | 2010-09-21 | Clearspeed Technology Limited | Parallel data processing apparatus |
US7526630B2 (en) | 1999-04-09 | 2009-04-28 | Clearspeed Technology, Plc | Parallel data processing apparatus |
US8169440B2 (en) | 1999-04-09 | 2012-05-01 | Rambus Inc. | Parallel data processing apparatus |
JP5285828B2 (ja) | 1999-04-09 | 2013-09-11 | ラムバス・インコーポレーテッド | 並列データ処理装置 |
US8174530B2 (en) | 1999-04-09 | 2012-05-08 | Rambus Inc. | Parallel date processing apparatus |
US8171263B2 (en) | 1999-04-09 | 2012-05-01 | Rambus Inc. | Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions |
US8762691B2 (en) | 1999-04-09 | 2014-06-24 | Rambus Inc. | Memory access consolidation for SIMD processing elements using transaction identifiers |
US6307774B1 (en) | 2000-03-22 | 2001-10-23 | Mark B. Johnson | Magnetoelectronic memory array |
US6728862B1 (en) | 2000-05-22 | 2004-04-27 | Gazelle Technology Corporation | Processor array and parallel data processing methods |
US7142669B2 (en) * | 2000-11-29 | 2006-11-28 | Freescale Semiconductor, Inc. | Circuit for generating hash values |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
US7231500B2 (en) * | 2001-03-22 | 2007-06-12 | Sony Computer Entertainment Inc. | External data interface in a computer architecture for broadband networks |
US7516334B2 (en) * | 2001-03-22 | 2009-04-07 | Sony Computer Entertainment Inc. | Power management for processing modules |
US7409488B2 (en) * | 2002-07-23 | 2008-08-05 | International Business Machines Inc | Data processing system |
US8224639B2 (en) | 2004-03-29 | 2012-07-17 | Sony Computer Entertainment Inc. | Methods and apparatus for achieving thermal management using processing task scheduling |
HUP0500482A2 (en) * | 2005-05-11 | 2006-12-28 | Mta Szamitastech Autom Kutato | System and method for sensing and processing electromagnetic signals |
JP6511937B2 (ja) * | 2015-04-24 | 2019-05-15 | 富士通株式会社 | 並列計算機システム、演算方法、演算プログラム、及び情報処理装置 |
US11200186B2 (en) * | 2018-06-30 | 2021-12-14 | Intel Corporation | Apparatuses, methods, and systems for operations in a configurable spatial accelerator |
US11049586B2 (en) | 2019-11-26 | 2021-06-29 | Mythic, Inc. | Systems and methods for implementing redundancy for tile-based intelligence processing computing architecture |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1220088A (en) * | 1966-12-29 | 1971-01-20 | James Hughson Case | Improvements in or relating to digital computing and information processing machine and system |
GB1445714A (en) * | 1973-04-13 | 1976-08-11 | Int Computers Ltd | Array processors |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3296426A (en) * | 1963-07-05 | 1967-01-03 | Westinghouse Electric Corp | Computing device |
US3364472A (en) * | 1964-03-06 | 1968-01-16 | Westinghouse Electric Corp | Computation unit |
US3313926A (en) * | 1965-04-26 | 1967-04-11 | Stanford Research Inst | Microelectronic cellular array |
US3602886A (en) * | 1968-07-25 | 1971-08-31 | Ibm | Self-checking error checker for parity coded data |
US3701976A (en) * | 1970-07-13 | 1972-10-31 | Bell Telephone Labor Inc | Floating point arithmetic unit for a parallel processing computer |
US4037094A (en) * | 1971-08-31 | 1977-07-19 | Texas Instruments Incorporated | Multi-functional arithmetic and logical unit |
ZA742069B (en) * | 1973-04-13 | 1975-03-26 | Int Computers Ltd | Improvements in or relating to array processors |
JPS5521222B2 (de) * | 1973-07-31 | 1980-06-07 | ||
JPS5334986B2 (de) * | 1974-05-31 | 1978-09-25 | ||
US4065808A (en) * | 1975-01-25 | 1977-12-27 | U.S. Philips Corporation | Network computer system |
US4051354A (en) * | 1975-07-03 | 1977-09-27 | Texas Instruments Incorporated | Fault-tolerant cell addressable array |
FR2361718A1 (fr) * | 1976-08-11 | 1978-03-10 | Adersa | Processeur parallele associatif a hierarchie de memoire, notamment pour l'acquisition et le traitement rapides des signaux |
US4207556A (en) * | 1976-12-14 | 1980-06-10 | Nippon Telegraph And Telephone Public Corporation | Programmable logic array arrangement |
JPS5485647A (en) * | 1977-12-21 | 1979-07-07 | Hitachi Ltd | Operation unit |
-
1979
- 1979-12-31 US US06/108,883 patent/US4314349A/en not_active Expired - Lifetime
-
1980
- 1980-09-26 CA CA000361873A patent/CA1154168A/en not_active Expired
- 1980-12-04 GB GB8038868A patent/GB2062915B/en not_active Expired
- 1980-12-25 JP JP18296480A patent/JPS56101262A/ja active Pending
- 1980-12-30 DE DE3049437A patent/DE3049437C2/de not_active Expired
- 1980-12-30 IT IT27013/80A patent/IT1134924B/it active
- 1980-12-31 FR FR8027884A patent/FR2472784A1/fr not_active Withdrawn
-
1983
- 1983-09-13 GB GB08324470A patent/GB2140589B/en not_active Expired
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1220088A (en) * | 1966-12-29 | 1971-01-20 | James Hughson Case | Improvements in or relating to digital computing and information processing machine and system |
GB1445714A (en) * | 1973-04-13 | 1976-08-11 | Int Computers Ltd | Array processors |
Non-Patent Citations (1)
Title |
---|
IEEE Transactions on Computers, Vol. C-18, No. 9, Sept. 1969, S. 800-816 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0981079A2 (de) * | 1998-08-17 | 2000-02-23 | Philips Corporate Intellectual Property GmbH | Programmierbare 1-Bit Datenverarbeitungsanordnung |
DE19837101A1 (de) * | 1998-08-17 | 2000-02-24 | Philips Corp Intellectual Pty | Programmierbare 1-Bit Datenverarbeitungsanordnung |
DE19837101C2 (de) * | 1998-08-17 | 2000-11-23 | Philips Corp Intellectual Pty | Programmierbare 1-Bit Datenverarbeitungsanordnung |
EP0981079A3 (de) * | 1998-08-17 | 2005-11-23 | Philips Intellectual Property & Standards GmbH | Programmierbare 1-Bit Datenverarbeitungsanordnung |
Also Published As
Publication number | Publication date |
---|---|
CA1154168A (en) | 1983-09-20 |
DE3049437C2 (de) | 1984-11-15 |
GB2140589A (en) | 1984-11-28 |
FR2472784A1 (fr) | 1981-07-03 |
JPS56101262A (en) | 1981-08-13 |
IT8027013A0 (it) | 1980-12-30 |
IT1134924B (it) | 1986-08-20 |
US4314349A (en) | 1982-02-02 |
GB2140589B (en) | 1985-06-05 |
GB2062915A (en) | 1981-05-28 |
GB2062915B (en) | 1985-01-03 |
GB8324470D0 (en) | 1983-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3049437A1 (de) | Matrixanordnung einer vielzahl von verarbeitungselementen fuer parallelprozessoren | |
EP0875031B1 (de) | Prozessor zur bildverarbeitung | |
DE2724125C2 (de) | ||
DE19722365B4 (de) | Rekonfigurierbares Rechenbauelement | |
DE19835216B4 (de) | Prozessor und Verfahren zur parallelen Datenverarbeitung | |
DE19914210B4 (de) | Verfahren und Prozessor für eine gestaffelte Ausführung einer Anweisung | |
DE69827589T2 (de) | Konfigurierbare Verarbeitungsanordnung und Verfahren zur Benutzung dieser Anordnung, um eine Zentraleinheit aufzubauen | |
DE2819571C2 (de) | ||
EP0308660B1 (de) | Vorrichtung zur Herstellung einer testkompatiblen, weitgehend fehlertoleranten Konfiguration von redundant implementierten systolischen VLSI-Systemen | |
DE4417575C2 (de) | Verbesserte Array-Architektur für programmierbare logische Zellen | |
DE2716369C2 (de) | ||
DE3933171A1 (de) | Einzelchip-prozessor fuer komplexe gleitkommazahlen | |
DE2524046C2 (de) | Elektronische Datenverarbeitungsanlage | |
DE4134192A1 (de) | Integrierter schaltkreis mit verarbeitung im speicher | |
DE1549523B2 (de) | Datenverarbeitungsanlage | |
DE3314917A1 (de) | Multimicroprozessor-system | |
DE60033624T2 (de) | Rekonfigurierungsverfahren für ein gatter von identischen funktionselementen | |
DE602004009324T2 (de) | Integrierte datenverarbeitungsschaltung mit mehreren programmierbaren prozessoren | |
DE102020113922A1 (de) | Multipliziererschaltungsanordnung mit reduzierter latenz für sehr grosse zahlen | |
DE19524862A1 (de) | SIMD-Prozessor, welcher mit einer Mehrzahl von Parallelverarbeitungselementen in Synchronisation in Betrieb ist | |
DE112021002239T5 (de) | Deep learning-beschleuniger und direktzugriffsspeicher mit einer kameraschnittstelle | |
DE112019000676T5 (de) | Zentraler scheduler und anweisungszuteiler für einen neuronalen inferenzprozessor | |
DE3909153C2 (de) | ||
DE2730918A1 (de) | Anordnung zum multiplizieren von binaerzahlen | |
EP0557314A1 (de) | Schaltungsanordnung zur berechnung von matrixoperationen in der signalverarbeitung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification | ||
8126 | Change of the secondary classification | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |