qa 芯片测试_[转]芯片设计中验证Verification,确认Validation以及测试Test的区别

对于刚进入芯片设计领域的童鞋,经常被这三个概念迷惑,很难区分,我曾经也是,因此,在这里把我理解的异同点在这里写一下,不一定准确,希望对某些童鞋有用。

验证(Verification),确认(Validation),测试(Test)的最终目的是一样的,都是减少设计中的缺陷,保证设计的质量,可以算是QA的环节(不过貌似现在QA几乎就是指测试了),不同点的是,他们是在不同的层次,由不同的人进行的工作。

验证(Verification)一般是在硅前的rtl设计阶段进行的,一般也是由rtl设计人员负责的。其目的是让设计符合设计者所想的,粒度也比较细,一般前期是分模块的,不同的模块由不同的设计人员进行,后期才会将所有模块连起来联调。由于这时候只有rtl,需要用软件仿真来模拟最终的硬件行为,速度很慢,因此用于验证的向量规模都比较小,即便如此,在整个设计周期中,验证所占的时间也非常可观,对于这一点,作为一个做设计和验证的码农,我深有体会,把rtl写出来,简单,把rtl验证好,那是非常地难。

确认(Validation)是由结构设计者完成的(这是我的理解,不知对否),一般是对设计的功能进行验证,即确认设计能否实现某种功能。其粒度(功能级)较验证(一般为模块级)要粗一些,时间也短一些。

测试(Test)一般是在硅后(Post-silicon)完成的,有专门的测试人员完成,粒度最粗,一般是系统级(其实验证也会在系统级进行,但由于是硅前的,规模非常非常的小)。并且由于已经有了硬件平台,测试速度大大提高,因此规模也比较大,具体的可看之前关于测试的文章。

一般来说,芯片设计会有专门的验证(也负责设计)和测试人员,但没有专门的“确认”人员,就像龙芯有验证组和测试组,但没有“确认”组。

比较复杂的芯片,如处理器,验证与测试已经占了整个芯片研发的大部分时间,一般来说,在一款芯片量产前,需要进行几次工程样片的流片,这些流片的主要原因都是测试中发现了缺陷,从而重新修改设计,重新进行验证(一般只验证修改的模块),重新进行测试(一般也是针对之前发现的缺陷,以及因为之前的缺陷无法进行测试的部分)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值