當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 芯片驗(yàn)證工程師
[導(dǎo)讀]UVM中所有的類(lèi)都有一個(gè)共同的基類(lèi):uvm_void類(lèi)。它沒(méi)有數(shù)據(jù)成員,也沒(méi)有成員函數(shù)。由uvm_void類(lèi)擴(kuò)展得到了兩個(gè)子類(lèi),分別為uvm_object類(lèi)和uvm_port_base類(lèi)。其中uvm_object類(lèi)是UVM中所有的實(shí)體(包括component和transactio...

UVM中所有的類(lèi)都有一個(gè)共同的基類(lèi):uvm_void 類(lèi)。它沒(méi)有數(shù)據(jù)成員,也沒(méi)有成員函數(shù)。由uvm_void 類(lèi)擴(kuò)展得到了兩個(gè)子類(lèi),分別為uvm_object類(lèi)和uvm_port_base類(lèi)。


其中uvm_object類(lèi)是UVM中所有的實(shí)體(包括 component和 transaction)的基類(lèi)。uvm_port_base 是 UVM 中各種通信端口的基類(lèi)。


a. uvm_object
uvm_object 是 UVM 中所有實(shí)體的基類(lèi)。uvm_object 擴(kuò)展得到很多子類(lèi), 其中比較重要的有uvm_reg、uvm_report_object 、uvm_transaction、uvm_phase。


在上面重要的子類(lèi)中,我們接觸最多的還是uvm_report_object和 uvm_transaction。


driver、monitor等component都是繼承自u(píng)vm_component,而uvm_component 又繼承自 uvm_report_object。


transaction、sequence 繼承自 uvm_sequence_item,而 uvm_sequence_item 又繼承自 uvm_transaction。


因此說(shuō) uvm_object 是 UVM 中比較基礎(chǔ)的一個(gè)類(lèi)。對(duì)驗(yàn)證人員來(lái)說(shuō)只需要掌握到 uvm_component和 uvm_sequence_item 就行,再往上的類(lèi)基本上不需要掌握太多。


b. uvm_component
uvm_component是 UVM中比較關(guān)鍵的一個(gè)類(lèi),在 UVM框架中的 uvm_agent、
uvm_driver、 uvm_monitor、 uvm_scoreboard 等比較重要的組件都繼承自該類(lèi)。
uvm_component最終還是擴(kuò)展自 uvm_object類(lèi),因而比 uvm_object類(lèi)有更多的特性。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉
關(guān)閉