当前位置:首页 > 测试测量 > 测试测量
[导读]1 引言 FIR数字滤波器能够满足滤波器对幅度和相位特性的严格要求,避免模拟滤波器的温漂和噪声等问题,具有精确的线性相位、易于硬件实现和系统稳定等优点,可广泛应用于现代电子通信系统。实际信号处理应用往往

1 引言
    FIR数字滤波器能够满足滤波器对幅度和相位特性的严格要求,避免模拟滤波器的温漂和噪声等问题,具有精确的线性相位、易于硬件实现和系统稳定等优点,可广泛应用于现代电子通信系统。实际信号处理应用往往要求系统兼具实时性和灵活性,而现有设计方案(如DSP)则难以同时达到这两方面要求。而使用具有并行处理特性的FPGA实现FIR滤波器,具有很强的实时性和灵活性,因此为数字信号处理提供一种很好的解决方案。
    在嵌入式导航计算机工程项目中,石英挠性加速度计的输出信号需进行数字滤波才能为导航计算机提供原始数据,为此需要设计一款FIR数字滤波器。这里使用MATLAB软件和Altera公司的FPGA开发软件QuartusⅡ进行FIR滤波器的设计仿真,该设计方案能够直观检验滤波器的设计效果,提高设计效率,缩短设计周期。


2 使用FIR IP Core设计滤波器
    Altera公司提供的FIR Compiler是一个结合Altera FP-GA器件的FIR Filter Core,DSP Builder与FIR Compiler紧密结合。DSP Builder提供一个FIR Core的应用环境和仿真验证环境。而FIR滤波器设计实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等,这里采用窗函数法。
2.1 滤波器指标设计
    FIR滤波器设计需达到以下指标:低通滤波,采样频率Fs为1 000 Hz,截止频率Fc为100 Hz,最小阻带衰减As为50dB,16阶滤波器,16位输入数据宽度,14位系数数据宽度。
2.2 利用FIR IP Core生成FIR模块
    在FIR编译器中,将FIR滤波器设置为16阶低通滤波器,单速率采样。采样频率为1 000 Hz,截止频率为100 Hz,窗类型选择海明窗,然后生成系数并保存。滤波器系数的计算以所能达到最高精度为目的,计算出的滤波器系数未考虑有限字长效应,必须量化滤波器系数。由于在FPGA内要使用硬件实现滤波器,因此采用定点计算。按照指标要求设置参数,生成的FIR模块如图1所示。

3 验证方法的确定
    基于FPGA的复杂DSP系统的调试验证是一项繁琐工作,采用传统的逻辑分析方法调试基于FPGA器件实现的设计几乎不可能。验证方法决定验证结果的准确性和验证工作量的大小。目前对基于FPGA的FIR数字滤波器的验证,通常采用输入一个信号序列(白噪声、多频谱混合信号等)作为激励,对滤波器的输出结果进行分析对照,判断滤波器是否符合设计要求。


4 利用Simulink检验滤波效果
    Simulink是MATLAB中一个专门用于对动态系统进行建模、仿真和分析的软件包。通过调用模块,可以构成仿真数字滤波器特性的结构框图。输入低频50 Hz和高频400 Hz的2个信号,利用所设计的滤波器进行滤波。建立仿真电路结构,导入前面所设计的FIR滤波器,如图2所示。

    图3为输入波形在Simulink中Scopel的波形,图4为输出波形在Simulink中Scope的波形。比较图3和图4可看出,该FIR滤波器可有效滤除高频部分。因为在DSPbuilder中,输入正弦波形是通过查找表得到的每个周期256个点的量化值形式,故无物理单位,因此输出波形也是量化值形式。

5 使用ModelSim进行RTL级仿真
    完成Simulink软件中的模型设计,仿真成功后,需要在ModelSim中仿真。因为Simulink中的仿真属于系统验证性质,是对mdl文件进行算法级仿真,而生成VHDL描述是RTL级,针对具体硬件结构。二者之间可能存在软件理解上的差异,转换后的VHDL代码实现可能与mdl模型描述的情况不完全相符,这就需要使用ModelSim进行RTL级功能仿真。图5所示是采用ModelSim仿真的结果,即低通滤波器的输出。可看出,与simulink中的仿真结果基本一致。

6 使用Quartus实现时序仿真
    ModelSim完成的RTL级仿真只是功能仿真,其仿真结果并不能精确反映电路的全部硬件特性,因此,时序仿真仍十分重要。图6是用QuartusⅡ实现的时序仿真,可看出,时序仿真满足设计要求。

7 使用嵌入式逻辑分析仪SignalTap II测试
    只进行工程软件仿真远远不够,还必须进行硬件仿真。signalTap II逻辑分析仪是Quartus II软件中集成的一个内部逻辑分析软件,使用它可以观察设计的内部信号波形,方便用户查找引起设计的缺陷。从Simulink建模仿真到Mod-elsim RTL仿真和Quartus II时序仿真,输入正弦波都是仿真信号,而不是实际信号源。在硬件实际运行时,可以从外部信号源接入器件内部或者在其内部存储正弦波数据。这里采用后者,即在顶层文件中引入LPM_ROM宏模块,在其中存入正弦波数据的mif文件(存储初始化文件),FIR滤波器模块直接从ROM中读取数据。实际测试发现,经过设计的低通滤波器后,高频信号被滤除,只有输出低频信号(标准的正弦波),滤波效果满足系统要求,嵌入式逻辑分析仪中的输出波形如图7所示。

8 结束语
    本文在FPGA内利用DSPBuilder实现FIR数字低通滤波器,通过Simulink算法仿真和ModelSim进行RTL仿真,接着在Quartus中进行时序仿真。最后用嵌入式逻辑分析仪SignalTapII进行实际测试,结果证明采用该方法设计的FIR数字低通滤波器功能正确,性能良好,可以提高FIR滤波器的设计质量,加快设计进程,验证结果直观明了。随着各类数字信号处理的IP Cores的进一步完善,基于FPGA的DSP系统的应用会更加广泛。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

摘要:随着社会不断发展,传统化石能源已经无法满足日益增长的能源需求,基于这一情况,光伏电源的使用逐渐变多。而高渗透率的光伏电源出力大于负荷的消耗时,配电网的电压波动影响会变大,网络发生故障而造成部分负荷失电停止运行后也会...

关键字: 光伏电源 电压分布 MATLAB

摘要:首先研究了地铁车辆牵引变频器的电路结构、控制策略、分段同步控制等技术,随后分析了SPEM分段同步控制的优点,并在MATLAB中建立模型,验证了分段同步控制的优越性。最后利用软件的仿真功能建立牵引变频器的计算机仿真模...

关键字: 牵引变频器 分段同步控制 MATLAB

MATLAB是“Matrix Laboratory”的缩写,正如其命名所示,最初使命仅仅是一个交互式的矩阵计算器。1981年Dr. Cleve Moler基于兴趣爱好和教学需求将其设计出来,最初包含的71个文字和函数可供...

关键字: AI 电气化 MATLAB Mathworks

摘要:首先研究了地铁车辆牵引变频器的电路结构、控制策略、分段同步控制等技术,随后分析了SPWM分段同步控制的优点,并在MATLAB中建立模型,验证了分段同步控制的优越性。最后利用软件的仿真功能建立牵引变频器的计算机仿真模...

关键字: 牵引变频器 分段同步控制 MATLAB

摘要:高压直流输电(HighVoltageDirectCurrent,HVDC)是一种利用电力电子技术介入电能输送的技术。随着HVDC理论的快速发展,对其的仿真研究也成为学术热点。现分析了国际大电网会议(CIGRE)提出...

关键字: 高压直流输电 MATLAB 十二脉冲桥

日前,记者从MathWorks得知,公司在通信方面的投资在持续加速之中,旗下的MATLAB是现有在 5G 产品研发中,能够提供完整的开发流程的统一开发平台。

关键字: MATLAB MathWorks 5G

包括 2 款新产品、5 项重要更新和数百项新特性

关键字: MATLAB Simulink

摘要:给出了一种基于FPGA的生命探测信号处理系统的设计方法。从理论上研究了生命探测仪的算法及其软硬件系统。其中在FPGA软件设计中利用模块化的思想方法分别设计了FIR滤波器、异步FIFO、UART、电池监控、功能控制等...

关键字: 生命探测仪 FPGA FIR滤波器 FIFO UART

Ʃ-Δ 型模数转换器广泛用于需要高信号完整度和电气隔离的电机驱动应用。

关键字: ADC 隔离放大器 FIR滤波器

未来天线设计的行业发展趋势是采用相控阵。这种技术趋势加上上市时间压力,造成的开发时间缩短问题,为相控阵系统领域的RF设计人员带来了多项挑战。

关键字: MATLAB ADI 多通道RF

测试测量

28658 篇文章

关注

发布文章

编辑精选

技术子站

关闭