验证是必要的多少?

解决问题要使用哪些工具是一个必要的第一次迈进的一门艺术。

受欢迎程度

集成电路设计流的出现以来,从RTL描述像Verilog语言或硬件描述语言(VHDL),项目团队一直与多少验证可以而且应该由原来的RTL开发者。

Constrained-random方法基于高级语言等eSystemVerilog进一步巩固了验证专家的角色。然后引入断言或基于属性的语言试图让设计师,验证更容易捕获的承诺提供自我记录的代码和验证设计意图。但是在主流,这些也成为了验证的领域专家。

更复杂的情况,设计越来越复杂和昂贵。增加了使用的商业知识产权以及内部IP设计可用于多个芯片。但所有这些一起工作,作为电子产品在汽车新市场开放,工业和医疗也完美地工作的时间更长。

这导致了一个正在进行的讨论在多大程度上验证需要做,何时做,如何做更有效。的一部分,这是方法——或者流程驱动,基本上把更多的验证和调试在正确的时间离开了。它的一部分是技术驱动的。对于复杂的设计,都有几乎普遍认识到四个不同的引擎现在required-formal、模拟、仿真、FPGA prototyping-as以及各种方法的静态验证。

“很多验证实际上是面向过程的,”Darbari说产品管理主管OneSpin解决方案。”关键是要把正确的技术,正确的资源,正确的阶段的项目,显然正确的人。技术方面的设计的挑战是巨大的。如果你认为最初是英特尔的高性能计算,然后低功耗走过来,权力成为了最重要的设计要求。现在你有安全,而权力和性能仍然存在。的需求只会增加。”

这正是事情变得很复杂。“验证问题是如此巨大和多方面的使用正确的发动机,在正确的时间,正确的任务,”皮特荷迪说,产品管理系统&验证组的主任节奏。”这也是划分和征服这多方面的问题,这样你可以在ip级别验证签字,然后集成到下一个水平up-subsystem,芯片级、系统级和拥有正确的引擎能够处理增加了复杂性。那么你需要加强能够验证正确与硬件交互软件栈。这是关于使用正确的引擎,这些引擎的范围从正式通过对模拟仿真到某种智能的原型系统,使我们能够更彻底地验证软件。”

一路上,有很多重复验证完成,效率低下。荷迪认为,机器学习可以帮助与回归管理,使回归更有效率。

“这是一个领域形式验证技术正在迅速改善,”他说。“我们第一次探索属性使用一定范围的引擎,然后我们可以使用机器学习技术来做得更好的下一次。所以当你进入回归,验证应该得到更多的优化。”

没有理由为什么这种类型的技术不能申请其他验证引擎。但选择合适的工具,正确的问题是至关重要的,这是只有少数公司掌握了的东西,说肖恩·Safarpour CAE主任正式的解决方案Synopsys对此

“仍然有很多人在钟形曲线的主要部分,仍然坚持,“Safarpour说。“模拟人只是试图推动通过的一切模拟。他们学习努力,时间已经不多了。他们看报道数据和实现,例如,他们只是在30%。你看像正式,一步跳,机器学习(可以帮助)。我们使用它在正式严重,但是我们也做其他地方——测试评分,根本原因分析,找到最接近原始问题的根源。有很多我们可以解析的数据。会让你更高效,使更有效的工具,但并不是阶跃函数,我们所要找的。只是让我们更好地使用这些工具,和个人的工程师将做得更好。但是他们还是有很多工作要做。”


图1:SoC的生态系统。验证一直是最耗时的问题在这个循环。来源:手臂

识别问题
所有这些假设工程师了解需要解决的问题。这是说起来容易做起来难。

“如果你问我今天是验证方法的不可或缺的部分,我认为模拟、仿真和正式的,”说,公司的首席执行官真正的意图。“如果你问人们挑选,他们会首先选择前两个,然后选剩下的物品。但是因为有这么多的效率低下,这些也是机器学习和技术的地方,相对不精确的技术,可以提高效率。我不相信他们会能够提高形式验证的效率,因为需要有一个精确的、完整的解决方案。无论你失败,你不能让失败,机器学习并不会去做。机器学习是最有效的情况下有大量的数据,我不知道如何理解它。如果我能提高成果质量的10%,这是一个大问题。所以当有很多低效率,机器学习效果很好。你听说过回归管理之类的东西——是的——但不是需要精密的地方。”

无论如何,正式收养激增,因为它是最好的方法对特定的问题。静态验收,已用于静态时序分析、增长,,Narain说。“在这之前我们做了动态时序分析,静态时序分析显著提高效率。这是一个可预测的方法来完成一定的失效模式的结果。这方面的一个例子时钟域交叉,这不是在模拟或其他技术。你真的需要一个独立的方法。在这500 million-gate设计人们做的事情,你怎么签字?这是一个完全不同的问题。静态的结果是一个新的模型,有很多承诺,,这些都是提高效率。”

问题的一部分也需要确保有足够的资源去做验证的时候需要这些资源。即使对于大公司,这是一个日益严重的问题,因为不断增长的复杂性需要一个计算周期在合适的时间。对于小公司来说,这可能是引发所需的可伸缩的,基于云计算的验证。过去,芯片制造商一直不愿使用除了内部云的验证,但这将改变为芯片开发新市场。

“小和中型公司需要模拟说:“Krzysztof Szczur,硬件验证产品经理Aldec。“这是更多的灵活性和成本。你不需要维护它,如果你需要5个模拟器,可以迅速扩大。”

这也使得公司进一步模拟左进入设计阶段,Szczur说。“它可以让你看到不同的分区设计,所以你可以看到“如果”和显示互连和其他资源的变化。你也可以指定时间限制和连续管理连接。”

设计方面的担忧
设计方面不断担心多少工作是为验证团队创建,观察,首席技术官超音速,它同样着迷于其他领域,没有验证工程师。“这是无法观察软件改变了过去15年,和所有的强调做事情更多敏捷时尚。从设计方面我们非常感兴趣的技术,我们可以借用。”

的一种技术,他认为映射到硬件测试驱动设计。“我们试图移动模型,我们可以引进片的验证方面开发了可以帮助我们设计更好的第一次,所以我们总是有测试工具,“Wingard说。“任何设计师会把东西放在我们的数据库不知道如果它基本上只是设置失败。设计师们总是在做一些本地验证说服自己什么都没做错了。我们的目的是把抽象级别,在那里他们可以做更多的事情。他们基本上可以有部分工作,当我们把它们交给专家,他们独立验证一些更高层次的规范。有独立的验证人的主要好处是他们是独立的。另一组的眼睛,软件社区往往使用设计审查过程处理。他们倾向于做合作设计或设计审查过程。这里我们有一个独立的工程师试图实现相同的功能的另一种方式,是一种检查和验证环境。”

Wingard表示形式验证的最有趣的方面是,它允许设计团队技术他们已经想使用——比如断言,找到一种方式重用这些不同。”对我们非常有价值的东西从仿真的角度来看,这一块不是上班如果这个输入处于这种状态,可以在正式的引擎驱动做出断言。正式的工作是做社区利用技术,硬件的家伙已经想使用设计方面是非常重要的。也许很简单,但这是一个非常有价值的转变。我们需要继续寻找这些机会,因为我想要我的设计师建立这些设施,这样他们不仅与验证团队沟通使用一些抽象的规范。相反,他们实际上给他们一个对象的一个起点,他们继续工作。不仅仅是硬件的勇气。它周围的环境可以使用硬件。这也是一开始就对所有的回归工作。”

更大的图景
重要的不仅仅是如何提高验证效率和更有效的——它是如何使整个开发周期更有效率和更有效,断言大卫•帕里首席运营官的Oski技术

“这是三件事,”帕里说。“一个是使用正确的工具,正确的过程的一部分,正确的设计的一部分,正确的团队的一部分。第二种是合理化,协调和协调所有这些不同的设计和验证正在使用的工具。第三是这个“左移位”,每个人都在谈论,找到你的错误在前面开发的过程,然后再利用过程中进一步验证过程。”

帕里不相信会有一个突然的阶跃函数在任何验证工具,不管是正式的工具,性能或软件模拟、仿真器、仿真器快速原型。“这些东西都是相当成熟的技术在这一点上,他们正在持续,增量改进,但它将操作比技术发展快。他们只是保持。我们将改进在哪里他们需要的地方。的工具,无论是机器学习或方法更好地选择什么验证工具用于设计的一部分,和能力这些工具应用在设计周期的早期。”

至于验证一个设计师应该做多少,帕里认为,在一个理想世界中,所有的块级verification-basic功能验证的传统上是直接测试应该由设计师和完成它应该是正式的。

“我们与我们的许多客户已经看到当他们有设计师的动机和兴趣,能够使用设计正式启动,它会创建一个美妙的设计团队和验证团队之间的协同环境,”他说。“设计师基本上能够找到所有的明显简单的bug和手去验证团队的东西,这可以使用更高的子系统水平以及在一块水平。”

然而,OneSpin Darbari辩称,这种静态验收,正式的、模拟、仿真、FPGA原型能解决问题的,除非关闭是一个优先级,除非有一个链接验证计划

”实际上是混淆的问题设计和验证,无论您所使用的技术,如果你真的没有能力评估完成后然后你不能做出判断而不是说,“这是日期,我们将船,我们将检查它,”“Darbari说。“我的论点是,在用户空间验证,并被许多不同的形式验证工具的用户,我注意到的一点是没关系您使用什么正式的工具,您使用什么模拟器,您应该能够将所有这些技术的结果集成到一个普遍的观点。直到我们能够这样做,除非你能束缚的结果验证,从设计师提出从第一天开始,直到关闭仿真验证,你不能说你做了什么,你没做什么。你收集所有的数据,所以许多不同的模型——谁应该决定什么是有意义的,所有这些不同的指标?”

有关的故事
验证统一
专家在餐桌上,第3部分:电力、安全、安全便携刺激和正式如何帮助所有这些。
验证在云中
是半导体行业作为服务EDA终于准备好了吗?
验证和物联网
专家在餐桌上,第3部分:转移,延长;使用机器学习和数据挖掘寻找新的bug和开辟新的使用选项。



留下一个回复


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

Baidu