国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      地址映射方法和操作數(shù)并行的fft處理系統(tǒng)的制作方法

      文檔序號:6459727閱讀:128來源:國知局

      專利名稱::地址映射方法和操作數(shù)并行的fft處理系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      :本發(fā)明涉及FFT處理,特別是有關(guān)于蝶形運算中操作數(shù)的地址映射方法和操作數(shù)并行訪問的FFT處理系統(tǒng)。
      背景技術(shù)
      :FFT(快速傅立葉變換,F(xiàn)astFourierTransformation)是數(shù)字信號處理應(yīng)用中最重要的算法之一,無論是頻域抽取(DFT)還是時域抽取(DIT),都可以通過消除冗余減少FFT的計算量。以DFT為例,其基本原理是將數(shù)據(jù)序列分成兩個等長的序列,將N點的DFT轉(zhuǎn)換成兩個N/2點的DFT,重復(fù)此過程直到將數(shù)據(jù)序列分解成N/2個2點的FFT,作為原始數(shù)據(jù)的這些點被重新整序,N/2個2點DFT取一對數(shù)據(jù)進行計算,這些輸出每4個組合在一起,進行N/4個4點DFT的計算;然后適當(dāng)?shù)慕M合,計算8點的FFT,直到最后得到N點FFT。以上描述中,N為抽樣值。FFT處理系統(tǒng)在進行蝶形運算時,最基本的硬件結(jié)構(gòu)包括處理器和存儲器,存儲器存儲操作數(shù)和旋轉(zhuǎn)因子。處理器自存儲器抽取操作數(shù),并對抽取的操作數(shù)進行復(fù)數(shù)乘法、累加等計算。蝶形運算一般是多級計算,每一級要進行多次的計算,每一次計算所用的操作數(shù)一般稱為一組操作數(shù)。對基4的蝶形運算,每一次運算涉及4個操作數(shù)。依次訪問(讀出或?qū)懭?至少需4個時鐘周期,若操作數(shù)可并行訪問,速度可提升4倍。但已有的地址映射方式不支持FFT處理器并行訪問存儲器,舉例說明如下2048點的蝶形運算,需進行1級基2和5級基4。存儲操作數(shù)的存儲器由4個存儲體構(gòu)成。按現(xiàn)有的地址映射方式,存儲器地址自0到2047,連續(xù)設(shè)置;4個存儲體區(qū)分為0#存儲體,1#存儲體,2#存儲體和3#存儲體?;诖?,0#存儲體的地址是0到511,1#存儲體的地址為512到1023,2井存儲體的地址為1024到1535,3#存儲體的地址為1536到2047。當(dāng)?shù)谝患墳榛?,第二級為基4時第二級有操作數(shù)512組,每組4個,步長256。隨機取該級運算中的一組操作數(shù)的地址[2,258,514,770],其在存儲器的位置如表1所示。表1操作數(shù)地址與存儲體的對應(yīng)關(guān)系<table>tableseeoriginaldocumentpage5</column></row><table>由表l,地址2和258在0#存儲體,地址514和770在1#存儲體。顯然,F(xiàn)FT無法并行訪問該4個地址中的操作數(shù)。N點基2n的蝶形運算,存儲操作數(shù)的存儲器包括2"個存儲體。按傳統(tǒng)的存儲器地址映射方式,存儲器地址連續(xù)設(shè)置為0到N-1。2"個存儲體區(qū)分為0#存儲體,1#存儲體,2#存儲體...(2n-1)#存儲體。則0#存儲體地址是0到!-1,1#存儲體的地址是!到!-1,......,(2n-1)#存22h2儲體的地址為t!到^-1。第一級運算的步長為N/2n,取第一級運算中的一組操作數(shù)對應(yīng)的地址,^(2"—l)xW第二級步長為!,取第二級運算中一組操作數(shù)2"2",""、n對應(yīng)的地址[O,2"2"x22"—lxiV2"x22"x2按照傳統(tǒng)的存儲器地址映射方式,上述第一級運算中所選取的地址為每個存儲體的開始地址,由于^^<!,所以第二級運算中所選取的地址,至2"x22"少o和JL屬于同一個存儲體。2"x2可見,對于二級以上的任意N點的蝶形運算,按照現(xiàn)有的地址映射方式,會出現(xiàn)多個操作數(shù)地址位于同一個存儲體的情況,造成處理器無法并行訪問操作數(shù)。為此,有必要提出一種技術(shù)方案,使蝶形運算時的操作數(shù)可由FFT處理器并行訪問,也就是并行讀取或?qū)懭搿?br/>發(fā)明內(nèi)容有鑒于此,本發(fā)明提出一種地址映射方法,使N點蝶形運算時每一次計算所需的操作數(shù)可并行。本發(fā)明還提供了一種操作數(shù)并行的FFT處理系統(tǒng),該FFT處理系統(tǒng)在進行N點蟲萊形運算時,可并行訪問4喿作數(shù)。本發(fā)明所述地址映射方法是這樣實現(xiàn)的步驟a:每一次產(chǎn)生多個操作數(shù)各自的初次地址,其中,所述操作數(shù)與存儲所述4栗作數(shù)的存儲器所包括的存儲體個數(shù)均為2n;步驟b:處理步驟a產(chǎn)生的初次地址,生成片地址和內(nèi)地址,所述片地址和內(nèi)地址構(gòu)成無沖突地址,其中,所述片地址為所述各存儲體地址,所述內(nèi)地址為所述各操作數(shù)在各存儲體內(nèi)的地址。其中步驟b細化為使初次地址在2n進制下,各位依次相加,并讓相加所得的和對2。取模,該才莫即為片地址;抽取初次地址二進制下的低m-n位,形成內(nèi)地址,其中,m是N-l二進制下的位寬。通過本發(fā)明所述的地址映射方法,所述操作數(shù)的地址可分別映射到不同的存儲體,使操作數(shù)在蝶形運算中可并行。本發(fā)明所述之操作數(shù)并行的FFT處理系統(tǒng)包括處理器、操作數(shù)存儲器、旋轉(zhuǎn)因子存儲器、地址生成器和無沖突映射器。操作數(shù)存儲器存儲N點蝶形運算的操作數(shù),且該操作數(shù)存儲器由2"個存儲體構(gòu)成;地址生成器產(chǎn)生旋轉(zhuǎn)因子的地址,以及生成多個操作數(shù)各自的初次地址,其中,所述操作數(shù)與所述存儲體個數(shù)相同;去沖突映射器,自地址生成器接收所述初次地址,處理該初次地址獲得無沖突地址,其中,無沖突地址包括片地址和內(nèi)地址,所述片地址為所述各存儲體的地址,所述內(nèi)地址為操作數(shù)在各存儲體內(nèi)的地址;處理器,依據(jù)所述無沖突地址自操作數(shù)存儲器取得操作數(shù),依據(jù)所述旋轉(zhuǎn)因子地址自旋轉(zhuǎn)因子存儲器取得旋轉(zhuǎn)因子,進行蝶形運算。所述操作數(shù)并行的FFT處理系統(tǒng)還包括2n到2"的讀選擇器,及2。到2n的寫選擇器;其中,讀選擇器的輸入端連接各存儲體,輸出端連接所述處理器的輸入端,寫選擇器的輸入端連接所述處理器的輸出端,輸出端連接各存儲體。此外,所述去沖突映射器計算初次地址在2n進制下各位的和,并對所述和取模,獲得片地址;所述去沖突映射器抽取初次地址在二進制下的低m-n位,構(gòu)成內(nèi)地址,其中,m是N-1在二進制下的位寬。本發(fā)明所述的操作數(shù)并行的FFT處理系統(tǒng),其每一次計算所需的操作數(shù)分配至不同的存儲體,使處理器可以并行訪問這些操作數(shù)。圖la為本發(fā)明所述地址映射方法流程圖lb為本發(fā)明所述地址映射方法步驟202的細化流程圖2為本發(fā)明所述操作數(shù)并行的FFT處理系統(tǒng)結(jié)構(gòu)示意圖3為運行基4蝶形運算的操作數(shù)并行的FFT處理系統(tǒng)結(jié)構(gòu)示意圖4為運行基8蝶形運算的操作數(shù)并行的FFT處理系統(tǒng)結(jié)構(gòu)示意圖。具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例對本發(fā)明作進一步地詳細描述。本發(fā)明所述地址映射方法應(yīng)用于N點基2。的蝶形運算,或者應(yīng)用于混合蝶形運算,所述混合蝶形運算是基2"與基211-1、基2".....基2中的任一個或多個組合構(gòu)成的混合運算。所述操作數(shù)存儲在存儲器中,該存儲器包括2"個存儲體。圖la是本發(fā)明所述地址映射方法流程圖。如圖,在步驟201,生成多個操作數(shù)各自的初次地址,其中,所述初次地址依傳統(tǒng)地址映射方法產(chǎn)生,且所述操作數(shù)與所述存儲體的個數(shù)相同,為2n個,基于所述操作數(shù)與所述初次地址的——對應(yīng)關(guān)系,所述操作數(shù)的初次地址也為2"個。具體地說,N點基2"蝶形運算時,蝶形運算每一次計算所需的操作數(shù)是2"個,也就是說上述產(chǎn)生的2n個操作數(shù)的初次地址是蝶形運算每一次計算所需的操作數(shù)的初次地址;N點混合蝶形運算時,上述產(chǎn)生的2"個初次地址是基2n蝶形運算每一次計算所需的操作數(shù)的初次地址,是基2k蝶形運算所需的任^組操作數(shù)的初次地址,其中,k=n-l,n-2,...,1中的任一個。在步驟202,處理所述初次地址,獲得由片地址和內(nèi)地址構(gòu)成的無沖突地址;其中,片地址是所述存儲體的地址,內(nèi)地址是所述操作數(shù)在該存儲體內(nèi)的存i丈i也址。當(dāng)本發(fā)明地址映射方法執(zhí)行于蝶形運算的硬件處理系統(tǒng)時,步驟201和步驟202重復(fù)執(zhí)行,直到蝶形運算結(jié)束。圖lb是步驟202的細化。參考圖lb,在步驟2020,使初次地址在2n進制下,各位依次相加;然后讓相加所得的和對2"取模,該模即為片地址;以公式表示片地址與初次地址的映射關(guān)系如下,其中,CS表示片地址<formula>formulaseeoriginaldocumentpage8</formula>r=|logJl|亦即r是log^向上取整;A(i)為初次地址2n進制下各位的值。在步驟2021,抽耳又所述初次地址在二進制下的低m-n位,構(gòu)成內(nèi)地址,其中m是N-l在二進制下的位寬。以公式表示如下,其中,Aderess表示內(nèi)地址,《—"…4j是初次地址低m-n位<formula>formulaseeoriginaldocumentpage8</formula>經(jīng)過步驟202的處理,初次地址轉(zhuǎn)換為無沖突地址,操作數(shù)與初次地址的映射關(guān)系轉(zhuǎn)換為操作數(shù)與無沖突地址的映射關(guān)系。由此,每一次蝶形運算所涉及的2n個操作數(shù)(基2n時為一組操作數(shù)或混合運算時,針對基2"是^組操作數(shù))將依據(jù)片地址和內(nèi)地址分配到不同的存儲體,使FFT處理系統(tǒng)進行蝶形運算時,可并行訪問所有操作數(shù)。圖2是本發(fā)明所述操作數(shù)并行的FFT處理系統(tǒng)結(jié)構(gòu)示意圖。如圖所示,該FFT處理系統(tǒng)包括操作數(shù)存儲器12、旋轉(zhuǎn)因子存儲器15、地址生成器14、去沖突映射器16、讀選擇器ll、寫選擇器13和FFT處理器10。本發(fā)明所述操作數(shù)并行的FFT處理系統(tǒng)可處理N點基2n的蝶形運算,也可處理混合蝶形運算,所述混合蝶形運算是基2n與基211—1、基2".....基2中的任一個或多個組合構(gòu)成的混合運算。操作數(shù)存儲器12存儲N點蝶形運算的操作數(shù),且其包括2n個存儲體,每個存儲體對應(yīng)一個片地址,以十進制表示為O,1,2,……,2n-l。本發(fā)明中,操作數(shù)在所述存儲體內(nèi)的存放地址為內(nèi)地址,各存儲體的內(nèi)地址由0開始,到!一結(jié)束。旋轉(zhuǎn)因子存儲器15存儲旋轉(zhuǎn)因子。地址生成器14產(chǎn)生旋轉(zhuǎn)因子的地址以及產(chǎn)生多個操作數(shù)各自的初次地址。需要說明的是,蝶形運算一般會進行多級,每一級都有多次計算,本發(fā)明中,每一次計算所需的操作數(shù)個數(shù)與存儲體的個數(shù)相同,為2"個;地址生成器14每一次生成蝶形運算一次所需的操作數(shù)的地址,也就是2"個,之后再生成下一次運算所需的操作數(shù)的地址,如此反復(fù)直到蝶形運算結(jié)束。地址生成器14依照傳統(tǒng)現(xiàn)有的地址映射方式,產(chǎn)生所述各操作數(shù)的初次地址。本發(fā)明中,產(chǎn)生的初次地址與所述存儲體個數(shù)相同,為2"個。具體地說,N點基2n蝶形運算時,上述產(chǎn)生的2"個初次地址是蝶形運算所需的一組操作數(shù)的初次地址;N點混合蝶形運算時,上述產(chǎn)生的2"個初次地址是基2n蝶形運算所需的一組操作數(shù)的初次地址,是基2k蝶形運算所需的f組操作數(shù)的初次地址,其中,k為[n-l,n-2,…,l]中的任一個。所述初次地址送入去沖突映射器16。N點的基2"的蝶形運算,N個操作數(shù),初次地址最大為N-1,故地址生成器14到去沖突映射器16的傳輸線需至少可傳輸?shù)刂?,b(N-l)。其中,,b表示跟隨其后的為二進制數(shù)。去沖突映射器16對所述初次地址進行去沖突處理,以獲得無沖突地址。所述無沖突地址由片地址和內(nèi)地址構(gòu)成。接收到地址生成器14產(chǎn)生的初次地址后,去沖突映射器16計算該初次地址在2n進制下各位的和,并讓所述和針對2"取模,該模即為片地址。以公式表示片地址與初次地址的關(guān)系如式(1)所示,其中CS表示片地址<formula>formulaseeoriginaldocumentpage10</formula>(i)式(1)中,r^i。g^'l亦即r是"《"向上取整;A(i)為初次地址2。進制下各位的值。去沖突映射器16抽取初次地址二進制下的低m-n位,構(gòu)成內(nèi)地址。其中,m是N-l二進制下的位寬。以^^式表示內(nèi)地址與初次地址的關(guān)系如式(2)所示,其中,Adress表示內(nèi)地址。粉e『《—",j。(2)式(2)中,m=logf,4)是所述初次地址的低m-n位。本發(fā)明所述的操作數(shù)并行的FFT處理系統(tǒng),操作數(shù)存儲器12包括2n個存儲體,片地址由0開始,最大為2n-l;各存儲體的內(nèi)地址由0開始,到!-l結(jié)束,內(nèi)地址最大是!-1?;诖耍_突映射器16到各存儲體的傳22n輸線需至少可并行傳輸片地址,b2n和內(nèi)地址,b2"讀選擇器11是2n到2"的選擇器。其輸入端連接操作數(shù)儲器12的各存儲體,輸出端連接FFT處理器IO的操作數(shù)輸入端(至少2"個)。讀操作時,讀選擇器11自去沖突映射器16取得所述各操作數(shù)的無沖突地址,依據(jù)其片地址CS獲知操作數(shù)所在的存儲體,依據(jù)其內(nèi)地址Adress獲知操作數(shù)在該存儲體內(nèi)的地址。進而FFT處理器IO通過讀選擇器11自操作數(shù)儲器12的各存儲體并行讀出該組操作數(shù)。FFT處理器IO依據(jù)地址生成器14產(chǎn)生的旋轉(zhuǎn)因子的地址,自旋轉(zhuǎn)因子存儲器15讀取處理所需的旋轉(zhuǎn)因子。FFT處理器IO依據(jù)讀取的旋轉(zhuǎn)因子和所述操作數(shù)做蝶形運算。寫選擇器13為2。到2。的選擇器。其輸入端連接FFT處理器10的操作數(shù)輸出端,輸出端連接操作數(shù)儲器12的各存儲體。寫操作時,寫選擇器13自無沖突映射器16取得各操作數(shù)的無沖突地址。繼而FFT處理器10將蝶形運算的結(jié)果(新一組的操作數(shù)),依據(jù)該無沖突地址通過寫選擇器13寫入操作數(shù)儲器12。綜上,經(jīng)過去沖突映射器16的去沖突處理,初次地址轉(zhuǎn)換為無沖突地址,操作數(shù)與初次地址的映射關(guān)系轉(zhuǎn)換為操作數(shù)與無沖突地址的映射關(guān)系。由此,依據(jù)操作數(shù)和無沖突地址的映射,操作數(shù)可分別放置在操作數(shù)存儲器12的2。個存儲體,使FFT處理器10可并行讀取所有的操作數(shù),或?qū)懭氩僮鲾?shù)到操作數(shù)存儲器12。以下結(jié)合圖la,圖lb和圖2簡要說明本發(fā)明所述地址映射方法執(zhí)行于本發(fā)明所述的操作數(shù)并行的FFT處理系統(tǒng)。如步驟201,地址生成器14按照傳統(tǒng)的地址映射方式產(chǎn)生2"個操作數(shù)各自的初次地址。然后,如步驟202所示,去沖突映射器16計算初次地址在2"進制下各位的和,并讓所述和對2。取才莫,該模即為片地址;以及抽取初次地址在二進制下的低m-n位,構(gòu)成內(nèi)地址,由此獲得無沖突地址。依據(jù)操作數(shù)與無沖突地址的映射關(guān)系,F(xiàn)FT處理器IO通過讀選擇器11自操作數(shù)存儲器12讀取操作數(shù),并依據(jù)地址生成器14產(chǎn)生的旋轉(zhuǎn)因子地址自旋轉(zhuǎn)因子存儲器讀取處理所需的旋轉(zhuǎn)因子,進行蝶形運算。同樣,依據(jù)操作數(shù)與無沖突地址的映射關(guān)系,F(xiàn)FT處理器IO通過寫選擇器11向操作數(shù)存儲器12寫入操作數(shù)。進一步舉例說明本發(fā)明所述地址映射方法和所述操作數(shù)并行的FFT處理系統(tǒng)例一本例以進行基4的蝶形運算做說明,以64點為例。圖3為基4蝶形運算的操作數(shù)并行的FFT處理系統(tǒng)結(jié)構(gòu)示意圖。如圖,操作數(shù)存儲器12由0#存儲體120、1#存儲體121、2#存儲體122和3#存儲體123共4個存儲體構(gòu)成,故片地址至少兩位。各存儲體具有16個存儲空間,相應(yīng)地,各存儲體有16個內(nèi)地址,故內(nèi)地址至少四位。由此本例中,去沖突映射器16連接每個存儲體的傳輸線至少需可并行傳輸6位地址。讀選擇器11和寫選擇器13分別為4到4的選擇器,其設(shè)計方式為現(xiàn)有技術(shù),這里不再贅述。讀選擇器11和寫選擇器13分別自去沖突映射器16取得所述操作數(shù)的無沖突地址。之后,F(xiàn)FT處理器IO通過讀選擇器11自相應(yīng)的存儲體讀出所述操作數(shù),或通過寫選擇器13向相應(yīng)的存儲體寫入操作數(shù)。在第二級基4蝶形運算中,隨機取該級運算中地址生成器14生成的一組初次地址(3,7,11,15)。去沖突映射器16收到地址生成器14傳輸?shù)脑摰刂泛?,計算初次地址?"進制下各位的和,并讓所述和對2"耳又才莫,以獲得片地址,初次地址與片地址如公式(l)所示的映射關(guān)系,其中,"=3。去沖突映射器16自初次地址抽取其低m-n位,構(gòu)成內(nèi)地址,初次地址與內(nèi)地址的映射關(guān)系如公式(2)所示,其中111=6,n=2,所以內(nèi)地址是二進制下初次地址的低4位。后續(xù)針對片地址的計算,為方便起見,公式(l)中的A(i)用二進制表示。針對3,即,b000011:j(2)='W)0"(l)='WXU(0)='Wl,由公式(1),片地址為A(2),A(1)和A(0)相加后除以4取才莫,故腳d(22)=U(2)++,]mod(22)M1,由公式(2),A^^^《冬n,…J。內(nèi)地址為,b000011的低4位,故內(nèi)地址為,b0011。故經(jīng)去沖突映射器16處理后,初次地址為3的操作數(shù)將放置在3#存儲體123的內(nèi)地址為'M)Ol1的存儲空間。針對7,即,b000111:J(2)='M)0;y4(l)='M)l;^(0)='611,依才居7>式(1)牙口(2)計算,GS:'W)O,內(nèi)地址A/固,11故經(jīng)去沖突映射器16處理后,初次地址為7的操作數(shù)將放置在0#存儲體120的內(nèi)地址為的存儲空間。針對11,即,b001011:」(2)='W)0;J(1)二'M0;J(0)二'M1,依據(jù)公式(1)和(2)計算,GS='M)1,內(nèi)地址^固='讓1故經(jīng)去沖突處理后,初次地址為,b001011的操作數(shù)將放置在1#存儲體121的內(nèi)地址為'M011的存儲空間。針對15,即,b001111:」(2)='M)0;J(1)='W1;40)='611,依據(jù)公式1)和(2),由去沖突映射器16計算,CS='M0,內(nèi)i也ilL^^eMJM111故經(jīng)去沖突處理后,初次地址為15的操作數(shù)將放置在2#存儲體122的內(nèi)地址為'M111的存儲空間。表2為地址映射對比表。可以看出,所述初次地址如不經(jīng)過去沖突映射器16的去沖突處理,其所對應(yīng)的操作數(shù)都將存放在0#存儲體120中,使FFT處理器IO無法并行讀取或?qū)懭脒@些操作數(shù)。但是,經(jīng)過去沖突處理后,這些操作數(shù)將分別存放在不同的存儲體,使FFT處理器可并行讀取或?qū)懭?,加快了處理速度。對?yīng)讀操作,讀選擇器11自無沖突映射器16獲得該組操作數(shù)的無沖突地址,本例中,F(xiàn)FT處理器IO通過讀操作器11自相應(yīng)的3#存儲體,0#存儲體,1#存儲體,2#存儲體并行讀出操作數(shù);FFT處理器10依振地址生成器14產(chǎn)生的旋轉(zhuǎn)因子地址,自旋轉(zhuǎn)因子存儲器15中讀出處理所需要的旋轉(zhuǎn)因子;FFT處理器10結(jié)合所述操作數(shù)和旋轉(zhuǎn)因子做基4蝶形運算。對應(yīng)寫操作,寫選擇器13自去沖突映射器16獲得該組操作數(shù)的無沖突地址,F(xiàn)FT處理器10將基4蝶形運算獲得的新一組操作數(shù)通過寫操作器13并行送入相應(yīng)的3#存儲體,0#存儲體,1#存儲體,2#存儲體。表2地址映射對比表<table>tableseeoriginaldocumentpage14</column></row><table>例二本例以進行基8蝶形運算來進行說明,以512點為例。本例中,第一存儲器12包括8個存儲體;讀選擇器和寫選擇器均為8到8的選擇器。按照現(xiàn)有的地址映射方法,512點基8蝶形運算中,初次地址最多9位,故地址生成器14到去沖突映射器16的傳輸線最少可傳輸9位地址。512點基8蝶形運算,操作數(shù)存儲器12包括8個存儲體,故片選地址至少3位。內(nèi)地址最大為63,所以內(nèi)地址至少6位。由此本例中,去沖突映射器16連接每個存儲體的傳輸線需至少可傳輸9位地址。以下僅描述本例與例一的主要不同之處,相同或相似之處不再多加描述。圖4為運行512點基8蝶形運算的操作數(shù)并行的FFT處理系統(tǒng)結(jié)構(gòu)示意圖。在第二級基8蝶形運算中,隨機抽取地址生成器14生成的一組操作數(shù)地址為(65,73,81,89,97,105,113,121)(此組操作數(shù)之間步長為竺=8),該地址由去沖突映射器16重新計算,以獲得無沖突地址。去沖突處理的原理過程同例一,這里就不多做描述。512點的基8處理中,r=3;m=9,n=3。針對65,即,b001000001:j(2)='6001;J(1)='M)01;^(0)='6001,由7>式(1),片地址為A(2),A(1)和A(0)相力口后對8取模,故z局.);=omod(23)=U(2)+,+,)]mod(23)='6010,由7>式(2):=4—y.4),古丈內(nèi)i也i止為'W)00001所以,經(jīng)去沖突處理后,初次地址為,b00100001的操作數(shù)放置在2#存儲體121中內(nèi)地址為'6000001的存儲空間。針對73,即,b001001001:J(2)='M)01;^4(l)='M)01;J(0)='M)01,依據(jù)^>式1計算,CS」M)11,內(nèi)地址^/固='雄1001經(jīng)去沖突處理后,初次地址為,b001001001的4喿作數(shù)放置在3#存儲體中內(nèi)地址為'M)01001的存儲空間。4十對81,即,b001010001:j(2)='M)01;J(1)」W)10;J(0)='6001,依據(jù)公式1計算,OS='W00,內(nèi)地址y^m^='6010001經(jīng)去沖突處理后,初次地址為,b001010001的4乘作數(shù)放置在4#存儲體中內(nèi)地址為'M)10001的存儲空間。針對89,即,b001011001:J(2)二'W)01;J(1)='M)11;J(0)='W)01,依據(jù)公式1計算,05='6101,內(nèi)地址A/reM='W)11001經(jīng)去沖突處理后,初次地址為,b001010001的纟喿作數(shù)放置在5#存儲體中內(nèi)地址為'M)11001的存儲空間。針對97,即,b001100001:J(2)='W)01;j(l)='6100;」(0)='M)01,依才居7>式1計算,CS10,內(nèi)i也址A/re^-'M00001經(jīng)去沖突處理后,初次地址為,b001010001的纟喿作數(shù)放置在6#存儲體126中內(nèi)地址為'W00001的存儲空間。針對105,即,b001101001:^(2)='6001;爿(1)='6101;^4(0)='6001,依據(jù)7>式1計算,CS='M11,內(nèi)地址^固='6101001經(jīng)去沖突處理后,初次地址為,b001101001的操作數(shù)放置在7#存儲體127中內(nèi)地址為'麵001的存儲空間。針對113,即,b001110001:j(2)='M)01;」(1)='W10;』(())='6001,依據(jù)^>式1計算,CS^M)00,內(nèi)地址='6110001經(jīng)去沖突處理后,初次地址為,b001110001的"l栗作數(shù)放置在0#存儲體120中內(nèi)地址為'M10001的存儲空間。針對121,即,畫1111001:J(2)='M)01;='6111;J(O)='6001,依據(jù)公式1計算,0^=',1,內(nèi)地址^固='6111001經(jīng)去沖突處理后,初次地址為,b001111001的操作數(shù)放置在1#存儲體121中內(nèi)地址為2'M11001的存儲空間。表4地址映射對比表<table>tableseeoriginaldocumentpage16</column></row><table>表4是本例的地址映射表,列出了初次地址及其所在的存儲體,以及無沖突地址和它對應(yīng)的存儲體。由表4可以看出,經(jīng)過去沖突處理,初次地址對應(yīng)的操作數(shù)被放置到不同存儲體中。需要說明的是,例二所述的操作數(shù)并行的FFT處理系統(tǒng),同樣也可處理基4的蝶形運算。例三本例為2048點的基4和基2混合運算。2048點的蝶形運算,需進行1級基2運算,5級基4運算;實際處理中,可以在基2運算后,再進行5級基4運算;也可在進行5級基4運算后,再做基2運算。本例以先進行基2運算為例來說明,但作為舉例,并未表明本發(fā)明僅僅局限于此,本領(lǐng)域內(nèi)技術(shù)人員易于變換為先做5級基4,再做1級基2的運算。本例仍以圖3為例進4亍-說明。2048點初次地址最多11位,和例1比,所述操作數(shù)并行的FFT處理系統(tǒng)的區(qū)別主要在于連接地址生成器14和無沖突地址映射器16的傳輸線最少可傳輸11位地址。進行基4和基2的蝶形運算,本例第一存儲器12包括4個存儲體。故片地址至少2位。每個存儲體的內(nèi)地址最大為511,所以內(nèi)地址最多9位?;诖?,去沖突映射器16到每個存儲體的傳輸線需至少可傳輸11位地址。對基4運算而言,所述地址映射方法的處理同例一,故以下僅對基2運算作簡單說明。基2的蝶形運算,一組兩個操作數(shù)。在本例操作數(shù)并行的FFT處理系統(tǒng),執(zhí)行本發(fā)明所述的地址映射方法,產(chǎn)生基2蝶形運算中操作數(shù)的無沖突地址?;?運算中,地址生成器14每一次產(chǎn)生4個操作數(shù)各自的初次地址,由去沖突映射器16對其進行處理,而FFT處理器一次性處理兩組操作數(shù),進行蝶形運算。隨機取地址生成器14產(chǎn)生的兩組操作數(shù)的初次地址分別為(512,1536)和(514,1538),執(zhí)行本發(fā)明所述地址映射方法,去沖突映射器16按照公式(1)產(chǎn)生片地址,按照公式(2)產(chǎn)生內(nèi)地址,其中,r=6;m=ll,n=2,故內(nèi)地址是初次地址的^氐9位。針對512,即,b01000000000:^4(5)='600;^4(4)='W0;^4(3)='600,」(2)='600,='600,^4(0)='600,,由jt匕,CS='M0,內(nèi)i也址J^eM='6000000000;經(jīng)去沖突處理后,初次地址為512的操作數(shù)放置在2#存儲體中內(nèi)地址為'6000000000的存4諸空間。針對1536,即,bl1000000000:j(5)='601;J(4)='M0;J(3)='600,^4(2)='600,='600,X(O)='600,4居jt匕='M1,內(nèi)地址A/簡='6000000000;經(jīng)去沖突處理后,初次地址為1536的操作數(shù)放置在3#存儲體中內(nèi)地址為'Z>000000000的存J諸空間。針對5M,即,b01000000010:」(5)='600;J(4)='M0;j(3)='600,」(2)='600,='600,乂(O)='M0,CS='W)0,內(nèi)地址Adress='b00000010;經(jīng)去沖突處理后,初次地址為514的操作數(shù)放置在0#存儲體中內(nèi)地址為,b00000010的存儲空間。針對1538,即b,11000000010:」(5)='601;J(4)='W0;^4(3)='雄,牟)='600,='織,j(0)='M0,Cl,內(nèi)地址Adress='b000000010;經(jīng)去沖突處理后,初次地址為1538的操作數(shù)放置在1#存儲體中內(nèi)地址為,b000000010的存儲空間。這樣,針對基2和基4的混合蝶形運算,基4運算和例一相同,基2運算地址生成器每一次產(chǎn)生4個操作數(shù)的初次地址,經(jīng)去沖突映射器16處理后,分配到不同的存儲體,而FFT處理器則可并行訪問該4個"t喿作數(shù),以進行蝶形運算。對于基2"和基2k的蝶形運算而言,本發(fā)明所述操作數(shù)并行的FFT處理系統(tǒng),可運行基2"的蝶形運算時,就可以運行基2k的蝶形運算,或者基2"與基2k的混合蝶形運算。結(jié)合上述舉例描述,可以看出,執(zhí)行本發(fā)明所述的地址映射方法及應(yīng)用本發(fā)明所述的操作數(shù)并行的FFT處理系統(tǒng),可將蝶形運算的操作數(shù)分別映射到各存儲體,使蝶形運算一次性計算所需要的操作數(shù)可由FFT處理器并行訪問。以上僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。權(quán)利要求1、一種地址映射方法,應(yīng)用于N點蝶形運算的操作數(shù)地址映射,其特征在于,所述地址映射方法包括步驟a產(chǎn)生多個操作數(shù)各自的初次地址,其中,所述操作數(shù)以及存放所述操作數(shù)的存儲器所包括的存儲體的個數(shù)俱為2n;步驟b處理步驟a產(chǎn)生的初次地址,生成片地址和內(nèi)地址,所述片地址和內(nèi)地址構(gòu)成無沖突地址,其中,所述片地址為所述各存儲體地址,所述內(nèi)地址為所述各操作數(shù)在各存儲體內(nèi)的地址。2、才艮據(jù)權(quán)利要求1所述的地址映射方法,其特征在于,所述步驟b包括使所述初次地址在2"進制下,各位依次相加,并讓相加所得的和對2"取模,該模即為片地址;抽取所述初次地址二進制下的低m-n位,形成內(nèi)地址,其中,m是N-1在二進制下的位寬。3、一種操作數(shù)并行的FFT處理系統(tǒng),其特征在于,包括操作數(shù)存儲器,用以存儲N點蝶形運算的操作數(shù),且該操作數(shù)存儲器由2"個存儲體構(gòu)成;旋轉(zhuǎn)因子存儲器,用以存儲旋轉(zhuǎn)因子;地址生成器,產(chǎn)生旋轉(zhuǎn)因子的地址,以及產(chǎn)生多個4喿作數(shù)各自的初次地址,其中,所述操作數(shù)與所述初存儲體的個數(shù)相同;去沖突映射器,接收地址生成器產(chǎn)生的初次地址,處理該初次地址獲得無沖突地址,其中,無沖突地址包括片地址和內(nèi)地址,所述片地址為所述各存儲體的地址,所述內(nèi)地址為操作數(shù)在各存儲體內(nèi)的地址。處理器,依據(jù)所述無沖突地址自操作數(shù)存儲器取得操作數(shù),依據(jù)所述旋轉(zhuǎn)因子地址自旋轉(zhuǎn)因子存儲器取得旋轉(zhuǎn)因子,進行蝶形運算。4、根據(jù)權(quán)利要求3所述的操作數(shù)并行的FFT處理系統(tǒng),其特征在于,所述操作數(shù)并行的FFT處理系統(tǒng)還包括2"到2n的讀選擇器,及2"到2"的寫選擇器;其中,讀選擇器的輸入端連接各存儲體,輸出端連接所述處理器的輸入端,寫選擇器的輸入端連接所述處理器的輸出端,輸出端連接各存儲體。5、根據(jù)權(quán)利要求3所述的操作數(shù)并行的FFT處理系統(tǒng),其特征在于,所述去沖突映射器計算所述初次地址在2n進制下各位的和,并讓所述和針對2n取模,該模即為片地址。6、根據(jù)權(quán)利要求3所述的操作數(shù)并行的FFT處理系統(tǒng),其特征在于,所述去沖突映射器抽取所述初次地址在二進制下的低m-n位,形成內(nèi)地址,其中,m是N-l在二進制下的位寬。全文摘要本發(fā)明涉及一種地址映射方法和操作數(shù)并行的FFT處理系統(tǒng)。通過該方法每一次產(chǎn)生多個操作數(shù)的初次地址,然后處理該初次地址,生成片地址和內(nèi)地址,所述片地址為所述存儲操作數(shù)的存儲器所包括的存儲體的地址,所述內(nèi)地址為所述各操作數(shù)在各存儲體內(nèi)的地址;由該地址映射方法,可使操作數(shù)存放在不同的存儲體,從而使蝶形運算中的操作數(shù)可并行。該操作數(shù)并行的FFT處理系統(tǒng)的去沖突映射器將操作數(shù)的初次地址轉(zhuǎn)換為無沖突地址,從而保證操作數(shù)可存放在不同的存儲體,F(xiàn)FT處理器可并行訪問這些操作數(shù),進而加快運算速度。文檔編號G06F17/14GK101339546SQ20081004369公開日2009年1月7日申請日期2008年8月7日優(yōu)先權(quán)日2008年8月7日發(fā)明者周海峰,曾珠峰申請人:那微微電子科技(上海)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1