Я совершенно новичок в verilog, и я должен знать довольно много об этом довольно скоро для курса, который я беру в университете. Поэтому я играю с моей версией DE2 board и quartis2 и изучаю все.Условие Verilog Loop
Я пытаюсь сделать счетчик, который включается и выключается переключателем. Пока счетчик подсчитывает и сбрасывается на основе нажатия клавиши.
Это моя ошибка:
Error (10119): Verilog HDL Loop Statement error at my_first_counter_enable.v(19): loop with non-constant loop condition must terminate within 250 iterations
Я понимаю, меня прошу предоставить переменный цикл, но даже при этом я получаю сообщение об ошибке. Это мой код:
module my_first_counter_enable(SW,CLOCK_50,LEDR,KEY);
input CLOCK_50;
input [17:0] SW;
input KEY;
output [17:0] LEDR;
reg [32:0] count;
wire reset_n;
wire enable;
assign reset_n = KEY;
assign enable = SW[0];
assign LEDR = count[27:24];
[email protected] (posedge CLOCK_50 or negedge reset_n) begin
if(enable)
if(!reset_n)
count = 0;
else
count = count + 1;
end
endmodule
Я надеюсь, что кто-то может указать на мою ошибку в моем цикле и позвольте мне продолжить.
Спасибо!
, хотя это действительно работает и на самом деле многому меня научил (например, это не похоже на другие микропроцессоры, которые я использовал). Я все еще хочу получить цикл while, поскольку это то, что я есть более знакомы. –
Я немного изменил код, и каждый раз, когда я это делаю, я не могу понять, почему я получаю ошибки. Одно такое редактирование - это тот, который я только что опубликовал на этот вопрос. Знаете ли вы, почему, когда я перемещаю if (enable), сбой компиляции? –