常見處理器MCU、MPU、DSP、FPGA等嵌入式處理器概念

文章推薦指數: 80 %
投票人數:10人

讀者可以簡單的認為,嵌入式微處理器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全文下載:點選下載



請為這篇文章評分?