合并验证与确认

这些是真正独立的任务,或者只是工具和流量的限制?

受欢迎程度

验证和确认是两个重要的步骤在作品的电子系统和随着时间的推移,他们的角色,但他们一起玩是如何改变。事实上,今天我们看到的主要机会重新考虑这方面的流程,这可能意味着结束其作为独立任务的许多芯片。

与很多东西在这个行业一样,然而,挤压出来的一部分流可能会让它出现在不同的地方,这使得别人的责任。

首先,我们必须定义条款。“如果我们定义验证pre-silicon检查ASIC的功能与设计意图,和验证的post-silicon检查系统对市场需求的功能,我们就可以理解为什么验证和确认已被视为不同的任务在过去,”迈克尔·汤普森说验证架构师Oski技术。“技术和组织原因存在。”

让我们先从验证。“验证是一个有限的逻辑问题,”道格·阿莫斯说,产品营销经理导师,西门子业务。“我们都在问这个问题,‘我的硬件错误的机会是什么?“现代报道借技术可以给我们一个逻辑基于指标的回答这个问题,目的是得到尽可能接近“没有机会”。验证我们的痛苦是我们从来没有达到“没有机会”,所以我们决定当我们足够近,和良心之间的权衡和实用主义开始。”

“从不”是因为引擎的限制。“对于多个代ASIC的设备,模拟主要验证工具,”汤普森说。“模拟方法没有扩展他们的任务刺激的一代,响应预测和检查系统级环境或相反。”

额外的引擎成为必要。“不同类型的设计可能需要不同的验证策略,工具和测试环境,”博Zalewski说,总经理Aldec的硬件部门。“大SoC设计要求复杂的流动,多个工具,包括虚拟样机,模拟器,模拟器和原型板理想集成在一起,可伸缩,可重用性与测试的不同阶段验证。”

因此,需要验证增加了。验证是什么?“验证是不客观和逻辑,”阿莫斯警告说。“理想的验证环境可能涉及建设一系列逐步的更好版本的设计和揭露每个无限的猴子,直到一个肯定是完全适合的目的,和broken-accidentally或故意。这是最理想的。但以同样的方式,“没有机会”验证理想是从来没有达到,也不是完整的验证。这部分是由于成本和时间,这两个无所不在的完美障碍在任何项目中,也主要是因为验证成功的某些方面以主观标准衡量,不是逻辑的。”

已经取得了很多进展在两个引擎和方法。“人们设计知识产权自己,然后IP重用的对象。然后子系统成为对象的重用,这是一个组装的IP模块和软件——这也是IP,”弗兰克Schirrmeister解释道,高级组系统&产品管理主管验证小组节奏。“复杂性是一个司机。对验证也有类似的事情发生,特别是当涉及到的定义的意图。意图使用定义在IP水平。子系统水平上升。定义的意图和需求随着复杂性的定义。验证和确认合并,或至少接近在一起,芯片跨越系统和董事会。虽然这样做,目的是得到对系统要复杂得多的系统来定义。”


图1:验证和确认。来源:半导体工程。

随着时间的推移,确认已成为验证。“典型的验证任务将成为的一部分验证计划说:“拉里•悟道系统中产品管理总监&验证群节奏。“这将离开,我们将能够定义之前我们需要做我们愿意签字。”

更复杂的是带入验证直到它变成验证的同义词。“过去我们被连接在一个的一切模拟器FPGA原型、加载软件开关是否工作,“Schirrmeister说。“这是验证的程度。现在我们增加智慧和定义场景和定义的情况下,我们需要验证。确认或验证的意图被指定的吗?验证停止和验证开始在哪儿?”

便携式刺激
最近的重视便携式刺激推动这两个学科的整合。“便携式刺激是一个强大的概念,旨在让芯片设计团队制定他们的核查和验证的意图,然后使用一个规范在开发周期的任何阶段,“说鲁珀特•贝恩斯首席执行官UltraSoC。“所有的EDA公司接受验证/确认的概念模型尺度端到端的整个开发过程,从设计到模拟、仿真、硅和系统验证。Synopsys对此这方面的验证连续,但每个人都承认它存在必要性和正在努力修复它。”

汤姆安德森,技术营销顾问OneSpin解决方案,需要这一步。“便携式刺激工具可以从一个高级模型,生成测试针对每个验证和验证平台。这些测试包括嵌入式处理器上运行的代码,在需要的时候,访问芯片输入和输出通过可用的每个平台的机制。这个可以检查验证功能验证平台,减少生产的时间需要软件运行。它还允许验证时发现错误,甚至在跟进制作芯片,在模拟复制容易调试。”

写下的东西可以产生影响的行为。“便携式刺激意味着你有一个定义的意图是写在一个可执行形式是可重复的,“Schirrmeister说。”。这使得验证。就像写规范的参考RTL你可以验证的testbench,现在你正在改变过去验证过去的SoC水平和验证。现在验证移动到一个更高级的,我把它们一起在multi-chip级别。”

这提供了丰富的验证套件可以pre-silicon执行。“很多验证套件经典被生命的证据,“悟道说。“你经历和地址的所有组件,并确保你可以与他们交谈,读写寄存器。便携式的刺激,我们可以运行一致性测试和电源管理测试对一致性和十字架的这些活动。现在,当我们得到第一个硅,你成功的机会大大增加了。”

引擎的扩展
的司机之一便携式刺激引擎现在可供验证的范围,其中一些在过去只用于验证。“fpga原型和模拟跨越彼此Schirrmeister说。“他们被用于验证和确认,但有一个灰色区域重叠的地方。我们正接近一个时代,他们携手并进,成为连接。如果你看的DNA的DNA验证验证和比较,他们非常相似。但是他们需要不同的速度和不同的调试能力。”

“爆炸在软件仿真和FGPA原型,因为时间太久,”Mike Gianfagna说,负责营销的副总裁eSilicon。“这影响启动,这是一个两阶段的批准。验证的一部分,”摆动吗?“如果是这样,你能运行它在扫描链模式和运行速度吗?在那之后,你有一个糟糕透顶的验证周期长。”

验证和确认与测试的某些方面在一起,。“当引进真正的硅,和人们一起在测试领域,“Schirrmeister说。“考虑设计测试,在实验室中运行的测试国家仪器虚拟仪器。当你把便携式一起刺激,它将验证/测试和验证。”

并不是每个人都愿意去这么远。“验证和确认不是什么引擎,而是他们都需要完成什么任务,”阿莫斯说。等“引擎确实可以准确地模拟运行软件,但不是全部由于缺乏执行速度。甚至FPGA原型,pre-silicon最快的引擎,可能缺乏完整的堆栈操作所需的速度。通常使用混合技术;同的一些系统功能到一个事务级别近似,如一个手臂快速模式。通过这种方式,一个模拟器可以运行足够的软件做一些严重的硬件软件co-validation。采取一个极端的,整个系统可以模拟在交易层面,创建一个虚拟样机,这不仅仅是一个pre-silicon也是pre-RTL近似;事实上,一个很好的环境来验证用户界面和美学”。

接触到软件
当软件介绍的主题,它开始变得更复杂。水平最低的“考虑一个软件堆栈,如引导代码或董事会支持包最密切依赖于硬件的功能和协议栈的上层,如应用程序和用户空间,完全脱离它,”阿莫斯说。“通常情况下,验证只需要足够的软件堆栈为了锻炼硬件,而验证需要所有—完整的芯片,整个堆栈。”

而便携式刺激委员会一直致力于这个问题,委员会还没有完全。“需求文档中指定的一个功能是需要硬件/软件抽象接口(HSI),“说,公司的首席执行官Breker。“这不是最新的草案,但需要之前可以完全解决这个问题。”

“溪不在那里,但这并不是一个限制器1.0规范,“悟道说。“有设备插入司机和序列。恒生指数是关于自动化我们需要使工作更容易创建这些驱动程序,并可移植性的描述,它一次UVM序列或c代码测试所需的驱动程序或任何你想做的事。我们不做测试在这些水平停滞不前,我们只需要插入一个序列或驱动程序,使它。1.0我们专注于硬件的验证,而不是硬件/软件的验证系统”。

除了功能
不幸的是,生活是混乱的。“最终,所有系统必须处理模拟世界,其他不可预知的和可能的恶意系统(和人)甚至可能破坏最严重的设计验证,”阿莫斯说。“仅验证是不够的。更加完整和准确的验证场景,少一个的设计将在第一轮被击倒。”

此外,验证可能只是太干净且可预测的。“通常,真正的问题——他们是否取得bug或更微妙的问题,减少功耗性能或增加几个百分点——只会表面的硅,“UltraSoC的贝恩斯说。“他们显示了实际的代码与真实世界的接口全速运行。”

阿摩司指出,今天最大的驱动程序验证安全性和安全性。

“功能安全需求规范系统的一部分,包括最终产品必须如何应对随机错误,比如一个α粒子翻转一个内存,”安德森说。“正式的故障注入工具可以分析设计,以确定哪些故障不会影响操作,因此是安全的,而且可以传播和制造麻烦。这些错误必须被检测到,并被纠正或发出警报,以便系统可以采取适当的补救措施。因此,一个关键方面的验证可以在验证阶段正式检查,并行仿真。”

促进未来
“人们常说,把验证和确认一起将减少整个系统的上市时间,如果不是ASIC,“Oski的汤普森说。“如果我们假设是正确的,那么现在看来,便携式刺激可能增加价值,如果它能够促进移植刺激从系统级别到ASIC或者块水平。请注意,这比大多数人认为的相反方向。为了让这样的事情发生,这个行业需要找到一种方法来之前准备好所有系统组件ASIC验证团队得到他们的手在RTL代码”。

一个新兴的方法就是将嵌入式监控硬件,这将使更大的可视性硅的操作。相关分析系统将提供有价值的见解,允许工程师调整性能和理解复杂的硬件/软件交互。“从田间试验收集和利用数据的能力,甚至在生活中操作提供了一个强大的反馈回路,”贝恩斯说。“这一关系整个开发流程,从自上而下和端到端,不仅使系统和软件工程任务容易,但也回硅团队提供可行的见解。,让他们在硅或IP本身修复bug,并performance-enhance或cost-reduce芯片的后代。”

有些人选择看甚至更远的未来。“我们开始问的问题是是否可以缩短的任何或所有与深度学习?”eSilicon Gianfagna的问道。“这将是一个好工具,这些类型的问题。深度学习的一般性问题,越来越多的系统设计师需要硅使他们的梦想成真,然后他们可以映射算法硅。”

很明显,某些方面的验证正在被验证团队。这将导致取消验证团队?这是不太可能。更有可能的是,它将免费验证团队看与安全相关的问题,安全,包括集成的越来越大的方面。



3评论

达斯汀·奥尔德里奇 说:

我当然没有得到这些定义总协定和他们不是从半导体行业,但他们为我工作单独的条款。
验证:流程用于提供客观证据,一个产品或系统有可能满足特定的预期用途和应用的要求。
资格:流程用于提供客观证据,一个产品或系统满足特定的预期用途的要求和配置包括变异的来源。
验证:正式宣布与法律产品的重量,设计、过程等,满足特定的预期用途的要求和应用包括变异。

布莱恩•贝利 说:

由于达斯汀。过去我用IEEE定义,但我认为你是对的,我们正在经历一段时间的变化,这些定义意味着什么,尤其是鉴于安全需求。看起来资格已经取代了过去接近验证和进一步验证了前面的定义很多。我愿意听听其它意见。

彼得鲑鱼 说:

在1970年代末我在英特尔工作在一个视频游戏的筹码。我们的时间不多了测试这个芯片使用通常的过程,包括使用一个昂贵的哨兵600测试系统。所以我建立了一个探针台锻炼玩视频游戏的芯片。我确认所有的芯片,还发现了一个错误的重要模式。我固定误差通过削减在显微镜下痕迹,使用钨探针提示,添加一些盖茨的外部TTL逻辑信号的时候再进行重新注入。然后我又验证了修正通过玩这个游戏。
这激发我思考复杂系统的验证。我申请美国专利7505862覆盖测试系统组成一个强大的测试芯片嵌入式系统板。它还覆盖一个快速的方法来创建系统级测试向量。这一天,我认为系统级测试的方法是值得考虑的,在上市时间是至关重要的。

留下一个回复


(注意:这个名字会显示公开)

Baidu