基于FPGA的多項式運算器設(shè)計
將設(shè)計下載到芯片XC2VP30,并用Chipscope進(jìn)行片內(nèi)邏輯分析,外部時鐘和采樣時鐘都是100 MHz,得到電路的輸入/輸出曲線(見圖2)。圖2中虛線是輸入變量x,實線是輸出變量y??v坐標(biāo)的數(shù)值顯示的是Y=y×28的值,即顯示時沒有考慮小數(shù)點。本文引用地址:http://2s4d.com/article/190462.htm
從圖2中可以看到,輸出有大約3~4個時鐘的延時,對比CPU執(zhí)行1條指令就需要3~4個時鐘,運算效率已經(jīng)很高,而且這里使用的邏輯資源很少。
4 實驗結(jié)果分析
多項式擬合函數(shù)會有誤差。這里只分析運算器相對多項式的誤差。因為數(shù)據(jù)位寬有限,會出現(xiàn)截斷誤差。設(shè)計實例采用8位小數(shù)位,最大表示誤差是±2-9。由于常數(shù)也有數(shù)據(jù)截斷,實際運算誤差會更大。
減小誤差的惟一辦法是增加數(shù)據(jù)的位數(shù)。在本例中將數(shù)據(jù)上傳電腦并測算,最大誤差在x=π/2處,絕對值是0.0063,相對值是0.63%。對于一些特殊的輸入如x=0或x=0.5等,運算沒有誤差。
5 結(jié)語
通信系統(tǒng)的仿真與硬件實現(xiàn)涉及到很多復(fù)雜的函數(shù),直接實現(xiàn)會造成資源浪費,而且實現(xiàn)難度比較大。采用FPGA實現(xiàn)多項式運算,實現(xiàn)起來比較簡單,為之后實現(xiàn)復(fù)雜函數(shù)提供了基礎(chǔ),大大提高了運算速度和實現(xiàn)效率,在通信系統(tǒng)的硬件實現(xiàn)上有很廣闊的應(yīng)用前景。
評論