3780点傅立叶变换调制方法和装置及其解调方法和装置的制作方法

文档序号:7967390阅读:254来源:国知局
专利名称:3780点傅立叶变换调制方法和装置及其解调方法和装置的制作方法
技术领域
本发明属于调制解调领域,具体涉及一种基于3780点的收发端非对称的傅立叶变换调制/解调装置。
背景技术
为了实现正交频分多载波调制,需将经正交相位调制的单载波基带信号进行离散傅立叶反变换(IDFT)以获得正交频分复用多载波调制用的子载波。在解调时,要将多载波信号进行离散傅立叶变换以得到经正交相位调制的单载波基带信号,再经正交相位解调得到信息的码元。根据数字信号处理理论,IDFT可以通过离散傅立叶变换(DFT)来实现。由此可见,在正交频分多载波调制解调系统中DFT是其核心单元。快速傅立叶变换(FFT)是实际数字信号处理中实现DFT的快速算法,其反变换为快速傅立叶反变换(IFFT)。
目前,关于FFT的算法主要是基于基-2和基-4的。关于基-2和基-4的FFT从软件仿真到硬件实现已有很多种成熟的算法。基于此,64点、1024点、2048点或4096点的FFT,在工程上都有多种对应的处理器和FPGA,也有不少的改进型算法。例如,快速傅立叶变换的并行算法主要包括基于SIMD-MC2、SIMD-BF、SIMD-CC、MIMD-DM四种体系结构上的FFT算法,它们都是基-2的FFT算法。但是,由于3780不能表示为2的幂或4的幂,对于不是基2或基4的FFT,这些方法就都无能为力了。
一种实现3780点FFT的装置如图1所示,它采用内插成4096点FFT的方法,其中把3780个输入数据内插成4096个数据进行4096点FFT运算。第一级4点FFT模块110,把4096点的输入数据以1024为间隔进行抽取做4点FFT的运算,共进行1024次4点FFT的运算。第二级4点FFT模块120,把第一级4点FFT模块110输出的数据依次分为4组1024点的数据,对每组1024个数据以256为间隔进行抽取做4点FFT的运算。第三级4点FFT模块130,把第二级4点FFT模块120输出的每组1024个数据依次分为4组256点的数据,对每组256个数据以64为间隔进行抽取做4点FFT的运算。第四级4点FFT模块140,把第三级4点FFT模块130输出的每组256个数据依次分为4组64点的数据,对每组64个数据以16为间隔进行抽取做4点FFT的运算。第五级4点FFT模块150,把第四级4点FFT模块140输出的每组64个数据依次分为4组16点的数据,对每组16个数据以4为间隔进行抽取做4点FFT的运算。第六级4点FFT模块160,把第五级4点FFT模块150输出的每组16个数据依次分为4组4点的数据,对每组4个数据做4点FFT的运算。这种方法由于没有做准确的3780点FFT,前后采用了内插,所以必然会带来误差;另一个问题是采样速率发生变化,在OFDM系统中还将增加同步的复杂度。
另一种装置如图2所示,其采用混合基FFT算法,其中利用N=r1r2(r1和r2不需要互质)的快速算法和Winograd傅立叶算法(WFTA),把3780点FFT分解为7点、9点、3点、5点和4点FFT的级连,如图2所示。7点FFT模块205,把3780点输入数据排列成540行7列的矩阵X,抽取X矩阵的每一行7个数据利用WFTA算法做7点FFT。地址变换模块210,进行因把3780点FFT分解成7点FFT和540点FFT级联所需要的地址变换。复数乘法模块215,将3780个数据乘以相应的旋转因子。9点FFT模块220,抽取X矩阵的每一列540个数据排列成60行9列的矩阵Y,抽取Y矩阵的每一行9个数据利用WFTA算法做9点FFT。地址变换模块225,进行因把540点FFT分解成9点FFT和60点FFT级联所需要的地址变换。复数乘法模块230,对每540个数据乘以相应的旋转因子。3点FFT模块235,抽取Y矩阵的每一列60个数据排列成20行3列的矩阵Z,抽取Z矩阵的每一行3个数据利用WFTA算法做3点FFT。地址变换模块240,进行因把60点FFT分解成3点FFT和20点FFT级联所需要的地址变换。复数乘法模块240,对每60个数据乘以相应的旋转因子。5点FFT模块245,抽取Z矩阵的每一列20个数据排列成4行5列的矩阵W,抽取W矩阵的每一行5个数据利用WFTA算法做5点FFT。地址变换模块250,进行因把20点FFT分解成5点FFT和4点FFT级联所需要的地址变换。复数乘法模块255,对每20个数据乘以相应的旋转因子。4点FFT模块260,抽取W矩阵的每一列4个数据利用WFTA算法做4点FFT。这种方法在每级FFT之后都要经过地址变换模块和复数乘法模块,增加了总体计算复杂度,耗费了资源。
还曾有人提供了一种如图3所示的硬件消耗较少且运算较快的3780点DFT处理器系统,它包含63点DFT模块310,行列交织处理器模块320,复数乘法器模块330和60点DFT模块340,如图3所示。63点DFT模块310,对输入数据序列做63点DFT运算。行列交织处理器模块320,对经过63点DFT后的数据进行行列交织处理运算,包含读写地址产生和控制电路321以及双口RAM322。复数乘法器模块330,对经过行列交织处理后的数据做复数乘法运算。60点DFT模块340,对经过复数乘法运算后的数据做60点DFT运算。以连接顺序,前面两模块共用一个芯片FPGA,后面两模块共用另一个芯片FPGA,中间用双口RAM322连接。所用的FPGA采用型号为VirtexE XCV300E的芯片。在63点和60点DFT模块结构中,采用了素因子算法的下标映射模块,也都是用硬件电路来实现的。这种用硬件实现的3780点DFT处理器系统,不能在物理层调制多路信源信号;收发端对称的调制/解调结构不利于在收端降低功耗。

发明内容
本发明的目的在于提供一种3780点非对称傅立叶变换调制装置/解调装置,该装置能够在物理层调制解调多路信号,收发端非对称的调制解调结构可以使得在收端降低功耗,得到精确的变换后数据。
根据本发明,提供一种3780点傅立叶变换调制装置,包括输入模块,用于接收多路数据,其中每一路包含M1的整数倍个数据;整序模块,用于将所述多路数据分为N1个包含M1个数据的组,并且对于每一组,将M1个数据以N1为间隔依次放置于同一数据帧中,作为所述数据的原地址n1;以及3780点快速傅立叶反变换模块,用于对所述数据帧中的数据进行3780点快速傅立叶反变换,其中所述3780点快速傅立叶反变换模块包括第一数据排列模块,用于按列优先次序将所述数据帧中的数据依次排列成M1×N1的矩阵;N1点快速傅立叶反变换模块,用于对所述矩阵的每一行N1个数据作N1点快速傅立叶反变换;复数乘法模块,用于将经过N1点快速傅立叶反变换的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;以及M1点快速傅立叶反变换模块,用于对所述乘积矩阵的每一列M1个数据作M1点快速傅立叶反变换;以及第一地址变换模块,用于将经过M1点快速傅立叶反变换的乘积矩阵中的数据重新放置于所述数据帧中,其中所述原地址n1与重新放置后数据的新地址k1有如下关系[n1]M1=(k1)N1且(n1)M1=[k1]N1,其中,[]M1表示以M1为模取整,()M1表示以M1为模取余,M1*N1=3780,M1=60或63,并且0≤n1,k1<3780,n1和k1都为整数。
在以上3780点傅立叶变换调制装置中,所述输入模块包括多个输入子模块,其中每一输入子模块接收一路数据。
在以上3780点傅立叶变换调制装置中,当M1=63时,所述M1点快速傅立叶反变换模块为63点快速傅立叶反变换模块,当N1=63时,所述N1点快速傅立叶反变换模块为63点快速傅立叶反变换模块,其中所述63点快速傅立叶反变换模块包括第二数据排列模块,用于将具有序号n2的一行或一列63个数据排列成M2×N2的矩阵,其中所述M2×N2的矩阵的行号a2和列号b2与序号n2有如下关系n2=(N2*a2+M2*b2)63,a2=0,1,...,M2-1,b2=0,1,...,N2-1;N2点快速傅立叶反变换模块,用于对所述M2×N2矩阵的每一行N2个数据作N2点快速傅立叶反变换;M2点快速傅立叶反变换模块,用于对经过N2点快速傅立叶反变换的矩阵的每一列M2个数据作M2点快速傅立叶反变换;以及第二地址变换模块,用于将经过M2点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系n2=(16*k2)63,其中0≤n2,k2<63,n2和k2都为整数,并且其中,M2*N2=63,M2=7或9。
在以上3780点傅立叶变换调制装置中,当M1=60时,所述M1点快速傅立叶反变换模块为60点快速傅立叶反变换模块,当N1=60时,所述NI点快速傅立叶反变换模块为60点快速傅立叶反变换模块,其中所述60点快速傅立叶反变换模块包括第三数据排列模块,用于将具有序号n3的一行或一列60个数据排列成M3×N3的矩阵,其中所述M3×N3的矩阵的行号a3和列号b3与序号n3有如下关系n3=(N3*a3+M3*b3)60,a3=0,1,...,M3-1,b3=0,1,...,N3-1;N3点快速傅立叶反变换模块,用于对所述M3×N3矩阵的每一行N3个数据作N3点快速傅立叶反变换;M3点快速傅立叶反变换模块,用于对经过N3点快速傅立叶反变换的矩阵的每一列M3个数据作M3点快速傅立叶反变换;以及第三地址变换模块,用于将经过M3点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60,其中0≤n3,k3<60,n3和k3都为整数,并且其中,M3*N3=60,M3=S或T,S*T=60,S=3,4或5,而T=12,15或20。
在以上3780点傅立叶变换调制装置中,当M3=T时,所述M3点快速傅立叶反变换模块为T点快速傅立叶反变换模块,当N3=T时,所述N3点快速傅立叶反变换模块为T点快速傅立叶反变换模块,其中所述T点快速傅立叶反变换模块包括第四数据排列模块,用于将具有序号n4的一行或一列T个数据排列成M4×N4的矩阵,其中所述M4×N4的矩阵的行号a4和列号b4与序号n4有如下关系n4=(N4*a4+M4*b4)T,a4=0,1,...,M4-1,b4=0,1,...,N4-1;N4点快速傅立叶反变换模块,用于对所述M4×N4矩阵的每一行N4个数据作N4点快速傅立叶反变换;M4点快速傅立叶反变换模块,用于对经过N4点快速傅立叶反变换的矩阵的每一列M4个数据作M4点快速傅立叶反变换;以及其中,M4*N4=T,且M4和N4为互质的正整数。
根据本发明,还提供一种3780点傅立叶变换解调装置,包括模式切换模块,用于接收调制后的数据帧并根据在调制过程中所接收的每一路数据所包含的数据数确定所述解调装置在第一模式和第二模式间的切换,其中当所述数据数为60的整数倍时,所述解调装置处于第一模式,而当所述数据数为63的整数倍时,所述解调装置处于第二模式,所述解调装置还包括第一数据排列模块、63点快速傅立叶变换模块、选择控制模块、复数乘法模块和60点快速傅立叶变换模块,其中在所述第一模式所述第一数据排列模块被配置为按列优先次序将所述数据帧中的数据依次排列成60×63的矩阵;所述63点快速傅立叶变换模块被配置为对所述矩阵的每一行63个数据作63点快速傅立叶变换;所述选择控制模块被配置为根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;所述复数乘法模块被配置为将所述至少一列数据中的每个数据乘以相位旋转因子后输入所述60点快速傅立叶变换模块;所述60点快速傅立叶变换模块被配置为对所述至少一列数据的每一列60个数据作60点快速傅立叶变换,在所述第二模式所述第一数据排列模块被配置为按列优先次序将所述数据帧中的数据依次排列成63×60的矩阵;所述60点快速傅立叶变换模块被配置为对所述矩阵的每一行60个数据作60点快速傅立叶变换;所述选择控制模块被配置为根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;所述复数乘法模块被配置为将所述至少一列数据中的每个数据乘以相位旋转因子后输入所述63点快速傅立叶变换模块;所述63点快速傅立叶变换模块被配置为对所述至少一列数据的每一列63个数据作63点快速傅立叶变换。
在以上3780点傅立叶变换解调装置中,所述63点快速傅立叶变换模块包括第二数据排列模块,用于将具有序号n5的一行或一列63个数据排列成M5×N5的矩阵,其中所述M5×N5的矩阵的行号a5和列号b5与序号n5有如下关系n5=(N5*a5+M5*b5)63,a5=0,1,...,M5-1,b5=0,1,...,N5-1;N5点快速傅立叶变换模块,用于对所述M5×N5矩阵的每一行N5个数据作N5点快速傅立叶变换;M5点快速傅立叶变换模块,用于对经过N5点快速傅立叶变换的矩阵的每一列M5个数据作M5点快速傅立叶变换;以及第二地址变换模块,用于将经过M5点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n5与重新排列后数据的新序号k5有如下关系n5=(16*k5)63,其中0≤n5,k5<63,n5和k5都为整数,并且其中,M5*N5=63,M5=7或9。
在以上3780点傅立叶变换解调装置中,所述60点快速傅立叶变换模块包括第三数据排列模块,用于将具有序号n6的一行或一列60个数据排列成M6×N6的矩阵,其中所述M6×N6的矩阵的行号a6和列号b6与序号n6有如下关系n6=(N6*a+M6*b)60,a6=0,1,...,M6-1,b6=0,1,...,N6-1;N6点快速傅立叶变换模块,用于对所述M6×N6矩阵的每一行N6个数据作N6点快速傅立叶变换;M6点快速傅立叶变换模块,用于对经过N6点快速傅立叶变换的矩阵的每一列M6个数据作M6点快速傅立叶变换;以及第三地址变换模块,用于将经过M6点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n6与重新排列后数据的新序号k6有如下关系n6=(47*k6)60,其中0≤n6,k6<60,n6和k6都为整数,并且其中,M6*N6=60,M6=S或T,S*T=60,S=3,4或5,而T=12,15或20。
在以上3780点傅立叶变换解调装置中,当M6=T时,所述M6点快速傅立叶变换模块为T点快速傅立叶变换模块,当N6=T时,所述N6点快速傅立叶变换模块为T点快速傅立叶变换模块,其中所述T点快速傅立叶变换模块包括第四数据排列模块,用于将具有序号n7的一行或一列T个数据依次排列成M7×N7的矩阵,其中所述M7×N7的矩阵的行号a7和列号b7与序号n7有如下关系n7=(N7*a7+M7*b7)T,a7=0,1,...,M7-1,b7=0,1,...,N7-1;N7点快速傅立叶变换模块,用于对所述M7×N7矩阵的每一行N7个数据作N7点快速傅立叶变换;M7点快速傅立叶变换模块,用于对经过N7点快速傅立叶变换的矩阵的每一列M7个数据作M7点快速傅立叶变换;以及其中,M7*N7=T,且M7和N7为互质的正整数。
根据本发明,还提供一种3780点傅立叶变换调制解调系统,包括以上的3780点傅立叶变换调制装置,以及以上的3780点傅立叶变换解调装置。
根据本发明,还提供一种3780点傅立叶变换调制方法,包括输入步骤,用于接收多路数据,其中每一路包含M1的整数倍个数据;整序步骤,用于将所述多路数据分为N1个包含M1个数据的组,并且对于每一组,将M1个数据以N1为间隔依次放置于同一数据帧中,作为所述数据的原地址n1;以及3780点快速傅立叶反变换步骤,用于对所述数据帧中的数据进行3780点快速傅立叶反变换,其中所述3780点快速傅立叶反变换步骤包括第一数据排列步骤,用于按列优先次序将所述数据帧中的数据依次排列成M1×N1的矩阵;N1点快速傅立叶反变换步骤,用于对所述矩阵的每一行N1个数据作N1点快速傅立叶反变换;复数乘法步骤,用于将经过N1点快速傅立叶反变换的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;以及M1点快速傅立叶反变换步骤,用于对所述乘积矩阵的每一列M1个数据作M1点快速傅立叶反变换;以及第一地址变换步骤,用于将经过M1点快速傅立叶反变换的乘积矩阵中的数据重新放置于所述数据帧中,其中所述原地址n1与重新放置后数据的新地址k1有如下关系[n1]M1=(k1)N1且(n1)M1=[k1]N1,其中,[]M1表示以M1为模取整,()M1表示以M1为模取余,M1*N1=3780,M1=60或63,并且0≤n1,k1<3780,n1和k1都为整数。
在以上3780点傅立叶变换调制方法中,当M1=63时,所述M1点快速傅立叶反变换步骤为63点快速傅立叶反变换步骤,当N1=63时,所述N1点快速傅立叶反变换模块为63点快速傅立叶反变换步骤,其中所述63点快速傅立叶反变换步骤包括第二数据排列步骤,用于将具有序号n2的一行或一列63个数据排列成M2×N2的矩阵,其中所述M2×N2的矩阵的行号a2和列号b2与序号n2有如下关系n2=(N2*a2+M2*b2)63,a2=0,1,...,M2-1,b2=0,1,...,N2-1;N2点快速傅立叶反变换步骤,用于对所述M2×N2矩阵的每一行N2个数据作N2点快速傅立叶反变换;M2点快速傅立叶反变换步骤,用于对经过N2点快速傅立叶反变换的矩阵的每一列M2个数据作M2点快速傅立叶反变换;以及第二地址变换步骤,用于将经过M2点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系n2=(16*k2)63,其中0≤n2,k2<63,n2和k2都为整数,并且其中,M2*N2=63,M2=7或9。
在以上3780点傅立叶变换调制方法中,当M1=60时,所述M1点快速傅立叶反变换步骤为60点快速傅立叶反变换步骤,当N1=60时,所述N1点快速傅立叶反变换步骤为60点快速傅立叶反变换步骤,其中所述60点快速傅立叶反变换步骤包括第三数据排列步骤,用于将具有序号n3的一行或一列60个数据排列成M3×N3的矩阵,其中所述M3×N3的矩阵的行号a3和列号b3与序号n3有如下关系n3=(N3*a3+M3*b3)60,a3=0,1,...,M3-1,b3=0,1,...,N3-1;N3点快速傅立叶反变换步骤,用于对所述M3×N3矩阵的每一行N3个数据作N3点快速傅立叶反变换;M3点快速傅立叶反变换步骤,用于对经过N3点快速傅立叶反变换的矩阵的每一列M3个数据作M3点快速傅立叶反变换;以及第三地址变换步骤,用于将经过M3点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60,其中0≤n3,k3<60,n3和k3都为整数,并且其中,M3*N3=60,M3=S或T,S*T=60,S=3,4或5,而T=12,15或20。
在以上3780点傅立叶变换调制方法中,当M3=T时,所述M3点快速傅立叶反变换步骤为T点快速傅立叶反变换步骤,当N3=T时,所述N3点快速傅立叶反变换步骤为T点快速傅立叶反变换步骤,其中所述T点快速傅立叶反变换步骤包括第四数据排列步骤,用于将具有序号n4的一行或一列T个数据排列成M4×N4的矩阵,其中所述M4×N4的矩阵的行号a4和列号b4与序号n4有如下关系n4=(N4*a4+M4*b4)T,a4=0,1,...,M4-1,b4=0,1,...,N4-1;N4点快速傅立叶反变换步骤,用于对所述M4×N4矩阵的每一行N4个数据作N4点快速傅立叶反变换;M4点快速傅立叶反变换步骤,用于对经过N4点快速傅立叶反变换的矩阵的每一列M4个数据作M4点快速傅立叶反变换;以及其中,M4*N4=T,且M4和N4为互质的正整数。
根据本发明,还提供一种3780点傅立叶变换解调方法,包括接收调制后的数据帧并根据在调制过程中所接收的每一路数据所包含的数据数确定在第一模式和第二模式间的切换,其中当所述数据数为60的整数倍时,处于第一模式,而当所述数据数为63的整数倍时,处于第二模式,其中在所述第一模式,所述方法还包括以下步骤按列优先次序将所述数据帧中的数据依次排列成60×63的矩阵;对所述矩阵的每一行63个数据作63点快速傅立叶变换;根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;将所述至少一列数据中的每个数据乘以相位旋转因子;对所述至少一列数据的每一列60个数据作60点快速傅立叶变换,在所述第二模式,所述方法还包括以下步骤按列优先次序将所述数据帧中的数据依次排列成63×60的矩阵;对所述矩阵的每一行60个数据作60点快速傅立叶变换;根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;将所述至少一列数据中的每个数据乘以相位旋转因子;对所述至少一列数据的每一列63个数据作63点快速傅立叶变换。
在以上3780点傅立叶变换解调方法中,所述作63点快速傅立叶变换的步骤包括第二数据排列步骤,用于将具有序号n5的一行或一列63个数据排列成M5×N5的矩阵,其中所述M5×N5的矩阵的行号a5和列号b5与序号n5有如下关系n5=(N5*a5+M5*b5)63,a5=0,1,...,M5-1,b5=0,1,...,N5-1;N5点快速傅立叶变换步骤,用于对所述M5×N5矩阵的每一行N5个数据作N5点快速傅立叶变换;M5点快速傅立叶变换步骤,用于对经过N5点快速傅立叶变换的矩阵的每一列M5个数据作M5点快速傅立叶变换;以及第二地址变换步骤,用于将经过M5点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n5与重新排列后数据的新序号k5有如下关系n5=(16*k5)63,其中0≤n5,k5<63,n5和k5都为整数,并且其中,M5*N5=63,M5=7或9。
在以上3780点傅立叶变换解调方法中,所述作60点快速傅立叶变换的步骤包括第三数据排列步骤,用于将具有序号n6的一行或一列60个数据排列成M6×N6的矩阵,其中所述M6×N6的矩阵的行号a6和列号b6与序号n6有如下关系n6=(N6*a+M6*b)60,a6=0,1,...,M6-1,b6=0,1,...,N6-1;N6点快速傅立叶变换步骤,用于对所述M6×N6矩阵的每一行N6个数据作N6点快速傅立叶变换;M6点快速傅立叶变换步骤,用于对经过N6点快速傅立叶变换的矩阵的每一列M6个数据作M6点快速傅立叶变换;以及第三地址变换步骤,用于将经过M6点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n6与重新排列后数据的新序号k6有如下关系n6=(47*k6)60,其中0≤n6,k6<60,n6和k6都为整数,并且其中,M6*N6=60,M6=S或T,S*T=60,S=3,4或5,而T=12,15或20。
在以上3780点傅立叶变换解调方法中,当M6=T时,所述M6点快速傅立叶变换步骤为T点快速傅立叶变换步骤,当N6=T时,所述N6点快速傅立叶变换步骤为T点快速傅立叶变换步骤,其中所述T点快速傅立叶变换步骤包括第四数据排列步骤,用于将具有序号n7的一行或一列T个数据依次排列成M7×N7的矩阵,其中所述M7×N7的矩阵的行号a7和列号b7与序号n7有如下关系n7=(N7*a7+M7*b7)T,a7=0,1,...,M7-1,b7=0,1,...,N7-1;N7点快速傅立叶变换步骤,用于对所述M7×N7矩阵的每一行N7个数据作N7点快速傅立叶变换;以及M7点快速傅立叶变换步骤,用于对经过N7点快速傅立叶变换的矩阵的每一列M7个数据作M7点快速傅立叶变换,其中,M7*N7=T,且M7和N7为互质的正整数。
这种降低功耗的3780点非对称傅立叶变换调制解调方法和装置,适用于多信源的系统,在接收端由于减少了复数乘法运算和FFT运算,可以降低功耗,得到精确的变换后数据。


图1内插4096点的3780点IFFT系统的结构框图。
图2混合基算法的3780点IFFT系统的结构框图。
图3一种基于硬件的3780点DFT处理器系统框图。
图4根据本发明提出的3780点非对称傅立叶变换调制装置框图。
图5根据本发明一实施例的3780点IFFT模块的结构框图。
图6根据本发明另一实施例的3780点IFFT模块的结构框图。
图7根据本发明一实施例的63点IFFT模块的结构框图。
图8根据本发明另一实施例的63点IFFT模块的结构框图。
图9根据本发明实施例的60点IFFT模块的结构框图。
图10根据本发明实施例的T点IFFT模块的结构框图。
图11根据本发明提出的N点(N为质数或是质数的指数,可应用于3、5、7、9点)的IFFT模块的原理框图。
图12根据本发明提出的3780点非对称傅立叶变换解调装置框图。
图13根据本发明提出的3780点非对称傅立叶变换调制方法的流程图。
图14根据本发明一实施例的3780点IFFT的流程图。
图15根据本发明一实施例的63点IFFT的流程图。
图16根据本发明实施例的60点IFFT的流程图。
图17根据本发明实施例的T点IFFT的流程图。
图18根据本发明提出的3780点非对称傅立叶变换解调方法的流程图。
具体实施例方式
下文将参考附图详细描述本发明的优选实施例。
图4示出了依据本发明的3780点非对称傅立叶变换调制装置的框图,它包括输入模块410,用于接收多路数据,其中每一路包含M1的整数倍个数据,这些数据一般是经过编码交织后的各路信源信号;整序模块420,用于将所述输入数据分为N1个包含M1个数据的组,并且对于每一组,将M1个数据以N1为间隔依次放置于同一数据帧中,作为这些数据的原地址n1;和3780点快速傅立叶反变换(IFFT)模块,用于对所述数据帧中的数据进行3780点IFFT。这里,M1*N1=3780,M1=60或63,而n1为整数,0≤n1<3780。
输入模块410还包括多个输入子模块,而每一输入子模块接收一路数据。由于每一个数据都占据一个子载波,因此输入子模块的个数就取决于每一路数据所占据的子载波个数。当每一路数据占据60的整数倍个子载波时,输入模块包括(63-P)个,其中,P为大于零且小于63的整数;当每一路数据占据63的整数倍个子载波时,输入模块包括(60-Q)个,其中,Q为大于零且小于60的整数。所有的这(63-P)个或(60-Q)个输入子模块所接收的子载波总个数为3780。
在整序模块420中,当每一路数据占据60的正整数倍个子载波时,例如某路数据占据60的M倍个子载波,则先把这这些数据分成M个长为60个数据的信号,再把这每个长为60个数据的信号以63为间隔依次等间隔放置在一数据帧中。以M=2为例,可以将该路信号所对应的120个数据依次放置在第0个、第63个、第126个、...、第3717个、第3个、第66个、第129个、...、第3720个的数据帧的位置上。当每一路数据占据63的正整数倍个子载波时,例如某路数据占据63的N倍个子载波,则先把这些数据分成N个长为63个数据的信号,再把这每个长为63个数据的信号以60为间隔依次等间隔放置在一数据帧中。以下以数据模块410具有62个输入子模块为例描述整序模块420的操作,其中一路信号占据120个子载波,其它61路信号各自占据60个子载波整序模块420一路含有120个数据的信号分成2个长为60个数据的信号,这样就把这62路输入信号的总共3780个数据分成了63个每个长为60个数据的信号,再把这每个长为60个数据的信号以63为间隔依次等间隔放置在一数据帧中。例如,可以将含有120个数据的一路信号所对应的120个数据依次放置在第0个、第63个、第126个、...、第3717个、第3个、第66个、第129个、...、第3720个的子载波位置上。
图5和图6示出了依据本发明的3780点IFFT模块430的优选实施例的总体结构框图。当每一路数据占据60的正整数倍个子载波时,3780点IFFT模块430的结构就如图5所示,而每一路数据占据63的正整数倍个子载波时,3780点IFFT模块430的结构就如图6所示。
以图5所示3780点IFFT模块430为例,它包括数据排列模块431,用于按列优先次序将整序模块420所产生的数据帧中的数据依次排列成60×63即60行63列的矩阵,即第1列上依次放置数据帧中第1个、第2个、...、第60个数据,第2列上依次放置数据帧中第61个、第62个、...、第120个数据,...,第63列上依次放置数据帧中第3721个、第3722个、...、第3780个数据;63点IFFT模块432,用于对该矩阵的每一行63个数据作63点IFFT,需要进行60次63点IFFT运算;复数乘法模块433,用于将经过63点IFFT的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;60点IFFT模块434,用于对该乘积矩阵的每一列60个数据作60点IFFT,需要进行63次60点IFFT运算;和地址变换模块435,用于将经过60点IFFT的乘积矩阵中的数据重新排列于以上数据帧中,其中在整序模块420中数据所放置的原地址n1与在地址变换模块435中重新排列后数据的新地址k1有如下关系[n1]60=(k1)63且(n1)60=[k1]63,其中,[]60表示以60为模取整,()60表示以60为模取余,并且0≤k1<3780,k1为整数。例如,对于原地址为62的数据,在经过地址变换模块435后应放置新地址为65。
图6所示的3780点IFFT模块430与图5所示的相比,其区别在于将63点IFFT模块432与60点IFFT模块434的位置进行互换。在操作中,数据排列模块431按列优先次序将整序模块420所产生的数据帧中的数据依次排列成63×60即63行60列的矩阵;60点IFFT模块434对该矩阵的每一行60个数据作60点IFFT,需要进行63次60点IFFT运算;复数乘法模块433将经过60点IFFT的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;63点IFFT模块432对该乘积矩阵的每一列63个数据作63点IFFT,需要进行60次63点IFFT运算,而地址变换模块435将经过63点IFFT的乘积矩阵中的数据重新放置于以上数据帧中,其中在整序模块420中数据所放置的原地址n1与在地址变换模块435中重新放置后数据的新地址k1有如下关系[n1]63=(k1)60且(n1)63=[k1]60,其中,[]63表示以63为模取整,()63表示以63为模取余。
图7和图8示出了依据本发明的63点IFFT模块432的优选实施例的总体结构框图。
以图7所示的63点IFFT模块432为例,它包括数据排列模块710,7点IFFT模块720,9点IFFT模块730和地址变换模块740。在操作中,数据排列模块710将具有序号n2的一行或一列63个数据排列成9×7的矩阵,其中所述9×7的矩阵的行号a2和列号b2与序号n2有如下关系n2=(7*a2+9*b2)63,a2=0,1,...,8,b2=0,1,...,6。例如,矩阵中第0行、第6列上的数据为具有序号54的输入数据。7点IFFT模块720对9×7矩阵的每一行7个数据作7点IFFT,需要进行9次7点IFFT运算。9点IFFT模块730对经过7点IFFT的矩阵的每一列9个数据作9点IFFT,需要进行7次9点IFFT运算。地址变换模块740将经过9点IFFT的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系n2=(16*k2)63,其中0n2,k2<63,n2和k2都为整数。
例如,对于序号n2为1的数据,在经过地址变换模块740后的新序号k2为4。
图8所示的63点IFFT模块432与图7所示的相比,其区别在于将7点IFFT模块720与9点IFFT模块730的位置进行互换。在操作中,数据排列模块710将具有序号n2的一行或一列63个数据排列成7×9的矩阵,其中所述7×9的矩阵的行号a2和列号b2与序号n2有如下关系n2=(9*a2+7*b2)63,a2=0,1,...,6,b2=0,1,...,8。9点IFFT模块730对7×9矩阵的每一行9个数据作9点IFFT,需要进行7次9点IFFT运算。7点IFFT模块720对经过9点IFFT的矩阵的每一列7个数据作7点IFFT,需要进行9次7点IFFT运算。地址变换模块740将经过7点IFFT的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系n2=(16*k2)63。
图9示出了依据本发明的60点IFFT模块434的优选实施例的总体结构框图。
图9所示的60点IFFT模块434包括数据排列模块910,S点IFFT模块920,T点IFFT模块930和地址变换模块940。在操作中,数据排列模块910将具有序号n3的一行或一列60个数据排列成T×S的矩阵,其中所述T×S的矩阵的行号a3和列号b3与序号n3有如下关系n2=(S*a2+T*b2)60,a3=0,1,...,T-1,b3=0,1,...,S-1。以S=3、T=20为例,矩阵中第1行、第3列上的数据为具有序号29的输入数据。S点IFFT模块920对T×S矩阵的每一行S个数据作S点IFFT,需要进行T次S点IFFT运算。T点IFFT模块930对经过S点IFFT的矩阵的每一列T个数据作T点IFFT,需要进行S次T点IFFT运算。这里S*T=60,S=3,4或5,而T=12,15或20。最后地址变换模块940将经过T点IFFT的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60,其中0≤n3,k3<60,n3和k3都为整数。同样以S=3、T=20为例,对于序号n3为34的数据,在经过地址变换模块940后的新序号k3为2。
类似于图7-8中所示的63点IFFT模块432,可将图9所示的60点IFFT模块434中的S点IFFT模块920与T点IFFT模块930的位置进行互换。在操作中,数据排列模块910将具有序号n3的一行或一列60个数据排列成S×T的矩阵,其中所述S×T的矩阵的行号a3和列号b3与序号n3有如下关系n3=(T*a3+S*b3)60,a2=0,1,...,S-1,b2=0,1,...,T-1。T点IFFT模块930对S×T矩阵的每一行T个数据作T点IFFT,需要进行S次T点IFFT运算。S点IFFT模块920对经过T点IFFT的矩阵的每一列S个数据作S点IFFT,需要进行T次S点IFFT运算。地址变换模块940将经过S点IFFT的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60。
图10示出了依据本发明的T点IFFT模块930的优选实施例的框图。
在图10所示的T点IFFT模块930中,包括数据排列模块932、U点IFFT模块934和V点IFFT模块936,其中,T=U*V,U和V为互质的正整数。在操作中数据排列模块,用于将具有序号n4的T个数据排列成V×U的矩阵,其中所述V×U的矩阵的行号a4和列号b4与序号n4有如下关系n4=(U*a4+V*b4)T,a4=0,1,...,V-1,b4=0,1,...,U-1。U点IFFT模块对V×U矩阵的每一行U个数据作U点IFFT。V点快速傅立叶反变换模块对经过U点IFFT的矩阵的每一列V个数据作V点IFFT。值得注意的是,在T点IFFT模块930中不需要地址变换模块,因为根据素因子分解算法,把60点IFFT分解为S*T,再把T点IFFT分解为U*V,则有60=S*U*V,且S、U、V互质的情况下(在这里,S、U、V分别为3、4、5,次序可互换),只需在S点IFFT、U点IFFT、V点IFFT都完成后进行一次地址变换,即由以上公式n3=(47*k3)60所体现。
类似于图7-8中所示的63点IFFT模块432和图9所示的60点IFFT模块434,可将图10所示的T点IFFT模块930中的U点IFFT模块934与V点IFFT模块936的位置进行互换。在操作中,数据排列模块932将具有序号n4的一行或一列T个数据排列成U×V的矩阵,其中所述U×V的矩阵的行号a4和列号b4与序号n4有如下关系n3=(V*a3+U*b3)T,a2=0,1,...,U-1,b2=0,1,...,V-1。V点IFFT模块936对U×V矩阵的每一行V个数据作V点IFFT。U点IFFT模块934对经过V点IFFT的矩阵的每一列U个数据作U点IFFT。
图11示出了点数(N)如3、5、7、9等质数或质数的指数的IFFT模块的原理框图。它是采用数字信号处理中常用的Winograd傅立叶算法(WFTA)实现的。WFTA能写成矩阵的形式X=ODIx,在I和O矩阵中,只包含0,1或-1,就是说只有加减运算,D矩阵则代表了乘系数运算。当N为质数或是质数的指数时,可以把N点的IFFT转化为循环卷积,WFTA可以使循环卷积中乘法的数量达到最小。
图12示出了依据本发明的3780点非对称傅立叶变换解调装置框图,它包括模式切换模块1210,数据排列模块1220、63点快速傅立叶变换(FFT)模块1230、选择控制模块1240、复数乘法模块1250和60点FFT模块1260。
在操作中,模式切换模块1210接收3780点傅立叶变换调制装置输出的调制后的数据帧并根据如图4所描述的该调制装置所接收的每一路数据所包含的数据数(即占据的子载波数)确定解调装置在第一模式和第二模式间的切换,其中当每一路数据所占据的子载波数为60的整数倍时,解调装置处于第一模式,其中各模块的连接关系如图12中的实线所示,而当每一路数据所占据的子载波数为63的整数倍时,解调装置处于第二模式,其中各模块的连接关系如图12中虚线所示。而数据排列模块1220和复数乘法模块1250与图4中所示的数据排列模块431和复数乘法模块433所实现的操作是相同的。
在第一模式中,数据排列模块1220被配置为按列优先次序将调制后的数据帧中的数据依次排列成60×63的矩阵,63点FFT模块1230被配置为对该矩阵的每一行63个数据作63点FFT,需要进行60次63点的FFT;选择控制模块1240被配置为根据本地的整序信息从经过FFT的矩阵中选择需要进行解调的至少一列数据;复数乘法模块1250被配置为将该至少一列数据中的每个数据乘以相位旋转因子后输入60点FFT模块1260;60点FFT模块1260被配置为对该至少一列数据的每一列60个数据作60点快速傅立叶变换,这里只需进行该至少一列数据所包含列数次的60点FFT。最后将60点FFT模块1260输出的解调结果送往均衡器(未示出)作进一步处理。
在第二模式中,数据排列模块1220被配置为按列优先次序将调制后的数据帧中的数据依次排列成63×60的矩阵,60点FFT模块1260被配置为对所述矩阵的每一行60个数据作60点FFT,需要进行63次60点的FFT;选择控制模块1240被配置为根据本地的整序信息从经过FFT的矩阵中选择需要进行解调的至少一列数据;复数乘法模块1250被配置为将该至少一列数据中的每个数据乘以相位旋转因子后输入63点FFT模块1230;63点FFT模块1230被配置为对该至少一列数据的每一列63个数据作63点FFT,这里只需进行该至少一列数据所包含列数次的63点FFT。最后将63点FFT模块1230输出的解调结果送往均衡器(未示出)作进一步处理。
以下仍然根据图4所描述的例子,描述本发明解调装置的操作。在根据图4所描述的例子中,数据模块410具有62个输入子模块,并将含有120个数据的一路信号所对应的120个数据依次放置在第0个、第63个、第126个、…、第3717个、第3个、第66个、第129个、…、第3720个的子载波位置上。调制装置根据以上输入产生调制结果,并且输入解调装置。由于每一路数据占据60的整数倍个子载波,因此模式切换模块1210将解调装置切换为第一模式。数据排列模块1220按列优先次序将调制后的数据帧中的数据依次排列成60×63的矩阵,63点FFT模块1230对该矩阵的每一行63个数据作63点FFT。随后,当需要解调所述含120个数据的那路信号时,选择控制模块1240就根据本地已知的整序信息选取第一列和第四列的120个数据输出给复数乘法模块1250。复数乘法模块1250只需对输入的两列共120个数据分别乘以相位旋转因子并输入60点FFT模块1260。60点FFT模块1260对该两列数据做60点FFT,只需进行两次60点FFT运算。这样和调制装置处相比减少了运算次数,有利于降低接收机功耗。
类似于根据图7-10所作的描述,63点FFT模块1230和60点FFT模块1260可采取相似的结构,区别仅在于将其中的各IFFT模块替换为相应的FFT模块即可,因此这里不再一一赘述。
图13示出了根据本发明提出的3780点非对称傅立叶变换调制方法的流程图。在步骤1310,接收多路数据,其中每一路包含M1的整数倍个数据;随后在步骤1320,将所述输入数据分为N1个包含M1个数据的组,并且对于每一组,将M1个数据以N1为间隔依次放置于同一数据帧中,作为这些数据的原地址n1;最后在步骤1330,对所述数据帧中的数据进行3780点IFFT。这里,M1*N1=3780,M1=60或63,而n1为整数,0≤n1<3780。
图14示出了依据本发明的3780点IFFT的流程图。当每一路数据占据60的正整数倍个子载波时,3780点IFFT的流程就如图14所示,在步骤1410,按列优先次序所产生的数据帧中的数据依次排列成60×63即60行63列的矩阵,即第1列上依次放置数据帧中第1个、第2个、…、第60个数据,第2列上依次放置数据帧中第61个、第62个、…、第120个数据,…,第63列上依次放置数据帧中第3721个、第3722个、…、第3780个数据;随后在步骤1420,对该矩阵的每一行63个数据作63点IFFT,需要进行60次63点IFFT运算;在步骤1430,将经过63点IFFT的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;随后在步骤1440,对该乘积矩阵的每一列60个数据作60点IFFT,需要进行63次60点IFFT运算;最后在步骤1450,将经过60点IFFT的乘积矩阵中的数据重新排列于以上数据帧中,其中在步骤1410中数据所放置的原地址n1与在步骤1410中重新排列后数据的新地址k1有如下关系[n1]60=(k1)63且(n1)60=[k1]63,其中,[]60表示以60为模取整,()60表示以60为模取余,并且0≤k1<3780,k1为整数。
而当每一路数据占据63的正整数倍个子载波时,只需将63点IFFT步骤和60点IFFT步骤进行调换,并且其中在步骤1410中数据所放置的原地址n1与在步骤1450中重新放置后数据的新地址k1有如下关系[n1]63=(k1)60且(n1)63=[k1]60,其中,[]63表示以63为模取整,()63表示以63为模取余。
图15示出了依据本发明的63点IFFT的流程图。在步骤1510,将具有序号n2的一行或一列63个数据排列成9×7的矩阵,其中所述9×7的矩阵的行号a2和列号b2与序号n2有如下关系n2=(7*a2+9*b2)63,a2=0,1,...,8,b2=0,1,...,6。随后在步骤1520,对9×7矩阵的每一行7个数据作7点IFFT,需要进行9次7点IFFT运算。在步骤1530,对经过7点IFFT的矩阵的每一列9个数据作9点IFFT,需要进行7次9点IFFT运算。最后在步骤1540,将经过9点IFFT的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系
n2=(16*k2)63,其中0≤n2,k2<63,n2和k2都为整数。本领域技术人员可以明白,还可将步骤1520与步骤1530进行互换。
图16示出了依据本发明的60点IFFT流程图。在步骤1610,将具有序号n3的一行或一列60个数据排列成T×S的矩阵,其中所述T×S的矩阵的行号a3和列号b3与序号n3有如下关系n2=(S*a2+T*b2)60,a3=0,1,...,T-1,b3=0,1,...,S-1。随后在步骤1620,对T×S矩阵的每一行S个数据作S点IFFT,需要进行T次S点IFFT运算。在步骤1630,对经过S点IFFT的矩阵的每一列T个数据作T点IFFT,需要进行S次T点IFFT运算。这里S*T=60,S=3,4或5,而T=12,15或20。最后在步骤1640,将经过T点IFFT的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60,其中0≤n3,k3<60,n3和k3都为整数。同样本领域技术人员可以明白可将步骤1620与步骤1630进行互换。
图17示出了依据本发明的T点IFFT的流程图,图中T=U*V,U和V为互质的正整数。在步骤1710,将具有序号n4的T个数据排列成V×U的矩阵,其中所述V×U的矩阵的行号a4和列号b4与序号n4有如下关系n4=(U*a4+V*b4)T,a4=0,1,...,V-1,b4=0,1,...,U-1。随后在步骤1720,对V×U矩阵的每一行U个数据作U点IFFT。最后,在步骤1730,对经过U点IFFT的矩阵的每一列V个数据作V点IFFT。同样,可将步骤1720和步骤1730进行互换。
图18示出了依据本发明的3780点非对称傅立叶变换解调方法的流程图。在步骤1810,接收调制后的数据帧,随后在步骤1820,根据调制过程中所接收的每一路数据所包含的数据数(即占据的子载波数)确定解调过程处于第一模式还是第二模式,其中当每一路数据所占据的子载波数为60的整数倍时,处于第一模式,而当每一路数据所占据的子载波数为63的整数倍时,处于第二模式。
在第一模式中,在步骤1830,按列优先次序将调制后的数据帧中的数据依次排列成60×63的矩阵,随后在步骤1835,对该矩阵的每一行63个数据作63点FFT,需要进行60次63点的FFT;在步骤1840,根据本地的整序信息从经过FFT的矩阵中选择需要进行解调的至少一列数据;在步骤1845,将该至少一列数据中的每个数据乘以相位旋转因子;然后在步骤1850,对该至少一列数据的每一列60个数据作60点快速傅立叶变换,这里只需进行该至少一列数据所包含列数次的60点FFT。
在第二模式中,在步骤1855,按列优先次序将调制后的数据帧中的数据依次排列成63×60的矩阵,随后在步骤1860,对所述矩阵的每一行60个数据作60点FFT,需要进行63次60点的FFT;在步骤1865,根据本地的整序信息从经过FFT的矩阵中选择需要进行解调的至少一列数据;在步骤1870,将该至少一列数据中的每个数据乘以相位旋转因子;然后在步骤1875,对该至少一列数据的每一列63个数据作63点FFT,这里只需进行该至少一列数据所包含列数次的63点FFT。
最后在步骤1880,将解调结果送往均衡器(未示出)作进一步处理。
类似于根据图15-17所作的描述,63点FFT步骤和60点FFT步骤可采取相似的过程,区别仅在于将其中的各IFFT步骤替换为相应的FFT步骤即可,因此这里不再一一赘述。
依据本发明,这种降低功耗的3780点非对称傅立叶变换调制解调方法和装置,适用于多信源的系统,在接收端由于减少了复数乘法运算和FFT运算,可以降低功耗,得到精确的变换后数据。
尽管已经描述了本发明的优选实施例,本领域的技术人员将理解本发明不限于上述优选实施例。在所附权利要求书所定义地本发明的精神和范围的情况下,可以作出各种改变和修改。
权利要求
1.一种3780点傅立叶变换调制装置,其特征在于包括输入模块,用于接收多路数据,其中每一路包含M1的整数倍个数据;整序模块,用于将所述多路数据分为N1个包含M1个数据的组,并且对于每一组,将M1个数据以N1为间隔依次放置于同一数据帧中,作为所述数据的原地址n1;以及3780点快速傅立叶反变换模块,用于对所述数据帧中的数据进行3780点快速傅立叶反变换,其中所述3780点快速傅立叶反变换模块包括第一数据排列模块,用于按列优先次序将所述数据帧中的数据依次排列成M1×N1的矩阵;N1点快速傅立叶反变换模块,用于对所述矩阵的每一行N1个数据作N1点快速傅立叶反变换;复数乘法模块,用于将经过N1点快速傅立叶反变换的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;以及M1点快速傅立叶反变换模块,用于对所述乘积矩阵的每一列M1个数据作M1点快速傅立叶反变换;以及第一地址变换模块,用于将经过M1点快速傅立叶反变换的乘积矩阵中的数据重新放置于所述数据帧中,其中所述原地址n1与重新放置后数据的新地址k1有如下关系[n1]M1=(k1)N1且(n1)M1=[k1]N1,其中,[]M1表示以M1为模取整,()M1表示以M1为模取余,M1*N1=3780,M1=60或63,并且0≤n1,k1<3780,n1和k1都为整数。
2.如权利要求1所述的3780点傅立叶变换调制装置,其特征在于所述输入模块包括多个输入子模块,其中每一输入子模块接收一路数据。
3.如权利要求1所述的3780点傅立叶变换调制装置,其特征在于当M1=63时,所述M1点快速傅立叶反变换模块为63点快速傅立叶反变换模块,当N1=63时,所述N1点快速傅立叶反变换模块为63点快速傅立叶反变换模块,其中所述63点快速傅立叶反变换模块包括第二数据排列模块,用于将具有序号n2的一行或一列63个数据排列成M2×N2的矩阵,其中所述M2×N2的矩阵的行号a2和列号b2与序号n2有如下关系n2=(N2*a2+M2*b2)63,a2=0,1,...,M2-1,b2=0,1,...,N2-1;N2点快速傅立叶反变换模块,用于对所述M2×N2矩阵的每一行N2个数据作N2点快速傅立叶反变换;M2点快速傅立叶反变换模块,用于对经过N2点快速傅立叶反变换的矩阵的每一列M2个数据作M2点快速傅立叶反变换;以及第二地址变换模块,用于将经过M2点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系n2=(16*k2)63,其中0≤n2,k2<63,n2和k2都为整数,并且其中,M2*N2=63,M2=7或9。
4.如权利要求1所述的3780点傅立叶变换调制装置,其特征在于当M1=60时,所述M1点快速傅立叶反变换模块为60点快速傅立叶反变换模块,当N1=60时,所述N1点快速傅立叶反变换模块为60点快速傅立叶反变换模块,其中所述60点快速傅立叶反变换模块包括第三数据排列模块,用于将具有序号n3的一行或一列60个数据排列成M3×N3的矩阵,其中所述M3×N3的矩阵的行号a3和列号b3与序号n3有如下关系n3=(N3*a3+M3*b3)60,a3=0,1,...,M3-1,b3=0,1,...,N3-1;N3点快速傅立叶反变换模块,用于对所述M3×N3矩阵的每一行N3个数据作N3点快速傅立叶反变换;M3点快速傅立叶反变换模块,用于对经过N3点快速傅立叶反变换的矩阵的每一列M3个数据作M3点快速傅立叶反变换;以及第三地址变换模块,用于将经过M3点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60,其中0≤n3,k3<60,n3和k3都为整数,并且其中,M3*N3=60,M3=S或T,S*T=60,S=3,4或5,而T=12,15或20。
5.如权利要求4所述的3780点傅立叶变换调制装置,其特征在于当M3=T时,所述M3点快速傅立叶反变换模块为T点快速傅立叶反变换模块,当N3=T时,所述N3点快速傅立叶反变换模块为T点快速傅立叶反变换模块,其中所述T点快速傅立叶反变换模块包括第四数据排列模块,用于将具有序号n4的一行或一列T个数据排列成M4×N4的矩阵,其中所述M4×N4的矩阵的行号a4和列号b4与序号n4有如下关系n4=(N4*a4+M4*b4)T,a4=0,1,...,M4-1,b4=0,1,...,N4-1;N4点快速傅立叶反变换模块,用于对所述M4×N4矩阵的每一行N4个数据作N4点快速傅立叶反变换;M4点快速傅立叶反变换模块,用于对经过N4点快速傅立叶反变换的矩阵的每一列M4个数据作M4点快速傅立叶反变换;以及其中,M4*N4=T,且M4和N4为互质的正整数。
6.一种3780点傅立叶变换解调装置,其特征在于包括模式切换模块,用于接收调制后的数据帧并根据在调制过程中所接收的每一路数据所包含的数据数确定所述解调装置在第一模式和第二模式间的切换,其中当所述数据数为60的整数倍时,所述解调装置处于第一模式,而当所述数据数为63的整数倍时,所述解调装置处于第二模式,所述解调装置还包括第一数据排列模块、63点快速傅立叶变换模块、选择控制模块、复数乘法模块和60点快速傅立叶变换模块,其中在所述第一模式所述第一数据排列模块被配置为按列优先次序将所述数据帧中的数据依次排列成60×63的矩阵;所述63点快速傅立叶变换模块被配置为对所述矩阵的每一行63个数据作63点快速傅立叶变换;所述选择控制模块被配置为根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;所述复数乘法模块被配置为将所述至少一列数据中的每个数据乘以相位旋转因子后输入所述60点快速傅立叶变换模块;所述60点快速傅立叶变换模块被配置为对所述至少一列数据的每一列60个数据作60点快速傅立叶变换,在所述第二模式所述第一数据排列模块被配置为按列优先次序将所述数据帧中的数据依次排列成63×60的矩阵;所述60点快速傅立叶变换模块被配置为对所述矩阵的每一行60个数据作60点快速傅立叶变换;所述选择控制模块被配置为根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;所述复数乘法模块被配置为将所述至少一列数据中的每个数据乘以相位旋转因子后输入所述63点快速傅立叶变换模块;所述63点快速傅立叶变换模块被配置为对所述至少一列数据的每一列63个数据作63点快速傅立叶变换。
7.如权利要求6所述的3780点傅立叶变换解调装置,其特征在于所述63点快速傅立叶变换模块包括第二数据排列模块,用于将具有序号n5的一行或一列63个数据排列成M5×N5的矩阵,其中所述M5×N5的矩阵的行号a5和列号b5与序号n5有如下关系n5=(N5*a5+M5*b5)63,a5=0,1,...,M5-1,b5=0,1,...,N5-1;N5点快速傅立叶变换模块,用于对所述M5×N5矩阵的每一行N5个数据作N5点快速傅立叶变换;M5点快速傅立叶变换模块,用于对经过N5点快速傅立叶变换的矩阵的每一列M5个数据作M5点快速傅立叶变换;以及第二地址变换模块,用于将经过M5点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n5与重新排列后数据的新序号k5有如下关系n5=(16*k5)63,其中0≤n5,k5<63,n5和k5都为整数,并且其中,M5*N5=63,M5=7或9。
8.如权利要求6所述的3780点傅立叶变换解调装置,其特征在于所述60点快速傅立叶变换模块包括第三数据排列模块,用于将具有序号n6的一行或一列60个数据排列成M6×N6的矩阵,其中所述M6×N6的矩阵的行号a6和列号b6与序号n6有如下关系n6=(N6*a+M6*b)60,a6=0,1,...,M6-1,b6=0,1,...,N6-1;N6点快速傅立叶变换模块,用于对所述M6×N6矩阵的每一行N6个数据作N6点快速傅立叶变换;M6点快速傅立叶变换模块,用于对经过N6点快速傅立叶变换的矩阵的每一列M6个数据作M6点快速傅立叶变换;以及第三地址变换模块,用于将经过M6点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n6与重新排列后数据的新序号k6有如下关系n6=(47*k6)60,其中0≤n6,k6<60,n6和k6都为整数,并且其中,M6*N6=60,M6=S或T,S*T=60,S=3,4或5,而T=12,15或20。
9.如权利要求8所述的3780点傅立叶变换解调装置,其特征在于当M6=T时,所述M6点快速傅立叶变换模块为T点快速傅立叶变换模块,当N6=T时,所述N6点快速傅立叶变换模块为T点快速傅立叶变换模块,其中所述T点快速傅立叶变换模块包括第四数据排列模块,用于将具有序号n7的一行或一列T个数据依次排列成M7×N7的矩阵,其中所述M7×N7的矩阵的行号a7和列号b7与序号n7有如下关系n7=(N7*a7+M7*b7)T,a7=0,1,...,M7-1,b7=0,1,...,N7-1;N7点快速傅立叶变换模块,用于对所述M7×N7矩阵的每一行N7个数据作N7点快速傅立叶变换;以及M7点快速傅立叶变换模块,用于对经过N7点快速傅立叶变换的矩阵的每一列M7个数据作M7点快速傅立叶变换,其中,M7*N7=T,且M7和N7为互质的正整数。
10.一种3780点傅立叶变换调制解调系统,其特征在于包括如权利要求1所述的3780点傅立叶变换调制装置,以及如权利要求6所述的3780点傅立叶变换解调装置。
11.一种3780点傅立叶变换调制方法,其特征在于包括输入步骤,用于接收多路数据,其中每一路包含M1的整数倍个数据;整序步骤,用于将所述多路数据分为N1个包含M1个数据的组,并且对于每一组,将M1个数据以N1为间隔依次放置于同一数据帧中,作为所述数据的原地址n1;以及3780点快速傅立叶反变换步骤,用于对所述数据帧中的数据进行3780点快速傅立叶反变换,其中所述3780点快速傅立叶反变换步骤包括第一数据排列步骤,用于按列优先次序将所述数据帧中的数据依次排列成M1×N1的矩阵;N1点快速傅立叶反变换步骤,用于对所述矩阵的每一行N1个数据作N1点快速傅立叶反变换;复数乘法步骤,用于将经过N1点快速傅立叶反变换的矩阵中的每个数据乘以相位旋转因子以产生乘积矩阵;以及M1点快速傅立叶反变换步骤,用于对所述乘积矩阵的每一列M1个数据作M1点快速傅立叶反变换;以及第一地址变换步骤,用于将经过M1点快速傅立叶反变换的乘积矩阵中的数据重新放置于所述数据帧中,其中所述原地址n1与重新放置后数据的新地址k1有如下关系[n1]M1=(k1)N1且(n1)M1=[k1]N1,其中,[]M1表示以M1为模取整,()M1表示以M1为模取余,M1*N1=3780,M1=60或63,并且0≤n1,k1<3780,n1和k1都为整数。
12.如权利要求11所述的3780点傅立叶变换调制方法,其特征在于当M1=63时,所述M1点快速傅立叶反变换步骤为63点快速傅立叶反变换步骤,当N1=63时,所述N1点快速傅立叶反变换模块为63点快速傅立叶反变换步骤,其中所述63点快速傅立叶反变换步骤包括第二数据排列步骤,用于将具有序号n2的一行或一列63个数据排列成M2×N2的矩阵,其中所述M2×N2的矩阵的行号a2和列号b2与序号n2有如下关系n2=(N2*a2+M2*b2)63,a2=0,1,...,M2-1,b2=0,1,...,N2-1;N2点快速傅立叶反变换步骤,用于对所述M2×N2矩阵的每一行N2个数据作N2点快速傅立叶反变换;M2点快速傅立叶反变换步骤,用于对经过N2点快速傅立叶反变换的矩阵的每一列M2个数据作M2点快速傅立叶反变换;以及第二地址变换步骤,用于将经过M2点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n2与重新排列后数据的新序号k2有如下关系n2=(16*k2)63,其中0≤n2,k2<63,n2和k2都为整数,并且其中,M2*N2=63,M2=7或9。
13.如权利要求11所述的3780点傅立叶变换调制方法,其特征在于当M1=60时,所述M1点快速傅立叶反变换步骤为60点快速傅立叶反变换步骤,当N1=60时,所述N1点快速傅立叶反变换步骤为60点快速傅立叶反变换步骤,其中所述60点快速傅立叶反变换步骤包括第三数据排列步骤,用于将具有序号n3的一行或一列60个数据排列成M3×N3的矩阵,其中所述M3×N3的矩阵的行号a3和列号b3与序号n3有如下关系n3=(N3*a3+M3*b3)60,a3=0,1,...,M3-1,b3=0,1,...,N3-1;N3点快速傅立叶反变换步骤,用于对所述M3×N3矩阵的每一行N3个数据作N3点快速傅立叶反变换;M3点快速傅立叶反变换步骤,用于对经过N3点快速傅立叶反变换的矩阵的每一列M3个数据作M3点快速傅立叶反变换;以及第三地址变换步骤,用于将经过M3点快速傅立叶反变换的矩阵中的数据重新排列为一行或一列,其中序号n3与重新排列后数据的新序号k3有如下关系n3=(47*k3)60,其中0≤n3,k3<60,n3和k3都为整数,并且其中,M3*N3=60,M3=S或T,S*T=60,S=3,4或5,而T=12,15或20。
14.如权利要求13所述的3780点傅立叶变换调制方法,其特征在于当M3=T时,所述M3点快速傅立叶反变换步骤为T点快速傅立叶反变换步骤,当N3=T时,所述N3点快速傅立叶反变换步骤为T点快速傅立叶反变换步骤,其中所述T点快速傅立叶反变换步骤包括第四数据排列步骤,用于将具有序号n4的一行或一列T个数据排列成M4×N4的矩阵,其中所述M4×N4的矩阵的行号a4和列号b4与序号n4有如下关系n4=(N4*a4+M4*b4)T,a4=0,1,...,M4-1,b4=0,1,...,N4-1;N4点快速傅立叶反变换步骤,用于对所述M4×N4矩阵的每一行N4个数据作N4点快速傅立叶反变换;M4点快速傅立叶反变换步骤,用于对经过N4点快速傅立叶反变换的矩阵的每一列M4个数据作M4点快速傅立叶反变换;以及其中,M4*N4=T,且M4和N4为互质的正整数。
15.一种3780点傅立叶变换解调方法,其特征在于包括接收调制后的数据帧并根据在调制过程中所接收的每一路数据所包含的数据数确定在第一模式和第二模式间的切换,其中当所述数据数为60的整数倍时,处于第一模式,而当所述数据数为63的整数倍时,处于第二模式,其中在所述第一模式,所述方法还包括以下步骤按列优先次序将所述数据帧中的数据依次排列成60×63的矩阵;对所述矩阵的每一行63个数据作63点快速傅立叶变换;根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;将所述至少一列数据中的每个数据乘以相位旋转因子;对所述至少一列数据的每一列60个数据作60点快速傅立叶变换,在所述第二模式,所述方法还包括以下步骤按列优先次序将所述数据帧中的数据依次排列成63×60的矩阵;对所述矩阵的每一行60个数据作60点快速傅立叶变换;根据本地的整序信息从经过快速傅立叶变换的矩阵中选择需要进行解调的至少一列数据;将所述至少一列数据中的每个数据乘以相位旋转因子;对所述至少一列数据的每一列63个数据作63点快速傅立叶变换。
16.如权利要求15所述的3780点傅立叶变换解调方法,其特征在于所述作63点快速傅立叶变换的步骤包括第二数据排列步骤,用于将具有序号n5的一行或一列63个数据排列成M5×N5的矩阵,其中所述M5×N5的矩阵的行号a5和列号b5与序号n5有如下关系n5=(N5*a5+M5*b5)63,a5=0,1,...,M5-1,b5=0,1,...,N5-1;N5点快速傅立叶变换步骤,用于对所述M5×N5矩阵的每一行N5个数据作N5点快速傅立叶变换;M5点快速傅立叶变换步骤,用于对经过N5点快速傅立叶变换的矩阵的每一列M5个数据作M5点快速傅立叶变换;以及第二地址变换步骤,用于将经过M5点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n5与重新排列后数据的新序号k5有如下关系n5=(16*k5)63,其中0≤n5,k5<63,n5和k5都为整数,并且其中,M5*N5=63,M5=7或9。
17.如权利要求15所述的3780点傅立叶变换解调方法,其特征在于所述作60点快速傅立叶变换的步骤包括第三数据排列步骤,用于将具有序号n6的一行或一列60个数据排列成M6×N6的矩阵,其中所述M6×N6的矩阵的行号a6和列号b6与序号n6有如下关系n6=(N6*a+M6*b)60,a6=0,1,...,M6-1,b6=0,1,...,N6-1;N6点快速傅立叶变换步骤,用于对所述M6×N6矩阵的每一行N6个数据作N6点快速傅立叶变换;M6点快速傅立叶变换步骤,用于对经过N6点快速傅立叶变换的矩阵的每一列M6个数据作M6点快速傅立叶变换;以及第三地址变换步骤,用于将经过M6点快速傅立叶变换的矩阵中的数据重新排列为一行或一列,其中序号n6与重新排列后数据的新序号k6有如下关系n6=(47*k6)60,其中0≤n6,k6<60,n6和k6都为整数,并且其中,M6*N6=60,M6=S或T,S*T=60,S=3,4或5,而T=12,15或20。
18.如权利要求17所述的3780点傅立叶变换解调方法,其特征在于当M6=T时,所述M6点快速傅立叶变换步骤为T点快速傅立叶变换步骤,当N6=T时,所述N6点快速傅立叶变换步骤为T点快速傅立叶变换步骤,其中所述T点快速傅立叶变换步骤包括第四数据排列步骤,用于将具有序号n7的一行或一列T个数据依次排列成M7×N7的矩阵,其中所述M7×N7的矩阵的行号a7和列号b7与序号n7有如下关系n7=(N7*a7+M7*b7)T,a7=0,1,...,M7-1,b7=0,1,...,N7-1;N7点快速傅立叶变换步骤,用于对所述M7×N7矩阵的每一行N7个数据作N7点快速傅立叶变换;以及M7点快速傅立叶变换步骤,用于对经过N7点快速傅立叶变换的矩阵的每一列M7个数据作M7点快速傅立叶变换,其中,M7*N7=T,且M7和N7为互质的正整数。
全文摘要
本发明提供一种3780点非对称傅立叶变换调制装置/解调装置,其中调制装置包括输入模块、整序模块和3780点快速傅立叶反变换模块,其中3780点快速傅立叶反变换模块包括数据排列模块、N1点快速傅立叶反变换模块、复数乘法模块、M1点快速傅立叶反变换模块以及第一地址变换模块。而解调装置包括模式切换模块、数据排列模块、63点快速傅立叶变换模块、选择控制模块、复数乘法模块和60点快速傅立叶变换模块。本发明还揭示了相应的调制/解调方法。本发明适用于多信源的系统,在接收端由于减少了复数乘法运算和FFT运算,可以降低功耗,得到精确的变换后数据。
文档编号H04L27/26GK1913514SQ20061011602
公开日2007年2月14日 申请日期2006年9月14日 优先权日2006年9月14日
发明者杨旭霞, 归琳, 熊箭 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1