典型的物聯網(IoT)系統往往由多台「端點(end-point)」設備組成,這些設備整合的感測器和微型處理器具備足夠強大的智慧和通訊能力,可收集自身所處環境中的資料並進行發送,還可能會採取相應的行動。

這些設備可透過低功耗無線網路進行連接(這些連網設備的管理和運行同樣需要智慧),經網際網路閘道(gateway)上傳至雲端,將所收集的海量資料存儲於雲端。人們可通過型動設備來讀取這些資料,也可以針對物聯網使用場合來對這些資料進行分析。

這些物聯網應用若要取得成功,端點設備必須具備至關重要的兩大特點:極其低廉的成本(以美分而非美元計算),以及最低限度的功耗——設備由紐扣電池提供電能,或是從其所在環境中獲取能量,並且需要持續工作數月乃至數年之久,而非數小時、數天或數周。端點設備的另一個典型特點是它們在通訊不頻繁時通常處於休眠模式。

另一項應用要求是安全性。在物聯網中,安全性絕對至關重要,而且必須從端點設備抓起,貫穿整個網路和雲端。此外,設備上部署的應用軟體必須易於讀取和控制,以便進行維護以及更新系統或設備參數。系統需要具備極高的可擴展性並能夠高效運行,無論網路中僅有幾台設備還是有成千上萬台設備。

挑戰——僅僅3名工程師、短短3個月時間

正如在任何電子產品市場中一樣,假設需求量足以支援量產,在系統單晶片(SoC)上整合多種功能可以帶來諸多優勢:節省物料成本、提升穩健性、縮小尺寸並提高效能。然而,物聯網產品不同於智慧手機等採用前沿技術(frontier technology)的消費級型動設備,尤其是基於感測器的環境監測系統等端點設備,它們需要完全不同的性能/功率值,所考慮的首要因素通常是功耗。

2015年,ARM在一個概念驗證專案中提出一項挑戰:要證明人們可以輕鬆打造出用於嚴格要求低功耗和低成本的物聯網端點設備的SoC,以滿足任何規模企業中的小型設計團隊需求,不論是初創企業還是大型OEM/ODM。此外,該專案的目標是開發一個平台並製作出一款測試晶片的原型,讓這些企業的設計團隊能夠將ARM IP與自己的IP搭配組合,快速構建差異化解決方案。

該項目還要證明ARM的物聯網平台可以把風險降至最低,同時可以降低成本並加快產品上市週期,僅需要最少的工程資源。對於ARM而言,另一個目標是更好地了解物聯網設備在設計和IP上所面臨的挑戰。例如,新型藍牙無線電IP搭配嵌入式快閃記憶體的一項設計中,首要挑戰是整合。

該專案的具體任務是僅憑3名工程師在不到3個月的時間內快速打造出這個名為「Beetle」的原型矽片示範平台。應運而生的平台在2015年第三季度被最終敲定並進入流片(Tape Out)階段(亦稱試生產階段),該平台在單個晶片上整合ARM IP,並且包含配備Cortex-M微處理器的物聯網子系統、藍牙“智慧”低功耗(BLE)無線電,以及嵌入式快閃記憶體(圖1)。

20161205TA02P1
圖1 Beetle測試晶片裸片(右)及其各個部分(左)。



Beetle是一款測試晶片,其各個部分和電源管理僅進行最低限度的優化。但是即使未做很多工作,最初的基準測試和分析結果仍與基於ARM Cortex-M3的類似設備相當。按照設計,ARM Cordio無線電可在電壓低於1伏特的區域內工作,因此能夠以極低的功耗進行通訊。

該測試晶片的架構使用專為物聯網應用量身定制的ARM Artisan物理IP平台。該設計也完全相容ARM的mbed物聯網平台,讓開發和原型製作能夠快速完成。

平台的組成部分

圖2所示為ARM物聯網設備示範平台,它採用台積電(TSMC)的55奈米製程技術製成,並運行mbed OS軟體。平台的核心元件是物聯網子系統,這個在2015年中推出的硬體子系統被設計用來配合Cortex-M3處理器,或是針對要求更高、需要DSP指令的應用配合Cortex-M4。

20161205TA02P2
圖2 ARM物聯網設備示範平台——「Beetle」測試晶片。



第二個關鍵元件是ARM Cordio BLE無線電,該元件採用了「藍牙核心規範4.2版(Bluetooth Core Specification Version 4.2)」,是可供熟悉數位設計環境和設計流程的設計師進行快速整合,且通過預審的一流「硬體巨集(Hard Macro)」組成部分。它旨在配合Cortex-M處理器實現最佳效率,具有1個低於1V的低功耗核心,BLE無線電可提供達到行業領先水準、在工作(Tx/Rx)模式下低於6.5mW(@1V)、在休眠模式下低於700nW的超低功耗。ARM Artisan標準核心、SRAM以及通用I/O物理IP與上述元件相輔相成。

設備、通訊和壽命週期安全性主要透過ARM mbed物聯網設備平台實現,該平台包含開放原始碼mbed OS作業系統和mbed設備連接器服務,後者負責處理與物聯網端點設備之間的通訊。在超過50家mbed生態系統合作夥伴的支援下,mbed提供了大量相容的元件、雲端服務和軟體工具,並且已被世界各地的超過15萬名開發者採用。

主體設備安全主要通過mbed OS μVisor處理,mbed OS μVisor可利用Cortex-M處理器的記憶體保護單元(MPU)在處理器上創建隔離安全域;通訊安全通過mbed傳輸層安全協議(TLS)處理。在許多物聯網應用設備中,安全性必須借助硬體的附加功能得到增強:例如,Beetle演示性SoC在硬體方面採用了ARM的真亂數產生器(True Random Number Generator,TRNG)。

整合

該平台利用標準數位設計流程和工具而打造,讓數位設計團隊即便並不精通無線電或嵌入式快閃記憶體整合,也能夠透過投入最少的工程資源來滿足極其緊迫的開發工期要求。開發者也可獲得部署指南,這樣就基本上讓那些只有數字經驗的工程師具備整合能力。

透過使用獨立於EDA工具的物理設計開發套件(PDK),其中包含時序和物理抽象模型,可以大大減輕無線電整合面臨的挑戰——工程師不需要豐富的混合訊號/射頻專業知識,而且BLE無線電其實在本質上可被當作一個數字IP組成部分來對待。

整合過程採用了一種相對直接、類似硬體巨集的方法,以一個全數位介面連接主機控制器,並透過標準AMBA-AHB匯流排介面實現與Cortex-M物聯網子系統的輕鬆整合。此外,非同步設計也免除了無線電與主機控制對時鐘時序的依賴。

實現的其他功能還包括:邊頻帶(Sideband)訊號用於無線電功率和時鐘控制;無線電I/O內置填補環,用以簡化整合,以及為了用於關鍵且對雜訊敏感的無線電I/O提供輔助。

整合人員只需要遵循一些基本的整合指南即可確保充分隔離雜訊,例如透過電源與保護帶充分去耦合來防止產生襯底雜訊。

為了進一步簡化該過程,我們製作了去耦合金屬-氧化物-金屬(MOM)電容的巨集組成部分,用以提供高面積效率的供電用大容量去耦合電容,還提供了保護帶綜合指南用以防止無線電與數位邏輯之間產生襯底雜訊。為了簡化設計,無線電設計需要最少的外部元件,僅有7個電容、2個電感器、2個晶體和1個天線。

該設計還整合了嵌入式快閃記憶體IP(來自台積電),從而首次為設計團隊帶來了嵌入式快閃記憶體體驗,並且提出了一項比整合SRAM元件更加複雜的挑戰。它要求在低於1V的邏輯域和快閃記憶體之間採用電壓電平移位元,快閃記憶體的讀寫操作需要1.2V/2.5V的供電電壓。ARM Artisan物理IP提供常規和厚氧化層兩種版本的電平移位元電路,以供移位元至2.5V邏輯域之需。

即便針對低功耗系統進行了優化,對嵌入式快閃記憶體的讀取還是會使SoC產生大量功耗,這推動了嵌入式快閃記憶體緩存的開發和使用——緩存技術可以最大限度地減少對快閃記憶體的存取。Beetle測試晶片採用了2個128K記憶體庫,這是在一個記憶體庫中運行應用代碼、在另一個程式庫中下載代碼更新的一個範例。緩存和快閃記憶體控制器是物聯網子系統中的組成部分,可為更加複雜的節點提供最多512K的快閃記憶體支援。

平台發展演化

針對Cortex-M的物聯網子系統連同Cortex-M3處理器、Cordio無線電、低功耗Artisan物理IP庫、嵌入式快閃記憶體硬體巨集(台積電)、mbed設備平台,以及一款MPS2開發板現在均可用於軟體和硬體的快速原型製作與開發。

ARM也在積極豐富其物聯網開發生態系統,以便進一步增強物聯網設備的部署和快速原型製作。ARM近期與中科創達軟體股份有限公司(Thundersoft)在北京聯合創辦了安創空間加速器,為初創企業和OEM等物聯網設備製造商提供講座、培訓和設計服務。

除了在Beetle晶片中使用的物聯網部件之外,ARM還計畫利用TrustZone CryptoCell IP進一步提升安全性。針對更高製程節點的Artisan庫未來也可能會被用來提升效能。