DE1914560B2 - Schaltungsanordnung zur verschiebung eines datenwortes innerhalb eines rechenelementen-feldes - Google Patents
Schaltungsanordnung zur verschiebung eines datenwortes innerhalb eines rechenelementen-feldesInfo
- Publication number
- DE1914560B2 DE1914560B2 DE19691914560 DE1914560A DE1914560B2 DE 1914560 B2 DE1914560 B2 DE 1914560B2 DE 19691914560 DE19691914560 DE 19691914560 DE 1914560 A DE1914560 A DE 1914560A DE 1914560 B2 DE1914560 B2 DE 1914560B2
- Authority
- DE
- Germany
- Prior art keywords
- data word
- bits
- elements
- subfield
- shift register
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
- G06F15/17368—Indirect interconnection networks non hierarchical topologies
- G06F15/17381—Two dimensional, e.g. mesh, torus
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
- Medicines Containing Plant Substances (AREA)
- Executing Machine-Instructions (AREA)
Description
Die Erfindung betrifft eine Schaltungsanordnung zur Verschiebung eines Datenwortes von m Bit Länge um Y
Datenwortstellen innerhalb eines Feldes von wenigstens m Rechenelementen in einer Datenverarbeitungsanlage
mitiels mehrerer Umlaufschieberegister, die an eine gemeinsame Umlaufsteuerung angeschlossen sind.
Aus dem IBM Technical Disclosure Bulletin, Vol. 9 No. 9,
Februar 1957, Seiten 1145/7 ist ein Datenverteilungskanal
für Mehrprozessor-Systeme bekannt, bei welchem eine erste Reihe von Prozessoren mit einer zweiten
gleich langen Reihe von Prozessoren über eine solche Anzahl von Schieberegistern verbunden ist, die gleich
der Anzahl der Bitstellen in jedem Prozessor ist. Jedes Schieberegister hat so viele Bitstellen wie Prozessoren
in einer Reihe vorhanden sind. Diese Einrichtung hat den Nachteil, daß eine gesonderte Schieberegisterreihe
außerhalb der Rechenelemente erforderlich ist. Ferner müssen bei Verschiebung eines Datenwortes innerhalb
eines mehrere Zeilen enthaltenden Feldes von Rechenelementen die Ausgangs- und BestimmungszeiU: jeweils
gesondert mit der Schieberegisterreihe verbunden werden.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Verschiebung eines Datenwortes innerhalb eines
Rechenelementenfeldes um V Datenwortstellen zu
ermöglichen, wobei lediglich in Zeilenrichtung verschiebbare
Umiaufschieberegisier ttii Verfügung stehen.
Zur Lösung ist nach der Erfindung vorgesehen, daß jedes Rechenelement ein Umlaufschieberegister von
wenigstens m Bit Länge enthält, in welchem das in dem Rechenelement enthaltene Datenwort gespeichert ist,
daß jeweils die /-te Speicherstelle des /-ten Schieberegisters
mit der /-ten Speicherstelle des /ten Schieberegisters verbunden ist, wobei / und / die ganzen Zahlen
zwischen 0 und m durchlaufen, daß i.ur Verschiebung des Datenwortes von einem ersten in das um Y
ίο Datenwortstellen entfernte zweite Rechenelement die Inhalte der miteinander verbundenen Speicherstellen
vertauscht und die Inhalte aller Umlaufschieberegister um Y Bitstellen verschoben werden, und daß die Inhalte
der verbundenen Speicherstellen erneut vertauscht werden. Auf diese Weise kann ein in einer beliebigen
Zeile enthaltenes Datenwort ohne Schaffung zusätzlicher Verbindungen in eine andere Zeile verschoben
werden. Zwar werden dabei gleichzeitig sämtliche Datenwörter um in den gleichen Betrag mit verschoben,
jedoch ist dies in den praktisch vorkommenden Fällen kein Nachteil.
Wenn das Rechenelementenfeld aus mehreren Unterfeldern von den m Rechenelementen besteht,
dann ist in zweckmäßiger Weiterführung der Erfindung J5 vorgesehen, daß zur Verschiebung des Datenwortes von
einem Unterfeld zu einem anderen Unterfeld die /te Speicherstelle des /-ten Umlauischieberegisters eines
Unterfeldes mit der /-ten Speicherstelle des /-ten Umlaufschieberegisters des benachbarten Unterfeldes
verbunden ist. Auch hierbei werden keine außerhalb liegende Zwischenspeicher und außerhalb des Rechenelementenfeldes
liegende Kanäle zur Verschiebung des Datenwortes benötigt.
Ausführungsbeispiele der Erfindung werden nun anhand der Zeichnungen beschrieben. Es zeigt
Fig. 1 ein aus fünf Rechenelementen aufgebautes Feld mit den Verbindungen, die für das Verschieben des
Datenwortes notwendig sind;
Fig.2 ein schematisches Blockschaltbild des Abschnittes
eines Rechenelementes, der zum Verschieben eines Datenwortes verwendet werden kann;
F i g. 3 die Anordnung der Bits in den Umlaufschieberegistern des Rechenelementes aus F i g. 1 vor einem
Verschiebevorgang;
F i g. 4 die Anordnung der Bits in den Rechenelementen
aus Fig. 1, nachdem die Zeilen und Spalten vertauscht wurden;
Fig.5 die Anordnung der Bits in dem Rechenelement,
nachdem die Bits um den Verschiebebetrag verschoben wurden;
F i g. 6 die Anordnung der Bits in dem Recheneiementcnfeid
am Ende des Verschiebevorganges;
F i g. 7 die Anordnung der Bits vor einem Verschiebevorgang in einem Feld, das aus Rechenelementen mit
einer Wortlänge aufgebaut ist, die kürzer als die Zahl der Rechenelemente ist;
F i g. 8 die Anordnung der Bits des Feldes aus F i g. 7
während des Verschiebevorganges;
F i g. 9a und 9b die Anordnung der Bits in einem Feld aus Rochenelementen vor dem Verschiebevorgang,
wobei das Feld aus zwei Teilfeldern aufgebaut ist;
Fig. 10 die notwendigen Verbindungen, um die
Daten in dem aus zehn Rechenelementen aufgebauten Feld zu verschieben, das aus zwei Teilfeldern besteht;
Fig. 11A und IIB die Anordnung der Bits in dem in F i g. 9 gezeigten Feld während der Ausführung des Vcrschiebevorganges;
Fig. 11A und IIB die Anordnung der Bits in dem in F i g. 9 gezeigten Feld während der Ausführung des Vcrschiebevorganges;
Fig. 12 die Anordnung der Bits in einem Feld, bei
dem die Wortlänge größer als die Zahl der Rechenelemente ist;
Fig. 13 die Anordnung der Bits in dem in Fig. 12 gezeigten Feld zu einem bestimmten Zeitpunkt
während des Verschiebevorgangey.
In der Beschreibung sind die Bits in dem Umlaufschieberegister
der Rechenelemente bei Beginn des Verschiebevorganges durch große Buchstaben bezeichnet,
wobei für jedes Rechenelement ein anderer Buchstabe verwendet wird. Der untere Index der Buchstaben zeigt
die Stellung des Bits in dem Register bei Beginn des Verschiebevorgangs an, und der obere index zeigt die
Zahl des Teilfeldes an, in dem das Bit bei Beginn des Verschiebevorganges erscheint.
In Fig. 1 ist ein Feld aus fünf Rechenelementen 11 gezeigt, die jeweils eine Wortlänge von 5 Bits haben.
Jedes Rechenelement 11 ist durch in beiden Richtungen durchgängige, ein Bit breite Leitungen mit jedem
anderen Rechenelement 11 des Feldes verbunden, um das Verschieben der Daten zwischen den Rechenelementen
durchführen zu können.
Die Abschnitte der Rechenelemente 11, die zum Verschieben der Daten eines Wortes verwendet werden
können, sind in F i g. 2 gezeigt. Das Wort, das in ein anderes Rechenelement 11 verschoben werden soll, ist
in dem Umlaufschieberegister 13 gespeichert. Das Verschieben wird in drei Schruien durchgeführt.
Zunächst werden vier der fünf Bits des in dem Umlaufschieberegister 13 gespeicherten Wortes durch
die Treiber 15 in je eines der anderen Rechenclemente U des Feldes übertragen, und vom Umlaufschieberegister
13 wird von jedem der anderen vier Rechenelemente Il des Feldes ein Bit über die Empfänger 17
aufgenommen. Während des zweiten Schrittes werden die im Umlaufschieberegister 13 befindlichen Bits durch
eine Verschiebeeinrichtung 19 um den Verschiebebetrag verschoben; die Verschiebeeinrichtung kann als
Walzenschalter oder Schieberegister ausgeführt sein. Als letzter Schritt des Verschiebevorganges wird der
erste Schritt wiederholt.
Die Durchführung des Verschiebens von Wörtern zwischen den in F i g. 1 gezeigten Rechenelementen 11
ist im Zusammenhang mit den F i g. 3 bis 6 beschrieben. In Fig.3 sind die Umlaufschieberegister 13 jedes
Rechenelementes 11 in Matrixform angeordnet, wobei die Rechenelemente 11 vertikal untereinander aufgeführt
und die Bitnummern in den Umlaufschieberegistern 13 jedes Rechenelementes 11 horizontal aufgeführt
sind.
Ursprünglich befindet sich das Λ-Wort im ersten Rechenelement, das ß-Wort im zweiten Rechenelement,
das C-Wort im dritten Rechenelement, das D-Wort im vierten Rechenelement und das E-Wort im
fünften Rechenelement. Im ersten Schritt des Verschiebevorganges sendet jedes Rechenelement 11 vier seiner
in seinem Umlaufschieberegister 13 enthaltenen Bits je einem anderen Rechenelement 11, und zwar so, daß die
Zeilen und Spalten der Bits in der Matrix der Umlaufschieberegistcr 13 vertauscht werden, wie in
Fig.4 gezeigt ist, Das erste Rechenelement beläßt das
erste Bit in seinem Umlaufschieberegister 13 unverändert und sendet das zweite, dritte, vierte und fünfte 3it
auf di" jeweils ersten Bitpositionen der Umlaufschieberegister 13 des zweiten bzw. dritten bzw. vierten bzw.
fünften Rechenelernentes 11.
Auf ähnliche Weise schickt das zweite Rechenelement das erste Bit seines Umlaufschieberegisters 13 auf
die zweite Bitposition des Registers 13 des ersten Rechenelementes, beläßt das zweite Bit ungeändert und
schickt das dritte, vierte und turnte Bit seines Registers 13 auf die zweiten Bitposiiionen der Register 13 des
dritten bzw. vierten bzw. fünften Rechenelementes 11.
Die an dritter, vierter und fünfter Stelle liegenden Rechenelemente 1! senden ebenfalls vier der fünf in
ihren Registern 13 enthaltenen Bits auf die dritten bzw. vierten bzw. fünften Bitpositionen der jeweiligen
Register 13 der anderen Rechtnelemente 11.
ίο Im zweiten Schritt des Verschiebevorganges werden
die Bits in jedem der Umlaufschieberegister 13 zyklisch um den Verschiebebetrag mittels der Verschiebeeinrichtung
19 verschoben, die ein Walzenschalter oder ein Schieberegister sein kann. Fig.5 zeigt das Ergebnis
dieser Verschiebung bei einem Verschiebebetrag von + 3 oder -2. Bei einer Verschiebung in positiver
Richtung werden die Bits zyklisch nach rechts verschoben, und bei einer Verschiebung in negativer
Richtung werden die Bits nach links zyklisch verschoben. Beim letzten Schritt des Verschiebevorganges wird
der erste Schritt wiederholt, so daß die Zeilen und Spalten der in der Fig.5 gezeigten Matrix vertauscht
werden und sich die in F i g. 6 gezeigte Matrix ergibt. Das Ergebnis des Verschiebevorganges ist, daß die
Worte in den Umlaufschieberegistern 13 um einen Verschiebebetrag von +3 oder —2 verschoben sind.
in der oben beschriebenen Weise können die Bits in den Registern 13 bei jeder Größe des aus Rechenelementen
11 aufgebauten Feldes um eine beliebige Zahl Rechenelemente 11 im Umlauf weitergeschoben werden,
wenn nur die pro Wort vorhandene Bitzahl gleich der Zahl der Rechenelemente 11 ist. Dieses Verschiebeschema
kann auf nicht quadratische Matrizen erweitert werden, d.h. wenn ein Wort eine größere oder eine
kleinere Bitzahl als die Zahl der in dem Feld enthaltenen Rechenelemente 11 aufweist. Das Schema kann ferner
auf den Fall ausgedehnt werden, daß eine Vielzahl von Rechenelementenfeldern vorhanden ist.
Die Anwendung des Verschiebeschemas auf ein Feld aus Rechenelementen 11, in denen die Wortlänge
kleiner als die Zahl der Rechenelemente 11 ist, wird nun
anhand der F i g. 7 und 8 beschrieben.
F i g. 7 zeigt ein System mit einem Feld aus sechs Rechenelementen 11 und einer Wortlänge von vier Bits.
In diesem Fall kann das Verschiebeschema benutzt werden, wenn die Verschiebeabschnitte einer Anzahl
von Rechenelementen 11, die wenigstens gleich der Wortlänge ist, Worte verarbeiten können, deren
Bitlänge gleich der Zahl der in dem Feld enthaltenen Rechenelemente 11 ist. Auf das in F i g. 7 gezeigte Feld
angewendet, bedeutet dies, daß wenigstens vier Rechenelemente 11 mit Treibern 15, Empfangsstufen 17,
Registern 13 und Schiebeeinrichtungen 19 versehen sein müssen, die sechs Bits breit sind.
Das Verschieben von Wörtern zwischen den Rechenelementen 11 der Fig. 7 kann genau auf die gleiche
Weise wie bei dem in F i g. 3 gezeigten System erfolgen. Wenn die Register 13 der Rechenelemente 11 als Matrix
angeordnet sind, wobei zwei Spalten leer sind, wie es durch die Nullen in F i g. 7 angedeutet ist, können die
Zeilen und Spalten genau so vertauscht werden, wie es im Zusammenhang mit F i g. 4 beschrieben wurde. Bei
dieser Spiegelung bleiben zwei Zeilen leer.
Der inhalt der Register 13 der vier Rechenelemente, die Bits in ihren Registern 13 enthalten, wird dann nach
rechts oder nach links 'im den Verschiebebetrag verschoben (F i g. 8). Schließlich wird der erste Schritt
wiederholt, und die Zeilen und Spalten werden noch
einmal vertauscht, so daß der Verschiebevorgang vollendet wird.
Das Verschieben von Wörtern zwischen Rechenelementen Il eines Feldes, bei dem die Zahl der
Rechenelemente 11 kleiner als die Bitlänge der Worte ist, ist in den F i g. 9,10 und 11 gezeigt. Dieses Verfahren
ist besonders bei Systemen nützlich, die eine große Anzahl von aus Rechenelementen U aufgebauten
Teilfeldern haben und als ein einziges Feld arbeiten.
Ein Feld von Rechenelementen U, bei dem die Wortlänge kleiner als die Zahl der Rechenelemente 11
ist, kann auch in eine Vielzahl von Unterfeldern unterteilt werden, von denen jedes eine der Wortlänge
gleiche Anzahl von Rechenelementen U enthält. Eine solche Anordnung ist in den F i g. 9A und 9B gezeigt, bei
denen das Rechenelementenfeld eine Wortlänge von fünf Bits hat und in erste und zweite Unterfelder 21 und
23 unterteilt ist, die jeweils aus fünf Rechenelementen bestehen.
Beim Verschieben von Daten zwischen den Rechenelementen
11 dieses zweiteiligen Feldes wechseln einige Wörter von einem Unterfeld in das andere über. Bei
jedem Verschiebevorgang werden die gleichen Wörter von dem ersten Unterfeld 21 in das zweite Unterfeld 23
übertragen, die auch von dem zweiten Unterfeld 23 in das erste Unterfeld 21 übertragen werden. Beispielsweise
werden bei einem Verschiebebetrag von —2 die /4-Wörter und die ß-Wörter jedes Unterfeldes in das
andere Unterfeld übertragen.
Der Verschiebevorgang kann in einem Feld, das aus zwei Unterfeldern aufgebaut ist, dadurch ausgeführt
werden, daß die Wörter ausgetauscht werden, die zwischen den Unterfeldern übertragen werden, und daß
mit dem Verschieben der Wörter in jedem Unterfeld fortgefahren wird, wie im Zusammenhang mit den
F i g. 3 bis 6 beschrieben wurde. Um dies zu erreichen, sind die Rechenelemente jedes Unterfeldes mit den
entsprechenden Rechenelementen 11 in dem anderen Unterfeld durch in zwei Richtungen durchgängige, fünf
Bit breite Leitungen verbunden (F i g. 10).
Im Zusammenhang mit den Fig. 11A und 11B ist ein
Verschiebebetrag von +1 für das in den F i g. 9 und 10
gezeigte System beschrieben.
Bei dem Verschiebebetrag +1 werden die Worte in dem fünften Rechenelement jedes Unterfeldes, das
Ε-Wort, in das andere Unterfeld verschoben. Dieser Verschiebevorgang kann dadurch erreicht werden, daß
zuerst die E-Worte vertauscht werden (Fig. HA und
11 B). Danach wird der Verschiebebetrag +1 in jedem Unterfeld genau in der oben beschriebenen Weise
(Fig. 1 bis 6) durchgeführt. Der Verschiebebetrag +1
führt zu dem Ergebnis, daß das E-Wort jeweils in dem Register 13 des ersten Rechenelementes in jedem
Unterfeld ist.
Bei Systemen mit mehr als zwei Unterfeldern wechseln dieselben Wörter in den Unterfeldern zu dem
nächst höher oder niedriger indizierten Unterfeld während des Verschiebevorganges zyklisch über. Die
Worte können in diesem Fall dadurch verschoben werden, daß zuerst die Worte übertragen werden, die zu
ίο dem nächst höher oder nächst niedriger indizierten
Unterfeld in die entsprechenden Rechenelemente 11 der Unterfelder übertragen werden und daß <5„nn das
Verschieben in den Unterfeldern weitergeführt wird.
Wenn in einem Feld mehr Bits pro Worte als
,5 Rechenelemente vorhanden sind, ist es möglich, das
Verschieben der Worte zwischen den Rechenelementen 11 durch Gruppieren der Bits vorzunehmen und zwar
so, daß die gleiche Zahl gleicher Gruppen wie Rechenelemente 11 in dem Feld vorhanden sind. Dies ist
in den F i g. 12 und 13 an einem aus fünf Rechenelemen ten 11 aufgebauten Feld gezeigt, wobei die Worte zehn
Bit lang sind. In diesem Fall können die Bits eines Wortes in fünf Paare mit jeweils zwei Bits gruppiert
werden, und der Verschiebevorgang kann mit den Gruppen durchgeführt werden, wie es anhand der
F i g. 3 bis 6 beschrieben wurde. Die Zeilen und Spalten des Gruppenfeldes werden zunächst transponiert
(F i g. 13). Danach werden die Bits um das zweifache des Verschiebebetrages mittels der Verschiebeeinrichtung
19 verschoben. Schließlich wird der erste Schritt wiederholt, und die Zeilen und Spalten der Gruppen
werden erneut transportiert.
Die Bits können in größeren Gruppen verarbeitet werden, wenn das Verhältnis zwischen der Wortlänge
und der Zahl der Rechenelemente größer ist In jedem Fall ist die Verschiebung gleich dem Verschiebebetrag
multiplizier! mit der Zahl der Bits pro Gruppe. Wenn die Zahl der in dem Wort enthaltenen Bits nicht ein
geradzahliges Vieiiaches der Zahl der in dem Feld befindlichen Rechenelemente ist, kann so verfahren
werden, wie anhand der F i g. 7 und 8 beschrieben wurde, wobei einige Gruppen leer sind.
Das Transponieren der Zeilen und Spalten der Matrix, die durch den Inhalt der Register 13 der
Rechenelemente 11 gebildet wird, kann auch ganz unabhängig von dem Nutzen, den es beim Verschieben
der Wörter zwischen den Rechenelementen 11 bietet, für den Programmierer von Interesse sein. Dies gilt
insbesondere bei Anwendungen, bei denen die Bits oder die Gruppen der Bits eine unabhängige Bedeutung für
sich selbst und nicht nur als Teil eines Wortes haben.
Hierzu 3 Blatt Zeichnungen
Claims (2)
1. Schaltungsanordnung zur Verschiebung eines Datenwortes von m Bit Länge um Y Datenwortsteilen
innerhalb eines Feldes von wenigstens m Rechenelementen in einer Datenverarbeitungsanlage
mittels mehrerer Umlaufschieberegister, die an eine gemeinsame Umlaufsteuerung angeschlossen
sind, daß
a) jedes Rechenelement (A... E) ein Umlaufschieberegister
(13) von wenigstens m Bit Länge enthält, in welchem das in dem Rechenelement
enthaltene Datenwort gespeichert ist;
b) daß jeweils die /-te Speicherstelle des /ten Schieberegisters mit der /ten Speicherstelle des
/-ten Schieberegisters verbunden ist, wobei i und / die ganzen Zahlen zwischen 0 und m
durchlaufen;
c) daß zur Verschiebung des Datenwortes von einem ersten in das um Y Datenwortstellen
entfernte zwei:o Rechenelement die Inhalte der miteinander verbundenen Speicherstellen vertauscht
und die Inhalte aller Umlaufschieberegister um YBitstellen verschoben werden;
d) daß die Inhalte der verbundenen Speicherstellen erneut vertauscht werden.
2. Schaltungsanordnung nach Anspruch 1, bei dem das Rec/ienelementenfeld aus mehreren Unterfeldern
von je m Rechenelementen besteht, dadurch gekennzeichnet, daß zur Verschiebung des Datenwortes
von einem Unterfeld zu einem anderen Unterfeld die /-te Spsicherstelle des /-ten Umlaufschieberegisters
eines Unterfeldes mit der /-ten Speicherstelle des /-ten Umlaufschieberngisters des
benachbarten Unterfeldes verbunden ist
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US71490768A | 1968-03-21 | 1968-03-21 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1914560A1 DE1914560A1 (de) | 1969-11-13 |
DE1914560B2 true DE1914560B2 (de) | 1977-09-08 |
DE1914560C3 DE1914560C3 (de) | 1978-05-24 |
Family
ID=24871936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1914560A Expired DE1914560C3 (de) | 1968-03-21 | 1969-03-21 | Schaltungsanordnung zur Verschiebung eines Datenwortes innerhalb eines Rechenelementen-Feldes |
Country Status (7)
Country | Link |
---|---|
US (1) | US3582899A (de) |
JP (1) | JPS5540895B1 (de) |
BE (1) | BE730301A (de) |
DE (1) | DE1914560C3 (de) |
FR (1) | FR1598510A (de) |
GB (1) | GB1259967A (de) |
NL (1) | NL164144C (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3434046A1 (de) * | 1984-09-17 | 1986-03-27 | Siemens AG, 1000 Berlin und 8000 München | Parallelrechner |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4061906A (en) * | 1975-04-28 | 1977-12-06 | Wolfgang Grebe | Computer for numeric calculation of a plurality of functionally interrelated data units |
US4223391A (en) * | 1977-10-31 | 1980-09-16 | Burroughs Corporation | Parallel access alignment network with barrel switch implementation for d-ordered vector elements |
US4270170A (en) * | 1978-05-03 | 1981-05-26 | International Computers Limited | Array processor |
US4270169A (en) * | 1978-05-03 | 1981-05-26 | International Computers Limited | Array processor |
US4247892A (en) * | 1978-10-12 | 1981-01-27 | Lawrence Patrick N | Arrays of machines such as computers |
US4313159A (en) * | 1979-02-21 | 1982-01-26 | Massachusetts Institute Of Technology | Data storage and access apparatus |
NL8002787A (nl) * | 1980-05-14 | 1981-12-16 | Philips Nv | Multiprocessor-rekenmachinesysteem voor het uitvoeren van een recursief algorithme. |
US6414368B1 (en) | 1982-11-26 | 2002-07-02 | Stmicroelectronics Limited | Microcomputer with high density RAM on single chip |
US5243698A (en) * | 1982-11-26 | 1993-09-07 | Inmos Limited | Microcomputer |
US4680698A (en) * | 1982-11-26 | 1987-07-14 | Inmos Limited | High density ROM in separate isolation well on single with chip |
US5152000A (en) * | 1983-05-31 | 1992-09-29 | Thinking Machines Corporation | Array communications arrangement for parallel processor |
DE3506749A1 (de) * | 1984-02-27 | 1985-09-26 | Nippon Telegraph & Telephone Public Corp., Tokio/Tokyo | Matrixprozessor und steuerverfahren hierfuer |
US4797852A (en) * | 1986-02-03 | 1989-01-10 | Intel Corporation | Block shifter for graphics processor |
JPS63192153A (ja) * | 1987-02-05 | 1988-08-09 | Agency Of Ind Science & Technol | 並列デ−タ処理装置 |
US5129092A (en) * | 1987-06-01 | 1992-07-07 | Applied Intelligent Systems,Inc. | Linear chain of parallel processors and method of using same |
US5291611A (en) * | 1991-04-23 | 1994-03-01 | The United States Of America As Represented By The Secretary Of The Navy | Modular signal processing unit |
US5557734A (en) * | 1994-06-17 | 1996-09-17 | Applied Intelligent Systems, Inc. | Cache burst architecture for parallel processing, such as for image processing |
US5943507A (en) * | 1994-12-22 | 1999-08-24 | Texas Instruments Incorporated | Interrupt routing circuits, systems and methods |
US20060156316A1 (en) * | 2004-12-18 | 2006-07-13 | Gray Area Technologies | System and method for application specific array processing |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3228005A (en) * | 1960-12-30 | 1966-01-04 | Ibm | Apparatus for manipulating data on a byte basis |
US3374468A (en) * | 1964-12-23 | 1968-03-19 | Bell Telephone Labor Inc | Shift and rotate circuit for a data processor |
-
1968
- 1968-03-21 US US714907A patent/US3582899A/en not_active Expired - Lifetime
- 1968-12-18 FR FR1598510D patent/FR1598510A/fr not_active Expired
-
1969
- 1969-03-10 GB GB12440/69A patent/GB1259967A/en not_active Expired
- 1969-03-17 NL NL6904064.A patent/NL164144C/xx not_active IP Right Cessation
- 1969-03-20 JP JP2153469A patent/JPS5540895B1/ja active Pending
- 1969-03-21 BE BE730301D patent/BE730301A/xx not_active IP Right Cessation
- 1969-03-21 DE DE1914560A patent/DE1914560C3/de not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3434046A1 (de) * | 1984-09-17 | 1986-03-27 | Siemens AG, 1000 Berlin und 8000 München | Parallelrechner |
Also Published As
Publication number | Publication date |
---|---|
DE1914560C3 (de) | 1978-05-24 |
NL6904064A (de) | 1969-09-23 |
BE730301A (de) | 1969-09-01 |
US3582899A (en) | 1971-06-01 |
DE1914560A1 (de) | 1969-11-13 |
NL164144C (nl) | 1980-11-17 |
FR1598510A (de) | 1970-07-06 |
GB1259967A (en) | 1972-01-12 |
NL164144B (nl) | 1980-06-16 |
JPS5540895B1 (de) | 1980-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1914560C3 (de) | Schaltungsanordnung zur Verschiebung eines Datenwortes innerhalb eines Rechenelementen-Feldes | |
DE2718849C2 (de) | Datenverarbeitungsanlage für Datenelemente einer Matrix aus M Speichermoduln und mit p Prozessoren | |
DE2457312C3 (de) | Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2215066B2 (de) | Schaltungsanordnung zum schnellen Austausch von Informationen zwischen Schieberegistern und Einheiten einer Datenverarbeitungsanlage | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2854782C2 (de) | Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher | |
DE2656086C2 (de) | Rechenanlage | |
DE2900586C2 (de) | Anordnung zum Decodieren von Codewörtern variabler Länge | |
DE1271433B (de) | Adressiereinrichtung fuer einen Tabellenwertspeicher | |
DE2054941C2 (de) | Anordnung zur Auswahl von Datensätzen | |
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE1774771A1 (de) | Anordnung,um wechselweise eine Addition oder eine aus einer Anzahl logischer Funktionen zwischen den Inhalten einer Stelle zweier Binaerworte durchzufuehren | |
DE2948340C2 (de) | Informationsübertragungsanordnung für die Übertragung jeweils ausgewählter Informationseinheiten | |
DE1499284C3 (de) | Datenverarbeitungsanlage | |
DE2000275A1 (de) | Elektronischer Walzenschalter | |
DE1474024C3 (de) | Anordnung zur willkürlichen Umordnung von Zeichen innerhalb eines Informationswortes | |
DE1774606B1 (de) | Speicheranordnung zur durchfuehrung logischer und arithmetischer grundoperationen | |
DE3341339C2 (de) | Befehlsfolgegenerator | |
DE2136536C3 (de) | Anordnung zur Komprimierung binarer Daten | |
DE2233164A1 (de) | Schaltungsanordnung zur ausblendung eines beliebig waehlbaren bereichs einer bitfolge bei deren uebertragung zwischen zwei registern | |
DE2313016C2 (de) | Strichsignal-Erzeugungsvorrichtung für ein Zeichenanzeigegerät | |
DE69209826T2 (de) | Schnelle Addierkette | |
DE2140858C3 (de) | Paritätsbit- Vorhersage schaltung für eine Stellenverschiebeeinrichtung | |
DE1474041C3 (de) | Anordnung zum Sortieren von in zufälliger Reihenfolge aufgenommener Informationsbit Gruppen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8328 | Change in the person/name/address of the agent |
Free format text: EISENFUEHR, G., DIPL.-ING. SPEISER, D., DIPL.-ING., PAT.-ANW., 2800 BREMEN |
|
8330 | Complete disclaimer |