一种频域处理方法及装置的制造方法

文档序号:8457249阅读:224来源:国知局
一种频域处理方法及装置的制造方法
【技术领域】
[0001] 本发明涉及数字信号处理领域,特别涉及一种频域处理方法及装置。
【背景技术】
[0002] 在数字信号处理过程中,常常需要对信号进行频域处理。频域处理主要包括快速 傅里叶变换(英文:Fast Fourier Transformation,简称:FFT)。由于进行FFT的采样点点 数是有限的,再加上时域信号本身的非周期性,但频域处理是将时域信号当作周期信号进 行处理,从而导致时域信号在频域处理后相比于原始时域信号,数据不连续。
[0003] 为了保证时域信号的数据连续性,现有技术提供了一种频域处理方法。假设时域 信号为X [k],k为采样点数且k取无限大。同时,每个时钟周期输入的采样点点数为K,K为 正整数。该方法包括如下步骤1至步骤4。
[0004] 步骤1、参见图1(a),先对当前时钟周期输入的K点时域序列与缓存的前一个时钟 周期输入的K点时域序列进行重叠(Overlap)处理,得到图1(b)示出的2K点时域序列。例 如,假设当前时钟周期输入的采样点的序号是(K-I)~(2K-1),前一个时钟周期输入的采 样点的序号是〇~(K-I),那么,重叠处理后的时域序列包括0~(2K-1)。
[0005] 步骤2、对重叠得到的2N点时域序列进行FFT等频域处理,得到图I (C)示出的时 域周期序列。
[0006] 步骤3、在频域处理之后进行IFFT,并在IFFT之后将数据进行去重叠 (De-overlap)处理,得到最终的时域周期序列。去重叠后的时域周期序列如图1(d)所示, 经频域处理后的时域信号如图1(e)所示。
[0007] 在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0008] 现有技术中进行FFT的点数与每个时钟周期输入的点数是关联的,当每个时钟周 期输入K点时域序列时,经过overlap处理之后变为2K点时域序列,那么需要进行2K点 FFT 和反傅里叶变换(英文:Inverse Fast Fourier Transformation,简称:IFFT)。一方 面,如果2K不是2的整数次幂,那么需要做非2整数次幂点数的FFT和IFFT,实现时相对于 2整数次幂点数的FFT和IFFT更为复杂,运算量更大;另一方面,如果2K点FFT和IFFT已 经超过算法性能指标,那么现有技术会造成大量实现资源浪费。

【发明内容】

[0009] 本发明实施例提供了一种频域处理方法及装置,可以解决进行FFT的点数与每个 时钟周期输入的点数关联时带来的FFT和IFFT过于复杂、运算量大、以及资源浪费的问题。 所述技术方案如下:
[0010] 第一方面,提供了一种频域处理方法,所述方法包括:
[0011] 获得当前周期实际需处理数据Dl ;其中,所述实际需处理数据Dl包括T个时 钟周期输入的采样数据,每一个所述时钟周期输入的采样数据包括M个连续的采样点, SiUfiO 『=,sumO为M与N的最小公倍数,N为预设FFT所需点数; 2M
[0012] 确定当前周期需处理数据D ;其中,所述需处理数据D包括数据头和数据尾,所述 数据头为前一个周期实际需处理数据尾部的tap位数据,tap = N/2,所述数据尾为所述实 际需处理数据Dl ;
[0013] 对所述需处理数据D进行分割和重叠,得到g个数据块;其中,每一个所述数据块 包括所述需处理数据D中N个连续的采样点,第i个数据块尾部的tap位数据与第i+Ι个 数据块头部的tap位数据相同,i = 1,2, · · ·,或g-1,g = (T*M+tap)/tap_l ;
[0014] 对所述g个数据块分别进行频域处理,得到g个频域处理后的数据块;
[0015] 从所述g个频域处理后的数据块中,获得频域处理后的实际需处理数据D1。
[0016] 结合第一方面,在第一方面的第一实施方式中,对所述g个数据块分别进行频域 处理,包括:
[0017] 当g不能整除T时,将所述g个数据块分配到b个并行通道进行傅里叶变换FFT 运算;其中,所述b个并行通道中第一通道bl在所述T个时钟周期内完成一个数据块的FFT 运算,所述b个并行通道中除所述bl外的其他并行通道各自在每个所述时钟周期完成一个 数据块的FFT运算j =「g/rl,「]表示向上取整运算;
[0018] 当g能整除T时,将所述g个数据块分配到P个并行通道进行FFT运算,其中,所 述P个并行通道中每个通道各自在每个所述时钟周期完成一个数据块的FFT运算,p = g/ T。
[0019] 结合第一方面及第一方面的第一实施方式,在第一方面的第二实施方式中,所述 方法还包括:
[0020] 对每一个完成FFT运算后的数据块分别进行频域相移处理。
[0021] 结合第一方面,在第一方面的第三实施方式中,从所述g个频域处理后的数据块 中,获得频域处理后的实际需处理数据Dl,包括:
[0022] 对每一个所述频域处理后的数据块进行反傅里叶变换IFFT运算,得到g个完成 IFFT运算后的数据块;
[0023] 将每一个完成IFFT运算后的数据块的头部和尾部各tap/2位数据丢弃,得到g个 去重叠的数据块;
[0024] 按照各个所述数据块的编号的排列顺序,对所述g个去重叠的数据块进行排列, 得到频域处理后的实际需处理数据D1,其中,各个所述数据块的编号是依照所述g个数据 块各自头部的tap位数据在所述需处理数据D中的排列顺序排列的。
[0025] 结合第一方面及第一方面的第一至第三实施方式,在第一方面的第四实施方式 中,对所述D进行分割和重叠,得到g个数据块,包括:
[0026] 将所述D分割为c个连续的数据序列,每一个所述数据序列包括所述需处理数据 D中tap个连续的采样点,每一个所述数据序列包括的采样点不同;c = g+Ι ;
[0027] 将相邻两个所述数据序列拼接成一个数据块,得到所述g个数据块。
[0028] 第二方面,提供了一种频域处理装置,所述装置包括:
[0029] 第一获取模块,用于获得当前周期实际需处理数据Dl ;其中,所述实际需处理数 据Dl包括T个时钟周期输入的采样数据,每一个所述时钟周期输入的采样数据包括M个连 S7//77〇 续的采样点,T = ,sumO为M与N的最小公倍数,N为预设FFT所需点数; 2M
[0030] 确定模块,用于确定当前周期需处理数据D ;其中,所述需处理数据D包括数据头 和数据尾,所述数据头为前一个周期实际需处理数据尾部的tap位数据,tap = N/2,所述数 据尾为所述实际需处理数据Dl ;
[0031] 重叠模块,用于对所述需处理数据D进行分割和重叠,得到g个数据块;其中,每一 个所述数据块包括所述需处理数据D中N个连续的采样点,第i个数据块尾部的tap位数 据与第i+Ι个数据块头部的tap位数据相同,i = 1,2,· · ·,或g-l,g = (T*M+tap)/tap-l ;
[0032] 处理模块,用于对所述g个数据块分别进行频域处理,得到g个频域处理后的数据 块;
[0033] 第二获取模块,用于从所述g个频域处理后的数据块中,获得频域处理后的实际 需处理数据Dl。
[0034] 结合第二方面,在第二方面的第一实施方式中,所述处理模块用于,
[0035] 当g不能整除T时,将所述g个数据块分配到b个并行通道进行傅里叶变换FFT 运算;其中,所述b个并行通道中第一通道bl在所述T个时钟周期内完成一个数据块的FFT 运算,所述b个并行通道中除所述bl外的其他并行通道各自在每个所述时钟周期完成一个 数据块的FFT运算;6 =「g/rl,「]表示向上取整运算;
[0036] 当g能整除T时,将所述g个数据块分配到p个并行通道进行FFT运算,其中,所 述P个并行通道中每个通道各自在每个所述时钟周期完成一个数据块的FFT运算,p = g/ T。
[0037] 结合第二方面及第二方面的第一实施方式,在第二方面的第二实施方式中,所述 处理模块还用于,
[0038] 对每一个完成FFT运算后的数据块分别进行频域相移处理。
[0039] 结合第二方面,在第二方面的第三实施方式中,所述第二获取模块包括:
[0040] 反傅里叶变换IFFT单元,用于对每一个所述频域处理后的数据块进行IFFT运算, 得到g个完成IFFT运算后的数据块;
[0041] 去重叠单元,用于将每一个完成IFFT运算后的数据块的头部和尾部各tap/2位数 据丢弃,得到g个去重叠的数据块;
[0042] 排列单元,用于按照各个所述数据块的编号的排列顺序,对所述g个去重叠的数 据块进行排列,得到频域处理后的实际需处理数据D1,其中,各个所述数据块的编号是依照 所述g个数据块各自头部的tap位数据在所述需处理数据D中的排列顺序排列的。
[0043] 结合第二方面及第二方面的第一至第三实施方式,在第二方面的第四实施方式 中,所述
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1