CN114297570B 一种用于通信系统的fft实现装置及其实现方法 (紫金山实验室)_第1页
CN114297570B 一种用于通信系统的fft实现装置及其实现方法 (紫金山实验室)_第2页
CN114297570B 一种用于通信系统的fft实现装置及其实现方法 (紫金山实验室)_第3页
CN114297570B 一种用于通信系统的fft实现装置及其实现方法 (紫金山实验室)_第4页
CN114297570B 一种用于通信系统的fft实现装置及其实现方法 (紫金山实验室)_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种用于通信系统的FFT实现装置及其实现本发明公开了一种用于通信系统的FFT实现运算器包括对应设定子FFT点数集合的若干子子FFT点数集合中任一子FFT点数的子FFT运算,每个子FFT计算单元的子FFT点数的乘积等于所述通信系统要求的FFT点数。当多模通信系统中不同模式要求点数不是2的幂次方时,本发明所述FFT实现装置可以无冗余实现,不用先实现点22.根据权利要求1所述的一种用于通信系统的FFT实现装置,其特征在于,FFT运算器4.根据权利要求3所述的一种用于通信系统的FFT实现装置,35.根据权利要求3所述的一种用于通信系统的F7.根据权利要求1或2所述的一种用于通信系统的FFT实现装置,其特征在于,控制器及实现所述FFT点数时的每个子FFT计算单元对应的子FFT点数。控制器(1)根据所述通信系统要求的FFT点数以及实现所述FF结果进行对应子FFT点数的子FFT运算后得到下一个结果,将所述下一个结果输入乘法器果与旋转因子进行复数乘法运算后得到下一次子FFT迭代结果,将所述下一次子FFT迭读取上一次子FFT迭代结果,对上一次子FFT迭代结果进行对应子FFT点数的子FFT运算后得4[0001]本发明属于通信技术领域,具体涉及一种用于通信系统的FFT实现装置及其实现(SC-FDMA)技术,5GNR既支持4GLTE的SC-FDMA技术,又支持OFDMA技术(即与下行通信相[0003]在一个多模通信系统中不同的通信模式(例如4GLTE、5GNR等)下需要支持不同按照5GNR协议要求需要支持4096点FFT运算。因此4GLTE和5GNR的多模移动通信系统中需要同时支持上述35种点数的FFT运算,这35种点数分别为个点数4096为5GNR需要支持的。多模通信系统在实现FFT运算时可以用不同的FFT实现装模移动通信系统中4GLTE要求点数的FFT运算和5GNR要求点数的FFT运算可以共用一个FFT实现装置,该FFT实现装置同时支持4GLTE的34种点数的FFT运算和5GNR的1种点数的5[0008]因此现有技术中,使用同一个FFT实现装置实现4GLTE和5GNR要求点数的FFT运现装置及其实现方法,解决了多模通信系统中使用同一个FFT实现装置实现不同模式要求计算单元的输出连接乘法器,每个子FFT计算单元用于实现设定子FFT点数集合中任一子FFT点数的子FFT运算,所有子FFT计算单元的子FFT点数的乘积等于所述通信系统要求的[0014]乘法器连接旋转因子存储器,用于实现与其连接的每个子FFT计算单元的输出和一复数乘法单元连接第一子FFT计算单元和第一旋转因子存储单元,第二复数乘法单元连据存储单元连接第一数据存储单元和第一子FFT计算单元,第三数据存储单元连接第一复数乘法单元和第二子FFT计算单元,第四数据存储单元连接第二复数乘法单元和第五数据6系统要求的FFT点数以及实现所述FFT点数时的每个子F[0032]控制器根据所述通信系统要求的FFT点数以及实现所述FFT点数时的每个子FFT计[0033]第一个子FFT计算单元从数据存储器中读取待运算数据,对待运算数据进行对应因子输入乘法器,在乘法器中将所述结果与旋转因子进行复数乘法运算后得到第一次子[0034]下一个子FFT计算单元从数据存储器中读取当前子FFT迭代结果,对当前子FFT迭代结果进行对应子FFT点数的子FFT运算后得到下一个结果,将所述下一个结果输入乘法[0035]从数据存储器中读取最后一次子FFT迭代结果,作为对应所述要求的FFT点数的求的FFT点数以及实现所述FFT点数时的每个子FFT计[0038]本发明所述的FFT实现装置中,FFT运算器包括对应设定子FFT点数集合的若干子FFT计算单元,每个子FFT计算单元用于实现设定子FFT点数集合中任一子FFT点数的子FFT7[0046]FFT运算器3包括对应设定子FFT点数集合的若干子FFT计算单元,所有子FFT计算[0048]乘法器4连接旋转因子存储器5,用于实现与其连接的每个子FFT计算单元的输出[0049]数据存储器2连接乘法器4,用于存储与其连接的子FFT计算单元和乘法器4的输[0053]旋转因子存储器5包括第一旋转因子存储单元51、第二旋转因子存储单元52和第8数乘法单元42连接第二子FFT计算单元32和第二旋转因子存储单元52,第三复数乘法单元43连接第三子FFT计算单元33和第三旋转据存储单元23连接第一复数乘法单元41和第二子FFT计算单元32,第四数据存储单元24连数的乘积小于或等于第一阈值,第三子FFT计算单元33的子FFT点数与第四子FFT计算单元34的子FFT点数的乘积小于或等于第二阈值,第一阈值和第二阈值的乘积等于所述通信系[0064]本实施例中,旋转因子存储器5采用RAM实现可以避免ROM出错带来的不可恢复的信系统要求的FFT点数以及实现所述FFT点数时的每个子FFT计算单9FFT运算器3的输入端,FFT运算器3的输出端连接乘法器4的输入端和数据存储器2的输入FFT运算器3可以将N点FFT运算灵活分解为最多4次并行执行的子FFT运算,通过上述子FFT[0078]控制器1配置第一子FFT计算单元31的计算点数为N1,第一子FFT计算单元31做N1[0079]控制器1配置第二子FFT计算单元32的计算点数为N2,第二子FFT计算单元32做N2[0080]控制器1配置第三子FFT计算单元33的计算点数为N3,第三子FFT计算单元33做N3[0081]控制器1配置第四子FFT计算单元34的计算点数为N4,第四子FFT计算单元34做N4转因子存储单元52深度至少为4096,每个旋转因子值为其中s2的范围第三旋转因子存储单元53深度至少为64,每个旋转因子值为其中s3的[0088]第一复数乘法单元41,其输入端分别与第一子FFT计算单元31的输出端和第一旋与第一旋转因子存储单元51的旋转因子之间的[0089]第二复数乘法单元42,其输入端分别与第二子FFT计算单元32的输出端和第二旋与第二旋转因子存储单元52的旋转因子之间的[0090]第三复数乘法单元43,其输入端分别与第三子FFT计算单元33的输出端和第三旋与第三旋转因子存储单元53的旋转因子之间的成N1点子FFT运算的结果、N2点子FFT运算的结果和N3点子FFT运算的结果与旋转因子之间与第一子FFT计算单元31的输入端连接,用于存储对第一数据存储单元21中的待运算数据算结果输入第二子FFT计算单元32中进行与第三子FFT计算单元33的输入端连接,用于存储对第四数据存储单元24中的数据进行重算结果输入第四子FFT计算单元34中进行子FFT运算的结果和N4点子FFT运算的结果分别与旋转因子相乘后的结果的存储需要8196的结果的存储只需要128深度的小存储空间,这是保证本实施例在实现全流水的操作的情[0101]控制器1用于接收外部CPU接口的配置信息,配置信息包括FFT计算类型及旋转因点或9点)与控制器1中64个条目的查找表的灵活运用,借助数据存储器2中7个数据存储单先实现点数为2的幂次方的FFT运算,再通过补零来完成对应的4GLTE和5GNR下支持点数时可以通过改变输入待运算数据的位宽和系统支持的时钟来控制FFT运算速度,用以适配[0111]控制器1根据所述通信系统要求的FFT点数以及实现所述FFT点数时的每个子FFT[0114]从数据存储器2中读取最后一次子FFT迭代结果,作为所述通信系统要求的FFT点要求的FFT点数以及实现所述FFT点数时的每个子FFT计算[0117]在实施例2所述FFT实现装置的基础上,本实施例提出了一种用于通信系统的FFT中的查找表为外接的CPU根据控制器1提供的[0120]具体地,所述FFT计算类型的取值范围为0到63中任意整数,控制器1根据输入的[0121]步骤102:FFT实现装置外接的CPU通过控制器1提供的CPU接口预先初始化旋转因旋转因子表初始化工作。在定位故障时外接的CPU可以通过控制器1的CPU接口读三张旋转[0124]下面再具体地介绍本实施例的后续操作步骤前先介绍数据存储器2中7个数据存过定义twiddle_mem_read来分别说明3个旋转因子[0130](1)当VALID1为FALSE时,即指示信号无效时,不产生写使能,即wr_enable=[0132](2)当写地址wr_addr大于SWITCH_SIZE-1时,写地址wr_addr变为ME[0133](3)当写地址wr_addr大于MEM_DEPTH1/2+SWITCH_SIZE-1时,写地址wr_addr变为的大小BURST_SIZE,当数据存储单元已存储数据数量达到BURST_SIZE时,连续开始读出[0139](1)当数据存储单元中已存储数据数量为BURST_SIZE时,产生读使[0141](3)重复(2)直到读出BURST_SIZE个数据后改变起始地址start_addr1=MEM_[0143]定义旋转因子存储器2中每个旋转因子存储单元的通用读过程twiddle_mem_read[0150](2)当读地址rd_addr大于MEM_DEPTH-1时,起始地址tw_start_addr加1,读地址存储单元51输出的旋转因子做复数乘法得到的计算结果称为第一次子FFT迭代结果;将第[0152]步骤二、控制器1控制待运算数据做N1点子FFT运算并将第一次子FFT迭代结果存[0161]具体地,所述控制器1控制第一数据存储单元21中读出的数据写入第二数据存储示第一数据存储单元21读数据有效,N1*N2为第二数据存储单元22进行乒乓操作切换的最[0169]控制器1将数据写入并读出第一数据存储单元21和第二数据存储单元22是为了达到每N个待运算数据做重排的效果,为每N个待运算数据做N2*N3*N4次N1点子FFT运算做准[0171]步骤205:控制器1将第一子FFT计算单元31的输出和第一旋转因子存储单元51输有数据输出则表示第一子FFT计算单元31输出的数据有效,N2表示每读一次读地址递增的出则表示第一复数乘法单元41输出的数据有效,N1*N2为第三数据存储单元23进行乒乓操[0180]通过步骤201~206完成N1点子FFT运算并将第一次子FFT迭代结果存入第三数据[0186]控制器1将第一次子FFT迭代结果写入并读出第三数据存储单元23是为了达到每[0188]步骤303:控制器1将第二子FFT计算单元32的输出和第二旋转因子存储单元52输表示第二复数乘法器42输出的数据有效,N为第四数据存储单元24进行乒乓操作切换的最[0197]通过步骤301~304完成N2点子FFT运算并将第二次子FFT迭代结果存入第四数据[0203]具体地,所述控制器1控制第四数据存储单元24读出的数据写入第五数据存储单示第四数据存储单元24读数据有效,N3*N4为第五数据存储单元25进行乒乓操作切换的最器1产生第五数据存储单元25的读使能和读地址来完成,所述读使能和读地址通过如下读[0211]控制器1将第二次子FFT迭代结果写入并读出第四数据存储单元24和第五数据存[0213]步骤404:控制器1将第三子FFT计算单元33的输出和第三旋转因子存储单元53输有数据输出则表示第三子FFT计算单元33输出的数据有效,N4表示每读一次读地址递增的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论