AMBA_APB_SRAM

项目来源

https://github.com/courageheart/AMBA_APB_SRAM

DUT

接口


该dut的功能很简单,只是提供寄存器读写

测试平台结构梳理

平台特色

  • 未使用refm

cfg文件管理

env_cfg

设置了一个env_cfg组件,在其实例化时将agent_cfg(本平台只有一个agent)也完成了实例化:

  • 变量赋值
    在base_test的build phase中,对env_cfg、agent_cfg中的变量进行了赋值并set到全局:

agent cfg

  • 例化位置
    如前所述,在env_cfg的new中实例化
  • 传递通路
    在env中,将agent_cfg set到全局:

agent

dut只涉及一个agent,apb_master,该agent的功能是读写寄存器:

sequence设计

base_sequence

base_seq内容很简单,定义了其他sequence共用的变量addr、data,以及一个trans。其他子类sequence均继承自该seq:

子类sequence

子类seq以如下为例,内容也很简单,用于驱动bus对寄存器做读写:

覆盖率收集

核心组件

在apb agent中,实例化了cov_mon:

在cov_mon中,每收到一次写,都会调用一次sample函数刷新覆盖率数据:

收集通道:

apb monitor的port会往该cov_mon送覆盖率信息数据:

其他技术总结

posted @ 2025-04-13 17:58  MKYC  阅读(26)  评论(0)    收藏  举报