一种FFT非相干积累的实现方法及装置[发明专利]

(10)申请公布号 CN 103034619 A
(43)申请公布日 2013.04.10C N  103034619 A
*CN103034619A*
(21)申请号 201210538841.9
(22)申请日 2012.12.13
G06F 17/10(2006.01)
(71)申请人中国航天科工信息技术研究院
地址100070 北京市丰台区西四环南路总部
基地188号17区5号楼
(72)发明人王千喜  李社军  代栋敏  杨晓昆
胡强  范振新  王丹阳  欧春湘
(74)专利代理机构工业和信息化部电子专利中
心 11010
代理人
田俊峰
(54)发明名称
一种FFT 非相干积累的实现方法及装置
(57)摘要
本发明公开了一种FFT 非相干积累的实现方
法及装置,包括:对输入信号进行FFT 运算,每一
帧得到N 个数据,对每个数据进行求模;对求模后
的每一个数据采用移位寄存的方式进行非相干积
累;对非相干积累后的数据进行峰值检测:检测
每一帧数据的最大频值,以及其对应的频点。本发
明利用FFT 顺序出数的特点,采用移位寄存方式
进行非相干累积,逻辑简单,不需要额外的控制,
占用资源少,不用繁琐的时序控制操作,处理速度
要快,明显比双口RAM 或者FIFO 操作简单。
(51)Int.Cl.
权利要求书1页  说明书4页  附图2页
(19)中华人民共和国国家知识产权局(12)发明专利申请
权利要求书 1 页  说明书 4 页  附图 2 页
1/1页
1.一种FFT 非相干积累的实现方法,其特征在于,包括:
对输入信号进行FFT 运算,每一帧得到N 个数据,对每个数据进行求模;
对求模后的每一个数据采用移位寄存的方式进行非相干积累;
对非相干积累后的数据进行峰值检测:检测每一帧数据的最大频值,以及其对应的频点。
2.如权利要求1所述的FFT 非相干积累的实现方法,其特征在于,对每个数据进行求模是指对每个数据求模值平方。
3.如权利要求1或2所述的FFT 非相干积累的实现方法,其特征在于,采用移位寄存的方式进行非相干积累具体包括:
每个数据在每个时钟进行一次寄存,当下一个数据存入时,将已经存入寄存器的数据整体向右进行移位,如果位于最右端的寄存器有数据移出,则将该数据与当前要存入的数据相加,存入最左端的寄存器中;如果位于最右端的寄存器没有数据移出,则将当前要存入的数据存入最左端的寄存器中。
4.如权利要求3所述的FFT 非相干积累的实现方法,其特征在于,寄存器的个数与每一帧FFT 运算后得到数据个数相同。
5.一种FFT 非相干积累的实现装置,其特征在于,包括:
求模模块,用于对输入信号进行FFT 运算,每一帧得到N 个数据,对每个数据进行求模;
非相干积累模块,用于对求模后的每一个数据采用移位寄存的方式进行非相干积累;峰值检测模块,用于对非相干积累后的数据进行峰值检测:检测每一帧数据的最大频值,以及其对应的频点。
6.如权利要求5所述的FFT 非相干积累的实现装置,其特征在于,所述求模模块对每个数据进行求模是指对每个数据求模值平方。
7.如权利要求5或6所述的FFT 非相干积累的实现装置,其特征在于,非相干积累模块具体用于:
每个数据在每个时钟进行一次寄存,当下一个数据存入时,将已经存入寄存器的数据整体向右进行移位,如果位于最右端的寄存器有数据移出,则将该数据与当前要存入的数据相加,存入最左端的寄存器中;如果位于最右端的寄存器没有数据移出,则将当前要存入的数据存入最左端的寄存器中。
8.如权利要求7所述的FFT 非相干积累的实现装置,其特征在于,寄存器的个数与每一帧FFT 运算后得到数据个数相同。权  利  要  求  书CN 103034619 A
一种FFT非相干积累的实现方法及装置
技术领域
[0001] 本发明涉及数字信号处理技术领域,特别是涉及一种FFT(Fast Fourier Transform,快速傅里叶变换)非相干积累的实现方法及装置。
背景技术
[0002] FFT算法,被广泛用于雷达系统、图像处理、通信系统、航空航天等领域。它是为了减少离散傅里叶变换计算次数的一种快速有效地算法。
[0003] 离散傅里叶变换(Discrete Fourier Transform,DFT)是数字信号处理中的一种重要算法,可以看成是连续函数在时域、频域取样构成的变换,但是由于其计算量大、运算时间长的缺点使其使用范围有限。1965年,Cooley和Tukey提出FFT算法,利用旋转因子的周期性和对称性,把长序列的DFT分解为更小点数的DFT,从而减少乘法次数,提高计算效率,此算法一经问世就得到了极大关注,发展迅速,出现了很多相关的算法。
[0004] 傅里叶变换,在一百多年前就已经发现,并早已知道频域分析常常比时域分析更优越,不仅简单,且易于分析复杂信号。例如我们接收到一段GPS信号,如果对其进行解扩(但是不进行累加),不考虑码多普勒效应以及噪声等的影响,将可以得到一段正弦波信号(残留频差),对其进行频谱分析(例如进行FFT变换),便可以得到峰值谱线了;又由于此时的信号带宽已经降低,便可以用累加的办法降低其采样速率,然后再进行频谱分析。[0005] 信号经过FFT运算后得到其频域的信息,会出现频率的峰值。如果信号的信噪比很低,则必须对FFT算法进行相应的改进,在进行峰值检测判决之前采取有效的措施改善信噪比。常用的改善信噪比的方法有相干积累和非相干积累两种方法。相干积累,就是将
相邻周期的相关结果直接相加,利用积分时间内信号的相关性,将信号的能量累加起来,而噪声在积分时间内没有相干性,累加过程相当于对噪声取平均,这样可显著提高信噪比。而非相干积累,则是将相关结果求模平方后再进行累加,与相干积累相比,去除了相位信息,仅保留了幅度信息,所以噪声功率也相应增长,需要增加累加次数,才能得到较满意的信噪比。
[0006] 在进行非相干积累时,RAM模块进行数据的存储,是很常见的存储方式,比较简单,但是需要控制RAM的读写使能、读地址、写地址、读数据和写数据,才能控制数据的读写。FIFO(First In First Out,先入先出队列),是一种传统的数据缓存器,先进入的指令先完成并引退,跟着才执行第二条指令。FIFO一般用于不同时钟域之间的数据传输,同步FIFO 读时钟和写时钟为同一个时钟,在时钟沿来临时同时发生读写操作。异步FIFO读写时钟不一致,互相独立。一般在大容量存储单元中,为了使存储速度与读出速度相匹配,采用FIFO。
发明内容
[0007] 本发明要解决的技术问题是一种FFT非相干积累的实现方法及装置,用以解决现有技术采用双口RAM或者FIFO进行非相干积累操作复杂的问题。
[0008] 为解决上述技术问题,一方面,本发明提供一种FFT非相干积累的实现方法,包
括:
[0009] 对输入信号进行FFT运算,每一帧得到N个数据,对每个数据进行求模;[0010] 对求模后的每一个数据采用移位寄存的方式进行非相干积累;
[0011] 对非相干积累后的数据进行峰值检测:检测每一帧数据的最大频值,以及其对应的频点。
[0012] 进一步,对每个数据进行求模是指对每个数据求模值平方。
[0013] 进一步,采用移位寄存的方式进行非相干积累具体包括:
[0014] 每个数据在每个时钟进行一次寄存,当下一个数据存入时,将已经存入寄存器的数据整体向右进行移位,如果位于最右端的寄存器有数据移出,则将该数据与当前要存入的数据相加,存入最左端的寄存器中;如果位于最右端的寄存器没有数据移出,则将当前要存入的数据存入最左端的寄存器中。
[0015] 进一步,寄存器的个数与每一帧FFT运算后得到数据个数相同。
[0016] 另一方面,本发明还提供一种FFT非相干积累的实现装置,包括:
[0017] 求模模块,用于对输入信号进行FFT运算,每一帧得到N个数据,对每个数据进行求模;
[0018] 非相干积累模块,用于对求模后的每一个数据采用移位寄存的方式进行非相干积累;
[0019] 峰值检测模块,用于对非相干积累后的数据进行峰值检测:检测每一帧数据的最大频值,以及其对应的频点。
[0020] 进一步,所述求模模块对每个数据进行求模是指对每个数据求模值平方。[0021] 进一步,非相干积累模块具体用于:
[0022] 每个数据在每个时钟进行一次寄存,当下一个数据存入时,将已经存入寄存器的数据整体向右进行移位,如果位于最右端的寄存器有数据移出,则将该数据与当前要存入的数据相加,存入最左端的寄存器中;如果位于最右端的寄存器没有数据移出,则将当前要存入的数据存入最左端的寄存器中。
[0023] 进一步,寄存器的个数与每一帧FFT运算后得到数据个数相同。
[0024] 本发明有益效果如下:
[0025] 本发明利用FFT顺序出数的特点,采用移位寄存方式进行非相干累积,逻辑简单,不需要额外的控制,占用资源少,不用繁琐的时序控制操作,处理速度要快,明显比双口RAM 或者FIFO操作简单。
附图说明
[0026] 图1是本发明实施例中一种FFT非相干积累的实现方法的流程图;
[0027] 图2是本发明实施例中一种FFT非相干积累硬件实现图。
具体实施方式
[0028] 以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
[0029] 本发明采用非相干积累的方式把不同输入信号的FFT结果进行累加,检测峰值。
本发明实现FFT结果非相干积累的不同,主要体现在积累结果的存储方式不同,而传统的方式可以用双口RAM或者FIFO来对其进行控制。
[0030] 如图1所示,本发明实施例涉及一种FFT非相干积累的实现方法,包括:[0031] 步骤S101,对输入信号进行FFT运算,每一帧FFT结果得到N个数据,对每个数据进行求模。
[0032] 本发明实施例以每一帧的FFT运算得到256个数据为例进行说明;但并非只能限定为此点数,N值可以为其它数值。
[0033] 对输入信号进行FFT运算,本发明实施例进行的是256点的基2-FFT运算,给定输入信号后,经过FFT运算,得到的每一帧FFT结果是其频域的256个频值。
[0034] 求模是对FFT结果的256个频值,进行求模运算。硬件实现时考虑到开方的误差比较大,所以本发明实施例只求模值平方,便于运算。
[0035] 步骤S102,对求模后的数据采用移位寄存的方式进行非相干积累:是对每一帧的FFT结果进行累加,在复位端口置高时(低有效),累加一直进行,当复位端口置低时,不进行累加。复位端口由控制侧进行控制,例如,当进行非相干积累时,则将复位端口置高,当非相干积累完毕时,复位端口置低。
[0036] 累加结果存储:本发明实施例采用移位寄存的方式,对FFT结果值进行存储。寄存器的个数与每一帧FFT运算后得到数据个数相同。reg0、reg1、reg2、….、reg255是设置的256个寄存器,对256个频率值进行移位存储。每个数据在每个时钟进行一次寄存,当下一个数据存入时,将已经存入寄存器的数据整体向右进行移位,如果位于最右端的寄存器有数据移出,则将该数据与当前要存入的数据相加,存入最左端的寄存器中;如果位于最右端的寄存器没有数据移出,则将当前要存入的数据存入最左端的寄存器中。例如,存第一帧中第一个数据时,将其存在寄存器reg0中;存第二数据时,先将寄存器reg0中的数据存入reg1,然后,将第二个数据存入寄存器reg0中,以此类推,直到将256个数据完全都存入256个寄存器中;当存入第二帧的第一个数据时,先将寄存器reg0、reg1、reg2、…、reg255中的数据依次向右进行移位,reg255中数据移出后,与第二帧的第一个数据相加后存入寄存器reg0,以此类推,直到所有数据存完。也就是说一帧数据一共256个,每一个数据都需要依次进行求模,非相干积累,移位寄存,在经历过256个时钟后,这一帧的数据已经全部存储在256个寄存器中;等下一帧数据来到后,
再进行256个时钟后,累加值就存在了这256个寄存器中,但是此时峰值检测是对上一帧数据(或者以及以前帧数据的累加值)进行的检测结果。
[0037] 步骤S103,对非相干积累后的数据进行峰值检测:对每一帧数据进行检测,检测其最大频值,以及其对应的频点,通过频谱进行分析。但是此时是延迟一帧的结果,这次检测出来的是上帧数据以及以前帧数据的累加值的最大值。本发明实施例只涉及最大频值的检测,不涉及频谱分析,因此,关于频谱分析不再描述。
[0038] 另外,本发明还涉及一种实现上述方法的FFT非相干积累的实现装置,包括:[0039] 求模模块,用于对输入信号进行FFT运算,每一帧得到N个数据,对每个数据进行求模;
[0040] 非相干积累模块,用于对求模后的每一个数据采用移位寄存的方式进行非相干积累;

本文发布于:2024-09-23 19:25:33,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/435466.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   进行   相干   积累   寄存器   信号   运算
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议