Semtech加快基于FPGA和ASIC的数字收发器的开发

“编写VHDL是一件非常枯燥的事情,还需要验证手写代码。利用Simulink和HDL Coder,一旦完成对模型的仿真,就可以直接自动生成VHDL,并使用FPGA进行原型验证。这样可以节省大量时间,并且生成的代码还包含一些我们未曾想到的优化。”

挑战

加快无线RF设备优化的数字接收器链的开发

解决方案

使用MathWorks工具来进行基于模型的设计,从而生成产品级VHDL代码用于快速FPGA和ASIC实现

结果

  • 创建原型的速度提高了50%
  • 验证时间从数周缩短为数天
  • 最终交付经过优化、性能更佳的设计

Semtech SX1231 无线收发器。

无线RF接收器在许多应用中都会用到,包括无线安全系统、工业监控、仪表读数和家庭自动化等等。过去,半导体供应商主要使用模拟设计来构建这些接收器。如今,供应商正在转换到数字和混合信号设计,以期降低功耗和简化与其他组件的集成。

对于基于模型的设计,Semtech工程师扩展了对MathWorks工具的使用,目的是为了过渡至数字平台。多年来,工程师使用MATLAB®和Filter Design HDL Coder™为滤波器建模和生成HDL代码。在最近的项目中,他们使用了Simulink®和HDL Coder™为整个设计生成VHDL®

“手工编写VHDL没有任何优势可言”,Semtech的IC设计工程师Frantz Prianon说道。“借助Simulink和HDL Coder,我们可以获得一个系统的模型。对其进行仿真后,我们知道它确实正确可用。我们还可以利用它生成代码,所以我们只使用一个模型就能完成整个项目。这是一个重要的功能,因为我们确信实现的结果符合设计,而设计也符合需求规范。”

挑战

Semtech工程师需要使用低IF架构为频移键控(FSK)和最小频移键控(MSK)解调开发数字接收器链。他们希望在工程的先期研究阶段,就针对性能、功耗和布局等性能,评估多种设计。为每个设计备选方案编写VHDL较为费时,而且限制了团队可以考虑的备选方案数量。

除了原型制作阶段外,Semtech工程师希望改善传统的产品代码开发工作流程。“对系统进行建模,确保它们符合要求之后,我们以往是在VHDL中重新实现模型,然后在新工具中重新执行仿真”,Prianon说道。“这样做随时都有可能引入错误,并且我们永远无法保证模型完全与新的VHDL代码一致。”

解决方案

Semtech使用MathWorks工具进行基于模型的设计,来快速探索和评估各种设计思想,自动生成产品级VHDL代码,改善工程师团队之间的协作,从而加快用于FSK和MSK解调的数字接收器链开发。

在先期研究阶段,Semtech工程师根据系统需求规范在Simulink中创建了浮点模型。他们使用来自Communications Toolbox™中的模块对信道中的噪音进行建模,并实现FSK和MSK解调。

借助Signal Processing Toolbox™以及DSP System Toolbox™,一位工程师设计并分析了级联积分梳状(CIC)和有限脉冲响应(FIR)数字滤波器,而另一位工程师则使用Simulink分析设计sigma-delta模数转换器(ADC)、锁相环路(PLL)以及整个系统的其他部分。

一旦分别完成数字接收器链的各个部分的仿真,工程师就可以相互共享Simulink模型,从而在完成系统集成之前验证自己的组件设计是否可以共同工作。

工程师运行仿真来验证设计,并使用Communications Toolbox 中的误码率计算模块来计算误码率。

借助Fixed-Point Designer™,他们将设计从浮点转变为固定点表示形式,从而进行比特位级的仿真。

Semtech工程师使用HDL Coder从完整的接收器链的Simulink模型生成VHDL。为了验证VHDL,他们使用了HDL Verifier™来通过Mentor Graphics® Questa®仿真器联合仿真以验证其Simulink设计与生成VHDL代码的一致性。

Semtech当前正在努力实现接收器链的ASIC。

结果

  • 创建原型的速度提高了50%. “在我们自行编写VHDL时,通常需要两个月才能创建FPGA原型”,Prianon说道。“借助Simulink和HDL Coder,我们无需再对每个模块进行繁琐的手动编码,只需数周便可创建原型。”
  • 验证时间从数周缩短为数天. “在之前的项目中,我们至少需要花两周时间来编写用于验证VHDL的测试用例”,Prianon回想说。“借助HDL Verifier,我们可以进行联合仿真,测试模型中的多个关键点,并验证VHDL,通常不到一天就可以完成。”
  • 最终交付经过优化、性能更佳的设计. 基于模型的设计让Semtech可以将从需求到下线的开发时间缩短 33%。“我们用节省下来的时间改善设计”,Prianon说。“MathWorks工具让我们可以探索更多备选方案和新功能,最终提供优化更好、效果更佳的设计。”