信号处理方法和装置的制作方法

文档序号:6600376阅读:119来源:国知局
专利名称:信号处理方法和装置的制作方法
技术领域
本发明实施例涉及信息处理技术领域,尤其涉及一种信号处理方法和装置。
背景技术
在信息处理领域,尤其是通信系统和图像处理系统的数据处理中,经常需要对数 据进行时域和频域的转换,快速傅里叶变换(Fast FourierTransform,以下简称FFT)是 其中一种常用的变换方式。对于时域信号变换,基2(Radix-2)式快速傅里叶变换,图1为现有技术中时域抽 取基2式快速傅里叶变换的处理流程图,如图1所示,在接收到需要进行计算的时域信号 后,先对其进行分组并生成若干个蝶形运算组,然后对每组信号进行蝶形运算,基2式快速 傅里叶变换的各个蝶形运算组中的蝶形单元具有特殊的对称结构;并且从第二级蝶形运算 开始,各个蝶形运算组中位于下半部分各路信号需要先进行与旋转因子《的乘法运算,对 于时域抽取基2式快速傅里叶变换,当快速傅里叶变换点数为N时,输出信号X(k)可表示 为<formula>formula see original document page 4</formula><formula>formula see original document page 4</formula>
<formula>formula see original document page 4</formula>
其中k = 0,1,2, ,N-l。在实现本发明过程中,发明人发现现有技术中至少存在如下问题上述的时域抽 取基2式快速傅里叶变换,对于N个时域信号,需要进行2 (log4N-l)次乘法运算,在进行乘 法运算时需要增加电路的控制逻辑,并进一步增加信号处理过程的时延。

发明内容
本发明实施例提供一种信号处理方法和装置,用以解决现有技术中在进行时域信 号向频域信号进行转换处理时的时延长的缺陷,降低进行时域信号向频域信号进行转换处 理时的时延。本发明实施例提供了一种信号处理方法,包括接收预进行处理的N个时域信号并进行分组处理,其中N = 22n,n为自然数;对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形 运算,且在进行第偶数级蝶形运算前对每个蝶形运算组中下1/4部分的信号进行_j乘操 作;在进行除第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分的信号进行与旋 转因子w的乘法操作。本发明实施例还提供了另一种信号处理方法,包括
接收预进行处理的N个时域信号并进行分组处理,其中N = 22n+1,n为自然数;对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形 运算,且对于前2n级的蝶形运算,执行如下操作在进行第偶数级蝶形运算前对每个蝶形 运算组中下1/4部分的信号进行-j乘操作;在进行除第一级外的其他奇数级蝶形计算前分 别对前N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作,以及对后N/2路信 号中下3/4部分的信号进行与旋转因子w的乘法操作。本发明实施例还提供了一种信号处理装置,包括接收模块,用于接收预进行处理的N个时域信号并进行分组处理,其中N= 22n,n 为自然数;信号转换电路,用于对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形 运算方式进行蝶形运算,且对于第偶数级蝶形计算,在进行蝶形运算前对每个蝶形运算组 中下1/4部分的信号进行-j乘操作;在进行除第一级外的其他奇数级蝶形运算前对N路信 号中下3/4部分的信号进行与旋转因子w的乘法操作。本发明实施例提供另一种信号处理装置,包括接收模块,用于接收预进行处理的N个时域信号并进行分组处理,其中N = 22n+1,n 为自然数;信号转换电路,用于对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形 运算方式进行蝶形运算,且对于前2n级蝶形运算,执行如下操作第偶数级蝶形计算,在进 行蝶形运算前对每个蝶形运算组中下1/4部分的信号进行-j乘操作;在进行除第一级外的 其他奇数级蝶形计算前分别对前N/2路信号中下3/4部分的信号进行与旋转因子w的乘法 操作,以及对后N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作。本发明上述实施例提供的信号处理方法和装置,在对接收到的时域信号进行分 组,然后对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形运 算,在具体的进行蝶形运算过程中,对除第一级外的其他奇数级蝶形运算前先进行与旋转 因子的乘法操作,相对于基2式快速傅里叶变换减少一半的乘法运算,并进一步减少整个 信号处理过程的时延。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。图1为现有技术中时域抽取基2式快速傅里叶变换的处理流程图;图2为本发明信号处理方法实施例的流程示意图;图3为本发明实施例中时域信号的处理流程图;图4为本发明信号处理装置实施例的结构示意图;图5为本发明实施例中实现256点FFT的电路架构图;图6为图5所示实施例中模块BF1的电路实现图;图7为图5所示实施例中模块BF2的电路实现5
图8为本发明实施例中实现512点FFT的电路架构图;图9为本发明实施例中实现数据顺序输入、顺序输出的256点FFT的电路架构图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供了一种信号处理方法,该方法为一种时域抽取的信号转换方 法,图2为本发明信号处理方法实施例的流程示意图,如图2所示,该方法包括步骤101、接收预进行处理的N个时域信号并进行分组处理,其中N = 22n,n为自 然数;本步骤是获取预进行处理的时域信号。步骤102、对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式 进行蝶形运算,且在进行第偶数级蝶形运算前对每个蝶形运算组中下1/4部分的信号进 行_j乘操作;在进行除第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分的信 号进行与旋转因子w的乘法操作。本实施例中N路信号中下3/4部分具体可以是针对步骤 101中按照接收时间顺序,后接收到的3/4部分的N路信号。在步骤101接收需进行处理的时域信号后,首先对其进行分组,其中对信号进行 分组和对分组处理后的信号进行蝶形运算可按照基2式快速傅里叶变换的蝶形运算方式 进行,对于22"个时域信号,需要进行2n级蝶形运算,本实施例提供的信号处理方法,进一步 的在进行第偶数级蝶形运算前对每个蝶形运算组中下1/4部分的信号进行_j乘操作,该操 作的实现比较简单,不会增加太多的运算复杂度,也不需增加太多硬件资源;另外在进行除 第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分的信号进行与旋转因子w的乘 法操作,本实施例中只有在进行除第一级外的其他奇数级蝶形运算前进行与旋转因子的乘 法操作,相对于基2式快速傅里叶变换减少一半的乘法运算,并进一步减少整个信号处理 过程的时延。本发明上述实施例的步骤102中,在对N路信号中下3/4部分的信号进行与旋转 因子w的乘法操作包括可具体为对于第N/4+1到第N/2路信号,进行与旋转因子WN2k的乘 法操作;对于第N/2+1到第3N/4路信号,进行与旋转因子WNk的乘法操作;对于第3N/4+1到 第N路信号,进行与旋转因子WN3k的乘法操作,且上述的k = N/4-1。利用本发明上述实施例提供的信号处理方法,其计算过程可由如下的表达式表 示
N-\X^^^^Wm
n=0
N!A~\ 1 1, N, i、, ’ A 、2 2 + 柄) 5)(ni 2 ^
3=0 2=0 |=0
=[Z从)+ (—1)、 所, Z2⑷)]+[妒;; Z从)+ (—l/2 妒, X4沐)] (力 其中 K = 0,1 ;k2 = 0,1 ;k3 = 0,1 ;2,.,N/4-1 ;叫=0,1 ;n2 = 0,1 ;n3 = 0,1 ;
62, ... , N/4-1。利用本发明上述实施例提供的信号处理方法,可实现对N=22n(N = 4、16、64、256、
1024......)路时域信号的转换。另外对于要实现顺序输入和顺序输出的信号处理时,可以
首先对接收的N路时域信号进行倒序处理。如图3所示,给出了利用上述实施例提供的信 号处理方法实现16点时域信号处理的示意图。本发明上述实施例是对N = 22n路时域信号进行信号处理的过程。当进行N = 22n+1 路时域信号的处理时,和图2所示实施例类似,首先是接收预进行处理的N个时域信号并进 行分组处理,N = 22n+1,n为自然数;然后对所述分组处理后的信号按照基2式快速傅里叶变 换的蝶形运算方式进行蝶形运算,整个计算过程包括2n+l次蝶形运算,对于偶数级蝶形运 算,在进行蝶形运算前对每个蝶形运算组中下1/4部分的信号进行_j乘操作;对于奇数级 的蝶形运算,在进行蝶形运算前,分别对前N/2路信号中下3/4部分的信号进行与旋转因子 w的乘法操作,以及对后N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作,对 于第2n+l级蝶形运算,其与基2式快速傅里叶变换的运算方式相同。本发明上述实施例提供的信号处理方法,能够减少在信号处理过程中的乘法算法 的次数,并进一步减少整个信号处理过程的时延。上述实施例中在对对前N/2路信号中下3/4部分的信号进行与旋转因子w的乘 法操作可具体为对于第N/8+1到第N/4路信号,进行与旋转因子WN2k的乘法操作;对于第 N/4+1到第3N/8路信号,进行与旋转因子WNk的乘法操作;对于第3N/8+1到第N/2路信号, 进行与旋转因子WN3k的乘法操作。另外对后N/2路信号中下3/4部分的信号进行与旋转因 子w的乘法操作包括对于第5N/8+1到第3N/4路信号,进行与旋转因子WN2k的乘法操作; 对于第3N/4+1到第7N/8路信号,进行与旋转因子WNk的乘法操作;对于第7N/8+1到第N路 信号,进行与旋转因子WN3k的乘法操作,且上述的k = N/8-1。利用本发明上述实施例提供的信号处理方法,可实现对N = 22n+1 (N = 8、32、128、
512,2048......)路时域信号的转换。另外对于要实现顺序输入和顺序输出的信号处理时,
可以首先对接收的N路时域信号进行倒序处理。与上述信号处理方法实施例对应的,本发明实施例还提供了相应的信号处理装 置,该信号处理装置能够执行上述实施例中的方法流程。图4为本发明信号处理装置实施 例的结构示意图,如图4所示,该装置包括接收模块11和信号转换电路12,其中接收模块 11用于接收预进行处理的N个时域信号并进行分组处理,N = 22n,n为自然数;信号转换电 路12用于对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形 运算,且对于第偶数级蝶形计算,在进行蝶形运算前对每个蝶形运算组中下1/4部分的信 号进行_j乘操作;在进行除第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分的 信号进行与旋转因子w的乘法操作。本发明上述实施例提供的信号处理装置,能够减少在信号处理过程中的乘法算法 的次数,并进一步减少整个信号处理过程的时延。本发明上述实施例中的信号转换电路包括一个运算模块或连续设置的两个以上 的运算模块,例如对于N = 22n路信号处理,则需要n个运算模块,每个运算模块包括奇数级 蝶形运算电路和偶数级蝶形运算电路,其中奇数级蝶形运算电路用于在进行除第一级外的 其他奇数级蝶形运算前对N路信号中下3/4部分的信号进行与旋转因子w的乘法操作,并进行奇数级蝶形运算。偶数级蝶形运算电路用于在进行蝶形运算前对每个蝶形运算组中下 1/4部分的信号进行_j乘操作,并进行蝶形运算。进一步的上述的奇数级蝶形运算电路可以分为乘法运算电路和蝶形运算电路,上 述乘法运算电路用于在进行除第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分 的信号进行与旋转因子w的乘法操作;蝶形运算电路用于进行奇数级蝶形运算。并且上述 的乘法运算电路和蝶形运算电路可以分开设置。另外还可以在需要进行实现顺序输入和顺序输出时,可以进一步的设置倒序处理 模块,该模块用于对接收的N路时域信号进行倒序处理。本发明上述实施例提供的信号处理装置是针对N = 22n路时域信号进行处理的装 置,另外本发明实施例还提供了一种信号处理装置。该装置仍包括接收模块和信号转换电 路,其中接收模块用于接收预进行处理的N个时域信号并进行分组处理,N = 22n+1,n为自然 数;信号转换电路用于对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方 式进行蝶形运算,且对于前2n级蝶形运算,执行如下操作在进行第偶数级蝶形运算前对 每个蝶形运算组中下1/4部分的信号进行-j乘操作;在进行除第一级外的其他奇数级蝶形 计算前分别对前N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作,以及对后 N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作。本发明上述技术方案提供的技术方案,其中对时域信号进行处理的方式可以是为 一种新型的FFT变换。如下是本发明的几个具体实施例,分别以实现256点和512点FFT为 例进行说明。例如以实现256点FFT为例,使用本发明实施例的技术方案的硬件电路图可 如图5所示,其中n = 4,可以使用4个连续设置的运算模块,共8级蝶形运算,并由图5中 的BF1进行第奇数级蝶形运算,BF2进行第偶数级的蝶形运算,并由于在进行偶数级蝶形运 算前的_j乘操作不需要使用太多硬件资源,因此可是由BF2 —个模块完成。并且对于BF1
和BF2都分别设置相应的存储器,其中存储器中的数据1、2、4、8......表示当前操作时缓
存数据的双口存储器的深度。另外除第一个运算模块外,各个运算模块的BF1之前都包括 一个用于对进行信号数据与旋转因子相乘的乘法操作器,其中wl(n)、W2(n)和w3(n)表示 当前参与乘法操作的旋转因子,对于BF1,其电路实现图可如图6所示,BF2的电路实现图可 如图7所示。如图5所示实施例中的硬件架构是一种数据流水运算实现结构,数据x(n)按照 倒序方式开始输入到第一个运算模块,经第一个运算模块进行处理后发送给第二个运算模 块,然后在经过第三、第四个运算模块的处理完成256点FFT的操作,且数据按照自然顺序 输出。另外当要实现2的奇数次幂方的数据FFT时,以512点为例,应用本发明上述实施 例的技术方案,其实现的电路架构图如图8所示,对于512点FFT,共需进行9级蝶形运算, 其中前8级蝶形运算与图5所述实施例相同,具体可见图8中前四个运算模块。在上述图5 所示实施例的基础上,进一步设置第五个运算模块,该运算模块进行蝶形运算的方式与基2 式快速傅里叶变换完全相同,其中的w4 (n)可由基2式快速傅里叶变换的旋转因子计算方 式计算获得,并且该级蝶形运算所使用的缓存数据的双口存储器的深度为256。本实施例提 供的FFT变换模式也是一种数据流水运算结构,其中数据x(n)是以倒序方式输入,并实现 以自然顺序输出。
另外当要实现时域信号的顺序输入和顺序输出时,可以在图5、图8所示实施例给 出的硬件架构的基础上,在最前端增加一个倒序处理模块,该倒序处理模块。由于本实施例 处理的都是2的整数幂次方路的时域信号,因此倒序处理模块的具体实施方式
可以是将输 入数据在数据流中的具体位置由一个计数器来计算,计数器随数据的输入从0开始计数, 每输入一个数据,计数器加1,计数器的值由2进制来表示,将其值高低位进行位倒序就得 出其倒序。数据顺序输入,经FFT运算后顺序输出的256点FFT的硬件电路架构如图9所
7J\ o本发明上述实施例提供的信号处理方法和装置,相对于利用基2式快速傅里叶变 换进行信号处理,能够减少一半的乘法运算,当处理N点数据只需要进行2 (log4N-l)乘法运 算,能够有效减少信号处理过程中的乘法器数量,减少整个数据处理过程的时延。且发明上 述技术方案可以应用的技术领域非常广泛,对于包含有2的幂次方的FFT运算都适用,如32 点FFT、2048点FFT、1536点FFT、144点FFT、320点FFT等,不仅能够大量节约硬件资源和 降低硬件设计的复杂度,而且还能够减少硬件的处理时延从而提高系统性能。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序 在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者 光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然 可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替 换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精 神和范围。
权利要求
一种信号处理方法,其特征在于,包括接收预进行处理的N个时域信号并进行分组处理,其中N=22n,n为自然数;对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形运算,且在进行第偶数级蝶形运算前对每个蝶形运算组中下1/4部分的信号进行-j乘操作;在进行除第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分的信号进行与旋转因子w的乘法操作。
2.根据权利要求1所述的信号处理方法,其特征在于,所述对N路信号中下3/4部分的 信号进行与旋转因子w的乘法操作包括对于第N/4+1到第N/2路信号,进行与旋转因子WN2k的乘法操作; 对于第N/2+1到第3N/4路信号,进行与旋转因子WNk的乘法操作; 对于第3N/4+1到第N路信号,进行与旋转因子WN3k的乘法操作;且上述k = N/4-1。
3.根据权利要求1所述的信号处理方法,其特征在于,还包括 对所述接收到的N路时域信号进行倒序处理。
4.一种信号处理方法,其特征在于,包括接收预进行处理的N个时域信号并进行分组处理,其中N = 22n+1,n为自然数; 对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形运算, 且对于前2n级的蝶形运算,执行如下操作在进行第偶数级蝶形运算前对每个蝶形运算组 中下1/4部分的信号进行-j乘操作;在进行除第一级外的其他奇数级蝶形计算前分别对前 N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作,以及对后N/2路信号中下 3/4部分的信号进行与旋转因子w的乘法操作。
5.根据权利要求4所述的信号处理方法,其特征在于,所述对前N/2路信号中下3/4部 分的信号进行与旋转因子w的乘法操作包括对于第N/8+1到第N/4路信号,进行与旋转因子WN2k的乘法操作;对于第N/4+1到第3N/8路信号,进行与旋转因子WNk的乘法操作;对于第3N/8+1到第N/2路信号,进行与旋转因子WN3k的乘法操作;以及对后N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作包括对于第5N/8+1到第3N/4路信号,进行与旋转因子WN2k的乘法操作;对于第3N/4+1到第7N/8路信号,进行与旋转因子WNk的乘法操作;对于第7N/8+1到第N路信号,进行与旋转因子WN3k的乘法操作;且上述k = N/8-1。
6.根据权利要求4所述的信号处理方法,其特征在于,还包括 对所述接收的N路时域信号进行倒序处理。
7.一种信号处理装置,其特征在于,包括接收模块,用于接收预进行处理的N个时域信号并进行分组处理,其中N = 22n,n为自 然数;信号转换电路,用于对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算 方式进行蝶形运算,且对于第偶数级蝶形计算,在进行蝶形运算前对每个蝶形运算组中下 1/4部分的信号进行_j乘操作;在进行除第一级外的其他奇数级蝶形运算前对N路信号中 下3/4部分的信号进行与旋转因子w的乘法操作。
8.根据权利要求7所述的信号处理装置,其特征在于,所述信号转换电路包括一个运算模块或连续设置的两个以上的运算模块,所述运算模块包括奇数级蝶形运算电路和偶数 级蝶形运算电路,其中奇数级蝶形运算电路用于在进行除第一级外的其他奇数级蝶形运算 前对N路信号中下3/4部分的信号进行与旋转因子w的乘法操作,并进行奇数级蝶形运算; 所述偶数级蝶形运算电路用于在进行蝶形运算前对每个蝶形运算组中下1/4部分的信号 进行_j乘操作,并进行蝶形运算。
9.根据权利要求8所述的信号处理装置,其特征在于,所述奇数级蝶形运算电路包括 乘法运算电路和蝶形运算电路,所述乘法运算电路用于在进行除第一级外的其他奇数级蝶 形运算前对N路信号中下3/4部分的信号进行与旋转因子w的乘法操作;所述蝶形运算电 路用于进行奇数级蝶形运算,所述乘法运算电路和蝶形运算电路分开设置。
10.根据权利要求7-9任一所述的信号处理装置,其特征在于,还包括倒序处理模块,用于对所述接收的N路时域信号进行倒序处理。
11.一种信号处理装置,其特征在于,包括接收模块,用于接收预进行处理的N个时域信号并进行分组处理,其中N = 22n+1,n为 自然数;信号转换电路,用于对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算 方式进行蝶形运算,且对于前2n级蝶形运算,执行如下操作第偶数级蝶形计算,在进行蝶 形运算前对每个蝶形运算组中下1/4部分的信号进行_j乘操作;在进行除第一级外的其 他奇数级蝶形计算前分别对前N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操 作,以及对后N/2路信号中下3/4部分的信号进行与旋转因子w的乘法操作。
全文摘要
本发明实施例提供了一种信号处理方法和装置,其中信号处理方法,包括接收预进行处理的N个时域信号并进行分组处理,N=22n,n为自然数;对所述分组处理后的信号按照基2式快速傅里叶变换的蝶形运算方式进行蝶形运算,且在进行第偶数级蝶形运算前对每个蝶形运算组中下1/4部分的信号进行-j乘操作;在进行除第一级外的其他奇数级蝶形运算前对N路信号中下3/4部分的信号进行与旋转因子w的乘法操作。本发明实施例还提供了相应的装置。本发明实施例提供的信号处理方法和装置,相对于利用基2式快速傅里叶变换进行信号转换,能够减少一半的乘法运算,从而从减少整个信号处理过程的时延。
文档编号G06F17/14GK101833540SQ20101014206
公开日2010年9月15日 申请日期2010年4月7日 优先权日2010年4月7日
发明者许文先 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1