1
我有兩個順序項目類a_packet
及其擴展類bad_packet
。 默認情況下,使用a_packet
類型。 試圖重寫a_packet
實例與bad_packet
,我能夠在我的UVM測試使用set_inst_override_by_name成功地做到這一點,如何使用UVM工廠的set_inst_override_by_name來覆蓋順序項
factory.set_inst_override_by_name("a_packet","bad_packet", "*");
現在我的問題是:如果我不想用「*」,怎麼樣瞭解序列項目實例的完整分層路徑?
我試圖利用序列項內部的get_full_name(),在驅動程序收到它之後,才知道確切的分層路徑。它顯示:
uvm_test_top.env.a_agt.a_seqr.a_sequence.a_packet
但是,當我用上面的路徑替換*
,最重要的是沒有發生。
factory.set_inst_override_by_name("a_packet","bad_packet","uvm_test_top.env.a_agt.a_seqr.a_sequence.a_packet");
我做錯了什麼?
可能的重複[uvm set \ _inst \ _override for a sequence](http://stackoverflow.com/questions/26100386/uvm-set-inst-override-for-a-sequence) – 2014-12-19 11:06:17
我上面鏈接的問題處理序列,而不是序列項目,但處理過程本質上是相同的(因爲序列是序列項目的子類別)。 – 2014-12-19 11:08:12