【从零开始学习 UVM】10.2、UVM TLM —— UVM TLM Blocking Put Port
文章目录
-
- UVM TLM Port Example
-
- 1. 创建一个发送器类,其端口类型为 uvm_blocking_put_port
- 2. 创建一个接收器类,实现 put 方法。
- 3. 在更高层次上连接端口及其实现
- Put Port 阻塞行为
任何组件都可以通过 TLM put port向另一个组件发送事务。接收组件应该定义 put port的实现。这个实现给了接收者机会去定义如何处理传入的数据包。
端口的性质可以是阻塞或非阻塞的,这将决定发送方在接收方接受对象之前是否会阻止执行 put 方法。下面所示的示例是一个 TLM Blocking put 端口,在一个组件中连接到其它组件的实现端口。
UVM TLM Port Example
下面定义了一个名为Packet的类,作为从一个组件传输到另一个组件的数据项。这个类对象将有两个随机变量,在发送之前可以随机化。