Block-based branch prediction using a target finder array storin

Patent

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

39542103, 39542104, 395800, G06F 930, G06F 938

Patent

active

056088868

ABSTRACT:
A target finder array in the instruction cache contains a lower portion of the target address and a block encoding indicating if the target address is within the same 2K-byte block that the branch instruction is in, or if the target address is in the next or previous 2K-byte block. The upper portion of the target address, its block number, which corresponds to the starting address of a 2K block, is generated from the target finder simply by taking the upper portion or block number of the branch instruction and incrementing and decrementing it, and using the block encoding in the finder to select either the unmodified block number of the branch instruction, or the incremented or decremented block number of the branch instruction. The lower portion of the target address that was stored in the finder is concatenated with the selected block number to get the predicted target address. The target address can be predicted in parallel with reading an instruction out of the cache, making the target available at the same time the branch instruction is available, eliminating pipeline stalls for correctly predicted branches. The initially predicted target address in the finder is generated by a quick decode of the instruction and is written when the cache is loaded from memory. The initial prediction does not have to be accurate because branch resolution logic will update the finder on each branch resolution. Register indirect branches and exceptions may also be predicted. Two instruction sets may be accommodated by different block encodings to indicate the instruction set. By using the block encoding, the finder array is small and inexpensive.

REFERENCES:
patent: 4110822 (1978-08-01), Porter et al.
patent: 5088030 (1992-02-01), Yoshida
patent: 5093778 (1992-03-01), Favor et al.
patent: 5163140 (1992-11-01), Stiles et al.
patent: 5193156 (1993-03-01), Yoshida et al.
patent: 5226130 (1993-07-01), Favor et al.
patent: 5230068 (1993-07-01), Van Dyke et al.
patent: 5276882 (1994-01-01), Emma et al.
patent: 5287467 (1994-02-01), Blaner et al.
patent: 5307504 (1994-04-01), Robinson et al.
patent: 5327547 (1994-07-01), Stiles et al.
patent: 5367703 (1994-11-01), Levitan
patent: 5394529 (1995-02-01), Brown, III et al.
patent: 5414822 (1995-05-01), Saito et al.
patent: 5442756 (1995-08-01), Grochowski et al.
patent: 5454089 (1995-09-01), Nguyen et al.
patent: 5454117 (1995-09-01), Puziol et al.
Perleberg, Chris H. and Smith, Alan Jay, "Branch Target Buffer Design and Optimization", IEEE Transactions on Computers.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Block-based branch prediction using a target finder array storin does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Block-based branch prediction using a target finder array storin, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Block-based branch prediction using a target finder array storin will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2154597

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.