欢迎来到天天文库
浏览记录
ID:35506092
大小:57.33 KB
页数:5页
时间:2019-03-25
《提高单片机系统可靠性的设计方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、提高单片机系统可靠性的设计方法2006-5-22來源:单片机及嵌入式系统应用作者:韩党群黄进目前,大量的嵌入式系统均采用了单片机,并且这样的应用正在更进一步扩展;但是多年以來人们一直为单片机系统的可靠性问题所困惑。在一些要求高可靠性的控制系统中,这往往成为限制其应用的主耍原因。1单片机系统的失效分析一个单片机系统的可靠性是其自身软碾件与其所处工作环境综介作用的结果,因此系统的可靠性也应从这陶个方面去分析与设计。对于系统白身而言,能不能在保证系统各项功能实现的同时,对系统H身运行过程中出现的各种干扰倍
2、号及直接来自于系统外部的干扰信号进行有效的抑制,是决定系统可靠性的关键。有缺陷的系统往往只从逻辑上去保证系统功能的实现,而对于系统运行过程中可能出现的潜在的问题考虑欠缺,采取的措施不足,在干扰信号真正袭來的时候,系统就可能会陷入闲境。任何系统的可靠性都是相对的,在一种环境卜•能够很好工作的系统在另一种环境下却有可能是很不稳定的。这就充分说明环境对系统可旅运行的重耍性。在针对系统运行环境去设计系统的同时,应尽屋采取措施改善系统运行的环境,降低环境干扰,但这样的措施往往比较有限。2提高可靠性的措施捉髙单
3、片机系统町靠性的方法与措施很多。一般地,应根据系统所面临的具体的可靠性问题,针对引起或影响系统不可靠的因素釆取不同的处理措施。这些措施-•般从这样两个目的出发:第一,尽量减少引起系统不可靠或影响系统可靠的外界因素;第二,尽量提岛系统自身抗干扰能力及降低自身运行的不稳定性。例如,为了抑制电源的噪声和环境干扰信号而采川的滤波技术、隔离技术、屏蔽技术等都是出于第-个H的;另外,针对系统自身而采用的看门狗电路、软件抗干扰技术、备份技术等均是出于第二个H的而采取的措施。•其屮第一类的措施较常使用,其使用简单而
4、且效果也较好,但其对系统可靠性的捉高是冇限的,许多情况下不能满足系统的要求。第二类措施的使用可以更进一步捉高系统的可靠性,往往在高可靠性的系统设计中被广泛使用。下面就第二类技术使用中的-些相关问题作进-步的分析。2.1川临视定时器技术提高系统的可靠性监视定时器(Watchdog)技术现在使用得非常广泛,技术已较为成熟,这一技术的支持手段也很多。H前,各处理器的生产厂家几乎都在生产内登有看门狗定时器的单片机产品,市场上还有许多独立的看门狗定时器芯片可供选择。要实现这样的电路已经较为容易,因此这里对于如
5、何实现这一技术的一般细节不作详细的论述,仅就采用此技术所导致的可垂人性问题进行分析。采用监视定时器技术后,一旦程序跑飞,系统立即会被监视定时器复位抻,从头重新穴动系统,从而退出不正常的运行状态,但是这样使川时必须注意系统的可重人性。所谓系统的可重人性可以这样來定义:当一个微处理器系统在重新复位启动以后,系统对外的执行操作不因靈新出动而改变,或者说这种改变是能够容忍的,从而保证整个系统对外操作的连续性和顺序性,也就是系统最终的安全性和可靠性。对于一个系统,如果它对外的控制操作只与系统当前的输入状态有关
6、,那么这个系统就儿乎具有完全的重入性能;相反,如一个系统对外的输出操作不仅与系统当前的输入相关,而且与系统的历史状态有关,那么如果系统重入时系统的历史状态没有保留或者历史状态被破坏,那么此时系统对外的操作就可能完全是错误的,这样的系统虽然在看门狗定时器的作用下退出了不正常的运行状态,但重入的状态也不会正常,那么这样的系统也只能是病态的系统,不能使用。因此,对于采用了看门狗电路來提高可靠性的系统,必须严格保证系统的可重入性。对于与历史状态相关的系统,为保证其重入性能,可以把其历史状态保存在系统的R21
7、中,即在单片机系统的内存或其扩展的外部存储器中,开辟岀专川于保存历史状态的缓冲区。在确保系统不掉电的情况下,这些历史数据在系统重入时可以被雨新使用。如呆不能保证系统的电源稳定,还必须考虑采用备用电池供电,以保证RAM数据的安全稳定;对于时间不是太敏感的系统,还可以采PJE2PR0M或FlashROM來保存历史数据。2.2软件抗干扰技术-个系统可能由于存在着各种干扰及不稳定因素而岀现运行故障。为解决这一问题,可以从程序的设计方面采取一些措施。传统的为抑制系统的干扰信号而经常采用的软件滤波技术、软件兀余
8、设计就是这一类的典型应用。根据设计经验,通常还可以采用软件锁设计、程序陷阱设计。这一类方法主要是针对程序跑飞的情况而采用的。当系统在干扰信号的作用下发生程序跑飞时,程序指针冇可能指向两个区域:一种可能止好转到程序区的莫他地址进行执行,一种可能转移到程序空间的盲区进行执行。所谓盲区,就是说那里并没有存放有效的程序指令。对于第种情况,可以采取软件锁加以抑制。例如为保证对外操作的安全,在软件锁设计中,对于毎一个相对独立的程序块在其执行以前或执行中对一个预先设定好的密码进行校
此文档下载收益归作者所有