中文 英语
18.luck新利
的意见

面对FPGA复杂性的验证有效性:2020年威尔逊研究小组功能验证研究

是什么导致了FPGA项目中的重大错误逃逸?

受欢迎程度

在良好的数据支持下做出明智的决策是在FPGA设计和验证等竞争激烈、强大的市场中取得成功的关键。

在这方面帮助我们的社区是威尔逊研究集团全球功能验证研究背后的动机。我们还利用这些信息来确保我们的研发工作继续为客户提供今天和明天所需的解决方案。

在接下来的四个月里,我们将通过四篇系列文章总结2020年威尔逊研究小组功能验证研究的主要发现。前两集将专注于FPGA趋势;在IC/ASIC市场上排名第三和第四。我们将首先概述研究本身,以及我们为保持调查的完整性、有效性和包容性所遵循的程序。

2020年研究:抽样和偏见缓解

威尔逊研究集团2020年的研究结果是一系列关于功能验证的行业研究的延续,这些研究始于2007年,从2010年到2020年每两年持续一次。这些研究都是在2002年和2004年Collett国际研究公司的研究之后进行的,并专注于IC/ASIC市场。我们从2012年开始调查FPGA市场。

为了我们的研究目的,从多个获得的行业列表中构建了一个随机抽样框架。这使我们能够覆盖世界所有地区和所有相关的电子行业细分市场。虽然Siemens EDA根据问题构建了研究,然后编译和分析了最终结果,但我们委托威尔逊研究集团执行我们的研究。在对结果进行数据清理以去除不一致、不完整或随机的回答后,最终样本量由1492名合格参与者组成(即n=1492)。

图1通过IC/ASIC和FPGA项目的目标实施,比较了2016年、2018年和2020年研究参与者(即设计项目)的百分比。值得注意的是,有针对性的实施并不代表全球半导体市场的硅量,因为单个项目可能占半导体市场收入的很大一部分。


图1:有针对性实施的研究参与者。

由于所有基于调查的研究都受到抽样误差的影响,我们试图通过计算置信区间以概率的方式量化这种误差。在我们的研究中,我们使用95%置信区间确定总体误差范围为±3%。换句话说,这个置信区间告诉我们,如果我们从一个总体中提取重复样本,95%的样本将落在±3%的误差范围内,只有5%的样本落在误差范围外。

在构建任何类型的研究时,一个大问题涉及解决三种类型的偏差:非响应偏差、样本有效性偏差和利益相关者偏差。

2020年的研究人口统计数据显示,北美的参与率下降了11%(图2),但欧洲和印度的参与率上升了。人口统计平衡的变化可能会在调查结果中引入潜在的非反应偏差,需要加以考虑。例如,参与的区域变化会影响设计和验证语言采用趋势的发现。


图2:2018-2020年研究人口统计数据。

样本效度偏差发生在被研究人群中并非每个成员都有平等的参与机会时。例如,当一个技术会议调查其参与者时,数据可能会提出一些有趣的问题,但不幸的是,它不代表无法参加会议的人口成员。为了防止这种偏见,我们研究的样本框架不是来自Mentor的客户列表,因为这将是一个有偏见的研究。为了我们的研究,我们仔细选择了一组广泛的独立列表,当组合在一起时,它们代表了世界上所有地区和所有电子设计细分市场。我们根据市场细分审查了参与者的结果,以确保没有人被无意中排除或代表性不足。

利益相关者偏见是指对调查结果有既得利益的人可以多次完成在线学习调查,并敦促其他人完成调查,以影响结果。为了解决这个问题,为发出的每个研究参与邀请生成了一个特殊的代码。该代码只能用于填写调查问题一次,以防止某人多次参加研究或与其他人共享邀请。

FPGA复杂度增长背后的驱动因素

fpga的复杂性最近已经增长到与当今许多IC/ASIC设计相当的程度。2020年研究中与FPGA设计相关的一些更有趣的趋势如下。

  • FPGA市场继续与重大漏洞逃逸到生产中作斗争。
  • FPGA市场正在迅速成熟其验证流程,以解决日益增长的复杂性。
  • 在功能验证过程中更成熟的FPGA项目可能会经历更少的错误逃脱。

IC/ASIC市场在2000年中后期经历了不断增长的阵痛,以解决日益增加的验证复杂性。同样,我们发现今天的FPGA市场正在被迫解决日益增长的验证复杂性。随着当今复杂FPGA的容量和性能的增加以及高性能SoC可编程FPGA(例如Xilinx Zynq UltraSCALE+, Intel Stratix和Microsemi SmartFusion2)的出现,传统的基于实验室的FPGA验证和验证方法变得越来越不有效。我们将量化当前FPGA验证过程的低效性,即在生产过程中出现重大漏洞。但首先,我们将看看导致FPGA设计复杂性的一些因素:嵌入式处理器的增加、异步时钟域以及安全性和安全特性。

在设计中包含RISC-V处理器的FPGA项目数量为23%。此外,集成了某种类型的AI加速处理器(例如TPU等)的FPGA项目数量为19%。


图3:嵌入式处理器核数。

在图4中,我们看到92%的fpga设计都包含两个或多个异步时钟域。验证与多个异步时钟域相关的需求增加了验证工作负载和复杂性。例如,在RTL模型上使用仿真无法证明一类亚稳态错误。为了模拟这些问题,需要一个具有时序的门级模型,而这个模型通常要到设计流程的后期才能使用。然而,静态时钟域交叉(CDC)验证工具已经出现,并正在被用于帮助在设计流程的早期阶段直接识别RTL模型上的时钟域问题。


图4:异步时钟域的数量。

今天,我们发现43%的FPGA项目在其设计中添加了安全功能。安全特性的例子包括安全保证硬件模块(例如,安全控制器),其设计用于安全保存敏感数据,如加密密钥、数字版权管理(DRM)密钥、密码和生物识别参考数据。这些安全特性增加了验证过程的需求和复杂性。

2020年,我们发现40%的FPGA项目都是在多个安全关键型开发流程标准或指南下工作的。在图5中,我们显示了在安全关键型开发过程标准或指南下工作的项目的各种标准的具体分解。请注意,一些项目需要在多个安全标准或指导方针下工作,这就是为什么采用的百分比总和超过100%。例如IEC61508、IEC61511。


图5:用于FPGA项目的安全关键开发标准。

核查在复杂性面前的有效性

随着这种日益增长的复杂性,FPGA项目结果在验证有效性方面是如何公平的?IC/ASIC项目经常使用“生产前所需旋转数”作为评估项目验证有效性的基准。不幸的是,FPGA项目没有等效的度量标准。作为另一种选择,我们的研究询问FPGA参与者“有多少重要的错误逃到了生产中?”图6所示的结果有些令人不安。2020年,在所有FPGA项目中,只有17%的项目能够实现无漏洞逃逸进入生产,这在首个硅的成功方面比IC/ASIC更差,对于某些细分市场来说,现场修复的成本可能非常高。例如,在军用航空市场中,一旦为了升级FPGA而拆除了系统的外壳,整个系统就需要重新验证。


图6:非平凡的FPGA bug逃到生产环境中。

图7显示了导致FPGA非平凡错误逃逸的各种类型的设计缺陷。“逻辑或功能缺陷”的百分比仍然是导致bug的主要原因。2020年研究中追踪的新缺陷与安全性(8%)和安全性(6%)特征相关。显然,多个缺陷会导致bug逃脱,这就是缺陷总数超过100%的原因。


图7:导致FPGA漏洞逃逸的缺陷类型。

图8按不同类别展示了逻辑或功能缺陷的根本原因。数据显示,设计错误是导致功能缺陷的主要原因,而且这种情况正在恶化。此外,与变更的、不正确的和不完整的规范相关的问题是许多验证工程师和项目经理经常提出的一个共同主题。


图8:FPGA功能缺陷的根本原因

除了我们用来确定FPGA项目有效性的错误逃避指标外,我们跟踪的另一个指标是项目完成情况与原始进度的比较,如图9所示。在这里,我们发现68%的FPGA项目落后于计划。设计和验证复杂性不断增长的一个迹象是,在2012年至2020年期间,越来越多的FPGA项目错过了计划,超过50%。


图9:实际FPGA项目完成情况与原计划比较。

前方有什么?

到目前为止,我们已经了解了一个包容、全面和公正的调查的基础,并分享了我们在FPGA验证有效性方面的发现。在下一篇文章中,我们将从项目资源和验证技术采用的角度深入研究FPGA的趋势。我们将以基于今年研究的FPGA市场各个方面的一些结论来结束这篇文章。

如果你现在渴望了解更多,请查看全文:2020年Wilson Research Group功能验证研究FPGA功能验证趋势报告



留下回复


(注:此名称将公开显示)

Baidu