基于LTE系统的FFT/IFFT变换装置制造方法及图纸

技术编号:14805645 阅读:42 留言:0更新日期:2017-03-15 00:17
本发明专利技术公开基于LTE系统的FFT/IFFT变换装置,把LTE系统定义的六种变换点数分成两类:较小的变换点数(128、256、512)全部为2的整数次幂,直接进行相应的FFT/IFFT变换。较大的变换点数(1024、1536、2048)全部基于512点FFT或IFFT以及基r运算进行实现,结构简单,需要的乘法器和加法器资源少,与现有技术相比,既能同时支持六种传输带宽处理又能支持块浮点FFT/IFFT变换。而且执行1536点FFT/IFFT变换只需要使用并存储512个旋转因子,执行1024、1536、2048点FFT/IFFT变换总共只需要存储1536个旋转因子,减少了资源的占用。

【技术实现步骤摘要】

本专利技术涉及数字信号处理领域、通信领域,特别是涉及基于LTE系统的FFT/IFFT变换装置
技术介绍
LTE系统采用了15KHz的子载波带宽,通过设置不同子载波数目,更确切的说是映射为不同资源块(PRB)数目实现1.4MHz到20MHz可变的系统带宽,LTE系统定义的6种不同的系统带宽。这6种传输带宽对应的DFT/IDFT变换点数分别为128、256、512、1024、1536和2048。针对LTE系统要求的这六种变换点数,主流FPGA厂商例如XILINX公司和ALTERA公司均提供了基于各自FFT/IFFTIP核的解决方案,但其共有的缺陷是无法只使用一个IP核满足既能同时实现这六种传输带宽的要求又能进行块浮点FFT/IFFT处理,专利《一种1536点的FFT/IFFT实现方法及装置》(申请号:200910172964.3)提出了一种1536点FFT/IFFT实现方法及装置,无法支持块浮点FFT/IFFT变换,而且需要使用并存储1536个旋转因子,这无疑会耗费更多的存储资源。
技术实现思路
本专利技术实施例的目的是提供基于LTE系统的FFT/IFFT变换装置,以支持所有传输带宽的处理以及支持块浮点FFT/IFFT变换。为实现上述目的,本专利技术提供了如下方案:一种基于LTE的FFT/IFFT变换装置,包括输入乒乓缓存单元、512点FFT/IFFT处理单元、输入控制单元、基r运算单元和输出端;其中,所述输入控制单元用于:接收配置数据和第一序列p(m),m=0,1,2…N-1,N表示变换点数或序列的长度;所述配置数据至少包括N和变换标志;其中,所述变换标志的第一取值用于表征需要对所述第一序列进行正变换,所述变换标志的第二取值用于表征需要对所述第一序列进行反变换;在所述N不大于512时,直接将所述第一序列p(m)输入至所述512点FFT/IFFT处理单元;在所述N大于512时,将所述第一序列p(m)输入至所述输入乒乓缓存单元;在所述N大于512时,分r次从所述输入乒乓缓存单元中读出p(m)发送至所述512点FFT/IFFT处理单元;r=N/512;其中,第i次从所述输入乒乓缓存单元中读出的数据为:所述p(m)位于r的正整数倍减r-i位置上的512点数据,1≤i≤r;所述512点FFT/IFFT处理单元用于执行变换长度为2的n次幂的FFT/IFFT变换,1≤n≤9,其中:在所述N不大于512时,对输入的数据进行相应的FFT/IFFT变换,并将变换结果输出至所述输出端;或者,在所述N大于512并且所述变换标志为第一取值时,对所述输入控制单元分r次输入的数据进行r次FFT变换,得到r组变换结果;或者,在所述N大于512并且所述变换标志为第二取值时,对所述输入控制单元分r次输入的数据进行r次IFFT变换,得到r组变换结果;其中,第i组变换结果中的512点数据为,所述p(m)位于r的正整数倍减r-i位置上的512点数据经FFT或IFFT变换后的变换结果;所述基r运算单元用于:在所述N大于512并且所述变换标志为第一取值时,对所述r组变换结果进行基r运算得到第二序列Y(m),并将所述第二序列Y(m)输出至所述输出端,所述第二序列Y(m)为对所述第一序列p(m)进行正变换后的序列;或者,在所述N大于512并且所述变换标志为第二取值时,对所述r组变换结果进行基r运算得到第三序列yy(m),并将yy(m)乘以1/r得到第四序列y(m),将所述y(m)输出至所述输出端,所述第四序列y(m)为对所述第一序列p(m)进行反变换后的序列;所述512点FFT/IFFT处理单元采用块浮点方式运算,所述基r运算单元采用块浮点方式进行基r运算和乘以1/r的运算;所述块浮点方式以块浮点因子和尾数表示一个数据,所述第i组变换结果中的512点数据的块浮点因子相同。一种基于LTE的FFT/IFFT变换装置,包括输入乒乓缓存单元、512点FFT/IFFT处理单元、输入控制单元、基r运算单元和输出端;其中,所述输入控制单元用于:接收配置数据和第一序列p(m),m=0,1,2…N-1,N表示变换点数或序列的长度;所述配置数据至少包括N和变换标志;其中,所述变换标志的第一取值用于表征需要对所述第一序列进行正变换,所述变换标志的第二取值用于表征需要对所述第一序列进行反变换;在所述N不大于512时,直接将所述第一序列p(m)输入至所述512点FFT/IFFT处理单元;在所述N大于512时,将所述第一序列p(m)输入至所述第一共轭处理单元,由第一共轭处理单元对所述p(m)进行共轭处理,得到经共轭处理后的第一序列p*(m),并将p*(m)输出至所述输入乒乓缓存单元;在所述N大于512时,分r次从所述输入乒乓缓存单元中读出所述p*(m)发送至所述512点FFT/IFFT处理单元;r=N/512;其中,第i次从所述输入乒乓缓存单元中读出的数据为:所述p*(m)位于r的正整数倍减r-i位置上的512点数据,1≤i≤r;所述512点FFT/IFFT处理单元用于执行变换长度为2的n次幂的FFT/IFFT变换,1≤n≤9,其中:在所述N不大于512时,对输入的数据进行相应的FFT/IFFT变换,并将变换结果输出至所述输出端;或者,在所述N大于512并且所述变换标志为第一取值时,对所述输入控制单元分r次输入的p*(m)进行r次IFFT变换,得到r组变换结果,并发送到所述基r运算单元;或者,在所述N大于512并且所述变换标志为第二取值时,对所述输入控制单元分r次输入的p*(m)进行r次FFT变换,得到r组变换结果,并发送到所述基r运算单元;其中,第i组变换结果中的512点数据为,所述p*(m)位于r的正整数倍减r-i位置上的512点数据经FFT或IFFT变换后的变换结果;所述基r运算单元用于:在N大于512并且变换标志为第一取值时,对输入的r组变换结果进行基r运算,得到的运算结果再乘以512后构成第二序列Y(m),并将第二序列Y(m)输出至第二共轭处理单元,由第二共轭处理单元对第二序列Y(m)进行共轭处理,得到经共轭处理后的第二序列Y*(m),并输出至输出端;或者,在N大于512并且上述变换标志为第二取值时,对输入的r组变换结果进行基r运算,得到的运算结果构成第三序列yy(m),将第三序列yy(m)乘以1/N后得到第四序列y(m),并将y(m)输出至所述第二共轭处理单元进行共轭处理,得到经共轭处理后本文档来自技高网...

【技术保护点】
一种基于LTE的FFT/IFFT变换装置,其特征在于,包括输入乒乓缓存单元、512点FFT/IFFT处理单元、输入控制单元、基r运算单元和输出端;其中,所述输入控制单元用于:接收配置数据和第一序列p(m),m=0,1,2...N‑1,N表示变换点数或序列的长度;所述配置数据至少包括N和变换标志;其中,所述变换标志的第一取值用于表征需要对所述第一序列进行正变换,所述变换标志的第二取值用于表征需要对所述第一序列进行反变换;在所述N不大于512时,直接将所述第一序列p(m)输入至所述512点FFT/IFFT处理单元;在所述N大于512时,将所述第一序列p(m)输入至所述输入乒乓缓存单元;在所述N大于512时,分r次从所述输入乒乓缓存单元中读出p(m)发送至所述512点FFT/IFFT处理单元;r=N/512;其中,第i次从所述输入乒乓缓存单元中读出的数据为:所述p(m)位于r的正整数倍减r‑i位置上的512点数据,1≤i≤r;所述512点FFT/IFFT处理单元用于执行变换长度为2的n次幂的FFT/IFFT变换,1≤n≤9,其中:在所述N不大于512时,对输入的数据进行相应的FFT/IFFT变换,并将变换结果输出至所述输出端;或者,在所述N大于512并且所述变换标志为第一取值时,对所述输入控制单元分r次输入的数据进行r次FFT变换,得到r组变换结果;或者,在所述N大于512并且所述变换标志为第二取值时,对所述输入控制单元分r次输入的数据进行r次IFFT变换,得到r组变换结果;其中,第i组变换结果中的512点数据为,所述p(m)位于r的正整数倍减r‑i位置上的512点数据经FFT或IFFT变换后的变换结果;所述基r运算单元用于:在所述N大于512并且所述变换标志为第一取值时,对所述r组变换结果进行基r运算得到第二序列Y(m),并将所述第二序列Y(m)输出至所述输出端,所述第二序列Y(m)为对所述第一序列p(m)进行正变换后的序列;或者,在所述N大于512并且所述变换标志为第二取值时,对所述r组变换结果进行基r运算得到第三序列yy(m),并将yy(m)乘以1/r得到第四序列y(m),将所述y(m)输出至所述输出端,所述第四序列y(m)为对所述第一序列p(m)进行反变换后的序列;所述512点FFT/IFFT处理单元采用块浮点方式运算,所述基r运算单元采用块浮点方式进行基r运算和乘以1/r的运算;所述块浮点方式以块浮点因子和尾数表示一个数据,所述第i组变换结果中的512点数据的块浮点因子相同。...

【技术特征摘要】
1.一种基于LTE的FFT/IFFT变换装置,其特征在于,包括输入乒乓缓存单元、512点FFT/
IFFT处理单元、输入控制单元、基r运算单元和输出端;
其中,所述输入控制单元用于:
接收配置数据和第一序列p(m),m=0,1,2...N-1,N表示变换点数或序列的长度;所述
配置数据至少包括N和变换标志;其中,所述变换标志的第一取值用于表征需要对所述第一
序列进行正变换,所述变换标志的第二取值用于表征需要对所述第一序列进行反变换;
在所述N不大于512时,直接将所述第一序列p(m)输入至所述512点FFT/IFFT处理单元;
在所述N大于512时,将所述第一序列p(m)输入至所述输入乒乓缓存单元;
在所述N大于512时,分r次从所述输入乒乓缓存单元中读出p(m)发送至所述512点FFT/
IFFT处理单元;r=N/512;其中,第i次从所述输入乒乓缓存单元中读出的数据为:所述p(m)
位于r的正整数倍减r-i位置上的512点数据,1≤i≤r;
所述512点FFT/IFFT处理单元用于执行变换长度为2的n次幂的FFT/IFFT变换,1≤n≤
9,其中:
在所述N不大于512时,对输入的数据进行相应的FFT/IFFT变换,并将变换结果输出至
所述输出端;或者,
在所述N大于512并且所述变换标志为第一取值时,对所述输入控制单元分r次输入的
数据进行r次FFT变换,得到r组变换结果;或者,
在所述N大于512并且所述变换标志为第二取值时,对所述输入控制单元分r次输入的
数据进行r次IFFT变换,得到r组变换结果;
其中,第i组变换结果中的512点数据为,所述p(m)位于r的正整数倍减r-i位置上的512
点数据经FFT或IFFT变换后的变换结果;
所述基r运算单元用于:
在所述N大于512并且所述变换标志为第一取值时,对所述r组变换结果进行基r运算得
到第二序列Y(m),并将所述第二序列Y(m)输出至所述输出端,所述第二序列Y(m)为对所述
第一序列p(m)进行正变换后的序列;或者,
在所述N大于512并且所述变换标志为第二取值时,对所述r组变换结果进行基r运算得
到第三序列yy(m),并将yy(m)乘以1/r得到第四序列y(m),将所述y(m)输出至所述输出端,
所述第四序列y(m)为对所述第一序列p(m)进行反变换后的序列;
所述512点FFT/IFFT处理单元采用块浮点方式运算,所述基r运算单元采用块浮点方式
进行基r运算和乘以1/r的运算;所述块浮点方式以块浮点因子和尾数表示一个数据,所述
第i组变换结果中的512点数据的块浮点因子相同。
2.如权利要求1所述的装置,其特征在于,采用块浮点方式的方面,所述基r运算单元用
于:
以所述r组变换结果对应的块浮点因子中的任一块浮点因子作为基准块浮点因子,将
其他块浮点因子所对应的变换结果进行相应的左移或右移,以使得各组变换结果均对应基
准块浮点因子;
在固定字长下,根据变换点数的不同对所述基准块浮点因子进行调整。
3.如权利要求1或2所述的装置,其特征在于,
所述输出端为第三多路选择器;
所述基r运算单元包括写控制单元、第三共轭处理单元、第四共轭处理单元、第一多路
选通器、第二多路选择器、第一至第四乒乓缓存单元、旋转因子第一存储单元、旋转因子第
二存储单元、旋转因子第三存储单元、读控制单元、第一旋转因子读控制单元、旋转因子相
乘单元、块浮点处理单元、第一至第三复数相乘单元、第一至第三复数相加单元;
所述写控制单元用于:将所述r组变换结果中的第i组变换结果输出到所述第一至第四
乒乓缓存单元中的第i乒乓缓存单元,1≤i≤r;
所述旋转因子第一存储单元用于,存储512个第一旋转因子k0=0,1,2,...511;
所述旋转因子第二存储单元用于,存储512个第一旋转因子k0=0,1,2,...511;
所述旋转因子第三存储单元用于,存储512个第一旋转因子k0=0,1,2,...511;
所述读控制单元用于:分r次同时向第一至第r乒乓缓存单元的相同地址空间发出读指
令以读取出所述r组变换结果,将读取的r组变换结果发送到所述块浮点处理单元,以及控
制所述第一旋转因子读控制单元每次读取第一旋转因子的时刻;在第j次读取中被读出的r
组变换结果,用于计算Y(m)或y(m)的第512(j-1)+1~512j位置上的数据,1≤j≤r;
所述第一旋转因子读控制单元用于:控制所述旋转因子第一存储单元、旋转因子第二
存储单元、旋转因子第三存储单元中第一旋转因子的读取,并在所述变换标志为第一取值
时将读取的第一旋转因子输出到所述旋转因子相乘单元,在所述变换标志为第二取值时,
将读取的第一旋转因子输出到所述第三轭处理单元;
所述第三共轭处理单元用于,对输入的数据进行共轭处理得到经共轭处理后的第一旋
转因子,并输出至所述旋转因子相乘单元;
所述第一多路选择器用于,从多个第二旋转因子中选择一个第二旋转因子,在N大于
512并且所述变换标志为第一取值时,将选择出的第二旋转因子输出到所述旋转因子相乘
单元,在N大于512并且所述变换标志为第二取值时,将选择出的第二旋转因子输出到所述
第四共轭处理单元;所述第二旋转因子包括和所述第四共轭处理单元用于,对输入的数据进行共轭处理得到经共轭处理后的第二旋
转因子,并输出至所述旋转因子相乘单元;
所述旋转因子相乘单元用于,将所述第一旋转因子和第二旋转因子进行复数相乘运算
得到第一计算结果G和第二计算结果H,或者,将经共轭处理后的第一旋转因子和经共轭处
理后的第二旋转因子进行复数相乘运算得到第一计算结果G和第二计算结果H,并将第一计
算结果G和第二计算结果H分别输出到所述第一复数相乘单元和第二复数相乘单元;
块浮点处理单元:用于对输入的所述r组变换结果进行块浮点处理得到r组处理结果,
并将所述r组处理结果发送到第一复数相乘单元和第一、二复数相加单元;在N=1024时,所
述块浮点处理单元的第一输出端输出第一组处理结果,第四输出端输出第二组处理结果,
第二输出端和第三输出端输出0;在N=1536时,所述块浮点处理单元的第二输出端输出0,
第一输出端、第三输出端和第四输出端分别输出第一至第三组处理结果;在N=2048时,所
述块浮点处理单元的第一至第四输出端分别输出第一至第四组处理结果;
所述第一复数相乘单元用于,将所述旋转因子相乘单元输出的第一计算结果G分别与
所述块浮点处理单元的第二输出端和第四输出端输出的处理结果进行复数相乘,得到第一
复数相乘结果和第二复数相乘结果,并将所述第一复数相乘结果...

【专利技术属性】
技术研发人员:华虎军
申请(专利权)人:北京北方烽火科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1