現(xiàn)在市面上的DSP產品很多,定點DSP有200多種,浮點DSP有100多種。主要生產:TI 公司、AD公司、Lucent、Motorola和LSI Logic公司。主導產品: TI 公司的TMS320C54xx(16bit 定點)、 TMS320C55xx(16bit 定點)、 TMS320C62xx(32bit 定點)、 TMS320C67xx(16bit 浮點)、Motorola公司的DSP68000系列。我們在DSP選型時需要注意什么?
16bit定點DSP:最早以TMS320C10/C2X為代表,現(xiàn)在以TM320C2XX/C54XX為代表。
32 bit浮點DSP:代表產品ADSP21020、TMS320C3X
通用DSP芯片的代表性產品包括TI公司的TMS320系列、AD公司ADSP21xx系列、MOTOROLA公司的DSP56xx系列和DSP96xx系列、AT&T公司的DSP16/16A和DSP32/32C等單片器件。
TI的三大主力DSP產品系列為C2000系列主要用于數字控制系統(tǒng);C5000(C54x、C55x)系列主要用于低功耗、便攜的無線通信終端產品;C6000系列主要用于高性能復雜的通信系統(tǒng)。C5000系列中的TMS320C54x系列DSP芯片被廣泛應用于通信和個人消費電子領域。
在DSP系統(tǒng)的設計流程中,選擇合適的器件非常重要,在確定了系統(tǒng)功能需求之后,通過先期的算法確定及性能模擬,我們要選擇性價比最高的器件才能夠為下一步開發(fā)提供便利。
一般而言,定點DSP芯片的價格較便宜,功耗較低,但運算精度稍低。而浮點DSP芯片的優(yōu)點是運算精度高,且C語言編程調試方便,但價格稍貴,功耗也較大。例如TI的TMS320C2XX/C54X系列屬于定點DSP芯片,低功耗和低成本是其主要的特點。而TMS320C3X/C4X/C67X屬于浮點DSP芯片,運算精度高,用C語言編程方便,開發(fā)周期短,但同時其價格和功耗也相對較高。
DSP應用系統(tǒng)的運算量是確定選用處理能力為多大的DSP芯片的基礎。運算量小則可以選用處理能力不是很強的DSP芯片,從而可以降低系統(tǒng)成本。相反,運算量大的DSP系統(tǒng)則必須選用處理能力強的DSP芯片,如果DSP芯片的處理能力達不到系統(tǒng)要求,則必須用多個DSP芯片并行處理。那么如何確定DSP系統(tǒng)的運算量以選擇DSP芯片呢?下面我們來考慮兩種情況。
所謂按樣點處理就是DSP算法對每一個輸入樣點循環(huán)一次。數字濾波就是這種情況。在數字濾波器中,通常需要對每一個輸入樣點計算一次。例如,一個采用LMS算法的256 抽頭的自適應FIR濾波器,假定每個抽頭的計算需要3個MAC周期,則256抽頭計算需要256×3=768個MAC周期。如果采樣頻率為8kHz,即樣點之間的間隔為125ms,DSP芯片的MAC周期為200ns,則768個MAC周期需要153.6ms的時間,顯然無法實時處理,需要選用速度更高的DSP芯片。表1.3示出了兩種信號帶寬對三種 DSP 芯片的處理要求,三種DSP芯片的MAC周期分別為200ns、50ns和25ns。從表中可以看出,對話帶的應用,后兩種DSP芯片可以實時實現(xiàn),對聲頻應用,只有第三種DSP芯片能夠實時處理。當然,在這個例子中,沒有考慮其他的運算量。
DSP芯片也稱數字信號處理器,是一種特別適合于進行數字信號處理運算的微處理器具,其主機應用是實時快速地實現(xiàn)各種數字信號處理算法。根據數字信號處理的要求,DSP芯片一般具有如下主要特點:
(1)在一個指令周期內可完成一次乘法和一次加法;
(2)程序和數據空間分開,可以同時訪問指令和數據;
(3)片內具有快速RAM,通??赏ㄟ^獨立的數據總線在兩塊中同時訪問;
(4)具有低開銷或無開銷循環(huán)及跳轉的硬件支持;
(5)快速的中斷處理和硬件I/O支持;
(6)具有在單周期內操作的多個硬件地址產生器;
(7) 可以并行執(zhí)行多個操作; (8)支持流水線操作,使取指、譯碼和執(zhí)行等操作可以重疊執(zhí)行。
在我們設計DSP應用系統(tǒng)時, DSP芯片選型是非常重要的一個環(huán)節(jié)。在DSP系統(tǒng)硬件設計中只有選定了DSP芯片,才能進一步設計其外圍電路及系統(tǒng)的其他電路。因此說,DSP芯片的選擇應根據應用系統(tǒng)的實際需要而確定,做到既能滿足使用要求,又不浪費資源,從而也達到成本最小化的目的。
選擇DSP芯片需注意什么
在這部分,我們來看看選擇DSP芯片時需要注意哪些事項。
(1)速度指標
DSP最基本的速度指標是MIPS(百萬條指令每秒)和MFLOPS(百萬次浮點運算每秒),還有FFT和FIR濾波器的速度及除法、求平房根等特殊運算的速度。
(2)輸入輸出的帶寬
在運算速度達到要求時,還要考慮DSP輸入/輸出數據的速度是否足夠快。
(3)精度和動態(tài)范圍:精度和動態(tài)范圍由DSP的數據字寬和定點/浮點數據格式決定。
(4)特定功能:若DSP上集成了多種上電加載功能、同步/異步串口、A/D、D/A、片內語音處理功能、編解碼等,可以方便設計,降低成本。
(5)片內存儲器
DSP片內存儲器可用來放程序和數據,當程序和數據都放在片內時,DSP的運行速度要高得多,所以片內存儲器越多越好。
(6)DSP開發(fā)工具
選擇DSP芯片時必須注意其開發(fā)工具的支持情況,包括硬件和軟件。
(7)功耗問題和硬件封裝問題
(8)成本問題
定點DSP較便宜,功耗較低,但運算精度稍低。
浮點DSP稍貴,功耗較高,但運算精度高,C語言編程調試方便。