用于恢复主存储装置中的信息的装置以及方法.pdf

上传人:32 文档编号:4750037 上传时间:2018-11-05 格式:PDF 页数:29 大小:6.88MB
返回 下载 相关 举报
摘要
申请专利号:

CN201180027221.2

申请日:

2011.03.30

公开号:

CN102934090A

公开日:

2013.02.13

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 11/14申请公布日:20130213|||实质审查的生效IPC(主分类):G06F 11/14申请日:20110330|||公开

IPC分类号:

G06F11/14

主分类号:

G06F11/14

申请人:

株式会社雷捷电子科技

发明人:

辰野功

地址:

日本东京都

优先权:

2010.03.30 JP 2010-078112

专利代理机构:

北京林达刘知识产权代理事务所(普通合伙) 11277

代理人:

刘新宇

PDF下载: PDF下载
内容摘要

在微计算机产生了误动作的情况下,使微计算机从误动作中恢复。装置具备:中央处理装置,其具备一个或两个以上的寄存器;可改写的第一存储装置;可改写的第二存储装置;以及存储装置管理单元。存储装置管理单元将第一存储装置中存储的包含存储装置信息和寄存器信息的恢复信息存储到第二存储装置,之后,存储装置管理单元根据第二存储装置中存储的恢复信息来恢复第一存储装置的信息及对应的一个或两个以上的寄存器的信息。

权利要求书

权利要求书一种能够恢复主存储装置中的信息的微计算机,其特征在于,具备:
中央处理装置,其具备一个或两个以上的寄存器;
可改写的第一存储装置;
可改写的第二存储装置;以及
存储装置管理单元,其获取恢复信息,将该恢复信息存储到上述第二存储装置,该恢复信息是包含作为上述第一存储装置中存储的信息的存储装置信息和作为上述一个或两个以上的寄存器中存储的信息的寄存器信息的信息。
根据权利要求1所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,反复进行上述恢复信息的获取以及该恢复信息向上述第二存储装置的存储。
根据权利要求2所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,周期性地进行上述反复。
根据权利要求3所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,通过周期性地执行中断处理来进行上述反复,每次进行中断处理时,上述存储装置管理单元获取上述恢复信息并将该恢复信息存储到上述第二存储装置。
根据权利要求2所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,以随机间隔进行上述反复。
根据权利要求2所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,在满足规定条件时进行上述反复。
根据权利要求1~6中的任一项所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,还具备高速缓冲存储器,该高速缓冲存储器配置在上述第一存储装置与上述第二存储装置之间,或者配置在上述中央处理装置与上述第二存储装置之间,在该第一存储装置中存储的信息被变更时,该高速缓冲存储器仅存储变更后的该信息,
根据上述高速缓冲存储器中存储的信息获取上述恢复信息。
根据权利要求1~7中的任一项所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,上述存储装置管理单元使用上述第二存储装置中存储的上述恢复信息内的上述存储装置信息来恢复上述第一存储装置的信息,并且使用该恢复信息内的上述寄存器信息来恢复对应的上述一个或两个以上的寄存器的信息。
根据权利要求8所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,在装置误动作时,上述存储装置管理单元恢复上述第一存储装置的信息和恢复上述一个或两个以上的寄存器的信息。
根据权利要求9所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,在装置误动作时重置中央处理装置。
根据权利要求7~10中的任一项所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,还具备存储装置控制器,
上述存储装置控制器将主存储装置从上述第一存储装置切换为上述第二存储装置,由此进行上述存储装置信息的恢复。
根据权利要求1~11中的任一项所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,上述存储装置管理单元在获取上述恢复信息时,将能否恢复信息设为有效并附加到该恢复信息,该能否恢复信息是在恢复时能够利用该恢复信息的情况下示出有效而在恢复时不能利用该恢复信息的情况下示出无效的信息,而且,在恢复上述第一存储装置的信息和恢复上述一个或两个以上的寄存器的信息时,上述存储装置管理单元仅在该能否恢复信息示出有效的情况下使用上述第二存储装置中存储的上述恢复信息内的上述存储装置信息来恢复上述第一存储装置的信息,并且使用该恢复信息内的上述寄存器信息来恢复对应的上述一个或两个以上的寄存器的信息,并且,上述存储装置管理单元将上述第二存储装置中存储的上述恢复信息内的上述能否恢复信息变更为示出无效,除非新获取恢复信息,否则不变更该能否恢复信息。
根据权利要求1~12中的任一项所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,还具备可改写的第三存储装置,
上述存储装置管理单元将上述第二存储装置中存储的上述恢复信息存储到上述第三存储装置,并且获取新的恢复信息,将该新的恢复信息存储到上述第二存储装置,
并且,上述存储装置管理单元根据上述恢复信息或者上述新的恢复信息来恢复上述第一存储装置的信息和恢复上述一个或两个以上的寄存器的信息。
根据权利要求13所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,上述恢复信息和上述新的恢复信息均包含上述能否恢复信息,上述存储装置管理单元根据上述能否恢复信息示出有效的上述恢复信息或者上述新的恢复信息来恢复上述第一存储装置的信息和恢复上述一个或两个以上的寄存器的信息,并且,上述存储装置管理单元将在该恢复中已使用的上述恢复信息或者上述新的恢复信息内的上述能否恢复信息变更为示出无效,除非新获取恢复信息,否则不变更该能否恢复信息。
一种能够恢复主存储装置中的信息的微计算机,该微计算机的特征在于,具备:
可改写的第一存储装置;
可改写的第二存储装置;以及
存储装置管理单元,其将作为上述第一存储装置中存储的信息的存储装置信息存储到上述第二存储装置。
根据权利要求15所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,反复进行上述存储装置信息向上述第二存储装置的存储。
根据权利要求16所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,周期性地进行上述反复。
根据权利要求16所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,以随机间隔进行上述反复。
根据权利要求16所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,在满足规定条件时进行上述反复。
根据权利要求15~19中的任一项所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,上述存储装置管理单元使用上述第二存储装置中存储的上述存储装置信息来恢复上述第一存储装置的信息。
根据权利要求20所述的微计算机,其特征在于,
在能够恢复主存储装置中的信息的微计算机中,还具备中央处理装置,该中央处理装置具备一个或两个以上的寄存器,
上述存储装置信息包含作为上述一个或两个以上的寄存器的信息的寄存器信息,上述存储装置管理单元在恢复上述第一存储装置的信息时,使用上述存储装置信息中包含的上述寄存器信息来恢复对应的上述一个或两个以上的寄存器的信息。

说明书

说明书用于恢复主存储装置中的信息的装置以及方法
技术领域
本发明涉及主存储装置中的信息的恢复。更详细地说,涉及一种根据除主存储装置以外的存储装置所存储的信息来恢复主存储装置的信息的技术。
背景技术
微计算机总是受到电外部噪声、静电、振动以及热等的影响。并且,由于该外部噪声等引起所谓的中央处理装置的失控等而产生微计算机的误动作。而且,在由于该微计算机的误动作而将有缺陷的信息存储到主存储装置的情况下或由于外部噪声使主存储装置的信息被变更而受到破坏的情况下,存储在主存储装置中的信息成为在之后的处理中不能正常使用的有缺陷的信息。
在现有技术中,能够通过使用检测是否使用了在微计算机上未定义的指令代码(instruction code)、检测是否访问了未定义的存储器地址空间、利用监视定时器(watchdog timer)来监视处理、周期性地重置中央处理装置等技术来检测微计算机的误动作或者避免微计算机的误动作。然而,不存在以下技术:在微计算机产生误动作之后,将主存储装置中存储的有缺陷的信息恢复为正常状态的信息。因而,在现有技术中,通过将中央处理装置、主存储装置、输入输出接口等微计算机的装置整体重置,将正在执行的程序等从开始起再次执行,由此实现用于将主存储装置中存储的有缺陷的信息变更为正常状态的信息的方法。因而,在使用了这种现有技术的情况下,在主存储装置等中存储的重要信息(例如,与生命、金钱等有关的信息)有可能丢失。并且,在使用该方法的情况下,由于重置装置整体,因此该方法的从开始到结束的时间与接通电源时的初始化的时间大致同等程度,因此需要相当长的时间。
另外,在现有技术中,存在一种具备多个中央处理装置的微计算机互相监视中央处理装置的误动作的系统。另外,存在一种各中央处理装置具备专用的主存储装置的系统。然而,这种系统必须准备多个相同的装置,因此相当耗费成本。并且,对该系统中的误动作的监视,通过将与各中央处理装置的寄存器有关的信息进行互相比较并且将各主存储装置中存储的信息进行互相比较来实现。因而,在该系统中,为了执行并非微计算机本来的处理的监视误动作的处理,需要相当长的处理时间。
专利文献1:日本特开2009‑238742号公报
专利文献1:日本特开平6‑71024号公报
专利文献1:日本特开平9‑319602号公报
发明内容
发明要解决的问题
本发明是在微计算机产生误动作之前预先将主存储装置中存储的信息进行保存,在微计算机产生误动作之后,根据所保存的该信息来进行恢复。使用可改写的存储装置来实现该保存和恢复,因此能够以非常短的时间执行这些处理。由此,在由于微计算机误动作而有可能发生事故或者产生损失的领域,即机械电子化、机器人、包括游戏机的游戏设备、发动机的控制、车辆制动的控制、电梯的控制等中,通过采用本发明能够大幅减少事故的发生或者损失的产生。特别是在工业用的焊接机器人等中使用大的焊接电流,另外在汽车的电动力部分使用大电流和高电压,并且在配置游戏机的环境中容易产生静电。而且,这些大电流、高电压以及静电等产生成为微计算机误动作的原因的电噪声。因而,在微计算机中,应对包括静电的电噪声的影响是重要的。
另外,在本发明中,在保存寄存器的信息的时刻正在执行某程序的处理的情况下,通过恢复寄存器的信息能够从保存该寄存器的信息的时刻起重新开始程序的处理。由此,不仅能够恢复主存储装置的信息,还能够追溯到保存信息的该时刻来恢复微计算机的动作本身。
用于解决问题的方案
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够具备:中央处理装置,其具备一个或两个以上的寄存器;可改写的第一存储装置;可改写的第二存储装置;以及存储装置管理单元,其获取恢复信息,将该恢复信息存储到上述第二存储装置,该恢复信息是包含第一存储装置中存储的存储装置信息和一个或两个以上的寄存器中存储的寄存器信息的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够反复进行恢复信息的获取以及恢复信息向第二存储装置的存储。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够周期性地进行反复。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够通过周期性地执行中断处理来进行反复,每次进行中断处理时,由存储装置管理单元获取恢复信息并将恢复信息存储到第二存储装置。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够以随机间隔进行反复。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够在满足规定条件时进行反复。
本发明所涉及的能够恢复主存储装置中的信息的微计算机还能够具备高速缓冲存储器,该高速缓冲存储器配置在第一存储装置与第二存储装置之间,在第一存储装置中存储的信息被变更时,由存储装置管理单元存储变更后的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理单元使用第二存储装置中存储的恢复信息内的存储装置信息来恢复第一存储装置的信息,并且使用恢复信息内的寄存器信息来恢复对应的一个或两个以上的寄存器的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够在装置误动作时,由存储装置管理单元恢复第一存储装置的信息以及恢复一个或两个以上的寄存器的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够还具备存储装置控制器,该存储装置控制器通过将主存储装置从第一存储装置切换为第二存储装置来恢复主存储装置的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理单元在获取恢复信息时,将能否恢复信息设为有效并附加到该恢复信息,该能否恢复信息是在恢复时能够利用该恢复信息的情况下示出有效而在恢复时不能利用该恢复信息的情况下示出无效的信息,而且,在恢复第一存储装置的信息和恢复一个或两个以上的寄存器的信息时,存储装置管理单元仅在该能否恢复信息示出有效的情况下使用第二存储装置中存储的恢复信息内的存储装置信息来恢复第一存储装置,并且使用该恢复信息内的寄存器信息来恢复对应的一个或两个以上的寄存器,并且,存储装置管理单元将第二存储装置中存储的恢复信息内的能否恢复信息变更为示出无效,除非新获取恢复信息,否则不变更该能否恢复信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够还具备可改写的第三存储装置,由存储装置管理单元获取新的恢复信息,将第二存储装置中存储的恢复信息存储到第三存储装置,然后,将新的恢复信息存储到第二存储装置,并且,由存储装置管理单元根据恢复信息或者新的恢复信息来恢复第一存储装置的信息和恢复一个或两个以上的寄存器的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理单元根据恢复信息和新的恢复信息中包含的能否恢复信息示出有效的恢复信息或者新的恢复信息来恢复第一存储装置的信息和恢复一个或两个以上的寄存器的信息,并且,存储装置管理单元将在恢复中已使用的恢复信息或者新的恢复信息内的能否恢复信息变更为示出无效,除非新获取恢复信息,否则不变更能否恢复信息。
本发明所涉及的用于恢复主存储装置中的信息的能够恢复主存储装置中的信息的微计算机能够具备:可改写的第一存储装置;可改写的第二存储装置;以及存储装置管理单元,其将第一存储装置中存储的存储装置信息存储到第二存储装置。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够反复进行存储装置信息向第二存储装置的存储。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够周期性地进行反复。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够以随机间隔进行反复。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够在满足规定条件时进行反复。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理单元使用第二存储装置中存储的存储装置信息来恢复第一存储装置的信息。
本发明所涉及的能够恢复主存储装置中的信息的微计算机能够还具备中央处理装置,该中央处理装置具备一个或两个以上的寄存器,由存储装置管理单元使用存储装置信息中包含的规定时刻的作为一个或两个以上的寄存器的信息的寄存器信息来恢复对应的一个或两个以上的寄存器的信息。
附图说明
图1是示出了本发明的实施例的装置100的概要的框图。
图2是示出了CPU 115与第一RAM 120、第二RAM 125以及第三RAM 130的关系的框图。
图3是示出了本发明的第一实施例的存储装置管理部的动作的流程图。
图4是示出了本发明的第二实施例的存储装置管理部的动作的流程图。
图5示出周期性地执行恢复信息的获取和存储的实施例的处理流程。
图6是示出了图5的处理流程所示的步骤505~540中的各处理与存储装置中存储的信息的关系的时序图。
图7是示出了图5的处理流程所示的步骤550~560中的各处理与存储装置中存储的信息的关系的时序图。
图8是示出了在具备三个RAM的装置100中周期性地执行恢复信息的获取和存储的实施例的动作的处理流程图。
图9是示出了图8的流程所示的步骤805~845中的各处理与存储装置中存储的信息的关系的时序图。
图10是示出了装置100的与图8的处理流程所示的实施例有关的使用例的时序图。
图11是示出了用于实现本实施例的CPU与RAM的关系的框图。
图12是示出了由图11的存储装置控制器1105控制的实施例的动作的处理流程图。
图13是表示在作为主存储器的第一RAM 120与除主存储器以外的第二RAM 125之间使用了高速缓冲存储器的实施例的框图。
具体实施方式
图1是表示本发明的实施例的装置100的概要的框图。装置100具备辅助电路105、ROM(只读存储器)110、CPU(中央处理装置)115、第一RAM(随机存取存储器)120、第二RAM 125、第三RAM 130、CPU总线135、输入输出接口140以及DMA控制器(直接存储器存取控制器)150。
CPU 115具有辅助电路105,并且内置有一个或两个以上的寄存器145。作为寄存器145,能够使用累加器、地址寄存器、索引寄存器、堆栈指示器(stack pointer)、页面寄存器、段寄存器、程序计数器、状态寄存器、控制寄存器以及其它专用寄存器、通用寄存器。辅助电路105包括用于产生CPU 115所使用的时钟脉冲的电路、通过控制对CPU 115的电源供给来重置CPU115的电路以及用于定期执行的中断处理等的计时器用电路等。
在ROM 110中存储有程序等。对于第一RAM 120、第二RAM 125以及第三RAM 130,也可以内置MMU(存储器管理单元)155。第一可改写的存储装置120作为主存储器(也称为主存储装置、主RAM)发挥功能,还能够存储CPU 115的寄存器145中存储的信息。输入输出接口140用于向其它外部装置进行输入输出。
图1以例示为目的进行示出,能够将装置100设为至少具备CPU 115、主存储器120以及用于连接它们的总线的计算机。在装置100中包括微计算机等。并且,在微计算机中包括单芯片式的微计算机。
多个RAM能够安装在一个存储装置内。另外,多个RAM还能够物理上作为多个存储装置进行安装。并且,电源与其它要素相比易于受到外部噪声的影响,因此各RAM也可以各自具有专用的电源。
恢复主存储器120的信息所需的信息是在执行某处理的期间内动态变化的信息。在装置100中,该动态变化的信息是在一个或两个以上的寄存器145中存储的寄存器信息和在主存储器120中存储的存储装置信息。特别是寄存器信息包含CPU 115接下来要执行的命令、表示接下来要执行的命令在何处的地址以及某信息在主存储器上的地址等,因此每当进行某种动作时寄存器信息发生变化。
在微计算机中,寄存器信息被发送至主存储器120并存储于主存储器120。通常,寄存器信息和存储装置信息不存储在外部的辅助存储装置等(例如,硬盘、硅磁盘、固态驱动器等)。因而,通过将主存储器120中存储的规定时刻的信息进行保存,在经过了该规定时刻后将所保存的该信息再次存储到主存储器120,来将主存储器120中存储的信息恢复为该规定时刻的内容。
并且,通过将所保存的信息中的寄存器信息存储到对应的寄存器145,还能够恢复执行中的处理。例如,即使在执行应用程序过程中由于外部噪声等的影响导致主存储器120中存储的信息被变更而不能恢复的情况下,也能够根据某时刻的主存储器120和寄存器145的信息恢复主存储器120和寄存器145的信息。由此,能够从中途重新开始应用程序。而且,这些处理的开销仅是为恢复第一RAM 120的信息而获取其它RAM 125或者130中存储的信息并将该信息存储到第一RAM 120的极短的时间。
图2通过框图示出CPU 115与第一RAM 120、第二RAM 125以及第三RAM 130的关系。
CPU 115经由CPU用总线135与作为主存储器的第一RAM120相连接,经由CPU用总线135、读取专用总线225以及读取用数据总线215与第二RAM 125相连接,并且经由CPU用总线135、读取专用总线225以及读取用数据总线220与第三RAM 130相连接。而且,CPU用总线135用于写入和读取。因而,CPU 115不能对第二RAM 125和第三RAM 130进行数据的写入,能够对第一RAM 120进行数据的写入。
第一RAM 120经由CPU用总线135与CPU 115相连接,经由写入用数据总线205以及读取用数据总线215与第二RAM 125相连接,并且经由CPU用总线135、读取专用总线225以及读取用数据总线215与第二RAM 125相连接,并且第一RAM 120经由读取用数据总线220与第三RAM 130相连接。因而,用于写入第一RAM 120中存储的数据的信息不被发送至第三RAM 130而被发送至第二RAM 125。
第二RAM 125经由写入用数据总线205以及读取用数据总线215与第一RAM 120相连接,经由写入用数据总线210与第三RAM 130相连接,并且经由读取用数据总线215、读取专用总线225以及CPU用总线135与CPU 115相连接。因而,用于写入第二RAM 125中存储的数据的信息不被发送至第一RAM 120而被发送至第三RAM 130。而且,用于读取第二RAM 125中存储的数据的信息不被发送至第三RAM 130而被发送至第一RAM 120和CPU 115。
第三RAM 130经由写入用数据总线210与第二RAM 125相连接,经由读取用数据总线220与第一RAM 120相连接,并且经由读取用数据总线220、读取专用总线225以及CPU用总线135与CPU 115相连接。因而,用于写入第三RAM 130中存储的数据的信息不被发送至任何装置。而且,用于读取第三RAM 130中存储的数据的信息不被发送至第二RAM 125而被发送至第一RAM 120和CPU 115。
通过存储装置管理部来实现这些存储装置之间的管理。存储装置管理部由CPU 115、各种数据总线、直接存储器存取(DMA)控制器、存储器管理单元(MMU)等、或者它们中的一个以上的组合来构成。在本发明中,通过使用DMA控制器、存储器管理单元等,不使用CPU 115就能够实现对各RAM中存储的信息的管理。另外,CPU 115经由读取专用的总线与第二RAM125和第三RAM 130相连接。由此,CPU 115不能将信息直接写入这些RAM。由此,在CPU 115等进行误动作的情况下(例如,CPU 115失控等),CPU 115也不会改写第二RAM 125和第三RAM 130中存储的信息。
图3是示出了本发明的第一实施例的存储装置管理部的动作的流程图。在本发明的第一实施例中,存储装置管理部获取在规定时刻存储到作为主存储器的第一RAM 120的信息(恢复信息)(步骤301)。存储装置管理部将恢复信息存储到第二RAM125(步骤305)。在经过该规定时刻后,存储装置管理部能够根据第二RAM 125中存储的规定时刻的恢复信息来恢复第一RAM 120的信息(步骤310)。
并且,在恢复第一RAM 120的信息时,存储装置管理部能够根据第二RAM 125中存储的规定时刻的恢复信息来恢复寄存器145的信息。通常,在主存储器120中包含寄存器145的信息,因此在第二RAM 125中存储的恢复信息中包含寄存器信息。此外,根据CPU 115和主存储器120的实现方法,也存在寄存器信息没有被存储到主存储器120中的情况。在这种情况下,存储装置管理部在从作为主存储器的第一RAM 120获取恢复信息时,还获取寄存器145中存储的寄存器信息,对恢复信息附加寄存器信息。由此,使恢复信息中包含寄存器信息。以下,设为在每次变更寄存器信息时将该寄存器信息存储到主存储器120中。此外,能够将恢复信息设为在规定时刻存储到第一RAM 120中的所有信息。另外,恢复信息也可以是在规定时刻存储到第一RAM 120中的一部分信息。
寄存器信息的恢复也可以是由存储装置管理部根据第二RAM 125中存储的恢复信息将信息直接存储到寄存器145中来执行。另外,还能够通过在恢复了第一RAM 120之后,CPU 115从该第一RAM 120获取寄存器信息并将获取到的该信息存储到寄存器145来恢复寄存器信息。
在此,在RAM 120、RAM 125以及RAM 130中存储有用于恢复的存储装置信息和寄存器信息、用于进行当前处理的存储装置信息和寄存器信息等多种信息。因而,通过在各RAM中预先决定存储各信息的规定区域,存储装置管理部能够判断规定区域的信息为何种信息。并且,能够在所有RAM中将该区域设为相同的区域。
图4是示出了本发明的第二实施例的存储装置管理部的动作的流程图。在本实施例中,装置100具备第三RAM 130。在此,设为第二RAM 125已经存储了规定时刻的第一恢复信息。
首先,在经过规定时刻后,存储装置管理部能够获取第二RAM 125中存储的第一恢复信息(步骤401),并将获取到的信息存储到第三RAM 130(步骤405)。并且,存储装置管理部获取在该时刻存储到第一RAM 120中的信息(第二恢复信息)(步骤410),并将获取到的信息覆盖存储于第二RAM 125(步骤415)。
因而,在步骤420和425中,存储装置管理部能够根据第二RAM 125中存储的一代前的信息即第二恢复信息来恢复第一RAM 120和/或寄存器145的信息。并且,存储装置管理部还能够根据第三RAM 130中存储的两代前的信息即第一恢复信息来恢复第一RAM 120和/或寄存器145的信息。
能够由存储装置管理部随着时间推移反复执行获取恢复信息并将该恢复信息存储到除主存储器以外的RAM中的处理。对于该反复,可以每隔固定周期、每隔随机间隔、满足规定条件时、或者组合它们中的一个或两个以上来进行。作为固定周期的例子,还能够以2m秒等极短的周期来执行。另外,也可以根据使用装置100执行的应用程序来改变该固定周期。作为随机间隔的例子,能够获取随机数并将该数用作时间间隔。并且,作为满足规定条件时例子,是执行了规定程序时(例如,执行了管理程序调用(super visor call)等处理时(由此,被控制的程序从应用程序变为O S程序))、装置100进行了规定的错误处理时、产生了中断处理时以及将规定信息存储到主存储器120中时等。
参照图5、图6以及图7说明本发明的第三实施例。图5示出周期性地执行恢复信息的获取和存储的实施例的处理流程。在本实施例中,通过执行明确示出的处理将寄存器145的信息存储到RAM。图6是示出了图5的处理流程所示的步骤505~540中的各处理与存储装置中存储的信息的关系的时序图,图7是示出了图5的处理流程所示的步骤550~560中的各处理与存储装置中存储的信息的关系的时序图。
在图6和图7中,横轴的箭头表示时间的经过,应用程序的执行状态650和750以及中断处理的执行状态655和755的行中的阴影部分表示各自的处理处于执行中的状态。而且,在寄存器中存储的信息660和760、第一RAM中存储的信息670和770以及第二RAM中存储的信息675和775的行中,R0、R1…,M0、M1…,以及MM0、MM1…等表示所存储的信息。另外,在R0、R1…,M0、M1…,以及MM0、MM1…等中,在标记相同时表示所存储的信息相同。此外,在图6和图7中,寄存器信息和存储装置信息同时变化,但如果是本领域技术人员则可知还能够以它们不同时变化的方式实现。图6和图7以例示为目的进行示出,时间的比例尺不一定正确。因而,还能够使中断处理的执行时间相对于应用程序的执行时间为非常小的比例。
首先,接通装置100本身的电源,对装置100整体进行初始化(步骤501)。如图6的t1所示那样,R0、M0以及MM0分别表示将寄存器145、主存储器120以及第二RAM 125的信息初始化而得到的信息。此外,也可以通过初始化使第二RAM 125中存储的信息与主存储器120中存储的信息同步(在这种情况下,第二RAM 125的信息不是MM0而是M0,信息M0被用作恢复信息)。之后,在完成初始化后,如图6的t3时的状态601所示那样,开始执行应用程序(步骤502)。随着应用程序的执行,寄存器信息从R0变化为R1,然后从R1变化为R2。并且,存储装置信息也从M0变化为M1,然后从M1变化为M2。
在图6的t5~t10期间,执行中断处理的步骤505~540的一系列步骤。在图6的t5时,辅助电路105向CPU 115发送中断信号(步骤505)。由辅助电路105内的计时器每隔固定周期(例如,图6中的690和695)生成中断信号并将该中断信号发送至CPU 115。在此,能够将中断信号设成作为不能由软件控制的信号的NMI信号(Non‑Maskable Interrupt信号:非屏蔽中断请求信号)。然后,CPU 115当接收到中断信号时开始中断处理(步骤510)。如图6的t5时的状态601和605所示那样,中断应用程序并开始中断处理。
当开始中断处理时,首先,确认在装置100中是否产生了误动作(步骤520)。在没有产生误动作的情况下,处理流程进入步骤525。在产生了误动作的情况下,处理流程进入步骤550。关于决定是否产生了误动作的条件,在后文叙述。
在判断为在装置100中没有产生误动作的情况下(步骤520),CPU 115将执行应用程序所需的寄存器145中存储的信息即寄存器信息保存到主存储器120(步骤525)。在中断处理结束后重新开始应用程序,因此如图6的t5的时刻所示那样,在主存储器120中存储有包含所保存的寄存器信息R2的存储装置信息M3。该动作是普通的中断处理的动作。在此,中断处理不对应用程序中使用的主存储器120的信息进行变更。因而,存储装置信息M3能够包含即将开始中断处理时的存储装置信息M2和寄存器信息R2。
之后,在图6的t10时,存储装置管理部获取在作为主存储器的第一RAM 120中存储的信息(恢复信息)(步骤530),将该恢复信息存储到第二RAM 125(步骤535)。在图6的t10时,存储装置管理部从第一RAM 120中存储的信息M4获取恢复信息。在此,恢复信息是即将执行中断处理时的存储装置信息M2和寄存器信息R2。因而,在图6的t10前后,第二RAM 125中存储的信息从MM0变更为MM1(由R2和M2构成的信息)。并且,在其它实施例中,还能够通过将恢复信息MM 1的复本存储到第二RAM125的其它区域来提高装置100的冗余化性能。
接着,CPU 115结束中断处理(步骤540)。具体地说,从第一RAM 120取出在步骤525中保存的寄存器信息(在图6的t 10时存储装置信息M4所包含的寄存器信息R2),使用该寄存器信息来恢复对应的寄存器的信息。该动作是用于从中断处理返回的通常的动作。在结束中断处理后,能够使寄存器145恢复为中断处理前的寄存器信息,如图6的t10~t15时的状态601和610所示那样,重新开始应用程序。此外,在图6的即将到达时间t 10时,在第一RAM 120中包含即将开始中断处理时的存储装置信息M2,因此不变更主存储器中存储的信息而仅恢复寄存器145中的寄存器信息就重新开始应用程序。但是,还能够在结束中断处理时,根据CPU 115的命令将除存储装置信息M2以外的不需要的信息从第一RAM 120中删除。
之后,处理流程返回至步骤502。之后,同样地反复进行步骤502~540的一系列步骤。因而,在每次执行该一系列步骤时,都使用主存储器120中存储的信息和寄存器145中存储的信息来覆盖第二RAM 125中存储的信息。由此,在作为执行中断处理的间隔的规定周期为2m秒的情况下,装置100能够总是具有最多约2m秒前的主存储器120中存储的信息。
另一方面,设为在图7的t10时产生了误动作。之后,在图7的t15时判断为在装置100中产生了误动作(步骤520),有可能没有正确地执行图7的t10时的状态720的应用程序的处理。因而,寄存器信息R10和R11以及主存储器的信息M10和M11有可能包含有缺陷的信息(也就是说,这些信息可能不正确)。
之后,为了使微计算机恢复动作,在图7的t20时,辅助电路105仅重置CPU 115(步骤550)。作为重置的例子,通过由辅助电路105向CPU 115发送重置信号来进行。由此,寄存器信息被初始化。图7示出紧接在t20之后将寄存器信息R0初始化。
另外,与应用程序的执行过程和中断处理无关地,CPU 115等的误动作检测部检测装置100中的误动作的产生(步骤503)。在误动作检测部检测到装置100产生误动作的情况下,处理流程进入步骤550。由此,在装置100中,执行没有定义的命令、对不存在的存储器空间进行存取等的误动作被消除。
在图7的t20时,存储装置管理部获取第二RAM 125中存储的恢复信息(步骤555),根据所获得的恢复信息恢复第一RAM120及对应的寄存器145的信息(步骤560)。由此,使用第二RAM125中存储的恢复信息MM2中的寄存器信息R6和存储装置信息M6来恢复寄存器145和主存储器120的信息。因而,在图7的t25时,寄存器145从R0变更为R6,主存储器120的存储装置信息从M12变更为M6。然后,如图7的t25~t30时的状态710和720所示那样重新开始应用程序。
作为其它实施例,本发明能够不在处理流程中增加CPU115的重置(步骤550)。另外,用于使步骤510、525以及540所示的中断处理开始和结束的处理是一例,还能够通过其它方法来实现。并且,也可以通过由监视定时器进行的处理、在产生规定错误后执行的任意的错误恢复处理等来执行CPU 115的重置。
如图6的690和695所示那样,按规定周期反复进行步骤505的辅助电路105的中断信号的发送。由此,必须在规定周期内完成在接收到中断信号后执行的步骤510~540的一系列步骤。这是由于,在规定周期内没有完成一系列步骤的执行的情况下,要同时执行要在该规定周期内(例如,第一个周期690)执行的一系列步骤和要在下一个规定周期内(例如,第二个周期695)执行的一系列步骤,因此有可能不能保持处理顺序的协调性。也就是说,在规定周期为2m秒的情况下,需要以比2m秒少的时间来完成一系列步骤。
另外,在规定周期的时间内没有完成一系列步骤的情况下,装置100没有正常地动作,因此能够判断为装置100进行了误动作。因而,在处理流程中,能够在中断处理结束之前追加该判断步骤。并且,能够在判断为装置100进行了误动作后的处理流程中追加重置CPU 115、恢复主存储器120和寄存器的信息的步骤。
此外,在本实施例中,将反复执行中断处理的间隔设为规定周期,但只要在步骤510~540的一系列步骤完成的时间内,则还能够设为随机的时间间隔。
作为其它实施例,能够在步骤510~540中追加周期性地仅重置CPU 115的步骤。另外,还能够根据需要追加随机地仅重置CPU 115的步骤。由此,在接通装置100的电源后重置CPU115,因此能够减少由CPU 115引起的误动作。
另外,还能够将仅重置CPU 115的步骤追加到处理流程中的任何部分。其中,通过在重置前保存寄存器信息,在重置后将所保存的寄存器信息恢复至对应的寄存器145来实现仅重置CPU 115的步骤。该步骤是仅重置CPU 115并且仅恢复寄存器信息的处理,因此能够在非常短的时间内将CPU 115初始化。作为优选的实施例,能够在结束中断处理的步骤(540)或者获取恢复信息的步骤(步骤530)之前或之后追加该步骤。
并且,在其它实施例中,在恢复了第一RAM 120的信息之后(在步骤560之后)装置100没有从误动作中恢复的情况下,能够将装置100整体重置。由此,即使在装置100的误动作原因不是CPU 115的误动作,也不是由主存储器120和寄存器145的信息引起的情况下,也能够使装置100从误动作中恢复。
作为例子,能够如下那样判断是否产生了误动作。
·预先决定规定堆栈指示器的范围,在进行判断时检测堆栈指示器是否在该范围内。
·检测被进行存取的存储器空间是否存在。
·检测没有定义的命令。
·通过安装于CPU 115的异常检测功能来检测异常(例如,在进行除法运算的计算时分母为零的情况等)。
其它,能够使用以往公知的各种技术。
参照图8和图9说明本发明的第四实施例。在本实施例中,装置100具备三个RAM。图8示出在具备三个RAM的装置100中周期性地执行恢复信息的获取和存储的实施例的动作的处理流程。在本实施例中,通过执行明确示出的处理来将寄存器145的信息存储到RAM。图9是示出了图8的流程所示的步骤805~845中的各处理与存储装置中存储的信息的关系的时序图。
在图9中,横轴的箭头表示时间的经过,应用程序的执行状态950和中断处理的执行状态955的行中的阴影部分表示正在执行各自的处理的状态。而且,在寄存器中存储的信息960、第一RAM中存储的信息965、第二RAM中存储的信息970以及第三RAM中存储的信息975中,R0、R1…,M0、M1…,MM0、MM1…,以及MMM0、MMM1…等表示所存储的信息。另外,在R0、R1…,M0、M1…,MM0、MM1…,以及MMM0、MMM1…等中,在标记相同的情况下表示所存储的信息相同。此外,在图9中,寄存器信息和存储装置信息同时变化,但如果是本领域技术人员则明确可知还能够以不同时变化的方式实现。图9以例示为目的进行示出,时间的比例尺不一定正确。因而,还能够使中断处理的执行时间相对于应用程序的执行时间为非常小的比例。
首先,接通装置100本身的电源并对装置100整体进行初始化(步骤801)。如图9的t 1所示那样执行初始化。R0、M0、MM0、以及MMM0分别表示将寄存器145、主存储器120、第二RAM 125以及第三RAM 130的信息初始化而得到的信息。然后,在完成初始化之后,如图9的t3的状态901所示那样,开始执行应用程序(步骤802)。伴随应用程序的推进,寄存器信息从R0变化为R1,然后从R1变化为R2。并且,存储装置信息也从M0变化为M1,然后从M1变化为M2。
在图9的t5~t10期间,执行中断处理的步骤805~845的一系列步骤。在图9的t5时,辅助电路105向CPU 115发送中断信号(步骤805)。由辅助电路105内的计时器每隔固定周期(例如,图9中的980、985以及995)生成中断信号并将该中断信号发送至CPU115。CPU 115当接收到中断信号时开始中断处理(步骤810)。如图9的t5时的状态901和905所示那样,中断应用程序并开始中断处理。
在开始中断处理后,首先,确认在装置100中是否产生了误动作(步骤815)。在没有产生误动作的情况下,处理流程进入步骤820。在产生了误动作的情况下,处理流程进入步骤850。
在判断为在装置100中没有产生误动作的情况下(步骤815),CPU 115将执行应用程序所需的寄存器145中存储的信息即寄存器信息保存到主存储器120(步骤820)。在中断处理结束后要重新开始应用程序,因此如图9的t5所示那样,在主存储器120中存储有包含已保存的寄存器信息R2的存储装置信息M3。该动作是通常的中断处理的动作。在此,中断处理不对应用程序中使用的主存储器120的信息进行变更。因而,存储装置信息M3包含即将开始中断处理时的存储装置信息M2和寄存器信息R2。
然后,存储装置管理部将第二RAM 125中存储的信息存储到第三RAM 130(步骤825)。由此,在图9的t7时,第三RAM 130中存储的信息从MMM0变更为MM0。
之后,存储装置管理部获取作为主存储器的第一RAM 120中存储的信息(恢复信息)(步骤830),为了表示所获取的恢复信息能够使用于恢复主存储器120的信息,存储装置管理部对恢复信息附加表示该恢复信息有效的信息(步骤835)。具体地说,能够对恢复信息附加1位以上的信息,使用该信息作为表示是否能够使用于恢复主存储器120的信息的有效标志。设定恢复信息为有效的步骤仅在本步骤中执行。因而,表示第二RAM 125中的初始化得到的信息的MM0和表示第三RAM 130中的初始化得到的信息的MMM0不是通过本步骤被存储的信息,因此MM0和MMM0的有效标志为“关”。因而,信息MM0和MMM0是无效的恢复信息。
并且,存储装置管理部将获得的恢复信息存储到第二RAM125中(步骤840)。因而,在图9的t10时,第二RAM 125中存储的恢复信息从MM0变更为MM1。在此,恢复信息是图9的紧接在t10之后的第二RAM 125中存储的信息MM1,恢复信息MM1是即将执行中断处理时的图9的t5时的寄存器信息R2和存储装置信息M2。
接着,CPU 115结束中断处理(步骤840)。之后,处理流程返回至步骤805。
对返回至步骤805后再次执行的步骤825~840进行说明。在判断为在装置100中没有产生误动作之后(步骤815),存储装置管理部将第二RAM 125中存储的信息存储到第三RAM 130(步骤825)。在图9的t20时,第三RAM 130中存储的信息从MM0变更为MM1。
之后,存储装置管理部获取作为主存储器的第一RAM 120中存储的信息(恢复信息)(步骤830),对该恢复信息附加表示有效的信息(步骤835)并存储到第二RAM 125(步骤840)。因而,在图9的t25时,第二RAM 125中存储的信息从MM1变更为MM2。
之后,中断处理结束(步骤845),处理流程返回至步骤805。之后,同样地,反复进行步骤805~840的一系列步骤。
另一方面,在判断为在装置100中产生了误动作的情况下(步骤815),辅助电路105仅重置CPU 115(步骤850)。之后,存储装置管理部获取第二RAM 125中存储的恢复信息(步骤855)。并且,存储装置管理部判断从第二RAM 125获取到的恢复信息是否能够使用于恢复主存储器120的信息(步骤860)。
在步骤860中判断为从第二RAM 125获取到的恢复信息的有效标志为“开”的情况下,存储装置管理部根据所获取到的该恢复信息恢复第一RAM 120及对应的寄存器145的信息,将第二RAM 125中存储的恢复信息的有效标志设为“关”(步骤865)。然后,处理流程进入步骤805。
在步骤860中判断为从第二RAM 125获取到的恢复信息的有效标志为“关”的情况下,存储装置管理部获取第三RAM 130中存储的恢复信息(步骤875)。然后,存储装置管理部判断从第三RAM 130获取到的恢复信息是否能够使用于恢复主存储器120的信息(步骤880)。
在步骤880中判断为从第三RAM 130获取到的恢复信息的有效标志为“开”的情况下,根据所获取到的该恢复信息恢复第一RAM 120及对应的寄存器145的信息,将第三RAM 130中存储的恢复信息的有效标志设为“关”(步骤885)。
在步骤880中,在从第三RAM 130获取到的有效标志为“关”的情况下,处理流程进入步骤801,对装置100整体进行初始化(步骤801)。
图10是表示装置100的第四实施例的使用例的时序图。首先,在t1时,第二RAM 125中存储的信息是能够使用于恢复主存储器(有效标志为“开”)的信息MM2,第三RAM 130中存储的信息是有效标志为“开”的MM1。
在t5~t10期间,执行图8的步骤805~845。由此,第二RAM125中存储的信息从信息MM2变更为有效标志为“开”的MM3,第三RAM 130中存储的信息从信息MM1变更为有效标志为“开”的MM2。并且,在t15~t20期间,再次执行图8的步骤805~845。由此,第二RAM 125中存储的信息成为有效标志为“开”的MM4,第三RAM 130中存储的信息成为有效标志为“开”的MM3。
在此,设为在t25时装置100产生了误动作。之后,在t30时开始中断处理(图8的步骤810),检测误动作(图8的步骤815)。于是,在t35时仅重置CPU 115(步骤850),寄存器信息被初始化(寄存器信息为R0)。
在t40时,第二RAM 125中存储的信息MM4的有效标志为“开”,因此使用信息MM4恢复主存储器120的信息,第二RAM125中存储的信息MM4的有效标志成为“关”(图8的步骤855~865)。因而,寄存器信息从R0变更为R6,存储装置信息从M12变更为M6。由此,在t40时应用程序的动作恢复为即将到达t15时的状态1050。
在此,设为在t45时装置100再次产生了误动作。该情况下的误动作不是由CPU 115引起的,是由主存储器120中存储的信息(例如,寄存器信息R6和主存储信息M6,或者寄存器信息R9和主存储信息M9)引起的可能性高。
之后,在t50时开始中断处理(图8的步骤810),检测误动作(图8的步骤815)。于是,在t55时仅重置CPU 115(步骤850),寄存器信息被初始化(寄存器信息成为R0)。
在t60时第二RAM 125中存储的信息MM4的有效标志为“关”,因此不执行使用信息MM4的主存储器120的信息的恢复(图8的步骤855和860)。在此,第三RAM 130中存储的信息MM3的有效标志为“开”,因此使用信息MM3恢复主存储器120的信息,第三RAM 130中存储的信息MM3的有效标志成为“关”(图8的步骤875~885)。因而,寄存器信息从R0变更为R2,存储装置信息从M12变更为M2。由此,在t60时应用程序的动作恢复为即将到达t5时的状态1040。
如根据该例可知那样,装置100除了具备主存储器120以外还具备两个RAM,由此在装置100中产生了误动作的情况下,能够使用两代前的恢复信息恢复主存储器120的信息。由此,装置100的可靠性进一步提高。
并且,在t65时装置100又产生了误动作的情况下,处理流程从图8的步骤815进入850。在此,第二RAM 125中存储的信息MM4和第三RAM 130中存储的信息MM3的有效标志均为“关”,因此不使用第二RAM 125或者第三RAM 130中存储的恢复信息恢复主存储器120(在图8的处理流程的步骤860和步骤880中均朝向“否”的箭头方向推进)。因而,对装置100整体进行初始化(图8的步骤801)。在对装置100整体进行了初始化的情况下,从开始起再次执行应用程序。
另外,与应用程序的执行过程和中断处理无关地,CPU 115等的误动作检测部检测装置100中误动作的产生(步骤803)。在误动作检测部检测到装置100产生误动作的情况下,处理流程进入步骤850。由此,在装置100中,执行没有定义的命令、对不存在的存储器空间进行存取等误动作被消除。
图11通过框图示出用于实现本实施例的CPU与RAM的关系。存储装置控制器1105经由CPU用数据总线135与中央处理装置115相连接,并且经由存储装置用总线1110与第一RAM 120和第二可改写存储装置125相连接。
图12是示出了使用图11的存储装置控制器1105的实施例的动作的处理流程。并且,图12是对图5所示的实施例进行局部变更的实施例。在图5的步骤550~560中,通过将第二RAM 125中存储的恢复信息存储到第一RAM 120中来恢复主存储器120。通过对作为恢复步骤的这些步骤555和560进行变更来实现本实施例。
在图12中,步骤1201~1230、1240以及1250与图5的步骤501~530、540以及550分别相同。因而,仅说明作为本实施例特有的处理的步骤1235、1255以及与这些步骤有关的步骤。
存储装置管理部获取主存储器中存储的信息(恢复信息)(步骤1230)。存储装置管理部将该恢复信息存储到除主存储器以外的RAM(步骤1235)。
之后,由于在微计算机中产生误动作而使处理流程进入步骤1250。CPU 115被重置(步骤1250)。然后,存储装置控制器1105将除主存储器以外的存储装置切换为主存储器(步骤1255)。在本流程中,若将主存储器设为第一RAM 120,则在本步骤中将主存储器从第一RAM 120切换为第二RAM 125。并且,存储装置管理部根据主存储器中存储的即第二RAM 125中存储的恢复信息来恢复对应的寄存器145的信息(步骤1260)。
另外,与应用程序的执行过程和中断处理无关地,CPU 115等的误动作检测部检测装置100中误动作的产生(步骤1203)。在误动作检测部检测到装置100产生误动作的情况下,处理流程进入步骤1250。由此,在装置100中,执行没有定义的命令、对不存在的存储器空间进行存取等误动作被消除。
在本实施例中也能够追加周期性地仅重置CPU 115的步骤。另外,装置100能够具备三个以上的RAM,在这种情况下,能够使用上述有效标志。
本实施例不是通过数据的移动,而是通过由存储装置控制器1105切换主存储器来实现主存储器的恢复。因而,在恢复信息量非常大的情况下,通过利用本实施例能够削减数据传输所花费的处理时间。即,本实施例的用于恢复的处理时间比执行数据移动的其它实施例的处理时间短。
图13是表示在作为主存储器的第一RAM 120与除主存储器以外的第二RAM 125之间使用了高速缓冲存储器的实施例的框图。在图13中,高速缓冲存储器1305经由写入用数据总线1350与CPU用数据总线135相连接,并且经由写入用数据总线1355与第二RAM 125相连接。
在CPU 115对作为主存储器的第一RAM 120中存储的信息进行变更的情况下,存储装置管理部采用回写(write‑back)方式、直写(write through)方式等技术,同样地对高速缓冲存储器1305中存储的信息进行变更。之后,当将恢复信息存储到第二RAM 125时,不使用主存储器120中存储的信息,而仅将高速缓冲存储器1305中的变更后的信息存储到第二RAM 125中。
高速缓冲存储器1305由地址部1315、数据部1310以及标签部1320构成。高速缓冲存储器1301能够对主存储器120中存储的所有信息进行存储。另外,高速缓冲存储器1305还能够仅存储在主存储器120中发生了变更的信息。
当对主存储器120进行写入时,存储装置管理部将进行了该写入的地址存储到地址部1315,然后将作为该写入的内容的数据存储到数据部1310。并且,存储装置管理部变更用于对主存储器120中存储的信息的地址进行管理的信息即标签,对标签附加表示对应地址被变更的信息。
在相同地址的信息发生了变更的情况下,数据部以变更后的信息进行覆盖。因而,数据部不具有被变更的信息的变更历史记录,而仅具有最新的信息。
在高速缓冲存储器1305存储有主存储器120的所有信息的情况下,标签具有表示对应地址的信息发生了变更的信息。另外,在高速缓冲存储器1305仅存储有在主存储器120中发生了变更的信息的情况下,在存在某地址的标签时,表示该地址存在变更。
被用作恢复信息的高速缓冲存储器1305中存储的信息包含在主存储器120中发生了变更的信息或者表示发生了变更的信息,因此通过使用高速缓冲存储器1305,能够将应该存储到第二RAM 125的存储装置信息仅限定为在主存储器120中发生了变更的信息。因而,削减从主存储器120向第二RAM 125传输的数据容量,大幅削减数据的传输时间。
高速缓冲存储器1305中存储的信息包含表示规定期间内存储到主存储器120中的信息与存储到第二RAM 125中的信息之差的信息,因此在规定期间的开始时刻,需要使第一RAM 120和第二RAM 125以及高速缓冲存储器1305中存储的信息同步。也就是说,在对装置100进行初始化之后或在主存储器120被恢复之后等,存储装置管理部需要使用主存储器120中存储的信息来更新第二RAM 125中存储的信息,并且,需要清空标签部1320的信息或者清空高速缓冲存储器1305的所有信息。
在上述实施例中,说明了具有两个或者三个RAM的装置100。然而,装置100还能够具备很多RAM(相反地,还能够将三个RAM置换为两个)。由此,能够管理更多代。另外,还能够使RAM冗余化来提高装置100的可靠性。
上述实施例中示出的RAM是权利要求书中记载的“可改写的存储装置”的一例。可改写的存储装置是非易失性存储器等存储装置,包括能够进行改写的所有存储装置。特别是可改写的存储装置是能够作为主存储装置来使用的存储装置。
上述实施例中示出的CPU是权利要求书中记载的“中央处理装置”的一例。中央处理装置包括作为用于控制规定装置的功能的电路或者装置的CPU、MPU、处理器、微处理器等。

用于恢复主存储装置中的信息的装置以及方法.pdf_第1页
第1页 / 共29页
用于恢复主存储装置中的信息的装置以及方法.pdf_第2页
第2页 / 共29页
用于恢复主存储装置中的信息的装置以及方法.pdf_第3页
第3页 / 共29页
点击查看更多>>
资源描述

《用于恢复主存储装置中的信息的装置以及方法.pdf》由会员分享,可在线阅读,更多相关《用于恢复主存储装置中的信息的装置以及方法.pdf(29页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102934090 A (43)申请公布日 2013.02.13 CN 102934090 A *CN102934090A* (21)申请号 201180027221.2 (22)申请日 2011.03.30 2010-078112 2010.03.30 JP G06F 11/14(2006.01) (71)申请人 株式会社雷捷电子科技 地址 日本东京都 (72)发明人 辰野功 (74)专利代理机构 北京林达刘知识产权代理事 务所 ( 普通合伙 ) 11277 代理人 刘新宇 (54) 发明名称 用于恢复主存储装置中的信息的装置以及方 法 (57) 摘要 在微计算机产。

2、生了误动作的情况下, 使微计 算机从误动作中恢复。装置具备 : 中央处理装置, 其具备一个或两个以上的寄存器 ; 可改写的第一 存储装置 ; 可改写的第二存储装置 ; 以及存储装 置管理单元。存储装置管理单元将第一存储装置 中存储的包含存储装置信息和寄存器信息的恢复 信息存储到第二存储装置, 之后, 存储装置管理单 元根据第二存储装置中存储的恢复信息来恢复第 一存储装置的信息及对应的一个或两个以上的寄 存器的信息。 (30)优先权数据 (85)PCT申请进入国家阶段日 2012.11.30 (86)PCT申请的申请数据 PCT/JP2011/058121 2011.03.30 (87)PCT申。

3、请的公布数据 WO2011/122677 JA 2011.10.06 (51)Int.Cl. 权利要求书 3 页 说明书 14 页 附图 11 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 14 页 附图 11 页 1/3 页 2 1. 一种能够恢复主存储装置中的信息的微计算机, 其特征在于, 具备 : 中央处理装置, 其具备一个或两个以上的寄存器 ; 可改写的第一存储装置 ; 可改写的第二存储装置 ; 以及 存储装置管理单元, 其获取恢复信息, 将该恢复信息存储到上述第二存储装置, 该恢复 信息是包含作为上述第一存储装置中存储的信息的存储装置信息。

4、和作为上述一个或两个 以上的寄存器中存储的信息的寄存器信息的信息。 2. 根据权利要求 1 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 反复进行上述恢复信息的获取以及该 恢复信息向上述第二存储装置的存储。 3. 根据权利要求 2 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 周期性地进行上述反复。 4. 根据权利要求 3 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 通过周期性地执行中断处理来进行上 述反复, 每次进行中断处理时, 上述存储装置管理单元获取上述恢复信息并将该恢复信息 存储到上述第二存储装。

5、置。 5. 根据权利要求 2 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 以随机间隔进行上述反复。 6. 根据权利要求 2 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 在满足规定条件时进行上述反复。 7. 根据权利要求 16 中的任一项所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 还具备高速缓冲存储器, 该高速缓冲 存储器配置在上述第一存储装置与上述第二存储装置之间, 或者配置在上述中央处理装置 与上述第二存储装置之间, 在该第一存储装置中存储的信息被变更时, 该高速缓冲存储器 仅存储变更后的该信息,。

6、 根据上述高速缓冲存储器中存储的信息获取上述恢复信息。 8. 根据权利要求 17 中的任一项所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 上述存储装置管理单元使用上述第二 存储装置中存储的上述恢复信息内的上述存储装置信息来恢复上述第一存储装置的信息, 并且使用该恢复信息内的上述寄存器信息来恢复对应的上述一个或两个以上的寄存器的 信息。 9. 根据权利要求 8 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 在装置误动作时, 上述存储装置管理 单元恢复上述第一存储装置的信息和恢复上述一个或两个以上的寄存器的信息。 10. 根据权利要求 9。

7、 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 在装置误动作时重置中央处理装置。 11. 根据权利要求 710 中的任一项所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 还具备存储装置控制器, 上述存储装置控制器将主存储装置从上述第一存储装置切换为上述第二存储装置, 由 权 利 要 求 书 CN 102934090 A 2 2/3 页 3 此进行上述存储装置信息的恢复。 12. 根据权利要求 111 中的任一项所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 上述存储装置管理单元在获取上述恢 复信息时, 将能否。

8、恢复信息设为有效并附加到该恢复信息, 该能否恢复信息是在恢复时能 够利用该恢复信息的情况下示出有效而在恢复时不能利用该恢复信息的情况下示出无效 的信息, 而且, 在恢复上述第一存储装置的信息和恢复上述一个或两个以上的寄存器的信 息时, 上述存储装置管理单元仅在该能否恢复信息示出有效的情况下使用上述第二存储装 置中存储的上述恢复信息内的上述存储装置信息来恢复上述第一存储装置的信息, 并且使 用该恢复信息内的上述寄存器信息来恢复对应的上述一个或两个以上的寄存器的信息, 并 且, 上述存储装置管理单元将上述第二存储装置中存储的上述恢复信息内的上述能否恢复 信息变更为示出无效, 除非新获取恢复信息, 。

9、否则不变更该能否恢复信息。 13. 根据权利要求 112 中的任一项所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 还具备可改写的第三存储装置, 上述存储装置管理单元将上述第二存储装置中存储的上述恢复信息存储到上述第三 存储装置, 并且获取新的恢复信息, 将该新的恢复信息存储到上述第二存储装置, 并且, 上述存储装置管理单元根据上述恢复信息或者上述新的恢复信息来恢复上述第 一存储装置的信息和恢复上述一个或两个以上的寄存器的信息。 14. 根据权利要求 13 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 上述恢复信息和上述新的恢复信息均 。

10、包含上述能否恢复信息, 上述存储装置管理单元根据上述能否恢复信息示出有效的上述恢 复信息或者上述新的恢复信息来恢复上述第一存储装置的信息和恢复上述一个或两个以 上的寄存器的信息, 并且, 上述存储装置管理单元将在该恢复中已使用的上述恢复信息或 者上述新的恢复信息内的上述能否恢复信息变更为示出无效, 除非新获取恢复信息, 否则 不变更该能否恢复信息。 15. 一种能够恢复主存储装置中的信息的微计算机, 该微计算机的特征在于, 具备 : 可改写的第一存储装置 ; 可改写的第二存储装置 ; 以及 存储装置管理单元, 其将作为上述第一存储装置中存储的信息的存储装置信息存储到 上述第二存储装置。 16.。

11、 根据权利要求 15 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 反复进行上述存储装置信息向上述第 二存储装置的存储。 17. 根据权利要求 16 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 周期性地进行上述反复。 18. 根据权利要求 16 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 以随机间隔进行上述反复。 19. 根据权利要求 16 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 在满足规定条件时进行上述反复。 20. 根据权利要求 1519 中的任一项所述的微计算。

12、机, 其特征在于, 权 利 要 求 书 CN 102934090 A 3 3/3 页 4 在能够恢复主存储装置中的信息的微计算机中, 上述存储装置管理单元使用上述第二 存储装置中存储的上述存储装置信息来恢复上述第一存储装置的信息。 21. 根据权利要求 20 所述的微计算机, 其特征在于, 在能够恢复主存储装置中的信息的微计算机中, 还具备中央处理装置, 该中央处理装 置具备一个或两个以上的寄存器, 上述存储装置信息包含作为上述一个或两个以上的寄存器的信息的寄存器信息, 上述 存储装置管理单元在恢复上述第一存储装置的信息时, 使用上述存储装置信息中包含的上 述寄存器信息来恢复对应的上述一个或两。

13、个以上的寄存器的信息。 权 利 要 求 书 CN 102934090 A 4 1/14 页 5 用于恢复主存储装置中的信息的装置以及方法 技术领域 0001 本发明涉及主存储装置中的信息的恢复。更详细地说, 涉及一种根据除主存储装 置以外的存储装置所存储的信息来恢复主存储装置的信息的技术。 背景技术 0002 微计算机总是受到电外部噪声、 静电、 振动以及热等的影响。并且, 由于该外部噪 声等引起所谓的中央处理装置的失控等而产生微计算机的误动作。而且, 在由于该微计算 机的误动作而将有缺陷的信息存储到主存储装置的情况下或由于外部噪声使主存储装置 的信息被变更而受到破坏的情况下, 存储在主存储装。

14、置中的信息成为在之后的处理中不能 正常使用的有缺陷的信息。 0003 在现有技术中, 能够通过使用检测是否使用了在微计算机上未定义的指令代 码 (instruction code)、 检测是否访问了未定义的存储器地址空间、 利用监视定时器 (watchdog timer) 来监视处理、 周期性地重置中央处理装置等技术来检测微计算机的误动 作或者避免微计算机的误动作。然而, 不存在以下技术 : 在微计算机产生误动作之后, 将主 存储装置中存储的有缺陷的信息恢复为正常状态的信息。 因而, 在现有技术中, 通过将中央 处理装置、 主存储装置、 输入输出接口等微计算机的装置整体重置, 将正在执行的程序。

15、等从 开始起再次执行, 由此实现用于将主存储装置中存储的有缺陷的信息变更为正常状态的信 息的方法。因而, 在使用了这种现有技术的情况下, 在主存储装置等中存储的重要信息 ( 例 如, 与生命、 金钱等有关的信息 ) 有可能丢失。并且, 在使用该方法的情况下, 由于重置装置 整体, 因此该方法的从开始到结束的时间与接通电源时的初始化的时间大致同等程度, 因 此需要相当长的时间。 0004 另外, 在现有技术中, 存在一种具备多个中央处理装置的微计算机互相监视中央 处理装置的误动作的系统。 另外, 存在一种各中央处理装置具备专用的主存储装置的系统。 然而, 这种系统必须准备多个相同的装置, 因此相。

16、当耗费成本。并且, 对该系统中的误动作 的监视, 通过将与各中央处理装置的寄存器有关的信息进行互相比较并且将各主存储装置 中存储的信息进行互相比较来实现。 因而, 在该系统中, 为了执行并非微计算机本来的处理 的监视误动作的处理, 需要相当长的处理时间。 0005 专利文献 1 : 日本特开 2009-238742 号公报 0006 专利文献 1 : 日本特开平 6-71024 号公报 0007 专利文献 1 : 日本特开平 9-319602 号公报 发明内容 0008 发明要解决的问题 0009 本发明是在微计算机产生误动作之前预先将主存储装置中存储的信息进行保存, 在微计算机产生误动作之后。

17、, 根据所保存的该信息来进行恢复。使用可改写的存储装置来 实现该保存和恢复, 因此能够以非常短的时间执行这些处理。 由此, 在由于微计算机误动作 说 明 书 CN 102934090 A 5 2/14 页 6 而有可能发生事故或者产生损失的领域, 即机械电子化、 机器人、 包括游戏机的游戏设备、 发动机的控制、 车辆制动的控制、 电梯的控制等中, 通过采用本发明能够大幅减少事故的发 生或者损失的产生。特别是在工业用的焊接机器人等中使用大的焊接电流, 另外在汽车的 电动力部分使用大电流和高电压, 并且在配置游戏机的环境中容易产生静电。 而且, 这些大 电流、 高电压以及静电等产生成为微计算机误动。

18、作的原因的电噪声。因而, 在微计算机中, 应对包括静电的电噪声的影响是重要的。 0010 另外, 在本发明中, 在保存寄存器的信息的时刻正在执行某程序的处理的情况下, 通过恢复寄存器的信息能够从保存该寄存器的信息的时刻起重新开始程序的处理。由此, 不仅能够恢复主存储装置的信息, 还能够追溯到保存信息的该时刻来恢复微计算机的动作 本身。 0011 用于解决问题的方案 0012 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够具备 : 中央处理装 置, 其具备一个或两个以上的寄存器 ; 可改写的第一存储装置 ; 可改写的第二存储装置 ; 以 及存储装置管理单元, 其获取恢复信息, 将该恢复信。

19、息存储到上述第二存储装置, 该恢复信 息是包含第一存储装置中存储的存储装置信息和一个或两个以上的寄存器中存储的寄存 器信息的信息。 0013 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够反复进行恢复信 息的获取以及恢复信息向第二存储装置的存储。 0014 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够周期性地进行反 复。 0015 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够通过周期性地执 行中断处理来进行反复, 每次进行中断处理时, 由存储装置管理单元获取恢复信息并将恢 复信息存储到第二存储装置。 0016 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够以。

20、随机间隔进行 反复。 0017 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够在满足规定条件 时进行反复。 0018 本发明所涉及的能够恢复主存储装置中的信息的微计算机还能够具备高速缓冲 存储器, 该高速缓冲存储器配置在第一存储装置与第二存储装置之间, 在第一存储装置中 存储的信息被变更时, 由存储装置管理单元存储变更后的信息。 0019 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理 单元使用第二存储装置中存储的恢复信息内的存储装置信息来恢复第一存储装置的信息, 并且使用恢复信息内的寄存器信息来恢复对应的一个或两个以上的寄存器的信息。 0020 本发明所涉及的能。

21、够恢复主存储装置中的信息的微计算机能够在装置误动作时, 由存储装置管理单元恢复第一存储装置的信息以及恢复一个或两个以上的寄存器的信息。 0021 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够还具备存储装置 控制器, 该存储装置控制器通过将主存储装置从第一存储装置切换为第二存储装置来恢复 主存储装置的信息。 0022 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理 说 明 书 CN 102934090 A 6 3/14 页 7 单元在获取恢复信息时, 将能否恢复信息设为有效并附加到该恢复信息, 该能否恢复信息 是在恢复时能够利用该恢复信息的情况下示出有效而在恢复时。

22、不能利用该恢复信息的情 况下示出无效的信息, 而且, 在恢复第一存储装置的信息和恢复一个或两个以上的寄存器 的信息时, 存储装置管理单元仅在该能否恢复信息示出有效的情况下使用第二存储装置中 存储的恢复信息内的存储装置信息来恢复第一存储装置, 并且使用该恢复信息内的寄存器 信息来恢复对应的一个或两个以上的寄存器, 并且, 存储装置管理单元将第二存储装置中 存储的恢复信息内的能否恢复信息变更为示出无效, 除非新获取恢复信息, 否则不变更该 能否恢复信息。 0023 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够还具备可改写的 第三存储装置, 由存储装置管理单元获取新的恢复信息, 将第二存储。

23、装置中存储的恢复信 息存储到第三存储装置, 然后, 将新的恢复信息存储到第二存储装置, 并且, 由存储装置管 理单元根据恢复信息或者新的恢复信息来恢复第一存储装置的信息和恢复一个或两个以 上的寄存器的信息。 0024 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理 单元根据恢复信息和新的恢复信息中包含的能否恢复信息示出有效的恢复信息或者新的 恢复信息来恢复第一存储装置的信息和恢复一个或两个以上的寄存器的信息, 并且, 存储 装置管理单元将在恢复中已使用的恢复信息或者新的恢复信息内的能否恢复信息变更为 示出无效, 除非新获取恢复信息, 否则不变更能否恢复信息。 0025 本。

24、发明所涉及的用于恢复主存储装置中的信息的能够恢复主存储装置中的信息 的微计算机能够具备 : 可改写的第一存储装置 ; 可改写的第二存储装置 ; 以及存储装置管 理单元, 其将第一存储装置中存储的存储装置信息存储到第二存储装置。 0026 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够反复进行存储装 置信息向第二存储装置的存储。 0027 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够周期性地进行反 复。 0028 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够以随机间隔进行 反复。 0029 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够在满足规定条件 时进行反。

25、复。 0030 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够由存储装置管理 单元使用第二存储装置中存储的存储装置信息来恢复第一存储装置的信息。 0031 本发明所涉及的能够恢复主存储装置中的信息的微计算机能够还具备中央处理 装置, 该中央处理装置具备一个或两个以上的寄存器, 由存储装置管理单元使用存储装置 信息中包含的规定时刻的作为一个或两个以上的寄存器的信息的寄存器信息来恢复对应 的一个或两个以上的寄存器的信息。 附图说明 0032 图 1 是示出了本发明的实施例的装置 100 的概要的框图。 0033 图2是示出了CPU 115与第一RAM 120、 第二RAM 125以及第三R。

26、AM 130的关系的 说 明 书 CN 102934090 A 7 4/14 页 8 框图。 0034 图 3 是示出了本发明的第一实施例的存储装置管理部的动作的流程图。 0035 图 4 是示出了本发明的第二实施例的存储装置管理部的动作的流程图。 0036 图 5 示出周期性地执行恢复信息的获取和存储的实施例的处理流程。 0037 图 6 是示出了图 5 的处理流程所示的步骤 505540 中的各处理与存储装置中存储 的信息的关系的时序图。 0038 图 7 是示出了图 5 的处理流程所示的步骤 550560 中的各处理与存储装置中存储 的信息的关系的时序图。 0039 图 8 是示出了在具。

27、备三个 RAM 的装置 100 中周期性地执行恢复信息的获取和存储 的实施例的动作的处理流程图。 0040 图 9 是示出了图 8 的流程所示的步骤 805845 中的各处理与存储装置中存储的信 息的关系的时序图。 0041 图 10 是示出了装置 100 的与图 8 的处理流程所示的实施例有关的使用例的时序 图。 0042 图 11 是示出了用于实现本实施例的 CPU 与 RAM 的关系的框图。 0043 图 12 是示出了由图 11 的存储装置控制器 1105 控制的实施例的动作的处理流程 图。 0044 图 13 是表示在作为主存储器的第一 RAM 120 与除主存储器以外的第二 RAM。

28、 125 之间使用了高速缓冲存储器的实施例的框图。 具体实施方式 0045 图 1 是表示本发明的实施例的装置 100 的概要的框图。装置 100 具备辅助电路 105、 ROM( 只读存储器 )110、 CPU( 中央处理装置 )115、 第一 RAM( 随机存取存储器 )120、 第 二 RAM 125、 第三 RAM 130、 CPU 总线 135、 输入输出接口 140 以及 DMA 控制器 ( 直接存储器 存取控制器 )150。 0046 CPU 115 具有辅助电路 105, 并且内置有一个或两个以上的寄存器 145。作为寄存 器145, 能够使用累加器、 地址寄存器、 索引寄存器。

29、、 堆栈指示器(stack pointer)、 页面寄存 器、 段寄存器、 程序计数器、 状态寄存器、 控制寄存器以及其它专用寄存器、 通用寄存器。辅 助电路 105 包括用于产生 CPU 115 所使用的时钟脉冲的电路、 通过控制对 CPU 115 的电源 供给来重置 CPU115 的电路以及用于定期执行的中断处理等的计时器用电路等。 0047 在ROM 110中存储有程序等。 对于第一RAM 120、 第二RAM 125以及第三RAM 130, 也可以内置 MMU( 存储器管理单元 )155。第一可改写的存储装置 120 作为主存储器 ( 也称 为主存储装置、 主 RAM) 发挥功能, 还。

30、能够存储 CPU 115 的寄存器 145 中存储的信息。输入 输出接口 140 用于向其它外部装置进行输入输出。 0048 图 1 以例示为目的进行示出, 能够将装置 100 设为至少具备 CPU 115、 主存储器 120 以及用于连接它们的总线的计算机。在装置 100 中包括微计算机等。并且, 在微计算机 中包括单芯片式的微计算机。 0049 多个 RAM 能够安装在一个存储装置内。另外, 多个 RAM 还能够物理上作为多个存 储装置进行安装。并且, 电源与其它要素相比易于受到外部噪声的影响, 因此各 RAM 也可以 说 明 书 CN 102934090 A 8 5/14 页 9 各自具。

31、有专用的电源。 0050 恢复主存储器 120 的信息所需的信息是在执行某处理的期间内动态变化的信息。 在装置 100 中, 该动态变化的信息是在一个或两个以上的寄存器 145 中存储的寄存器信息 和在主存储器 120 中存储的存储装置信息。特别是寄存器信息包含 CPU 115 接下来要执行 的命令、 表示接下来要执行的命令在何处的地址以及某信息在主存储器上的地址等, 因此 每当进行某种动作时寄存器信息发生变化。 0051 在微计算机中, 寄存器信息被发送至主存储器 120 并存储于主存储器 120。通常, 寄存器信息和存储装置信息不存储在外部的辅助存储装置等 ( 例如, 硬盘、 硅磁盘、 固。

32、态驱 动器等 )。因而, 通过将主存储器 120 中存储的规定时刻的信息进行保存, 在经过了该规定 时刻后将所保存的该信息再次存储到主存储器 120, 来将主存储器 120 中存储的信息恢复 为该规定时刻的内容。 0052 并且, 通过将所保存的信息中的寄存器信息存储到对应的寄存器 145, 还能够恢 复执行中的处理。例如, 即使在执行应用程序过程中由于外部噪声等的影响导致主存储器 120 中存储的信息被变更而不能恢复的情况下, 也能够根据某时刻的主存储器 120 和寄存 器 145 的信息恢复主存储器 120 和寄存器 145 的信息。由此, 能够从中途重新开始应用程 序。而且, 这些处理的。

33、开销仅是为恢复第一 RAM 120 的信息而获取其它 RAM 125 或者 130 中存储的信息并将该信息存储到第一 RAM 120 的极短的时间。 0053 图2通过框图示出CPU 115与第一RAM 120、 第二RAM 125以及第三RAM 130的关 系。 0054 CPU 115 经由 CPU 用总线 135 与作为主存储器的第一 RAM120 相连接, 经由 CPU 用 总线135、 读取专用总线225以及读取用数据总线215与第二RAM 125相连接, 并且经由CPU 用总线 135、 读取专用总线 225 以及读取用数据总线 220 与第三 RAM 130 相连接。而且, CP。

34、U 用总线 135 用于写入和读取。因而, CPU 115 不能对第二 RAM 125 和第三 RAM 130 进行数 据的写入, 能够对第一 RAM 120 进行数据的写入。 0055 第一 RAM 120 经由 CPU 用总线 135 与 CPU 115 相连接, 经由写入用数据总线 205 以及读取用数据总线 215 与第二 RAM 125 相连接, 并且经由 CPU 用总线 135、 读取专用总线 225以及读取用数据总线215与第二RAM 125相连接, 并且第一RAM 120经由读取用数据总 线 220 与第三 RAM 130 相连接。因而, 用于写入第一 RAM 120 中存储的。

35、数据的信息不被发 送至第三 RAM 130 而被发送至第二 RAM 125。 0056 第二 RAM 125 经由写入用数据总线 205 以及读取用数据总线 215 与第一 RAM 120 相连接, 经由写入用数据总线210与第三RAM 130相连接, 并且经由读取用数据总线215、 读 取专用总线 225 以及 CPU 用总线 135 与 CPU 115 相连接。因而, 用于写入第二 RAM 125 中 存储的数据的信息不被发送至第一 RAM 120 而被发送至第三 RAM 130。而且, 用于读取第 二 RAM 125 中存储的数据的信息不被发送至第三 RAM 130 而被发送至第一 RA。

36、M 120 和 CPU 115。 0057 第三 RAM 130 经由写入用数据总线 210 与第二 RAM 125 相连接, 经由读取用数据 总线220与第一RAM 120相连接, 并且经由读取用数据总线220、 读取专用总线225以及CPU 用总线 135 与 CPU 115 相连接。因而, 用于写入第三 RAM 130 中存储的数据的信息不被发 送至任何装置。 而且, 用于读取第三RAM 130中存储的数据的信息不被发送至第二RAM 125 说 明 书 CN 102934090 A 9 6/14 页 10 而被发送至第一 RAM 120 和 CPU 115。 0058 通过存储装置管理部。

37、来实现这些存储装置之间的管理。存储装置管理部由 CPU 115、 各种数据总线、 直接存储器存取 (DMA) 控制器、 存储器管理单元 (MMU) 等、 或者它们中 的一个以上的组合来构成。在本发明中, 通过使用 DMA 控制器、 存储器管理单元等, 不使用 CPU 115 就能够实现对各 RAM 中存储的信息的管理。另外, CPU 115 经由读取专用的总线与 第二 RAM125 和第三 RAM 130 相连接。由此, CPU 115 不能将信息直接写入这些 RAM。由此, 在 CPU 115 等进行误动作的情况下 ( 例如, CPU 115 失控等 ), CPU 115 也不会改写第二 R。

38、AM 125 和第三 RAM 130 中存储的信息。 0059 图 3 是示出了本发明的第一实施例的存储装置管理部的动作的流程图。在本发明 的第一实施例中, 存储装置管理部获取在规定时刻存储到作为主存储器的第一 RAM 120 的 信息(恢复信息)(步骤301)。 存储装置管理部将恢复信息存储到第二RAM125(步骤305)。 在经过该规定时刻后, 存储装置管理部能够根据第二 RAM 125 中存储的规定时刻的恢复信 息来恢复第一 RAM 120 的信息 ( 步骤 310)。 0060 并且, 在恢复第一 RAM 120 的信息时, 存储装置管理部能够根据第二 RAM 125 中 存储的规定时。

39、刻的恢复信息来恢复寄存器 145 的信息。通常, 在主存储器 120 中包含寄存 器 145 的信息, 因此在第二 RAM 125 中存储的恢复信息中包含寄存器信息。此外, 根据 CPU 115 和主存储器 120 的实现方法, 也存在寄存器信息没有被存储到主存储器 120 中的情况。 在这种情况下, 存储装置管理部在从作为主存储器的第一 RAM 120 获取恢复信息时, 还获 取寄存器 145 中存储的寄存器信息, 对恢复信息附加寄存器信息。由此, 使恢复信息中包含 寄存器信息。以下, 设为在每次变更寄存器信息时将该寄存器信息存储到主存储器 120 中。 此外, 能够将恢复信息设为在规定时刻。

40、存储到第一 RAM 120 中的所有信息。另外, 恢复信息 也可以是在规定时刻存储到第一 RAM 120 中的一部分信息。 0061 寄存器信息的恢复也可以是由存储装置管理部根据第二 RAM 125 中存储的恢复 信息将信息直接存储到寄存器 145 中来执行。另外, 还能够通过在恢复了第一 RAM 120 之 后, CPU 115 从该第一 RAM 120 获取寄存器信息并将获取到的该信息存储到寄存器 145 来 恢复寄存器信息。 0062 在此, 在 RAM 120、 RAM 125 以及 RAM 130 中存储有用于恢复的存储装置信息和寄 存器信息、 用于进行当前处理的存储装置信息和寄存器。

41、信息等多种信息。因而, 通过在各 RAM 中预先决定存储各信息的规定区域, 存储装置管理部能够判断规定区域的信息为何种 信息。并且, 能够在所有 RAM 中将该区域设为相同的区域。 0063 图 4 是示出了本发明的第二实施例的存储装置管理部的动作的流程图。在本实施 例中, 装置 100 具备第三 RAM 130。在此, 设为第二 RAM 125 已经存储了规定时刻的第一恢 复信息。 0064 首先, 在经过规定时刻后, 存储装置管理部能够获取第二 RAM 125 中存储的第一 恢复信息 ( 步骤 401), 并将获取到的信息存储到第三 RAM 130( 步骤 405)。并且, 存储装置 管理。

42、部获取在该时刻存储到第一RAM 120中的信息(第二恢复信息)(步骤410), 并将获取 到的信息覆盖存储于第二 RAM 125( 步骤 415)。 0065 因而, 在步骤 420 和 425 中, 存储装置管理部能够根据第二 RAM 125 中存储的一代 前的信息即第二恢复信息来恢复第一RAM 120和/或寄存器145的信息。 并且, 存储装置管 说 明 书 CN 102934090 A 10 7/14 页 11 理部还能够根据第三 RAM 130 中存储的两代前的信息即第一恢复信息来恢复第一 RAM 120 和 / 或寄存器 145 的信息。 0066 能够由存储装置管理部随着时间推移反。

43、复执行获取恢复信息并将该恢复信息存 储到除主存储器以外的 RAM 中的处理。对于该反复, 可以每隔固定周期、 每隔随机间隔、 满 足规定条件时、 或者组合它们中的一个或两个以上来进行。 作为固定周期的例子, 还能够以 2m 秒等极短的周期来执行。另外, 也可以根据使用装置 100 执行的应用程序来改变该固定 周期。作为随机间隔的例子, 能够获取随机数并将该数用作时间间隔。并且, 作为满足规定 条件时例子, 是执行了规定程序时 ( 例如, 执行了管理程序调用 (super visor call) 等处 理时 ( 由此, 被控制的程序从应用程序变为 O S 程序 )、 装置 100 进行了规定的错。

44、误处理 时、 产生了中断处理时以及将规定信息存储到主存储器 120 中时等。 0067 参照图 5、 图 6 以及图 7 说明本发明的第三实施例。图 5 示出周期性地执行恢复信 息的获取和存储的实施例的处理流程。在本实施例中, 通过执行明确示出的处理将寄存器 145 的信息存储到 RAM。图 6 是示出了图 5 的处理流程所示的步骤 505540 中的各处理与 存储装置中存储的信息的关系的时序图, 图7是示出了图5的处理流程所示的步骤550560 中的各处理与存储装置中存储的信息的关系的时序图。 0068 在图 6 和图 7 中, 横轴的箭头表示时间的经过, 应用程序的执行状态 650 和 7。

45、50 以 及中断处理的执行状态 655 和 755 的行中的阴影部分表示各自的处理处于执行中的状态。 而且, 在寄存器中存储的信息 660 和 760、 第一 RAM 中存储的信息 670 和 770 以及第二 RAM 中存储的信息 675 和 775 的行中, R0、 R1, M0、 M1, 以及 MM0、 MM1等表示所存储的信息。 另外, 在 R0、 R1, M0、 M1, 以及 MM0、 MM1等中, 在标记相同时表示所存储的信息相同。此 外, 在图 6 和图 7 中, 寄存器信息和存储装置信息同时变化, 但如果是本领域技术人员则可 知还能够以它们不同时变化的方式实现。图 6 和图 7。

46、 以例示为目的进行示出, 时间的比例 尺不一定正确。因而, 还能够使中断处理的执行时间相对于应用程序的执行时间为非常小 的比例。 0069 首先, 接通装置 100 本身的电源, 对装置 100 整体进行初始化 ( 步骤 501)。如图 6 的 t1 所示那样, R0、 M0 以及 MM0 分别表示将寄存器 145、 主存储器 120 以及第二 RAM 125 的信息初始化而得到的信息。此外, 也可以通过初始化使第二 RAM 125 中存储的信息与主 存储器120中存储的信息同步(在这种情况下, 第二RAM 125的信息不是MM0而是M0, 信息 M0 被用作恢复信息 )。之后, 在完成初始化。

47、后, 如图 6 的 t3 时的状态 601 所示那样, 开始执 行应用程序 ( 步骤 502)。随着应用程序的执行, 寄存器信息从 R0 变化为 R1, 然后从 R1 变 化为 R2。并且, 存储装置信息也从 M0 变化为 M1, 然后从 M1 变化为 M2。 0070 在图 6 的 t5t10 期间, 执行中断处理的步骤 505540 的一系列步骤。在图 6 的 t5 时, 辅助电路105向CPU 115发送中断信号(步骤505)。 由辅助电路105内的计时器每隔固 定周期 ( 例如, 图 6 中的 690 和 695) 生成中断信号并将该中断信号发送至 CPU 115。在此, 能够将中断信。

48、号设成作为不能由软件控制的信号的NMI信号(Non-Maskable Interrupt信 号 : 非屏蔽中断请求信号)。 然后, CPU 115当接收到中断信号时开始中断处理(步骤510)。 如图 6 的 t5 时的状态 601 和 605 所示那样, 中断应用程序并开始中断处理。 0071 当开始中断处理时, 首先, 确认在装置100中是否产生了误动作(步骤520)。 在没 有产生误动作的情况下, 处理流程进入步骤 525。在产生了误动作的情况下, 处理流程进入 说 明 书 CN 102934090 A 11 8/14 页 12 步骤 550。关于决定是否产生了误动作的条件, 在后文叙述。。

49、 0072 在判断为在装置 100 中没有产生误动作的情况下 ( 步骤 520), CPU 115 将执行应 用程序所需的寄存器 145 中存储的信息即寄存器信息保存到主存储器 120( 步骤 525)。在 中断处理结束后重新开始应用程序, 因此如图 6 的 t5 的时刻所示那样, 在主存储器 120 中 存储有包含所保存的寄存器信息R2的存储装置信息M3。 该动作是普通的中断处理的动作。 在此, 中断处理不对应用程序中使用的主存储器 120 的信息进行变更。因而, 存储装置信息 M3 能够包含即将开始中断处理时的存储装置信息 M2 和寄存器信息 R2。 0073 之后, 在图 6 的 t10 时, 存储装置管理部获取在作为主存储器的第一 RAM 120 中存 储的信息 ( 恢复信息 )( 步骤 530), 将该恢复信息存储到第二 RAM 125( 步骤 535)。在图 6 的 t10 时, 存储装置管理部从第一 RAM 120 中存储的信息 M4 获取恢。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1