一种基于FPGA的探地雷达分布式滤波方法技术

技术编号:21603676 阅读:17 留言:0更新日期:2019-07-13 17:37
一种基于FPGA的探地雷达分布式滤波方法,它属于探地雷达的信号处理技术领域。本发明专利技术解决了现有的滤波方法在FPGA中实现时存在的对信号处理效率低的问题。本发明专利技术应用分布式算法在FPGA中实现了数字滤波,分布式结构利用二进制数据可以进行逐位处理的特点,以输入数据的相同位作为地址查找之前预先存入的预相加结果,将查找表输出的部分积进行移位操作,移位操作结果进行累加后即可得到滤波结果,本发明专利技术用丰富的存储器资源代替了有限的硬件乘法器资源,用快速的查表操作与移位操作代替了缓慢的乘法操作,解决了现有方法对信号处理的速度慢的问题。本发明专利技术可以应用于探地雷达的信号处理技术领域。

A Distributed Filtering Method for Ground Penetrating Radar Based on FPGA

【技术实现步骤摘要】
一种基于FPGA的探地雷达分布式滤波方法
本专利技术属于探地雷达的信号处理
,具体涉及一种探地雷达分布式滤波方法。
技术介绍
探地雷达是一种用于浅层地表地球物理研究的无损检测仪器。检测人员利用地下物质电磁学属性不同的特点,通过FPGA采集并处理高速高频的探地雷达回波数据便可以了解地下情况。在实际操作中,由于探地雷达经常被用于执行路层检测,水深冰厚检测等任务,地下的金属以及水中的漂浮物都会引入杂波干扰,所以在检测施工中对回波进行滤波就显得十分重要。但由于现有的滤波方法在FPGA中实现时占用硬件资源多、逻辑延迟大,导致信号处理效率低、速度慢。
技术实现思路
本专利技术的目的是为了解决现有的滤波方法在FPGA中实现时存在的信号处理效率低的问题。本专利技术为解决上述技术问题采取的技术方案是:一种基于FPGA的探地雷达分布式滤波方法,该方法包括以下步骤:步骤一、获取探地雷达滤波的滤波器相关参数和数据字长;所述滤波器相关参数包括截止频率、采样频率、滤波器阶数和滤波器系数;所述数据字长包括冲激响应的字长和输入数据的字长;步骤二、将滤波器系数与二进制地址组合相加得到部分积,并将得到的部分积与对应的二进制地址存入查找表;步骤三、通过预先相加的方式对输入数据进行精简,得到精简后的输入数据;步骤四、对精简后的输入数据进行逐位右移操作来拼接成查找地址,根据拼接成的查找地址在查找表中得出部分积;步骤五、对步骤四得出的部分积进行移位操作,将移位操作结果进行累加,获得的累加结果即为探地雷达分布式滤波结果。本专利技术的有益效果是:本专利技术提供了一种基于FPGA的探地雷达分布式滤波方法,本专利技术应用分布式算法在FPGA中实现了数字滤波,分布式结构利用二进制数据可以进行逐位处理的特点,以输入数据的相同位作为地址查找之前预先存入的预相加结果,将查找表输出的部分积进行移位操作,移位操作结果进行累加后即可得到滤波结果,本专利技术用丰富的存储器资源代替了有限的硬件乘法器资源,用快速的查表操作与移位操作代替了缓慢的乘法操作,采用本专利技术的方法在FPGA中对探地雷达回波进行信号处理可以有效的压制噪声,解决了现有方法对信号处理的效率低的问题,与现有乘累加方法相比,本专利技术的方法可以将逻辑延迟降低50%,将硬件资源占用降低30%,有效提升了信号处理的速度。附图说明图1是本专利技术的一种基于FPGA的探地雷达分布式滤波方法的流程图;图2是基于分布式结构的探地雷达滤波的结构图;图3为利用本专利技术的方法实现分布式算法的查找表结构图;图3中X′[3][0]、X′[2][0]、X′[1][0]和X′[0][0]组成4位二进制地址,040代表第1组滤波器对称系数,0f0代表第2组滤波器对称系数,2a8代表第3组滤波器对称系数,428代表第4组滤波器对称系数。图4为为利用本专利技术的方法实现分布式逐位操作的示意图;图5为原始信号图;图6为对原始信号进行滤波后的信号图;图7为原始信号频谱图;图8为对原始信号进行滤波后的频谱图。具体实施方式具体实施方式一:如图1所示,本实施方式所述的一种基于FPGA的探地雷达分布式滤波方法,该方法包括以下步骤:步骤一、获取探地雷达滤波的滤波器相关参数和数据字长;所述滤波器相关参数包括截止频率、采样频率、滤波器阶数和滤波器系数;所述数据字长包括冲激响应的字长和输入数据的字长;步骤二、将滤波器系数与二进制地址组合相加得到部分积,并将得到的部分积与对应的二进制地址存入查找表;步骤三、通过预先相加的方式对输入数据进行精简,得到精简后的输入数据;步骤四、对精简后的输入数据进行逐位右移操作来拼接成查找地址,根据拼接成的查找地址在查找表中得出部分积;步骤五、对步骤四得出的部分积进行移位操作,将移位操作结果进行累加,获得的累加结果即为探地雷达分布式滤波结果。本实施方式的基本思想是利用分布式结构代替硬件滤波器乘累加结构实现卷积操作以完成滤波。在数字信号处理中,通常可以使用逐位操作的方法来简化运算,分布式结构便是利用此特点来实现滤波,整体结构如图2所示。相比于利用乘累加结构的滤波方法,分布式结构可以有效的压制噪声,并减少占用的FPGA硬件资源与逻辑延时。具体实施方式二:本实施方式与具体实施方式一不同的是:所述滤波器阶数为2N,输入数据的字长为T,滤波器系数的字长也为T。具体实施方式三:本实施方式与具体实施方式二不同的是:所述步骤二的具体过程为:对于阶数为2N的FIR滤波器,FIR滤波器的N组对称滤波器系数分别为C0、C1、C2、…、CN-1,其中:C0、C1、C2、…、CN-1分别代表第一组、第二组、第三组、…、第N组对称滤波器系数;阶数为2N的FIR滤波器的滤波器系数为C0、C1、…、CN-1、…、C2N-1,即共2N个,由于FIR滤波器的2N个系数首尾对称相等,即C0=C2N-1、C1=C2N-2、…,因此可以将2N个系数写成N组对称的滤波器系数,分别为:C0、C1、C2、…、CN-1;查找表的输入地址为N位二进制地址{B0、B1、B2、…、BN-1},B0、B1、B2、…、BN-1分别代表N位二进制地址的第一位、第二位、第三位、…、第N位;则N位二进制地址{B0、B1、B2、…、BN-1}对应的部分积LUT(B0,B1,…,BN-1)为:LUT(B0,B1,…,BN-1)=B0×C0+B1×C1+…+BN-1×CN-1将N位二进制地址{B0、B1、B2、…、BN-1}和N位二进制地址{B0、B1、B2、…、BN-1}对应的部分积LUT(B0,B1,…,BN-1)存入查找表;同理:获得各N位二进制地址对应的部分积,并将获得的各部分积与对应的N位二进制地址存入查找表。例如:对于3位二进制地址{B0、B1、B2},可以获得查找表的8个地址处储存的部分积,对于4位二进制地址{B0、B1、B2、B3},可以获得查找表的16个地址处储存的部分积,以此类推,符合二进制地址规则,求出每个二进制地址的部分积后,将部分积与对应的二进制地址存入查找表中,每个部分积与二进制地址一一对应。根据滤波器系数计算得到查找表,地址字长为N位,与第三步中预先相加得到的N个数据相对应。N=4时,查找表结构如图3所示,每一行前四列构成查找表地址,最后一列中的值均为部分积,由第一行括号中4组滤波器对称系数组合相加得到。具体实施方式四:本实施方式与具体实施方式三不同的是:所述步骤三的具体过程为:将主时钟进行分频,由T+2分频时钟控制来获得2N个字长为T的输入数据,并将获得的2N个字长为T的输入数据输入移位寄存器1;按T+2分频时钟,从移位寄存器1中选取出需要与相同滤波器系数相乘的数据,将选择出的数据进行预先相加,获得精简后的输入数据,并将精简后的输入数据存入移位寄存器2中;所述精简后的输入数据中包含N个字长为T+1的数据;精简后的输入数据中的第n+1个字长为T+1的数据的表达式为:x′[n]=x[n]+x[2N-1-n](n=0,1,2,...,N-1)其中:x′[n]为精简后的输入数据中的第n+1个数据,x[n]为2N个字长为T的输入数据中的第n+1个数据,x[2N-1-n]为2N个字长为T的输入数据中的第2N-n个数据;x[2N-1-n]为与x[n]对称的数据。例如:若输入x[n]共4个数据(即N=2),预先相本文档来自技高网...

【技术保护点】
1.一种基于FPGA的探地雷达分布式滤波方法,其特征在于,该方法包括以下步骤:步骤一、获取探地雷达滤波的滤波器相关参数和数据字长;所述滤波器相关参数包括截止频率、采样频率、滤波器阶数和滤波器系数;所述数据字长包括冲激响应的字长和输入数据的字长;步骤二、将滤波器系数与二进制地址组合相加得到部分积,并将得到的部分积与对应的二进制地址存入查找表;步骤三、通过预先相加的方式对输入数据进行精简,得到精简后的输入数据;步骤四、对精简后的输入数据进行逐位右移操作来拼接成查找地址,根据拼接成的查找地址在查找表中得出部分积;步骤五、对步骤四得出的部分积进行移位操作,将移位操作结果进行累加,获得的累加结果即为探地雷达分布式滤波结果。

【技术特征摘要】
1.一种基于FPGA的探地雷达分布式滤波方法,其特征在于,该方法包括以下步骤:步骤一、获取探地雷达滤波的滤波器相关参数和数据字长;所述滤波器相关参数包括截止频率、采样频率、滤波器阶数和滤波器系数;所述数据字长包括冲激响应的字长和输入数据的字长;步骤二、将滤波器系数与二进制地址组合相加得到部分积,并将得到的部分积与对应的二进制地址存入查找表;步骤三、通过预先相加的方式对输入数据进行精简,得到精简后的输入数据;步骤四、对精简后的输入数据进行逐位右移操作来拼接成查找地址,根据拼接成的查找地址在查找表中得出部分积;步骤五、对步骤四得出的部分积进行移位操作,将移位操作结果进行累加,获得的累加结果即为探地雷达分布式滤波结果。2.根据权利要求1所述的一种基于FPGA的探地雷达分布式滤波方法,其特征在于,所述滤波器阶数为2N,输入数据的字长为T。3.根据权利要求2所述的一种基于FPGA的探地雷达分布式滤波方法,其特征在于,所述步骤二的具体过程为:对于阶数为2N的FIR滤波器,FIR滤波器的N组对称滤波器系数分别为C0、C1、C2、…、CN-1,其中:C0、C1、C2、…、CN-1分别代表第一组、第二组、第三组、…、第N组对称滤波器系数;查找表的输入地址为N位二进制地址{B0、B1、B2、…、BN-1},B0、B1、B2、…、BN-1分别代表N位二进制地址的第一位、第二位、第三位、…、第N位;则N位二进制地址{B0、B1、B2、…、BN-1}对应的部分积LUT(B0,B1,…,BN-1)为:LUT(B0,B1,…,BN-1)=B0×C0+B1×C1+…+BN-1×CN-1将N位二进制地址{B0、B1、B2、…、BN-1}和N位二进制地址{B0、B1、B2、…、BN-1}对应的部分积LUT(B0,B1,…,BN-1)存入查找表;同理:获得各N位二进制地址对应的部分积,并将获得的各部分积与对应的N位二进制地址存入查找表。4.根据权利要求3所述的一种基于FPGA的探地雷达分布式滤波方法,其特征在于,所述步骤三的具体过程为:将主时钟进行分频,由T+2分频时钟控制来获得2N个字长为T的输入数据,并将获得的2N个字长为T的输入数据输入移位寄存器1;按T+2分频时钟,从移位寄存器1中选取出需要与相同滤波器系数相乘的数据,将选择出的数据进行预先相加,获得精简后的输入数据,并将精简后的输入数据存入移位寄...

【专利技术属性】
技术研发人员:白旭李季蹊张佳岩高玉龙姜建禹安维乐张延家崔海涛
申请(专利权)人:哈尔滨工业大学大连中睿科技发展有限公司
类型:发明
国别省市:黑龙江,23

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

1