中文 英语

最大的核查错误

随着soc比以往任何时候都包含更多的处理器和更多的软件,需要的不仅仅是更多的验证,而是正确的验证。

受欢迎程度

SOC.今天有更多的处理器和更多的嵌入式软件,包括驱动程序和中间件,只是为了获得硬件工作。反过来,这需要越来越好确认。另外一个挑战是,没有一种方法可以进行验证,并且很容易理解硬件和软件团队在设计过程的早期阶段就接受验证过程和方法是多么重要。

“许多公司低估了核实芯片所需的东西,”迈克尔圣妮,验证营销高级总监Michael Saniesynopsys.。“如果你看一下半导体设计的方式,验证部分会惊讶地引起了人们。这不是每个人。有些公司早在10或15年前就会审视核查可能是一个战略优势。如果您知道如何做得好,您可以投资它并建立让您的业务优势的基础设施。但并不是很多公司实际上都这样做了。我已经看到验证的思维程度作为可能在少数公司中的战略优势的战略。这是最大的司机,这是上市的时候,因为人们已经实现了市场的时间,并按时获得芯片肯定会产生优势。“

但验证也主要发生在设计周期结束时,并影响其对芯片制造商的战略价值。“由于时间,你匆匆忙忙,因为你匆匆忙忙地出现了,或者你在计划中创造延迟,因为你想做更多的验证,”Sanie说。“这总是瓶颈。良好的验证未在设计后启动。它应该从您设计和架构您的设计环境时开始。该团队应该考虑在那一点验证,直到设计结束。“

人们使人们正在寻找工具而不是验证过程本身,并指出Harry Foster,首席核查科学家导师图形。“这是工具和技术,但也是我们为使其可重复而采取的一系列步骤。它是在组织内部发展适当的技能来利用技术——这是一个很多组织没有解决的问题。然后,在此基础上,它将在流程中构建度量标准,以便他们能够确定事情是否有效。很多人都想要一把完美的锤子,但却没有停下来考虑是否需要一把锤子。”

他说,工程团队也过于关注验证的方式和验证的内容。“我一次又一次地看到这种情况。换句话说,有些人会专注于他们将如何创建一个UVM测试台,而不是坐下来询问他们真正需要验证什么。他们漏掉了整个方面。这归结为第一个问题——核查计划不完善。就是这么简单。”

福斯特说,就像尝试飞达747个你所需要的一只大众时,相同的验证也是如此。“验证规划差,缺乏了解理解最佳工具,最好的技术,最佳技术,他们试图验证的设计的最佳方法。”

但这需要一套特定的技能,能够退后一步,看看设计,并理解需要如何和什么,他说。“一个组织需要一些东西。他们需要一个验证架构师,然后他们需要实现者——那些将管道和工具中的基础设施组装在一起的人。很多组织都没有做到这一点。验证架构师的经验丰富,他们可以看到问题并理解他们需要验证什么,不仅需要验证什么,还需要验证哪种类型的工具和技术合适或不合适。这确实需要一些专业知识。你需要一个对架构有更多了解的人来理解设计。很多组织没有意识到这一点,所以他们有一群验证人员和领导,而领导只是管理,他们没有真正拥有架构视角的人。这里面有很多技巧。你必须深入了解设计,但你也需要了解什么类型的方法适合这种技术,”他解释道。 This includes knowing what you are trying to accomplish from a verification perspective and how to measure that goal.

不要把资源浪费在解决问题上
“正确的”验证路径充满了复杂性,并且在一个问题上投入资源并不总是最好的解决方案。

虽然顶级半导体公司可能有更多资源来致力于验证挑战,但这并不总是最好的。Charlie Kahle,CTO在设计服务提供商突触设计研究发现,对于像Qualcomm.通过其调制解调器芯片,“这是他们拥有的企业,并将继续拥有,他们将继续发展到这一点。因此,他们将在这部分问题上施加了很多重视和大量资金。在这种情况下,公司的规模和公司的规模齐头并进,他们会尽一切 - 抛出一切,但厨房水槽基本上都在它 - 他们会尽可能多地做。但后来你回到了可能不是主流部分的大公司。也许这是一个大公司的部门,但他们不是公司的主流部分。在这种情况下,他们可能不会像它那样抛出,并且会更具成本意识。他们会看看它有意义的地方。也许他们只是做那些夫妻知识产权在FPGA中的块是新的,并且在FPGA上没有进一步进一步,其余的是用UVM完成。“

,Synapse Design的总裁兼首席执行官注意到他们已经看到了许多采用传统方法验证的公司,并且一直在这样做很长一段时间。通常这种方法包括抛出太多人力,资源过多或购买太多工具,但仍未降低风险因素。相反,“我们说,'让我们在盒子外看它。让我们看看你在做什么设计。让我们把它拿到做一个有意义的事情,做不同的类别是有意义的。“

他说,Synapse甚至在十大半导体公司中看到了越来越理想的验证情况。“我们已经进入并查看了他们的验证环境,并告诉他们他们拥有多少漏洞,并通过后期的研究来确定为什么它不在第一次尝试时不起作用,为什么它没有在第二次尝试中工作,这是怎么回事通过设计验证环境而经历了他们的根本缺陷。这不仅仅是扔掉了这个问题的机构。即使他们在问题上扔了钱,它们仍然没有结构。它不是首先正确的。在一天结束时,如果您想以最少量的努力获得芯片,这就是ROI。这就是为什么验证设置需要完全不同地根据您想要做的事情完全不同。“

沿着这些线,节奏同事Mike Stellfox指出,核查计划的一个关键部分是正确地估计核查任务。但这仍然是一种艺术形式。他说:“我们看到,在这个领域,人们很难制定出一个全面的核查计划,以便真正跟踪他们的进展,并确定何时完成,因为核查是关于风险管理的。你永远无法完全验证某些东西。你必须尽最大努力来降低风险,而做到这一点的最佳方式——就像其他任何事情一样——是制定计划,并通过度量来管理你的进展。”

Stellfox的另一个关注领域与UVM的巨大关注有关,并且受到约束的随机覆盖驱动验证,这已成为工具供应商在过去两年中与客户合作的主流方法。“这种方法是真正为我称之为IP的自下而上验证,以及子系统验证的方法,在那里您正在尝试验证独立于任何特定SOC或应用程序上下文的硬件。”

“在那种验证中,”他继续,“你真的想尝试彻底核实,因为你不知道它是如何使用的。那些IP可以坐在许多不同的筹码中。That’s applying well, but where I see a lot of mistakes are when you look at an SoC with the software, there hasn’t been a lot of focus there and everybody’s just doing ad hoc approaches for the SoC integration and use-case verification where you want to verify how all of those IP’s work together in the context of some specific application context.”

汤姆安德森,营销副总裁BREKER.同意。“我们与SOCS看到的最大问题是人们假设只是因为他们做了一份好的工作验证单个块,你只能将它们塞在一起并期望他们工作。我们有一个早期的客户,拥有一个大型的SOC - 一个处理器和一系列不同的块 - 他们实际上已经完成了验证块是否正确整合的很好的工作。他们从未做过的是将块流入我们所谓的用户场景。这位客户有一个情景,他们有两个正在交换数据的街区,他们在公共汽车上互相交谈。他们都经过独立验证,但他们从未在一个现实的模拟中连接在一起。它们向后,所以它们必须使第一个块将数据写入内存中,运行一个软件算法来翻转所有位,并将数据转到第二个位。这是一个非常昂贵的软件补丁,它在该特定操作中杀死了性能。“

鉴于当今soc中嵌入式软件的数量,以及验证用户场景的需要,所有迹象都指向自顶向下的、软件驱动的验证技术,而不是当今流行的自底向上方法。这些技术以多快的速度为用户提供,它们将以多快的速度被采用,仍有待观察。

哈里·福斯特对验证的顶级建议:

  • 工程团队必须锁定硬件和软件之间的API。我们今天经历的大多数问题都是由于未能做到这一点而造成的。如果我们能在这一点上达成一致,团队就可以分开,开始做他们的设计。只要他们坚持API -硬件和软件之间的通信的团队可以离开并独立设计和验证自己的组件做知道他们会工作,因为他们没有违反了规则,建立了硬件和软件的方式将通过API进行沟通。”
  • 不仅仅是获得硬件,获取软件,将它全部齐合在一起,将它扔在那里,然后开始验证尝试引导操作系统或高级功能。相反,检查事情逐步检查。“我有硬件和软件:软件可以与硬件的相应方面交谈吗?将验证分配到适当的阶段或阶段,以确定在特定阶段或阶段验证的内容。



发表评论


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