2012-03-12 26 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 

通常我的用途是不那麼字面因爲它具有設置多個值的標誌,但這是它的基礎。