CN115905782A - 基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法 - Google Patents

基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法 Download PDF

Info

Publication number
CN115905782A
CN115905782A CN202110923913.0A CN202110923913A CN115905782A CN 115905782 A CN115905782 A CN 115905782A CN 202110923913 A CN202110923913 A CN 202110923913A CN 115905782 A CN115905782 A CN 115905782A
Authority
CN
China
Prior art keywords
data
sequence
real
factor
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110923913.0A
Other languages
English (en)
Inventor
许皓文
陆浩
王振占
肖雨伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Space Science Center of CAS
Original Assignee
National Space Science Center of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Space Science Center of CAS filed Critical National Space Science Center of CAS
Priority to CN202110923913.0A priority Critical patent/CN115905782A/zh
Publication of CN115905782A publication Critical patent/CN115905782A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明属于微波遥感仪器和信号处理技术领域,具体地说,涉及一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,该系统包括:数据处理模块、数据排序模块,中间因子模块和数据解算模块;所述数据处理模块,用于将串行数据转化为并行处理,得到并行处理后的数据;所述数据排序模块,用于对并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;所述中间因子模块,用于对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子以及虚部差因子,并根据定义的两个和因子以及两个差因子,计算四个中间因子;所述数据解算模块,用于根据计算得到的四个中间因子,实时获得最终的功率谱输出结果。

Description

基于FPGA的实时快速傅里叶变换谱仪的信号处理系统及方法
技术领域
本发明属于微波遥感仪器和信号处理技术领域,具体地说,涉及基于FPGA的实时快速傅里叶变换谱仪的信号处理系统及方法。
背景技术
微波临边探测是一种新型的观测地球大气的方式,主要是通过天线从天底往上垂直扫描大气临边切点时测量大气毫米波、亚毫米波的热发射,从而可以得到各种大气变量的遥测值。在微波临边探测中,高光谱微波辐射计作为一种被动微波遥感器件,主要用来探测大气的痕量气体成分,从而可以了解大气的物理化学过程,因此对于气候变化的研究具有重要的意义。
高光谱辐射计通常是指后端由多个频谱通道构成的辐射计系统,不同的频谱通道数就表征了不同的谱分辨率,频谱通道数越多,则谱分辨率越高,就可以完成更精细的频谱探测。因此,高光谱微波辐射计主要可以满足对高精度,定量化,精细化探测的需求,因而得到了快速发展。
快速傅里叶变换谱仪是高光谱微波辐射计的核心部件,主要承担了后端的谱分析功能。传统的谱仪主要包括了滤波器组谱仪,声光谱仪,模拟自相关谱仪等。快速傅里叶变换谱仪利用超大规模集成电路可以完成宽频带信号的并行处理,具有较高的稳定性和更精细的频谱划分。与同样是数字谱仪的数字自相关谱仪相比,快速傅里叶变换谱仪在实现方式上具有较大的优势,可以大幅节约硬件资源。
发明内容
为解决现有技术存在的上述缺陷,本发明提出了基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,该系统包括:数据处理模块、数据排序模块,中间因子模块和数据解算模块;
所述数据处理模块,用于将串行数据转化为并行处理,得到并行处理后的数据;
所述数据排序模块,用于对并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;
所述中间因子模块,用于对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子,以及虚部差因子;并根据定义的两个和因子以及两个差因子,计算四个中间因子;
所述数据解算模块,用于根据计算得到的四个中间因子,实时获得最终的功率谱输出结果。
作为上述技术方案的改进之一,所述数据处理模块的具体过程为:
假设离散序列x(n)为串行数据,该串行数据的长度为N,记为N点离散序列x(n),将N分解为两个整数R和T的乘积,且R和T均为2的整数次幂的形式;
N=RT (1)
对N点离散序列x(n),按先后顺序每两个实数点组成一个复数点,其中一个作为实部,另一个作为虚部,进而得到N/2个复数点,对离散序列x(n)做离散傅里叶变换处理,得到长度为N/2的复序列X(k):
Figure BDA0003208467250000021
其中,
Figure BDA0003208467250000022
j为虚数单位,其平方为-1;
采用列映射方式,将离散序列x(n)映射为矩形数组x(r,t):
n=Rt+r,0≤r≤R-1,0≤t≤T-1 (3)
其中,n为序列中的N个点;r为映射的行数;t为映射的列数;
采用行映射方式,将复序列X(k)映射为复序列矩形数组X(p,q):
k=Tp+q,0≤p≤R-1,0≤q≤T-1 (4)
其中,k为序列中的N个点;p为映射的行数;q为映射的列数;
整理后得到:
Figure BDA0003208467250000023
其中,
Figure BDA0003208467250000024
其中,
Figure BDA0003208467250000025
为整体旋转因子,即旋转因子的整体表达形式;
Figure BDA0003208467250000026
为固定数值1;
Figure BDA0003208467250000027
的上下标分别除以R可以化简为
Figure BDA0003208467250000028
Figure BDA0003208467250000029
的上下标分别除以T可以化简为
Figure BDA00032084672500000210
Figure BDA00032084672500000211
为单独的旋转因子;
对上式化简后得到:
Figure BDA00032084672500000212
其中,对于r行和t列的矩形数据x(r,t),按照每一行计算T点的傅里叶变换:
Figure BDA00032084672500000213
其中,r=0,1,...,R-1。
定义将旋转因子
Figure BDA0003208467250000031
与矩形数组F(r,q)进行数据对应相乘,得到新矩形数组G(r,q),该新矩形数组有r行和q列:
Figure BDA0003208467250000032
对于r行和q列的矩形数组G(r,q),按照每一列计算R点的傅里叶变换,得到并行处理后的数据:
Figure BDA0003208467250000033
其中,q=0,1,...,T-1。
作为上述技术方案的改进之一,所述数据排序模块的具体过程为:
假设离散序列x(n)为一个2M点的实数序列,令x1(n)代表该序列中的偶数分量,x2(n)代表该序列中的奇数分量,偶数分量和基数分量的点数均为M;
则复序列y(n)=x1(n)+jx2(n),0≤n≤N-1;其中,j表示虚数单位,其平方为-1;
由于离散傅里叶变换是线性的,则对复序列y(n)进行离散傅里叶变换,得到变换后的复序列Y(k):
Y(k)=X1(k)+jX2(k)=YRe(k)+jYIm(k) (10)
其中,YRe(k)和YIm(k)分别代表了Y(k)的实部和虚部;
对x1(n)和x2(n)分别进行表示:
Figure BDA0003208467250000034
Figure BDA0003208467250000035
其中,y*为y的共轭对称;
则分别对x1(n)和x2(n)进行离散傅里叶变换,得到X1(k)和X2(k):
Figure BDA0003208467250000036
Figure BDA0003208467250000037
再结合Y(k)=X1(k)+jX2(k)=YRe(k)+jYIm(k),得到:
Figure BDA0003208467250000038
Figure BDA0003208467250000039
对X1(k)和X2(k)进行正序排列,得到正序数据;对X1(k)和X2(k)进行倒序排列,得到倒序数据;
其中,正序数据和倒序数据中的数据个数均为M;
将正序数据中的第k个数据与倒序数据中的第k个数据一一对应,且保持同步;利用FPGA中的第一RAM和第二RAM分别存储需要正序和倒序的数据。
作为上述技术方案的改进之一,所述中间因子模块的具体过程为:
根据正序数据和倒序数据定义实部和因子YRe1,实部差因子YRe2,虚部和因子YIm1以及虚部差因子YIm2,记为四个中间因子;
利用下式:
Figure BDA0003208467250000041
Figure BDA0003208467250000042
计算上述四个中间因子:
Figure BDA0003208467250000043
其中,YRe(k)为实部的正序;YRe(N-k)为实部的倒序;YIm(k)为虚部的正序;YIm(N-k)为虚部的倒序;
在计算过程中,保持四组计算同步进行,对正序数据和倒序数据中的每一组实部和虚部数据均计算上述四个中间因子,保证数据的实时性。
作为上述技术方案的改进之一,所述数据解算模块的具体过程为:
假设离散序列x(n)为一个2N点的实数序列,令x1(n)代表该序列中的偶数分量,x2(n)代表该序列中的奇数分量,偶数分量和奇数分量的点数均为N;
对于2N点的实数序列x(n),对其进行傅里叶变换FFT,得到:
Figure BDA0003208467250000044
其中,
Figure BDA0003208467250000045
综合以上公式,可以得到
Figure BDA0003208467250000051
根据积分时间确定累加的次数i;
将得到的X(k)1进行累加i次:
Figure BDA0003208467250000052
其中,Y为功率谱输出结果;
将得到的功率谱输出结果选取前半部分的结果作为输出结果,并通过调用FPGA中的RAM将其转换为串行模式,并写入FIFO,得到最终的功率谱结果。
本发明还提供基于FPGA的实时快速傅里叶变换谱仪的信号处理方法,该方法包括:
数据处理模块将串行数据转化为并行处理,得到并行处理后的数据;
数据排序模块对并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;
中间因子模块对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子以及虚部差因子,并根据定义的两个和因子以及两个差因子,计算四个中间因子;
数据解算模块根据计算得到的四个中间因子,实时获得最终的功率谱输出结果。
本发明与现有技术相比的有益效果是:
本发明提出的系统,在快速傅里叶变换的基础上,结合了并行处理方式和复数处理方式,利用FPGA实现实时的快速傅里叶变换,累加后从而得到输入信号的功率谱结果;解决了现有谱仪不能实时计算、体积庞大、系统稳定性差的问题,大大提高了信号处理的效率和速度。
附图说明
图1是本发明的一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统的结构示意图及其处理流程图;
图2是本发明的一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统的数据处理模块流程图;
图3是本发明的一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统的数据排序模块流程图;
图4是本发明的一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统的中间因子模块流程图;
图5是本发明的一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统的数据解算模块流程图;
图6是是本发明的一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统的快速傅里叶变换谱仪数据流程图。
具体实施方式
现结合附图和实例对本发明作进一步的描述。
本发明提供了基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,该系统通过FPGA实现对输入信号的实时处理,经过快速傅里叶变换谱仪,从而获得输入信号的功率谱结果。
该系统包括:数据处理模块、数据排序模块,中间因子模块和数据解算模块;
所述数据处理模块,用于将串行数据转化为并行处理,得到并行处理后的数据,保证数据的实时处理,体现数据的实时性;
具体地,假设离散序列x(n)为串行数据,该串行数据的长度为N,记为N点离散序列x(n),将N分解为两个整数R和T的乘积,且R和T均为2的整数次幂的形式;
N=RT (1)
对N点离散序列x(n),按先后顺序每两个实数点组成一个复数点,其中一个作为实部,另一个作为虚部,进而得到N/2个复数点,对离散序列x(n)做离散傅里叶变换处理,得到长度为N/2的复序列X(k):
Figure BDA0003208467250000061
其中,
Figure BDA0003208467250000062
j为虚数单位,其平方为-1;
采用列映射方式,将离散序列x(n)映射为矩形数组x(r,t):
n=Rt+r,0≤r≤R-1,0≤t≤T-1 (3)
其中,n为序列中的N个点;r为映射的行数;t为映射的列数;
采用行映射方式,将复序列X(k)映射为复序列矩形数组X(p,q):
k=Tp+q,0≤p≤R-1,0≤q≤T-1 (4)
其中,k为序列中的N个点;p为映射的行数;q为映射的列数;
整理后得到:
Figure BDA0003208467250000071
其中,
Figure BDA0003208467250000072
其中,
Figure BDA0003208467250000073
为整体旋转因子,即旋转因子的整体表达形式;
Figure BDA0003208467250000074
为固定数值1;
Figure BDA0003208467250000075
的上下标分别除以R可以化简为
Figure BDA0003208467250000076
Figure BDA0003208467250000077
的上下标分别除以T可以化简为
Figure BDA0003208467250000078
Figure BDA0003208467250000079
为单独的旋转因子;
对上式化简后得到:
Figure BDA00032084672500000710
其中,对于r行和t列的矩形数据x(r,t),按照每一行计算T点的傅里叶变换:
Figure BDA00032084672500000711
其中,r=0,1,...,R-1。
定义将旋转因子
Figure BDA00032084672500000712
与矩形数组F(r,q)进行数据对应相乘,得到新矩形数组G(r,q),该新矩形数组有r行和q列:
Figure BDA00032084672500000713
对于r行和q列的矩形数组G(r,q),按照每一列计算R点的傅里叶变换,得到并行处理后的数据:
Figure BDA00032084672500000714
其中,q=0,1,...,T-1。
其中,T点FFT计算,利用Xilinx的ISE软件中集成的FFT IP核实现相应的快速傅里叶变换的功能,为了对进入IP核的数据可以进行实时运算并提高运算速度,设计中选择流水线的工作模式,同时为了计算结果可以有更高的精度,选择全精度无压缩模式,最后将其按照自然顺序输出;
每一路T点FFT计算,输出数据都要乘以相应的复数旋转因子,利用MATLAB可以预先计算出复数旋转因子的结果,再将得到的值按每一行分别存储到不同的ROM中,这样省去了大量三角函数的计算,节省了资源和时间。因为复数旋转因子的实部和虚部的取值介于-1和+1之间,在数据计算时不方便定点运算,所以需要将计算得到的复数旋转因子定点化以提高计算精度。取整后正数保持不变,负数变为相应的补码。根据前两步已经得到的数据结果,调用乘法器便可以完成R点FFT模块输出的结果和相应复数旋转因子相乘的过程。
完成1次复数乘法需要4次实数乘法和2次实数加法,因为运算比较复杂,所以本设计选择直接调用复数乘法核来实现相关运算,以此实现定点化的过程,同时保证整个流程的实时处理。
所述数据排序模块,用于并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;通过FPGA内部的两个“乒乓”RAM实现,可以保证数据实时处理的延续性;
具体地,假设离散序列x(n)为一个2M点的实数序列,令x1(n)代表该序列中的偶数分量,x2(n)代表该序列中的奇数分量,偶数分量和基数分量的点数均为M;
则复序列y(n)=x1(n)+jx2(n),0≤n≤N-1;其中,j表示虚数单位,其平方为-1;
由于离散傅里叶变换是线性的,则对复序列y(n)进行离散傅里叶变换,得到变换后的复序列Y(k):
Y(k)=X1(k)+jX2(k)=YRe(k)+jYIm(k) (10)
其中,YRe(k)和YIm(k)分别代表了Y(k)的实部和虚部;
对x1(n)和x2(n)分别进行表示:
Figure BDA0003208467250000081
Figure BDA0003208467250000082
其中,y*为y的共轭对称;
则分别对x1(n)和x2(n)进行离散傅里叶变换DFT,得到X1(k)和X2(k):
Figure BDA0003208467250000083
Figure BDA0003208467250000084
再结合Y(k)=X1(k)+jX2(k)=YRe(k)+jYIm(k),得到:
Figure BDA0003208467250000085
Figure BDA0003208467250000086
对X1(k)和X2(k)进行正序排列,得到正序数据;对X1(k)和X2(k)进行倒序排列,得到倒序数据;
其中,正序数据和倒序数据中的数据个数均为M;
将正序数据中的第k个数据与倒序数据中的第k个数据一一对应,且保持同步;利用FPGA中的第一RAM和第二RAM分别存储需要正序和倒序的数据。
其中,第一RAM和第二RAM形成了FPGA中的“乒乓”RAM的双RAM存储方式,对得到的结果进行数据缓存和顺序调整,避免单RAM在实现过程中会出现数据未读取完毕就被覆盖的问题;另外,根据写入选择和读出选择可以保证数据的正确存储和读取,同时继续保持数据的实时处理。
所述中间因子模块,用于对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子以及虚部差因子,并根据定义的两个和因子以及两个差因子,计算四个中间因子;
具体地,根据正序数据和倒序数据定义实部和因子YRe1,实部差因子YRe2,虚部和因子YIm1以及虚部差因子YIm2,记为四个中间因子;
利用下式:
Figure BDA0003208467250000091
Figure BDA0003208467250000092
计算上述四个中间因子:
Figure BDA0003208467250000093
其中,YRe(k)为实部的正序;YRe(N-k)为实部的倒序;YIm(k)为虚部的正序;YIm(N-k)为虚部的倒序;
在计算过程中,保持四组计算同步进行,对正序数据和倒序数据中的每一组实部和虚部数据均计算上述四个中间因子,保证数据的实时性。
所述数据解算模块,用于根据计算得到的四个中间因子进行计算和累加,实时获得最终的功率谱输出结果。
具体地,假设离散序列x(n)为一个2N点的实数序列,令x1(n)代表该序列中的偶数分量,x2(n)代表该序列中的奇数分量,偶数分量和基数分量的点数均为N;
对于2N点的实数序列x(n),对其进行傅里叶变换FFT,得到:
Figure BDA0003208467250000101
其中,
Figure BDA0003208467250000102
综合以上公式,可以得到
Figure BDA0003208467250000103
根据积分时间确定累加的次数i;
将得到的X(k)1进行累加i次:
Figure BDA0003208467250000104
其中,Y为功率谱输出结果;例如需要累加的i为1000次时,那么对于每一次得到的X(k)1,都需要一直进行累加,直至1000次后累加输出的结果即为功率谱。
将得到的功率谱输出结果选取前半部分的结果作为输出结果,并通过调用FPGA中的RAM将其转换为串行模式,并写入FIFO,得到最终的功率谱结果。
本发明还提供基于FPGA的实时快速傅里叶变换谱仪的信号处理方法,该方法包括:
数据处理模块将串行数据转化为并行处理,得到并行处理后的数据;
数据排序模块对并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;
中间因子模块对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子以及虚部差因子,并根据定义的两个和因子以及两个差因子,计算四个中间因子;
数据解算模块根据计算得到的四个中间因子,实时获得最终的功率谱输出结果。
如图6所示,为快速傅里叶变换谱仪数据流程框图,快速傅里叶变换谱仪主要通过ADC和FPGA等芯片,利用核心算法完成相应的宽带信号处理,累加后从而得到功率谱的结果。高速数据在ADC内部经过多路复用之后,输出的数据和时钟为低电压差分信号,输入至FPGA的低电压差分数据和时钟首先通过Buffer转换成单端数据和时钟,随后数据进入FPGA,之后通过核心算法进行处理,经过一系列的拆分、整合和计算后可以得到每一包数据的结果,累加后通过串口上传至上位机。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,其特征在于,该系统包括:数据处理模块、数据排序模块,中间因子模块和数据解算模块;
所述数据处理模块,用于将串行数据转化为并行处理,得到并行处理后的数据;
所述数据排序模块,用于对并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;
所述中间因子模块,用于对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子,以及虚部差因子;并根据定义的两个和因子以及两个差因子,计算四个中间因子;
所述数据解算模块,用于根据计算得到的四个中间因子,实时获得最终的功率谱输出结果。
2.根据权利要求1所述的基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,其特征在于,所述数据处理模块的具体过程为:
假设离散序列x(n)为串行数据,该串行数据的长度为N,记为N点离散序列x(n),将N分解为两个整数R和T的乘积,且R和T均为2的整数次幂的形式;
N=RT (1)
对N点离散序列x(n),按先后顺序每两个实数点组成一个复数点,其中一个作为实部,另一个作为虚部,进而得到N/2个复数点,对离散序列x(n)做离散傅里叶变换处理,得到长度为N/2的复序列X(k):
Figure FDA0003208467240000011
其中,
Figure FDA0003208467240000012
j为虚数单位,其平方为-1;
采用列映射方式,将离散序列x(n)映射为矩形数组x(r,t):
n=Rt+r,0≤r≤R-1,0≤t≤T-1 (3)
其中,n为序列中的N个点;r为映射的行数;t为映射的列数;
采用行映射方式,将复序列X(k)映射为复序列矩形数组X(p,q):
k=Tp+q,0≤p≤R-1,0≤q≤T-1 (4)
其中,k为序列中的N个点;p为映射的行数;q为映射的列数;
整理后得到:
Figure FDA0003208467240000013
其中,
Figure FDA0003208467240000014
其中,
Figure FDA0003208467240000015
为整体旋转因子;
Figure FDA0003208467240000016
为固定数值1;
Figure FDA0003208467240000021
的上下标分别除以R可以化简为
Figure FDA0003208467240000022
Figure FDA0003208467240000023
的上下标分别除以T可以化简为
Figure FDA0003208467240000024
Figure FDA0003208467240000025
为单独的旋转因子;
对上式化简后得到:
Figure FDA0003208467240000026
其中,对于r行和t列的矩形数据x(r,t),按照每一行计算T点的傅里叶变换:
Figure FDA0003208467240000027
其中,r=0,1,...,R-1;
定义将旋转因子
Figure FDA0003208467240000028
与矩形数组F(r,q)进行数据对应相乘,得到新矩形数组G(r,q),该新矩形数组有r行和q列:
Figure FDA0003208467240000029
对于r行和q列的矩形数组G(r,q),按照每一列计算R点的傅里叶变换,得到并行处理后的数据:
Figure FDA00032084672400000210
其中,q=0,1,...,T-1。
3.根据权利要求1所述的基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,其特征在于,所述数据排序模块的具体过程为:
假设离散序列x(n)为一个2M点的实数序列,令x1(n)代表该序列中的偶数分量,x2(n)代表该序列中的奇数分量,偶数分量和基数分量的点数均为M;
则复序列y(n)=x1(n)+jx2(n),0≤n≤N-1;其中,j表示虚数单位,其平方为-1;
由于离散傅里叶变换是线性的,则对复序列y(n)进行离散傅里叶变换,得到变换后的复序列Y(k):
Y(k)=X1(k)+jX2(k)=YRe(k)+jYIm(k) (10)
其中,YRe(k)和YIm(k)分别代表了Y(k)的实部和虚部;
对x1(n)和x2(n)分别进行表示:
Figure FDA00032084672400000211
Figure FDA00032084672400000212
其中,y*为y的共轭对称;
则分别对x1(n)和x2(n)进行离散傅里叶变换,得到X1(k)和X2(k):
Figure FDA0003208467240000031
Figure FDA0003208467240000032
再结合Y(k)=X1(k)+jX2(k)=YRe(k)+jYIm(k),得到:
Figure FDA0003208467240000033
Figure FDA0003208467240000034
对X1(k)和X2(k)进行正序排列,得到正序数据;对X1(k)和X2(k)进行倒序排列,得到倒序数据;
其中,正序数据和倒序数据中的数据个数均为M;
将正序数据中的第k个数据与倒序数据中的第k个数据一一对应,且保持同步;利用FPGA中的第一RAM和第二RAM分别存储需要进行正序和倒序的数据。
4.根据权利要求1所述的基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,其特征在于,所述中间因子模块的具体过程为:
根据正序数据和倒序数据定义实部和因子YRe1,实部差因子YRe2,虚部和因子YIm1以及虚部差因子YIm2,记为四个中间因子;
利用下式:
Figure FDA0003208467240000035
Figure FDA0003208467240000036
计算上述四个中间因子:
Figure FDA0003208467240000037
其中,YRe(k)为实部的正序;YRe(N-k)为实部的倒序;YIm(k)为虚部的正序;YIm(N-k)为虚部的倒序;
在计算过程中,保持四组计算同步进行,对正序数据和倒序数据中的每一组实部和虚部数据均计算上述四个中间因子。
5.根据权利要求4所述的基于FPGA的实时快速傅里叶变换谱仪的信号处理系统,其特征在于,所述数据解算模块的具体过程为:
假设离散序列x(n)为一个2N点的实数序列,令x1(n)代表该序列中的偶数分量,x2(n)代表该序列中的奇数分量,偶数分量和奇数分量的点数均为N;
对于2N点的实数序列x(n),对其进行傅里叶变换FFT,得到:
Figure FDA0003208467240000041
其中,
Figure FDA0003208467240000042
综合以上公式,可以得到
Figure FDA0003208467240000043
根据积分时间确定累加的次数i;
将得到的X(k)1进行累加i次:
Figure FDA0003208467240000044
其中,Y为功率谱输出结果;
将得到的功率谱输出结果选取前半部分的结果作为输出结果,并通过调用FPGA中的RAM将其转换为串行模式,并写入FIFO,得到最终的功率谱结果。
6.一种基于FPGA的实时快速傅里叶变换谱仪的信号处理方法,其特征在于,该方法基于上述权利要求1-5中任一所述的基于FPGA的实时快速傅里叶变换谱仪的信号处理系统实现,该方法包括:
数据处理模块将串行数据转化为并行处理,得到并行处理后的数据;
数据排序模块对并行处理后的数据进行正序和倒序的排列,得到正序数据和倒序数据;
中间因子模块对正序数据和倒序数据定义实部和因子,实部差因子,虚部和因子以及虚部差因子,并根据定义的两个和因子以及两个差因子,计算四个中间因子;
数据解算模块根据计算得到的四个中间因子,实时获得最终的功率谱输出结果。
CN202110923913.0A 2021-08-12 2021-08-12 基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法 Pending CN115905782A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110923913.0A CN115905782A (zh) 2021-08-12 2021-08-12 基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110923913.0A CN115905782A (zh) 2021-08-12 2021-08-12 基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法

Publications (1)

Publication Number Publication Date
CN115905782A true CN115905782A (zh) 2023-04-04

Family

ID=86486859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110923913.0A Pending CN115905782A (zh) 2021-08-12 2021-08-12 基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法

Country Status (1)

Country Link
CN (1) CN115905782A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116719005A (zh) * 2023-08-10 2023-09-08 南京隼眼电子科技有限公司 基于fpga的定点数据处理方法、装置及存储介质
CN118260516A (zh) * 2024-05-31 2024-06-28 苏州元脑智能科技有限公司 适于fpga的数据序列的变换方法、装置、设备及介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116719005A (zh) * 2023-08-10 2023-09-08 南京隼眼电子科技有限公司 基于fpga的定点数据处理方法、装置及存储介质
CN116719005B (zh) * 2023-08-10 2023-10-03 南京隼眼电子科技有限公司 基于fpga的定点数据处理方法、装置及存储介质
CN118260516A (zh) * 2024-05-31 2024-06-28 苏州元脑智能科技有限公司 适于fpga的数据序列的变换方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN115905782A (zh) 基于fpga的实时快速傅里叶变换谱仪的信号处理系统及方法
CN110765709A (zh) 一种基于fpga的基2-2快速傅里叶变换硬件设计方法
CN101937424A (zh) 基于fpga实现高速fft处理的方法
CN111694027B (zh) 超大动态扩频信号捕获方法与装置
CN112014810A (zh) 基于fpga的电子侦察信号参数高精度测量方法
CN113377332B (zh) 一种基于线性分段的softmax硬件实现方法
KR101412646B1 (ko) 고속 푸리에 변환 회로 및 고속 푸리에 변환 방법
CN103646011A (zh) 一种基于线性调频z变换的信号频谱细化方法
CN113377340B (zh) 一种具有分数阶微积分运算和显示功能的数字示波器
CN113778940B (zh) 基于fpga的高精度可重构相位调整ip核
CN117076833B (zh) 一种基于fpga的单比特降维快速傅里叶变换方法
CN102436365A (zh) 一种高速线性频谱数据转换为对数数据的方法及装置
CN110674456B (zh) 一种信号采集系统的时频转换方法
CN205670191U (zh) 一种激光测风雷达的回波信号采集装置
CN117150310A (zh) 一种基于fpga的快速傅里叶变换频谱提取优化方法
CN108616265A (zh) 一种基于五模余数基的rns dwt滤波器组的电路结构
CN116192348A (zh) 基于fpga的梳状谱信号幅相高效提取方法
RU2717950C1 (ru) Высокоскоростное устройство быстрого преобразования фурье с бесконфликтным линейным доступом к памяти
CN112597432A (zh) 基于fft算法的复序列互相关在fpga上的加速实现方法及系统
RU196625U1 (ru) Высокоскоростное устройство быстрого преобразования фурье с бесконфликтным линейным доступом к памяти
CN112198365A (zh) 一种实时频谱监测设备的实现方法
CN113449256B (zh) 基于忆阻器的可编程fft方法及其电路结构
Jiahao et al. A FIR filter with variable order based on FPGA
CN114579080A (zh) 一种基于fpga的多点数互相关运算的加速实现方法
CN110568233A (zh) 带触发的表源一体同步动态畸变功率源及实现方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination