我在xilinx中编写了一个程序,该代码在ModelSim
中编译得很好,但在xilinx中编译时出现此错误。Xilinx中的模板错误
ERROR:Xst:899 - line 78: The logic for <iterator> does not match a known FF or Latch template. The description style you are using to describe a register or latch is not supported in the current software release.
我不知道为什么我收到这个错误。下面是代码:
module BcdCounter(input clk,input reset, output reg [3:0]out
);
reg [23:0]iterator;
always @(posedge clk,negedge reset)
begin
if(~reset)
begin
out=0;
iterator=0;
end
else
// clock divider
if(iterator==50000000) // 50Mhz clock divider
begin
out<=out+1;
iterator=0;
end
iterator=iterator+1;
end
endmodule
问候
您正在混合阻塞和非阻塞赋值。这可能与它有关。 – dwikle 2013-03-02 13:59:33
对不起,这是一个错字。此更新后的代码会给出此错误 – 2013-03-02 14:00:49
Iterator = iterator + 1不在else子句中,可能仅适用于模型sim,因为已使用阻止分配。 Iterator = 0,不会在硬件中执行。 – Morgan 2013-03-02 14:14:54