UVM_Agent中包含哪些内容?

电子说

1.3w人已加入

描述

大多数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 等组件,已生成预期数据或者其他的数据分析处理。

**• Configuration object ** - 一个配置容器,用于将信息由上层(env或者test case)传递给agent代理,从而影响agent的行为方式,以及与DUT的接口连接。

每个agent 都应该有一个配置对象,其中可能包括:

1、virtual interface ,其被driver和monitor使用来访问(驱动、监测)实际DUT接口信号,即组件的连接。

2、控制agent子组件的创建与否 (是否需要创建driver和sequencer )以及 具体行为 (错误注入、组件行为延时控制等等),即组件的行为配置按钮。

**• Functional coverage monitor ** - 收集协议特定的功能覆盖率。

**• A responder ** - 响应接口的slave_driver,注意不是主动激励接口的driver。

**• (API) Sequences ** - 调用driver的一个API,即BFM。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分