今天半導體結構在不斷減小的幾何線路分佈正改變著微控制器經濟學。新的嵌入式設計之開發系統成本快速成長,但微控制器上的數位邏輯線路成本正在不斷下降。這使得提供具有更多周邊的微控制器更具經濟性,尤其是如果這些周邊屬於數位設備、UART、CAN控制器和乙太網Ethernet MAC等。在目前市場上看到,帶有更複雜周邊的微控制器正不斷出現。如果將Flash和RAM也看作是周邊,那麼今天許多微控制器都是90%以上的周邊。
舉個例子,考慮一下目前市場上銷售的8051和許多衍生裝置。在10年前,8051幾乎完全作廢,但是現在有許多新產品還在採用8051核心,為提高性能,周邊的數量和種類都有了顯著增加。許多熟悉8051的工程師都在關注這些新產品。他們感覺到自己瞭解8051核心,所以採用基於8051的裝置比採用其他核心更簡單。但是僅僅是熟悉微控制器核心就足夠了嗎?
連結介面問題
在探討這個問題之前,先瞭解一下新微控制器發展的過程。大多數微控制製造商都有許多不同的分類選擇,一位製造商甚至有500多個不同的分類。這些分類對於設計者為特定應用充分選擇周邊提供了不同的條件。
一種更好的方式就是選擇已經具備了許多工程項目需要的所有周邊和靈活輸入輸出排列的微控制器。因此,用戶可以選擇和配置每個專案要求的具體周邊組合,顯著降低了PCB重新設計所需的工作量。選擇這類微控制器可以使硬體更改更容易。這可給用戶更有彈性地選取需要實際的周邊組合來迎合設計 。
此外,工程師藉由降低購買和儲存的不同零組件數量也可以獲得公司內的物料供應人員的支持。在過去製造商都以能提供各種各樣的微控制器為榮,實際上,這對於客戶和製造商本身來說都無異於一場物流供應方面的噩夢。事實上,供應商應更好利用不斷降低的矽成本製造更少分類、但功能更強大的微控制器。
大多數工程師會認為軟體功能是他們之所以不放棄正在用的老舊微控制器系列的原因之一,所以下文將接著討論軟體問題。
考慮一款新的微控制器時,需要解決兩個主要軟體問題:
- ●在核心中完全運行的書寫演算法。包括算術演算法(比如,過濾演算法)或產品的主要環路;
- ●周邊初始化和介面的軟體。
首先來談談在微控制器核心中運作的軟體。過去的幾年裏,C編譯器的使用不斷普及,並且效率也有所提高。這意味著已經到了C編譯器可節省的編程工作比所有應用程式中性能損失的程度更重要。還有一些精確時間軟體功能需要用組合語言程式編寫,但是這些程式也可能打包在C編譯器編寫的程式中。
除了編譯器的效率外,微控制器總體性能有了明顯的提高。許多工程師都利用比以前性能強10倍的現代控制器並轉變成用C編譯器編寫軟體,而寫出的產品比之前的軟體產品運作速度更快。
採用C編譯器的另外一個驅動因素就是許多產品都普遍需要的代碼數量增加。在組合語言程式中編寫8K代碼可能相當於100張A4紙的軟體。編寫和維護這種數量的代碼需要耗費大量的工作量。一旦開始著眼於要求32K或64K代碼的應用程式,那麼使用編譯器自然而然就成了99%應用程式的唯一實際選擇。
如果認為下一個開發專案需要使用C編譯器,那麼就可以做出一個顯而易見但卻是驚人的決定。包括C語言在內的高階語言可以使工程師避開微控制器核心的繁雜工作。如果我們編寫Counter=Counter+1(or Counter++)
突然意識到,其實不必在乎它在應用程式中究竟如何實施。這就是編譯器的主要目的所在,所以也就不足為怪。多少有點令人驚奇的是,這表示不必擔心核心本身的細節。只要變數Counter增加,就不需要知道結果是否使用累加器或暫存器架構獲得。
接著來談談周邊編程的問題。在市場上許多新款微控制器中,周邊數量迅速成長。越來越多的晶片面積都應用在周邊上,其複雜性和功率似乎也在不斷增加。看一看今天市場上的一些8051微控制器,我們可以看到多達300~400頁的資料表。其中會發現只有25頁內容是用左核心的工作原理裏。剩下的頁數都是關於周邊的,從重定控制器、複雜的ADC到更複雜的通信控制器(比如CAN、USB與Ethernet)。
這讓我們得出一個結論,使用周邊的軟體比完全在核心內運行的軟體所花費的工作量要多得多。
進一步解釋便是,專門針對周邊的微控制器資料表越多,對於瞭解核心操作來說就越無益。
解決複雜的周邊問題
作為面對過多複雜周邊設計的工程師,為了避免淹沒在那些周邊所有預期能實現的用途與繁重任務裡,工程師該怎麼做呢?所幸,解決這些問題的說明就在手邊。有些微控制器製造商提供能夠生成源碼的工具。在(圖一)中,可以看到這種工具的一個例子,如CyanIDE Integrated Device Environment IDE,說明了只需使用滑鼠就可以設定UART串列傳輸速率的便捷方法 。
《圖二 μCOG1m 16-Bit周邊密集微控制器》 |
|
有了這些工具,便無需連篇累牘那些冗長的資料表,就能算出每個暫存器中應該編程的數值。這意味著當開始為每個周邊編寫說明時,工程師所做的觸手可及。這種工具可以給新款微控制器所涉及的工程量帶來更大的變化空間。
安枕無憂的選擇
本文一開始便對一項假設提出了質疑,即選擇帶有較為熟悉的核心微控制器一定會降低新專案設計工作所涉及的學習難度與任務量嗎?對所涉及的工作進行簡單分析後,可以清楚的發現這種假設是不正確的。如果使用C編譯器,即使具備為數不多的周邊裝置,那麼對核心的熟悉比起幫助周邊編程的工具來說其重要性要小的多。
實際上,如果新製造商擁有有效而且綜合的工具幫助進行周邊的編程,那麼選擇新製造商的微控制器,比選擇同一系列產品和製造商,但是具有重要新型周邊的微控制器更容易。工具和可配置性的組合比擁有核心方面的豐富經驗要重要的多。
(作者為Cyan賽恩科技亞洲區域經理)
|
|
在使MCU 能夠達到電流預算的所有功能中,斷電模式最重要。低功耗MCU 具有可提供不同 級別功能的斷電模式。例如,TI 超低功耗MCU MSP430系列產品可以提供5 種斷電模式。低功耗模式0 (LPM0) 會關閉CPU,但是保持其他功能正常運轉。相關介紹請見「
選擇低功耗MCU 」一文。 |
|
車載液晶電視/顯示器市場發展很快,用戶希望廠商提供低成本功能齊全的產品。工程師需要設計簡單方便、應用靈活的整體解決方案。本文介紹了車載液晶電視/顯示器專用MCU以及配套的單晶片電視解碼器特點以及應用實例、設計方法。你可在「
車載液晶電視/顯示器專用MCU及設計方案
」一文中得到進一步的介紹。
|
|
我們已經進入了這樣一個時代,即開始期望和要求電池供電設備實現更多的功能。PDA的電池僅工作了一天,而且如果還啟動了時間提示功能,那麼電池能量將會很快耗盡。 今天,在相同的條件下,PDA將能夠工作一周。在「實現MCU應用的低功耗」一文為你做了相關的評析。 |
|
|
|
|
|
Accelerated推出用於Atmel AT91RM9200 MCU 的Nucleus即時作業系統。該RTOS為遠端資訊系統、產業自動化、醫療系統以及POS終端的 開發人員提供了一個完整、高性能的整合解決方案。相關介紹請見「Accelerated推出支援AT91RM9200 MCU的RTOS」一文。 |
|
日本iSuppli公佈了微控制器(MCU)市場2004年全球 銷售額排名。第1到第3位仍是2003年那些老面孔。第1位是獲得21.3%市場份額的日本瑞薩。你可在「
04年全球MCU市場瑞薩居榜首市場份額超21%」一文中得到進一步的介紹。 |
|
在MCU產品中,8位MCU和32位MCU被認為是兩大支柱產品,32位MCU伴隨新興通信網路應用, 也開始進入快速增長期,成為眾多企業競爭的焦點。在「
MCU新舊體系與核心架構之爭」一文為你做了相關的評析。
|
|
|
|