DSP概述
DSP(digital signal processor)是一種獨特的微處理器,有自己的完整指令系統,是以數字信號來處理大量信息的器件。其最大特點是內部有專用的硬件乘法器和哈佛總線結構對大量的數字信號處理的速度快。一個數字信號處理器在一塊不大的芯片內包括有控制單元、運算單元、各種寄存器以及一定數量的存儲單元等等,在其外圍還可以連接若干存儲器,并可以與一定數量的外部設備互相通信,有軟、硬件的全面功能,本身就是一個微型計算機。
DSP采用的是哈佛設計,即數據總線和地址總線分開,使程序和數據分別存儲在兩個分開的空間,允許取指令和執行指令完全重疊。也就是說在執行上一條指令的同時就可取出下一條指令,并進行譯碼,這大大的提高了微處理器的速度。另外還允許在程序空間和數據空間之間進行傳輸,因為增加了器件的靈活性。
當今的數字化時代背景下,DSP己成為通信、計算機、消費類電子產品等領域的基礎器件。
根據數字信號處理的要求,DSP芯片一般具有如下的一些主要特點:
(1) 在一個指令周期內可完成一次乘法和一次加法。
(2) 程序和數據空間分開,可以同時訪問指令和數據。
(3) 片內具有快速RAM,通常可通過獨立的數據總線在兩塊中同時訪問。
(4) 具有低開銷或無開銷循環及跳轉的硬件支持。
(5) 快速的中斷處理和硬件I/O支持。
(6) 具有在單周期內操作的多個硬件地址產生器。
(7) 可以并行執行多個操作。
(8) 支持流水線操作,使取指、譯碼和執行等操作可以重疊執行。
與通用微處理器相比,DSP芯片的其他通用功能相對較弱些。
DSP 芯片的誕生過程
DSP 芯片的誕生是時代所需。20世紀60年代以來,隨著計算機和信息技術的飛速發展,數字信號處理技術應運而生并得到迅速的發展。在 DSP 芯片出現之前數字信號處理只能依靠微處理器來完成。但由于微處理器較低的處理速度不快,根本就無法滿足越來越大的信息量的高速實時要求。
上世紀 70 年代,DSP芯片的理論和算法基礎已成熟。但那時的DSP僅僅停留在教科書上,即使是研制出來的 DSP 系統也是由分立元件組成的,其應用領域僅局限于軍事、航空航天部門。
1978 年, AMI 公司發布世界上第一個單片 DSP 芯片 S2811,但沒有現代 DSP芯片所必須有的硬件乘法器;
1979 年, 美國 Intel 公司發布的商用可編程器件 2920 是 DSP 芯片的一個主要里程碑,但其依然沒有硬件乘法器;
1980 年,日本 NEC 公司推出的 MPD7720 是第一個具有硬件乘法器的商用 DSP芯片,從而被認為是第一塊單片 DSP 器件;
1982 年世界上誕生了第一代 DSP 芯片 TMS32010 及其系列產品。這種 DSP 器件采用微米工藝 NMOS 技術制作,雖功耗和尺寸稍大,但運算速度卻比微處理器快了幾十倍。
DSP 芯片的問世是個里程碑,它標志著 DSP 應用系統由大型系統向小型化邁進了一大步。至 80 年代中期,隨著 CMOS 工藝的 DSP 芯片應運而生,其存儲容量和運算速度都得到成倍提高,成為語音處理、圖像硬件處理技術的基礎。
80 年代后期,第三代 DSP 芯片問世,運算速度進一步提高,其應用范圍逐步擴大到通信、計算機領域;
90 年代 DSP 發展最快,相繼出現了第四代和第五代 DSP 芯片。第五代與第四代相比系統集成度更高,將 DSP 芯核及外圍元件綜合集成在單一芯片上。
進入 21 世紀后,第六代 DSP 芯片橫空出世。第六代芯片在性能上全面碾壓第五代芯片,同時基于商業目的的不同發展出了諸多個性化的分支,并開始逐漸拓展新的領域。
DSP 芯片的應用領域
如今,各種各樣的DSP器件已相當豐富。大大小小封裝形式的DSP器件,已廣泛應用于各種產品的生產領域,而且DSP的應用領域仍在不斷地擴大,發展迅速異常。
DSP芯片強調數字信號處理的實時性。DSP作為數字信號處理器將模擬信號轉換成數字信號,用于專用處理器的高速實時處理。它具有高速,靈活,可編程,低功耗的界面功能,在圖形圖像處理,語音處理,信號處理等通信領域起到越來越重要的作用。
根據美國的權威資訊公司統計,目前 DSP 芯片在市場上應用最多的是通信領域,其次是計算機領域。
DSP芯片的應用領域
1)DSP芯片在多媒體通信領域的應用。
媒體數據傳輸產生的信息量是巨大的,多媒體網絡終端在整個過程中需要對獲取的信息量進行快速分析和處理,因此 DSP 被運用在語音編碼,圖像壓縮和減少語音通信上。如今 DSP 對于語音解碼計算產生實時效果,設計協議要求已經成為最基本的一條國際標準。
2)DSP芯片在工業控制領域的應用。
在工業控制領域, 工業機器人被廣泛應用,對機器人控制系統的性能要求也越來越高。機器人控制系統重中之重就是實時性,在完成一個動作的同時會產生較多的數據和計算處理,這里可以采用高性能的 DSP。DSP通過應用到機器人的控制系統后,充分利用自身的實時計算速度特性,使得機器人系統可以快速處理問題,隨著不斷提高 DSP 數字信號芯片速度,在系統中容易構成并行處理網絡,大大提高控制系統的性能,使得機器人系統得到更為廣泛的發展。
3)DSP芯片在儀器儀表領域的應用。
DSP 豐富的片內資源可以大大簡化儀器儀表的硬件電儀路,實現儀器儀表的 SOC 設計。器儀表的測量精度和速度是一項重要的指標,使用 DSP 芯片開發產品可使這兩項指標大大提高。例如 TI 公司的 TMS320F2810 具有高效的 32 位 CPU 內核,12 位 A/D 轉換器,豐富的片上存儲器和靈活的指揮系統,為高精密儀器搭建了廣闊的平臺。高精密儀器現在已經發展成為 DSP 的一個重要應用,正處于快速傳播時期,將推動產業的技術創新。
4)DSP芯片在汽車安全與無人駕駛領域的應用。
汽車電子系統日益興旺發達起來,諸如裝設紅外線和毫米波雷達,將需用 DSP 進行分析。如今,汽車愈來愈多,防沖撞系統已成為研究熱點。而且,利用攝像機拍攝的圖像數據需要經過 DSP 處理,才能在駕駛系統里顯示出來,供駕駛人員參考。
5)DSP芯片在軍事領域的應用。
DSP 的功耗低、體積小、實時性反應速度都是武器裝備中特別需要的。如機載空空導彈,在有限的體積內裝有紅外探測儀和相應的 DSP信號處理器等部分,完成目標的自動鎖定與跟蹤。先進戰斗機上裝備的目視瞄準器和步兵個人攜帶的頭盔式微光儀,需用 DSP 技術完成圖像的濾波與增強,智能化目標搜索捕獲。DSP 技術還用于自動火炮控制、巡航導彈、預警飛機、相控陣天線等雷達數字信號處理中。
未來DSP技術將向以下幾個方向繼續發展:
1)DSP芯核集成度越來越高。
縮小 DSP 芯片尺寸一直是 DSP 技術的發展趨勢,當前使用較多的是基于 RISC 結構,隨著新工藝技術的引入,越來越多的制造商開始改進DSP 芯核,并且把多個 DSP 芯核、 MPU 芯核以及外圍的電路單元集成在一個芯片上,實現了 DSP 系統級的集成電路。
2)可編程DSP芯片將是未來主導產品。
隨著個性化發展的需要, DSP 的可編程化為生產廠商提供了更多靈活性,滿足廠家在同一個 DSP 芯片上開發出更多不同型號特征的系列產品,也使得廣大用戶對于 DSP 的升級換代。例如冰箱、洗衣機,這些原來裝有微控制器的家電如今已換成可編程 DSP 來進行大功率電機控制。
3)定點DSP占據主流。
目前,市場上所銷售的 DSP 器件中,占據主流產品的依然是16 位的定點可編程 DSP 器件,隨著 DSP 定點運算器件成本的不斷低,能耗越來越小的優勢日漸明顯,未來定點 DSP 芯片仍將是市場的主角。
DSP芯片的分類
DSP的芯片可以按照以下的三種方式進行分類。
(1)按基礎特性分
這是根據DSP芯片的工作時鐘和指令類型來分類的。如果DSP芯片在某時鐘頻率范圍內的任何頻率上能正常工作,除計算速度有變化外,沒有性能的下降,這類DSP芯片一般稱之為靜態DSP芯片。
如果有兩種或兩種以上的DSP芯片,它們的指令集和相應的機器代碼機管腳結構相互兼容,則這類DSP芯片稱之為一致性的DSP芯片。
(2)按數據格式分
這是根據DSP芯片工作的數據格式來分類的。數據以定點格式工作的DSP芯片稱之為定點DSP芯片。以浮點格式工作的稱為DSP芯片。不同的浮點DSP芯片所采用的浮點格式不完全一樣,有的DSP芯片采用自定義的浮點格式,有的DSP芯片則采用IEEE的標準浮點格式。
(3)按用途分
按照DSP芯片的用途來分,可分為通用型DSP芯片和專用型的DSP芯片。通用型DSP芯片適合普通的DSP應用,如TI公司的一系列DSP芯片。專用型DSP芯片市為特定的DSP運算而設計,更適合特殊的運算,如數字濾波,卷積和FFT等。
DSP芯片的基本結構
DSP芯片的基本結構包括:
(1)哈佛結構。哈佛結構的主要特點是將程序和數據存儲在不同的存儲空間中,即程序存儲器和數據存儲器是兩個相互獨立的存儲器,每個存儲器獨立編址,獨立訪問。與兩個存儲器相對應的是系統中設置了程序總線和數據總線,從而使數據的吞吐率提高了一倍。由于程序和存儲器在兩個分開的空間中,因此取指和執行能完全重疊。
(2)流水線操作。流水線與哈佛結構相關,DSP芯片廣泛采用流水線以減少指令執行的時間,從而增強了處理器的處理能力。處理器可以并行處理二到四條指令,每條指令處于流水線的不同階段。
(3)專用的硬件乘法器。乘法速度越快,DSP處理器的性能越高。由于具有專用的應用乘法器,乘法可在一個指令周期內完成。
(4)特殊的DSP指令。特殊的DSP指令DSP芯片是采用特殊的指令。
(5)快速的指令周期。快速的指令周期哈佛結構、流水線操作、專用的硬件乘法器、特殊的DSP指令再加上集成電路的優化設計可使DSP芯片的指令周期在200ns以下。
DSP系統的特點
數字信號處理系統是以數字信號處理為基礎,因此具有數字處理的全部特點:
(1)接口方便。DSP系統與其它以現代數字技術為基礎的系統或設備都是相互兼容,這樣的系統接口以實現某種功能要比模擬系統與這些系統接口要容易的多。
(2)編程方便。DSP系統種的可編程DSP芯片可使設計人員在開發過程中靈活方便地對軟件進行修改和升級。
(3)穩定性好。DSP系統以數字處理為基礎,受環境溫度以及噪聲的影響較小,可靠性高。
(4)精度高。16位數字系統可以達到的精度。
(5)可重復性好。模擬系統的性能受元器件參數性能變化比較大,而數字系統基本上不受影響,因此數字系統便于測試,調試和大規模生產。
(6)集成方便。DSP系統中的數字部件有高度的規范性,便于大規模集成。
定點DSP和浮點DSP的區別
一般來說,定點DSP處理器具有速度快,功耗低,價格便宜的特點;而浮點DSP處理器則計算精確,動態范圍大,速度快,易于編程,功耗大,價格高。
而它們的區別,還可以從各方面去比較。
1、宏觀上
從宏觀上講,浮點DSP比定點DSP的動態范圍大得多。定點運算中,程序員必須時刻關注溢出的發生,為了防止溢出,要么不斷進行移位定標,要么做截尾。前者耗費大量時間和空間,后者則帶來精度的損失。相反,浮點運算DSP擴大了動態范圍,提高了精度,節省了運算時間和存儲空間,因而大大減少了定標,移位和溢出檢查。
2、硬件上
單純從技術的角度來看,定點與浮點的區別主要在兩個方面,即硬件和軟件。硬件上的區別來自于:浮點DSP處理器具有浮點/整數乘法器,整數/浮點算術邏輯運算單元ALU,適合存放擴展精度的浮點結果的寄存器等。
3、軟件上
再看看在軟件開發上的不同之處,主要有浮點DSP編程的特點以及注意事項;定點DSP進行浮點運算時的定標,移位,檢測溢出操作。比較兩個浮點數時,永遠不要使用操作符==來判斷是否相等。即使比較兩個相同的數,還是可能有微小的舍入差別。甚至定義精確的0,也不是很安全,盡管C語言中有0的表示,永遠不要寫這樣的代碼(x==0),而應該寫成(fabs(x) < TINY),其中TINY定義為一個很小的值,也就是處理器的浮點格式舍入誤差。
4、應用實例
另外一個比較重要區別涉及應用場合對定點與浮點dsp處理器的選擇。設計師關心的是最后的系統性能、成本以及上市時間。
例如,在移動電視中,沒必要進行浮點處理。而在軍用雷達中,經常用到浮點處理器。
審核編輯:黃飛
?
評論
查看更多