对于芯片验证,主要的挑战在于:1.如何打出所有可能的激励灌给DUT;2.如何在各种可能的激励情况下,判断出不符合硬件描述的行为。本文单单聚焦于一些关于构造stimulus方面的想法吧,结合了红皮书, writing testbench和项目中的一点经验。

整篇文章的核心内容如下思维导图所示。

激励(stimulus)的主要原则就是要产生所有可能的测试场景,并且保证激励源最大的自由度。其中测试场景包括合法和非法的。按照这个主要原则,我们在产生激励时可以参考以下几点:

  • 接口类型:对于DUT来说,可以把所有的输入输出信号划分为不同的接口类型,根据该接口类型的特性构造对应的组件来产生激励。

  • 序列颗粒度:这个点包含在接口类型里。主要就是在产生激励时,最好能做到逐渐往上抽象。意思就是分层,在基本颗粒层上提供基本颗粒的生成方法,而在其上,更高颗粒层做更深入的封装,帮助更高层次的抽象。比如sequence可能由多个transaction和sequence拼接组成的。在越高的抽象级越不关注底层的时序而更重视数据的传输量。
  • 内部结构:激励不只是看interface上的信号就能做好的,还要结合DUT内部的结构和功能去分析,调节激励随机约束,从而有更大的概率打到有效的场景。

  • 组件交互:每个接口类型都对应自己的组件,但有时需要接口之间进行信息交互。

  • 可控性:在不同的层次上可以提供一些选项用于控制激励的行为。

综上所述,在构造激励时,可以按照“接口类型>>内部结构>>组件交互>>可控性” 方向去分析。在接口类型内,可以按照“单一>>序列>>组合>>违例” 方向去分析。在内部结构里,可以按照“触发功能点>>资源瓶颈和争抢>>错误处理机制” 方向去分析。443原则

芯片验证系列——激励(stimulus)相关推荐

  1. 芯片验证系列——Testpoints分解

    既然是芯片验证,那就需要明确验证芯片的哪些特性(功能.性能等).验证空间是无穷大的,验证工程师需要在有限的时间内,完成尽可能多的重要verification features的验证.Verificat ...

  2. 芯片验证系列——验证计划

    验证计划是验证策略的更具体实施计划.验证策略是在高层次描述对验证的整体规划(目标制定.时间安排.工作流程.验证方法学.版本管理.总体覆盖率进度等)和对RTL进行哪些层面测试,包括UT/IT/ST/FP ...

  3. 芯片验证从零开始系列(一)——芯片验证概论

    芯片验证从零开始系列(一)--芯片验证概论 芯片开发流程 动态验证技术 静态验证技术 Emulation和FPGA原型开发 测试平台框架 检查设计 回归测试

  4. 芯片制造系列全流程:设计、制造、封测

    目录 芯片制造系列全流程(简) 一.芯片制造全流程简介 二.芯片设计 三.芯片制造 四.封装测试 芯片目前分为三个主要环节,分别是设计.制程.封测. 设计水平 制造这一块 最后说说封测这一块 芯片设计 ...

  5. 芯片验证漫游指南_IC验证入门资料

    这学期马上就要结束了,SV课昨天也考试了,大家大部分考的都还不错,感谢大家的支持.所以后面关于SV可能就不会更新那么多了,也有可能会从头开始,出一个关于SV从入门到自我放弃的系列.再看吧~~这主要取决 ...

  6. soc验证 c语言,一种Soc芯片验证方法与流程

    本发明涉及Soc芯片设计及制造领域,特别涉及一种Soc芯片验证方法. 背景技术: 随着设计与工艺技术的不断发展,集成电路设计的规模越来越大,复杂度越来越高,为了缩短芯片的上市时间,节约开发成本,多家I ...

  7. 【能力地图】芯片验证篇

    通过近期对验证活动和能力地图的学习,整理出了本文,其实每个支点都是一个可以值得研究的课题,需要花很多时间去琢磨的.通过本文,大家可以大概了解芯片验证过程中可能用到的能力或者知识. 1,验证活动 芯片验 ...

  8. 【揭秘】50K+验证工程师求职加分项——MCU芯片验证

    无论是在秋招.春招.还是社招,IC企业在招聘时,芯片验证的岗位的需求量往往都是排在前列.即便是在内卷比较严重的今年,验证工程师的需求量要是排名前三. 一款芯片从立项到流片生产需要经过层层自测和验证,否 ...

  9. 关于芯片验证的一些感悟1

    18年下半年参与了某款5G芯片验证的开发过程,空余时间总结一下: 由于现在芯片的规模越来越大, 所以导致芯片验证的工作也越来越重要. 传统的通过写TB 的方式来测试芯片设计功能的方式也越来越吃力,而通 ...

最新文章

  1. Python修行之字符串(一):连接、切割、大小写、排版
  2. 如何使用Gradle的maven-publish将jar包或者war包上传到nexus仓库
  3. Linux部署动态网页,Nginx发布支持动态配置的开源Web服务器
  4. MyBatis - MyBatis Generator 生成的example 如何使用 and or 简单混合查询
  5. 复杂电网三相短路计算的matlab仿真,复杂电网三相短路计算的MATLAB仿真电力系统分析课设报告 - 图文...
  6. 阿里云Centos镜像源和EPEL源
  7. 读书:《带人的技术》
  8. date命令使用文档.txt
  9. HelpDesk工作流多级,多任务流程(包含源代码和InfoPath模板)
  10. 【经验之谈】掌握这13个PyTorch Trick,让你做实验行云流水~
  11. RestTemplate 了解和学习
  12. 西门子uss通讯实例_西门子USS通信调试经历
  13. 创建Django项目及配置
  14. textfind:文本分析之词频分析-TF-IDF
  15. html怎么给表头加斜线,如何为Excel中的表格表头添加斜线和文字?这才是正确的添加方式-excel表格斜线...
  16. 运维屌丝回答网传Linux运维面试题(一)
  17. JAVA社区团购系统计算机毕业设计Mybatis+系统+数据库+调试部署
  18. 【技术美术图形部分】2.3 HLSL常用函数
  19. VC TreeCtrl 添加图标 背景色透明
  20. FTP操作命令(windows系统)

热门文章

  1. 【技术君啃书之旅】web安全之机器学习入门 第三章笔记
  2. 计算机毕业设计Java个人博客网站(源码+系统+mysql数据库+Lw文档)
  3. 值得收藏的25 个前端相关的学习网站 + 靠谱的小工具
  4. 微信公众号自动回复 - 自定义设置
  5. liquibase介绍
  6. 启动应用程序时出错了怎么办?
  7. 高速路服务器污水处理系统,高速路服务区生活污水处理装置
  8. 城市污水处理过程模型预测控制研究综述
  9. 支付宝沙箱环境支付介绍
  10. 双向循环链表的前插 后插 前删 后删