UVM中set drain time 的使用

2021-10-12 15:18:51 字數 745 閱讀 3915

​1.任何dut 模組都有延時:

在sequence 中,m時刻傳送完最後乙個sequence,如果此刻drop_objection,那麼在 n+p 時刻dut 的輸出報無法收到。所以需要延時p時間才能drop_objection:

2.uvm所有的objection 設定了 drain_time 屬性。設定方式:

1)phase_done 是uvm_phase 的變數:

2)uvm 在main_phase 檢查到所有objection 被撤銷後,會檢查是否設定drain_time,如果有,則延遲drain_time。

4結果:

5.乙個phase 對應乙個drain_time,其他phase 要用,要給自己單獨設定。不共享。

UVM中Virtual sequence的作用

virtual sequence是用來實現sequence之間的同步。從字面上理解,即虛擬的sequence。虛擬的意思就是它根本就不傳送transaction,它只是控制其他的sequence,起統一排程的作用。如圖1所示,為了使用virtual sequence,一般需要乙個virtual se...

UVM 7 3 1 UVM 中前門訪問的實現

1.前門訪問操作只有兩種 讀操作和寫操作。2.對於參考模型來說,最大問題是如何在其中啟動乙個sequence。全域性變數和config db。3.除了這兩種方式之外,如果能在參考模型中得到sequencer 的指標,也可以啟動sequence。只要在其中設定p sqr變數,並在env 中將seque...

在UVM中新增env

在驗證平台中加入reference model driver scoreboard等元件後,如何在驗證平台中對它們進行例項化呢?顯然使用factory機制註冊後使用run test 已經不行啦,run test最多只能例項化乙個元件。因此需要引入乙個容器類,這個容器類可以包含所有的元件,通過對容器類...