推动日立通信系统开发采用基于模型的设计

由Noritaka Kosugi, Kazuyuki Hori和Yuji Ishida,信息通信系统公司通信和网络系统部门,日立公司,和Makoto Hasegawa,日立信息通信工程公司。

日立公司的大部分产品都采用了信号处理算法,包括用于电信服务的无线基站、接入点和发射器,以及用于企业网络的IP-PBX和视频会议系下载188bet金宝搏统。传统上,这些算法都是作为asic实现的。随着通信市场的多元化和转向高混合、低量生产,日立公司越来越依赖fpga。

我们采用了基于MATLAB的模型设计®和仿真软金宝app件®作为我们FPGA设计的标准开发流程。因此,通过在设计过程的早期评估系统性能,我们改善了团队之间的沟通,减少了开发时间,并降低了风险。

我们以前工作流程的局限性

一个典型的日立通信系统FPGA开发项目包括三个团队:

  • 系统设计团队开发信号处理算法以满足功能需求,并使用框图、算法代码、状态转换表等创建规范。
  • FPGA设计团队创建功能图和HDL代码,包括用于验证最终算法的测试平台。该团队还执行逻辑合成和放置和路由步骤,以及验证FPGA实现。
  • 功能测试团队测试每个组件的物理原型。然后他们集成组件并测试整个系统,包括无线电射频和模拟组件。

在我们之前基于文档的设计工作流中,每个团队都开发了自己的规范。这造成了团队之间的沟通差距,以及延迟和错误风险的增加。

FPGA系统设计团队和设计团队工作从一个基于FPGA设计团队的规范功能图(图1)。我们不得不使用这个功能图来确定系统设计团队需要澄清或额外的信息来描述在HDL代码所需的功能。这导致了不必要的延迟和重复工作,使该过程成为瓶颈,特别是对于FPGA设计团队。

图1所示。在引入基于模型的设计之前的开发工作流。

用基于模型的设计架起沟通鸿沟

我们采用了基于模型的设计(model - based Design),以使团队能够通过共享模拟环境中的模型验证规范。在这个新的工作流程中,我们使用MATLAB和Simulink对信号处理算法进行建金宝app模。系统设计和FPGA设计团队使用该模型作为可执行规范。模型在整个设计过程中被细化和阐述。从模型中自动生成HDL代码,用于逻辑综合、布线和硬件实现。

我们发现,使用基于模型的设计开发的FPGA实现产生了与传统工作流几乎相同的处理性能和资源效率水平。电力消耗也几乎相同。

此外,FPGA设计团队能够处理这个项目,他们需要的工程师数量几乎是传统工作流的一半。我们不能进一步减少人数的一个原因是改进Simulink模型所需的时间。金宝app

应用基于模型的设计:关键注意事项和示例

在许多方面,我们发现基于模型的设计是一个理想的工作流(图2)。当在实际FPGA设计上评估这种方法时,我们确定了三个对成功结果至关重要的元素:模型细化、测试模式生成和综合后的模拟。

图2。开发工作流之后引入了基于模型的设计。绿色块说明了将基于模型的设计应用到实际FPGA设计时的注意事项。

金宝app仿真软件模型改进

通常,由系统设计团队创建信号处理算法。为了精度,算法采用双精度浮点数据建模。由于目标FPGA只能处理定点数据,因此必须将模型转换为定点。为硬件实现准备算法涉及到额外的考虑,包括量化错误、位宽和字长配置以及矢量数据处理。此外,为了准备代码生成,必须对算法模型进行细化,以优化处理器性能,同时有效地使用FPGA设备上的DSP单元或RAM等资源。

测试模式生成

HDL Coder™允许使用到Simulink模型的接口自动生成HDL测试模式数据。金宝app这大大减少了手动创建测试工作台所需的时间和精力。

逻辑综合后的仿真

在逻辑综合后运行仿真是验证实现的一种必不可少但耗时的方法。这个任务必须作为手工编码HDL的常规设计规则检查的替代品来执行。我们发现使用fpga -in- loop (FIL)仿真与HDL Verifier™减少了这项任务所需的时间(表1)。

模拟方法 仿真时间
逻辑综合后的仿真(门级网表仿真) 大约200小时
FPGA-in-the-loop 4分30秒
金宝app 60分钟
硬件描述语言(VHDL) 370分钟

表1。各种选项的验证时间。

在FIL中,Simul金宝appink模型直接连接到标准FPGA测试板(图3)。

图3。为fpga在环仿真的设置。

减少验证时间意味着我们可以运行更多的测试用例。在日立,我们有效地使用这种方法来检测误差,包括来自定时控制器电路和初始化电路的误差。

整体结果

图4显示了将基于模型的设计引入我们的无线通信系统开发过程的结果。

图4。采用基于模型的设计后节省了时间。

例1:在FIR滤波器中使用DSP单元

在本例中,我们使用矢量表达式描述有限脉冲响应(FIR)滤波器中的DSP单元(图5)。

图5。FIR滤波器的设计与实现:第一次迭代。

然而,当我们实现直接从这个模型生成的HDL代码时,我们使用了DSP单元之外的加法器。因此,本设计无法满足110mhz时钟速率的要求。

图6。FIR滤波器的设计与实现:优化后的性能。

为了最有效地使用DSP单元中的内置加法器链,我们根据FPGA供应商的建议对模型进行了优化。结果是性能从78 MHz提高到340 MHz(图6)。

例2:将DSP单元用于复数乘法器

在这个例子中,我们在Simulink中描述了一个复杂的乘数实现块(图7)。金宝app

图7。复杂乘数设计与实现:第一次迭代。

请注意,单位延迟被插入到输出之后。为了实现这个单元延迟,我们在DSP单元外激活了一个触发器(FF)。我们的目标是在位于乘法器和加法器之间的内置DSP单元的触发器上实现单位延迟。

我们通过改变FF结构来完善模型。使用DSP System Toolbox™,我们添加了第二个延迟块(图8)。我们为逻辑合成配置了额外的约束,以禁止重定时和允许流水线。结果,FF在DSP单元上得到了有效的实现。

图8。复杂的乘法器设计和实现:为更好的性能而改进。

轻松过渡到基于模型的设计

为了确保基于模型的设计的成功实施,我们举办了技术研讨会,帮助系统设计人员和FPGA设计人员理解基于模型的设计的概念和好处。我们还开发了一套全面的指导方针,以标准化FPGA设计工作流,并帮助算法设计师和FPGA设计团队有效地使用Simulink作为共享的可执行规范。金宝app这些指南包括以下内容:

金宝app仿真软件规范。本指南提供了大约50条规则,规定了如何创建Simulink模型。金宝app它包含一般规则,如操作条件和信号和数据的命名规则,以及指定模型结构、层次结构和框图格式的规则。

验证标准。本指南涵盖了硬件细节设计验证、FPGA实现和FPGA单元验证。它包括过程、所需的检查和验证文件。

HDL编码技巧。本文档总结了我们如何有效地使用HDL编码器的知识。它包含大约40项,包括如何操作和配置HDL编码器。

费尔用户手册。本文总结了在HDL验证器中使用FIL特性的经验,包括如何设置和操作FIL仿真环境。

推动基于模型的设计的采用

我们的团队主动推动了基于模型的设计在日立内部的应用。有时我们自己完成整个项目,从电路选择到硬件测试,以熟悉基于模型的设计,并证明各种开发概念。

到目前为止,我们已经在日立公司的10多个产品开发项目中采用了基于模型的设计,包括无线基站的信号处理组件、光通信设备、图像处理系统的设计和开发。我们希望将基于模型的设计推广到新的开发项目中,并与其他部门分享我们积累的经验,包括日立内部和我们的合作伙伴公司。

发布于2013年- 92144v00


查看相关行业的文章