You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
assign if_ready = ctrl_fsm_i.kill_if || (seq_ready && predec_ready &&!dummy_insert &&!ctrl_fsm_i.halt_if);// todo: !dummy_insert should not be needed here if factored into seq_ready, predec_ready already as would be logical
dummy_insert ?1'b1:// Dummies are always single operation
394
+
dummy_insert ?1'b1:// Dummies are always single operation // todo: also first_op_o = 1?
395
+
// todo: provide list of IF 'submodules' and explanation on their relative priorities and exclusivity. Also ordering of tbljmp and dummy_insert is misleading here
395
396
seq_valid ? seq_last :1'b1; // Any other regular instructions are single operation.
Copy file name to clipboardExpand all lines: sva/cv32e40s_ex_stage_sva.sv
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -143,7 +143,7 @@ endgenerate
143
143
144
144
145
145
// Check that branch target remains constant while a branch instruction is in EX
146
-
// Restricted check to only be valid when local instr_valid is true, as the branch target
146
+
// Restricted check to only be valid when local instr_valid is true, as the branch target // todo: not agreed with using instr_valid here (it is much to broad/permissive); maybe data independent timing related CSR needs to be handled differently to make this assertion easier to reason about
147
147
// will change when data independent timing is being enabled in WB. Eventually the branch will
148
148
// then be killed. When data independing timing is enabled, the target may change from operand_c to pc_if.
0 commit comments