多核心處理 非對稱處理 異構處理 M2M

兼顧M2M效能/功耗 嵌入式非對稱處理器露頭角

機器對機器(M2M)技術開始滲透到消費性電子、工業、醫療等市場。然而,不同級別的M2M和物聯網(IoT)應用需要不同的用戶介面和人機介面(HMI)、連接和資料數據率設計,再加上嵌入式應用對成本、效率和功耗要求更高,因此所謂萬能的解決方案並不適用。
物聯網迅速增長 簡單易用是關鍵

物聯網市場正迅猛增長,全球預計到2020年將擁有二百億台終端裝置,即使確切的數字值得商榷,但顯然地,大多數互連裝置都將透過有線或無線連接(圖1)。因此,當前及未來的裝置應解決M2M設計挑戰,以滿足需求。

圖1 從感測和使用者介面到雲端的物聯網鏈

第一個挑戰是,必須提供各種解決方案以滿足廣泛的物聯網應用需求。例如,為消費者健康醫療應用收集感測器資料的裝置、智慧家居監控和控制裝置,以及連接到互聯網的帶螢幕用戶介面在效能要求、尺寸和功耗等方面有不同的要求。

的確,能效是主要挑戰之一。全球暖化和不可再生能源短缺等因素,迫使人們要更好地控制能耗,嚴格採取省電措施。因此,互連裝置的大幅增加似乎是對更好地控制能耗此一期許的巨大挑戰。由於這些裝置大多數是可攜式或放在遠端的位置,並採用電池供電,於是又添加了減少維護,並最大限度地提高電池使用壽命等新的挑戰。

此外,這些裝置需要隨時獲取資訊、進行計算和通訊,因此空閒模式下的功耗也非常重要。這些嚴格的要求限制了採用主動散熱(如風扇)的系統,要求架構一開始就要面向低功耗應用,選擇正確的處理器、系統單晶片(SoC)設計、智慧功耗和軟體架構。

另一個參數是這些裝置的物理尺寸。事實上,只有當互連裝置夠小時才能做到無處不在。雖然物理尺寸越小越好,但由於連接和成本限制,最小並不一定是最佳選擇。

一些M2M應用要與不同環境進行互動,因此需不同方式管理資料。以馬達為例,無刷直流馬達(BLDC)或永磁同步馬達(PMSM)等須要即時控制,可透過帶QNX等即時操作系統及相應軟體的微控制器(MCU)提供即時控制。

然而,在需要M2M連接和用戶介面時,不同的時域和作業系統需要實現共存。透過標準的解決方案,很難實現在這些不同的時域之間交換資料,同時還使系統保持高效能和成本效益。

大多數物聯網應用是創新型應用,目前尚未出現。因此,要支援多種應用,硬體解決方案需要帶有豐富的軟體生態系統,才能迅速開發和客製化應用程式。事實上,迅速上市意味著平台要結合優化的硬體與相應的軟體,專注於最終應用和用戶介面而非實際部署。

從感測器到伺服器或雲整個物聯網處理鏈須採集大量資料,這使得根據資料分析進行決策變得不切實際。此外,通訊資料瓶頸和能效也會成為限制因素。事實上,只有每個節點在通訊和計算上實現了平衡,才能實現物聯網和M2M。這意味著每個節點都應具有足夠的功率處理能力和軟體進行本地決策,同時只將必要的資料傳輸給下一個節點。因此,必須在每個節點對處理能力和通訊進行調整。即使這可能與市場上宣揚的觀點或以伺服器為中心的觀點背道而馳,但只有這樣,才能在廣泛的物聯網應用時實現正確的電源管理,降低成本,管理資料並減輕軟體負擔。

安全是實現大規模M2M部署的一個關鍵參數。將機器與雲端存取相連接面臨許多威脅,例如病毒、駭客、逆向工程、知識產權損失、私有資料存取等。只有嵌入式硬體安全技術才能實現相對安全的連接。軟體安全是必要條件,但對此類應用來說並非充分條件。 最後,系統成本將決定物聯網的成功和新應用的採用。每個裝置設計內都包含硬體、軟體和工程開發、維護、品質控制和生命週期等成本。這從另外一個角度(系統成本)進一步顯示了「眾口難調」原則。

因此,物聯網潛力巨大,但要成功滿足物聯網的要求也困難重重:支離破碎的應用便是其中一個挑戰,這些應用對尺寸、成本和性能的要求千差萬別。因此,應用定制、有效性以及智慧系統和節點是重中之重。

應對物聯網挑戰 多核心處理方案出線

為應對某些物聯網挑戰,多核心處理似乎勢在必行,以下將就這方面來加以探討,並介紹非對稱處理的運作方式。

多核心處理介紹

在主要的處理器架構中,如ARM、Power Architecture和複雜指令集電腦(CISC),ARM是最適合低功耗、低成本的架構,它具有許多適用於嵌入式市場的功能,如TrustZone、電源模式、SIMD虛擬化擴展等。

Power Architecture在高階計算的能效方面,特別是其64位元架構,依然領先於業界。CISC(或x86)部署針對桌上型電腦和一些伺服器進行優化。近來,x86晶片瞄準可攜式裝置,但它們仍須證明其效率及市場的接受度。

事實上,採用ARM處理器的系統單晶片具有能效優勢,其峰值性能已接近x86(採用ARM 64位元新ARMv8架構的系統單晶片採用big.LITTLE處理,應抵銷掉任何其他差距)。反之,x86的低功耗仍未實現,峰值性能尚未獲得較大提升,根據摩爾定律推算,可持續的性能提升時代已結束。

在成本、性能和功耗等限制因素下,只有借助多種平台解決方案,才能很好地解決多種細分的應用問題。首先須要提供廣泛的系統單晶片微控制器和處理器。飛思卡爾(Freescale)Kinetis產品組合便是這樣做的,它具有三百多款不同特性、功能、價格和尺寸的元件。例如,KL02是最小的32位元微控制器,尺寸為2毫米(mm)×2毫米。

事實證明,多核心處理架構是滿足汽車應用的可靠性、性能及成本要求的解決方案,特別是電子控制單元(ECU)。在電子控制單元中,借助多核心實現了準即時回應。即時圖像處理也在任務並行處理時享受到了多核心處理技術的許多好處。

多核心處理的優勢

圖2 多核心處理的並行任務對比

採用多核心處理不僅有助於超越摩爾定律的電流限制,而且還能節省功耗。 第一個例子是同時運行二維(2D)HTML5視訊、JPEG編碼和解碼以及Webkit瀏覽器的頁面渲染和滾動,圖2展示了測試情況。

表1 雙核心與四核心對比的應用結果

測試結果清晰的顯示,處理核心的性能倍增可以實現超過1.8倍的增益。事實上,對於JPEG編碼和解碼,雙核心和四核心之間可實現4倍的性能提升。將雙核心與四核心對比,可實現1.25到2倍的提升。有趣的是,單核心與雙核心之間的巨大性能提升表明,多核心是多工處理的有效架構(表1)。

使用多核心會增加功耗,如圖3所示。以i.MX6系列為例,在1GHz下進行Dhrystone測試,從單核心到雙核心功耗增加了41%,從雙核心到四核心功耗增加62%(未考慮DRAM)。因此,功耗的增加(1.6倍)在很大程度上透過性能提升(從1.25增加到4)得到了補償。

圖3 頻率為1GHz時進行的Dhrystone測試中,i.Mx6系列的功耗(單位:mW)

超越標準的多核心處理

多核心處理不僅限於擁有多個類似的核心,繪圖處理器(GPU)也是多核心處理的組成部分。GPU主要用於多媒體應用,也可以用於有效地處理模式,例如將GPU用於多媒體應用可使整體的功耗降低46%,同時提升應用程式的性能(更高的幀速率和解析度)。

還有一個例子也可以實現卓越的性能,同時避免資料介面、記憶體和計算等方面帶來的阻礙,那就是採用Power Architecture的T4240。該系統單晶片獲得業界最佳的Coremark得分,它將12個64位元核心與每個運行速率高達1.8GHz的雙線程以及基於Altivec 128位元核心的SIMD相結合。T4240可處理50Gbit/s資料包。

事實上,要實現這樣的高性能不僅需要較高的處理效率還要認真部署系統單晶片,後者同樣非常重要。整合式資料路徑與硬體加速介面相結合可避免資料管理所引起的處理瓶頸。含有不同層(L1至L3、CoreNet)的記憶體快取記憶體和三個運行速率高達2.1GHz的DDR3控制器可緩解記憶體瓶頸。透過低功耗和嵌入式安全技術實現的強大處理能力可用於工業雲中,實現工業自動化或樓宇控制。

因此,透過採用適當的系統單晶片實現異構處理可減緩阿姆達爾定律(Amdahl's Law),並超越並行實施方案的理論速率。此外,它還能解決M2M能效與性能平衡的問題。

非對稱處理

非對稱(或異構)處理當然是最有意義的突破,不僅挑戰了阿姆達爾定律,而且有效地解決了M2M應用挑戰。事實證明,透過非對稱處理不僅能夠提升多核心架構的性能還能省電。 例如Vybrid VF6xx讓Cortex-A5和Cortex-M4共用某個專用記憶體(圖4)。借助這種非對稱處理可實現新應用。第一個示例顯示是否可以同時運行兩個不同的作業系統(OS)。最有趣的是Linux,可運行應用和用戶介面以及MQX等即時操作系統,即時控制外接裝置,同時不中斷任何其他應用。

另一個示例是針對安全關鍵型應用,其中安全控制部分運行在Cortex-M4上,而對用戶介面和外部世界的存取透過Cortex-A5進行。防複製(Clone)、防篡改、安全引導和高級加密等嵌入式硬體安全功能以及1.5MB的片上SRAM實現M2M所需的最高安全水準。多個介面(CAN介面、雙USB 2.0 OTG介面、帶有L2交換機的雙10G乙太網介面、ISO7816 UART介面等)增加了靈活性,可支援多種M2M應用。

物聯網的迅猛增長為M2M應用帶來了巨大的潛在市場,該市場需要形形色色的解決方案,但都具備以下特徵,即高能效、適合的物理規格(即尺寸最小)、能夠即時處理用戶介面和資料,實現最佳的平衡通訊,且成本適當。

多核心處理器SoC提供高能效

圖4 非對稱處理器架構示例

為了滿足所有這些嚴格的要求,推薦採用基於多核心處理器的系統單晶片,因為它們透過嵌入式功能可提供更高的能效和性能。實際上,明智地部署系統單晶片是緩解所有與高性能並行處理相關的瓶頸的唯一方式;而非對稱(異構)處理可提升功耗和處理效率,同時還支援新應用。

有別於多個處理器,從超低功耗到高性能處理器,以及不同的處理類型(GPU、SIMD和DSP)、適當的暫存和對系統單晶片中實現的介面進行硬體加速,似乎是滿足M2M應用要求的最佳方式。借助嵌入式板卡(模組)可實現更高水準的解決方案分割,提供上市速度更快、更廣泛的解決方案。

(本文作者任職於飛思卡爾)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!