《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的移位寄存器流水線結構FFT處理器的實現
基于FPGA的移位寄存器流水線結構FFT處理器的實現
摘要: 0引言快速傅里葉變換(FFT)在雷達、通信和電子對抗等領域有廣泛應用。近年來現場可編程門陣列(FPGA)的飛速發展,與DSP技術相比,由于其并行信號處理結構,使得FPGA能夠很好地適用于
Abstract:
Key words :
 
0 引言
    快速傅里葉變換(FFT)在雷達、通信和電子對抗等領域有廣泛應用。近年來現場可編程門陣列(FPGA)的飛速發展,與DSP技術相比,由于其并行信號處 理結構,使得FPGA能夠很好地適用于高速信號處理系統。由于Altera等公司研制的FFT IP核,價錢昂貴,不適合大規模應用,在特定領域中,設計適合于自己領域需要的FFT處理器是較為實際的選擇。
    本文設計的FFT處理器,基于FPGA技術,由于采用移位寄存器流水線結構,實現了兩路數據的同時輸入,相比傳統的級聯結構,提高了蝶形運算單元的運算效 率,減小了輸出延時,降低了芯片資源的使用。在OFDM系統的實際應用中,因它可以采用快速傅里葉變換,能方便快捷地實現調制和解調,故結合MIMO技 術,設計的FFT處理器結構,可以很好地應用于2根天線的MIMO-OFDM系統中。

1 FFT處理的應用及DIF FFT算法原理
    圖1給出一個2根天線MIMO-OFDM系統中FFT的使用??焖俑道锶~變換算法基本上分為兩大類:時域抽取(DIT)和頻域抽取(DIF),這里設計的FFT處理器采用基-2 DIF算法。



    對于N點序列x(N),其傅里葉變換

   


    將x(n)分成上、下兩部分,得:
   
    這樣將兩個N點的DFT分成兩個N/2點的DFT,分的方法是將x(k)按序號k的奇、偶分開。通過這種方式繼續分下去,直到得到兩點的DFT。采用DIF方法設計的FFT,其輸入是正序,輸出是按照奇偶分開的倒序。

2 移位寄存器流水線結構的FFT
    在傳統流水線結構的FFT中,需要將全部數據輸入寄存器后,可開始蝶形運算。在基-2 DIF算法中可以發現,當前N/2個數據進入寄存器后,運算便可以開始,此后進入的第N/2+1個數據與寄存器第一個數據進行蝶形運算,以此類推。
    由于采用頻域抽取法,不需要對輸入的數據進行倒序處理,簡化了地址控制,這樣,可以采用移位寄存器的方式,依次將前N/2個數據移入移位寄存器,在 N/2+l時刻,第一個數據移出移位寄存器,參與運算。相對于傳統的RAM讀寫方式,采用移位寄存器存儲結構綜合后的最大工作頻率為500 MHz,遠大于RAM方式的166 MHz。
    當移位寄存器相繼有數據移出時,在移位寄存器中會出現空白位。此時,引入第二路數據,在第一路數據依次移出進行蝶算時,第二路數據依次補充到移位寄存器的 空白位中,為運算做準備。通過這樣一種類似“乒乓操作”的結構,可以使蝶形運算模塊中的數據不間斷地輸入,運算效率達到100%。不同于傳統的“乒乓操 作”結構,由于使用移位寄存器,不需要兩塊RAM,可以省掉一半的寄存器。圖2為256點FFT處理器的第一級結構。

    基于上述基本原理,將這種移位寄存器結構擴展到整個FFT系統的各級,可以發現各級使用的移位寄存器數量是遞減的?,F使用一個8點結構來進行說明。
    如圖3所示,數據由輸入l和輸入2進入第一級。通過開關進行選通控制。由于是N=8的運算,所以各級分別加入4級、2級和1級的移位寄存器。


    分兩路來說明運算過程:
    將K1打到位置①,第一路數據進入移位寄存器,待第一路的前4個數據存入4級移位寄存器后,第一路進入的第5個數據與移位寄存器移出的第1個數據進行蝶形運算。
    由于輸出結果有上下兩路,第二級是一個四點的DFT,所以對于上路的輸出結果x0(0)+x0(4)類似于第一級,直接存入下一級寄存器,為四點運算做準備,下路的輸出,先存入本級2級移位寄存器中,等到上路的四點運算開始,第二級的移位寄存器有空白位時,移入第二級,為下路的四點運算做準備。所以第一級蝶形運算上路輸出前N/4=2個進入下一級寄存器,下路輸出的數據依次存入本級移位寄存器中。
    當第一級的輸出前N/4=2個數據x0(0)+x0(4)和x0(1)+x0(5)存入第二級移位寄存器時,運算便可以開始,這時開關K2打到位置②,此 時第一級上路輸出的數據x0(2)+x0(6),即第一級上路輸出的第三個數據與第二級移位寄存器移出的第一個數據,即x0(O)+x0(4)進行蝶形運 算,輸出的第四個數據x0(3)+x0(7)與x0(1)+x0(5)進行蝶算。在這個運算過程中,第一級的2級移位寄存器移出數據依次移位存入到第二級 的移位寄存器產生的空白位中。
    兩個時鐘后,第一級上路輸出的四個數據完成了蝶形運算,K2打到位置①,在接下來的兩個時鐘里,第一級中2級移位寄存器的輸出依次與此時第二級中2級移位寄存器的輸出數據進行蝶形運算,即完成第一級下路輸出的四個數據的蝶形運算。
    此時,第一路在第一級運算后的輸出數據,在第二級完成了全部的蝶形運算。第二級的輸出結果同第一級一樣,蝶形運算的上路輸出前N/8=1個進入下一級寄存器,后一個數據直接進入后一級進行碟算,下路輸出的數據存入本級移位寄存器中。
    第三級的運算與第二級和第一級類似,即移入1級寄存器的數據與其后一個數據進行碟算,同時使前一級寄存器的輸出數據進入后一級寄存器的空白位中,然后開關打到位置②,對下路輸出數據進行碟算。
    對于第二路數據,通過開關控制,在第二級中,待第一路第一級下路輸出數據進行蝶形運算時,移入寄存器的空白位,為運算做準備,由于前級運算周期是后級運周 期的兩倍,對于第二級碟算模塊而言,數據仍然是不間斷輸入的。通過這樣兩路數據的交替運算和存儲,實現“乒乓操作”,從而提高了蝶形運算模塊的運算效率。 圖4是256點FFT的具體運算輸入和輸出時序圖。對于只有一路數據的應用場合,可以在前級加入,門控開關和數據緩沖寄存器分成兩路數據,實現一路數據的 不間斷讀入。


    由于采用移位寄存器結梅,各級寄存器使用的數量都是固定的,即為N/2+N/4。其中,N為該級DFT運算的點數,各級使用的移位寄存器深度逐級遞減,從而大大降低了寄存器的使用數量。
    此外,由于各級結構固定,所以大點數FFT只是小點數FFT基礎上級數的增加,而且由于移位寄存器的輸出相對于RAM而言不需要復雜的地址控制,所以這種 結構的FFT處理器具有非常好的可擴展性。比如需要實現512點的FFT,只需要在256點的基礎上增加一級即可。

3 具體模塊的設計
3.1 控制與地址產生模塊

    由于兩路數據同時輸入,為了防止發生兩路數據間的串擾,對數據的控制顯得極其關鍵。從上面的算法結構分析中知道,由于后級的DFT運算點數是前一級的一 半,所以后一級的開關轉換周期也是前一級的一半,基于這種關系,可以使用一個8位計數器的每一位狀態來對各級開關進行控制。最高位控制第一級,同時由于上 一級數據進入下一級需要一個時鐘,所以下一級的開關轉換時刻要比上一級延遲一個時鐘周期。

    對于移位寄存器,在實現時,各級的前級移位寄存器深度為N/2-1,從本質而言,是使運算開始的時鐘上升沿到來時,數據已經出現在碟算模塊輸入線上,而不 需要下一個時鐘的驅動來移出寄存器,比如第二級移位寄存器的級數為63。這樣,運算周期正好是2的倍數,從而方便使用計數器的各位直接對開關進行控制。
    同時,計數器還可以用來產生所需旋轉因子的RAM地址。根據各級蝶形運算所需旋轉因子的規律,可以利用計數器的高位補零來產生查找表的地址。比如,對于第一級,因為需要在最低位第一次出現1時提供,第二次出現1時提供,…,以此類推,周期為128,所以可以使用計數器的低七位作為地址。對于第二級,由于所需要的地址為偶數,可以由計數器的[6:1]和最低位置O產生。表l為8點時使用三位計數器輸出旋轉因子的地址情況。


    控制和地址產生模塊的仿真結果如圖5所示,其中sel代表開關控制,addr代表產生的地址。


3.2 蝶形運算模塊
    蝶算模塊由一個復數加法器,一個復數減法器和一個旋轉因子的復數乘法器構成,如圖6所示。


    旋轉因子乘法器通常由4次實數乘法和2次加/減法運算實現,但因為cos和sin的值可以預先存儲,通過下面的算法可以簡化復數乘法器:
    (1)存儲如下三個系數:C,C+S,C-S
    (2)計算:E=X-Y和Z=C*E=C*(X-Y)
    (3)用R=(C-S)*Y+Z,I=(C+S)*X-Z,
得到需要的結果。
    這種算法使用了3次乘法,1次加法和2次減法,但是需要使用存儲3個表的ROM資源。
    設計中數據的輸入為16位復數,所以將旋轉因子cos(2kπ/N),sin(2kπ/N)量化成帶符號數的16位二進制數后,存儲到ROM中,由于值域不同,需要注意C+S和C-S的表要比C表多1位精度。
    運算后的結果需要除以量化時乘以的倍數16b011111llllllllll。具體實現時由于除法運算在FPGA器件需要消耗較多的資源,設計中采用二 進制數移位的方法來實現除法運算。為了防止數據溢出,設計對輸出結果除以2。圖7為蝶形運算模塊的RTL級結構圖。

3.3 倒序輸出模塊
    由頻域抽取的基-2算法可知,運算結果需要倒序輸出??梢韵葘⒔Y果存儲到RAM中,然后使用O~255的二進制數倒序產生RAM讀取地址,依次將結果讀出,其中實現一個8位二進制數倒序的算法如下:
    (1)將8位數字的相鄰兩位交換位置;
    (2)將相鄰的兩位看作1組,相鄰兩組交換位置;
    (3)將相鄰的4位看作1組,相鄰兩組交換位置。
    經過這樣的交換位置后,輸出即為原來8位二進制數的倒序。
    舉例對于8位二進制數10110110來說,第一次交換位置的結果是01111001,第二次交換位置的結果是11010110,最后交換位置的結果是01101101。可見正好是原來數字的倒序。
    另外,由于設計的是兩路數據同時寫入,一路數據讀出,所以讀取的頻率是寫入頻率的2倍,使用PLL實現原始時鐘的二倍頻,用來讀取RAM。倒序模塊仿真結果如圖8所示。


    最終生成的FFT處理器模塊圖如圖9所示。

 



4 仿真結果
    各級間數據時序情況如圖10所示,設計的FFT處理器仿真結果如圖1l所示。采用一路階梯遞增信號和另一路:XXXX信號進行仿真,通過與Matlab計 算結果進行對比,結果基本一致,可以滿足系統要求。系統總的延時由延時最大的第一級決定,為第一級運算的延時加上倒序輸出的延時,總共是 (256+128)×clk,相對于一般流水線結構(256×讀入周期+7×128×蝶算周期+128×讀入周期),系統延時大為減少。


    通過仿真可知,系統最大頻率由蝶形運算模塊的最大工作頻率決定。使用QuartusⅡ軟件時序仿真后,得到處理器的工作頻率為72 MHz。

5 結語
    通過采用移位寄存器流水線結構,可以有效地提高FFT處理器中蝶形運算單元的效率,減少寄存器的使用數量,并且簡化了地址控制,提高處理器的工作頻率,具 有良好的可擴展性,同時可以實現兩路數據的同時輸入,從而增大了一倍的數據吞吐量。對于工作頻率要求較高,數據吞吐量較大,尤其對于需要兩路數據輸入的場 合,比如兩天線的MIMO-OFDM系統,具有很大的實用價值。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美精品免费在线| 国产一区二区三区四区hd| 亚洲综合清纯丝袜自拍| 日韩一区二区精品视频| 久久青青草原一区二区| 国产精品丝袜白浆摸在线| 国产精品久久久久秋霞鲁丝| 国外成人在线视频网站| 国产精品国产三级国产普通话三级| 国产欧美精品久久| 一本久久综合| 一二美女精品欧洲| 欧美精品免费播放| 亚洲乱码精品一二三四区日韩在线| 亚洲第一二三四五区| 久久久夜色精品亚洲| 一区二区三区|亚洲午夜| 国产精品美女在线观看| 欧美另类综合| 亚洲欧美综合v| 麻豆久久婷婷| 亚洲影视九九影院在线观看| 国产精品久久久久免费a∨大胸| 欧美色精品天天在线观看视频| 国产精品理论片在线观看| 国产最新精品精品你懂的| 国产精品hd| 欧美另类一区二区三区| 久久久97精品| 欧美大片网址| 亚洲国产婷婷香蕉久久久久久| 日韩亚洲欧美一区二区三区| 欧美一区二区三区日韩| 亚洲激情影视| 国模叶桐国产精品一区| 9l视频自拍蝌蚪9l视频成人| 国产精品―色哟哟| 欧美另类在线观看| 在线观看欧美日本| 久久精品91久久香蕉加勒比| 亚洲免费伊人电影在线观看av| 欧美大片va欧美在线播放| 1204国产成人精品视频| 国产亚洲永久域名| 国产自产在线视频一区| 欧美日韩一区二区在线播放| 亚洲国产天堂久久国产91| 国产美女高潮久久白浆| 欧美日韩美女在线观看| 六月天综合网| 国产手机视频一区二区| 亚洲综合色丁香婷婷六月图片| 中文高清一区| 亚洲精品美女在线观看播放| 久久一区二区三区av| 亚洲一区二区成人| 国产欧美一区二区三区在线看蜜臀| 亚洲私人黄色宅男| 欧美精品在线看| 国产欧美精品在线| 国内精品久久久久久| 欧美日韩国产综合视频在线观看中文| 久热精品在线视频| 国产精品国产三级国产aⅴ9色| 久久亚洲国产精品日日av夜夜| 久久成人免费日本黄色| 欧美日本一区二区视频在线观看| 亚洲人成网站777色婷婷| 9l国产精品久久久久麻豆| 亚洲深夜福利视频| 国产日韩欧美综合精品| 久久精品99| 香蕉久久夜色精品国产使用方法| 亚洲看片一区| 日韩亚洲在线| 亚洲人成啪啪网站| 亚洲欧洲在线观看| 精品99一区二区| 久久综合给合久久狠狠色| 精品99一区二区| 一卡二卡3卡四卡高清精品视频| 国产日韩欧美一二三区| 久久国产精品久久国产精品| 亚洲欧美清纯在线制服| 午夜精品福利视频| 久久久人人人| 欧美国产欧美亚州国产日韩mv天天看完整| 久久久国产精彩视频美女艺术照福利| 欧美性感一类影片在线播放| 欧美高清自拍一区| 久久一区精品| 欧美亚洲视频在线观看| 欧美日韩在线不卡一区| 午夜精品久久99蜜桃的功能介绍| 在线观看视频日韩| 亚洲国产精品久久精品怡红院| 久久经典综合| 一区二区在线不卡| 韩日精品视频| 久久天天躁夜夜躁狠狠躁2022| 欧美人妖另类| 欧美日韩国产探花| 国产精品毛片va一区二区三区| 欧美国产欧美亚州国产日韩mv天天看完整| 欧美一级成年大片在线观看| 亚洲免费播放| 亚洲国产精品电影在线观看| 国产麻豆综合| 国产目拍亚洲精品99久久精品| 中文无字幕一区二区三区| 午夜欧美精品久久久久久久| 91久久精品国产91久久| 久久久91精品国产一区二区三区| 国产精品国产三级国产普通话三级| 欧美一区二区三区成人| 久久国产婷婷国产香蕉| 久久精品国产免费观看| 日韩视频一区| 国产一本一道久久香蕉| 亚洲级视频在线观看免费1级| 欧美日韩久久| 欧美一区二区三区喷汁尤物| 一本高清dvd不卡在线观看| 国产视频一区在线观看一区免费| 黄色精品一区二区| 亚洲男女毛片无遮挡| 欧美日韩激情网| 国产精品一区二区男女羞羞无遮挡| 亚洲欧美电影在线观看| 欧美一区午夜视频在线观看| 亚洲视屏一区| 国产精品久久夜| 欧美精品v日韩精品v国产精品| 国产精品日本一区二区| 在线日韩av永久免费观看| 性欧美18~19sex高清播放| 国产精品九九| 蜜臀久久99精品久久久久久9| 欧美中文字幕在线| 国产农村妇女精品一区二区| 久久国产精品亚洲77777| 亚洲黄网站黄| 亚洲精品乱码久久久久久蜜桃91| 伊人久久综合| 亚洲一区视频在线观看视频| 国产一区二区三区视频在线观看| 小处雏高清一区二区三区| 欧美一级黄色网| 黄色精品一区二区| 激情亚洲一区二区三区四区| 香港久久久电影| 激情婷婷欧美| 麻豆freexxxx性91精品| 狠狠做深爱婷婷久久综合一区| 欧美日韩另类国产亚洲欧美一级| 在线视频欧美日韩精品| 美日韩精品视频免费看| 亚洲男人av电影| 欧美福利电影网| 中文在线资源观看视频网站免费不卡| 欧美三级网页| 亚洲国产精品一区二区尤物区| 欧美成人蜜桃| 亚洲欧美成人一区二区在线电影| 国产乱码精品一区二区三区不卡| 久久狠狠婷婷| 国产亚洲日本欧美韩国| 亚洲国产高清一区| 国产精品男女猛烈高潮激情| 亚洲免费在线视频一区 二区| 欧美精品午夜视频| 亚洲美女诱惑| 欧美自拍偷拍| 久久久免费观看视频| 欧美日本一区二区视频在线观看| 一区二区三区偷拍| 久久久久久久国产| 欧美中在线观看| 欧美好吊妞视频| 欧美成人精品在线播放| 亚洲片区在线| 欧美亚洲专区| 欧美精选一区| 欧美不卡激情三级在线观看| 欧美日韩色综合| 韩国精品久久久999| 日韩视频中午一区| 亚洲一区精品电影| 久久婷婷综合激情| 欧美成人精品在线视频| 欧美日韩国产在线播放| 欧美日韩国产一级| 亚洲视频一区二区免费在线观看| 国产精品亚洲综合久久| 国产精品爱久久久久久久| 在线精品福利| 国产精品欧美一区喷水| 亚洲欧美另类久久久精品2019| 欧美区二区三区| 欧美精品三级在线观看| 欧美日韩日本国产亚洲在线| 久久综合九色综合欧美就去吻| 久久国产精品毛片| 国产亚洲综合性久久久影院| 欧美日韩中文字幕日韩欧美| 国产日本欧美在线观看| 国产麻豆精品在线观看| 久久高清一区| 韩国成人精品a∨在线观看| 欧美啪啪成人vr| 国产精品久久久久91| 国产精品国产三级国产普通话99| 国产综合一区二区| 亚洲精品中文字幕女同| 欧美二区在线| 99国内精品久久久久久久软件| 久久另类ts人妖一区二区| 麻豆乱码国产一区二区三区| 亚洲国产成人精品久久久国产成人一区| 亚洲精品免费在线观看| 伊人婷婷欧美激情| 亚洲欧洲日产国码二区| 欧美激情一区在线观看| 久久精品国产成人| 欧美精品成人91久久久久久久| 理论片一区二区在线| 日韩午夜三级在线| 欧美精品1区| 欧美区在线观看| 国产伦一区二区三区色一情| 91久久香蕉国产日韩欧美9色| 欧美日韩一区在线观看视频| 亚洲国产天堂久久综合| 久久人体大胆视频| 欧美精品情趣视频| 久久综合九色综合欧美狠狠| 亚洲永久在线观看| 日韩一区二区免费高清| 国产精品久久久久久久午夜片| 亚洲精品欧美一区二区三区| 亚洲最新中文字幕| 麻豆精品一区二区综合av| 国产精品爱久久久久久久| 国产日韩欧美综合精品| 午夜日韩av| 国模私拍视频一区| 久久一区二区三区av| 久久久久久久久岛国免费| 欧美久久久久| 久久精品72免费观看| 欧美香蕉大胸在线视频观看| 国产精品高精视频免费| 最新日韩欧美| 另类酷文…触手系列精品集v1小说| 欧美一区二区三区四区在线观看地址| 亚洲制服欧美中文字幕中文字幕| 久久久久久一区二区三区| 免费日韩一区二区| 欧美精品久久久久久| 欧美日本一区二区视频在线观看| 亚洲麻豆一区| 久久影音先锋| 在线成人av.com| 在线看欧美视频| 久久久青草婷婷精品综合日韩| 午夜欧美电影在线观看| 一二三区精品福利视频| 亚洲老板91色精品久久| 欧美精品大片| 欧美一区2区视频在线观看| 激情久久中文字幕| 欧美在线一级va免费观看| 欧美日韩一区不卡| 欧美三级网页| 欧美日韩国产一级片| 尤物九九久久国产精品的特点| 久色婷婷小香蕉久久| 亚洲午夜国产成人av电影男同| 亚洲欧美中文字幕| 国产精品久久久久久久久久尿| 国产综合视频| 欧美国产一区二区三区激情无套| 欧美日韩国产色综合一二三四| 一区二区三区在线视频播放| 狠狠入ady亚洲精品经典电影| 国产日韩精品一区二区浪潮av| 一本色道婷婷久久欧美| 欧美新色视频| 中日韩高清电影网| 欧美freesex交免费视频| 国产精品亚洲人在线观看| 欧美理论电影在线观看| 国产精品嫩草久久久久| 欧美在线亚洲在线| 在线视频日本亚洲性| 久久综合九色九九| 美国十次了思思久久精品导航| 亚洲午夜一区| 国产欧美日韩精品在线| 欧美电影在线免费观看网站| 国产精品久久久久久久久免费| 亚洲一区尤物| 欧美视频中文字幕| 欧美综合国产精品久久丁香| 在线欧美日韩精品| 在线观看av不卡| 黄色av成人| 欧美在线日韩| 亚洲国产日韩在线| 国产亚洲精品久| 欧美精品在线网站| 亚洲国产精品电影| 久久网站热最新地址| 欧美日韩理论| 国产精品夫妻自拍| aa日韩免费精品视频一| 欧美一区午夜视频在线观看| 国产精品视频一| 在线视频一区二区| 伊人色综合久久天天五月婷| 欧美国产日韩亚洲一区| 亚洲一区成人| 国产精品日产欧美久久久久| 欧美亚洲日本一区| 一区二区三区欧美激情| 美女主播一区| 欧美资源在线观看| 亚洲成人自拍视频|