Claims Analysis
Total Claims: 8
Claim 1
Independent Claim
279 words
In a computer system capable of issuing a plurality of instructions in parallel, a method for determining the number of instructions that can be issued without conflict, the method comprising the steps of: assigning an order number to each instruction within an issue consideration group; determining for each instruction a first index for the first source register file of the instruction; determining for each instruction a second index for the second source register file of the instruction; determining for each instruction a third index for the result destination file of the instruction; comparing the third indices of the instructions in the issue consideration group to determine an instruction at which a destination register file conflict exists comprising the steps of, a) using a first instruction to create a list of previously considered instructions; b) retrieving the instruction having the next highest order number as the current instruction under consideration; c) determining whether the destination register file of the current instruction is the same as the destination register file of any instruction in the list; d) adding the current instruction to the list and returning to step b) if the destination register file of the current instruction is not the same as the destination register file of any instruction in the list; and e) outputting the order number of the current instruction under consideration minus one if the destination register file of the current instruction is the same as the destination register file of any instruction in the list; and comparing the third index to the first and second indices for each instruction in the issue consideration group to determine an instruction at which a source register file conflict exists.
Claim 2
Dependent Claim
279 words
In a computer system capable of issuing a plurality of instructions in parallel, a method for determining the number of instructions that can be issued without conflict, the method comprising the steps of: assigning an order number to each instruction within an issue consideration group; determining for each instruction a first index for the first source register file of the instruction; determining for each instruction a second index for the second source register file of the instruction; determining for each instruction a third index for the result destination file of the instruction; comparing the third indices of the instructions in the issue consideration group to determine an instruction at which a destination register file conflict exists comprising the steps of, a) using a first instruction to create a list of previously considered instructions; b) retrieving the instruction having the next highest order number as the current instruction under consideration; c) determining whether the destination register file of the current instruction is the same as the destination register file of any instruction in the list; d) adding the current instruction to the list and returning to step b) if the destination register file of the current instruction is not the same as the destination register file of any instruction in the list; and e) outputting the order number of the current instruction under consideration minus one if the destination register file of the current instruction is the same as the destination register file of any instruction in the list; and comparing the third index to the first and second indices for each instruction in the issue consideration group to determine an instruction at which a source register file conflict exists.
Claim 3
Dependent Claim
304 words
In a computer system capable of issuing a plurality of instructions in parallel, a method for determining the number of instructions that can be issued without conflict, the method comprising the steps of: assigning an order number to each instruction within an issue consideration group; determining for each instruction a first index for the first source register file of the instruction; determining for each instruction a second index for the second source register file of the instruction; determining for each instruction a third index for the result destination file of the instruction; comparing the third indices of the instructions in the issue consideration group to determine an instruction at which a destination register file conflict exists; and comparing the third index to the first and second indices for each instruction in the issue consideration group to determine an instruction at which a source register file conflict exists comprising the steps of, a) selecting the instruction having the second lowest order number as a current instruction under consideration; b) determining whether the third index for the current instruction is the same as the second index for the current instruction; c) determining whether the third index for the current instruction is the same as the first index for the current instruction; d) outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the second index for the current instruction; e) outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the third index for the current instruction; and f) selecting the instruction having the next higher order number as the current instruction under consideration if the second index is equal to the third index and the first index.
Claim 4
Dependent Claim
304 words
In a computer system capable of issuing a plurality of instructions in parallel, a method for determining the number of instructions that can be issued without conflict, the method comprising the steps of: assigning an order number to each instruction within an issue consideration group; determining for each instruction a first index for the first source register file of the instruction; determining for each instruction a second index for the second source register file of the instruction; determining for each instruction a third index for the result destination file of the instruction; comparing the third indices of the instructions in the issue consideration group to determine an instruction at which a destination register file conflict exists; and comparing the third index to the first and second indices for each instruction in the issue consideration group to determine an instruction at which a source register file conflict exists comprising the steps of, a) selecting the instruction having the second lowest order number as a current instruction under consideration; b) determining whether the third index for the current instruction is the same as the second index for the current instruction; c) determining whether the third index for the current instruction is the same as the first index for the current instruction; d) outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the second index for the current instruction; e) outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the third index for the current instruction; and f) selecting the instruction having the next higher order number as the current instruction under consideration if the second index is equal to the third index and the first index.
Claim 5
Dependent Claim
379 words
A computer system which issues a plurality of instructions in parallel comprising: a central memory for storing sequences of said instructions: a plurality of functional units for processing data in accordance with said sequences of instructions: a plurality of register files for supplying data to said functional units and for receiving data from said functional units: an instruction buffer for receiving said sequences of instructions transferred from said memory; and a control unit which receives an issue consideration group comprising a set of instructions transferred from said memory and which automatically determines a largest subset of instructions within said issue consideration group which can be simultaneously issued to said functional units without conflicts, said control unit comprising; means for assigning an order number to each instruction within said issue consideration group; means for determining for each instruction a first index for the first source register file of the instruction; means for determining for each instruction a second index for the second source register file of the instruction; means for determining for each instruction a third index for the result destination file of the instruction; means for comparing the third indices of the instructions in the issue consideration group to determine the instruction at which a destination register file exists comprising, means for using a first instruction to create a list of previously considered instructions; means for retrieving the instruction having the next highest order number as the current instruction under consideration; means for determining whether the destination register file of the current instruction is the same as the destination register file of any instruction in the list; means for adding the current instruction to the list and invoking said means for retrieving the instruction if the destination register file of the current instruction is not the same as the destination register file of any instruction in the list; and means for outputting the order number of the current instruction under consideration minus one if the destination register file of the current instruction is the same as the destination register file of any instruction in the list; and means for comparing the third index to the first and second indices for each instruction in the issue consideration group to determine the instruction at which a source register file conflict exists.
Claim 6
Dependent Claim
379 words
A computer system which issues a plurality of instructions in parallel comprising: a central memory for storing sequences of said instructions: a plurality of functional units for processing data in accordance with said sequences of instructions: a plurality of register files for supplying data to said functional units and for receiving data from said functional units: an instruction buffer for receiving said sequences of instructions transferred from said memory; and a control unit which receives an issue consideration group comprising a set of instructions transferred from said memory and which automatically determines a largest subset of instructions within said issue consideration group which can be simultaneously issued to said functional units without conflicts, said control unit comprising; means for assigning an order number to each instruction within said issue consideration group; means for determining for each instruction a first index for the first source register file of the instruction; means for determining for each instruction a second index for the second source register file of the instruction; means for determining for each instruction a third index for the result destination file of the instruction; means for comparing the third indices of the instructions in the issue consideration group to determine the instruction at which a destination register file exists comprising, means for using a first instruction to create a list of previously considered instructions; means for retrieving the instruction having the next highest order number as the current instruction under consideration; means for determining whether the destination register file of the current instruction is the same as the destination register file of any instruction in the list; means for adding the current instruction to the list and invoking said means for retrieving the instruction if the destination register file of the current instruction is not the same as the destination register file of any instruction in the list; and means for outputting the order number of the current instruction under consideration minus one if the destination register file of the current instruction is the same as the destination register file of any instruction in the list; and means for comparing the third index to the first and second indices for each instruction in the issue consideration group to determine the instruction at which a source register file conflict exists.
Claim 7
Dependent Claim
402 words
A computer system which issues a plurality of instructions in parallel comprising: a central memory for storing sequences of said instructions: a plurality of functional units for processing data in accordance with said sequences of instructions: a plurality of register files for supplying data to said functional units and for receiving data from said functional units: an instruction buffer for receiving said sequences of instructions transferred from said memory; and a control unit which receives an issue consideration group comprising a set of instructions transferred from said memory and which automatically determines a largest subset of instructions within said issue consideration group which can be simultaneously issued to said functional units without conflicts, said control unit comprising; means for assigning an order number to each instruction within said issue consideration group; means for determining for each instruction a first index for the first source register file of the instruction; means for determining for each instruction a second index for the second source register file of the instruction; means for determining for each instruction a third index for the result destination file of the instruction; means for comparing the third indices of the instructions in the issue consideration group to determine the instruction at which a destination register file exists comprising, means for comparing the third index to the first and second indices for each instruction in the issue consideration group to determine the instruction at which a source register file conflict exists comprising, means for selecting the instruction having the second lowest order number as a current instruction under consideration: means for determining whether the third index for the current instruction is the same as the second index for the current instruction; means for determining whether the third index for the current instruction is the same as the first index for the current instruction; means for outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the second index for the current instruction; means for outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the third index for the current instruction; and means for selecting the instruction having the next higher order number as the current instruction under consideration if the second index is equal to the third index and the first index.
Claim 8
Dependent Claim
402 words
A computer system which issues a plurality of instructions in parallel comprising: a central memory for storing sequences of said instructions: a plurality of functional units for processing data in accordance with said sequences of instructions: a plurality of register files for supplying data to said functional units and for receiving data from said functional units: an instruction buffer for receiving said sequences of instructions transferred from said memory; and a control unit which receives an issue consideration group comprising a set of instructions transferred from said memory and which automatically determines a largest subset of instructions within said issue consideration group which can be simultaneously issued to said functional units without conflicts, said control unit comprising; means for assigning an order number to each instruction within said issue consideration group; means for determining for each instruction a first index for the first source register file of the instruction; means for determining for each instruction a second index for the second source register file of the instruction; means for determining for each instruction a third index for the result destination file of the instruction; means for comparing the third indices of the instructions in the issue consideration group to determine the instruction at which a destination register file exists comprising, means for comparing the third index to the first and second indices for each instruction in the issue consideration group to determine the instruction at which a source register file conflict exists comprising, means for selecting the instruction having the second lowest order number as a current instruction under consideration: means for determining whether the third index for the current instruction is the same as the second index for the current instruction; means for determining whether the third index for the current instruction is the same as the first index for the current instruction; means for outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the second index for the current instruction; means for outputting an instruction order number of the current instruction minus one if the third index for the current instruction is not the same as the third index for the current instruction; and means for selecting the instruction having the next higher order number as the current instruction under consideration if the second index is equal to the third index and the first index.