1/1
Branch Target Buffer Hardware Implementation
by Unknown on Dec 10, 2003 |
Not available! | ||
Hello,
Does any one has some documents ( Verilog or VHDL code is also fine) about a detailed Branch Target Buffer hardware implementation? I know that a BTB entry may consist of : branch tag, prediction information, the branch target address, and instructions at the branch target. But, how about call and return instructions? Do they have also to be in the BTB ? If so, how do the fetch unit make difference between a call, return or branch instructions. Thank you for your help. PN: I have seen most of the papers published about BTB, but I did not find a detailed implementation. /Ben IS, UEC |
Branch Target Buffer Hardware Implementation
by Unknown on Dec 10, 2003 |
Not available! | ||
Thanks Kugan,
AFIK, for this implementation, you need to decode the instruction type
first.
Do you mean that I have to add a "branch type" field in the BTB?
/Ben
----- Original Message -----
From: "#KUGAN VIVEKANANDARAJAH#" kugan@pmail.ntu.edu.sg>
To: "Ben A. Abderazek" ben@is.uec.ac.jp>; "List about OpenRISC cores,free
microprocessors" openrisc@opencores.org>
Sent: Wednesday, December 10, 2003 3:24 PM
Subject: RE: [openrisc] Branch Target Buffer Hardware Implementation
I know that a BTB entry may consist of: branch tag, prediction
information, the branch target address, and instructions at the branch target. But, how about call and return instructions? Call/return is predicted with a return address stack.
Do they have also to be in the BTB ? If so, how do the fetch unit make
difference between a call, return or branch instructions. AFIK, for this implementation, you need to decode the instruction type first. Kugan |
Branch Target Buffer Hardware Implementation
by Unknown on Dec 10, 2003 |
Not available! | ||
I know that a BTB entry may consist of: branch tag, prediction
information, the branch target address, and instructions at the branch target. But, how about call and return instructions? Call/return is predicted with a return address stack.
Do they have also to be in the BTB ? If so, how do the fetch unit make
difference between a call, return or branch instructions. AFIK, for this implementation, you need to decode the instruction type first. Kugan |
1/1