數字信號處理器

數字信號處理器

數字信號處理是將信號以數字方式表示並處理的理論和技術。數字信號處理與模擬信號處理是信號處理的子集。數字信號處理的目的是對真實世界的連續模擬信號進行測量或濾波。因此在進行數字信號處理之前需要將信號從模擬域轉換到數字域,這通常通過模數轉換器實現。而數字信號處理的輸出經常也要變換到模擬域,這是通過數模轉換器實現的。

基本介紹


應用

內置數字信號處理器(DSP,Digital Sign
al Processor)是車載主機內以邏輯電路對音視頻數字信號進行再加工處理的專用元件,是一個統稱名詞,包括數字效果器、EQ、3D環繞等等。
數字信號處理器並非只局限於音視頻層面,它廣泛的應用於通信與信息系統、信號與信息處理、自動控制、雷達、軍事、航空航天、醫療、家用電器等許多領域。以往是採用通用的微處理器來完成大量數字信號處理運算,速度較慢,難以滿足實際需要;而同時使用位片式微處理器和快速並聯乘法器,曾經是實現數字信號處理的有效途徑,但此方法器件較多,邏輯設計和程序設計複雜,耗電較大,價格昂貴。數字信號處理器DSP的出現,很好的解決了上述問題。DSP可以快速地實現對信號的採集、變換、濾波、估值、增強、壓縮、識別等處理,以得到符合人們需要的信號形式。
對於車載主機而言,數字信號處理器DSP目前主要是提供特定的音場或效果,例如劇場、爵士樂等等,有些還能接收高清晰度(HD)無線電和衛星無線電等等,以達到最大的視聽享受。數字信號處理器DSP增強了車載主機的性能和可用性,提高了音視頻質量、提供了更多的靈活性和更快的設計周期。隨著技術的發展,相信以後還能提供更多的聽覺和視覺特效,而使車載主機成為車內的高科技信息和娛樂中心。

DSP演演算法格式

DSP的演演算法有多種。絕大多數的DSP處理器使用定點演演算法,數字錶示為整數或-1.0到+1.0之間的小數形式。有些處理器採用浮點演演算法,數據表示成尾數加指數的形式:尾數×2指數。
浮點演演算法是一種較複雜的常規演演算法,利用浮點數據可以實現大的數據動態範圍(這個動態範圍可以用最大和最小數的比值來表示)。浮點DSP在應用中,設計工程師不用關心動態範圍和精度一類的問題。浮點DSP比定點DSP更容易編程,但是成本和功耗高。
由於成本和功耗的原因,一般批量產品選用定點DSP。編程和演演算法設計人員通過分析或模擬來確定所需要的動態範圍和精度。如果要求易於開發,而且動態範圍很寬、精度很高,可以考慮採用浮點DSP。
也可以在採用定點DSP的條件下由軟體實現浮點計算,但是這樣的軟體程序會佔用大量處理器時間,因而很少使用。有效的辦法是“塊浮點”,利用該方法將具有相同指數,而尾數不同的一組數據作為數據塊進行處理。“塊浮點”處理通常用軟體來實現。

DSP數據寬度

所有浮點DSP的字寬為32位,而定點DSP的字寬一般為16位,也有24位和20位的DSP,如摩托羅拉的DSP563XX系列和Zoran公司的ZR3800X系列。由於字寬與DSP的外部尺寸、管腳數量以及需要的存儲器的大小等有很大的關係,所以字寬的長短直接影響到器件的成本。字寬越寬則尺寸越大,管腳越多,存儲器要求也越大,成本相應地增大。在滿足設計要求的條件下,要盡量選用小字寬的DSP以減小成本。
在關於定點和浮點的選擇時,可以權衡字寬和開發複雜度之間的關係。例如,通過將指令組合連用,一個16位字寬的DSP器件也可以實現32位字寬雙精度演演算法(當然雙精度演演算法比單精度演演算法慢得多)。如果單精度能滿足絕大多數的計算要求,而僅少量代碼需要雙精度,這種方法也可行,但如果大多數的計算要求精度很高,則需要選用較大字寬的處理器。
請注意,絕大多數DSP器件的指令字和數據字的寬度一樣,也有一些不一樣,如ADI(模擬器件公司)的ADSP-21XX系列的數據字為16位而指令字為24位。

DSP的速度

處理器是否符合設計要求,關鍵在於是否滿足速度要求。測試處理器的速度有很多方法,最基本的是測量處理器的指令周期,即處理器執行最快指令所需要的時間。指令周期的倒數除以一百萬,再乘以每個周期執行的指令數,結果即為處理器的最高速率,單位為每秒
百萬條指令MIPS
但是指令執行時間並不能表明處理器的真正性能,不同的處理器在單個指令完成的任務量不一樣,單純地比較指令執行時間並不能公正地區別性能的差異。現在一些新的DSP採用超長指令字(VLIW)架構,在這種架構中,單個周期時間內可以實現多條指令,而每個指令所實現的任務比傳統DSP少,因此相對VLIW和通用DSP器件而言,比較MIPS的大小時會產生誤導作用。
即使在傳統DSP之間比較MIPS大小也具有一定的片面性。例如,某些處理器允許在單個指令中同時對幾位一起進行移位,而有些DSP的一個指令只能對單個數據位移位;有些DSP可以進行與正在執行的ALU指令無關的數據的并行處理(在執行指令的同時載入操作數),而另外有些DSP只能支持與正在執行的ALU指令有關的數據并行處理;有些新的DSP允許在單個指令內定義兩個MAC。因此僅僅進行MIPS比較並不能準確得出處理器的性能。
解決上述問題的方法之一是採用一個基本的操作(而不是指令)作為標準來比較處理器的性能。常用到的是MAC操作,但是MAC操作時間不能提供比較DSP性能差異的足夠信息,在絕大多數DSP中,MAC操作僅在單個指令周期內實現,其MAC時間等於指令周期時間,如上所述,某些DSP在單個MAC周期內處理的任務比其它DSP多。MAC時間並不能反映諸如循環操作等的性能,而這種操作在所有的應用中都會用到。
最通用的辦法是定義一套標準常式,比較在不同DSP上的執行速度。這種常式可能是一個演演算法的“核心”功能,如FIR或IIR濾波器等,也可以是整個或部分應用程序(如語音編碼器)。圖1為使用BDTI公司的工具測試的幾款DSP器件性能。
在比較DSP處理器的速度時要注意其所標榜的MOPS(百萬次操作每秒)和MFLOPS(百萬次浮點操作每秒)參數,因為不同的廠商對“操作”的理解不一樣,指標的意義也不一樣。例如,某些處理器能同時進行浮點乘法操作和浮點加法操作,因而標榜其產品的MFLOPS為MIPS的兩倍。
其次,在比較處理器時鐘速率時,DSP的輸入時鐘可能與其指令速率一樣,也可能是指令速率的兩倍到四倍,不同的處理器可能不一樣。另外,許多DSP具有時鐘倍頻器或鎖相環,可以使用外部低頻時鐘產生片上所需的高頻時鐘信號。

DSP存儲器管理

DSP的性能受其對存儲器子系統的管理能力的影響。如前所述,MAC和其它一些信號處理功能是DSP器件信號處理的基本能力,快速MAC執行能力要求在每個指令周期從存儲器讀取一個指令字和兩個數據字。有多種方法實現這種讀取,包括多介面存儲器(允許在每個指令周期內對存儲器多次訪問)、分離指令和數據存儲器(“哈佛”結構及其派生類)以及指令緩存(允許從緩存讀取指令而不是存儲器,從而將存儲器空閑出來用作數據讀取)。圖2和圖3顯示了哈佛存儲器結構與很多微控制器採用的“馮·諾曼”結構的差別。
另外要注意所支持的存儲器空間的大小。許多定點DSP的主要目標市場是嵌入式應用系統,在這種應用中存儲器一般較小,所以這種DSP器件具有小到中等片上存儲器(4K到64K字左右),備有窄的外部數據匯流排。另外,絕大多數定點DSP的地址匯流排小於或等於16位,因而可外接的存儲器空間受到限制。
一些浮點DSP的片上存儲器很小,甚至沒有,但外部數據匯流排寬。例如TI公司的TMS320C30隻有6K片上存儲器,外部匯流排為24位,13位外部地址匯流排。而ADI的ADSP2-21060具有4Mb的片上存儲器,可以多種方式劃分為程序存儲器和數據存儲器。
選擇DSP時,需要根據具體應用對存儲空間大小以及對外部匯流排的要求來選擇。

DSP的選擇策略

DSP處理器的應用領域很廣,但實際上沒有一個處理器能完全滿足所有的或絕大多數應用需要,設計工程師在選擇處理器時需要根據性能、成本、集成度、開發的難易程度以及功耗等因素進行綜合考慮。
DSP器件按設計要求可以分為兩類。第一類,應用領域為廉價的、大規模嵌入式應用系統,如手機、磁碟驅動(DSP用作伺服電機控制)以及攜帶型數字音頻播放器等。在這些應用中價格和集成度是最重要的考慮因素。對於攜帶型電池供電的設備,功耗也是一個關鍵的因素。儘管這些應用常常需要開發運行於DSP的客戶應用軟體和外圍支持硬體,但易於開發的要求仍然是次要的因素,因為批量生產可以分攤開發成本,從而降低單位產品的開發成本。
另外一類是需要用複雜演演算法對大量數據進行處理的應用,例如聲納探測和地震探測等,也需要用DSP器件。該類設備的批量一般較小、演演算法要求苛刻、產品很大而且很複雜。所以設計工程師在選擇處理器時會盡量選擇性能最佳、易於開發並支持多處理器的DSP器件。有時,設計工程師更喜歡選用現成的開發板來開發系統而不是從零開始硬體和軟體設計,同時可以採用現成的功能庫文件開發應用軟體。
在實際設計時應根據具體的應用選擇合適的DSP。不同的DSP有不同的特點,適用於不同的應用,在選擇時可以遵循以下要點。

DSP開發的簡便性

對不同的應用來說,對開發簡便性的要求不一樣。對於研究和樣機的開發,一般要求系統工具能便於開發。而如果公司在開發下一代手機產品,成本是
最重要的因素,只要能降低最終產品的成本,一般他們願意承受很繁瑣的開發,採用複雜的開發工具(當然如果大大延遲了產品上市的時間則是另一回事)。
因此選擇DSP時需要考慮的因素有軟體開發工具(包括彙編、鏈接、模擬、調試、編譯、代碼庫以及實時操作系統等部分)、硬體工具(開發板和模擬機)和高級工具(例如基於框圖的代碼生成環境)。利用這些工具的設計過程如圖4所示。
選擇DSP器件時常有如何實現編程的問題。一般設計工程師選擇彙編語言或高級語言(如C或Ada),或兩者相結合的辦法。現在大部分的DSP程序採用彙編語言,由於編譯器產生的彙編代碼一般未經過優化,需要手動進行程序優化,降低程序代碼大小和使流程更合理,進一步加快程序的執行速度。這樣的工作對於消費類電子產品很有意義,因為通過代碼的優化能彌補DSP性能的不足。
使用高級語言編譯器的設計工程師會發現,浮點DSP編譯器的執行效果比定點DSP好,這有幾個原因:首先,多數的高級語言本身並不支持小數演演算法;其次,浮點處理器一般比定點處理器具有更規則的指令,指令限制少,更適合編譯器處理;第三,由於浮點處理器支持更大的存儲器,能提供足夠的空間。編譯器產生的代碼一般比手動生成的代碼更大。
不管是用高級語言還是彙編語言實現編程,都必須注意調試和硬體模擬工具的使用,因為很大一部分的開發時間會花在這裡。幾乎所有的生產商都提供指令集模擬器,在硬體完成之前,採用指令集模擬器對軟體調試很有幫助。如果所用的是高級語言,對高級語言調試器功能進行評估很重要,包括能否與模擬機和/或硬體模擬器一起運行等性能。
大多數DSP銷售商提供硬體模擬工具,現在許多處理器具有片上調試/模擬功能,通過採用IEEE1149.1JTAG標準的串列介面訪問。該串列介面允許基於掃描的模擬,即程序員通過該介面載入斷點,然後通過掃描處理器內部寄存器來查看處理器到達斷點后寄存器的內容並進行修改。
很多的生產商都可以提供現成的DSP開發系統板。在硬體沒有開發完成之前可用開發板實現軟體實時運行調試,這樣可以提高最終產品的可製造性。對於一些小批量系統甚至可以用開發板作為最終產品電路板。
支持多處理器
在某些數據計算量很大的應用中,經常要求使用多個DSP處理器。在這種情況下,多處理器互連和互連性能(關於相互間通信流量、開銷和時間延遲)成為重要的考慮因素。如ADI的ADSP-2106X系列提供了簡化多處理器系統設計的專用硬體。
電源管理和功耗
DSP器件越來越多地應用在攜帶型產品中,在這些應用中功耗是一個重要的考慮因素,因而DSP生產商盡量在產品內部加入電源管理並降低工作電壓以減小系統的功耗。在某些DSP器件中的電源管理功能包括:
a.降低工作電壓:許多生產商提供低電壓DSP版本(3.3V,2.5V,或1.8V),這種處理器在相同的時鐘下功耗遠遠低於5V供電的同類產品。
b.“休眠”或“空閑”模式:絕大多數處理器具有關斷處理器部分時鐘的功能,降低功耗。在某些情況下,非屏蔽的中斷信號可以將處理器從“休眠”模式下恢復,而在另外一些情況下,只有設定的幾個外部中斷才能喚醒處理器。有些處理器可以提供不同省電功能和時延的多個“休眠”模式。
c.可編程時鐘分頻器:某些DSP允許在軟體控制下改變處理器時鐘,以便在某個特定任務時使用最低時鐘頻率來降低功耗。
d.外圍控制:一些DSP器件允許程序停止系統未用到的外圍電路的工作。
不管電源管理特性怎麼樣,設計工程師要獲得優秀的省電設計很困難,因為DSP的功耗隨所執行的指令不同而不同。多數生產商所提供的功耗指標為典型值或最大值,而TI公司給出的指標是一個例外,該公司的應用實例中詳細地說明了在執行不同指令和不同配置下的功耗。
成本因素
在滿足設計要求條件下要盡量使用低成本DSP,即使這種DSP編程難度很大而且靈活性差。在處理器系列中,越便宜的處理器功能越少,片上存儲器也越小,性能也比價格高的處理器差。
封裝不同的DSP器件價格也存在差別。例如,PQFP和TQFP封裝比PGA封裝便宜得多。
在考慮到成本時要切記兩點。首先,處理器的價格在持續下跌;第二點,價格還依賴於批量,如10,000片的單價可能會比1,000片的單價便宜很多。

DSP的特點

DSP處理器和諸如英特爾、奔騰或Power
PC的通用處理器(GPPs)有很大的區別,這些區別產生於DSPs的結構和指令是專門針對信號處理而設計和開發的,它具有以下特點。
·硬體乘法累加操作(MACs)
為了有效完成諸如信號濾波的乘法累加運算,處理器必須進行有效的乘法操作。GPPs起初並不是為繁重的乘法操作設計的,把DSPs同早期的GPPs區別開來的第一個重大技術改進就是添加了能夠進行單周期乘法操作的專門硬體和明確的MAC指令。
傳統的GPPs使用馮.諾曼存儲結構,在這種結構中,有一個存儲空間通過兩條匯流排(一條地址匯流排和一條數據匯流排)連接到處理器內核,這種結構不能滿足MAC必須在一個指令周期中對存儲器進行四次訪門的要求。DSPs一般使用哈佛結構,在哈佛結構中,有兩個存儲空間:程序存儲空間和數據存儲空間。處理器內核通過兩套匯流排與這些存儲空間相連,允許對存儲器同時進行兩訪問,這種安排使處理器的帶寬加倍。在哈佛結構中,有時通過增加第二個數據存儲空間和匯流排來實現更大的存儲帶寬。現代高性能GPPs通常具有兩個片上超高速緩衝存儲器的一個存放數據,一個存放指令。從理論的角度上講,這種雙重片上高速緩存與匯流排連接等同於哈佛結構,但是,GPPs使用控制邏輯來確定哪些數據和指令字駐留在片上高速緩存里,這個過程通常不為程序設計者所見,而在DSPs里,程序設計者能明確的控制哪些數據和指令被存儲在片上的存儲單元或緩存中。
·零消耗循環控制
DSP演演算法的共同特徵:大部分處理時間花在執行包含在相對小循環內的少量指令上。因此,大部分DSP處理器具有零消耗循環控制的專門硬體。零消耗循環是指處理器不用花時間測試循環計數器的值就能執行一組指令的循環,硬體完成循環跳轉和循環計數器的衰減。有些DSPs還通過一條指令的超高速緩存實現高速的單指令循環。
·特殊定址模式
DSPs經常包含有專門的地址產生器,它能產生信號處理演演算法需要的特殊定址,如循環定址和位翻轉定址。循環定址對應於流水FIR濾波演演算法,位翻轉定址對應於FFT演演算法。
·執行時間的可預測性
大多數DSP應用都具有硬性實時要求,在每種情況下所有處理工作都必須在指定時間內完成。這種實時限制要求程序設計者確定每個樣本究竟需要多少時間或者在最壞情況下至少用去多少時間。DSPs執行程序的進程對程序員來說是透明的,因此很容易預測處理每項工作的執行時間。但是,對於高性能GPPs來說,由於大量超高速數據和程序緩存的使用,動態分配程序,因此執行時間的預測變得複雜和困難。
·具有豐富的外設
DSPs具有DMA、串口、Link口、定時器等外設。

DSP的性能及其評估標準

DSP處理器的性能可分為三個檔次:低成本、低性能DSPs,低能耗的中段DSPs和多樣化的高端DSPs。低成本性能的低端DSPs是工業界使用最廣泛的處理器。在這一範圍內的產品有:ADSP-21xx,TMS320C2xx,DSP560xx等系列,它們的運行速度一般為20~50MIPS,並在維持適當能量消耗和存儲容量的同時,提供優質的DSP性能。價格適中的DSP處理器,通過增加時鐘頻率,結合更為複雜的硬體來提高的性能,形成了DSPs的中段產品,如DSP16xx,TMS320C54x系列,它們的運行速度為100~150MIPS,通常用在無線電訊設備和高速解調器中,要求相對高的處理速度和低的能耗。高端DSPs由於被超高速處理需求的推動,其結構真正開始進行分類和向多樣化發展,有關結構下節詳述。高端DSPs的主頻達到150MHz以上,處理速度為1000MIPS以上,如TI的TMS320C6X系列、ADI的Tiger SHARC等。
評價處理器性能的指標有很多,最常用的是速度,但能耗和存儲器容量指標也很重要,特別是在嵌入系統應用上。鑒於DSPs的日益增多,系統設計者要想選出在給定應用設備上能夠提供最佳性能的處理器變得比較困難。過去,DSP系統設計者依靠MIPS或類似的亮度,來大概了解不同晶元提供的相對性能。不幸的是,隨著處理器技術的多樣化,像MIPS這樣的傳統量度越來越不準確,因為MIPS並不是實際測量性能。由於DSP應用程序的特徵之一是大部分的處理工作集中在程序的一部分(核心程序),因此可以用與信號處理相關的基準程序來測試評估DSP處理器。BDTI公司已完成成套的核心標準,並註冊了一種新型混合速度度量:BDTI分數。

現代DSP的結構

最近兩年,DSP處理器的更高性能由於不能從傳統結構中得到解決,因此提出了各種提高性能的策略。其中提高時鐘頻率似乎是有限的,最好的方法是提高并行性。提高操作并行性,可以由兩個途徑實現:提高每條指令執行的操作的數量,或者是提高每個指令周期中執行的指令的數量。這兩種并行要求產生了多種DSPs新結構。
增強型DSP
以前,DSP處理器使用複雜的、混合的指令集,使編程者可以把多個操作編碼在一條指令中。傳統上DSP處理器在一條指令周期只發射並執行一條指令。這種單流、複雜指令的方法使得DSP處理器獲得很強大的性能而無需大量的內存。
在保持DSP結構和上述指令集不變的情況下,要提高每個指令的工作量,其中的一個辦法是用額外的執行單元和增加數據通路。例如,一些高端的DSP有兩個乘法器,而不是一個。我們把使用這種方法的DSP叫做撛鑾啃統9媯模櫻袛,因為它們的結構與前一代的DSP相似,但性能在增加執行單元后大大增強了。當然,指令集必須也同時增強,這樣編程者才能在一條指令中指定更多的并行操作,以利用額外的硬體。增強型DSPs的例子有朗訊公司的DSP16000,ADI的ADSP2116x。增強型DSPs的優點是兼容性好,而且與較早的DSP具有相似的成本和功耗。缺點是結構複雜、指令複雜,進一步發展有限。
VLIW結構
如前所述,傳統上的DSP處理器使用複雜的混合指令,並在一條指令循環中只流出和執行一條指令。然而,最近有些DSP採用一種更RISC化的指令集,並且在一條指令周期執行多條指令,使用大的統一的寄存器堆。例如,Siemems的Carmel、Philips的Trimedia和TI的TMS320C62XX處理器族都使用了超長指令字(VLIW)結構。C62xx處理器每次取一個256位的指令包,把包解析為8個32位的指令,然後把它們引到其8個獨立的執行單元。在最好的情況下,C62xx同時執行8個指令在這種情況下達到了極高的MIPS率(如1600MIPS)。VLIW結構的優點是高性能、結構規整(潛在的易編程和好的目標編譯系統)。缺點是高功耗、代碼膨脹-需要寬的程序存儲器、新的編程/編譯困難(需跟蹤指令安排,易破壞流水線使性能下降)。
超標量體系結構
像VLIW處理器一樣,超標量體系結構并行地流出和執行多個指令。但跟VLIW處理器不同的是,超標量體系結構不清楚指定需要并行處理的指令,而是使用動態指令規劃,根據處理器可用的資源,數據依賴性和其他的因素來決定哪些指令要被同時執行。超標量體系結構已經長期用於高性能的通用處理器中,如Pentium和PowerPC。最近,ZSP公司開發出第一個商業的超標量體系結構的DSP
ZSP164xx。超標量結構的優點是性能有大的跨越、結構規整、代碼寬度沒有明顯增長。缺點是非常高的功耗、指令的動態安排使代碼優化困難。
SIMD結構
單指令多數據流(SIMD)處理器把輸入的長的數據分解為多個較短的數據,然後由單指令并行地操作,從而提高處理海量、可分解數據的能力。該技術能大幅度地提高在多媒體和信號處理中大量使用的一些矢量操作的計算速度,如坐標變換和旋轉。
通用處理器SIMD增強的兩個例子是Pentium的MMX擴展和PowerPC族的AltiVec擴展。simd在一些高性能的DSP處理器中也有應用。例如,DSP16000在其資料庫中支持有限的SIMD風格的操作,而Analog
Devices最近推出了有名的SHARC的新一代DSP處理器,進行了SIMD能力的擴展。SIMD結構由於使匯流排、數據通道等資源充分使用,並無需改變信號處理(含圖象、語音)演演算法的基本結構,因此SIMD結構使用越來越普遍。SIMD結構遇到的問題是演演算法、數據結構必須滿足數據并行處理的要求,為了加速,循環常常需要被拆開,處理數據需要重新安排調整。通常SIMD僅支持定點運算。
DSP/微控制器的混合結構
許多的應用需要以控制為主的軟體和DSP軟體的混合。一個明顯的例子是數字蜂窩電話,因為其中有監控和語音處理的工作。一般地,微處理器在控制上能提供良好的性能而在DSP性能上則很糟,專用的DSP處理器的特性則剛好相反。因此,最近有一些微處理器產商開始提供DSP增強版本的微處理器。用單處理器完成兩種軟體的任務是很有吸引力的,因為其可以潛在地提供簡化設計,節省版面空間,降低總功耗,降低系統成本等。DSP和微處理器結合的方法有:
·在一個結上集成多種處理器,如MotorolaDSP5665x
·DSP作為協處理器,如ARMPiccolo
·DSP核移值到已有的微處理器,如SH-DSP
·微控制器與已有的DSP集成在一起,如TMS320C27xx
·全部新的設計,如TriCore
隨著對DSP能力需求的提高,DSP處理器結構正在進行新的和革新的設計,DSP、MCU、CPU的結構優點相互借用。

DSP的發展趨勢

DSP處理器發展的趨勢是結構多樣化,集成單片化用戶化,開發工具更完善,評價體系更全面更專業。
VLIW結構、超標量體系結構和DSP/MCU混合處理器是DSPs結構發展的新潮流。VLIW和超標量結構能夠獲得很高的處理性能。DSP/MCU混合可以簡化應用系統設計,降低體積和成本。高性能通用處理器(GPPs)借用了DSPs的許多結構優點,其浮點處理速度比高檔DSPs還要快。高性能GPPs一般時鐘頻率為200~500MHz,具有超標量、SIMD結構,單周期乘法操作,好的存儲器帶寬,轉移預測功能,因此GPPs正在涉足DSP領域。但由於GPPs缺乏實時可預測性,優化DSP代碼困難,有限的DSP工具支持,高功耗等問題,因此GPPs目前在DSP中的應用還有限。但瞄準嵌入系統應用的高性能GPPs與DSPs進行混合,形成專用的嵌入GPPs,如Hitachi的SH-DSP,ARM的Piccolo,Siemens的TriCore。嵌入GPPs保留原有的高性能,並加強DSP實時預測、控制等方面的能力,與專用DSP處理器形成了對照。
在DSPs綜合集成方面,處理器核和快速用戶可定製能力是重要的。預計在最近幾年內將出現和流行:用戶可定製DSPs,塊組建DSPs,可編程整數DSPs,DSPs化現場可編程門陣列(FPGAs),更專用化的DSPs,多媒體DSPs等。更令人鼓舞的是未來DSP處理器將集成DSP處理器核,微控制器,存儲器RAM和ROM,串列口,模數轉換器,數模轉換器,用戶定義數字電路,用戶定義模擬電路等,因此DSP處理系統一般將不再是若干印製板(如信號調理板,A/D板,D/A板,介面定時板等)組成的大系統。
由於DSPS結構的多樣化,DSPS性能測試將變得更加困難,MIPS、MOPS、MFLOPS、BOPS等指標將越來越不能準確反映DSPS的性能,因此需要更細更專業化的測試評價標準。對具體應用來說,某些單項功能測試結果,可能顯得更重要。
隨著DSPs性能的提高,開發工具可能比處理器結構將更重要,因為只有有效的開發工具,才能使處理器得到普遍使用,並使性能充分發揮。片上Debug是實時調試的最好手段,它將採用與JTAG兼容的Debug口。C編譯器的效率仍然是重點,如何方便容易地進行有效代碼開發是關鍵。指令軟體模擬器顯得更重要,更精確的指令軟體模擬器將得到開發。多類型DSP調試開發工具將混合集成在一起。DSPs開發工具將是一個充滿機遇和挑戰的領域。
DSP處理器存在兩種發展趨勢:一是DSP應用越來越多,如手機和攜帶型音頻播放器等。DSP將集成更多功能,如A/D轉換、LCD控制器等,系統成本和器件數將會大為降低。另一個趨勢是將DSP作為IP出售,如億恆科技公司的Camel和TriCore內核。隨著EDA工具的不斷成熟,系統設計工程師將更容易地修改DSP內核,加入用戶專用外圍電路以實現更專業化、更低成本的DSP解決方案。
80年代還屬於少數人研究的數字信號處理(DSP),進入90年代以來,已逐漸成為人們最常用的工程術語之一。處理器應用廣泛的原因在於,處理器的製造技術發展得極為先進,使處理器的成本下降到這一水平:它可用在消費品和其它對成本敏感的系統中;處理器的處理速度上升到這一水平:它可滿足大部分高速實時信號處理的需求。在產品中越來越多地使用DSP處理器,加劇了對更快、更便宜、更節省能量的DSP處理器的開發和迅速發展。
DSP處理器(DSPs)的品種越來越繁多,除了大家熟知的四大DSPs產商:TexasInstruments(德州儀器)公司、Lucent Technologies(朗訊技術)公司、Analog
Devies(模擬設備)公司和Motorola(摩托羅拉)公司,大約還有80家DSPs產商。它們生產的DSPs主要用於特殊功能的設備,如數據機、MPEG解碼器、硬碟驅動器等。DSP處理器可分為兩大類:定點DSPs和浮點DSPs。定點DSPs發展迅速,品種最多,處理速度為20~2000MIPS。浮點DSPs基本由TI和AD公司壟斷,處理速度40~1000MFLOPS。DSPs的性能已形成低、中、高三檔,高端產品處理器結構發生了深刻的變化,形成了多樣化的趨勢。