DSP(digital singnal processor, digital singnal processing)是一種獨特的微處理器,是以數位信號來處理大量資訊的器件。其工作原理是接收類比信號,轉換為0或1的數位信號,再對數位信號進行修改、刪除、強化,並在其他系統晶片中把數位資料解譯回類比資料或實際環境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數以千萬條複雜指令程式,源源超過通用微處理器,是數位化電子世界中日益重要的電腦晶片。它的強大資料處理能力和高運行速度,是最值得稱道的兩大特色。
DSP晶片,也稱數位信號處理器,是一種特別適合於進行數位信號處理運算的微處理器具,其主機應用是即時快速地實現各種數位信號處理演算法。根據數位信號處理的要求,DSP晶片一般具有如下主要特點:
(1)在一個指令週期內可完成一次乘法和一次加法; (2)程式和資料空間分開,可以同時訪問指令和資料; (3)片內具有快速RAM,通常可通過獨立的資料匯流排在兩塊中同時訪問; (4)具有低開銷或無開銷迴圈及跳轉的硬體支援; (5)快速的中斷處理和硬體I/O支援; (6)具有在單週期內操作的多個硬體位址產生器; (7)可以並行執行多個操作; (8)支援流水線操作,使取指、解碼和執行等操作可以重疊執行。
DSP技術課程是由電子科技大學彭啟琮教授講授的,教材也是有彭啟琮教授編寫的,1-3講,主要講的是DSP技術的應用,4-8講是對信號與系統及數字信號處理的複習,以後幾講是DSP硬件描述,及實例介紹.
彭啟琮教授以其淵博的學識及豐富的教學經驗,對這們課程的講解深入淺出,本來是一門複雜枯燥的課程,他確能娓娓道來.不但講授了高深的理論,更聯繫了實際的應用. 數據運算指令
數位信號的處理可由通用微處理器完成。可能的優化為:
數據運算指令
使用飽和算法,在這種方式中,會產生溢出的運算將累積至暫存器可容納的最大(或最小)值,而不是按環繞方式(環繞方式是很多通用CPU採取的方式。在環繞方式中,暫存器的數值到達最大值後再加一則會繞回到最小值;而使用飽和算法時則不會發生這種環繞,運算結果仍將保持為最大值)。有些情況下可使用不同的粘滯位運算模式。 使用乘積累加(MAC)運算,這會提高各種矩陣運算的效率(例如卷積運算、點積運算、乃至矩陣多項式的求值運算;參看Horner scheme和積和熔加運算)。由於在許多DSP中都必然地使用了單週期的MAC部件,因此也自然沿襲了下面所述的許多性質(尤其是哈佛結構和指令流水線)。 在使用同餘定址方式操作循環緩衝器、以及在使用逆位序定址模式處理快速傅立葉變換交叉參照時,都可使用專門的指令實現。
程式流程
使用深層流水線技術,這種情況下,因錯誤的預測產生的跳轉會造成更大的(效率)成本。 使用通過動態表或硬編碼的零開銷循環實現的分支預測。為減少執行高頻度的內層循環時跳轉造成的(效率)影響,有些處理器提供了這個特性。該技術包括兩種類型的操作:單指令的重複操作和多指令的循環操作。 預取指令使用指令流水線方式。 流水線作業方式可減少總體的處理時間,增加系統的產出效率。 流水線可以分為若干層級。
|