Harris加速信号处理fpga的验证

挑战

简化耗时的手动测试信号处理FPGA实现过程

解决方案

在MATLAB中使用HDL验证器对HDL设计进行验证

结果

  • 功能验证时间缩短85%以上
  • 100%的计划测试用例已完成
  • 设计实现没有缺陷

“HDL验证器在我们的MATLAB模型和逻辑模拟器之间提供了一个直接的协同仿真接口,这使我们能够更早地验证我们的设计,更快地识别问题,完成更多的测试,并压缩我们的整个开发周期。”

杰森·普莱,哈里斯公司
基于FPGA的Harris系统。

哈里斯公司的工程师习惯于在紧凑的时间内交付复杂的基于fpga的信号处理系统。为了满足客户通常严格的要求和他们自己的质量标准,工程师们在合成每个系统之前对其HDL设计进行彻底的验证。

在过去,HDL验证需要几个手动步骤。Harris的工程师使用HDL验证器实现了该过程的自动化提供MATLAB之间的双向链接®Cadence中的系统模型和HDL设计仿真®敏锐的®.新的过程消除了算法规范和HDL验证之间的不确定性,减少了重复工作,并改善了系统和HDL工程师之间的交流。

Harris高级工程师Jason Plew说:“与MATLAB和HDL Verifier的联合仿真不仅使子系统级的仿真更容易,还使我们能够更全面地验证整个系统。”。“我们大大减少了开发子系统测试台所需的时间,这使我们能够更早地验证和调试我们的设计。”

挑战

Harris的工程师需要设计和验证一个跨越多个Xilinx的信号处理系统®Virtex®FPGA。在这个劳动密集型的过程中,一旦模拟了子系统的定点模型,团队就会导出包含刺激数据和模拟预期结果的大型文本文件,并将其导入Cadence Incisive。然后,一位经验丰富的工程师用HDL编写测试台,读取数据,应用刺激,并验证结果。如果结果不匹配,团队必须深入研究大量的结果文件,找出模拟失败的地方和原因。对于测试特性的每一次变化,他们都必须重新导出模拟数据,这需要8小时的繁琐手工工作。

“我们花了相当多的时间为每个子系统进行手动步骤,结果,在截止日期之前,我们只有时间完成30%的期望的系统级测试用例,”Plew回忆道。

Harris需要一种方法来直接驱动逻辑模拟器中的输入信号,从而消除编写HDL测试台的需要和管理测试数据的巨大文本文件的开销。

解决方案

哈里斯公司的工程师们在MATLAB中对他们的信号处理系统进行建模和仿真。MATLAB模型成为了一个可重用的测试平台,他们可以使用HDL验证器与Cadence Incisive模拟器进行交互仿真。

利用MATLAB和DSP系统工具箱,工程师们开发了一个理想的基带信号处理数据路径浮点模型,用于验证设计是否满足功能要求。

在将模型转换为定点后,他们优化了硬件实现算法。在MATLAB中进行了额外的仿真,以确保定点实现在规范范围内执行。

使用定点模型作为可执行的规范,Harris工程师然后用HDL实现系统。

该团队使用HDL验证器使MATLAB代码作为实现的测试平台。通过联合仿真接口,利用MATLAB对HDL仿真结果进行仿真分析。

为了加速多个测试用例的执行,Harris工程师开发了一个MATLAB控制脚本,用于管理Linux计算网格中的多个并行协同模拟。

在合成并成功演示该设备之前,该团队使用这种方法快速验证了单个子系统以及整个信号处理链。哈里斯的工程师们已经开始在其他项目上应用同样的方法,包括一个需要一百万点快速傅里叶变换的项目。

结果

  • 功能验证时间缩短85%以上.“过去,一个有经验的工程师大约需要8个小时来准备一个子系统测试台,”Plew说。“使用HDL验证器,我们可以在一个小时内创建一个,因为MATLAB生成刺激并执行分析,我们已经在MATLAB中准备好了所有的测试结果用于后处理。”

  • 100%的计划测试用例已完成.“我们之前的过程是如此复杂,以至于我们经常在子系统级别上执行很少的验证,而且我们的时间表使我们无法在系统级别上运行超过30%的所需测试用例,”Plew说。“使用MathWorks工具,我们使用自动化的过程生成并模拟了100%的测试用例,这使我们能够在子系统级别找到大多数缺陷。”

  • 设计实现没有缺陷.Plew指出:“我们通过使用HDL Verifier在MATLAB和Cadence Incisive中共同模拟HDL代码,彻底验证了设计,从而减少了数周的实验室调试时间。”“事实上,FPGA的数据路径元素从一开始就按照设计执行。”

下载188bet金宝搏产品使用

展示你的成功

加入客户参考计划