双击SignalCompiler可对以上的设计模型进行分析,选择相应的芯片,将以上设计模块图文件“翻译”成VHDL语言。
2.2.4 Modelsim的RTL仿真
在Simulink中进行的仿真属于系统验证性质的,是对mdl文件进行的仿真,并没有对生成的VHDL代码进行仿真。事实上,生成VHDL描述的是RTL级的,是针对具体的硬件结构,而在Matlab的Simulink中的模型仿真是算法级的,两者之间有可能存在软件理解上的差异,转化后的VHDL代码实现可能与mdl模型描述的情况不完全相符。这就需要针对生成的RTL级VHDL代码进行功能仿真,仿真结果如图4所示。
仿真结果说明,在Modelsim中仿真结果和Simulink里的仿真结果基本一致,该滤波器有较好的滤波效果。可以看出,输入正弦波经过数字化过程以后,能够在Modelsim中还原出模拟波形.符合设计的要求,可以在QLtortusⅡ的环境下进行硬件设计。
2.2.5 滤波器在FPGA上的实现
在QuartusⅡ环境中,打开DSP Builder建立的QuartusⅡ项目文件,在QuartusⅡ中再进行一次仿真,由此可以看到符合要求的时序波形。然后指定器件引脚,并进行编译,最后下载到FPGA器件中,就可以对硬件进行测试,加上clok信号和使能信号,用信号发生器产生所要求的两个不同频率的正弦信号,就可以在示波器上看到滤波后的结果。需要设计不同的滤波器电路是仅修改FIR滤波器模型文件就可以实现,这样不仅避免了繁琐的VHDL语言编程,而且便于进行调整。
3 结 语
在利用FPGA进行数字滤波器开发时,采用DSPBuilder作为设计工具,能加快进度。当然,在实际应用中,受精度、速度和器件选择方面的影响,可能对其转化的VHDL进行进一步的优化。