【发布时间】:2017-04-27 16:00:38
【问题描述】:
我写了一小段 Verilog,它显示了 LED 的计数。我收到来自 Vivado 的警告:
[Synth 8-3332] Sequential element (led_reg[3]) is unused and will be removed from module top.
这是我的代码:
module top(
input wire reset, // ACTIVE LOW
input wire system_clk_p,// 200MHz DIFFERENTIAL CLOCK
input wire system_clk_n,//
//LED
output reg [3:0] led
);
reg counter;
wire reset_p;
assign reset_p = ~reset;
clk_wiz_0 clocks
(
.clock_200MHz_p(system_clk_p), // Input Clock 200MHz p
.clock_200MHz_n(system_clk_n), // Input Clock 200MHz n
.clock_125MHz(clock_125MHz), // Output Clock 125MHz
.reset(reset_p)
);
always @(posedge clock_125MHz or negedge reset)
begin
if (!reset)
begin
counter <= 0;
led <= 0;
end
else
begin
counter <= counter + 1;
if (counter == 125000000)
begin
counter <= 0;
led <= led + 1;
end
end
end
endmodule
我认为 LED 的寄存器是绝对需要的,因为我正在增加 LED 的值。
【问题讨论】: