一種基于實(shí)時(shí)性處理的混合基fft方法
【專利摘要】本發(fā)明公開了一種基于實(shí)時(shí)性處理的混合基FFT方法,適用于FFT點(diǎn)數(shù)滿足級(jí)數(shù)為s=s1+s2的情況。第一步根據(jù)實(shí)時(shí)性的要求,將輸入數(shù)據(jù)分配到r2個(gè)存儲(chǔ)器中,每個(gè)存儲(chǔ)器深度為第二步,采用流水方法讀取多個(gè)存儲(chǔ)器,對(duì)r2個(gè)N′點(diǎn)進(jìn)行DFT運(yùn)算;在讀取過(guò)程中,第n+1個(gè)存儲(chǔ)器讀取時(shí)序延后第n個(gè)存儲(chǔ)器;第三步,采用并行方法對(duì)多個(gè)存儲(chǔ)器讀取,對(duì)N′個(gè)r2點(diǎn)進(jìn)行DFT運(yùn)算。本發(fā)明基于原位存儲(chǔ)、輸入數(shù)據(jù)順序、單蝶形單元,且保證實(shí)時(shí)性的條件下,消除額外運(yùn)算,針對(duì)多存儲(chǔ)器采用流水和并行的訪問(wèn)方式,達(dá)到了實(shí)時(shí)性的設(shè)計(jì)要求。
【專利說(shuō)明】一種基于實(shí)時(shí)性處理的混合基FFT方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)字信號(hào)處理【技術(shù)領(lǐng)域】,涉及一種基于實(shí)時(shí)性處理的混合基FFT方法。
【背景技術(shù)】
[0002]隨著數(shù)字信號(hào)處理技術(shù)和大規(guī)模集成電路的發(fā)展,F(xiàn)FT (快速傅里葉變換)算法的重要性不言而喻,廣泛應(yīng)用于各種科學(xué)工程領(lǐng)域,如雷達(dá)、聲納、通信等,同時(shí)對(duì)小型化和實(shí)時(shí)性等的要求越來(lái)越高。
[0003]計(jì)算FFT時(shí),常用的算法是基-2FFT和基-4FFT,點(diǎn)數(shù)限制在2的冪次方或4的冪次方,這樣限制了其點(diǎn)數(shù)的可選擇范圍。對(duì)于某些應(yīng)用,比如SAR (合成孔徑雷達(dá))信號(hào)處理中,尤其是在聚束模式下,由于處理時(shí)間和面積的限制,不能將每個(gè)處理的點(diǎn)數(shù)都擴(kuò)展至滿足基-2或基-4FFT算法,尤其對(duì)于大點(diǎn)數(shù)的FFT,否則會(huì)延長(zhǎng)計(jì)算時(shí)間以及消耗更多的存儲(chǔ)空間。[0004]在各種各樣的FFT處理器中,一般采用兩種結(jié)構(gòu):流水結(jié)構(gòu)和基于存儲(chǔ)的結(jié)構(gòu)。當(dāng)對(duì)大點(diǎn)數(shù)進(jìn)行處理時(shí),流水結(jié)構(gòu)比基于存儲(chǔ)結(jié)構(gòu)會(huì)占用更多的資源,導(dǎo)致面積和功耗增加。因此近些年來(lái),針對(duì)大點(diǎn)數(shù)FFT的實(shí)現(xiàn),基于存儲(chǔ)結(jié)構(gòu)得到越來(lái)越廣泛的需求。而為了占用最少的存儲(chǔ)資源,通常采用原位存儲(chǔ)算法,該方法是將FFT蝶形單元的輸出存儲(chǔ)到與輸入數(shù)據(jù)讀取的地址一致的存儲(chǔ)空間內(nèi)。不過(guò),原位存儲(chǔ)結(jié)構(gòu)處理時(shí)間長(zhǎng),實(shí)時(shí)性不高。為滿足實(shí)時(shí)性的要求,通常會(huì)將輸入數(shù)據(jù)分配到多個(gè)存儲(chǔ)器中,這樣可以同時(shí)對(duì)進(jìn)入蝶形單元的數(shù)據(jù)進(jìn)行讀取/存儲(chǔ)。
[0005]目前關(guān)于多存儲(chǔ)器分配數(shù)據(jù)的方法常用的有以下三種:(I)采用多個(gè)取模操作對(duì)數(shù)據(jù)進(jìn)行分配,該方法針對(duì)固定基FFT ; (2)采用一個(gè)取模操作對(duì)數(shù)據(jù)進(jìn)行分配,該方法可用于混合基中;(3)采用異或門實(shí)現(xiàn)多存儲(chǔ)的分配,該方法主要應(yīng)用于基-2和基-4FFT中。這三種方法中都存在額外的運(yùn)算,即取?;虍惢虿僮鳎紩?huì)消耗額外的資源,因此解決這一問(wèn)題是必要的。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的是為了克服已有技術(shù)的缺陷,在基于原位存儲(chǔ)、輸入數(shù)據(jù)順序、單蝶形單元(在本發(fā)明中由于是基-1Vr2FFT的形式,雖然有兩個(gè)蝶形處理單元,即基I1和基_r2,但是可以將兩個(gè)合并稱為單碟形單元,是與多蝶形相對(duì),多蝶形是指多個(gè)基I1和基_r2單元),且保證實(shí)時(shí)性的條件下,提出一種混合基FFT方法,不需要限定FFT點(diǎn)數(shù)必須滿足2或4的冪指數(shù)要求,無(wú)需取模/異或操作運(yùn)算,達(dá)到實(shí)時(shí)處理的目的。
[0007]本發(fā)明是通過(guò)下述技術(shù)方案實(shí)現(xiàn)的:
[0008]該方法適用于FFT點(diǎn)數(shù)滿足N = η'' X 、級(jí)數(shù)為s=s1+s2的情況;其中,1ι,r2分
別為兩個(gè)不同的基,S1, S2為兩個(gè)基分別對(duì)應(yīng)的冪指數(shù);設(shè)定;
[0009]步驟一、根據(jù)實(shí)時(shí)性的要求,將輸入數(shù)據(jù)分配到多個(gè)存儲(chǔ)器中;[0010]選定存儲(chǔ)器的個(gè)數(shù)為m=r2,則每個(gè)存儲(chǔ)器的存儲(chǔ)深度為
【權(quán)利要求】
1.一種基于實(shí)時(shí)性處理的混合基FFT方法,其特征在于,該方法適用于FFT點(diǎn)數(shù)滿足N = /f X if、級(jí)數(shù)為S=S1+S2的情況;其中,r1; r2分別為兩個(gè)不同的基,S1, S2為兩個(gè)基分別對(duì)應(yīng)的冪指數(shù);設(shè)定; 該方法包括如下步驟: 步驟一、對(duì)輸入的數(shù)據(jù)序列x(n)進(jìn)行存儲(chǔ)器的分配:選定存儲(chǔ)器的個(gè)數(shù)為m=r2,則每個(gè)存儲(chǔ)器的存儲(chǔ)深度為= r;1 x/f 4 ;將數(shù)據(jù)序列 的序號(hào)η分解為n = T2Xi^n2, ^n2表示存儲(chǔ)器的編號(hào),Ii1表示存儲(chǔ)器的深度,然后對(duì)η個(gè)數(shù)據(jù)序列X (η)進(jìn)行分配; 步驟二、采用流水方法讀取多個(gè)存儲(chǔ)器,對(duì)r2個(gè)N'點(diǎn)進(jìn)行DFT運(yùn)算:設(shè)r2個(gè)存儲(chǔ)器依次用Mtl, M1,...M7..!來(lái)表示;按存儲(chǔ)器編號(hào)依次從各存儲(chǔ)器中按照原位計(jì)算的地址規(guī)律讀出r'個(gè)操作數(shù);其中,r' e (r1; r2);當(dāng)前級(jí)做基_r2蝶形運(yùn)算時(shí),r' =r2,做基-!T1蝶形運(yùn)算時(shí),r' =A ;具體操作如下:(1)首先按照時(shí)鐘周期,在每個(gè)時(shí)鐘周期從Mtl讀取一個(gè)操作數(shù),共讀取r'個(gè);在從Mtl讀取操作數(shù)的同時(shí),在M0延遲一個(gè)時(shí)鐘的情況下從M1開始讀操作數(shù),在M1延遲一個(gè)時(shí)鐘的情況下從虬開始讀操作數(shù),以此類推,在延遲一個(gè)時(shí)鐘的情況下從My1開始讀操作數(shù); (2)每當(dāng)從同一個(gè)存儲(chǔ)器讀取的操作數(shù)湊齊r'個(gè)后,這r'個(gè)操作數(shù)后經(jīng)第一緩存單元并行進(jìn)入蝶形單元進(jìn)行運(yùn)算,得出r'個(gè)并行輸出數(shù)據(jù),再經(jīng)第二緩存單元串行寫入對(duì)應(yīng)存儲(chǔ)器的相應(yīng)地址,從而完成每個(gè)存儲(chǔ)器的第一級(jí)的第一個(gè)蝶形運(yùn)算; (3)重復(fù)步驟(1)~(2)(N' /r' )_1次,每個(gè)存儲(chǔ)器的N'點(diǎn)數(shù)據(jù)完成第一級(jí)剩下的(N' Ix' )-1次蝶形運(yùn)算;在此過(guò)程中,Mtl的第二次蝶形處理的r'個(gè)操作數(shù)是在延遲一個(gè)時(shí)鐘情況下獲得的; (4)重復(fù)步驟(1)~(3)s-2次,則得到每個(gè)存儲(chǔ)器的N'點(diǎn)FFT運(yùn)算; 步驟三、采用并行方法對(duì)多個(gè)存儲(chǔ)器讀取,對(duì)N'個(gè)1*2點(diǎn)進(jìn)行DFT運(yùn)算: 每個(gè)時(shí)鐘周期從r2個(gè)存儲(chǔ)器的同一個(gè)地址讀取一個(gè)操作數(shù),共r2個(gè),并行進(jìn)入蝶形單元中進(jìn)行基_r2的蝶形運(yùn)算,共N,次;蝶形單元的并行輸出數(shù)據(jù)按照原位存儲(chǔ)方法并行存儲(chǔ)到相應(yīng)的存儲(chǔ)器的相應(yīng)地址中; 至此,整個(gè)N點(diǎn)FFT運(yùn)算完成。
【文檔編號(hào)】G06F12/02GK103544111SQ201310465130
【公開日】2014年1月29日 申請(qǐng)日期:2013年10月8日 優(yōu)先權(quán)日:2013年10月8日
【發(fā)明者】陳禾, 馬翠梅, 于文月, 謝宜壯, 龍騰 申請(qǐng)人:北京理工大學(xué)