0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

分享几个bug发现手段

数字芯片实验室 来源:数字芯片实验室 2023-10-23 09:26 次阅读

本文发散式分享几个有效的bug发现手段或者验证方法。

一、final chk

final chk的思想是在执行完成一个测试用例(或者一个简单的命令)之后,然后查看下当前设计DUT的状态。比如说一个cacheline,在完成一笔read/write之后,该cacheline应该是可以被替换(evict)的。

形象一点,当你在饭店吃完饭,座位资源应该是能够被释放掉的。

这种验证方法就是验证设计DUT的自我清除能力。一个很简单的final chk方法就是在完成任何一个测试用例之后,可以随机发送一些常规操作,可能有幸能够发现这类问题。但是最完备,但可能粗暴的方法就是执行完一个测试用例之后,用探针查看DUT的状态和参考模型的状态(所有寄存器和变量的值都是一个符合预期的值)。

时间足够并且验证人员了解DUT实现的情况下,个人倾向后者即使用最完备的方式检查所有设计状态。

二、default test

设计DUT中会存在很多的default:语句,看起来不是主要分支,但很多时候default分支也做了很多非常关键的事情,甚至default分支会比一些主要分支更加复杂和繁忙。

对于一个用户,很多时候不做决定,倾向于留白,只会去配置自己会修改的寄存器配置。default test是指验证人员做尽量少的实际工作,接受默认值,然后执行一些操作。

“江湖不是打打杀杀,江湖是人情世故”。

很多时候,default test case fail,设计可能会说不符合实际约束,用户应该怎样怎样~这个时候就涉及到验证和设计的话语权问题了。从验证的角度看,最好是default场景下,芯片是能够work的。如果在正式发布的产品中,用户不愿再配置而希望使用默认值,就非常令人尴尬。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 命令
    +关注

    关注

    5

    文章

    678

    浏览量

    21984
  • BUG
    BUG
    +关注

    关注

    0

    文章

    155

    浏览量

    15652
  • DUT
    DUT
    +关注

    关注

    0

    文章

    189

    浏览量

    12341

原文标题:分享几个bug发现手段-final chk、default test、stress test、fault injection

文章出处:【微信号:数字芯片实验室,微信公众号:数字芯片实验室】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为昕科技VXIN原理图工具Jupiter使用发现问题BUG

    申请使用上海为昕科技VXIN原理图工具Jupiter和元件设计工具Venues已经有两周了,现将发现BUG用表单发给厂家供参考。
    发表于 06-12 00:21

    multisim11中无意发现BUG!!!!

    multisim11中无意发现BUG!!!!是有关放大器的 我上传附件大家运行一下 就知道哪里有问题了 关键是改一下电阻参数又正常了 这是一个特例 大家参考一下
    发表于 01-09 20:38

    测试UCOSII消息队列发现一个BUG

    最近在测试UCOSII的消息队列的时候发现一个bug。我定义一个消息指针数据和一个消息队列控制块#define size1消息队列长度为1void *MsgGrp[size];//定义消息指针数组
    发表于 03-16 01:57

    发现Tardis的PDA的一个BUG怎么解决?

    这些变量强制赋值 ,终于看到可爱的文本浏览器出现了这个BUG的确有点隐蔽,建议斑竹,初始化24C02时,写入默认值,或者变量初始化为 默认值(不好)总结下,大家发现问题时不要嚷嚷,有时候不是人家不愿意
    发表于 08-19 04:23

    在学习使用SMALL RTOS时发现一个BUG如何解决呢?

    最近在学习使用 SMALL RTOS 时发现一个 BUG。任务在调用系统等待函数 OSWait(K_TMO | K_SIG,x) 后,不能在延时 x 个 ticks 后被唤醒。分析了一下原因如下:在
    发表于 02-28 14:05

    苹果iOS 10.2默默修复了两个未被发现的神级BUG,你知道?

     如果你升级iOS 10.2,那么iPhone上那个神级Bug,终于被苹果发现并修复,虽然苹果没有提及,但还有开发者发现,苹果在iOS 10.2中修复两个超烦人的Bug
    发表于 12-22 10:02 919次阅读

    IOS 10.3.1正式版紧急发布,修复BUG

    在3月28日发布的10.3正式版中被发现存在一个BUG。这一BUG的存在可能导致此前已经被关闭的iCloud服务被自动开启。苹果方面并没有解释该BUG产生的原因,不过小编觉得这可能不是
    发表于 04-05 16:13 776次阅读
    IOS 10.3.1正式版紧急发布,修复<b class='flag-5'>BUG</b>

    原来“bug”真的由bug而来

    俗话说的好,不怕出bug,就怕不知道哪里出bug,但是今天我不是和大家将怎么找bug,而是bug的来源。
    的头像 发表于 10-22 14:20 3404次阅读

    如何解决智能合约中的Bug

    智能合约在运行过程中发现Bug或者代码需要改进,这会影响整个系统的健壮性,如果发现无法解决的Bug,那就可能会造成严重的经济损失。
    发表于 10-25 10:55 1717次阅读

    微软暂停本周Windows 10的更新,只因发现系统Bug

    微软暂停了本周Windows 10的更新,因为他们发现了系统Bug,这确实有点尴尬。
    的头像 发表于 08-22 10:59 1813次阅读

    苹果撤销Windows版iCloud12更新,因密码扩展存在Bug

    据The Verge报道,在发布了几个小时后,苹果撤销了Windows版iCloud12更新,撤销原因可能是用户发现密码扩展存在Bug
    的头像 发表于 02-03 10:13 1648次阅读

    Bug Bash:Bug大扫除的正确用法

    把它当做一个大家来找茬游戏。 Bug Bash的好处 1. 有这样一种正式的找bug个动作,能够倒逼我们去梳理上线还缺少什么问题。(搭建一个稳定的环境) 2. 不同人使用产品的方式不同,尤其是非开发人员,在没有用例的情况下测试,能帮助我们
    的头像 发表于 03-18 11:46 1391次阅读

    关于漏测Bug你想知道多少

    漏测Bug是指产品逻辑缺陷在测试过程中没有被发现(尤其是测试环境可以重现的缺陷),上线版本发布后或者在用户使用体验后发现并反馈回来的缺陷。可能造成线上故障或者资损,在对产品测试过程中,自己也难免出现一些
    的头像 发表于 12-02 09:42 1075次阅读

    代码中藏几个bug,让自己无法替代?

    我们在进行嵌入式软件开发过程中,产生一些bug是难免的。
    的头像 发表于 06-07 10:34 580次阅读
    代码中藏<b class='flag-5'>几个</b><b class='flag-5'>bug</b>,让自己无法替代?

    常见的PLC系统BUG有哪些?如何减少BUG的产生呢?

    PLC系统可能会遇到各种不同类型的BUG,以下是一些常见的PLC系统BUG以及如何减少这些BUG的产生的建议
    的头像 发表于 10-31 11:29 851次阅读