[发明专利]一种基于分布函数的最坏执行时间WCET快速估计方法有效
| 申请号: | 201510009091.X | 申请日: | 2015-01-08 |
| 公开(公告)号: | CN104572103B | 公开(公告)日: | 2017-07-11 |
| 发明(设计)人: | 赖晓玲;郭宝龙;高翔;闫允一;王健;张西南 | 申请(专利权)人: | 西安空间无线电技术研究所;西安电子科技大学 |
| 主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F11/36 |
| 代理公司: | 西安智萃知识产权代理有限公司61221 | 代理人: | 张超 |
| 地址: | 710100 陕西*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 分布 函数 最坏 执行时间 wcet 快速 估计 方法 | ||
技术领域
本发明属于实时嵌入式软件领域,特别涉及TI DSP技术中一种基于分布函数的最坏执行时间(WCET:Worst-Case Execution Time)快速估计方法,可用于评估DSP工程代码或者代码片段的最坏执行时间。
背景技术
在实时嵌入式软件系统中,系统对时间具有更加严格的要求,系统的正确性不仅与其程序的逻辑有关,还与其时间特性有关,只有在规定时间内完成规定的任务才是有效的,否则会导致该系统性能的降低甚至系统的失败。因此,事先获取系统中每个任务的最坏执行时间(WCET)对实时系统的时序分析等具有重要的意义。
目前,WCET分析主要包括三种方法:静态分析法、动态度量法和混合分析法。
动态度量法就是通过运行程序动态的测试程序的执行时间,进而分析得到WCET,然而该方法存在很大的弊端,首先该方法需要目标机,需要实际运行程序并需要大量的实验,耗费人力、物力、财力,并且在航天、航空领域,很多情况下不能模拟真实的目标机环境或者目标机昂贵,且对实时性要求较高,不可能让未经检验的程序在真实的目标机上运行。除此之外,该方法很难保证测量得到的结果是安全的,即无法保证不低估最差执行时间,因为很难保证所做的实际测量满足程序WCET的条件,对于现代处理器来说,此点更难做到。
混合分析法即将静态分析法和动态度量法相结合的方法,该方法具体分为两种情况,一种是首先对程序进行静态分析,即运用静态分析法进行分析,然后根据静态分析法的结果对程序进行运行测试,最终确定程序的WCET;另一种是首先对程序采用动态度量法进行测试分析,然后在动态度量法的基础上进行静态分析,进而确定程序的WCET。
无论采用哪种方法,混合分析法在包含静态分析法和动态度量法的优点上,也包含他们各自的缺点,并且混合分析法比较复杂。
静态分析法是通过理论分析估算得到程序的WCET,该方法不仅可以在不运行程序的情况下获得计算结果,而且能够保证得到的结果是安全的,因此,这是目前常用的方法。
传统静态分析方法一般由3个部分组成:①程序的控制流分析,主要分析确定程序可能的执行路径、最大循环次数和不可行路径等;②底层分析,主要考虑目标机器的特征,比如高速缓存、流水线、分支预测等,目的是确定每条汇编语句或者每个基本块执行的时间;③WCET计算,根据前两项信息,运用具体的计算方法对程序的WCET进行计算,主要计算方法分为基于路径的方法、基于树的方法和隐含路径枚举的方法。
总体上说,传统的静态分析方法是在WCET计算过程中,把每条汇编指令的执行时间作为确定值进行对待的,然后通过一定的方法得到程序的WCET,但此值也是确定的。
可以看到,传统的方法没有考虑到程序执行时间的不确定性,根据现在处理器的特点,这种方法显然是存在很大弊端的,因为现在处理器为了加速运算的速度采用很多先进的技术,比如高度缓存、流水线、分支预测等,使得程序执行时间的不确定性更加明显。
因此,程序的运行时间不是单一的某个值,而是某个范围的区间值。
目前针对此问题的解决方法主要是概率法求WCET,即pWCET,此概念是由Guillem Bernat在2003年提出来的,主要目的解决某段代码或者某个函数等的WCET的概率分布问题。运用此方法计算WCET的文献已发表很多,比如:
1)在2003年,Stefan M Petters提出的采用极值统计理论求解程序执行时间区间的方法。该文献的大概思想为,多次运行程序,得到很多个程序运行时间值,然后用Gumble概率函数逼近,求取程序运行时间极值,即为WCET值。分析此文献,可以很容易看出,此种方法不能算是纯粹的静态分析,因为它是对多次运行程序得到的时间值进行函数拟合逼近,求极值得到的WCET,同样具有动态度量法的局限性。
2)在2006年,胡明华、汤铭端在文献“基于分布函数的程序执行时间的静态预估”中提出的用概率分布模拟8087指令运行时间,进行指令叠加后用正态分布模拟整个程序执行时间的方法。然而,该方法事先需要对待分析程序进行很多的预处理,比如循环语句按照循环最大次数展开、分支判断语句则分为两支、case语句则分为多支等等,这在一定程度上限制了其适用性及自动化性,尤其对于大型的工程程序,需要大量的人力资源,具有很大的局限性。除此之外,该方法借鉴了计划评审技术(PERT)的思想,然而,该文献采用传统的PERT方法,其传统PERT方法本身具有很大的弊端,主要在于贝塔分布参数估计方法的不精确性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安空间无线电技术研究所;西安电子科技大学,未经西安空间无线电技术研究所;西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510009091.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型非重复充装瓶
- 下一篇:一种减压型倒流防止器的止回阀





