您的位置:首页 > 其它

System Generator学习笔记(六)

2015-07-30 17:09 357 查看

基于System Generator的高通滤波器设计

本次学习借助system generator和FDATool设计高通滤波器的方法和流程。

设计模型如图1所示,包含两路,一个是simulink的仿真输出,另外一个则是通过FPGA实现的定点数仿真输出。图中的“subststem”就是设计好的FPGA模型,如图2所示。



图1 设计模型



图2 Subsystem设计模型

MATLAB自带有一个滤波器设计工具,FDATool,可以通过在GUI界面填写设计指标,即可完成滤波器的设计工作。这种方式简单而高效。本次设计的高通滤波器设计指标如图3所示。



图3 FDATool设计指标

为了实现FDATool自动设计的滤波器参数直接传递给FPGA模型,需要在FPGA IP核FIR Compiler 6.3中做图4中所示的定义。通过“xlfda_numerator(‘FDATool’)”。



图4 FIR Compiler 6.3 IP核中的参数传递

除了需要在FIR Compiler 6.3 IP核中设置参数传递,还需要对滤波器设计的实现方式进行设定,具体如图5所示。



图5 IP核实现方式设置

值得注意的是需要设定量化方式,此处设置不对将会导致整个设计无法正确工作。由于本次设计采用定点数,量化设置为“Maximize Dynamic Range”

上述参数设置完毕之后,还需要设置采样速率。由于本次设计的高通滤波器的采样频率为48000Hz,因此需要把随机信号发生器的采样速率也设置为48000Hz,如图6所示。



图6 随机信号发生器的采样速率设定

同样,Gateway IN也需要设定采样速率,如图7所示。



图7 Gateway IN设置采样速率

最后一步,设置system generator中的“simulink system period”,如图8所示,请注意这个参数与采样速率的关系。



图8 设置Simulink System Period

最后最后一步,设置频谱分析工具,为了与FDATool中显示的设计的结果保持一次,频谱工具可以按照图9所示的方式进行设置。



图9 频谱分析工具的设置

所有的参数设计和设置完毕之后,设置仿真时间为“inf”,仿真结果如图10和11所示,其中图10为simulink的仿真结果,而图11则通过FPGA定点数计算之后的仿真结果。



图10 Simulink的仿真结果



图11 FPGA定点数的计算结果

高通滤波器的设计到此全部结束,其他类型的滤波器可以采用类似的流程和方式来进行设计和验证。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: