CN101847986B - 一种实现fft/ifft变换的电路及方法 - Google Patents
一种实现fft/ifft变换的电路及方法 Download PDFInfo
- Publication number
- CN101847986B CN101847986B CN2009101061938A CN200910106193A CN101847986B CN 101847986 B CN101847986 B CN 101847986B CN 2009101061938 A CN2009101061938 A CN 2009101061938A CN 200910106193 A CN200910106193 A CN 200910106193A CN 101847986 B CN101847986 B CN 101847986B
- Authority
- CN
- China
- Prior art keywords
- mux
- ram storer
- output terminal
- storer
- ram
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/26—Systems using multi-frequency codes
Abstract
本发明公开了一种实现FFT/IFFT变换的电路及方法,方法为:1)确定迭代次数m、第一和第二RAM的深度d1、ROM存储器的深度d2;2)将待变换的输入数据的前和后n/2部分分别存入第二和第一RAM;3)进行m次迭代蝶形运算:第1次迭代中,读取第一和第二RAM时采用倒位序读取,偶数次蝶形运算结果写入第一RAM,奇数次蝶形运算结果写入第二RAM;在第2次到第m-1次迭代中,采用正常位序读取第一和第二RAM,写回RAM的方式与第一次相同;在第m次迭代中,采用正常位序读取第一和第二RAM,写回RAM的位置与读取位置相同。采用本发明,可降低电路的复杂度,保持变换前后RAM内数据的存储顺序相同,减少额外的时间消耗。
Description
技术领域
本发明涉及数字信号处理领域,具体涉及一种实现FFT/IFFT变换(快速傅立叶变换/快速傅立叶反变换)的电路及方法。
背景技术
在数字信号处理中,经常需要对数据进行时域到频域的转换,此时一般使用FFT变换,从频域到时域转换时则使用IFFT变换。
FFT可以大大减少DFT(离散傅立叶变换)的计算量,对于N点DFT变换,其计算量为N2,基2的FFT的计算量为Nlog2N。
FFT变换有多种形式,如时域抽取/频域抽取,基2/基4/基8/分裂基等多种组合形式。FFT变换一般需要多次迭代才能完成,比如基2时域抽取64点FFT变换需要6次迭代。而对于每级迭代,又有不同的迭代方法。
基2变换最常见的迭代形式为:每个蝶形运算的输入数据和输出数据的存储地址相同,即同址迭代,如附图1所示。在硬件实现时,同址迭代可以节省RAM空间,但每级迭代形式不同,控制复杂。而其关键缺点是FFT前后RAM内数据的存储顺序不同,要参与下次FFT/IFFT时,参与首次迭代蝶形运算的两个数据不能同时读出,要花两个时钟分别读取,写入数据时也是如此,这浪费了时间资源。
另一种改进的基2迭代形式为:每级的迭代形式相同,如附图2所示,它降低了控制的复杂程度,但不是同址操作。它也有前者的缺点,即:FFT前后RAM内数据的存储顺序不同,它需要对数据重新进行排序,或者与前者一样,每两个时钟读取一次蝶形运算的数据。
发明内容
本发明所要解决的技术问题是提供一种新型的实现FFT/IFFT变换的硬件电路,以及实现FFT/IFFT变换的方法,降低电路的复杂度,保持变换前后RAM内数据的存储顺序相同,从而减少额外的时间消耗。
为解决上述技术问题,本发明采用以下解决方案:
一种实现FFT/IFFT变换的电路,包括:第一多路选择器,第二多路选择器,第一RAM存储器,第二RAM存储器,ROM存储器,第三多路选择器,第四多路选择器,复数乘法器,第一复数加法器,第二复数加法器;本电路包括两个数据输出端和两个数据输入端,所述两个数据输出端分别为第三多路选择器和第四多路选择器的输出端,或者第一RAM存储器和第二RAM存储器的输出端;
第一多路选择器的两个输入端分别与本电路的一个数据输入端和第一复数加法器的输出端连接;第二多路选择器的两个输入端分别与本电路的另一个数据输入端和第二复数加法器的输出端连接;第一多路选择器的输出端与第一RAM存储器的数据输入端连接;第二多路选择器的输出端与第二RAM存储器的数据输入端连接;第三多路选择器的两个输入端分别与第一RAM存储器的输出端以及0.5倍的第一RAM存储器的输出端连接;第四多路选择器的两个输入端分别与第二RAM存储器的输出端以及0.5倍的第二RAM存储器的输出端连接;复数乘法器的两个输入端分别与第三多路选择器的输出端和ROM存储器的输出端连接;第一复数加法器的两个输入端分别与第四多路选择器的输出端以及-1倍的复数乘法器的输出端连接;第二复数加法器的输入为第四多路选择器的输出以及复数乘法器的输出。
其中,所述第一多路选择器、第二多路选择器、第三多路选择器、第四多路选择器均为2选1的多路选择器。
一种实现FFT/IFFT变换的电路,包括:第一多路选择器,第二多路选择器,第一RAM存储器,第二RAM存储器,ROM存储器,第三多路选择器,第四多路选择器,复数乘法器,第一复数加法器,第二复数加法器;本电路包括两个数据输出端和两个数据输入端,所述两个数据输出端分别为第三多路选择器和第四多路选择器的输出端,或者第一RAM存储器和第二RAM存储器的输出端;
第一多路选择器的两个输入端分别与本电路的一个数据输入端和第三多路选择器的输出端连接;第二多路选择器的两个输入端分别与本电路的另一个数据输入端和第四多路选择器的输出端连接;第一多路选择器的输出端与第一RAM存储器的输入端连接;第二多路选择器的输出端与第二RAM存储器的输入端连接;复数乘法器的两个输入端分别与第一RAM存储器的输出端以及ROM存储器的输出端连接;第一复数加法器的两个输入端分别与第二RAM存储器的输出端及-1倍的复数乘法器的输出端连接;第二复数加法器的两个输入端分别与为复数乘法器的输出端及第二RAM存储器的输出端连接;第三多路选择器的两个输入端分别与第一复数加法器的输出端及0.5倍的第一复数加法器的输出端连接;第四多路选择器的两个输入端为第二复数加法器的输出端及0.5倍的第二复数加法器的输出端连接。
其中,所述第一多路选择器、第二多路选择器、第三多路选择器、第四多路选择器均为2选1的多路选择器。
一种实现FFT/IFFT变换的方法,包括:
(1)根据FFT/IFFT变换的输入数据的长度n,确定需要的迭代次数m、第一RAM存储器和第二RAM存储器的深度d1、ROM存储器的深度d2;
(2)将所述FFT/IFFT变换的输入数据的前n/2部分存入第二RAM存储器中,后n/2部分存入第一RAM存储器中;
(3)进行m次迭代蝶形运算:其中,
在第1次迭代中,读取第一RAM存储器和第二RAM存储器时,采用倒位序的顺序进行读取;迭代结果写回第一RAM存储器和第二RAM存储器,其中偶数次蝶形运算结果写入第一RAM存储器,奇数次蝶形运算结果写入第二RAM存储器;
在第2次到第m-1次迭代中,读取第一RAM存储器和第二RAM 存储器时,采用正常位序的顺序进行读取;写回第一RAM存储器和第二RAM存储器的方式与第一次迭代相同;
在第m次迭代中,读取第一RAM存储器和第二RAM存储器时,采用正常位序进行读取;写回第一RAM存储器和第二RAM存储器的位置与读取位置相同。
其中,所述步骤(1)中,所述迭代次数m为≥log2(n)的最小整数;第一RAM存储器和第二RAM存储器的深度d1=n;ROM存储器的深度d2=n/2或者n*m/2。
其中,所述步骤(2)中,所述FFT/IFFT变换的输入数据的前n/2部分/后n/2部分写入第二RAM存储器/第一RAM存储器的高区间或者低区间。
其中,所述步骤(3)中,在第1次至第m-1次迭代过程中,若本次迭代数据从第二RAM存储器/第一RAM存储器的高区间读出,则本次的迭代结果写入相应RAM存储器的低区间;若本次迭代数据从第二RAM存储器/第一RAM存储器的低区间读出,则本次的迭代结果写入相应RAM存储器的高区间。
本发明具有以下有益效果:
1)一般的FFT变换电路,变换前后,数据在RAM中的排列顺序方式不同,比如:输入正常序,输出倒位序;或输入倒位序,输出正常序。硬件在处理这些数据时,需要额外进行数据的排序,浪费了时间资源。而本发明在变换前后,数据在RAM中的存储顺序相同,即:输入输出都是正常序,不需要再进行排序,节省了时间消耗。
2)采用本发明的电路,输入数据、中间迭代数据、输出数据可存放于同一个RAM中,不需要使用多个RAM分别存储,节省了RAM消耗。在IC芯片中,RAM会占用大量的面积,减少芯片面积可以降低IC的成本。
3)本电路在每级迭代时,可以控制是否要进行数据右移,即除以2, 这不仅可适应FFT/IFFT两种模式,而且可以根据算法精度需要,做到中间运算位宽最低。减少运算位宽有许多好处,比如可以减少加法器、乘法器、RAM的大小,降低电路规模的消耗,节省芯片面积。
4)节省芯片面积还有附加的好处:降低功率消耗。目前不止终端芯片对功耗要求非常苛刻,随着系统集成度的不断提高,系统侧对功耗的要求也越来越高。
5)FFT每级迭代的关键在于:RAM的读写地址控制。如果每级的迭代形式不同,则每级的读写地址控制都不同。对于128点FFT来讲,需要7级迭代,则需要7种控制模式。本发明只有最后一级迭代方式与其他级的迭代不同,因此只有两种控制模式,这显著降低了电路的复杂度。
6)对于已有的技术来讲,将数据从正常序排列为倒位序,或将倒位序排列为正常序,不止要消耗额外的时间,也需要额外的电路来处理。由于本电路不需要这做这个工作,因此也不需要额外的电路,这也降低了电路的复杂度。
附图说明
图1为基2同址迭代FFT示意图;
图2为基2各级相同迭代FFT示意图;
图3为本发明的一种电路结构框图;
图4为本发明的另一种电路结构框图;
图5为本发明的FFT迭代示意图;
图6为本发明的方法流程图;
图7为具体实施例128点FFT数据输入存储示意图;
图8为具体实施例128点FFT中间迭代数据时序图;
图9为具体实施例128点FFT中间迭代数据存储示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明:
请参阅图3,该图所示为本发明的实现FFT/IFFT变换的电路,包括:多路选择器(A),多路选择器(B),RAM存储器1(C),RAM存储器0(D),ROM存储器(E),多路选择器(F),多路选择器(G),复数乘法器(H),复数加法器(J),复数加法器(K);本电路的输出为多路选择器(F)和多路选择器(G)的数据输出,或者RAM存储器1(C)和RAM存储器0(D)的数据输出;本电路有两个数据输入端,分别连接到多路选择器(A)和多路选择器(B);
其中,FFT/IFFT的一个数据输入端和复数加法器(J)的输出端分别与多路选择器(A)的两个输入端相连;FFT/IFFT的另一个数据输入端和复数加法器(K)的输出端分别与多路选择器(B)的两个输入端相连;多路选择器(A)的输出端连接RAM存储器1(C)的数据输入端;多路选择器(B)的输出端连接RAM存储器0(D)的数据输入端;RAM存储器1(C)的输出端以及0.5倍的RAM存储器1(C)的输出端分别与多路选择器(F)的两个输入端相连;RAM存储器0(D)的输出端以及0.5倍的RAM存储器0(D)的输出端分别与多路选择器(G)的两个输入端相连;多路选择器(F)的输出端和ROM存储器(E)的输出端分别与复数乘法器(H)的两个输入端相连;多路选择器(G)的输出端以及-1倍的复数乘法器(H)的输出端分别与复数加法器(J)的两个输入端相连;多路选择器(G)的输出端以及复数乘法器(H)的输出端分别与复数加法器(K)的两个输入端相连。
该电路中,多路选择器(F)和多路选择器(G)也可放在复数加法器(J)和复数加法器(K)后面,如附图4所示。采用图3或图4所示电路实现的FFT迭代如图5所示。图3和图4中,2选1的多路选择器为优选方式。
请参阅图6,该图所示为本发明的实现FFT/IFFT变换的方法,具体包括以下步骤:
步骤601、根据FFT/IFFT变换的长度n,确定需要迭代的次数m以及RAM存储器1(C),RAM存储器0(D)的深度d1和ROM存储器(E)的深度d2。
m为≥log2(n)的最小整数。d1等于n,即RAM存储器1(C)和RAM存储器0(D)进行乒乓存储。ROM(E)中存储每级迭代需要的旋转因子。ROM(E)的深度d2可以为n/2,此时每级迭代读取ROM(E)时,地址生成会复杂一些;ROM(E)的深度d2也可以为n*m/2,即分别保存各级迭代的旋转因子,此时每级迭代读取ROM(E)时,地址生成很简单。
步骤602、将FFT/IFFT输入数据的前n/2部分存入RAM存储器0(D)中,后n/2部分存入RAM存储器1(C)中,存储顺序分别为0,1,2,~,n/2-1,和n/2,n/2+1,~,n-1。
该步骤中,FFT/IFFT输入数据的前n/2部分和后n/2部分可分别存入RAM存储器0(D)和RAM存储器1(C)的高区间,也可分别存入RAM存储器0(D)和RAM存储器1(C)的低区间,还可分别存入RAM存储器0(D)的高区间/低区间和RAM存储器1(C)的低区间/高区间。
步骤603、第一次迭代中,读取RAM存储器1(C)和RAM存储器0(D)时,采用倒位序的顺序进行读取;迭代结果写回RAM存储器1(C)和RAM存储器0(D),其中0,2,4,...等偶数次蝶形运算结果写入RAM存储器1(C),1,3,5,...等奇数次蝶形运算结果写入RAM存储器0(D)。如果本次迭代数据从高区间读出,则迭代结果写入低区间,反之则写入高区间。
步骤604、第2次到第m-1次迭代中,读取RAM存储器1(C)和 RAM存储器0(D)时,采用正常位序,即地址从0,1,2,3,4...,一直递增进行读取;写回RAM存储器1(C)和RAM存储器0(D)的方式与步骤603相同。如果本次迭代数据从高区间读出,则迭代结果写入低区间,反之则写入高区间。
步骤605、最后一次迭代m中,读取RAM存储器1(C)和RAM存储器0(D)时,采用正常位序进行读取;写回RAM存储器1(C)和RAM存储器0(D)的位置与读取位置相同。本次迭代由于是原址变换,则迭代结果可写入原区间,也可写入另外一个区间。
经过m次迭代后,FFT/IFFT变换结果即存储于RAM存储器1(C)和RAM存储器0(D)中。
下面以128点FFT为例,详细讲解本发明的实现方法。
IFFT变换的原理与FFT相同,只是每级迭代结果或输入数据除以2。对于128点IFFT来讲,7级迭代,共需除以128。在实际应用时,可以跟FFT结合起来运用,将部分除以2的处理移动到FFT中,比如在128点FFT的7级迭代的3次迭代中除以2,则只需要在IFFT的4次迭代中除以2。这样处理的好处是可以减小数据中间运算的位宽。
在本实例中,n=128,所以RAM存储器1(C)和RAM存储器0(D)的深度d1为128,m=log2(n)=log2(128)=7,ROM存储器(E)的深度d2优选为n*m/2=128×7/2=448。
输入数据的前64个数据存入RAM存储器0(D)中,后64个数据存入RAM存储器1(C)中,存储顺序分别为0,1,2,~,63,和64,65,~,127。此处以都存储于低区间为例。如附图7所示。
第一次迭代中,读取RAM存储器1(C)和RAM存储器0(D)时,采用倒位序进行读取;迭代结果写回RAM存储器1(C)和RAM存储器0(D)的高区间,其中0,2,4,...等偶数次蝶形运算结果写入RAM 存储器1(C),1,3,5,...等奇数次蝶形运算结果写入RAM存储器0(D)。倒位序读取时,地址仍先按0,1,2,~的方式递增,然后将其高低bit逆排,送给RAM存储器即可。其实现时序如附图8所示。
第2次到第6次迭代中,读取RAM存储器1(C)和RAM存储器0(D)时,采用正常位序进行读取;写回RAM存储器1(C)和RAM存储器0(D)的方式与第一次迭代相同。注意的是数据读出和写入的空间不同,要进行乒乓切换。读取RAM存储器1(C)和RAM存储器0(D)的顺序如图9所示,每个时钟在RAM存储器1(C)和RAM存储器0(D)中各读取一个数据。
最后一次迭代,即第7次迭代中,读取RAM存储器1(C)和RAM存储器0(D)时,采用正常位序进行读取;写回RAM存储器1(C)和RAM存储器0(D)的位置与读取位置相同,即可以写入低区间的原位置,也可写入到高区间的相应位置上。本次迭代后,FFT的输出结果写入RAM存储器0和RAM存储器1中。这些输出数据在RAM存储0和RAM存储器1中的存储顺序与FFT变换前输入数据的存储顺序相同。
对于这7次迭代来讲,RAM存储器的读写地址控制总结如下:读取时,第一次迭代采用倒位序读取,其他6次迭代采用正常位序读取。写入时,前6次迭代的写入方式相同,最后一次迭代与前6次不同。
ROM(E)中保存了各级迭代的旋转因子,每级迭代读取ROM(E)时,第一次迭代读取地址0~63,第二次迭代读取64~127,...,第7次读取384~447即可。在实际应用中,ROM(E)也可以用RAM替代,由软件配置旋转因子。
在本实例中,选择在第2/4/6级迭代中,对输入数据除以2,则在对应的IFFT中,可以在1/3/5/7级迭代中除以2。同时可以根据算法精度需要选择在任意级除以2。
通过上面的操作,经过7次迭代后,FFT变换的结果存储于RAM 存储器1(C)和RAM存储器0(D)中。当然也可以在第7次迭代中,直接输出给其他模块。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (8)
1.一种实现FFT/IFFT变换的电路,其特征在于,包括:第一多路选择器,第二多路选择器,第一RAM存储器,第二RAM存储器,ROM存储器,第三多路选择器,第四多路选择器,复数乘法器,第一复数加法器,第二复数加法器;本电路包括两个数据输出端和两个数据输入端,所述两个数据输出端分别为第三多路选择器和第四多路选择器的输出端,或者第一RAM存储器和第二RAM存储器的输出端;
第一多路选择器的两个输入端分别与本电路的一个数据输入端和第一复数加法器的输出端连接;第二多路选择器的两个输入端分别与本电路的另一个数据输入端和第二复数加法器的输出端连接;第一多路选择器的输出端与第一RAM存储器的数据输入端连接;第二多路选择器的输出端与第二RAM存储器的数据输入端连接;第三多路选择器的两个输入端分别与第一RAM存储器的输出端以及0.5倍的第一RAM存储器的输出端连接;第四多路选择器的两个输入端分别与第二RAM存储器的输出端以及0.5倍的第二RAM存储器的输出端连接;复数乘法器的两个输入端分别与第三多路选择器的输出端和ROM存储器的输出端连接;第一复数加法器的两个输入端分别与第四多路选择器的输出端以及-1倍的复数乘法器的输出端连接;第二复数加法器的输入为第四多路选择器的输出以及复数乘法器的输出。
2.如权利要求1所述的实现FFT/IFFT变换的电路,其特征在于,所述第一多路选择器、第二多路选择器、第三多路选择器、第四多路选择器均为2选1的多路选择器。
3.一种实现FFT/IFFT变换的电路,其特征在于,包括:第一多路选择器,第二多路选择器,第一RAM存储器,第二RAM存储器,ROM存储器,第三多路选择器,第四多路选择器,复数乘法器,第一复数加法器,第二复数加法器;本电路包括两个数据输出端和两个数据输入端,所述两个数据输出端分别为第三多路选择器和第四多路选择器的输出端,或者第一RAM存储器和第二RAM存储器的输出端;
第一多路选择器的两个输入端分别与本电路的一个数据输入端和第三多路选择器的输出端连接;第二多路选择器的两个输入端分别与本电路的另一个数据输入端和第四多路选择器的输出端连接;第一多路选择器的输出端与第一RAM存储器的输入端连接;第二多路选择器的输出端与第二RAM存储器的输入端连接;复数乘法器的两个输入端分别与第一RAM存储器的输出端以及ROM存储器的输出端连接;第一复数加法器的两个输入端分别与第二RAM存储器的输出端及-1倍的复数乘法器的输出端连接;第二复数加法器的两个输入端分别与为复数乘法器的输出端及第二RAM存储器的输出端连接;第三多路选择器的两个输入端分别与第一复数加法器的输出端及0.5倍的第一复数加法器的输出端连接;第四多路选择器的两个输入端为第二复数加法器的输出端及0.5倍的第二复数加法器的输出端连接。
4.如权利要求3所述的实现FFT/IFFT变换的电路,其特征在于,所述第一多路选择器、第二多路选择器、第三多路选择器、第四多路选择器均为2选1的多路选择器。
5.一种实现FFT/IFFT变换的方法,其特征在于,包括:
(1)根据FFT/IFFT变换的输入数据的长度n,确定需要的迭代次数m、第一RAM存储器和第二RAM存储器的深度d1、ROM存储器的深度d2;
(2)将所述FFT/IFFT变换的输入数据的前n/2部分存入第二RAM存储器中,后n/2部分存入第一RAM存储器中;
(3)进行m次迭代蝶形运算:其中,
在第1次迭代中,读取第一RAM存储器和第二RAM存储器时,采用倒位序的顺序进行读取;迭代结果写回第一RAM存储器和第二RAM存储器,其中偶数次蝶形运算结果写入第一RAM存储器,奇 数次蝶形运算结果写入第二RAM存储器;
在第2次到第m-1次迭代中,读取第一RAM存储器和第二RAM存储器时,采用正常位序的顺序进行读取;写回第一RAM存储器和第二RAM存储器的方式与第一次迭代相同;
在第m次迭代中,读取第一RAM存储器和第二RAM存储器时,采用正常位序进行读取;写回第一RAM存储器和第二RAM存储器的位置与读取位置相同。
6.如权利要求5所述的实现FFT/IFFT变换的方法,其特征在于,所述步骤(1)中,所述迭代次数m为≥log2(n)的最小整数;第一RAM存储器和第二RAM存储器的深度d1=n;ROM存储器的深度d2=n/2或者n*m/2。
7.如权利要求5或6所述的实现FFT/IFFT变换的方法,其特征在于,所述步骤(2)中,所述FFT/IFFT变换的输入数据的前n/2部分/后n/2部分写入第二RAM存储器/第一RAM存储器的高区间或者低区间。
8.如权利要求7所述的实现FFT/IFFT变换的方法,其特征在于,所述步骤(3)中,在第1次至第m-1次迭代过程中,若本次迭代数据从第二RAM存储器/第一RAM存储器的高区间读出,则本次的迭代结果写入相应RAM存储器的低区间;若本次迭代数据从第二RAM存储器/第一RAM存储器的低区间读出,则本次的迭代结果写入相应RAM存储器的高区间。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101061938A CN101847986B (zh) | 2009-03-27 | 2009-03-27 | 一种实现fft/ifft变换的电路及方法 |
CN2009801579127A CN102342071A (zh) | 2009-03-27 | 2009-12-11 | 一种实现fft/ifft变换的电路及方法 |
EP09842105.0A EP2408158B1 (en) | 2009-03-27 | 2009-12-11 | Circuit and method for implementing fft/ifft transform |
PCT/CN2009/075525 WO2010108371A1 (zh) | 2009-03-27 | 2009-12-11 | 一种实现fft/ifft变换的电路及方法 |
US13/258,684 US8843540B2 (en) | 2009-03-27 | 2009-12-11 | Circuit and method for implementing FFT/IFFT |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101061938A CN101847986B (zh) | 2009-03-27 | 2009-03-27 | 一种实现fft/ifft变换的电路及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101847986A CN101847986A (zh) | 2010-09-29 |
CN101847986B true CN101847986B (zh) | 2012-06-06 |
Family
ID=42772468
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101061938A Expired - Fee Related CN101847986B (zh) | 2009-03-27 | 2009-03-27 | 一种实现fft/ifft变换的电路及方法 |
CN2009801579127A Pending CN102342071A (zh) | 2009-03-27 | 2009-12-11 | 一种实现fft/ifft变换的电路及方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801579127A Pending CN102342071A (zh) | 2009-03-27 | 2009-12-11 | 一种实现fft/ifft变换的电路及方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8843540B2 (zh) |
EP (1) | EP2408158B1 (zh) |
CN (2) | CN101847986B (zh) |
WO (1) | WO2010108371A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102342071A (zh) * | 2009-03-27 | 2012-02-01 | 中兴通讯股份有限公司 | 一种实现fft/ifft变换的电路及方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176950B (zh) * | 2011-12-20 | 2017-04-05 | 中国科学院深圳先进技术研究院 | 实现fft/ifft变换的电路及方法 |
CN102541813B (zh) * | 2011-12-31 | 2014-11-05 | 中国科学院自动化研究所 | 一种多粒度并行fft蝶形计算的方法及相应的装置 |
CN102411557B (zh) * | 2011-12-31 | 2014-06-25 | 中国科学院自动化研究所 | 多粒度并行fft计算装置 |
CN103544111B (zh) * | 2013-10-08 | 2016-06-01 | 北京理工大学 | 一种基于实时性处理的混合基fft方法 |
KR102338863B1 (ko) | 2015-09-09 | 2021-12-13 | 삼성전자주식회사 | 연산을 제어하기 위한 장치 및 방법 |
CN106970895B (zh) * | 2016-01-14 | 2023-10-03 | 普天信息技术有限公司 | 基于fpga的fft装置及方法 |
CN105656451B (zh) * | 2016-01-26 | 2018-07-03 | 北京空间飞行器总体设计部 | 一种基于频域处理的扩频信号匹配滤波系统及方法 |
CN107291658B (zh) * | 2016-04-13 | 2020-09-11 | 南京中兴软件有限责任公司 | 一种数据信号的处理方法及装置 |
US10140091B2 (en) | 2016-09-27 | 2018-11-27 | Altera Corporation | Integrated circuits with specialized processing blocks for performing floating-point fast fourier transforms and complex multiplication |
CN111596228B (zh) * | 2020-07-24 | 2020-10-09 | 宁波均联智行科技有限公司 | 漏电检测方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717620A (en) * | 1995-10-24 | 1998-02-10 | Airnet Communications Corporation | Improved-accuracy fast-Fourier-transform butterfly circuit |
CN101136891A (zh) * | 2007-08-09 | 2008-03-05 | 复旦大学 | 流水线结构的3780点快速傅里叶变换处理器 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69837299T2 (de) | 1997-01-22 | 2007-06-28 | Matsushita Electric Industrial Co., Ltd., Kadoma | System und Verfahren zur schnellen Fourier-Transformation |
US6122703A (en) * | 1997-08-15 | 2000-09-19 | Amati Communications Corporation | Generalized fourier transform processing system |
DE19906868C1 (de) * | 1999-02-18 | 2000-05-04 | Siemens Ag | Verfahren und Vorrichtung zum Berechnen einer diskreten orthogonalen Transformation wie FFT oder IFFT |
US7062523B1 (en) * | 2000-08-01 | 2006-06-13 | Analog Devices, Inc. | Method for efficiently computing a fast fourier transform |
EP1516467B1 (en) * | 2002-06-27 | 2023-04-26 | Samsung Electronics Co., Ltd. | Modulation apparatus using mixed-radix fast fourier transform |
CN101083643A (zh) | 2006-05-31 | 2007-12-05 | 中国科学院微电子研究所 | 一种低存储器开销的混合基fft处理器及其方法 |
US20080071848A1 (en) * | 2006-09-14 | 2008-03-20 | Texas Instruments Incorporated | In-Place Radix-2 Butterfly Processor and Method |
CN101847986B (zh) | 2009-03-27 | 2012-06-06 | 中兴通讯股份有限公司 | 一种实现fft/ifft变换的电路及方法 |
-
2009
- 2009-03-27 CN CN2009101061938A patent/CN101847986B/zh not_active Expired - Fee Related
- 2009-12-11 CN CN2009801579127A patent/CN102342071A/zh active Pending
- 2009-12-11 US US13/258,684 patent/US8843540B2/en active Active
- 2009-12-11 WO PCT/CN2009/075525 patent/WO2010108371A1/zh active Application Filing
- 2009-12-11 EP EP09842105.0A patent/EP2408158B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717620A (en) * | 1995-10-24 | 1998-02-10 | Airnet Communications Corporation | Improved-accuracy fast-Fourier-transform butterfly circuit |
CN101136891A (zh) * | 2007-08-09 | 2008-03-05 | 复旦大学 | 流水线结构的3780点快速傅里叶变换处理器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102342071A (zh) * | 2009-03-27 | 2012-02-01 | 中兴通讯股份有限公司 | 一种实现fft/ifft变换的电路及方法 |
US8843540B2 (en) | 2009-03-27 | 2014-09-23 | Zte Corporation | Circuit and method for implementing FFT/IFFT |
Also Published As
Publication number | Publication date |
---|---|
CN102342071A (zh) | 2012-02-01 |
WO2010108371A1 (zh) | 2010-09-30 |
EP2408158A1 (en) | 2012-01-18 |
US20120016923A1 (en) | 2012-01-19 |
US8843540B2 (en) | 2014-09-23 |
CN101847986A (zh) | 2010-09-29 |
EP2408158A4 (en) | 2017-10-25 |
EP2408158B1 (en) | 2018-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101847986B (zh) | 一种实现fft/ifft变换的电路及方法 | |
CN100435090C (zh) | 可扩展高基蒙哥马利模乘算法及其电路结构 | |
CN103870438B (zh) | 一种利用数论变换计算循环卷积的电路结构 | |
US20080208944A1 (en) | Digital signal processor structure for performing length-scalable fast fourier transformation | |
CN109977347B (zh) | 一种支持多模式配置的可重构fft处理器 | |
US11650824B2 (en) | Multiplier-accumulator circuitry having processing pipelines and methods of operating same | |
WO2018027706A1 (zh) | Fft处理器及运算方法 | |
Le Ba et al. | An area efficient 1024-point low power radix-2 2 FFT processor with feed-forward multiple delay commutators | |
WO2018129930A1 (zh) | 快速傅里叶变换处理方法、装置和计算机存储介质 | |
US9262378B2 (en) | Methods and devices for multi-granularity parallel FFT butterfly computation | |
CN112307421A (zh) | 一种基4频率抽取快速傅里叶变换处理器 | |
CN103020014A (zh) | 一种大点数fft的实现方法 | |
US9268744B2 (en) | Parallel bit reversal devices and methods | |
CN101566941B (zh) | 一种基于静态存储器的fifo存储单元 | |
CN212112470U (zh) | 一种矩阵乘法计算电路 | |
CN113111300B (zh) | 具有优化资源消耗的定点fft实现系统 | |
Patil et al. | An area efficient and low power implementation of 2048 point FFT/IFFT processor for mobile WiMAX | |
CN100527109C (zh) | 存储器访问装置 | |
CN101236488B (zh) | 协同分布式的处理方法及装置 | |
CN105893326B (zh) | 基于fpga实现65536点fft的装置和方法 | |
CN102411491B (zh) | 一种用于并行fft计算的数据存取方法及装置 | |
CN111368250B (zh) | 基于傅里叶变换/逆变换的数据处理系统、方法及设备 | |
CN108920097B (zh) | 一种基于交织存储的三维数据处理方法 | |
CN113034344B (zh) | 一种低存储资源开销的二维fft方法 | |
CN104734668A (zh) | 一种插值滤波器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120606 Termination date: 20200327 |