簡(jiǎn)單看懂CPU、MCU、MPU、SOC和MCM的區別
在嵌入式開(kāi)發(fā)中,我們經(jīng)常會(huì )接觸到一些專(zhuān)業(yè)術(shù)語(yǔ),例如CPU、MCU、MPU、SOC和MCM等,這些縮寫(xiě)代表了不同類(lèi)型的電子處理單元,它們在消費電子、計算機硬件、自動(dòng)化和工業(yè)系統中扮演著(zhù)重要角色。
本文引用地址:http://dyxdggzs.com/article/202410/463510.htm下面將介紹每個(gè)術(shù)語(yǔ)的基本含義和它們在實(shí)際使用中的區別:
1. CPU
CPU(Central Processing Unit,中央處理單元):由運算器、控制器和寄存器及相應的總線(xiàn)構成。它可以是一個(gè)獨立的處理器芯片或一個(gè)內含多核處理器的大型集成電路。
眾所周知的三級流水線(xiàn):取址、譯碼、執行的對象就是CPU,CPU從存儲器或高速緩沖存儲器中取出指令,放入指令寄存器,并對指令譯碼,然后執行指令。所謂的計算機的可編程性其實(shí)就是指對CPU的編程。
2. MCU
MCU(Microcontroller Unit,微控制器單元):MCU是一個(gè)緊湊型處理器,隨著(zhù)大規模集成電路的出現及發(fā)展,把計算機的CPU、RAM、ROM、定時(shí)器和輸入輸出I/O引腳集成在一個(gè)芯片上。比如51、STC、Cortex-M這些芯片,它們的內部除了CPU外還包含了RAM和ROM,可直接添加簡(jiǎn)單的器件(電阻/電容)等構成最小系統就可以運行代碼了。
MCU常用于嵌入式系統,如家用電器、汽車(chē)電子設備和醫療設備中。與MPU相比,MCU更多的是自成一體的解決方案,可獨立執行預定的任務(wù)。
3. MPU
MPU(Microprocessor Unit,微處理器單元):是一種更具體的CPU類(lèi)型,微處理器通常代表功能強大的CPU(可理解為增強型的CPU),這種芯片往往是計算機和高端系統的核心CPU。例如嵌入式開(kāi)發(fā)者最熟悉的ARM的Cortex-A芯片,他們都屬于MPU。
MPU主要在個(gè)人電腦、服務(wù)器和其他高性能計算設備中使用。微處理器單元的設計注重于高性能指令處理。
4. SOC/SOPC
SoC(System on Chip,片上系統):是一種集成電路,它將所有或大部分必要的電子電路和部件集成到單一芯片上。包括CPU核心、內存、輸入/輸出控制器、外圍設備和其他功能模塊。SoC的設計目標是為了讓它能夠作為系統的主要計算引擎。
MCU只是芯片級的芯片,而SOC是系統級的芯片,它集成了MCU和MPU的優(yōu)點(diǎn),即擁有內置RAM和ROM的同時(shí)又像MPU那樣強大,它可以存放并運行系統級別的代碼,也就是說(shuō)可以運行操作系統。
SoPC(System on a Programmable Chip,可編程片上系統):是指硬件邏輯可編程的片上系統,如FPGA(現場(chǎng)可編程門(mén)陣列)被用于創(chuàng )建系統級的設計。與傳統的SoC相比,SoPC提供了更多的靈活性,因為硬件邏輯可以在芯片制造后根據需求進(jìn)行修改和配置。
舉個(gè)例子說(shuō)明便于理解,單片機的硬件配置是固化好了的,我們能夠編程修改的是軟件配置,本來(lái)是串口通信功能,通過(guò)修改代碼變成AD采樣功能,也就是說(shuō)硬件配置是固定了的,只能通過(guò)修改軟件來(lái)選擇其中的一項或多項功能。
而SoPC可以修改硬件配置信息使其成為相應的芯片,可以是MCU,也可以是SOC。
5. MCM
MCM(Multi-Chip Module,多芯片模塊):MCM是將多個(gè)獨立的集成電路封裝在一個(gè)單獨的芯片上的技術(shù)。與將所有功能集成到單個(gè)集成電路的SoC不同,MCM通常用于封裝性能更強、功能專(zhuān)注的獨立集成電路。它們可以提供類(lèi)似系統總線(xiàn)的內部連接,使得性能更優(yōu)于單芯片解決方案。
在嵌入式開(kāi)發(fā)中,接觸頻率較多的一般是MCU和SOC,而現在STM32也幾乎成為了MCU的代名詞,SOC目前則以Cortex-A系列為主,開(kāi)發(fā)難度也有所差異,對于嵌入式從業(yè)者來(lái)說(shuō),弄清楚這些專(zhuān)業(yè)概念是必備的。
評論