具体实施方式
具体实施方式一:参见图1说明本实施方式。本实施方式所述的嵌入式设备能耗仿真评测系统包括图形化配置管理模块、事件发生器、设备能耗模型构建模块、AADL到GSPN模型转化模块和GSPN设备能耗模型仿真模块,其中:
图形化配置管理模块,用于对事件发生器及设备能耗模型模块输入参数的图形化配置;
设备能耗模型构建模块,用于根据图形化配置管理模块配置的参数、采用基于ADDL的系统级软硬件的抽象描述,进而获得嵌入式系统软硬件的ADDL描述模型;
事件发生器,用于模拟产生能耗事件序列;
AADL到GSPN模型转化模块,用于将嵌入式系统的软硬件的ADDL描述模型转换成GSPN模型;
GSPN设备能耗模型仿真模块,用于采用QPME工具载入GSPN模型;还用于从能耗事件序列中选择加载外部能耗事件;还用于采用QPME工具根据加载的外部能耗事件对GSPN模型进行能耗仿真,获得嵌入式系统的剩余能量和系统生存时间的仿真结果。
嵌入式设备的具有广泛的应用领域和多样性的任务类型,如环境信息检测、医疗救护应用、战场单兵生存等领域,且嵌入式设备的任务模式也是多样的,如周期性的数据采用或指令性的嵌入式操作等。嵌入式设备环境模型是为了仿真模拟多样的外部环境与嵌入式设备的信息交互。本实施方式中采用事件发生器产生能耗事件以对应嵌入式设备的外部环境激励。
建立事件发生器模型,支持复杂时变的嵌入式应用的快速构建与生成。面对复杂多变的嵌入式外部环境,可定制外部环境的多种时变因素(业务、信道以及网络拓扑),按需生成不同的嵌入式应用系统和应用环境。
具体实施方式二:参见图1说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中,所述设备能耗模型构建模块的输入参数包括嵌入式系统的软件和硬件架构、组件有限状态机、系统调度策略、资源分配策略和能耗优化策略。
用户可根据实际情况假设系统配置,或比较分析能耗优化的设计方案。根据用户配置信息(profile),产生系统数据,包括:嵌入式设备架构与模块状态与能耗数据,嵌入式设备软硬件配置信息,嵌入式设备业务数据。标准数据可构建成相关profile。
由于不同的系统结构,不同的设备(组件),不同的策略同样会导致系统在执行任务时需要的能量不同,因此构建设备能耗模型时需要的参数包括嵌入式系统的软件和硬件架构、组件有限状态机、调度策略、资源分配策略和能耗优化策略,其中:
软硬件架构中的硬件架构,是指嵌入式设备中的处理器、无线通信设备等在内的所有耗能硬件,用户可定制多个、不同型号的处理器来加快设备运行速度,也可定制种外设来实现不同的应用需求,这都将构成不同的嵌入式设备的硬件架构,设备的能耗情况也因硬件配置的不同而不同。
软硬件架构中的软件架构,是指嵌入在硬件中的运行的软件,不同的软件架构也会导致通信的次数,计算量,内存复制次数等的差别,这些差别导致了系统能耗动作的长短和次数。
上述软硬件架构是直接反应要仿真的嵌入式系统的部件的结构和特点,可由设计方案或现实系统得到。
组件有限状态机,嵌入式系统中的大部分设备都有不同程度的能耗优化,可以工作在不同的功率模式下;而这些不同的功率模式将的转变都可以通过有限状态机进行描述。
用户可根据需求建立组件(设备)的有限状态机,设定有限状态机中各个状态的属性及状态间转移关系,状态的属性指处于该状态下的功率、状态转移时的时间阈值等。当组件选用不同的有限状态机时,组件(设备)处于各个状态下的时间及状态转移的次数不同,导致设备整体的能耗情况不同。
如果组件是硬件,该参数可以从硬件说明书中获得,硬件说明书基本都有相关的工作模式将的状态关系描述,以及各模式下的能耗。如果是软件可从软件任务描述中获得,如算法中的读、写、计算等操作。也可以是设计者将要设计的组件。
系统调度策略,调度本身就是一个耗能动作,不同的调度影响着系统中的各任务的执行顺序,而嵌入式系统的任务很大一部分是有实时性要求的,如果高实时性的任务被安排在后期执行,系统就不得不调整工作模式,采用功率的工作方式运行以保障关键任务的及时完成。
所述调度策略可由系统调度算法获得,也可使设计者设计的调度算法。
资源分配策略,嵌入式设备需要为多种不同的应用提供运行所需的软硬件资源,包括处理器、无线通信设备、存储器、板载外设等硬件资源,不同的资源分配策略直接影响设备的耗能,特别对于异构多核的嵌入式设备来说,多个处理器间如何进行任务调度和资源分配更显重要。该参数可由系统资源分配算法获得,如异构处理器执行优先执行的任务。
能耗优化策略,不同的能耗优化策略下组件的休眠策略不同,设备整体的能耗也不同。当不需要某个功能部件的时候,可以根据能耗优化策略选择性的将其关闭以减少能耗,如采用DPM(动态电源管理)技术来实现有效的设备电源管理。
由于AADL在动态仿真特别是能耗仿真上的局限性,本系统采用成熟的,具有严格数学验证的GSPN方法进行仿真,如图5所示,在本系统中采用QPME工具进行GSPN仿真。
具体实施方式三:参见图2说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中,事件发生器用于模拟产生能耗事件序列的过程为:根据嵌入式系统的事件发生策略配置参数生成的仿真脚本调用事件发生引擎,进而获得能耗事件序列。
所述嵌入式系统的事件发生策略配置参数生成的仿真脚本中包括事件发生策略配置参数,具体包括嵌入式系统的信道/网络环境配置参数、任务分配类型。
本实施方式所述的事件发生器产生时间序列的方法适用于根据嵌入式系统的任务需要和应用环境模式的配置而生成能耗事件序列的情况。
基于用户配置来定制嵌入式设备的外部环境与任务模式;具体来说要将用户的配置信息定制相应的业务流模型、信道模型、协议等,并且调用仿真脚本生成器转换为仿真工具能识别的可执行脚本文件。采用仿真软件来模拟仿真嵌入式设备与外部环境的交互行为。
采用仿真引擎来模拟仿真嵌入式设备与外部环境的交互行为,用户可以选择NS2、OPNET等软件作为外挂仿真引擎。
记录嵌入式设备与外部环境的交互行为以及生成针对嵌入式设备的有序的能耗事件序列;通过调用仿真引擎可以记录下详细的交互过程,存储在仿真结果记录文件中,再调用记录文件处理器得到能耗事件序列,作为GSPN设备能耗模型仿真模块的输入。
具体实施方式四:本实施方式是对具体实施方式三所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中的图形化配置管理模块,还用于对事件发生器的输入参数进行图形化配置,所述事件发生器的输入参数采用事件发生策略配置模块产生。
事件发生策略配置模块用于配置影响能耗事件发生的频率的参数。根据研究,引起嵌入式系统耗能事件原因主要有两类,一类是由于环境导致的,称之为环境类型;一类是由于任务(命令)引发的,称之为任务类型。
环境类型:对于目前绝大部分嵌入式系统而言都具有网络的连接功能。对无线通信,嵌入式设备应用环境的不同导致了无线信道质量的差异,根据不同的环境选择不同的信号衰减因子,支持不同天气情况(晴、雨、雪)下处于室内、市区、郊区等环境类型。该环境类型影响数据包传输信道的能量衰减,进而产生丢包事件,影响收发数据包及丢包事件发生的成功率。对于有线连接,通信介质和网络环境的差异同样影响收发数据包及丢包事件发生的成功率。如在通信介质的传输错误率就会影响数据包的正确率,进而影响数据包重传的次数。
本模块就是配置、选择这些环境参数,通过已有的信道模型和网络拥塞模型获得相关的数据包重传概率。该参数如果是无线通讯可以根据系统需要应用的环境选如与室内,室外,荒野等常见环境相对应的信号衰减因子,也可以自定义信号衰减因子。有限通讯可通过对网络拥塞规律的统计获得。
任务类型:任务类型指的是现实应用下嵌入式因业务的不同而表现出的不同系统执行规律。不同的应用场景下产生的业务多种多样,有周期性采集业务,也有突发性业务或者符合特定分布的业务流等。常见的业务流的分布类型有指数分布、泊松分布,随机分布,均匀分布等。这些业务类型就决定了设备产生数据包的规律,直接决定了单位时间内事件发生的时刻与次数。
本模块通过配置该参数,仿真记录系统响应的事件的时刻和时长。该输入根据现实应用制定,仿真程度与业务描述的拟合度相关。
具体实施方式五:参见图3说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中,事件发生器用于模拟产生能耗事件序列的过程为:对嵌入式系统的运行事件日志采用日志解析器进行解析,进而获得能耗事件序列。
本实施方式所述的运行事件日志是指嵌入式系统的实际运行日志或软件仿真的日志。
具体实施方式六:本实施方式是对具体实施方式五所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中的图形化配置管理模块,还用于对事件发生器的输入参数进行图形化配置,所述事件发生器的输入参数为系统运行事件日志。
系统运行事件日志和事件发生策略配置模块在功能上一致,该参数用于读取满足一定格式要求的日志,再由事件发生器按该日志产生能耗事件序列。系统运行的日志可以是实际系统运行记录的日志也可以是其他嵌入式仿真系统执行的日志,甚至可以是人为设定的日志。
本实施方式所述的系统运行日志的格式为:“事件发生时刻,动作完成时间,事件发生组件,当前组件状态,下一步组件状态”。
具体实施方式七:参见图4说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中,设备能耗模型构建模块用于根据图形化配置管理模块配置的参数、采用基于ADDL的系统级软硬件抽象描述,进而获得嵌入式系统软硬件的ADDL模型的过程为:根据模板库对嵌入式系统的硬件构架和组件特性进行软硬件模板的图形化配置;根据策略库和嵌入式系统的软件策略进行软硬件策略图形化定制;根据图形化配置和图形化定制的结果获得嵌入式系统的硬件架构和软件架构及其行为;采用ADDL语言对所述嵌入式系统的硬件架构和软件架构及其行为进行抽象描述,获得嵌入式系统的ADDL模型。
所述模板库用于存储通用的嵌入式设备组件;
所述策略库用于存储通用的嵌入式设备软件策略,如状态转移条件,休眠策略等。
所述模板库和策略库可以根据使用者需要自行添加或者修改模板或者策略,进而实现适用于各种嵌入式系统的能耗仿真。
基于AADL语言的嵌入式设备模型具有软硬件协同的特点,充分发挥其在嵌入式设计上的优势,方便进行需求的验证。本系统采用AADL语言进行系统软硬架构的描述。
参见图5,图5左侧部分表示AADL提供软件层面的抽象,图5右侧表示AADL支持制定组件描述。同时AADL支持组件将继承关系,因而通过AADL可以实现通用的组件模板。
本系统通过扩展AADL的模型库和建模语言,使之适应于事件驱动的嵌入式设备能耗建模分析研究。嵌入式设备系统是一个典型的事件驱动系统,而事件引发的系统动作导致了系统耗能行为,并同时引起了系统状态的改变。通过嵌入式设备的事件驱动机制的分析和抽象,本系统将AADL中模式转移的概念扩展应用到嵌入式设备进行能耗建模上。
通过对嵌入式系统的分析和抽象,嵌入式设备基于事件的能耗行为由组件能耗行为以及组件之间的交互关系共同所决定:组件能耗行为可视为一个随机自动机;嵌入式设备能耗行为建模关键是能耗事件的能耗行为以及能耗事件的传播机制。能耗行为模型应由以下几部分组成:1)能耗状态:代表了组件所处的能耗状态或是组件间交互的连接状态;2)能耗事件:揭示了组件的能耗状态变化;3)能耗事件传播:定义了状态变迁的发生;4)能耗状态变迁:由条件(事件)触发状态变迁,进而引起能耗事件传播。
针对嵌入式设备部件内不能耗行为的AADL建模,鉴于嵌入式设备功能部件通常采用基于状态转移的睡眠机制以到达节能目的,为准确分析节点部件能耗,通过扩展AADL属性项,建立节点部件的状态属性项(property_state)以及能耗属性项(property_energy)。状态属性定义嵌入式设备部件的状态转移关系与转移条件,能耗属性则用于描述其部件在不同状态下以及状态转移中的能耗状况。
根据研究,嵌入式系统耗能事件根据是否自发产生的可以分为两类,1)嵌入式设备组件内部基于状态转移的能耗行为,2)嵌入式设备组件之间基于事件驱动的交互行为或外部激励触发的行为(如用户操作,环境状态响应)。
针对嵌入式设备部件外部交互行为的AADL建模,鉴于嵌入式设备功能部件间基于事件驱动的交互方式,为准确分析设备部件间的相互关系,通过扩展AADL的接口特征,建立描述设备部件事件的事件端口(event ports),并拓展了事件关联(Event connection)以描述事件驱动系统的部件关联性。
本实施方式所述的模型设计步骤:
根据模板库对嵌入式系统的硬件构架和组件特性进行软硬件模板的图形化配置是指:根据嵌入式系统的硬件架构和组件特性,在模板库是选择相应的模板,并根据选择的模板实现软硬件模版图形化配置。该过程中,通过将硬件架构模板构建出硬件互联架构,并根据组件状态机,可自动的实现对架构中组件的内部状态的状态和转移关系,并对相关状态和转移的能耗进行设定。
根据策略库和嵌入式系统的软件策略进行软硬件策略图形化定制是指;根据嵌入式系统的软件策略在策略库中选择相应的策略,并根据选择的策略实现软硬件管理策略图形化定制,所述软件策略包括组件有限状态机、调度策略、资源分配策略和能耗优化策略。该过程通过模板库和软件策略制定软件架构,资源分配策略,如一个进程需要多少内存,在那个处理器上运行。描述组件间的能耗转移关系,并映射进程至能耗组件。
上述能耗建模原理为:
嵌入式设备的能耗分析首先关注于嵌入式设备各耗能部件的能耗分析。按功能划分,嵌入式设备可分为:感知部件(S,传感器)、处理部件(P,微处理器)以及通信部件(T,无线收发器)以及供电部件(E,电池)。鉴于嵌入式设备供电部件通常为电池,为简化建模,可做如下假定:电池呈线性放电;嵌入式设备能耗为各部件能耗累加之和。
建模每种部件为一个基本模板template,则每种嵌入式设备都由模板template组成,如一个感知部件模版S-template、一个处理部件模版P-template和一个通信部件模版T-template组成通用的嵌入式设备(S,P,T),根据不同的应用环境,可定制不同的模版template组成,如5个感知部件模版S-template、3个处理部件模版P-template和2个通信部件模版T-template组成所需要描述的嵌入式设备(5S,3P,2T)。
状态与事件反映了嵌入式设备耗能的行为特征。通过技术文档调研分析,确定基于状态转移机制的嵌入式设备各部件工作状态以及状态转移关系。
处理部件模版简称P模块,该P模块一般划分为运行、空闲、休眠三个状态。
通信部件模版简称为T模块,该T模块一般划分为:关闭、空闲、监听、休眠、接收和发送六个状态。
感知部件模版简称为S模块,该S模块相对较为简单,为工作和关闭两个状态。
按照事件与嵌入式设备部件关联性,可将事件(Event)分为:嵌入式设备外部事件、部件内部事件和部件间事件三类。同时,定义活动(Action)为嵌入式设备基于事件驱动做出的反应,代表着程序执行、数据传递等具体动作。嵌入式设备通过活动而消耗能量。
通过技术文档调研以及部分实验电路测试,基于统计分析,可获得嵌入式设备部件在不同状态下以及状态转移过程中的能耗数据,从而构建嵌入式设备的能耗数据结构。嵌入式设备部件间基于事件驱动的相关性由控制结构所描述。通过分析嵌入式设备部件对事件的处理,实现对嵌入式设备部件状态和事件的转换变化过程,明确部件内部、部件之间以及部件与外部环境之间的控制流程和数据处理过程,从而构建嵌入式设备的能耗控制结构。基于数据结构与控制结构,实现嵌入式设备能耗在功能与行为上的统一。
本实施方式中,采用的能耗问题的简化求解方法为:将能耗求解问题转化为统计组件在不同状态时间以及各种状态转移的次数;
Ecom=Edynamic+Estatic=Es+Esc+Eleak
能耗模版的形式化描述,采用基于“事件-行为-状态”的组件能耗的形式化描述方法以及状态转移机制;
能耗模板可以根据用户的需求来配置:可定制能耗状态、状态转移关系、触发事件、以及事件的行为组成等。
设备能耗模型(model):硬件架构与优化策略相关联的嵌入式软硬件的AADL建模
嵌入式架构的组件定制:定制能耗模板,根据系统硬件架构关联各能耗模板,生成设备能耗模型;
嵌入式软件的组件映射:基于AADL建模嵌入式系统的能耗行为与优化策略,并映射配置至组件能耗模板;
嵌入式组件的事件关联:基于事件驱动的嵌入式组件间的相互关联,建模基于事件驱动的设备能耗行为。
具体实施方式八:参见图7说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中,AADL到GSPN模型转化模块,用于将嵌入式系统软硬件的ADDL描述模型转换成GSPN模型的方法为:
根据GSPN的能耗建模模型,通过扩展AADL语言,使其能够对能耗进行建模;GSPN中能耗模型的四元组对应的AADL中的元素为:
S:状态库所,描述嵌入式设备(部件)与内外环境基于事件的交互场所;对应AADL模型中模式(Mode);
T:状态变迁,活动以转换的方式建模,由事件产生活动,由活动导致状态变迁;对应AADL模型中转移(Transitions);
F:有向弧集,描述状态转换发生的条件和转换产生的影响,对应AADL模型中连接(Connections);
M:标识(token),描述库所中事件发生规律,token能在库所变迁中不断活动;对应AADL模型中能耗事件(Data Port)。
通过AADL模型,能够让用户直观的了解嵌入式设备的软硬件选型和架构,方便的构建嵌入式能耗模型;但是,该种模型不适用于仿真,本实施方式中,将ADDL模型转换成GPSN模型,GSPN模型能够严格的形式化的进行模型仿真验证。
具体实施方式九:参见图6说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中对GPSN设备能耗模型仿真模块做解释说明,该GSPN设备能耗模型仿真模块用于采用QPME工具载入GSPN模型;还用于从事件序列中选择加载外部事件;还用于采用QPME工具根据加载的外部事件对GSPN模型进行能耗仿真,获得嵌入式系统的剩余能量和系统生存时间的仿真结果。
所示事件有三类:外部事件、组件间事件和组件内部事件。参见图8所示的一种情况,外部事件(EO1,EO2)由事件发生器提供,驱动嵌入式设备工作;组件间事件(EB1、EB2、EB3、EB4)使各组件相关联;组件内部事件(EI1、EI2、EI3、EI4)触发组件状态变迁如图9所示。使用petri网四元组N=(S,T,F,M)建模事件驱动的嵌入式设备AADL模型,描述事件、状态与活动之间的关系,定义如下:
S:状态库所,描述嵌入式设备(部件)与内外环境基于事件的交互场所;对应AADL模型中模式;
T:状态变迁,活动以转换的方式建模,由事件产生活动,由活动导致状态变迁;对应AADL模型中转移;
F:有向弧集,描述状态转换发生的条件和转换产生的影响,
;对应AADL模型中连接;
M:标识(token),描述库所中事件发生规律,token能在库所变迁中不断活动;对应AADL模型中能耗事件;
事件驱动系统的形式化描述主要为S,E,A,f,g五个部分:状态集S,事件集E,活动集A,反应函数a=f(sc,ei)揭示了状态、事件和活动的关系,状态转移函数s=g(sc,ei)则反映了嵌入式设备(部件)状态-变迁过程。在模型中,事件以token方式被建模,活动以转换的方式建模,状态是通过状态库所中token的分布来间接体现,反应函数以事件库所到转换的弧(S->T)来建模,状态转移函数以转换和状态库所之间的弧(T->S)来建模,事件在转移和执行过程中消耗能量,则嵌入式设备的能量消耗通过事件-活动-状态(M-T-S)体现。通过扩充petri网使之适合于事件驱动的嵌入式设备能耗建模,主要模型描述如下:
为实现功能与行为的统一,定义托肯(token)为能耗事件,其具有能耗属性(数据结构),通过(S,T,F)描述的控制结构执行功能(转换),通过活动消耗能量,进而引起token的属性改变或产生新的token传递给后面的状态库所。通过将能耗与行为统一起来,实现对能耗的动态特征的形式化描述。
通过多过程分支(嵌入式设备部件)的petri网建模,分析基于token转移(事件驱动)的分支并行性与异步通信问题,基于活动的相关性描述并行执行的未决性问题;通过表示系统的所有可能行为,构建基于状态库所与token分布的嵌入式设备状态转移图。
现有的成熟的GSPN仿真工具有很多,本实施方式采用使用交广的QPME工具进行仿真,其原理参见图10所示。其仿真过程简单描述如下:
输入的是GSPN模型;
使用QPME工具,载入GSPN模型,生成图形化的petri网描述;
输入事件发生序列,使用QPME的仿真器SimQPE仿真,仿真过程为:
首先初始化仿真设置,如仿真时间、输出文件,仿真精度等;
启动仿真,读取到的外部事件序列驱动嵌入式设备模型,开始仿真;
仿真结束后,将仿真结果输出到结果文件中;
读取结果文件,分析结果,得出计算能耗所需的参数,即某事件发生次数ce、在库所中的活动时间ta、库所中单位时间的活动能耗ea、该事件引起的状态变迁次数ct和每次变迁的能耗et,并综合仿真时间和每个事件,根据能耗计算公式计算总能耗。
嵌入式设备的能量消耗通过事件-活动-状态(M-T-S)体现,则每个事件在每次活动后消耗一定量的能耗,对应事件在库所中的能耗和库所之间变迁的能耗,对于某个事件,则需要收集该事件发生次数ce、在库所中的活动时间ta、库所中单位时间的活动能耗ea、该事件引起的状态变迁次数ct和每次变迁的能耗et,则该事件的总能耗Ei为:
Ei=(ea*ta+et*ct)*ce,
嵌入式设备的总能耗E为:
E=∑Ei。
嵌入式设备的能耗模型输入为事件发生器输出的事件序列,即外部事件token的发生规律,外部事件驱动能耗模型,产生相应的活动,消耗能量,经过一段时间运行后,输出求解能耗所需的参数(ea、ta、et、ct),计算这段时间在相应事件发生的情况下嵌入式设备的能耗。
具体实施方式十:参见图1说明本实施方式。本实施方式是对具体实施方式一所述的嵌入式设备能耗仿真评测系统的进一步说明,本实施方式中,增加了图形化结果分析子模块,该子模块用于根据GSPN设备能耗模型的仿真结果,图形化的显示设备的剩余能量与系统生存时间,各组件消耗的能量,以及执行的事件和最耗能的事件,并可以根据需要选择决定是否生成仿真日志。
通过本实施方式增加的图形化结果分析子模块,能够评估嵌入式设备的剩余能量与系统生存时间:
用户可以通过本模块获得单嵌入式设备运行任意一段时间后的剩余能量值,当剩余能量低于某个阈值时,设备将进入关闭状态,这时需要对设备或设备中的电源模块进行替换以保障设备的有效运行。设备的剩余能量与设备的组件选型、硬件架构及软件策略有关系。
对于由多个嵌入式设备组成的应用系统,当可运行的设备数量低于某一阈值以致无法完成设定功能时,用户即可判断系统进入无效状态,评估系统的生存时间。另外,用户所选择的任务模式和应用环境会影响系统的生存时间。
通过本实施方式增加的图形化结果分析子模块,能够分析嵌入式设备的环境与任务的适用性:
在系统配置模块中,用户可以配置事件发生器的任务类型,获得该任务类型下的能耗情况,系统可以对多次能耗结果进行分析对比,为用户提供不同任务模式下的嵌入式设备的能耗对比和性能对比。
在系统配置模块中,用户可以配置事件发生器的环境类型,获得该环境类型下的能耗情况,系统可以对多次能耗结果进行分析对比,为用户提供不同应用环境下的嵌入式设备的能耗和性能对比。
通过本实施方式增加的图形化结果分析子模块,能够指导嵌入式设备的软硬件选型及策略优化:
设备的剩余能量与设备的组件选型密切相关,所以对不同组件构成的嵌入式设备的在相同应用环境和任务模式下的能耗仿真,比较不同组件的嵌入式系统能耗性能,筛选满足特定环境和和业务能耗需要组件配置方案。
设备的剩余能量与嵌入式设备的软硬件架构相关,不同的组件数量,不同的架构,不同互联方案对系统的效率和能耗有直接的影响,同系统可以提供不同软硬件架构的嵌入式设备的能耗性能仿真对比,方便嵌入式系统设计人员进行仿真验证;寻找最佳的设计方案。
通过本实施方式增加的图形化结果分析子模块,能够实现软件策略优惠:
系统调度、资源分配、能耗优化等软件策略等直接影响的系统的耗能行为。采用本系统针对系统调度、资源分配、能耗优化等软件策略进行能耗相关的仿真,可以加速设计和使用人员制定最佳的软件策略。
本申请所述的嵌入式设备能耗仿真评测系统是基于事件的嵌入系统能耗仿真工具,其核心思想是嵌入式系统的能耗是由于事件(event)引发的。系统通过响应系统内部或系统外部的事件,触发某种或某组动作,这些动作直接表现是包括计算,存储数据,传感器采集数据,机械设备移动,系统休眠等行为,但不仅仅只包括这些行为。本系统通过对嵌入式软硬件系统结构的建模,并模拟仿真对象具体运行时的事件到达的规律,仿真该系统在做出正常事件响应导致的能量消耗,得到系统运行一段时间后的剩余能量以及生存时间;进而评价在该环境下,该任务下,采用该软硬件架构的系统能耗性能,评估由于不同架构,不同策略下的系统在能耗方面的优缺点。
本申请主要创新点包括:
如同采用UML简化了软件设计一样,AADL简化嵌入式系统设计;本系统充分的发挥了AADL的优势,实现平台无关的软硬件相结合的嵌入式系统描述,并通过将AADL转化GSPN,实现严谨的形式化的能耗验证。本系统可以应用于嵌入式系统设计方案验证、嵌入式系统选购参考、系统调度、资源分配、能耗优化等策略优化验证等方面。其主要创新点如下:
引入并扩展GSPN,建模嵌入式设备各功能部件的能耗状态和能耗事件,实现对嵌入式设备的能耗数据结构(静态特征)与控制结构(动态特征)的形式化描述。针对嵌入式设备的模块化设计,支持从不同功能部件上(无线收发器、微处理器、传感器以及电池等)全面分析嵌入式设备的能耗问题。
引入并扩展AADL建模嵌入式设备,采用软硬件相结合的方式建模嵌入式设备系统架构,提出通用的嵌入式设备模型。面向嵌入式设备的多样性,支持对由不同软硬件(嵌入式设备部件选型、体系结构、调度模式、组网策略以及任务模式)构成的嵌入式设备进行性能分析。
采用AADL错误模型分析嵌入式设备的能耗行为,分析基于事件驱动的能耗状态变迁与能耗行为的传播机制,结合嵌入式设备AADL系统组件,建立起综合软硬件优化策略与能耗行为的嵌入式设备整体能耗的AADL模型。面对嵌入式设备以及嵌入式应用的多样性,支持对基于状态转移的嵌入式设备部件能耗行为(能耗事件驱动)以及基于事件驱动的嵌入式环境交互行为(能耗事件传播)进行建模分析。
建立事件发生器模型,支持复杂时变的嵌入式应用的快速构建与生成。面对复杂多变的嵌入式外部环境,可定制外部环境的多种时变因素(业务、信道以及网络拓扑),按需生成不同的嵌入式应用系统和应用环境。
构建实现嵌入式设备能耗评测平台,适合于分析适用于不同类型的嵌入式设备架构与外部环境下的嵌入式设备能耗分析,为嵌入式设备元器件选型、硬件架构及能耗参数描述、软件配置信息、仿真评测能耗性能、能耗优化策略和适应场景的描述以及嵌入式系统演化分析提供理论模型以及评测。