近幾年,隨著各大領域對于MCU需求越來越大,但對于位數不同MCU的需求程度是不一樣,8位MCU、24位MCU、32位MCU在某一些領域需要應用相應拓位數MCU,從現在的情形來年32位MCU快速增長,風頭之勁直接跳過16位,現在說嵌入式MCU,要么是8位MCU,或是32位MCU,16MCU產品型號現在是很少。
根據市場情況情形來看,很多工程師對于8位MCU存在一些誤解,下面簡單的來分析一下。
一、8位MCU缺乏創(chuàng)新
很多人會認為,既然市場上的寵兒是32位的MCU,制造商是否沒有在8個產品上投入研發(fā)資源。這樣想的人可能會想到8位MCU,40會浮現在腦海里DIP的“經典8051”的形象。事實上,芯片制造商并沒有停止創(chuàng)新。比如CIP-5151內核采用了一個時鐘周期等同于指令周期的設計,同頻率的8051性能瞬間提高了12倍。一些國內半導體制造商也有基于8051或其他8位內核的創(chuàng)新。
二、8位MCU會被淘汰嗎
根據當前新的誤解,也是常見的誤解。Gartner的市場報告,8位的市場營收額和增長額跟32位的相比都僅僅差幾個百分點??紤]到8位單芯片比32位芯片便宜得多,8位的出貨量實際上遠于32位。舉個直觀的例子,現在我們有了高鐵,是不是在部份傳統(tǒng)的普快、特快列車都要馬上淘汰?顯然,事實并非如此。原因太多了。實際情況是8位MCU以前的應用領域不能立即使用32位MCU直接替代。
三、8位MCU難以使用C/C++ 語言編程
如果你是的一位有經驗的工程師,對Arduino設計原理有了解,這種誤解就會不攻自破。說白了,8位MCU使用高級語言編程確實比32位好MCU主要障礙是內存地址不統(tǒng)一。例如,8051內核的內存地址分為CODE、data、sfr、idata和xdata。如果涉及到banking更復雜。8位的PIC還有硬件Stack這種設計更非主流,但這些障礙可以通過優(yōu)化工具來緩解。
四、8位MCU是專為簡單應用而生的
這種觀點有點真實,但嵌入式應用本身主要是簡單的應用程序。嵌入式系統(tǒng)應用程序本身的特點決定了8位仍然有很多用途。外部設備和編譯器的進化將慢慢擴大8位MCU的應用范圍。
五、8位MCU響應緩慢
這是一個完全的誤解。在典型的嵌入式應用程序中,響應速度主要與中斷響應和喚醒延遲有關。8位MCU具有地址轉換工作量小然優(yōu)點IP單元門數少),至少不輸于32位MCU。
六、8位MCU不稱職IoT應用需求
IoT應用程序不是一個單獨的應用程序,而是一個復合應用程序。能手表、智能揚聲器、主控制器和網關需要復雜的MCU來實現。IoT該應用程序還包括大量的傳感器節(jié)點、執(zhí)行節(jié)點和轉換節(jié)點。該節(jié)點更適合使用低功耗的8位MCU。
七、32位MCU器的功能遠強于8位MCU
這也有一定程度的可信度,但別忘了有相當大一部分應用程序使用8位MCU在這種情況下,購買平均價格較高的32位就足夠了。 MCU成本會上升。對于許多基本標準化的嵌入式產品,8位MCU它仍然具有一定的成本優(yōu)勢。
八、8位MCU的能效低于32位MCU
曾經看過一家公司權威工程師撰寫的一本書認為32位MCU的能效比高于8位MCU,原因是32位MCU可以快速完成任務,休眠時間的比例更大,但結論包括一個假設,即任務有一定的復雜性。
如果任務本身很簡單,喚醒過程的功耗也很大,那么這個假設是站不住腳的。對于不同的應用場景,我們不能簡單地說哪個能效比更高。至少在非常簡單的應用程序中,8位的能效比較高。如果添加單獨的響應,則無需CPU在一些干預任務中,8位的能效比甚至要高得多。
九、8位MCU設計的應用無法適應未來的變化
這是一個思維角度問題,作為一個嵌入式程序員,我們應該考慮當前的任務。不管是什么類型的MCU,如果產品形式或需求本身發(fā)生變化,則需要重新設計。沒有人能看到未來,為什么要考慮這么多沒有實際意義的前瞻性。
十、8位MCU開發(fā)沒有升級路徑
32位MCU的處理更加以軟件為中心,可以做更多的代碼復用。而8位MCU更多地利用硬件外設來完成任務。綜合而言,沒有完全的差別。
從目前的情況來年,只要是嵌入式處理器,升級路徑就不清楚。如果你使用8位MCU和32位MCU產品的制造商,你會發(fā)現許多外圍設備很相似。考慮到圖形配置外設的趨勢,升級路徑逐漸變得不那么重要。無論如何,基本驅動代碼是圖形或腳本生成的。