【UVM] UVM RALアダプタ

                                    UVM RALアダプタ

 

       UVM登録モデルでは、我々は、設計レジスタアクセス、すなわち行う  WRITE  設計レジスタまたはに  READ  RALメソッドを呼び出すことにより、設計レジスタからを。最後に、これらのトランザクションがバスを設計するために配置する必要があり、これはRALコンポーネントによって行われます  アダプター

       RALアダプタはRALモデルとインタフェースとの間の変換器として作用します。これは、インターフェイス/バス・トランザクションにRALメソッドのトランザクションを変換します。

  • レジスタモデルとの間のアダプタの変換は、書き込み方法およびインターフェイス固有のトランザクションを読み取ります
  • トランザクション・アダプタが拡張することによって実現される  uvm_reg_adapterの  クラスとreg2bus()とbus2regを実装()メソッド

A、UVM RAL reg2bus

  • reg2bus方法は、インタフェース(バス)取引にRALトランザクションを変換します

二、UVM RAL bus2reg

  • bus2reg方法はRAL取引にインタフェース(バス)トランザクションを変換します
class tb_env extends uvm_env;
  reg_model                     regmodel;
  uvm_reg_predictor#(ahb_trans) ahb2reg_predictor;
  reg2ahb_adapter               reg_adapter;
  ahb_agent                     ahb;
 
  virtual function void build_phase(uvm_phase phase);
    ahb2reg_predictor = new(“ahb2reg_predictor”, this);
  endfunction
 
  virtual function void connect_phase(uvm_phase phase);
    if (regmodel.get_parent() == null) begin
      reg_adapter = reg2ahb_adapter::type_id::create(“reg_adapter”,,get_full_name());
      ...
      ahb2reg_predictor.map     = regmodel.AHB;
      ahb2reg_predictor.adapter = reg_adapter;
      ahb.monitor.ap.connect(ahb2reg_predictor.bus_in);
    end
    ...
  endfunction
  ...
endclass

 

彼は185元の記事を発表 ウォンの賞賛118 ビュー40000 +

おすすめ

転載: blog.csdn.net/gsjthxy/article/details/105298783