uvm

    0熱度

    2回答

    有沒有辦法從序列的body()中調用$dumpvars, $dumpon $dumpoff? 它可以從模塊任務。 我需要控制$ dumpon $ dumpoff使轉儲不會太大 的另一種方法是在序列中開啓了一下top.dump_on,並在測試平臺 編輯等待此位: 我增加了一個頂級模塊: module dump(); bit stop=1'b0; task do_dump(st

    2熱度

    3回答

    我使用UVM命令行參數在UVM層次結構中設置配置屬性。 當我通過一個錯誤的配置選項,我想看到一個UVM_ERROR或另一個失敗指示。什麼是最簡單的方法來完成這一點? 例如,如果我通過在像一個壞的選擇: +uvm_set_config_int=bad,mode,5 辛完成了,我沒有看到日誌,該選項是壞的跡象,包括: # UVM_INFO @ 0: reporter [UVM_CMDLINE_PR

    3熱度

    2回答

    我想知道是否有更好的更直接的方式來利用多態從一個參數化類生成的一組類。 以下系統verilog代碼有效。有沒有更優雅的方式?編輯:我可以在C++中實現類似的東西嗎? `define OVERRIDE_PARAMETER_CPU parameter WIDTH=32 ; `define OVERRIDE_PARAMETER_GFX parameter WIDTH=16 ; class Req

    5熱度

    2回答

    有沒有一種簡單的方法來捎帶自定義函數到UVM_ERROR宏而不操縱UVM庫?(即每當在環境中的任何地方調用UVM錯誤時,我希望我的函數與它一起調用。 )

    3熱度

    1回答

    我有一個用RAL建模的大型寄存器映射,我想隨機化一些寄存器。如果我要限制寄存器seperately那麼這很簡單: reg_model.register_a.randomize() with {value > 5;} reg_model.register_b.randomize() with {value < 2;} reg_model.update(status); 但是,如果我想這兩個值

    0熱度

    2回答

    有沒有一種方法可以在模擬過程中停止所有運行的序列(比如當你重新設置時)? 有沒有辦法在模擬期間的特定時間轉儲所有運行序列的列表?

    0熱度

    1回答

    我有幾個與UVM階段build()和run()有關的問題。它們也可能適用於其他驗證方法 a>爲什麼build()階段按自上而下的順序執行。這是否意味着我們需要在build()階段中新建所有組件,然後繼續執行在該類中實例化的其他子組件的build()的build()?在運行()階段是類似super.run()調用?什麼是run()階段的執行順序

    3熱度

    1回答

    我有一個UVM記分牌,有多個檢查導致`uvm_error。 我想自動攔截uvm_error並轉儲我的記分牌的內容。其他工程師會在記分牌(​​及其子)上添加支票,因此回叫應該儘可能透明。 簡單例子我想要做的事: task run_phase(uvm_phase phase); phase.raise_objection(this); // How to do an automat

    -1熱度

    2回答

    我在調用start_item(seq_item)之後調用start_item(seq_item)與設置值有任何不同之前,將值設置爲sequence_item?

    2熱度

    1回答

    有沒有辦法將字符串強制枚舉在系統verilog中? typedef enum {ABC1,ABC2,ABC3} abc; program Test ; abc x1; string teststring; initial begin teststring="ABC2"; x1=abc'(teststring); // Static