×

System for passing an index value with each prediction in forward direction to enable truth predictor to associate truth value with particular branch instruction

  • US 6,081,887 A
  • Filed: 11/12/1998
  • Issued: 06/27/2000
  • Est. Priority Date: 05/13/1998
  • Status: Expired due to Fees
First Claim
Patent Images

1. A branch predictor for use with a data processor which includes an instruction pipeline wherein multiple conditional branch instructions are pending at the same time in various stages, the branch predictor apparatus comprising:

  • (a) a stored predictor, connected to a fetch stage of the instruction pipeline, the stored predictor accepting a stored predictor input value, and providing as an output a stored prediction value to enable the instruction pipeline to continue processing of a particular conditional branch instruction, the stored predictor further comprising;

    (ii) an index counter associated with each one of a plurality of fetch program counter values of the particular conditional branch instruction, each index counter containing an index counter value indicating one of several candidate predictions to use for a next serial instance of the same conditional branch instruction; and

    (iii) a storage array containing a number of addressable locations corresponding to the number of index counters, wherein each location in the storage array stores the multiple candidate predictions;

    (b) a truth based predictor, connected to a retire stage of the instruction pipeline, the retire stage occurring after the fetch stage, the truth based predictor accepting a truth based predictor input value and a truth value indicating the actual result of the particular conditional branch instruction, and providing a truth based prediction value of the next execution instance of the particular conditional branch instruction as an output, andthe index counters being connected to the instruction pipeline so that the stored predictor passes to the truth based predictor, through the instruction pipeline, in a forward direction from the fetch stage towards the retire stage an index counter value used with each prediction, to enable the truth based predictor to associate the truth value with a particular conditional branch instruction.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×