决定一颗芯片成败主要看几个方面:时间、金钱和质量。
时间:
芯片的成功,甚至很多事情的成功都非常取决于时间(准确来说是,时机),即time-to-market。例如智能手机端激烈的市场竞争环境,延迟上市就意味着年收入成比例的缩减,市场份额迅速被分而食之。
成本:
成本是一个公司实现利润最大化的前提,同时也是一颗芯片的竞争力体现。
上图是在验证不同阶段发现bug的成本,可以看出验证不仅仅是芯片功能的保障,也是芯片成本的守门员。证明芯片没有bug、或者越早期发现芯片的功能bug(特别是芯片中corner bug)是一个验证工程师最具价值的体现。
如果验证团队能够快速有效地发现bug,快速实现验证收敛,就可以尽早地满怀信心地制造芯片,并避免由于多次重新制造芯片(“re-spins ”)而引入的额外成本。
质量:
功能是验证过程中最主要的关注点,但是也需要考虑到芯片架构导致的功耗和性能问题,以及芯片的安全性、随机算法的均匀性、验证复杂度等等问题。
因为验证对三个芯片成功的要素都有很大的作用,那么如何衡量验证的质量就显得至关重要:是否按时快速实现验证收敛和发现bug的密度(bug数量除以代码行数)。
上图是追踪验证进度的3条曲线,从左到右收敛时间变长,但好在最后都没有遗漏bug。如果你承担的模块验证是最左边的曲线,你自然就会比其他同事多很多时间去探索模块的架构设计问题、或者了解模块上下游关系以及软硬件交互之间的问题。
所以说啊,如果我们发现自己长期陷入自己的小模块无法自拔,就需要好好清醒下,该如何走出困境。是需要提高效率?还是需要主动突破?。
回到上面的Bug曲线,项目团队通过测量bug曲线的陡峭程度来跟踪验证进度。一个高效验证团队的bug曲线会更加陡峭。
验证的生产力,还可以通过发现bug的质量来衡量,即发现越corner的bug,验证的质量越高。
一般来说在验证的早期很容易就会发现那些简单的bug,如果在验证的后期还发现了简单的bug可能就需要回溯下整个验证的方案了。因为这是一个比较危险的信号,你的验证工作可能是不可信的。
作者:验证哥布林
原文链接:https://mp.weixin.qq.com/s/Dkg5h0kkN8KOea58mzl-Ng
微信公众号:
推荐阅读
更多IC设计技术干货请关注IC设计技术专栏。