Loops 当我使用变量作为结束条件时,For循环进入无限循环

Loops 当我使用变量作为结束条件时,For循环进入无限循环,loops,for-loop,verilog,quartus,Loops,For Loop,Verilog,Quartus,我有一个for循环,在Verilog中运行良好。看起来是这样的: for(j=0;jVerilog HDL不是编程语言,比如C或Python,而是一种硬件描述语言(HDL)。因此,合成工具将把for循环展开到一个固定的硬件电路,为此,它需要知道循环中的(最大)迭代次数 在您的案例中,似乎是合成工具(Altera Quartus II/Prime),当结束条件是基于m作为寄存器时,无法理解这一点,因此您必须将其重写为每个循环都有一个恒定的结束条件,从而允许合成工具将其展开到固定的硬件电路。Veri

我有一个for循环,在Verilog中运行良好。看起来是这样的:


for(j=0;jVerilog HDL不是编程语言,比如C或Python,而是一种硬件描述语言(HDL)。因此,合成工具将把
for
循环展开到一个固定的硬件电路,为此,它需要知道循环中的(最大)迭代次数


在您的案例中,似乎是合成工具(Altera Quartus II/Prime),当结束条件是基于
m
作为寄存器时,无法理解这一点,因此您必须将其重写为每个循环都有一个恒定的结束条件,从而允许合成工具将其展开到固定的硬件电路。

Verilog HDL不是编程语言,如C或Python,而是硬件描述语言(HDL)因此,合成工具将把
for
循环展开到一个固定的硬件电路,为此,它需要知道循环中的(最大)迭代次数

在您的情况下,合成工具(Altera Quartus II/Prime)似乎无法确定何时结束条件基于
m
作为寄存器,因此您必须将其重写为每个循环都有一个恒定的结束条件,从而允许合成工具将其展开到固定的硬件电路。

您正在实施(查看)对于合成或非合成材料?这是合成,因为“”是由Altera Quartus II/Prime生成的。您正在实施(寻找)合成或非合成材料吗?这是合成,因为“”是由Altera Quartus II/Prime生成的。