日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 公眾號精選 > 芯片驗證工程師
[導(dǎo)讀]宏是任何軟件中不可或缺的組成部分,通用驗證方法(UVM)庫也不例外。在日常編程中應(yīng)該盡可能地使用宏,以避免書寫重復(fù)的代碼,同時通過不同的宏可以區(qū)分不同的版本。對于uvm中的宏`uvm_*_imp_decl,可以定義了特殊的imp端口,使一個組件能夠?qū)崿F(xiàn)一個TLM接口的多個實例化。...

宏是任何軟件中不可或缺的組成部分,通用驗證方法(UVM)庫也不例外。在日常編程中應(yīng)該盡可能地使用宏,避免書寫重復(fù)的代碼,同時通過不同的宏可以區(qū)分不同的版本。


對于uvm中的宏`uvm_*_imp_decl,可以定義了特殊的imp端口,使一個組件能夠?qū)崿F(xiàn)一個TLM接口的多個實例化。例如,uvm_analysis_imp調(diào)用了組件的write 方法,多個這樣的uvm_analsys_imps都將調(diào)用相同的write 方法。要解決這個問題,可以調(diào)用uvm_*_imp_decl宏來定義多個調(diào)用組件中不同方法的imp端口。


下面是示例代碼

‘uvm_analysis_imp_decl(_exp)‘uvm_analysis_imp_decl(_act)class scorebd extends uvm_component;uvm_analysis_imp_exp #(my_tr,scorebd) expect;uvm_analysis_imp_act #(my_tr,scorebd) actual;virtual function void write_exp(my_tr tr);...endfunctionvirtual function void write_act(my_tr tr);...endfunctionendclass

寫入expect將調(diào)用write_exp,寫入actual將調(diào)用write_act,其基本原理是使用了uvm_analysis_imp_dec宏擴(kuò)展一小部分代碼,完成聲明所需的類和方法。

uvm_analysis_imp_expuvm_analysis_imp_actwrite_expwrite_act如果不想使用*_imp_decl宏,可以通過“策略”類實現(xiàn)類似操作。定義一個將策略類作為參數(shù)的通用uvm_analysis_imp。aimp write方法調(diào)用了策略類中的靜態(tài)寫方法,該方法調(diào)用了組件中的一個唯一write方法。需要為uvm_analysis_imp的每個實例定義一個單獨的策略類。

?

class?aimp?#(type?T=int,?IMP=int,?POLICY=int) extends?uvm_port_base?#(tlm_if_base?#(T,T));`UVM_IMP_COMMON(`TLM_ANALYSIS_MASK,“uvm_analysis_imp”,IMP)function void write (input T t);POLICY::write(m_imp , t);endfunctionendclass
class wr_to_A #(type T=int, IMP=int);static function void write(T tr, IMP comp);comp.write_A(tr);endfunctionendclass
class wr_to_B #(type T=int, IMP=int);static function void write(T tr, IMP comp);comp.write_B(tr);endfunctionendclass
class my_comp extends uvm_component;aimp #(my_tr, my_comp, wr_to_A) A_ap;aimp #(my_tr, my_comp, wr_to_B) B_ap;virtual function void write_A(my_tr tr);...endfunctionvirtual function void write_B(my_tr tr);...endfunctionendclass

?


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

芯片驗證工程師

85 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉