中文 英语

硬件辅助验证可避免吗?

仿真不再满足于系统级验证的任务,但是如果您没有提前进行充分的计划,那么切换到硬件辅助验证可能会导致一些意外。

人气

仿真正在成为复杂和大型设计的首选工具,但是从仿真转换到仿真的公司越来越认识到这不是一个容易的过渡。它需要金钱、时间和努力,即便如此,也不是每个人都能做对。

仍然存在显着的益处模拟模拟,提供这些系统可以有效地利用足以保证投资。HDL仿真是自半导体行业黎明以来的功能验证行业主力,当处理器的性能停滞时,由于HDL仿真无法受益于多个核心,开始耗尽蒸汽。因此,随着设计的较大而HDL性能仍然是不变的,公司不再可以关闭他们的公司功能验证购买更多模拟器许可证的目标。他们被迫,而是开始使用硬件辅助验证(hav)。如今,公司在模拟上花费更多的模拟器和物理原型制作系统(见图1.)


图1.硬件辅助验证工具和HDL模拟器的收入。来源:ESD联盟

小型设计可以继续依靠模拟吗?“一般来说,较小的设计房屋专注于小型或中型设计,其增殖物联网应用,并可以从传统的模拟农场中受益,“营销高级总监Jean-Marie Brunet说导师,西门子的业务。“当这是不可行的 - 例如,当需要嵌入式软件验证时,或者通过挑战TTM施加较短的验证时间框架 - 所需的收购HAV平台。”

在越来越多的设计中,硬件辅助的验证正在成为强制性的。“设计的规模在增长,而小型设计的定义也发生了变化,”Zibi Zalewski说,他是该公司硬件部门的总经理aldec。“即使是小的设计公司现在也可以创造SOC.这要归功于处理器内核的可伸缩性,并且可以使用ip。这会影响验证方法和工具环境。对于开发阶段来说,仿真速度仍然足够好,但当设计增长到1000万到2000万个ASIC门时,就无法进行验证、测试和调试。”

虽然处理器核心通常不需要验证,但它们确实改变了验证的动态。“今天,每种有意义的设计都有一个处理器,如果你没有使用处理器设计这件作品,你可能会设计一块位于处理器旁边的IP,”产品营销高级总监Johannes Stahl说synopsys.。“不知何故,您需要能够执行处理器所需的周期,并且这意味着数百万或数十亿个周期。这对每个人都必须进行过渡的挑战。它没有办法。如果您想保持相关性,如果您想向建立大型SOC的人提供服务,您如何确保您在更大的背景下播放的作品?“

对于那些想要验证处理器核心的人,例如RISC-V,仿真仍然是开放式硬件组的首选方法。但仿真可以在模拟中提供显着的增益。

Hewlett Packard Enterprise的技术人员的成员Alan Pippin最近在DV俱乐部演讲,他报告了使用RISC-V设计的仿真结果。“我们有一个专注于安全应用空间的设计,大约2500万盖茨。刺激完全是verilog.并且是合成的。我们在内存中加载了程序指令,并能够生成该测试台所需的所有刺激。这种特殊的应用程序产生大型安全键,花了大约三个小时进行仿真,我们可以在35秒内在仿真器上做到这一点。这是一个300倍的加速。“

您可以使用相对短的测试序列验证处理器核心。“随着模拟,您将能够运行数百个,也许数千笔交易,”工程工程副总裁Khaled Labib说动脉IP.。但仅仅启动一个系统就需要数百万乃至数十亿笔交易,更不用说在系统上运行真正的流量了。因此,您将以一个不具有代表性的验证过程告终,它可能会暴露给您许多bug——或者不会暴露给您性能问题,而这些问题只有在您开始注入大量流量时才能看到。这些是最宝贵的漏洞,提供了最高的投资回报。”

混合解决方案是许多人选择的途径。“软件开发人员需要一个有效的工作环境,快速启动时间和调试,这是一个HDL模拟器根本无法使用,”aldec的Zalewski说。“经常经常被软件团队使用的虚拟平台,可以与HAV集成,它在项目的早期阶段连接软件和硬件域,并允许您找到许多软件硬件界面问题。”

这可能导致非常有创意的解决方案。“我们与一家使用快速处理器模型启动系统的公司合作,”Simon Davidmann,CEOImperas软件。然后他们热插拔到Verilog和硬件辅助环境中。这种类型的事情过去是非常困难的,但是今天的处理器模型为主要的EDA供应商的模拟环境提供了接口。然后,他们可以将其放入模拟器,而不需要付出什么努力。以前,它们的界面不是很好,有很多工作要做。问题仍然存在于测试台上,但现在只需几天的工作就可以解决,而不是几个月。”

转型
硬件辅助验证已变得更加平衡。“这行业在过去五年中经历了很多变化,它变得更加实惠,”Zalewski说。“硬件验证解决方案不一定是最大的ASIC房屋可用的巨大昂贵的系统。FPGA容量的增长使得即使小型设计也能加速仿真解决方案。单个FPGA设备可用于实现甚至有效的ASIC门设计,而无需多FPGA分区。“

首次引入硬件辅助的验证并不容易。“对于一个小公司来说,仿真系统是昂贵的,”Arteris ' Labib说。“配备更先进功能的汽车平均启动配置需要100万美元左右。如果你想要更低的起点,你将不得不放弃一些功能或者采用更小的商业配置。但这对我们的业务至关重要,即使是作为一个小公司,我们也必须找到必要的预算来购买仿真。”

这是一个权衡。“假设验证不能通过模拟农场完成,那么验证团队就剩下两种选择了,”门托的Brunet说。“他们可以将仿真平台转换为企业级FPGA原型平台,从而节省一些前期成本。或者,他们可以通过按次付费的模式访问基于云的HAV平台,从而避免获取成本。与在线仿真(ICE)模式相反,在虚拟模式下的HAV平台的云部署与任何其他EDA工具的云部署都是等价的,只要满足等价的需求。不容忽视的是,验证团队必须接受使用新工具的适当培训。”

培训至关重要。“较小的公司可能有一些原型的经验,因为从定价角度仿真就无法触及,”Synopsys'Tahl说。“它们通常可以获得原型化系统,但它们针对特定设计进行了优化,并且通常无法重复使用。仿真有点不同,因为对单个项目可能是成本抑制的。此外,它们可能无法满足所有要求,如空间或仿真器的长期理由,因此他们可能会租用托管模拟器。许多较小的公司从租赁仿真器开始,因此他们不会促进为仿真器提供自己的空间。“

供应空间可能是一个严重的问题。“我们有身体限制,”Labib说。“这些系统需要最小的冷却要求。它们需要最小的功率 - 一种非常具体的三相。我们甚至挣扎着一个合适的地方,因为你可以在二楼,盒子太重了。如何将某种大小的东西进入办公室?这就是为什么我最初想到云的原因,但如果我将随着时间的推移使用它,这是成本估计的。I did the math on the back of an envelope, and then I said, ‘If I am committing to this methodology, for that many number of years, it does not make sense — at least with the financial structure that was given to me.’ It was then much easier for me to just buy it and and utilize it.”

对于其他人来说,仿真系统的成本很容易证明。“如果你有非常大而复杂的筹码,那么重新旋转的风险比获得仿真硬件所需的投资更昂贵,那么这是一个简单的决定,”北美北美应用工程总监Bipul Talukdar为SmartDV说。“通过FPGA的硬件原型设计广泛用于较少的复杂芯片,并且是较低成本的解决方案。还用于与验证IP耦合的FPGA的硅后核验证,用于测试产品。“

获得必要的投资回报率
从单个项目获得仿真硬件的充分利用,可能很难从ROI的角度来证明这一点,即使对于大公司也是如此。HPE的Pippin说:“除非你不断地将工作输入模拟器,否则你肯定不会获得良好的投资回报率。”“你必须让模拟器忙碌起来。我们将继续在我们的实验室进行这方面的研究,并实施相关技术来实现这一目标。”

有足够的设计,数学变得更容易。“我们的IP解决方案是可配置的,我可以在同一硬件上同时模拟许多配置,”Labib说。“我们还有一个回归环境,这是一个相当大的投资前期,但现在它设置了盒子可以保持忙24 x 7运行回归,自动报告结果,并在侧面保存故障。”

Testbench问题
仿模采用的最大障碍是试验台。“当一家公司首先采用仿真时,自然倾向是使用仿真作为更快的模拟器,”Stahl说。“然后他们学习Amdahl的法律。如果测试台消耗了如此大部分的模拟时间,那么您可能只会增加2倍的性能。然后他们问他们是否有东西可以对测试台做点什么,这很快就会发展到需要运行软件的主题。他们很快学会建立基于事务的环境来运行软件。仿真加速度变成了使用模型的较小部分,并且可能永远不会发生,因为它们具有如此多的软件来运行。“

这需要很大的投资。“最初的投资是为DUT本身,”Labib说。“我必须综合它,担心映射所有的记忆,担心时钟,重置等等。但是真正大的投资是迁移我的测试平台,这是一个非常大的投资。我们整合了很多交易,一半是硬件,一半是软件。我们与那些交易人员交换通常是贵宾中的代理人。如果我尝试加入计分板,我会立即影响我的表现。我们最终将测试平台缩减到最低限度。”

这就产生了一个困境,因为如果没有计分板,问题就会隐藏在设计中。拉比表示:“记分牌很早就把事情标记出来了。“如果我选择一个普通的设计,我通常有一个顶级的模拟测试平台。但在此之下,我有块级的测试工作台,它可以监控每个块并尽早标记。当故障发生时,它会在模拟中立即被捕获。当我对这些漏洞进行分类时,我接近了失败的循环。当我进行模拟时,我将不得不删除许多这些testbench元素。现在我有一个很长的路径,我们只会看到失败,直到测试结束。调试现在变成了一个更困难的问题。”

找到正确的仿真和仿真混合是很重要的。Stahl说:“模拟编译速度快,运行时慢。”“在模拟中,编译需要更长的时间,但执行要快得多。他们需要找到模拟方面所做的事情之间的中间点,这通常是很少的周期,可能来自重置序列并弄清楚在一个非常基本的级别上发生了什么,然后他们跳入模拟。在模拟中,设计团队必须在重新编译设计的次数与运行设计并查看问题的次数之间找到适当的平衡。开发一种方法需要时间。什么是用于模拟的良好调试方法?你如何在设计中观察许多信号,但仍能快速运行?”

虽然与模拟相比,调试的困难被视为负面影响,但与真实硅相比,它是积极的。当HPE首次尝试各种仿真用例时,Pippin报告了一个令人惊讶的结果。“在我们从fab收到真正的硬件之前,我们尝试用我们的后硅工具堆栈进行仿真。我们能够在硬件可用之前就把软件启动起来。从后硅验证的角度来看,这是一个很大的惊喜,我们并没有期望有好的结果。我们对结果感到惊喜。我们发现,在硬件到来之前,调试和解决一些早期的bug更容易,这样我们就可以在硬件到来后立即投入工作。”

结论
当第一次插入模拟时,硬件的成本和DUT的移植似乎是最大的问题,但是测试台才是真正的挑战。你如何处理这个问题将决定你有多成功。试图重新装配现有的仿真测试平台的公司可能会遇到低于标准的结果。

那么您可以从Hav供应商那里期望多少支持?根据Labib,不够。“你来到一个部署了一个巨大的测试台的客户,你要求我们修剪所有这些东西,去裸体。Everybody claims to have automatic testbench tools, but when you come to do the work, you end up either paying massively on your speed, or you’re signing up for nine months of work to rewrite that testbench to get it to do something useful.”

在组合模拟流方面,行业仍然需要帮助。Imperas的大卫曼说:“这种进步通常是私下进行的。”“即使公司展示了他们的调查结果,他们也不会提供任何细节。对于开源的人来说,这不是今天的模仿,但他们正在使他们所做的一切都可见,人们可以看到正在使用的方法以及它们如何随着时间的推移而发展。今天,他们在云上做了很多事情。有趣的是,许多云系统现在都包含FPGA,人们开始尝试将RTL放入这些云FPGA块中进行模拟。”

转换到硬件辅助验证并不容易。它需要金钱,时间,也许最重要的是,培训获得良好的结果。对于许多公司来说,寻找具有仿真经验的人可能是他们最好的投资。



1评论

Shashank V M. 说:

嗨Brian,恭喜发布另一个良好的阅读。关于测试禁止问题,这来自Mentor Graphics提供有关编写UVM TestBenches的信息,可用于模拟和仿真。

关于SCE-MI,它也值得一提到标准Accelera的协同仿真。

留下一个回复


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