CN100438437C - 无线传感器网络处理器片内进程管理方法 - Google Patents

无线传感器网络处理器片内进程管理方法 Download PDF

Info

Publication number
CN100438437C
CN100438437C CNB2005101307732A CN200510130773A CN100438437C CN 100438437 C CN100438437 C CN 100438437C CN B2005101307732 A CNB2005101307732 A CN B2005101307732A CN 200510130773 A CN200510130773 A CN 200510130773A CN 100438437 C CN100438437 C CN 100438437C
Authority
CN
China
Prior art keywords
sensor network
wireless sensor
network node
node system
manager
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB2005101307732A
Other languages
English (en)
Other versions
CN1794658A (zh
Inventor
刘领一
沈培福
吕涛
徐勇军
李晓维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNB2005101307732A priority Critical patent/CN100438437C/zh
Publication of CN1794658A publication Critical patent/CN1794658A/zh
Application granted granted Critical
Publication of CN100438437C publication Critical patent/CN100438437C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Power Sources (AREA)

Abstract

本发明涉及无线传感器网络技术领域,特别是一种无线传感器网络处理器片内进程管理方法。本发明***的构建一种低功耗的片内的进程管理方法,并有效的把它应用在实际的传感器节点***中,最大限度的降低节点功耗,并且可供用户灵活的使用。本发明避免了在传感器节点采用传统的通用式芯片带来的诸多缺点,更适合于在传感器节点***中的应用。进程管理具体方法步骤包括:***的初始化;硬件上对***的功耗的进行自动管理;进程调度单元对进程实施管理;软件上对***的功耗进行主动管理。

Description

无线传感器网络处理器片内进程管理方法
技术领域
本发明涉及无线传感器网络技术领域,特别是一种无线传感器网络处理器片内进程管理方法。
背景技术
无线传感器网络(Wireless Sensor Network)是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成的一个面向任务的自组织的网络***,其目的是协作地感知、采集并处理网络覆盖区域内中的目标信息,并进行控制或者发送给观察者。各个无线传感器网络节点一般是由微型电池提供能量,大部分应用场合不便于进行能量的补给,因此,如何高效的使用能量来最大化网络生命周期是无线传感器网络领域所面临的首要挑战。
当前商业化的节点中大都是利用市场上已成型的嵌入式处理器芯片,这些通用的低功耗嵌入式芯片一般是通过提供给用户几种低功耗模式,如:空闲模式,低电压、低频率运行模式,省电模式等,每种模式降低功耗程度不一样,每种低功耗模式返回到正常工作状态之间的转换代价也不一样,这种代价主要是状态转换时间和一些机器状态信息的保存。当前主要在传感器节点***中使用的方法就是用动态功耗管理软件算法控制何时进入何种低功耗模式,然后依靠事件触发来唤醒***进入正常工作状态。使用这种方法有很大缺陷:一方面如果软件控制不当,可能在低功耗模式和在正常工作状态之间频繁转换,而导致转换代价过大,不仅降低了***的性能,也使得能量白白浪费;另一方面由于这些商业化的芯片并非专为无线传感器网络节点设计的,没有考虑到节点的实际应用特点,在使用这些低功耗模式的时候需要用户在程序中指定什么时候进入低功耗状态或由操作***软件集中控制,所以降低***的功耗效率不明显,而且使用起来也不够灵活。
无线传感器网络是一个面向特定任务性的网络,可能存在多个需要同时执行的进程(或称为任务),每个进程可以由用户定义去完成某个特定的计算及处理功能,这些进程的执行是由特定事件进行触发的,一个正在执行的进程也可以触发另一个新的进程,在所有的该及时处理的进程都被处理完毕时,整个***就保存需要的机器状态后,进入低功耗状态,所以节点在整个生命周期中实际是间歇性的工作的。其中每个进程的实时性要求不完全相同,***也可以推迟某些进程的执行。
发明内容
本发明就是以专门的传感器网络实际应用为背景,提出的一种低功耗嵌入式处理器片内的进程管理方法,它追求在传感器网络的应用中最大化的降低***功耗,从而延长网络生命周期。在结构上,它使用硬件维护一个进程队列,里面保存着将要执行的进程(任务);另外还实现了一个功耗管理单元,它根据***当前状态硬件自动决定进入哪种低功耗模式,并在事件发生时唤醒整个***,转入正常的工作状态,同时它还像传统的通用低功耗嵌入式芯片一样提供各种低功耗模式接收软件的控制。本发明通过一种硬件实现的进程管理方法来大幅度降低芯片及硬件***的功耗,该方法结合了传感器网络的实际应用中的特点,应用在传感器网络的节点中来延长网络的生命周期非常有效。
降低节点功耗一直是无线传感器网络面临的巨大挑战。我们通过一种片内的进程管理方法来灵活实现对进程的调度从而最大限度的降低功耗。附图1给出了我们进程管理方法的体系结构示意图。
低功耗嵌入式处理器片内进程管理方法的设计实现
在所发明的应用于传感器网络的片内进程管理方法中,自动调度与管理器是该方法的工作核心,它实际是执行着一个动态功耗管理算法:由当前的***各进程的优先级别及所使用的资源情况来决定***下一个该被执行的进程或是进入哪种低功耗状态。
在自动调度与管理器中采用一个队列保存着待执行的进程的情况,包括进程在内存中的入口地址,进程的优先级别,进程将要使用的***资源。关于进程的这些内容是在创建一个进程的时候由用户软件设置的,因为只有用户知道这个进程的实时性如何,以及在执行过程中需要那些资源,如:需要使用UART部件进行传输数据等这些信息都要在创建一个进程的时候登记到该进程对应的队列项中。***中所有接口部件和中央处理器都是作为***的资源被各个进程占用的。
当一个进程执行的时候,如果需要创建另一个进程时候,它首先会设置好要创建的进程的优先级,进程执行所需要的资源,进程的入口地址等信息,这些在实际操作时候都是设置相应的寄存器位完成。然后执行一条POST指令即可完成将待创建的进程保存到硬件队列中去。在进程的执行过程中是可以被发生的事件中断的,当然进程也可以决定屏蔽掉中断。
当一个进程代码执行完毕的时候,即到达最后一条RET返回指令时候,将引入新的进程调度,自动调度与管理器将会选择一个优先级别最高的,并且其所需要的资源都处于空闲状态的进程放到CPU中去执行,从资源管理的角度看就是占用CPU的资源。如果这样的进程不存在,为简单起见,直接使***进入idle低功耗状态,关掉未被占用的资源的时钟,包括中央处理器时钟。当中断发生时将会唤醒整个***重新进入正常的工作状态。
在进程的代码里面也可以包括SLEEP指令,同一般的嵌入式处理器一样可以主动地进入各种低功耗状态,SLEEP指令前同样需要设置功耗模式寄存器指定将要进入哪种低功耗模式。
在提供进程的优先级时候,我们可以用软件设置优先级从而控制各个进程地执行顺序,可以把几个低优先级的进程放在一起执行完,这样就可以避免低功耗状态之间的频繁切换,从而更有效的降低功耗。
功耗管理控制单元是具体去完成各种低功耗策略的,它根据低功耗模式寄存器以及自动调度与管理器的控制信号来将***置于特定的低功耗状态,IDLE状态,POWER DOWN状态,POWER SAVE状态。这些低功耗状态降低低功耗程度各不一样,唤醒的时间长度不一,一般是功耗越低,唤醒时间也越长。
进程管理方法在传感器网络节点***中的应用
在传感器网络中,单个传感器节点的硬件资源很有限,而且传感器节点的并发操作可能比较频繁,而且并发执行的流程又很短,如果采用传统的操作***进程调度方式可能无法适应。所以在我们的发明里面实际用硬件实现了两级调度,一种是上面所说的进程,一般代码较短,执行比较频繁。另一种是中断服务程序。进程之间不可以抢占,必须是一个进程执行完成才能执行另外的一个进程,但是可能会被中断打断。当然进程也可以选择软件来屏蔽掉中断。附图2给出了我们的低功耗处理器(LPP)在传感器网络中的应用模块图。
本发明采用的技术方案具体如下:
一种无线传感器网络处理器片内进程管理方法,包括步骤:
结合传感器网络应用特点,在软件上把无线传感器网络节点***的功能分成多个独立的进程完成;
在处理器片内实现一个在硬件上的进行进程的自动调度与管理器,该自动调度与管理器依据各个进程的优先级别及资源的使用情况来决定无线传感器网络节点***下一个该被执行的进程或是进入哪种低功耗状态;
在处理器片内实现的功耗管理单元,根据低功耗模式寄存器以及自动调度与管理器的控制信号将无线传感器网络节点***置于特定的低功耗状态,自动进行功耗管理,降低无线传感器网络节点***的功耗。
所述的方法,针对具体的应用,编译链接程序在软件上把无线传感器网络节点***的功能分解成多个独立的进程完成。
所述的方法,处理器片内的进程队列保存着待执行的进程的情况,包括进程在内存中的入口地址,进程的优先级别,进程将要使用的无线传感器网络节点***资源。
所述的方法,所述功耗管理单元提供各个设备的各种低功耗策略,选择关掉设备时钟,无线传感器网络节点***时钟,降低设备电压,降低设备频率。
所述的的方法,所述自动调度与管理器在硬件上实现,它将同进程队列和功耗管理单元交互,选择合适的进程到处理器中运行。
所述的方法,所述功耗管理单元访问进程队列中的信息或接受上层软件的控制,实时的进行各个设备的功耗管理。
附图说明
图1为进程管理方法的体系结构示意图。
图2为低功耗处理器(LPP)在传感器网络中应用模块图。
图3是无线传感器网络处理器片内进程管理方法流程图。
具体实施方式
图1,其中主要是两个部分构成,一个是自动调度与管理器,另一个是功耗管理控制单元。自动调度与管理器是整个***的核心,它采用一个进程队列维护着***的所有就绪进程,一方面负责在适当的时候把需要执行的进程放到中央处理器上运行,另一方面它将依据当前嵌入式处理器中各种外部设备资源的使用状态和队列中进程优先级状态来决定下一个被调度的进程或者是进入某种特定的低功耗状态。功耗管理控制单元主要是完成各种低功耗策略的部件,它接受自动调度与管理器以及软件的控制信息,具体实现***进入特定的低功耗模。由于该进程管理方法是结合了传感器网络的应用特点,所以将它在传感器网络中节点***中可以非常高效的降低***功耗,并且保证一定的性能。
图2的低功耗处理器(LPP)在传感器网络中的应用模块。传感器网络的另外一个特点是间歇性的工作,它是基于事件驱动的。在一般的应用中,***并不需要始终处于工作状态,如在环境监测方面的应用中,只需要节点周期性去读取传感器的数据,然后发到中心sink节点,为降低节点功耗节点延长网络寿命,节点大部分的时间将处于休眠状态。我们的进程管理方法最大限度的利用了传感器网络的这个特点,当一个硬件的外设中断发生时候,进入中断服务程序,一般在尽快的时间把最紧急的事情做完,把不是很紧急的事情放到一个进程里面完成,当所有该完成的任务完毕时候,就可以进入低功耗状态,一方面有效的提高了程序的执行效率,另一方面进程代码是可以共用的,从而有效降低了内存的要求。特别在外设资源忙时候,可以自动快速切换到IDLE状态,无需循环等待和执行SLEEP指令,因为执行SLEEP指令将要保存大量的机器状态信息,有效降低了节点功耗。
图3的无线传感器网络处理器片内进程管理方法,无线传感器网络节点***的运行步骤具体如下:
步骤S1:无线传感器网络节点***执行启动代码,初始化进程开始执行,执行完毕,若在初始化的进程中,给进程队列添加了进程(或任务),自动调度与管理器将负责把这些进程送到CPU上执行;
步骤S2:步骤S1中进程执行完毕,此时进程队列为空,功耗管理单元将依据当前设备的使用信息,有选择的关闭部分外部设备和自动调度与管理器,随后整个无线传感器网络节点***处于被动等待事件发生的状态;
步骤S3:无线传感器网络的外部事件或内部的计时中断事件唤醒被关闭的自动调度与管理器,然后自动调度与管理器将自动将事件处理服务程序作为一个进程的形式加载到CPU上执行,同时实时依据进程对外部设备资源的使用要求启动被关闭的设备,如果在处理这些进程过程中,有进程主动执行SLEEP指令强行无线传感器网络节点***进入节能态,则进入到步骤S4,当所有进程(包括事件处理进程以及事件处理进程派生出来的进程)都被处理完毕,将回到步骤S2中;
步骤S4:进程主动执行SLEEP指令后,功耗管理单元将依据被配置的低功耗模式进入到相应的节能状态,随后整个无线传感器网络节点***处于被动等待事件发生的状态,有事件唤醒时候,回到步骤S3。

Claims (6)

1、一种无线传感器网络处理器片内进程管理方法,包括步骤:
结合传感器网络应用特点,在软件上把无线传感器网络节点***的功能分成多个独立的进程完成;
在处理器片内实现一个在硬件上的进行进程的自动调度与管理器,该自动调度与管理器依据各个进程的优先级别及资源的使用情况来决定无线传感器网络节点***下一个该被执行的进程或是进入哪种低功耗状态;
在处理器片内实现的功耗管理单元,根据低功耗模式寄存器以及自动调度与管理器的控制信号将无线传感器网络节点***置于特定的低功耗状态,自动进行功耗管理,降低无线传感器网络节点***的功耗。
2、按权利要求1所述的方法,其特征在于:针对具体的应用,编译链接程序在软件上把无线传感器网络节点***的功能分解成多个独立的进程完成。
3、按权利要求1所述的方法,其特征在于:处理器片内的进程队列保存着待执行的进程的情况,包括进程在内存中的入口地址,进程的优先级别,进程将要使用的无线传感器网络节点***资源。
4、按权利要求1所述的方法,其特征在于:所述自动调度与管理器在硬件上实现,它将同进程队列和功耗管理单元交互,选择合适的进程到处理器中运行。
5、按权利要求1所述的方法,其特征在于:所述功耗管理单元访问进程队列中的信息或接受上层软件的控制,实时的进行各个设备的功耗管理。
6、按权利要求1所述的方法,无线传感器网络节点***的运行步骤如下:
步骤S1:无线传感器网络节点***执行启动代码,初始化进程开始执行,执行完毕,若在初始化的进程中,给进程队列添加了进程,自动调度与管理器将负责把这些进程送到CPU上执行;
步骤S2:步骤S1中进程执行完毕,此时进程队列为空,功耗管理单元将依据当前设备的使用信息,有选择的关闭部分外部设备和自动调度与管理器,随后整个无线传感器网络节点***处于被动等待事件发生的状态;
步骤S3:无线传感器网络的外部事件或内部的计时中断事件唤醒被关闭的自动调度与管理器,然后自动调度与管理器将自动将事件处理服务程序作为一个进程的形式加载到CPU上执行,同时实时依据进程对外部设备资源的使用要求启动被关闭的设备,如果在处理这些进程过程中,有进程主动执行SLEEP指令强行无线传感器网络节点***进入节能态,则进入到步骤S4,当所有进程都被处理完毕,将回到步骤S2中;
步骤S4:进程主动执行SLEEP指令后,功耗管理单元将依据被配置的低功耗模式进入到相应的节能状态,随后整个无线传感器网络节点***处于被动等待事件发生的状态,有事件唤醒时候,回到步骤S3。
CNB2005101307732A 2005-12-28 2005-12-28 无线传感器网络处理器片内进程管理方法 Active CN100438437C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101307732A CN100438437C (zh) 2005-12-28 2005-12-28 无线传感器网络处理器片内进程管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101307732A CN100438437C (zh) 2005-12-28 2005-12-28 无线传感器网络处理器片内进程管理方法

Publications (2)

Publication Number Publication Date
CN1794658A CN1794658A (zh) 2006-06-28
CN100438437C true CN100438437C (zh) 2008-11-26

Family

ID=36805945

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101307732A Active CN100438437C (zh) 2005-12-28 2005-12-28 无线传感器网络处理器片内进程管理方法

Country Status (1)

Country Link
CN (1) CN100438437C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100589424C (zh) * 2007-08-20 2010-02-10 电子科技大学 基于跨层设计的无线传感器网络节能方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003016566A (ja) * 2001-04-27 2003-01-17 Nsk Ltd ワイヤレスセンサ及びセンサ付軸受装置
US20040257047A1 (en) * 2003-05-27 2004-12-23 William Marsh Rice University Adaptive power system
CN1633098A (zh) * 2005-01-28 2005-06-29 北京邮电大学 支持任务重构的无线传感器网络***及方法
US20050145018A1 (en) * 2004-01-07 2005-07-07 Ashok Sabata Remote Monitoring of Pipelines using Wireless Sensor Network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003016566A (ja) * 2001-04-27 2003-01-17 Nsk Ltd ワイヤレスセンサ及びセンサ付軸受装置
US20040257047A1 (en) * 2003-05-27 2004-12-23 William Marsh Rice University Adaptive power system
US20050145018A1 (en) * 2004-01-07 2005-07-07 Ashok Sabata Remote Monitoring of Pipelines using Wireless Sensor Network
CN1633098A (zh) * 2005-01-28 2005-06-29 北京邮电大学 支持任务重构的无线传感器网络***及方法

Also Published As

Publication number Publication date
CN1794658A (zh) 2006-06-28

Similar Documents

Publication Publication Date Title
KR101029414B1 (ko) 프로세서 상태 천이를 검출하기 위해 제공되는 장치 및방법과 머신 액세스 가능 매체와 컴퓨팅 시스템
Cheng et al. An energy-saving task scheduling strategy based on vacation queuing theory in cloud computing
CN100349147C (zh) 最低优先级中断的处理器功率状态的知晓分配的方法、***和装置
CN1694557B (zh) 在节省无线适配器功率的同时维持无线网络响应时间的方法
CN100489788C (zh) 一种线程唤醒控制方法和***
CN101894047A (zh) 一种基于内核虚拟机调度策略的实现方法
CN100407104C (zh) 操作***协作下的嵌入式设备电源管理方法及***
CN106059835B (zh) 一种低能耗计算机集群节点的高可靠性控制方法
CN101790709A (zh) 动态核心切换
Rowe et al. Rate-harmonized scheduling and its applicability to energy management
CN103218264A (zh) 基于线程池的多线程有限状态机切换方法及装置
CN107111349B (zh) 用于片上多核***的驱动基于访问的资源的低功耗控制和管理
CN102779072A (zh) 一种嵌入式***及其应用进程的休眠与唤醒方法
CN109041188A (zh) 无线终端、无线终端节电方法和装置
Mascitti et al. An adaptive, utilization-based approach to schedule real-time tasks for ARM big. LITTLE architectures
CN1328877C (zh) 共享线程实现和调度方法
CN100438437C (zh) 无线传感器网络处理器片内进程管理方法
CN114661460A (zh) 面向异构众核处理器的ai框架两级并行加速方法
CN100383743C (zh) Java操作***中实时任务调度方法
Li et al. Low power operating system for heterogeneous wireless communication system
CN101441508A (zh) 一种设备工作模式的控制方法、设备和***
US20100113084A1 (en) Power saving in wireless networks
Jadon et al. Multicore processor: Internal structure, architecture, issues, challenges, scheduling strategies and performance
Kuorilehto et al. Sensoros: A new operating system for time critical wsn applications
Ricciardi et al. Green data center infrastructures in the cloud computing era

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CB03 Change of inventor or designer information

Inventor after: Li Xiaowei

Inventor after: Xu Yongjun

Inventor after: Liu Lingyi

Inventor after: Shen Peifu

Inventor after: Lv Tao

Inventor before: Liu Lingyi

Inventor before: Shen Peifu

Inventor before: Lv Tao

Inventor before: Xu Yongjun

Inventor before: Li Xiaowei

CB03 Change of inventor or designer information