Как НЕ использовать циклы while () в verilog (для синтеза)?
У меня есть привычка разрабатывать множество тестовых программ и использовать циклы for () и while () для целей тестирования. Все в порядке. Проблема в том, что я приобрел эту привычку для кодирования схем, которые должны быть синтезируемыми. XST и другие отказываются синтезировать код (без дополнительной модификации параметров синтеза), такие как:
while (num < test_number)
begin
.
.
.
num = num+1;
end
Это плохой стиль кодирования, потому что для синтезатора test_num - это int со значением 2 ^ 32! или он видит это как неограниченный параметр. В любом случае, это плохая привычка кодирования. Но я так привык делать это на Си и тестовых стендах. Что было бы эквивалентно синтезируемому коду из вышеуказанного сегмента кода?
Спасибо!