認(rèn)知無(wú)線電的頻譜檢測(cè)的FPGA實(shí)現(xiàn)
初步擬定硬件方案
本文引用地址:http://cafeforensic.com/article/269587.htm(1)整體方案框圖
本次設(shè)計(jì)使用8點(diǎn)的FFT設(shè)計(jì),因此我們需要3級(jí)基2點(diǎn)的FFT運(yùn)算,共有4個(gè)旋轉(zhuǎn)因子需要存儲(chǔ),依據(jù)項(xiàng)目難點(diǎn)我們主要對(duì)FFT模塊的設(shè)計(jì)進(jìn)行逐層細(xì)化:
(2)一級(jí)FFT的系統(tǒng)框圖實(shí)現(xiàn)
該框圖為一級(jí)FFT的系統(tǒng)框圖,輸入數(shù)據(jù)A對(duì)應(yīng)I信號(hào)的輸入,輸入數(shù)據(jù)B對(duì)應(yīng)Q信號(hào)的輸入,然后對(duì)其做基2點(diǎn)的FFT運(yùn)算。
(3)ROM的設(shè)計(jì)
本次設(shè)計(jì)為8點(diǎn)FFT運(yùn)算,就需要4個(gè)旋轉(zhuǎn)因子,旋轉(zhuǎn)因子的實(shí)部和虛部都采用八位二進(jìn)制數(shù)來(lái)表示,因此使用一個(gè)寬度為16,深度為4的ROM存儲(chǔ)器存儲(chǔ)旋轉(zhuǎn)因子。
(4)蝶形運(yùn)算單元的FPGA實(shí)現(xiàn)
依據(jù)蝶形運(yùn)算公式:
我們得到蝶形運(yùn)算單元框圖為:
(5)乒乓結(jié)構(gòu)的RAM示意圖
我們?cè)贔FT模塊中開(kāi)辟兩個(gè)RAM數(shù)據(jù)存儲(chǔ)區(qū),以此組成典型的乒乓操作模式;在FFT第一級(jí)運(yùn)算中,數(shù)據(jù)從RAM1經(jīng)蝶形運(yùn)算單元計(jì)算存入RAM2,在第二次中則正好相反,以此類推…….,下圖給出了乒乓結(jié)構(gòu)的RAM示意圖。
(6)能量求和模塊
最終輸出信號(hào)為:y=x(n)*x(n)+x(n+1)*x(n+1);
(7)累加電路模塊
我們將能量計(jì)算模塊計(jì)算出的能量值通入一個(gè)長(zhǎng)度為n的FIFO結(jié)構(gòu),每當(dāng)FIFO結(jié)構(gòu)中有一個(gè)數(shù)據(jù)量發(fā)生變化時(shí),累加器都要進(jìn)行計(jì)算更新,這樣就做到了實(shí)時(shí)監(jiān)測(cè)該通道的頻譜占用情況。在累加器當(dāng)中,為了計(jì)算速度足夠的快,可以滿足實(shí)時(shí)性要求,我們往往設(shè)計(jì)為流水線結(jié)構(gòu)。如下圖所示:以流水線結(jié)構(gòu)實(shí)現(xiàn)的累加器
fpga相關(guān)文章:fpga是什么
評(píng)論