新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 8位還是32位,微處理器怎么選?

8位還是32位,微處理器怎么選?

作者: 時(shí)間:2018-07-24 來源:網(wǎng)絡(luò) 收藏

正如汽車代替了馬車,電子郵件代替了普通郵件一樣,元微控制器(MCU)讓元MCU變得黯然失色。盡管未來元MCU朝向元MCU發(fā)展將會(huì)成為現(xiàn)實(shí),但目前還沒那么容易實(shí)現(xiàn)。事實(shí)證明元MCU和元MCU仍是互補(bǔ)的技術(shù),在一些方面各有千秋,而在其它方面的表現(xiàn)卻同樣出色。這其中的竅門在于厘清何種應(yīng)用適合哪種MCU架構(gòu)。

本文引用地址:http://2s4d.com/article/201807/383693.htm

本文比較了8位元MCU和32位元MCU的使用案例,可作為如何選擇這兩種MCU架構(gòu)的指南使用。

本文大部分32位元范例將關(guān)注于ARM Cortex-M裝置,Cortex-M在不同MCU供應(yīng)商產(chǎn)品組合中表現(xiàn)非常相似。由于8位元MCU有很多種架構(gòu),所以很難對(duì)8位元供應(yīng)商之間進(jìn)行類似的產(chǎn)品比較。為了進(jìn)行比較,本文將使用廣泛應(yīng)用、易于理解的8051 8位元架構(gòu)。

事實(shí)上,“ARM Cortex和8051哪個(gè)比較好”不是個(gè)邏輯問題,反而像是在問“吉他和鋼琴哪個(gè)好”?真正要解決的問題是“哪種MCU最能幫助解決目前面臨的問題?”。

不同的任務(wù)須使用不同的工具,使用者目的是要了解“如何才能善用所擁有的工具”,包括8位元和32位元裝置。

對(duì)不同的裝置進(jìn)行比較,須要對(duì)其進(jìn)行測(cè)量。有很多建構(gòu)工具可供選擇,本文盡量選擇一些認(rèn)為能夠進(jìn)行最公平的比較,且最能代表開發(fā)人員真實(shí)體驗(yàn)的情境。

以下ARM資料是透過GCC+ nanoCLibrary和-03最佳化選項(xiàng)所生成。

此一比較試驗(yàn)并不為任何一種裝置的代碼最佳化,只是簡(jiǎn)單實(shí)現(xiàn)90%開發(fā)人員都會(huì)使用的常見代碼,并呈現(xiàn)普通開發(fā)人員所見到的結(jié)果,而不是理想狀態(tài)下的結(jié)果。當(dāng)然,花費(fèi)諸多時(shí)間、精力和財(cái)力去調(diào)整8051代碼使其表現(xiàn)勝過ARM是可能的,反之亦然,但一開始就選擇適合該項(xiàng)工作的最佳工具比費(fèi)盡心力做最佳化簡(jiǎn)單多了。

8位元MCU功效持續(xù)精進(jìn)

在開始對(duì)架構(gòu)進(jìn)行比較前,要注意到并非所有的MCU都是一樣,這一點(diǎn)非常重要。

如果將基于ARM Cortex-M0+處理器的現(xiàn)代MCU與30年前的8051 MCU做對(duì)比,8051 MCU在性能上當(dāng)然不會(huì)勝出。幸運(yùn)的是,許多供應(yīng)商一直對(duì)8位元處理器持續(xù)投資。

例如芯科實(shí)驗(yàn)室(Silicon Labs)正持續(xù)更新基于8051核心的EFM8 MCU產(chǎn)品線,其效能比原始的8051架構(gòu)更高,而且開發(fā)過程也已實(shí)現(xiàn)現(xiàn)代化。所以在許多應(yīng)用中,8位元核心能夠容易彌補(bǔ)比M0+或M3核心不利的地方,甚至在一些方面性能更佳。

開發(fā)工具也很重要。現(xiàn)代嵌入式韌體開發(fā)需要全功能IDE、現(xiàn)成的韌體庫(kù)、豐富的范例、完整的評(píng)估和入門套件,以及助手應(yīng)用,以簡(jiǎn)化硬體設(shè)定、資料庫(kù)管理和量產(chǎn)編程之類的工作。當(dāng)MCU有了現(xiàn)代化的8位元核心和開發(fā)環(huán)境時(shí),在很多情況下,這樣的MCU將超越基于ARM-Cortex的類似MCU。

以系統(tǒng)規(guī)模選擇MCU

第一個(gè)一般性原則是:ARM Cortex-M核心更適用于較大的系統(tǒng)規(guī)模(》64KB代碼),而8051裝置適用于較小的系統(tǒng)規(guī)模(《8KB代碼)。中等規(guī)模的系統(tǒng)可以選擇兩種方式,這取決于系統(tǒng)要執(zhí)行的任務(wù)。須要注意的是,在大多數(shù)情況下,周邊組合將會(huì)發(fā)揮重要作用。如果需要三個(gè)UART、一個(gè)LCD控制器、四個(gè)時(shí)脈和兩個(gè)ADC,使用者可能不會(huì)在8位元MCU上找到所有的周邊。

易用性與成本/尺寸之比較

對(duì)于中等規(guī)模的系統(tǒng)來說,使用任何一種架構(gòu)都可以完成工作。但主要須考量是選擇ARM核心帶來的易用性,還是8051裝置帶來的成本和物理尺寸優(yōu)勢(shì)。

ARM Cortex-M架構(gòu)具備統(tǒng)一的儲(chǔ)存模式,并在所有常見編譯器中支援完整的C99,這使得該架構(gòu)非常易于寫韌體。此外,還可得到一系列資料庫(kù)和協(xié)力廠商代碼。

當(dāng)然,這種易用性的代價(jià)就是成本。對(duì)于高復(fù)雜性、上市時(shí)間較短的應(yīng)用或缺乏經(jīng)驗(yàn)的韌體開發(fā)人員來說,易用性是個(gè)重要因素。

比起32位元MCU,8位元MCU的成本頗具優(yōu)勢(shì)。使用者經(jīng)常會(huì)發(fā)現(xiàn)內(nèi)建2KB/512B(Flash/RAM)的小容量8位元MCU,而卻很難找到低于8KB/2KB的32位元MCU。在不需要很多資源的系統(tǒng)中,儲(chǔ)存容量小的MCU能夠讓系統(tǒng)開發(fā)人員獲得顯著的成本降低。因此,對(duì)成本極為敏感或僅需較小儲(chǔ)存容量的應(yīng)用,會(huì)更傾向于選擇8051解決方案。

8位元晶片通常也具備物理尺寸上的優(yōu)勢(shì)。例如Silicon Labs提供的最小32位元QFN封裝為4mm×4mm,而基于8051的8位元晶片的QFN封裝可小至2mm×2mm。

晶片級(jí)封裝(CSP)的8位元和32位元架構(gòu)之間的差異較小,但卻使成本增加,且組裝較難。對(duì)于空間嚴(yán)格受限的應(yīng)用來說,通常須要選擇8051裝置來滿足限制要求。

通用代碼/RAM效率易影響MCU成本

8051 MCU成本較低的主要原因之一是其使用Flash和RAM的效率通常比ARM Cortex-M核心更高,這允許系統(tǒng)采用更少資源實(shí)現(xiàn)。系統(tǒng)越大,這種影響就越小。

然而,這種8位元儲(chǔ)存資源的優(yōu)勢(shì)并不總是如此,這一點(diǎn)很重要。在某些情況下,ARM核心會(huì)像8051核心一樣高效或比其更高效。例如32位元運(yùn)算在ARM MCU上僅需要一條指令,而在8051 MCU上則需要多條8位元指令。顯然,這種代碼在ARM架構(gòu)上有更高的執(zhí)行效率。

ARM架構(gòu)在Flash/RAM尺寸較小時(shí)的兩個(gè)主要缺點(diǎn)是代碼空間效率和RAM使用的可預(yù)測(cè)性。首要也是最明顯的問題是通用代碼空間效率。8051核心使用1位元組、2位元組或3位元組指令,而ARM核心使用2位元組或4位元組指令。

通常情況下,8051指令更小,但這一優(yōu)勢(shì)因?qū)嶋H上花費(fèi)許多時(shí)間而受到削弱,ARM核心比8051在一條指令下能做更多工作。32位元運(yùn)算就是這樣一個(gè)范例。以實(shí)踐來說,指令寬度是能在8051上產(chǎn)生適度的更密集代碼。

代碼空間效率

在含有分散式存取變數(shù)的系統(tǒng)中,ARM架構(gòu)的載入/儲(chǔ)存架構(gòu)通常比指令寬度更為重要。試想訊號(hào)量的實(shí)現(xiàn),一個(gè)變數(shù)需要在代碼周圍的多個(gè)不同位置進(jìn)行減量(分配)或者增量(釋放)。ARM核心必須將變數(shù)載入到暫存器,對(duì)其進(jìn)行操作并重新儲(chǔ)存,這需要三條指令。另一方面,8051核心可以直接在記憶體位置上進(jìn)行操作,且僅需一條指令。隨著每次對(duì)變數(shù)完成工作量的增大,由載入/儲(chǔ)存而產(chǎn)生的消耗就變得微不足道。但對(duì)于每次僅完成一點(diǎn)工作的情況來說,載入/儲(chǔ)存能產(chǎn)生重要影響,讓8051獲得明顯的效率優(yōu)勢(shì)。

盡管訊號(hào)量在嵌入式軟體中并非常見結(jié)構(gòu),但簡(jiǎn)單的計(jì)數(shù)器和標(biāo)志卻廣泛應(yīng)用于控制導(dǎo)向的應(yīng)用中并發(fā)揮相同的作用。許多常見的MCU代碼都屬于這一類型。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: 8位 32位 微處理器

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉