[转]VIP开发与发布

一、概述

  • 对于会被经常复用的总线协议或者功能模块,可以针对其开发专用的验证IP(VIP)。
  • 对于总线VIP,需要master agent和slave agent,有时也需要Environment去构建多个主端对从端的验证环境。
  • VIP也需要对应的配置对象,即configuration object,同时也需要对应的接口。

二、主要的开发阶段

阶段1(定义)

  • 功能特性提取
  • 特性覆盖率创建及映射
  • VIP的架构

阶段2(VIP基本搭建)

  • driver、sequencer、monitor
  • 实现基本上的端到端的sequence

阶段3(完成monitor与scoreboard)

  • 完成monitor —— 100%实现(checkers,assertions)
  • 完成scoreboard —— 100%实现(数据完整性检查)
  • 在monitor中,完成监测到的transaction与function coverage实现映射。
  • 为映射更多的基本功能覆盖率,创建其它sequences。

阶段4(扩充test和sequence阶段)

  • 实现更多sequences,从而获得80%的功能覆盖率。

阶段5(完成标准)

  • sequence最终可以实现100%的功能覆盖率。
  • 回归测试结果和最终的总结报告。

验证方法

验证自己写的AHB的master agent和slave agent都没有问题,没有办法保证master或者slave都正确。
在这里插入图片描述
引入成熟的VIP放入到验证环境里面,类似于做反向。
在这里插入图片描述

把成熟的VIP的Master和自己的AHB的slave设置为Passive模式,连接两个验证模块。这样AHB的Master可以访问成熟的VIP的Slave,同时原有的test sequence library可以复用到AHB上面。这样就实现了用成熟VIP的测试序列去验证自己想要的Master。Passive模式下的Master可以monitor总线,也可以收集总线上的覆盖率,所以通过成熟的VIP的test和coverage来验证AHB的Master VIP。

在这里插入图片描述

接下来同样的道理,把成熟的Slave VIP和AHB的Master VIP设置为Passive模式,这样就可以使用成熟的test和coverage来验证AHB的Slave VIP。
在这里插入图片描述
最后把成熟的Master VIP和Slave VIP都设置为Passive模式,相当于把整个成熟环境都Passive掉,因为AHB的Master和Slave通过上面的方法都得到了验证,所以就可以进行AHB的Master对AHB的Slave的验证了。

在这里插入图片描述

三、VIP的发布

主要内容

VIP的源代码(可以选择加密,或者保留接口函数)

  • active模式包括:driver,sequencer和tests。
  • passive模式包括:monitor,用来做协议检查的assertion,接口的function coverage model。

特性列表以及对应的覆盖率列表

  • 保证与标准协议文档的主要特性对应。
  • 与对应组件的测试,功能覆盖点,协议assertion和scoreboard检查。

VIP文档

  • VIP的结构,具体的设计,用户指南,安装指令和覆盖率报告。

运行环境

  • 回归仿真步骤(文件、编译、仿真、结果)。

---------------------
作者:煎丶包
来源:CSDN
原文:https://blog.csdn.net/qq_39794062/article/details/114537688
版权声明:本文为作者原创文章,转载请附上博文链接!
内容解析By:CSDN,CNBLOG博客文章一键转载插件

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值