新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 業(yè)界動態(tài) > 八位MCU的創(chuàng)新變革與應(yīng)用

八位MCU的創(chuàng)新變革與應(yīng)用

作者:廖崇榮 時間:2021-08-22 來源:CTIMES 收藏

回顧微控制器()的演變歷程,可說是從早期4/8位(bit)經(jīng)歷過度的16 bit,直到近年非常普及的32 bit。不論在運算頻率、串行周邊與模擬輸入輸出都較過往有顯著的提升。以現(xiàn)今的主流應(yīng)用來看,4 bit與16 bit 幾乎消失,由8 bit與32 bit 瓜分整個應(yīng)用市場。

本文引用地址:http://butianyuan.cn/article/202108/427727.htm

 

為何8 bit MCU可以經(jīng)過30多年仍歷久不衰?以下從幾個面向來分析:

MCU的「C」代表的是controller,并非computing,亦即控制的要素遠大于運算。MCU執(zhí)行的工作在于將I/O、ADC,比較器與串行數(shù)據(jù)讀入,然后透過匯集、判斷與不復雜的運算,再將其結(jié)果透過I/O、DAC、PWM及串行輸出。

以LED燈控應(yīng)用為例,一般只需10~16針腳的8bit MCU即可,使用3信道的PWM驅(qū)動R/G/B,或是再增加2 通道控制白光與冷光,幾根I/O針腳或ADC做輸入的偵測非常簡單,但LED照明還是維持12%的復合成長率,單是在中國智能燈控市場,每月就有超過100kk的規(guī)模。

圖片.png

圖一 : 簡單燈控架構(gòu)


即使LED燈控架構(gòu)簡單,還是有幾個重點可討論,例如現(xiàn)今的燈控面臨調(diào)光要求越來越高,不僅要求須有豐富的顏色變化,也要求必須具有色彩改變的綿密性。

這些要求讓傳統(tǒng)16Mhz PWM已無法負荷,需要搭配鎖相回路(Phase Lock Loop;PLL)與可程序計數(shù)器數(shù)組(Programmable Counter Array;PCA)產(chǎn)生高速PWM來強化燈控效果,例如笙泉MCU提供的144Mhz高速PWM,即可滿足此應(yīng)用。另外,燈控應(yīng)用為了成本考慮,一般不會使用外部震蕩器。因此,內(nèi)部震蕩電路的設(shè)計就必須具備精準性。

一般來說,室內(nèi)燈控比較少遇到溫度變化所造成的溫飄現(xiàn)象,但是放置在戶外的景觀燈或是LED廣告廣告牌,就會面臨到日夜溫差狀況的挑戰(zhàn)。


頻率是MCU的心臟,內(nèi)部RC頻率因溫度所造成的頻率偏差會造成許多問題,首先PWM訊號也是經(jīng)由內(nèi)部主頻產(chǎn)生,當溫度造成的頻飄影響PWM的輸出,會間接造成LED顏色的微幅改變。更嚴重的是,有很多燈控應(yīng)用是透過異步傳輸?shù)腢ART與控制主機進行通訊,并不像I2C/SPI有時鐘(clock)訊號同步控制,UART只要頻率飄移超過4%,就會造成整個通訊異常而導致LED畫面黑屏錯誤。

因此,笙泉在MCU強化內(nèi)部震蕩電路穩(wěn)定性,這也是8 bit MCU的開發(fā)重點,能夠讓產(chǎn)品適用于戶外的燈控需求。


圖片.png

圖三 : 無線充電發(fā)射端架構(gòu)


至于高速PWM除了燈控以外,還能夠應(yīng)用在許多的消費型產(chǎn)品,例如時下流行的無線充電,其實對于一般5W/10W的充電發(fā)射端(TX),并不一定需使用到32 bit的運算,大部分是以16 bit的數(shù)值比較處理。以高頻率的8 bit控制器還算迎刃有余。

很多廠商也放入運算放大器幫助電流擷取,并降低無線充組裝電路板(Printed Cicrcuit Board Assembly;PCBA)板上的外部組件?;蚴峭瞥龈哒隙鹊膶S肐C,用MCU整合MOS與其他高壓原件來進一步縮小無線充電PCBA面積。

如果說PWM是很重要的MCU輸出組件,那模擬數(shù)字轉(zhuǎn)換器(Analog-to-digital converter ;ADC)可說是MCU最重要的輸入組件。目前主流MCU的ADC已經(jīng)從過去的8/10 bit進化到12 bit,速度已推升到1Msps以上的高速取樣。

由于ADC需要多次擷取累積平均,開發(fā)者大多數(shù)還是會用16 bit來存放擷取數(shù)據(jù),一般的MCU ADC有效位數(shù)(effective number of bits;ENOB)介于9.5~10.5 bit,國外大廠的ADC有效范圍也許高些。所以假設(shè)開發(fā)者舍棄最后兩個最低有效位(Least Significant Bit;LSB),以10 bit數(shù)據(jù)來作處理。16 bit的數(shù)據(jù)范圍還是可以讓ADC累加運算有相當大的累加空間。除非是使用高精度的delta sigma ADC,否則鮮少應(yīng)用需要用到32 bit來處理ADC運算。

觀察2020年MCU市場規(guī)模,32bit MCU占了55%,8 bit MCU市占率仍有43%,可見得32bit/8bit的選擇不屬于「是非題」,還是要視應(yīng)用端而定。一般來說,控制型或大量需要位(bit)運算的應(yīng)用仍然會選擇8bit MCU,而32bit數(shù)值運算與DSP/floating需求的應(yīng)用,才會選擇32bit MCU(如掃地機器人與四軸無人機)。

此外,8bit MCU有些架構(gòu)上的特點,如可較節(jié)省程序空間與降低中斷延遲,以下表列出8 bit MCU的幾項優(yōu)勢,并搭配國外進行的實驗,從中比較可看出8 bit MCU 在某些運行效能較32 bit MCU來得更有優(yōu)勢。

 

表一:8 bit MCU的優(yōu)勢


  8位微控制器

   32位微控制器

程序空間優(yōu)勢

  1. 指令長度約1 ~ 3 bytes

  1. 大部分指令都只有1 byte

  1. 有效節(jié)省程序空間

  1. 指令長度皆為4 bytes

  1. Thumb mode也要2 bytes

中斷延遲

  1. 須備分的緩存器(register)較少

  1. 針對中斷服務(wù)涵式(ISR)可快進快出

  1. 須備分的緩存器(register)較多

  1. Load/store 架構(gòu)可能造成額外數(shù)據(jù)搬移

 

 

表二:8 bit/32 bit MCU在中斷服務(wù)例程(ISR)的延遲比較


CAST X8051XC3

ARM Cortex M0


一般狀態(tài)

最長延遲狀態(tài)

一般狀態(tài)

最長延遲狀態(tài)

需在堆棧(stack)

備分的緩存器

PSW, ACC, B

PSW, ACC, B, DPTRs

R0-R3, R12

R0-R15

其他延遲因素

PSW初始化

清除NVICpending

實際量測的ISR 延遲(latency)

10

18

17

24

不預(yù)期狀況

遇到直接或間接尋址的操作數(shù)

(1) N 個字符的load/store
 
(2) 跳躍指令
 
(3) PC(Program counter)的搬移與累加

不預(yù)期狀況造成的多余周期

1 個周期

(1) N 個周期
 
(2) 3個周期
 
(3) 43個周期

 

近年來笙泉的8 bit 6D系列結(jié)合許多原本只存在32 bit平臺的功能,例如直接內(nèi)存訪問(Direct Memory Access;DMA)、循環(huán)冗余校驗(Cyclic Redundancy Check;CRC)、快速通道互聯(lián)(Intel QuickPath Interconnect;QPI)、擴充儲存器區(qū)塊(Expanded Memory Block;EMB)等,而逐步發(fā)展出一種先進式8bit MCU,形同保有8 bit MCU的敏捷性又兼顧32 bit MCU的高性能。

由于周邊串行端口的速度大幅提升,許多訊號傳輸?shù)膽?yīng)用更加無法忍受數(shù)據(jù)的延遲,因此笙泉將DMA放到8 bit MCU中以提高傳輸?shù)男省?/span>

現(xiàn)今的消費型應(yīng)用日益復雜,PCBA也隨著組件增加而造成更多的噪聲產(chǎn)生,例如有線傳輸就有可能遇到噪聲的干擾而出錯,笙泉采取在MCU當中加上硬件CRC,以確保傳輸數(shù)據(jù)的正確性。

圖片.png

圖四 : 8 bit MCU發(fā)展面向


觀察8 bit MCU能夠在市場上歷久不衰,其最大的原因是在某些應(yīng)用方面有不可取代性。長遠來看,32位MCU持續(xù)擴大占有率是不變的趨勢,而今8 bit MCU也隨著市場應(yīng)用不斷的改革出新。預(yù)估接下來的幾年,應(yīng)該還是一個8位與32位MCU并存的時代,如同RISC/CISC架構(gòu)在目前的微算機市場下各據(jù)山頭。

(本文作者廖崇榮為笙泉科技產(chǎn)品企劃營銷處處長)




關(guān)鍵詞: 八位 MCU

評論


相關(guān)推薦

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

關(guān)閉