UVM:phase 机制

本文深入探讨了UVM的phase机制,从`run_test`开始,详细介绍了UVM测试平台的构建过程,包括uvm_test_top的例化、9大phase(如build_phase、connect_phase、run_phase)及其执行顺序。特别强调了run_phase中的objection机制,它是控制仿真结束的关键,并通过示例解释了如何在sequence中使用objection机制。此外,还分析了run_phase中组件的运行方式以及如何避免数据丢失问题。
摘要由CSDN通过智能技术生成


在Systemverilog搭建的平台中,还记得每个组件都需要有个task run();吗,该方法用于启动仿真,同时由test控制仿真的结束。而UVM提供了一套仿真运行规范,所有由UVM搭建的testbench都要在该规范下运行仿真。

主要介绍整个UVM框架的构建过程和testbench仿真过程

1. run_test(“my_test”);

UVM框架的产生和运行,全部从testbench中的一句run_test("my_test");开始,那么这一句子程序内部到底发生了什么呢?,这是本文的主要内容。

run_test("my_test");中的"my_test"是用户uvm_test扩展来的自定义test。
当然也可以写成run_test("");在仿真时在transcript写道+UVM_TESTNAME =my_test指定要运行的test
例如在questasim的transcript写vsim -novopt work.tb -classdebug +UVM_TESTNAME=my_test,等价于run_test(my_test);<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Starry丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值