一种使cpu程序计数器抗干扰的设计方法

文档序号:6606026阅读:701来源:国知局
专利名称:一种使cpu程序计数器抗干扰的设计方法
技术领域
本发明涉及一种使计算机CPU具有抗干扰能力的设计方法,尤其涉及一种使程序计数器抗干扰的设计方法。
计算机控制系统的抗干扰是其软、硬件设计中必须考虑的重要问题,而程序计数器PC的抗干扰俗称“程序跑飞”又是设计中特别主要的问题之一。现有技术中,解决“程序跑飞”的常用且有效的方法是设置“Watchdog”监视器,它能在程序受干扰、进入死循环或硬件故障时使系统复位,从而使系统恢复正常。但使用这种方法存在如下缺陷1、由于它允许“程序跑飞”一个“固定的时间”,即“Watchdog”监视器的溢出或延时时间,而有些系统中这是不允许的,因此不能及时发现CPU故障;2、当程序较为复杂时,软件中不易确定设置清除“Watchdog”指令的位置,即没有一定的规律可循;3、当进入死循环,而该循环中又有“Watchdog”的清除指令时,它就无法起到作用;4、在复杂的大型计算机系统中使用较为困难,只适用于小型控制系统,而无法扩大其应用范围。
针对以上问题本发明的目的在于提供一种可实现计算机运行的实时监测,使计算机CPU中程序计数器能及时、有效地抗干扰的设计方法。该方法设计出的计算机CPU控制系统,可立即发现干扰,并使系统复位,恢复正常。
为实现上述目的本发明是以如下技术方式实现的它包括硬件中程序存储器PRM、程序计数器PC和软件中程序指令的设置,在硬件设置中增设程序计数器PC的监视计数器PCMC、路标寄存器DR,在所述软件设置中设有复位指令,在程序传统指令后增设路标字节,所述路标字节从第一条指令起按次序循环编写,同时在传统的取指时序后增加取路标字节存于路标寄存器DR的操作,并使所述监视计数器PCMC与路标寄存器DR中的内容相对应设置,CPU工作时,先对监视计数器PCMC与路标寄存器DR中的内容进行比较,若相同为正常,此时CPU执行取回的指令,并使监视计数器PCMC每执行一条指令后,其内容自动加1;若不相同,表明程序计数器PC受到干扰,这时让CPU废除已取回的指令,同时产生复位信号。
上述路标字节写入程序存储器PROM中,系统复位时将程序计数器PC设置为起始地址,监视计数器PCMC设置为00H,让计算机CPU运行时根据程序计数器PC的地址去程序存储器PROM中取指令,同时将程序存储器PROM中的路标字节送入路标寄存器DR中。
中断响应和调用子程序时,将所述监视计数器PCMC中的值压栈,同时将其清零,在中断服务或子程序中,所述路标字节从00H开始编写,返回时将监视计数器PCMC中的值弹回。
本发明与现有技术相比,改变了传统的CPU取指方式,增设了程序计数器PC的监视计数器PCMC,并配合软件的编制规则,实现计算机运行的实时监测,即可在程序计数器PC受到干扰而未执行错误指令前,终止程序的运行,也就是一旦出现干扰,便可立即发现,使系统复位,恢复正常;软件程序设计中,在传统的指令后增设路标字节,既方便又有规律,并对现有计算机语言具有通用性,因此,本发明能够大大提高计算机CPU中程序计数器的抗干扰能力,从而提高CPU的可靠性和安全性。
下面对本发明作进一步的详细说明本发明包括硬件中程序存储器PROM、程序计数器PC和软件中程序指令的设置,硬件设置中增设程序计数器PC的监视计数器PCMC、路标寄存器DR,软件设置中设有复位指令,在程序传统指令后增设路标字节,路标字节从第一指令起按次序由00H到FFH循环编写,并写入程序存储器中,同时在传统的取指时序后增加取路标字节存于路标寄存器DR的操作,并使监视计数器PCMC与路标寄存器DR中的内容相对应设置。
系统复位时,将程序计数器PC设置为起始地址,监视计数器PCMC设置为00H,让计算机CPU运行时根据程序计数器PC的地址去程序存储器中取指令,同时将程序存储器PROM中的路标字节送入路标寄存器DR中;然后对监视计数器PCMC与路标寄存器DR中的内容进行比较,若相同为正常,此时CPU执行取回的指令,并使监视计数器PCMC每执行一条指令后,其内容自动加1;若不相同,表明程序计数器PC受到干扰,这时让CPU废除已取回的指令,同时产生复位信号,使系统恢复正常。另外,监视计数器PCMC和路标寄存器DR位数与CPU位数相匹配,为提高可靠性可增加其字节长度。
中断响应和调用子程序时,将监视计数器PCMC中的值压栈,同时将其清零,在中断服务或子程序中路标字节从00H开始编写,返回时将监视计数器PCMC中的值弹回。
执行转移类指令时,为叙述方便以短跳指令SJMP为例,该指令应具有如下格式SJMP a,b,c这里a偏移量;b跳转后PCMC的修正值,以便在跳转后与下一指令的路标字节匹配;c本指令的路标字节;即对转移类指令增加b、c两个字节即可。
用本方法设计出的CPU,抗干扰能力大大增强,可广泛适用于大、中、小型计算机控制系统。
权利要求
1.一种使CPU程序计数器抗干扰的设计方法,它包括硬件中程序存储器PROM、程序计数器PC和软件中程序指令的设置,其特征在于所述硬件设置中增设程序计数器PC的监视计数器PCMC、路标寄存器DR,在所述软件设置中设有复位指令,在程序传统指令后增设路标字节,所述路标字节从第一条指令起按次序循环编写,同时在传统的取指时序后增加取路标字节存于路标寄存器DR的操作,并使所述监视计数器PCMC与路标寄存器DR中的内容相对应设置,CPU工作时,先对监视计数器PCMC与路标寄存器DR中的内容进行比较,若相同为正常,此时CPU执行取回的指令,并使监视计数器PCMC每执行一条指令后,其内容自动加1;若不相同,表明程序计数器PC受到干扰,这时让CPU废除已取回的指令,同时产生复位信号。
2.根据权利要求1所述的一种使计算机CPU程序计数器抗干扰的设计方法,其特征在于所述路标字节写入程序存储器PROM中,系统复位时将程序计数器PC设置为起始地址,监视计数器PCMC设置为00H,让计算机CPU运行时根据程序计数器PC的地址去程序存储器PROM中取指令,同时将程序存储器PROM中的路标字节送入路标寄存器DR中。
3.根据权利要求1或2所述的一种使计算机CPU程序计数器抗干扰的设计方法,其特征在于中断响应和调用子程序时,将所述监视计数器PCMC中的值压栈,同时将其清零,在中断服务或子程序中所述路标字节从00H开始编写,返回时将监视计数器PCMC中的值弹回。
4.根据权利要求1或2或3所述的一种使计算机CPU程序计数器抗干扰的设计方法,其持征在于所述路标字节按次序由00H到FFH循环偏写。
5.根据权利要求1或2或3所述的一种使计算机CPU程序计数器抗干扰的设计方法,其特征在于所述监视计数器PCMC和路标寄存器DR的位数与CPU位数相匹配,其字节长度可根据需要增加。
全文摘要
一种对计算机CPU程序计数器进行抗干扰的设计方法,它在硬件设置中增设程序计数器PC的监视计数器PCMC、路标寄存器DR,在软件设置中设有复位指令,在程序传统指令后增设路标字节,同时在传统取指时序后增加取路标字节存于路标寄存器DR的操作。本发明可实现计算机运行的实时监测,在程序计数器PC受到干扰而未执行错误指令前,终止程序的运行,使系统复位,因此,本发明能够大大提高计算机CPU的抗干扰能力,提高CPU的可靠性和安全性。
文档编号G06F9/06GK1274113SQ9911577
公开日2000年11月22日 申请日期1999年5月18日 优先权日1999年5月18日
发明者柴钰 申请人:柴钰
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1