中文 英语

硬件辅助验证可避免吗?

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

人气

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

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


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

小型设计可以继续依靠模拟吗?“一般来说,较小的设计房屋专注于小型或中型设计,其增殖IOT.应用,并可以从传统的模拟农场中受益,“营销高级总监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分区。“

第一次带来硬件辅助验证并不容易。“对于一家小公司来说,仿真系统很昂贵,”马斯里斯的Labib说。“具有更高级功能的人为平均起始配置大约一百万美元运行。如果您想从中开始低于那个,您将不得不放弃功能或使用较小的商业配置。但这对我们的业务至关重要,甚至作为一家小公司,我们必须找到必要的预算来购买仿真。“

这是一个权衡。“假设验证不能通过模拟农场完成,那么验证团队就剩下两种选择了,”门托的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.”

对于另一些人来说,仿真系统的成本很容易被证明是合理的。SmartDV北美应用工程总监Bipul Talukdar说:“如果你有非常大和复杂的芯片,重新旋转的风险比购买仿真硬件所需的投资更昂贵,那么这是一个容易的决定。”“通过fpga进行硬件原型设计被广泛用于更简单的芯片,是一种低成本的解决方案。HAV还被用于后硅验证,其中fpga和验证IP被用于测试产品。”

获得必要的投资回报率
从单个项目获得足够的利用仿真硬件可能使得难以从ROI视角才能证明,即使是大公司。“除非你不断进入仿真器,否则你肯定不会得到好的投资回报率,”HPE的Pippin说。“你必须保持模拟器忙碌。我们继续在我们的实验室工作,并实施技术以实现这一目标。“

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

试验台问题
仿模采用的最大障碍是试验台。斯塔尔表示:“当一家公司首次采用仿真时,其自然倾向是将仿真作为更快的仿真工具。”然后他们学习了阿姆达尔定律。如果测试台消耗了如此多的模拟时间,那么您可能只能获得2倍的性能提升。然后他们问是否可以对测试台做些什么,这很快就发展到需要运行软件的主题。他们很快就学会了构建基于事务的环境来运行软件。模拟加速在使用模型中只占很小的一部分,而且可能永远不会发生,因为他们需要运行太多软件。”

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

这造成了困境,因为没有记分板问题可以隐藏在设计中。“记分牌旗帜早期,”Labib说。“如果我拍摄了平均设计,我通常在模拟中具有顶级测试台。但是,在此之下,我有块级测试长椅,这些测试台正在监视每个街区并提前标记事物。发生故障时,它会立即在模拟中捕获。当我来到这些错误的时候,我接近失败的循环。当我去仿真时,我将不得不删除许多测试台元素。现在我有一个很长的道路,我们只会在测试结束时看到失败。调试现在变得更加困难。“

找到仿真和仿真的正确组合很重要。“仿真编译是快速的,运行时很慢,”Stahl说。“在仿真中,编译需要更长时间,但执行更快。他们需要找到在模拟方面所做的内容之间的中间点,这通常很小是很少的循环,也许从重置序列中出来,并在非常基本的级别上找出发生的事情,然后他们跳进仿真。在仿真中,设计团队必须在他们必须重新编译设计的次数之间找到合适的平衡,而且他们运行设计有多少次,并查看问题。发展方法需要时间。仿真的一个很好的调试方法是什么?你如何介绍您的设计,以查看您可以查看的许多信号,但仍然快速运行?“

虽然与仿真相比,调试难度被视为负面,而与真实硅相比,这是一个正的正面。Pippin报告了HPE首次尝试了各种用例的仿真时出现了惊喜。“在我们实际接收到Fab后回来的真实硬件之前,我们尝试使用后硅刀具堆栈进行仿真。我们能够在硬件可用之前获得软件。从硅后验证角度来看,这是一个很大的惊喜,我们不期望在这里有好的结果。我们对结果感到惊喜。我们发现,调试更容易,并在硬件到达之前解决了一些早期虫子,以便我们可以击中一次运行的地面。“

结论
当第一次插入模拟时,硬件的成本和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. 说:

嗨,布莱恩,恭喜你又出版了一本好书。关于测试台问题,这是来自Mentor Graphics提供有关编写UVM TestBenches的信息,可用于模拟和仿真。

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

发表评论


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