传感器节点控制器助力未来连网传感器.doc_第1页
传感器节点控制器助力未来连网传感器.doc_第2页
传感器节点控制器助力未来连网传感器.doc_第3页
传感器节点控制器助力未来连网传感器.doc_第4页
传感器节点控制器助力未来连网传感器.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

传感器节点控制器助力未来连网传感器 传感器节点控制器助力未来连网传感器MariOs IIiOpOuIOs,FOtiOs KerasiOtis,NikOIaOs MOschOpOulOs引言今天的便携式设备通过持续的活动监测和情境感知来了解周围环境。 为了实现此功能,设备集成了越来越多的传感器和外设,由此产生大量数据。 这反过来使得集成更强大的CPU变得很有必要,以便执行越来越多的计算。 同时,必须缩小设计尺寸,降低成本和功耗,但又不牺牲最终产品不断提升的功能要求。 传感器中枢(Sensor hub)概念被越来越多地采用到当今的SoC设计中,以满足“始终运行”的传感器外设访问和控制(甚至以高速率)要求,而且不会增加功耗和设计成本。 传感器中枢可以是小型CPU内核,与传感器外设连接,通过执行后台操作并仅在需要时“唤醒”主处理器,充当功耗较大的主处理器的卸载引擎角色。 用于传感器采集的基于处理器的典型架构应用在集成多个传感器的系统中的典型基于微控制器的架构包括以下组件uo微控制器单元(MCU)也称为处理子系统,MCU控制系统内所有构成部分的运行并处理数据。 它包括一个处理器、一个内部或外部存储器以及本地数据处理所需豳的所有外设和子系统。 在典型的基于MCU的架构中,控制器执行所有传感器数据收集、处理和存储。 传感器元件(或传感子系统)为一组传感器,可以是无源或有源、数字或模拟的任意组合。 这些传感器将外部环境的输入信息转换成电信号。 在大多数应用中,传感器用于监测运动、光、气压、振动、流速、温度、通风、电等。 通常来说,传感器元件在其输出端生成电压或电流信号。 在数据被处理、存储和传输之前,这些信号一般会被放大,并通过模数转换器转换成数字信号。 无线电是一种短距离收发器,提供与主机的无线通信。 电源子系统通常连接到电池或能量采集器。 该子系统充当可控单元,可单独打开和关闭系统构建块的电源。 它通常是MCU软件中的一个软件块。 电源子系统负责为每个单独的硬件组件提供合适的电源电压。 在具有多个传感器的更复杂的基于微控制器的架构中,在硬件中集成了智能化,用来控制各种子系统。 例如,从传感器到存储器传输数据耗时又耗电,这一部分工作其实可以从处理器转移到直接内存存取(DMA)单元。 电源管理单元(PMU)还可以被编程为对特定事件作出反应并关闭各种子系统,例如外设、传感器和无线电。 圜卜扣”圜卜图1基于微控制器的典型架构这种先进架构的目的是尽可能减少主MCU活跃的时间。 原来需要MCU干预的任务,现在可以由智能子系Memor1BatteryI一统执行。 然而,还存在一个问题,就是每次有传感器、无线电或各种子系统的事件时,MCU都需要被唤醒,因86Microcontro|efsEmbedded systems2019年第6翔meS几efC0mC门万方数据繁为它是唯一可以部署逻辑来处理这些事件的元件。 优化功率的技术一添加传感器节点控制器为了延长具有多个传感器系统的续航时间,已经提出了很多种降低功耗的技术口。 3。 有些技术在媒体访问控制层面进行节能n,有些技术从数据聚合或融合着手卟。 7,有的则采用芯片设计优化技术,如片上功率门控1或动态电压调节o。 本文介绍了一种不同的技术来优化多传感器系统中的电源使用,同时将主处理器用于数据采集的唤醒时间控制到最短。 该技术基于集成复杂的硬件状态机,可以接管主处理器上的重复性任务(如传感器轮询和读取),从而实现集成的低功耗传感器中枢概念。 专用硬件状态机可以更快地唤醒,并使用更少模块来将数据从传感器外设传输到内存,以及反向传输,而主处理器保持休眠状态。 此外,传感器中枢可以对数据执行简单操作,因此主处理器只需要在要求复杂数据操作时唤醒。 这种方法的一个很好的例子是集成在Dialog半导体公司的DAl469x蓝牙低功耗SoC解决方案中的传感器节点控制器(SNC)硬件模块u?。 SNC是一种微型硬件状态机,能运行由有限的指令集组成的微码(code),有助于开发人员操控通信控制器(即sPI、12c等)、传感器和外设。 它可以通过使用其最小指令集自动运行,无需唤醒系统的其余部分。 这允许它执行众多操作(例如轮询传感器状态位、比较寄存器与内存地址内容(值)、将数据从通信接口传输到系统RAM以及比较分支),同时消耗最低电流。 一MemOn,图2具有传感器节点控制器外设的应用处理器架构SNC的主要特性如下(图3)传感器节点指令集(SeNIS),包含10条微码生成指令,适用于轻松创建指向内存缓冲区的指针、轮询串行接口状态位和比较阈值;系统RAM用于微码存储和数据;DMA功能,用于将敬请登录网站在线投稿数据直接从通信接口传输到系统RAM;直接访问所有外设和寄存器;通过PMU在中断触发和域上电(例如定时器、GPIO)后立即执行;SNC到主处理器通知,以及反向通知。 SNC与所有通信接口(SPI、12C和UART)位于相同的电源域,SNC还可以控制其他电源域。 它执行驻留在系统RAM中的微码,其中SNC具有直接内存连接,以系统时钟速度运行,并且可以生成中断以通知PMU所有操作都已完成,从而可以关闭整个系统的电源。 PMU图3传感器节点控制器框图使用此类专用硬件执行传感器和外设数据操作架构的主要优点包括主CPU睡眠时间更长,从而可以节省功耗;节省MIPS,因为CPU不必访问慢速外设或执行简单的数据操作。 不过它也有一些缺点。 SNC编程模型的非常简单的指令集仅允许基本操作。 另外,编程sNC需要使用汇编语言。 最后,由于SNC是一个非常简单的模块,调试会变得复杂。 节省功耗和MIPS我们已经进行了一系列测量,证明使用SNC可以实现的功耗和MIPS节省。 这些测量是在Dialog的基于ARM CortexM33的DAl469x SoC上进行的,并比较了只使用主CPU和在sNc支持下执行的相同任务。 第一组测量集中在访问通常用于传感器读数的慢速外设(如12C和SPI)时节省的功耗MIPS。 第二组测量着眼于使用DAl469x中包含的蓝牙低功耗(BLE)通信模块的实际应用案例。 2D79年第6期平疗机乌藏入式条镬l应冈87+_一囊鞫孽万方数据表1列出了传输小型SPI或12C数据事务(如写读16128字节)时的能耗。 表1传输小型数据事务时的能耗(数字为18V。 8位传输)SPI8MHz16B写时长ms电流消耗“C电流消耗差异128B读SNC O5124CM33+DMA1529513812C高速16B写时长ms电流消耗“C电流消耗差异128B读SNC212244CM33+DMA26745586与CPU(CM33)相比,SNC执行事务所需的时间要短很多,如表2所列。 由于CPU可能需要执行忙等待,因此节省了时间相当于节省了MIPS。 表2SNC写读8bit数据所需时间以及CPU相应所需时间时长“s控制单元时间CS一写写写一读读读一CS总计差异SNC(8一bit模式SPI)1398261166820964552719CM33(DMA,有适配器)4696180613918145048734365605对现实生活中的使用案例,我们比较了每隔1500ms(表3)和500ms(表4)进行广播时所消耗的功率,同时使用SPI每100ms读取加速计传感器一次。 表3每1500ms进行广播时的能耗广播(每1500ms)&传感器读取每100ms一进行15s电流消耗“C节省SNC2236CM333748403Batterv鬻滋麓麟戳黼豢一一瀵黧糕纛黼表4每500ms进行广播时的能耗广播(每500ms)&传感器读取每100ms一进行15s电流消耗“C节省SNC2556CM334068372在复杂的应用中,如果需要访问多个传感器,考虑到缓存未命中和任务切换等问题,对MCU的占用会更大。 降低编程复杂度上面提到过,使用集成的传感器节点控制器时面II缶的最大挑战之一,是确保基础系统功能的编程、调试和充分利用与采用通用MCU的方案一样简单。 挑战的主要方面有提供对开发人员友好的抽象编程,以有效控制驱动与连接的传感器外设的通信接口,以及与主CPU通信相对应的基本功能;利用10指令汇编式编程,并提供更高级别的编程结构,以简化和加速软件开发;支持完整的系统整体调试,而不是单独调试每个CPU内核,因为可能无法检测到当内核并行运行时的系统行为错误。 为了解决这些挑战,我们需要一个完整、易于使用的编程框架。 它必须包括抽象和程序,将并发操作系统任务的范例扩展到在SNC上执行的相应(并行)处理。 我们已经为Dialog DAl469x解决方案开发了这样的编程框架(图4)。 它具有以下特点简化的SNC微码开发,通过定义基于SeNIS的类C编程语言,可以同时支持汇编和类C编程;用于编程的“混合”编码模型,在相同的源和头文件中同时包含针对SNC和主处理器情境(context)的代码开发,使用了一个C预处理器来定义基于seNIs的语言结构,方便开发人员;与驱动主处理器通信接口、交换SNC通知、和操作系统资源相关的基础机制和功能的抽象,作为一组完整且易于使用的API程序类C函数;可观察性和高级调试机制同时应用于SNC和主处理器执行情境。 图4SNC编程框架88Microcontrol|ersEmbedded systems2019年第6觏meSnefC0mC几万方数据SNC编程模型的特征可归纳如下DAl469x应用包括由0S任务和SNC微码并行执行的进程;SNC适配器向DAl469x系统注册或注销SNC微码,从而创建一列SNC微码,每个微码由特定PMU事件触发;SNC适配器采用特殊的SNC微码,根据相应的微码列表实现注册的SNC微码执行的调度,并通过其低级驱动器控制SNC硬件模块;定义了一组基于SeNIS的结构预处理器宏,从而生成一组汇编和类C语言结构用于SNC微码开发;提供一组低级驱动器SNC微码,可用于驱动SPI、12C等通信外设;为操作系统任务和SNC微码提供了一种机制,进行交换,如通知和数据(即SNC队列)。 除了上述实现轻松编程SNC函数的结构之外,还提供以下内容以支持调试使用SNC断点和逐步调试区域来调试SNC微码的机制;SNC仿真器而不是SNC硬件模块,用于改进和简化SNC微码调试过程。 总结本文介绍了一种新的架构,可最大限度地降低集成了多个传感器和外设的便携式系统的功耗。 该架构使用复杂的硬件状态机来卸载主处理器上的一些重复性任务,例如传感器外设轮询和读取。 与其他架构相比,这种新架构在功耗和MIPS优化方面具有很大的优势,不过会使编程模型变得更复杂。 因此,还介绍了一种对开发人员友好的编程框架来克服该问题。 一参考文献1Goran Nikolie,Mile Stoj亡ev,zoran stamenkovie,et a1wireless SensorNode withlowpower sensingJElectronics andEnergetics,xx,27 (3);4354532VRaghunathan,S Ganerival,M SrivastavaEmerging Techniques forLong LivedwireIess Sensor NetworksJIEEECommunication Magazine,xx,41 (4)130一1413G Anastasi,M Conti,M DiFrancesco,et aIEnergy Conse卜vation in wireIess sensorNetworksA surveyJAd HocNetworks,xx (7)5375684W Ye,J Heidemann,D EstrinAn EnergyEfficient MacProtocolfor wireIessSensor NetworksCProcIEEE Info,USANew York,xx156715765M AlAmeen,S MRiazul Islam,KKwakEnergy SavingMechanismsfor MACProtocols inWireless Sensor NetworksJHindawi PublishingCorporation InternationalJournaI ofDistributedSensorNetworks,xx1166MHempstead,N Tripathi,P Mauro,et a1An UItraLowPower SystemArchitecture forSensorNetworkApplicationsCProc32nd AnnualInternational Symposium on Computer Architecture,USAMadison,xx2082197ABoulis,S Ganeriwal,M SrivastavaAggregation insensorNetworksAn EnergyAuracy TradeOffJAd HocNetworks,xx (1)3173318GPanie,Z Stamenkovie,R KraemerPower Gatinginwireless sensorNetworksCwireless PervasiveComputing,xxISWPCxx3rd InternationalSymposiumonSantori-ni,GreeceSantorini,xx4995039T Burd,R BrodersellEnergy EfficientMicroprocessor Des遮nCKluwer AcademicPublisherS,USArwell MA,xx10Dialog Semicondu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论