ee_king的个人空间 https://blog.eetop.cn/1494617 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Testbench/Agent(从The Agent Configuration Object开始)

已有 796 次阅读| 2018-9-18 09:19 |系统分类:芯片设计

         agent有一个配置对象,用于定义:

  • 构建了agent的哪个子组件(Topology)
  • driver和monitor使用的虚拟接口的句柄
  • agent的行为

        按照惯例,UVM agent具有UVM_ACTIVE_PASSIVE_e类型的变量,用于定义agent是否为active(UVM_ACTIVE):如果是active那sequencer和driver被构造,或passive(UVM_PASSIVE)既没有构造driver或也没有构造sequencer。此参数称为active,默认情况下设置为UVM_ACTIVE。
        是否构建其他子组件由其他应具有描述性名称的变量控制。例如,如果存在功能覆盖monitor,则控制功能覆盖monitor是否构建的bit位可称为has_functional_coverage。
       配置对象将包含driver和monitor使用的虚拟接口的句柄。在test中配置和构造配置对象,并且在test中将虚拟接口句柄分配给从testbench module传来的虚拟接口。
       配置对象还可能包含影响agent行为或配置方式的其他变量。例如,在apb agent的配置对象中,存在设置存储器映射并确定针对哪些地址激活哪些apb PSEL线的变量。
       配置类应将其所有变量设置为公共默认值。
       以下代码示例显示了apb agent的配置对象。

       //
       // Class Description:
       //
       //
       class apb_agent_config extends uvm_object;

       // UVM Factory Registration Macro
       //
       `uvm_object_utils(apb_agent_config)

       // Virtual Interface
       virtual apb_if APB;

       //------------------------------------------
       // Data Members
       //------------------------------------------
       // Is the agent active or passive
       uvm_active_passive_enum active = UVM_ACTIVE;
       // Include the APB functional coverage monitor
       bit has_functional_coverage = 0;
       // Include the APB RAM based scoreboard
       bit has_scoreboard = 0;
       //
       // Address decode for the select lines:
       int no_select_lines = 1;
       logic[31:0] start_address[15:0];
       logic[31:0] range[15:0];

       //------------------------------------------
       // Methods
       //------------------------------------------

       // Standard UVM Methods:
       extern function new(string name = "apb_agent_config");

       endclass: apb_agent_config

       function apb_agent_config::new(string name = "apb_agent_config");
            super.new(name);
      endfunction



         
       


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 2

    粉丝
  • 0

    好友
  • 0

    获赞
  • 6

    评论
  • 访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-20 02:10 , Processed in 0.026439 second(s), 18 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部