← Back to Patent Explorer
US5230079A Expired / Lapsed US ⏱️ 0.0 years remaining

Massively parallel array processing system with processors selectively accessing memory module locations using address in microword or in address register

Assignee: Hewlett Packard Development Co LP
•
Filing: 1987-11-16
•
Granted: 1993-07-20
•
Expires: 2007-11-16
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An array processing system including a plurality of processing elements each including a processor and an associated memory module, the system further including a router network over which each processing element can transfer messages to other random processing elements, a mechanism by which a processor can transmit data to one of four nearest-neighbor processors. In addition, the processing elements are divided into groups each with four processing elements, in which one of the processing elements can access data in the other processing elements' memory modules. The routing network switches messages in a plurality of switching stages, with each stage connecting to the next stage through communications paths that are divided into groups, each group, in turn being associated with selected address signals. A communications path continuity test circuit associated with each path detects any discontinuity in the communications path and disables the path. Thus, the stage may attempt to transfer a message over another path associated with the same address.

Inventors

  • 👤 Robert S. Grondalski

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 09:33
CPC Classifications
G; G06; G06F; G06F15/00; G06F15/16; G06F15/163; G06F15/173; G06F15/17356; G06F15/17368; G06F15/17381; G06F15/76; G06F15/80; G06F15/8007; G06F15/8023; G11; G11C; G11C29/00; G11C29/006

Claims Analysis

Total Claims: 30
Claim 1
Independent Claim 239 words
An array processing system comprising: A. a plurality of processing elements for processing data in accordance with control microwords, said processing elements being divided up into a plurality of processing element groups, said control microwords including a first control microwords that carries an address and a control signal; B. a plurality of memory modules for storing data in a plurality of addressable storage locations, each memory module of said plurality of memory modules identified with a different processing element; C. a plurality of address registers for storing addresses, each of said address registers identified with a different one of said processing element groups, and wherein said plurality of address registers can be loaded with and can store different addresses; D. a plurality of address selection circuits each identified with a different one of said processing element groups, each of said address registers connected to said memory module and said address register identified with said processing element group, each said address selection circuit for receiving the address from said first control microword and for coupling either the address from said first control microword or the address stored in the identified address register to address said memory module identified with the respective processing element as selected by the control signal in said first control microword, wherein in response to a control signal which selects the identified address registers the processing element groups access different memory locations within their respective memory modules.
Claim 2
Dependent Claim 239 words
An array processing system comprising: A. a plurality of processing elements for processing data in accordance with control microwords, said processing elements being divided up into a plurality of processing element groups, said control microwords including a first control microwords that carries an address and a control signal; B. a plurality of memory modules for storing data in a plurality of addressable storage locations, each memory module of said plurality of memory modules identified with a different processing element; C. a plurality of address registers for storing addresses, each of said address registers identified with a different one of said processing element groups, and wherein said plurality of address registers can be loaded with and can store different addresses; D. a plurality of address selection circuits each identified with a different one of said processing element groups, each of said address registers connected to said memory module and said address register identified with said processing element group, each said address selection circuit for receiving the address from said first control microword and for coupling either the address from said first control microword or the address stored in the identified address register to address said memory module identified with the respective processing element as selected by the control signal in said first control microword, wherein in response to a control signal which selects the identified address registers the processing element groups access different memory locations within their respective memory modules.
Claim 3
Dependent Claim 42 words
An array processing system as defined in claim 1 further comprising a router network connected to all of said processing elements for transferring messages among the processing element groups and the address registers, the router network loading addresses into said address registers.
Claim 4
Dependent Claim 41 words
An array processing system as defined in claim 2 in which said router network transfers messages in serial format, each address register comprising a shift register including a plurality of stages for serially receiving and latching address bits comprising an address.
Claim 5
Dependent Claim 92 words
An array processing system as defined in claim 3 in which the address received by each of said memory modules includes a high-order portion provided by respective address registers and a low order portion provided by said first control microword, A. said system further including an address condition determining circuit for determining when the low-order portion of the address provided by the first control microword has a predetermined condition; and B. each of said address registers having an incrementation circuit that enables the incrementation of the address in the respective address register.
Claim 6
Dependent Claim 80 words
An array processing system as defined in claim 4 in which each of said incrementation circuits includes a plurality of incrementation stages, each identified with one of the stages of the shift register that determines the value of the address bit stored in the identified stage and the value of the next lower order address bit and in response thereto conditioning the value of the address bit stored in the identified stage and of the next higher order address bit.
Claim 7
Dependent Claim 40 words
An array processing system as defined in claim 4 in which each addressable storage location stores a digital data bit, the storage locations being divided into bytes, said predetermined condition constituting the identification of the last bit in a byte.
Claim 8
Dependent Claim 26 words
An array processing system as defined in claim 2 further comprising a control module for generating control signals for controlling the operation of said router network.
Claim 9
Dependent Claim 92 words
An array processing system as defined in claim 1 in which the address received by each of said memory modules includes a high-order portion provided by respective address registers and a low order portion provided by said first control microword, A. said system further including an address condition determining circuit for determining when the low-order portion of the address provided by the first control microword has a predetermined condition; and B. each of said address registers having an incrementation circuit that enables the incrementation of the address in the respective address register.
Claim 10
Dependent Claim 19 words
An array processing system as defined in claim 8 in which each address register comprises a plurality of stages.
Claim 11
Dependent Claim 80 words
An array processing system as defined in claim 9, in which each of said incrementation circuits includes a plurality of incrementation stages, each associated with one of the stages of the shift register, that determines the value of the address bit stored in the identified stage and the value of the next lower order address bit and in response thereto conditioning the value of the address bit stored in the identified stage and of the next higher order address bit.
Claim 12
Dependent Claim 40 words
An array processing system as defined in claim 8 in which each addressable storage location stores a digital data bit, the storage locations being divided into bytes, said predetermined condition constituting the identification of the last bit in a byte.
Claim 13
Dependent Claim 39 words
An array processing system as defined in claim 1 further comprising a control module for generating said control microwords, said control module transmitting said control microwords to said processing elements in parallel to control said processing elements in parallel.
Claim 14
Dependent Claim 260 words
An array processing system comprising: A. a plurality of processing element groups, each comprising: i. at least one processing element for processing data in accordance with control microwords, said control microwords including a first control microword that carries an address and a control signal, ii. a memory module associated with each processing element in the processing element group, each memory module storing data in a plurality of addressable storage locations; iii. an address register for storing an address, said address register comprising: (a) a shift register including a plurality of stages, each stage storing an address bit; and an incrementation circuit connected to each of said stages for enabling incrementation of the address in response to a selected condition; iv. an address selection circuit for selectively coupling an address from a control microword or from the address register in response to a local address mode control signal; B. a router network connected to all of said processing element groups for transferring messages, including addresses for storage in said address registers, among the processing element groups, and c. a control module for generating control microwords, each including an address and a local address mode control signal, to the processing element groups to control them in parallel, and for generating router network control signals for controlling the operation of said router network, wherein said address registers can be loaded with and can store different addresses and wherein in response to a control signal which selects the identified address registers the processing element groups access different memory locations within their respective memory modules.
Claim 15
Dependent Claim 260 words
An array processing system comprising: A. a plurality of processing element groups, each comprising: i. at least one processing element for processing data in accordance with control microwords, said control microwords including a first control microword that carries an address and a control signal, ii. a memory module associated with each processing element in the processing element group, each memory module storing data in a plurality of addressable storage locations; iii. an address register for storing an address, said address register comprising: (a) a shift register including a plurality of stages, each stage storing an address bit; and an incrementation circuit connected to each of said stages for enabling incrementation of the address in response to a selected condition; iv. an address selection circuit for selectively coupling an address from a control microword or from the address register in response to a local address mode control signal; B. a router network connected to all of said processing element groups for transferring messages, including addresses for storage in said address registers, among the processing element groups, and c. a control module for generating control microwords, each including an address and a local address mode control signal, to the processing element groups to control them in parallel, and for generating router network control signals for controlling the operation of said router network, wherein said address registers can be loaded with and can store different addresses and wherein in response to a control signal which selects the identified address registers the processing element groups access different memory locations within their respective memory modules.
Claim 16
Dependent Claim 212 words
An array processing system comprising: A. a plurality of processing elements for processing data in accordance with control microwords, said control microwords including a first control microword that carries an address and a control signal; B. a plurality of memory modules for storing data in a plurality of addressable storage locations, each said memory module identified with a different processing element of said plurality of processing elements; C. a plurality of address registers for storing addresses, each said address register identified with a different one of said processing elements, wherein said plurality of address registers can be loaded with and can store different addresses; D. a plurality of address selection circuit elements each identified with a different one of said processing elements, each said address selection circuit connected to said memory module and said address register identified with said processing element, each said address selection circuit element for coupling, as selected by said control signal in said first control microword, either the address from said first control microword or the address stored in the identified address register to address said memory module identified with the respective processing element, wherein response to a control signal that selects the identified address registers said processing elements access different memory locations within their respective memory modules.
Claim 17
Dependent Claim 212 words
An array processing system comprising: A. a plurality of processing elements for processing data in accordance with control microwords, said control microwords including a first control microword that carries an address and a control signal; B. a plurality of memory modules for storing data in a plurality of addressable storage locations, each said memory module identified with a different processing element of said plurality of processing elements; C. a plurality of address registers for storing addresses, each said address register identified with a different one of said processing elements, wherein said plurality of address registers can be loaded with and can store different addresses; D. a plurality of address selection circuit elements each identified with a different one of said processing elements, each said address selection circuit connected to said memory module and said address register identified with said processing element, each said address selection circuit element for coupling, as selected by said control signal in said first control microword, either the address from said first control microword or the address stored in the identified address register to address said memory module identified with the respective processing element, wherein response to a control signal that selects the identified address registers said processing elements access different memory locations within their respective memory modules.
Claim 18
Dependent Claim 39 words
An array processing system as defined in claim 14 further comprising a control module for generating said control microwords, said control module transmitting said control microwords to said processing elements in parallel to control said processing elements in parallel.
Claim 19
Dependent Claim 43 words
An array processing system as defined in claim 14 wherein each address register includes a switching circuit that can select the processing element with which that address register is identified as the source of the address which is loaded into that address register.
Claim 20
Dependent Claim 60 words
An array processing system as defined in claim 16 further comprising a router network connected to all of said processing elements and all of said switching circuits for transferring messages among the processing elements and said address registers, wherein the switching circuits can select the router network as the source of the address which is loaded into the address registers.
Claim 21
Dependent Claim 41 words
An array processing system as defined in claim 14 further comprising a router network connected to all of said processing elements for transferring messages among the processing elements and said address registers, the router network loading addresses into said address registers.
Claim 22
Dependent Claim 41 words
An array processing system as defined in claim 18 in which said router network transfers messages in serial format, each address register comprising a shift register including a plurality of stages for serially receiving and latching address bits comprising an address.
Claim 23
Dependent Claim 109 words
An array processing system as defined in claim 19 in which the address received by each of said memory modules includes a high-order portion provided by respective address registers and a low order portion provided by said first control microword, A. said system further including an address condition determining circuit for determining when the low-order portion of the address provided by said first control microword has a predetermined condition; and B. each of said address registers having an incrementation circuit that enables the incrementation of the address in the respective address register in response to said conditioning determining circuit determining that said first control microword has the predetermined condition.
Claim 24
Dependent Claim 78 words
An array processing system as defined in claim 20 in which said incrementation circuit includes a plurality of incrementation stages, each identified with one of the stages of the shift register, that determines the value of the address bit stored in the identified stage and the value of the next lower order address bit and in response thereto conditioning the value of the address bit stored in the identified stage and of the next higher order address bit.
Claim 25
Dependent Claim 40 words
An array processing system as defined in claim 20 in which each addressable storage location stores a digital data bit, the storage locations being divided into bytes, said predetermined condition constituting the identification of the last bit in a byte.
Claim 26
Dependent Claim 26 words
An array processing system as defined in claim 18 further comprising a control module for generating control signals for controlling the operation of said router network.
Claim 27
Dependent Claim 109 words
An array processing system as defined in claim 14 in which the address received by each of said memory modules includes a high-order portion provided by respective address registers and a low order portion provided by said first control microword, A. said system further including an address condition determining circuit for determining when the low-order portion of the address provided by said first control microword has a predetermined condition; and B. each of said address registers having an incrementation circuit that enables the incrementation of the address in the respective address register in response to said conditioning determining circuit determining that said first control microword has the predetermined condition.
Claim 28
Dependent Claim 40 words
An array processing system as defined in claim 24 in which each addressable storage location stores a digital data bit, the storage locations being divided into bytes, and predetermined condition constituting the identification of the last bit in a byte.
Claim 29
Dependent Claim 19 words
An array processing system as defined in claim 24 in which each address register comprises a plurality of stages.
Claim 30
Dependent Claim 77 words
An array processing as defined in claim 26 in which said incrementation circuit includes a plurality of incrementation stages, each identified with one of the stages of the shift register, that determines the value of the address bit stored in the identified stage and the value of the next lower order address bit and in response thereto conditioning the value of the address bit stored in the identified stage and of the next higher order address bit.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-07-19 1997-01-18 1997-07-20 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-07-19 2001-01-18 2001-07-20 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-07-19 2005-01-18 2005-07-20 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag