DSP技術(shù)目前在嵌入式工程中得到了廣泛的應(yīng)用,相比較主微控制器MCU來說,DSP主要是起到一個計(jì)算的從屬作用。
首先我們從DSP和MCU的典型功能入手,來看一下這兩者之間微妙的區(qū)別。
在工作應(yīng)用方面,使用了DSP技術(shù)的數(shù)字處理器可以在一單個時(shí)鐘周期內(nèi)盡可能完成多個乘法和累加的快速操作。為了這一點(diǎn),指令的操作代碼通常是可變的超長的指令字(VLIW)。DSP也適于工作在緊密、高效的環(huán)路中。另外,為了達(dá)到性能指標(biāo)通常需要編寫優(yōu)化的匯編代碼。由于DSP的算法程序一般裝在小容量、短等待時(shí)間的內(nèi)置存儲器中,所以代碼密度通常來說也不是什么大問題。
看完了DSP的典型功能,我們再來看一下MCU的功能特性。在日常工作過程中,MCU主要用于完成控制功能,典型的MCU應(yīng)用包括許多條件操作,在程序流程中頻繁地跳轉(zhuǎn)。通常使用C或者C++語言編寫程序。因此,代碼密度在MCU的工作運(yùn)行中就顯得極為重要,它將根據(jù)編譯代碼的長度來評估算法。
存儲器系統(tǒng)是基于高速緩存從而允許該系統(tǒng)設(shè)計(jì)工程師用較長等待時(shí)間從較大的存儲器中調(diào)用較大程序。利用基于高速緩存系統(tǒng),程序員不需要考慮如何以及何時(shí)將指令輸入到內(nèi)核去執(zhí)行。
由上文的介紹中我們可以看到,無論是DSP還是MCU,在功能和算法方面都有自己獨(dú)特的優(yōu)勢,都是不可缺少的。那么,有沒有一種能兼具兩者優(yōu)點(diǎn)處理器呢?答案是肯定的。統(tǒng)一的DSP和MCU兼?zhèn)鋬烧叩膬?yōu)點(diǎn),其指令集由16bit、32bit和64bit操作碼組成,但是由于最常用的指令采用16 bit編碼,所以編譯代碼密度大小與那些流行的MCU相同。
另外,它包括一個存儲器保護(hù)功能以及指令高速緩存和數(shù)據(jù)高速緩存,作為整個存儲器管理單元(MMU)的一部分。此外,容易提供一套完整的C語言開發(fā)工具,提供可選匯編語言或者全部匯編語言適合算法優(yōu)化的編程。
結(jié)語
目前我國的供貨商已經(jīng)開始采用能夠?qū)SP技術(shù)和MCU進(jìn)行統(tǒng)一的控制器,這種新型的控制器可以同時(shí)具備兩者的優(yōu)勢,在開發(fā)工具選擇和編程管理方面也更加容易操作,更受到工程師的青睞。
相關(guān)閱讀:
電動汽車應(yīng)用:MCU在改善DC/DC變壓器輸出上幫了大忙!
名廠分享:如何使用IDE降低MCU功耗?
犀利視角:利用小型MCU即可實(shí)現(xiàn)LED照明的色彩控制