Global Sources
電子工程專輯
 
電子工程專輯 > 處理器/DSP
 
 
處理器/DSP  

發掘無線模組的處理能力

上網時間: 2014年03月06日     打印版  Bookmark and Share  字型大小:  

關鍵字:無線模組  微控制器  蜂巢式系統  M2M  DSP 

作者:Evan Jones,Sierra Wireless公司M2M工程副總裁

如果嵌入式設計者能夠充分利用在無線模組中經常被忽視的處理能力,就能免於使用系統微控制器,進而搭建出一種體積更小、效率更高、生產成本更低的蜂巢式系統。本文將討論如何選擇一款可同時作為微控制器和數據機的模組。

在為嵌入式系統增加無線連接功能時,許多設計者都會選用某種無線模組,因為它們是預先整合的元件,只需非常少量的配置就能實現蜂巢式通訊。由於預先經過行動網路應用認證,因而能夠在全球內部署。同時,開發人員使用序列介面就能與模組互動,而不必關注蜂巢式數據機收發器設計的複雜細節。

設計者時常會共同使用無線模組和標準微控制器──這也是材料清單中成本最高的兩項。微控制器管理應用程式,並與週邊設備互動,而無線模組主要用於處理蜂巢式通訊。

然而,許多無線模組能夠做的並不只是管理蜂巢式通訊而已,因為它們一般都整合了包含32位元ARM微控制器的晶片組。透過存取這種處理能力,設計者能夠使用無線模組管理整個應用程式。模組可以作為中央處理器和數據機,因而不必使用獨立的微控制器。這樣設計出來的系統將更加緊密、功耗更小,材料成本也將顯著降低。

圖1顯示一個整合ARM9微控制器的無線模組例子,這是嵌入式系統中使用最廣泛的控制架構之一。

圖1:無線模組的詳細方塊圖,其中包括ARM9核心。
圖1:無線模組的詳細方塊圖,其中包括ARM9核心。

1990年代開始設計無線模組中的晶片組時,ARM9是整個行動電話的核心微控制器。如今,在嵌入式蜂巢式數據機作為模組的角色時,ARM9的主要功能是蜂巢式控制,通常只使用了不到總處理能力的20%,因此有額外足夠的能力可用來做其它事情。

然而,設計者不能一味地認為其無線模組可支援整個應用,因為並不是所有模組都能提供存取至ARM9的額外能力。一些模組雖然使用了與完全可程式模組相同的基本晶片組,但交貨時只是ARM9接腳的子集連到了外部封裝,因而無法存取其核心。

目前,在決定使用哪一款可提供完全ARM核心存取的模組時,設計者擁有多種選擇。有些模組整合了ARM9核心的ARM946系列,並含有ASIC中經常使用的DSP功能。至少有一家供應商在開發整合其它ARM核心(包括ARM926和ARM11)的模組,所以設計者很快就會有更多的選擇。

雖然軟硬體要求隨具體應用而異,但都必須認真考慮以下的基本原則。

硬體

為了確保模組資源足以支援整個應用,必須檢查可用的MIPS和記憶體資源以及功耗,特別是在使用電池的應用中。

CPU MIPS在應用程式以及用於蜂巢式通訊的韌體之間共享CPU MIPS資源。表1提供典型2G M2M模組中每種服務所需耗用的平均CPU資源。

表1:每項服務所需耗用的CPU MIPS資源。
表1:每項服務所需耗用的CPU MIPS資源。

為了確定應用中可用的MIPS數量,必須從總MIPS中減去蜂巢式通訊所需的MIPS。舉例來說,如果一個執行於104MHz的無線模組總MIPS為87,峰值GPRS傳輸將用掉大約16個MIPS(18%),那麼全部的87 MIPS減去GPRS用的16 MIPS,剩下的71 MIPS可留給應用使用。

尋找有助於大幅提高核心性能的功能。例如,直接存取用於UART的低層API,包括中斷處理器,從而使CPU更易於驅動用於GPS、藍牙或ZigBee等外部晶片組。

記憶體:在蜂巢式韌體和主應用之間也共享模組的記憶體資源。ARM9核心中的記憶體管理單元用於保護所有劃分的記憶體,並保持各自間的獨立。圖2顯示3G模組中韌體所使用的記憶體。

圖2:在模組中的記憶體使用情況。
圖2:在模組中的記憶體使用情況。

在該模組中總共有128MB NAND快閃記憶體和64MB RAM記憶體。蜂巢式韌體需要82MB NAND快閃記憶體用於存放非揮發數據以及43MB RAM用於全局變量、堆積記憶體和呼叫堆疊。剩餘46MB NAND快閃記憶體和21MB RAM適用於主應用程式。由於NAND快閃記憶體不能直接執行程式碼,因此程式碼需要複製到RAM才能執行。

對於很長使用壽命的應用,有些模組透過減少快閃記憶體擦除次數來延長快閃記憶體的壽命。在硬體或軟體重設期間系統會保持某些變量中的數據不變,從而可提高重啟的速度,特別是在意外事件發生後的重啟,因為數據仍保存在RAM中。

功耗:大多數的模組包含節能特性,特別是當系統閒置時。待機功耗一般在1.9mA至5.7mA之間,對於電池供電系統來說已經足夠。然而,對於具有極端功耗要求的應用而言,這個功耗也許還不夠低,在這種情況下使用外部微控制器可能會有更好的結果。

尋找在蜂巢式功能未啟動時自動進入睡眠模式的模組,最好具有諸如快速啟動過程的特性,或根據作業狀態為各個模組供電的能力,這些技術都有助於降低功耗。在進行無線傳輸時,一些模組會暫停其他電池密集型的作業。

軟體

RTOS對於嵌入式系統來說最佳的選擇是多工、即優先級的即時作業系統(RTOS),這些RTOS不僅免授權費,而且支援用戶熟悉的編程語言,從而使總擁有成本維持最低。

市場上有幾款模組具有針對M2M應用定製的即時作業系統。這些模組包含蜂巢式協議和TCP/IP堆疊,並且針對空中通訊和功耗進行了最佳化。此外,還要考慮音訊特性,如車用VDA Class 2A、音訊診斷和濾波器以及音訊播放器/錄音器/探測器功能。諸如自動防故障檔案系統、SSL和加密引擎等資料保護功能,均有助於增強應用的安全性。

ARM9也許要管理外部非同步事件,因此需要精確的定時功能。在此情況下要求即時作業系統能夠縮短非同步事件的延遲,以及能夠驅動以SPI或I2C連接的多個IC。這樣就能擴展設計,使其具有額外的功能,如CAN控制器、加速度計或汽車感測器、乙太網路或Wi-Fi控制器,或輔助性USB或UART設備。整合的硬體計時器加上低中斷延遲使其得以為外部事件加注高精密度的電子時戳,因而不需使用外部計時器。

由於許多嵌入式M2M設備必須很長時間提供服務,因此選擇支援遠端軟體升級的即時作業系統至關重要。如果廠商改變其網路,或者應用需要更新時,可以透過軟體更新功能來實現。空中遠端更新可減少服務呼叫次數,並有助於避免召回。

應用程式庫:精心選擇預先配置好的軟體元件庫可以節省設計者編寫通用函數程式碼的時間,加速開發進度,讓除錯變得更簡單、更快速。表2提供程式庫和函數的範例清單。

表2:範例資料庫。
表2:範例資料庫。

開發環境:一些模組可提供基於PC的整合開發環境(IDE),方便設計人員開發、編譯、下載、測試和除錯整個應用。最好找到基於Eclipse的IDE,這是一種多語言的環境,可以支援Java、C或C++。其它可以節省時間的特性包括帶工具鏈和GCC參數的計畫編譯、嵌入式除錯器以及用AT、追蹤和記憶體控制方法監視目標的能力。與應用程式庫一併提供的通常還有樣本程式和範例設計。

設備管理:為了便於從開發到推廣的過渡,並支援線上維護,一些模組還提供基於雲端的管理服務,允許使用網站入口進行遠端監視和升級。這些服務提供在任何地方測試、安裝和維護任何規模無線模組的方法,同時確保安全性以及低成本。當整個應用程式在模組上執行時管理服務尤其有用,因為無線監視和升級可用來評估和修改應用程式以及與電信有關的功能。

本文小結

使用無線模組的額外處理能力取代微控制器可產生體積更小、效率更高、生產成本更低的蜂巢式系統。並不是所有無線模組都可被配置為應用微控制器,但設計者有許多選擇。在作出選擇之前,重要的是考慮硬體規格,包括處理能力、記憶體資源和功耗。設計者還必須權衡諸如即時作業系統和軟體庫等軟體編程選項。此外,無線模組還應該可提供完整、易用且可支援設備管理服務的開發環境,這樣實際部署後的系統就能實現更加便捷、更低費用的長期維護。

(參考原文:Unlock the processing power of wireless modules,by Evan Jones)





投票數:   加入我的最愛
我來評論 - 發掘無線模組的處理能力
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首