Professional Documents
Culture Documents
Instructionmem Instructions: Register Pcreg
Instructionmem Instructions: Register Pcreg
Br_Taken_ID
D clk D
brTaken
rst
clk clk clk
rst rst rst
instruction_31:26 controller controller
opCode
hazard_detected U1
hazard_detected_in 1
mux adderInput adder add4 register PCReg instructionMem instructions
hazard_detected 3 brTaken Br_Taken_ID brTaken_out Br_Taken_EXE
32'd4 sel
in1 in1 clk rst CU2and 2 brTaken_in
rst branchEn
PC PC_IF PC_ID EXE_CMD AND2 EXE_CMD EXE_CMD_ID EXE_CMD EXE_CMD_EXE
adderIn1 adderOut
out out regOut instruction PCIn PC EXE_CMD EXE_CMD_IN
v al2_ID brOf f ser branch_comm branch_comm
brOf f serTimes4 CU2Cond
in2 in2 regIn addr Branch_command
<<2 Is_Imm is_imm
is_imm_out
writeEn Is_Imm
instruction ST_or_BNE ST_or_BNE_out ST_or_BNE
ST_or_BNE
WB_EN WB_EN WB_EN_ID WB_EN WB_EN_EXE WB_EN WB_EN_MEM WB_EN WB_EN_WB
WB_EN WB_EN_IN WB_EN_IN WB_EN_IN
instruction inst_IF inst_ID MEM_R_EN MEM_R_EN MEM_R_EN_ID MEM_R_EN MEM_R_EN_EXE MEM_R_EN MEM_R_EN_MEM MEM_R_EN MEM_R_EN_WB
instructionIn
instruction MEM_R_EN MEM_R_EN_IN MEM_R_EN_IN MEM_R_EN_IN
MEM_W_EN MEM_W_EN MEM_W_EN_ID MEM_W_EN MEM_W_EN_EXE MEM_W_EN MEM_R_EN
dataMem dataMem
MEM_W_EN MEM_W_EN_IN MEM_W_EN_IN
reg1_ID reg1 v al1 v al1_ID v al1 v al1_EXE clk
~f reeze
f reeze v al1_IN rst clk
~f reezef lush rst
conditionChecker conditionChecker
MEM_W_EN_MEM
reg1
inst_ID_25:21 dest dest_EXE dest MEM_W_EN dest dest_WB
hazard_detected destIn v al1_sel v al1_sel destIn writeEn destIn
regFile regFile Cond2and
brCond MEM_R_EN
v al2_sel v al2_sel readEn
clk reg2 reg2_ID ST_v alue ST_v alue_EXE
hazard_detected rst reg2In ST_v al_sel ST_v al_sel dest_MEM
src2_f orw src2_f orw_ID src2_out src2_f orw_EXE ST_v alue_EXE2MEM STVal ST_v alue_MEM
out src2_in in3 STValIn
5'd0 mux mux_val2
in2
sel
in1
instruction_15:0
signExt2Mux
in out in3
forwarding forwarding
src1_EXE
src2_EXE
v al1_sel ST_src_EXE
dest_MEM
v al2_sel
B B
dest_WB
ST_v al_sel
WB_EN_MEM
WB_EN_WB
A A
Title
<Title>