Claims Analysis
Total Claims: 34
Claim 1
Independent Claim
123 words
A method for providing precise trace faults for testing and debugging a superscalar processor, the method comprising the steps of: grouping instructions into a cluster of instructions to be executed simultaneously by the superscalar processor; decoding each instruction of the cluster; determining faulting instructions, if any, of the cluster of instructions, the faulting instructions being instructions having a break point for testing and debugging; if no faulting instructions were found, simultaneously executing each instruction in the cluster; if at least one faulting instruction was found, determining a break faulting instruction, the break faulting instruction being a first faulting instruction in the cluster of instructions; simultaneously executing the break faulting instruction and each instruction of the cluster occurring prior to the break faulting instruction.
Claim 2
Independent Claim
123 words
A method for providing precise trace faults for testing and debugging a superscalar processor, the method comprising the steps of: grouping instructions into a cluster of instructions to be executed simultaneously by the superscalar processor; decoding each instruction of the cluster; determining faulting instructions, if any, of the cluster of instructions, the faulting instructions being instructions having a break point for testing and debugging; if no faulting instructions were found, simultaneously executing each instruction in the cluster; if at least one faulting instruction was found, determining a break faulting instruction, the break faulting instruction being a first faulting instruction in the cluster of instructions; simultaneously executing the break faulting instruction and each instruction of the cluster occurring prior to the break faulting instruction.
Claim 3
Dependent Claim
35 words
The method as set forth in claim 1 further comprising the steps of: classifying instructions into instruction types; and grouping the instructions into the cluster of instructions according to a predetermined set of grouping rules.
Claim 4
Dependent Claim
45 words
The method as set forth in claim 2 wherein each instruction is classified as: a REG instruction if the instruction involves register to register operations; a MEM instruction if the instruction involves memory operations; and a BOP instruction if the instruction is a branch operation.
Claim 5
Dependent Claim
31 words
The method as set forth in claim 3 wherein the predetermined set of grouping rules require the cluster to be formed of at least one and no more than three instructions.
Claim 6
Dependent Claim
37 words
The method as set forth in claim 4 wherein each cluster can have at most one REG instruction, each cluster can have at most one MEM instruction and each cluster can have at most one BOP instruction.
Claim 7
Dependent Claim
30 words
The method as set forth in claim 5 wherein if a cluster is formed having a BOP instruction, the BOP instruction will be the last instruction in the consecutive sequence.
Claim 8
Dependent Claim
30 words
The method as set forth in claim 6 wherein if a cluster is formed having a REG instruction, the REG instruction will be the first instruction in the consecutive sequence.
Claim 9
Dependent Claim
169 words
A precise fault superscalar processor comprising: execution means for executing instructions simultaneously; grouping means for grouping instructions into a cluster of instructions to be executed simultaneously; decoding means coupled to the grouping means, the decoding means for decoding each instruction of the cluster; fault detection means coupled to the decoding means and the execution means, the fault detection means for detecting faulting instructions, if any, of the cluster, the faulting instructions being instructions having a break point for testing and debugging; scoreboard means coupled to the fault detection means and the execution means, the scoreboard means for determining a break faulting instruction, the break faulting instruction being a first faulting instruction in the consecutive sequence of the cluster instructions, if no faulting instructions were found, the execution means simultaneously executing each instruction in the cluster, if at least one faulting instruction was found, the execution means simultaneously executing the break faulting instruction and each instruction of the cluster in the consecutive instruction sequence prior to the break faulting instruction.
Claim 10
Dependent Claim
169 words
A precise fault superscalar processor comprising: execution means for executing instructions simultaneously; grouping means for grouping instructions into a cluster of instructions to be executed simultaneously; decoding means coupled to the grouping means, the decoding means for decoding each instruction of the cluster; fault detection means coupled to the decoding means and the execution means, the fault detection means for detecting faulting instructions, if any, of the cluster, the faulting instructions being instructions having a break point for testing and debugging; scoreboard means coupled to the fault detection means and the execution means, the scoreboard means for determining a break faulting instruction, the break faulting instruction being a first faulting instruction in the consecutive sequence of the cluster instructions, if no faulting instructions were found, the execution means simultaneously executing each instruction in the cluster, if at least one faulting instruction was found, the execution means simultaneously executing the break faulting instruction and each instruction of the cluster in the consecutive instruction sequence prior to the break faulting instruction.
Claim 11
Dependent Claim
48 words
The processor as set forth in claim 8 further comprising: a classifying means coupled to the grouping means, the classifying means for classifying instructions into instruction types; and the grouping means grouping instructions into the cluster of instructions according to predetermined grouping rules based upon the instruction types.
Claim 12
Dependent Claim
45 words
The processor as set forth in claim 9 wherein each instruction is classified as: a REG instruction if the instruction involves register to register operations; a MEM instruction if the instruction involves memory operations; and a BOP instruction if the instruction is a branch operation.
Claim 13
Dependent Claim
31 words
The processor as set forth in claim 10 wherein the predetermined set of grouping rules require the cluster to be formed of at least one and no more than three instructions.
Claim 14
Dependent Claim
37 words
The processor as set forth in claim 11 wherein each cluster can have at most one REG instruction, each cluster can have at most one MEM instruction and each cluster can have at most one BOP instruction.
Claim 15
Dependent Claim
30 words
The processor as set forth in claim 12 wherein if a cluster is formed having a BOP instruction, the BOP instruction must be the last instruction in the consecutive sequence.
Claim 16
Dependent Claim
30 words
The processor as set forth in claim 13 wherein if a cluster is formed having a REG instruction, the REG instruction must be the first instruction in the consecutive sequence.
Claim 17
Dependent Claim
145 words
A precise fault superscalar processor comprising: an executor for executing instructions simultaneously; a grouper for grouping instructions into a cluster of instructions to be executed simultaneously; a fault detector for detecting faulting instructions, if any, of the cluster, the faulting instructions being instructions having a break point for testing and debugging; and a scoreboard mechanism coupled to the fault detector and the executor, the scoreboard mechanism for determining a break faulting instruction if at least one faulting instruction was found, the break faulting instruction being a first faulting instruction in the consecutive sequence of the cluster instructions, if no faulting instructions were found, the executor simultaneously executing each instruction in the cluster, if at least one faulting instruction was found, the executor simultaneously executing the break faulting instruction and each instruction of the cluster in the consecutive instruction sequence prior to the break faulting instruction.
Claim 18
Dependent Claim
145 words
A precise fault superscalar processor comprising: an executor for executing instructions simultaneously; a grouper for grouping instructions into a cluster of instructions to be executed simultaneously; a fault detector for detecting faulting instructions, if any, of the cluster, the faulting instructions being instructions having a break point for testing and debugging; and a scoreboard mechanism coupled to the fault detector and the executor, the scoreboard mechanism for determining a break faulting instruction if at least one faulting instruction was found, the break faulting instruction being a first faulting instruction in the consecutive sequence of the cluster instructions, if no faulting instructions were found, the executor simultaneously executing each instruction in the cluster, if at least one faulting instruction was found, the executor simultaneously executing the break faulting instruction and each instruction of the cluster in the consecutive instruction sequence prior to the break faulting instruction.
Claim 19
Dependent Claim
43 words
The processor as set forth in claim 15 further comprising: a classifier coupled to the grouper, the classifier for classifying instructions into instruction types; and the grouper grouping the instructions into the clusters based on predetermined grouping rules based upon the instruction types.
Claim 20
Dependent Claim
45 words
The processor as set forth in claim 16 wherein each instruction is classified as: a REG instruction if the instruction involves register to register operations; a MEM instruction if the instruction involves memory operations; and a BOP instruction if the instruction is a branch operation.
Claim 21
Dependent Claim
31 words
The processor as set forth in claim 17 wherein the predetermined set of grouping rules require the cluster to be formed of at least one and no more than three instructions.
Claim 22
Dependent Claim
37 words
The processor as set forth in claim 18 wherein no cluster can have more than one REG instruction, no cluster can have more than one MEM instruction and no cluster can have more than one BOP instruction.
Claim 23
Dependent Claim
30 words
The processor as set forth in claim 19 wherein if a cluster is formed having a BOP instruction, the BOP instruction must be the last instruction in the consecutive sequence.
Claim 24
Dependent Claim
30 words
The processor as set forth in claim 20 wherein if a cluster is formed having a REG instruction, the REG instruction must be the first instruction in the consecutive sequence.
Claim 25
Independent Claim
160 words
A method for invoking precise trace faults in a superscalar processor, the method comprising the steps of: accessing the superscalar processor with a source external to the superscalar processor, the source for testing and debugging the superscalar processor, and setting at least one trace fault; grouping instructions into a cluster of instructions to be executed simultaneously by the superscalar processor; decoding each instruction of the cluster; determining faulting instructions, if any, of the cluster, the faulting instructions being instructions having a break point for testing and debugging; if no faulting instructions were found, simultaneously executing each instruction in the cluster; if at least one faulting instruction was found, i) determining a break faulting instruction, the break faulting instruction being a first faulting instruction of the cluster of instructions; ii) simultaneously executing the break faulting instruction and each instruction of the cluster prior to the break faulting instruction and then notifying the external source that the break faulting instruction has executed.
Claim 26
Independent Claim
160 words
A method for invoking precise trace faults in a superscalar processor, the method comprising the steps of: accessing the superscalar processor with a source external to the superscalar processor, the source for testing and debugging the superscalar processor, and setting at least one trace fault; grouping instructions into a cluster of instructions to be executed simultaneously by the superscalar processor; decoding each instruction of the cluster; determining faulting instructions, if any, of the cluster, the faulting instructions being instructions having a break point for testing and debugging; if no faulting instructions were found, simultaneously executing each instruction in the cluster; if at least one faulting instruction was found, i) determining a break faulting instruction, the break faulting instruction being a first faulting instruction of the cluster of instructions; ii) simultaneously executing the break faulting instruction and each instruction of the cluster prior to the break faulting instruction and then notifying the external source that the break faulting instruction has executed.
Claim 27
Dependent Claim
43 words
The method as set forth in claim 22 further further comprising the steps of: classifying instructions into instruction types; and the step of grouping the instructions comprising the step of grouping the instructions based on predetermined grouping rules based on the instruction types.
Claim 28
Dependent Claim
45 words
The method as set forth in claim 23 wherein each instruction is classified as: a REG instruction if the instruction involves register to register operations; a MEM instruction if the instruction involves memory operations; and a BOP instruction if the instruction is a branch operation.
Claim 29
Dependent Claim
31 words
The method as set forth in claim 24 wherein the predetermined set of grouping rules require the cluster to be formed of at least one and no more than three instructions.
Claim 30
Dependent Claim
37 words
The method as set forth in claim 25 wherein no cluster can have more than one REG instruction, no cluster can have more than one MEM instruction and no cluster can have more than one BOP instruction.
Claim 31
Dependent Claim
30 words
The method as set forth in claim 26 wherein if a cluster is formed having a BOP instruction, the BOP instruction must be the last instruction in the consecutive sequence.
Claim 32
Dependent Claim
30 words
The method as set forth in claim 27 wherein if a cluster is formed having a REG instruction, the REG instruction must be the first instruction in the consecutive sequence.
Claim 33
Dependent Claim
16 words
The method as set forth in claim 22 wherein the external source is a host system.
Claim 34
Dependent Claim
16 words
The method as set forth in claim 22 wherein the external source is a software debugger.