valid out bug fix
diff --git a/verilog/rtl/user_proj_example.sv b/verilog/rtl/user_proj_example.sv
index 1c056fc..c660de5 100644
--- a/verilog/rtl/user_proj_example.sv
+++ b/verilog/rtl/user_proj_example.sv
@@ -86,6 +86,7 @@
wire [31:0] addr;
wire wb_valid_f;
+ wire wb_valid_ns;
assign la_write_en = |la_write;
assign addr = la_write_en ? la_addr : rdwraddr;
@@ -190,7 +191,9 @@
assign valid_out = {sqrt_valid_out,div_valid_out,valid_in[8:0]};
- rvdff #(1) wb_valid_ff (.clk(clk), .rst_l(rst_l), .din(wb_valid), .dout(wb_valid_f));
+ assign wb_valid_ns = |valid_out ? wb_valid : wb_valid_f;
+
+ rvdff #(1) wb_valid_ff (.clk(clk), .rst_l(rst_l), .din(wb_valid_ns), .dout(wb_valid_f));
// return output data according to module enable
assign {out, exceptions} = ({37{illegal_op}} & {32'b0 ,5'b0 }) |