从 9999 到 0630 的 7 段显示中递减计数的 Verilog 代码

Verilog code for down counting in 7 segment display from 9999 to 0630

我想编写一个从 9999 倒数到 0630 的代码,并在按下 FPGA Nexys3 上的重置按钮时显示初始值 (9999)。

这是我的框图:

我已经完成了慢时钟模块,但我不知道应该在哪个模块中编写复位代码?它应该是什么?

如果我知道计数器(项目模块)的代码,我就能编写其余模块。

请帮我写计数器代码和重置代码。

重置功能应为输出和内部寄存器分配初始计数器值。

重置值为 9999。计数器应在每个时钟脉冲上从 9999 递减计数至 0630。达到 0630 后,它会重置,并且可以选择给出 out 脉冲指示。

以下是示例代码,这可能不是最佳版本。

module ctr(counter,reset,clk)//out

output reg [13:0] counter; 
// output reg out; 
input reset;
input clk;
always @(posedge clk, negedge reset) begin 
if(!reset) begin
  counter <= 14'd9999; 
  // out<=0;
end 
else begin
  if (counter == 14'd0630) begin 
    counter <= 14'd9999; 
    // out <= ~out; 
  end 
  else begin 
    counter <= counter -1; 
  end 
end
end
endmodule