一种精确分析任务WCET的自动化方法..docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种精确分析任务WCET的自动化方法.

(一)发明名称 一种精确分析任务WCET的自动化方法 ()技术领域??本发明涉及一种精确估算实时系统任务最差情况执行时间(WCET :Worst-Case Execution Time)的自动化方法,属于实时嵌入式系统领域。 ?()背景技术 实时系统的结果只有在规定的时间范围内完成时才是有效的在规定的时间范围内完成时,轻则降低系统的性能,重则引起灾难性的后果事先获取系统中每个任务CET :Best-Case Execution Time)有着特别重要的意义。调度及可调度性检测的前提WCET分析包括三个组成部分:①程序流事实分析;②执行时间模型的建立;③前两项信息的WCET计算。流信息循环的最大迭代次数、不可行路径(infeasible path),其中不可行路径是指对任意输入数据都不可能执行的程序路径。 要获取程序的WCET,需要对程序的目标代码进行分析以获得实际的时间,即建立执行时间模型。对于不带cache、没有流水线的传统CISC指令,其指令的执行时间是固定的,执行时间模型:一个代码段的执行时间就是其所对应的每条指令执行时间的累加。计算在给定程序流和执行时间模型的情况下,为程序计算WCET估值。基于树的(tree-base)计算方法,使用为每种类型的复合程序语句定义的规则确定语句的WCET,然后通过自底向上遍历程序的语法分析树产生整个程序的WCET估值S1;S2,WCET(S1;S2) = WCET (S1) + WCET (S2);对于条件语句if (E) then S1 else S2,WCET (if (E) then S1 else S2) = WCET(E)+max(WCET (S1), WCET (S2)) ;对于循环语句while (E) do S,WCET(while (E) do S) = (n+1)* WCET(E)+n* WCET (S),这里n为循环迭代次数。 有很多实时程序,其执行轨迹由程序的输入变量值或者范围确定的,在该条件下程序按照此轨迹执行。举例来说,如表1所示的C程序: 表1 例程Pow程序 float Pow ( float base, int exponent){ 1. int times; 2. BOOL exchange; 3. if (exponent 0) 4. times = -exponent; 5. else 6. times = exponent; 7. float result=1.0; 8. for (i:=0;i times;i++) 9. result = result*base; 10.if (exponent 0) 11. result = 1 / result; 12.return result; 13.} 假定exponent的范围为[-10,10],则依据基于树的方法和相应的指令代码,其WCET为: Wpow = 50+111+max(301,283)+270+117+10(117+317)+111+max(560,0)+244=6040 其中,假定第3~6行程序对应的if语句的条件部分代码指令执行时间为111,两个分支的执行时间分别为301和283,第7行程序对应的赋值语句的代码指令执行时间为270,第8~9行程序对应的for语句的条件部分代码指令执行时间为117,第9行程序对应的赋值语句的代码指令执行时间为317,第10~11行程序对应的if语句的条件部分代码指令执行时间为111,第11行程序对应的赋值语句的代码指令执行时间为560,第12行程序对应的赋值语句的代码指令执行时间为244。 假定有如表2所示代码: 表2 例程Pow调用程序 1. result = 0; 2. for (i = -3;i 7;i++) 3. result = result + Pow(3,i); 则其中Pow部分的WCET为:10*6040=60400 ()发明内容包括发明目的、技术方案和有益效果???? 【发明目的】【技术方案】 ,j=1,2,…,m 其中I0=(i1,.., ij,.., im)为任一输入,?ij为任一不为0的增量。I0最常见的值为(0,0,…,0)。 对于ICFG路径来说,该路径上每个分支节点分支取向已经确定,因而,可以根据路径上的所有分支节点构造输入变量的约束。如果定义目标函数为所有输入变量累加的最小化,则构成典型的线性规划求解问题。 利用线性规划解析器,即可确定该ICFG路径的输入条件,此条件即为该情况的输入条件,如果线性规划解析器求得该目标函数无解,则说明该路径为不可行路径,则应排除该路径。 步骤7:产生该路径对应的WCET 对于上述路径的WCET,其对应程序的WCET

文档评论(0)

kaiss + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档