UVM 中三個(gè)重要的類(lèi)
時(shí)間:2021-11-12 14:14:55
手機(jī)看文章
掃描二維碼
隨時(shí)隨地手機(jī)看文章
[導(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)有更多的特性。
其中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)有更多的特性。