如何正確的選擇dsp芯片?
DSP應(yīng)用系統(tǒng)的運(yùn)算量是確定選用處理能力為多大的DSP芯片的基礎(chǔ)。運(yùn)算量小則可以選用處理能力不是很強(qiáng)的DSP芯片,從而可以降低系統(tǒng)成本。相反,運(yùn)算量大的DSP系統(tǒng)則必須選用處理能力強(qiáng)的DSP芯片,如果DSP芯片的處理能力達(dá)不到系統(tǒng)要求,則必須用多個(gè)DSP芯片并行處理。那么如何確定DSP系統(tǒng)的運(yùn)算量以選擇DSP芯片呢?
1.按樣點(diǎn)處理
所謂按樣點(diǎn)處理就是DSP算法對(duì)每一個(gè)輸入樣點(diǎn)循環(huán)一次。數(shù)字濾波就是這種情況。在數(shù)字濾波器中,通常需要對(duì)每一個(gè)輸入樣點(diǎn)計(jì)算一次。例如,一個(gè)采用LMS算法的256 抽頭的自適應(yīng)FIR濾波器,假定每個(gè)抽頭的計(jì)算需要3個(gè)MAC周期,則256抽頭計(jì)算需要256×3=768個(gè)MAC周期。如果采樣頻率為8kHz,即樣點(diǎn)之間的間隔為125ms,DSP芯片的MAC周期為200ns,則768個(gè)MAC周期需要153.6ms的時(shí)間,顯然無法實(shí)時(shí)處理,需要選用速度更高的DSP芯片。
2.按幀處理
有些數(shù)字信號(hào)處理算法不是每個(gè)輸入樣點(diǎn)循環(huán)一次,而是每隔一定的時(shí)間間隔(通常稱為幀)循環(huán)一次。例如,中低速語音編碼算法通常以10ms或20ms為一幀,每隔10ms或20ms語音編碼算法循環(huán)一次。所以,選擇DSP芯片時(shí)應(yīng)該比較一幀內(nèi)DSP芯片的處理能力和DSP算法的運(yùn)算量。假設(shè)DSP芯片的指令周期為 p(ns),一幀的時(shí)間為Dt (ns),則該DSP芯片在一幀內(nèi)所能提供的最大運(yùn)算量為 Dt/p條指令。例如TMS320LC549-80的指令周期為12.5ns,設(shè)幀長為20ms,則一幀內(nèi)TMS320LC549-80所能提供的最大運(yùn)算量為160萬條指令。因此,只要語音編碼算法的運(yùn)算量不超過160萬條指令,就可以在TMS320LC549-80上實(shí)時(shí)運(yùn)行。
3、字長的選擇
一般浮點(diǎn)DSP芯片都用32位的數(shù)據(jù)字,大多數(shù)定點(diǎn)DSP芯片是16位數(shù)據(jù)字。而Motorola公司定點(diǎn)芯片用24位數(shù)據(jù)字,以便在定點(diǎn)和浮點(diǎn)精度之間取得折衷。字長大小是影響成本的重要因素,它影響芯片的大小、引腳數(shù)以及存儲(chǔ)器的大小,設(shè)計(jì)時(shí)在滿足性能指標(biāo)的條件下,盡可能選用最小的數(shù)據(jù)字。
4、存儲(chǔ)器等片內(nèi)硬件資源安排
包括存儲(chǔ)器的大小,片內(nèi)存儲(chǔ)器的數(shù)量,總線尋址空間等。片內(nèi)存儲(chǔ)器的大小決定了芯片運(yùn)行速度和成本,例如TI公司同一系列的DSP芯片,不同種類芯片存儲(chǔ)器的配置等硬件資源各不相同。通過對(duì)算法程序和應(yīng)用目標(biāo)的仔細(xì)分析可以大體判定對(duì)DSP芯片片內(nèi)資源的要求。幾個(gè)重要的考慮因素是片內(nèi)RAM和ROM的數(shù)量、可否外擴(kuò)存儲(chǔ)器、總線接口/中斷/串行口等是否夠用、是否具有A/D轉(zhuǎn)換等。
5、開發(fā)調(diào)試工具
完善、方便的的開發(fā)工具和相關(guān)支持軟件是開發(fā)大型、復(fù)雜DSP系統(tǒng)的必備條件,對(duì)縮短產(chǎn)品的開發(fā)周期有很重要的作用。開發(fā)工具包括軟件和硬件兩部分。軟件開發(fā)工具主要包括:C編譯器、匯編器、鏈接器、程序庫、軟件仿真器等,在確定DSP算法后,編寫的程序代碼通過軟件仿真器進(jìn)行仿真運(yùn)行,來確定必要的性能指標(biāo)。硬件開發(fā)工具包括在線硬件仿真器和系統(tǒng)開發(fā)板。在線硬件仿真器通常是JTAG周邊掃描接口板,可以對(duì)設(shè)計(jì)的硬件進(jìn)行在線調(diào)試;在硬件系統(tǒng)完成之前,不同功能的開發(fā)板上實(shí)時(shí)運(yùn)行設(shè)計(jì)的DSP軟件,可以提高開發(fā)效率。甚至在有的數(shù)量小的產(chǎn)品中,直接將開發(fā)板當(dāng)作最終產(chǎn)品。
選擇DSP可以根據(jù)以下幾方面決定:
1)速度: DSP速度一般用MIPS或FLOPS表示,即百萬次/秒鐘。根據(jù)您對(duì)處理速度的要求選擇適合的器件。一般選擇處理速度不要過高,速度高的DSP,系統(tǒng)實(shí)現(xiàn)也較困難。
2)精度: DSP芯片分為定點(diǎn)、浮點(diǎn)處理器,對(duì)于運(yùn)算精度要求很高的處理,可選擇浮點(diǎn)處理器。定點(diǎn)處理器也可完成浮點(diǎn)運(yùn)算,但精度和速度會(huì)有影響。
3)尋址空間: 不同系列DSP程序、數(shù)據(jù)、I/O空間大小不一,與普通MCU不同,DSP在一個(gè)指令周期內(nèi)能完成多個(gè)操作,所以DSP的指令效率很高,程序空間一般不會(huì)有問題,關(guān)鍵是數(shù)據(jù)空間是否滿足。數(shù)據(jù)空間的大小可以通過DMA的幫助,借助程序空間擴(kuò)大。
4)成本: 一般定點(diǎn)DSP的成本會(huì)比浮點(diǎn)DSP的要低,速度也較快。要獲得低成本的DSP系統(tǒng),盡量用定點(diǎn)算法,用定點(diǎn)DSP。
5)實(shí)現(xiàn)方便: 浮點(diǎn)DSP的結(jié)構(gòu)實(shí)現(xiàn)DSP系統(tǒng)較容易,不用考慮尋址空間的問題,指令對(duì)C語言支持的效率也較高。
6)內(nèi)部部件:根據(jù)應(yīng)用要求,選擇具有特殊部件的DSP。如:C2000適合于電機(jī)控制;OMAP適合于多媒體等。
以上便是此次小編帶來的DSP芯片相關(guān)內(nèi)容,通過本文,希望大家對(duì)DSP芯片已經(jīng)具備一定的了解。如果你喜歡本文,不妨持續(xù)關(guān)注我們網(wǎng)站哦,小編將于后期帶來更多精彩內(nèi)容。