电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 单片机 > 详细信息
单片机:基于故障重现的单片机系统设计
来源:   时间: 2007-5-24 16:24:06    

引言

为研究电磁脉冲对计算机系统的干扰和破坏机理,利用GTEM室等大型装置产生的模拟核电磁脉冲为照射源,对计算机系统进行辐照效应实验。为了有效地研究计算机系统的电磁脉冲效应,需要专门用于电磁脉冲效应实验、具有故障重现功能的单片机系统。本文介绍了该系统的组成和原理,并给出了将该系统用于电磁脉冲效应实验的结果。

电磁脉冲辐照效应实验方法

电磁脉冲对电予系统的辐照效应实验方法,简单地说就是将被测电子系统置于电磁脉冲辐射场中,接受电磁脉冲的照射,研究被测系统在电磁脉冲照射下受干扰、损伤的情况。

实验配置如图1所示。主要由吉赫横电磁波传输室(GTEM Cell)、Marx发生器、控制台和被试系统等组成。Marx发生器用于产生高电压,与GTEM室配合,在GTEM室内产生均匀电磁场。控制台主要由示波器、光接收机和Marx控制面板组成。光接收机和电场传感器组成模拟量光纤场测量系统,主要用于将辐射电磁场转换成电压信号;示波器用来显示电场波形;Marx控制面板用来控制Marx发生器的充放电操作和陡化间隙的调整。

故障重现原理

故障重现的概念

计算机系统在电磁脉冲作用下可产生硬件损坏、数据采集误差增大、内存数据改变、程序跳转、重启动和死机等故障。这些故障现象是大量的、不同的计算机在不同环境、不同时间受干扰后产生的故障现象的集总。如果拿出任意一台计算机做实验,只能产生很少的几个故障现象,由于这些计算机没有自动检测功能,有的故障即使是发生了,也观察不到。如果连故障现象都观察不全,就无法找出故障出现的规律和原因,更谈不上进行防护技术研究。因此,很有必要设计一套专门用于电磁脉冲效应实验的计算机系统,该系统具有以下功能:

·自动检测并显示系统本身出现的故障;

·干扰时故障最容易出现;

·使出现故障的种类最多;

·具有故障重现功能。

故障重现是指主动地采取一定的技术手段,使故障反复出现。想看哪种故障就能出现哪种故障,想让它出现儿次就出现几次。这与一般电路中采取有效措施抗干扰的设计思想截然不同。

故障重现的条件

故障重现并不是用计算机软件进行故障仿真,而是故障的真实再现。要使故障重现,除了辐射场的幅度要足够强外,被测系统还要具备必需的硬件电路和软件环境。软件环境是指干扰出现时控制功能电路工作的程序正在运行,即时间对准。例如,如果要考查电磁脉冲对A/D转换电路转换精度的影响,首先要有ADC,其次要保证照射时ADC正在工作。

实现故障重现的技术手段

对辐射场强度和硬件电路的要求比较容易实现,难点是保证时间对准。当然,有些故障的重现对时间对准要求很宽松,如死机和重启动,计算机几乎在运行任何程序时都有可能出现这两种故障现象。

解决这一难点的方法是采取程序模块化和循环等待技术。程序模块化使每一种故障(效应)对应一个程序模块,想看哪种故障,就运行相应的程序模块;想让故障多次出现,就反复进行效应实验。循环等待技术是让计算机始终运行某一段或某一句程序,可大大提高干扰成功的概率,使故障最容易出现。

系统组成及工作原理

硬件组成

本系统采用51系列单片机。为便于研究程序存储器的效应情况,选用内部不含EPROM的8031作为中央处理器,程序固化在外部程序存储器中,这里采用的是擦、写方便的E2PROM(2864或28C64)。由于8031内含CTC和SIO,不再另设外CTC和SIO。为使系统能够重现尽可能多的故障现象,采用的外设芯片还有:外部数据存储器(6264)和ADC(AD0809)。另外,增加4位数码管用于信息显示,显示数据由4个锁存器(74LS373)保存。上述硬件电路既完成一定的功能又是被试验对象。系统组成如图2所示。

程序执行流程

该系统软件共由8个程序模块组成:指示单片机重启动的程序模块;检查CTC运行情况的程序模块;串口通讯功能检查程序模块;判断外RAM内容是否改变及读写是否出错的程序模块;判断内RAM内容是否改变程序模块;检查A/D转换电路转换误差是否增大程序模块;判断外中断足否被误触发程序模块;显示E2PROM内容是否被改写的程序模块。

系统的工作过程也就是上述8个程序模块的运行过程,它们是在执行开关K的控制下顺序执行的。图3给出了流程图。几乎每一种效应实验对应一个程序模块。由于硬件损坏故障与软件运行关系不大,而且故障现象明显,无需专门设置程序模块。重肩动效应实验可以工作在除指示单片机重启动的程序模块的任一程序模块。死机效应实验可以工作在任一程序模块,由于故障现象明显,无需检测程序。 故障重现及检测的具体实现

不同的故障现象有不同的重现和检测方法。由于篇幅有限,只给出三种故障重现及检测的实现方法。

外RAM效应

这部分实验包括三部分:一是不进行读写操作时,检查外RAM内容是否被改写;二是检查读操作是否出错;三是检查写操作是否出错。

第一部分实验中,RAM内容被改写是由于RAM芯片被干扰所致,只需编制检测程序。先在RAM的0000H~1FFFH单元写入同一数据("AA"),然后等待执行开关K的按下,等待期间进行冲击实验。冲击完毕,读出RAM内容并判断是否改变。

第二、三部分实验,检查RAM的读写操作是否因干扰而出错。让持续时间只有微秒量级的干扰脉冲去干扰执行时间只有几个微秒的读写指令,这种事件发生的概率几乎为0。对于干扰源可以工作在重复工作方式的情况,可以使其在重复工作方式下工作,这无疑是一种不错的想法。但是,由于重复工作方式的重复频率并不能做得很高,最高只能达到1kHz左右,所以其效果并不明显。最有效的方法是使程序重复执行一条读或写指令,虽然两次读或写之间还有几条判断读或写入的数据是否正确的指令,但两次读或写之间的时间间隔也只有数十微秒量级,这就相当于让读写指令等着电磁脉冲来干扰,从而大大提高了被干扰的概率。

第二、三部分程序编制开始时,为了使其更具代表性,对RAM的所有单元进行读或写,即先将RAM的0000H~1FFFH单元清0,然后使程序循环读这些单元,或向这些单元循环写入数据"AA",并实时检查读出或写入的数据是否正确。在实验中发现,第二、三部分实验出错的次数,比第一部分实验出现的次数还多。尽管采取了上述循环等待技术,但某条指令被干扰的可能性还是很小。多次实验不得其解,后来在读实验显示出错信息时检查RAM各单元的内容,发现每次都有一部分RAM单元的内容出错,而读操作出错不可能导致RAM内容改变,因此,并不是或不全是读写操作出错,而是由于RAM内容被改写后,误判为读或写出错。解决这一问题的方法是,使读写操作只对某一一固定的RAM单元进行,由于一个单元被改写的概率是所有单元被改写概率的l/2,这就大大降低了误警概率。

串口SIO效应

串口SIO效应实验主要是看串口通讯是否出错。要观察到这种故障现象,就必须让单片机运行串口通讯程序。由于51型单片机只有一个串口,而要使其进行通讯,最少需要两个串口,这就至少需要有两套单片机系统,这将使设备和实验复杂化。在认真研究串口工作原理后,终于找到了只用一个单片机模拟串口通讯的方案:把CPU的TXD和RXD短接,将TXD端发出的数据直接送入RXD进行接收,使单片机工作于自发自收状态,通过检查接收与发送的数据是否相等判断通讯是否正常。当然,仍需采用循环等待技术,使通讯循环进行,当运行正常时,在P1.1口产生脉冲信号,使红色LED亮。如果通汛出现异常,数码管将显示出错信息,并将LED熄灭。

定时器CTC效应

为使CTC工作失误故障重现,可在主程序中加入允许CTC中断的指令,使程序运行时,CTC一直在工作,等待电磁脉冲来干扰。 定时器采用CPU内部定时器0,工作方式为方式1。编写CTC0的中断子程序,与软件计数器R0配合,在P1.1口产生一个方波信号,驱动LED闪亮。主程序等待K按下指令,等待期间进行干扰实验。如果LED闪亮异常,表明CTC工作不正常。以下为定时器0的中断子程序:


实验结果

在设计该单片机系统以前,曾用一单片机最小应用系统做效应实验,结果只能观察到死机现象。而将该系统用于效应实验后,观察到了硬件损坏、A/D转换误差增大、内存数据改变、程序跳转、死机、CTC工作失误、串口通讯出错和程序存储器E2PROM内容被改写等多种故障现象。通过大量、反复地实验,测出了各种故障出现的阈值,分析了故障出现的原因。

图4是示波器记录下的串口RXD引脚上的正常信号和通讯出错时的干扰波形。图4表明,RXD上有很强的干扰信号,而且低电平被展宽了3~4倍。根据实验数据及串口工作原理,得出申行通讯出错的原因有两个:1.干扰使SIO电路工作失误,如串口控制寄存器SCON内容改变,发送或接收SBUF内容改变等,这些都可能引起接收数据和发送数据不符,从而使通讯出错;2.RXD线上的干扰信号使串行数据发生混乱,从而使接收数据出错。

相关信息
发表评论
打印本页 关闭本页
采用KS0713控制芯片的SG12864-5C液晶显示模块的 应用
  无论将其用做指示器还是用来照明,LED的效率、可靠性和成本都是难超越的。白色LED用作照明光源就像它用LCD背景光源一样,正在迅速普及,但是由于其正向电压一般为3~5V,用一节电池驱动白色LED显然存在种种困难。本设计利用单栅施密特倒相器,例如Texas Instruments 公司(www.ti.com)的SN74AUC1G14或者Fairchild 公司(www.fairchildsemi.com)的NC7SP14 的超低工作电压性能(图1)。当首先加...
>>详细内容
采用PSD913F2 扩展 8031程序空间(图)
  概述  8031系列单片机是应用非常广泛的MCU,但是随着控制领域的不断智能化、复杂化,程序长度可能远远大于8031的64KB限制。可以采用PSD913F2作为8031的外部存储器,其程序空间最大可达256KB,用KeilC51的BlankSwitch技术可使8位MCU运行256KB的应用程序。  PSD913F2内置256KB闪存,分为8个页面,每页空间16KB,内置可选的32KB启动存储器、2KB的SRAM、27个I/O端口、电源管理单元、40个...
>>详细内容
TI推出25位可配置寄存缓冲器SN74SSTUB32864
    TI推出的25位1:1 或14位1:2可配置寄存缓冲器适用于1.7V至1.9V的VCC工作环境。就1:1引脚配置而言,每个DIMM 仅需一个器件驱动9个SDRAM负载。就1:2引脚配置而言,每个DIMM需要两个器件驱动18个SDRAM负载。   除复位 (RESET) 与控制 (Cn) 输入为LVCMOS,所有其它输入均为SSTL_18。所有输出均针对边缘控制电路进行了优化,可满足无端接DIMM负载的要求,并符合SSTL_18规范。   SN74SS...
>>详细内容
Atmel发布全集成汽车气囊系统供电芯片ATA6264
    Atmel公司日前发布全集成汽车气囊系统供电IC ATA6264,面向高端汽车气囊应用设计。该器件采用高压0.8um BCD工艺生产,拥有诸多新特性,包括抗低压及电池线缆失效,智能电源序列,集成监视器及其他监视功能。另外,ATA6264还具有高精度和高灵活性的特点。  ATA6264可为整个气囊系统提供电能(包括传感器、微控制器及启动装置),其电压可编程。它通过一个16位SPI与微控制器通讯,带有...
>>详细内容
基于LPC2138的VGS12864E程序设计
  引言   ARM处理器凭借其强大的功能、极低的功耗、较小的封装广泛应用于门禁、无线抄表、智能温控等小型系统中,在这些系统中人机交互界面一般由LCD完成,但是通常LCD在显示亮度、环境适应等方面存在缺陷,所以越来越多新技术新产品逐渐出现,OLED就是一种。本文介绍了一种基于OLED的显示器VGS12864E的结构原理,给出了其在ARM7微处理器LPC2138系统应用中的硬件连接和具体程序设计。 ...
>>详细内容
基于8031单片机的机车自动换档系统的设计
  1概述   在地铁工程建设中,工程用内燃机车(简称工程车)起到了非常重要的作用。尤其在地铁建设初期,由于需要运送大量的建筑材料,而初期的运输条件又比较简陋,因而工程车成为主要的运输工具。在地铁建成后的运营中,工程车同样可以担负车辆段内的调车和运送大型工程材料下隧道等任务。由于地铁对工程车的使用量非常大,工程车司机的劳动强度自然也是很大的。所以,如何应用自动化...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com