基于lte系统的fft/ifft变换装置的制造方法_3

文档序号:9865463阅读:来源:国知局
[0127] 经共辆处理后的第四序列/(m)即为前述的X化)进行反变换得到的序列x(n)。 [01%]与512点FFT/IFFT处理单元2相类似,基r运算单元亦采用块浮点方式进行基r运 算、乘Wl/r、乘W1/N和乘W512的运算。
[0129] 在本发明其他实施例中,请参见图3或图4,上述基r运算单元4可包括写控制单元、 第Ξ共辆处理单元、第四共辆处理单元、第一至第四兵鸟缓存单元、旋转因子第一存储单 元、旋转因子第二存储单元、旋转因子第Ξ存储单元、读控制单元、第一旋转因子读控制单 元、第一多路选择器(MUX1)、旋转因子相乘单元、块浮点处理单元、第一至第Ξ复数相乘单 元、第一至第Ξ复数相加单元、第二多路选择器(MUX2)。
[0130] 图1或图2中的输出端5具体可为图3或图4中的第Ξ多路选择器MUX3。
[0131] 其中,图3对应上述原理一,图4对应上述原理二,但图3和图4中的基r运算单元所 包含的元器件相同,各元器件间的连接关系也相同。下面将一起介绍。
[0132] 其中,
[0133] 写控制单元:用于在N大于512时,对上述512点FFT/IFFT处理单元的输出结果进行 写控制:将上述r组变换结果中的第i组变换结果输出到第一至第四兵鸟缓存单元中的第i 兵鸟缓存单元。
[0134] 也即,将p(m)或p*(m)位于r的正整数倍减(r-i)位置上的512点经FFT/IFFT变换的 变换结果输出到第i兵鸟缓存单元。
[0135] 例如,N=1024时,将p(m)或p*(m)中位于2的正整数倍减1位置上的512点进行FFT/ IFFT变换后的变换结果存入第一兵鸟缓存单元,将p(m)或i/(m)位于2的正整数倍位置上的 512点进行FFT/IFFT变换后的变换结果存入第二兵鸟缓存单元,其它变换点数W此类推,不 再寶述。
[0136] 可通过配置写控制单元来实现将p(m)或i/(m)中位于r的正整数倍减(r-i)位置上 的512点经FFT/IFFT变换后的变换结果输出到第i兵鸟缓存单元。在具体实现时,输入控制 单元可与写控制单元共享配置数据。
[0137] 第一至第四兵鸟缓存单元:用于存储写控制单元输出的数据,运四个兵鸟缓存单 元完全相同,每个兵鸟缓存单元深度为1024即可。
[0138] 旋转因子第一存储单元:用于存储(1024点和2048点FFT/IFFT计算时需要的512个 第一旋转因子(第一组第一旋转因子)巧技4,k〇 = 0,l,2,...511。
[0139] 旋转因子第二存储单元:用于存储1536点FFT/IFFT计算时需要的512个第一旋转 因子(第二组第一旋转因子)》ik,k〇=〇,l,2,.. .511;
[0140] 旋转因子第Ξ存储单元:用于存储2048点FFT/IFFT计算时需要的另外512个第一 旋转因子(第Ξ组第一旋转因子)灯這V ko = 0,1,2,. . . 511。
[0141] 旋转因子第一至第Ξ存储单元可统称旋转因子存储单元。
[0142] 读控制单元用于:分r次同时向第一至第r兵鸟缓存单元的相同地址空间发出读指 令W读取出上述r组变换结果,将读取的r组变换结果发送到上述块浮点处理单元,W及控 制第一旋转因子读控制单元每次读取第一旋转因子的时刻(读控制单元每次发出读指令 时,就控制第一旋转因子读控制单元也同步读取对应的旋转因子存储单元)。
[0143] 需要说明的是,每一次读取都读取出前述的r组变换结果,读r次。在第j次读取中 被读出的r组变换结果,用于计算Y(m)或y(m)或Y*(m)或y*(m)的第512(j-l)+l~512j位置上 的数据,非。
[0144] 例如,当N = 204別寸,读控制单元同时向第一至第四兵鸟缓存单元的相同地址空间 发出有效的读指令,对四个兵鸟缓存单元同时读四次,每次连续读出512个数据,其中:第一 次从第一至第四兵鸟缓存单元同时读出的512X4个数据(四组变换结果),用于计算Y(m)或 y(m)或护(m)或/(m)的前512个数据;第二次从第一至第四兵鸟缓存单元同时读出的512X4 个数据(四组变换结果),用于计算Y(m)或y(m)或护(m)或y^m)的第一中间512个数据;第Ξ 次从第一至第四兵鸟缓存单元同时读出的512X4个数据(四组变换结果),用于计算Y(m)或 y(m)或护(m)或/(m)的第二中间的512个数据;第四次从第一至第四兵鸟缓存单元同时读出 的512X4个数据(四组变换结果),用于计算Y(m)或y(m)或护(m)或/(m)的后512个数据。
[0145] 图3中的第一旋转因子读控制单元:用于控制旋转因子第一存储单元、旋转因子第 二存储单元、旋转因子第Ξ存储单元中数据的读取,并在(N巧12)变换标志为第一取值时将 读取出的第一旋转因子输出到旋转因子相乘单元,在(N巧12)上述变换标志为第二取值时, 将读取出的第一旋转因子输出到上述第Ξ共辆处理单元。
[0146] 图4中的第一旋转因子读控制单元:用于控制旋转因子第一存储单元、旋转因子第 二存储单元、旋转因子第Ξ存储单元中数据的读取,并在(N巧12)变换标志为第二取值时将 读取出的第一旋转因子输出到旋转因子相乘单元,在(N巧12)上述变换标志为第一取值时, 将读取出的第一旋转因子输出到上述第Ξ共辆处理单元。
[0147] 其中;
[0148] N=1024时,第一旋转因子读控制单元从旋转因子第一存储单元中读出旋转因子 喊4 ;;
[0149] n=1536时,第一旋转因子读控制单元从旋转因子第二存储单元中读出旋转因子 赠6;
[0150] N = 2048时,第一旋转因子读控制单元同时从旋转因子第一存储单元中读出旋转 因子巧洁4、从旋转因子第Ξ存储单元中读出旋转因子^益8。
[0151] 需要说明的是,读控制单元和第一旋转因子读控制单元分别需要对相应的兵鸟缓 存单元和相应旋转因子存储单元同步的读取r次。
[0152] 第Ξ共辆处理单元用于,对输入的数据进行共辆处理得到经共辆处理后的第一旋 转因子,并输出至旋转因子相乘单元;例如,对胆惠4,4〇 = 〇,1,2,...511进行共辆处理得到 乱k〇 = 0,l,2,. . .511。
[0153] 第一多路选择器MUX1用于,从多个第二旋转因子中选择一个第二旋转因子;第二 旋转因子包括哼、巧1、解、時、啊、巧>、听、畴、:咚和听。
[0154] 此外,图3的MUX1在N大于512并且上述变换标志为第一取值时,将选择出的第二旋 转因子输出到上述旋转因子相乘单元;在N大于512并且上述变换标志为第二取值时,将选 择出的第二旋转因子输出到上述第四共辆处理单元。
[0155] 图4中的MUX1则相反,在N大于512并且上述变换标志为第二取值时,将选择出的第 二旋转因子输出到上述旋转因子相乘单元;在N大于512并且上述变换标志为第一取值时, 将选择出的第二旋转因子输出到上述第四共辆处理单元。
[0156] 图3或图4中的第二旋转因子参数1为第一组第二旋转因子,包括和f巧,用于 1024和 2048 点 FFT/IFFT 的计算。
[0157] 第二旋转因子参数2为第二组第二旋转因子,包括賊、巧1和巧2,用于1536点 FFT/IFFT的计算。
[0158] 第二旋转因子参数3为第Ξ组第二旋转因子,包括斬、码、听、巧3、而2、 ;听,用于2048点FFT/IFFT计算。
[0159] 实际实现过程中会根据旋转因子的特性进行简化;
[0160] 例如:斯2。=职3。=味..1" = 二 1,的:二化^:| =啊=-1。
[0161] 更具体的,当N=1024时,计算Wm)或y(m)或Y*(m)或y*(m)的前512个数据时选择 嗎\后512个数据时选择砍^ :
[0162] 当N=1536时,计算パm)或パm)或护(m)或y^m)的前512个数据时选择巧f,中间 512个数据时选择,后512个数据时选择;
[0163] 当N = 204別寸,计算Y(m)或y(m)或Y*(m)或y*(m)的前512个变换结果时选择巧^和 第一中间512个变换结果时选择巧;和}巧、第二中间512个变换结果时选择巧f和巧% 最后512个变换结果时选择W43和。
[0164] 上述第四共辆处理单元:用于对输入的数据进行共辆处理得到经共辆处理后的第 二旋转因子,并输出至上述旋转因子相乘单元;
[0165] 旋转因子相乘单元:将上述第一旋转因子和第二旋转因子进行复数相乘运算得到 第一计算结果G和第二计算结果H,或者,将经共辆处理后的第一旋转因子和经共辆处理后 的第二旋转因子进行复数相乘运算得到第一计算结果G和第二计算结果H,并将第一计算结 果G和第二计算结果Η分别输出到上述第一复数相乘单元和第二复数相乘单元。
[0166] 更具体的,对于图3中的旋转因子相乘单元而言,若Ν=1024并且变换标志为第一 取值,令Η = 0,在计算Υ(m)或y (m)中的第512 (j-1) +1~512 j位置上的数据时G =妒/-1 * WiIa : 若N=1024并且变换标志为第二取值,H=0,在计算Y(m)或y(m)中的第512(j-l)+l~512j位 置上的数据时巧二只*。图4中的旋转因子相乘单元则与之恰恰相反。
[0167] 对于图3中的旋转因子相乘单元而言,若N=1536并且变换标志为第一取值,在计 算Y(m)或y(m)中第512(j-l)~512j位置上的数据时G =甘=岭-1*巧1^ ;若N=i536并且变换标 志为第二取值,在计算Y(m)或y (m)中第512 (j-1)~512 j位置上的数据时G = W =听去; 图4中的旋转因子相乘单元则与之恰恰相反。
[0168] 对于图3中的旋转因子相乘单元而言,若N=2048并且变换标志为第一取值,在计 算パm)或y(m)中第512( j-l) + l~512j位置上的数据时,G:=啊'-1 η·Τ茲g,好二私; 若N = 2048并且变换标志为第二取值,在计算Y(m)或y(m)中第512(j-l) + l~512j位置上的
数据时 W W尸* W,款。图4中的旋转因子相乘单元则与之恰恰相 - 0 反。
[0169] 块浮点处理单元:用于对输入的上述r组变换结果进行块浮点处理,并将处理结果 发送到第一复数相乘单元和第一、二复数相加单元。
[0170] 一般块浮点处理的得到的处理结果实际上就是尾数,块浮点因子就是指数。
[0171] 在N=1024时,上述块浮点处理单元的第一输出端输出的第一组处理结果,第四输 出端输出第二组处理结果,第二输出端和第Ξ输出端输出0;在N= 1536时,上述块浮点处理 单元的第二输出端输出0,第一输出端、第Ξ输出端和第四输出端分别输出第一至第Ξ组处 理结果;在Ν=204別寸,上述块浮点处理单元的第一至第四输出端分别输出第一至第四组处 理结果。
[0172] 为了保证1024、1536和2048点FFT/IFFT处理架构都相同,在Ν= 1024时,块浮点处 理单元的第一输出端A输出的是第一组处理结果(也即,读控制单元从第一兵鸟缓存单元中 读出的数据经块浮点处理后的结果),第四输出端D输出的是第二组处理结果第二组处理结 果(也即,读控制单元从第二兵鸟缓存单元中读出的数据经块浮点处理后的结果);块浮点 处理单元的第二输出端B和第Ξ输出端C输出的是0;
[0173] N=1536时,块浮点处理单元第二输出端B输出0,第一输出端A、第Ξ输出端C和第 四输出端D分别输出的是第一至第Ξ组处理结果,也即,分别输出的是读控制单元从第一至 第Ξ兵鸟
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1