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

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

日志

Testbench_Testbench/Build

已有 1042 次阅读| 2018-9-6 14:14 |系统分类:芯片设计

         UVM测试平台的第一个phase是build phase。在此phase期间,组成测试平台层次结构的uvm_component类被构造成对象。构造过程自上而下,在配置和构造下一级别之前构建层次结构的每一级。这种构造方法称为延迟构造。

    【此处需插入一幅图】

    在顶层test module 的initial块中调用run_test()方法时,UVM测试平台将被激活。此方法是一个UVM静态方法,它采用一个字符串参数来定义要运行的test并通过factory来构造它。然后,UVM基础结构通过调用test类build方法来启动build phase。
    在执行tests build phase期间,验证平台组件配置对象将被准备,并对配置对象中的虚拟接口句柄进行testbench module接口的分配。下一步是将配置对象放入test的配置表中。最后,下一级层次结构被构建。
    在下一级层次结构中,检索由test准备的配置对象,并且可以进行进一步的配置。在配置对象用于指导下一级层次结构的配置和条件构造之前,可以通过该级别的层次结构修改它。此条件构造会影响测试平台的topology或层次结构。build phase自上而下工作,因此对于测试平台层次结构的每个继承级别都重复该过程,直到到达分层树的底部。
    build phase完成后,connect phase用于确保所有内部组件被连接。connect phase从测试平台层次结构的底部到顶部工作。connect phase之后,其余的UVM phases在控制权传递回testbench module之前运行完成。

    The Test Is The Starting Point For The Build Process:

    UVM测试平台的构建过程从test class开始,并自上而下工作。 The test class build method是在build phase期间首先被调用的方法,test method设置的内容决定了在UVM测试平台中构建的内容。the tests build method的功能是:
    设置一些factory overrides,以便将配置对象或组件对象创建为继承类型;
    创建和配置各个子组件所需的配置对象;
    通过testbench module,将一些虚拟接口句柄分配放入配置空间;
    构建嵌套的env配置对象,然后将其设置到配置空间中;
    在testbench层次结构中构建下一级别,通常是顶层env。
 
    对于给定的设计验证环境,构建方法中完成的大部分工作对于所有tests都是相同的,因此建议创建一个可以轻松扩展为每个test case的测试基类。
    为了帮助解释test build过程的工作原理,此处将引用块级验证环境。
    此示例是SPI主接口DUT的环境,它包含两个agents,一个用于其APB总线接口,另一个用于其SPI接口。可以在Block Level Testbench Example文章中找到此示例的构建和连接过程的详细说明。

    【此处需插入一幅图】

    

    


点赞

评论 (0 个评论)

facelist

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

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

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 2

    粉丝
  • 0

    好友
  • 0

    获赞
  • 6

    评论
  • 访问数
关闭

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

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

GMT+8, 2024-4-17 02:52 , Processed in 0.028589 second(s), 18 queries , Gzip On, Redis On.

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