3780点离散傅里叶变换处理器系统及其结构的制作方法

文档序号:6570351阅读:359来源:国知局
专利名称:3780点离散傅里叶变换处理器系统及其结构的制作方法
技术领域
一种3780点DFT(离散傅里叶变换)处理器系统及其结构属于DFT快速算法的硬件实现,特别涉及多载波信号DFT处理器系统技术领域。
3780点DFT处理器目前仅用于清华大学提出的数字电视地面传输方案中,它采用了具有3780个子载波的正交频分多载波调制技术。它采用的3780点DFT模块在样机中是用3片40万门FPGA来实现的,硬件资源消耗大,成本较高,其原因在于3780点DFT是是这样计算的首先把3780点DFT分解为3点DFT和1260点DFT,通过3×1260的行列交织处理和旋转因子乘法相合成起来;其中1260点DFT又分解为3点DFT和420点DFT,通过3×420的行列交织处理和旋转因子乘法予以合成;其中420点DFT又分解为4点DFT和35点DFT,通过4×35的行列交织处理和旋转因子乘法予以合成;其中35点DFT又分解为5点DFT和7点DFT,通过5×7的行列交织处理和旋转因子乘法合成起来。计算过程中的硬件消耗除了小点数DFT计算单元外,使用了总计为3780+1260+420+35=5635个复数字的存储空间作行列交织,和5个旋转因子乘法器即复数乘法器,它相当于20个实数乘法器和总计为5635个复数字的旋转因子系数存储器。其系统结构方框图见

图1。
本发明提出的3780点DFT处理器系统,其特征在于
按照下述箭头所示的运算和连接顺序,它采用以下系统中的任何一种(1)63点DFT模块→复数乘法器模块→行列交织处理器模块→60点DFT模块;(2)63点DFT模块→行列交织处理器模块→复数乘法器模块→60点DFT模块;(3)60点DFT模块→复数乘法器模块→行列交织处理器模块→63点DFT模块;(4)60点DFT模块→行列交织处理器模块→复数乘法器模块→63点DFT模块;其中,63点和60点DFT模块是一种将按小点数的7、9点或3、4、5点进行分解的DFT模块。
本发明提出的3780点DFT处理器系统的结构,其特征在于按照上述箭头所示的运算和连接顺序,在上述任何一种系统中,前面两模块共用一个芯片FPGA,后面两模块共用另一个芯片FPGA,中间用双口RAM连接。
其中,所述的63点DFT模块按下述箭头所示的运算和连接顺序,它采用以下模块结构中的任何一种(1)7点DFT模块→63点DFT的素因子算法的下标映射模块→9点DFT模块;(2)9点DFT模块→63点DFT的素因子算法的下标映射模块→7点DFT模块。
所述的60点DFT模块按下述箭头所示的运算和连接顺序,它采用以下模块结构中的任何一种(1)3点DFT模块→60点DFT的素因子算法的下标映射模块→20点DFT模块(2)20点DFT模块→60点DFT的素因子算法的下标映射模块→3点DFT模块;(3)4点DFT模块→60点DFT的素因子算法的下标映射模块→15点DFT模块;(4)15点DFT模块→60点DFT的素因子算法的下标映射模块→4点DFT模块;(5)5点DFT模块→60点DFT的素因子算法的下标映射模块→12点DFT模块;(6)12点DFT模块→60点DFT的素因子算法的下标映射模块→5点DFT模块。
所述的12点DFT模块按下述箭头所示的运算和连接顺序,它采用下述模块结构中的任何一种(1)3点DFT模块→12点DFT的素因子算法的下标映射模块→4点DFT模块;(2)4点DFT模块→12点DFT的素因子算法的下标映射模块→3点DFT模块。
所述的15点DFT模块按下述箭头所示的运算和连接顺序,它采用下述模块结构中的任何一种(1)3点DFT模块→15点DFT的素因子算法的下标映射模块→5点DFT模块;(2)5点DFT模块→15点DFT的素因子算法的下标映射模块→3点DFT模块。
所述的20点DFT模块按下述箭头所示的运算和连接顺序,它采用下述模块结构中的任何一种(1)4点DFT模块→20点DFT的素因子算法的下标映射模块→5点DFT模块;
(2)5点DFT模块→20点DFT的素因子算法的下标映射模块→4点DFT模块。
使用证明它达到了设计目的。
图2~图5本发明提出的四种不同的3780点DFT处理系统的结构框图。
图6~图7本发明提出的2种不同的63点DFT模块的结构框图。
图8~图13本发明提出的6种不同的60点DFT模块的结构框图。
图14~图15本发明提出的2种不同的12点DFT模块的结构框图。
图16~图17本发明提出的2种不同的15点DFT模块的结构框图。
图18~图19本发明提出的2种不同的20点DFT模块的结构框图。
图20本发明提出的一种3780点DFT处理系统的系统电路原理框图。
图21本发明提出的一种3780点DFT处理系统的硬件结构图。
图22本发明提出的DFT素因子算法的下标映射模块的电路原理框图。
图23本发明提出的3、5、7、9点中任何一个点数的DFT模块的电路原理框图。
请见图6~图7现以7点DFT模块→63点DFT素因子算法的下标映射模块→9点DFT模块这一63点DFT模块为例对其运算步骤进行说明(1)输入数据先进行7点DFT运算;(2)对经过步骤(1)的数据用63点DFT素因子算法的下标映射模块进行数据行列重排;(3)对经过步骤(2)重排的数据进行9点DFT运算。
请见图8~图13其各种模块结构的运算步骤与63点DFT模块的相似,不再重述。
请见图14~图15,图16~图17以及图18~19,其各种子模块结构的运算步骤也和63点DFT模块的相似,不再重复。
请见图20这是一种63点DFT模块→行列交织处理器模拟→复数乘法器模块→60点DFT模块构成的系统的电路原理框图,其他的系统与其相似。其中63点DFT模块的模块结构为7点DFT模块→63点DFT素因子算法的下标映射模块→9点DFT模块;60点DFT模块的模块结构为3点DFT模块→15点DFT素因子算法的下标映射模块→5点DFT模块→60点DFT素因子算法的下标映射模块→4点DFT模块。
请见图21这是本发明的DFT处理器系统的硬件结构图。63(或60)点DFT模块和行列交织处理模块中含有的读写地址和读写控制信号产生电路共用一个芯片FPGA,复数乘法器模块含有复数法器和输出端和上述复数乘法器相连的旋转因子系数存储器,上述复数乘法器模块和60(或63)点DFT模块共用另一个芯片FPGA,它们的型号都是VirtexE XCV300E。两块FPGA之间用一个型号为MCM69D618TQ6的双口RAM相连。N个待变换数据的每个数据经1~M条数据线DATA输入63点DFT单元,后者把63点DFT运算结果经1~M条数据线DATA和读写地址和读写控制信号产生电路写入双口RAM。它是在后者写命令WR控制下通过双口RAM的1~14个地址线ADDR写入214个地址单元中的。然后,在读写地址和读写控制信号产生电路的读命令RD控制下,从214个地址中把1~N个数据经数据线DATA读出送往复数乘法器,上述复数乘法器在控制信号下从旋转因子存储器中取出1~N个旋转因子ROTATOR后使两者作复数乘法,把1~N个乘积数据经复数乘法器1~M条数据线DATA送往60点DFT模块作60点DFT运算,其结果作为变换后数据共1~N个由数据线DATA输出。
图22是下标映射模块的电路原理框图。它含有输入/出端分别与1~m条数据写入线DATA WRITE和1~m条数据读出线DATA READ相连的存储器,在起始信号START控制下向上述存储器发出写命令WR、写地址命令WR ADDRESS的写控制电路以及在收到写控制电路的启动信号后可向上述存储器发出读出指令READ,读出地址指令RD ADDRESS的读控制电路。在读出结束后,上述读控制电路发出启动下一程序的指令START NEXT。
再见图23它是小点数如3、5、7、9点DFT模块的电路原理框图。它是采用数字信号处理中常用的Winograd算法实现的。它的数学表述式为X(k)=ODI×(n),I矩阵和O矩阵是仅由-1、0、1三种元素构成的平凡矩阵,I矩阵以及O矩阵和某向量的乘积可以各用累加器组实现;D矩阵是对角矩阵,其对角线上的元素为实数或纯虚数,复数乘法便可由两个实数乘法器来完成,整个对角矩阵乘法运算可由乘法系数产生子模块和两个实数乘法器实现,如图23所示。数据输入累加器组1后,由I矩阵系数产生和加减控制逻辑电路向累加器组1发出使能控制信号EN和加减控制逻辑信号AS以完成I矩阵乘法,其输出经多路选通器1送入两个通用乘法器以完成对角矩阵乘法,其输出输送到累加器组2,在O矩阵系数产生和加减控制逻辑电路发出的使能控制信号EN和加减控制逻辑信号AS下完成O矩阵乘法,最终经多路选通器2输出其DFT结果。对3、5、7、9点DFT的区别仅在于O、I、D的系数不同,4点DFT可表述为X(k)=A×(n),A矩阵是平凡矩阵,4点DFT可以由一组累加器及平凡系数产生和加减控制逻辑电路构成,其电路原理框图与图23中的I矩阵或O矩阵的电路原理框图相同。
由此可见,本发明仅使用了总计为3780+63+60+15=3918个复数字的存储空间作为行列交织和素因子算法下标映射用,还有一个旋转因子乘法器,相当于4个实数乘法器和容量为3780个复数字的旋转因子系数存储器,其中DFT素因子算法的下标映射模块的复杂性主要由存储器决定,因为其读写控制单元的资源消耗很少。除了小点数DFT模块外,本发明相当于节省了30%的存储空间和80%的实数乘法器。由于每个实数乘法器约需消耗近1万门,现有技术使用3片40万门FPGA,相当于使用120万门的逻辑资源,而本发明只用2片30万门FPGA,相当于使用60万门的逻辑资源,并且将主要的存储资源消耗,即63×60行列交织处理模块所需要的3780个复数字的存储器,从昂贵的FPGA中提出来用相对较便宜的双口PAM实现,成本可大大下降。
权利要求
1.一种3780点DFT(离散傅里叶变换)处理器系统含有DFT模块,复数乘法器模块和行列交织处理器模块,其特征在于按照下述箭头所示的运算和连接顺序,它采用以下系统中的任何一种(1)63点DFT模块→复数乘法器模块→行列交织处理器模块→60点DFT模块;(2)63点DFT模块→行列交织处理器模块→复数乘法器模块→60点DFT模块;(3)60点DFT模块→复数乘法器模块→行列交织处理器模块→63点DFT模块;(4)60点DFT模块→行列交织处理器模块→复数乘法器模块→63点DFT模块;其中,63点和60点DFT模块是一种将按小点数的7、9点或3、4、5点进行分解的DFT模块。
2.根据权利要求1所述的3780点DFT处理器系统所设计的系统结构,其特征在于按照上述箭头所示的运算和连接顺序,在上述任何一种系统中,前面两模块共用一个芯片FPGA,后面两模块共用另一个芯片FPGA,中间用双口RAM连接。
3.根据权利要求1所述的3780点DFT处理器系统,其特征在于所述的63点DFT模块按下述箭头所示的运算和连接顺序,它采用以下模块结构中的任何一种(1)7点DFT模块→63点DFT的素因子算法的下标映射模块→9点DFT模块;(2)9点DFT模块→63点DFT的素因子算法的下标映射模块→7点DFT模块。
4.根据权利要求1所述的3780点DFT处理器系统,其特征在于所述的60点DFT模块按下述箭头所示的运算和连接顺序,它采用以下模块结构中的任何一种(1)3点DFT模块→60点DFT的素因子算法的下标映射模块→20点DFT模块(2)20点DFT模块→60点DFT的素因子算法的下标映射模块→3点DFT模块;(3)4点DFT模块→60点DFT的素因子算法的下标映射模块→15点DFT模块;(4)15点DFT模块→60点DFT的素因子算法的下标映射模块→4点DFT模块;(5)5点DFT模块→60点DFT的素因子算法的下标映射模块→12点DFT模块;(6)12点DFT模块→60点DFT的素因子算法的下标映射模块→5点DFT模块。
5.根据权利要求1或4所述的DFT处理系统,其特征在于所述的12点DFT模块按下述箭头所示的运算和连接顺序,它采用下述模块结构中的任何一种(1)3点DFT模块→12点DFT的素因子算法的下标映射模块→4点DFT模块;(2)4点DFT模块→12点DFT的素因子算法的下标映射模块→3点DFT模块。
6.根据权利要求1或4所述的DFT处理系统,其特征在于所述的15点DFT模块按下述箭头所示的运算和连接顺序,它采用下述模块结构中的任何一种(1)3点DFT模块→15点DFT的素因子算法的下标映射模块→5点DFT模块;(2)5点DFT模块→15点DFT的素因子算法的下标映射模块→3点DFT模块。
7.根据权利要求1或4所述的DFT处理系统,其特征在于所述的20点DFT模块按下述箭头所示的运算和连接顺序,它采用下述模块结构中的任何一种(1)4点DFT模块→20点DFT的素因子算法的下标映射模块→5点DFT模块;(2)5点DFT模块→20点DFT的素因子算法的下标映射模块→4点DFT模块。
8.根据权利要求1或2所述的3780点DFT处理系统及其结构,其特征在于所述的FPGA采用型号为VirtexE XCV300E的芯片。
全文摘要
3780点DFT处理器系统及其结构属于DFT处理器技术领域,其特征在于,它含有:按运算顺序依次相连的63点离散傅里叶变换(DFT)模块,复数乘法器模块,行列交织处理器模块和60点DFT模块,其中,63点和60点的DFT模块中或复数乘法器模块和行列交织器模块中各模块的相互位置可以互换;在结构上,前后面两块模块各自共用一个FPGA芯片,而两片FPGA芯片用双口RAM相连。按运算和连接顺序,63点DFT模块由7点(或9点)DFT模块→63点DFT素因子算法下标映射模块→9(或7点)DFT模块构成;60点DFT模块也可按3×20、4×15、5×12点DFT模块作相似的分解,而12点和15点DFT模块又可分别按3×4、3×5点DFT模块分解。整个3780点DFT处理器系统只需2片30万门FPGA芯片,成本大为降低。
文档编号G06F17/14GK1348141SQ01140060
公开日2002年5月8日 申请日期2001年11月23日 优先权日2001年11月23日
发明者杨知行, 胡宇鹏, 潘长勇, 杨林 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1