ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

UVM RAL Adapter

2022-09-12 17:32:39  阅读:334  来源: 互联网

标签:reg RAL ahb2reg adapter predictor UVM phase Adapter


UVM Register Model Adapter

使用 UVM 寄存器模型,我们进行设计寄存器访问, 例如通过调用 RAL 方法写入设计寄存器或从设计寄存器读取。最后,这些事务必须放在设计总线上,这将由 RAL 组件适配器(Adapter)完成。

RAL 适配器充当 RAL 模型和接口之间的转换器。它将 RAL 方法的事务转换为接口/总线事务。

  • 适配器在寄存器模型读取、写入方法和特定于接口的事务之间进行转换
  • 事务适配器通过扩展 uvm_reg_adapter 类并实现 reg2bus() 和 bus2reg() 方法来实现

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

 

标签:reg,RAL,ahb2reg,adapter,predictor,UVM,phase,Adapter
来源: https://www.cnblogs.com/fuqiangblog/p/16686704.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有