cowhead 2022-12-01 16:09 采纳率: 50%
浏览 36
已结题

fpga逻辑与代码不符合的问题

请教一下各位,我有一段verilog代码,很诡异,ila调试结果与代码不一致,请各位帮忙看一下
reg[7:0] state = 0;
reg[7:0] channel = 0;
reg[7:0] data = 0;
reg start = 0;
always@(posedge sys_clk )begin
case(state)
0:begin
channel<=100;
data<=100;
start<=1;
state<=state + 1;
end
1:begin
state<=state + 1;
end
default:begin
start<=0;
channel<=0;
data<=0;
state<=0;
end
endcase
end
我通过ila调试发现,多数情况下state=1时,channel和data都被赋值成100的而且start=1,但是偶尔在state=1时,ila里面检测到channel=100,data=6,data不一定等于6,还可能等于别的值且这时候start 不等于1了,代码我仔细检查过好多遍,确认没有multi driver net的情况,这个问题我调了2天了,太困惑了,请教一下各位这大概时什么情况,谢谢

  • 写回答

1条回答 默认 最新

  • yy64ll826 2022-12-02 15:38
    关注
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月5日
  • 创建了问题 12月1日