UVM仿真的启动(一)—— run_test()

目录

0. 引言

1. run_test

1.1. global::run_test

1.1.1. get_root

1.2. uvm_root::run_test

1.2.1 line 410~431

1.2.2 line 433~467

1.2.3 line 469~488

1.2.4 line 500~527

2.小结


0. 引言

我们都知道uvm环境是通过在tb顶层调用run_test方法来启动的,但它具体完成了什么呢?怎么样启动整个环境的呢?本专题则是围绕这两点学习源码,主要是m_run_phase方法,该方法按照设定的phase节点顺序调用了各个组件的phase。本文主要介绍run_test。

1. run_test

在tb_top中使用的run_test,是定义在uvm_globals.svh的一个全局方法。如下。

1.1. global::run_test

task run_test (string test_name="");
  uvm_root top;
  uvm_coreservice_t cs;
  cs = uvm_coreservice_t::get();
  top = cs.get_root();
  top.run_test(test_name);
endtask

通过该方法创建uvm_root的唯一实例,并调用uvm_root的run_test。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值