UVM中的phase,按照其是否消耗仿真時間($time打印出的時間)的特性,可以分成兩大類,一類是function phase,一類是task phase。就像task和function一樣,task phase消耗仿真時間。
如圖所示灰色的phase是task phase其他均為function phase

上述所有的phase都會按照圖中的順序自上而下自動執(zhí)行。使用頻率最高的是build_phase、connect_phase和main_phase
-
對于function phase來說,在同一時間只有一個phase在執(zhí)行;但是task phase中,run_phase和pre_reset_phase等12個小的phase并行運行。后者稱為動態(tài)運行(run-time)的phase。
-
run phase可以和其他12個小phase 的關(guān)系是可以在run phase里執(zhí)行12個小phase的功能,也可以在12個小phase中分步進(jìn)行。run phase和其他12個phse是一個并行關(guān)系,而12個phase是順序執(zhí)行的。
對于task phase,從全局的觀點來看其順序大致如下:
forkbeginrun_phase();endbeginpre_reset_phase();reset_phase();post_reset_phase();pre_configure_phase();configure_phase();post_configure_phase();pre_main_phase();main_phase();post_main_phase();pre_shutdown_phase();shutdown_phase();post_shutdown_phase();endjoin
-
12個小phase存在意義:分成小的phase是為了實現(xiàn)更加精細(xì)化的控制。reset、configure、main、shutdown四個phase是核心,這四個phase通常模擬DUT的正常工作方式,在reset_phase對DUT進(jìn)行復(fù)位、初始化等操作,在configure_phase則進(jìn)行DUT的配置,DUT的運行主要在main_phase完成,shutdown_phase則是做一些與DUT斷電相關(guān)的操作。
假設(shè)要在運行過程中對DUT進(jìn)行一次復(fù)位(reset)操作,在沒有這些細(xì)分 的phase之前,這種操作要在scoreboard、reference model等加入一些額 外的代碼來保證驗證平臺不會出錯。但是有了這些小的phase之后,那么只 要通過phase的跳轉(zhuǎn),就會自動跳轉(zhuǎn)回reset_phase。
-
bulid phase的執(zhí)行順序是自上而下,即先執(zhí)行test case的bulid phase然后執(zhí)行env,在執(zhí)行monitor和driver的build phase,而同級的monitor和driver的build phase執(zhí)行順序是按照字典序的,這里的字典序的排序依據(jù)new時指定的名字。
UVM的uvm_component及其派生類變量的實例化在build_phase中做實 例化工作,如果是uvm_object的實例化,可以是任何的phase。
-
除了build_phase之外,所有不耗費仿真時間的phase(即function phase)都是自下而上執(zhí)行的。connect phase執(zhí)行順序是自下而上的,如對于connect_phase即先執(zhí)行driver和monitor的connect_phase,再執(zhí)行agent的connect_phase。
-
無論是自上而下(build_phase)還是自下而上(connect_phase)的phase,其執(zhí)行順序都與實例化的順序無關(guān),而是嚴(yán)格按照實例化時指定名字的字典序
審核編輯 :李倩
-
UVM
+關(guān)注
關(guān)注
0文章
183瀏覽量
19985 -
PHASE
+關(guān)注
關(guān)注
0文章
14瀏覽量
11153
原文標(biāo)題:UVM里的phase機(jī)制
文章出處:【微信號:FPGA學(xué)姐,微信公眾號:FPGA學(xué)姐】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
云里物里以物聯(lián)網(wǎng)技術(shù)助力博物館智慧安防
教程來啦!LuatOS中的消息通信機(jī)制詳解及其應(yīng)用場景
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計24: UVM 驗證包設(shè)計
云里物里打造校園安全物聯(lián)網(wǎng)解決方案
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計24: UVM 驗證包設(shè)計
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計23:UVM驗證平臺
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計23:UVM驗證平臺
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計25:UVM驗證平臺
NVMe高速傳輸之?dāng)[脫XDMA設(shè)計18:UVM驗證平臺
云里物里電子紙標(biāo)簽技術(shù)助力博物館綠色轉(zhuǎn)型
云里物里攜手Nordic推出多合一氣體傳感器
NVMe IP over PCIe 4.0:擺脫XDMA,實現(xiàn)超高速!
Java的SPI機(jī)制詳解
文丘里效應(yīng)方程的應(yīng)用
UVM里的phase機(jī)制
評論