一种FFT处理器的块浮点方法技术

技术编号:14493137 阅读:271 留言:0更新日期:2017-01-29 15:46
本发明专利技术涉及FFT处理器技术领域,公开了一种FFT处理器的块浮点方法,包括:在FFT处理器的某一级中,对该级的数据块进行相应的运算;根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存取公式对所述块浮点指数进行存储;在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存取公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作。该块浮点方法具有根据需要能够适当调整数据块大小的优点。

【技术实现步骤摘要】

本专利技术涉及FFT处理器
,特别是涉及一种FFT处理器的块浮点方法
技术介绍
FFT是离散傅里叶变换(DFT)的一种快速实现方法,可以将数据在时域和频域之间进行转换。在基于存储的定点FFT处理器中,由于存储器中的数据的字长有限,运算单元的计算结果通常需要进行缩放后才能存回存储器,然而,这样便会对计算的结果造成精度损失即,FFT运算所需的级数越多,基数越大,最终的计算结果的精度的损失就越大。基于这一考虑,需采用块浮点技术来解决因缩放而对计算结果造成的精度损失。在现有的用于基于存储的FFT处理器的块浮点技术中,数据块的大小只能为一个固定值。而对于需要同时支持2的整数幂点FFT运算和非2的整数幂点DFT运算的FFT处理器,其进行基数为2的整数幂的运算时数据块的大小和进行基数为非2的整数幂的运算时数据块的大小不同,因此需要一种FFT处理器中数据块大小可调的块浮点方法。
技术实现思路
(一)要解决的技术问题本专利技术的目的是提供一种FFT处理器的块浮点方法,以解决现有技术中无法支持数据块大小可调的FFT处理器的问题。(二)技术方案为了解决上述技术问题,本专利技术提供一种FFT处理器的块浮点方法,包括:在FFT处理器的某一级中,对该级的数据块进行相应的运算;根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存储公式以对所述块浮点指数进行存储;在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存储公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作。其中,在根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存取公式对所述块浮点指数进行存取的步骤或在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存取公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作步骤中,所述FFT处理器采用DIT、DIF、混合基或质因子算法将N点FFT运算分解为m级蝶形运算,每一级蝶形运算的点数分别为N1,N2,…,Nm,待存取数据在每一级蝶形运算中可由n1,n2,…,nm唯一确定,其中,分别代表待存取数据在第h级的蝶形运算中的排序。其中,将所述FFT处理器中的某一级定义为i级,将FFT处理器中的某一级的下一级定义为j级。其中,所述块浮点指数存储公式为bank=nk+NknL%Paddr=nk+NknL/P,]]>其中,bank为数据块中的数据所在的堆,addr为数据块中的数据在所在的堆中的地址,nk为在所述第j级的数据块中数据的参数n集合中同时又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,nL为既不在所述第j级的数据块中数据的参数集合中又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,Nk为nk的可取值的数量,P为FFT处理器可以并行存取的最大数据并行度。其中,在所述第i级中,根据所述FFT处理器的数据无冲突算法,同一个数据块中的数据存在X个参数,分别为ni1,ni2,…,niX,其中,nik1≤k≤X的取值为na1≤a≤m或na中的部分二进制比特位,其中,ni1,ni2,…,niX相应的可取值数量为Ni1,Ni2,…,NiX。其中,在第j级中,根据所述FFT处理器的数据无冲突算法,同一个数据块中的数据存在Y个参数,分别为nj1,nj2,…,njY,其中,njk1≤k≤Y的取值为nb1≤b≤m或nb中的部分二进制比特位,其中,nj1,nj2,…,njY相应的可取值数量为Nj1,Nj2,…,NjY。其中,在nj1,nj2,…,njY中,同时又不在ni1,ni2,…,niX中的参数有z个,分别为nk1,nk2,…,nkZ,各参数的相应的可取值数量分别为Nk1,Nk2,…,NkZ。其中,基于nk和Nk分别构建第一平衡方程,所述第一平衡方程为nk=nk1+Nk1nk2+...+Nk1Nk2...NkZ-1nkzNk=Nk1Nk2...NkZ,]]>其中,nk为在所述第j级的数据块中数据的参数集合中同时又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,Nk为nk的可取值的数量。其中,在n1,n2,…,nm中,且既不在ni1,ni2,…,niX中又不在nj1,nj2,…,njY中的参数有U个,分别为nL1,nL2,…,nLU,各参数的可取值数量分别为NL1,NL2,…,NLU。其中,基于nL和NL分别构建第二平衡方程,所述第二平衡方程为nk=nk1+Nk1nk2+...+Nk1Nk2...NkZ-1nkzNk=Nk1Nk2...NkZ]]>其中,nL为既不在所述第j级的数据块中数据的参数集合中又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,NL为nL的可取值的数量。(三)有益效果本专利技术提供的块浮点方法,与现有技术相比,具有如下优点:与现有技术中的基于存储的FFT处理器中使用的块浮点技术只能所有数据共用一个数据块,或者将2的整数幂点FFT的数据分为多个数据块,其数据块的大小为固定值,而对于需要同时支持2的整数幂点FFT和非2的整数幂点DFT的高精度FFT处理器,需要一种FFT处理器中数据块大小可调的块浮点方法。本申请的块浮点方法恰好能够用解决这一技术问题,即,能够用于数据块大小可调的FFT处理器。附图说明图1为本申请的实施例的FFT处理器的块浮点方法的步骤流程示意图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实例用于说明本专利技术,但不用来限制本专利技术的范围。如图1所示,图1示意性地显示了该块浮点方法包括:步骤S410,在FFT处理器的某一级中,对该级的数据块进行相应的运算。步骤S420,根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存取公式对所述块浮点指数进行存储。步骤S430,在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存取公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作。本申请的块浮点方法,与现有技术中的基于存储的FFT处理器中使用的块浮点技术只能所有数据共用一个数据块,或者将2的整数幂点FFT的数据分为多个数据块,其数据块的大小为固定值,而对于需要同时进行2的整数幂点FFT和非2的整数幂点DFT的高精度FFT处理器,需要一种可以根据需求调整数据块大小的块浮点方法。然而,本申请的块浮点方法恰好能够用解决这一技术问题,即,能够用于数据块大小可调的FFT处理器。需要说明的是,块浮点数据由尾数和指数组成,一个数据块包含多个数据,同一个数据块中的数据共享同一个指数。为进一步优化上述技术方案中的步骤S420和步骤S430,在上述技术方案的基础上,块浮点指数存储公式为bank=nk+NknL%Paddr=nk+NknL/P,]]>其中,bank为数据块中的数据所在的堆,addr为数据块中的数据在所在的堆中的地址,nk为在所述第j级的数据块中数据的参数集合中同时又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,nL为既不在所述第j级的数据块中数据的参数集合中又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,Nk为nk的可取值本文档来自技高网...
一种FFT处理器的块浮点方法

【技术保护点】
一种FFT处理器的块浮点方法,其特征在于,包括:在FFT处理器的某一级中,对该级的数据块进行相应的运算;根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存取公式以对所述块浮点指数进行存储;在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存取公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作。

【技术特征摘要】
1.一种FFT处理器的块浮点方法,其特征在于,包括:在FFT处理器的某一级中,对该级的数据块进行相应的运算;根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存取公式以对所述块浮点指数进行存储;在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存取公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作。2.根据权利要求1所述的FFT处理器的块浮点方法,其特征在于,在根据运算得出的结果,以对所述数据块进行相应的缩放操作,并计算出该级的所述数据块的块浮点指数,并根据块浮点指数存取公式对所述块浮点指数进行存取的步骤或在所述FFT处理器的某一级的下一级中,根据所述块浮点指数存取公式读取所述块浮点指数,并根据所述块浮点指数进行相应的对齐操作步骤中,所述FFT处理器采用DIT、DIF、混合基或质因子算法将N点FFT运算分解为m级蝶形运算,每一级蝶形运算的点数分别为N1,N2,…,Nm,待存取数据在每一级蝶形运算中可由n1,n2,…,nm唯一确定,其中,分别代表待存取数据在第h级的蝶形运算中的排序。3.根据权利要求2所述的FFT处理器的块浮点方法,其特征在于,将所述FFT处理器中的某一级定义为i级,将FFT处理器中的某一级的下一级定义为j级。4.根据权利要求1所述的FFT处理器的块浮点方法,其特征在于,所述块浮点指数存储公式为bank=nk+NknL%Paddr=nk+NknL/P,]]>其中,bank为数据块中的数据所在的堆,addr为数据块中的数据在所在的堆中的地址,nk为在所述第j级的数据块中数据的参数集合中同时又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,nL为既不在所述第j级的数据块中数据的参数集合中又不在所述第i级的数据块中数据的参数集合中的参数集合的参数,Nk为nk的可取值的数量,P为FFT处理器可以并行存取的最大数据并行度。5.根据权利要求4所述的FFT处理器的块浮点方法,其特征在于,在所述第i级中,根据所述FFT处理器的数据无冲突算法,同一个数...

【专利技术属性】
技术研发人员:刘大可刘劭晗
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

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

1