一個古老的嵌入式設計問題,就是在你的新設計中使用 8位還是32位內核?如果你問自己的同事,可能會發(fā)現(xiàn)他們的觀點截然不同。無論是否喜歡,32為內核存在于今。那么這意味著什么呢?它意味著,在某一天,無論你多么努力嘗試避免,都不得不從你喜愛的8位內核轉向新的、復雜的32位內核。這類移植是痛苦的嗎?使用正確的技巧和方法,情況并非如此。 目前的MCU市場分為三個部分, 8位、16位和32位內核(4位內核MCU現(xiàn)在已相當少用,故在本次比較中將其忽略)。對于這三個部分中的每一個,其規(guī)模大體相同。傳統(tǒng)上8位內核占最大的市場份額。根據(jù)一些分析人士報告,可能32位內核市場占有率已經超過了8位內核。即使目前尚未超過,時間也不會太長。32位內核市場份額是迄今為止增長最快的。8位內核和16位內核仍在增長,但在速度方面遠不如32位內核(8位內核的增長速度仍快于16位內核) 在很長的一段時間內, 很多人相信16位MCU可能會被8位MCU和32位MCU取代。目前的32位MCU器件采用最新技術制造(與8位內核和16為內核相比)。 MCU制造商能夠使用這些最新的技術,使得32位MCU體積變得越來越小,因而變得越來越廉價。由于32位MCU所具有的價格和性能,很多分析人士相信,設計工程師將跳出16位領域, 直接轉向具有高性能的產品,保證其設計的未來。 8位MCU無論是在性能還是存儲處理能力方面均達到了其極限。這也是目前存在16位和32位MCU的原因之所在。隨著行業(yè)按照摩爾法則的軌跡發(fā)展, 32位MCU變得越來越小和越來越廉價,以至于在傳統(tǒng)的8位和16位領域方面也具有了競爭力。 與8位和16位MCU相比,這些新的32位MCU具有更高的處理能力。典型的8位MCU的速度在10~30MIPS之間。16位MCU介于20和40 MIPS之間。而新的32位MCU通常具有80~ 100 MIPS的處理能力!這是處理能力和速度方面的重大改進。 與8位和16位MCU相比,很多 32位MCU具有更小的體積,通常具有更低的 功耗。較小的體積通常意味著更好的功耗、更低的電流消耗和更低的有效輸入電壓。一些新產品的休眠電流幾乎無法測量,提供的輸入電壓低至0.5V。這就為32位MCU提供了巨大優(yōu)勢。在當今市場上,功率為王。即使某一應用不是以電池為供電, 目前的設計人仍不得不考慮功耗。對于插入柵板的應用,出于多種原因,仍必須是“綠色”的。某些頂級產品必須針對市場目的,或是因為政府命令和標準。例如,最新的消費電子器件目前均是兼容能源之星(Energy Star)的。 如果你目前正在使用8位MCU,你可能會在下一設計中考慮32位MCU。即使下一代設計仍繼續(xù)使用8位MCU,目前也有很多步驟方法可幫助你做好最終的移植備。今天做一些研究,并進行正確決策,就能為明天的設計提供保證。 當你開始考慮轉移至32位MCU時,或許會認為將遇到一些問題。例如,你認為自己需要學習新的架構;你可能需要重寫自己的所有代碼,以便與新的內核協(xié)調工作;或許你感覺32位MCU過于艱難和復雜,它們不是為了便于使用而設計的,而是為了性能設計的,這意味著,你將不得不考慮它們所擁有的數(shù)以千計的寄存器;或許你關心可能將不得不學習一整套新的軟件工具,你將需要熟悉全新的硬件工具;或許你還認為,32位MCU并不針對你的應用,你無法為自己的設計找出正確的成套外圍器件。你可能會關心上述一種或多種問題, 但它們全都是必要的考慮事項嗎?讓我們分別分析它們。 大多數(shù)設計者認為,當他們從8位MCU轉移到32位MCU時,將不得不學習新的體系架構。問題是大多數(shù)公司有自己的老式8位MCU產品系列和新的32位MCU產品系列。 每年,他們可能仍會為8位產品系列推出少量新的產品,他們希望把握機會,從失誤中學習,并在32位系列中更正錯誤。你或許無法在器件上發(fā)現(xiàn)相同的外圍部件。不同系列的代碼不兼容,或不具有管腳兼容性,因而你將不得不重新完成整個電路板。 盡管真實的情形是這樣的,你無法在不改變設計核心的情況下實現(xiàn)移植,但你也希望無需再次學習所有的內容。一些公司開始發(fā)布新的產品,在8位版本和32位版本之間具有完全相同的成套外圍組件。組件中唯一改變的是其內核。其他部分,包括管腳布局位置,均保持不變。如果你目前使用的是8位MCU,明天就能移植到該公司的32位MCU上,同時仍能使用相同的印刷電路板。這方面的一個例子是Cypress半導體公司最近發(fā)布的PSoC® 3和PSoC 5架構。這兩種架構具有相同的外圍組件、封裝和管腳。PSoC 3架構,采用了新的單周期/指令 8051,運行頻率高達67 MHz,能夠方便地與PSoC 5版本兼容。PSoC 5版本采用了ARM® Cortex™-M3處理器,運行頻率高達80 MHz。這類產品使得從一種架構到另一架構的移植變得簡單易行。 圖1:點擊按鈕,就能從8位變?yōu)?2位 人們還認為,你將不得不為新的32位產品重寫所有的代碼。情形并非總是如此。對于在8位和32位內核之間具有匹配外圍組件的很多這類新產品,它們的固件也是兼容的。這些芯片采用高級語言(如C語言),能夠編寫一套代碼,可以選擇針對8位產品進行編譯,或選擇32位產品并重新編譯。你可以采取略微復雜的方法,使用高級語言編寫代碼,仍調用針對特定內核的寄存器,如果你遵守高級編程的精神,移植仍相當容易。 你可能考慮工具會怎樣呢?與你正在使用的特定內核相比,你可能更關注集成開發(fā)環(huán)境(IDE)。一旦你掌握了它,你不會愿意學習新的。但是,如果你擁有一種可在兩種架構上工作的IDE,情況會怎樣呢?Cypress公司新的PSoC Creator™軟件就是這方面的一個例子。它是一種能與8位器件和32位器件一起工作的集成開發(fā)環(huán)境(IDE)。保證設計未來前景的一種良好方式是,在今天就選擇相應的產品(即使你仍與8位內核打交道),通過該產品,能夠為8位設計和32位設計使用相同的工具。 與軟件工具類似,硬件工具也出現(xiàn)在跨平臺應用方面。一些公司已開發(fā)出了帶有硬件開發(fā)工具箱的模塊系統(tǒng)。這樣,你就能夠拔出8位模塊,并用32位模塊取而代之。板上的所有其他部分保持不變。它們通常采用相同的編程和調試工具。你真正能夠做到,學習一次,普遍適用。 真正應考慮的是,很多公司為銷售8位產品的不同市場開發(fā)了32位產品。這意味著你無法找到支持設計的正確的32位產品。因而,你不僅要為32位產品支付更多的成本,還需花費更多的成本購買外部分離器件。但是,如果你能設計自己的芯片會怎樣呢?類似于 FPGA或CPLD,但以更簡單的方式使用圖形環(huán)境會怎樣呢?如果你能在工具中實現(xiàn)自己的設計方案,創(chuàng)建它并將程序納入器件中,是否會很好呢?太好以至于似乎不真實,是嗎?當然不。使用PSoC 3和PSoC 5,這是可能的。你現(xiàn)在可以圍繞32為內核設計外圍器件,確保它們是適合于設計的正確器件。使用這些新工具,能夠按照你所希望的方式進行設計。 圖2: PSoC Creator軟件內的設計示意 與以往相比,對于設計人員來說目前更重要的是靈活性。市場比以前變化得更快,競爭每天都在加劇,每個人都致力于更低的成本。今天選擇正確的8位器件系列能夠保障你的明天。使用這些新的工具,能夠對8位MCU進行設計,或許它是貴公司產品組合的基本版本,隨后,你可以承擔你的任務,使用相同的項目文件,并將其移植到32位內核上。現(xiàn)在你能夠增加更多性能。很快,它將成為貴公司的高端特色產品,從而獲得更高的利潤。 32位MCU是嵌入式設計的下一代方向。何時采取行動取決于你。或許是現(xiàn)在,或許是數(shù)年內,但在某一點上,你的8位MCU將耗盡其能力,無法滿足當前市場始終變化的需求。大多數(shù)設計人員對該步驟感到恐懼。但它并不一定是痛苦的。我們考察了一些目前可以采取、使該轉變盡可能平穩(wěn)的行動。如果你目前仍在進行8位內核設計,請確保你所使用的產品系列具有32位的對應產品。對于工具來說情況同樣。目前很多公司均提供能在不同架構上使用的相同軟件和硬件工具。今天選擇正確的器件(8位或32位)將能夠幫助你以及你的設計在明天獲得更大的成功。 作者:Cypress半導體公司Robert Jania |