Я пытаюсь сделать тестовый стенд в edaplayground
В моем коде есть какая-то ошибка, но я не могу найти ничего плохого в своем коде. EDA Playground говорит
Msgstr "Выполнение прервано или достигло максимального времени выполнения."
Вот мой код
forever #5 clk = ~clk;
1 ответ
Ваш тестовый стенд включает в себя следующие строки:
forever
#5 clk = ~clk;
Этот код будет выполняться вечно. (Подсказка в синтаксисе.) Следовательно, ваша симуляция никогда не остановится. Максимальное время пробега EDA Playground составляет 1 минуту, поэтому ваша симуляция будет убита после этого. Отсюда и ваше сообщение об ошибке.
Вам нужно остановить выполнение этого кода, когда вы закончите с ним. Вам нужно что-то вроде этого:
reg clk, clear, go;
...
initial
begin
go = 1'b1;
...
while (go)
#5 clk = ~clk;
end
initial begin
$dumpfile("systolic_array1.vcd");
$dumpvars(1,systolic_array);
#10
...
go = 1'b0;
end