- uvm搭建分层的testbench,组件之间的通信通过tlm
组件的通信接口
- sequencer和driver之家通信机制uvm已经做好,在agent的connect_phase将driver和sequencer的接口进行连接
组件接口
SV实现组件之间的通信
使用中间接口对象
UVM组件之间的通信:TLM1.0/2.0
UVM TLM 1.0
push/put mode
示例
producer
- 每循环一次就产生一个tr,就调用一次put函数
consumer
env
result
注意
- producer产生数据,向外发送数据,一般定义为export
- consumer接收数据,处理数据,一般定义为port
pull/get mode
FIFO mode
- 最常用的就是fifo
Analysis port
uvm_subscriber
- subscriber中定义了analysis_export
Port pass-through
UVM TLM 2.0
Blocking transport initiator
Non-Blocking transport initiator
TLM 2.0常用负载
组件同步Component synchronization
uvm_pool