clock gate X/M and M/W store data registers
This commit is contained in:
@ -35,6 +35,8 @@ class ioCtrlDpath extends Bundle()
|
||||
val wb_wen = Bool(OUTPUT);
|
||||
val wb_valid = Bool(OUTPUT)
|
||||
val ex_mem_type = Bits(OUTPUT, 3)
|
||||
val ex_rs2_val = Bool(OUTPUT)
|
||||
val mem_rs2_val = Bool(OUTPUT)
|
||||
// exception handling
|
||||
val exception = Bool(OUTPUT);
|
||||
val cause = UFix(OUTPUT, 6);
|
||||
@ -746,6 +748,8 @@ class Control(implicit conf: RocketConfiguration) extends Component
|
||||
io.dpath.eret := wb_reg_eret
|
||||
io.dpath.ex_mem_type := ex_reg_mem_type
|
||||
io.dpath.ex_br_type := ex_reg_br_type
|
||||
io.dpath.ex_rs2_val := ex_reg_mem_val && isWrite(ex_reg_mem_cmd) || ex_reg_vec_val
|
||||
io.dpath.mem_rs2_val := mem_reg_vec_val
|
||||
|
||||
io.fpu.valid := !ctrl_killd && id_fp_val
|
||||
io.fpu.killx := ctrl_killx
|
||||
|
Reference in New Issue
Block a user