大多数dut都有许多不同的接口(interface),每个接口都有自己特有的协议。UVM agent的任务就是集中管理和这个接口相关的所有内容,主要是各种用于驱动和监测DUT的验证组件(uvm_components),这些组件的命令最好都使用同一个前缀进行命名。
Uvm_agent中的package通常包括:
• A Sequence_item -agent 中可能存在一个或多个sequence item,这些事务定义了agent驱动和监测DUT的信号级内容.
• A Driver - .driver 用于将sequence_items中的数据转换为信号级行为。
• A Sequencer - sequencer 的作用是将sequence_items从生成的sequence 路由到driver。
• A Monitor - monitor 观察DUT接口上的信号级行为,并将其观察的结果数据转换为sequence_items,然后发送到scoreboards 等组件,已生成预期数据或者其他的数据分析处理。
• Conf