调试复杂的soc

专家们表,第1部分:为什么在调试时间增加,潜在趋势,调查不透露。

受欢迎程度

半导体工程坐下来讨论复杂的调试soc兰迪鱼、副总裁战略客户和合作伙伴UltraSoC;拉里悟道,产品管理总监节奏;马克•克拉高级产品营销经理导师,西门子业务;和杜米尼克摩根,负责工程的副总裁OneSpin解决方案。以下是摘录的谈话。

SE:威尔逊研究小组所示的趋势数据/导师学习时并不令人鼓舞调试。在最新的调查中,验证工程师花44%的时间在调试,而这个数字一直在增长。发生了什么?

克拉:哈利培养管理这项研究。这是一个双盲研究,涵盖了整个行业,不仅指导客户。这是世界性的。我们尽量保持每年尽可能一致的问题,这样我们可以做趋势分析。它已经相当一致的在过去的八年里(四个调查),调试是排名第一,最耗时的验证工程师的挑战。被问到两个问题。一个是最耗时的,另一种是最关键的。调试是最费时间,还被评为最可断定的。你可能很幸运,但你也可以变得非常不走运时调试。所花费的时间在调试不断恶化,尽管便携式刺激,尽管验证知识产权,尽管UVM和约束随机测试和其他新技术。仍然不能在实验室里和你需要的东西调试技术,覆盖仿真,仿真,正式的验证,时钟域,电力领域,重置域,缓存系统,仲裁schemes-all增加调试的复杂性不同的东西。很多人都大量投资于这个问题。

图1所示。集成电路/ ASIC验证工程师花时间。来源:威尔逊研究小组和导师,西门子公司。

悟道:调试的地方很容易与客户交谈,特别是如果你甚至给暗示它可能产生重大影响成本。你将他们的注意力,你就会保持他们的注意力当你工作。毫无疑问,有一个问题,每个人都是投资于它。会发生什么,该解决方案将从何而来?我们将扩大范围数据分析并且能够考虑更多的信息能够做更多的预测方程,使用更多正式的技术——很多不同的东西我们可以施加更多的数据能给更强的根源,让你更快。如果你有更有针对性的刺激,它给你一个更好的机会调试,但这仅是不够的。

摩根:我们需要一个完整的分析的问题。我们知道什么?我们知道我们需要质量级别的块级别。这是我们的使命。但在这项研究中,他们是分析的问题是什么吗?

:你的意思是它不以某种方式量化问题的根源?

摩根:没错。问题的根源是什么?大多数的问题在哪里?

悟道:那很有趣。我们一直在关注这些技术,这是一个问题,我已经要求客户。例如,Verifyter有一个工具,使您能够找到那些提交一个问题引起的。所以你可以问,“为什么不是每个人都买了吗?我问一些客户的问题,他们说这只解决一个类别的问题,这是与退化相关设计或测试。我添加测试和寻找新的bug,它不会帮助。所以你必须看的分类错误当你谈论。这就是数据分析可以帮助你。客户刚刚开始看湖泊和维护这些数据的信息,知道这是一个测试,一直通过,这是一个新的测试。有一些有趣的信息,手臂发表了关于他们的数据湖和一些分析他们所做的测试,错误失败,他们在哪里发现等。

克拉:我不记得每一个细节的调查,因为它是一个很长的调查,但总的来说,你要求的是微妙的信息。我们都参与了各个部分的验证,一个应答者想要做的最后一件事是强调的细节问题,例如如果他们有问题,缓存或仲裁者。我们可以看到的一般趋势,但我们没有很多详细的数据类型的问题。如果你发现了它,解决它,你不想与你的竞争对手分享,广泛。

悟道:那是真的。

:我们是有点不同,因为我们是一个IP公司提供IP,帮助调试问题。我们得到大量使用post-silicon和仿真。这是好的,我们是通过生命的凝聚力SoCRTL通过系统的使命。但一个缺陷的定义,迂腐,经常对我们来说不是一个故障。这是一个DMA和排队子系统。当这种处理器的运行时,奇怪的事情发生在这里,它会创建一个性能下降。或需要真实的数据,如手机递给了塔之间在一定条件下触发,我们看到这些性能问题变成一个故障的操作意义。你真的需要在线监测IP在异构的世界与复杂的记忆芯片,并需要真实的数据。

SE:有没有可能花费的时间在调试实际上不是恶化,而是这个行业已经开始看SoC和调用它的更方面的东西需要debugged-like吞吐量或权力?是我们扩大的范围是什么意思调试、为什么数字在增加吗?

悟道调查:这是一个很好的问题。我不知道他们如何定义调试或细节。

克拉:它是一个组合,以及事情并非铁板一块的方式设计了。从一个公司,你买你的IP和一些IP从另一家公司,然后你在SoC或把它放在一起FPGA平台。甚至你自己的团队内部分布世界各地。如果你有一个错误在SoC水平,你如何分类?你如何隔离吗?这是一个坏块吗?可能你买的块添加,所以这是对整个芯片内嵌通讯或织物或我们都看到的影响越来越多的软件到这个世界。你打它的头。我们现在看到的东西用于分类的性能分析错误。

我认为这与我们的IP。硬件的人做出的一些决定条阵线上的建筑师。一旦它在硅,它属于固件团队。他们希望通过泵数据,试图搞清楚这些事情。他们工作在一个总线事务级别,不关心0和1。他们只是试图监控的数据流并确定瓶颈在哪里。

克拉:这个区域数据湖的时机已经成熟,机器学习类型的块级别的应用程序没有那么多,他们使用的地方功能覆盖,但也许一点。当你到达SoC-level,现在你看着仿真运行,或与吨FPGA-prototype运行时,流量。现在你可以开始看事情在重复的基础上。我们有一些技术在数据挖掘能够看同时执行的指令/操作,发现大部分的时间一切都完成了。无序执行的特点设计的一部分,但系统架构师能够看的情节产生的数据挖掘技术和发现,他应该看一看。他看到有一个仲裁问题。这是XYZ提供不公平的优势或DMA请求这个或那个。是一个错误吗?他看了看这是一个错误。但它返回正确的数据表现不佳。

摩根:我们确实看到新容器的bug,像安全边信道攻击。这些都是新问题,没有人想到这些在过去。突然间,一切都被视为恶意的。无序执行突然变成了一个边信道攻击,有人听你的处理器是什么做的。这是窃听。这是一个错误吗?错误在哪里?错误的规范。错误在系统构造方法。

:它是难以量化安全。很难优化不能量化的东西。这就像打鼹鼠。每次有一个违反你学习如何停止这类的问题。

SE:如果我们不扩展到安全,安全是许多行业的新的担忧。带来了新的问题。这显然问注入错误时,它是发现如果没有,为什么不呢?

悟道:什么是归类为调试范围扩大,可能是回答这些调查反映出的人。他们正在调试比过去更多,和新类型的问题。你如何看待覆盖性能?这些东西可能是系统的关键。要创建有工作负载。必须采取有测量和分析必须执行能够整理这些问题。



留下一个回复


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

Baidu