JP2010218012A - 圧縮情報を利用した故障検出装置、その方法及びそのプログラム - Google Patents

圧縮情報を利用した故障検出装置、その方法及びそのプログラム Download PDF

Info

Publication number
JP2010218012A
JP2010218012A JP2009061296A JP2009061296A JP2010218012A JP 2010218012 A JP2010218012 A JP 2010218012A JP 2009061296 A JP2009061296 A JP 2009061296A JP 2009061296 A JP2009061296 A JP 2009061296A JP 2010218012 A JP2010218012 A JP 2010218012A
Authority
JP
Japan
Prior art keywords
arithmetic processing
comparison
access
information
failure detection
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.)
Pending
Application number
JP2009061296A
Other languages
English (en)
Inventor
Hiroaki Inoue
浩明 井上
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP2009061296A priority Critical patent/JP2010218012A/ja
Publication of JP2010218012A publication Critical patent/JP2010218012A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】圧縮情報を活用することで、分散メモリ・I/O構成及び共有メモリ・I/O構成で、高速かつ高信頼に故障を検出する。
【解決手段】複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、前記複数の比較圧縮手段が、前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断する。
【選択図】図1

Description

本発明は、圧縮情報を利用することで、故障を検出することが可能な装置、その方法及びそのプログラムに関する。
高信頼性を要求する市場においては、複数の低信頼な半導体デバイスを多重化して、そして、その入出力情報を比較することで、半導体デバイスの故障を検出する装置が一般に広く用いられている。
しかしながら、近年の半導体デバイス、メモリ・I/Oなどの非同期化に伴い、そのような入出力情報にズレが生じるため、入出力情報の比較自体が非常に困難になっている。
従って、半導体デバイスの入出力情報にズレが生じたとしてもそれを許容し、かつ、高速で高効率な故障検出を行うことが望まれている。
このような入出力情報にズレが生じる環境において故障検出を行う技術として以下のような技術がある。なお、本明細書や特許請求の範囲において複数の半導体デバイスが共有するメモリ・I/Oのことを「共有メモリI/O」と呼び、このような構成のことを「共有メモリ・I/O構成」と呼ぶものとする。
一方、複数の半導体デバイスがそれぞれ対応するメモリ・I/Oを有し、共有状態となっていないメモリ・I/Oのことを「分散メモリI/O」と呼び、このような構成のことを「分散メモリ・I/O構成」と呼ぶものとする。
図19は、分散メモリ・I/O構成での、半導体デバイスの多重化装置を模式的に示す図である(このような装置の例として例えば特許文献1参照)。
図19に示す例では、比較部711が、第1のプロセッサ701及び第2のプロセッサ702と、第1のメモリI/O721及び第2のメモリI/O722との入出力情報を比較する。
ここで、比較部711内にバッファを設けることで、第1のプロセッサ701と第2のプロセッサ702への入出力情報を保存し、その結果、多少のズレが生じたとしても、そのズレを許容して比較することができる。
図20は、共有メモリ・I/O構成での、半導体デバイスの多重化装置を模式的に示す図である(このような装置の例として例えば特許文献2参照)。
図20に示す例では、第1のプロセッサ801及び第2のプロセッサ802プロセッサに対して、アクセス管理部811は、共有メモリI/O821へのアクセスを比較する。アクセス管理部811は、第1のプロセッサ801及び第2のプロセッサ802プロセッサからのアクセスを待ち合わせし、そして、両プロセッサからの要求が一致した場合に、共有メモリI/O821へとアクセスを発行する。
また、アクセス管理部811は、共有メモリI/O821からの応答を第1のプロセッサ801及び第2のプロセッサ802プロセッサへと返す。
ここで、アクセス管理部811内にバッファを設けることで、第1のプロセッサ801及び第2のプロセッサ802プロセッサからの出力を保存し、その結果、多少のズレが生じたとしても、そのズレを許容して比較することができる。
特開2006−178618号公報 特開平8−212093号公報 特許第2500038号公報
しかしながら、図19及び図20に示した方式は、以下の二つの問題点を有している。
一つめの問題点は、ズレを許容するために大量のバッファが必要となることである。
二つめの問題点は、非同期化の進展により、ズレの検出自体がますます困難になるので、高速性が失われることである。これらの点に鑑みて図21に記載のような技術が存在する。
図21は、分散メモリ・I/O構成での、圧縮情報を用いた、半導体デバイスの多重化装置を模式的に示す図である(このような装置の例として例えば特許文献3参照)。
図21に示す例では、第1のメモリI/O921及び第2のメモリI/O912を用いて、第1の圧縮機構付プロセッサ901と第2の圧縮機構付プロセッサ902が、同一のアプリケーションを実行する。この時、第1の圧縮機構付プロセッサ901と第2の圧縮機構付プロセッサ902は、各々アプリケーションの実行中の様々な情報、例えば、命令実行順序、メモリアクセスアドレス、レジスタアクセスなどの内部情報を不可逆圧縮して保存する。
最後に、そのアプリケーションの実行終了後に、第1の圧縮機構付プロセッサ901と第2の圧縮機構付プロセッサ902は得られた圧縮情報を比較する。これにより、アプリケーション実行後の圧縮情報を比較するだけで、故障検出ができるので、大量のバッファを設けるなどして入出力のズレに対応する必要がなくなる。
しかしながら、図21に示した方式は、以下の二つの問題点を有している。
一つめの問題点は、プロセッサに圧縮機構を加える必要があり、そして、圧縮機構自身の信頼性に問題があることである。
二つめの問題点は、共有メモリ・I/O構成では、同一メモリ領域へ両プロセッサからのアクセスが多重に出力されてしまい、その結果、メモリの一貫性に問題が生じることである。
これらの問題点があることから、圧縮情報を活用することで、分散メモリ・I/O構成及び共有メモリ・I/O構成で、高速かつ高信頼に故障を検出することは困難であった。
そこで、本発明は圧縮情報を活用することで、分散メモリ・I/O構成及び共有メモリ・I/O構成で、高速かつ高信頼に故障を検出することが可能な、圧縮情報を利用した故障検出装置、その方法及びそのプログラムを提供することを目的とする。
本発明の第1の観点によれば、複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、前記複数の比較圧縮手段が、前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出装置が提供される。
本発明の第2の観点によれば、複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための共有メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該共有メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、前記複数の比較圧縮手段が、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出装置が提供される。
本発明の第3の観点によれば、複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備えた故障検出装置における、故障検出方法において、前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出方法が提供される。
本発明の第4の観点によれば、複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための共有メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該共有メモリ・I/Oに接続されている複数の比較圧縮手段と、を備えた故障検出装置における、故障検出方法において、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出方法が提供される。
本発明の第5の観点によれば、複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、前記複数の比較圧縮手段が、前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断する故障検出装置としてコンピュータを機能させることを特徴とする故障検出プログラムが提供される。
本発明の第6の観点によれば、複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための共有メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該共有メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、前記複数の比較圧縮手段が、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断する故障検出装置としてコンピュータを機能させることを特徴とする故障検出プログラムが提供される。
本発明によれば、分散メモリ・I/O構成と共有メモリ・I/O構成で、圧縮情報の統一した活用により、高速に故障検出を行うことが可能となる。
本発明の実施形態の故障検出装置の基本的構成を示す図である。 本発明の実施形態のアクセス分類表200の構成例を示す図である。 本発明の実施形態の比較圧縮手段における情報の流れを示す図である。 本発明の実施形態の比較圧縮手段の動作を説明するフローチャートである。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置の構成を示す図である。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置の動作を説明するフローチャートである。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置の動作を説明するフローチャートである。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の分散メモリ・I/Oを有する故障検出装置の動作を説明するフローチャートである。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置の動作を説明するフローチャートである。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置の動作を説明するフローチャートである。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置における情報の流れを示す図である。 本発明の実施形態の共有メモリ・I/Oを有する故障検出装置の動作を説明するフローチャートである。 本願発明に関連する第1の技術の構成を示す図である。 本願発明に関連する第2の技術の構成を示す図である。 本願発明に関連する第3の技術の構成を示す図である。
本発明は、概略、プロセッサからの分散メモリ・I/Oないし共有メモリ・I/Oへのアクセスを監視し、そして、監視した内容を圧縮して比較することで故障を検出するというものである。
すなわち、本発明においては、分散メモリ・I/O構成においては、リード・ライトアクセスの圧縮情報を比較することで故障を検出する。一方、共有メモリ・I/O構成においては、リードアクセスは分散メモリ・I/O構成と同様に圧縮情報を比較することで、片や、ライトアクセスは同期を行って比較することで故障を検出する。これにより、分散メモリ・I/O構成ないし共有メモリ・I/O構成にて、高速かつ高信頼に故障を検出することが可能である。
次に、本発明の実施形態について図面を用いて詳細に説明する。
図1は、本発明の実施形態の一例である、圧縮情報を活用する故障検出装置1000を示す図である。
図1を参照すると、故障検出装置1000は、第1のプロセッサ101と第2のプロセッサ102、第1の比較圧縮部111と第2の比較圧縮部112、第1の分散メモリI/O121と第2の分散メモリI/O122及び共有メモリI/O130を有する。
第1のプロセッサ101と第2のプロセッサ102は、演算処理を行う部分であり、具体的には、例えばCPUが挙げられる。しかし、第1のプロセッサ101と第2のプロセッサ102は、CPUのみに限定されるものではなく、例えば、DSPや再構成可能デバイス(FPGA)等であってもよい。また、その具体的構成は、チップ、SoC、IPコアなど様々な様態により実現させることが可能である。なお、第1のプロセッサ101と第2のプロセッサ102は、本発明の演算処理装置に相当するものである。
第1の分散メモリI/O121、第2の分散メモリI/O122及び共有メモリI/O130は、プロセッサが各々のメモリにアクセスするためのI/Oである。
第1の比較圧縮部111と第2の比較圧縮部112は、第1のプロセッサ101と第2のプロセッサ102の入出力に関する情報を圧縮することにより「圧縮情報」を生成して、生成した圧縮情報を比較する。ここで、比較結果が一致していれば、第1のプロセッサ101と第2のプロセッサ102に故障が無いことが分かる。一方、比較結果が不一致であれば、第1のプロセッサ101と第2のプロセッサ102の何れか又は両者に故障があることがわかる。
更に、第1の比較圧縮部111と第2の比較圧縮部112は、第1の分散メモリI/O121と第2の分散メモリI/O122、共有メモリI/O130へのアクセスを振り分けることで、分散メモリ・I/O構成においても、共有メモリ・I/O構成においても、また両者を備える構成においても、圧縮情報を活用した故障検出が可能である。
ここで、圧縮情報としては、メモリ・I/Oアクセスにおけるアドレスないしデータのハッシュや、ある特定メモリアドレスのデータ等が例示できる。また、他にも、命令と、データ読み込み、データ書き込みそれぞれのアクセス情報のハッシュであってもよい。また、それぞれの情報を別々に圧縮して保存してもよいし、全てを圧縮して保存してもよい。
すなわち本実施形態でいう圧縮情報とは、入出力情報から生成可能な、あらゆる圧縮情報を指すものとする。なお、具体的な圧縮情報としてどのような内容の情報を採用するかということは、本実施形態の要旨ではないため、特に限定されるものではない。
第1の比較圧縮部111と第2の比較圧縮部112が行う圧縮情報の比較は、入出力アクセスを数えて一定間隔で行ってもよいし、第1のプロセッサ101と第2のプロセッサ102からの特定アドレスへのアクセス検出時に行ってもよい。すなわち、お互いが同期可能な情報を用いれば、どのような方法及び間隔で行ってもよい。
また、今回は、各実施形態について、プロセッサ数、比較圧縮部数、分散メモリ・I/O数を2つと想定して説明を行っているが、これも例示に過ぎない。当然ながら、プロセッサ数等が3つ以上の構成においても、対応する数の比較圧縮部を設け、各々結合することで同様の装置が実現可能である。
次に、図2を用いて故障検出装置1000における、比較圧縮部(第1の比較圧縮部111及び第2の比較圧縮部112)に含まれるアクセス分類表について説明する。図2には、アクセス分類表の一例を示す。
図2を参照すると、比較圧縮部は、アクセス分類表200によって、0x00000000から0x3FFFFFFFのアドレスに関しては分散メモリ・I/Oへアクセスを発行し、また、0x40000000から0x9FFFFFFFのアドレスに関しては共有メモリ・I/Oへアクセスを発行するように規定している。
次に、図2に示したアクセス分類表200に従って、第2の比較圧縮部112が各メモリI/Oにアクセスを行う場合を例にして説明する。
図3は、故障検出装置1000における、比較圧縮部のアクセス分類動作を説明する図である。なお、以降説明に用いる図において、矢印脇のSと数字からなる符合は、各ステップにおいて伝達される信号の流れを示すものである。また、図4は動作を表すフローチャートである。
図3及び4を用いてまず、第2の比較圧縮部112が第2の分散メモリI/O122へアクセスを行う場合について説明する。
第2の比較圧縮部112は、第2のプロセッサ102からアドレス0x10000000を有するアクセスを受理する(S1、ステップA301)。
第2の比較圧縮部112は、アクセス分類表200に従って、第2の分散メモリI/O122へ上記アクセスを発行する(S2、ステップA302)。
次に、図3及び4を用いて第2の比較圧縮部112が共有メモリI/O130へアクセスを行う場合について説明する。
第2の比較圧縮部112は、第2のプロセッサ102からアドレス0x50000000を有するアクセスを受理する(S3、ステップA303)。
第2の比較圧縮部112は、アクセス分類表200に従って、共有メモリI/O130へ上記アクセスを発行する(S4、ステップA304)。
第1の比較圧縮部111及び第2の比較圧縮部112は、以上の処理を行うことにより各メモリI/Oにアクセスを振り分ける。
図5は、本発明の一実施形態である分散メモリ・I/O構成における故障検出装置2000について示す図である。
故障検出装置2000は、第1のプロセッサ101と第2のプロセッサ102、第1の比較圧縮部111と第2の比較圧縮部112、第1の分散メモリI/O121と第2の分散メモリI/O122を有する。なお、図1に示す故障検出装置1000とは、共有メモリI/O130を有していない点で相違する。
第1の比較圧縮部111と第2の比較圧縮部112は、第1のプロセッサ101と第2のプロセッサ102の入出力に関する情報を圧縮することにより「圧縮情報」を生成して、比較する。ここで、比較結果が一致していれば、第1のプロセッサ101と第2のプロセッサ102に故障が無いことが分かる。一方、比較結果が不一致であれば、第1のプロセッサ101と第2のプロセッサ102の何れか又は両者に故障があることがわかる。
次に、図6及び7のフローチャートを用いて故障検出装置2000の第2のプロセッサ102が第2の分散メモリI/O122へのリードアクセスを行う場合について説明する。ここでいう、リードアクセスには第2のプロセッサ102からの命令アクセスをも含むものとする。また、故障検出装置1000が分散メモリI/Oにアクセスする場合も同様の動作を行う。
第2の比較圧縮部112は、第2のプロセッサ102からリードアクセスを受理する(S5、ステップA401)。
第2の比較圧縮部112は、第2の分散メモリI/O122へリードアクセスを発行する。そして、当該アクセスアドレス情報を圧縮して保存する(S6、ステップA402)。
第2の比較圧縮部112は、第2の分散メモリI/O122からリードアクセスに対応するリードデータを受理する。そして、リードデータ情報を圧縮して保存する(S7、ステップA403)。
第2の比較圧縮部112は、リードデータを第2のプロセッサ102へ返す(S8、ステップA404)。
以上、今回の説明では、リードアクセスの、アドレスとデータ情報を各々保存する場合を例にして説明を行ったが、このような圧縮保存方法としてどのような方法を用いても構わない。
次に、図8及び9のフローチャートを用いて、図6及び7を用いて説明したものとは異なる動作の一例を説明する。
この例では、第2のプロセッサ102が第2の分散メモリI/O122へのリードアクセスではなく、ライトアクセスを行う場合について説明する。
第2の比較圧縮部112は、第2のプロセッサ102からライトアクセスを受理する(S9、ステップA405)。
第2の比較圧縮部112は、第2の分散メモリI/O122へライトアクセスを発行する。そして、当該アクセスのアドレス情報を圧縮して保存する。また、当該アクセスのデータ情報も圧縮して保存する(S10、ステップA406)。
以上、今回の説明では、ライトアクセスの、アドレスとデータ情報を各々保存する場合を例にして説明を行ったが、このような圧縮保存方法としてどのような方法を用いても構わない。
次に、図10及び11のフローチャートを用いて故障検出装置1000又は故障検出装置2000において、第1の比較圧縮部111と第2の比較圧縮部112が分散メモリI/Oのアクセスに伴って保存した圧縮情報の比較を行う場合について説明する。なお、故障検出装置1000の第1の比較圧縮部111と第2の比較圧縮部112については、共有メモリI/Oのアクセスに伴って保存した圧縮情報の比較を行う場合も考えられるが、この点については後述する。
第1の比較圧縮部111と第2の比較圧縮部112は、お互いにリードアクセスのアドレス圧縮情報と、リードアクセスのデータ圧縮情報と、ライトアクセスのアドレス圧縮情報と、ライトアクセスのデータ圧縮情報の何れか又は全てを交換して比較する(S11、S12、ステップA407)。
ここで、比較結果が一致していれば(ステップA408においてYes)、第1のプロセッサ101と第2のプロセッサ102に故障が無いことが分かる(ステップS409)。一方、比較結果が不一致であれば(ステップA408においてNo)、第1のプロセッサ101と第2のプロセッサ102の何れか又は両者に故障があることがわかる(ステップS410)。
図12は、本発明の一実施形態であって、共有メモリ・I/O構成である故障検出装置3000を示す図である。故障検出装置3000は、第1のプロセッサ101と第2のプロセッサ102、第1の比較圧縮部111と第2の比較圧縮部112、共有メモリI/O130を有する。
なお、図1に示す故障検出装置1000とは、第1の分散メモリI/O121及び第2の分散メモリI/O122を有していない点で相違する。
共有メモリ・I/O構成における第1の比較圧縮部111と第2の比較圧縮部112は、共有メモリI/O130へのアクセス情報を圧縮して保存する。そして、各々の圧縮情報を交換して比較する。ここで、比較結果が一致していれば、第1のプロセッサ101と第2のプロセッサ102に故障が無いことが分かる。一方、比較結果が不一致であれば、第1のプロセッサ101と第2のプロセッサ102の何れか又は両者に故障があることがわかる。
なお、比較は、リードアクセスに関しては、アクセスを数えて一定間隔で行っても良いし、また、第1のプロセッサ101と第2のプロセッサ102からの特定アドレスへのアクセス検出時に行っても良い。ただし、お互いが同期可能な情報を用いれば、どのような方法と間隔で行ってもよい。
一方、ライトアクセスに関しては、第1のプロセッサ101と第2のプロセッサ102が各々ライトアクセスを共有メモリI/O130へ発行すると、第1のプロセッサ101と第2のプロセッサ102の動作にズレがある場合、共有メモリ200へ同一のアクセスが複数発行されてしまう。したがって、ライトアクセスについては、ライトアクセス発行時に同期をとって、単一のアクセスを発行することを行う。
次に、図13及び14のフローチャートを用いて共有メモリ・I/O構成である故障検出装置3000の動作について説明する。また、故障検出装置1000が分散共有メモリI/O130にアクセスする場合も同様の動作を行う。
この例では、第2のプロセッサ102が共有メモリI/O130へのリードアクセスを行う場合について説明する。ここでいう、リードアクセスには第2のプロセッサ102からの命令アクセスをも含むものとする。
第2の比較圧縮部112は、第2のプロセッサ102からリードアクセスを受理する(S13、ステップA501)。
第2の比較圧縮部112は、共有メモリI/O130へリードアクセスを発行する。そして、当該アクセスアドレス情報を圧縮して保存する(S14、ステップA502)。
第2の比較圧縮部112は、共有メモリI/O130からリードアクセスに対応するリードデータを受理する。そして、リードデータ情報を圧縮して保存する(S15、ステップA503)。
第2の比較圧縮部112は、リードデータを第2のプロセッサ102へ返す(S16、ステップA504)。
以上、今回の説明では、リードアクセスの、アドレスとデータ情報を各々保存する場合を例にして説明を行ったが、このような圧縮保存方法としてどのような方法を用いても構わない。
次に、図15及び16のフローチャートを用いて共有メモリ・I/O構成である故障検出装置1000の第1の比較圧縮部111と第2の比較圧縮部112が共有メモリI/Oのアクセスに伴って保存した圧縮情報の比較を行う場合及び故障検出装置3000が圧縮情報の比較を行う場合について説明する。
この例では、第1の比較圧縮部111と第2の比較圧縮部112がリードアクセスの圧縮情報の比較を行う。
第1の比較圧縮部111と第2の比較圧縮部112は、お互いにリードアクセスのアドレス圧縮情報と、リードアクセスのデータ圧縮情報とを交換して比較する(S17、S18、ステップA505)。
ここで、比較結果が一致していれば(ステップA506においてYes)、第1のプロセッサ101と第2のプロセッサ102に故障が無いことが分かる(ステップS507)。
一方、比較結果が不一致であれば(ステップA506においてNo)、第1のプロセッサ101と第2のプロセッサ102の何れか又は両者に故障があることがわかる(ステップS508)。
次に、図17及び18のフローチャートを用いて共有メモリ・I/O構成である故障検出装置1000の第1の比較圧縮部111と第2の比較圧縮部112が共有メモリI/Oのアクセスに伴って保存した圧縮情報の比較を行う場合及び故障検出装置3000が圧縮情報の比較を行う場合について説明する。
この例では、第2のプロセッサ102が共有メモリI/O130へのリードアクセスではなく、ライトアクセスを行う場合について説明する。
第1の比較圧縮部111は、第1のプロセッサ101からライトアクセスを受理する(S19、ステップA601)。
第1の比較圧縮部111は、第2の比較圧縮部112へ当該ライトアクセスを転送する。そして、第2の比較圧縮部112は当該ライトアクセスを内部に記録する(S20、ステップA602)。
第2の比較圧縮部112は、第2のプロセッサ102からライトアクセスを受理する(S21、ステップA603)。
そして、第1の比較圧縮部111から過去に受理したライトアクセスと比較し、そのアクセス情報が一致しているかどうか比較する(ステップA604)。一致していれば(ステップA604においてYes)、ステップA605へ進む。
ステップA605において、第2の比較圧縮部112は、ライトアクセスを共有メモリI/O130へと発行する(S22、ステップA605)。
一方、ステップA604の比較の結果、一致していなければ(ステップA604においてNo)、故障を検出し、エラー信号を出力する(ステップA606)。
以上、ライトアクセスについては、アクセス毎にアクセス情報を比較して同期する例形態を説明したが、一般の共有メモリ・I/O構成を有する並列処理装置において用いられる、同期を行う機構であれば何でも構わない。
以上説明した本発明の実施形態は、以下のような効果を奏する。
第1の効果は、分散メモリ・I/O構成、共有メモリ・I/O構成、或いはこの何れもが存在する構成で高速に故障検出が可能となることである。その理由は、圧縮情報の統一した活用が可能になるためである。
第2の効果は、高信頼に故障を検出できることである。その理由は、プロセッサ内部に圧縮機構を加える必要がないためである。
第3の効果は、圧縮情報を活用しながら、メモリの一貫性を守るという課題を解決できることである。その理由は、ライトアクセスについては同期を行って比較することで故障を検出するためである。
なお、本発明の実施形態である故障検出装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。
また、前記各実施形態では、圧縮情報を活用して、高速かつ高信頼に故障を検出可能な装置及び方法を例に説明した。もっとも、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
101、701、801 第1のプロセッサ
102、702、802 第2のプロセッサ
111 第1の比較圧縮部
112 第2の比較圧縮部
121、721、911 第1の分散メモリI/O
122、722、912 第2の分散メモリI/O
130、821 共有メモリI/O
200 アクセス分類表
700、800、900,1000、2000、3000 故障検出装置
711 比較部
811 アクセス管理部
901 第1の圧縮機構付きプロセッサ
902 第2の圧縮機構付きプロセッサ
921 第1の圧縮情報
922 第2の圧縮情報

Claims (15)

  1. 複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、
    前記複数の比較圧縮手段が、前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出装置。
  2. 複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための共有メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該共有メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、
    前記複数の比較圧縮手段が、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出装置。
  3. 請求項1に記載の故障検出装置において、前記演算処理装置が情報の入出力を行うための共有メモリ・I/Oを更に備えており、
    前記複数の比較圧縮手段が、前記演算処理装置からのアクセスを前記分散メモリ・I/O又は前記共有メモリ・I/Oへ振り分け、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出装置。
  4. 請求項3に記載の故障検出装置において、前記振り分けは、前記演算処理装置からのアクセスのアドレスに従って行われることを特徴とする故障検出装置。
  5. 請求項1乃至4の何れか1項に記載の故障検出装置において、前記情報の前記圧縮は、
    前記演算処理装置と、前記分散メモリ・I/O又は前記共有メモリ・I/Oがやり取りする情報をハッシュ関数を用いてハッシュにすることにより行われることを特徴とする故障検出装置。
  6. 複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備えた故障検出装置における、故障検出方法において、
    前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出方法。
  7. 複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための共有メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該共有メモリ・I/Oに接続されている複数の比較圧縮手段と、を備えた故障検出装置における、故障検出方法において、
    前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出方法。
  8. 請求項6に記載の故障検出方法において、前記演算処理装置が情報の入出力を行うための共有メモリ・I/Oを更に備えており、
    前記演算処理装置からのアクセスを前記分散メモリ・I/O又は前記共有メモリ・I/Oへ振り分け、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出方法。
  9. 請求項8に記載の故障検出方法において、前記振り分けは、前記演算処理装置からのアクセスのアドレスに従って行われることを特徴とする故障検出方法。
  10. 請求項6乃至9の何れか1項に記載の故障検出方法において、前記情報の前記圧縮は、
    前記演算処理装置と、前記分散メモリ・I/O又は前記共有メモリ・I/Oがやり取りする情報をハッシュ関数を用いてハッシュにすることにより行われることを特徴とする故障検出方法。
  11. 複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための分散メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該分散メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、
    前記複数の比較圧縮手段が、前記演算処理装置と前記分散メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断する故障検出装置としてコンピュータを機能させることを特徴とする故障検出プログラム。
  12. 複数の演算処理装置と、当該演算処理装置が情報の入出力を行うための共有メモリ・I/Oと、当該演算処理装置のそれぞれ及び当該共有メモリ・I/Oに接続されている複数の比較圧縮手段と、を備え、
    前記複数の比較圧縮手段が、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断する故障検出装置としてコンピュータを機能させることを特徴とする故障検出プログラム。
  13. 請求項11に記載の故障検出プログラムにおいて、前記演算処理装置が情報の入出力を行うための共有メモリ・I/Oを更に備えており、
    前記複数の比較圧縮手段が、前記演算処理装置からのアクセスを前記分散メモリ・I/O又は前記共有メモリ・I/Oへ振り分け、前記演算処理装置と前記共有メモリ・I/Oがやり取りするアクセス内容を監視し、当該監視の結果リードアクセスだった場合は、前記共有メモリ・I/Oがやり取りする情報を圧縮し、前記複数の比較圧縮手段相互間で当該圧縮した情報を交換及び比較し、当該監視の結果ライトアクセスだった場合は、当該アクセスについて前記複数の比較圧縮手段相互間で同期を取ったうえで当該アクセスの内容を比較し、前記何れかの比較において比較結果が不一致の場合に、前記複数の演算処理装置の何れか或いは全てが故障していると判断することを特徴とする故障検出プログラム。
  14. 請求項13に記載の故障検出プログラムにおいて、前記振り分けは、前記演算処理装置からのアクセスのアドレスに従って行われることを特徴とする故障検出プログラム。
  15. 請求項11乃至14の何れか1項に記載の故障検出プログラムにおいて、前記情報の前記圧縮は、
    前記演算処理装置と、前記分散メモリ・I/O又は前記共有メモリ・I/Oがやり取りする情報をハッシュ関数を用いてハッシュにすることにより行われることを特徴とする故障検出プログラム。
JP2009061296A 2009-03-13 2009-03-13 圧縮情報を利用した故障検出装置、その方法及びそのプログラム Pending JP2010218012A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009061296A JP2010218012A (ja) 2009-03-13 2009-03-13 圧縮情報を利用した故障検出装置、その方法及びそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009061296A JP2010218012A (ja) 2009-03-13 2009-03-13 圧縮情報を利用した故障検出装置、その方法及びそのプログラム

Publications (1)

Publication Number Publication Date
JP2010218012A true JP2010218012A (ja) 2010-09-30

Family

ID=42976839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009061296A Pending JP2010218012A (ja) 2009-03-13 2009-03-13 圧縮情報を利用した故障検出装置、その方法及びそのプログラム

Country Status (1)

Country Link
JP (1) JP2010218012A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012079208A (ja) * 2010-10-05 2012-04-19 Hitachi Ltd 入力バイパス型のフェイルセーフ装置及びフェイルセーフ用プログラム
US10268543B2 (en) * 2017-01-27 2019-04-23 Hewlett Packard Enterprise Development Lp Online volume repair

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324391A (ja) * 1991-12-16 1993-12-07 Kyosan Electric Mfg Co Ltd 故障検出装置、故障検出方法およびバス比較器
JPH0683663A (ja) * 1992-03-04 1994-03-25 Internatl Business Mach Corp <Ibm> マルチプロセッサ・コンピュータ・システム
JPH08212093A (ja) * 1995-02-07 1996-08-20 Toshiba Corp フォールトトレラント計算機システム
JP2005165807A (ja) * 2003-12-04 2005-06-23 Hitachi Ltd プロセッサ多重化システムにおける動作比較方式
JP2006178618A (ja) * 2004-12-21 2006-07-06 Nec Corp フォールトトレラントコンピュータ及びデータ送信制御方法
JP2008146447A (ja) * 2006-12-12 2008-06-26 Nec Corp フォールトトレラントコンピュータ

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324391A (ja) * 1991-12-16 1993-12-07 Kyosan Electric Mfg Co Ltd 故障検出装置、故障検出方法およびバス比較器
JPH0683663A (ja) * 1992-03-04 1994-03-25 Internatl Business Mach Corp <Ibm> マルチプロセッサ・コンピュータ・システム
JPH08212093A (ja) * 1995-02-07 1996-08-20 Toshiba Corp フォールトトレラント計算機システム
JP2005165807A (ja) * 2003-12-04 2005-06-23 Hitachi Ltd プロセッサ多重化システムにおける動作比較方式
JP2006178618A (ja) * 2004-12-21 2006-07-06 Nec Corp フォールトトレラントコンピュータ及びデータ送信制御方法
JP2008146447A (ja) * 2006-12-12 2008-06-26 Nec Corp フォールトトレラントコンピュータ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012079208A (ja) * 2010-10-05 2012-04-19 Hitachi Ltd 入力バイパス型のフェイルセーフ装置及びフェイルセーフ用プログラム
US10268543B2 (en) * 2017-01-27 2019-04-23 Hewlett Packard Enterprise Development Lp Online volume repair

Similar Documents

Publication Publication Date Title
US9052887B2 (en) Fault tolerance of data processing steps operating in either a parallel operation mode or a non-synchronous redundant operation mode
TWI438776B (zh) 修補高容量/高頻寬記憶體器件的方法及裝置
JP6280359B2 (ja) プログラマブルコントローラ
WO2015129035A1 (ja) ストレージシステム
JP2016045958A (ja) メモリモジュール及びその動作方法
JP2007034392A (ja) 情報処理装置及びデータ処理方法
CN103198050A (zh) 提供高完整性处理的方法
JP2010218012A (ja) 圧縮情報を利用した故障検出装置、その方法及びそのプログラム
JP2010281695A (ja) 半導体集積回路
CA2434290A1 (en) Information processing apparatus
US10740167B2 (en) Multi-core processor and cache management method thereof
JP2006318412A (ja) 半導体装置
JP2010102565A (ja) 二重化制御装置
US20160104263A1 (en) Method And Apparatus Of Latency Profiling Mechanism
JP5510107B2 (ja) エラー訂正試験方法
JPWO2012108020A1 (ja) ログ記録装置
JP2015184866A (ja) フォールトトレラントサーバ
JP2007328403A (ja) バス監視回路および情報処理検査システム
JP5446931B2 (ja) 誤り検出訂正装置及びメモリ装置
JP2017010431A (ja) デバッグシステム
US20190012292A1 (en) Control device
US8867369B2 (en) Input/output connection device, information processing device, and method for inspecting input/output device
JP2013073283A (ja) 情報処理装置及び記憶部検査方法
JP2011054221A (ja) 記憶装置及び電子機器
JP2010211391A (ja) Cpuの動作監視方法および装置

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100714

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100714

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140303

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140501

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141023