Patent ID: 9424041
Filing Date: 2016-08-23
CPC Classification: G06F

Claim Text:
1. A method of processing a plurality of instructions, the method comprising: speculatively waking up a source of a dependent instruction by a producer instruction of the dependent instruction; speculatively waking up, by the dependent instruction, a source of a nested dependent instruction depending on the dependent instruction; setting a source ready bit of the source of the dependent instruction and setting a source ready bit of the source of the nested dependent instruction to indicate that the source of the dependent instruction and the source of the nested dependent instruction are ready for access; setting a cancel timer of the source of the dependent instruction for controlling cancellation of selectability of the dependent instruction for execution by an instruction scheduler and setting a cancel timer of the source of the nested dependent instruction for controlling cancellation of selectability of the nested dependent instruction for execution by the instruction scheduler, based on a number of cycles at which a cancel instruction is expected to be asserted for canceling the producer instruction; and simultaneously canceling the dependent instruction and the nested dependent instruction to indicate that the dependent instruction and the nested dependent instruction are unavailable to be selected for execution by the instruction scheduler if (i) the cancel timer of the source of the dependent instruction and the cancel timer of the source of the nested dependent instruction expire and (ii) the producer instruction is canceled according to a received cancel instruction corresponding to a cancel indicator of the producer instruction, wherein the cancel timer of the source of the dependent instruction and the cancel timer of the source of the nested dependent instruction expire when the cancel timer of the source of the dependent instruction and the cancel timer of the source of the nested dependent instruction reach a predetermined value.