首页 / 专利库 / 人工智能 / N元标识符 / 嵌入式系统确定性分析方法

嵌入式系统确定性分析方法

阅读:918发布:2020-05-12

专利汇可以提供嵌入式系统确定性分析方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种 嵌入式系统 确定性分析方法,用于解决现有嵌入式系统确定性分析方法实用性差的技术问题。技术方案是对嵌入式系统的中断进行抽象,建立周期中断和非周期中断的数学模型,在任务执行过程中考虑中断对任务响应时间的影响,分析中断对任务执行带来的延迟,提高任务执行确定性的分析 精度 ;对嵌入式系统中的空间资源进行抽象,在任务执行时检查空间资源能否满足需求,得出精确的任务响应时间。根据任务响应时间和最差执行时间的关系以及对空间资源的需求,建立任务的时间利用率和空间利用率模型,量化分析嵌入式系统中时间资源和空间资源使用情况,得出时间资源和空间资源使用率的具体数值,提高嵌入式系统确定分析的精确性,实用性好。,下面是嵌入式系统确定性分析方法专利的具体信息内容。

1.一种嵌入式系统确定性分析方法,其特征在于包括以下步骤:
步骤一、建立嵌入式系统中断模型;
对嵌入式系统的周期中断和非周期中断进行建模,周期中断模型采用八元组表示:
Ip=  (1)其中,idI为中断的唯一标识符,typeI表示中断的类型,此处中断类型为周期性中断,priorityI表示中断优先级,数值越大,优先级越高,off表示周期与起始位置之间的偏移量,periodI为中断的周期,即两次中断之间的时间间隔,resptimeI表示中断响应时间,中断请求发出到进入中断处理之间的时间,exetimeI表示中断执行时间,即中断开始执行到中断退出之间的时间,pubevent为中断产生的事件,该事件会触发相应的任务执行;
对于非周期中断,定义中断在某一个时间周期[t0,t1]内服从特定分布函数,采用舍选法生成随机数来模拟非周期中断的发生时刻,非周期中断的模型使用九元组表示:
Iap=  (2)相比较于周期中断,非周期中断的区别在于增加F(x)为非周期中断服从的分布函数;
timeinterval是分布函数中时间x的取值范围;
步骤二、建立嵌入式系统周期任务模型;
定义嵌入式系统中周期任务的模型,对于周期任务的描述,不仅考虑时间特性,还将空间资源的需求纳入到模型当中:
Tp=  (3)式中,idT为任务标识符,在系统中用来唯一表示任务,periodT为任务的周期,是指任务两次触发之间的时间间隔,priorityT为任务优先级,在抢占模式下,高优先级任务会抢占低优先级任务,resptimeT表示任务响应时间,任务建立到任务开始执行之间的时间间隔,exectimeT表示任务执行所需时间开销,deadline表示任务截止时间,在此时间之前任务未执行完成别任务超时,spacesize表示该任务执行所需的空间资源大小,子任务会被加入到任务序列中,接受任务调度器的调度,status表示任务的状态,采用经典三态模型,包括就绪态、阻塞态和运行态;在分析过程中,任务状态阻塞态至就绪态:任务获得所需资源,分析用时SC++;运行态至就绪态:高优先级任务抢占,任务切换时间ST++,分析用时SC++;就绪态至运行态:当前任务拥有最高优先级,任务执行时间ET++,分析用时SC++;运行态至阻塞态:
资源无法得到满足,分析用时SC++;
步骤三、嵌入式系统的任务调度器模型;
将嵌入式系统中的任务调度策略分为两类,抢占式调度和非抢占式调度,据此建立任务调度器模型;抢占式调度时允许高优先级任务抢占低优先级任务,而非抢占式调度时高优先级任务不允许抢占低优先级任务,除非低优先级任务主动放弃处理器资源,高优先级任务才会执行;在此两类任务调度模式下,中断都会抢占任务;
步骤四、嵌入式系统的空间资源管理;
系统中的资源分为专有空间资源和共享空间资源,专有空间资源只有特定任务可以使用,其他任务无权使用,共享空间资源作为公有空间资源,所有的任务都有使用权;
步骤五、计算系统资源利用率;
系统中资源利用率包括时间资源利用率和空间资源利用率;
空间资源利用率包括专有空间资源利用率RLSi和公有空间资源利用率RSG,其计算公式如下:
式中,RLSi表示专有空间资源利用率, 表示已使用的专有空间资源,LSi表示系统提供的专有空间资源,i表示第i个专有空间资源;
式中,RSG表示公有空间资源利用率, 表示已使用的公有空间资源,SG表示系统提供的公有空间资源;
系统的时间资源利用率表示为实际使用时间和分析总时长的比值,具体表述为:
式中,RT表示系统时间资源利用率,S表示系统仿真总时长,RTx表示第x个任务的响应时间,ETx表示第x个任务的执行时间,STy表示第y次任务切换花费的时间,x、y分别表示系统中的任务数和任务切换的次数,m表示总任务数,n表示任务切换的总次数;
步骤六、计算关键任务资源利用率;
关键任务的资源利用率包括两个方面:时间资源利用率和空间资源利用率;在分析过程中,标记关键任务执行过程中系统空间资源利用率和该任务的时间资源利用率;关键任务的空间资源利用率是指在关键任务执行过程中,空间资源的使用情况;
式中,k表示第k个关键任务,RSk表示关键任务的空间资源利用率, 表示已使用的空间资源,TSk关键任务的空间资源总量;
关键任务时间资源利用率表示关键任务从开始到执行完成的时间间隔与任务开始执行到任务预设死限时间间隔的比值;在分析过程中,记录关键任务开始执行的时刻BTCT和预设的死限时间DTCT,根据分析结果,得到任务执行完成的时刻ETCT,并根据公式(8)计算关键任务的时间资源利用率RTCT:
步骤七、嵌入式系统确定性分析方法;
在开始分析之前,规定系统中关键任务的空间资源利用率和系统的空间资源利用率,并规定任务执行过程中相对于任务截止时间的时间资源利用率,分析采用虚拟时钟来模拟系统时钟,任务执行确定性分析过程如下:
首先设置系分析总时间,并初始化分析用时SC=0,获取关键任务参数;
判断是否达到分析总时间,如果到达分析总时间则停止分析,记录分析结果,未到达分析总时间则继续;
判断系统是否处于空闲状态,如果系统中无正在运行的任务,则执行IDLE空闲任务,分析用时SC加1;
判断系统的抢占模式,并根据抢占模式采用不同的调度策略调度任务,确定当前执行的任务,分析用时加1;
分析当前时刻系统和关键任务的空间资源利用率,如果不满足要求,则分析终止,记录分析结果;
分析当前系统和关键任务的时间资源利用率,如果不满足要求,则分析终止,记录分析结果。

说明书全文

嵌入式系统确定性分析方法

技术领域

[0001] 本发明涉及一种嵌入式系统确定性分析方法。

背景技术

[0002] 文献“单处理器平台下的严格周期任务可调度性判定[J].计算机工程,2016,42(05):288-291”公开了一种基于特征任务的严格周期任务可调度性分析方法。分析严格周期任务在单一处理器平台下无冲突运行的时间约束,计算任务所能使用的全部空余时间,进而界定连续空余时间是否满足任务执行的需要,得到一个可调度性判定的充要条件。在实际嵌入式系统中,周期任务的执行会受到中断的影响,造成周期任务的延时甚至无法执行;任务在执行时,除了需要考虑时间约束之外,系统中的空间资源例如内存等因素也会影响任务的响应时间,对任务的可调度性带来不确定性。

发明内容

[0003] 为了克服现有嵌入式系统确定性分析方法实用性差的不足,本发明提供一种嵌入式系统确定性分析方法。该方法对嵌入式系统的中断进行抽象,建立周期中断和非周期中断的数学模型,并且中断优先级高于任务,在任务执行过程中考虑中断对任务响应时间的影响,采用舍选法来模拟非周期中断产生的时机,分析中断对任务执行带来的延迟,提高任务执行确定性的分析精度;对嵌入式系统中的空间资源进行抽象,在任务执行时检查空间资源能否满足需求,进而得出更加精确的任务响应时间。根据任务响应时间和最差执行时间的关系以及对空间资源的需求,建立任务的时间利用率和空间利用率模型,量化分析嵌入式系统中时间资源和空间资源的使用情况,得出时间资源和空间资源使用率的具体数值,提高了嵌入式系统确定分析的精确性,实用性好。
[0004] 本发明解决其技术问题所采用的技术方案:一种嵌入式系统确定性分析方法,其特点是包括以下步骤:
[0005] 步骤一、建立嵌入式系统中断模型。
[0006] 对嵌入式系统的周期中断和非周期中断进行建模,周期中断模型采用八元组表示:
[0007] Ip=  (1)[0008] 其中,idI为中断的唯一标识符,typeI表示中断的类型,此处中断类型为周期性中断,priorityI表示中断优先级,数值越大,优先级越高,off表示周期与起始位置之间的偏移量,periodI为中断的周期,即两次中断之间的时间间隔,resptimeI表示中断响应时间,中断请求发出到进入中断处理之间的时间,exetimeI表示中断执行时间,即中断开始执行到中断退出之间的时间,pubevent为中断产生的事件,该事件会触发相应的任务执行。
[0009] 对于非周期中断,定义中断在某一个时间周期[t0,t1]内服从特定分布函数,采用舍选法生成随机数来模拟非周期中断的发生时刻,非周期中断的模型使用九元组表示:
[0010] Iap=  (2)
[0011] 相比较于周期中断,非周期中断的区别在于增加F(x)为非周期中断服从的分布函数;timeinterval是分布函数中时间x的取值范围。
[0012] 步骤二、建立嵌入式系统周期任务模型。
[0013] 定义嵌入式系统中周期任务的模型,对于周期任务的描述,不仅考虑时间特性,还将空间资源的需求纳入到模型当中:
[0014] Tp=  (3)
[0015] 式中,idT为任务标识符,在系统中用来唯一表示任务,periodT为任务的周期,是指任务两次触发之间的时间间隔,priorityT为任务优先级,在抢占模式下,高优先级任务会抢占低优先级任务,resptimeT表示任务响应时间,任务建立到任务开始执行之间的时间间隔,exectimeT表示任务执行所需时间开销,deadline表示任务截止时间,在此时间之前任务未执行完成别任务超时,spacesize表示该任务执行所需的空间资源大小,子任务会被加入到任务序列中,接受任务调度器的调度,status表示任务的状态,采用经典三态模型,包括就绪态、阻塞态和运行态。在分析过程中,任务状态阻塞态至就绪态:任务获得所需资源,分析用时SC++;运行态至就绪态:高优先级任务抢占,任务切换时间ST++,分析用时SC++;就绪态至运行态:当前任务拥有最高优先级,任务执行时间ET++,分析用时SC++;运行态至阻塞态:资源无法得到满足,分析用时SC++。
[0016] 步骤三、嵌入式系统的任务调度器模型。
[0017] 将嵌入式系统中的任务调度策略分为两类,抢占式调度和非抢占式调度,据此建立任务调度器模型。抢占式调度时允许高优先级任务抢占低优先级任务,而非抢占式调度时高优先级任务不允许抢占低优先级任务,除非低优先级任务主动放弃处理器资源,高优先级任务才会执行。在此两类任务调度模式下,中断都会抢占任务。
[0018] 步骤四、嵌入式系统的空间资源管理。
[0019] 系统中的资源分为专有空间资源和共享空间资源,专有空间资源只有特定任务可以使用,其他任务无权使用,共享空间资源作为公有空间资源,所有的任务都有使用权。
[0020] 步骤五、计算系统资源利用率。
[0021] 系统中资源利用率包括时间资源利用率和空间资源利用率。
[0022] 空间资源利用率包括专有空间资源利用率RLSi和公有空间资源利用率RSG,其计算公式如下:
[0023]
[0024] 式中,RLSi表示专有空间资源利用率, 表示已使用的专有空间资源,LSi表示系统提供的专有空间资源,i表示第i个专有空间资源。
[0025]
[0026] 式中,RSG表示公有空间资源利用率, 表示已使用的公有空间资源,SG表示系统提供的公有空间资源。
[0027] 系统的时间资源利用率表示为实际使用时间和分析总时长的比值,具体表述为:
[0028]
[0029] 式中,RT表示系统时间资源利用率,S表示系统仿真总时长,RTx表示第x个任务的响应时间,ETx表示第x个任务的执行时间,STy表示第y次任务切换花费的时间,x、y分别表示系统中的任务数和任务切换的次数,m表示总任务数,n表示任务切换的总次数。
[0030] 步骤六、计算关键任务资源利用率。
[0031] 关键任务的资源利用率包括两个方面:时间资源利用率和空间资源利用率。在分析过程中,标记关键任务执行过程中系统空间资源利用率和该任务的时间资源利用率。关键任务的空间资源利用率是指在关键任务执行过程中,空间资源的使用情况。
[0032]
[0033] 式中,k表示第k个关键任务,RSk表示关键任务的空间资源利用率, 表示已使用的空间资源,TSk关键任务的空间资源总量。
[0034] 关键任务时间资源利用率表示关键任务从开始到执行完成的时间间隔与任务开始执行到任务预设死限时间间隔的比值。在分析过程中,记录关键任务开始执行的时刻BTCT和预设的死限时间DTCT,根据分析结果,得到任务执行完成的时刻ETCT,并根据公式(8)计算关键任务的时间资源利用率RTCT:
[0035]
[0036] 步骤七、嵌入式系统确定性分析方法。
[0037] 在开始分析之前,规定系统中关键任务的空间资源利用率和系统的空间资源利用率,并规定任务执行过程中相对于任务截止时间的时间资源利用率,分析采用虚拟时钟来模拟系统时钟,任务执行确定性分析过程如下:
[0038] 首先设置系分析总时间,并初始化分析用时SC=0,获取关键任务参数;
[0039] 判断是否达到分析总时间,如果到达分析总时间则停止分析,记录分析结果,未到达分析总时间则继续;
[0040] 判断系统是否处于空闲状态,如果系统中无正在运行的任务,则执行IDLE空闲任务,分析用时SC加1;
[0041] 判断系统的抢占模式,并根据抢占模式采用不同的调度策略调度任务,确定当前执行的任务,分析用时加1;
[0042] 分析当前时刻系统和关键任务的空间资源利用率,如果不满足要求,则分析终止,记录分析结果;
[0043] 分析当前系统和关键任务的时间资源利用率,如果不满足要求,则分析终止,记录分析结果。
[0044] 本发明的有益效果是:该方法对嵌入式系统的中断进行抽象,建立周期中断和非周期中断的数学模型,并且中断优先级高于任务,在任务执行过程中考虑中断对任务响应时间的影响,采用舍选法来模拟非周期中断产生的时机,分析中断对任务执行带来的延迟,提高任务执行确定性的分析精度;对嵌入式系统中的空间资源进行抽象,在任务执行时检查空间资源能否满足需求,进而得出更加精确的任务响应时间。根据任务响应时间和最差执行时间的关系以及对空间资源的需求,建立任务的时间利用率和空间利用率模型,量化分析嵌入式系统中时间资源和空间资源的使用情况,得出时间资源和空间资源使用率的具体数值,提高了嵌入式系统确定分析的精确性,实用性好。
[0045] 下面结合附图和具体实施方式对本发明作详细说明。

附图说明

[0046] 图1是本发明方法中任务调度过程示意图。
[0047] 图2是本发明嵌入式系统确定性分析方法的流程图
[0048] 图3是本发明方法分析过程中任务状态转换图。

具体实施方式

[0049] 参照图1-3。本发明嵌入式系统确定性分析方法具体步骤如下:
[0050] 步骤一、建立中断模型。
[0051] 分别对嵌入式系统中的周期中断和非周期中断进行建模,对于周期中断,采用周期偏移量确定周期激活时刻,对于非周期中断,使用中断发生时间区间来约束中断的产生时刻,并设定非周期中断在此区间内所符合的分布函数,采用舍选法确定中断的产生时刻。
[0052] 周期中断模型采用八元组表示:
[0053] Ip=  (1)[0054] 其中,idI为中断的唯一标识符,typeI表示中断的类型,此处中断类型为周期性中断,priorityI表示中断优先级,数值越大,优先级越高,off表示周期与起始位置之间的偏移量,periodI为中断的周期,即两次中断之间的时间间隔,resptimeI表示中断响应时间,中断请求发出到进入中断处理之间的时间,exetimeI表示中断执行时间,即中断开始执行到中断退出之间的时间,pubevent为中断产生的事件,该事件会触发相应的任务执行。
[0055] 非周期中断的模型使用九元组表示:
[0056] Iap=  (2)
[0057] 相比较于周期中断,非周期中断的区别在于增加F(x)为非周期中断服从的分布函数;timeinterval是分布函数中时间x的取值范围。
[0058] 步骤二、建立任务模型。
[0059] 对于嵌入式系统中的周期任务,分析时间特性,包括优先级、周期、响应时间、执行时间、截止时间,除此之外,需要增加对任务执行的空间资源约束spacesize。
[0060] Tp=  (3)
[0061] 公式(3)中,idT为任务标识符,在系统中用来唯一表示任务,periodT为任务的周期,是指任务两次触发之间的时间间隔,priorityT为任务优先级,在抢占模式下,高优先级任务会抢占低优先级任务,resptimeT表示任务响应时间,任务建立到任务开始执行之间的时间间隔,exectimeT表示任务执行所需时间开销,deadline表示任务截止时间,在此时间之前任务未执行完成别任务超时,spacesize表示该任务执行所需的空间资源大小,status表示任务的状态,采用经典三态模型,包括就绪态、阻塞态和运行态。在分析过程中,任务状态阻塞态至就绪态:任务获得所需资源,分析用时SC++;运行态至就绪态:高优先级任务抢占,任务切换时间ST++,分析用时SC++;就绪态至运行态:当前任务拥有最高优先级,任务执行时间ET++,分析用时SC++;运行态至阻塞态:资源无法得到满足,分析用时SC++。
[0062] 步骤三、建立调度器模型。
[0063] 将嵌入式系统中的任务调度策略分为两类,抢占式调度和非抢占式调度,据此建立任务调度器模型。抢占式调度时允许高优先级任务抢占低优先级任务,而非抢占式调度时高优先级任务不允许抢占低优先级任务,除非低优先级任务主动放弃处理器资源,高优先级任务才会执行。在此两类任务调度模式下,中断都会抢占任务。
[0064] Sched=<typesch,tasknum,prioritiessch,taskSW(),taskPrioHighRdy()>  (4)[0065] 公式(4)中,typesch表示调度器的类型,分为抢占式调度和非抢占式调度,tasknum表示任务调度器所支持的最大任务数,prioritiessch表示调度器支持最高优先级,每一个优先级下只允许存在一个任务,taskSW()为任务切换函数,在抢占式调度模式下,调用此函数完成任务的切换,taskPrioHighRdy()为寻找当前就绪任务队列中最高优先级的任务,作为当前执行的任务。
[0066] 步骤四、建立系统空间资源模型。
[0067] 系统中的资源分为专有空间资源和共享空间资源,专有空间资源只有特定任务可以使用,其他任务无权使用,共享空间资源作为公有空间资源,所有的任务都有使用权。
[0068] 专有空间资源在任务的模型中进行定义,并且只能被此任务使用,其他任务无权限使用专有空间资源;公有空间资源单独定义,嵌入式系统中任何需要用到空间资源都允许在公有空间资源申请使用。
[0069] 步骤五、计算系统资源利用率。
[0070] 系统中资源利用率包括时间资源利用率和空间资源利用率。
[0071] 空间资源利用率包括专有空间资源利用率RLSi和公有空间资源利用率RSG,其计算公式如下:
[0072]
[0073] 公式(5)中,RLSi表示专有空间资源利用率, 表示已使用的专有空间资源,LSi表示系统提供的专有空间资源,i表示第i个专有空间资源。
[0074]
[0075] 公式(6)中RSG表示公有空间资源利用率, 表示已使用的公有空间资源,SG表示系统提供的公有空间资源。
[0076] 系统的时间资源利用率表示为实际使用时间和分析总时长的比值,具体表述为:
[0077]
[0078] 公式(7)中,RT表示系统时间资源利用率,S表示系统仿真总时长,RTx表示第x个任务的响应时间,ETx表示第x个任务的执行时间,STy表示第y次任务切换花费的时间,x、y分别表示系统中的任务数和任务切换的次数,m表示总任务数,n表示任务切换的总次数。
[0079] 步骤六、建立关键任务资源利用率模型。
[0080] 关键任务的资源利用率包括两个方面:时间资源利用率和空间资源利用率。在分析过程中,标记关键任务执行过程中系统空间资源利用率和该任务的时间资源利用率。关键任务的空间资源利用率是指在关键任务执行过程中,空间资源的使用情况。
[0081]
[0082] 公式(8)中k表示第k个关键任务,RSk表示关键任务的空间资源利用率, 表示已使用的空间资源,TSk关键任务的空间资源总量。
[0083] 关键任务时间资源利用率表示关键任务从开始到执行完成的时间间隔与任务开始执行到任务预设死限时间间隔的比值。在分析过程中,记录关键任务开始执行的时刻BTCT和预设的死限时间DTCT,根据分析结果,得到任务执行完成的时刻ETCT,并根据以公式(9)计算关键任务的时间资源利用率RTCT:
[0084]
[0085] 步骤七、嵌入式系统确定性分析。
[0086] 在开始分析之前,规定系统中关键任务的空间资源利用率和系统的空间资源利用率,并规定任务执行过程中相对于任务截止时间的时间资源利用率,分析采用虚拟时钟来模拟系统时钟,任务执行确定性分析过程如下:
[0087] 首先设置分析总时间,并初始化分析用时SC=0,获取关键任务参数;
[0088] 判断是否达到分析总时间,如果到达分析总时间则停止分析,记录分析结果,未到达分析总时间则继续;
[0089] 判断系统是否处于空闲状态,如果系统中无正在运行的任务,则执行IDLE空闲任务,分析用时SC加1;
[0090] 判断系统的抢占模式,并根据抢占模式采用不同的调度策略调度任务,确定当前执行的任务,分析用时加1;
[0091] 分析当前时刻系统和关键任务的空间资源利用率,如果不满足要求,则分析终止,记录分析结果;
[0092] 分析当前系统和关键任务的时间资源利用率,如果不满足要求,则分析终止,记录分析结果。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈