Я новичок в verilog. Я искал онлайн, и большинство из них предлагают не использовать for-loop в Verilog-кодировании. Так есть ли лучшая альтернатива для замены for-loop? Проблема, с которой я столкнулся сейчас, заключается в том, что мне нужно выполнить 1 или 2 цикла for в case case. И я думал о лучших альтернативах, но не придумал ни одного. Будет здорово, если кто-нибудь из вас может пролить свет на это.Лучшая альтернатива для петли verilog
Пример моего кода:
always @(*)
case (help)
4'd1: for (i=A; i<=20;i=i+B)
begin temp[i-1]=1; end
4'd2: for (i=A; i<=20;i=i+B)
begin temp[i-1]=1; B=B+1; end
4'd3: begin
for (i=A; i<=20;i=i+B)
begin temp[i-1]=1; B=B+1; end
for (i=A; i>=1;i=i-B)
begin temp[i-1]=1; B=B+1; end
end
default: temp = 0;
@Ari, к сожалению, мой код занимает очень очень много времени, чтобы компилировать. Я думаю, причина в том, что Грег упомянул ниже, что мои петли не статичны. –
Нет, статический или динамический характер кода не имеет ничего общего с временем компиляции. Однако код с нестатистическим циклом не может быть синтезирован. – Ari