您好我正在尝试在Vivado 2017.2.1中执行这段代码并且我一直收到此错误
[Synth 8-3380]循环条件在2000次迭代后不收敛
while (side == 1)
begin
ball_x<=ball_x - 11'd10;
end
while (side == 0)
begin
ball_x<=ball_x + 11'd10;
end
if (ball_x <14)
begin
side=0;
end
else if (ball_x>1394)
begin
side=1;
end
此代码是为了让球在达到10px宽边框时改变方向。我在网上搜索了它,显然Vivado不支持几个版本的while循环,但最近增加了支持,所以这应该工作?
答案 0 :(得分:0)
您的代码似乎根本不是可编辑的,您需要了解FPGA的工作原理。
您的第一步应该是在设计中引入一个时钟,并了解硬件与软件有何不同。