DSP作為一種專(zhuān)用微處理器(MPU),可以盡可能快的速度來(lái)執(zhí)行少量非常特定的指令和操作。實(shí)現(xiàn)該功能的傳統(tǒng)方法是采用硬件模擬濾波器(而不是基于軟件的數(shù)字技術(shù))。信號(hào)處理能力的一個(gè)主要方面就是實(shí)時(shí)性能。
由于要求處理的輸入信號(hào)是用于諸如電話(huà)、電視、多媒體系統(tǒng)和CD播放機(jī)等用途的,因此必須在沒(méi)有任何延遲的情況下對(duì)其進(jìn)行快速處理。如果DSP不能以足夠快的速度進(jìn)行信號(hào)處理,那么這些應(yīng)用將失去實(shí)際意義。
當(dāng)初開(kāi)發(fā)MCU的目的是以犧牲某些性能為代價(jià),利用可編程性來(lái)提供大量的靈活性。所有可由DSP完成的操作均可由MCU(或MPU,它與MCU是同類(lèi)器件,只是少了集成的片上外圍元件)來(lái)完成。不同之處在于MCU的信號(hào)處理操作速度較慢,但它可對(duì)數(shù)據(jù)進(jìn)行許多其他類(lèi)型的處理。因此,采用MCU的應(yīng)用一般都有一個(gè)可能需要執(zhí)行若干不同類(lèi)型的任務(wù)(而不是那種DSP算法標(biāo)志性的重復(fù)性數(shù)字搗弄)的控制電路。
MCU被優(yōu)選用于完成一系列對(duì)來(lái)自各種信源的輸入數(shù)據(jù)的幾乎所有組合的邏輯、診斷和算術(shù)運(yùn)算,而DSP則在完成重復(fù)性的數(shù)字密集型任務(wù)方面具有很高的效率。
典型的DSP運(yùn)算
DSP所能高效執(zhí)行的重復(fù)性數(shù)字搗弄運(yùn)算主要是加法、乘法、延遲和陣列處理。圖2 示出了用于圖形和音頻處理的最常見(jiàn)的DSP運(yùn)算之一 —— 一種簡(jiǎn)單的有限脈沖響應(yīng)(FIR)濾波器。
圖1:數(shù)字信號(hào)控制器是微控制器和數(shù)字信號(hào)處理器的一種結(jié)合
對(duì)取自不同位置的數(shù)據(jù)進(jìn)行乘法和加法運(yùn)算,運(yùn)算結(jié)果存儲(chǔ)在一個(gè)臨時(shí)結(jié)果寄存器中。由于數(shù)據(jù)代表的是一個(gè)連續(xù)的信號(hào)流(如同一個(gè)模擬波形),因此被存儲(chǔ)在連續(xù)的存儲(chǔ)單元中。利用允許寄存器內(nèi)容(用于指出操作數(shù))自動(dòng)增加的尋址方式可對(duì)通常與這些數(shù)據(jù)一道使用的連續(xù)地址進(jìn)行高效處理。
通用DSP結(jié)構(gòu)被優(yōu)化,以實(shí)現(xiàn)這些簡(jiǎn)單操作的快速執(zhí)行,在一個(gè)周期里往往能夠執(zhí)行若干乘法和加法(MAC)運(yùn)算。
圖2:FIR濾波器是用于圖形和音頻處理的一種最常見(jiàn)的DSP運(yùn)算
DSP和MCU的性能
DSP和MCU的某些性能一直被認(rèn)為是它們所特有的,DSC則將它們統(tǒng)統(tǒng)納入其混合結(jié)構(gòu)中。這些特有性能的基本說(shuō)明如下。
DSP的第一個(gè)基本要求就是用于執(zhí)行MAC運(yùn)算的專(zhuān)用硬件,以及累加(結(jié)果)寄存器中用于防止一系列MAC運(yùn)算的結(jié)果溢出的保護(hù)位。許多傳統(tǒng)MCU也包含MAC指令,盡管無(wú)法和頂級(jí)的專(zhuān)用DSP的并行MAC運(yùn)算能力(在一個(gè)周期里可完成許多運(yùn)算)相提并論。