如何選擇微控制器MCU或微處理器MPU
作為嵌入式系統的“大腦”,處理器對系統的整體成功或失敗有很大的影響。
因此,選擇合適的裝置非常重要。這些器件大致分為微控制器(MCU)和微處理器(MPU),並有各種不同型別,型號和尺寸。在MPU或MCU之間進行選擇可能是一項複雜而艱鉅的任務。本文將列舉這些型別裝置的一些主要選擇標準。
處理能力
最重要的考慮因素就是工作績效了;MPU提供比MCU同類產品更強大的處理能力。通過比較引用的Dhrystone MIPS(每秒數百萬條指令 - 器件數字),可以對器件進行廣泛比較。Dhrystone MIPS(通常縮寫為DMIPS)是衡量裝置完成任務的速度的基準指標,該任務在某種程度上類似於處理器上的實際負載。
對於大多數嵌入式系統,這是作業系統OS。基本的RTOS可能只需要50 DMIPS; 與Linux,Android或Windows CE等全功能作業系統相比,這可能需要6-8倍。
特別對於數學密集型應用,將需要額外的處理能力,增加了需要MPU的可能性。另一方面,如果應用程式需要實時確定性行為,那麼MCU將是更好的選擇; MCU的時序確定性處理器核心和快閃記憶體的組合使其適用於要求功能安全的應用。由於確定性應用通常將軟體保持在最低限度,使用RTOS或裸機C,MCU通常具有足夠的效能來支援這一點。
此階段需要考慮的另一件事是圖形使用者介面GUI。即便是當今最平凡的工業應用也需要豐富多彩的GUI。隨著消費者對電子裝置的花哨圖形和動畫的期望越來越高,消費者應用程式的要求也越來越高。您選擇的GUI的複雜程度將影響您是否決定使用MCU或MPU進行專案,因為複雜的GUI需要比簡單的GUI有更多的處理能力。MCU可能適用於具有簡單GUI的系統,可能是具有偽靜態影象和低解析度螢幕的系統; 而以GUI為中心的應用可能需要MPU的處理能力。
記憶
此外,要考慮的下一個功能是記憶體。MCU和MPU具有完全不同的儲存器方法。
MCU通常具有片上快閃記憶體來儲存和執行程式。快閃記憶體可以非常快速地訪問,因此可以非常快速地啟動和執行程式。但是,由於嵌入了這種記憶體,因此,如果程式在開發過程中顯著增加,則很難增加容量。
有可能將裝置換成同一系列中具有更多記憶體的部件,但這隻能到目前為止。MCU的典型記憶體限制約為2 MB。
另一方面,MPU使用外部儲存器進行程式和資料儲存,提供更大的靈活性。外部NAND或序列快閃記憶體通常用於儲存程式,然後將其載入到外部DRAM中; 因此,啟動過程比MCU的片上儲存器需要更長的時間。但是,容量可以是幾百兆位元組(NAND的Gbytes)。
功率和價格
功耗明顯優勝者是MCU,通常比MPU低幾個數量級。它們具有多種低功耗模式,某些系列產品專為超低功耗應用而設計。同時,使用MPU進行低功耗設計可能會非常棘手。一些具有低功率模式,但是這些模式很少且很遠,並且外部儲存器的使用意味著將MPU置於其低功率模式可能更復雜。
另外權衡的一個非常重要的考量因素是價格。無論選擇與否,MCU或MPU的價格都將發揮重要作用。在這種情況下,MCU代表了成本優化的解決方案,通常也代表低功耗選項。但是它有所需的效能嗎?MPU通常用於高效能應用,但能負擔得起嗎?是否有可用的電池,能夠以合理的BOM成本在兩次充電之間達到所需的時間?需要非常仔細地考慮這種平衡。
其他考慮
需要考慮的其他事項可能包括設計的簡單性,特別是在非常緊迫的上市時間期限內工作時。例如,MCU只需要一個電源軌,而MPU需要幾個不同的電壓軌用於核心,DDR和其他模組,因此板上需要額外的電源轉換器,這增加了設計的複雜性和成本。
系統需要LCD嗎?如果是這樣,則需要LCD控制器,如果選擇了MPU,則可能有一個內建控制器。並非所有MCU都配備了片上LCD控制器,因此需要更多的外部元件才能實現。一些帶有片上TFT LCD控制器的MCU已經上市,但檢查是否有足夠的嵌入式SRAM供給和重新整理顯示器是有意義的。如果沒有足夠的片上功能,為此任務新增額外的外部儲存器可能是一種解決方案。
另一方面,如果應用程式特別低成本或低功耗,則可以考慮更改為段或點陣顯示器,這將允許使用較低規格的MCU。
連通性是選擇處理裝置的另一個因素。需要與第三方(基於OS的)堆疊進行高速連線的設計通常使用MPU,因為它們能夠更好地處理和處理與HS USB 2.0或千兆乙太網交換的資料量。也就是說,MCU幾乎可以與所有潛在的外圍介面組合一起使用,但應仔細檢查相關應用所需的通道數和頻寬。