always @(posedge clk or negedge reset) begin if(clk && !reset) begin stage <= stage + 1; en <= 1; elseif(reset) begin stage <= 0; en <= 0; end end