基于FPGA实现65536点脉冲压缩的装置及方法制造方法及图纸

技术编号:14783418 阅读:97 留言:0更新日期:2017-03-10 04:35
本发明专利技术属于雷达信号处理技术领域,公开了一种基于FPGA实现65536点脉冲压缩的装置及方法,其实现过程为:首先16路并行接收数据,并且以并行读取无冲突为原则,将数据存储到16个块RAM中;然后以流水线的方式每次读取16个数,进行4级基‑16蝶形运算并原位存储,完成FFT处理;进行16路并行匹配滤波处理并原位存储;然后是4级蝶形运算实现IFFT处理;最后16路并行输出;其中旋转因子和匹配滤波系数用分段线性化的三角函数表,通过查表差值的方式实时生成。本发明专利技术大大节省了FPGA中RAM资源的使用,并显著提高了处理速度,增大了数据的吞吐率。

【技术实现步骤摘要】

本专利技术属于雷达信号处理
,尤其涉及一种基于FPGA实现65536点脉冲压缩的装置及方法,可在高分辨率探测雷达中,进行距离向或方位向的实时脉冲压缩处理。
技术介绍
在雷达系统中,脉冲压缩处理可以将宽脉冲信号压缩成窄脉冲信号,这样既可以发射宽脉冲以提高平均功率和雷达的检测能力,又能保持窄脉冲的距离分辨率,有效地解决雷达作用距离与距离分辨率之间的矛盾,在不降低作用距离的前提下提高雷达的距离分辨率。在同样进行脉冲压缩处理时,运算点数越多雷达的分辨率越高。随着时代发展,对雷达的要求越来越高,这样就需要大点数的实时脉冲压缩处理技术。用FPGA实现脉冲压缩时,一般采用在频域进行匹配滤波的方法,其处理流程如图1所示,数据先进行FFT处理,然后乘以频域的匹配滤波系数,再进行IFFT处理。脉冲压缩技术的FPGA实现,现有的方案是:方案一:用FFT模块、匹配滤波模块和IFFT模块级联实现,其中FFT模块和IFFT模块直接例化FPGA厂商的IP核;方案二:用FFT模块实现FFT/IFFT处理,FFT处理结果直接进行匹配滤波,匹配滤波的结果先进行缓存然后送到FFT模块进行IFFT处理。现有技术有如下缺点:(1)处理速度慢,用现有的FFT的IP核实现FFT/IFFT处理时采用低的分裂基算法,在进行大点数数据的FFT处理时运算量大并行度低导致处理速度慢;由于FFT的IP核的接口并行度低(最高支持4路并行),导致匹配滤波处理速度慢;(2)接口速率低,由于IP核接口并行度低,导致整个模块的数据输入输出并行度低,接口速度严重影响了整体的数据吞吐率;(3)资源占用多,方案一中FFT和IFFT用两个单独的模块浪费资源,方案二中对FFT模块进行了复用,但是数据需要缓存,占用的RAM资源仍然很多。
技术实现思路
针对上述现有技术的缺点,本专利技术的目的在于提供一种基于FPGA实现65536点脉冲压缩的装置及方法,以解决传统设计方案中数据处理速度慢、接口速率低和以及FFT、匹配滤波和IFFT之间的数据传输延时的问题。为达到上述目的,本专利技术的实施例采用如下技术方案予以实现。技术方案一:一种基于FPGA实现65536点脉冲压缩的装置,所述装置的输入端与外部进行脉冲压缩的16路输入数据通道连接,所述装置的输出端与外部脉冲压缩结果输出通道连接,所述装置包括:输入调序模块,输入选择模块,RAM存储模块,RAM读写控制模块,数据截断模块,前调序模块,16路并行处理模块,后调序模块,系数生成模块,输出调序模块,溢出裁决模块,控制模块;其中,所述输入调序模块的输入端与外部进行脉冲压缩的16路输入数据通道连接,输入调序模块的输出端与输入选择模块的第一输入端连接,输入选择模块的输出端与RAM存储模块的输入端连接,RAM读写控制模块的第一输出端与RAM存储模块的控制端连接,RAM读写控制模块的第二输出端与前调序模块的控制端连接,RAM读写控制模块的第三输出端与后调序模块的控制端连接,RAM存储模块的输出端与数据截断模块的第一输入端连接,数据截断模块的第一输出端与前调序模块的输入端连接,前调序模块的输出端与16路并行处理模块的第一输入端连接,系数生成模块的输出端与16路并行处理模块的第二输入端连接,16路并行处理模块的输出端分别与后调序模块的输入端、溢出裁决模块的输入端连接,后调序模块的输出端与输入选择模块的第二输入端连接,溢出裁决模块的输出端与数据截断模块的第二输入端连接,数据截断模块的第二输出端与输出调序模块的输入端连接,所述输出调序模块的输出端与外部脉冲压缩结果输出通道连接,所述控制模块的输入端与外部进行脉冲压缩的控制信号连接,控制模块的第一输出端分别与输入调序模块的控制端和输入选择模块的控制端连接,控制模块的第二输出端分别与RAM读写控制模块的控制端、16路并行处理模块的控制端和系数生成模块的控制端连接,控制模块的第三输出端与输出调序模块的控制端连接,控制模块的第四输出端与外部脉冲压缩结果输出信号连接。技术方案二:一种基于FPGA实现65536点脉冲压缩的方法,所述方法包括如下步骤:步骤1,在每个时钟周期获取16点输入数据,并将所述16点输入数据按照无冲突存储的方式分别存储于16个子存储模块中;从而经过4096个时钟周期获取65536点数据,并存储于RAM存储模块中;步骤2,从RAM存储模块中获取16个待处理数据;步骤3,数据截断模块根据溢出裁决模块输出的移位位数,对16个待处理数据进行移位;所述溢出裁决模块输出的移位位数初值为零;步骤4,前调序模块将移位后的16个待处理数据的顺序调整为基-16蝶形运算规则的顺序;步骤5,所述前调序模块将调序后的16个待处理数据发送至16路并行处理模块,且系数生成模块生成16个待处理数据对应的旋转因子,并发送至16路并行处理模块;步骤6,所述16路并行处理模块根据接收到的16个待处理数据和对应的旋转因子,进行基-16蝶形运算,得到该组数据的基-16蝶形运算结果;步骤7,所述溢出裁决模块对所述基-16蝶形运算结果进行溢出判断,得到移位位数;步骤8,将所述基-16蝶形运算结果按照16个待处理数据在RAM存储模块中的存储位置进行原位存储;步骤9,将步骤2至步骤8以流水线的方式重复执行4096次,得到第一级蝶形运算结果;步骤10,将步骤2至步骤9重复执行4次,得到65536点数据的傅里叶变换结果;此时所述RAM存储模块中存储的数据为快速傅里叶变换后的65536点数据;步骤11,从RAM存储模块中获取16个快速傅里叶变换后的数据;步骤12,数据截断模块根据溢出裁决模块输出的移位位数,对16个待处理数据进行移位;步骤13,前调序模块将移位后的16个快速傅里叶变换后的数据的顺序调整为基-16蝶形运算规则的顺序;步骤14,所述前调序模块将调序后的16个快速傅里叶变换后的数据发送至16路并行处理模块,且系数生成模块生成16个快速傅里叶变换后的数据对应的匹配滤波系数,并发送至16路并行处理模块;步骤15,所述16路并行处理模块根据接收到的16个快速傅里叶变换后的数据和对应的匹配滤波系数,进行复数乘法运算,得到该组数据的匹配滤波运算结果;步骤16,所述溢出裁决模块对所述匹配滤波运算结果进行溢出判断,得到移位位数;步骤17,将所述匹配滤波运算结果按照16个快速傅里叶变换后的数据在RAM存储模块中的存储位置进行原位存储;步骤18,将步骤11至步骤17以流水线的方式重复执行4096次,得到匹配滤波运算结果;此时所述RAM存储模块中存储的数据为匹配滤波运算后的65536点数据;步骤19,从RAM存储模块中获取16个匹配滤波运算后的数据;步骤20,数据截断模块根据溢出裁决模块输出的移位位数,对16个匹配滤波运算后的数据进行移位;步骤21,前调序模块将移位后的16个匹配滤波运算后的数据的顺序调整为基-16蝶形运算规则的顺序;步骤22,所述前调序模块将调序后的16个匹配滤波运算后的数据取共轭后发送至16路并行处理模块,且系数生成模块生成16个匹配滤波运算后的数据对应的旋转因子,并发送至16路并行处理模块;步骤23,所述16路并行处理模块根据接收到的16个匹配滤波运算后的数据和对应的旋转因子,进行基-16蝶形运算,得到该组数据的基-16蝶形运算结果本文档来自技高网
...
基于FPGA实现65536点脉冲压缩的装置及方法

【技术保护点】
一种基于FPGA实现65536点脉冲压缩的装置,所述装置的输入端与外部进行脉冲压缩的16路输入数据通道连接,所述装置的输出端与外部脉冲压缩结果输出通道连接,其特征在于,所述装置包括:输入调序模块,输入选择模块,RAM存储模块,RAM读写控制模块,数据截断模块,前调序模块,16路并行处理模块,后调序模块,系数生成模块,输出调序模块,溢出裁决模块,控制模块;其中,所述输入调序模块的输入端与外部进行脉冲压缩的16路输入数据通道连接,输入调序模块的输出端与输入选择模块的第一输入端连接,输入选择模块的输出端与RAM存储模块的输入端连接,RAM读写控制模块的第一输出端与RAM存储模块的控制端连接,RAM读写控制模块的第二输出端与前调序模块的控制端连接,RAM读写控制模块的第三输出端与后调序模块的控制端连接,RAM存储模块的输出端与数据截断模块的第一输入端连接,数据截断模块的第一输出端与前调序模块的输入端连接,前调序模块的输出端与16路并行处理模块的第一输入端连接,系数生成模块的输出端与16路并行处理模块的第二输入端连接,16路并行处理模块的输出端分别与后调序模块的输入端、溢出裁决模块的输入端连接,后调序模块的输出端与输入选择模块的第二输入端连接,溢出裁决模块的输出端与数据截断模块的第二输入端连接,数据截断模块的第二输出端与输出调序模块的输入端连接,所述输出调序模块的输出端与外部脉冲压缩结果输出通道连接,所述控制模块的输入端与外部进行脉冲压缩的控制信号连接,控制模块的第一输出端分别与输入调序模块的控制端和输入选择模块的控制端连接,控制模块的第二输出端分别与RAM读写控制模块的控制端、16路并行处理模块的控制端和系数生成模块的控制端连接,控制模块的第三输出端与输出调序模块的控制端连接,控制模块的第四输出端与外部脉冲压缩结果输出信号连接。...

【技术特征摘要】
1.一种基于FPGA实现65536点脉冲压缩的装置,所述装置的输入端与外部进行脉冲压缩的16路输入数据通道连接,所述装置的输出端与外部脉冲压缩结果输出通道连接,其特征在于,所述装置包括:输入调序模块,输入选择模块,RAM存储模块,RAM读写控制模块,数据截断模块,前调序模块,16路并行处理模块,后调序模块,系数生成模块,输出调序模块,溢出裁决模块,控制模块;其中,所述输入调序模块的输入端与外部进行脉冲压缩的16路输入数据通道连接,输入调序模块的输出端与输入选择模块的第一输入端连接,输入选择模块的输出端与RAM存储模块的输入端连接,RAM读写控制模块的第一输出端与RAM存储模块的控制端连接,RAM读写控制模块的第二输出端与前调序模块的控制端连接,RAM读写控制模块的第三输出端与后调序模块的控制端连接,RAM存储模块的输出端与数据截断模块的第一输入端连接,数据截断模块的第一输出端与前调序模块的输入端连接,前调序模块的输出端与16路并行处理模块的第一输入端连接,系数生成模块的输出端与16路并行处理模块的第二输入端连接,16路并行处理模块的输出端分别与后调序模块的输入端、溢出裁决模块的输入端连接,后调序模块的输出端与输入选择模块的第二输入端连接,溢出裁决模块的输出端与数据截断模块的第二输入端连接,数据截断模块的第二输出端与输出调序模块的输入端连接,所述输出调序模块的输出端与外部脉冲压缩结果输出通道连接,所述控制模块的输入端与外部进行脉冲压缩的控制信号连接,控制模块的第一输出端分别与输入调序模块的控制端和输入选择模块的控制端连接,控制模块的第二输出端分别与RAM读写控制模块的控制端、16路并行处理模块的控制端和系数生成模块的控制端连接,控制模块的第三输出端与输出调序模块的控制端连接,控制模块的第四输出端与外部脉冲压缩结果输出信号连接。2.根据权利要求1所述的一种基于FPGA实现65536点脉冲压缩的装置,其特征在于,外部进行脉冲压缩的65536点数据分为16个通道进行数据输入,且按照第1个通道的第一点数据编号为0,第2个通道的第一点数据编号为1,依次到第16个通道的第一点数据编号为15,第1个通道的第二点数据编号为16,第2个通道的第二点数据编号为17,依次到第16个通道的第二点数据编号为31的方式对65536点数据进行编号;且65536点数据以16位补码的形式进行存储;在一个时钟周期内16个通道的每个通道输入一点数据,从而外部进行脉冲压缩的65536点数据需要4096个时钟周期完成数据输入。3.根据权利要求2所述的一种基于FPGA实现65536点脉冲压缩的装置,其特征在于,所述RAM存储模块包含16个双端口的子存储模块,分别编号为RAM0-RAM15,每个子存储模块的位宽为40位,深度为4096;数据在每个子存储模块中的存储格式为:高20位存储数据的实部,低20位存储数据的虚部,数据的实部和虚部都是以补码的形式存储,且每个子存储模块存储4096点数据。4.根据权利要求2所述的一种基于FPGA实现65536点脉冲压缩的装置,其特征在于,所述输入调序模块,用于按照无冲突存储的方式对16个通道的输入数据进行调序;从而使得数据编号间隔为1、16、256、4096的数据不会存储在同一个子存储模块中;所述输入选择模块,用于将输入调序模块的输出数据输入到RAM存储模块;或者,用于将后调序模块的输出数据输入到RAM存储模块;所述RAM存储模块,用于缓存进行脉冲压缩的16路输入数据,或者,用于原位存储后调序模块输出的16路数据;所述RAM读写控制模块,用于生成所述RAM存储模块的读写地址和对应的读写使能信号;所述前调序模块,用于将RAM存储模块中16个子存储模块的数据按照基-16蝶形运算的要求,进行顺序调整,并将顺序调整后的16路数据输入16路并行处理模块;所述系数生成模块,用于在16路并行处理模块进行快速傅里叶变换或者逆快速傅里叶变换时,生成与16路输入数据对应的旋转因子;或者,在16路并行处理模块进行匹配滤波运算时,生成与16路输入数据对应的匹配滤波系数;所述16路并行处理模块,用于将顺序调整后的16路数据与系数生成模块发送的对应旋转因子进行基-16蝶形运算,得到快速傅里叶变换结果;所述16路并行处理模块,还用于将快速傅里叶变换结果与系数生成模块发送的对应匹配滤波系数进行复数乘法运算,得到匹配滤波结果;所述16路并行处理模块,还用于将匹配滤波结果数据与系数生成模块发送的对应旋转因子进行基-16蝶形运算,得到脉冲压缩结果;所述后调序模块,用于将16路并行处理模块输出的运算结果进行顺序调整,使其按照无冲突存储方式原位存储于RAM存储模块中;所述16路并行处理模块输出的运算结果为快速傅里叶变换结果,或者匹配滤波结果,或者脉冲压缩结果;所述溢出裁决模块,用于对所述16路并行处理模块输出的运算结果进行溢出位宽判断,从而得到溢出位宽,将溢出位宽发送给数据截断模块;所述数据截断模块,用于根据溢出裁决模块发送的溢出位宽,将从RAM存储模块中读取的数据进行相应的移位,得到16位有效数据;所述输出调序模块,用于将经过移位后的所述RAM存储模块中存储的脉冲压缩结果进行调序并输出。5.根据权利要求4所述的一种基于FPGA实现65536点脉冲压缩的装置,其特征在于,所述16路并行处理模块以基-16蝶形运算单元为基础,并采用基-16蝶形运算单元的复数乘法器实现匹配滤波运算的过程;若所述16路并行处理模块进行快速傅里叶变换,则前调序模块每次从RAM存储模块获取16点待处理数据,系数生成模块每次实时生成16点待处理数据分别对应的旋转因子,然后16点待处理数据以及16点待处理数据分别对应的旋转因子作为基-16蝶形运算单元的输入,并且以流水线的方式完成一级4096次基-16蝶形运算,直到得到四级基-16蝶形运算的结果,并将其作为快速傅里叶变换的结果;若所述16路并行处理模块进行匹配滤波运算,则前调序模块每次从RAM存储模块获取16点快速傅里叶变换结果数据,系数生成模块每次实时生成16点快速傅里叶变换结果数据分别对应的匹配滤波系数,然后16点快速傅里叶变换结果数据以及16点快速傅里叶变换结果数据分别对应的匹配滤波系数作为16个复数乘法器的输入,经过复数乘法运算,得到16个复数乘法器的输出,并将其作为此次匹配滤波运算的结果,并且以流水线的方式完成4096次复数乘法运算,从而完成4096次16路并行的匹配滤波运算;若所述16路并行处理模块进行逆快速傅里叶变换,则前调序模块每次从RAM存储模块获取16点匹配滤波运算结果数据并对其取共轭,系数生成模块每次实时生成16点匹配滤波运算结果数据分别对应的旋转因子,然后16点取共轭后的匹配滤波运算结果数据以及16点取共轭后的匹配滤波运算结果数据分别对应的旋转因子作为基-16蝶形运算单元的输入,并且以流水线的方式完成一级4096次基-16蝶形运算,直到得到四级基-16蝶...

【专利技术属性】
技术研发人员:王虹现王亚彬谭高伟严晓鹏
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

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

1