GB1445714A - Array processors - Google Patents
Array processorsInfo
- Publication number
- GB1445714A GB1445714A GB1780973A GB1780973A GB1445714A GB 1445714 A GB1445714 A GB 1445714A GB 1780973 A GB1780973 A GB 1780973A GB 1780973 A GB1780973 A GB 1780973A GB 1445714 A GB1445714 A GB 1445714A
- Authority
- GB
- United Kingdom
- Prior art keywords
- register
- array
- row
- store
- micro
- 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.)
- Expired
Links
- 230000000694 effects Effects 0.000 abstract 3
- 238000000034 method Methods 0.000 abstract 1
- 239000003607 modifier Substances 0.000 abstract 1
- 230000002093 peripheral effect Effects 0.000 abstract 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
-
- 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/8015—One dimensional arrays, e.g. rings, linear arrays, buses
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/28—Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
Abstract
1445714 Data processing systems INTERNATIONAL COMPUTERS Ltd 11 April 1974 [13 April 1973 20 June 1973 (2)] 17809/73 29272/73 and 29273/73 Heading G4A Each high level instruction supplied by a general purpose computer 10, Fig. 1, is interpreted by a control unit 11 into a sequence of micro instructions retrieved from a read/write store for execution by an array of processing elements 12 each of which includes a bitaddressable memory and an arithmetic unit operating on a single bit at a time. Parts of each micro instruction held in a register 26 are applied to all the processing elements 12 and to row units 13 associated with the rows of the processing element array. A particular row and/or column of elements 12 may be selected by an address in a register 24, a row decoder 33 setting an activity register A in a selected row unit 13 to enable a gate 59 for the associated row of elements 12. The columns may also have column units similar to the row units 13. The array of processing elements 12 is preferably fabricated by integrated circuit techniques and has a switching arrangement to effect changes in geometry of the array by varying the number of "layers" and correspondingly varying the number of elements 12 in each layer. The edge elements in each layer may be selectively interconnected to form loops or chains in the row and/or column direction. In a multi-layer structure, part of a micro instruction held in register 26 is used to select the row units 13 on a desired layer. Each processing element 12 includes a store 70, Fig. 2, which is bit-addressed by lines on the micro instruction register 26 and an index register 47 of the associated row unit 13. Other micro instruction bits are used to (112) select the sum or carry output of an adder 83 as input to the store 70; (110-112) select a carry register C, operand register P or Q, activity register A1 or A2 or a modifier register B (determining which half of store 70 is used) to receive an input data bit; (113) to select the K output of adder 83 as input to the carry register C; and (129-131) to select a fixed input 121, an output 122-127 of the store 70 of a neighbouring processing element, or the output 128 of the store 70 of the same processing element as an input source. By selecting input 121 as a fixed zero, a bit can he entered from an I/O shift register 52 of the corresponding row unit, via an exclusive OR gate 115. By selecting input 121 as a fixed 1, input data bits from the I/O shift register can be inverted. The processing element array oan either be used to perform identical operations on a large number of operands in parallel, e.g. in meteorological forecasting, i.e. as a peripheral processor for a main computer 10, or as an extension of the far storage for the main computer. In the latter mode, two or more words may be stored at the same bit address of the stores 17 of a column of processing elements 12, and in this mode, 1-bit register 63 in the row units may be used as the I/O register of the storage array. The micro program may be stored in the array, and in main store mode, parallel arithmetic is possible by providing appropriate carry inputs to the adders. The control unit 11 may include a random access memory which stores a micro program loop retrieved from the stores 70 of the processing array, the loop being executed a specified number of times and, if required, parts of micro instructions being incremented at each successive execution of the loop. Execution of the micro program can be interrupted, on completion of the micro instruction, by the main computer 10 supplying a column and bit address to gain access to the processing array in main store mode.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1780973A GB1445714A (en) | 1973-04-13 | 1973-04-13 | Array processors |
ZA00742069A ZA742069B (en) | 1973-04-13 | 1974-04-01 | Improvements in or relating to array processors |
US05/456,829 US3979728A (en) | 1973-04-13 | 1974-04-01 | Array processors |
AU67469/74A AU489298B2 (en) | 1974-04-03 | Improvements in or relating to array processors |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1780973A GB1445714A (en) | 1973-04-13 | 1973-04-13 | Array processors |
GB2927373 | 1973-06-20 | ||
GB2927273 | 1973-06-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
GB1445714A true GB1445714A (en) | 1976-08-11 |
Family
ID=27257542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB1780973A Expired GB1445714A (en) | 1973-04-13 | 1973-04-13 | Array processors |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB1445714A (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2916065A1 (en) * | 1978-05-03 | 1979-11-15 | Int Computers Ltd | GROUP PROCESSORS |
DE2946119A1 (en) * | 1978-11-23 | 1980-06-04 | Int Computers Ltd | DATA PROCESSING DEVICE |
DE3049437A1 (en) * | 1979-12-31 | 1981-09-24 | Goodyear Aerospace Corp., Akron, Ohio | MATRIX ARRANGEMENT OF A VARIETY OF PROCESSING ELEMENTS FOR PARALLEL PROCESSORS |
DE3228628A1 (en) * | 1981-08-06 | 1983-02-24 | International Computers Ltd., London | Data-processing device |
GB2129589A (en) * | 1982-11-08 | 1984-05-16 | Nat Res Dev | Array processor cell |
US4467422A (en) * | 1980-03-28 | 1984-08-21 | International Computers Limited | Array processor |
US4740894A (en) * | 1985-09-27 | 1988-04-26 | Schlumberger Systems And Services, Inc. | Computing processor with memoryless function units each connected to different part of a multiported memory |
US4780820A (en) * | 1983-11-07 | 1988-10-25 | Masahiro Sowa | Control flow computer using mode and node driving registers for dynamically switching between parallel processing and emulation of von neuman processors |
EP0375401A1 (en) * | 1988-12-20 | 1990-06-27 | Amt(Holdings) Limited | Processor array |
EP0375400A1 (en) * | 1988-12-20 | 1990-06-27 | Amt(Holdings) Limited | Processor array system |
WO2001063647A2 (en) * | 2000-02-24 | 2001-08-30 | Hyduke Stanley M | Digital circuit implementation by means of parallel sequencers |
-
1973
- 1973-04-13 GB GB1780973A patent/GB1445714A/en not_active Expired
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2916065A1 (en) * | 1978-05-03 | 1979-11-15 | Int Computers Ltd | GROUP PROCESSORS |
DE2946119A1 (en) * | 1978-11-23 | 1980-06-04 | Int Computers Ltd | DATA PROCESSING DEVICE |
FR2442478A1 (en) * | 1978-11-23 | 1980-06-20 | Int Computers Ltd | DATA PROCESSING INSTALLATION FOR CONTROLLING MULTIPLE DATA TRAINS |
DE3049437A1 (en) * | 1979-12-31 | 1981-09-24 | Goodyear Aerospace Corp., Akron, Ohio | MATRIX ARRANGEMENT OF A VARIETY OF PROCESSING ELEMENTS FOR PARALLEL PROCESSORS |
GB2140589A (en) * | 1979-12-31 | 1984-11-28 | Goodyear Aerospace Corp | An array of a plurality of processing elements |
US4467422A (en) * | 1980-03-28 | 1984-08-21 | International Computers Limited | Array processor |
DE3228628A1 (en) * | 1981-08-06 | 1983-02-24 | International Computers Ltd., London | Data-processing device |
GB2129589A (en) * | 1982-11-08 | 1984-05-16 | Nat Res Dev | Array processor cell |
US4780820A (en) * | 1983-11-07 | 1988-10-25 | Masahiro Sowa | Control flow computer using mode and node driving registers for dynamically switching between parallel processing and emulation of von neuman processors |
US4740894A (en) * | 1985-09-27 | 1988-04-26 | Schlumberger Systems And Services, Inc. | Computing processor with memoryless function units each connected to different part of a multiported memory |
EP0375401A1 (en) * | 1988-12-20 | 1990-06-27 | Amt(Holdings) Limited | Processor array |
EP0375400A1 (en) * | 1988-12-20 | 1990-06-27 | Amt(Holdings) Limited | Processor array system |
WO2001063647A2 (en) * | 2000-02-24 | 2001-08-30 | Hyduke Stanley M | Digital circuit implementation by means of parallel sequencers |
WO2001063647A3 (en) * | 2000-02-24 | 2001-12-20 | Stanley M Hyduke | Digital circuit implementation by means of parallel sequencers |
US6578133B1 (en) * | 2000-02-24 | 2003-06-10 | Stanley M. Hyduke | MIMD array of single bit processors for processing logic equations in strict sequential order |
US6915410B2 (en) * | 2000-02-24 | 2005-07-05 | Stanley M. Hyduke | Compiler synchronized multi-processor programmable logic device with direct transfer of computation results among processors |
Also Published As
Publication number | Publication date |
---|---|
AU6746974A (en) | 1975-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cannon | A cellular computer to implement the Kalman filter algorithm | |
AU624524B2 (en) | Simplified synchronous mesh processor | |
US4907148A (en) | Cellular array processor with individual cell-level data-dependent cell control and multiport input memory | |
US4507748A (en) | Associative processor with variable length fast multiply capability | |
US7496731B2 (en) | Two dimensional addressing of a matrix-vector register array | |
US3970993A (en) | Cooperative-word linear array parallel processor | |
GB1026888A (en) | Computer | |
GB1575213A (en) | Floating point data processor | |
RU98110876A (en) | NEUROPROCESSOR, DEVICE FOR CALCULATING SATURATION FUNCTIONS, COMPUTING DEVICE AND SUMMER | |
US20030200378A1 (en) | Providing a register file memory with local addressing in a SIMD parallel processor | |
US3812470A (en) | Programmable digital signal processor | |
GB1445714A (en) | Array processors | |
US4833602A (en) | Signal generator using modulo means | |
EP0028472B1 (en) | Digital computer having programmable structure | |
CN114341981A (en) | Memory with artificial intelligence mode | |
US3700873A (en) | Structured computer notation and system architecture utilizing same | |
EP0223690A2 (en) | Processor array with means to control cell processing state | |
US3018956A (en) | Computing apparatus | |
US5363322A (en) | Data processor with an integer multiplication function on a fractional multiplier | |
US10885985B2 (en) | Processor in non-volatile storage memory | |
GB1536933A (en) | Array processors | |
Seeber et al. | Associative logic for highly parallel systems | |
KR960013358B1 (en) | Register file for bit slice processor with simultaneous accessing of plural memory array cells | |
JP2793357B2 (en) | Parallel processing unit | |
SU720510A1 (en) | Associative memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PS | Patent sealed | ||
732 | Registration of transactions, instruments or events in the register (sect. 32/1977) | ||
PCNP | Patent ceased through non-payment of renewal fee |