本發(fā)明涉及FFT處理器
技術(shù)領(lǐng)域:
,特別是涉及一種FFT處理器的塊浮點(diǎn)方法。
背景技術(shù):
:FFT是離散傅里葉變換(DFT)的一種快速實(shí)現(xiàn)方法,可以將數(shù)據(jù)在時(shí)域和頻域之間進(jìn)行轉(zhuǎn)換。在基于存儲(chǔ)的定點(diǎn)FFT處理器中,由于存儲(chǔ)器中的數(shù)據(jù)的字長(zhǎng)有限,運(yùn)算單元的計(jì)算結(jié)果通常需要進(jìn)行縮放后才能存回存儲(chǔ)器,然而,這樣便會(huì)對(duì)計(jì)算的結(jié)果造成精度損失即,F(xiàn)FT運(yùn)算所需的級(jí)數(shù)越多,基數(shù)越大,最終的計(jì)算結(jié)果的精度的損失就越大?;谶@一考慮,需采用塊浮點(diǎn)技術(shù)來(lái)解決因縮放而對(duì)計(jì)算結(jié)果造成的精度損失。在現(xiàn)有的用于基于存儲(chǔ)的FFT處理器的塊浮點(diǎn)技術(shù)中,數(shù)據(jù)塊的大小只能為一個(gè)固定值。而對(duì)于需要同時(shí)支持2的整數(shù)冪點(diǎn)FFT運(yùn)算和非2的整數(shù)冪點(diǎn)DFT運(yùn)算的FFT處理器,其進(jìn)行基數(shù)為2的整數(shù)冪的運(yùn)算時(shí)數(shù)據(jù)塊的大小和進(jìn)行基數(shù)為非2的整數(shù)冪的運(yùn)算時(shí)數(shù)據(jù)塊的大小不同,因此需要一種FFT處理器中數(shù)據(jù)塊大小可調(diào)的塊浮點(diǎn)方法。技術(shù)實(shí)現(xiàn)要素:(一)要解決的技術(shù)問(wèn)題本發(fā)明的目的是提供一種FFT處理器的塊浮點(diǎn)方法,以解決現(xiàn)有技術(shù)中無(wú)法支持?jǐn)?shù)據(jù)塊大小可調(diào)的FFT處理器的問(wèn)題。(二)技術(shù)方案為了解決上述技術(shù)問(wèn)題,本發(fā)明提供一種FFT處理器的塊浮點(diǎn)方法,包括:在FFT處理器的某一級(jí)中,對(duì)該級(jí)的數(shù)據(jù)塊進(jìn)行相應(yīng)的運(yùn)算;根據(jù)運(yùn)算得出的結(jié)果,以對(duì)所述數(shù)據(jù)塊進(jìn)行相應(yīng)的縮放操作,并計(jì)算出該級(jí)的所述數(shù)據(jù)塊的塊浮點(diǎn)指數(shù),并根據(jù)塊浮點(diǎn)指數(shù)存儲(chǔ)公式以對(duì)所述塊浮點(diǎn)指數(shù)進(jìn)行存儲(chǔ);在所述FFT處理器的某一級(jí)的下一級(jí)中,根據(jù)所述塊浮點(diǎn)指數(shù)存儲(chǔ)公式讀取所述塊浮點(diǎn)指數(shù),并根據(jù)所述塊浮點(diǎn)指數(shù)進(jìn)行相應(yīng)的對(duì)齊操作。其中,在根據(jù)運(yùn)算得出的結(jié)果,以對(duì)所述數(shù)據(jù)塊進(jìn)行相應(yīng)的縮放操作,并計(jì)算出該級(jí)的所述數(shù)據(jù)塊的塊浮點(diǎn)指數(shù),并根據(jù)塊浮點(diǎn)指數(shù)存取公式對(duì)所述塊浮點(diǎn)指數(shù)進(jìn)行存取的步驟或在所述FFT處理器的某一級(jí)的下一級(jí)中,根據(jù)所述塊浮點(diǎn)指數(shù)存取公式讀取所述塊浮點(diǎn)指數(shù),并根據(jù)所述塊浮點(diǎn)指數(shù)進(jìn)行相應(yīng)的對(duì)齊操作步驟中,所述FFT處理器采用DIT、DIF、混合基或質(zhì)因子算法將N點(diǎn)FFT運(yùn)算分解為m級(jí)蝶形運(yùn)算,每一級(jí)蝶形運(yùn)算的點(diǎn)數(shù)分別為N1,N2,…,Nm,待存取數(shù)據(jù)在每一級(jí)蝶形運(yùn)算中可由n1,n2,…,nm唯一確定,其中,分別代表待存取數(shù)據(jù)在第h級(jí)的蝶形運(yùn)算中的排序。其中,將所述FFT處理器中的某一級(jí)定義為i級(jí),將FFT處理器中的某一級(jí)的下一級(jí)定義為j級(jí)。其中,所述塊浮點(diǎn)指數(shù)存儲(chǔ)公式為bank=nk+NknL%Paddr=nk+NknL/P,]]>其中,bank為數(shù)據(jù)塊中的數(shù)據(jù)所在的堆,addr為數(shù)據(jù)塊中的數(shù)據(jù)在所在的堆中的地址,nk為在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)n集合中同時(shí)又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),nL為既不在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),Nk為nk的可取值的數(shù)量,P為FFT處理器可以并行存取的最大數(shù)據(jù)并行度。其中,在所述第i級(jí)中,根據(jù)所述FFT處理器的數(shù)據(jù)無(wú)沖突算法,同一個(gè)數(shù)據(jù)塊中的數(shù)據(jù)存在X個(gè)參數(shù),分別為ni1,ni2,…,niX,其中,nik1≤k≤X的取值為na1≤a≤m或na中的部分二進(jìn)制比特位,其中,ni1,ni2,…,niX相應(yīng)的可取值數(shù)量為Ni1,Ni2,…,NiX。其中,在第j級(jí)中,根據(jù)所述FFT處理器的數(shù)據(jù)無(wú)沖突算法,同一個(gè)數(shù)據(jù)塊中的數(shù)據(jù)存在Y個(gè)參數(shù),分別為nj1,nj2,…,njY,其中,njk1≤k≤Y的取值為nb1≤b≤m或nb中的部分二進(jìn)制比特位,其中,nj1,nj2,…,njY相應(yīng)的可取值數(shù)量為Nj1,Nj2,…,NjY。其中,在nj1,nj2,…,njY中,同時(shí)又不在ni1,ni2,…,niX中的參數(shù)有z個(gè),分別為nk1,nk2,…,nkZ,各參數(shù)的相應(yīng)的可取值數(shù)量分別為Nk1,Nk2,…,NkZ。其中,基于nk和Nk分別構(gòu)建第一平衡方程,所述第一平衡方程為nk=nk1+Nk1nk2+...+Nk1Nk2...NkZ-1nkzNk=Nk1Nk2...NkZ,]]>其中,nk為在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中同時(shí)又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),Nk為nk的可取值的數(shù)量。其中,在n1,n2,…,nm中,且既不在ni1,ni2,…,niX中又不在nj1,nj2,…,njY中的參數(shù)有U個(gè),分別為nL1,nL2,…,nLU,各參數(shù)的可取值數(shù)量分別為NL1,NL2,…,NLU。其中,基于nL和NL分別構(gòu)建第二平衡方程,所述第二平衡方程為nk=nk1+Nk1nk2+...+Nk1Nk2...NkZ-1nkzNk=Nk1Nk2...NkZ]]>其中,nL為既不在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),NL為nL的可取值的數(shù)量。(三)有益效果本發(fā)明提供的塊浮點(diǎn)方法,與現(xiàn)有技術(shù)相比,具有如下優(yōu)點(diǎn):與現(xiàn)有技術(shù)中的基于存儲(chǔ)的FFT處理器中使用的塊浮點(diǎn)技術(shù)只能所有數(shù)據(jù)共用一個(gè)數(shù)據(jù)塊,或者將2的整數(shù)冪點(diǎn)FFT的數(shù)據(jù)分為多個(gè)數(shù)據(jù)塊,其數(shù)據(jù)塊的大小為固定值,而對(duì)于需要同時(shí)支持2的整數(shù)冪點(diǎn)FFT和非2的整數(shù)冪點(diǎn)DFT的高精度FFT處理器,需要一種FFT處理器中數(shù)據(jù)塊大小可調(diào)的塊浮點(diǎn)方法。本申請(qǐng)的塊浮點(diǎn)方法恰好能夠用解決這一技術(shù)問(wèn)題,即,能夠用于數(shù)據(jù)塊大小可調(diào)的FFT處理器。附圖說(shuō)明圖1為本申請(qǐng)的實(shí)施例的FFT處理器的塊浮點(diǎn)方法的步驟流程示意圖。具體實(shí)施方式下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)描述。以下實(shí)例用于說(shuō)明本發(fā)明,但不用來(lái)限制本發(fā)明的范圍。如圖1所示,圖1示意性地顯示了該塊浮點(diǎn)方法包括:步驟S410,在FFT處理器的某一級(jí)中,對(duì)該級(jí)的數(shù)據(jù)塊進(jìn)行相應(yīng)的運(yùn)算。步驟S420,根據(jù)運(yùn)算得出的結(jié)果,以對(duì)所述數(shù)據(jù)塊進(jìn)行相應(yīng)的縮放操作,并計(jì)算出該級(jí)的所述數(shù)據(jù)塊的塊浮點(diǎn)指數(shù),并根據(jù)塊浮點(diǎn)指數(shù)存取公式對(duì)所述塊浮點(diǎn)指數(shù)進(jìn)行存儲(chǔ)。步驟S430,在所述FFT處理器的某一級(jí)的下一級(jí)中,根據(jù)所述塊浮點(diǎn)指數(shù)存取公式讀取所述塊浮點(diǎn)指數(shù),并根據(jù)所述塊浮點(diǎn)指數(shù)進(jìn)行相應(yīng)的對(duì)齊操作。本申請(qǐng)的塊浮點(diǎn)方法,與現(xiàn)有技術(shù)中的基于存儲(chǔ)的FFT處理器中使用的塊浮點(diǎn)技術(shù)只能所有數(shù)據(jù)共用一個(gè)數(shù)據(jù)塊,或者將2的整數(shù)冪點(diǎn)FFT的數(shù)據(jù)分為多個(gè)數(shù)據(jù)塊,其數(shù)據(jù)塊的大小為固定值,而對(duì)于需要同時(shí)進(jìn)行2的整數(shù)冪點(diǎn)FFT和非2的整數(shù)冪點(diǎn)DFT的高精度FFT處理器,需要一種可以根據(jù)需求調(diào)整數(shù)據(jù)塊大小的塊浮點(diǎn)方法。然而,本申請(qǐng)的塊浮點(diǎn)方法恰好能夠用解決這一技術(shù)問(wèn)題,即,能夠用于數(shù)據(jù)塊大小可調(diào)的FFT處理器。需要說(shuō)明的是,塊浮點(diǎn)數(shù)據(jù)由尾數(shù)和指數(shù)組成,一個(gè)數(shù)據(jù)塊包含多個(gè)數(shù)據(jù),同一個(gè)數(shù)據(jù)塊中的數(shù)據(jù)共享同一個(gè)指數(shù)。為進(jìn)一步優(yōu)化上述技術(shù)方案中的步驟S420和步驟S430,在上述技術(shù)方案的基礎(chǔ)上,塊浮點(diǎn)指數(shù)存儲(chǔ)公式為bank=nk+NknL%Paddr=nk+NknL/P,]]>其中,bank為數(shù)據(jù)塊中的數(shù)據(jù)所在的堆,addr為數(shù)據(jù)塊中的數(shù)據(jù)在所在的堆中的地址,nk為在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中同時(shí)又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),nL為既不在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),Nk為nk的可取值的數(shù)量,P為FFT處理器可以并行存取的最大數(shù)據(jù)并行度。需要說(shuō)明的是,本申請(qǐng)的塊浮點(diǎn)指數(shù)存儲(chǔ)公式可以保證在FFT處理器的每一級(jí)中每個(gè)數(shù)據(jù)塊有且只有一個(gè)塊浮點(diǎn)指數(shù),并且能夠并行無(wú)沖突存取所需的塊浮點(diǎn)指數(shù)。在FFT處理的不同級(jí)中,同一組n1,n2,…,nm確定的數(shù)據(jù)對(duì)應(yīng)的塊浮點(diǎn)指數(shù)在塊浮點(diǎn)指數(shù)存儲(chǔ)器中的存儲(chǔ)地址不同。第i級(jí)計(jì)算出的塊浮點(diǎn)指數(shù)存儲(chǔ)地址公式可以分別用于第i級(jí)的縮放單元向塊浮點(diǎn)指數(shù)存儲(chǔ)器中存儲(chǔ)塊浮點(diǎn)指數(shù)以及下一級(jí)的對(duì)齊單元從塊浮點(diǎn)指數(shù)存儲(chǔ)器中讀取塊浮點(diǎn)指數(shù)。容易理解,本申請(qǐng)的FFT處理器中的塊浮點(diǎn)單元包括塊浮點(diǎn)指數(shù)存儲(chǔ)器、對(duì)齊單元、縮放單元和塊浮點(diǎn)控制單元。其中,塊浮點(diǎn)指數(shù)存儲(chǔ)器用于存儲(chǔ)數(shù)據(jù)的塊浮點(diǎn)指數(shù)。塊浮點(diǎn)指數(shù)在塊浮點(diǎn)指數(shù)存儲(chǔ)器中的地址由其所在的堆和堆中的地址唯一確定。對(duì)齊單元用于當(dāng)FFT處理器從數(shù)據(jù)存儲(chǔ)器向運(yùn)算單元中讀取數(shù)據(jù)時(shí),從塊浮點(diǎn)指數(shù)存儲(chǔ)器中并行讀取數(shù)據(jù)在上一級(jí)的數(shù)據(jù)塊的指數(shù),并根據(jù)指數(shù)對(duì)數(shù)據(jù)進(jìn)行對(duì)齊操作??s放單元用于當(dāng)處理器從運(yùn)算單元向數(shù)據(jù)存儲(chǔ)器中寫回結(jié)果數(shù)據(jù)時(shí),根據(jù)本級(jí)的同一個(gè)數(shù)據(jù)塊中的數(shù)據(jù)計(jì)算出數(shù)據(jù)塊指數(shù),并將數(shù)據(jù)塊指數(shù)寫回塊浮點(diǎn)指數(shù)存儲(chǔ)器,同時(shí)將數(shù)據(jù)塊中的數(shù)據(jù)進(jìn)行縮放操作之后,寫回?cái)?shù)據(jù)存儲(chǔ)器。塊浮點(diǎn)控制單元屬于FFT處理器控制單元的一部分,可以用于控制塊浮點(diǎn)指數(shù)存儲(chǔ)器的乒乓結(jié)構(gòu)、對(duì)齊單元和縮放單元,并計(jì)算需要從塊浮點(diǎn)指數(shù)存儲(chǔ)器中讀取或?qū)懟財(cái)?shù)據(jù)的地址。在上述技術(shù)方案的基礎(chǔ)上,在根據(jù)運(yùn)算得出的結(jié)果,以對(duì)所述數(shù)據(jù)塊進(jìn)行相應(yīng)的縮放操作,并計(jì)算出該級(jí)的所述數(shù)據(jù)塊的塊浮點(diǎn)指數(shù),并根據(jù)塊浮點(diǎn)指數(shù)存取公式以對(duì)所述塊浮點(diǎn)指數(shù)進(jìn)行存儲(chǔ)的步驟或在所述FFT處理器的某一級(jí)的下一級(jí)中,根據(jù)所述塊浮點(diǎn)指數(shù)存儲(chǔ)公式讀取所述塊浮點(diǎn)指數(shù),并根據(jù)所述塊浮點(diǎn)指數(shù)進(jìn)行相應(yīng)的對(duì)齊操作步驟中,所述FFT處理器采用DIT、DIF、混合基或質(zhì)因子算法將N點(diǎn)FFT運(yùn)算分解為m級(jí)蝶形運(yùn)算,每一級(jí)蝶形運(yùn)算的點(diǎn)數(shù)分別為N1,N2,…,Nm,待存取數(shù)據(jù)在每一級(jí)蝶形運(yùn)算中可由n1,n2,…,nm唯一確定,其中,nh(h=1,2,3···,m)分別代表待存取數(shù)據(jù)在第h級(jí)的蝶形運(yùn)算中的排序。在一個(gè)實(shí)施例中,將FFT處理器中的某一級(jí)定義為i級(jí),將FFT處理器中的某一級(jí)的下一級(jí)定義為j級(jí)。在一個(gè)優(yōu)選的實(shí)施例中,在所述第i級(jí)中,根據(jù)所述FFT處理器的數(shù)據(jù)無(wú)沖突算法,同一個(gè)數(shù)據(jù)塊中的數(shù)據(jù)存在X個(gè)參數(shù),分別為ni1,ni2,…,niX,其中,nik1≤k≤X的取值為na1≤a≤m或na的部分二進(jìn)制比特位,其中,ni1,ni2,…,niX相應(yīng)的可取值數(shù)量為Ni1,Ni2,…,NiX。需要說(shuō)明的是,若第i個(gè)階段不是最后一個(gè)計(jì)算階段,則下一個(gè)階段為第j=i+1個(gè)階段,若第i個(gè)階段是最后一個(gè)階段,則下一個(gè)階段為數(shù)據(jù)輸出階段。在一個(gè)優(yōu)選的實(shí)施例中,在第j級(jí)中,根據(jù)FFT處理器的數(shù)據(jù)無(wú)沖突算法,同一個(gè)數(shù)據(jù)塊中的數(shù)據(jù)存在Y個(gè)參數(shù),分別為nj1,nj2,…,njY,其中,njk1≤k≤Y的取值為nb1≤bm或nb的一部分,其中,nj1,nj2,…,njY相應(yīng)的可取值數(shù)量為Nj1,Nj2,…,NjY。在一個(gè)實(shí)施例中,在nj1,nj2,…,njY中,同時(shí)又不在ni1,ni2,…,niX中的參數(shù)有z個(gè),分別為nk1,nk2,…,nkZ,各參數(shù)的相應(yīng)的可取值的數(shù)量分別為Nk1,Nk2,…,NkZ。在一個(gè)優(yōu)選的實(shí)施例中,基于nk和Nk分別構(gòu)建第一平衡方程,所述第一平衡方程為nk=nk1+Nk1nk2+...+Nk1Nk2...NkZ-1nkzNk=Nk1Nk2...NkZ,]]>其中,nk為在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中同時(shí)又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),Nk為nk的可取值的數(shù)量。公式中的(nk1,nk2,…,nkZ)參數(shù)的順序可以適當(dāng)?shù)卣{(diào)換,以減小硬件的開銷。在一個(gè)優(yōu)選的實(shí)施例中,在n1,n2,…,nm中,且既不在ni1,ni2,…,niX中又不在nj1,nj2,…,njY中的參數(shù)有U個(gè),分別為nL1,nL2,…,nLU,各參數(shù)的可取值的數(shù)量分別為NL1,NL2,…,NLU。需要說(shuō)明的是,公式中的參數(shù)(nL1,nL2,…,nLU)的順序可以適當(dāng)?shù)剡M(jìn)行調(diào)換,以減小硬件的開銷。在一個(gè)優(yōu)選的實(shí)施例中,基于nL和NL分別構(gòu)建第二平衡方程,所述第二平衡方程為nk=nk1+Nk1nk2+...+Nk1Nk2...NkZ-1nkzNk=Nk1Nk2...NkZ]]>其中,nL為既不在所述第j級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中又不在所述第i級(jí)的數(shù)據(jù)塊中數(shù)據(jù)的參數(shù)集合中的參數(shù)集合的參數(shù),NL為nL的可取值的數(shù)量。實(shí)施例1:假設(shè)FFT處理器可以并行存取的最大數(shù)據(jù)并行度P為16。且FFT處理器采用混合基算法將N點(diǎn)FFT運(yùn)算分解為m級(jí)蝶形運(yùn)算:N=N1N2...Nmn=NmNm-1...N2n1+...+Nmnm-1+nmk=k1+N1k2+...+N1N2...Nm-1kmXk=Σnm=0Nm-1{WNk1+N1k2+...+N1N2...Nm-2km-1nm...Σn2=0N2-1[WN1N2k1n2Σn1=0N1-1x[n]WN1n1k1WN2n2k2]WNmnmkm}]]>且有:N1=16Ni∈(2,3,4,5,8,16)i≥2,]]>根據(jù)數(shù)據(jù)無(wú)沖突存取算法,數(shù)據(jù)塊在數(shù)據(jù)存儲(chǔ)器中所在堆的公式為:其中,為n1的位倒序。在第i級(jí),F(xiàn)FT處理器進(jìn)行基Ni運(yùn)算,若Ni=16,則數(shù)據(jù)塊大小為16,同一個(gè)數(shù)據(jù)塊中存在參數(shù)ni有16個(gè)不同的值;若Ni≠16且i≠1,則數(shù)據(jù)塊大小為其中為對(duì)向下取整。同一個(gè)數(shù)據(jù)塊中存在參數(shù)ni有Ni個(gè)不同的值和參數(shù)n’1有個(gè)不同的值,其中n’1為n1的低比特,n’1相應(yīng)的可取值數(shù)量為ni相應(yīng)的可取值數(shù)量為Ni。若第i個(gè)階段不是最后一個(gè)計(jì)算階段,則下一個(gè)階段j=i+1;若第i個(gè)階段是最后一個(gè)計(jì)算階段,則下一個(gè)階段為數(shù)據(jù)輸出階段,其數(shù)據(jù)輸出順序與第一個(gè)階段相同,即按照第j=1個(gè)階段的設(shè)置進(jìn)行數(shù)據(jù)取出和對(duì)齊操作。在第j個(gè)階段,同一個(gè)數(shù)據(jù)塊中存在參數(shù)nj有Nj個(gè)不同的值;若Nj≠16,則還存在參數(shù)n”1有個(gè)不同的值,其中n”1為n1的低比特,n”1相應(yīng)的可取值數(shù)量為nj相應(yīng)的可取值數(shù)量為Nj。因此,在第一個(gè)階段,有i=1,N1=16。如果只有一級(jí)蝶形運(yùn)算,即m=1,則不存在nk1,nk2,…,nkZ和nL1,nL2,…,nLU,有{nk=0nL=0,]]>若m>1,則有nk=n2nL=n3+N3n4+...+N3N4...Nm-1nm,]]>在中間的階段,有1<i<m,則存在ni和n’1,其中n’1為n1的低比特,且存在nj=ni+1和n”1,其中n”1為n1的低比特,則nk1=nj,且如果比大,則有nk2取n1的第位和第位之間的值,有且有則nL1,nL2,…,nLU為根據(jù)公式nL=nL1+NL1nL2…NL1NL2…NLU-1nLU,以計(jì)算nL。在最后一個(gè)階段,有i=m,由于m=1的情況已經(jīng)列出,所以假設(shè)m>1。則存在ni=nm和nj=n1,且存在n’1為n1的低比特。則nk為n1的高比特,有綜上所述,所有情況下的nk和nL均已得到,可根據(jù)公式bank=nk+NknL%16addr=nk+NknL/16,]]>得到每個(gè)階段數(shù)據(jù)塊中的數(shù)據(jù)的指數(shù)在塊浮點(diǎn)指數(shù)存儲(chǔ)器中的存儲(chǔ)公式。第i個(gè)級(jí)計(jì)算出的塊浮點(diǎn)存儲(chǔ)地址公式可以用于第i個(gè)級(jí)的縮放單元向塊浮點(diǎn)指數(shù)存儲(chǔ)器中存儲(chǔ)塊浮點(diǎn)指數(shù)操作和下一個(gè)級(jí)的對(duì)齊單元從塊浮點(diǎn)指數(shù)存儲(chǔ)器讀取塊浮點(diǎn)指數(shù)操作。綜上所述,本申請(qǐng)的塊浮點(diǎn)方法與現(xiàn)有技術(shù)中的基于存儲(chǔ)的FFT處理器中使用的塊浮點(diǎn)技術(shù)只能所有數(shù)據(jù)共用一個(gè)數(shù)據(jù)塊,或者將2的整數(shù)冪點(diǎn)FFT的數(shù)據(jù)分為多個(gè)數(shù)據(jù)塊,其數(shù)據(jù)塊的大小為固定值,而對(duì)于需要同時(shí)進(jìn)行2的整數(shù)冪點(diǎn)FFT和非2的整數(shù)冪點(diǎn)DFT的高精度FFT處理器,需要一種FFT處理器中數(shù)據(jù)塊大小可調(diào)的塊浮點(diǎn)方法。本申請(qǐng)的塊浮點(diǎn)方法能夠用解決這一技術(shù)問(wèn)題,即,能夠用于數(shù)據(jù)塊大小可調(diào)的FFT處理器。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。當(dāng)前第1頁(yè)1 2 3