8位MCU為何能堅(jiān)挺30年?
回顧微控制器(MCU)的演變歷程,可說(shuō)是從早期4/8位元(bit)經(jīng)歷過(guò)度的16 bit,直到近年非常普及的32 bit。不論在運(yùn)算時(shí)鐘、串列周邊與模擬輸入輸出都較過(guò)往有顯著的提升。以現(xiàn)今的主流應(yīng)用來(lái)看,4 bit與16 bit MCU幾乎消失,由8 bit與32 bit MCU瓜分整個(gè)應(yīng)用市場(chǎng)。
為何8 bit MCU可以經(jīng)過(guò)30多年仍歷久不衰?以下從幾個(gè)面向來(lái)分析:
MCU的「C」代表的是controller,并非computing,亦即控制的要素遠(yuǎn)大于運(yùn)算。MCU執(zhí)行的工作在于將I/O、ADC,比較器與串列資料讀入,然后透過(guò)匯集、判斷與不復(fù)雜的運(yùn)算,再將其結(jié)果透過(guò)I/O、DAC、PWM及串列輸出。
以LED燈控應(yīng)用為例,一般只需10~16針腳的8bit MCU即可,使用3通道的PWM驅(qū)動(dòng)R/G/B,或是再增加2 通道控制白光與冷光,幾根I/O針腳或ADC做輸入的偵測(cè)非常簡(jiǎn)單,但LED照明還是維持12%的復(fù)合成長(zhǎng)率,單是在中國(guó)智能燈控市場(chǎng),每月就有超過(guò)100kk的規(guī)模。
簡(jiǎn)單燈控架構(gòu)
即使LED燈控架構(gòu)簡(jiǎn)單,還是有幾個(gè)重點(diǎn)可討論,例如現(xiàn)今的燈控面臨調(diào)光要求越來(lái)越高,不僅要求須有豐富的顏色變化,也要求必須具有色彩改變的綿密性。
這些要求讓傳統(tǒng)16Mhz PWM已無(wú)法負(fù)荷,需要搭配鎖相回路(Phase Lock Loop;PLL)與可程式計(jì)數(shù)器陣列(Programmable Counter Array;PCA)產(chǎn)生高速PWM來(lái)強(qiáng)化燈控效果,例如笙泉MCU提供的144Mhz高速PWM,即可滿足此應(yīng)用。另外,燈控應(yīng)用為了成本考量,一般不會(huì)使用外部震蕩器。因此,內(nèi)部震蕩電路的設(shè)計(jì)就必須具備精準(zhǔn)性。
一般來(lái)說(shuō),室內(nèi)燈控比較少遇到溫度變化所造成的溫飄現(xiàn)象,但是放置在戶外的景觀燈或是LED廣告看板,就會(huì)面臨到日夜溫差狀況的挑戰(zhàn)。
時(shí)鐘是MCU的心臟,內(nèi)部RC時(shí)鐘因溫度所造成的頻率偏差會(huì)造成許多問(wèn)題,首先PWM訊號(hào)也是經(jīng)由內(nèi)部主頻產(chǎn)生,當(dāng)溫度造成的頻飄影響PWM的輸出,會(huì)間接造成LED顏色的微幅改變。更嚴(yán)重的是,有很多燈控應(yīng)用是透過(guò)非同步傳輸?shù)腢ART與控制主機(jī)進(jìn)行通訊,并不像I2C/SPI有時(shí)鐘(clock)訊號(hào)同步控制,UART只要頻率飄移超過(guò)4%,就會(huì)造成整個(gè)通訊異常而導(dǎo)致LED畫面黑屏錯(cuò)誤。
因此,在MCU強(qiáng)化內(nèi)部震蕩電路穩(wěn)定性,這也是8 bit MCU的開發(fā)重點(diǎn),能夠讓產(chǎn)品適用于戶外的燈控需求。
無(wú)線充電發(fā)射端架構(gòu)
至于高速PWM除了燈控以外,還能夠應(yīng)用在許多的消費(fèi)型產(chǎn)品,例如時(shí)下流行的無(wú)線充電,其實(shí)對(duì)于一般5W/10W的充電發(fā)射端(TX),并不一定需使用到32 bit的運(yùn)算,大部分是以16 bit的數(shù)值比較處理。以高時(shí)鐘的8 bit控制器還算迎刃有余。
很多廠商也放入運(yùn)算放大器幫助電流擷取,并降低無(wú)線充組裝電路板(Printed Cicrcuit Board Assembly;PCBA)板上的外部元件?;蚴峭瞥龈哒隙鹊膶S肐C,用MCU整合MOS與其他高壓原件來(lái)進(jìn)一步縮小無(wú)線充電PCBA面積。
如果說(shuō)PWM是很重要的MCU輸出元件,那模擬數(shù)位轉(zhuǎn)換器(Analog-to-digital converter ;ADC)可說(shuō)是MCU最重要的輸入元件。目前主流MCU的ADC已經(jīng)從過(guò)去的8/10 bit進(jìn)化到12 bit,速度已推升到1Msps以上的高速取樣。
由于ADC需要多次擷取累積平均,開發(fā)者大多數(shù)還是會(huì)用16 bit來(lái)存放擷取資料,一般的MCU ADC有效位數(shù)(effective number of bits;ENOB)介于9.5~10.5 bit,國(guó)外大廠的ADC有效范圍也許高些。所以假設(shè)開發(fā)者舍棄最后兩個(gè)最低有效位(Least Significant Bit;LSB),以10 bit資料來(lái)作處理。16 bit的資料范圍還是可以讓ADC累加運(yùn)算有相當(dāng)大的累加空間。除非是使用高精度的delta sigma ADC,否則鮮少應(yīng)用需要用到32 bit來(lái)處理ADC運(yùn)算。
觀察2020年MCU市場(chǎng)規(guī)模,32bit MCU占了55%,8 bit MCU市占率仍有43%,可見得32bit/8bit的選擇不屬于「是非題」,還是要視應(yīng)用端而定。一般來(lái)說(shuō),控制型或大量需要位元(bit)運(yùn)算的應(yīng)用仍然會(huì)選擇8bit MCU,而32bit數(shù)值運(yùn)算與DSP/floating需求的應(yīng)用,才會(huì)選擇32bit MCU(如掃地機(jī)器人與四軸無(wú)人機(jī))。
此外,8bit MCU有些架構(gòu)上的特點(diǎn),如可較節(jié)省程式空間與降低中斷延遲,以下表列出8 bit MCU的幾項(xiàng)優(yōu)勢(shì),并搭配國(guó)外進(jìn)行的實(shí)驗(yàn),從中比較可看出8 bit MCU 在某些運(yùn)行效能較32 bit MCU來(lái)得更有優(yōu)勢(shì)。
現(xiàn)今的消費(fèi)型應(yīng)用日益復(fù)雜,PCBA也隨著元件增加而造成更多的雜訊產(chǎn)生,例如有線傳輸就有可能遇到雜訊的干擾而出錯(cuò),為此采取在MCU當(dāng)中加上硬件CRC,以確保傳輸資料的正確性。
觀察8 bit MCU能夠在市場(chǎng)上歷久不衰,其最大的原因是在某些應(yīng)用方面有不可取代性。長(zhǎng)遠(yuǎn)來(lái)看,32位元MCU持續(xù)擴(kuò)大占有率是不變的趨勢(shì),而今8 bit MCU也隨著市場(chǎng)應(yīng)用不斷的改革出新。預(yù)估接下來(lái)的幾年,應(yīng)該還是一個(gè)8位元與32位元MCU并存的時(shí)代,如同RISC/CISC架構(gòu)在目前的微算機(jī)市場(chǎng)下各據(jù)山頭。
END
來(lái)源:內(nèi)容由半導(dǎo)體行業(yè)觀察轉(zhuǎn)自「CTIMES」,作者廖崇榮,謝謝。版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除。
▍