1. 程式人生 > >tlm源碼分析——sqr_if_base類型

tlm源碼分析——sqr_if_base類型

函數 idt port pull con driver 調用 fun 實現

基於sqr_if_base類型的uvm_port_base,主要擴展出了三個class;

    技術分享

    技術分享

    技術分享

uvm_seq_port的宏,與tlm_ifs的類似,只是定義了new函數,min_size為0,max_size為1

    技術分享

seq_item_pull_imp,主要實現sequencer與driver之間傳遞item的很多function;

    技術分享

在函數調用時,使用的是this.m_if中的函數,也就是imp_list中的第一個;

export的實現與port的類似;

imp的實現,uvm_imp_common宏中,也是實現new函數,同時定義m_imp的變量;

    技術分享

seq_item_pull_imp中的調用使用的是m_imp,所以在sequencer中必須定義很多get_item的function;

    技術分享

在connect的時候,seq_item_pull_port,已經得到imp的指針,繼而調用m_imp中的函數;

tlm源碼分析——sqr_if_base類型