混合基离散傅立叶变换的处理方法及装置的制作方法

文档序号:6598610阅读:219来源:国知局
专利名称:混合基离散傅立叶变换的处理方法及装置的制作方法
技术领域
本发明涉及傅立叶变换技术,尤其涉及一种混合基离散傅立叶变换(DFT)的处理 方法及装置。
背景技术
DFT是数字信号处理过程中的基本操作之一,具有非常广泛的应用。例如,针对 普通电话服务的非对称数字用户线路(ADSL)以及针对广播和无线通信的正交频分复用 (OFDM)等。为了满足高速应用中对于速度的要求,对于执行费时的DFT运算来说,处理器的 设计非常关键。但是,目前的DFT处理器只能进行某一种固定点数的DFT计算,例如常用的3780 点DFT处理器等。当点数发生变化时,设计人员需要设计新的DFT处理器,从而造成人力资 源浪费,提高了成本。

发明内容
有鉴于此,本发明要解决的技术问题是,提供一种混合基离散傅立叶变换的处理 方法及装置,能够进行任意点数的混合基离散傅立叶变换的处理。为此,本发明实施例采用如下技术方案本发明实施例提供一种混合基离散傅立叶变换的处理装置,包括地址确定单元,用于接收时域数据序列x(n),确定时域数据序列中每一时域数据 的初始存储地址并相应存储所述时域数据;其中,0彡η彡Ν-1,η为整数;N = N1' N2'… Nm' ,N; = Ai"' ,iV2' = A2n^ ,N,,; = Am"'" , A1, A2> …、Am 互质;m 彡 2,且 m 为整数;第一处理单元,用于对所述时域数据序列进行N2' N3'…N/次长度为N1'的DFT 计算,根据计算得到的第一中间数据确定第一中间数据序列;m-1个处理单元,其中的每一处理单元,用于以其上一级处理单元得到的第I-I中 间数据序列作为数据源,对所述第I-I中间数据序列进行N1' N2'…N1-/ N1+/…N/次 长度为N1'的DFT计算,根据计算得到的第I中间数据确定第I中间数据序列;2 < I < m, 且I为整数;最终得到的第m中间数据序列即为所述时域数据序列x(n)对应的频域数据序
列X(K)=∑X(N)WknN其中,地址确定单元具体用于依次接收输入的时域数据序列χ(η)中每一时域数据,分别确定每一时域数据的 预设存储地址;对所述预设存储地址进行加扰处理,得到每一时域数据对应的初始存储地 址,按照初始存储地址存储所述时域数据。地址确定单元包括接收子单元,用于依次接收输入的时域数据序列χ (η)中每一时域数据,分别确定每一时域数据的预设存储地址;加扰子单元,用于根据公式Al =仏0+30 \计算每一预设存储地址对应的初始存 储地址;其中,Al为初始存储地址;AO为预设存储地址;SCR为加扰值;存储子单元,用于按照初始存储地址对应存储所述时域数据。第一处理单元具体用于根据所述时域数据的初始存储地址对所述时域数据序列 进行N2' N3'…N/次长度为N1'的DFT计算,确定计算得到的每一第一中间数据的存储 地址并相应存储所述第一中间数据,得到第一中间数据序列。第一处理单元包括第一寻址子单元,用于根据地址确定公式n’ = IilN2 ‘ N3 ‘… Nm' +η2ΝΝ/ (0 彡 nl 彡 N/ -1,0 ^ n2 ^ N2' N2'…N/ _1),依次确定每个 n2 值依次 与各个nl值构成的组合所对应的η’值;第一处理子单元,用于依次对每A1个所述η’值作为存储地址处的A1个时域数据 进行A1点的DFT计算,得到每一时域数据对应的第一中间数据;第一地址确定子单元,用于确定计算得到的每一第一中间数据的存储地址;第一存储子单元,用于按照第一中间数据的存储地址相应存储计算得到的第一中 间数据,得到第一中间数据序列。第一地址确定子单元具体用于根据第一中间数据与时域数据之间的对应关系, 以及时域数据与存储地址之间的对应关系,确定第一中间数据对应的存储地址。所述m-2个处理单元中的每一处理单元具体用于以其上一级处理单元得到的第 I-I中间数据序列作为数据源,根据每一第I-I中间数据的存储地址对所述第I-I中间数据 序列进行N1' N2'…N1-/ Ni+1'…N/次长度为N/的DFT计算,确定计算得到的每一第 I中间数据的存储地址并相应存储所述第I中间数据,得到第I中间数据序列。所述m-2个处理单元中的每一处理单元包括第I寻址子单元,用于根据地址确定公式n’ = nlN/ N2'…N1V NI+1 ‘… Nm' +n2N/ (0 ^ nl ^ N1' _1,0 彡 n2 彡 N1' N2' -Nh' Ni+1' -Nm' _1),依次确定每 个n2值依次与各个nl值构成的组合所对应的η’值;第I处理子单元,用于以其上一级处理单元得到的第I-I中间数据序列作为数据 源,依次对每A1个所述η’值作为存储地址处的A1个第I-I中间数据进行A1点的DFT计算, 得到每一第I-I中间数据对应的第I中间数据;第I地址确定子单元,用于确定计算得到的每一第I中间数据的存储地址;第I存储子单元,用于按照第I中间数据的存储地址相应存储所述第I中间数据, 得到第I中间数据序列。第I地址确定子单元具体用于根据第I中间数据与第I-I中间数据之间的对应 关系,以及第I-I中间数据与存储地址之间的对应关系,确定第I中间数据对应的存储地址。本发明实施例提供一种混合基离散傅立叶变换的处理方法,包括接收时域数据序列χ(η),确定时域数据序列中 每一时域数据的初始存储地址并 相应存储所述时域数据;其中,0彡η彡Ν-1,η为整数;N = N1' N2'…Nm' ,N; =A^ , N;=為“2 ,Nm' = A:"' , A” Α2、…、Am 互质;m 彡 2,且 m 为整数;
第一级DFT处理步骤对所述时域数据序列进行N2' N3'…Nm'次长度为N/的 DFT计算,根据计算得到的第一中间数据确定第一中间数据序列;m-Ι级DFT处理步骤,其中的每一级DFT处理步骤为以其上一级DFT处理步 骤得到的第I-I中间数据序列作为数据源,对所述第I-I中间数据序列进行N/ N2'… N1-/ Ni+1' -Nffl'次长度为N1'的DFT计算,根据计算得到的第I中间数据确定第I中间 数据序列;2 < I < m,且I为整数;最终得到的第m中间数据序列即为所述时域数据序列χ (η)对应的频域数据序列 其中,所述接收时域数据序列x(n),确定时域数据序列中每一时域数据的初始存 储地址并相应存储所述时域数据具体为依次接收输入的时域数据序列x(n)中每一时域数据,分别确定每一时域数据的 预设存储地址;对所述预设存储地址进行加扰处理,得到每一时域数据对应的初始存储地 址,按照初始存储地址存储所述时域数据。所述对预设存储地址进行加扰处理具体为根据公式Al = <A0+SCR>n计算每一预设存储地址对应的初始存储地址;其中,Al为初始存储地址;AO为预设存储地址;SCR为加扰值。对所述第I-I中间数据序列进行N/ N2'…Nh' Ni+1'…Nm'次长度为N1'的 DFT计算,根据计算得到的第I中间数据确定第I中间数据序列具体为根据所述时域数据的初始存储地址对所述时域数据序列进行N2' N3'…Nm'次长 度为N/的DFT计算;确定计算得到的每一第一中间数据的存储地址并相应存储所述第一 中间数据,得到第一中间数据序列。所述根据所述时域数据的初始存储地址对所述时域数据序列进行N2' N3'…Nm' 次长度为N/的DFT计算具体为根据地址确定公式η,= ηIN2 ‘ N3 ‘…Nm ‘ +MN1 ‘ (0 ^ nl ^ N1 ‘ -1, 0^n2^N2' N3'…N/ _1),依次确定每个n2值依次与各个nl值构成的组合所对应的 η’值,依次对每A1个所述η’值作为存储地址处的A1个时域数据进行A1点的DFT计算,得 到每一时域数据对应的第一中间数据。所述确定计算得到的每一第一中间数据的存储地址具体为根据第一中间数据与 时域数据之间的对应关系,以及时域数据与存储地址之间的对应关系,确定第一中间数据 对应的存储地址。所述对所述第I-I中间数据序列进行N1' N2'…N1-/ N1+/…N/次长度为N/ 的DFT计算,根据计算得到的第I中间数据确定第I中间数据序列具体为根据每一第I-I中间数据的存储地址对所述第I-I中间数据序列进行N/ N2'… N1-/ N1+/…N/次长度为N1'的DFT计算;确定计算得到的每一第I中间数据的存储地 址并相应存储所述第I中间数据,得到第I中间数据序列。所述根据每一第I-I中间数据的存储地址对所述第I-I中间数据序列进行 N1' N2'…Nh' Νι+1'…Nm'次长度为N1'的DFT计算具体为根据地址确定公式n,= IilN1' N2' ...N1-/ NI+1...Nm' +Π2Ν/ (0 ^nl ^N1' -1, 0 ^ n2 ^ N1' N2'…N1-/ Ni+1'…N/ _1),依次确定每个n2值依次与各个nl值构成的组合所对应的η’值,依次对每A1个所述η’值作为存储地址处的A1个第I-I中间数据进行 A1点的DFT计算,得到每一第I-I中间数据对应的第I中间数据。所述确定计算得到的每一第I中间数据的存储地址具体为根据第I中间数据与第I-I中间数据之间的对应关系,以及第I-I中间数据与存储地址之间的对应关系,确定第I中间数据对应的存储地址。对于上述技术方案的技术效果分析如下地址确定单元确定时域数据序列中各个时域数据的初始存储地址并对应存储时 域数据;之后,依次由第一处理单元、m-1个处理单元对时域数据进行m级的DFT处理,从而
得到时域数据序列χ (η)对应的频域数据序列幻= >(")『^,实现了任意点数的混合
. =0 .
基离散傅立叶变换的处理,从而节省了人力资源,降低了实现成本。


图1为本发明实施例混合基离散傅立叶变换的处理装置结构示意图;图2为本发明实施例混合基离散傅立叶变换的处理装置实现示例图;图3为本发明实施例地址计算的实现结构示意4为本发明实施例基2的蝶形单元结构示意图;图5为本发明实施例基3的蝶形单元结构示意图;图6为本发明实施例基5的蝶形单元结构示意图;图7为本发明实施例混合基离散傅立叶变换的处理方法流程示意图。
具体实施例方式下面首先阐述本发明所述混合基DFT的处理原理离散傅里叶变换的基本公式如下Xik) = ^ x(n)W^"(1)
/7 = 0如果计算的点数N = N1N2且<Ν1; Ν2>^ 1,由初等数论中的结论,公式1中的变量 n,k可以做以下的二维映射η = <Κ1η1+Κ2η2>Νk = <K3k1+K4k2>N(2)其中,K1, K2,K3,K4为常量,<a>N表示将a对N取模。将公式2带入公式1可以得到以下的公式3 X(Zt1^2)= J]'文 xin^Wf—"、1^(3)
n2=0 W1 = O将公式3展开,得到公式4
A72-I N1-IXiKA) =Σ Σ x^ ‘ η2K,K4"'k2 K2K3"2k' Κ2"4"2"2
"2=0 "1=0 ( 4 )由中国剩余定理,可以得到常数K1, K2, K3, K4满足公式5所示的条件(K1K)n = N1
<K2K4>N = N2(K1K4)n = <K2K3>N = 0(5)根据公式5,可以很容易地获得K1, K2, K3, K4的一种取值情况,如公式6所示K1 = N1, K4 = N2^3=(TV2);'( 6 )其中<a>/表示a关于N的数论倒数。将公式5带入公式4得到公式7 Χ(ΚΛ2)=Σ\Σ 咖,打 2 WZ' Wt
2=0 L"I=0J( 7 )其中,公式7中的两个累加符号是可以交换的。由公式7可知可以把一个点数为N的一维DFT处理拆分为两个二维的DFT运算, 即当计算的点数N = N1N2且<N1; N2> ^ 1时,首先进行N2个长度为N1的DFT处理,然后, 进行N1个长度为N2的DFT处理,即可完成点数为N的一维DFT处理。公式2中一维DFT处理拆分为二维DFT处理的二维映射关系,是后续本发明实施 例中进行寻址计算的关键公式。图1中所示的地址计算模块就是通过计算二维变量的公式 得到具体的寻址值的,从而使得所有的运算都采用统一的寻址结构。关于同址计算,由公式2可以看出如果输入是按照η = <Κιηι+Κ2η2>Ν给入,进行同 址计算是不能得到频点由小到大排列的顺序输出的。如果希望输出k = <K3k1+K4k2>N (1)是频点由小到大排列的顺序输出,由于进行同址计算,由公式2可以得到数据存 放的地址为k = <K3n1+K4n2>N (2)而其时域索引号由公式2中的第一个公式给出η = <Κ1η1+Κ2η2>Ν (3)如果公式10为中国剩余定理的表达式,则其另外一种表示方法为n, = (b.n)^ ’n2 = (b2n)^( 4 )将公式11带入公式9,并由中国剩余定理得
k = (Ki + K2〈V、〉" 二〈(Σ K滅(5 )公式12即为加扰处理的计算依据。对于# = 2"'3"25ηι 点的 DFT,可以把它分为 N = N1N2N3,其中 TV1 二 ,= 3 , N3=T,则N1, N2, N3互质。我们把一维DFT映射为三维的DFT,可以采用PFA进行计算。 然而在计算时,不要把这个三维的DFT认为是一个三维的问题,直接用二维DFT的思路来 处理即可首先做N2N3个长度为N1的DFT,然后做N1N3个长度为N2的DFT,最后做N1N2个 长度为N3&dft。其中每一阶段的计算都需要一个两变量的映射公式,把N分解为N = N2' n/ +N1' n2',所有的计算均为同址运算。进而,还可以把以上的W = SIM"1点的DFT 处理推广到N = N1' N2'…Nm' (乂^為“‘代‘二^广,乂/二式/“‘细彡?,且!!!为整数^点 的DFT处理,只要Ai、A2、…、Am互质即可。基于以上的原理,如图1所示,本发明实施例提供一种混合基离散傅立叶变换的处理装置,如图1所示,该装置包括地址确定单元110,用于接收时域数据序列x(n),确定时域数据序列中每一时 域数据的初始存储地址并相应存储所述时域数据;其中,0 ^n^ N-I, η为整数;N = N1' N2'…Nm' ’N; H =A1n^Nll; =A:" ,k”k2、…、Am 互质;m 彡 2,且 m 为整数。
具体的,地址确定单元110可以用于依次接收输入的时域数据序列x(n)中每一 时域数据,分别确定每一时域数据的预设存储地址;对所述预设存储地址进行加扰处理,得 到每一时域数据对应的初始存储地址,按照初始存储地址存储所述时域数据。第一处理单元120,用于对所述时域数据序列进行N2' N3'…N/次长度为N/ 的DFT计算,根据计算得到的第一中间数据确定第一中间数据序列。具体的,第一处理单元120可以用于根据所述时域数据的初始存储地址对所述 时域数据序列进行N2' N3'…N/次长度为N/的DFT计算,确定计算得到的每一第一中 间数据的存储地址并相应存储所述第一中间数据,得到第一中间数据序列;其中,所述第一中间数据序列一般是指存储后按照存储地址的顺序排列的所有第 一中间数据。m-1个处理单元130,其中的每一处理单元,用于以其上一级处理单元得到的第 I-I中间数据序列作为数据源,对所述第I-I中间数据序列进行N/ N2'…Nh' N1+/… Nffl'次长度为N1'的DFT计算,根据计算得到的第I中间数据确定第I中间数据序列; 2 < I < m,且I为整数;最终得到的第m中间数据序列即为所述时域数据序列x(n)对应的
频域数据序列=Σ X(S。
n = 0具体的,m-l个处理单元130中的每一处理单元具体可以用于以其上一级处理单 元得到的第I-I中间数据序列作为数据源,根据每一第I-I中间数据的存储地址对所述第 I-I中间数据序列进行N/ N2'…N1-/ N1+/…N/次长度为N1'的DFT计算,确定计算 得到的每一第I中间数据的存储地址并相应存储所述第I中间数据,得到第I中间数据序 列;2 < I < m,且I为整数;最终得到的第m中间数据序列即为所述时域数据序列x(n)对
应的频域数据序列χα) 二 Σ χ(η)Κ。
/7 = 0其中,第m中间数据序列是指按照存储地址的顺序依次排列的所有第m中间数据。其中,地址确定单元110可以包括接收子单元1101,用于依次接收输入的时域数据序列x(n)中每一时域数据,分别 确定每一时域数据的预设存储地址;加扰子单元1102,用于根据公式Al = <A0+SCR>N计算每一预设存储地址对应的初 始存储地址;其中,Al为初始存储地址;AO为预设存储地址;SCR为加扰值,SCR的计算公式
为:SCR =氏{N I N、、;
\ '=1/ N存储子单元1103,用于按照初始存储地址对应存储所述时域数据。第一处理单元120可以包括第一寻址子单元1201,用于根据地址确定公式n’ = IilN2 ‘ N3 ‘…Nm' +Π2Ν/ (O ^nl ^N1' _1,0彡n2彡N2' N3'…Nm' _1),依次确定每个n2值依次与 各个nl值构成的组合所对应的η’值;第一处理子单元1202,用于依次对每A1个所述η’值作为存储地址处的A1个时域 数据进行A1点的DFT计算,得到每一时域数据对应的第一中间数据;其中,每A1个所述η’值对应着A1个时域数据,即每个η’值作为存储地址均对应 着一个时域数据。第一地址确定子单元1203,用于确定计算得到的每一第一中间数据的存储地址。 具体的,第一地址确定子单元1203可以用于根据第一中间数据与时域数据之间的对应关 系,以及时域数据与存储地址之间的对应关系,确定第一中间数据对应的存储地址。其中, 每一时域数据对应着一个存储地址,该时域数据进行DFT计算后得到一个对应的第一中间 数据,根据以上两个对应关系,将时域数据对应的存储地址作为时域数据对应的第一中间 数据的存储地址,从而由第一存储子单元1204进行第一中间数据的存储,从而实现了同址 计算。第一存储子单元1204,用于按照第一中间数据的存储地址相应存储计算得到的第 一中间数据,得到第一中间数据序列。所述m-1个处理单元中的每一处理单元可以包括第I寻址子单元1301,用于根据地址确定公式n’ =IilN/ N2' ...N1V N1+/ ... Nm' +η2Ν/ (0 ^ nl ^ N1' _1,0 彡 n2 彡 N1' N2' -Nh' Ni+1' -Nm' _1),依次确定每 个n2值依次与各个nl值构成的组合所对应的η’值;第I处理子单元1302,用于以其上一级处理单元得到的第I-I中间数据序列作为 数据源,依次对每A1个所述η’值作为存储地址处的A1个第I-I中间数据进行A1点的DFT 计算,得到每一第I-I中间数据对应的第I中间数据;第I地址确定子单元1303,用于确定计算得到的每一第I中间数据的存储地址。 具体的,第I地址确定子单元1303可以用于根据第I中间数据与第I-I中间数据之间的 对应关系,以及第I-I中间数据与存储地址之间的对应关系,确定第I中间数据对应的存储 地址。其中,第I处理子单元1302进行DFT计算时,每一第1_1中间数据经过DFT计算 后得到一对应的第I中间数据,将该第I-I中间数据对应的存储地址作为该第I中间数据 的存储地址,从而实现了同址计算。第I存储子单元1304,用于按照第I中间数据的存储地址相应存储所述第I中间 数据,得到第I中间数据序列。其中,所述m-1个处理单元中每一处理单元均包括这四个单元,例如第2处理单 元中包括第2寻址子单元、第2处理子单元、第2地址确定子单元以及第2存储子单元;第 3处理单元中包括第3寻址子单元、第3处理子单元、第3地址确定子单元以及第3存储 子单元;以此类推直至第m处理单元。其中,第m存储子单元存储DFT计算得到的所有第m中间数据后,按照存储地址的 顺序排列的这些第m中间数据所形成的第m中间数据序列也即为所述时域数据序列x(n)
对应的频域数据序列I⑷=iN㈨ "。
/7 = 0
图1所示的处理装置可以进行任意点数的混合基离散傅立叶变换的处理,在实现 中只需要根据Ap A2、…、Am的取值更新对应的处理单元或处理子单元即可。进而,在实际应用中,可以对以上的单元和实现进行任意的组合,如图2所示为本 发明实施例所述处理装置的一种实现方式,所述第一、第二…第m-1存储子单元可以通过 两个存储模块实现,多个寻址子单元的功能可以组合到一个寻址子单元实现;多个处理子 单元的功能也组合到一个处理子单元中实现;多个地址确定子单元的功能也可以组合到一 个地址确定子单元中实现。图2所示的处理装置的实现方式与每一种点数单独处理相比, 结构紧凑,节省了系统面积,降低了功耗。 具体的,各个寻址子单元中η’值的计算可以通过如图3所示的结构实现,此时,Ii1 由图3中的cnt_radiX单元产生,其产生满足以下的规律以N:为例基2 —共有Ii1级,SL = H1,当进行到第s级时取数的地 址η’可以由以下公式产生addr = I1W" 彻知广· ,所读取的旋转因子的地址是由 IAya1左移L-S位得到。其中,…Wya1为当前级计算的蝶形单元的个数。 计数器从0累加到L/2,共需要L/2个周期,每个周期进行一个蝶形运算,则进行L/2个运 算,当前这一级下当前N1点的DFT运算即完成。注意在进行每一种基的第一级运算前,输入数据需要进行倒序处理,即如果输入 数据的序号是n = aHaLVappo,其存入的地址是η =已渦广·已^沟^。另夕hVA2、…、Am等的取值不同时,对应的DFT处理的计算公式不同,例如取值为2时,两点的DFT处理的计算公式为X
= x(0)+x(l)*tf ;X[l] = x(0)-x(l)*tf ;具体的,两点的DFT处理可以通过图4所示的蝶形单元实现。3点的DFT处理的计算公式为
Γ 2u 二一πti = x(l)+x(2)t2 = x (2)-x(l)m0 = χ (O) +tiIii1 = t! (cosu-1)m2 = jt2sinuS1=Hic^m1X
= m0X[l] = Sl+m2X [2] = S1-Hi2具体的,3点DFT处理可以通过图5所示的蝶形单元实现。5点的DFT处理的计算公式可以为
Γ 2u = —πm0 = t5+x (O)C0 = (cosu+cos2u)/2-l
Iii1 = t5C0C1 = (cosu-cos2u)/2m2 = (Ift2)C1C2 = sinu+sin2um3 = - j (t3+t4) C3C3 = Sinum4 = -Jt4C2C4 = sinu_sin2um5 = jt3C4、= χ(1)+x (4)S1 = Hi0-Hi1t2 = χ (2)+x (3)s2 = S^m2t3 = χ (l)-x (4)S3 = m3-m4t4 = x (3)-χ (2)S4 = S1-Hi2t5 = t!+t2S5 = m3+m5X
= m0X[l] = s2+s3X[2] = s4+s5X[3] = S4-S5X[4] = S2-S3 具体的,5点DFT处理可以通过图6所示的蝶形单元实现。其中,在图3 图5中,表示进行补充位数处理;[T]表示截取处理;卩—
·.I-
表示四舍五入饱和处理;[Γ]表示移位(饱和处理)处理。如图7所示,本发明实施例还提
供一种混合基DFT处理的方法,其中,0彡η彡N-l,n为整数;N = N1' N2'…Nm' ,N; =Aln^ , N; = Λ"2 ,Nm' = Am"'" , A” A2、…、Am互质;m彡3,且m为整数;该处理方法包括步骤701 接收时域数据序列x(n),确定时域数据序列中每一时域数据的初始存 储地址并相应存储所述时域数据。本步骤的具体实现可以为依次接收输入的时域数据序列x(n)中每一时域数据, 分别确定每一时域数据的预设存储地址;对所述预设存储地址进行加扰处理,得到每一时 域数据对应的初始存储地址,按照初始存储地址存储所述时域数据。其中,可以按照接收到时域数据的顺序,依次确定每一时域数据的预设存储地址。 另外,本步骤在具体实现时,不一定要接收到所有时域数据后才执行后续的预设存储地址 的确定以及初始存储地址的确定步骤,而是可以每接收到一个时域数据便确定该时域数据 的预设存储地址、进而进行预设存储地址的加扰处理得到该时域数据对应的初始存储地 址,并按照初始存储地址存储该时域数据。其中,对每一预设存储地址进行加扰处理得到对应的初始存储地址具体为
Aln = <A0n+SCR>N ;其中,Al为初始存储地址;AO为预设存储地址;SCR为加扰值,SCR的计算公式为 SCR = !^/^))。
\ '=I/ N步骤702:对所述时域数据序列进行N2' N3'…N/次长度为N/的DFT计算,根 据计算得到的第一中间数据确定第一中间数据序列。
本步骤的实现可以为根据所述时域数据的初始存储地址对所述时域数据序列进 行N2' N3'…Nm'次长度为N/的DFT计算;确定计算得到的每一第一中间数据的存储地 址并相应存储所述第一中间数据,得到第一中间数据序列。步骤703 :m-l级DFT处理步骤,其中的每一级DFT处理步骤为以其上一级 DFT处理步骤得到的第I-I中间数据序列作为数据源,对所述第I-I中间数据序列进行 N1' N2' ...N1-/ Ni+1' -Nffl'次长度为N1'的DFT计算,根据计算得到的第I中间数据确 定第I中间数据序列;2 < I < m,且I为整数;最终得到的第m中间数据序列即为所述时域
数据序列x(n)对应的频域数据序列Z(幻= …『,。
/7 = 0具体的,本步骤中m-Ι级DFT处理步骤中的每一级DFT处理步骤的实现可以为以 其上一级DFT处理步骤得到的第I-I中间数据序列作为数据源,根据每一第I-I中间数据 的存储地址对所述第I-I中间数据序列进行N1' N2' ...N1-/ Ni+1' -Nffl'次长度为N/的 DFT计算,确定计算得到的每一第I中间数据的存储地址并相应存储所述第I中间数据,得 到第I中间数据序列;2 < I < m,且I为整数;最终得到的第m中间数据序列即为所述时域
N-\
数据序列χ (η)对应的频域数据序列幻=Σ x^Wm"。
η=0其中,本步骤中包括从第2级DFT处理步骤到第m级DFT处理步骤共m_l级DFT 处理步骤。其中,步骤702中所述根据每一第I-I中间数据的存储地址对所述第I-I中间数 据序列进行N/ N2'…Nh' N1+/…N/次长度为N/的DFT计算的具体实现可以为根 据地址确定公式 n,= nlN2' N3'…Nm' +n2N/ (0 ^ nl ^ N1' -1,0 ^ n2 ^ N2' N3'... Nffl' -1),依次确定每个n2值依次与各个nl值构成的组合所对应的η’值,依次对每A1个 所述η’值作为存储地址处的A1个时域数据进行A1点的DFT计算,得到每一时域数据对应 的第一中间数据。例如,N= N1' N2' N3',= f1 W2'== C"3 ,此时,步骤 702 中将根据地 址确定公式 n,= nlN2' N3' +n2N/ (0 ^ nl ^ N1' -1,0 ^ n2 ^ N2' N3' _1),依次确 定每个n2值依次与各个nl值构成的组合所对应的η’值,依次对每A个所述η’值对应的 第一存储地址处的时域数据进行A点的DFT计算,将计算结果按照相对应的时域数据的存 储地址进行存储。举例来说例如,η2取0时,η2依次与各个nl值构成的组合(nl,n2)为(0,0), (1,0)··· (N/ _1,0),相应的对应着N1'个η’值,之后,π2取1时,还将依次与各个nl构成 N1'个(nl,l)的组合,以此类推,共得到N1' N2' N3'个η’值,将这些η’值作为第一存储地 址时,恰好可以对应着所有的时域数据。依次对每A个η ’值对应的时域数据进行A点的DFT处理,将处理结果按照相应的时域数据的存储地址进行存储,可以相应得到N/ N2' N3' 个第一中间数据,步骤703中将继续对得到的第一中间数据序列进行DFT处理。假设A为 3,第一次的(0,0) (1,0) (2,0)对应的3个η’值为1、3、6,1对应χ (0),3对应χ (1),6对应 χ (2),则DFT处理后相应得到X(O)、X(I)和X(2),那么X(O)对应的存储地址为1 ;X(I)对 应的存储地址为3 ;X (2)对应的存储地址为6。具体的,对于以上处理,可以每确定A个η’值即获取这A个η’值对应的时域数 据,并对这A个时域数据进行A点的DFT处理;或者,也可以将所述η’值全部确定后,根据 η’值形成的序列依次获取每A个η’值对应的时域数据进行所述A点的DFT处理;甚至,还 可以将以上两种处理方法交叉进行,即确定一部分η’值,获取对应的时域数据进行A点的 DFT处理,之后,再确定一部分η’值,获取对应的时域数据进行A点的DFT处理,以此类推, 直至获取到所有的时域数据并进行DFT处理完毕。另外,步骤703的实现与步骤702类似,区别仅在于,步骤703中各级DFT处理 步骤所依据的公式为n,=IilN1' N2'…N1-/ Νι+1'…Nm' +Π2Ν/ (O^nl ^N1' -1, 0≤π2≤N/ N2'…N1-/ N1+/…N/ -1);而且,步骤703中所进行的是A1点的DFT处理。依据以上方法,假设N = 2W,则具体的处理中Α、对输入的时域数据序列的存储地址进行加扰处理计算加扰值={30/2+ 30/5 + 30/3)30 =1 由于加扰值为 1,所
\ I/N,
以k = <1Χη>Ν = <η>30 = η。很凑巧恰好不需要倒序。B、先对时域数据进行15个2点的DFT。其中,选址公式为η' = 15ηι+2η2。此时, 得到表1所示的选址结果表 1 C、之后对第一中间数据序列进行6个5点的DFT。选址公式为η' = 5ηι+6η2。根 据该选址公式得到选址结果如表2所示表 2 D、之后对第二中间数据进行10个3点的DFT处理。选址公式为η' = 3ηι+10η2。 根据该选址公式得到的选址结果如表3所示
表3 在步骤B D的处理中,依据以上寻址地址将对应的数据读出然后分别推入基2 或基3或基5的蝶形单元,进行同址计算,最后步骤D处理完成后,得到的处理结果即为时 域数据序列x(n)所对应的频域数据序列X(k),且得到的频域数据是顺序排列的。通过图7所示的处理方法,可以进行任意点数的混合基离散傅立叶变换的处理, 在实现中只需要根据H…、Am的取值更新对应的DFT处理单元即可。本领域普通技术人员可以理解,实现上述实施例混合基离散傅立叶变换的处理方 法及装置方法的过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于可读取 存储介质中,该程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如R0M/ RAM、磁碟、光盘等。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人 员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应 视为本发明的保护范围。
权利要求
一种混合基离散傅立叶变换的处理装置,其特征在于,包括地址确定单元,用于接收时域数据序列x(n),确定时域数据序列中每一时域数据的初始存储地址并相应存储所述时域数据;其中,0≤n≤N-1,n为整数;N=N1′N2′...Nm′,A1、A2、...、Am互质;m≥2,且m为整数;第一处理单元,用于对所述时域数据序列进行N2′N3′...Nm′次长度为N1′的DFT计算,根据计算得到的第一中间数据确定第一中间数据序列;m-1个处理单元,其中的每一处理单元,用于以其上一级处理单元得到的第I-1中间数据序列作为数据源,对所述第I-1中间数据序列进行N1′N2′...NI-1′NI+1′...Nm′次长度为DFT′的DFT计算,根据计算得到的第I中间数据确定第I中间数据序列;2≤I≤m,且I为整数;最终得到的第m中间数据序列即为所述时域数据序列x(n)对应的频域数据序列FSA00000021321000011.tif,FSA00000021321000012.tif,FSA00000021321000013.tif,FSA00000021321000014.tif
2.根据权利要求1所述的装置,其特征在于,地址确定单元具体用于依次接收输入的时域数据序列x(n)中每一时域数据,分别确定每一时域数据的预设 存储地址;对所述预设存储地址进行加扰处理,得到每一时域数据对应的初始存储地址,按 照初始存储地址存储所述时域数据。
3.根据权利要求2所述的装置,其特征在于,地址确定单元包括接收子单元,用于依次接收输入的时域数据序列x(n)中每一时域数据,分别确定每一 时域数据的预设存储地址;加扰子单元,用于根据公式Al = <AO+SCR>N计算每一预设存储地址对应的初始存储地 址;其中,Al为初始存储地址;AO为预设存储地址;SCR为加扰值; 存储子单元,用于按照初始存储地址对应存储所述时域数据。
4.根据权利要求1至3任一项所述的装置,其特征在于,第一处理单元具体用于根据 所述时域数据的初始存储地址对所述时域数据序列进行N2' N3' ...Nffl'次长度为N/的 DFT计算,确定计算得到的每一第一中间数据的存储地址并相应存储所述第一中间数据,得 到第一中间数据序列。
5.根据权利要求4所述的装置,其特征在于,第一处理单元包括第一寻址子单元,用于根据地址确定公式n’ = Ii1 N2 ‘ N3 ‘ . . . Nffl ‘ +η2 N1' (0 ^ nl ^ N1' -1,0 ^ n2 ^ N2' N3' ...Nm' _1),依次确定每个 n2 值依次与各个 nl值构成的组合所对应的η’值;第一处理子单元,用于依次对每A1个所述η’值作为存储地址处的A1个时域数据进行 A1点的DFT计算,得到每一时域数据对应的第一中间数据;第一地址确定子单元,用于确定计算得到的每一第一中间数据的存储地址; 第一存储子单元,用于按照第一中间数据的存储地址相应存储计算得到的第一中间数 据,得到第一中间数据序列。
6.根据权利要求5所述的装置,其特征在于,第一地址确定子单元具体用于根据第一 中间数据与时域数据之间的对应关系,以及时域数据与存储地址之间的对应关系,确定第 一中间数据对应的存储地址。
7.根据权利要求1至3任一项所述的装置,其特征在于,所述m-2个处理单元中的每一处理单元具体用于以其上一级处理单元得到的第I-I中间数据序列作 为数据源,根据每一第I-I中间数据的存储地址对所述第I-I中间数据序列进行 N1' N2' ...Nh' N1+/ ...N/次长度为N1'的DFT计算,确定计算得到的每一第I中间 数据的存储地址并相应存储所述第I中间数据,得到第I中间数据序列。
8.根据权利要求7所述的装置,其特征在于,所述m-2个处理单元中的每一处理单元包括第I寻址子单元,用于根据地址确定公式n’ = IilN1' N2' ...Nh‘ ΝΙ+1 ‘ ...Nffl' +η2Νχ ‘(O ^ nl^N/ -1,0 彡 η2 彡 N1' N2' . . .Nm' Νι+1' . . . Nm' _1),依次确定每个η2 值依 次与各个nl值构成的组合所对应的η’值;第I处理子单元,用于以其上一级处理单元得到的第I-I中间数据序列作为数据源,依 次对每A1个所述η’值作为存储地址处的A1个第I-I中间数据进行A1点的DFT计算,得到 每一第I-I中间数据对应的第I中间数据;第I地址确定子单元,用于确定计算得到的每一第I中间数据的存储地址; 第I存储子单元,用于按照第I中间数据的存储地址相应存储所述第I中间数据,得到 第I中间数据序列。
9.根据权利要求8所述的装置,其特征在于,第I地址确定子单元具体用于根据第I 中间数据与第I-I中间数据之间的对应关系,以及第I-I中间数据与存储地址之间的对应 关系,确定第I中间数据对应的存储地址。
10.一种混合基离散傅立叶变换的处理方法,其特征在于,包括接收时域数据序列Χ(η),确定时域数据序列中每一时域数据的初始存储地址并相应存 储所述时域数据;其中,0彡η彡Ν-1,η为整数;N = N1' N2' ...Nffl' ’Ν;Κ=Α2"、Nj = Am"- , A” A2.....Am互质;m彡2,且m为整数;第一级DFT处理步骤对所述时域数据序列进行N2' N3' ...N/次长度为N/的DFT 计算,根据计算得到的第一中间数据确定第一中间数据序列;m-Ι级DFT处理步骤,其中的每一级DFT处理步骤为以其上一级DFT处理 步骤得到的第I-I中间数据序列作为数据源,对所述第I-I中间数据序列进行 N1' N2' ...Nh' N1+/ ...N/次长度为N1'的DFT计算,根据计算得到的第I中间数据 确定第I中间数据序列;2 < I < m,且I为整数;最终得到的第m中间数据序列即为所述时域数据序列x(n)对应的频域数据序列=。/7 = 0
11.根据权利要求10所述的方法,其特征在于,所述接收时域数据序列Χ(η),确定时域 数据序列中每一时域数据的初始存储地址并相应存储所述时域数据具体为依次接收输入的时域数据序列x(n)中每一时域数据,分别确定每一时域数据的预设 存储地址;对所述预设存储地址进行加扰处理,得到每一时域数据对应的初始存储地址,按 照初始存储地址存储所述时域数据。
12.根据权利要求11所述的方法,其特征在于,所述对预设存储地址进行加扰处理具 体为根据公式Al =仏0+30 \计算每一预设存储地址对应的初始存储地址; 其中,Al为初始存储地址;AO为预设存储地址;SCR为加扰值。
13.根据权利要求10至12任一项所述的方法,其特征在于,对所述第I-I中间数据序 列进行N/ N2' ...Nh' N1+/ ...Nffl'次长度为N1'的DFT计算,根据计算得到的第I中 间数据确定第I中间数据序列具体为根据所述时域数据的初始存储地址对所述时域数据序列进行N2' N3' ...N/次长度 为N/的DFT计算;确定计算得到的每一第一中间数据的存储地址并相应存储所述第一中 间数据,得到第一中间数据序列。
14.根据权利要求13所述的方法,其特征在于,所述根据所述时域数据的初始存储地 址对所述时域数据序列进行N2' N3' ...Nffl'次长度为N1'的DFT计算具体为 根据地址确定公式 n,= nl N2 ‘ N3 ‘ . . . Nm ‘ +MN1 ‘ (0 ^ nl ^ N1 ‘ -1, 0^n2^N2' N3' ...Nffl' _1),依次确定每个n2值依次与各个nl值构成的组合所对应的 η’值,依次对每A1个所述η’值作为存储地址处的A1个时域数据进行A1点的DFT计算,得 到每一时域数据对应的第一中间数据。
15.根据权利要求13所述的方法,其特征在于,所述确定计算得到的每一第一中间数 据的存储地址具体为根据第一中间数据与时域数据之间的对应关系,以及时域数据与存 储地址之间的对应关系,确定第一中间数据对应的存储地址。
16.根据权利要求10至12任一项所述的方法,其特征在于,所述对所述第I-I中间数 据序列进行N/ N2' ...Nh' ΝΙ+1 ‘ ...Nffl'次长度为N/的DFT计算,根据计算得到的第 I中间数据确定第I中间数据序列具体为根据每一第I-I中间数据的存储地址对所述第I-I中间数据序列进行 N1' N2' ...Nm‘ ΝΙ+1 ‘ ...N/次长度为N1'的DFT计算;确定计算得到的每一第I中间 数据的存储地址并相应存储所述第I中间数据,得到第I中间数据序列。
17.根据权利要求16所述的方法,其特征在于,所述根据每一第I-I中间数据的存储 地址对所述第I-I中间数据序列进行N/ N2' ...N1-/ N1+/ ...Nffl'次长度为N/的DFT 计算具体为根据地址确定公式 n,= nl N/ N2' · · · N1-/ N1+/ ...Nm' +n2N/ (0 ^nl ^ N1' -1, N2' ...N1-/ Ni+1' ...Nm' _1),依次确定每个n2值依次与各个nl值构成 的组合所对应的η’值,依次对每A1个所述η’值作为存储地址处的A1个第I-I中间数据进 行&点的DFT计算,得到每一第I-I中间数据对应的第I中间数据。
18.根据权利要求16所述的方法,其特征在于,所述确定计算得到的每一第I中间数据 的存储地址具体为根据第I中间数据与第I-I中间数据之间的对应关系,以及第I-I中间 数据与存储地址之间的对应关系,确定第I中间数据对应的存储地址。
全文摘要
本发明公开了一种混合基离散傅立叶变换的处理方法及装置,该装置包括地址确定单元,用于接收时域数据序列x(n),确定时域数据序列中每一时域数据的初始存储地址并相应存储所述时域数据;第一处理单元,用于对所述时域数据序列进行N2′N3′...Nm′次长度为N1′的DFT计算,根据计算得到的第一中间数据确定第一中间数据序列;m-1个处理单元,其中的每一处理单元,用于以其上一级处理单元得到的第I-1中间数据序列作为数据源,对所述第I-1中间数据序列进行N1′N2′...NI-1′NI+1′...Nm′次长度为NI′的DFT计算,根据计算得到的第I中间数据确定第I中间数据序列;最终得到的第m中间数据序列即为频域数据序列该方法及装置能够进行任意点数的混合基离散傅立叶变换的处理。
文档编号G06F17/14GK101840393SQ201010115459
公开日2010年9月22日 申请日期2010年2月26日 优先权日2010年2月26日
发明者宋成伟 申请人:联芯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1