當(dāng)前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]今天的便攜式設(shè)備通過持續(xù)的活動監(jiān)測和情境感知來了解周圍環(huán)境。為了實現(xiàn)這個功能,設(shè)備集成了越來越多的傳感器和外設(shè),由此產(chǎn)生大量數(shù)據(jù)。這反過來使得集成更強(qiáng)大的CPU變得很有必要,以便執(zhí)行越來越多的計算。同時,必須縮小設(shè)計尺寸,降低成本和功耗,但又不犧牲最終產(chǎn)品不斷提升的功能要求。

作者M(jìn)arios Iliopoulos, Fotios Kerasiotis, Nikolaos Moschopoulos

引言

今天的便攜式設(shè)備通過持續(xù)的活動監(jiān)測和情境感知來了解周圍環(huán)境。為了實現(xiàn)這個功能,設(shè)備集成了越來越多的傳感器和外設(shè),由此產(chǎn)生大量數(shù)據(jù)。這反過來使得集成更強(qiáng)大的CPU變得很有必要,以便執(zhí)行越來越多的計算。同時,必須縮小設(shè)計尺寸,降低成本和功耗,但又不犧牲最終產(chǎn)品不斷提升的功能要求。

傳感器中樞(Sensor hub)的概念被越來越多地采用到當(dāng)今的SoC設(shè)計中,以滿足“始終運行”的傳感器/外設(shè)訪問和控制(甚至以高速率)的要求,而且不會增加功耗和設(shè)計成本。傳感器中樞可以是小型CPU內(nèi)核,與傳感器/外設(shè)連接,并通過執(zhí)行后臺操作并僅在需要時“喚醒”主處理器,充當(dāng)功耗較大的主處理器的卸載引擎的角色。

用于傳感器采集的基于處理器的典型架構(gòu)

應(yīng)用在集成多個傳感器的系統(tǒng)中的典型基于微控制器的架構(gòu)包括以下組件[1]:

a)一個微控制器單元(MCU) - 也稱為處理子系統(tǒng),MCU控制系統(tǒng)內(nèi)所有構(gòu)成部分的運行并處理數(shù)據(jù)。它包括一個處理器、一個內(nèi)部或外部存儲器、以及本地數(shù)據(jù)處理所需的所有外設(shè)和子系統(tǒng)。在典型的基于MCU的架構(gòu)中,控制器執(zhí)行所有傳感器數(shù)據(jù)收集、處理和存儲。

b)傳感器元件(或傳感子系統(tǒng)) - 一組傳感器,可以是無源或有源,數(shù)字或模擬的任意組合。這些傳感器將來自外部環(huán)境的輸入信息轉(zhuǎn)換成電信號。在大多數(shù)應(yīng)用中,傳感器用于監(jiān)測運動、光、氣壓、振動、流速、溫度、通風(fēng)、電等。通常來說,傳感器元件在其輸出端生成電壓或電流信號。在數(shù)據(jù)被處理、存儲和傳輸之前,這些信號一般會被放大,并通過模數(shù)轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字信號。

c)無線電 - 一種短距離收發(fā)器,提供與主機(jī)的無線通信。

d)電源子系統(tǒng) - 通常連接到電池或能量采集器。該子系統(tǒng)充當(dāng)可控單元,可單獨打開和關(guān)閉系統(tǒng)構(gòu)建塊的電源。它通常是MCU軟件中的一個軟件塊。電源子系統(tǒng)負(fù)責(zé)為每個單獨的硬件組件提供合適的電源電壓。

在具有多個傳感器的更復(fù)雜的基于微控制器的架構(gòu)中,在硬件中集成了智能,用來控制各種子系統(tǒng)。 例如,從傳感器到存儲器傳輸數(shù)據(jù)耗時又耗電,這一部分工作其實可以從處理器轉(zhuǎn)移到直接內(nèi)存存取(DMA)單元。電源管理單元(PMU)還可以被編程為對特定事件做出反應(yīng)并關(guān)閉各種子系統(tǒng),例如外設(shè)、傳感器和無線電。

 

 

圖1. 基于微控制器的典型架構(gòu)

這種先進(jìn)架構(gòu)的目的是盡可能減少主MCU活躍的時間。原來需要MCU干預(yù)的任務(wù),現(xiàn)在可以由智能子系統(tǒng)執(zhí)行。然而,還存在一個問題,就是每次有來自傳感器、無線電或各種子系統(tǒng)的事件時,MCU都需要被喚醒,因為它是唯一可以部署邏輯來處理這些事件的元件。

優(yōu)化功率的技術(shù) - 添加傳感器節(jié)點控制器

為了延長具有多個傳感器的系統(tǒng)的續(xù)航時間,已經(jīng)提出了很多種降低功耗的技術(shù)[2],[3]。有些技術(shù)在媒體訪問控制層面進(jìn)行節(jié)能[4],[5],有些技術(shù)從數(shù)據(jù)聚合或融合著手[6],[7],有的則采用芯片設(shè)計優(yōu)化技術(shù),如片上功率門控[ 8]或動態(tài)電壓調(diào)節(jié)[9]。

本文介紹了一種不同的技術(shù),來優(yōu)化多傳感器系統(tǒng)中的電源使用,同時將主處理器用于數(shù)據(jù)采集的喚醒時間控制到最短。該技術(shù)基于集成復(fù)雜的硬件狀態(tài)機(jī),可以接管主處理器上的重復(fù)性任務(wù),如傳感器輪詢和讀取,從而實現(xiàn)集成的低功耗傳感器中樞概念。專用硬件狀態(tài)機(jī)可以更快地喚醒,并使用更少的模塊來將數(shù)據(jù)從傳感器/外設(shè)傳輸?shù)絻?nèi)存,以及反向傳輸,而主處理器保持休眠狀態(tài)。此外,傳感器中樞可以對數(shù)據(jù)執(zhí)行簡單操作,因此主處理器只需要在要求復(fù)雜數(shù)據(jù)操作時喚醒。

這種方法的一個很好的例子,是集成在Dialog半導(dǎo)體公司的DA1469x藍(lán)牙低功耗SoC解決方案中的傳感器節(jié)點控制器(SNC)硬件模塊[10]。SNC是一種微型硬件狀態(tài)機(jī),能運行由有限的指令集組成的微碼(μcode),有助于開發(fā)人員操控通信控制器(即SPI、I2C等)、傳感器和外設(shè)。它可以通過使用其最小指令集自動運行,無需喚醒系統(tǒng)的其余部分。這允許它執(zhí)行眾多操作 - 例如:輪詢傳感器狀態(tài)位、比較寄存器與內(nèi)存地址內(nèi)容(值)、將數(shù)據(jù)從通信接口傳輸?shù)较到y(tǒng)RAM以及比較分支 - 同時消耗最低電流。

 

 

圖2. 具有傳感器節(jié)點控制器外設(shè)的應(yīng)用處理器架構(gòu)

SNC的主要特性如下(圖3):

·傳感器節(jié)點指令集(SeNIS),包含10條微碼生成指令,適用于:

o輕松創(chuàng)建指向內(nèi)存緩沖區(qū)的指針

o輪詢串行接口狀態(tài)位

o比較閾值

·系統(tǒng)RAM用于微碼存儲和數(shù)據(jù)

·DMA功能,用于將數(shù)據(jù)直接從通信接口傳輸?shù)较到y(tǒng)RAM

·直接訪問所有外設(shè)和寄存器

·通過PMU在中斷觸發(fā)和域上電(例如定時器、GPIO)后立即執(zhí)行

·SNC到主處理器通知,以及反向通知

SNC與所有通信接口(SPI、I2C和UART)位于相同的電源域,SNC還可以控制其他電源域。它執(zhí)行駐留在系統(tǒng)RAM中的微碼,其中SNC具有直接內(nèi)存連接;以系統(tǒng)時鐘速度運行;并且可以生成中斷以通知PMU所有操作都已完成,從而可以關(guān)閉整個系統(tǒng)的電源。

 

 

圖3. 傳感器節(jié)點控制器框圖

使用此類專用硬件執(zhí)行傳感器和外設(shè)數(shù)據(jù)操作的架構(gòu)的主要優(yōu)點是:

·主CPU睡眠時間更長,從而可以節(jié)省功耗

·節(jié)省MIPS,因為CPU不必訪問慢速外設(shè)或執(zhí)行簡單的數(shù)據(jù)操作

不過它有一些缺點。SNC編程模型的非常簡單的指令集僅允許基本操作。另外,編程SNC需要使用匯編語言。最后,由于SNC是一個非常簡單的模塊,調(diào)試會變得復(fù)雜。

節(jié)省功耗和MIPS

我們已經(jīng)進(jìn)行了一系列測量,證明了使用SNC可以實現(xiàn)的功耗和MIPS節(jié)省。這些測量是在Dialog的基于ARM Cortex-M33的DA1469x SoC上進(jìn)行的,并比較了只使用主CPU和在SNC支持下執(zhí)行的相同任務(wù)。 第一組測量集中在訪問通常用于傳感器讀數(shù)的慢速外設(shè)(如I2C和SPI)時節(jié)省的功耗/MIPS。第二組測量著眼于使用DA1469x中包含的藍(lán)牙低功耗(BLE)通信模塊的實際應(yīng)用案例。

表1描述了傳輸小型SPI或I2C數(shù)據(jù)事務(wù)(如寫/讀16/128字節(jié))時的能耗。

表1:傳輸小型數(shù)據(jù)事務(wù)時的能耗(數(shù)字為1.8 V,8-bit傳輸)

與CPU(CM33)相比,SNC執(zhí)行事務(wù)所需的時間要短很多,如表2所示。由于CPU可能需要執(zhí)行忙等待,因此節(jié)省了時間相當(dāng)于節(jié)省了MIPS。

表2:SNC寫/讀8 bit數(shù)據(jù)所需的時間以及CPU相應(yīng)所需的時間

對現(xiàn)實生活中的使用案例,我們比較了每隔1500毫秒(表3)和500毫秒(表4)進(jìn)行廣播時所消耗的功率,同時使用SPI每100毫秒讀取加速計傳感器一次。

表3:每1500毫秒進(jìn)行廣播時的能耗,使用SPI每100毫秒進(jìn)行一次傳感器讀取

表4:每500毫秒進(jìn)行廣播時的能耗,使用SPI每100毫秒進(jìn)行一次傳感器讀取

在復(fù)雜的應(yīng)用中,如果需要訪問多個傳感器,考慮到緩存未命中和任務(wù)切換等問題,對MCU的占用會更大。

降低編程復(fù)雜度

上面提到過,使用集成的傳感器節(jié)點控制器時面臨的最大挑戰(zhàn)之一,是確保基礎(chǔ)系統(tǒng)功能的編程、調(diào)試和充分利用與采用通用MCU的方案一樣簡單。挑戰(zhàn)的主要方面有:

·提供對開發(fā)人員友好的抽象編程,以有效控制驅(qū)動與連接的傳感器/外設(shè)的通信接口,以及與主CPU通信相對應(yīng)的基本功能。

·利用10指令匯編式編程,并提供更高級別的編程結(jié)構(gòu),以簡化和加速軟件開發(fā)。

·支持完整的系統(tǒng)整體調(diào)試 - 而不是單獨調(diào)試每個CPU內(nèi)核,因為可能無法檢測到當(dāng)內(nèi)核并行運行時的系統(tǒng)行為錯誤。

為了解決這些挑戰(zhàn),我們需要一個完整、易于使用的編程框架。它必須包括抽象和程序,將并發(fā)操作系統(tǒng)任務(wù)的范例擴(kuò)展到在SNC上執(zhí)行的相應(yīng)(并行)處理。我們已經(jīng)為Dialog DA1469x解決方案開發(fā)了這樣的編程框架(圖4)。它具有以下特點:

·簡化的SNC微碼開發(fā)

o通過定義基于SeNIS的類C編程語言,可以同時支持匯編和類C編程。

·用于編程的“混合”編碼模型

o在相同的源和頭文件中同時包含針對SNC和主處理器情境(context)的代碼開發(fā) - 使用了一個C預(yù)處理器來定義基于SeNIS的語言結(jié)構(gòu),方便開發(fā)人員。

·與驅(qū)動主處理器通信接口、交換SNC通知、和操作系統(tǒng)資源相關(guān)的基礎(chǔ)機(jī)制和功能的抽象,作為一組完整且易于使用的API程序/類C函數(shù)。

·可觀察性和高級調(diào)試機(jī)制同時應(yīng)用于SNC和主處理器執(zhí)行情境。

 

 

圖4. SNC編程框架

SNC編程模型的特征可歸納如下:

·DA1469x應(yīng)用包括由OS任務(wù)和SNC 微碼并行執(zhí)行的進(jìn)程。

·SNC適配器向DA1469x系統(tǒng)注冊或注銷SNC微碼,從而創(chuàng)建一列SNC微碼,每個微碼由特定PMU事件觸發(fā)。

·SNC適配器采用特殊的SNC微碼,根據(jù)相應(yīng)的微碼列表實現(xiàn)注冊的SNC微碼執(zhí)行的調(diào)度,并通過其低級驅(qū)動器控制SNC硬件模塊。

·定義了一組基于SeNIS的結(jié)構(gòu)預(yù)處理器宏,從而生成一組匯編和類C語言結(jié)構(gòu)用于SNC微碼開發(fā)。

·提供一組低級驅(qū)動器SNC微碼,可用于驅(qū)動SPI、I2C等通信外設(shè)。

·為操作系統(tǒng)任務(wù)和SNC微碼提供了一種機(jī)制,進(jìn)行交換:

o通知

o數(shù)據(jù)(即:SNC 隊列)

除了上述實現(xiàn)輕松編程SNC函數(shù)的結(jié)構(gòu)之外,還提供以下內(nèi)容以支持調(diào)試:

·使用SNC斷點和逐步調(diào)試區(qū)域來調(diào)試SNC微碼的機(jī)制。

·SNC仿真器,而不是SNC硬件模塊,用于改進(jìn)和簡化SNC微碼調(diào)試過程。

總結(jié)

本文介紹了一種新的架構(gòu),可最大限度地降低集成了多個傳感器和外設(shè)的便攜式系統(tǒng)的功耗。該架構(gòu)使用復(fù)雜的硬件狀態(tài)機(jī)來卸載主處理器上的一些重復(fù)性任務(wù),例如傳感器/外設(shè)輪詢和讀取。與其他架構(gòu)相比,這種新架構(gòu)在功耗和MIPS優(yōu)化方面具有很大的優(yōu)勢,不過會使編程模型變的更復(fù)雜。因此,我們還介紹了一種對開發(fā)人員友好的編程框架來克服該問題。

參考文獻(xiàn)

[1] Goran Nikolić, Mile Stojčev, Zoran Stamenković, Goran Panić, Branislav Petrović, “Wireless Sensor Node with low power sensing”, Electronics and Energetics Vol. 27, No 3, September 2014, pp. 435 - 453

[2] V. Raghunathan, S. Ganerival, and M. Srivastava, "Emerging Techniques for Long Lived Wireless Sensor Networks", IEEE Communication Magazine, 2006, Vol.41, No. 4, (pp. 130-141)

[3] G. Anastasi, M. Conti, M. Di Francesco, and A. Passarella, "Energy Conservation in Wireless Sensor Networks: A survey", Ad Hoc Networks, 2009, Vol. 7, (pp. 537–568)

[4] W. Ye, J. Heidemann, and D. Estrin, "An Energy-Efficient Mac Protocol for Wireless Sensor Networks," Proc. IEEE Infocom, New York (USA) 2002, (pp. 1567-1576).

[5] M. Al Ameen, S.M. Riazul Islam, and K. Kwak, "Energy Saving Mechanisms for MAC Protocols in Wireless Sensor Networks", Hindawi Publishing Corporation International Journal of Distributed Sensor Networks, Volume 2010 (2010), Article ID 163413, (pp 1-16)

[6] M. Hempstead, N. Tripathi, P. Mauro, G.-Y. Wei, and D. Brooks, "An Ultra Low Power System Architecture for Sensor Network Applications," Proc. 32nd Annual International Symposium on Computer Architecture, Madison (USA) 2005, (pp. 208-219).

[7] A. Boulis, S. Ganeriwal, and M. Srivastava, "Aggregation in Sensor Networks: An Energy Accuracy Trade-Off", Ad Hoc Networks, Vol. 1, 2003, (pp. 317–331)

[8] G. Panić, Z. Stamenković, and R. Kraemer, "Power Gating in Wireless Sensor Networks", Wireless Pervasive Computing, 2008. ISWPC2008. 3rd International Symposium on Santorini, Greece, May 2008, (pp. 499-503)

[9] T. Burd, and R. Brodersen, "Energy Efficient Microprocessor Design", Kluwer Academic Publishers, Norwell MA, USA, 2002

[10] Dialog Semiconductor, “DA1469x Datasheet”

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉