UVM的疑惑
时间:10-02
整理:3721RD
点击:
看uvm的验证代码,有这么一句:
u_agt_din.mon.item_collected_port.connect(u_alg_model.din_item_collected_export);
就是将两个端口连接。
class u_agt_din里面的monitor收集到的数据,送给class u_alg_model来处理,但是为什么monitor对应的是port
而alg_model对应的是export呢?
我的理解,export指的是输出,port是的是输入?请大家帮我解惑。
u_agt_din.mon.item_collected_port.connect(u_alg_model.din_item_collected_export);
就是将两个端口连接。
class u_agt_din里面的monitor收集到的数据,送给class u_alg_model来处理,但是为什么monitor对应的是port
而alg_model对应的是export呢?
我的理解,export指的是输出,port是的是输入?请大家帮我解惑。
我认为export提供方法(不一定是最终方法提供者),port调用方法,它们不决定数据路径。
谢谢指教,对于UVM,我刚刚学呵呵。
源码中喜欢把imp类型的TLM名字弄成export。那个组件中例化了imp就要实现此类imp所提供的方法。port和imp链接好之后,你可以简单理解port的函数调用了imp的实现方法。
如你的u_agt_din.mon.item_collected_port的write其实调用的是u_alg_model.din_item_collected_export中你实现的write函数。
非常感谢,呵呵