网站大量收购独家精品文档,联系QQ:2885784924

嵌入式软件可信性的设计及验证方法.docxVIP

嵌入式软件可信性的设计及验证方法.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式软件可信性的设计和验证方法 摘要 目前,嵌入式系统已广泛地应用于控制系统部件和智能仪表中,在控制系统部件对嵌入式系统依赖性增强的同时,对嵌入式软件质量的要求也越来越高,尤其是可靠性的要求。为此,IEC61508等功能安全标准通过严格规定软件安全生命周期中各阶段应采用的技术和措施,以期提高软件的可靠性,保证软件质量。本文给出一般性的嵌入式软件可信性的设计和验证方法 一、引言 微机和通信技术的发展使得越来越多制造业、流程工业过程采用DCS、FCS等数字化控制系统,传统的模拟仪表也逐步为智能化的仪器仪表和执行机构所替代,从而极大地提高了工业过程的自动化水平。我国自上世纪80年代开始数字化控制系统和智能化仪表的研究开发,自此已形成一定的产业链,在测量、控制等基本性能上也已达到一定水平,但是在某些关键领域仍然无法满足用户的要求,他们更倾向于使用国外仪表。究其原因,一方面是国内仪表的智能化水平不高,缺乏面向系统应用的功能,如故障自诊断等方面;另一方面,国内仪表在可靠性、安全性上也远远落后于国外仪表,目前国内好的仪表可靠性指标M珊F约为10万小时,而国外有些仪表的MTBF可达到100年(约90万小时),相差数倍。此外在安全性方面,国外部分仪表已按照IEC61508和61511功能安全规范要求进行SIL等级认证,多数可达到SILZ级,部分仪表达到SIL3级。而国内仪表的功能安全认证方面的工作才刚刚开始。 考虑到现今的数字化控制系统部件和智能仪表均采用嵌入式系统作为控制核心,其控制功能的可靠安全实现极大地依赖于嵌入式软件的正确执行,而其中的嵌入式软件部分的可靠性一般都是被忽略的。而国外仪表能达到较高的可靠性水平,一方面也是因为其考虑了软件系统的可靠性,如Rosemount公司的305IC差压变送器的硬件SIL等级达到SIL3级,软件为SILZ级。因此,要想实现国内智能仪表的高可靠性,研究嵌入式软件高可靠性的分析、设计和验证方法和技术就显得尤为重要。 二、嵌入式软件可靠性特点 1、实时性对嵌入式软件可靠性的影响 实时软件与其他软件不同,它的正确性不仅由功能和行为决定,还依赖于其时间特性。如何对软件的时间特性进行验证成为嵌入式软件可靠性的核心问题之一。对软件的时间测试可分为两种方法:即静态时间分析和动态实时检测。 静态时间分析就是不执行被测程序,而通过分析程序结构来预估程序、子程序执行时间的方法。静态时间分析不执行被测程序,也就不知道程序子实际运行时的分支走向和循环次数等不确定性因素,因此它不能得到程序的实际执行时间。但静态分析可以完成另外一个很重要的功能:确定程序在最坏情况下的执行时间,即程序最大执行时间是否满足时间约束。由于实时系统需要在任何情况下都在指定期限前完成任务,计算程序的最大执行时间具有非常重要的意义。 动态实时检测就是通过执行程序来测试程序的时间特性。在线仿真器ICE、指令仿真器和插桩工具是三种最常用的方法。 实时性使得嵌入式软件的测试用例编写更为困难测试用例不仅要测试软件的功能和行为特性,还要测试其时间特性,因为同样的输入在不同时可能有不同的输出,这给传统的测试用例生成方法带来了新问题。 2、 嵌入性对嵌入式软件可靠性的影响 嵌入式软件的开发环境和运行环境的不一致性同样给嵌入式软件可靠性的测试带来了不少麻烦。 (1)测试工具运行在宿主机上,测试所需要的信息在目标机上产生,并通过一定的物理/逻辑连接传输到宿主机上,由测试工具接受。因此,嵌入式软件测试的一个重要问题是建立宿主机与目标机之间的物理/逻辑连接,解决数据信息的传输问题。 (2)即使在宿主机环境下测试再充分,也不能说明在目标机环境下该软件运行不出问题。因而,嵌入式软件还面临着目标环境的测试。这不仅增加了测试的代价,而且还带来了嵌入式软件测试策略问题,即哪些测试分配在宿主环境进行,哪些测试分配到目标环境下运行。 3、反应性对嵌入式软件可靠性的影响 反应性系统(Reactive System)在任何时刻都要对可能出现的时间作出适当反应。由于“激励-响应”在反应式系统中占主要地位,因此这类系统常常包含大量复杂的控制行为。 并发性(Concurrency)是反应式系统最重要也是最基本的特征,任何反应式程序中均包含若干并发进程,即这些进程并发执行。所以,反应式不能简单的将它定义为输入数据和输出数据的函数,而需要表示为一个输入序列和输出序列的二元组。输入时间的各种序列组合使程序的输入数据空间急剧膨胀。经常可以看到,同样的输入数据在不同时刻会产生不同的结果,这给测试工作带来了特殊的困难。由于反应式软件的输入数据空间很大,如何选取测试用例成为反应式软件的关键问题之一。 三、嵌入式软件可信性的验证方法 1、优化系统设计方案 嵌入式系统最大的特点是以控制为主,软硬件结合较多,功能性操作

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档