《一种无需重新排序的4点WFTA处理器和方法.pdf》由会员分享,可在线阅读,更多相关《一种无需重新排序的4点WFTA处理器和方法.pdf(8页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102929838 A (43)申请公布日 2013.02.13 CN 102929838 A *CN102929838A* (21)申请号 201210435987.0 (22)申请日 2012.11.05 G06F 17/14(2006.01) G06F 17/16(2006.01) (71)申请人 苏州威士达信息科技有限公司 地址 215163 江苏省苏州市高新区科灵路 78 号苏高新软件园 7 号楼 102 (72)发明人 张鹏 蔡超时 刘昌银 (54) 发明名称 一种无需重新排序的4点WFTA处理器和方法 (57) 摘要 本发明涉及一种无需重新排序的 4 点。
2、 WFTA 处理器, 其特征在于, 所述处理器主要由输入矩阵 I、 可变对角矩阵A、 输出矩阵O和复数乘法器M1 M3四部分组成。输入矩阵 I 通过复数乘法器 M1与 输入向量 v 相乘得到向量 p, 可变对角矩阵 A 通过 复数乘法器 M2与向量 p 相乘得到向量 q, 输出矩 阵 O 通过复数乘法器 M3与向量 q 相乘得到输出向 量 V。本发明去除了 N 点变址同序素因子算法中 4点WFTA涉及的重新排序操作, 简化了控制逻辑, 提高了运算速度, 节约了存储器消耗, 降低了硬件 成本。 (51)Int.Cl. 权利要求书 1 页 说明书 4 页 附图 2 页 (19)中华人民共和国国家知。
3、识产权局 (12)发明专利申请 权利要求书 1 页 说明书 4 页 附图 2 页 1/1 页 2 1. 一种无需重新排序的 4 点 Winograd 快速傅里叶变换处理器, 它嵌套于 s 维的 N 点 变址同序素因子算法, 其中, N=N1N2Ns, 任意两个不同因子 Ni和 Nj互素, i 1,2,s, j=1,2,s, 当某一因子 Ni=4 时, 所述处理器可用于去除 N 点变址同序素因子算法第 i 维 FFT 的重新排序操作, 其特征在于, 所述处理器包括 : 复数乘法器 M1 M3, 它们完成矩阵与向量的乘法运算 ; 输入矩阵 I, 它通过复数乘法器 M1与输入向量 v 相乘得到向量 。
4、p ; 可变对角矩阵 A, 它通过复数乘法器 M2与向量 p 相乘得到向量 q ; 输出矩阵 O, 它通过复数乘法器 M3与向量 q 相乘得到输出向量 V。 2. 如权利要求 1 所述的 4 点 Winograd 快速傅里叶变换处理器, 其特征在于, 所述输入 矩阵 I 和输出矩阵 O 与常规的 4 点 Winograd 快速傅里叶变换处理器相同, 而对角矩阵由常 规的常数矩阵修改为可变矩阵 A。 3. 如权利要求 1 所述的 4 点 Winograd 快速傅里叶变换处理器, 其特征在于, 所述可变 对角矩阵 A 对角线上的各元素是角度参数 =2/4* N/44的函数, 其中, N/44表示 。
5、对 N/4 取模 4 操作。 4. 一种去除 N 点变址同序素因子算法第 i 维 FFT 重新排序操作的 4 点 Winograd 快速 傅里叶变换处理方法, 其中, N=N1N2Ns, 任意两个不同因子 Ni和 Ni互素, i 1,2,s, j=1,2,s, Ni=4, 其特征在于, 所述处理方法包括以下步骤 : (1) 根据 N 确定角度参数 =2/4* N/44的具体取值, 在此基础上初始化可变对角 矩阵 A 对角线上各元素的数值, 使 A 变为常数, 初始化变量 l=0, 其中, 0 l4 表示对 N/4 取模 4 操作 ; (2) 从输入序列 xn 中读取 4 个数据, 它们的索引是。
6、 n= N/4*m+4*l N, 它们构成 向量 v, 其中, 0 m4的函数, 其中, N/44表示对 N/4 取模 4 操作。对于不同的 N, 修改的 说 明 书 CN 102929838 A 3 2/4 页 4 4 点 WFTA 的对角矩阵不尽相同。 0008 对于第 i 维 FFT, 需进行 N/4 次无需重新排序的 4 点 WFTA, 无需重新排序, 简化了 控制逻辑, 共节约了 N/4*4=N 个时钟周期, 提高了运算速度, 存储器消耗减少了一半, 降低 了硬件成本。 0009 关于本发明的优点与精神可通过接下来的发明详述及附图得到进一步的了解。 附图说明 0010 图 1 是常规。
7、的 4 点 WFTA 处理器的功能框图 ; 0011 图 2 是输入矩阵 I 的具体构成 ; 0012 图 3 是输出矩阵 O 的具体构成 ; 0013 图 4 是对角矩阵 D 对角线上的具体构成 ; 0014 图 5 是预扰乱的 4 点 WFTA 处理器的结构示意图 ; 0015 图 6 是后扰乱的 4 点 WFTA 处理器的结构示意图 ; 0016 图 7 是无需重新排序的 4 点 WFTA 处理器的功能框图 ; 0017 图 8 是可变对角矩阵 A 对角线上的具体构成。 具体实施方式 0018 下面结合附图和具体实施例对本发明作进一步说明, 但不作为对本发明的限定。 0019 N 点序列。
8、 x(n) 的 FFT 为 0020 0021 其中, n,k=0,1,N-1, WN=e-j2/N。直接计算 N 点 FFT 的乘法和加法运算量都与 N 的平方成正比。当 N 较大时, 运算量很大。 0022 为了降低计算复杂度, 当N不是2的幂次时, 可采用嵌套多维的PFA实现N点FFT。 假设 N 可分解为 s 个两两互素因子的乘积, 即 N=N1N2Ns。也就是说, 任意两个因子 Ni和 Nj(i,j=1,2,s, 且 i j) 的最大公约数是 1。注意, Ni未必是素数。N 点 PFA 的基本原 理是, 把一维大点数 FFT 映射成 s 维 FFT, 第 i 维 FFT 进行 N/N。
9、i次 Ni点小点数 FFT。小点数 FFT 可借助于 Cooley-Tukey 算法、 WFTA 以及其它高效算法。 0023 为了使 PFA 总体上是同序的, 在一维 FFT 映射成 s 维 FFT 时, 根据中国余数定理, 输入索引 n 和输出索引 k 采用如下相同的映射方式 : 0024 0025 0026 其中, 符号 N表示模 N 运算, ni,ki=0,1,Ni-1。将式 (2) 和 (3) 代入式 (1), 整理可得 : 0027 说 明 书 CN 102929838 A 4 3/4 页 5 0028 其中, 0029 0030 0031 对比式 (2) 和 (3) 容易发现, 。
10、索引 n 和 k 的映射方式本质上完全相同。因此, 只要 式 (4) 中每维 FFT 的索引 ni和 ki都是自然顺序的, N 点 PFA 就是同序的。 0032 在式 (4) 中, 第 i(i=1,2,s) 维 FFT 的傅里叶变换因子可写作 0033 0034 或 0035 0036 式中, 0037 0038 0039 众所周知, 常规的 Ni点 FFT 算法的输入和输出都是按照自然顺序的。如果式 (4) 中的第 i 维 FFT 采用常规的 Ni点 FFT 算法, 那么式 (5) 是按照 ni的自然顺序输入、 k i自 然顺序输出, 式 (6) 则是按照 ni的自然顺序输入、 ki的自然。
11、顺序输出。然而, 由式 (2) 和 (3) 可知, 同序 PFA 要求式 (4) 中的第 i 维 FFT 按照 ni的自然顺序输入、 ki自然顺序输出。 可见, 如果式 (4) 中的第 i 维 FFT 采用常规的 Ni点 FFT 算法, 那么必须重新排序。具体而 言, 式 (5) 和 (6) 分别根据式 (7) 和 (8) 中的规则进行后扰乱和预扰乱。可见, 式 (4) 中的 第 i 维 FFT 是变址的。变址通过重新排序实现。为了去掉重新排序这一额外操作, 我们必 须修改常规的 Ni点 FFT 算法, 将重新排序操作吸纳其中。 0040 常规的 Ni点 WFTA 可用向量与矩阵的连乘表示, 。
12、即 0041 V=O*D*I*v (9) 0042 其中, v 和 V 分别是由 Ni点输入和输出序列构成的向量, I 和 O 分别是输入和输出 矩阵, D 是对角矩阵。通常, 矩阵 I 和 O 中的元素都只可能是 0、 1 和 j, 与向量相乘时不 涉及实质性乘法。对于对角矩阵 D, 除对角上的元素非零外, 其它位置上的元素均为 0。 0043 当 Ni=4 时, N 点变址同序 PFA 的第 i 维 FFT 可采用 4 点 WFTA。图 1 给出了常规的 4 点 WFTA 处理器的功能框图。4 点输入序列构成向量 v, 它先与矩阵 I 相乘, 运算所得向量 再与对角矩阵D相乘, 运算所得向。
13、量最后与矩阵O相乘, 运算所得向量V即为4点输出序列。 图 2 和 3 分别给出了输入矩阵 I 和输出矩阵 O 的具体构成。图 4 给出了对角矩阵 D 对角线 上的具体构成, 从左上角到右下角的元素分别是 d0 d3。 0044 变址同序 PFA 第 i 维 FFT 的变址是通过重新排序实现的。当 Ni=4 时, 图 5 和 6 分 别给出了预扰乱和后扰乱的 4 点 WFTA 处理器的结构示意图。为了去掉预扰乱或后扰乱中 的重新排序操作, 我们必须修改常规的 Ni=4 点 WFTA, 将重新排序操作吸纳其中。 0045 图 7 给出了无需重新排序的 4 点 WFTA 处理器的功能框图, 它主要。
14、由输入矩阵 I、 可变对角矩阵 A、 输出矩阵 O 和复数乘法器四种功能模块组成。输出向量与输入向量满足 : V=O*A*I*v。与常规的 4 点 WFTA 相比, 无需重新排序的 4 点 WFTA 的矩阵 I 和 O 均保持不变, 说 明 书 CN 102929838 A 5 4/4 页 6 对角矩阵不再是常数, 其对角线上的各元素修改为角度参数 =2/4* N/44的函数, 其 中, N/44表示对 N/4 取模 4 操作。图 8 给出了可变对角矩阵 A 对角线上的具体构成, 从 左上角到右下角的元素分别是 a0a3。对于不同的 N, 无需重新排序的 4 点 WFTA 的对角矩阵 不尽相同。
15、。 0046 本发明提供了一种去除变址同序 PFA 中 4 点 WFTA 重新排序的方法, 当 Ni=4 时, N 点变址同序 PFA 的第 i 维 FFT 可通过 N/4 次无需重新排序的 4 点 WFTA 加以实现, 其步骤如 下 : 0047 (1) 根据 N 确定角度参数 =2/4* N/44的具体取值, 在此基础上初始化可变 对角矩阵 A 对角线上各元素的数值, 使 A 变为常数, 初始化变量 l=0(0 lN/4) ; 0048 (2) 从输入序列 xn 中读取 4 个数据, 它们的索引是 n= N/4*m+4*l N (0 m4) , 它们构成向量 v ; 0049 (3) 通过。
16、复数乘法器 M1, 输入矩阵 I 与向量 v 相乘, 得到向量 p ; 0050 (4) 通过复数乘法器 M2, 可变对角矩阵 A 与向量 p 相乘, 得到向量 q ; 0051 (5) 通过复数乘法器 M3, 输出矩阵 O 与向量 q 相乘, 得到向量 V ; 0052 (6) 将向量 V 中的 4 个数据依次写入到输出序列 Xk 中, 写入的索引与读取的索 引完全相同, 仍然是 k= N/4*m+4*l N; 0053 (7) 以 1 为步长递增改变 l 的取值, 重复步骤 (2)(6), 直到完成 N/4 次无需重新 排序的 4 点 WFTA。 0054 如果 N 点变址同序 PFA 的。
17、第 i 维 FFT 采用常规的 4 点 WFTA, 那么每次重新排序需 要 4 个时钟周期, 这意味执行 N/4 次常规的 4 点 WFTA 共需 N/4*4=N 个时钟周期进行重新排 序。可见, 若 N 点变址同序 PFA 的第 i 维 FFT 采用本发明, 则无需重新排序, 从而简化控制 逻辑, 可节约 N 个时钟周期, 提高了运算速度, 存储器需求可减少一半, 降低了硬件成本。 0055 以上通过具体实施方式和实施例对本发明进行了详细的说明, 对于本领域的技术 人员来说, 在不脱离本发明原理的情况下, 还可做出若干变形和改进, 这些也应视为本发明 的保护范围。 说 明 书 CN 102929838 A 6 1/2 页 7 图 1 图 2 图 3 图 4 图 5 图 6 说 明 书 附 图 CN 102929838 A 7 2/2 页 8 图 7 图 8 说 明 书 附 图 CN 102929838 A 8 。