双工系统和处理器切换方法

文档序号:6611460阅读:152来源:国知局
专利名称:双工系统和处理器切换方法
技术领域
本发明涉及双工系统和处理器切换方法,其中,运行处理器和备用 处理器的每一个中均设置有高速缓冲存储器和高速缓冲存储器控制器, 所述高速缓冲存储器是可通过多个端口来进行读取和写入的,并且在更 新时,可以将运行处理器的高速缓冲存储器中的更新内容反映在备用处 理器的高速缓冲存储器中。
背景技术
新近的通信系统包括相当多的强烈要求24小时稳定操作的计算机, 如移动通信系统中的多媒体交换机。为了提高这些计算机的可靠性,采 用了例如双工系统,在所述双工系统中,对处理器、高速缓冲存储器、 主存储器、主存储器控制器以及用于监测运行系统和备用系统任何一个 中的故障发生的故障监测器均进行双工配置;所述运行系统在正常状态 下执行信息处理;而当发生故障时,进行向所述备用系统的切换。
图1是示出传统双工系统的结构的实施例的框图。该传统双工系统 包括运行处理器10a和备用处理器10b。通过主存储器控制器15a将写入 运行处理器10a的主存储器14a中的数据写入到备用系统的主存储器14b 中。当运行处理器10a的故障监测器12a检测到发生故障时,对运行处理 器10a的CPU lla以及备用处理器10b的CPU lib均进行复位,并在运 行处理器10a与备用处理器10b之间进行切换,由此新的运行处理器的 CPU通过利用包括该CPU的系统的主存储器来继续进行处理。
为了更快地访问存储器,通常的实践是设置高速缓冲存储器13a和 13b。 一种所谓的回写法(copy-back method)常被用作对高速缓冲存储 器13a和13b的操作进行控制的方法。当运行处理器10a的CPU lla执 行指令以将数据写入到主存储器14a中时,CPU lla并没有将数据直接写
入到主存储器14a中,而是仅将数据写入到高速缓冲存储器13a中。由于 高速缓冲存储器13a的容量比主存储器14a的容量小,因此当高速缓冲 存储器13a溢出时,要将数据回写(复制回)到主存储器14a。 g卩,最新 数据仅存在于高速缓冲存储器13a中,直到将其写回到主存储器14a为 止。
主存储器控制器15a通过主存储器控制器15b将写回到主存储器14a 的数据写入备用处理器10b的主存储器14b中。当对CPU lla和llb复 位时,运行处理器10a的CPU lla强制地将仅存在于高速缓冲存储器13a 中的数据反映在主存储器14a中,并指示主存储器控制器15a停止存储 器双工控制(参见日本待审专利申请公开第H06-67979和2003-223338 号)。
备用处理器10b的CPU llb通过利用备用处理器10b的主存储器14b 再继续所暂停的处理。如上所述,当对CPU lla和llb复位时,在主存 储器14a和14b的双工状态持续,并且其中将高速缓冲存储器13a中的 内容强制写入到主存储器14a中的所谓刷新处理(flushing)正常完成的 情况下,通过备用处理器10b来再继续所述处理。
然而,当采用上述回写法时,会产生如下问题,即存在无法通过备 用处理器10b再继续处理的情况。例如,当在运行处理器10a的CPU总 线上出现地址奇偶检验差错时,通过软件执行的处理无法继续。因此, 即使对CPU lla和llb进行复位,也不能继续所述处理,因为不能执行 对运行处理器10a的高速缓冲存储器13a的刷新,并且从运行处理器10a 向备用处理器10b切换以再继续所述处理时所使用的信息,与切换前作 为运行处理器的运行处理器10a中的主存储器14a的内容不一致。
此外,例如,当向高速缓冲存储器13a和运行处理器10a的部件供 电的电源系统出现故障并且高速缓冲存储器13a中的数据丢失时,也不 能继续所述处理,因为无法执行将仅存储在高速缓冲存储器13a中的数 据刷新到主存储器14a中的刷新处理,并且从运行处理器向备用处理器 lOb切换以再继续所述处理时所使用的信息,与作为切换前的运行处理器 的运行处理器10a的主存储器14a的内容不一致。

发明内容
鉴于这种情况提出了本发明,本发明的目的在于提供一种双工系统 以及处理器切换方法,其中,通过在运行处理器和备用处理器的每一个 中设置高速缓冲存储器以及高速缓冲存储器控制器,并且使得可通过多 个端口来对所述高速缓冲存储器进行读写操作,而使得在对所述处理器 中设置的所述高速缓冲存储器进行更新时,所述高速缓冲存储器中的内 容彼此一致。
为了实现上述目的,根据本发明的双工系统包括运行处理器,其 主要执行计算;和备用处理器,其当所述运行处理器发生故障时执行计 算。所述运行处理器和所述备用处理器分别包括主存储器;存储器控 制器,其控制所述主存储器的操作;高速缓冲存储器,其具有多个端口, 通过所述多个端口可同时读取和写入数据;高速缓冲存储器控制器,其 对通过所述多个端口读取和写入的数据进行中继,并对从所述高速缓冲 存储器的数据读取和向所述高速缓冲存储器的数据写入进行控制;以及 故障监测器,其对包括所述故障监测器的处理器中发生故障进行监测, 并当包括所述故障监测器的处理器中发生故障时,向另一处理器通知发 生故障。运行处理器的高速缓冲存储器控制器包括在对待写入到所述 运行处理器的所述高速缓冲存储器中的数据进行中继时,将该数据转送 给所述备用处理器的所述高速缓冲存储器控制器的装置。所述备用处理 器的所述高速缓冲存储器控制器包括用于接收从所述运行处理器的所 述高速缓冲存储器控制器转送的数据的装置;用于使用所述多个端口之 一将所接收的数据写入到所述备用处理器的所述高速缓冲存储器中的装 置;以及通过使用与用于写入所接收的数据的端口不同的端口,将由包 括所述备用处理器的所述高速缓冲存储器控制器的处理器产生的数据写 入到所述备用处理器的所述高速缓冲存储器中的装置。当故障监测器确 定运行处理器中发生故障时,执行所述运行处理器与备用处理器之间的 切换。
此外,在根据本发明的双工系统中,所述运行处理器的高速缓冲存
储器控制器包括用于确定待写入到所述运行处理器的所述高速缓冲存 储器中的数据是否正常的装置;并且当确定该数据正常时,则将所述数 据写入到所述运行处理器的所述高速缓冲存储器中,并将所述数据转送 给所述备用处理器的所述高速缓冲存储器控制器。
此外,在根据本发明的双工系统中,所述运行处理器的所述高速缓 冲存储器控制器包括用于当因写入到所述运行处理器的高速缓冲存储器 中的数据而发生溢出时,将已写入到所述高速缓冲存储器中的数据转送 给所述运行处理器的所述主存储器控制器的装置;所述运行处理器的所 述主存储器控制器包括用于将从所述运行处理器的所述高速缓冲存储器 控制器接收的数据写入到所述运行处理器的主存储器中并且将所述数据 转送给所述备用处理器的所述主存储器控制器的装置;并且所述备用处 理器的主存储器控制器包括用于将所接收的数据写入到所述备用处理器 的主存储器中的装置。
此外,在根据本发明的用于在主要执行计算的运行处理器与当所述 运行处理器中发生故障时执行计算的备用处理器之间进行切换的处理器 切换方法中,当通过所述运行处理器的高速缓冲存储器控制器对数据进 行中继时,将待写入到所述运行处理器的高速缓冲存储器中的数据转送 给所述备用处理器的高速缓冲存储器控制器;通过所述备用处理器的高 速缓冲存储器控制器来接收所转送的数据;通过使用所述备用处理器的 高速缓冲存储器所具有的多个端口中的一个来将所接收的数据写入到所 述备用处理器的高速缓冲存储器中;通过使用与用于写入所接收数据的 端口不同的端口 ,将由所述备用处理器产生的数据写入到所述高速缓冲 存储器中;确定所述运行处理器中是否发生故障;以及当确定所述运行 处理器中发生故障时,在所述运行处理器与所述备用处理器之间执行切 换。
此外,在根据本发明的处理器切换方法中,确定待写入到所述运行 处理器的高速缓冲存储器中的数据是否正常;并且当确定所述数据正常 时,则将所述数据写入到所述高速缓冲存储器中,并将所述数据转送给 所述备用处理器的高速缓冲存储器控制器。
此外,在根据本发明的处理器切换方法中,当因写入到所述运行处 理器的高速缓冲存储器中的数据而发生溢出时,将已写入到所述高速缓
冲存储器中的数据转送给所述运行处理器的主存储器控制器;将转送给 所述运行处理器的主存储器控制器的数据写入到所述运行处理器的主存 储器中,并将所述数据转送给所述备用处理器的主存储器控制器;将转 送给所述备用处理器的主存储器控制器的数据写入到所述备用处理器的 主存储器中。
根据本发明,主要执行计算的运行处理器和当所述运行处理器发生 故障时执行计算的备用存储器分别包括高速缓冲存储器、主存储器、 主存储器控制器,以及监测所述运行处理器和所述备用处理器任何一个 中的故障发生的故障监测器。当所述故障监测器确定包括所述故障监测 器的系统中发生故障时,所述故障监测器指示包括所述故障监测器的系 统的处理器向另一系统的处理器通知发生故障。当包括故障监测器的系 统的处理器是所述运行处理器时,执行向所述备用处理器的切换。在从 另一系统的处理器接收到故障通知的情况下,当包括所述故障监测器的 系统的处理器是所述备用处理器时,执行向所述运行处理器的切换。高 速缓冲存储器具有多个端口,通过这些端口可同时执行数据的读写。在 所述运行处理器和所述备用处理器的每一个中均设置有用于控制高速缓 冲存储器的操作的高速缓冲存储器控制器。所述运行处理器的所述高速 缓冲存储器控制器对用于所述运行处理器的高速缓冲存储器的更新数据 进行中继,并且当对所述更新数据进行中继时,所述运行处理器的高速 缓冲存储器将所述更新数据转送给所述备用处理器的高速缓冲存储器。 所述备用处理器的高速缓冲存储器控制器通过使用与用于更新高速缓冲 存储器的端口不同的端口,将从所述运行处理器接收的更新数据写入到 高速缓冲存储器中。
利用此结构,当更新所述运行处理器的高速缓冲存储器的内容时, 与将更新数据刷新到主存储器并行地,将更新数据本身转送到所述备用 系统的高速缓冲存储器。因此,即使由于发生故障导致不能执行所述运 行处理器的高速缓冲存储器的刷新处理,由于所述备用处理器的高速缓 冲存储器与所述运行处理器的高速缓冲存储器中的内容彼此一致,所以 可利用设置在为再继续所述处理而切换到的处理器中的高速缓冲存储器 中的内容来继续所述处理。
此外,根据本发明,当对用于所述运行处理器的高速缓冲存储器的 更新数据进行中继时,所述运行处理器的高速缓冲存储器控制器确定已 写入到高速缓冲存储器中的数据是否正常。所述运行处理器的所述高速 缓冲存储器控制器仅当确定所述更新数据正常时,才向所述备用处理器 的高速缓冲存储器转送所述更新数据。
因此,仅当写入到高速缓冲存储器中的内容是正常数据时,才可以 将所述数据转送给所述备用处理器的高速缓冲存储器,从而可防止进行 了处理器切换后由于转送了错误数据而导致不能再继续所述处理的情 况。
此外,根据本发明,当因写入到所述运行系统的处理器的高速缓冲 存储器中的数据而发生溢出时,将己写入数据写入到所述运行系统的处 理器的主存储器中,并且将所述数据转送给所述备用处理器的主存储器 控制器,从而将所述数据写入到所述备用处理器的主存储器中。
因此,最新数据仅存在于所述高速缓冲存储器中,直到将所述数据 回写到所述主存储器中为止。


图1是示出传统双工系统的结构的实施例的框图2是示出根据第一实施方式的双工系统的结构的框图3是示出在根据第一实施方式的双工系统中的运行处理器的高速
缓冲存储器控制器和备用处理器的高速缓冲存储器控制器的处理过程的
流程图4是示出在根据第一实施方式的双工系统中当运行处理器发生故 障时备用处理器的高速缓冲存储器控制器的处理过程的流程图;以及
图5是示出在根据第二实施方式的双工系统中的运行处理器的高速 缓冲存储器控制器和备用处理器的高速缓冲存储器控制器的处理过程的
流程图。
具体实施例方式
此后,基于附图来详细描述具体实施方式
。 第一实施方式
图2是示出根据第一实施方式的双工系统的结构的框图。如图2所
示,根据第一实施方式的双工系统包括运行处理器20a和备用处理器20b。 运行处理器20a包括至少设置有CPU21a、故障监测器22a、高速缓 冲存储器控制器23a、高速缓冲存储器24a、主存储器25a、主存储器控 制器26a以及ROM 27a的处理器板。备用处理器20b也包括至少设置有 CPU21b、故障监测器22b、高速缓冲存储器控制器23b、高速缓冲存储 器24b、主存储器25b、主存储器控制器26b以及ROM27b的处理器板。 CPU 21a和21b根据存储在ROM 27a和27 b中的程序来执行具体处 理。故障监测器22a和22b通过通信线路互连,并且根据响应信号(例 如,心跳信号)的有无来确定在任一处理器中是否出现故障。
高速缓冲存储器控制器23a和23b以可读取且可写入的方式分别连 接到高速缓冲存储器24a和24b。此外,高速缓冲存储器控制器23a和23b 以在二者之间可执行数据通信的方式通过通信线路互连。当对高速缓冲 存储器24a或24b中的数据进行更新时,高速缓冲存储器控制器23a或 23b通过通信线路向另一处理器发送更新数据。即,当通过在运行处理器 20a中的处理来进行向主存储器25a的写入操作时,首先启动向高速缓冲 存储器24a的写入。当启动向高速缓冲存储器24a的写入时,高速缓冲存 储器控制器23a通过通信线路向备用处理器20b的高速缓冲存储器24b 写入更新数据。
高速缓冲存储器24a或24b是具有第一端口 241a、 241b和第二端口 242a、 242b这两个端口的双端口存储器,根据存储在ROM上的程序, 可通过第一端口 241a和241b仅从运行区域读取和向该运行区域写入数 据,所述运行区域用于临时存储待写入到主存储器25a和25b中的数据; 通过第二端口 242a和242b从维护区域读取和向该维护区域写入数据,
所述维护区域仅用于读取并写入仅由每个处理器所需的数据。高速缓冲
存储器控制器23a或23b仅将写入到运行区域中的更新数据转送到另一 处理器的高速缓冲存储器24a或24b 。
当运行处理器20a的CPU 21a执行将数据写入到主存储器25a中的 指令时,CPU21a并非将数据直接写入到主存储器25a中,而是将数据仅 写入到高速缓冲存储器24a中。由于高速缓冲存储器24a具有比主存储器 25a小的容量,所以当高速缓冲存储器24a溢出时,将数据回写(复制回) 到主存储器25a。
主存储器控制器26a通过主存储器控制器26b将回写到主存储器25a 中的数据写入到备用处理器20b的主存储器25b中。ROM 27a和27b对 由运行处理器20a和备用处理器20b执行的处理程序进行存储。所存储 的程序用于执行相同处理,并且通过利用主存储器25a和25b来执行。
以下将对具有上述结构的双工系统的操作进行描述。运行处理器20a 的CPU21a根据存储在ROM27a中的程序来执行预定处理。当CPU21a 向主存储器25a写入数据时,首先通过高速缓冲存储器控制器23a将待 写入到主存储器25a中的更新数据写入到高速缓冲存储器24a中。
通过第一端口 241a将向高速缓冲存储器24a写入更新数据执行为向 运行区域写入更新数据。高速缓冲存储器控制器23a在提供将更新数据 写入到高速缓冲存储器24a的运行区域的指令时,将该更新数据转送给 备用处理器20b的高速缓冲存储器24b。备用处理器20b的高速缓冲存储 器控制器23b通过高速缓冲存储器24b的第一端口 241b将转送来的更新 数据写入到运行区域。
通常,在备用处理器20b上运行有预定的维护程序。当CPU 21b通 过执行该维护程序向主存储器25b写入数据时,与在运行处理器20a中 一样,通过高速缓冲存储器控制器23b将待写入到主存储器25b中的更 新数据写入到高速缓冲存储器24b中。通过第二端口 242b将根据维护程 序的更新数据写入到高速缓冲存储器24b的维护区域中。通过第一端口 241b转送的更新数据未被写入到该维护区域中。因此,即使在已通过维 护程序执行了向高速缓冲存储器24b的写入时,从运行处理器20a转送
来的更新数据也可被写入到高速缓冲存储器24b的运行区域中,从而使 得存储在运行处理器20a的高速缓冲存储器24a的运行区域中的内容与 存储在备用处理器20b的高速缓冲存储器24b的运行区域中的内容彼此 一致。
图3是示出在根据第一实施方式的双工系统中运行处理器20a的高 速缓冲存储器控制器23a和备用处理器20b的高速缓冲存储器控制器23b 的处理过程的流程图。高速缓冲存储器控制器23a从CPU 21a接收向高 速缓冲存储器24a写入更新数据的指令(步骤S301 )。高速缓冲存储器控 制器23a通过第一端口 241a向高速缓冲存储器24a的运行区域写入更新 数据(步骤S302)。
另一方面,高速缓冲存储器控制器23a向备用处理器20b的高速缓 冲存储器控制器23b转发该更新数据(步骤S303)。备用处理器20b的高 速缓冲存储器控制器23b接收该更新数据(步骤S304),并通过第一端口 241b将该更新数据写入到高速缓冲存储器24b的运行区域中(步骤 S305)。
当运行处理器20a出现故障时,运行处理器20a的故障监测器22a 向CPU 21a和21b提供复位指令,并向备用处理器20b的故障监测器22b 发送表示发生故障的数据。在提供复位指令时,CPU21a和21b将运行处 理器20a切换为备用系统,并将备用处理器20b切换为运行系统。
在切换后,运行处理器20b (以前的备用系统)的故障监测器22b 和备用处理器20a (以前的运行系统)的故障监测器22a向高速缓冲存储 器控制器23a和23b发送表示包括故障监测器22b和22a的系统是运行 系统还是备用系统的数据。由此,运行处理器20b (以前的备用系统)的 高速缓冲存储器控制器23b将用于向高速缓冲存储器24b写入的端口从 第二端口切换为第一端口。由此,将根据来自CPU21b的指令对高速缓 冲存储器24b的更新数据写入到高速缓冲存储器24b的运行区域中。
另一方面,备用处理器20a(以前的运行系统)的高速缓冲存储器控 制器23a将用于向高速缓冲存储器24a写入的端口从第一端口切换为第 二端口。由此,通过来自CPU 21a的指令将针对高速缓冲存储器24a的更新数据仅写入维护区域,所述维护区域是用于根据维护程序进行写入 处理的区域。
在切换后,运行处理器20b (以前的备用系统)的CPU 21b执行将 写入高速缓冲存储器24b中的更新数据刷新到主存储器25b中的处理, 并再继续进行处理。
图4是示出在根据第一实施方式的双工系统中当运行处理器20a出 现故障时备用处理器20b的高速缓冲存储器控制器23b的处理过程的流 程图。备用处理器20b的高速缓冲存储器控制器23b从CPU 21b接收复 位指令(步骤S401)。高速缓冲存储器控制器23b将可以访问高速缓冲存 储器24b的端口从第二端口 242b切换为第一端口 241b (步骤S402)。
高速缓冲存储器控制器23b执行如下刷新处理,其中将存储在高速 缓冲存储器24b的运行区域中的数据通过已切换到的第一端口 241b强制 地写入主存储器25b(步骤S403)。由此,己切换到的以前的备用系统20b 的CPU 21b可利用与发生故障的运行处理器20a的高速缓冲存储器24a 中的数据相同的数据来继续所述处理。
如上所述,根据第一实施方式,当运行处理器20a的高速缓冲存储 器24a的内容被更新时,与将更新数据刷新到主存储器25a中并行地将 更新数据本身转送到备用处理器20b的高速缓冲存储器24b中。因此, 即使当由于发生故障而导致不能执行对运行处理器20a的高速缓冲存储 器24a的刷新处理时,由于备用处理器20b的高速缓冲存储器24b中的 内容与运行处理器20a的高速缓冲存储器24a中的内容彼此一致,所以 通过利用设置在为再继续所述处理而切换到的以前的备用系统20b中的 高速缓冲存储器24b的内容可以继续所述处理。
第二实施方式
由于根据第二实施方式的双工系统的结构类似于根据第一实施方式 的双工系统,所以利用相同的参考标记来指示相同的部分,并且省略了 其详细描述。第二实施方式与第一实施方式的不同之处在于,用于控制 高速缓冲存储器的高速缓冲存储器控制器具有确定数据是否正常的功
运行处理器20a的CPU 21a根据存储在ROM 27a中的程序来执行预 定处理。当CPU 21a向主存储器25a写入数据时,首先通过高速缓冲存 储器控制器23a将待写入到主存储器25a中的更新数据写入到高速缓冲 存储器24a中。
通过第一端口241a将向高速缓冲存储器24a写入更新数据执行为向 运行区域写入更新数据。高速缓冲存储器控制器23a在提供向高速缓冲 存储器24a的运行区域写入更新数据的指令时,确定待写入的更新数据 是否正常。该用于确定更新数据是否正常的方法不受具体限制,并且可 以是可借此检查数据的正确性的诸如奇偶校验检查或者ECC检查的任意 方法。
高速缓冲存储器控制器23a仅当确定待写入的更新数据正常时才将 更新数据转送到备用处理器20b的高速缓冲存储器24b。备用处理器20b 的高速缓冲存储器控制器23b通过高速缓冲存储器24b的第一端口 241b 将转送来的更新数据写入到运行区域。
通常,在备用处理器20b上运行有预定的维护程序。当CPU 21b通 过执行该维护程序向主存储器25b写入数据时,与在运行处理器20a中 一样,通过高速缓沖存储器控制器23b将待写入到主存储器25b中的更 新数据写入到高速缓冲存储器24b中。通过第二端口 242b将基于维护程 序的更新数据写入到高速缓冲存储器24b的维护区域中。通过第一端口 241b转送的更新数据未被写入该维护区域中。因此,即使在已通过维护 程序执行了向高速缓冲存储器24b的写入时,从运行处理器20a转送的 更新数据也可写入到高速缓冲存储器24b的运行区域中,从而使得存储 在运行处理器20a的高速缓冲存储器24a的运行区域的内容与备用处理 器20b的高速缓冲存储器24b的运行区域中的内容彼此一致。
图5是在根据第二实施方式的双工系统中运行处理器20a的高速缓 冲存储器控制器23a和备用处理器20b的高速缓冲存储器控制器23b的 处理过程的流程图。高速缓冲存储器控制器23a从CPU 21a接收到向高 速缓冲存储器24a写入更新数据的指令(步骤S501)。高速缓冲存储器控 制器23a通过第一端口 241a向高速缓冲存储器24a的运行区域写入更新数据(步骤S502)。
另一方面,高速缓冲存储器控制器23a对该更新数据执行奇偶校验 检查(步骤S503),并确定该更新数据是否正常(步骤S504)。当确定该 更新数据不正常时(步骤S504:否),高速缓冲存储器控制器23a不向备 用处理器20b转送该更新数据,而是结束该处理。
当确定该更新数据正常时(步骤S504:是),高速缓冲存储器控制 器23a向备用处理器20b的高速缓冲存储器控制器23b转送该更新数据 (步骤S505)。备用处理器20b的高速缓冲存储器控制器23b接收该更新 数据(步骤S506),并将该更新数据通过第一端口 241b写入到高速缓冲 存储器24b的运行区域中(步骤S507)。
当运行处理器20a出现故障时用于切换该系统的方法与第一实施方 式类似。即,运行处理器20a的故障监测器22a向CPU 21a和21b两者 提供复位指令,并向备用处理器20b的故障监测器22b发送表示发生故 障的数据。在提供复位指令时,CPU 21a和21b将运行处理器20a切换为 备用系统,并将备用处理器20b切换为运行系统。
在切换后,运行处理器20b (以前的备用系统)的故障监测器22b 和备用处理器20a (以前的运行系统)的故障监测器22a向高速缓冲存储 器控制器23a和23b发送表示包括故障监测器22b和22a的系统是运行 系统还是备用系统的数据。由此,运行处理器20b (以前的备用系统)的 高速缓冲存储器控制器23b将用于向高速缓冲存储器24b写入的端口从 第二端口切换为第一端口。由此,将根据来自CPU 21b的指令对高速缓 冲存储器24b的更新数据写入到高速缓冲存储器24b的运行区域中。
另一方面,备用处理器20a(以前的运行系统)的高速缓冲存储器控 制器23a将用于向高速缓冲存储器24a写入的端口从第一端口切换为第 二端口。由此,将根据来自CPU 21a的指令对高速缓冲存储器24a的更 新数据仅写入维护区域,所述维护区域是用于根据维护程序进行写入的 区域。
在切换后,运行处理器20b (以前的备用系统)的CPU 21b执行将 写入高速缓冲存储器24b中的更新数据刷新到主存储器25b中的处理,
并再继续所述处理。
如上所述,根据第二实施方式,仅当写入到运行处理器20a的高速 缓冲存储器24a中的内容是正常数据时,才可将该数据转送给备用处理 器20b的高速缓冲存储器24b,从而可以防止在处理器切换后由于错误数 据的转送而导致不能再继续所述处理。
权利要求
1、 一种双工系统,所述双工系统包括 运行处理器,其主要执行计算;和备用处理器,其在所述运行处理器发生故障时执行计算;其中 所述运行处理器和所述备用处理器分别包括 主存储器;存储器控制器,其对所述主存储器的操作进行控制; 高速缓冲存储器,其具有多个端口,通过所述多个端口可以 同时读取并写入数据;高速缓冲存储器控制器,其对通过所述多个端口读取和写入 的数据进行中继,并对从所述高速缓冲存储器读取数据和向所述 高速缓冲存储器写入数据进行控制;故障监测器,其对包括该故障监测器的处理器中发生故障进 行监测,并且当包括该故障监测器的处理器中发生故障时,向另 一处理器通知发生故障,并且 所述运行处理器的所述高速缓冲存储器控制器还包括用于在对待写 入到所述运行处理器的所述高速缓冲存储器中的数据进行中继时,将所 述数据转送到所述备用处理器的所述高速缓冲存储器控制器的装置; 所述备用处理器的所述高速缓冲存储器控制器还包括 用于接收从所述运行处理器的所述高速缓冲存储器控制器转送来的 数据的装置;用于通过使用所述多个端口中的一个将所接收的数据写入到所述备 用处理器的所述高速缓冲存储器中的装置;以及用于通过使用与用于写入所接收的数据的端口不同的端口,将由包 括所述备用处理器的所述高速缓冲存储器控制器的处理器产生的数据写 入到所述备用处理器的所述高速缓冲存储器中的装置;其中当所述故障监测器确定在所述运行处理器中己发生故障时,执行在 所述运行处理器与所述备用处理器之间的切换。
2、 根据权利要求1所述的双工系统,其中,所述运行处理器的所述高速缓冲存储器控制器还包括用于确定待写入到所述运行处理器的所述高速缓冲存储器中的数据是否正常的装置;其中当确定所述数据正常时,将该数据写入到所述运行处理器的所述高 速缓冲存储器中,并将该数据转送到所述备用处理器的所述高速缓冲存 储器控制器。
3、 根据权利要求1所述的双工系统,其中,所述运行处理器的所述 高速缓冲存储器控制器还包括用于在因写入到所述运行处理器的所述高 速缓冲存储器中的数据而发生溢出时,将已写入所述高速缓冲存储器中 的数据转送到所述运行处理器的所述主存储器控制器的装置;所述运行处理器的所述主存储器控制器还包括用于将从所述运行处 理器的所述高速缓冲存储器控制器接收的数据写入到所述运行处理器的 所述主存储器中,并且将所述数据转送到所述备用处理器的所述主存储 器控制器的装置;并且所述备用处理器的所述主存储器控制器还包括用于将所接收的数据 写入到所述备用处理器的所述主存储器中的装置。
4、 一种处理器切换方法,所述处理器切换方法用于在主要执行计算 的运行处理器与当所述运行处理器中发生故障时执行计算的备用处理器 之间执行切换,所述处理器切换方法包括以下步骤当通过所述运行处理器的高速缓冲存储器控制器对数据进行中继 时,将待写入到所述运行处理器的高速缓冲存储器中的数据转送到所述 备用处理器的高速缓冲存储器控制器;通过所述备用处理器的所述高速缓冲存储器控制器来接收所转送的 数据;通过使用所述备用处理器的高速缓冲存储器所具有的多个端口中的 一个,来将所接收的数据写入到所述备用处理器的所述高速缓冲存储器 中;通过使用与用于写入所接收的数据的端口不同的端口 ,将所述备用 处理器产生的数据写入到所述高速缓冲存储器中;确定在所述运行处理器中是否发生故障;以及当确定在所述运行处理器中已发生故障时,执行在所述运行处理器 与所述备用处理器之间的切换。
5、 根据权利要求4所述的处理器切换方法,所述处理器切换方法还 包括以下步骤确定待写入到所述运行处理器的所述高速缓冲存储器中的数据是否 正常;以及当确定所述数据正常时,将该数据写入到所述高速缓冲存储器中, 并且将该数据转送到所述备用处理器的所述高速缓冲存储器控制器。
6、 根据权利要求4所述的处理器切换方法,所述处理器切换方法还包括以下步骤-当因写入到所述运行处理器的所述高速缓冲存储器中的数据而发生 溢出时,将已写入到所述高速缓冲存储器中的数据转送到所述运行处理 器的所述主存储器控制器;将转送到所述主存储器控制器的数据写入到所述运行处理器的所述 主存储器中,并将所述数据转送到所述备用处理器的所述主存储器控制 器;以及将转送到所述主存储器控制器的数据写入到所述备用处理器的所述 主存储器。
全文摘要
本发明公开了一种双工系统和处理器切换方法。对在运行处理器和备用处理器任何一个中发生的故障进行监测,并且当所述运行处理器中发生故障时,执行向所述备用处理器的切换。每个处理器的高速缓冲存储器均具有多个端口,通过所述多个端口可以同时读取并写入数据。所述运行处理器的高速缓冲存储器控制器通过使用与用于进行更新的端口不同端口,将用于所述运行处理器的高速缓冲存储器的更新数据转送到所述备用处理器的高速缓冲存储器。所述备用处理器的高速缓冲控制器通过使用与用于进行更新的端口不同的端口,将所接收的更新数据写入到所述备用处理器的高速缓冲存储器中。
文档编号G06F12/08GK101122877SQ20071014037
公开日2008年2月13日 申请日期2007年8月10日 优先权日2006年8月10日
发明者山口邦男, 植村和纪, 河崎直树, 田村亮子, 筑地英一 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1