DSP微控制器技術(shù)介紹
DSP微控制器(DSP microcontroller是同時需要DSP技術(shù)的高效能與微控制器的低價位之應(yīng)用系統(tǒng)之最佳選擇。以往DSP以及微控制器的市場是互相分開且具有明顯區(qū)隔的:DSP代表高效能與高價位;而微控制器卻被視為高產(chǎn)量且低價位的產(chǎn)品。目前越來越多的客戶要求微控制器價位的DSP晶片,使得這兩個市場的區(qū)隔逐漸模煳。
如何以微控制器的低成本來實現(xiàn)高效能的DSP技術(shù)呢?有兩種方式,一是縮小晶片顆粒的大?。欢菧p少晶片封裝的接腳數(shù)目。透過縮小晶粒來減低成本的方式,某種程度上已經(jīng)透過次微米技術(shù)的使用而達成,盡管次微米技術(shù)并不是最尖端的技術(shù),但效能上仍維持良好的水準。另外,若晶片的架構(gòu)達到最佳化的程度,即使晶粒縮小了,也能夠保有一般標準但較昂貴晶片之重要功能。DSP微控制器之所以能夠降低晶片的封裝成本,大部份是因為此晶片彈性的I/O(輸入/輸出)架構(gòu)。另外透過系統(tǒng)成本與能源消耗的降低來減少成本的方式。
DSP微控制器成功地克服了傳統(tǒng)微控制器應(yīng)用系統(tǒng)因需使用DSP演算法所呈現(xiàn)的障礙,底下將會一一呈現(xiàn)這些障礙,并討論DSP微控制器為了克服這些障礙,在架構(gòu)上所持有的特殊設(shè)計。
SP與微控制器市場比較
文目前的市場中,以微控制器為主的應(yīng)用系統(tǒng),正面臨著對DSP演算法控制器逐漸增加的需求,因為DSP演算法所帶來效能的提升與新功能的增加,使得DSP演算法的應(yīng)用系統(tǒng)正在大量的增加,尤其是在磁條讀取機、來電顯示、馬達控制器、保全與玩具等應(yīng)用市場當中最為顯著。表一列舉了DSP技術(shù)較傳統(tǒng)的微控制器設(shè)計的優(yōu)越之處。
表一
除此之外,許多應(yīng)用系統(tǒng)使用的裝置中,包含了同時擁有DSP與微控制器核心技術(shù)的晶粒,如數(shù)位電話答錄機、無線電話機與光碟機等裝置即屬此類。
市場對成本降低的需求
第一顆DSP處理器是為了高規(guī)格的軍事應(yīng)用所開發(fā)的,而今日大多數(shù)的DSP應(yīng)用系統(tǒng)也跟隨著這種高規(guī)格的走向,將重點放在需要高科技、高效能的應(yīng)用市場。每顆DSP處理器的平均成本約在美金10元到50元之間,比起微控制器介于美金1至10元的單位平均成本來說,價位可以說是偏高。不過價格當然也會隨著需求量的大小而變化,而微控制器目標市場的特性就是需求量大,這種高需求量自然而然地就會造成制造成本的降低與成本效益的提升,進而降低微控制器的價格。
今日的消費性市場已對DSP處理器產(chǎn)生了大量的需求,而大多數(shù)的高價DSP處理器對量高的消費性市場來說是無法接受的,尤其是對于需要DSP演算法來增新產(chǎn)品功能的傳統(tǒng)微控制器應(yīng)用來說,將晶片價格維持在微控制器的價格范圍中,是一個很重要的訴求。DSP微控制器的架構(gòu),是為了迎合兩個相互沖突的需求–高效能與低成本–而設(shè)計,在提供DSP架構(gòu)優(yōu)點的同時,卻不犧牲原本微控制器的好處,所以DSP微控制器的優(yōu)勢之一,就是其晶片的價格維持在傳統(tǒng)微控制器的價格范圍內(nèi)。但是如何以微控制器的低價位來達到DSP技術(shù)的高效能呢?接下來將會討論如何將DSP微控制器的架構(gòu)最佳化,來獲得DSP技術(shù)所能提供的高效能,并同時降低傳統(tǒng)應(yīng)用DSP技術(shù)時所需的高成本。
縮小晶片顆粒
晶粒的縮小需要透過以下兩個方式來達成:一、使用更深層的次微米技術(shù)來縮小晶粒,二、使用更有效率的晶片架構(gòu)設(shè)計。然而,使用更深層的次微米技術(shù)來縮小晶粒并不一定會降低晶粒成本,因此我們需要選擇一種不像最尖端的深層次微米技術(shù)一樣昂貴,但卻能滿足高效能需求的技術(shù)。DSP微控制器一般使用0.8微米的制程技術(shù),同時提供高效能與低成本兩個優(yōu)勢。一旦選定了這個低成本的技術(shù),下一個考驗就是如何將晶片的架構(gòu)提升到最佳的狀態(tài),使該晶片不但擁有低價格,也保有傳統(tǒng)DSP晶片的主要功能。以下是幾個為了將DSP微控制器架構(gòu)最佳化,在晶片架構(gòu)上所做的決定:
乘法器/累加器運算
在DSP的核心功能之中,此功能所佔的晶粒面積比例最大,因此有效率地設(shè)計是非常重要的。DSP微控制器使用16位元的固點DSP運算法,兩個16位元的二進位制補數(shù)(two’s compliment)之乘積是一個31位元的二進位制補數(shù)(其中一位元為符號位元,剩下的30位元代表運算結(jié)果的二進位數(shù)值),而DSP微控制器架構(gòu)將運算結(jié)果的最右邊七個最低有效位元(LSBs)截掉,僅以24位元的二進位補數(shù)來表示運算的部份結(jié)果,這種部份表示法的目的是為了避免溢位的發(fā)生。
截掉這七個最低有效位元不會對運算結(jié)果造成極大的影響,且大多數(shù)的應(yīng)用都可以接受此24位元的部份結(jié)果所給予的精確度,而且在應(yīng)用需要使用31位元的運算結(jié)果的時候,可以使用雙精度運算法來運算。此設(shè)計不但滿足應(yīng)用的需求,在縮小晶粒方面的優(yōu)勢為此乘法/累加器使用較小的乘法器,在乘法器與累加器之間的資料匯流排從32位元減少到24位元,且累加器的大小也從32位元降到24位元。
多位元移位器(Barrel shifter)
另外一個也佔頗大晶粒面積的功能是一個16位元可程式化的多位元移位器,此移位器可支援16位元內(nèi)右移與左移的運算,而DSP微控制器只支援乘法器的一位元左/右移運算、無位移運算、或是三位元右移運算,決定捨棄既復雜又昂貴的多位元移位器,只使用簡單小型的移位器來縮小晶粒。而需要乘法器做多位元移位的時候,可以透過執(zhí)行多次左移指令的方式來完成。
其他為了縮小晶粒而捨棄的DSP處理器功能如下:
環(huán)境切換功能
遮蔽暫存器(Shadow Registers)與環(huán)境切換(Context Switching)等功能是用以加速對中斷的反應(yīng),但是因為環(huán)境切換功能對大多數(shù)的應(yīng)用來說并不重要,所以DSP微控制器并不支援此功能,不過缺少此功能所帶來的影響是對暫存器存取資料時所需的時間變得較長。
額外的算術(shù)與邏輯運算單元
一些高規(guī)格的DSP處理器中,使用額外的算術(shù)與邏輯運算單元(ALU)來獲得平行運算的加速效果,但是因為此功能對大多數(shù)應(yīng)用并不特別重要,所以DSP微控制器不支援此項功能。
硬體迴圈
使用DSP演算法的技術(shù),如有限脈沖回應(yīng)(FIR)及無限脈沖回應(yīng)(IIR)等數(shù)位濾波器,都需要使用硬體迴圈才能有效地運作,而DSP微控制器只支援部份迴圈,支援數(shù)目為二的冪數(shù)(2n)之硬體迴圈。
以兩個資料匯流排支援單一運算週期之乘法指令
一般DSP處理器只使用單一資料匯流排,另外有些DSP處理器也支援兩個分開的資料匯流排,用以支援單一運算週期的乘法、乘/加法或是乘/減法的運算指令。
降低封裝成本
晶粒的成本只是影響晶片成本的因素之一,另外一個因素就是封裝的成本。晶片接腳數(shù)的減少對降低晶片成本的影響極大,而且當晶粒成本已經(jīng)降低的時候,封裝的成本就顯得格外重要。晶片封裝的價格對整個晶片來說算是偏高的,所以對于在微控制器價格范圍內(nèi)的晶片來說,降低封裝的成本變得非常重要。
DSP微控制器擁有一個非常彈性的I/O架構(gòu)(見圖一與表二),若應(yīng)用對I/O的需求少于21個I/O接腳的時候,可以使用44-pin 的PLCC (塑料無鉛晶片承載封裝)封裝技術(shù),或是使用44-pin的PQFP封裝技術(shù);另外一些較復雜的應(yīng)用可能會需要高達40個I/O接腳,此時即可使用80-pin的PQFP封裝技術(shù)。這個彈性的I/O架構(gòu)最大的優(yōu)點是:既可以使用21個I/O接腳的應(yīng)用系統(tǒng),也可以使用80-pin的PQFP封裝技術(shù)。DSP微控制器的I/O架構(gòu)還提供了另外一個彈性設(shè)計,亦即特殊的I/O功能,例如:中斷、計數(shù)/計時器輸出或輸入、序列介面接腳與時脈等,與一般的I/O功能共同分享I/O接腳。因為當一些特殊的I/O功能未被使用的時候,這些接腳仍然可以被一般的I/O功能所利用,這種彈性的I/O架構(gòu),使得DSP微控制器的運作和微控制器晶片相似。
圖一
表二
降低系統(tǒng)成本
系統(tǒng)成本的降低可能比降低DSP晶片成本來得重要。除DSP處理器以外,系統(tǒng)成本還包含所有周邊裝置之成本,例如:輸出入埠、記憶體…等。
石英器時脈源與振盪器時脈源
盡管對微控制器來說,具有石英器(crystal)時脈源是很普遍的,但在DSP處理器上卻頗為少見。一般來說石英器比振盪器(oscillator)至少便宜1美金以上,因此支援石英器時脈源對降低系統(tǒng)成本來說是極為重要的。DSP微控制器支援較低價位的32 kHz石英器,另外使用一個鎖相迴路(PLL)將系統(tǒng)時脈從32 kHz提高至20 MHz。
為較低速的周邊裝置所設(shè)的等候狀態(tài)
DSP處理器運作的頻率高達20 MHz(20 MIPS),但為了降低系統(tǒng)成本,DSP處理器時常需要與價格較低而速度較慢的記憶體或其他低價低速的周邊裝置一起運作,因此DSP微控制器可將外部週邊裝置分別映射到外部暫存器的適當位置,并將其所需的等候狀態(tài)(wait-state insertion)的時間加入處理週期中。
單晶片系統(tǒng)整合
另外一個降低系統(tǒng)成本的方式是單一晶片系統(tǒng)整合,亦即將週邊的功能一同整合到控制器晶片上,以減去外部週邊裝置的成本。一般的DSP微控制器晶片就整合了以下的週邊功能:4通道,8位元的類比數(shù)位轉(zhuǎn)換器(A-D)、序列週邊介面(SPI)、兩個脈寬調(diào)變器(PWM)、三個一般用途的計時/計數(shù)器、兩個看門狗計時器(Watch-Dog Timers)、以及可程式化的鎖相迴路(PLL)。
類比數(shù)位轉(zhuǎn)換器的解析度
決定類比數(shù)位轉(zhuǎn)換器所需的解析度是非常重要的,而此解析度取決于系統(tǒng)要求的訊號雜訊比值(SNR),此值可用以下公式計算其概值:6*b - 1.24 分貝(dB),其中的b為類比數(shù)位轉(zhuǎn)換器為了提供系統(tǒng)要求的訊號雜訊比值所需之位元數(shù)。DSP微控制器有一個8位元的類比數(shù)位轉(zhuǎn)換器和具有支援12至13位元解析度的脈碼調(diào)變編解碼(PCM CODEC)介面。
降低能源消耗
許多微控制器與DSP的應(yīng)用系統(tǒng)都以電池為其能量來源,因此能源消耗量的降低也是很重要的。DSP微控制器以32 kHz 的石英器,加上可程式化鎖相迴路,將系統(tǒng)頻率提升至20 MHz,因為此鎖相迴路是可程式化的,所以能夠輕易地在4 MHz 與 20 MHz 的范圍內(nèi)調(diào)整系統(tǒng)時脈。表三列舉了不同的時脈模式所達之不同的能源降低程度,能源消耗量最低的是振盪器與電壓控制振盪器(VCO)都同時停止的時脈停止模式(stop clock mode);睡眠模式的回復可以透過中斷或使用者輸入的I/O接腳;而在DSP微控制器需要于省電模式下低速運作時,便可以使用32-kHz 的低速模式。
表三
與微控制器指令集的相似性
DSP微控制器的指令集與一般微控制器的指令集相似,同樣使用LD指令將資料移動于暫存器或暫存器指標之間,暫存器指標指向資料或程式的記憶體位址,此外它們的數(shù)學運算指令也相同;DSP和控制器的架構(gòu)以及8或16位元的處理器之間的不同在于:指令集無法完全相容。盡管如此,因為它們的指令集類似,可以讓具有開發(fā)微控制器應(yīng)用經(jīng)驗的軟體工程師,也能夠很輕易地開發(fā)DSP處理器的應(yīng)用軟體。
評論