一种指令诊断方法技术

技术编号:10465980 阅读:76 留言:0更新日期:2014-09-24 18:04
本发明专利技术公开了一种指令诊断方法,方法包括:S101,监控芯片向主芯片发送指令诊断请求;S102,主芯片接收请求指令诊断,对主芯片的多个执行指令操作结果值与相对应的多个主芯片的第一预设结果值进行比较;S103,当多个执行指令操作结果值等于相对应的多个第一预设结果值时,则判断指令操作为正常;或当任意一个执行指令操作结果值大于或小于相对应的第一预设结果时,则主芯片进行复位。该指令诊断方法实现了对运行错误的指令进行监控和诊断并且使用的成本很低,同时开发程序也比较简单。

【技术实现步骤摘要】
一种指令诊断方法
本专利技术涉及指令诊断,具体地,涉及一种指令诊断方法。
技术介绍
指令是指存储在CPU内部,对CPU运算进行指导和优化的硬程序。比如加法指令、减法指令、乘法指令、除法指令等。这些指令是CPU内部固化的程序,程序员是不能对指令程序本身进行修改或调试的。但在CPU的使用过程中,由于CPU硬件的损坏或电磁环境的干扰,这些指令运行时有可能出现错误,对于嵌入式开发领域,如果这些CPU被用于与人身安全相关的领域,如汽车、飞机等电子控制系统,为了满足对嵌入式系统CPU高可靠性的要求,必须对这些可能的指令运行错误进行监控和诊断。在现有技术中,对CPU运算进行指导和优化的方法是采用冗余系统,即用两块相同的CPU或双核的CPU,每一块CPU或双核CPU上的每一个运算核心,运行相同的程序,并比对运行结果,只有两个CPU或双核CPU的两个运算核心运行结果相同才能执行动作。这种冗余方案固然能解决指令运行错误诊断的问题,但两个CPU或双核CPU运行同一个程序,导致了CPU使用效率低,并且使用的成本很高,开发程序也比较复杂的问题。
技术实现思路
本专利技术的目的是提供一种指令诊断方法,该指令诊断方法实现了对运行错误的指令进行监控和诊断并且使用的成本很低,同时开发程序也比较简单。为了实现上述目的,本专利技术提供一种指令诊断方法,所述方法包括:S101,监控芯片向主芯片发送指令诊断请求;S102,所述主芯片接收请求指令诊断,将所述主芯片的多个执行指令操作结果值与相对应的多个所述主芯片的第一预设结果值进行比较;S103,当多个所述执行指令操作结果值等于相对应的多个所述第一预设结果值时,则判断指令操作为正常;或当任意一个所述执行指令操作结果值大于或小于相对应的所述第一预设结果时,则所述主芯片进行复位。优选地,步骤S103的方法还包括:当所述主芯片执行指令操作结果值等于所述主芯片的预设结果值时;S201,将所有所述执行指令操作结果值相加得到的和发送给所述监控芯片;S202,所述监控芯片将所述和与第二预设结果进行比较;S203,当所述和等于所述第二预设结果时,则判断指令操作为正常;或当所述和大于或小于所述第二预设结果时,则将指令诊断不通过信息发送给所述主芯片,所述主芯片进行复位。优选地,在S101中,所述监控芯片以时间间隔为一个周期向所述主芯片发送请求指令诊断。进一步优选地,所述时间间隔为10-40ms。更进一步优选地,所述时间间隔为20ms。优选地,在S101中,所述监控芯片通过串行外设接口向所述主芯片发送请求指令诊断。进一步优选地,在S201中,所有所述执行指令操作结果值相加得到的和通过串行外设接口发送给所述监控芯片。优选地,在S102中,对多个所述执行指令进行诊断包括:对加法指令、减法指令以及乘法指令进行诊断。通过上述实施方式,本专利技术的指令诊断方法中的监控芯片只需要完成相对简单的工作即可,可以选择低价位的单片机来实现,主芯片则完成系统的控制功能和指令诊断子程序,充分利用主芯片的高性能处理能力。比如一种常用的搭配组合:主芯片采用32位高性能单片机芯片,来完成嵌入式系统的功能控制及指令诊断子程序,监控芯片则采用价格低廉的8位单片机芯片,来实现指令诊断功能的激活和诊断结果的对比。通过这样的方式,主芯片和监控芯片的使用效率高,并且使用的成本很低,开发程序也比较简单实用。本专利技术的其他特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本专利技术,但并不构成对本专利技术的限制。在附图中:图1是本专利技术的具体实施方式中的一种指令诊断方法的流程图;以及图2是本专利技术的优选实施方式中的一种指令诊断方法的流程图。具体实施方式以下结合附图对本专利技术的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本专利技术,并不用于限制本专利技术。图1是本专利技术的优选实施方式中的一种指令诊断方法的流程图。以及图2是本专利技术的优选实施方式中的一种指令诊断方法的流程图。如图1所示,本专利技术提供一种指令诊断方法,所述方法包括:S101,监控芯片向主芯片发送指令诊断请求,通过上述方式实现信号控制进行诊断;S102,所述主芯片接收请求指令诊断,将所述主芯片的多个执行指令操作结果值与相对应的多个所述主芯片的第一预设结果值进行比较,通过上述方式实现执行指令操作结果值与正确值的判断;S103,当多个所述执行指令操作结果值等于相对应的多个所述第一预设结果值时,则判断指令操作为正常;或当任意一个所述执行指令操作结果值大于或小于相对应的所述第一预设结果时,则所述主芯片进行复位,通过上述实施方式实现对指令操作是否正常的判断,正常则不进行操作,不正常则所述主芯片进行复位。通过上述实施方式,本专利技术的指令诊断方法中的监控芯片只需要完成相对简单的工作即可,可以选择低价位的单片机来实现,主芯片则完成系统的控制功能和指令诊断子程序,充分利用主芯片的高性能处理能力。比如一种常用的搭配组合:主芯片采用32位高性能单片机芯片,来完成嵌入式系统的功能控制及指令诊断子程序,监控芯片则采用价格低廉的8位单片机芯片,来实现指令诊断功能的激活和诊断结果的对比。通过这样的方式,主芯片和监控芯片的使用效率高,并且使用的成本很低,开发程序也比较简单实用。在一种实施方式中,步骤S103的方法还包括:当所述主芯片执行指令操作结果值等于所述主芯片的预设结果值时;S201,将所有所述执行指令操作结果值相加得到的和发送给所述监控芯片,通过监控芯片再对所述指令操作是否正常进行判断,通过对整体的判断,防止指令操作的结果值发生漏检;S202,所述监控芯片将所述和与第二预设结果进行比较;S203,当所述和等于所述第二预设结果时,则判断指令操作为正常;或当所述和大于或小于所述第二预设结果时,则将指令诊断不通过信息发送给所述主芯片,所述主芯片进行复位,通过上述实施方式实现对指令操作是否正常的判断,正常则不进行操作,不正常则所述主芯片进行复位,通过上述方式使得主芯片和监控芯片的使用效率变高。在一种实施方式中,在S101中,所述监控芯片以时间间隔为一个周期向所述主芯片发送请求指令诊断,通过多个周期对主芯片进行实时的监控。在优选实施方式中,所述时间间隔为10-40ms,可以更好的对主芯片进行实时的监控。进一步优选地,所述时间间隔为20ms,这样的效果更好。在一种实施方式中,在S101中,所述监控芯片通过串行外设接口向所述主芯片发送请求指令诊断,通过上述方式实现监控芯片对所述主芯片的监控管理。在另一种实施方式中,在S201中,所有所述执行指令操作结果值相加得到的和通过串行外设接口发送给所述监控芯片,通过上述方式实现监控芯片对所述主芯片的监控管理。在一种实施方式中,在S102中,对多个所述执行指令进行诊断包括:对加法指令、减法指令以及乘法指令进行诊断,通过上述方式,该方法可以对多种指令进行诊断。如图2所示,在本专利技术所提供的一种具体实施方式中,本专利技术应用于汽车上的刹车防抱死嵌入式控制系统,采用了英飞凌的TC1724芯片作为主芯片,为了实现对主芯片的指令诊断,选择飞思卡尔的低端8位单片机MC9S08QG8作为监控芯片。主芯片和监控芯片之间通过SPI(本文档来自技高网...
一种指令诊断方法

【技术保护点】
一种指令诊断方法,其特征在于,所述方法包括:S101,监控芯片向主芯片发送指令诊断请求;S102,所述主芯片接收请求指令诊断,将所述主芯片的多个执行指令操作结果值与相对应的多个所述主芯片的第一预设结果值进行比较;S103,当多个所述执行指令操作结果值等于相对应的多个所述第一预设结果值时,则判断指令操作为正常;或当任意一个所述执行指令操作结果值大于或小于相对应的所述第一预设结果时,则所述主芯片进行复位。

【技术特征摘要】
1.一种指令诊断方法,其特征在于,所述方法包括:S101,监控芯片向主芯片发送指令诊断请求;S102,所述主芯片接收请求指令诊断,将所述主芯片的执行指令操作结果值与相对应的所述主芯片的第一预设结果值进行比较;S103,当所述执行指令操作结果值等于相对应的所述第一预设结果值时,则判断指令操作为正常;或当任意一个所述执行指令操作结果值大于或小于相对应的所述第一预设结果时,则所述主芯片进行复位;步骤S103的方法还包括:当所述主芯片执行指令操作结果值等于所述主芯片的预设结果值时;S201,将所有所述执行指令操作结果值相加得到的和发送给所述监控芯片;S202,所述监控芯片将所述和与第二预设结果进行比较;S203,当所述和等于所述第二预设结果时,则判断指令操作为正常;或当所述和大于或小于所述第二预设结果时,则将...

【专利技术属性】
技术研发人员:谢小娟丁绪星冯友宏
申请(专利权)人:安徽师范大学
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1