JP5718600B2 - 情報処理システム、および、情報処理方法 - Google Patents

情報処理システム、および、情報処理方法 Download PDF

Info

Publication number
JP5718600B2
JP5718600B2 JP2010202724A JP2010202724A JP5718600B2 JP 5718600 B2 JP5718600 B2 JP 5718600B2 JP 2010202724 A JP2010202724 A JP 2010202724A JP 2010202724 A JP2010202724 A JP 2010202724A JP 5718600 B2 JP5718600 B2 JP 5718600B2
Authority
JP
Japan
Prior art keywords
information processing
program
processing apparatus
instruction
register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010202724A
Other languages
English (en)
Other versions
JP2012059098A (ja
Inventor
仁貴 伊藤
仁貴 伊藤
聡 土屋
聡 土屋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Communication Systems Ltd
Original Assignee
NEC Communication Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Communication Systems Ltd filed Critical NEC Communication Systems Ltd
Priority to JP2010202724A priority Critical patent/JP5718600B2/ja
Publication of JP2012059098A publication Critical patent/JP2012059098A/ja
Application granted granted Critical
Publication of JP5718600B2 publication Critical patent/JP5718600B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、情報処理システム、および、情報処理方法に関する。
マルチプロセッサシステムの技術の一例が特許文献1に記載されている。特許文献1の技術は、2つのプロセッサが、それぞれ異なるタスクを実行するスプリットモードと、同一のタスクを実行するロックモードとを設けている。
スプリットモードからロックモードへの切り替えに際しては、第1のプロセッサが、切り替え指令を含むプログラムコードを実行する。このプログラムコード実行の結果、モード切り替えユニットが、第1のプロセッサを停止させ、第2のプロセッサに同期化の意図を通知する。
第2のプロセッサは、通知にしたがい、タスクを終了し、切り替え指令を含むプログラムコードを実行する。このプログラムコード実行の結果、モード切り替えユニットが、第1のプロセッサの待機を解除する。さらに、モード切り替えユニットは、1.5クロック遅れて第2のプロセッサに対する待機を解除する。2つのプロセッサは、1.5クロックのクロックオフセットを伴って同期して動作する。また、本発明は、同期化のためにNOPを利用することを示している。
特表2008−518309号公報
上述した特許文献1の技術においては、プログラムの実行引き継ぎに多くの時間がかかるという問題点があった。
その理由は、特許文献1は、以前に実行中であったタスクをどのように、途中から再実行するかの技術を開示していないからである。特許文献1の技術は、実行中のタスクを停止し、切り替え指令を含むプログラムコードを実行する構成である。すなわち、再度タスクを最初から実行することになるからである。
本発明の目的は、上記問題点を解決する情報処理システム、および、情報処理方法を提供することである。
本発明の情報処理システムは、第1の情報処理装置と、第2の情報処理装置と、前記第1の情報処理装置内のソフトウェア可視レジスタの内容を前記第2の情報処理装置のソフトウェア可視レジスタに出力する転送用パスとを含む。
本発明の情報処理方法は、第1の情報処理装置内のソフトウェア可視レジスタの内容を転送用パスを用いて第2の情報処理装置のソフトウェア可視レジスタに出力する。
本発明は、プログラムの実行引き継ぎが短時間で実施できるという効果をもつ。
本発明の第1の実施の形態の構成を示すブロック図である。 本発明の第2の実施の形態の構成を示すブロック図である。 本発明の第3の実施の形態の構成を示すブロック図である。 本発明の第4の実施の形態の構成を示すブロック図である。 本発明の第5の実施の形態の構成を示すブロック図である。 本発明の第5の実施の形態の動作を示すタイムチャートである。 本発明の第5の実施の形態のプロセッサの内部構成を示すブロック図である。 本発明の第6の実施の形態のプロセッサの内部構成を示すブロック図である。
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。
図1は、本発明の第1の実施の形態の構成を示すブロック図である。第1の実施の形態の情報処理システム101は、第1の情報処理装置01a、第2の情報処理装置01b、および、転送用パス01pを含む。また、第1の情報処理装置01aは、ソフトウェア可視レジスタ09aを含む。第2の情報処理装置01bは、ソフトウェア可視レジスタ09bを含む。
ソフトウェア可視レジスタ09a、09bは、アーキテクチャで規定される内容を保持するレジスタであり、たとえば、機械語命令で指定可能なレジスタである。
転送用パス01pは、ソフトウェア可視レジスタ09aの内容(または、ソフトウェア可視レジスタ09aに書き込まれる内容)をソフトウェア可視レジスタ09bに出力する。転送用パス01pは、内容を常時出力してもよいし、そうでなくてもよい。
ここで、第1の情報処理装置01a(または、第2の情報処理装置01b)が、プログラムの命令を実行している状態のことを稼働状態と呼ぶ。また、稼働状態でない場合を非稼働状態と呼ぶ。
第2の情報処理装置01bが非稼働状態の場合、ソフトウェア可視レジスタ09bは、転送用パス01p上の内容を取り込む。
第1の情報処理装置01aが稼働状態であり、第2の情報処理装置01bが非稼働状態の場合に、第1の情報処理装置01aで実行されていたプログラムを途中から第2の情報処理装置01bに実行させ稼働状態にすることを、実行引き継ぎと呼ぶ。
たとえば、第1の情報処理装置01aにおいて、障害が発生した場合に、第1の情報処理装置01aは、「ある命令」まで実行しプログラムを中断して、実行引き継ぎが実施される。
また、たとえば、第1の情報処理装置01aと第2の情報処理装置01bとが通常同一プログラムを実行し比較が実施される情報処理システム101が可能である。第2の情報処理装置01bに故障が発生し、第1の情報処理装置01aがプログラムの実行を続け、第2の情報処理装置01bは停止し修理が実施される場合がある。
そして、第2の情報処理装置01bの修理が完了すると、第1の情報処理装置01aは、プログラムを中断して、第2の情報処理装置01bへのプログラムの実行引き継ぎが実施される。
実行引き継ぎが完了するまで、第2の情報処理装置01bのソフトウェア可視レジスタ09bは、転送用パス01p上の内容を取り込む。すなわち、ソフトウェア可視レジスタ09bの内容は、第1の情報処理装置01aが「ある命令」まで実行した結果のソフトウェア可視レジスタ09aの内容と同一となる。
実行引き継ぎが完了すると、第2の情報処理装置01bは、「ある命令の次の命令」から、第1の情報処理装置01aで実行されていたプログラムを実行する。ここで、ソフトウェア可視レジスタ09bの内容は、「ある命令」まで実行した結果なので、「ある命令の次の命令」が実行可能となる。
実行引き継ぎに際しては、他の処理(たとえば、図示しない主記憶装置内のデータの転送等)が実施されることが可能である。実行引き継ぎ後、第1の情報処理装置01aは、引き続きプログラムを実行してもよいし、他の処理を実行してもよい。
次に、第1の実施の形態の効果について説明する。
第1の実施の形態は、第1の情報処理装置01aのソフトウェア可視レジスタ09aの内容を第2の情報処理装置01bのソフトウェア可視レジスタ09bに出力する転送用パス01pを含む構成である。したがって、第1の実施の形態は、ソフトウェア可視レジスタ09bに内容が実行引き継ぎ開始時に引き継がれているので、プログラムの実行引き継ぎが短時間で実施できるという効果をもつ。
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。
図2は、本発明の第2の実施の形態の構成を示すブロック図である。第2の実施の形態の情報処理システム102は、第1の実施の形態の1種である。情報処理システム102は、第1の情報処理装置01a、第2の情報処理装置01b、および、転送用パス02pを含む。
また、第1の情報処理装置01aは、汎用レジスタ02aを含み、第2の情報処理装置01bは、汎用レジスタ02bを含む。汎用レジスタ02a、02bは、ソフトウェア可視レジスタ09aの1種であり、機械語命令で指定可能なレジスタである。
転送用パス02pは、第1の実施の形態の転送用パス01pの1種であり、汎用レジスタ02aの内容(または、汎用レジスタ02aに書き込まれる内容)を汎用レジスタ02bに出力する。
第2の情報処理装置01bが非稼働状態の場合、汎用レジスタ02bは、転送用パス02p上の内容を取り込む。
次に、第2の実施の形態の効果について説明する。
第2の実施の形態は、第1の情報処理装置01aの汎用レジスタ02aの内容を第2の情報処理装置01bの汎用レジスタ02bに出力する転送用パス02pを含む構成である。したがって、第2の実施の形態は、汎用レジスタ02bに内容が実行引き継ぎ開始時に引き継がれているので、プログラムの実行引き継ぎが短時間で実施できるという効果をもつ。
次に、本発明の第3の実施の形態について図面を参照して詳細に説明する。
図3は、本発明の第3の実施の形態の構成を示すブロック図である。第3の実施の形態の情報処理システム103は、第1の実施の形態の1種である。情報処理システム103は、第1の情報処理装置01a、第2の情報処理装置01b、および、転送用パス03pを含む。
また、第1の情報処理装置01aは、プログラムカウンタ03a、および、プログラムステータスワードを格納するプログラムステータスワードレジスタ04aを含む。第2の情報処理装置01bは、プログラムカウンタ03b、および、プログラムステータスワードを格納するプログラムステータスワードレジスタ04bを含む。
転送用パス03pは、第1の実施の形態の転送用パス01pの1種である。転送用パス03pは、プログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容を、それぞれ、プログラムカウンタ03b、プログラムステータスワードレジスタ04bに出力する。かわりに、転送用パス03pは、プログラムカウンタ03a、プログラムステータスワードレジスタ04aに書き込まれる内容を出力してもよい。転送用パス03pは、常時出力してもよいし、そうでなくてもよい。
第2の情報処理装置01bが非稼働状態の場合、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bは、それぞれ、転送用パス03p上の対応する内容を取り込む。すなわち、プログラムカウンタ03b、プログラムステータスワードレジスタ04bの内容は、それぞれ、プログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容と同一になる。
次に、第3の実施の形態の効果について説明する。
第3の実施の形態は、第1の情報処理装置01aのプログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容を第2の情報処理装置01bのプログラムカウンタ03b、プログラムステータスワードレジスタ04bに出力する転送用パス03pを含む構成である。したがって、第3の実施の形態は、プログラムカウンタ03b、プログラムステータスワードレジスタ04bに内容が実行引き継ぎ開始時に引き継がれているので、プログラムの実行引き継ぎが短時間で実施できるという効果をもつ。
次に、本発明の第4の実施の形態について図面を参照して詳細に説明する。
図4は、本発明の第4の実施の形態の構成を示すブロック図である。第4の実施の形態の情報処理システム104は、第2の実施の形態、かつ、第3の実施の形態である。
すなわち、情報処理システム104は、転送用パス02p、および、転送用パス03pを含む。
第2の情報処理装置01bが非稼働状態の場合、第2の情報処理装置01bの汎用レジスタ02bは、転送用パス02p上の内容を取り込む。すなわち、汎用レジスタ02bの内容は、汎用レジスタ02aの内容と同一になる。
第2の情報処理装置01bが非稼働状態の場合、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bは、それぞれ、転送用パス03p上の対応する内容を取り込む。すなわち、プログラムカウンタ03b、プログラムステータスワードレジスタ04bの内容は、それぞれ、プログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容と同一になる。
次に、第4の実施の形態の効果について説明する。
第4の実施の形態は、第1の情報処理装置01aの汎用レジスタ02aの内容を第2の情報処理装置01bの汎用レジスタ02bに出力する転送用パス02pを含む構成である。
さらに、第4の実施の形態は、第1の情報処理装置01aのプログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容を第2の情報処理装置01bのプログラムカウンタ03b、プログラムステータスワードレジスタ04bに出力する転送用パス03pを含む構成である。したがって、第4の実施の形態は、汎用レジスタ02b、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bに内容が実行引き継ぎ開始時に引き継がれているので、プログラムの実行引き継ぎが短時間で実施できるという効果をもつ。
次に、本発明の第5の実施の形態について図面を参照して詳細に説明する。
図5は、本発明の第5の実施の形態の構成を示すブロック図である。第5の実施の形態の情報処理システム105は、第4の実施の形態の1種である。情報処理システム105は、動作系情報処理装置10a、待機系情報処理装置10b、引き継ぎ制御装置11c、パス中継装置12c、転送用パス02p、および、転送用パス03pを含む。さらに、情報処理システム105は、制御パス13p、制御パス14p、制御パス15p、制御パス16p、および、コピー用データパス17pを含む。
ここで、動作系とは、通常、稼働状態であるシステムを意味する。待機系とは、通常、待機している(非稼働状態の1種であり、プログラムの命令を実行していない状態)システムを意味する。
動作系情報処理装置10aは、第4の実施の形態の第1の情報処理装置01aの1種である。待機系情報処理装置10bは、第4の実施の形態の第2の情報処理装置01bの1種である。
動作系情報処理装置10aは、プロセッサ20a、主記憶制御装置30a、および、主記憶装置40aを含む。さらに、動作系情報処理装置10aは、ライトデータパス31a、リードデータパス32a、ライトデータパス41a、および、リードデータパス42aを含む。
待機系情報処理装置10bは、プロセッサ20b、主記憶制御装置30b、および、主記憶装置40bを含む。さらに、待機系情報処理装置10bは、ライトデータパス31b、リードデータパス32b、ライトデータパス41b、および、リードデータパス42bを含む。
プロセッサ20aは、パイプライン処理回路21a、汎用レジスタ02a、プログラムカウンタ03a、および、プログラムステータスワードレジスタ04aを含む。プロセッサ20bは、パイプライン処理回路21b、汎用レジスタ02b、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bを含む。
また、プロセッサ20a、20bは、他に演算回路等を含むが、本実施の形態の特徴に関係しないので、図示しない。
パイプライン処理回路21a、21bは、機械語命令をパイプライン制御で処理する回路であり、たとえば、5ステージで処理する。たとえば、5ステージは、命令フェッチ、命令デコード、実行(演算の実行を含む)、メモリアクセス、および、レジスタライトバックである。
プロセッサ20a、20bは、プログラムを実行する処理を行う。主記憶制御装置30a、30bは、それぞれ、プロセッサ20a、20bの指示にしたがい、主記憶装置40a、40bに対して書き込み、読み出しの処理を行う。主記憶装置40a、40bは、プログラム、および、プログラムで扱われるデータを格納する。
また、実行引き継ぎの際に、主記憶制御装置30aは、動作系の主記憶装置40a内のデータを待機系の主記憶装置40bに転送する。主記憶装置40bは、主記憶装置40aから主記憶制御装置30aを介して転送されてきたデータを内部に書き込む。すなわち、実行引き継ぎにより、動作系の主記憶装置40a内のデータが待機系の主記憶装置40bにコピーされる。
ライトデータパス31aは、プロセッサ20aからライトデータを主記憶制御装置30aに出力するためのものである。主記憶制御装置30aは、そのライトデータをライトデータパス41aを使用して主記憶装置40aに出力する。
ライトデータパス31bは、プロセッサ20bからライトデータを主記憶制御装置30bに出力するためのものである。主記憶制御装置30bは、そのライトデータをライトデータパス41bを使用して主記憶装置40bに出力する。
リードデータパス42aは、主記憶装置40aから主記憶制御装置30aにリードデータ(命令を含む)を出力するためのものである。主記憶制御装置30aは、そのリードデータをリードデータパス32aを使用してプロセッサ20aに出力する。
リードデータパス42bは、主記憶装置40bから主記憶制御装置30bにリードデータ(命令を含む)を出力するためのものである。主記憶制御装置30bは、そのリードデータをリードデータパス32bを使用してプロセッサ20bに出力する。
引き継ぎ制御装置11cは、実行引き継ぎに際し、実行引き継ぎのための指示等を制御パス13p、制御パス14p、制御パス15p、制御パス16pを使用して出力する。
パス中継装置12cは、制御パス15p上の指示にしたがい、転送用パス02p、および、転送用パス03p上の内容の転送、非転送の制御を行う。パス中継装置12cは、実行引き継ぎが実施され、待機系情報処理装置10bが稼働状態であると、たとえば、待機系情報処理装置10bに、取り込みを抑止させるための抑止指示を出力する。
抑止指示が出力されていない場合、待機系のプロセッサ20bは、転送用パス02p、および、転送用パス03p上の内容の取り込みを行う。すなわち、非稼働状態の場合、待機系のプロセッサ20bの汎用レジスタ02bは、動作系のプロセッサ20aの汎用レジスタ02aと同一の内容を保持する。
さらに、非稼働状態の場合、プロセッサ20bのプログラムカウンタ03b、プログラムステータスワードレジスタ04bは、それぞれ、プロセッサ20aのプログラムカウンタ03a、プログラムステータスワードレジスタ04aと同一の内容を保持する。
抑止指示は、転送用パス02p、および、転送用パス03pのどちらか片方に載せられてもよいし、両方に載せられてもよい。また、抑止指示の代わりに、転送用パス02p、および、転送用パス03p上の内容の取り込みを実施させるための取り込み指示でもよい。
次に、以上の構成による第5の実施の形態の動作について図面を参照して詳細に説明する。
図6は、第5の実施の形態の動作を示すタイムチャートである。図6は、特に、プロセッサ20a、20bのパイプライン処理の動作を示す。図6において、IF、ID、EX、MEM、WBは、それぞれ、命令フェッチ、命令デコード、実行、メモリアクセス、および、レジスタライトバックの各ステージを示す。
t、t+1、・・・、t+k、・・・は、サイクル(たとえば、クロックサイクル)を示す。n、n+1、・・・、n+10は、それぞれ、プログラムのn番目、n+1番目、・・・、n+10番目の命令を示す。たとえば、t+3のEXはn+5であり、これは、n+5番目の命令が、サイクルt+3において、実行ステージにあることを示す。NOP(1)、NOP(2)、・・・NOP(m)は、それぞれ、1番目、2番目、・・・、m番目のNOP命令を示す。
図7は、プロセッサ20aの内部構成を示すブロック図である。
サイクルt〜t+kの期間、動作系のプロセッサ20aは、稼働状態(ここでは、NOP命令実行中も含める)であり、待機系のプロセッサ20bは、非稼働状態である。
この間、パス中継装置12cは、抑止指示を出力しない。よって、待機系のプロセッサ20bの汎用レジスタ02bは、転送用パス02p上の内容を取り込む。また、プログラムカウンタ03b、プログラムステータスワードレジスタ04bは、転送用パス03p上の対応する内容を取り込む。
したがって、汎用レジスタ02b、プログラムカウンタ03b、プログラムステータスワードレジスタ04bの内容は、それぞれ、汎用レジスタ02a、プログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容と同一となる。
次に、何らかの事態(たとえば、動作系情報処理装置10aの障害)が発生し、実行引き継ぎが要請されると、引き継ぎ制御装置11cは、制御パス16pに実行引き継ぎのためのデータコピー指示を載せる。主記憶制御装置30aは、データコピー指示を受け取ると、リードデータパス42aを介して主記憶装置40a内のデータを順次読み出し、コピー用データパス17p上にコピー指示と共に出力する。
主記憶装置40bは、主記憶制御装置30aからコピー指示を受け取ると、コピー用データパス17p上のデータを順次内部に書き込む。
次に、引き継ぎ制御装置11cは、サイクルt+2において、制御パス13p上へNOP挿入指示の出力を開始する。NOP挿入指示は、プロセッサ20aにNOP(No Operation)命令を挿入させるためのものである。プロセッサ20aは、NOP挿入指示が出力されると、NOP命令の挿入を開始する。プロセッサ20aは、NOP挿入指示が出力されている間、NOP命令の挿入を行う。この間、NOP命令の前に実行中であったプログラムの命令の実行は、一時中断される。
ここで、図7を参照して、プロセッサ20aにおけるNOP命令の挿入時の動作について説明する。プロセッサ20aは、プログラムカウンタ03a、加算器51a、命令デコーダ52a、NOP命令生成回路53a、選択回路54a、および、選択回路55aを含む。
通常、プログラム実行時には、選択回路54aは、内部パス61a上の「加算器51aの出力である命令アドレス」を選択し内部パス63aに出力する。ここでは、説明を簡単にするために、分岐命令の実行に関する機能の説明は省略する。内部パス61a上の「加算器51aの出力である命令アドレス」は、主記憶制御装置30aに出力される。主記憶装置40aのこの命令アドレスで示される番地から命令が読み出され、リードデータパス32a上に載せられ選択回路55aに入力される。
制御パス13pにNOP挿入指示が載せられると、選択回路54aは、内部パス62a上の「プログラムカウンタ03aの出力である命令アドレス」を選択し内部パス63aに出力する。
NOP命令生成回路53aは、固定値としてNOP命令を生成し内部パス64a上に出力する。通常、プログラム実行時には、選択回路55aは、リードデータパス32a上の「主記憶制御装置30aの出力である命令」を選択し内部パス65aに出力する。
制御パス13pにNOP挿入指示が載せられると、選択回路55aは、内部パス64a上の「NOP命令生成回路53aの出力であるNOP命令」を選択し内部パス65aに出力する。よって、制御パス13pにNOP挿入指示が載せられると、命令デコーダ52aは、NOP命令を入力しデコードすることになる。
ここで、プロセッサ20aは、主記憶制御装置30aに対し、命令フェッチ要求の送出を抑止し、主記憶制御装置30aからの命令リプライを自動生成する制御を行うことが可能である。
次に、引き継ぎ制御装置11cは、主記憶装置40a内のデータの主記憶装置40bへのコピーが完了する(サイクルt+k−1)と、制御パス15p上に、転送用パス02p、03pを無効とするためのパス無効指示を出力する(サイクルt+k)。
パス中継装置12cは、制御パス15p上のパス無効指示を受け取ると、待機系のプロセッサ20bに、転送用パス02p、および、転送用パス03p上の内容の取り込みを抑止させるための抑止指示を出力する(サイクルt+k)。
待機系のプロセッサ20bの汎用レジスタ02b、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bは、抑止指示を受け取ると、転送用パス02p、および、転送用パス03p上の内容の取り込みを中止する(サイクルt+k)。NOP命令の実行では、汎用レジスタ02a、プログラムカウンタ03a、および、プログラムステータスワードレジスタ04aは、変化しない。したがって、n+5番目の命令の実行完了時の内容が、汎用レジスタ02b、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bに保持され、引き継がれたことになる。
また、引き継ぎ制御装置11cは、NOP挿入指示の制御パス13pへの出力を終了する(サイクルt+k)。また、引き継ぎ制御装置11cは、稼働開始指示を、制御パス14p上に出力する(サイクルt+k)。
動作系のプロセッサ20aにおいては、NOP挿入指示が出力されなくなると、選択回路54aが加算器51aの出力を選択し、プログラムカウンタ03aには、n+6番目の命令のアドレスが取り込まれる(サイクルt+k+1)。そして、動作系のプロセッサ20aは、中断されたプログラムのn+6番目の命令から実行を開始する(サイクルt+k+1)。
待機系のプロセッサ20bは、制御パス14p上に稼働開始指示が出力されると、プログラムカウンタ03bに保持されているn+6番目の命令のアドレスにしたがって、プログラムの実行を開始する(サイクルt+k+1)。このようにして実行引き継ぎが実施される。
コピー中、または、コピー完了後(ただし、待機系情報処理装置10bが、非稼働状態)に、プロセッサ20aが、主記憶装置40aに対するデータの書き込みを行う可能性がある。
この場合、主記憶制御装置30aは、コピーの動作を一時中断し、主記憶装置40aにそのデータを書き込ませ、同一データをコピー用データパス17p上に載せて、主記憶装置40bに書き込ませる。
ただし、コピーの開始をn+5番目の命令の実行が完了し、NOP命令の挿入が開始され後とする構成にすれば、このような制御を行う必要はない。
次に、第5の実施の形態の効果について説明する。
第5の実施の形態は、稼働状態の動作系情報処理装置10aの汎用レジスタ02aの内容を待機系情報処理装置10bの汎用レジスタ02bに出力する転送用パス02pを含む構成である。
さらに、第5の実施の形態は、稼働状態の動作系情報処理装置10aのプログラムカウンタ03a、プログラムステータスワードレジスタ04aの内容をプログラムカウンタ03b、プログラムステータスワードレジスタ04bに出力する転送用パス03pを含む構成である。
したがって、第5の実施の形態は、汎用レジスタ02b、プログラムカウンタ03b、および、プログラムステータスワードレジスタ04bに内容が実行引き継ぎ開始時に引き継がれているので、プログラムの実行引き継ぎが短時間で実施できるという効果をもつ。
また、第5の実施の形態は、プログラムの実行引き継ぎに際し、稼働状態の動作系情報処理装置10aによって実行中のプログラムの命令列の途中にNOP命令を挿入する構成である。
したがって、第5の実施の形態は、制御が容易であるという効果をもつ。
次に、本発明の第6の実施の形態について図面を参照して詳細に説明する。第6の実施の形態の全体構成は、図5に示される第5の実施の形態の全体構成と同一である。動作系情報処理装置10aのプロセッサ20aの内部構成が異なる。
図8は、第6の実施の形態のプロセッサ20aの内部構成を示すブロック図である。プロセッサ20aは、第5の実施の形態のプロセッサ20aにF/F56a(フリップフロップ)を追加した構成である。
F/F56aは、引き継ぎ制御装置11cから制御パス13p上に出力されたNOP挿入指示の立ち上がりを検出してセットされる。したがって、制御パス13p上のNOP挿入指示は、パルスでよい。F/F56aはセット状態のとき、内部NOP挿入指示を、内部パス66a上に出力する。プロセッサ20aは、内部NOP挿入指示をNOP挿入指示として認識する。したがって、F/F56aがセット状態のとき、NOP命令の挿入が行われる。
実行引き継ぎが完了し、待機系情報処理装置10bがプログラム実行を引き継いでも、プロセッサ20aは、NOP命令を実行し続ける。そして、たとえば、プロセッサ20aは、割り込み等を入力すると、F/F56aをリセットし、NOP命令の挿入を終了し、割り込みルーチンの実行を開始する。
次に、第6の実施の形態の効果について説明する。
第6の実施の形態は、動作系情報処理装置10aが実行引き継ぎ後もNOP命令を挿入し実行する構成である。したがって、たとえば、動作系情報処理装置10aに障害が発生して実行引き継ぎが実施された場合に、第5の実施の形態に比べて、障害が再度発生する確率が低いという効果をもつ。
上記の実施の形態の一部、または、全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
第1の情報処理装置と、第2の情報処理装置と、前記第1の情報処理装置内のソフトウェア可視レジスタの内容を前記第2の情報処理装置のソフトウェア可視レジスタに出力する転送用パスと、
を含むことを特徴とする情報処理システム。
(付記2)
前記第1の情報処理装置内の汎用レジスタの内容を前記第2の情報処理装置の汎用レジスタに出力する前記転送用パスを含むことを特徴とする付記1の情報処理システム。
(付記3)
前記第1の情報処理装置内のプログラムカウンタ、および、プログラムステータスワードレジスタの内容を、それぞれ、前記第2の情報処理装置のプログラムカウンタ、および、プログラムステータスワードレジスタに出力する前記転送用パスを含むことを特徴とする付記1の情報処理システム。
(付記4)
前記第1の情報処理装置内の前記汎用レジスタの内容を前記第2の情報処理装置の前記汎用レジスタに出力する前記転送用パスを含むことを特徴とする付記3の情報処理システム。
(付記5)
動作系の前記第1の情報処理装置と、待機系の前記第2の情報処理装置と、
を含むことを特徴とする付記4の情報処理システム。
(付記6)
自身が非稼働状態の場合、前記転送用パスに出力されている前記動作系の前記第1の情報処理装置の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタの内容をそれぞれ、自身の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタに取り込み、
前記動作系の前記第1の情報処理装置からのプログラムの実行引き継ぎにより自身が非稼働状態から稼働状態になると、
前記転送用パスに出力されている前記動作系の前記第1の情報処理装置の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタの内容の取り込みを停止する前記待機系の前記第2の情報処理装置を、
含むことを特徴とする付記5の情報処理システム。
(付記7)
プログラムの実行引き継ぎに際し、実行中のプログラムの命令列の途中のある命令まで実行し、次にNOP命令を挿入、実行する前記動作系の前記第1の情報処理装置を、
含むことを特徴とする付記6の情報処理システム。
(付記8)
NOP命令の挿入、実行が終了すると、前記ある命令の次の命令からプログラムを実行する前記動作系の前記第1の情報処理装置と、
プログラムの実行引き継ぎにより稼働状態になると、前記ある命令の前記次の命令からプログラムを実行する前記待機系の前記第2の情報処理装置と、
を含むことを特徴とする付記7の情報処理システム。
(付記9)
プログラムの実行引き継ぎが完了しても、NOP命令の挿入、実行を続ける前記動作系の前記第1の情報処理装置と、
プログラムの実行引き継ぎにより稼働状態になると、前記ある命令の次の命令からプログラムを実行する前記待機系の前記第2の情報処理装置と、
を含むことを特徴とする付記7の情報処理システム。
(付記10)
第1の情報処理装置内のソフトウェア可視レジスタの内容を転送用パスを用いて第2の情報処理装置のソフトウェア可視レジスタに出力することを特徴とする情報処理方法。
(付記11)
前記第1の情報処理装置内の汎用レジスタの内容を前記転送用パスを用いて前記第2の情報処理装置の汎用レジスタに出力することを特徴とする付記10の情報処理方法。
(付記12)
前記第1の情報処理装置内のプログラムカウンタ、および、プログラムステータスワードレジスタの内容を、前記転送用パスを用いて、それぞれ、前記第2の情報処理装置のプログラムカウンタ、および、プログラムステータスワードレジスタに出力することを特徴とする付記10の情報処理方法。
(付記13)
前記第1の情報処理装置内の前記汎用レジスタの内容を前記転送用パスを用いて前記第2の情報処理装置の前記汎用レジスタに出力することを特徴とする付記12の情報処理方法。
(付記14)
待機系の前記第2の情報処理装置は、自身が非稼働状態の場合、前記転送用パスに出力されている動作系の前記第1の情報処理装置の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタの内容をそれぞれ、自身の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタに取り込み、
前記動作系の前記第1の情報処理装置からのプログラムの実行引き継ぎにより自身が非稼働状態から稼働状態になると、
前記転送用パスに出力されている前記動作系の前記第1の情報処理装置の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタの内容の取り込みを停止することを特徴とする付記13の情報処理方法。
(付記15)
前記動作系の前記第1の情報処理装置が、プログラムの実行引き継ぎに際し、実行中のプログラムの命令列の途中のある命令まで実行し、次にNOP命令を挿入、実行することを特徴とする付記14の情報処理方法。
(付記16)
前記動作系の前記第1の情報処理装置が、NOP命令の挿入、実行が終了すると、前記ある命令の次の命令からプログラムを実行し、
前記待機系の前記第2の情報処理装置が、プログラムの実行引き継ぎにより稼働状態になると、前記ある命令の前記次の命令からプログラムを実行することを特徴とする付記15の情報処理方法。
(付記17)
前記動作系の前記第1の情報処理装置が、プログラムの実行引き継ぎが完了しても、NOP命令の挿入、実行を続け、
前記待機系の前記第2の情報処理装置が、プログラムの実行引き継ぎにより稼働状態になると、前記ある命令の次の命令からプログラムを実行することを特徴とする付記15の情報処理方法。
01a 第1の情報処理装置
01b 第2の情報処理装置
01p 転送用パス
02a 汎用レジスタ
02b 汎用レジスタ
02p 転送用パス
03a プログラムカウンタ
03b プログラムカウンタ
03p 転送用パス
04a プログラムステータスワードレジスタ
04b プログラムステータスワードレジスタ
09a ソフトウェア可視レジスタ
09b ソフトウェア可視レジスタ
10a 動作系情報処理装置
10b 待機系情報処理装置
11c 引き継ぎ制御装置
12c パス中継装置
13p 制御パス
14p 制御パス
15p 制御パス
16p 制御パス
17p コピー用データパス
20a プロセッサ
20b プロセッサ
21a パイプライン処理回路
21b パイプライン処理回路
30a 主記憶制御装置
30b 主記憶制御装置
31a ライトデータパス
31b ライトデータパス
32a リードデータパス
32b リードデータパス
40a 主記憶装置
40b 主記憶装置
41a ライトデータパス
41b ライトデータパス
42a リードデータパス
42b リードデータパス
51a 加算器
52a 命令デコーダ
53a NOP命令生成回路
54a 選択回路
55a 選択回路
56a F/F
61a 内部パス
62a 内部パス
63a 内部パス
64a 内部パス
65a 内部パス
66a 内部パス
101 情報処理システム
102 情報処理システム
103 情報処理システム
104 情報処理システム
105 情報処理システム

Claims (8)

  1. 第1の情報処理装置と、第2の情報処理装置と、前記第1の情報処理装置内のソフトウェア可視レジスタの内容を前記第2の情報処理装置のソフトウェア可視レジスタに出力する転送用パスと、を含み、
    前記転送用パスは、前記第1の情報処理装置内のプログラムカウンタ、および、プログラムステータスワードレジスタの内容を、それぞれ、前記第2の情報処理装置のプログラムカウンタ、および、プログラムステータスワードレジスタに出力し、
    前記第1の情報処理装置内のプログラムカウンタの内容は、前記第1の情報処理装置で実行中のプログラムにおいて、最後に実行された命令の位置を示す情報である、ことを特徴とする情報処理システム。
  2. 前記第1の情報処理装置内の汎用レジスタの内容を前記第2の情報処理装置の汎用レジスタに出力する前記転送用パスを含むことを特徴とする請求項の情報処理システム。
  3. 動作系の前記第1の情報処理装置と、待機系の前記第2の情報処理装置と、を含むことを特徴とする請求項の情報処理システム。
  4. 自身が非稼働状態の場合、前記転送用パスに出力されている前記動作系の前記第1の情報処理装置の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタの内容をそれぞれ、自身の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタに取り込み、前記動作系の前記第1の情報処理装置からのプログラムの実行引き継ぎにより自身が非稼働状態から稼働状態になると、前記転送用パスに出力されている前記動作系の前記第1の情報処理装置の前記汎用レジスタ、前記プログラムカウンタ、および、前記プログラムステータスワードレジスタの内容の取り込みを停止する前記待機系の前記第2の情報処理装置を、含むことを特徴とする請求項の情報処理システム。
  5. プログラムの実行引き継ぎに際し、実行中のプログラムの命令列の途中のある命令まで実行し、次にNOP命令を挿入、実行する前記動作系の前記第1の情報処理装置を、含むことを特徴とする請求項の情報処理システム。
  6. NOP命令の挿入、実行が終了すると、前記ある命令の次の命令からプログラムを実行する前記動作系の前記第1の情報処理装置と、プログラムの実行引き継ぎにより稼働状態になると、前記ある命令の前記次の命令からプログラムを実行する前記待機系の前記第2の情報処理装置と、を含むことを特徴とする請求項の情報処理システム。
  7. プログラムの実行引き継ぎが完了しても、NOP命令の挿入、実行を続ける前記動作系の前記第1の情報処理装置と、プログラムの実行引き継ぎにより稼働状態になると、前記ある命令の次の命令からプログラムを実行する前記待機系の前記第2の情報処理装置と、を含むことを特徴とする請求項の情報処理システム。
  8. 第1の情報処理装置内のプログラムカウンタ、および、プログラムステータスワードレジスタの内容を転送用パスを用いて、それぞれ、第2の情報処理装置のプログラムカウンタ、および、プログラムステータスワードレジスタに出力し、
    前記第1の情報処理装置内のプログラムカウンタの内容は、前記第1の情報処理装置で実行中のプログラムにおいて、最後に実行された命令の位置を示す情報である、ことを特徴とする情報処理方法。
JP2010202724A 2010-09-10 2010-09-10 情報処理システム、および、情報処理方法 Active JP5718600B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010202724A JP5718600B2 (ja) 2010-09-10 2010-09-10 情報処理システム、および、情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010202724A JP5718600B2 (ja) 2010-09-10 2010-09-10 情報処理システム、および、情報処理方法

Publications (2)

Publication Number Publication Date
JP2012059098A JP2012059098A (ja) 2012-03-22
JP5718600B2 true JP5718600B2 (ja) 2015-05-13

Family

ID=46056100

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010202724A Active JP5718600B2 (ja) 2010-09-10 2010-09-10 情報処理システム、および、情報処理方法

Country Status (1)

Country Link
JP (1) JP5718600B2 (ja)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60183663A (ja) * 1984-03-02 1985-09-19 Nec Corp 情報処理装置
JPH0264740A (ja) * 1988-08-30 1990-03-05 Fujitsu Ltd マイクロプロセッサ
JP2922981B2 (ja) * 1990-05-28 1999-07-26 株式会社日立製作所 タスクの実行継続方法
JP3176093B2 (ja) * 1991-09-05 2001-06-11 日本電気株式会社 マイクロプロセッサの割込み制御装置
JP3156429B2 (ja) * 1993-03-17 2001-04-16 株式会社日立製作所 高信頼型計算機用システム制御lsi及びそれを用いたコンピュータシステム
JP2953639B2 (ja) * 1992-12-02 1999-09-27 株式会社日立製作所 バックアップ装置及びその方法
JPH07219802A (ja) * 1994-02-01 1995-08-18 Hitachi Ltd 2重化制御方式
JPH09251443A (ja) * 1996-03-18 1997-09-22 Hitachi Ltd 情報処理システムのプロセッサ障害回復処理方法
JP3476667B2 (ja) * 1997-12-15 2003-12-10 三菱電機株式会社 二重化制御装置
JP2003296133A (ja) * 2002-04-05 2003-10-17 Fuji Electric Co Ltd コントローラ
KR20070083772A (ko) * 2004-10-25 2007-08-24 로베르트 보쉬 게엠베하 멀티 프로세서 시스템에서의 동기화 방법 및 장치
JP2007164672A (ja) * 2005-12-16 2007-06-28 Mitsubishi Electric Corp プログラム、オペレーティング・システム、およびコンパイラ
FR2942404B1 (fr) * 2009-02-23 2011-08-26 Oreal Procede de photomaquillage utilisant une composition photochromique a l'etat deja revele

Also Published As

Publication number Publication date
JP2012059098A (ja) 2012-03-22

Similar Documents

Publication Publication Date Title
JP3702815B2 (ja) プロセッサ間レジスタ継承方法及びその装置
JP5611756B2 (ja) プログラム・フロー制御
US5590294A (en) Method and apparatus for retarting pipeline processing
JPS6028015B2 (ja) 情報処理装置
JPH07248897A (ja) コンピュータ・システムにおける例外からの回復方法、及びそのための装置
JPH02201651A (ja) データ処理装置
CN109416632B (zh) 用于处理数据的装置和方法
CN104461468A (zh) 基于处理器指令快速完成的精确异常维护方法及装置
JP2000330788A (ja) コンピュータシステム
JP2007206933A (ja) 情報処理装置、情報処理装置におけるブートローダ生成方法およびプログラム転送方法
CN107111525B (zh) 数据处理设备中的系统错误处置
JP5718600B2 (ja) 情報処理システム、および、情報処理方法
KR102379886B1 (ko) 벡터 명령 처리
JP2008299729A (ja) プロセッサ
KR100508320B1 (ko) 고속 및 저속 리플레이 경로를 갖는 리플레이 구조를구비한 프로세서
JP2001306334A (ja) エミュレーション装置
US9983932B2 (en) Pipeline processor and an equal model compensator method and apparatus to store the processing result
US8352714B2 (en) Executing watchpoint instruction in pipeline stages with temporary registers for storing intermediate values and halting processing before updating permanent registers
JP2552738B2 (ja) データ処理装置
TWI784049B (zh) 事務巢套深度測試指令
US8055888B2 (en) Initialisation of a pipelined processor
US20210373900A1 (en) Exception Handling
CN102073551B (zh) 可自我重置的微处理器及其方法
JP6107904B2 (ja) プロセッサ及びストア命令の変換方法
JPH0248733A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140909

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150319

R150 Certificate of patent or registration of utility model

Ref document number: 5718600

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350