複雜世界中的USB連結
複雜世界中的USB連結
Pedro Pachuca / Silicon Labs
由於通用序列匯流排(USB)具備使用簡易與隨插即用的功能,並且相當耐用,因此被工業和消費設備設計者陸續採用來連結其他應用介面。雖然USB連結已成為大部分嵌入式應用的重要需求,但在大多數的情況下,它只是一般應用的眾多設計需求之一。例如血壓監測機就要靠USB連結將終端使用者的監測數據下載到電腦中,同時也必須執行主要的血壓測量功能。這就有賴於壓力感測器和類比數位轉換器之間一系列複雜的互動來迅速採集數據,並透過密集的數據運作來計算血壓,用戶介面設計則以可讀取的形式正確顯現結果。
大多數的應用都會要求特定範圍的生產成本。對於原已具挑戰性的設計來說,這又增添了一層複雜度。高整合度的USB解決方案不僅能以最簡易的方式建立USB連結,還能提供必要的效能與類比能力,使開發人員以符合成本效益的方式達成設計目標。
新一代USB微控制器
USB在工業和消費應用中迅速獲得採用,這點為嵌入式解決方案的設計人員帶來了挑戰,因為他們需把USB連結融入產品中,且要維持或者還需降低整體的成本。早期版本的USB微控制器(MCU)是為了增設USB介面所開發,但它沒有能力支援其他的功能或周邊設備。USB剛推出時,這些元件在推動USB介面的全面普及上扮演了重要的角色。即使到了今天,這些橋接元件也可以當作有效的解決方案。只要透過輔助晶片,它們就能迅速增添全速型USB,而不必重新設計整個系統。不過,對於成本敏感的應用,這種做法或許就不盡理想。
為了克服這個成本上的難題,新一代的USB微控制器加入了更多的功能與周邊裝置。不過,具備不同周邊功能的USB微控制器雖然在市場上大幅成長,但還是不及高度整合的解決方案;它不僅能加入適當組合的周邊裝置,還能確保這些功能強大到足以支援重要的應用需求。雖然應用需求深受終端產品的特性與功能所影響,但大部分的應用主要需涵蓋三個共通的層面。
第一個所要探討的層面是,CPU的效能以及把USB併入周邊裝置的影響。第二需考量的層面是,在類比功能或周邊裝置上扮演真實世界訊號連結的要角。最後,由於各種應用對成本幾乎都很敏感,因此靠消除外部元件需求來降低成本的USB建置便十分理想。
CPU主要的功能為執行用戶碼,所以它能不能及時執行指令並處理資料便至關重要。一般符合成本效益的USB控制器都會採用先入先出(FIFO)的方式來管理進出的封包,而CPU可將資料存取於緩衝器內,並同時執行其他的作業。
CPU和USB功能的交互作用
我們來看一個USB對序列的橋接應用,以說明它會如何影響CPU的效能。在這個橋接應用的例子中,假設需求是要把序列式的UART橋接到USB的系統上。最簡單的方法,CPU應該要能從UART介面(UART FIFO)擷取資料,並把它存入USB FIFO中,反之亦然。不過,要是同樣這個應用需執行其他簡單的功能,像是反轉字節排序,或者執行複雜的功能,像是套用軟體過濾程式,那該怎麼辦?一開始的簡單作業突然變成了極為複雜的運算,而這需要經過特別的處理才能妥善管理,於是對CPU所造成的負擔便愈來愈大。
一般的協定橋接都是把一個周邊裝置的資料傳往另一個,並且幾近即時。所以CPU必須具備必要的效能來讀寫及運作資料,延遲時間也要能讓人接受。Silicon Labs的C8051F38x和C8051T62x USB微控制器系列則為低價USB解決方案中最好的範例,它具備強化的高速8051 CPU在一或二個系統時脈週期就能執行七成的指令。這種效能不僅足以滿足協定橋接應用的需求,還能支援其他大部分的高速USB應用。另一個優點是,高速CPU能在較短的時間內執行較多的工作,所以能降低整體的耗電量,並使系統在低功耗模式中維持較長時間的運作。

<執行時間短 / 喚醒時間 / 低功耗模式>
圖1:高效能微控制器可使系統在低功耗模式下延長作業時間
將類比功能整合於USB解決方案中
有很多應用都有採用類比式的功能或周邊裝置,像是類比數位轉換器(ADC)和比較器。例如由基礎的電池管理,到高速感測介面中極為複雜的資料擷取系統,每個應用都需使用ADC和比較器來支援廣泛的應用,ADC和比較器必須具備強大的效能,以因應各種不同的需求,同時還必須價格低廉以整合到USB微控制器中。
例如Silicon Labs大部份的USB微控制器就具備內建高效能最佳化的ADC。這些ADC的轉換時間是追蹤一次500 ksps,並具有能在ADC每次轉換後插入時脈循環的能力。
具體來說,當轉換的訊號出現後,每次轉換前都會有一段三個ADC時脈循環的追蹤期。當有好幾個ADC頻道在運作時,這種模式非常有用,因為它能建立正確轉換時所不可或缺的適當安定時間。此外,偵測可編程窗口的效能也可用來比對ADC的輸出暫存器和使用者所編程的限制。這種效能尤其適用於電池管理的應用,因為使用者可限制電池存量要到多低時才發出警示。另外,由於不需動用到CPU的任何效能,因此延遲期間非常短,可進一步提高電池應用的安全性。

<開始轉換觸發 / ADC時脈 /追蹤模式_轉換/追蹤>
圖2:ADC追蹤模式
比較器提供了另一種非常有用的類比功能,並廣泛運用在許多應用中。在很多的應用中都可以看得到,如血糖機中的比較器是用來檢測試紙的置入,或者像胰島素泵則需要快速關機機制來防止電泵當機。在這兩個例子中,比較器的反應時間與耗電量格外重要。在傳統的USB裝置中比較器的規格都很寬鬆,而C8051F38x和C8051T62x/32x系列中的某些成員的比較器可提供可編程反應時間短至100 ns。耗電量也可由使用者來選定,以低到1 µA這點來看,微控制器的裝置所達到的類比效能數值跟一般的離散式類比IC可說是不相上下。當USB的微控制器整合了高效能類比效能時,它就能提供符合成本效益的單晶片解決方案,並替代外部類比元件。
整合式USB微控制器解決方案的優點
如果要把USB整合到單晶片微控制器解決方案裡,要如何才能最佳化系統的設計成本,我們可能需要不同的想法。比方說,在設計中加入USB可能會對時脈樹系統的設計造成不小的影響。如果要確保USB連結的可靠性,維持USB時脈的準確性就很重要。一般USB微控制器都需要設計人員加入外部晶體和相關元件,才能讓USB時脈達到準確度的要求。這種做法不僅會提高解決方案的成本,也會擴大印刷電路板在設計上的複雜度與總體尺寸。此外,USB的速度多半要靠外部的終端電阻來確認,這也進一步提高了USB的建置成本。
將時脈的恢復能力整合到C8051F38x和C8051T63x/32x USB全速元件中,這是創新效能的最佳典範。它剔除了其他USB微控制器常用的外部晶體,並靠內部振盪器針對載入的USB資料串列自行調節。如此一來,透過內部振盪器就能滿足USB時脈的需求。除了移除外部元件來降低成本外,剔除外部晶體還有另一個主要好處;把跟時脈相關的噪音排放消除後,電磁干擾(EMI)就會大幅減少。此外,這些解決方案所整合的終端電阻完全是靠軟體來控制;剔除外部晶體和相關元件以及把終端電阻整合進來是很大里程碑,因為當設計人員把USB加入設計中時,這可助於降低成本與複雜性。
USB的設計還有一個常見的挑戰在於,所需要的軟體開發既複雜又費時。隨手可得的USB驅動程式和程式碼範例則可克服這個難題,並大幅縮短開發時間。比方說,Silicon Labs的USB微控制器開發工具就包含了生產所需的主機和USB裝置的驅動程式。使用這些工具並不需要USB協定或主機設備驅動程式的專門技術,使USB連結能以迅速簡單的方式來建置。
總結
USB連結是許多嵌入式應用的重要需求。高度整合的USB微控制器解決方案不僅能以最簡易的方式建立USB連結,還能提供高效能的CPU功能,附帶的整合式類比效能則有助於降低元件數量和材料清單成本。USB微控制器解決方案能為嵌入式系統的開發人員大幅簡化設計,同時降低成本。
更多C8051F38x and C8051T62x USB微控制器資訊請聯絡: sales@edom.com.tw
<本文曾刊登於新電子>
|
| |