DSP和MCU的區別

2021-06-18 02:34:20 字數 1928 閱讀 4520

mcu和dsp最近在製作電子類產品方面都應用廣泛,dsp在數字訊號處理、通訊領域應用較多,mcu在自動控制、智慧型訊號上應用廣泛。

處理器通常可以分為三大類,就是數字訊號處理器-dsp、微控制器-mcu,還有**處理器-cpu。為便於大家理解它們在應用中的差異,我們不妨作這樣的比喻:dsp好比是一次方程式賽車的引擎,追求的是高速高效;mcu好比是電單車引擎,追求的是靈巧便捷;cpu則好比是豪華家用車的引擎,追求的是面面俱到。當然dsp與mcu的融合將相應成輝,可以滿足更多更廣的應用需求。 

mcu的特點:

適合實時控制和操作任務

可**的執行週期

擅長中斷處理,特別是外部非同步事件

比較多的i/o功能,

程式較大

豐富的片上外設

dsp的特點:

適合處理實時連續的資料流;

針對多重密集演算法的數學引擎;

可觀的mips效能;

可**的執行時間;

適合處理小型和重複性的工作;

**體積小、晶元體積小等

考慮乙個數字訊號處理的例項,比如有限衝擊響應濾波器(fir)。用數學語言來說,fir濾波器是做一系列的點積。取乙個輸入量和乙個序數向量,在係數和輸入樣本的滑動視窗間作乘法,然後將所有的乘積加起來,形成乙個輸出樣本。

類似的運算在數字訊號處理過程中大量地重**生,使得為此設計的器件必須提供專門的支援,促成了了dsp器件與通用處理器(gpp)的分流:

1 對密集的乘法運算的支援

gpp不是設計來做密集乘法任務的,即使是一些現代的gpp,也要求多個指令週期來做一次乘法。而dsp處理器使用專門的硬體來實現單週期乘法。dsp處理器還增加了累加器暫存器來處理多個乘積的和。累加器暫存器通常比其他暫存器寬,增加稱為結果bits的額外bits來避免溢位。同時,為了充分體現專門的乘法-累加硬體的好處,幾乎所有的dsp的指令集都包含有顯式的mac指令。

2 儲存器結構

傳統上,gpp使用馮.諾依曼儲存器結構。這種結構中,只有乙個儲存器空間通過一組匯流排(乙個位址匯流排和乙個資料匯流排)連線到處理器核。通常,做一次乘法會發生4次儲存器訪問,用掉至少四個指令週期。

大多數dsp採用了哈佛結構,將儲存器空間劃分成兩個,分別儲存程式和資料。它們有兩組匯流排連線到處理器核,允許同時對它們進行訪問。這種安排將處理器存貯器的頻寬加倍,更重要的是同時為處理器核提供資料與指令。在這種布局下,dsp得以實現單週期的mac指令。

還有乙個問題,即現在典型的高效能gpp實際上已包含兩個片內快取記憶體,乙個是資料,乙個是指令,它們直接連線到處理器核,以加快執行時的訪問速度。從物理上說,這種片內的雙儲存器和匯流排的結構幾乎與哈佛結構的一樣了。然而從邏輯上說,兩者還是有重要的區別。

gpp使用控制邏輯來決定哪些資料和指令字儲存在片內的快取記憶體裡,其程式設計師並不加以指定(也可能根本不知道)。與此相反,dsp使用多個片記憶體儲器和多組匯流排來保證每個指令週期記憶體儲器的多次訪問。在使用dsp時,程式設計師要明確地控制哪些資料和指令要儲存在片記憶體儲器中。程式設計師在寫程式時,必須保證處理器能夠有效地使用其雙匯流排。

此外,dsp處理器幾乎都不具備資料快取記憶體。這是因為dsp的典型資料是資料流。也就是說,dsp處理器對每個資料樣本做計算後,就丟棄了,幾乎不再重複使用。

3 零開銷迴圈

如果了解到dsp演算法的乙個共同的特點,即大多數的處理時間是花在執行較小的迴圈上,也就容易理解,為什麼大多數的dsp都有專門的硬體,用於零開銷迴圈。所謂零開銷迴圈是指處理器在執行迴圈時,不用花時間去檢查迴圈計數器的值、條件轉移到迴圈的頂部、將迴圈計數器減1。

與此相反,gpp的迴圈使用軟體來實現。某些高效能的gpp使用轉移預報硬體,幾乎達到與硬體支援的零開銷迴圈同樣的效果。

4 定點計算

大多數dsp使用定點計算,而不是使用浮點。雖然dsp的應用必須十分注意數字的精確,用浮點來做應該容易的多,但是對dsp來說,廉價也是非常重要的。定點機器比起相應的浮點機器來要便宜(而且更快)。為了不使用浮點機器而又保證數字的準確,dsp處理器在指令集和硬體方面都支援飽和計算、捨入和移位。

DSP和RAM的區別

arm的系列從v3 v5 v7 v9 xscale,從thumb指令到arm指令 thumb arm也可同時實現 可以說遍布機會所有的領域,只要你接的 可以接受 其實許多arm並不是很貴的 微控制器所有的功能基本他都能實現,我就不用舉例子,特別是現在與各種rtos結合更是開發方便功能強大。dsp相對...

CPU MCU MPU及DSP的區別和介紹

cpu mcu mpu及dsp的區別 cpu central processing unit,處理器 發展出來三個分枝,乙個是dsp digital signal processing processor,數字訊號處理 另外兩個是mcu micro control unit,微控制器單元 和mpu ...

CPU 與 DSP 的區別

從表面上來看,dsp與標準微處理器有許多共同的地方 乙個以alu為核心的處理器 位址和資料匯流排 ram rom以及i o埠,從廣義上講,dsp 微處理器和微控制器 微控制器 等都屬於處理器,可以說dsp是一種cpu。但dsp和一般的cpu又不同 首先是體系結構 cpu是馮.諾伊曼結構的,而dsp有...