嵌入式設備里,SOC與MCU的區別是什麼? - GetIt01
文章推薦指數: 80 %
公司方案里由MCU方案和SOC方案,沒學過嵌入式,完全看不出區別?SOC是多了個簡單的操作系統嗎?MCU:微控制器,可以跑程序的數字邏輯晶元,就是內核加外設。
解釋...
標籤:ARM單片機嵌入式系統嵌入式開發
嵌入式設備里,SOC與MCU的區別是什麼?
01-04
公司方案里由MCU方案和SOC方案,沒學過嵌入式,完全看不出區別?SOC是多了個簡單的操作系統嗎?
MCU:微控制器,可以跑程序的數字邏輯晶元,就是內核加外設。
解釋麻煩,上圖吧。
。
。
這個是STM32F1的結構,就是一個M3核加些外設MPU:微處理器,就是在MCU基礎上頻率高些,外設複雜些,內核加了MMU能跑LINUX
IMX28x的結構,比STM32複雜一點吧。
。
SOC:晶元公司把IP核買來,集成其他一些電路,應用於一些專業領域。
TI的CC26xx,集成了射頻電路和一個M0的核跑協議棧。
這個是ARM9的核集成了一些音視頻處理的電路,應用很多的。
。
其他的還有集成DSP、FPGA的。
。
總之,MCU/MPU一般是單一內核集成一些通用的外設,應用範圍廣,SOC是在這些晶元的基礎上,集成了其他的核或電路,為某一特定領域打造的。
什麼是SOC方案,什麼是MCU方案呢?要了解這兩個概念,首先要了解模組。
要了解模組,首先需要了解什麼是微控制單元(MCU)。
微控制單元MCU(MicrocontrollerUnit)又叫單片機、微處理器,是集成電路的一種。
MCU類似於CPU,是可以執行嵌入式程序的一種集成電路。
書上定義就先不講了。
以前沒有集成電路的時候,是用密密麻麻的分立元件來實現家電的功能。
下圖是舊式電視機的電路板。
下圖是現在電視機的電路板。
小黑塊就是集成電路。
現在有很多集成電路,用於各種各樣的目的,比如電壓轉換等。
但只有MCU能夠執行程序。
現在很多家電都有一個MCU作為控制的核心。
便宜的MCU才幾塊錢一個。
MCU和集成電路簡化了電路,降低了成本,提高了可靠性。
MCU執行的程序叫嵌入式程序。
嵌入式程序可以存儲在MCU上,也可以存儲在外面的存儲器上。
比如Flash就是存儲器的一種。
模組:晶元必須配合一些外圍設備才能工作。
為了方便廠家使用,模組廠家會集成一些外圍部件,並寫入嵌入式程序,整體打包後作為一個解決方案,給設備廠家使用。
為了便於大家理解,拿我們塗鴉的TYWE3S模組舉例,在ESP8266外圍加了板載天線(PCB天線),快閃記憶體(FlashMemory),晶振(26M晶體)等設備。
舉個不恰當的比喻,ESP8266是發動機,塗鴉的模組TYWE3S就是汽車,加了底盤,外殼,座椅,方向盤等,可以直接被智能家居設備廠商使用。
點擊鏈接可以查看我們的模組:https://www.tuya.com/cn/platform/hardware?_source=04170da20f8f3244764e0f813970157e下圖為TYWE3S的功能示意圖
下面的是模塊背面圖
下圖是模塊正面的暴力拆解圖
以上講了什麼是MCU。
MCU是集成電路的一種,可以執行嵌入式程序。
集成電路和MCU的使用大大提高了電子設備的可靠性,降低了成本。
後面又介紹了什麼是模組。
模組就是一塊電路板,集成了MCU和一些外圍設備,並且帶有嵌入式程序,提供一個完整解決方案。
下面我來科普下SoC方案。
【SoC方案】
SoC(SystemonChip),中文名是片上系統。
SoC含義很多,有一種定義是一個有專用目標的集成電路,是一個包含嵌入式軟體的完整系統。
SoC方案中,對設備所有智能化操作都是通過模組來實現的,設備無需另外增加MCU。
此類控制通常而言比較簡單,例如開關,燈之類的產品,只需要幾個IO口,就可以控制產品。
下圖是塗鴉的TYWE3S模組。
模組外圍是引腳。
除了電源(VCC)、接地(GND)及其他一些功能引腳外,有兩類引腳,其中一類是通用輸入輸出(GPIO)引腳。
先說通用輸入輸出GPIO(GeneralPurposeInput/Output)。
SoC方案中,模組和設備交互是通過GPIO口實現的。
輸入的數據是設備向模組上報狀態。
輸出的數據是模組向設備下髮指令。
下面是塗鴉IoT平台上的開關SoC免開發方案的配置項。
上面定義了一些IO口的配置。
包括按鍵狀態、繼電器控制和電源指示燈,都是通過IO口控制,或接收信息的。
通過對設備IO口的配置,並且製作對應的電路板,廠家就可以完成SoC免開發方案了。
配置完畢後,系統可以通過對應的GPIO口讀取開關閉合信息,操控改變繼電器狀態和指示燈狀態。
那麼,什麼是SoC免開發方案,什麼是SoC固件定製方案呢?模塊口和功能如果能夠滿足客戶需求,就可以用SoC免開發方案。
模塊口或功能無法滿足客戶需求,客戶又不想要mcu方案時,可以使用SoC固件定製方案。
比如有一個開關,客戶需要有一個背光功能。
這時會需要一個特殊的GPIO口,輸出一個背光開啟或關閉的控制。
這個可能就需要固件定製。
在固件需要定製的情況下,客戶需要先自定義DP點,然後申請嵌入式進行固件定製。
再比如我們的第一款小家電SoC免開發方案——吊扇SoC免開發智能化方案:https://promotion.tuya.com/Ceiling_Fan_SoC_Solution?_source=c5fd687c299200ea9939ddf8382797b5,主要包括開源硬體和可配置固件兩大部分。
其中,開源硬體包括:模組、RF遙控接收器、4路電容調速、1路燈通斷和工作電源;可配置固件包括:風扇開/關、燈開/關、5檔調速、4種出風模式、倒計時和倒計時剩餘時間顯示等功能。
客戶不需要編寫任何代碼,只需要將控制模塊放入到吊扇的控制盒內,就可以通過遙控器或者手機App發送指令,控制器接到指令後即可完成對吊扇/吊扇燈的控制。
這就是SoC免開發方案的優勢所在,比較方便,對於開發能力不強的團隊,會更加適用。
【MCU方案】
剛才介紹了SoC方案。
SoC方案中,是塗鴉模組承擔控制功能。
下面介紹MCU方案。
MCU方案需要對方設備有MCU。
對方的MCU對設備起控制功能。
塗鴉的模組和設備MCU連接,通過對方MCU得到設備狀態,並且通過對方MCU控制設備。
模組利用定義好的通信埠和通信協議(比如下圖中的串列通訊口,簡稱串口),和設備的MCU進行通信,以接收設備狀態,及發送控制指令。
一些控制邏輯比較複雜的電器,如空調、冰箱、洗衣機、甚至小家電比如電風扇等,內部都有MCU。
總結
前面介紹了開關的SoC免開發方案,SoC定製開發方案和MCU方案。
對於沒有MCU的設備,模組通過GPIO口控制設備,稱為SoC方案。
如果需要免開發方案無法滿足要求,需要定製,就是SoC定製開發。
如果設備有自己的MCU,就可以由對方的MCU控制設備。
拿我們自己來舉例,我們塗鴉的模組就只負責透傳數據,將MCU與塗鴉雲連接在一起,完成與塗鴉平台的數據交互。
SoC方案是塗鴉模組承擔控制功能;MCU方案是客戶產品中的MCU承擔控制功能,並和塗鴉模組通過串口通訊。
感興趣的也可以來塗鴉的IoT開發平台實時體驗SoC或者MCU智能化方案:https://auth.tuya.com/?from=https%3A%2F%2Fiot.tuya.com%2F_source=093fa52288745d702bfa2134a4f01c24由於本篇文檔涉及的知識點比較多,如果沒有看懂的,可以私聊我,我會很樂意跟大家交流AIoT相關的產品技術知識。
公司方案里由MCU方案和SOC方案,沒學過嵌入式,完全看不出區別?
MCU
=MicroControlUnit=微控制器=MicroController=Microcontroller=MicrocontrollerUnit
特點
複雜度
比CPU高,比SoC低
運行系統
簡單系統
一般不支持運行多任務的複雜系統(比如(嵌入式)Linux)
SoC
=SystemOnChip=SystemOnaChip=系統級晶元=片上系統
總結
複雜度
比CPU高,比MCU高
運行系統
能支持運行多任務的複雜系統(比如(嵌入式)Linux)
總體複雜度=集成功能的豐富程度
CPU&
延伸文章資訊
- 1許多人對於8051 MCU常有的錯誤觀念討論與闢除(2020/10/12 ...
8051 MCU好教材分享& 錯誤觀念闢除] 對於想學MCU(單晶片微控制器)韌體、嵌入式系統硬體(嵌入式處理器架構、外部電源電路、感測器/馬達介面電路、 ...
- 2嵌入式系統基礎知識:什麼是微控制器MCU - 每日頭條
在開發嵌入式系統時,其中一個選擇是將計算硬體基於微控制器,而不是微處理器MPU。 這兩種方法都有其吸引力,但通常它們將在不同的應用中找到。
- 3嵌入式系統基礎知識:什麼是微控制器MCU - IT閱讀
它們包含記憶體,IO和CPU以及同一晶片。這大大減小了尺寸,使其成為小型嵌入式系統的理想選擇,但這意味著在效能和靈活性方面存在折衷 ...
- 4常見處理器MCU、MPU、DSP、FPGA等嵌入式處理器概念
讀者可以簡單的認為,嵌入式微處理器MPU,通常執行Linux、Android等非實時作業系統,應用在高階應用市場,比如智慧手機、路由器等消費電子市場領域,而 ...
- 5【嵌入式學習心得#1】簡易雷達調光的MCU設定,從看懂 ...
事實上目前大多數的韌體嵌入式開發(單晶片),都是用Keil或 IAR(這兩個應該就是大宗了),把寫好的程式碼做compile 將程式碼燒錄進MCU 內。