24小時(shí)聯(lián)系電話:18217114652、13661815404
中文
技術(shù)專題
微控制器與微處理器,有什么選擇?
微控制器與微處理器,有什么選擇?
在數(shù)字設(shè)計(jì)期間,微控制器與微處理器的選擇可能是一個(gè)棘手的過(guò)程,工程師們?nèi)栽谂ふ夜?,?jì)算能力,嵌入式功能和價(jià)格之間的正確折衷方案。設(shè)計(jì)人員在項(xiàng)目期間應(yīng)該做出的第一個(gè)重大決定是,是否將微控制器與微處理器作為主要邏輯單元。為了幫助您完成此任務(wù),在這里我們介紹并比較微控制器和微處理器之間的主要區(qū)別,并將幫助您選擇使用微處理器還是微處理器。開始吧。
什么是微處理器
微處理器是任何現(xiàn)代計(jì)算機(jī)的核心:它們是負(fù)責(zé)處理程序中存儲(chǔ)的每個(gè)操作的單芯片處理單元。微處理器從外部存儲(chǔ)器讀取算法,并使用特定語(yǔ)言執(zhí)行命令。該語(yǔ)言定義了微處理器的類型,可以是RISC(精簡(jiǎn)指令集計(jì)算機(jī))或CISC(復(fù)雜指令集計(jì)算機(jī))。
微處理器的整個(gè)設(shè)計(jì)鏈著重于提高其計(jì)算能力和效率,而很少或根本不需要內(nèi)部外圍設(shè)備。這樣就可以創(chuàng)建非常快速,精確和高效的計(jì)算單元。但是,由于整個(gè)制造過(guò)程僅用于處理,因此微處理器需要使用外圍設(shè)備,例如存儲(chǔ)器,I / O引腳,串行通信,電源控制。圖1顯示了應(yīng)用微處理器的數(shù)字板的功能圖,以及它如何與外部外圍設(shè)備交互。由于它沒有內(nèi)部存儲(chǔ)器,因此無(wú)法直接對(duì)微處理器進(jìn)行編程,并且只能運(yùn)行ROM存儲(chǔ)器提供的指令。
圖1:典型的微處理器應(yīng)用圖
什么是微控制器
微控制器是更完整的邏輯單元:它們?cè)趩蝹€(gè)芯片中集成了微處理器和所有必需的外圍設(shè)備:存儲(chǔ)器,I / O引腳,計(jì)時(shí)器,串行接口,模數(shù)轉(zhuǎn)換器,電源管理等。單個(gè)任務(wù)中的應(yīng)用:設(shè)計(jì)人員只需要選擇微控制器,而不需要選擇所有外設(shè)并設(shè)計(jì)它們之間的接口。與微處理器不同,微控制器是可編程的,也就是說(shuō),它可以通過(guò)串行或并行通信來(lái)接收和存儲(chǔ)代碼。
微控制器是嵌入式設(shè)備,通常針對(duì)其設(shè)計(jì)的特定任務(wù)進(jìn)行了優(yōu)化。它們嵌入在汽車,智能手機(jī),警報(bào)器和冰箱中。但是,通用微控制器也可以在市場(chǎng)上大量購(gòu)買。這些微控制器是為原型設(shè)計(jì)的,通常在嵌入式開發(fā)板中出售以進(jìn)行原型設(shè)計(jì)。開發(fā)板的一個(gè)流行示例是Arduino Uno,它以8位ATMega微控制器為核心。
圖2:具有內(nèi)部外圍設(shè)備的基本微控制器
架構(gòu)比較
微處理器和微控制器之間的根本區(qū)別在于體系結(jié)構(gòu)。組成典型微處理器的主要模塊如圖3所示。算術(shù)邏輯單元(ALU)是組合數(shù)字電路,負(fù)責(zé)執(zhí)行整數(shù)之間的簡(jiǎn)單操作(加法,減法,組合邏輯),是微處理器的基本模塊。除了ALU,基本的微處理器體系結(jié)構(gòu)還需要寄存器。寄存器是能夠?qū)?shù)值存儲(chǔ)在CPU內(nèi)部的數(shù)字電路,它們是累加輸出值和ALU狀態(tài)的必要條件,它們可以用作下一個(gè)操作的輸入。最后,控制單元負(fù)責(zé)微處理器與外圍設(shè)備之間的同步,通信和數(shù)據(jù)傳輸。
圖3:微處理器的總體圖
在內(nèi)存訪問(wèn)方面,微處理器通常基于馮·諾依曼架構(gòu),將程序和數(shù)據(jù)都存儲(chǔ)在同一內(nèi)存中。相反,微控制器具有內(nèi)部存儲(chǔ)器模塊,這有助于實(shí)現(xiàn)哈佛體系結(jié)構(gòu),該體系結(jié)構(gòu)將程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器分開。這樣可以更快,更有條理地分配內(nèi)存,從而降低程序的復(fù)雜性。
應(yīng)用比較
微控制器更適合需要優(yōu)化成本和減少組件數(shù)量的應(yīng)用。由于所需的外部組件數(shù)量較少,因此可以輕松地在便攜式設(shè)備中實(shí)現(xiàn)它們。例如,微控制器廣泛用于智能手表,手機(jī),相機(jī)和汽車。微控制器也是要求高確定性和可靠性的應(yīng)用中的最佳選擇,因?yàn)檎麄€(gè)數(shù)字系統(tǒng)在設(shè)計(jì)上都可以在工廠正常工作,而微處理器應(yīng)用則需要由設(shè)計(jì)人員開發(fā)整個(gè)數(shù)字系統(tǒng),這可能會(huì)引入功能錯(cuò)誤。顧名思義,微控制器更適用于控制過(guò)程,接收傳感器數(shù)據(jù),對(duì)其進(jìn)行處理以及向外部執(zhí)行器提供控制信號(hào)。
由于需要外部組件,微處理器應(yīng)用通常具有較高的成本和較高的功耗。因此,微處理器適用于計(jì)算性能至關(guān)重要的情況,例如個(gè)人計(jì)算機(jī),高質(zhì)量視頻處理和高級(jí)數(shù)據(jù)處理。同樣,在需要外圍設(shè)備具有比微控制器所不能提供的功能更多的功能的應(yīng)用中,微處理器是一個(gè)不錯(cuò)的選擇,例如大內(nèi)存和快速的通信速度?;旧?,在需要在短時(shí)間內(nèi)處理大量數(shù)據(jù)的應(yīng)用程序中需要微處理器,例如高速通信系統(tǒng),個(gè)人和多功能計(jì)算機(jī),視頻處理和計(jì)算機(jī)視覺。這種類型的應(yīng)用通常還需要多個(gè)微處理器,
內(nèi)存比較
如前所述,沒有外部存儲(chǔ)模塊,微處理器就無(wú)法運(yùn)行。這包括用于存儲(chǔ)編程算法的ROM存儲(chǔ)器和用于處理數(shù)據(jù)的RAM存儲(chǔ)器。盡管這會(huì)增加系統(tǒng)的最終價(jià)格和功耗,但使用外部存儲(chǔ)器仍可靈活使用較大的代碼大小和處理大量數(shù)據(jù)。
另一方面,微控制器具有內(nèi)部存儲(chǔ)器,為簡(jiǎn)單的任務(wù)提供了必要的存儲(chǔ)能力。這提供了優(yōu)化的功耗,并減少了成本和工程時(shí)間。但是,設(shè)計(jì)人員僅限于微控制器提供的功能:例如,微控制器的程序存儲(chǔ)器通常限于2 MB的空間。由于微控制器更專注于單個(gè)任務(wù),因此在某些情況下,內(nèi)存大小不足。需要存儲(chǔ)大量數(shù)據(jù)的應(yīng)用程序可能與市場(chǎng)上可用的微控制器不兼容。
功耗比較
僅考慮芯片本身,微控制器通常更適合于低功耗應(yīng)用。首先,現(xiàn)代微控制器比典型的微處理器提供更多的低功耗模式(空閑,睡眠,待機(jī))。其次,微處理器需要外部硬件,可能無(wú)法針對(duì)低功耗操作進(jìn)行優(yōu)化。相反,微控制器的內(nèi)部外圍設(shè)備被設(shè)計(jì)為在特定操作模式下使用最佳功率來(lái)協(xié)調(diào)工作。因此,對(duì)于功耗敏感的應(yīng)用和電池供電的設(shè)備,微控制器通常是最佳選擇。
另一個(gè)基本區(qū)別是電源的設(shè)計(jì)。微控制器僅需為整個(gè)系統(tǒng)提供一個(gè)電源,因?yàn)槿绻枰?,電壓調(diào)整是由集成電路本身在內(nèi)部進(jìn)行的。另一方面,微處理器可能需要用于不同數(shù)字模塊的多個(gè)電壓軌,這可能會(huì)增加成本和復(fù)雜性。
尺寸比較
基于微處理器的系統(tǒng)大于等效的基于微處理器的系統(tǒng)。使用外部硬件需要印刷電路板,其中包含執(zhí)行所需任務(wù)所需的所有外圍組件,內(nèi)部通信總線和電源轉(zhuǎn)換器。相反,微控制器是單芯片設(shè)備,可以輕松地嵌入到較大的電路中,而不會(huì)占用大量空間。
價(jià)格對(duì)比
微控制器通常比微處理器便宜。這是因?yàn)樵O(shè)計(jì)人員可以獲取完整的系統(tǒng),而無(wú)需單獨(dú)購(gòu)買每個(gè)外圍設(shè)備并設(shè)計(jì)互連電路。而且,微處理器的工作頻率比微控制器大得多,這使整個(gè)電路更加昂貴。但是,微處理器僅應(yīng)在需要更快處理和功能強(qiáng)大的外圍設(shè)備的應(yīng)用中實(shí)現(xiàn),從而證明了成本的增加。
結(jié)論微控制器與微處理器
微處理器和微控制器是指定給類似壁ni的設(shè)備,在某些情況下其應(yīng)用范圍可能會(huì)重疊。但是,它們是為不同的目的而設(shè)計(jì)的:微控制器旨在控制系統(tǒng),從外部傳感器接收信息并做出執(zhí)行單個(gè)任務(wù)的決定,而微處理器則旨在非??焖俚靥幚泶罅繑?shù)據(jù)并以更大的速度運(yùn)行。一般時(shí)尚。在兩者之間進(jìn)行選擇之前,工程師應(yīng)考慮預(yù)期的應(yīng)用程序類型,所需的處理能力以及設(shè)計(jì)約束,例如內(nèi)存,功耗,成本和大小。