【发布时间】:2018-03-27 19:13:11
【问题描述】:
如何使用此 Verilog 代码生成 1Hz 时钟信号,同时保持计数功能? Maxval 使计数器能够计数到某个值,然后通过复位回到 0 并重新开始。或者,如果它达到最大值,它只会重置并再次计数。问题是,我的 FPGA 有一个 50Mhz 时钟,但我需要使用这个带有 1Hz 和 2Hz 时钟的计数器。有关为此目的调整此代码的任何提示?
module clocktime(input clk, freerun, Reset, output, input[7:0] Maxval, output reg[7:0] Count, output reg Carry);
always @ (posedge clk or posedge Reset) begin
if ( Reset ) begin
Count <= 0;
Carry <= 0;
end
else
if ( freerun )
if ( Count < Maxval ) begin
Count <= Count + 8'd1;
Carry <= 0;
end
else begin
Count <= 0;
Carry <= 1;
end
end
endmodule
【问题讨论】:
标签: verilog