一种基于FPGA的高采样率FIR滤波等效实现方法技术

技术编号:17307208 阅读:54 留言:0更新日期:2018-02-19 03:58
本发明专利技术公开了一种基于FPGA的高采样率FIR滤波等效实现方法,先利用MATLAB工具设计FIR滤波器系数h(n),并将系数h(n)进行放大、取整,使得到的系数能够被FPGA直接采用,然后在FPGA中将输入的ADC高采样率信号降速为M路并行低速采样信号,并获取一个数据同步时钟CLK周期内产生M个输出样点的所有输入样点和输出样点,最后对M路信号进行拼合得到高采样率滤波输出信号。

An equivalent implementation method of high sampling rate FIR filter based on FPGA

【技术实现步骤摘要】
一种基于FPGA的高采样率FIR滤波等效实现方法
本专利技术属于FIR数字滤波
,更为具体地讲,涉及一种基于FPGA的高采样率FIR滤波等效实现方法。
技术介绍
FIR滤波器(FiniteImpulseResponse)即有限长单位冲激响应滤波器,又称为非递归型滤波器,是数字信号处理系统中最为基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。在进入FIR滤波器前,首先要将信号通过ADC进行模数转换,把模拟信号转化为数字信号。为了使信号处理能够不发生失真,信号采样速度必须满足奈奎斯特采样定理,一般取信号频率上限的4-5倍作为采样频率。可采用FPGA或者通用DSP芯片来实现FIR滤波器。FPGA有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好,利用FPGA乘累加的快速算法,可以设计出高速的FIR数字滤波器。随着科技的发展,各种电子信号呈现出复杂化、多样化的特征,导致其频率范围越来越宽。因此,将该信号数字化需要更高的ADC采样率。目前市面上已有几十GSPS甚至上百GSPS的ADC芯片面世,其采样输出数据也具有相当的数据率。然后,目前绝大多数高端FPGA芯片的最高系统时钟不超过1GHz,若要直接利用FPGA实现上述高数据率数字信号的FIR滤波明显是不可能的。常见的采用FIR滤波器处理高数据率输入数字信号有如下两种情形。第一种情形如图1所示。假设ADC采样率为1GSPS。由于FPGA中无法直接处理1GSPS的采样数据流,故由FPGA中集成的高速接收器接收并将1GSPS数据流降速分为4路250MSPS数据流。利用4个一定存储深度(设均为1K)的FIFO分别存储4路250MSPS数据流。待FIFO满后,停止FIFO些操作。在250MHz时钟控制下,从4个FIFO中依次读出采样数据拼合成一路1GSPS的数据,再进行FIR数字滤波,最终可以得到4K的滤波后数据。这种情况下,1GSPS的待滤波数据流是通过多路数据拼合得到的,而且在拼合的过程中,FIFO的写操作是停止的。而ADC的采样仍在进行,导致FIR滤波期间ADC采样数据全部丢失。对FPGA中实现的FIR滤波操作来说,无法实现数据流的不间断连续流水线操作。第二种情形基于多相滤波理论,如图2所示。设ADC采样输出信号x(n)的采样率为fs,该频率高于FPGA能够实现的最高系统频率。经过内部高速接收器接收降速为M路采样率为fs/M的数据流xi(n)(i=0,1,...,M-1)。对得到的M路数据流xi(n)进行多相FIR滤波,其中Ei(z)为以采样率fs设计得到的原型滤波器的分支滤波器。输出信号y(n)的采样率降为ADC采样率的1/M,即fs/M。图2所示滤波结构不涉及缓存存储器,即可以实现滤波结构的连续流水操作,但是其输入输出信号的采样率已经发生了变化,即无法实现始终等效以ADC采样频率对输入信号进行滤波。目前,需求系统等效实现以ADC采样频率对其采样输出进行不间断的连续流水滤波操作,同时,还要求滤波输入输出信号的采样率保持不变,因此,以上两种滤波接收均不能满足需求。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种基于FPGA的高采样率FIR滤波等效实现方法,始终等效实现以高速率进行不间断数字信号滤波且输入输出采样率保持不变。为实现上述专利技术目的,本专利技术一种基于FPGA的高采样率FIR滤波等效实现方法,其特征在于,包括以下步骤:(1)、按照系统要求,利用MATLAB工具设计FIR滤波器系数h(n),再适当调节相关参数,使滤波器长度L满足LmodM=0,设L′=L/M;(2)、对系数h(n)进行整数倍放大,再进行四舍五入取整,使得到的系数能够直接被FPGA采用;(3)、在FPGA中将输入的ADC高采样率信号x(n)降速为M路并行低速采样信号xi(n),i=0,1,...,M-1;(4)、将M路并行低速采样信号xi(n)分别延迟1到L′个数据同步时钟CLK周期,使FPGA在一个数据同步时钟CLK周期内获取FIR滤波所需要的L+M-1个输入信号样点;(5)、根据步骤(4)获取的输入信号样点,计算一个数据同步时钟CLK周期内的M个FIR滤波并行输出样点;(6)、重复连续执行步骤(4)、(5),即可实现多路并行乘累加输出M路信号yi(n),按照i递增的顺序将yi(n)拼合起来,从而得到高采样率滤波输出信号y(n)。本专利技术的专利技术目的是这样实现的:本专利技术基于FPGA的高采样率FIR滤波等效实现方法,先利用MATLAB工具设计FIR滤波器系数h(n),并将系数h(n)进行放大、取整,使得到的系数能够被FPGA直接采用,然后在FPGA中将输入的ADC高采样率信号降速为M路并行低速采样信号,并获取一个数据同步时钟CLK周期内产生M个输出样点的所有输入样点和输出样点,最后对M路信号进行拼合得到高采样率滤波输出信号。同时,本专利技术基于FPGA的高采样率FIR滤波等效实现方法还具有以下有益效果:(1)、本专利技术适用于FPGA最高系统时钟小于前端ADC采样时钟时的ADC输出采样数据的FIR数字滤波,可以以多路并行方式等效实现以高速ADC采样率为数字滤波器采样率的实时高数据率数字滤波;(2)、在FPGA中实现的FIR滤波操作时能够实现数据流的不间断连续流水线操作;(3)、本专利技术中输入输出信号的采样率不变,且实现始终等效以ADC采样频率对输入信号进行滤波。附图说明图1是多路并行数据拼合后的滤波原理图;图2是多相滤波结构原理图;图3是本专利技术基于FPGA的高采样率FIR滤波等效实现方法原理图;图4是数据延迟示意图;图5是产生M个连续y(n)值所需输入样点位置示意图。具体实施方式下面结合附图对本专利技术的具体实施方式进行描述,以便本领域的技术人员更好地理解本专利技术。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本专利技术的主要内容时,这些描述在这里将被忽略。实施例图3是本专利技术基于FPGA的高采样率FIR滤波等效实现方法原理图。在本实施例中,设滤波输入信号x(n)的采样率为fs,FIR滤波器冲激响应为h(n),滤波输出信号为y(n),采样率与x(n)相同,也为fs,则有式(1)所示FIR滤波运算的时钟速率为fs。当上述FIR滤波在FPGA中实现时,由于fs高于FPGA最高系统时钟,高采样率信号x(n)不能被FPGA直接接收,需求经过高速接收器降速为多路低速率数据流。因此式(1)所示滤波运算也是采用多路并行的方式进行,进而输出多路信号。这多路信号即是滤波输出信号y(n)的多相分解,而y(n)的采样率与x(n)一致。因此,本专利技术的实质即是在FPGA中以多路并行滤波的方式等效实现滤波输入输出采样率不变的FIR数字滤波。下面我们结合图3对本专利技术一种基于FPGA的高采样率FIR滤波等效实现方法进行详细说明。S1、按照系统要求,利用MATLAB工具设计FIR滤波器系数h(n),再适当调节相关参数,使滤波器长度L满足LmodM=0,设L′=L/M。S2、对系数h(n)进本文档来自技高网
...
一种基于FPGA的高采样率FIR滤波等效实现方法

【技术保护点】
一种基于FPGA的高采样率FIR滤波等效实现方法,其特征在于,包括以下步骤:(1)、按照系统要求,利用MATLAB工具设计FIR滤波器系数h(n),再适当调节相关参数,使滤波器长度L满足LmodM=0,设L′=L/M;(2)、对系数h(n)进行整数倍放大,再进行四舍五入取整,使得到的系数能够直接被FPGA采用;(3)、在FPGA中将输入的ADC高采样率信号x(n)降速为M路并行低速采样信号xi(n),i=0,1,...,M‑1;(4)、将M路并行低速采样信号xi(n)分别延迟1到L′个数据同步时钟CLK周期,使FPGA在一个数据同步时钟CK周期内获取FIR滤波所需要的L+M‑1个输入信号样点;(5)、根据步骤(4)获取的输入信号样点,计算一个数据同步时钟CLK周期内的M个FIR滤波并行输出样点;

【技术特征摘要】
1.一种基于FPGA的高采样率FIR滤波等效实现方法,其特征在于,包括以下步骤:(1)、按照系统要求,利用MATLAB工具设计FIR滤波器系数h(n),再适当调节相关参数,使滤波器长度L满足LmodM=0,设L′=L/M;(2)、对系数h(n)进行整数倍放大,再进行四舍五入取整,使得到的系数能够直接被FPGA采用;(3)、在FPGA中将输入的ADC高采样率信号x(n)降速为M路并行低速采样信号xi(n),i=0,1,...,M-1;(4)、将M路并行低速采样信号xi(n)分别延迟1到L′个数据同步时钟CLK周期,使FPGA在一个数据同步时钟CK周期内获取FIR滤波所需要的L+M-1个输入信号样点;(5)、根据步骤(4)获取的输入信号样点,计算一个数据同步时钟CLK周期内的M个FIR滤波并行输出样点;

【专利技术属性】
技术研发人员:郭连平曾浩谭峰邱渡裕郭祥巩李煜
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1