2012-03-12 45 views

回答

2

我得到它的工作(从http://www.testbench.in/OT_10_OVM_SEQUENCE_5.html以下说明),通过添加以下到我的ovm_sequence在task body()

if(!(p_sequencer.get_config_int("max_timeout",max_timeout))) 
    max_timeout = ... // some default value 

这里的关键是,在命令行配置需要为序进行设置,并且序列可以使用上述代码来获取该配置。

2

我不知道有一种机制可以让你像命令行那样设置配置空间。 OVM源的一个快速的grep也不显示任何东西。

OVM序列快速评论不是OVM层次

他们不是在构建时构建的一部分,这是正确的。他们创造,他们开始在序运行之前,但任何基于ovm_object类都可以通过询问get_config_int()一个配置整数


通常我会使用一个设定的加精氨酸这样的事情,和我的基础测试类中的config int基于那个plus-arg。例如,在命令行必须:

+max_timeout=100000 

......然后,在我的测试基类,我所有的测试继承:

function void build(); 
    int timeout; 
    [....] 
    if ($value$plusargs("max_timeout=%d", timeout)) begin 
     `ovm_info(get_type_name(), "Setting timeout", OVM_MEDIUM); 
     set_config_int("*", "max_timeout", timeout"); 
    end 
    [....] 
endfunction 

通常我的用途是不那么字面因为它具有设置多个值的标志,但这是它的基础。