[source]

Module ibex_branch_predict

clk_ilogicrst_nilogicfetch_rdata_i[31:0]logicfetch_pc_i[31:0]logicfetch_valid_ilogicpredict_branch_taken_ologicpredict_branch_pc_ologic[31:0]

Block Diagram of ibex_branch_predict

Ports

Name

Type

Direction

Description

clk_i

wire logic

input

rst_ni

wire logic

input

fetch_rdata_i

wire logic [31 : 0]

input

Instruction from fetch stage

fetch_pc_i

wire logic [31 : 0]

input

fetch_valid_i

wire logic

input

predict_branch_taken_o

var logic

output

Prediction for supplied instruction

predict_branch_pc_o

var logic [31 : 0]

output

Assertions

Name

Kind

Description

ibex_branch_predict.BranchInsTypeOneHot

concurent assert

disable iff((!rst_ni)!=='0)(fetch_valid_i |-> $onehot0({instr_j, instr_b, instr_cj, instr_cb}))

Always Blocks

always_comb @()

Select out the branch offset for target calculation based upon the instruction type