DE293700T1 - Lineare kette von parallelprozessoren und benutzungsverfahren davon. - Google Patents

Lineare kette von parallelprozessoren und benutzungsverfahren davon.

Info

Publication number
DE293700T1
DE293700T1 DE198888108175T DE88108175T DE293700T1 DE 293700 T1 DE293700 T1 DE 293700T1 DE 198888108175 T DE198888108175 T DE 198888108175T DE 88108175 T DE88108175 T DE 88108175T DE 293700 T1 DE293700 T1 DE 293700T1
Authority
DE
Germany
Prior art keywords
data
group
processing
processing unit
storage means
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.)
Pending
Application number
DE198888108175T
Other languages
English (en)
Inventor
Stephen S. Michigan 48015 Wilson
Original Assignee
Applied Intell Systems Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Applied Intell Systems Inc filed Critical Applied Intell Systems Inc
Publication of DE293700T1 publication Critical patent/DE293700T1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures 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/8015One dimensional arrays, e.g. rings, linear arrays, buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Multi Processors (AREA)
  • Image Processing (AREA)
  • Advance Control (AREA)

Claims (5)

108 175.6 5. Januar 1990 Applied Intelligent Systems, Inc. A 7817C EP - SBbI Patentansprüche
1. Ein Verarbeitungssystem (9) zum Ausführen paralleler Verarbeitungsoperationen für Daten einer großen Datengruppe mit einer Vielzahl von Zeilen und mindestens 2n Spalten, wobei &eegr; eine ganze Zahl größer als 1 ist, durch Aufteilen der großen Gruppe in mindestens eine erste und eine zweite Untergruppe zur Verarbeitung, wobei jede Untergruppe eine Vielzahl von Zeilen und nur &eegr; Spalten hat und das System umfaßt:
eine erste und eine zweite Gruppe (1Oa-IOh1IOa-10h;130,130) mit je &eegr; Einzelverarbeitungseinheiten, wobei jede dieser Gruppen eine Anordnung von &eegr; Verarbeitungszellen (31) einschließt, die durch eine Vielzahl von Verbindungen (34,35,36,37,38) miteinander verbunden sind, jede der Einzelverarbeitungseinheiten eine der Verarbeitungszellen aufweist, und die erste und die zweite Gruppe der Verarbeitungseinheiten miteinander durch eine Vielzahl (11;21) von Verbindungen zum Datentransfer zwischen den Gruppen verbunden sind;
erste und zweite Gruppen (13a-13h,13a-13h;132,132) von &eegr; Speichermitteln (13e;13i), die jeweils &eegr; Spalten an Daten speichern, die jeweils den ersten und zweiten Untergruppen zugeordnet sind, wobei jedes der Speichermittel eine Spalte an Daten speichert und jeweils einer (1Oi;30)
Verarbeitungseinheit zugeordnet und damit verbunden ist,
wobei die erste Gruppe Verarbeitungseinheiten weiterhin erste Mittel (31-78) zum wahlweisen Zulassen des Betriebs der ersten Gruppe Verarbeitungseinheiten in parallelen Datenzeilen aus der ersten Gruppe der &eegr; Speichermittel und zweite Mittel (135;74a-74h) zum wahlweisen Zulassen des parallelen Betriebs der ersten Gruppe von Verarbeitungseinheiten mit Daten aus irgendeiner der &eegr; Spalten der ersten Gruppe der &eegr; Speichermittel enthält, und
die zweite Gruppe Verarbeitungseinheiten weiterhin erste Mittel (31-78) zum wahlweisen Zulassen des Betriebs der zweiten Gruppe Verarbeitungseinheiten zum parallelen Verarbeiten von Daten aus Zeilen der zweiten Gruppe der &eegr; Speichermittel und zweite Mittel (135;74a-74h) zum wahlweisen Zulassen des Betriebs der zweiten Gruppe Verarbeitungseinheiten zum parallelen Verarbeiten von Daten aus einer der &eegr; Spalten der zweiten Gruppe der &eegr; Speichermittel enthält.
2. System nach Anspruch 1, wobei
jede Verarbeitungseinheit (30) Akkumulatoreinheiten (50-55,60-63) zum zeitweisen Speichern von zu verarbeitenden Daten enthält und
über eine Vielzahl von Verbindungen (41-47) mit mindestens einer einer benachbarten Verarbeitungseinheit zugeordneten Akkumulatoreinheit verbunden ist.
3. System nach Anspruch 2, wobei jede Akkumulatoreinheit &eegr; 1-Bit-Akkumulatoren (120a-120h) enthält, in denen jeweils 1 Bit Daten zeitweise gespeichert wird, und worin die der jeweiligen Akkumulatoreinheit zugeordneten 1-Bit-Akkumulatoren seriell so miteinander verbunden sind, daß es jeder Akkumulatoreinheit möglich ist, &eegr; Bits an Daten aus den der jeweiligen Verarbeitungseinheit zugeordneten Speichermitteln zu empfangen und zeitweise zu speichern.
4. System nach Anspruch 3, wobei jede Akkumulatoreinheit (54,55) 2n 1-Bit-Akkumulatoren enthält, die seriell miteinander verbunden sind.
5. System nach Anspruch 3, wobei
jede Gruppe (lOa-lOh;130) Verarbeitungseinheiten (1Oi;30) Adressauswahlmittel (131) enthält, die mit den Akkumulatoreinheiten (54h,55h) einer ersten Verarbeitungseinheit (30h) verbunden sind zum Leiten der Daten von einer der Akkumulatoreinheiten (54h,55h) zu Datenverbindungen (74a-74h, 28), die zu jeder Verarbeitungseinheit innerhalb ihrer Gruppe von Verarbeitungseinheiten und zu jedem Speichermittel innerhalb der Speichergruppe führen, die der entsprechenden Gruppe von Verarbeitungseinheiten zugeordnet ist, und wobei
jede Gruppe von Verarbeitungseinheiten weiterhin Eingabeauswahlmittel (135) enthält zum wahlweisen Koppeln der Datenverbindungen zwischen ihren Verarbeitungseinheiten und der ihr zugeordneten Gruppe von Speichermitteln mit einer zweiten Verarbeitungseinheit (30a) innerhalb dieser Gruppe, so daß Daten von den Speichermitteln (132)
oder den Verarbeitungseinheiten dieser Gruppe zu der zweiten Verarbeitungseinheit Gruppe parallel übertragen werden können.
6. Verarbeitungssystem (9) zum Ausführen von parallelen Verarbeitungsoperationen für Daten aus einer Datengruppe mit einer Vielzahl Zeilen und mindestens 2n Spalten, wobei &eegr; eine ganze Zahl größer als 1 ist, gekennzeichnet durch:
eine Gruppe (1Oa-IOh;130) von &eegr; Einzelverarbeitungseinheiten (10i;30), die eine Gruppe von Verarbeitungszellen enthält, welche durch eine Vielzahl von Verbindungen miteinander verbunden sind; und
eine Gruppe (13a-13h;132) von &eegr; Speichermitteln (13e;13i) zum Speichern von Daten zum späteren Verarbeiten durch die Gruppe von &eegr; Einzelverarbeitungseinheiten, wobei jedes Speichermittel jeweils einer Verarbeitungseinheit zugeordnet und zum Speichern einer Datenspalte ausgelegt ist.
7. System nach Anspruch 6, gekennzeichnet durch:
Mittel (13 5,74a-74h) zum Transponieren von &eegr; Daten-Bits, während diese Bits zwischen der Gruppe von &eegr; Speichermitteln und der Gruppe von Verarbeitungseinheiten übertragen werden, die die Oranisation der Daten von einem ersten Format auf ein zweites Format ändert, das orthogonal zu dem ersten Format ist.
8. System nach Anspruch 7, wobei die Mittel zum Transponieren der &eegr; Daten-Bits Eingabeauswahlmittel (13 5) zum wahlweisen Verbinden einer ersten Verarbeitungseinheit (3 0a) mit der Gruppe (132) der &eegr; Speichermittel enthalten, so daß Daten vom Speicher zu der ersten Verarbeitungseinheit parallel übertragen werden können.
. System nach Anspruch 8, wobei
jede Verarbeitungseinheit weiterhin Akkumulatoreinheiten (50-55,60-63;120) zum zeitweisen Speichern von zu verarbeitenden Daten enthält, die durch eine Vielzahl von Verbindungen (41-47) mit zumindest einer einer benachbarten Verarbeitungseinheit zugeordneten
Akkumulatoreinheit verbunden sind, wobei jede Akkumulatoreinheit mindestens &eegr; 1-Bit-Akkumulatoren (54,55;120a-120h) zum seriellen und parallelen Aufnehmen von einzelnen Datenbits enthält und jeder dieser 1-Bit-Akkumulatoren einen parallelen Eingang (41a-42h,45a-45h) hat,
die Eingabeauswahlmittel (13 5) Daten von den Speichermitteln zu den parallelen Eingängen der Akkumulatoreinheiten der ersten Verarbeitungseinheit (30a) liefert,
jedes der &eegr; Speichermittel eine einzelne Datenspalte der Datengruppe speichern kann, und
die von der Gruppe der Speichermittel zu der Gruppe Verarbeitungseinheiten übertragenen &eegr; Daten-Bits in einem ersten Format gespeichert werden, das ein &eegr; Spalten der Gruppe der Speichermittel umfassendes Zeilenformat ist.
10. System nach Anspruch 6, dadurch gekennzeichnet, daß:
jede Verarbeitungseinheit arithmetische Mittel (31,37,81,85-91,96,105,114,115) zum Ausführen arithmetischer Operationen mit zugeführten Daten enthält, wobei die arithmetischen Mittel Übertragmittel (34,37,96,114,115) zum Transfer von Daten, die Übertragen aus den in der Verarbeitungseinheit durchgeführten arithmetischen Operationen entsprechen, zu einer gegebenenfalls in einer ersten
j '" -! l·"« -:"!l : 029370&Pgr;
Richtung entlang der Gruppe angeordneten benachbarten Verarbeitungseinheit enthalten, so daß die Gruppe der &eegr; Verarbeitungseinheiten parallel betrieben werden kann zur Ausführung der arithmetischen Operationen mit Daten, die den &eegr; Verarbeitungseinheiten parallel zugeführt werden.
11. System nach Anspruch 10, wobei
in jeder Verarbeitungseinheit (30) die arithmetischen Mittel einen Teil der Verarbeitungszelle (31) der Verarbeitungseinheit darstellen, zum Ausführen einer 1-Bit-Additionsoperation ausgelegt sind und ein Paar von 1-Bit-Speicherelementen (105,114) zum zeitweisen Speichern einer 1-Bit-Summe und eines Übertragbits umfassen, falls diese aus einer gerade ausgeführten Additionsoperation resultieren,
jede Verarbeitungseinheit (30) eine Austragverbindung (37,34) zwischen den 1-Bit-Speicherelementen zum Speichern des Übertragbits und den arithmetischen Mitteln einer gegebenen, falls in der ersten Richtung benachbarten Verarbeitungseinheit, enthält und
in jeder Verarbeitungseinheit (30) die Verarbeitungszelle (31) ein Paar 1-Bit Speicherelemente (81,82) zum zeitweisen Speichern eines Bitpaares hat, das zu diesen zum Verarbeiten durch die arithmetischen Mittel sukzessiv von den der Verarbeitungseinheit zugeordneten Speichermitteln übertragen worden ist.
12. System nach Anspruch 6, gekennzeichnet durch:
Mittel (43h,55h,130,131) zum indirekten Adressieren von Daten innerhalb der Gruppe (13a-13h;132) der Speichermittel.
13. System nach Anspruch 12, wobei
jede Verarbeitungseinheit Akkumulatoreinheiten (51,54,55) zum zeitweisen Speichern von zu verarbeitenden Daten enthält, die durch eine Vielzahl von Verbindungen (41-45) mit zumindest einer einer benachbarten Verarbeitungseinheit zugeordneten Akkumulatoreinheit verbunden sind,
die Gruppe der Speichermittel Adresseingänge (23;28a-28n) hat;
die Mittel zum indirekten Adressieren Adressenwähler (131) enthalten, die mit den Akkumulatoreinheiten (5 5h) innerhalb einer ersten Verarbeitungseinheit (30h) verbunden sind, zum wahlweisen parallelen Führen von Daten aus diesen ersten Akkumulatoreinheiten zu mindestens einigen Adresseingängen der Gruppe der Speichermittel, und die Gruppe der Verarbeitungseinheiten Mittel (45,127,129,122,-47,43) hat zum Schieben von Daten innerhalb der Akkumulatoreinheiten jeder Verarbeitungseinheit in Richtung zu den Akkumulatoreinheiten einer gegebenenfalls benachbarten Verarbeitungseinheit.
14. Zu einem Verarbeitungssystem (9) zum Ausführen von parallelen Verarbeitungsoperationen für Daten einer Datengruppe mit mindestens einer Vielzahl von Zeilen und &eegr; Spalten, wobei &eegr; eine ganze Zahl größer als 1 ist, ein Verfahren zum Datentransfer zwischen einer Gruppe von Verarbeitungseinheiten und einer Gruppe von Speichermitteln, gekennzeichnet durch folgende Schritte:
(a) Vorsehen einer Gruppe (lOa-lOh;130) von &eegr; Verarbeitungseinheiten (1Oi;30) zumindest als Teil des Verarbeitungssystems, die miteinander durch eine Vielzahl von Verbindungen (11,21,34-38,41-47) verbunden sind, und einer Gruppe (13a-13h) von &eegr; Speichermitteln (13e,13i) zum Speichern von Daten
0203700
zum späteren Verarbeiten durch die Gruppe der &eegr; Einzelverarbeitungseinheiten;
(b) Speichern der Daten in einem Format in der Gruppe der &eegr; Speichermittel; und
(c) Transferieren einer ersten Gruppe von Daten, die im ersten Format in der Gruppe der &eegr; Speichermittel gespeichert sind, zu der Gruppe der &eegr; Verarbeitungseinheiten.
15. Verfahren nach Anspruch 14, gekennzeichnet durch den weiteren Schritt
(d) Transponieren der transferierten Daten in ein zweites Format, das orthogonal zu dem ersten Format ist.
16. Verfahren nach Anspruch 15, wobei:
das erste Format ein Zeilenformat ist, das &eegr; Spalten der Gruppe der Daten umfaßt, und die Gruppe der Daten, die bei Schritt (b) transferiert wird, eine erste Zeile von &eegr; Bits darstellt;
das zweite Format ein Spaltenformat ist, das einer Verarbeitungseinheit (30a) in der Gruppe (30) der Verarbeitungseinheiten zugeordnet ist;
jede einzelne Verarbeitungseinheit Akkumulatoreinheiten (50-55,60-63) zum zeitweisen Speichern von zu verarbeitenden Daten enthält, die durch eine Vielzahl von Verbindungen (41-47) mit mindestens einer Akkumulatoreinheit einer benachbarten Verarbeitungseinheit verbunden sind, wobei jede Akkumulatoreinheit mindestens &eegr; 1-Bit-Akkumulatoren (54;55) hat zum seriellen und parallelen Aufnehmen einzelner Datenbits und jeder 1-Bit-Akkumulator einen parallelen Eingang (41a-41h, 45a-45h) hat; und
02C370P
Schritt (c) ausgeführt wird durch Datentransfer von der ersten Zeile in die Akkumulatoreinheiten einer ersten Verarbeitungseinheit (30a), die sich an einem ersten Ende der Gruppe der Verarbeitungseinheiten befindet.
17. Verfahren nach Anspruch 14, gekennzeichnet durch den Schritt:
(c) Paralleles Ausführen arithmetischer Operationen in den &eegr; Verarbeitungseinheiten dadurch, daß mindestens teilweise die Übertragdaten, die sich aus den arithmetischen Operationen in einer Verarbeitungseinheit ergeben, sofort in eine Richtung zu einer gegebenenfalls in einer Richtung benachbarten Verarbeitungseinheit transferiert werden, wo die transferierten Übertragdaten für die dort auszuführenden arithmetischen Operationen benutzt werden.
18. System nach Anspruch 17, wobei (c) durchgeführt wird, indem:
eine erste Zeile von &eegr; Datenbits so aus den Speichermitteln (13) gelesen wird, daß ein Bit aus der ersten Zeile in jeder Verarbeitungseinheit gespeichert wird;
eine zweite Zeile von &eegr; Datenbits aus den Speichermitteln gelesen und in den &eegr; Verarbeitungseinheiten so gespeichert wird, daß ein Bit der zweiten Zeile in jeder Verarbeitungseinheit gespeichert ist; und
im wesentlichen gleichzeitiges Durchführen einer 1-Bit-Additionsoperation in jeder der &eegr; Verarbeitungseinheiten, wobei als Einheiten für den Additionsprozess in jeder Verarbeitungseinheit die zwei darin gespeicherten Bits, die sich aus
den zwei Leseschritte ergeben, und die gegebenen, falls von der benachbarten Verarbeitungseinheit empfangenen Übertragdaten verwendet werden.
19. Verfahren nach Anspruch 14, ebenfalls zum Adressieren von Daten im Speicher zum späteren Verarbeiten durch das System, wobei die erste Gruppe von Daten von einer ersten Speicherstelle (148;170) der Gruppe der &eegr; Speichermittel kommt, gekennzeichnet durch die weiteren Schritte:
(d) die eingegebenen Daten werden dazu benutzt, eine zweite Speicherstelle (154;177) in den Speichermitteln unterschiedlich zu der ersten Speicherstelle zu spezifizieren; und
(e) Laden von Daten aus der ermittelten zweiten Speicherstelle der Speichermittel in die Gruppe der Verarbeitungseinheiten.
20. Verfahren nach Anspruch 19, wobei das Verarbeitungssystem (9) Adressenwähler (43h,55h,130,131) enthält, die mit einer ersten Verarbeitungseinheit (30h) verbunden sind, zum wahlweisen Leiten von in die erste Verarbeitungseinheit eingegebenen Daten zu den Speichermitteln, wobei die geleiteten Daten als zumindest teilweise Adresse der zweiten Speicherstelle (154;177) der Speichermittel dienen, gekennzeichnet durch:
(f) Schieben zusätzlicher Daten in die erste Verarbeitungseinheit aus einer benachbarten Verarbeitungseinheit.
DE198888108175T 1987-06-01 1988-05-20 Lineare kette von parallelprozessoren und benutzungsverfahren davon. Pending DE293700T1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/057,128 US5129092A (en) 1987-06-01 1987-06-01 Linear chain of parallel processors and method of using same

Publications (1)

Publication Number Publication Date
DE293700T1 true DE293700T1 (de) 1990-04-12

Family

ID=22008678

Family Applications (2)

Application Number Title Priority Date Filing Date
DE198888108175T Pending DE293700T1 (de) 1987-06-01 1988-05-20 Lineare kette von parallelprozessoren und benutzungsverfahren davon.
DE3852909T Expired - Fee Related DE3852909T2 (de) 1987-06-01 1988-05-20 Lineare Kette von Parallelprozessoren und Benutzungsverfahren davon.

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE3852909T Expired - Fee Related DE3852909T2 (de) 1987-06-01 1988-05-20 Lineare Kette von Parallelprozessoren und Benutzungsverfahren davon.

Country Status (4)

Country Link
US (1) US5129092A (de)
EP (1) EP0293700B1 (de)
JP (1) JP2756257B2 (de)
DE (2) DE293700T1 (de)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE68920388T2 (de) * 1988-09-19 1995-05-11 Fujitsu Ltd Paralleles Rechnersystem mit Verwendung eines SIMD-Verfahrens.
CA2016348C (en) * 1989-05-10 2002-02-05 Kenichi Asano Multiprocessor type time varying image encoding system and image processor
AU641418B2 (en) * 1989-09-20 1993-09-23 Fujitsu Limited A parallel data processing system for processing and transmitting data concurrently
US5287416A (en) * 1989-10-10 1994-02-15 Unisys Corporation Parallel pipelined image processor
EP0444368B1 (de) * 1990-02-28 1997-12-29 Texas Instruments France Ein SIMD-Prozessor als digitales Filter
JPH05500124A (ja) * 1990-05-30 1993-01-14 アダプティブ・ソリューションズ・インコーポレーテッド Simdアーキテクチャにおける並行演算/通信機構
JP2959104B2 (ja) * 1990-10-31 1999-10-06 日本電気株式会社 信号処理プロセッサ
US5325500A (en) * 1990-12-14 1994-06-28 Xerox Corporation Parallel processing units on a substrate, each including a column of memory
JPH04290155A (ja) * 1991-03-19 1992-10-14 Fujitsu Ltd 並列データ処理方式
US5732164A (en) * 1991-05-23 1998-03-24 Fujitsu Limited Parallel video processor apparatus
US5241632A (en) * 1992-01-30 1993-08-31 Digital Equipment Corporation Programmable priority arbiter
US5408670A (en) * 1992-12-18 1995-04-18 Xerox Corporation Performing arithmetic in parallel on composite operands with packed multi-bit components
US5428804A (en) * 1992-12-18 1995-06-27 Xerox Corporation Edge crossing circuitry for SIMD architecture
US5655131A (en) * 1992-12-18 1997-08-05 Xerox Corporation SIMD architecture for connection to host processor's bus
US5651121A (en) * 1992-12-18 1997-07-22 Xerox Corporation Using mask operand obtained from composite operand to perform logic operation in parallel with composite operand
US5450603A (en) * 1992-12-18 1995-09-12 Xerox Corporation SIMD architecture with transfer register or value source circuitry connected to bus
US5375080A (en) * 1992-12-18 1994-12-20 Xerox Corporation Performing arithmetic on composite operands to obtain a binary outcome for each multi-bit component
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
US5526501A (en) * 1993-08-12 1996-06-11 Hughes Aircraft Company Variable accuracy indirect addressing scheme for SIMD multi-processors and apparatus implementing same
US5434629A (en) * 1993-12-20 1995-07-18 Focus Automation Systems Inc. Real-time line scan processor
US5557734A (en) * 1994-06-17 1996-09-17 Applied Intelligent Systems, Inc. Cache burst architecture for parallel processing, such as for image processing
US5630161A (en) * 1995-04-24 1997-05-13 Martin Marietta Corp. Serial-parallel digital signal processor
US6188381B1 (en) * 1997-09-08 2001-02-13 Sarnoff Corporation Modular parallel-pipelined vision system for real-time video processing
US6208772B1 (en) 1997-10-17 2001-03-27 Acuity Imaging, Llc Data processing system for logically adjacent data samples such as image data in a machine vision system
FR2793088B1 (fr) * 1999-04-30 2001-06-22 St Microelectronics Sa Procede et dispositif de collecte des valeurs logiques de sortie d'une unite logique dans un circuit electronique
US6598146B1 (en) * 1999-06-15 2003-07-22 Koninklijke Philips Electronics N.V. Data-processing arrangement comprising a plurality of processing and memory circuits
EP1122688A1 (de) * 2000-02-04 2001-08-08 Texas Instruments Incorporated Verfahren und Vorrichtung zur Datenverarbeitung
US20040254965A1 (en) * 2001-03-02 2004-12-16 Eric Giernalczyk Apparatus for variable word length computing in an array processor
DE60238041D1 (de) * 2001-03-13 2010-12-02 Ecchandes Inc Visuelle einrichtung, verriegelnder zähler und bildsensor
HUP0102356A2 (hu) * 2001-06-06 2003-02-28 Afca-System Kft. Eljárás és kapcsolási elrendezés előnyösen ciklikusan ismétlődő adatfeldolgozási feladatok párhuzamos üzemű végrehajtására, továbbá az eljárás végrehajtásához szükséges műveleti kódok előállítására és szimulálására szolgáló programrendszer
US7054897B2 (en) * 2001-10-03 2006-05-30 Dsp Group, Ltd. Transposable register file
US20100274988A1 (en) * 2002-02-04 2010-10-28 Mimar Tibet Flexible vector modes of operation for SIMD processor
DE10206830B4 (de) * 2002-02-18 2004-10-14 Systemonic Ag Verfahren und Anordnung zur Zusammenführung von Daten aus parallelen Datenpfaden
US7506135B1 (en) * 2002-06-03 2009-03-17 Mimar Tibet Histogram generation with vector operations in SIMD and VLIW processor by consolidating LUTs storing parallel update incremented count values for vector data elements
US7266255B1 (en) * 2003-09-26 2007-09-04 Sun Microsystems, Inc. Distributed multi-sample convolution
US7737994B1 (en) * 2003-09-26 2010-06-15 Oracle America, Inc. Large-kernel convolution using multiple industry-standard graphics accelerators
JP2006099232A (ja) * 2004-09-28 2006-04-13 Renesas Technology Corp 半導体信号処理装置
US20060156316A1 (en) * 2004-12-18 2006-07-13 Gray Area Technologies System and method for application specific array processing
US20060190517A1 (en) * 2005-02-02 2006-08-24 Guerrero Miguel A Techniques for transposition of a matrix arranged in a memory as multiple items per word
WO2007099950A1 (ja) * 2006-03-03 2007-09-07 Nec Corporation 高速pe間データ再配置機能を有するプロセッサアレイシステム
GB2436377B (en) 2006-03-23 2011-02-23 Cambridge Display Tech Ltd Data processing hardware
KR100834412B1 (ko) * 2007-05-23 2008-06-04 한국전자통신연구원 모바일 멀티미디어 연산의 효율적인 처리를 위한 병렬 프로세서
GB0809192D0 (en) * 2008-05-20 2008-06-25 Aspex Semiconductor Ltd Improvements to data compression engines
JP5601817B2 (ja) * 2009-10-28 2014-10-08 三菱電機株式会社 並列演算処理装置
JP5528976B2 (ja) 2010-09-30 2014-06-25 株式会社メガチップス 画像処理装置
JP2011192305A (ja) * 2011-06-01 2011-09-29 Renesas Electronics Corp 半導体信号処理装置
US9183614B2 (en) 2011-09-03 2015-11-10 Mireplica Technology, Llc Processor, system, and method for efficient, high-throughput processing of two-dimensional, interrelated data sets
US9680916B2 (en) 2013-08-01 2017-06-13 Flowtraq, Inc. Methods and systems for distribution and retrieval of network traffic records
FR3015068B1 (fr) * 2013-12-18 2016-01-01 Commissariat Energie Atomique Module de traitement du signal, notamment pour reseau de neurones et circuit neuronal
KR20180034557A (ko) 2015-07-23 2018-04-04 미레플리카 테크놀로지, 엘엘씨 2차원 어레이 프로세서의 성능 향상
US11249767B2 (en) * 2019-02-05 2022-02-15 Dell Products L.P. Boot assist zero overhead flash extended file system
US11042372B2 (en) * 2019-05-24 2021-06-22 Texas Instruments Incorporated Vector bit transpose

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3537074A (en) * 1967-12-20 1970-10-27 Burroughs Corp Parallel operating array computer
US3582899A (en) * 1968-03-21 1971-06-01 Burroughs Corp Method and apparatus for routing data among processing elements of an array computer
US3970993A (en) * 1974-01-02 1976-07-20 Hughes Aircraft Company Cooperative-word linear array parallel processor
US4174514A (en) * 1976-11-15 1979-11-13 Environmental Research Institute Of Michigan Parallel partitioned serial neighborhood processors
DE2963153D1 (en) * 1978-06-26 1982-08-12 Environmental Res Inst Apparatus and method for generating a transformation of a first data matrix to form a second data matrix
US4215401A (en) * 1978-09-28 1980-07-29 Environmental Research Institute Of Michigan Cellular digital array processor
US4314349A (en) * 1979-12-31 1982-02-02 Goodyear Aerospace Corporation Processing element for parallel array processors
US4525797A (en) * 1983-01-03 1985-06-25 Motorola, Inc. N-bit carry select adder circuit having only one full adder per bit
US4739474A (en) * 1983-03-10 1988-04-19 Martin Marietta Corporation Geometric-arithmetic parallel processor
US4621339A (en) * 1983-06-13 1986-11-04 Duke University SIMD machine using cube connected cycles network architecture for vector processing
JPH0658631B2 (ja) * 1983-12-19 1994-08-03 株式会社日立製作所 デ−タ処理装置
FR2573888B1 (fr) * 1984-11-23 1987-01-16 Sintra Systeme pour la transmission simultanee de blocs de donnees ou de vecteurs entre une memoire et une ou plusieurs unites de traitement de donnees
US4787057A (en) * 1986-06-04 1988-11-22 General Electric Company Finite element analysis method using multiprocessor for matrix manipulations with special handling of diagonal elements
US4829585A (en) * 1987-05-04 1989-05-09 Polaroid Corporation Electronic image processing circuit

Also Published As

Publication number Publication date
EP0293700A2 (de) 1988-12-07
DE3852909D1 (de) 1995-03-16
JP2756257B2 (ja) 1998-05-25
DE3852909T2 (de) 1995-10-12
JPS63316167A (ja) 1988-12-23
US5129092A (en) 1992-07-07
EP0293700A3 (en) 1989-10-18
EP0293700B1 (de) 1995-02-01

Similar Documents

Publication Publication Date Title
DE293700T1 (de) Lineare kette von parallelprozessoren und benutzungsverfahren davon.
DE3049437C2 (de) Matrixanordnung einer Vielzahl von Verarbeitungselementen
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE19835216B4 (de) Prozessor und Verfahren zur parallelen Datenverarbeitung
DE2536104C3 (de) Speicher für bildliche Darstellungen betreffende Daten
DE2724125C2 (de)
DE68926783T2 (de) Paralleler datenprozessor
DE1499193A1 (de) Datenverarbeitungsanlage
DE2347387A1 (de) Permutationsschaltung
DE2331589A1 (de) Datenverarbeitungsanordnung
DE1302494B (de)
DE1549468B2 (de) Speicheranordnung fuer eine programmgesteuerte datenverarbeitungsanlage
DE2054830A1 (de) Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher
DE2423265B2 (de) Optimierende Rechenmaschine
DE3811145C2 (de)
DE69031317T2 (de) Bearbeitung von einem zweidimensionalen Teilchen eines digitalen Bildsignals
DE4010292A1 (de) Hochgeschwindigkeitsschreibverfahren zum testen eines ram
DE1170682B (de) Speicheranordnung mit suchendem Aufruf
DE1524856A1 (de) Wortadressierbare Datenspeicher mit mehreren defekten Speicherelementen
DE4105193A1 (de) Datenschnittstelle zur ein- und ausgabe von daten bei parallelrechnern
DE1774606B1 (de) Speicheranordnung zur durchfuehrung logischer und arithmetischer grundoperationen
DE2000608C3 (de) Schaltungsanordnung fuer eine Nachrichtenverarbeitungs-,insbesondere fuer eine Nachrichtenvermittlungsanlage
DE2649147C2 (de) Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen
DE2747800C3 (de) Schaltungsanordnung zum Austauschen von Bits in einem Datenwort
DE69304382T2 (de) Hochgeschwindigkeitssortiergerät