Claims Analysis
Total Claims: 8
Claim 1
Independent Claim
229 words
A computer system for performing a plurality of iterations of a loop of instructions, where a result operand from one iteration of the loop is used as a source operand in a subsequent iteration of said loop, the system comprising: a processing unit having a plurality of processors some of which provide result operands and some of which perform operations on source operands; a multiconnect unit for storing operands at addressable locations; an instruction unit including a loop counter for storing a loop count representing the number of iterations of said loop, said loop count having a loop count range which includes an ending value and means for specifying source address offsets and result address offsets relative to a modifiable pointer; and invariant addressing means operative to provide the modifiable pointer, the pointer having a value determined by the iteration value stored by the instruction unit; to combine the pointer with a result address offset during one iteration to provide a result address and to cause a result operand to be stored in the multiconnect unit at a location designated by said result address; and to combine the pointer with one of the source address offsets during another iteration to provide a source address that designates the location in which the result operand was stored and to retrieve the operand from said location for use as a source operand.
Claim 2
Dependent Claim
229 words
A computer system for performing a plurality of iterations of a loop of instructions, where a result operand from one iteration of the loop is used as a source operand in a subsequent iteration of said loop, the system comprising: a processing unit having a plurality of processors some of which provide result operands and some of which perform operations on source operands; a multiconnect unit for storing operands at addressable locations; an instruction unit including a loop counter for storing a loop count representing the number of iterations of said loop, said loop count having a loop count range which includes an ending value and means for specifying source address offsets and result address offsets relative to a modifiable pointer; and invariant addressing means operative to provide the modifiable pointer, the pointer having a value determined by the iteration value stored by the instruction unit; to combine the pointer with a result address offset during one iteration to provide a result address and to cause a result operand to be stored in the multiconnect unit at a location designated by said result address; and to combine the pointer with one of the source address offsets during another iteration to provide a source address that designates the location in which the result operand was stored and to retrieve the operand from said location for use as a source operand.
Claim 3
Dependent Claim
52 words
A computer system according to claim 1 wherein the instruction unit comprises: an epilog counter for storing an epilog count representing ending iterations in which progressively fewer instructions are executed in each succeeding iteration, the epilog count being utilized to control the execution of the ending iterations and exit from the loop.
Claim 4
Dependent Claim
258 words
A computer system for performing a plurality of iterations of a loop of instructions, where a result operand from one iteration of the loop is used as a source operand in a subsequent iteration of said loop, the system comprising: storage means for storing a set of instructions including a plurality of instructions defining a loop; processor means having a plurality of processors each responsive to an instruction to perform an operation on an input operand and provide an output operand; instruction means including storage means for storing an iteration value presenting an iteration of the instructions defining the loop, the instruction means oeprative to receive the set of instructions from the storage means, to provide the instructions defining the loop to the processor means at substantially the same time such that each processor performs an operation in response to a different one of the instructions, and to generate input address offsets and output address offsets associated with various of the provided instructions; invariant address means operative to provide a multiconnect pointer, to modify the multiconnect pointer according to the iteration value stored in the instruction means, and to combine the pointer with the address offsets to generate input and output operand addresses, respectively; and multiconnect storage means having a plurality of addressable storage locations, oeprative to receive the operand addresses, furnish any operand which is stored at a location identified by an input operand address to the processor means, and store any output operand from the processor means at a location identified by an output operand address.
Claim 5
Dependent Claim
258 words
A computer system for performing a plurality of iterations of a loop of instructions, where a result operand from one iteration of the loop is used as a source operand in a subsequent iteration of said loop, the system comprising: storage means for storing a set of instructions including a plurality of instructions defining a loop; processor means having a plurality of processors each responsive to an instruction to perform an operation on an input operand and provide an output operand; instruction means including storage means for storing an iteration value presenting an iteration of the instructions defining the loop, the instruction means oeprative to receive the set of instructions from the storage means, to provide the instructions defining the loop to the processor means at substantially the same time such that each processor performs an operation in response to a different one of the instructions, and to generate input address offsets and output address offsets associated with various of the provided instructions; invariant address means operative to provide a multiconnect pointer, to modify the multiconnect pointer according to the iteration value stored in the instruction means, and to combine the pointer with the address offsets to generate input and output operand addresses, respectively; and multiconnect storage means having a plurality of addressable storage locations, oeprative to receive the operand addresses, furnish any operand which is stored at a location identified by an input operand address to the processor means, and store any output operand from the processor means at a location identified by an output operand address.
Claim 6
Dependent Claim
56 words
A computer system according to claim 3 wherein the multiconnect means comprises a plurality of multiconnect elements each operative to receive an output operand from a processor during one iteration of the loop, store the received operand, and provide a stored operand as an input operand to a processor during a subsequent iteration of the loop.
Claim 7
Dependent Claim
91 words
A computer system according to claim 4 wherein the multiconnect elements are arranged in a matrix of rows and columns, the elements of each row being associated with an output from a different one of the processors such that an output operand from a processor is simultaneously stored in all the elements of the associated row, and the elements in each column being associated with an input to a different one of the processors such that a processor receives an input operand from any of the elements in the associated column.
Claim 8
Dependent Claim
56 words
A computer system according to claim 3 wherein the storage means in the instruction means comprises an epilog counter for storing an epilog count representing ending iterations in which progressively fewer instructions are executed in each succeeding iteration, the epilog count being utilized to control the execution of the ending iterations and exit from the loop.