【一周上手UVM】第二期:sequence机制的隐式启动方式,factory机制的两种覆盖方式

举报
ReCclay 发表于 2022/02/21 22:29:07 2022/02/21
【摘要】 导读:验证平台是复杂的,要使用UVM搭建一个验证平台更是一件相当繁杂的事情,正确地掌握并理顺这些步骤对于初学者来说无疑是一个相当艰难的过程。针对这些痛点,本系列专栏将由浅入深展现UVM搭建验证平台的...

导读:验证平台是复杂的,要使用UVM搭建一个验证平台更是一件相当繁杂的事情,正确地掌握并理顺这些步骤对于初学者来说无疑是一个相当艰难的过程。针对这些痛点,本系列专栏将由浅入深展现UVM搭建验证平台的若干实例,囊括UVM中常用的几种重要机制。同时,本专栏也可为数字IC设计工程师提供一些参考,通过本专栏内容的学习,可实现快速上手搭建UVM验证环境并编写基本的测试用例!

实例二相对于实例一有以下变化:

  • 实例二在env中采用了default_sequence的隐式方式启动sequence发送数据,不同于实例一中的start()方式启动;
  • 实例二中添加了新的数据包,该包继承原来的包,增补了约束,用于后续的覆盖;
  • 实例二增加了测试用例,在测试用例中利用factory机制,实现了数据包packet_da_3对于packet的覆盖(override),而不用新建sequence,提高了代码的重用性。
    • 在test_collection.sv中的分别采用了set_inst_override_by_type()和set_type_override_by_type()方法实现数据包的覆盖,由于用来覆盖的数据包一致,所以最终效果一致。

文章来源: recclay.blog.csdn.net,作者:ReCclay,版权归原作者所有,如需转载,请联系作者。

原文链接:recclay.blog.csdn.net/article/details/121370394

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。