使用2<sup>n</sup>点FFT计算非2<sup>n</sup>点DFT的处理装置、方法和系统的制作方法

文档序号:6570856阅读:495来源:国知局
专利名称:使用2<sup>n</sup>点FFT计算非2<sup>n</sup>点DFT的处理装置、方法和系统的制作方法
技术领域
本发明涉及一种如权利要求1的前序部分所述的使用2n点FFT计算非2n点DFT的处理方法、处理装置和使用2n点FFT计算非2n点DFT的处理系统。

背景技术
离散傅立叶变换(DFT)在离散时间信号处理算法和系统的分析、设计和实现中扮演了重要的角色。在中国陆地数字电视广播系统中,IFFT/FFT(FFT快速傅立叶变换,IFFT逆FFT)设备对于时域同步正交频分多路复用(TDS-OFDM)调制解调器发送和接收数据是不可缺少的。
对于2n点DFT可以有效地使用基2或基4FTT。但是对于诸如在3780点IFFT/FFT处理器中运行的非2n点DFT,不能直接应用在2n点DFT中使用的普通FFT算法,而非2n点DFT是TDS-OFDM中至关重要的部分。替代的方式是如下所描述的,通过把3780分解成9×7×3×5×4,并且使用用于计算7,9,3,5,4点DFT的Winograd傅立叶变换算法和Good-Thomas素因数算法。在“Terrestrial digitalmultimedia/television broadcasting system”(CN 00123597.4)中提出了3870点IFFT/FFT的一种算法和它的实现。
图8示出了具有N个子载波的通用OFDM系统,其中N点IFFT/FFT处理器在OFDM调制/解调处理中扮演核心角色。要经由多径信道56无线链路发送的数据d的数据流被输入到串行/并行装置50中。串行/并行装置50将数据多路复用到N个子载波上。这种N个子载波上的数据被提供给QAM调制器51,QAM调制器51对数据进行调制。QAM调制器51将调制后的数据X(k)发送到N点IFFT装置52。傅立叶变换后的数据x(n)经由n条数据线被提供给装置53,装置53将保护间隔插入到傅立叶变换后的数据流中。由该装置53输出的数据被转发到并行/串行装置54,并行/串行装置54将这些数据多路复用到一条单个数据线上。由并行/串行装置54输出的数据流被转发到D/A和发送滤波装置55(D/A数/模转换)。经过数/模转换和过滤后的数据经由天线A使用多径信道56从发送装置被发送到接收装置的天线A。在接收装置中,接收到的数据由接收滤波器和模/数转换装置57进行滤波和模/数转换。经过滤波和数/模转换后的数据被转发到用于去除保护间隔的装置58。该装置的第二部分被构造成串行/并行装置59,用于将数据x’(n)多路复用到n条数据线上。这些被多路复用的数据x’(n)被转发到N点FFT装置60,N点FFT装置60输出傅立叶变换后的数据X’(k)。这些傅立叶变换后的数据X’(k)被转发到均衡器61。在均衡之后,数据被提供给QAM解调装置62,用于对N个子载波上的数据进行解调。经过解调后的数据被转发到并行/串行装置63,以对数据进行解复用并输出数据。
在发射器端,在IFFT之前经过解调的频域数据是X(k),在N点IFFT之后得到傅立叶变换后的时域数据x(n)。在接收器端,已接收并经过多路复用的时域数据是x’(n),在N点FFT之后得到傅立叶变换后的频域数据X’(k)。如果经过信道和调制/解调过程后没有发生失真,则在接收装置中经过多路复用的时域数据x’(n)与在发送装置中经过傅立叶变换的时域数据x(n)相同,并且在接收装置中经过傅立叶变换的频域数据X’(k)也应该与在发送装置中经过调制的频域数据X(k)相同。
N点数据序列的DFT被定义为 N点数据序列的逆DFT被定义为 使用以上公式的快速算法进行DFT和逆DFT,结果将较好,诸如N是2的整数幂。然而,如果N不是一个2n数,就不容易找到一种硬件实现的有效快速算法,如果例如N是3780。此外,这些非2n点DFT快速算法不是对于任意点FFT都是通用的。
因此,使用2n点FFT来计算非2n点DFT就是一种很自然的考虑。但是,在使用2n点FFT时,必须要注意这些2n点FFT结果应该被转换成非2n点DFT结果,在转换中具有可忽略的精度损失并且不会显著增加计算负担。
当N不是2n数时,计算N点DFT有许多不同的方案。当N是合数时,即当N=N1N2时,为了计算N点DFT,通常的方法使用Cooley-Tukey算法分解问题,该算法首先计算长度为N2的N1个变换,然后计算长度为N1的N2个变换。对N1和N2点DFT递归地应用分解,直到问题可以使用几个算法的组合解决,包括Cooley-Tukey的变体、素因数算法和分裂基算法的不同方案。
当N是素数时,使用Rader的算法将N点问题分解成三个(N-1)点问题。然后使用以上描述的Cooley-Tukey分解以计算(N-1)点DFT。
对于给定的合数N,有许多分解它的方法。以N=3780为例,分解可以如下进行 3780=60×63;60=3×5×4,63=9×7, 3780=63×60;63=3×3×7,60=4×5×3, 3780=20×189;20=4×5,189=9×3×7, 等等。
在现有的解法中,3780IFFT/FFT的一种可能的实现方式在图9中示出,图9公开了3780IFFT/FFT的一种可能的实现方式。输入数据被转发到第一块70。在该块70中,输入数据被转发到提供7点WFTA(Winograd傅立叶变换算法)的第一子块71。此后,该数据被转发到提供9点WFTA的另一个块72,此后,数据被提供给解扰(unscrambling)装置73。从该第一块70输出的解扰数据被转发到循环乘法器装置74。循环的数据被转发到提供60点PFA的第二块75。在该第二块75中,数据首先被转发到提供3点WFTA的子块76。输出的数据被转发到提供5点WFTA的另一个子块77。此后,数据被转发到提供4点WFTA的另一个子块78。从该子块78输出的数据被转发到另一个解扰装置79。解扰后的数据被提供给一个记录器80,该记录器80将数据输出到输出端。
在图10中描述了少点(3,4,5,7,9)DFT的基本结构,其应用Winograd傅立叶变换算法。输入数据被转发到多个并行设置的AC装置。并行AC装置被提供有系数I和控制信号。从AC装置输出的数据被转发到多路复用器MUX。经过多路复用的数据被转发到由系数D和控制装置控制的实数型乘法器装置。由该乘法器装置输出的数据被转发到分别由系数O和控制信号控制的多个并行AC装置。从这些AC装置输出的数据被转发到另一个多路复用器MUX,所述的另一个多路复用器MUX将这样的数据多路复用到数据输出线路上。
目前为止,现有解决方案的缺陷是很明显的。首先,计算没有统一的过程,诸如在基4或基22n点FFT中的蝶形运算单元。对于每个非2n点DFT有不同的基本处理单元,并且它们的计算也是无规律的。因此,对于每个非2n点DFT,必须设计不同的硬件体系结构,即该体系结构对于其它点数的DFT是不可用的。其次,如果N很大并且只能分解成许多相关的质因数,计算可能是非常复杂的,并且不适于以硬件实现。
技术问题 本发明的目的是提供使用2n点FFT计算非2n点FFT的另一种解决方案。
技术方案 该目的通过具有权利要求1所述特征的使用2n点FFT计算非2n点DFT的处理方法,通过具有权利要求7所述特征的使用2n点FFT计算非2n点DFT的处理装置,以及通过具有权利要求19所述特征的使用2n点FFT计算非2n点DFT的处理系统得以解决。优选的方面和实施例是从属权利要求的主题。
特别地,提供了一种使用2n点FFT计算非2n点DFT的处理装置,包括采样率转换器,被配置为生成2n点FFT结果的2n点FFT装置,和被配置为形成非2n点DFT的最终结果的频率补偿单元。
此外,提供了一种用于使用2n点FFT计算非2n点DFT的方法,包括以下方法步骤对输入数据进行采样率转换,之后使用2n点FFT获取2n点FFT结果,之后使用频率补偿形成非2n点DFT的最终结果。
有益效果 因此,提供了用于利用2n点FFT执行非2n点IFFT/FFT的另一种方法和装置或设备。该设备的体系结构是有规律的,并且包括进行采样率转换、内插、2n FFT和频率补偿的部件。这种设备的复杂性相对较低,并且计算结果足够精确地用于在TDS-OFDM系统中使用。
因此,提供了一种使用2n点FFT计算非2n点FFT、例如从4096到3780的更好的解决方案。通过应用采样率转换、内插和频率补偿,该方法和装置提供了3780点IFFT/FFT结果,该结果的精确度足以适用于TDS-OFDM调制解调器。
特别地,采样率转换器包括多相滤波器和内插器,实现低通滤波器和采样转换的功能。换而言之,在采样率转换期间,实现低通滤波器多相滤波和内插。
特别地,剪切和移位装置被配置为剪切和移位2n点FFT的结果,以形成非2n点频域数据,其中频率补偿单元被配置为通过相乘对经过剪切和移位的数据进行频率补偿。这使得可以对2n点FFT的结果进行剪切和移位,从而形成非2n点频域数据,其中通过相乘对经过剪切和移位的数据执行频率补偿,以形成非2n点FFT的最终结果。
特别地,查找表或其它形式的计算机制被配置为或被用于在频率补偿单元中提供比例因数。
特别地,处理装置和方法被配置为包括中国陆地数字电视广播系统功能的OFDM站,并且被配置为使用任何非2n点DFT通过2n点FFT完成OFDM调制/解调。
特别地,提供给采样率转换的输入数据被重复以形成周期序列,重复的重复长度是可变的,但通常与在采样率转换中的多相滤波器的抽头计数相关。特别地,重复的数据是输入数据的结尾部分,其被填充到输入数据的开始,反之亦然。
特别地,从2n点FFT得出的频率数据根据以下公式被剪切和移位 和 其中N1是非2n点数,N2是2n点数,N2>N1,并且

是2n点FFT的输出,其中根据优选实施例改变剪切位置。由于FFT和低通滤波器的对称特性,可以稍微改变剪切位置。
特别地,从2n点FFT得出的经过剪切和移位的数据通过比例因子来缩放,该比例因子与多相滤波器和采样率转换的内插器的频率响应相对应。
特别地,频率补偿执行以下运算 X(k)=X′(k)/H(k), 其中,X(k)是非2n点DFT的最终结果,H(k)是多项滤波器和内插器的频率响应。
此外,提供了一种用于使用2n点FFT计算非2n点DFT的处理系统,该处理系统具有至少一个这种装置和/或被配置为执行这种方法,包括由多相滤波器和内插器组成的、用来实现低通滤波器和采样率转换功能的采样率转换器,被配置为生成2n点FFT结果的2n点FFT装置,被配置为对2n点FFT装置的结果进行剪切和移位以形成非2n点频域数据的剪切和移位装置,以及被配置为通过相乘对经过剪切和移位的数据进行频率补偿以形成非2n点DFT的最终结果的频率补偿单元。
特别地,这种处理系统具有OFDM系统的设计,包括中国陆地数字电视广播系统,使用非2n点DFT以通过2n点FFT完成OFDM调制/解调。
特别地,这种装置、方法和/或处理系统被配置为使用4096点FFT计算3780点DFT。



参考附图将更加详细地公开实施例。如图所示 图1用于通过4096FFT计算3780DFT的装置的框图, 图2表明不同点DFT的转换的图, 图3用于LPF和采样率转换的多相滤波器的框图, 图4采样率转换的图示, 图5用于计算频率响应的MATLAB程序的流程, 图6多相滤波器和内插器的频率响应的例子, 图7发送的数据和经过解调的数据的星座图, 图8具有N个子载波的通用OFDM系统,其中N点IFFT/FFT处理器在OFDM调制/解调处理中扮演核心角色, 图93780IFFT/FFT的可能的实现,和 图10少点WFTA的实现。

具体实施例方式 图1和2示出了不同点DFT的转换的基本思想。该方法应用理想低通滤波器(LPF)和采样率转换(SRC)以完成不同点DFT的转换。对于N1点时域采样数据,首先它们被扩展以形成周期为N1的周期序列。N1对应于连续OFDM信号的码元周期T。在理想低通滤波器后面,根据采样定理,连续的时域信号x’(t)可以由以下等式重建 其中Ts1是采样时间间隔,ωc是该理想低通滤波器的截止频率,并且x’(t)=x(t),t∈[0,T),并且T=N·Ts1。
对于采样率转换,如果N2>N1,采样间隔变为并且使用t=nTs2,n=0,1,...N2替换以上公式,得到N2点时域采样数据。这些新获得的数据被用于进行N2点DFT,得到频域数据


有一些重要的特性,这些特性可以被用于简单地由

计算N1点DFT结果X(k)。


和X(k)的两个连续点之间的频率间隔是相同的,即 以下是

和X(k)的频域数据的关系式 在其它情况下 在以上等式中,c是常数。
因此,很明显地,N2点DFT将被用于计算N1(N1<N2)。只需执行以下步骤N1点时域数据x(n)被重复地扩展(图2(b))。使用低通滤波器和采样率转换(图2(c))以获取N2点时域数据(图2(d))。在采样之后(图2(e)),将进行N2点FFT以获得第一频域数据

(图2(f))。对第一频域数据

进行剪切和移位,然后将第一频域数据乘以一个常数因子以得到剪切和移位后的数据X(k)。
在图2中示出了不同点DFT的转换。分别在图2的左边和右边示出了在该方法中应用到的不同数据信号(图2(a))。
然而,在实际硬件实现中,不能无限地重复时域数据x(n)序列。此外,应建议采用可设计的低通滤波器来代替理想低通滤器。基于这种方法,将描述一个示例装置或设备,以通过2n点FFT使用4096到3780个采样来计算非2n点DFT。
优选的实施例使用多相滤器4和线性内插器8进行低通滤波和采样率转换。在提供采样率转换器1的第一部分中,3780个时域数据x(n)被上采样到4096个时域数据

然后,使用4096点FFT在提供快速傅立叶变换装置2的第二部分中对经过上采样的数据

进行变换,以得到第一频域数据

在提供剪切和移位装置3的第三部分中对第一频域数据

进行剪切和移位。通过剪切和移位,4096点FFT的结果被改变到中间的3780点频域数据

最后,在频域补偿部分中,在乘法装置5中将这些中间的3780点频域数据

乘以频域补偿因子,以获取最终的3780点FFT频域数据X(k)。
图3公开了用于LPE和采样率的多相滤波器的框图,与图1相比,其表现出某些其它的方面。
其中示出了LPE(低通滤波器)多相滤波器的采样率转换的处理流程。3780个时域数据x(n)被顺序地馈送到输入缓冲器11。输入缓冲器11具有长度L。在完成3780个数据块之后,重复时域数据x(n)的前2L+2个数据,以再次馈送到输入缓冲器11。长度L是可变的。控制逻辑使用在输入缓冲器11中的数据和来自查找表12的这些系数以计算邻近被转换的4096个上采样数据的位置的上采样数据xos(n)。然后应用内插算法以得到4096个上采样时域数据

作为该部分的输出数据。
图4示出了采样率转换处理和这种采样率转换的数据。N1个时域数据x(n)被转换为经过内插的N2个时域数据

与输入的时域数据x(n)相关,上采样时域数据

的位置应该是分数。它的位置可以由以下等式计算 其中pos0是n=0的初始位置。使用以上等式(6),确定

的相关位置以精确地靠近上采样数据xos(n)。使用内插算法计算

一般来说,线性内插是足够的。
对于多相滤波器的设计,可以直接使用等式(3),即可以使用SINC函数以计算多相滤波器部件的系数。还有另一个设计多相滤波器的简单方法,即应用MathWorks公司的商业软件MATLAB的滤波器设计工具箱。在该系统中,这些系数可以被存储在一个查找表(LUB)中,它是以硬件实现的ROM。
以4096到3780作为例子,在获得经过转换的4096个时域数据

之后,可以进行4096FFT以获取频域数据

然后,对这些数据进行剪切和移位以获得3780点DFT的结果。然而,就我们所知,多相滤波器并不是理想低通滤波器,这导致频域数据的某些振幅损失和相移。因此进行内插。
补偿频率损失的方法是基于多相滤波器和内插组成时不变线性系统的事实。对于该时不变线性系统,存在一个频率转换函数H(k)。通过该系统的频域信号X(k)根据以下表达式变成转换后的信号Y(k) Y(k)=H(k)·X(k)(7) 在获得转换后的信号Y(k)之后,实际DFT结果X(k)应当已经知道。如果实际DFT结果X(k)是已知的,X(k)可以通过以下表达式获得 X(k)=Y(k)/H(k)(8) 实际上,仅需计算1/H(k)。图5示出了计算1/H(k)以将4096转换成3780DFT的MATLAB程序流程。图5公开了用于计算频率响应的MATLAB程序的流程。3780个频域数据被设置为常数,即1,其中C(k)=1,k=0,1,...,3779(S1)。然后进行3780IFFT以获得时域数据x(n),n=0,1,...,3779(S2)。在采样率转换、低通滤波、多相滤波和内插之后得到时域数据

n=0,1,...,4095(S3)。然后完成4096FFT,接着进行剪切和移位,以得到变换后的信号Y(k),n=0,1,...,3779(S4)。此后,计算(S5)1/H(k)=C(k)Y(k),k=0,1,...,3779。
图6示出这种多相滤波器和内插器的示例频率响应。左边示出振幅响应|H(k)|,右边示出相位响应角(H(k))。实际上,频率响应的细节取决于所使用的多相滤波器和内插方法的设计。除了这些细节之外,频率响应还有一些共同特性。相位响应是线性的。远离中点(1890)的振幅响应基本上是恒定的。
基于之前的分析,用于通过2n点FFT计算非2n点DFT的处理系统特别包括以下主要部件。采样率转换器1,包括LPF多相滤波器和内插器。此外,还使用2n点FFT单元,其使用基2、基4或其它方法计算FFT。频率补偿单元使用复数型乘法器和查找表。
图1给出该处理系统的框图,以4096FFT到3780DFT作为例子。
应该注意两点,首先,在剪切和移位装置3中进行剪切和移位处理时,由于设计的低通滤波器和FFT算法的对称特性,如果在数据序列的中间不剪切,而存在几个点的某些变化,这不会影响很多。其次,对于频率补偿可以通过应用以上描述的H(k)的共同特性大大简化查找表。
最后,再以4096到3780作为例子。优选地使用MATLAB生成具有3780QPSK调制的子载波的OFDM信号。然后本处理系统将被用于解调这些OFDM信号。得到的结果将与发送的信号和以dB测量的EVM(误差向量幅度)进行比较。
在列出4096到3780DFT转换之后经过OFDM调制的信号的EVM的表格中给出具有不同抽头和上采样次数的比较结果。
图7示出发送的数据和解调的数据的星座图。OFDM解调由本方法实现。抽头=41,上采样次=100。
因此,提供了一种通过使用2n点FFT进行任何非2n点DFT的统一的方法。该处理系统的结构是非常有规律的,并且易于在VLSI(超大规模集成电路)中实现。与其它进行任何非2n点DFT的方法相比,一般来说,本发明采用了较少的ASIC门(ASCI专用集成电路)和存储使用。
与2n点FFT结合可以进行任意点的DFT。因此,本方法和装置可以用在OFDM系统中,其自适应地利用信道的带宽。
权利要求
1.一种用于使用2n点FFT计算非2n点DFT的处理装置,包括
-采样率转换器(1),
-被配置为生成2n点FFT结果的2n点FFT装置(2),和
-被配置为形成非2n点DFT的最终结果的频率补偿单元(4)。
2.根据权利要求1的处理装置,其中采样率转换器(3)包括多相滤波器和内插器,实现低通滤波器和采样率转换的功能。
3.根据权利要求1或2的处理装置,包括剪切和移位装置(3),该剪切和移位装置(3)被配置为对2n点FFT装置(2)进行剪切和移位,以形成非2n点频域数据。
4.根据权利要求3的处理装置,其中频率补偿单元(4)被配置为通过相乘对经过剪切和移位的数据进行频率补偿。
5.根据以上权利要求中任一项的处理装置,其中查找表(6)或其它形式的计算机制被配置为在频率补偿单元(4)中提供比例因子。
6.根据以上权利要求中任一项的处理装置,被配置为OFDM站,其包括中国陆地数字电视广播系统功能,并被配置为通过2n点FFT使用任何非2n点DFT完成OFDM调制/解调。
7.一种用于使用2n点FFT计算非2n点DFT的方法,包括以下步骤
-对输入数据(1)进行采样率转换,
-之后使用2n点FFT获取2n点FFT结果,

-之后使用频率补偿形成非2n点DFT的最终结果。
8.根据权利要求7的方法,其中在采样率转换期间,实现低通滤波器多相滤波和内插。
9.根据权利要求7或8的方法,包括对2n点FFT结果进行剪切和移位以形成非2n点频域数据。
10.根据权利要求9的处理装置,其中通过相乘对经过剪切和移位的数据进行频率补偿,形成非2n点DFT的最终结果。
11.根据权利要求7到10中任一项的方法,其中执行非2n点DFT以通过2n点FFT根据中国陆地数字电视广播系统功能完成OFDM解调/调制。
12.根据权利要求7到11中任一项的方法,其中馈送到采样率转换的输入数据被重复以形成周期序列,重复的重复长度(L)是可变的,但通常与在采样率转换中的多相滤波器的抽头计数相关。
13.根据权利要求12的方法,其中重复的数据是输入数据的结尾部分,其被填充到输入数据的开始,反之亦然。
14.根据权利要求7到13中任一项的方法,其中从2n点FFT得出的频率数据根据以下表达式被剪切并移位
k=0,1,...,和
k=0,1,...,
其中N1是非2n点数,N2是2n点数,N2>N1,并且
是2n点FFT的输出。
15.根据权利要求14的方法,其中改变剪切的位置。
16.根据权利要求14或15中任一项的方法,其中从2n点FFT得出的经过剪切和移位的数据通过比例因子(q(t))进行缩放,该比例因子与采样率转换的多相滤波器和内插器的频率响应相对应。
17.根据权利要求7到16中任一项的方法,其中使用查找表或其它形式的计算机制在频率补偿中提供比例因子。
18.根据权利要求17的方法,其中频率补偿实现以下运算
X(k)=X′(k)/H(k),
其中X(k)是非2n点DFT的最终结果,H(k)是用于在补偿块之前补偿所有过程的损失的频率响应,其包括多相滤波器和内插器、2n点FFT、剪切和移位。
19.一种用于使用2n点FFT计算非2n点DFT的处理系统,具有至少一个根据权利要求1到6中任一项的装置和/或被配置为执行根据权利要求7到18中任一项的方法的装置,包括
-由多相滤波器和内插器组成、用来实现低通滤波器和采样率转换功能的采样率转换器(1),
-被配置为生成2n点FFT结果的2n点FFT装置(2),
-被配置为对2n点FFT装置(2)的结果进行剪切和移位以形成非2n点频域数据的剪切和移位装置(3),和
-被配置为通过相乘对经过剪切和移位的数据进行频率补偿以最终形成非2n点DFT结果的频率补偿单元(4)。
20.根据权利要求19的处理系统,具有OFDM系统的设计,包括中国陆地数字电视广播系统,使用非2n点DFT通过2n点FFT完成OFDM调制/解调。
21.根据权利要求20的处理系统,使用4096点FFT计算3780点DFT。
全文摘要
本发明涉及用于使用2n点FFT计算非2n点DFT的处理装置、处理方法和处理系统,具有至少一个装置,该装置包括由多相滤波器和内插器组成、用来实现低通滤波器和采样率转换功能的采样率转换器(1),被配置为生成2n点FFT结果的2n点FFT装置(2),被配置为对2n点FFT装置(2)的结果进行剪切和移位以形成非2n点频域数据的剪切和移位单元(4),以及被配置为通过相乘对经过剪切和移位的数据进行频率补偿以形成非2n点DFT的最终结果的频率补偿单元(4)。
文档编号G06F17/14GK101601031SQ200680056902
公开日2009年12月9日 申请日期2006年12月22日 优先权日2006年12月22日
发明者P·范德阿伦, 陆正德, 真 王, B·宋, 王远里 申请人:迈克纳斯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1