как работает systemverilog передача значения аргумента? - PullRequest
0 голосов
/ 03 октября 2018

Теперь я анализирую код UVM, как показано ниже для изучения.

 // UVM run_phase()
task run_phase(uvm_phase phase);
  forever begin
    // send the item to the DUT
    send_to_dut(req);
  end
endtask : run_phase

task send_to_dut(uart_frame frame);


endtask : send_to_dut

введите описание изображения здесь Но я запутался, что аргумент send_to_dut(req) reqможно перейти на send_to_dut(uart_frame frame) х uart_frame frame?Это довольно запутанно.

req -> uart_frame frame

1 Ответ

0 голосов
/ 03 октября 2018

Это работает, потому что значение в этом случае является классом handle .И дескриптор является ссылкой на объект класса.Таким образом, вы передаете ссылку по значению.Смотрите эту ссылку для более подробной информации

...