1 UVM中引入phase的原因
代碼的書(shū)寫(xiě)順序會(huì)影響代碼的實(shí)現(xiàn)(代碼之間存在依賴(lài)關(guān)系,如代碼B依賴(lài)于代碼A),所以區(qū)分出build_phase、connect_phase等,讓被依賴(lài)的phase(代碼A)先執(zhí)行,依賴(lài)的phase(代碼B)后執(zhí)行,這樣可以解決因代碼順序雜亂可能會(huì)引發(fā)的問(wèn)題。
2 UVM中phase的執(zhí)行順序
- 按上圖所示順序自上而下執(zhí)行不同phase,且同類(lèi)phase執(zhí)行完后, 需要進(jìn)行等待同步 ,然后才能執(zhí)行下一類(lèi)phase。而同類(lèi)phase中不同component在UVM樹(shù)種執(zhí)行順序如下:
- build_phase:在UVM樹(shù)中依據(jù)自上而下的順序啟動(dòng),順序運(yùn)行
- 除了build_phase之外的function phase:在UVM樹(shù)中依據(jù)自下而上的順序啟動(dòng),順序運(yùn)行
- task_phase:在UVM樹(shù)中依據(jù) 自下而上的順序啟動(dòng),同時(shí)運(yùn)行 (通過(guò)fork...join_none多線(xiàn)程方式)
- 直系關(guān)系的component
- 兄弟關(guān)系的component:在UVM樹(shù)中依據(jù)字典序
- 叔侄關(guān)系的component:在UVM樹(shù)中依據(jù)深度優(yōu)先(即優(yōu)先侄component執(zhí)行)
3 UVM中引入objection的原因
上文提到代碼會(huì)依據(jù)不同phase的順序自上而下執(zhí)行,且同類(lèi)phase執(zhí)行完后, 需要進(jìn)行等待同步 。而引入objection就是為了更好的控制同類(lèi)phase中執(zhí)行代碼的同步用的。
4 UVM中引入domain的原因
體現(xiàn)不同component的獨(dú)立性。例如,把兩個(gè)時(shí)鐘域隔開(kāi), 這樣兩個(gè)時(shí)鐘域內(nèi)的各個(gè)動(dòng)態(tài)運(yùn)行( run_time) 的phase就可以不必同步了。使用該機(jī)制可以搭建多時(shí)鐘域DUT的UVM仿真平臺(tái)。
注意:domain 只能隔離run-time的phase , 對(duì)于其他phase, 其實(shí)還是同步的, 即兩個(gè)domain的run_phase依然是同步的, 其他的function phase也是同步的。
-
UVM
+關(guān)注
關(guān)注
0文章
182瀏覽量
19236 -
時(shí)鐘域
+關(guān)注
關(guān)注
0文章
52瀏覽量
9582 -
DUT
+關(guān)注
關(guān)注
0文章
189瀏覽量
12513
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
IC驗(yàn)證"UVM驗(yàn)證平臺(tái)加入factory機(jī)制"(六)
IC驗(yàn)證“UVM驗(yàn)證平臺(tái)加入objection機(jī)制和virtual interface機(jī)制“(七)
數(shù)字IC驗(yàn)證之“什么是UVM”“UVM的特點(diǎn)”“UVM提供哪些資源”(2)連載中...
什么是uvm?uvm的特點(diǎn)有哪些呢
談?wù)?b class='flag-5'>UVM中的uvm_info打印
UVM中seq.start()和default_sequence執(zhí)行順序
UVM驗(yàn)證平臺(tái)執(zhí)行硬件加速
![<b class='flag-5'>UVM</b>驗(yàn)證平臺(tái)<b class='flag-5'>執(zhí)行</b>硬件加速](https://file.elecfans.com/web2/M00/49/C4/pYYBAGKhvFyAOQbqAAAjvXtJt6c115.jpg)
Modelsim uvm庫(kù)編譯及執(zhí)行
![Modelsim <b class='flag-5'>uvm</b>庫(kù)編譯及<b class='flag-5'>執(zhí)行</b>](https://file.elecfans.com/web1/M00/C8/58/pIYBAF9uAqOAAaeDAABeljwgTYE221.png)
如何通過(guò)explain來(lái)驗(yàn)證sql的執(zhí)行順序
![如何通過(guò)explain來(lái)驗(yàn)證sql的<b class='flag-5'>執(zhí)行</b><b class='flag-5'>順序</b>](https://file.elecfans.com/web2/M00/13/C7/pYYBAGE3I3CAUXsoAAAG1SvNFdc926.png)
UVM里的phase機(jī)制
UVM中sequence的那些事兒
![<b class='flag-5'>UVM</b><b class='flag-5'>中</b>sequence的那些事兒](https://file1.elecfans.com/web2/M00/88/BD/wKgZomRwXQqAGIwtAAEOJPPivQA569.jpg)
評(píng)論