управление событиями "@" в systemverilog в uvm, определенном ПОСЛЕ заданий - PullRequest
1 голос
/ 20 октября 2019

Я пытаюсь понять код драйвера UVM, определенный в примере UVM env "verifyguide.com": https://www.edaplayground.com/x/5r89

В файле mem_driver.sv в задаче drive () выполните следующеекод можно найти: if (req.wr_en) begin // операция записи DRIV_IF.wr_en <= req.wr_en; DRIV_IF.wdata <= req.wdata;@ (задано vif.DRIVER.clk);end </p>

Как происходит управление событиями @ (posedge vif.DRIVER.clk);строка написана ПОСЛЕ событий, которые контролируютсяПомогите мне понять намерения разработчика в этом случае?

1 Ответ

0 голосов
/ 20 октября 2019

Это необходимо для того, чтобы убедиться, что wr_en активен в течение по крайней мере одного такта до следующей запрошенной транзакции. В противном случае следующая транзакция немедленно установит ее обратно в 0.

...