Jag har en modul som ska räkna antalet pulser på data_in så länge som ingången reset är hög. När reset går låg ska resultatet av additionen skickas ut på data_out. Problemet är att jag måste nollställa tmp nästa gång reset går hög då additonen ska börja om. Hur realiserar jag detta? Jag kan ju inte tilldela tmp även i ett "posedge reset"-block.
Kod: Markera allt
module counter(data_in,reset,data_out);
input data_in;
input reset;
output [3:0]data_out;
reg [3:0]tmp;
reg [3:0]count;
always @ (posedge data_in)
begin
tmp <= tmp + 1;
end
always @ (negedge reset)
begin
count <= tmp;
end
assign data_out = count;
endmodule