公司方案里由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(Microcontroller Unit)又叫單片機、微處理器,是集成電路的一種。MCU類似於CPU,是可以執行嵌入式程序的一種集成電路。書上定義就先不講了。

以前沒有集成電路的時候,是用密密麻麻的分立元件來實現家電的功能。下圖是舊式電視機的電路板。

下圖是現在電視機的電路板。小黑塊就是集成電路。現在有很多集成電路,用於各種各樣的目的,比如電壓轉換等。但只有MCU能夠執行程序。現在很多家電都有一個MCU作為控制的核心。便宜的MCU才幾塊錢一個。MCU和集成電路簡化了電路,降低了成本,提高了可靠性。

MCU執行的程序叫嵌入式程序。嵌入式程序可以存儲在MCU上,也可以存儲在外面的存儲器上。比如Flash就是存儲器的一種。

模組:晶元必須配合一些外圍設備才能工作。為了方便廠家使用,模組廠家會集成一些外圍部件,並寫入嵌入式程序,整體打包後作為一個解決方案,給設備廠家使用。

為了便於大家理解,拿我們塗鴉的TYWE3S模組舉例,在ESP8266外圍加了板載天線(PCB天線),快閃記憶體(Flash Memory),晶振(26M晶體)等設備。舉個不恰當的比喻,ESP8266是發動機,塗鴉的模組TYWE3S就是汽車,加了底盤,外殼,座椅,方向盤等,可以直接被智能家居設備廠商使用。

點擊鏈接可以查看我們的模組:https://www.tuya.com/cn/platform/hardware?_source=04170da20f8f3244764e0f813970157e

下圖為TYWE3S的功能示意圖

下面的是模塊背面圖

下圖是模塊正面的暴力拆解圖

以上講了什麼是MCU。MCU是集成電路的一種,可以執行嵌入式程序。集成電路和MCU的使用大大提高了電子設備的可靠性,降低了成本。

後面又介紹了什麼是模組。模組就是一塊電路板,集成了MCU和一些外圍設備,並且帶有嵌入式程序,提供一個完整解決方案。

下面我來科普下SoC方案。

【SoC方案】

SoC(System on Chip),中文名是片上系統。SoC含義很多,有一種定義是一個有專用目標的集成電路,是一個包含嵌入式軟體的完整系統。SoC方案中,對設備所有智能化操作都是通過模組來實現的,設備無需另外增加MCU。此類控制通常而言比較簡單,例如開關,燈之類的產品,只需要幾個IO口,就可以控制產品。

下圖是塗鴉的TYWE3S模組。模組外圍是引腳。除了電源(VCC)、接地(GND)及其他一些功能引腳外,有兩類引腳,其中一類是通用輸入輸出(GPIO)引腳。

先說通用輸入輸出GPIO(General Purpose Input/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
    • =Micro Control Unit=微控制器=Micro Controller=Microcontroller=Microcontroller Unit
    • 特點
      • 複雜度
        • 比CPU高,比SoC低
      • 運行系統
        • 簡單系統
        • 一般不支持運行多任務的複雜系統(比如(嵌入式)Linux)
  • SoC
    • =System On Chip=System On a Chip=系統級晶元=片上系統
    • 總結
      • 複雜度
        • 比CPU高,比MCU高
      • 運行系統
        • 能支持運行多任務的複雜系統(比如(嵌入式)Linux)
      • 總體複雜度=集成功能的豐富程度
        • CPU &< MCU &< SoC
      • 晶元平均價格
        • CPU &< MCU &< SoC

SOC是多了個簡單的操作系統嗎?

如果僅僅是從 MCU和SoC所能支持的操作系統的角度來說,基本上說:是的。

  • MCU:運行的往往是裸系統
    • 代碼直接操作物理存儲空間
      • 控制外部設備
  • SoC
    • 系統複雜度一般比較高
    • 運行的典型如嵌入式Linux系統
      • 包括衍生出的Android系統等

更詳細的解釋,見圖:

或參考帖子:

【整理】晶元相關名詞對比:CPU,MCU,SoC,MPU,PLC,DSP,ASIC,FPGA?

www.crifan.com

中,去在線瀏覽(更清晰,可放大):

晶元相關名詞對比 20190320?

www.processon.com圖標


後記1:

已整理出系統的教程了,其中涉及此部分的內容是:

晶元名詞對比 · 晶元產業鏈總結

與此相關的,你可能感興趣的:

晶元公司關係 · 晶元產業鏈總結


Soc: system on chip

Mcu: micro controller unit


CPU都知道吧。MCU可以算是CPU+RAM+ROM+UART+TIMER+RTC等簡單外設。SOC可以算是MCU+複雜功能外設,比如基帶晶元,比如flash存儲器,比如顯示核心等等,放到一個封裝里。


推薦閱讀:
相关文章