MCU的應用產品,可以說是隨處可見,像我們經常看到移動電話、汽車、家電產品、玩具類、物聯網(IoT)廣泛應用于這些產品中,MCU基本結構由中間處理器、部分存儲器和外圍函數組成。MCU這取決于控制功能的復雜性和對各種輸入的要求。一般來說,MCU位數越多在處理性能越強,經常看到的8位MCU、16位MCU、24位MCU,所以, MCU位數(shu)越多代表越好嗎?8位MCU還有(you)應用價(jia)值嗎?
回答這個(ge)問(wen)題之前,我們需要搞清楚 MCU中位(wei)(wei)(wei)(wei)的(de)含義。位(wei)(wei)(wei)(wei)是(shi)(shi)二進(jin)制(zhi)數(shu)(shu)字。對于8位(wei)(wei)(wei)(wei)MCU,數(shu)(shu)據存(cun)儲在8位(wei)(wei)(wei)(wei)字節(jie)上。8位(wei)(wei)(wei)(wei)內存(cun)寄(ji)存(cun)器(qi)可(ke)以(yi)存(cun)儲28個(ge)潛在值(zhi)之一(yi)。實(shi)際(ji)值(zhi)的(de)范圍因使用(yong)的(de)整數(shu)(shu)而(er)異(yi)。盡管8位(wei)(wei)(wei)(wei)MCU總線為8位(wei)(wei)(wei)(wei)寬(kuan)(kuan),但地址總線的(de)寬(kuan)(kuan)度可(ke)以(yi)有所不(bu)同。12至16位(wei)(wei)(wei)(wei)地址總線寬(kuan)(kuan)度常(chang)見。例如(ru),16位(wei)(wei)(wei)(wei)寬(kuan)(kuan)地址總線產(chan)生(sheng)65536 (2^16字節(jie)(64) KB)。然而(er),這些(xie)分類只是(shi)(shi)開(kai)始(shi)解釋(shi)具體的(de)8位(wei)(wei)(wei)(wei) MCU實(shi)際(ji)功(gong)能。
8位(wei)MCU應該相(xiang)當廣(guang)泛(fan),但(dan)16位(wei)MCU和32位(wei)MCU相(xiang)比(bi)(bi)之下(xia),使(shi)用性能是有限,當8位(wei)不(bu)夠(gou)時(shi),設(she)計師可(ke)(ke)(ke)以達到32位(wei)MCU求助(zhu)可(ke)(ke)(ke)以帶(dai)來(lai)相(xiang)當大的(de)(de)性能沖擊(ji)。它們可(ke)(ke)(ke)以支持較(jiao)高代數操(cao)作(zuo)(zuo)和浮點數學操(cao)作(zuo)(zuo),雖(sui)然(ran)8位(wei)MCU通常僅限于(yu)MHz但(dan)32位(wei)單元(yuan)的(de)(de)時(shi)鐘(zhong)速率可(ke)(ke)(ke)以達到GHz盡(jin)管有數百個(ge)范(fan)圍MHz單位(wei)比(bi)(bi)較(jiao)常見。
在提高性能的(de)情況下,32位MCU編程的(de)復(fu)雜性也增(zeng)加了,包括多個狀態(tai)存儲器、復(fu)雜的(de)中斷管理(li)、多層(ceng)固件(jian)執行權等。這就是為什么32個單元如(ru)此強大。它們(men)可(ke)以快速處理(li)數千(qian)個需要大量數據(ju)處理(li)的(de)復(fu)雜計算,如(ru)圖像處理(li)或實時(shi)高速系統控制。此外,32位MCU高帶寬數據(ju)流通常需要更多的(de)內(nei)存地址空間(jian)來緩沖。
通(tong)常(chang)來(lai)講,32位(wei)(wei)MCU時鐘(zhong)速度(du)高也會(hui)導致能(neng)量(liang)消(xiao)耗增加(jia)。通(tong)常(chang)來(lai)講,32位(wei)(wei) MCU更密集的(de)(de)計算可(ke)以通(tong)過(guo)犧牲(sheng)更大的(de)(de)能(neng)量(liang)消(xiao)耗來(lai)支持(chi)。但是8位(wei)(wei)和32位(wei)(wei)之間的(de)(de)選擇(ze)并沒有(you)那么簡單。例如,32位(wei)(wei)MCU在一系列計算之前,比(bi)(bi)8位(wei)(wei) MCU一系列計算完成得更快。因(yin)此,32位(wei)(wei)的(de)(de)MCU更節(jie)能(neng)嗎?這(zhe)種(zhong)可(ke)能(neng)性(xing)很大,但可(ke)能(neng)不正確(que)。8比(bi)(bi)特的(de)(de) MCU可(ke)減少總能(neng)耗,有(you)助于延長便攜式設(she)備(bei)的(de)(de)電池壽命(ming)。選型比(bi)(bi)較難一點(dian),要根據(ju)具體情況確(que)定好的(de)(de)能(neng)耗方案(an)。
在(zai)MCU外(wai)設上(shang),8位MCU它可以支(zhi)持一些(xie)加(jia)密功能(neng)來(lai)提高安全(quan)性,但這些(xie)功能(neng)通常是在(zai)硬件中實現的(de),應(ying)該放棄成(cheng)本,這也會增加(jia)相對較低的(de)功耗(hao)MCU負擔。如果產品的(de)更高的(de)安全(quan)功能(neng)很重(zhong)要,則使用更高的(de)安全(quan)功能(neng)MCU理(li)智的(de)選擇。
我(wo)們(men)回到之前(qian)問(wen)到的,MCU位(wei)(wei)數(shu)越多代(dai)表越好嗎(ma)?當然(ran)不是(shi)。應綜合考慮(lv)MCU成本、性能和產品需(xu)求(qiu),這是(shi)一個(ge)復雜的決策過程(cheng),根據產品來選擇MCU的位(wei)(wei)數(shu),這里有一個(ge)建議,如果(guo)特定的應用程(cheng)序(xu)需(xu)要(yao)大量的隨機(ji)訪(fang)問(wen)存儲器(qi),(RAM),32位(wei)(wei)MCU通常比(bi)8個(ge)甚(shen)至16個(ge)設備提供更(geng)多RAM。在(zai)比(bi)較(jiao)各(ge)種MCU延(yan)遲是(shi)另一個(ge)需(xu)要(yao)考慮(lv)的因素。使用8位(wei)(wei)MCU、16位(wei)(wei)MCU或(huo)32位(wei)(wei)MCU執行某些功能也可能很好。然(ran)而(er),如果(guo)應用程(cheng)序(xu)需(xu)要(yao)低延(yan)遲,它可能需(xu)要(yao)16位(wei)(wei)或(huo)32位(wei)(wei)MCU的速(su)度。