• Techo

[IC驗證] UVM實戰第五章,uvm_phase, objection, domain

1. uvm phase 中只有 build_phase 是 top-down,其餘的 phase 皆是 buttom-up

2. 使用 super.build_phase 可以利用工廠機制自動 get config_db

3. 在 build_phase 裡面使用 uvm_error 代替 uvm_fatal 可以讓 simulation 跑完 build_phase 之後自動停止, 而不會像是 uvm_fatal 一樣直接停止, 此特性可以讓我們跑完整個 build_phase之後一次修正錯誤再重跑, 而非每次錯誤就直接停止

4. 可以使用 phase.jump(uvm_reset_phase::get()) 直接跳轉到 reset_phase 讓整個環境回朔到之前執行過的 uvm_phase

5. 使用 +UVM_PHASE_TRACE 來進行 uvm_phase debug

6. 在 scoreboard 中加入 objection 控制整個 phase 的結束是一個好選擇,透過 config_db 設定 transaction number 進而計數並決定何時 drop_objection

7. uvm_domain 可以把不同的 domain 切割成獨立不同的 uvm_phase 執行序列, 不同domain可以有自己獨立 run_phase 執行的時間點, 而 run_phase 之前的 uvm_phase 其實還是同時間點執行

0 次瀏覽
Logo2020.JPG
  • Instagram - White Circle
  • Google+ - White Circle
  • Facebook - White Circle

Contact Us

Techo私人程式家教

官方LINE ID : @tutortecho

zh-Hant.png

© Copyright 2018 by Sherry Wu and Techo Chao.

Proudly created with Wix.com,

but page loading is too slow,so I don't recommend it.