Я ищу оператор (например, задачу / функцию), у которого есть возможность непрерывно назначать вывод (локальной переменной), а не один раз, в конце задачи.Например:
reg [7:0] out_from_task1 ;
reg [7:0] out_from_task2 ;
task automatic test ;
input [7:0] input_task ;
output [7:0] output_task ;
begin
output_task = 'b0 ;
#4 output_task = input_task ;
#2 output_task = input_task +2 ;
end
endtask
initial begin
fork
test(8'd10,out_from_task1) ;
test(8'd8,out_from_task2) ;
join
end
Значение, которое я получаю, является последним, тогда out_from_task1 имеет значение 12.Мне нужно увидеть сигнал out_from_task1 изменения.Первые 10, через некоторое время 12.
Могу ли я сделать это без использования глобальных переменных в Verilog?Все началось с параллельного выполнения большего количества задач в тестовом стенде.