新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的線性卷積的實(shí)時(shí)實(shí)現(xiàn)

基于FPGA的線性卷積的實(shí)時(shí)實(shí)現(xiàn)

作者: 時(shí)間:2010-08-10 來(lái)源:網(wǎng)絡(luò) 收藏

5 性能分析與改進(jìn)
的流水線結(jié)構(gòu)決定了速度的瓶頸取決于整個(gè)流程中處理速度最慢的部分。在FFT核速度可以保證的前提下(EP2S60的理論速度可以達(dá)到293.06 MHz),而處理過(guò)程中全部使用內(nèi)部RAM來(lái)存儲(chǔ)中間數(shù)據(jù),所以在本系統(tǒng)中,內(nèi)部的理論處理速度達(dá)到200 MHz以上。本系統(tǒng)的處理速度主要局限于A/D和D/A的數(shù)據(jù)轉(zhuǎn)換率,根據(jù)實(shí)際測(cè)試,在100 MHz系統(tǒng)時(shí)鐘下,數(shù)據(jù)吞吐率可達(dá)100 Ms/s,滿足了設(shè)計(jì)技術(shù)指標(biāo)。圖4給出了FPGA的資源占用。為了較好地檢測(cè)整個(gè)使用FFT_IFFT實(shí)現(xiàn)卷積的系統(tǒng)性能,設(shè)計(jì)了一個(gè)初略性能分析測(cè)試結(jié)構(gòu),如圖5所示。


在圖5中,由上位機(jī)產(chǎn)生的一組8 192點(diǎn)隨機(jī)復(fù)數(shù)a(t)寫(xiě)入ROM中,作為FFT模塊的信號(hào)輸入,經(jīng)過(guò)FFT后將結(jié)果B(ω)存入RAM中,以方便上位機(jī)讀取并與a(t)使用Matlab計(jì)算出來(lái)的FFT結(jié)果A(ω)進(jìn)行比較;接著將該FFT結(jié)果B(ω)再進(jìn)行IFFT計(jì)算,由數(shù)字信號(hào)處理理論可知,一個(gè)信號(hào)進(jìn)行FFT后再進(jìn)行IFFT的結(jié)果應(yīng)該是信號(hào)本身,所以將B(ω)再進(jìn)行IFFT計(jì)算后得到的結(jié)果b(t)存入RAM,由上位機(jī)讀取并與原始信號(hào)a(t)進(jìn)行比較,可以分析整個(gè)卷積系統(tǒng)的處理誤差。圖6給出了計(jì)算FFT結(jié)果相對(duì)誤差的Matlab相關(guān)程序。


求出A(ω)的最大值max[A(ω)],分別對(duì)B(ω)的實(shí)部和虛部計(jì)算相對(duì)誤差,得到如圖7所示的相對(duì)誤差曲線。由圖6可知,在FFT過(guò)程中,相對(duì)誤差可以保證在0.5%以?xún)?nèi)。對(duì)FFT所得的結(jié)果B(ω)做IFFT得到b(t),分析b(t)與原數(shù)據(jù)a(t)的誤差,得到如圖8所示的相對(duì)誤差曲線。



關(guān)鍵詞: FPGA 線性卷積

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉