为什么很难确定IP质量(quality)

 

IP的特性、验证和使用方式会对设计的可靠性和兼容性产生重大影响
区分好IP与中劣IP变得越来越困难,部分原因在于它取决于使用方式和使用地点,部分原因是即使最好的IP在一个系统中也可能比另一个系统更好地工作——即使是同一厂商开发的芯片。
IP本身也变得越来越复杂。曾经用于单一功能的IP现在已与其他IP结合在一起以创建子系统。尽管这在开发时间方面带来了好处,但同时也引发了涉及集成的新问题。因此,考虑任何IP的第一要务是是否值得将其包括在内。
那么,什么样的IP是可接受的呢?技术副总裁兼Arm研究员Peter Greenhalgh表示,ARM是商业IP的最大制造商之一,它使用许多指标来衡量质量,并且在项目的不同阶段“pass”的要求也有所不同。“但是,我们的指标和“pass”要求在我们所有的IP中都基本一致。我们的质量指标与功能验证,性能和可交付成果挂钩。这些领域中的每一个都细分为用于评估IP部分的重叠测试集。”
对于CPU,功能验证将包括架构测试(在该测试中,将IP与架构模型进行比较)以及定向测试,块级和单元级受限的随机测试(在该测试中,将IP与该块/单元的微体系结构模型进行比较)。还使用了几种正式的验证方法,以及操作系统启动、在仿真器和FPGA上的应用程序测试以及多个顶层随机指令序列引擎——在可用时在仿真器和芯片上运行。简而言之,目标是拥有许多重叠的功能验证方法,因为这减少了漏洞逃脱的可能性。
Greenhalgh说:“性能验证也采用类似的途径,它在IP上运行了多个不同的基准测试和微观测试,并与我们模型的预测性能进行了比较,其中还包括设计的功率,频率和面积。必须在不同的IP配置中创建和测试交付物,包括集成测试平台、IP-XACT模型和用于芯片级功率分析的向量,以确保IP可以有效地集成到合作伙伴的SoC中。我们生产的每个IP在其生命中都有几个里程碑,从传统的alpha和beta到适合测试硅片的所谓“lead access”,到所有测试都已完成的“Release”。我们让产品合格到以适合全产业生产,功能、性能和可交付质量指标的“pass”数量随着IP逐步实现其“release”的每个里程碑而增加。”
从IP用户的角度来看,质量是决定在更大的设计中是否采用IP的决定因素,因为它可以节省设计人员的时间。这段时间可以用于项目的主要功能,它们可以增加自身的价值。
“在这种情况下,质量的定义非常广泛,” Aldec硬件部门总经理Zibi Zalewski说, “它表明IP不仅根据行业标准或项目要求正确有效地运行,而且还具有轻松与系统其他部分互连和/或在需要时将其扩展为多个单元的能力。”
在IP提供商方面,质量的定义转化为提供上述所有功能。这就需要复杂的验证方法,使用标准化的界面,全面的文档并简单地说明用户的视角体验。Zalewski指出,总是需要集成一些IP,但是IP质量决定了此阶段可以完成的速度。
IP的另一个质量指标是全面的测试平台套件的可用性,该套件涵盖了所有功能和所有配置,可能已准备好集成到更大的UVM设计环境中。他说:“在这里,表示IP质量的一个好习惯是将emulation/prototyping准备就绪的软件包捆绑在一起,以便在硅前测试中在FPGA中无缝实现。
 
(定义质量)取决于谁问
 
“大多数时候,IP质量的定义取决于优势点。Cadence设计IP营销总监Tom Wong说:“如果您是研发经理,那么IP质量就意味着某一方面。而如果您是全球供应经理,那么IP质量意味着另一方面。如果您是SoC初创公司,那么您的质量衡量标准与已建立的无晶圆厂公司的质量衡量标准完全不同。如果您是在内部设计IP,那么与商业IP供应商相比,您的考虑就大不相同了。而如果您要设计汽车SoC,那么我们甚至属于完全不同的类别。更别说作为IP供应商呢?如何向客户阐明IP质量指标?”
这也因IP的类型而异。Wong表示:“在接口(硬件)IP和控制器方面,如果您是研发经理,那么您的目标就是设计符合IP规范和PPA(功率,性能和面积)目标的IP。您需要通过硅后测试芯片来验证您的设计,这适用于所有硬件物理测试。对于RTL形式的控制器(我们称为这些软IP),您必须将它们综合到特定的目标库中,以便以适合SoC集成的物理形式实现它们。当然,您的设计将需要通过仿真,设计验证以及通过必要的DRC检查等一系列设计验证步骤。此外,您希望在各个过程角落看到测试芯片以确保IP健壮并在生产晶圆的正常工艺变化下表现良好。”
对于从事知识产权采购的人,质量的衡量标准将取决于知识产权的成熟度。这涉及使用该IP的设计数量以及错误报告和后续修复的历史记录。Wong指出:“您将在寻找文档和技术交付品的质量。您还将基准化供应商的标准操作程序,以进行错误报告和技术支持,并满足先前程序中的交付性能。这是技术团队技术实现之外的补充。”
一个内部团队可能会为特定的SoC项目设计IP,他们将使用已建立的设计流程,并将具有上一代IP的传统知识。他们可能会被要求在设计IP时考虑到将来程序的某些可重用性。但是,这样的可重用性要求不需要像商业IP供应商那样严格和广泛,因为作为设计团队的标准操作程序的一部分,很可能已经建立了适用的度量标准和程序。考虑到这个稳定的起点,因此在很多情况下,将基于已经被使用的先前设计进行新的开发。所有这些标准可帮助团队更轻松地实现质量目标。
然后,如果为汽车SoC设计,则需要额外的繁重工作。“除了确保IP符合协议标准的规范并通过一致性测试外,您还必须注意满足功能安全要求。这意味着遵守ISO 26262要求并随后获得ASIL认证。通常,即使对于IP,也必须执行一些与IP相关的与AEC-Q100相关的测试,例如ESD、LU和HTOL。” Wong说。
eSilicon营销副总裁Mike Gianfagna说:“这是一个很大的变化,因为IP质量曾经是本地化的指标。IP是否有好的文档?是否经过充分测试?是否包括良好的验证载体和详细的芯片报告?尽管这些项目仍然非常重要,但是来自多个来源的第三方IP的广泛使用突出了另一个质量指标——互操作性和集成性。
 除了一系列独立的质量指标外,设计中使用的IP还有兼容指标。其中包括项目清单,例如兼容的金属叠层、DFT和操作范围。 Gianfagna说,可靠性要求和控制接口对于设计团队是否将面临集成挑战至关重要,这可能包括如何将IP模块集成在一起。
 
质量匹配
 
质量匹配有助于匹配芯片制造商正在使用的其他IP的质量,这在汽车等市场中尤其重要。客户张嘴要求 “零缺陷”很常见,但是当您在实际生产中时,您会知道所有IP,所有代码都存在错误。Synopsys的IP加速市场营销总监Mick Posner表示:“关键是要尽可能地减少错误。”
提高质量的方法之一是使用特定的配置,它可以对设置的配置进行非常特定的测试和验证,因为可配置IP通常具有未被覆盖的状态。“通过转移到已配置的子系统,可以减少暴露的漏洞。用户希望看到它们CDC / RDC没有错误。通过验证,您可以获得99.x%的功能覆盖、代码覆盖,当它扩展到混合信号IP时,绝对需要表征测试芯片报告。”
Posner说:“汽车行业的设计需要更多的验证,以及功能故障分析,这两者都是特定于配置的。汽车IP产品要通过标准的ASIL测试、FMEDA报告、功能分析、模块的第三方汽车认证,以及可靠性数据,例如怀疑的故障率和工作条件的物理验证。”
 
包括RTL的IP质量
 
IP质量一直延伸到RTL代码。
“客户希望确保他们能够轻松阅读RTL,希望对RTL进行了很好的注释,可以在没有警告或错误的情况下进行综合,并且其Verilog的结构合理,” Codasip的市场营销副总裁Chris Jones说,“他们还希望支持各种低功耗模式。”
这对于RISC-V ISA尤为重要, RISC-V ISA出现了质量问题,因为它每个物理实现都不相同。Jones说:“ RISC-V仅仅是一个ISA规范,每个提供商都应根据自己的意愿实施ISA规范。” “在RISC-V社区中,RTL可交付成果的质量差异很大。可以预料其中的一部分,因为其中一部分是由学术贡献的核,支持十分有限。但是,即使是最近宣布的开发者(一家无晶圆厂的半导体公司)开源的核在AXI总线中也存在错误。”
Jones补充说:“在RISC-V世界中,质量尤为重要,因为开发人员希望确保他们从做得很好并且交付得很好的供应商那里获取IP。”
由于要应对的变量太多,因此有人建议制定IP质量标准是有意义的。对其他人则不是。
 ClioSoft市场营销副总裁Ranjit Adhikary认为,在IP质量方面,标准并不适用,因为每个公司在要求方面都不同。 “如果有IP库,人们会忘记用于流片或测试芯片的IP设计的快照。 通常,当人们不得不复制数据并出售IP时会发生什么,就是他们将错误的文件复制到错误的快照。 此外,下载IP时,必须进行制衡。 例如,当您上传IP时,您要确保库中没有噪音。 您要确保已上传正确版本的IP。”
拥有数据管理系统的接口会有所帮助,因为它随后直接与快照关联,然后可以将其上载到库中或用于继续构建设计。
“在执行此操作时,您要确定所有相关文件都已上传,并且可以通过定义工作流程来完成。” Adhikary说,“例如,假设您是做这件事的工程师。然后它到了我这里,我说我将运行一些脚本,并通过可复制的结果来查看您是否交付了正确的版本。一旦您放入了这些制衡所需的部分(可以使用脚本将其自动设置),就可以批准上传。重点是当您需要IP时,您希望能够轻松地找到IP、对其进行限定设置、重复使用并发布它。找到IP后,您要确保它符合您的要求,因此,您需要能够定义所需的指标、参数、识别IP,并将IP与要调查的一两个候选IP进行比较。完成此操作后,假设您获得了下载许可,您可以运行lint checker,它将检查并告诉您IP的状态,是否缺少文件,IP的功能以及什么文件是实际生成的,是相同还是不同。这些都是您可以做,并且必须做的。”
 
重定义术语
 
OneSpin Solutions技术营销顾问汤姆·安德森(Tom Anderson)建议:“由于与“Six Sigma”和其他特定行业计划的冲突,“质量”一词已被重新定义,术语“ IP完整性(integrity)”的范围更广。”
 使用形式化分析来验证在受限随机仿真环境中使用的验证IP(VIP)配置正确性的经验。
确保设计的完整性包含四个关键维度——功能正确性、安全性、保密性和可信度。功能正确性是传统验证的重点,可确保设计符合其功能规格。对于IP,举例说此规范通常涉及USB 3.0接口或RISC-V指令集体系结构(ISA)等标准。
但是,仅功能上的正确性还不足以用于许多其他方面的设计。安德森说:“诸如军用航空、嵌入式医疗设备和自动驾驶汽车等对安全至关重要的应用,要求设计在现场能够正确运行。诸如alpha粒子命中之类的随机错误一定不能损害设计安全性。这些应用程序使用了许多类型的IP,因此IP提供商必须负责安全性,并且IP集成商必须对此进行确认。在许多这些相同的应用程序中,IP一定不能包含安全漏洞,该漏洞可能允许恶意行为者在现场控制包含IP的芯片。IP提供商和IP集成商都必须筛选设计是否存在意外的安全漏洞。”
同样重要的是要相信IP块只能实现功能规范定义的内容,而不是能实现它不应实现的功能。
Mentor IP部门常务董事Farzad Zarrinfar表示:“要让客户感觉IP风险低,还有必须满足的绝对可交付成果。设计IP基础架构时,我们想到的一件事是基于云的计算系统,它使我们能够对IP进行全面的IP验证,这不会使客户承受高昂的成本,因此,大大降低了CapEx。一切都在云中。我们使用多种工具来验证IP到晶体管层,例如用于各种天线效果、ERC效果、LVS和DRC的Calibre。这些都是如果您不进行验证,就会遇到问题并提供低质量的IP的方面。”还进行了综合提取,并考虑了所有电阻参数,进行了设计的晶体管级仿真和SPICE级仿真。
 用户的其他期望包括全面的时序分析、功率分析、漏洞分析以生成可交付成果、前端视图和后端视图。 还应该在不同的抽象级别上验证设计,以确保它仍然等效,并且需要进行全面的浮动节点检查。另外,随着设计中电压的降低,CMOS技术的可变性增加,这需要进一步的Monte Carlo分析。 在这里,电子迁移和IR分析进入了工作中。
“我们生成的所有数据表,生成的所有Verilog模型,所有DEF时序,所有用于平面规划的LEF,所有BiST模型以及一直到GDS-II的所有数据——一切都必须准确,”Zarrinfar 说,“最重要的是,在选定的工艺节点中,测试芯片被构建并与生成的数据结合在一起,以便与硅后数据相关联,以确保它们彼此对齐。”
 
结论
 
每个客户都有责任确保自己的设计能够成功地通过制造,但是该设计中的各个IP所需的支持文档、分析、验证、确认和仿真的数量令人难以置信。从生态系统的角度来看,当今拥有高IP满意度的SoC确实是团队的共同努力。
在这样一个瞬息万变的复杂世界中——根据Arm的Greenhalgh的说法——要将技术和方法的数量协调到非常低的数量级,并且对不同的IP都适用几乎是不可能的,所以没有一种可以想象的方法来创建实际上符合任何要求的单一标准。而且,如果一个标准处于较高的抽象水平,那么主观解释的空间将使该标准在很大程度上没有意义。
因此,IP质量将始终是一个变化的概念,具体取决于客户,设计和应用。而且这不太可能在较短时间内有变化。
  
原文链接:
https://semiengineering.com/why-ip-quality-is-so-difficult-to-determine/
扫描上图二维码可直达课程页面,马上试听
往期精彩:
获取验证通关密语,就在本周日开班的验证V2课程
30w+还送股送房?60+IC企业2019薪资全面攀升!
UVM RAL模型:用法和应用
我们准备做第二期线下培训,依旧认真且严肃
如果你突然被裁员了,你的Plan B是什么?
[彩虹糖带你入门UVM]
理解UVM-1.2到IEEE1800.2的变化,掌握这3点就够

发表评论

电子邮件地址不会被公开。 必填项已用*标注