Я пытаюсь использовать задержку в моем коде в Verilog. В файле, который я делаю, у меня есть блок всегда, внутри него оператор case, и несколько частей значений case должны содержать задержку.
Я попробовал протестировать простую программу со светодиодами. Я написал задержку в одной строке, но она не работает !! Никаких задержек не происходит. Что здесь происходит???
Линия это:
для (i = 0; i <= 100000000; i = i + 1) @ (заданные часы);
А также, как я могу добавить задержку в случайном месте? </p>
Вот мой код, он прост для проверки задержки:
module testni (clk, keypad, led1, led2);
input [0:6] keypad;
input clk;
output reg led1=1;
output reg led2=1;
integer i;
always@(keypad) begin
led1=0;
for(i=0;i<=100000000;i=i+1) @(posedge clk);
led2=0;
end
endmodule
Я пытаюсь сделать это: сделать одно утверждение, затем подождать 2 с, затем сделать другое утверждение. Разве это не должно ждать 2 с, а затем выключить led2 ??? Но в моем случае они оба выключены все время.