关于嵌入式系统软件可靠性设计的思考

来源 :科技尚品 | 被引量 : 0次 | 上传用户:hengkuan
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:随着使用软件和微处理器控制各种嵌入式设备的增加,对嵌入式系统的快速测试变得越发重要,根据统计,当前嵌入式系统的硬件故障率曾下降的趋势,同时软件的故障率却不断的攀升。本文介绍了嵌入式软件测试关键技术,通过对软件和硬件的结合、加强对其监控、进行总体优化设计等措施,提高嵌入式系统运行的可靠性。
  关键词:嵌入式系统;控制系统;可靠性设计
  1 嵌入式系统的可靠性
  国际电机工程师协会提出嵌入式系统是控制、监视或者辅助装置、机器和设备运行的装置。嵌入式系统是软件、硬件的组合,同时包括机械附属装置。硬件系统是软件运行的基础,硬件系统的质量好坏容易通过直觀判断,一般通过对其外观检查和测试,对其质量、性能进行评估。软件系统的研发受研发人员对需求认识、对硬件系统掌握的程度、实践的经验积累、编程设计能力等方面影响,所以对软件系统的可靠性评估工作较为困难。嵌入式系统运行失效会导致灾难性的后果,由于大批量生产从而使生产企业遭受一定的经济损失,在产品出产前必须对对嵌入式系统,包括硬件、软件和系统进行严格的测试 [1]。
  2 程序总体结构的优化设计
  嵌入式系统是以控制为主,软硬件结合紧密,功能性操作复杂,模块互相调频繁,外部工作环境多样,容易干扰别和被干扰,且执行错误会导致整个系统的崩溃。在嵌入式软件的设计过程中注重软件、硬件之间接口的冗余性、预防性设计。设计时采用看门狗电路、状态保存等技术设计。软件锁和程序陷阱设计等抗干扰技术以,通过备份技术进行系统容错的设计。系统的有序运行,取决于顶层软件程序协调和控制下级单元一起工作,低层软件保持与顶层软件同步可靠的运行。
  嵌入式微处理器控制系统软件、硬件相辅相成,硬件是软件的基础,软件使硬件充分高效地运行,以完成自动化、智能化控制。提高软件运行的可靠性,编写软件中对硬件作深入全面的研究、科学、合理地规划各个软件模块,使其在不同的时间使用硬件资源,尽量避免不同程序模块同时使用同一硬件资源。开始软件编写工作要深入学习硬件结构及其提供的资源,使软件编写更加合理性、规划性和科学性,最终形成高质量的软件系统。人性化设计指软件执行过程中的人机交互符合计算机使用者的心理特点,明确系统使用者心理特点的基础上,分析低层次的界面人性化设计中界面元素与帮助的人性化及高层次的功能结构人性化设计等方面。系统目标细化,设计人员根据总体任务需求,将现有的硬件条件和工作环境,将任务分解成数个相互联系、独立运行的控制单元模块,每个控制单元模块完成有自己的主要任务及配属任务,使各个控制单元模块负荷平均。以上为系统重点设计部分,可将一个复杂问题分解为几个简单易解的问题,并行运行的提高系统能力,从而现用几个简单运算解决复杂问题的能力,这样可以大大提高系统的工作效率,还可以大大减轻中央处理器的负担,同时全面提高系统的可靠性。每个控制单元模块同单元模块之间具有独立性,最大程度的减少彼此之间的依赖性,每当其中一个控制单元模块工作不正常时,不会影响系统正常运行,每个控制单元模块的功能设计不易太大,需考虑每个控制单元模块之间的负荷保持均衡,控制单元模块对系统硬件资源的占用的时间不能太常,但采取冗余设计是非常必要的。硬件资源中加入节能控制设计,比如运行中改变中央处理器运行频率、中央处理器空闲模式等。节能设计可减少系统电能的消耗,在减少电能损耗时,可降低中央处理器和硬件电路中电子元器件的温度,从而延长系统硬件的使用寿命,同时可以大大提高软件运行的可靠性。
  3 程序设计中的具体措施
  软件系统中,子程序运行会受到本身设计的缺陷、内外部电磁干扰、工作环境的温度等因素的影响。如果系统程序本身设计存在缺陷,可采用备用子程序进行替换,如果是系统硬件电路运行不可靠,软件设计做出相关的预警,提示操作人员及时进行排除。在系统子程序运行中的状态参数通过硬件的特定位置做出标识,供给系统监控函数和系统主程序使用。运行状态标志位是根据系统电路结构、硬件资源进行设计。虽然在高性能微处理器、优化电路的设计情况下,软件程序的可靠性较强,但程序可能还会出现一些不可意料的问题,即使硬件系统进行高水平的设计,其软件程序运行过程中的监控设计作为提高软件系统可靠性的要点。当多个子程序共同完成一目标协调工作时,不可避免的存在不协调的情况,只要科学合理的处理,一般不影响太大。对于受到内外环境的电磁干扰、偶然发生的子程序运行失效问题,改进软件算法进行解决,比如采用多次运算,去掉最大值部分和最小值部分,进行平均值计算等算法。当频繁出现运行失效情况时,分析是程序设计存在缺陷还是硬件资源冲突或硬件本身出现故障。如果软件程序设计存在一定缺陷,可通过调用备用程序予以解决。当因硬件资源存在冲突,可重新扫描硬件资源,调整硬件资源占用的时间与空间。动态软件缺陷测试技术是发现和消除软件缺陷的重要手段。在对软件程序存在缺陷进行检测时,可采用混合执行测试初始输入评估和选择方法,该方法结合部分控制流敏感的细粒度污点分析、符号执行。可通过识别、计算不同备选初始输入覆盖容易触发缺陷的危险路径的能力,来为混合执行测试评估和选择合适的初始输入,可有效的提高混合执行测试的缺陷检测效果[2]。
  嵌入式软件既是系统的核心,作为硬件系统的有效补充,需要具备防错、判错、纠错和容错等功能,具备了这些功能,可以保证系统可靠性要求在软件分系统设计中的实现。但是软件可靠性又不同于硬件电路,它不会随时间的推移而降低,其可靠性保障全部在设计过程中实现。
  参考文献
  [1]徐忠兵.嵌入式软件可靠性测试用例自动生成技术的研究与实现[D].国防科学技术大学,2009.
  [2]孙辉.嵌入式软件质量体系和软件质量自动评价系统的研究[D].东华大学,2010.
  (作者单位:中国航空工业集团公司洛阳电光设备研究所)
其他文献
摘 要:中国发展得很快,30年就让中国变得天翻地覆,而现在的大学生有几个是会做出好吃的菜呢?我相信大部分人也不会。我们这个网站不仅能够了解到各个民族的特色美食,而且可以在网站上学习各民族特色菜的制作过程。前台运用到的技术:主要是运用HTML、div+css进行网站页面的布局,我们力求页面能够让用户感到舒服。项目成员有专门的会ps技术,图片更加的绚丽多姿。再用上js技术使页面更具有交互性。后台运用到
摘 要:本文介绍了广播系统的种类和用途,以最高优先级别的应急广播为例,探讨广播系统在水力发电厂中的应用,并举例说明应急广播系统的设计安装和常见故障处理方法。  关键词:广播;水力发电厂;应用  0 引言  公共广播系统是专用于远距离、大范围传输声音的电声音频系统,广义上属于扩声音响系统的一个分支,是在建筑群内部自成体系的独立广播系统。根据建筑结构和生产工作的特点,水力发电厂通常要在生产区域建立独立
摘 要:教育作为我国人才培养的主要方式,对于我国社会发展建设具有重要作用,其中考试作为我国人才培养审核过程中的主要方式,在我国人才培养方式具有重要作用,能够帮助学生发现在学习过程中所存在的不足。在考试过程中所进行的座位安排,主要目的就是保证考试成绩的真实,在传统排座主要是通过教师人工手工的方式进行,但是学生对于人工排座的规律已经十分了解。为了能够有效解决传统人工手工排座所存在的问题,笔者提出了可视
摘 要:随着社会的发展以及科技水平的不断提升,人们的生活在发生着翻天覆地的变化。计算机科学技术的应用越来越广泛,各行各业几乎都离不开计算机。与此同时,计算机的软件数量也在不断的增加,软件的功能更是越来越受人们的喜爱。从当前来看,各行各业在使用软件的过程中,由于没有完善的制度以及软件的保护技术也不算成熟,在软件的专利权以及著作权方面有一定的纠纷。那么如何合理使用计算机软件呢?本文对此进行分析。  关
发展中国家通过技术追赶推动产业结构升级,提高自主创新能力,是实现对发达国家经济赶超的重要推动力。对于发展中国家的技术发展而言,从引进、模仿到再创新是一个艰难的过程。中
摘 要:随着社会的快速发展,电力事业也得到迅猛发展。如今,各项技术不断完善和更新,电力系统也在不断进步,调度自动化系统在变电站店里系统中的作用不可小视。变电站电网的等级不断提高,更加突出了调度自动化系统的作用。变电站的信息量不断增加,要想保证电力系统的稳定运行就必须保证调度自动化系统处于正常的运行状态下。但是,从调度自动化系统运行状况来看,调度自动化系统的运行状态受到多种因素的影响,导致调度自动化
摘 要:计算机的核心就是软件,就像是人的大脑一样,那么软件的安全就像大脑是否能够正常运转,因此软件的安全性非常重要。当我们开发一个软件时,不仅要注意到软件的快、美观等要求,更要注意软件的安全性能检测。计算机软件安全检测技术有:模型检测技术、语法检测技术、形式化安全检测技术等。这些安全检测技术广泛的应用于各类计算机软件的安全检测中。本文我们将就“计算机软件安全检测技术”展开讨论和分析。  关键词:计
摘 要:短波发射机是一项技术性要求较强的工作,不仅要其维修人员掌握较高的维修技能,还要具有丰富的维修经验。为了提高短波发射机维修质量,保证人员安全,要求维修人员必须时刻保持认真、谨慎和负责,遵守各项管理制度。本文主要对短波发射机维护中的安全措施进行分析,以期给相关人员提供参考。  关键词:短波发射机;维修;安全措施  短波发射机是广电设备中较重要的设备,与广播发送质量密切相关,为了保证其高效运转,