GB1445714A - Array processors - Google Patents

Array processors

Info

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
Application number
GB1780973A
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Services Ltd
Original Assignee
Fujitsu Services Ltd
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 Fujitsu Services Ltd filed Critical Fujitsu Services Ltd
Priority to GB1780973A priority Critical patent/GB1445714A/en
Priority to ZA00742069A priority patent/ZA742069B/en
Priority to US05/456,829 priority patent/US3979728A/en
Priority to AU67469/74A priority patent/AU489298B2/en
Publication of GB1445714A publication Critical patent/GB1445714A/en
Expired 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, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, 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
    • 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/8023Two dimensional arrays, e.g. mesh, torus
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • 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, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent 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.
GB1780973A 1973-04-13 1973-04-13 Array processors Expired GB1445714A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (16)

* Cited by examiner, † Cited by third party
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