常見處理器MCU、MPU、DSP、FPGA等嵌入式處理器概念
文章推薦指數: 80 %
讀者可以簡單的認為,嵌入式微處理器MPU,通常執行Linux、Android等非實時作業系統,應用在高階應用市場,比如智慧手機、路由器等消費電子市場領域,而 ...
技術文章»常見處理器MCU、MPU、DSP、FPGA等嵌入式處理器概念
常見處理器MCU、MPU、DSP、FPGA等嵌入式處理器概念
2021-03-2706:00:02
前文中多次出現了MCU、MPU、DSP、FPGA等嵌入式處理器概念,很多初學者可能比較迷惑,下面將對這些概念進行簡單介紹。
MCU
微控制器(Micro-ControllerUnit,MCU),俗稱微控制器。
之所以稱之為微控制器(SingleChipMicrocomputer),是因為不同於其它處理器,它將CPU、RAM(隨機記憶體)、ROM(唯讀存器)、I/O、中斷系統、定時器等各種功能外設資源集中到一個晶片上。
這個晶片就是一個完整的微型計算機,只需要供電或加上極少的外圍電路即可工作。
常見的MCU有80C51系列微控制器、Atmel公司的AVR系列微控制器、Microchip公司的PIC系列微控制器、TI公司的MSP430系列微控制器、ST公司的STM32系列微控制器、NXP公司的LPC1700系列微控制器。
早期的MCU主要是8位元,後面發展出16位元,再到現在主流的已經是32位元。
此外,主頻不斷提高、ROM不斷增大、外設不斷增多,微控制器的應用領域和場合越來越大。
MPU
微處理器(Micro-ProcessorUnit,MPU)。
類似通用計算機的CPU,主要負責處理計算,需要外加RAM、Flash、電源等電路。
MCU和MPU的本質區別是因為應用場景的定位不同。
MPU注重通過相對強大的運算/處理能力,執行復雜多樣的大型程式,因此常需要外掛執行記憶體(RAM)、記憶體(Flash)等。
MCU注重功能較為單一、價格敏感的應用場景,不需要相對強大的運算/處理能力,更多的是對裝置管理/控制,因此不需要大容量的RAM、Flash來執行大型程式,於是將RAM、Flash全整合在一起,大家也就俗稱「微控制器」,如圖2.3.1所示。
如今,隨著技術的發展,市場及需求的變化,MPU和MCU的界限日趨模糊。
高階的32位元MCU主頻越來越高,已經反超低端MPU主頻,MCU也有外掛RAM和Flash的場景,依靠硬體結構去區分逐漸困難。
讀者可以簡單的認為,嵌入式微處理器MPU,通常執行Linux、Android等非實時作業系統,應用在高階應用市場,比如智慧手機、路由器等消費電子市場領域,而嵌入式微控制器MCU,常用執行裸機或實時性作業系統,應用在中、低端應用市場,比如家電控制領域、工業控制領域等。
DSP
DSP通常有兩個含義。
數位訊號處理(DigitalSignalProcessing,DSP),是一門學科技術,使用數值計算的方式對訊號進行加工處理的理論和技術。
數位訊號處理器(DigitalSignalProcessor,DSP),是一種專門用於數位訊號處理領域的微處理器晶片。
如圖2.3.2為TI公司的DSP晶片TMS320VC5509A。
DSP晶片為了達到快速處理數位訊號處理的目的,採用了許多特殊軟硬體結構。
首先是採用哈佛結構,將程式和資料分開,同時為處理器提供指令和資料。
然後採用多級流水線技術,在指令週期內可以執行更多指令。
加上專用的硬體乘法器、特殊的DSP指令,使得DSP晶片在計算處理上,遠超同主頻的MCU或MPU。
DSP晶片擁有強大的資料處理能力,在數位訊號處理領域,如調變/解調、資料加密/解密、圖形處理、數位濾波、音訊處理等計算密集型的場景廣泛應用。
FPGA
現場可程式化門陣列(Field-ProgrammableGateArray,FPGA),由可程式化互連連線的可設定邏輯塊(CLB)矩陣構成的半導體器件。
通俗地說,FPGA就是一個可以通過程式設計改變內部硬體結構,實現所需功能的晶片。
前面的MCU、DSP等都是硬體資源固定,只能通過修改軟體實現所需功能。
而FPGA是通過硬體描述語言或其它方式修改硬體,將FPGA變為CPU或專用晶片,來實現控制或演演算法。
因此,MCU、DSP能夠實現的功能,FPGA理論上都可以實現,反之則不一定。
如圖2.3.3為Xilinx公司的FPGA晶片XC3S400A。
FPGA主要有兩大優勢:高速和靈活。
FPGA使用硬體處理資料,採用並行和流水技術,多個模組之間可以同時並行執行。
FPGA可以根據現場情況設定器件功能,能夠在技術和需求變化時重新設定,實現系統優化升級。
在某些通訊領域,需要處理高速的通訊協定,同時通訊協定隨時都可能修改,不適合做成專門的晶片,FPGA的高速、靈活就便成了首選。
雖然FPGA功能強大,但實際工程專案中,還需考慮硬體成本、開發難度和市場需求等因素。
一些簡單的控制場合,儘管FPGA和MCU都能勝任,但MCU價格低廉和研發簡單,更划算。
【總結】
如今複雜的嵌入式系統往往是複合架構,比如「MPU+FPGA」、「MPU+DSP」、「MCU+FPGA」、「MCU+DSP」,甚至「MCU+MPU+FPGA+DSP」。
控制、顯示、通訊一般選擇MCU或MPU,通訊和資料處理演演算法選擇DSP,大量的資料處理和特定實現選擇FPGA。
MCU開發需要C語言基礎,然後學習各類資源、介面,再到RTOS;MPU通常執行Linux,需要Linux基礎、作業系統、網路程式設計等知識;DSP開發需要具備資料訊號處理演演算法的理論知識;FPGA開發需要了解高速介面或音/視處理演演算法等。
一般來說,MCU相對比較簡單,適合作為入門學習,待MCU學習完後,再結合實際情況選擇深入學習方向。
嵌入式Linux視訊:https://www.100ask.net/index微控制器視訊:https://www.100ask.net/page/1707053全文下載:點選下載
延伸文章資訊
- 1嵌入式系統基礎知識:什麼是微控制器MCU - IT閱讀
它們包含記憶體,IO和CPU以及同一晶片。這大大減小了尺寸,使其成為小型嵌入式系統的理想選擇,但這意味著在效能和靈活性方面存在折衷 ...
- 2淺談Embedded System 與MCU | E.E. Breakdown
以恆溫器為例,恆溫器就是一種嵌入式系統,它的輸入像是溫濕度感測值和一組設定監測數值的按鈕,根據指令,恆溫器的MCU 會調整一組輸出,像是啟動電風扇和 ...
- 3【你所不知道的Arduino】Arduino到底是什麼? MCU又是什麼?
基於看過很多學校同學、老師甚至是從業工程師對於Arduino及MCU都有著不少誤解,所以分享此篇 ... 【若需要嵌入式系統技術輔導課程可來信洽談合作方式: ...
- 4[arm微控制器與嵌入式系統] 從CPU到MCU - 台部落
CPU是計算機/微控制器的核心,進行算數/邏輯運算MCU? MicroController Unit 微控制器是一個完整的計算機系統,在單個芯片上包含了處理器、存儲器和 ...
- 5常見處理器MCU、MPU、DSP、FPGA等嵌入式處理器概念
讀者可以簡單的認為,嵌入式微處理器MPU,通常執行Linux、Android等非實時作業系統,應用在高階應用市場,比如智慧手機、路由器等消費電子市場領域,而 ...