如何修复 'port multiply driven' 警告 System Verilog

How to fix 'port multiply driven' warnings System Verilog

我有一个 AXI UVC,它可以配置为主或从,以及一个带有 3 个时钟块的接口(mst_cb、slv_cb、mon_cb)。我收到警告消息,告诉我端口是多重驱动的。您如何修复这些警告消息?

我不确定,但我认为问题在于端口具有不同的方向,具体取决于所使用的时钟块(即 AWREADY 是主设备的输入和从设备的输出)。

interface axi_if();
  logic aclk;
  logic awready;

  clocking mst_cb @(posedge aclk);
     input awready;
  endclocking

  clocking slv_cb @(posedge aclk);
    ouput awready;
  endclocking

endinterface

我尝试暂时删除从属时钟块,警告消息消失了。但是,当 UVC 配置为从机时,我需要从机时钟块。

这很可能是因为有人连续分配给 aready。将声明更改为电线。