vvp时在verilog中无限循环

时间:2019-05-01 09:08:49

标签: verilog

运行vvp时,此代码陷入无限循环,我不知道为什么。

此代码已编译,没有任何错误。

有没有人能弄清楚为什么这段代码陷入无限循环?

lstm_out, hidden = self.lstm(embeds, hidden)
print(lstm_out) # imagine a sample output like [1,0 , 2,0] 
                #                      forward out  | backward out

stacked = lstm_out.contiguous().view(-1,hidden_dim) # hidden_dim = 2

print(stacked) # torch.Tensor([[1,0],
               #               [2,0]])

1 个答案:

答案 0 :(得分:2)

您已经编码了两个无限循环。在此声明中,i有点宽:

reg i;

因此,这是一个无限循环(因为i总是小于W):

for (i = 1; i <= W; i = i + 1) begin

当然,您的意思是

integer i;

我建议始终对循环变量使用integer,而不要使用其他位宽受限制的类型。