新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的多項式運算器設(shè)計

基于FPGA的多項式運算器設(shè)計

作者: 時間:2012-04-25 來源:網(wǎng)絡(luò) 收藏

摘要:在級數(shù)的基礎(chǔ)上,設(shè)計一種基于的多項式。利用該可以在數(shù)字系統(tǒng)設(shè)計中更好地處理和應(yīng)用各種函數(shù)。首先實現(xiàn)基于的多項式,利用這個基本單元,進而實現(xiàn)了比較復(fù)雜的函數(shù)。經(jīng)過驗證,該運算器結(jié)構(gòu)簡單,運算實時性和準確性都能很好地滿足需要,最后對數(shù)據(jù)進行了誤差分析。
關(guān)鍵詞:多項式;運算器;;電路設(shè)計

0 引言
傳統(tǒng)的DSP都基于CPU結(jié)構(gòu),是一種基于特定指令系統(tǒng)的處理器,但隨著運算時鐘越來越接近電子器件可以接受的極限,這種DSP的處理能力也在接近它的極限;另一方面隨著EDA技術(shù)的發(fā)展,尤其像FPGA和CPLD器件的成熟和應(yīng)用,可以通過直接設(shè)計電路來實現(xiàn)并行的運算,這樣運算的效率從本質(zhì)上得到了提高,而且目前能實時地實現(xiàn)非常復(fù)雜的運算,所以基于FPGA的運算器被提上議事日程,并受到越來越多的重視。一種便于用電路實現(xiàn)而且通用性強的算法,可以幫助工程師簡單高效地完成一個能在FPGA上工作的運算器的設(shè)計。

1 數(shù)字電路實現(xiàn)運算的優(yōu)缺點
初步的FPGA設(shè)計是用硬件描述語言完成器件邏輯功能的描述,一個好的設(shè)計必須考慮數(shù)字電路的特點。CPU是一個典型的數(shù)字電路,因為其只能做加法運算,所以需要通過程序?qū)⒏鞣N運算都轉(zhuǎn)換為加法來完成。傳統(tǒng)的“數(shù)值分析”正是在這種程序設(shè)計的基礎(chǔ)上形成的,不但復(fù)雜而且效率不高,不能實現(xiàn)真正的實時運算,而FPGA本身除了能做加法運算外,做無符號數(shù)的減法和乘法也很方便。目前兩大FPGA生產(chǎn)商推出的集成開發(fā)軟件中,都有集成的加、減法和乘法的IP核,運算效率非常高,對于無符號數(shù)的運算一般只要1個時鐘,甚至是不需要時鐘的組合邏輯電路,文獻中也有這些運算器的詳細介紹。但是直接做除法則不同,雖然也有除法IP核,但是需要許多個時鐘,而且占用邏輯資源很多,無論設(shè)計還是應(yīng)用都不方便。電路運算的另一個缺點是表示有符號數(shù)和小數(shù),以及做有符號小數(shù)間的運算也很麻煩。所以在設(shè)計DSP時總是希望能夠找到一種方法盡量的趨易避難。

2 麥克勞林級數(shù)和多項式
運算器的作用是對數(shù)據(jù)進行各種運算,這個過程可以用一個函數(shù)來表示:y=f(x)。任何一個在零附近連續(xù)的函數(shù)都可以展開為麥克勞林級數(shù):
a.jpg
大部分常用函數(shù)的高階導(dǎo)數(shù)項很小或者為零,所以在精度允許的范圍內(nèi)取其中的有限項就可以,即用一個多項式做近似運算,多項式運算的特點在文獻中有詳細介紹。用FPGA實現(xiàn)多項式的運算,處理很多復(fù)雜的函數(shù)將會十分方便。
y=a0+a1×x+a2×x2+…+an×xn (2)
本文討論的是一種可以用FPGA或CPLD實現(xiàn)多項式(2)運算的運算器。對于簡單的多項式可以是一個組合邏輯電路,不需要時鐘,所以運算效率很高。這樣許多運算都可以簡單而且高效的完成。


上一頁 1 2 3 4 下一頁

關(guān)鍵詞: FPGA 運算器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉