天天看點

如何選擇微控制器MCU或微處理器MPU

作為嵌入式系統的“大腦”,處理器對系統的整體成功或失敗有很大的影響。

是以,選擇合适的裝置非常重要。這些器件大緻分為微控制器(MCU)和微處理器(MPU),并有各種不同類型,型号和尺寸。在MPU或MCU之間進行選擇可能是一項複雜而艱巨的任務。本文将列舉這些類型裝置的一些主要選擇标準。

處理能力

最重要的考慮因素就是工作績效了;MPU提供比MCU同類産品更強大的處理能力。通過比較引用的Dhrystone MIPS(每秒數百萬條指令 - 器件數字),可以對器件進行廣泛比較。Dhrystone MIPS(通常縮寫為DMIPS)是衡量裝置完成任務的速度的基準名額,該任務在某種程度上類似于處理器上的實際負載。

對于大多數嵌入式系統,這是作業系統OS。基本的RTOS可能隻需要50 DMIPS; 與Linux,Android或Windows CE等全功能作業系統相比,這可能需要6-8倍。

如何選擇微控制器MCU或微處理器MPU

特别對于數學密集型應用,将需要額外的處理能力,增加了需要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幾乎可以與所有潛在的外圍接口組合一起使用,但應仔細檢查相關應用所需的通道數和帶寬。

最後但同樣重要的是:規劃未來。最終産品是否可能被制成需要不同尺寸處理器的産品系列?産品是否可能演變成需要更強處理能力的更大,更好的版本?或者下一步是低功率版本?在這些情況下,選擇具有各種相容的MCU和MPU産品的供應商将有助于在時機成熟時最大限度地重複使用軟體。