專利名稱:一種快速傅里葉變換處理器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及運(yùn)算處理器技術(shù)領(lǐng)域,特別是涉及一種快速傅里葉變換處理器。
背景技術(shù):
快速傅里葉變換(Fast Fourier Transform,F(xiàn)FT)在計(jì)算機(jī)、通信、氣象學(xué)、光學(xué)等多個(gè)領(lǐng)域應(yīng)用廣泛,快速傅里葉變換處理器是實(shí)現(xiàn)快速傅里葉變換的高效器件。為了快速得出傅里葉變換的結(jié)果,F(xiàn)FT使用抽選法將N點(diǎn)的離散傅里葉變換DFT分解為兩個(gè)N/2的 DFT,然后繼續(xù)進(jìn)行分解,直到分解為多個(gè)2點(diǎn)或4點(diǎn)的DFT。如圖1所示,為基2時(shí)間抽選法8點(diǎn)FFT算法流圖。從圖1中可以看出整個(gè)運(yùn)算過(guò)程分為四個(gè)階段(0)、倒序重排;⑴、 第一次迭代運(yùn)算;( 、第二次迭代運(yùn)算;C3)、第三次迭代運(yùn)算。每一次迭代運(yùn)算都可以使用一個(gè)蝶算單元進(jìn)行計(jì)算。對(duì)于N點(diǎn)基r的FFT,需要log力次迭代運(yùn)算。為了提高實(shí)際運(yùn)算速度,人們開(kāi)發(fā)出了級(jí)聯(lián)處理運(yùn)算的方式,如2所示為現(xiàn)有的應(yīng)用級(jí)聯(lián)處理運(yùn)算的8點(diǎn)基2快速傅里葉變換的處理器的結(jié)構(gòu)示意圖,圖3所示為4點(diǎn)基 2快速傅里葉變換的處理器的結(jié)構(gòu)示意圖。如圖2所示,對(duì)于基2時(shí)間抽選法8點(diǎn)FFT,可以使用8個(gè)存儲(chǔ)單元和三個(gè)基2蝶算單元進(jìn)行計(jì)算處理。這種運(yùn)算方式的好處是運(yùn)算速度較高。它的存儲(chǔ)結(jié)構(gòu)采用“乒乓操作”,輸入數(shù)據(jù)流被分配到兩個(gè)存儲(chǔ)單元。在第1個(gè)周期,將輸入的數(shù)據(jù)送入第一存儲(chǔ)單元001 ;在第2個(gè)周期,將輸入的數(shù)據(jù)送入第二存儲(chǔ)單元 002,同時(shí)將第一存儲(chǔ)單元001中上一周期存儲(chǔ)的數(shù)據(jù)送到第一基2蝶算單元021中進(jìn)行計(jì)算處理,將運(yùn)算的結(jié)果存儲(chǔ)到第三存儲(chǔ)單元003中;在第3個(gè)周期,第一存儲(chǔ)單元001再次存入數(shù)據(jù),同時(shí)第二存儲(chǔ)單元002中上一周期存儲(chǔ)的數(shù)據(jù)被送到第一基2蝶算單元021中進(jìn)行運(yùn)算處理,將運(yùn)算的結(jié)果存儲(chǔ)到第四存儲(chǔ)單元004中。后面的存儲(chǔ)單元和基2蝶算單元按照相似的流程進(jìn)行處理,第七存儲(chǔ)單元007或第八存儲(chǔ)單元008中存儲(chǔ)的即為最終計(jì)算結(jié)果。整個(gè)處理器不停的按照這樣的步驟進(jìn)行處理,每個(gè)周期都可以獲得一個(gè)最終計(jì)算結(jié)果,大大提高了運(yùn)算速度。隨著科學(xué)技術(shù)的發(fā)展,人們對(duì)處理器的要求也越來(lái)越高,人們要求處理器更加的小型化,而處理器中存儲(chǔ)單元的多少是影響處理器尺寸的重要因素?,F(xiàn)有的級(jí)聯(lián)處理運(yùn)算需要21og,N+2個(gè)存儲(chǔ)單元,致使處理器小型化存在困難。因此,如何減少FFT處理器中存儲(chǔ)單元的個(gè)數(shù)成為了擺在研發(fā)人員面前的一個(gè)技術(shù)難題。
發(fā)明內(nèi)容
為解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供一種快速傅里葉變換處理器,以實(shí)現(xiàn)減小處理器面積的目的,技術(shù)方案如下一種快速傅里葉變換處理器,包括N個(gè)計(jì)算單元以及N+2個(gè)存儲(chǔ)單元,所述N為自然數(shù),其中對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2
3個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作,且在該當(dāng)前時(shí)間段的下一時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的每個(gè)存儲(chǔ)單元執(zhí)行該存儲(chǔ)單元在所述當(dāng)前時(shí)間段內(nèi)所執(zhí)行操作的下一順序操作;其中,所述N個(gè)不同的數(shù)據(jù)更新操作中的任一數(shù)據(jù)更新操作包括與該數(shù)據(jù)操作所對(duì)應(yīng)的存儲(chǔ)單元將所存儲(chǔ)的數(shù)據(jù)發(fā)送到相應(yīng)的計(jì)算單元中進(jìn)行計(jì)算,獲得計(jì)算結(jié)果并替換原存儲(chǔ)數(shù)據(jù),其中,所述N個(gè)計(jì)算單元一一對(duì)應(yīng)所述N個(gè)不同的數(shù)據(jù)更新操作中的計(jì)算。優(yōu)選的,所述存儲(chǔ)單元為隨機(jī)存儲(chǔ)單元RAM。優(yōu)選的,所述計(jì)算單元為基r蝶算單元,其中r為自然數(shù)。優(yōu)選的,所述計(jì)算單元與所述存儲(chǔ)單元之間通過(guò)多路選擇器進(jìn)行連接。與上面的一種快速傅里葉變換出路器相對(duì)應(yīng),本發(fā)明還提供了一種快速傅里葉變換處理器的工作方法,包括為處理器設(shè)置N個(gè)計(jì)算單元以及N+2個(gè)存儲(chǔ)單元,所述N為自然數(shù);對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2 個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作,且在該當(dāng)前時(shí)間段的下一時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的每個(gè)存儲(chǔ)單元執(zhí)行該存儲(chǔ)單元在所述當(dāng)前時(shí)間段內(nèi)所執(zhí)行操作的下一順序操作;其中,所述N個(gè)不同的數(shù)據(jù)更新操作中的任一數(shù)據(jù)更新操作包括與該數(shù)據(jù)操作所對(duì)應(yīng)的存儲(chǔ)單元將所存儲(chǔ)的數(shù)據(jù)發(fā)送到相應(yīng)的計(jì)算單元中進(jìn)行計(jì)算,獲得計(jì)算結(jié)果并替換原存儲(chǔ)數(shù)據(jù),其中,所述N個(gè)計(jì)算單元一一對(duì)應(yīng)所述N個(gè)不同的數(shù)據(jù)更新操作中的計(jì)算。優(yōu)選的,所述存儲(chǔ)單元為隨機(jī)存儲(chǔ)單元RAM。優(yōu)選的,所述計(jì)算單元為基r蝶算單元,其中r為自然數(shù)。優(yōu)選的,所述計(jì)算單元與所述存儲(chǔ)單元之間通過(guò)多路選擇器進(jìn)行連接。優(yōu)選的,當(dāng)所述N為1時(shí),所述N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,包括接收輸入的初始數(shù)據(jù);將該存儲(chǔ)單元中的數(shù)據(jù)發(fā)送到計(jì)算單元中進(jìn)行計(jì)算,接收計(jì)算結(jié)果并替換該存儲(chǔ)單元中的數(shù)據(jù);將存儲(chǔ)單元中的數(shù)據(jù)輸出。通過(guò)應(yīng)用以上技術(shù)方案,本發(fā)明可以在不降低運(yùn)算速度的前提下使每個(gè)處理器中的存儲(chǔ)單元個(gè)數(shù)減小,因此可以有效減小處理器的尺寸。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下, 還可以根據(jù)這些附圖獲得其他的附圖。圖1為基2時(shí)間抽選法8點(diǎn)FFT算法流圖2為現(xiàn)有的應(yīng)用級(jí)聯(lián)處理運(yùn)算的8點(diǎn)基2快速傅里葉變換的處理器的結(jié)構(gòu)示意圖;圖3所示為現(xiàn)有的應(yīng)用級(jí)聯(lián)處理運(yùn)算的4點(diǎn)基2快速傅里葉變換的處理器的結(jié)構(gòu)示意圖;圖4為本發(fā)明實(shí)施例提供的一種4點(diǎn)基2快速傅里葉變換處理器的結(jié)構(gòu)示意圖;圖5為本發(fā)明實(shí)施例提供的一種4點(diǎn)基2快速傅里葉變換處理器周期a的數(shù)據(jù)處理示意圖;圖6為本發(fā)明實(shí)施例提供的一種4點(diǎn)基2快速傅里葉變換處理器周期a+Ι的數(shù)據(jù)處理示意圖;圖7為本發(fā)明實(shí)施例提供的一種4點(diǎn)基2快速傅里葉變換處理器周期a+2的數(shù)據(jù)處理示意圖;圖8為本發(fā)明實(shí)施例提供的一種4點(diǎn)基2快速傅里葉變換處理器周期a+3的數(shù)據(jù)處理示意圖;圖9為本發(fā)明實(shí)施例提供的另一種4點(diǎn)基2快速傅里葉變換處理器的結(jié)構(gòu)示意圖;圖10為本發(fā)明實(shí)施例提供的一種快速傅里葉變換處理器的工作方法中4點(diǎn)基 2FFT某一數(shù)據(jù)的執(zhí)行流程圖。
具體實(shí)施例方式為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明中的技術(shù)方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例提供的一種快速傅里葉變換處理器,包括N個(gè)計(jì)算單元,以及N+2 個(gè)存儲(chǔ)單元,所述N為自然數(shù),其中對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2 個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作,且在該當(dāng)前時(shí)間段的下一時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的每個(gè)存儲(chǔ)單元執(zhí)行該存儲(chǔ)單元在所述當(dāng)前時(shí)間段內(nèi)所執(zhí)行操作的下一順序操作;其中,所述N個(gè)不同的數(shù)據(jù)更新操作中的任一數(shù)據(jù)更新操作包括與該數(shù)據(jù)操作所對(duì)應(yīng)的存儲(chǔ)單元將所存儲(chǔ)的數(shù)據(jù)發(fā)送到相應(yīng)的計(jì)算單元中進(jìn)行計(jì)算,獲得計(jì)算結(jié)果并替換原存儲(chǔ)數(shù)據(jù),其中,所述N個(gè)計(jì)算單元一一對(duì)應(yīng)所述N個(gè)不同的數(shù)據(jù)更新操作中的計(jì)算。當(dāng)然,上述“N”也可以由log,代替,以便于與現(xiàn)有技術(shù)對(duì)比。其中,存儲(chǔ)單元可以為隨機(jī)存儲(chǔ)單元RAM;計(jì)算單元可以為基r蝶算單元,其中r 為自然數(shù)。其中,計(jì)算單元與存儲(chǔ)單元之間可以通過(guò)多路選擇器進(jìn)行連接。為方便理解,下面采用另外一種對(duì)本發(fā)明的快速傅里葉變換處理器的描述方式
一種快速傅里葉變換處理器,包括N個(gè)計(jì)算單元,以及N+2個(gè)存儲(chǔ)單元,所述N為自然數(shù),其中所述N個(gè)計(jì)算單元分別為第1計(jì)算單元,第2計(jì)算單元,......,和第N計(jì)算單元,
所述第η計(jì)算單元用于對(duì)第η級(jí)數(shù)據(jù)執(zhí)行計(jì)算操作,其中,第η級(jí)數(shù)據(jù)指初始數(shù)據(jù)從處理器外部輸入經(jīng)過(guò)所述N個(gè)計(jì)算單元η-1次計(jì)算后存至存儲(chǔ)單元的數(shù)據(jù),其中,η<=Ν;在N+2個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的第一存儲(chǔ)單元接收處理器外部輸入的初始數(shù)據(jù),所述N+2個(gè)存儲(chǔ)單元中的第N+2存儲(chǔ)單元向處理器外部輸出已存儲(chǔ)的第N級(jí)數(shù)據(jù);所述N個(gè)計(jì)算單元按照存儲(chǔ)單元中數(shù)據(jù)級(jí)數(shù)一一對(duì)應(yīng)地與所述N+2個(gè)存儲(chǔ)單元中的其余N個(gè)存儲(chǔ)單元電性相通,其中,所述第η計(jì)算單元將與之相對(duì)應(yīng)的存儲(chǔ)單元中第η級(jí)數(shù)據(jù)進(jìn)行計(jì)算,獲得第η+1級(jí)數(shù)據(jù),并將所述第η+1級(jí)數(shù)據(jù)送回所述與之相對(duì)應(yīng)的存儲(chǔ)單元替換所述第η級(jí)數(shù)據(jù),所述當(dāng)前時(shí)間段中與第η計(jì)算單元相對(duì)應(yīng)的存儲(chǔ)單元,在所述當(dāng)前時(shí)間段的下一時(shí)間段中,與第η+1計(jì)算單元電性相通。其中,所述電性相通即為將存儲(chǔ)單元中數(shù)據(jù)輸入計(jì)算單元中進(jìn)行計(jì)算,并使計(jì)算結(jié)果替換該存儲(chǔ)單元中的數(shù)據(jù)。需要說(shuō)明的是,第1級(jí)數(shù)據(jù)即為初始數(shù)據(jù),即外部向存儲(chǔ)單元輸入的數(shù)據(jù)。需要說(shuō)明的是,第1、第2存儲(chǔ)單元僅用于輸入輸出的功能區(qū)分,并不限制存儲(chǔ)單元在處理器當(dāng)中的物理位置關(guān)系。為方便理解下面舉例說(shuō)明當(dāng)計(jì)算單元為基2蝶算單元,且N = 4時(shí),如圖4所示, 本發(fā)明實(shí)施例提供的一種快速傅里葉變換處理器包括2個(gè)基2蝶算單元第一基2蝶算單元021和第二基2蝶算單元022 ; 四個(gè)存儲(chǔ)單元第一存儲(chǔ)單元001、第二存儲(chǔ)單元002、第三存儲(chǔ)單元003和第四存儲(chǔ)單元004。由于整個(gè)計(jì)算過(guò)程是循環(huán)執(zhí)行的,因此隨即選擇一個(gè)周期a,從該周期開(kāi)始進(jìn)行說(shuō)明。周期a 如圖5所示,第一存儲(chǔ)單元001存入初始數(shù)據(jù)1_1 ;第二存儲(chǔ)單元002中初始數(shù)據(jù)2-1輸入第一基2蝶算單元021中進(jìn)行計(jì)算處理,得出計(jì)算結(jié)果為數(shù)據(jù)2-2并替換第二存儲(chǔ)單元002中原有數(shù)據(jù)2-1,即周期a后第二存儲(chǔ)單元002中存儲(chǔ)的為數(shù)據(jù)2_2 ;第三存儲(chǔ)單元003中數(shù)據(jù)3-2輸入第二基2蝶算單元022中進(jìn)行計(jì)算處理,得出計(jì)算結(jié)果3_3 并替換第三存儲(chǔ)單元003中原有數(shù)據(jù)3-2 ;第四存儲(chǔ)單元004中的數(shù)據(jù)4-3進(jìn)行輸出處理, 數(shù)據(jù)4-3為初始數(shù)據(jù)4-1的最終計(jì)算結(jié)果。周期a+Ι 如圖6所示,第四存儲(chǔ)單元004中存入初始數(shù)據(jù)4-1 ;第一存儲(chǔ)單元001 中初始數(shù)據(jù)1-1輸入第一基2蝶算單元021中進(jìn)行計(jì)算處理,得出計(jì)算結(jié)果1-2并替換第一存儲(chǔ)單元001中原有數(shù)據(jù)1-1 ;第二存儲(chǔ)單元002中數(shù)據(jù)2-2輸入第二基2蝶算單元022中進(jìn)行處理,得出計(jì)算結(jié)果2-3并替換第二存儲(chǔ)單元002中原有數(shù)據(jù)2-2 ;第三存儲(chǔ)單元003 中數(shù)據(jù)3-3進(jìn)行輸出處理,數(shù)據(jù)3-3為初始數(shù)據(jù)3-1的最終計(jì)算結(jié)果;周期a+2 如圖7所示,第三存儲(chǔ)單元003中存入初始數(shù)據(jù)3_1 ;第四存儲(chǔ)單元004 中初始數(shù)據(jù)4-1輸入第一基2蝶算單元021中進(jìn)行計(jì)算處理,得出計(jì)算結(jié)果4-2并替換原有數(shù)據(jù)4-1 ;第一存儲(chǔ)單元001中數(shù)據(jù)1-2輸入第二基2蝶算單元022中進(jìn)行計(jì)算,得出計(jì)算結(jié)果1-3并替換原有數(shù)據(jù)1-2 ;第二存儲(chǔ)單元002中數(shù)據(jù)2-3進(jìn)行輸出處理,數(shù)據(jù)2_3為初始數(shù)據(jù)2-1的最終計(jì)算結(jié)果。周期a+3 如圖8所示,第二存儲(chǔ)單元002中存入初始數(shù)據(jù)2_1 ;第三存儲(chǔ)單元003 中初始數(shù)據(jù)3-1輸入第一基2蝶算單元021中進(jìn)行計(jì)算,得出計(jì)算結(jié)果3-2并替換原有數(shù)據(jù)3-1 ;第四存儲(chǔ)單元中數(shù)據(jù)4-2輸入第二基2蝶算單元022進(jìn)行計(jì)算,得出結(jié)果4_3并替換原有數(shù)據(jù)4-2 ;第一存儲(chǔ)單元001中數(shù)據(jù)1-3進(jìn)行輸出處理,數(shù)據(jù)1-3為初始數(shù)據(jù)1-1的
最終計(jì)算結(jié)果。周期a+4與周期a的執(zhí)行內(nèi)容相同。當(dāng)計(jì)算單元的個(gè)數(shù)為log,N時(shí),本發(fā)明的快速傅里葉處理器需要log,N+2個(gè)存儲(chǔ)單兀。從以上舉例可以看出,本發(fā)明所需要的存儲(chǔ)單元個(gè)數(shù)要比現(xiàn)有的級(jí)聯(lián)處理運(yùn)算需要的存儲(chǔ)單元個(gè)數(shù)少log力個(gè),可以使處理器更加小型化。同時(shí),本發(fā)明同樣可以在每個(gè)周期得到一個(gè)最終計(jì)算結(jié)果,計(jì)算速度沒(méi)有任何降低。在實(shí)際應(yīng)用中,計(jì)算單元與存儲(chǔ)單元之間可以通過(guò)多路選擇器進(jìn)行連接。如圖9 所示,對(duì)于上面舉例的4點(diǎn)基2快速傅里葉變換,第一多路選擇器031可以控制各存儲(chǔ)單元與第一基2蝶算單元021進(jìn)行數(shù)據(jù)交互。對(duì)于上面的舉例,周期a,第一多路選擇器031控制第二存儲(chǔ)單元002與第一基2蝶算單元進(jìn)行數(shù)據(jù)交互。其他周期均可推導(dǎo)出,不再累述。相應(yīng)于上面的裝置實(shí)施例,本發(fā)明還提供一種快速傅里葉變換處理器的工作方法。一種快速傅里葉變換處理器的工作方法,包括為處理器設(shè)置N個(gè)計(jì)算單元以及N+2個(gè)存儲(chǔ)單元,所述N為自然數(shù);對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2 個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作,且在該當(dāng)前時(shí)間段的下一時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的每個(gè)存儲(chǔ)單元執(zhí)行該存儲(chǔ)單元在所述當(dāng)前時(shí)間段內(nèi)所執(zhí)行操作的下一順序操作;其中,所述N個(gè)不同的數(shù)據(jù)更新操作中的任一數(shù)據(jù)更新操作包括與該數(shù)據(jù)操作所對(duì)應(yīng)的存儲(chǔ)單元將所存儲(chǔ)的數(shù)據(jù)發(fā)送到相應(yīng)的計(jì)算單元中進(jìn)行計(jì)算,獲得計(jì)算結(jié)果并替換原存儲(chǔ)數(shù)據(jù),其中,所述N個(gè)計(jì)算單元一一對(duì)應(yīng)所述N個(gè)不同的數(shù)據(jù)更新操作中的計(jì)算。其中,存儲(chǔ)單元可以為隨機(jī)存儲(chǔ)單元RAM。其中,計(jì)算單元可以為基r蝶算單元,其中r為自然數(shù)。其中,計(jì)算單元和存儲(chǔ)單元之間可以通過(guò)多路選擇器進(jìn)行連接。為方便理解,舉例說(shuō)明當(dāng)計(jì)算單元為基2蝶算單元,且N = 4時(shí),如圖4所示,本發(fā)明實(shí)施例提供的一種快速傅里葉變換處理器包括2個(gè)基2蝶算單元第一基2蝶算單元021和第二基2蝶算單元022 ; 四個(gè)存儲(chǔ)單元第一存儲(chǔ)單元001、第二存儲(chǔ)單元002、第三存儲(chǔ)單元003和第四存儲(chǔ)單元004。 由于整個(gè)計(jì)算過(guò)程是循環(huán)執(zhí)行的,因此隨即選擇一個(gè)周期a,從該周期開(kāi)始進(jìn)行說(shuō)明。同時(shí),本舉例僅跟蹤一個(gè)數(shù)據(jù)的整個(gè)執(zhí)行過(guò)程,其他數(shù)據(jù)的執(zhí)行過(guò)程與之類似。如圖10 所示,包括
7
周期a :S101、處理器中第一存儲(chǔ)單元001獲得存入的數(shù)據(jù)1_1 ;周期a+1 :S102、處理器中第一存儲(chǔ)單元001中數(shù)據(jù)1_1輸入處理器中第一基2蝶算單元021中進(jìn)行計(jì)算處理,得出計(jì)算結(jié)果1-2并替換第一存儲(chǔ)單元001中原有數(shù)據(jù)1-1 ;周期a+2 :S103、處理器中第一存儲(chǔ)單元001中數(shù)據(jù)1-2輸入處理器中第二基2蝶算單元022中進(jìn)行計(jì)算,得出計(jì)算結(jié)果1-3并替換原有數(shù)據(jù)1-2 ;周期a+3 :S104、處理器中第一存儲(chǔ)單元001中數(shù)據(jù)1_3進(jìn)行輸出處理,數(shù)據(jù)1_3為數(shù)據(jù)1-1的最終計(jì)算結(jié)果。由于有四個(gè)數(shù)據(jù)進(jìn)行同時(shí)進(jìn)行著上述處理,因此每一周期均會(huì)得出一個(gè)最終計(jì)算結(jié)果,運(yùn)算速度并沒(méi)有降低。本發(fā)明所需要的存儲(chǔ)單元個(gè)數(shù)要比現(xiàn)有的級(jí)聯(lián)處理運(yùn)算需要的存儲(chǔ)單元個(gè)數(shù)少log力個(gè),因此可以使處理器更加小型化。本說(shuō)明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于方法實(shí)施例而言,由于其基本相似于裝置實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見(jiàn)裝置實(shí)施例的部分說(shuō)明即可。需要說(shuō)明的是,在本文中,諸如第1和第2等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。以上所述僅是本發(fā)明的具體實(shí)施方式
,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種快速傅里葉變換處理器,其特征在于,包括N個(gè)計(jì)算單元以及N+2個(gè)存儲(chǔ)單元, 所述N為自然數(shù),其中對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作,且在該當(dāng)前時(shí)間段的下一時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的每個(gè)存儲(chǔ)單元執(zhí)行該存儲(chǔ)單元在所述當(dāng)前時(shí)間段內(nèi)所執(zhí)行操作的下一順序操作;其中,所述N個(gè)不同的數(shù)據(jù)更新操作中的任一數(shù)據(jù)更新操作包括與該數(shù)據(jù)操作所對(duì)應(yīng)的存儲(chǔ)單元將所存儲(chǔ)的數(shù)據(jù)發(fā)送到相應(yīng)的計(jì)算單元中進(jìn)行計(jì)算,獲得計(jì)算結(jié)果并替換原存儲(chǔ)數(shù)據(jù),其中,所述N個(gè)計(jì)算單元一一對(duì)應(yīng)所述N個(gè)不同的數(shù)據(jù)更新操作中的計(jì)算。
2.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述存儲(chǔ)單元為隨機(jī)存儲(chǔ)單元RAM。
3.根據(jù)權(quán)利要求1所述的處理器,其特征在于,所述計(jì)算單元為基r蝶算單元,其中r 為自然數(shù)。
4.根據(jù)權(quán)利要求1至3所述的處理器,其特征在于,所述計(jì)算單元與所述存儲(chǔ)單元之間通過(guò)多路選擇器進(jìn)行連接。
5.一種快速傅里葉變換處理器的工作方法,其特征在于,包括為處理器設(shè)置N個(gè)計(jì)算單元以及N+2個(gè)存儲(chǔ)單元,所述N為自然數(shù);對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作,且在該當(dāng)前時(shí)間段的下一時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元中的每個(gè)存儲(chǔ)單元執(zhí)行該存儲(chǔ)單元在所述當(dāng)前時(shí)間段內(nèi)所執(zhí)行操作的下一順序操作;其中,所述N個(gè)不同的數(shù)據(jù)更新操作中的任一數(shù)據(jù)更新操作包括與該數(shù)據(jù)操作所對(duì)應(yīng)的存儲(chǔ)單元將所存儲(chǔ)的數(shù)據(jù)發(fā)送到相應(yīng)的計(jì)算單元中進(jìn)行計(jì)算,獲得計(jì)算結(jié)果并替換原存儲(chǔ)數(shù)據(jù),其中,所述N個(gè)計(jì)算單元一一對(duì)應(yīng)所述N個(gè)不同的數(shù)據(jù)更新操作中的計(jì)算。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述存儲(chǔ)單元為隨機(jī)存儲(chǔ)單元RAM。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述計(jì)算單元為基r蝶算單元,其中r為自然數(shù)。
8.根據(jù)權(quán)利要求5至7所述的方法,其特征在于,所述計(jì)算單元與所述存儲(chǔ)單元之間通過(guò)多路選擇器進(jìn)行連接。
9.根據(jù)權(quán)利要求5所述的方法,其特征在于,當(dāng)所述N為1時(shí),所述N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,包括接收輸入的初始數(shù)據(jù);將該存儲(chǔ)單元中的數(shù)據(jù)發(fā)送到計(jì)算單元中進(jìn)行計(jì)算,接收計(jì)算結(jié)果并替換該存儲(chǔ)單元中的數(shù)據(jù);將存儲(chǔ)單元中的數(shù)據(jù)輸出。
全文摘要
本發(fā)明公開(kāi)了一種快速傅里葉變換處理器,包括N個(gè)計(jì)算單元和N+2個(gè)存儲(chǔ)單元,其中,對(duì)于N+2個(gè)存儲(chǔ)單元中任一存儲(chǔ)單元循環(huán)在N+2個(gè)時(shí)間段內(nèi)按順序執(zhí)行包括初始數(shù)據(jù)接收操作、N個(gè)不同的數(shù)據(jù)更新操作以及最終數(shù)據(jù)輸出操作在內(nèi)的N+2個(gè)操作,在N+2個(gè)時(shí)間段內(nèi)的任意一當(dāng)前時(shí)間段中,所述N+2個(gè)存儲(chǔ)單元一一對(duì)應(yīng)地執(zhí)行所述N+2個(gè)操作中的一個(gè)操作。本發(fā)明可以在不降低運(yùn)算速度的前提下減小每個(gè)處理器中的存儲(chǔ)單元的個(gè)數(shù),因此可以有效減小處理器的尺寸。
文檔編號(hào)G06F17/14GK102339274SQ20111032649
公開(kāi)日2012年2月1日 申請(qǐng)日期2011年10月24日 優(yōu)先權(quán)日2011年10月24日
發(fā)明者馮燕, 張挺, 陳嵐 申請(qǐng)人:中國(guó)科學(xué)院微電子研究所