UVM 中的端口、导出和实施端口

Port, Export & Implementation Port in UVM

UVM 中的端口、导出和实现端口到底是什么?

我知道像端口这样的东西通过调用一个方法来启动数据传输,该方法的定义必须存在于连接到它的实现端口中。但我仍然不知道确切的区别。

何时使用put port/export/implementation端口和get port/export/implementation端口类似,分析port/export & analysis/tlm fifo?

TLM 端口定义了一组用于特定连接的方法,而 TLM 导出提供了这些方法的实现。将端口连接到导出允许在调用端口方法时执行实现

任何 TLM 通信主要涉及两个部分,即生产者和消费者。生产者生成交易,消费者接收交易。

  • put-port 允许生产者向消费者发送交易。
  • get-port 允许消费者向生产者请求交易。
  • 当一个生产者需要同时向多个消费者发送(广播)时使用分析端口。这是一种非阻塞通信模式。
  • 当消费者想要存储收到的交易并在以后处理它们时,使用 TLM Fifos。

可以在 UVM 1.0 参考实现附带的用户指南中找到更详细和深入的信息。您可以下载相同的 http://www.accellera.org/downloads/standards/uvm