32位處理器推動多媒體的發(fā)展
隨著嵌入式系統(tǒng)朝著越來越復(fù)雜的方向快速發(fā)展,設(shè)計工程師必須面對如何選擇處理器的新挑戰(zhàn)。在許多先進的應(yīng)用中,靈活、低成本的8位和16位微控制器(MCU)正在逐漸地被32位的系統(tǒng)芯片(SOC)所取代。當然,8位和16位處理器在嵌入式系統(tǒng)中仍然保持其應(yīng)有的地位。但是,發(fā)展32位處理器的理由很多,如考慮系統(tǒng)成本、產(chǎn)品可擴縮性和性能要求等,這僅是幾個例子。下面我們以多媒體市場為背景來討論轉(zhuǎn)向32位MCU的主要原因。
要了解為什么32位MCU在多媒體領(lǐng)域中如此流行,首先要考慮到8位MCU不具備保證多媒體系統(tǒng)進行實時操作所需的帶寬和計算能力。16位MCU畢竟能提高速度和性能,另外,它們還比8位 MCU消耗更低的待機電流并且通常能提供更大的片內(nèi)存儲器。
一個很明顯的問題是,為什么不轉(zhuǎn)向16位MCU?答案很簡單。采用32位MCU系統(tǒng)的實際成本與當前可提供的許多16位MCU解決方案相當,但性能卻比16 位 MCU提高很多。下面簡要指出造成這種成本相近的幾種原因。
制造工藝
隨著半導(dǎo)體制造工藝幾何尺寸不斷縮小,32位MCU結(jié)構(gòu)變得越來越便宜。芯片幾何尺寸減小,引起管芯尺寸變小,從而使每個圓片上可提供更多的管芯。這直接降低了每顆芯片的成本。另外,隨著32位MCU的制造工藝減小到0.18μm或0.13μm (而8位MCU一般為0.25μm工藝),能夠提高運行速度。例如,大多數(shù)8位和16位MCU的正常工作速度低于100MHz,而0.13μm工藝的32位MCU能夠比這個速度高出許多倍。
有兩個主要原因可以解釋為何以較小的工藝尺寸設(shè)計8位MCU是不經(jīng)濟有效的。首先,由于8位MCU帶寬總體來說不夠高,因此工藝尺寸減小所帶來的任何速度提高都是無用的。第二,通常8位MCU的價格目標為2美元左右,這個價格太低,無法支持某些更小工藝尺寸的實現(xiàn)。
更小工藝尺寸雖然不適合8位MCU的價格目標,但對32位MCU來說卻是個優(yōu)勢,因為減小其工藝尺寸能給適合SOC的一組外圍電路留出余量。更重要的是,大約為5美元的價格與16位MCU的價格相當,但性能卻產(chǎn)生了飛躍。
編程模式
另外一個與價格有關(guān)的考慮是32位MPU結(jié)構(gòu)的編程模式。由于增加了處理器的數(shù)據(jù)總線位數(shù),還增加了一個由32位數(shù)據(jù)寄存器和地址寄存器組成的寄存器文件,所以大大提高了編譯器的支持能力。另外,32位MCU通常均支持16位和32位操作碼,從而增強了指令集結(jié)構(gòu)的靈活性,提高了代碼密度,并且使許多操作在單個內(nèi)核時鐘周期內(nèi)就可完成。
以上兩個特點都減少了對手工編制匯編代碼的依賴性,因此程序設(shè)計師主要使用諸如C語言的高級語言進行編程。基于C語言的編程模式直接降低了開發(fā)和維護成本。32位MPU能夠?qū)⒐粳F(xiàn)有的應(yīng)用轉(zhuǎn)變成以前從未想到的MCU環(huán)境。
擴展的外圍支持
如前所述,MCU在多媒體系統(tǒng)中通常起到系統(tǒng)控制器的作用。它們不適合用于大量的數(shù)據(jù)處理,這是數(shù)字信號處理器(DSP)做的工作。實際上,MCU控制DSP的運行,并且管理人機界面、操作系統(tǒng)和與其它系統(tǒng)組成的連接。
正是這種與外圍電路的連接推動了32位MCU的發(fā)展,許多廣泛應(yīng)用的外圍電路(高速USB2.0、PCI等等)都支持高速率數(shù)據(jù)傳送,但是用8位或16位MCU很難或無法處理這些數(shù)據(jù)流。例如,在網(wǎng)絡(luò)連通領(lǐng)域中,如果數(shù)據(jù)寄存器最大長度為8位或16位,則無法支持全套的網(wǎng)絡(luò)協(xié)議。