JP2011216020A - 情報処理装置および回路再構成装置 - Google Patents

情報処理装置および回路再構成装置 Download PDF

Info

Publication number
JP2011216020A
JP2011216020A JP2010085388A JP2010085388A JP2011216020A JP 2011216020 A JP2011216020 A JP 2011216020A JP 2010085388 A JP2010085388 A JP 2010085388A JP 2010085388 A JP2010085388 A JP 2010085388A JP 2011216020 A JP2011216020 A JP 2011216020A
Authority
JP
Japan
Prior art keywords
circuit
unit
information processing
failure
reconfiguration
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.)
Granted
Application number
JP2010085388A
Other languages
English (en)
Other versions
JP5660798B2 (ja
Inventor
Hiroyuki Yamamoto
浩幸 山元
Naoyuki Hoshi
直之 星
Hitoshi Ueno
仁 上野
Tatsuya Kimijima
達也 君島
Satoshi Namematsu
諭 名女松
Satoshi Watanabe
聡 渡邉
Shinji Ito
真二 伊藤
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010085388A priority Critical patent/JP5660798B2/ja
Publication of JP2011216020A publication Critical patent/JP2011216020A/ja
Application granted granted Critical
Publication of JP5660798B2 publication Critical patent/JP5660798B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Microcomputers (AREA)
  • Logic Circuits (AREA)

Abstract

【課題】情報処理を停止することなく、故障前と同じ情報処理を継続して実行する情報処理装置を得ること。
【解決手段】FPGAで構成されるとともに外部入力された入力情報に対して同じ情報処理を行う多重化された第1〜第3の処理系統11A〜11Cと、各処理系統から出力される処理結果の多数決を行なう多数決判定論理部15と、故障の発生した処理系統を検出する故障系統検出回路20と、故障が検出された際に、故障の発生した処理系統と同じ機能を有した処理系統をFPGAに再構成して新規な処理系統を形成する再構成部28と、を備え、各処理系統は、自身の回路状態を記憶する記憶部をそれぞれ有し、再構成部28は、故障が発生した際に、正常動作中の処理系統の記憶部に記憶させる回路状態と同じ情報を新規な処理系統の記憶部に入力し、その後、新規な処理系統に正常動作中の処理系統と同じ情報処理を行なわせる。
【選択図】図1

Description

本発明は、再構成可能な半導体集積回路に回路再構成する情報処理装置および回路再構成装置に関する。
半導体集積回路の微細化に伴って、再構成可能な半導体集積回路が高集積化され、これにより、再構成可能な半導体集積回路が大規模な情報処理システムに利用されるようになってきた。このような、再構成可能な半導体集積回路では、半導体プロセスの微細化や電源の低電圧化によって、宇宙線によるソフトエラーなどの問題が顕著になってきている。このため、故障発生時にも情報処理システムを正常な状態に復旧する方法が求められている。
また、再構成可能な半導体集積回路の1つであり電気的に書き換え可能なFPGA(Field Programmable Gate Array)でも、SRAM(Static Random Access Memory)等のメモリで発生するソフトエラーをECC(Error Check and Correct)回路によって訂正する方法などのように、故障発生時への対処方法が求められている。
例えば、特許文献1には、製造時に正常に機能したことが確認されているデータ処理回路に、破損や異常が発生しても正常に動作し続ける回路に関する技術が開示されている。この回路は、複数個(奇数個)の自己診断機能部を有する同じ処理回路と、これら複数個の処理回路から出力された出力信号を比較し、同じ出力結果が多数の方の回路の結果を正常な出力信号と判断して出力する比較回路と、を備えている。
また、特許文献2の情報処理装置は、所定機能を実現する論理処理部と、再構成可能に構成され論理処理部の所定機能を再現しうる予備論理処理部と、障害発生検出時に論理処理部の構成データに基づいて予備論理処理部を論理処理部と同一の論理回路構成になるように再構成する再構成手段とを備えている。
特開2000−147058号公報 特開平8−44581号公報
しかしながら、上記前者の従来技術では、故障した処理回路を正常動作中の処理回路と同一の状態に再設定することができなかった。そのため、情報処理に用いる処理回路は、フィードバックが存在しないデータ処理回路に限定されるという問題があった。
また、上記後者の従来技術では、正常な機能を再現するためには動作中の回路を一旦停止する必要があった。このため、故障が発生してから正常な機能を再現するまでの間は、情報処理を行うことができないという問題があった。
本発明は、上記に鑑みてなされたものであって、情報処理を停止することなく、故障前と同じ情報処理を継続して実行する情報処理装置および回路再構成装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、再構成可能な回路で構成されるとともに、外部入力された入力情報に対して同じ情報処理を行う多重化された複数の情報処理部と、前記各情報処理部から出力される情報処理の処理結果に基づいて前記処理結果の多数決を行ない、多数決で決定した処理結果を出力する多数決判定部と、前記各情報処理部から出力される前記各処理結果に基づいて故障の発生した情報処理部を検出する故障検出部と、前記故障検出部が故障の発生した情報処理部を検出した際に、前記再構成可能な回路に、前記故障の発生した情報処理部と同じ機能を有した情報処理部を再構成して新規情報処理部を形成する再構成部と、を備え、前記各情報処理部は、自身の回路状態を記憶する記憶部をそれぞれ有し、前記再構成部は、前記情報処理部の故障が発生した際に、正常動作中の情報処理部が有する記憶部に記憶させる回路状態の情報と同じ情報を正常回路状態情報として前記新規情報処理部の記憶部に入力し、その後、前記新規情報処理部に前記正常動作中の情報処理部と同じ情報処理を行なわせることを特徴とする。
本発明によれば、情報処理を停止することなく、故障前と同じ情報処理を継続して実行することが可能になるという効果を奏する。
図1は、実施の形態1に係る情報処理装置の構成を示す図である。 図2は、情報処理装置の故障修復処理手順を示すフローチャートである。 図3は、故障ブロックの特定方法の一例を説明するための図である。 図4は、故障した処理系統部内の順序回路の設定処理を説明するための図である。 図5は、実施の形態2に係るFPGAの構成を示す図である。 図6は、図5に示したFPGAの詳細な構成を示す図である。 図7は、多数決回路の再構成処理手順を示すフローチャートである。 図8は、多数決回路の再構成処理手順を説明するための図である。 図9は、多数決回路の再構成処理手順を説明するための図である。 図10は、故障した多数決回路から新規に再構成した多数決回路への切替え処理を説明するための図である。 図11は、エラー管理・制御部の構成を示す図である。 図12は、優先度が高い方の多数決回路を再構成する際のFPGAの処理を示す図である。 図13は、優先度が低い方の多数決回路を再構成する際のFPGAの処理を示す図である。 図14は、複数の多数決回路が再構成された後のFPGAの構成を示す図である。 図15は、実施の形態3に係る回路再構成装置の構成を示す図である。
以下に、本発明の実施の形態に係る情報処理装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。実施の形態1〜3で説明する再構成可能な半導体集積回路とは、例えばFPGA(Field Programmable Gate Array)のようにプログラムによって回路の機能を書き換え可能なデバイスである。なお、再構成可能な半導体集積回路としては、デバイス中の回路を部分的に書き換えることによって、短時間で回路を再構成できるデバイスなど何れのデバイスを用いてもよい。
実施の形態1.
図1は、実施の形態1に係る情報処理装置の構成を示す図である。図1では、情報処理装置10の一例として、所定の情報処理を行いつつ故障発生時には自ら自己修復を行なう自己修復装置の構成を示している。情報処理装置10は、再構成可能な半導体集積回路(後述の処理系統部)を備えており、故障発生時には再構成可能な半導体集積回路の修復を行う。情報処理装置10は、所定の情報処理を行う情報処理システムなどに用いられる。なお、情報処理装置10内の各処理系統部以外の構成要素は、再構成可能な半導体集積回路で構成してもよいし、再構成のできない半導体集積回路で構成してもよい。
情報処理装置10は、再構成可能な半導体集積回路(論理の再構成が可能な回路)(半導体装置)の内部に実装されている機能が故障した場合に、情報処理システムの動作を停止することなく、故障した機能を自律的に修復し復元する。
情報処理装置10は、3重多数決回路1と、故障系統検出回路(故障検出部)20と、故障診断部(故障領域特定部)26と、再構成データ生成部27と、再構成部28と、を有している。3重多数決回路1は、第1の処理系統11A、第2の処理系統11B、第3の処理系統11Cから出力される処理結果の多数決に基づいて、正常な処理結果を選択し出力する回路である。
3重多数決回路1は、第1の処理系統11A、第2の処理系統11B、第3の処理系統11C、比較部12〜14、多数決判定論理部(多数決判定部)15を有している。なお、以下の説明では、第1の処理系統11A、第2の処理系統11B、第3の処理系統11Cを、処理系統部(情報処理部)という場合がある。
第1の処理系統11A、第2の処理系統11B、第3の処理系統11Cは、それぞれ同一の構成を有しており、それぞれ同一の機能(情報処理)を達成する。各処理系統部は、再構成可能な半導体集積回路で構成されており、複数のブロック(再構成可能な半導体集積回路)が配線で接続されて形成されている。各処理系統部の情報入力側は、それぞれ共通配線L1に接続されており、各処理系統部へは、共通配線L1を介して情報処理用の同一の情報が入力される。
また、第1の処理系統11A、第2の処理系統11B、第3の処理系統11Cは、それぞれ情報出力側が出力側配線L2A、出力側配線L2B、出力側配線L2Cに接続されている。そして、各処理系統部の出力側配線L2A〜L2Cは、それぞれ多数決判定論理部15に接続されている。
多数決判定論理部15は、各処理系統部から送られてくる処理結果(出力信号)に基づいて、何れの処理結果が正常な処理結果であるかを判定し、正常な処理結果を後段のブロック(図示せず)に出力する。具体的には、多数決判定論理部15は、各処理系統部から送られてくる処理結果を比較し、同じ出力結果が多数の方の処理結果を正常な処理結果と判定して出力する。
比較部12は、出力側配線L2Aと、出力側配線L2Bと、比較結果出力線22と、に接続されている。また、比較部13は、出力側配線L2Bと、出力側配線L2Cと、比較結果出力線23と、に接続されている。また、比較部14は、出力側配線L2Cと、出力側配線L2Aと、比較結果出力線24と、に接続されている。
比較部12〜14は、多数決判定論理部15が処理結果の多数決に基づいて正常な処理結果を出力している間、それぞれが接続されている処理系統部間の処理結果を比較し、比較結果を故障系統検出回路20に出力する。
比較部12は、第1の処理系統11Aから出力側配線L2Aを介して送られてくる処理結果と、第2の処理系統11Bから出力側配線L2Bを介して送られてくる処理結果と、を比較し、比較結果を比較結果出力線22を介して故障系統検出回路20に送る。
比較部13は、第2の処理系統11Bから出力側配線L2Bを介して送られてくる処理結果と、第3の処理系統11Cから出力側配線L2Cを介して送られてくる処理結果と、を比較し、比較結果を比較結果出力線23を介して故障系統検出回路20に送る。
比較部14は、第3の処理系統11Cから出力側配線L2Cを介して送られてくる処理結果と、第1の処理系統11Aから出力側配線L2Aを介して送られてくる処理結果と、を比較し、比較結果を比較結果出力線24を介して故障系統検出回路20に送る。
故障系統検出回路20は、比較部12〜14からの比較結果に基づいて、処理系統部の故障検出、故障の発生した処理系統部の特定を行なう。故障系統検出回路20は、情報出力側が故障結果出力線25に接続されている。故障系統検出回路20は、故障の検出結果(特定結果)を故障系統情報として故障結果出力線25から再構成データ生成部27に出力する。また、故障系統検出回路20は、故障系統情報を故障診断部26に送信する。
故障診断部26は、故障の発生した処理系統部の故障診断を行う。故障診断部26は、例えば、特開2000−147058号公報などで用いられている自己診断機能などによって故障診断を行なう。この場合、処理系統部と同数の故障診断部26を準備しておき、各処理系統部に1つずつの故障診断部26を1対1で接続しておく。なお、故障診断の方法は、故障ブロックの特定が可能であれば何れの方法で行なってもよい。故障ブロックの特定方法としては、例えば二分探索のように故障診断領域を狭めて行く方法がある。
再構成データ生成部27は、故障した処理系統部を再構成するための再構成データを生成する。再構成データは、例えば再構成可能な半導体集積回路に所望の機能を実現するためのプログラムを生成するためのデータや、再構成可能な半導体集積回路のコンフィグレーションデータを生成するためのデータである。コンフィグレーションデータは、故障ブロックを除いたブロックのブロック間を配置配線するためのデータ(配置配線を指示する情報など)である。
再構成部28は、再構成データ生成部27が生成したコンフィグレーションデータなどを用いてブロック間の配置配線を行ない、これにより、再構成可能な半導体集積回路を用いて故障した回路(処理系統部)の再構成を行なう。
なお、情報処理装置10のうち3重多数決回路1以外の構成要素は、ハードウェア(構成要素毎の回路)のみで構成してもよいし、ハードウェアとソフトウェアを用いて構成してもよい。3重多数決回路1以外の構成要素をハードウェアとソフトウェアを用いて構成する場合、例えば各構成要素を、マイクロプロセッサ、ROM(Read Only Memory)、RAM(Random Access Memory)などを用いて構成しておく。そして、マイクロプロセッサが、コンピュータプログラムである再構成プログラム(処理系統部の再構成を行うプログラム)を用いて故障検出や再構成などに関する制御を行う。
再構成プログラムは、ROM内に格納されており、バスラインを介してRAMへロードされる。具体的には、CPUがROM内からフロー制御プログラムを読み出してRAM内のプログラム格納領域に展開して各種処理を実行する。
情報処理装置10で実行される再構成プログラムは、それぞれ故障系統検出回路20、故障診断部26、再構成データ生成部27、再構成部28を含むモジュール構成となっており、これらが主記憶装置上にロードされ、これらが主記憶装置上に生成される。
つぎに、情報処理装置の故障修復処理手順について説明する。図2は、情報処理装置の故障修復処理手順を示すフローチャートである。情報処理装置10では、第1の処理系統11A、第2の処理系統11B、第3の処理系統11Cに、共通配線L1から情報処理用の同一の情報が入力される。各処理系統部は、入力された情報を用いた情報処理を行い、処理結果をそれぞれ出力側配線L2A〜L2Cから出力する。
多数決判定論理部15は、各処理系統部から送られてくる処理結果を比較し、同じ出力結果が多数の方の処理結果を正常な処理結果と判定して出力する。これにより、情報処理装置10では、処理系統部のうちの1つが故障した場合においても多数決判定論理部15によって正常に動作している2つの処理系統部からの処理結果が選択されて出力される。例えば、第3の処理系統11Cが故障した場合、多数決判定論理部15は、第1の処理系統11Aからの処理結果と第2の処理系統11Bからの処理結果の何れかを選択して出力する。
比較部12〜14は、多数決判定論理部15が処理結果の多数決に基づいて正常処理された処理結果を出力している間、それぞれが接続されている処理系統部間の処理結果を比較し、比較結果を故障系統検出回路20に出力する。
具体的には、比較部12は、第1の処理系統11Aからの処理結果と、第2の処理系統11Bからの処理結果と、を比較し、比較結果を比較結果出力線22を介して故障系統検出回路20に送る。
また、比較部13は、第2の処理系統11Bからの処理結果と、第3の処理系統11Cからの処理結果と、を比較し、比較結果を比較結果出力線23を介して故障系統検出回路20に送る。
また、比較部14は、第3の処理系統11Cからの処理結果と、第1の処理系統11Aからの処理結果と、を比較し、比較結果を比較結果出力線24を介して故障系統検出回路20に送る。
故障系統検出回路20は、比較部12〜14からの比較結果に基づいて、処理系統部の故障検出、故障の発生した処理系統部を特定する(ステップS101)。例えば、第3の処理系統11Cが故障した場合、第2の処理系統11Bからの処理結果と第3の処理系統11Cからの処理結果とは一致しない。また、第3の処理系統11Cからの処理結果と第1の処理系統11Aからの処理結果とは一致しない。一方、第1の処理系統11Aからの処理結果と第2の処理系統11Bからの処理結果とは一致する。
このため、比較部13は、処理結果が不一致であることを示す比較結果を比較結果出力線23を介して故障系統検出回路20に送る。また、比較部14は、処理結果が不一致であることを示す比較結果を比較結果出力線24を介して故障系統検出回路20に送る。また、比較部12は、処理結果が一致していることを示す比較結果を比較結果出力線22を介して故障系統検出回路20に送る。
故障系統検出回路20は、比較結果出力線22〜24を介して送られてくる比較結果に基づいて、処理系統部の故障検出、故障の発生した処理系統部の特定を行なう。ここでは、第2の処理系統11Bと第3の処理系統11Cとの比較結果が不一致を示し、且つ、第3の処理系統11Cと第1の処理系統11Aとの比較結果が不一致を示し、且つ第1の処理系統11Aと第2の処理系統11Bとの比較結果が一致を示しているので、第3の処理系統11Cが故障していると判定される。故障系統検出回路20は、故障系統情報として、第3の処理系統11Cが故障していることを示す情報を、故障結果出力線25から再構成データ生成部27に出力する。
故障の発生した処理系統部を特定した後、情報処理装置10の故障診断部26は、特定した処理系統部の故障診断を行なうことによって故障した物理的な位置(故障ブロック)を特定する。
続いて、情報処理装置10の再構成データ生成部27は、故障した処理系統部を再構成するための再構成データを生成する。そして、再構成部28は、再構成可能な半導体集積回路を用いて構成されたブロックのブロック間の配置配線を、再構成データに基づいて行なう(ステップS102)。故障ブロック以外の正常なブロック間が配線によって接続されることにより、故障した処理系統部と同一機能を達成する新たな処理系統部が形成され、この結果、処理系統部が復元される。
故障診断部26は、故障の発生した処理系統部の故障診断を行う。このとき、故障系統検出回路20は、故障系統情報を故障の発生した処理系統部に接続された故障診断部26に送信する。これにより、故障の発生した処理系統部に接続された故障診断部26が故障診断を行ない、この結果、処理系統部内の故障ブロックが特定される。
図3は、故障ブロックの特定方法の一例を説明するための図である。図3では、故障ブロックの特定方法の一例として、ブロックがマトリックス状に配置された回路アーキテクチャに、二分探索を適用した場合について説明する。ここでの回路アーキテクチャは、回路の形成領域内に縦方向および横方向に配置された複数の配線領域35と、縦方向および横方向に配置された配線領域35間の結線を行う複数のインターコネクト36と、配線領域35に囲まれた領域に配置された複数のブロック32Xと、を備えている。
診断対象となる診断対象領域30は、隣接する複数のブロック32Xで構成されたブロック群であり、故障した処理系統部を含んだ領域である。図3では、診断対象領域30内のブロック群を構成するブロックXをブロック32A〜32Hとして図示している。
診断対象領域30は、ブロック32A〜32Dから成る領域31Xと、ブロック32E〜32Hから成る領域31Yと、の2つの領域に分割される。そして、分割後の領域31X,31Yの夫々の領域に対して故障診断が実行される。さらに、故障ブロックを含むと判定された領域が2分割されるとともに、分割後の各領域に対して故障診断が実行される。診断対象領域30内では、これらの領域分割と故障診断が繰り返されることによって、故障ブロックが特定される。
例えば、故障ブロックがブロック32Gである場合、領域31Yが故障ブロックを含む領域であると判定される。そして、領域31Yは、例えばブロック32E,32Fからなる領域と、ブロック32G,32Hからなる領域とに2分割される。この後、分割後の各領域に対して故障診断が実行され、ブロック32G,32Hからなる領域が故障ブロックを含む領域であると判定される。そして、ブロック32G,32Hからなる領域が、ブロック32Gと、ブロック32Hとに2分割される。この後、分割後のブロック32Gとブロック32Hに対して故障診断が実行され、ブロック32Gが故障ブロックであると判定される。
故障ブロックが特定された後、再構成部28は、故障した処理系統部内の順序回路を正常動作中の処理系統部内の順序回路の状態に再設定する(ステップS103)。図4は、故障した処理系統部内の順序回路の設定処理を説明するための図である。第3の処理系統11C´は、第3の処理系統11Cの処理機能が復元されたことによって、第3の処理系統11Cと同一の機能を有することとなった処理系統部(新規情報処理部)である。第3の処理系統11C´を復元した後、第3の処理系統11C´に、正常動作している第2の処理系統11Bの回路状態をコピーする。換言すると、処理系統部間で同一の機能を有するレジスタ(記憶部)の値を同一の値に再設定しておく。
このため、第1の処理系統11A内に、第1の処理系統11Aの回路状態を記憶するレジスタRaを配置しておくとともに、レジスタRaの前段(データ入力段)にセレクタSaを配置しておく。また、第2の処理系統11B内に、第2の処理系統11Bの回路状態を記憶するレジスタRbを配置しておくとともに、レジスタRbの前段にセレクタSbを配置しておく。また、第3の処理系統11C内に、第3の処理系統11Cの回路状態を記憶するレジスタRcを配置しておくとともに、レジスタRcの前段にセレクタScを配置しておく。ここでのセレクタSa〜Scが特許請求の範囲に記載の第2の選択部に対応している。
ここでは、第3の処理系統11Cが故障と判断されたので、処理機能が復元された第3の処理系統11C´内にも、第3の処理系統11C´の回路状態を記憶するレジスタRc´を配置しておくとともに、レジスタRc´の前段にセレクタSc´を配置しておく。レジスタRc´は、レジスタRcと同じ機能を有しており、セレクタSc´は、セレクタScと同じ機能を有している。なお、ここでのセレクタSc´が特許請求の範囲に記載の第1の選択部に対応している。
セレクタSaの出力側は、レジスタRaに接続されるとともに、配線18Aを介してセレクタSb,Sc´の入力側に接続されている。また、セレクタSbの出力側は、レジスタRbに接続されるとともに、配線18Bを介してセレクタSc´,Saの入力側に接続されている。また、セレクタSc´の出力側は、レジスタRc´に接続されるとともに、配線18C´を介してセレクタSb,Saの入力側に接続されている。
また、セレクタSaの入力側は、通常動作時に用いられる情報入力用の配線17AおよびセレクタSb,Sc´の出力側(配線18B,18C´)に接続されている。また、セレクタSbの入力側は、通常動作時に用いられる情報入力用の配線17BおよびセレクタSc´,Saの出力側(配線18C´,18A)に接続されている。また、セレクタSc´の入力側は、通常動作時に用いられる情報入力用の配線17C´およびセレクタSb,Saの出力側(配線18A,18B)に接続されている。
この構成により、セレクタSaは、正常動作中(通常動作中)の入力値と、レジスタRbからの入力値と、レジスタRc´からの入力値と、の何れかを自レジスタへの入力値として選択できる。また、セレクタSbは、正常動作中の入力値と、レジスタRc´からの入力値と、レジスタRaからの入力値と、の何れかを自レジスタへの入力値として選択できる。また、セレクタSc´は、正常動作中の入力値と、レジスタRaからの入力値と、レジスタRbからの入力値と、の何れかを自レジスタへの入力値として選択できる。
ここでは、第3の処理系統11C´が再構成されているので、再構成部28は、セレクタSc´のセレクト信号として、第2の処理系統11BのレジスタRbから送られてくる入力値を選択するようセレクタSc´を制御する。これにより、第3の処理系統11C´内のレジスタRc´に、第2の処理系統11BのレジスタRbに格納される値(正常回路状態情報)と同じ値を、レジスタRbへの入力と同時に1サイクルで入力することが可能となる。このとき、レジスタRc´へは、転送パス19を経由してデータ入力が行なわれる。転送パス19は、正常動作中のセレクタSbへのデータ送信経路、セレクタSbからセレクタSc´へのデータ送信経路、セレクタSc´からレジスタRc´へのデータ送信経路である。
なお、図4では、単一レジスタを多重化した構成について説明したが、各処理系統部内に複数のレジスタが存在する場合、レジスタ毎に上述した回路状態のコピーが行なわれる。例えば、各処理系統部が第1〜第N(Nは自然数)のレジスタとセレクタを有している場合、第1の処理系統11Aの第M(M=1〜N)のレジスタとセレクタ、第2の処理系統11Bの第Mのレジスタとセレクタ、第3の処理系統11C´の第Mのレジスタとセレクタをそれぞれ対応付けしておく。
具体的には、図4で示したレジスタRa〜Rc´、セレクタSa〜Sc´と同様の構成を、各処理系統部の第1〜第Nのレジスタとセレクタに適用し、これにより、第1〜第Nのレジスタを各処理系統部間で多重化する。そして、各処理系統部間で多重化された3つのレジスタを、1つのレジスタ群として、他のレジスタ群と独立して動作させる。これにより、対応付けされたレジスタ群間で互いに同じ値が入力可能となる。
このように、各処理系統部間で多重化されたレジスタ群間で同じデータを入力できるよう情報処理装置10を構成し、故障発生時には故障の発生した処理系統部を復元しているので、故障した処理系統部内の順序回路を正常動作中の回路状態と同じにすることが可能となる。
また、図4では、全処理系統部が同様の構成を有している場合について説明したが、正常な処理系統部と故障が発生して復元される処理系統部と、を異なる構成としてもよい。例えば、正常な処理系統部は、他の処理系統部系統の値をコピーする必要が無いのでセレクタは不要である。例えば、第1の処理系統11Aや第2の処理系統11Bは、復元された処理系統部ではないので、セレクタSaやセレクタSbを有していなくてもよい。この場合、レジスタRaやレジスタRbへは、正常動作中の入力値がそのまま入力される。また、第3の処理系統11C´へは、復元の際にセレクタSc´を形成しておくとともに、配線17A,17Bと接続しておく。
故障した処理系統部内の順序回路を正常動作中の処理系統部内の順序回路に再設定した後、各処理系統部を多数決回路として動作(再開)させる(ステップS104)。これにより、故障発生時の自律的な処理系統部の故障修復(自己修復)を完了する。自己修復の間、正常に稼動している処理系統部の動作は停止することなく、故障した処理系統部の故障の修復が行なわれる。
このように、情報処理装置10では、多数決回路を用いた多重化回路を用いている。そして、故障系統検出回路20は、多重化回路の何れの処理系統部で故障が発生したかを検出するとともに、故障が存在する処理系統部を識別している。
また、故障診断部26は、再構成可能な半導体集積回路のうち故障した物理的な位置(故障ブロック)を特定する故障診断を行なうことによって故障箇所を特定している。さらに、再構成データ生成部27は、故障した処理系統部に対し故障箇所を避けて設定した再構成データを生成し、再構成可能な半導体集積回路に再構成データをダウンロードしている。これにより、故障した処理系統部に関する回路のみを再構成し直し、故障が発生する前の回路と機能的に等価な状態に戻している。
また、正常動作している処理系統部の全レジスタの値を、復元した処理系統部内で同一機能を実現するレジスタに全て転送することによって、復元した処理系統部の回路を正常に動作している処理系統部の回路と同一の回路状態にしている。
このように、故障の発生した処理系統部の復元を自己修復装置が自律的に行うことにより、フィードバックを含む順序回路においても多重化回路の多重度を元の状態に戻すことが可能となる。
例えば、情報処理システムの稼働中に、外部環境に急激な変化が生じ、これにより多重化回路の処理系統部に故障が発生する場合がある。外部環境の急激な変化は、例えば、再構成可能な半導体集積回路にソフトエラーを生じさせる宇宙線や、急激な温度変化などである。処理系統部に故障が発生した場合であっても、本実施の形態では、正常動作している処理系統部の動作を止めず、発生した故障回路を自律的に正常な回路に修復し、故障した処理系統部を正常稼働中の処理系統部と同一の回路状態に再設定している。したがって、情報処理システムを停止することなく正常に情報処理を続けることができる。
このように、情報処理装置10は、処理系統部の復元を自律的に行うことができるので、例えば、人工衛星、光海底ケーブル、原子力発電所の制御装置等のように故障の修復作業が困難な場所にあり、連続稼動が求められる機器に対しても情報処理装置10を適用することが可能となる。
特に、社会基盤等の情報処理システムにおいては、故障によるシステムダウンが発生すると経済的な損失は大きい。情報処理装置10は、故障発生時にもシステムを停止することなく、正常な状態に復旧することができるので、システムダウンによる経済損失を防止することが可能となる。
なお、本実施の形態の自己修復方法でカバーできない再構成可能な半導体集積回路中のメモリについては、従来通りの方法(例えば、ECC回路やメモリ回路の多重化)によって、情報処理システムの信頼性を高めることができる。
また、本実施の形態では、多数決回路が3系統(3つの処理系統部)で構成されている場合について説明したが、多数決回路を2系統または4系統で構成してもよい。換言すると、情報処理装置内の多重度は、3に限定されるものではない。
また、本実施の形態では、第3の処理系統11Cが故障した場合に、第2の処理系統11Bの回路状態を第3の処理系統11C´にコピーする場合について説明したが、第1の処理系統11Aの回路状態を第3の処理系統11C´にコピーしてもよい。
また、本実施の形態では、故障ブロックを特定し、故障ブロックを除外して処理系統部を再構成したが、故障ブロックを特定することなく処理系統部を再構成してもよい。この場合、故障の発生した処理系統部の全ブロックを除外して処理系統部を再構成する。
このように実施の形態1によれば、故障の発生した処理系統部を故障の発生していないブロックを用いて復元するとともに、復元した処理系統部に、正常動作している処理系統部の回路状態をコピーするので正常動作中の処理系統部と同じ状態の処理系統部を構築することが可能となる。これにより、情報処理を停止することなく、故障前と同じ情報処理を継続して実行することが可能となる。したがって、情報処理システムの高い信頼性を長期間に亘って維持することが可能となる。
実施の形態2.
つぎに、図5〜図14を用いてこの発明の実施の形態2について説明する。実施の形態2では、情報処理装置内に複数の多数決回路を配置しておくとともに、多数決回路に故障が発生した場合には、故障した多数決回路を再構成可能な領域に再構成する。なお、本実施の形態では、再構成可能な半導体集積回路(情報処理装置)がFPGAである場合について説明する。
図5は、実施の形態2に係るFPGAの構成を示す図である。情報処理装置の一例であるFPGA5は、所定の情報処理を行いつつ故障発生時には自ら自己修復を行なう半導体装置である。
FPGA5は、複数の多数決回路と、複数のエラー検出回路と、を含んで構成されている。本実施の形態では、多数決回路が、多数決回路51a〜51f(回路A〜F)であり、エラー検出回路が多数決回路51a〜51fに1対1で対応するエラー検出回路52a〜52fである場合について説明する。なお、FPGA5が有する構成要素のうち、多数決回路51a〜51f、エラー検出回路52a〜52f以外の構成要素は、再構成可能な半導体集積回路で構成してもよいし、再構成のできない半導体集積回路で構成してもよい。
FPGA5は、複数の再構成可能な領域(再構成回路領域)と、エラー管理・制御部54と、再構成管理・制御部55と、再構成実行時に再構成データを記憶させておく再構成データ記憶部56と、を具備している。本実施の形態では、再構成可能な領域が再構成可能領域53x(領域X),53y(領域Y)の2領域である場合について説明する。なお、ここでのエラー管理・制御部54と再構成管理・制御部55が特許請求の範囲に記載の新規回路を形成する再構成制御部に対応している。
多数決回路51a〜51fは、例えばそれぞれが3重多数決回路であり、実施の形態1で説明した3重多数決回路1と同様の機能を有している。本実施の形態の多数決回路51a〜51fは、処理系統部を3つずつ備えている。なお、多数決回路51a〜51fは、実施の形態1で説明した比較部12〜14を有していなくてもよい。
エラー検出回路52a〜52fは、それぞれ多数決回路51a〜51fの処理結果をモニタすることによって、多数決回路51a〜51fのエラー検出を行なう。エラー検出回路52a〜52fは、エラー検出結果をエラー管理・制御部54に送る。
エラー管理・制御部54は、故障(エラー)に関する管理や制御を行うブロックである。エラー管理・制御部54は、多数決回路の中から故障の発生した多数決回路51a〜51fを判定するとともに、判定結果に応じた指示を再構成管理・制御部55に送る。エラー管理・制御部54が再構成管理・制御部55に送る指示は、故障の発生した多数決回路を再構成(構築)させる再構成要求である。
再構成管理・制御部55は、再構成データの管理を行うとともに、多数決回路の再構成を制御するブロックである。再構成管理・制御部55は、故障の発生した多数決回路の再構成に必要な再構成データを作成して再構成データ記憶部56に記憶させておく。再構成管理・制御部55は、エラー管理・制御部54からの再構成要求に対応する多数決回路を、再構成可能領域53x,53yの何れかに形成する。再構成管理・制御部55は、再構成データに基づいて、故障の発生した多数決回路を再構成する。
再構成可能領域53x,53yは、故障の発生した多数決回路およびエラー検出回路を再構成させるための領域である。再構成可能領域53x,53yは、それぞれ、例えば多数決回路およびエラー検出回路を1つずつ再構成できる大きさの領域である。再構成データ記憶部56は、再構成管理・制御部55が作成した再構成データを記憶しておく領域(メモリ)である。
図6は、図5に示したFPGAの詳細な構成を示す図である。多数決回路51a〜51fは、実施の形態1で説明した多数決判定論理部15に対応する回路(多数決判定論理部81a〜81f)と、実施の形態1で説明した処理系統部に対応する回路と、を備えている。例えば、多数決回路51aは、多数決判定論理部81aと、処理系統部82Aa〜82Acを、を有している。多数決判定論理部81a〜81fは、それぞれ処理系統部からのデータを入力するとともに、多数決によって決定した処理結果を後段ブロックへ出力する。
また、多数決回路51a〜51fには、それぞれ個別のエラー検出回路52a〜52fが接続されている。エラー検出回路52a〜52fは、それぞれ処理系統部の出力側に接続されている。例えば、多数決回路51aでは、処理系統部82Aaと多数決判定論理部81aとを結ぶ配線、処理系統部82Abと多数決判定論理部81aとを結ぶ配線、処理系統部82Acと多数決判定論理部81aとを結ぶ配線のそれぞれにエラー検出回路52aが接続されている。
この構成により、エラー検出回路(故障検出回路)52a〜52fには、それぞれ多数決判定論理部(多数決回路)81a〜81fと同じデータが入力される。エラー検出回路52a〜52fは、多数決回路51a〜51fの処理結果をモニタし、エラー検出結果をエラー管理・制御部54に送る。
エラー管理・制御部54は、入力されたエラー検出結果に基づいて、故障判定を行なう。具体的には、エラー管理・制御部54は、多数決回路51a〜51fの中から故障の発生している多数決回路を判定する。エラー管理・制御部54は、故障判定に応じた再構成要求として、故障の発生した多数決回路を再構成させるための再構成要求を、再構成管理・制御部55に送る。
再構成管理・制御部55は、故障の発生した多数決回路の再構成に必要な再構成データを作成して再構成データ記憶部56に記憶させておく。再構成管理・制御部55は、再構成データに基づいて、故障した多数決回路と同じ多数決回路を、再構成可能領域53x,53yの何れかに再構成する。
具体的には、再構成管理・制御部55は、故障の発生した多数決回路を再構成する際、再構成データに基づいて、故障の発生した多数決回路と機能的に等価な回路を、再構成可能領域53xまたは再構成可能領域53yに再構成する。そして、再構成管理・制御部55は、故障の発生した多数決回路を新規に再構成した多数決回路に切替える。
図7は、多数決回路の再構成処理手順を示すフローチャートである。また、図8および図9は、多数決回路の再構成処理手順を説明するための図である。ここでは、故障の発生した多数決回路が多数決回路51aであり、多数決回路51aと同じ機能を有した多数決回路51a´が再構成可能領域53x内に再構成される場合について説明する。
情報処理装置としてのFPGA5が動作している間、エラー検出回路52a〜52fは、それぞれ多数決回路51a〜51fのエラー検出処理(故障発生の判定)を行なう(ステップS201)。エラー検出回路52a〜52fは自らの多数決回路内の各処理系統部から送られてくる処理結果を比較することにより、自らの多数決回路内で故障が発生したか否かを判断する(ステップS202)。例えば、エラー検出回路52aは、処理系統部82Aa〜82Acからの各処理結果が全て同じであれば、多数決回路内51aに故障が発生していないと判断する。一方、エラー検出回路52aは、処理系統部82Aa〜82Acからの各処理結果の1つでも他と異なる処理結果があれば、多数決回路内51aに故障が発生したと判断する。
多数決回路51a〜51fの何れかに故障がなければ(ステップS202、No)、エラー検出回路52a〜52fは、エラーが無いことを示すエラー検出結果をエラー管理・制御部54に送る。そして、エラー検出回路52a〜52fは、それぞれ多数決回路51a〜51fのエラー検出処理を継続する(ステップS201)。
一方、多数決回路51a〜51fの何れかに故障があれば(ステップS202、Yes)、故障を検出したエラー検出回路は、エラーを示すエラー検出結果をエラー管理・制御部54に送る。
ここでは、多数決回路51aが故障したと判定された場合について説明する。この場合、例えば、図8に示すように、エラー検出回路52aからエラー管理・制御部54へのエラー検出結果の送信処理(st1)が行なわれる。
なお、図5,6,8では、図示を省略しているが、FPGA5は、多数決回路51c〜51e、エラー検出回路52c〜52eを有しており、エラー検出回路52c〜52eからもエラー管理・制御部54にエラー検出結果が送られる。
エラー管理・制御部54は、入力されたエラー検出結果に基づいて、何れの多数決回路51a〜51fが故障したか否かの判定を行なう(st4)。エラー管理・制御部54は、故障の発生した多数決回路51aを再構成させるための再構成要求を、再構成管理・制御部55に送る(st5)。
これにより、再構成管理・制御部55は、再構成処理を実行する(ステップS203)。具体的には、再構成管理・制御部55は、故障の発生した多数決回路51aの再構成に必要な再構成データを作成して再構成データ記憶部56に記憶させる(st6)。
そして、再構成管理・制御部55は、再構成データに基づいて、再構成可能領域53xへのコンフィギュレーション処理を行う。具体的には、再構成管理・制御部55は、故障の発生した多数決回路51aおよびエラー検出回路52aを、再構成可能領域53xに再構成する(ステップS204)(st7)。これにより、多数決回路51aおよびエラー検出回路52aと同じ機能を有する新規な多数決回路51a´およびエラー検出回路52a´が再構成可能領域53x内に構築される。
この後、再構成管理・制御部55は、故障の発生した多数決回路51aおよびエラー検出回路52aを新規に再構成した多数決回路51a´およびエラー検出回路52a´に切替える(ステップS205)(st8)。
この後、FPGA5は、新規に再構成した多数決回路51a´で情報処理に関する動作を継続するとともに(ステップS206)、新規に再構成したエラー検出回路52a´で多数決回路51a´のエラー検出を行なう。このとき、故障した多数決回路51aおよび多数決回路51aは使用不可とする。
図10は、故障した多数決回路から新規に再構成した多数決回路への切替え処理を説明するための図である。本実施の形態では、回路状態を保持しつつ、回路動作中に故障した多数決回路から新規に再構成した多数決回路への切替えを実施するために、エラー管理・制御部54が多数決回路およびエラー検出回路の故障の有無を記憶しておく。そして、故障の有無に基づいて、再構成管理・制御部55が切替制御信号を生成し、切替制御信号に従って実際の切替えを制御する。
具体的には、故障した回路Aである多数決回路51aおよび新規に再構成した回路Aである多数決回路51a´の後段(出力側)に、セレクタ(第1の切替部)57を配置しておく。また、エラー検出回路52aおよび新規に再構成したエラー検出回路52a´の後段に、セレクタ(第2の切替部)58を配置しておく。セレクタ57,58は、予め情報処理装置内に形成しておいてもよいし、再構成可能な半導体集積回路を用いて再構成管理・制御部55が形成してもよい。
再構成管理・制御部55は、多数決回路51aの出力側の配線および多数決回路51a´の出力側の配線を、再構成可能な半導体集積回路を用いてセレクタ57の入力側に接続しておく。さらに、再構成管理・制御部55は、エラー検出回路52aの出力側の配線およびエラー検出回路52a´の出力側の配線を、再構成可能な半導体集積回路を用いてセレクタ58の入力側に接続しておく。
また、再構成管理・制御部55は、再構成可能な半導体集積回路を用いて、再構成管理・制御部55をセレクタ57,58に接続し、セレクタ58をエラー管理・制御部54に接続しておく。また、再構成管理・制御部55は、再構成可能な半導体集積回路を用いて、多数決回路51aと多数決回路51a´とを接続しておく。故障した多数決回路から新規に再構成し多数決回路への切替えを行う際には、図10に示したセレクタ57,58、セレクタ57,58と接続される配線、多数決回路51aと多数決回路51a´とを接続する配線などを形成しておく。
多数決回路51a´から多数決回路51aへの切替えを行なう前は、再構成管理・制御部55は、切替制御信号として多数決回路51aからの出力を選択させる指示をセレクタ57に入力する。また、再構成管理・制御部55は、切替制御信号としてエラー検出回路52aからの出力を選択させる指示をセレクタ58に入力する。
これにより、セレクタ57からは多数決回路51a(多数決判定論理部81a)からの処理結果が後段ブロックへ出力される。また、セレクタ58からはエラー検出回路52aからのエラー検出結果が後段ブロックへ出力される。
多数決回路51aから多数決回路51a´への切替えを行なう際には再構成管理・制御部55は、切替制御信号として多数決回路51a´を選択させる指示をセレクタ57に入力する。また、再構成管理・制御部55は、切替制御信号としてエラー検出回路52a´を選択させる指示をセレクタ58に入力する。
これにより、セレクタ57からは多数決回路51a´(多数決判定論理部81a´)からの処理結果が後段ブロックへ出力される。また、セレクタ58からはエラー検出回路52a´からのエラー検出結果が後段ブロックへ出力される。
また、多数決回路51aから多数決回路51a´への切替えを行なう際には、多数決回路51aと多数決回路51a´とを接続する配線を介して、多数決回路51aへの入力データを多数決回路51a´にも入力する。なお、実施の形態1のように、多数決回路51aのレジスタなどで記憶していたデータを多数決回路51a´に転送してもよい。これらの処理によって、多数決回路51aの回路状態が多数決回路51a´へコピーされる。
このように、FPGA5では、多数決回路を用いた多重化回路を用いている。そして、エラー検出回路52a〜52fが、多数決回路のエラーを検出し、エラー管理・制御部54が、多数決回路51a〜51fの故障を判定している。
多数決回路51a〜51fの何れかが故障であると判定されると、再構成管理・制御部55は、予め準備しておいた再構成可能な半導体集積回路に、記憶しておいた再構成データから故障した多数決回路のデータをダウンロードしている。これにより、故障した多数決回路が再構成し直される。
このとき、故障した多数決回路の全レジスタの値を、新規に再構成した多数決回路で同一機能を実現するレジスタに全て転送する。これにより、新規に再構成した多数決回路が故障した多数決回路と同一の回路状態になる。この後、再構成管理・制御部55は、故障した多数決回路と新規に再構成した多数決回路を切り替える。これにより、情報処理システムを停止することなく、情報処理機能を修復することが可能となる。
なお、複数の多数決回路で同時に故障が生じた場合、予め設定しておいた優先度に従って再構成する順番を決定する。エラー管理・制御部54へは、予め多数決回路51a〜51fを再構成する際の多数決回路51a〜51f毎の優先度に関する情報(後述の優先度情報84)を格納しておく。
図11は、エラー管理・制御部の構成を示す図である。エラー管理・制御部54は、優先度情報84を記憶しておく優先度記憶部83を備えている。優先度情報84は、例えば多数決回路51a〜51f毎の優先度を示すテーブルである。
優先度情報84には、多数決回路51a〜51f(回路A〜F)毎に再構成の優先度が設定されている。図11の優先度情報84では、回路Aの再構成の優先度が「5」であり、回路Bの再構成の優先度が「2」であり、回路Fの再構成の優先度が「16」である場合を示している。本実施の形態では、各多数決回路51a〜51fは、優先度の数値が大きいほど優先的に再構成される。換言すると、複数の多数決回路が故障した場合、故障した多数決回路の優先度が比較され、優先度の高い多数決回路から順番に再構成されていく。なお、優先度記憶部83は、エラー管理・制御部54の外部に配置してもよい。また、優先度記憶部83は、FPGA5の外部に配置してもよい。
図12〜図14は、複数の多数決回路を再構成する場合の再構成処理を説明するための図である。ここでは、故障の生じた多数決回路が多数決回路51aと多数決回路51fである場合について説明する。
図12は、優先度が高い方の多数決回路を再構成する際のFPGAの処理を示す図であり、図13は、優先度が低い方(第2優先)の多数決回路を再構成する際のFPGAの処理を示す図である。また、図14は、複数の多数決回路が再構成された後のFPGAの構成を示す図である。
複数の多数決回路で同時に故障が生じた場合、エラー管理・制御部54は、故障の生じた多数決回路の中から優先度の最も高い多数決回路を抽出する。故障の生じた多数決回路が多数決回路51a,51fである場合、多数決回路51fの優先度(16)が多数決回路51aの優先度(5)よりも高いので、多数決回路51f(回路F)が多数決回路51a(回路A)よりも先に再構成される。
エラー管理・制御部54は、多数決回路51fの再構成要求を再構成管理・制御部55に出力する。これにより、再構成管理・制御部55は、図12に示すように、例えば再構成可能領域53x(領域X)に多数決回路51fと同様の機能を有した多数決回路51f´およびエラー検出回路52f´を再構成するための指示を送る。
この後、エラー管理・制御部54は、故障の生じた多数決回路の中から次に優先度の高い多数決回路を抽出する。ここでは、多数決回路51a(回路A)が抽出される。エラー管理・制御部54は、多数決回路51aの再構成要求を再構成管理・制御部55に出力する。これにより、再構成管理・制御部55は、図13に示すように、例えば再構成可能領域53y(領域Y)に多数決回路51aと同様の機能を有した多数決回路51a´およびエラー検出回路52a´を再構成するための指示を送る。これにより、図14に示すように、領域Xに多数決回路51f´およびエラー検出回路52f´が再構成され、領域Yに多数決回路51a´およびエラー検出回路52a´が再構成される。
なお、本実施の形態では、多数決回路が、多数決回路51a〜51fの6回路である場合について説明したが、多数決回路は、5回路以下または7回路以上であってもよい。また、本実施の形態では、再構成可能な領域が再構成可能領域53x,53yの2領域である場合について説明したが、再構成可能領域は、1領域または3領域以上であってもよい。また、本実施の形態で説明したFPGA5と実施の形態1で説明した情報処理装置10を組み合わせてもよい。
このように実施の形態2によれば、故障の発生した多数決回路を再構成可能領域に再構成するとともに、再構成した多数決回路と故障の発生した多数決回路とに同じデータを入力してから故障の発生した多数決回路から再構成した多数決回路への切替えを行なうので、情報処理を停止することなく、故障前と同じ情報処理を継続して実行することが可能となる。したがって、情報処理システムの高い信頼性を長期間に亘って維持することが可能となる。
また、複数の多数決回路が同時に故障した場合、各多数決回路に設定しておいた再構成の優先度に従った順番で多数決回路を再構成していくので、重要な多数決回路ほど早く再構成を実施することが可能となる。したがって、情報処理システムの高い信頼性を確保することが可能となる。
実施の形態3.
つぎに、図15を用いてこの発明の実施の形態3について説明する。実施の形態3では、再構成データを生成する手段と、再構成データをダウンロードする手段と、をそれぞれ多重化して、半導体集積回路を再構成する際に用いるデータを多数決により決定する。
図15は、実施の形態3に係る回路再構成装置の構成を示す図である。回路再構成装置60は、FPGAなどの再構成可能な半導体集積回路(再構成可能回路70)に回路を再構成する装置であり、例えば、実施の形態1の情報処理装置10や実施の形態2のFPGA5などの自己修復装置に適用される。
回路再構成装置60は、再構成データ生成部63A,63B,63Cと、再構成部65A,65B,65Cと、多数決判定論理部66と、を有している。再構成可能回路70に再構成される回路は、例えば多数決回路などである。
再構成データ生成部63Aは、回路データ61Daと故障情報62Daとを入力し、回路データ61Daおよび故障情報62Daを用いて、再構成データ64Daを生成する。同様に、再構成データ生成部63Bは、回路データ61Dbと故障情報62Dbとを入力し、回路データ61Dbおよび故障情報62Dbを用いて、再構成データ64Dbを生成する。また、再構成データ生成部63Cは、回路データ61Dcと故障情報62Dcとを入力し、回路データ61Dcおよび故障情報62Dcを用いて、再構成データ64Dcを生成する。
回路データ61Da,61Db,61Dcは、再構成される回路(再構成可能回路)の回路設計データであり、故障情報62Da,62Db,62Dcは、再構成される回路の故障に関する情報(故障箇所の物理的な位置情報)である。故障情報62Da〜62Dcは、例えば、実施の形態1の図2(ステップS102)や図3で説明した故障診断の結果(故障ブロック)である。
再構成データ生成部63A〜63Cは、それぞれ故障の発生した領域(故障箇所)を避けて、故障した処理系統部(再構成可能回路)を再構成するための再構成データ64Da〜Dcを生成する。再構成データ64Da〜64Dcは、再構成される回路をコンフィグレーションするためのデータである。再構成データ64Da〜64Dcは、故障情報62Da〜62Dcを用いて生成されるので、再構成データ64Da〜64Dcは、故障ブロックを除外した位置に再構成可能回路を形成するためのデータとなっている。
再構成部65A〜65Cは、それぞれ再構成データ64Da〜Dcをダウンロードし、再構成データ64Da〜64Dcに対応する回路をコンフィグレーションする。再構成部65A〜65Cは、コンフィグレーションした回路の情報をコンフィグレーションデータ(設定情報)として多数決判定論理部66に送る。
多数決判定論理部66は、再構成部65A〜65Cに接続されている。多数決判定論理部66は、再構成部65A〜65Cで生成されたコンフィグレーションデータの多数決をとる。これにより、多数決判定論理部66は、コンフィグレーションデータの中から多数派のコンフィグレーションデータを選択する。そして、多数決判定論理部66は、選択したコンフィグレーションデータを用いて、このコンフィグレーションデータに対応する回路を再構成可能回路70に再構成する。これにより、再構成可能回路70に多数派のコンフィグレーションデータに対応する回路が形成される。このように、再構成される回路に対する再構成データの生成と再構成回路のコンフィグレーション処理を多重化しているので、再構成される回路のコンフィグレーション処理の信頼性が高まる。
なお、本実施の形態では、故障情報62Da〜62Dcを用いて再構成データ64Da〜64Dcを生成する場合について説明したが、故障情報62Da〜62Dcを用いることなく、回路データ61Da〜61Dcを用いて再構成データ64Da〜64Dcを生成してもよい。
このように実施の形態3によれば、再構成データを生成する手段と、再構成データをダウンロードする手段と、をそれぞれ多重化しているので、回路を再構成する際の信頼性を高めることが可能となる。したがって、再構成可能な半導体集積回路の書き換えの信頼性を高めることが可能となる。
以上のように、本発明にかかる情報処理装置および回路再構成装置は、再構成可能な半導体集積回路の再構成に適している。
1 3重多数決回路
5 FPGA
10 情報処理装置
11A 第1の処理系統
11B 第2の処理系統
11C,11C´ 第3の処理系統
12〜14 比較部
15,66,81a〜81f 多数決判定論理部
17A〜17C,17C´,18A,18B,18C´ 配線
20 故障系統検出回路
22〜24 比較結果出力線
25 故障結果出力線
26 故障診断部
27,63A〜63C 再構成データ生成部
28,65A〜65C 再構成部
30 診断対象領域
32A〜32H,32X ブロック
51a〜51f,51a´,51f´ 多数決回路
52a〜52f,52a´,52f´ エラー検出回路
53x,53y 再構成可能領域
54 エラー管理・制御部
55 再構成管理・制御部
56 再構成データ記憶部
57,58,Sa〜Sc,Sc´ セレクタ
60 回路再構成装置
61Da〜61Dc 回路データ
62Da〜62Dc 故障情報
64Da〜64Dc 再構成データ
70 再構成可能回路
82Aa〜82Ac 処理系統部
83 優先度記憶部
84 優先度情報
L1A 共通配線
L2A〜L2C 出力側配線
Ra〜Rc,Rc´ レジスタ

Claims (9)

  1. 再構成可能な回路で構成されるとともに、外部入力された入力情報に対して同じ情報処理を行う多重化された複数の情報処理部と、
    前記各情報処理部から出力される情報処理の処理結果に基づいて前記処理結果の多数決を行ない、多数決で決定した処理結果を出力する多数決判定部と、
    前記各情報処理部から出力される前記各処理結果に基づいて故障の発生した情報処理部を検出する故障検出部と、
    前記故障検出部が故障の発生した情報処理部を検出した際に、前記再構成可能な回路に、前記故障の発生した情報処理部と同じ機能を有した情報処理部を再構成して新規情報処理部を形成する再構成部と、
    を備え、
    前記各情報処理部は、自身の回路状態を記憶する記憶部をそれぞれ有し、
    前記再構成部は、前記情報処理部の故障が発生した際に、正常動作中の情報処理部が有する記憶部に記憶させる回路状態の情報と同じ情報を正常回路状態情報として前記新規情報処理部の記憶部に入力し、その後、前記新規情報処理部に前記正常動作中の情報処理部と同じ情報処理を行なわせることを特徴とする情報処理装置。
  2. 前記故障検出部が検出した情報処理部内から故障の発生した領域を特定する故障領域特定部をさらに備え、
    前記再構成部は、前記故障領域特定部が特定した領域を除外して、前記再構成可能な回路に新規情報処理部を形成することを特徴とする請求項1に記載の情報処理装置。
  3. 前記再構成部は、前記入力情報および前記正常回路状態情報の何れか一方を前記再構成部の指示に基づいて選択し前記新規情報処理部の記憶部に入力する第1の選択部を、前記新規情報処理部を形成する際に前記新規情報処理部内に形成し、
    前記第1の選択部は、前記新規情報処理部が前記正常動作中の情報処理部と同じ情報処理を行う前に前記正常回路状態情報を選択して前記新規情報処理部の記憶部に入力し、その後、前記入力情報を選択して前記新規情報処理部の記憶部に入力することを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記各情報処理部は、前記入力情報および前記正常回路状態情報の何れか一方を前記再構成部の指示に基づいて選択し自身の記憶部に入力する第2の選択部を有し、
    前記新規情報処理部の前記第2の選択部は、前記新規情報処理部が前記正常動作中の情報処理部と同じ情報処理を行う前に前記正常回路状態情報を選択して前記新規情報処理部の記憶部に入力し、その後、前記入力情報を選択して前記新規情報処理部の記憶部に入力することを特徴とする請求項1または2に記載の情報処理装置。
  5. 外部入力された入力情報に対して同じ情報処理を行う複数の情報処理部を有するとともに前記各情報処理部から出力される情報処理の処理結果に基づいて前記処理結果の多数決を行ない多数決で決定した処理結果を出力する多数決回路と、前記各情報処理部から出力される前記各処理結果に基づいて前記多数決回路の故障を検出する故障検出回路と、を含んで構成された複数組の情報処理回路と、
    再構成可能な回路が配置された領域であり、且つ前記故障検出回路が故障を検出した場合に故障の発生した情報処理回路である故障回路と同じ機能を有した新規回路が前記再構成可能な回路を用いて再構成される再構成回路領域と、
    前記故障検出回路が故障を検出した際に、前記新規回路を前記再構成回路領域内に形成する再構成制御部と、
    を備え、
    前記再構成制御部は、前記新規回路を前記再構成回路領域内に形成した後、前記故障回路を前記新規回路に切替えて、故障する前の前記故障回路と動作と同じ動作を前記新規回路に実行させることを特徴とする情報処理装置。
  6. 前記新規回路の多数決回路から出力される処理結果および前記故障回路の多数決回路から出力される処理結果の何れか一方を前記再構成制御部の指示に基づいて選択し後段部に出力する第1の切替部と、
    前記新規回路の故障検出回路から出力される故障検出結果および前記故障回路の故障検出回路から出力される故障検出結果の何れか一方を前記再構成制御部の指示に基づいて選択し前記再構成制御部に出力する第2の切替部と、
    が、それぞれ前記新規回路を形成する際に前記故障回路および前記新規回路に接続され、
    前記第1の切替部は、前記故障回路を前記新規回路に切替える前は前記故障回路の多数決回路から出力される処理結果を選択して後段部に出力し、前記故障回路を前記新規回路に切替える際に前記新規回路の多数決回路から出力される処理結果を選択して後段部に出力し、
    前記第2の切替部は、前記故障回路を前記新規回路に切替える前は前記故障回路の故障検出回路から出力される故障検出結果を選択して前記再構成制御部に出力し、前記故障回路を前記新規回路に切替える際に前記新規回路の故障検出回路から出力される故障検出結果を選択して前記再構成制御部に出力することを特徴とする請求項5に記載の情報処理装置。
  7. 前記故障回路が発生した場合に前記新規回路を形成する優先度を前記多数決回路毎に予め設定した優先度情報を記憶する記憶部をさらに備え、
    前記再構成制御部は、複数の故障回路が発生した際には、前記優先度情報に基づいて、優先度の高い故障回路から順番に新規回路を形成していくことを特徴とする請求項5または6に記載の情報処理装置。
  8. 再構成される回路の配置配線に関する再構成データを前記回路の設計データに基づいて生成するとともに多重化された複数の再構成データ生成部と、
    再構成可能な回路である再構成可能回路に前記再構成データに応じた回路を形成するための設定情報を、前記再構成データに基づいて生成する前記再構成データ生成部毎の多重化された再構成部と、
    前記各再構成部から出力される設定情報に基づいて前記設定情報の多数決を行ない、多数決で決定した設定情報を出力して、前記再構成可能回路に前記再構成データに応じた回路を形成する多数決判定部と、
    を備えることを特徴とする回路再構成装置。
  9. 前記再構成データ生成部は、再構成される前記回路の故障に関する情報を用いて前記再構成データを生成することを特徴とする請求項8に記載の回路再構成装置。
JP2010085388A 2010-04-01 2010-04-01 情報処理装置 Expired - Fee Related JP5660798B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010085388A JP5660798B2 (ja) 2010-04-01 2010-04-01 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010085388A JP5660798B2 (ja) 2010-04-01 2010-04-01 情報処理装置

Publications (2)

Publication Number Publication Date
JP2011216020A true JP2011216020A (ja) 2011-10-27
JP5660798B2 JP5660798B2 (ja) 2015-01-28

Family

ID=44945650

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010085388A Expired - Fee Related JP5660798B2 (ja) 2010-04-01 2010-04-01 情報処理装置

Country Status (1)

Country Link
JP (1) JP5660798B2 (ja)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014178793A (ja) * 2013-03-14 2014-09-25 Hitachi Ltd 情報処理システム
JP2014229130A (ja) * 2013-05-23 2014-12-08 株式会社日立製作所 高信頼プロセッサおよびそれを用いた高信頼制御装置
WO2015104810A1 (ja) * 2014-01-09 2015-07-16 株式会社日立製作所 Fpga及び該fpgaを用いた高信頼システム
JP2015154417A (ja) * 2014-02-18 2015-08-24 株式会社日立製作所 プログラマブル回路装置、コンフィギュレーション情報修復方法
JP2015201813A (ja) * 2014-04-10 2015-11-12 株式会社日立製作所 プログラマブルゲートアレイ
KR101606289B1 (ko) 2013-12-17 2016-03-24 가부시끼가이샤 도시바 프로그래머블 컨트롤러
JP2016080364A (ja) * 2014-10-09 2016-05-16 株式会社日立超エル・エス・アイ・システムズ 半導体装置
WO2016178332A1 (ja) * 2015-05-07 2016-11-10 株式会社制御システム研究所 プログラマブルロジックデバイス、プログラマブルロジックデバイスのエラー検証方法、及びプログラマブルロジックデバイスの回路形成方法
WO2016207933A1 (ja) * 2015-06-22 2016-12-29 株式会社日立製作所 フィールドプログラマブルゲートアレイ
JP2017011424A (ja) * 2015-06-19 2017-01-12 ルネサスエレクトロニクス株式会社 半導体装置及びその制御方法
JP2017016319A (ja) * 2015-06-30 2017-01-19 日本信号株式会社 多重化データ処理装置
JP2017021712A (ja) * 2015-07-14 2017-01-26 株式会社東芝 多重化制御装置
US9584131B2 (en) 2015-04-28 2017-02-28 Sony Corporation Programmable device, information processing device, and control method for processing circuit of programmable device
JP2017049758A (ja) * 2015-09-01 2017-03-09 三菱電機株式会社 データ処理装置
KR20170060028A (ko) * 2014-09-24 2017-05-31 자일링크스 인코포레이티드 안전 서브-시스템을 가지는 프로그램가능 ic
JP2017138882A (ja) * 2016-02-05 2017-08-10 日本電気株式会社 情報処理装置
JP2017182670A (ja) * 2016-03-31 2017-10-05 日本電気株式会社 情報処理システム、トランジスタ回路の診断方法及びプログラム
JP2019075786A (ja) * 2017-10-18 2019-05-16 インフィネオン テクノロジーズ アーゲーInfineon Technologies Ag データを処理するための方法および装置
JP2019185806A (ja) * 2019-07-10 2019-10-24 三菱電機株式会社 データ処理装置
US11042431B2 (en) 2018-05-16 2021-06-22 Fujitsu Limited Circuit arrangement region failure prediction apparatus and method based on sensor output score
US11314606B2 (en) 2017-01-10 2022-04-26 Mitsubishi Electric Corporation Substitution device, information processing system, and substitution method
JP7268826B1 (ja) 2022-02-21 2023-05-08 Necプラットフォームズ株式会社 三重化冗長回路における復元装置及び復元方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0844581A (ja) * 1994-07-29 1996-02-16 Fujitsu Ltd 自己修復機能付き情報処理装置
JP2000147058A (ja) * 1998-11-05 2000-05-26 Dainippon Printing Co Ltd 自己診断機能部を有するデバイス
JP2009211517A (ja) * 2008-03-05 2009-09-17 Nec Corp 仮想計算機冗長化システム
JP2009534738A (ja) * 2006-04-21 2009-09-24 ハネウェル・インターナショナル・インコーポレーテッド フォールト・トレランス・コンピューティング・システムにおけるエラー・フィルタリング

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0844581A (ja) * 1994-07-29 1996-02-16 Fujitsu Ltd 自己修復機能付き情報処理装置
JP2000147058A (ja) * 1998-11-05 2000-05-26 Dainippon Printing Co Ltd 自己診断機能部を有するデバイス
JP2009534738A (ja) * 2006-04-21 2009-09-24 ハネウェル・インターナショナル・インコーポレーテッド フォールト・トレランス・コンピューティング・システムにおけるエラー・フィルタリング
JP2009211517A (ja) * 2008-03-05 2009-09-17 Nec Corp 仮想計算機冗長化システム

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014178793A (ja) * 2013-03-14 2014-09-25 Hitachi Ltd 情報処理システム
JP2014229130A (ja) * 2013-05-23 2014-12-08 株式会社日立製作所 高信頼プロセッサおよびそれを用いた高信頼制御装置
KR101606289B1 (ko) 2013-12-17 2016-03-24 가부시끼가이샤 도시바 프로그래머블 컨트롤러
WO2015104810A1 (ja) * 2014-01-09 2015-07-16 株式会社日立製作所 Fpga及び該fpgaを用いた高信頼システム
JP2015154417A (ja) * 2014-02-18 2015-08-24 株式会社日立製作所 プログラマブル回路装置、コンフィギュレーション情報修復方法
JP2015201813A (ja) * 2014-04-10 2015-11-12 株式会社日立製作所 プログラマブルゲートアレイ
KR102386719B1 (ko) 2014-09-24 2022-04-13 자일링크스 인코포레이티드 안전 서브-시스템을 가지는 프로그램가능 ic
KR20170060028A (ko) * 2014-09-24 2017-05-31 자일링크스 인코포레이티드 안전 서브-시스템을 가지는 프로그램가능 ic
JP2017535125A (ja) * 2014-09-24 2017-11-24 ザイリンクス インコーポレイテッドXilinx Incorporated セーフティサブシステムを有するプログラマブルic
JP2016080364A (ja) * 2014-10-09 2016-05-16 株式会社日立超エル・エス・アイ・システムズ 半導体装置
US9584131B2 (en) 2015-04-28 2017-02-28 Sony Corporation Programmable device, information processing device, and control method for processing circuit of programmable device
WO2016178332A1 (ja) * 2015-05-07 2016-11-10 株式会社制御システム研究所 プログラマブルロジックデバイス、プログラマブルロジックデバイスのエラー検証方法、及びプログラマブルロジックデバイスの回路形成方法
JP2016213637A (ja) * 2015-05-07 2016-12-15 株式会社制御システム研究所 プログラマブルロジックデバイスのエラー検証方法、及びプログラマブルロジックデバイスの回路形成方法
US10067742B2 (en) 2015-05-07 2018-09-04 Control System Laboratory Ltd. Programmable logic device, method for verifying error of programmable logic device, and method for forming circuit of programmable logic device
JP2017011424A (ja) * 2015-06-19 2017-01-12 ルネサスエレクトロニクス株式会社 半導体装置及びその制御方法
US10216566B2 (en) 2015-06-22 2019-02-26 Hitachi, Ltd. Field programmable gate array
WO2016207933A1 (ja) * 2015-06-22 2016-12-29 株式会社日立製作所 フィールドプログラマブルゲートアレイ
JPWO2016207933A1 (ja) * 2015-06-22 2018-03-08 株式会社日立製作所 フィールドプログラマブルゲートアレイ
JP2017016319A (ja) * 2015-06-30 2017-01-19 日本信号株式会社 多重化データ処理装置
JP2017021712A (ja) * 2015-07-14 2017-01-26 株式会社東芝 多重化制御装置
JP2017049758A (ja) * 2015-09-01 2017-03-09 三菱電機株式会社 データ処理装置
JP2017138882A (ja) * 2016-02-05 2017-08-10 日本電気株式会社 情報処理装置
JP2017182670A (ja) * 2016-03-31 2017-10-05 日本電気株式会社 情報処理システム、トランジスタ回路の診断方法及びプログラム
US11314606B2 (en) 2017-01-10 2022-04-26 Mitsubishi Electric Corporation Substitution device, information processing system, and substitution method
JP2019075786A (ja) * 2017-10-18 2019-05-16 インフィネオン テクノロジーズ アーゲーInfineon Technologies Ag データを処理するための方法および装置
JP7446708B2 (ja) 2017-10-18 2024-03-11 インフィネオン テクノロジーズ アーゲー データを処理するための方法および装置
US11042431B2 (en) 2018-05-16 2021-06-22 Fujitsu Limited Circuit arrangement region failure prediction apparatus and method based on sensor output score
JP2019185806A (ja) * 2019-07-10 2019-10-24 三菱電機株式会社 データ処理装置
JP7268826B1 (ja) 2022-02-21 2023-05-08 Necプラットフォームズ株式会社 三重化冗長回路における復元装置及び復元方法
JP2023121471A (ja) * 2022-02-21 2023-08-31 Necプラットフォームズ株式会社 三重化冗長回路における復元装置及び復元方法

Also Published As

Publication number Publication date
JP5660798B2 (ja) 2015-01-28

Similar Documents

Publication Publication Date Title
JP5660798B2 (ja) 情報処理装置
US7877627B1 (en) Multiple redundant computer system combining fault diagnostics and majority voting with dissimilar redundancy technology
CN102608965B (zh) 在过程设备中升级及提供控制冗余的方法及设备
US8117512B2 (en) Failure detection and mitigation in logic circuits
US20110066779A1 (en) Data processing system, data processing method, and apparatus
Yang et al. Self-repairing digital system with unified recovery process inspired by endocrine cellular communication
JP2006309700A (ja) 動的代替機能を持つ論理集積回路、これを用いた情報処理装置及び論理集積回路の動的代替方法
JP2534430B2 (ja) フォ―ルト・トレランスのあるコンピュ―タ・システム出力の合致を達成するための方法
CN111326504A (zh) 具有被配置成提供冗余点的功能块的3d堆叠式集成电路
JP2009140353A (ja) 再構成可能な集積回路、及びこれを用いた自己修復システム
JPH07141408A (ja) 集積電子回路装置
Macias et al. Self-assembling circuits with autonomous fault handling
Baig et al. An island-style-routing compatible fault-tolerant FPGA architecture with self-repairing capabilities
JPH11203157A (ja) 冗長装置
CN114253225A (zh) 自愈合过程控制系统
JP2013187699A (ja) Fpga構成処理制御回路
KR101137771B1 (ko) 내분비세포통신의 메커니즘에 기반한 디지털회로 자가고장복구 시스템 및 방법
JP6889138B2 (ja) 格納装置及び格納方法
Soto et al. A self-adaptive hardware architecture with fault tolerance capabilities
Rozanov et al. Approaches to the SoC IP-Blocks' design with errors' mitigation
Prajeesh et al. Implementation of human endocrine cell structure on FPGA for self-healing advanced digital system
Avizienis et al. The concept of a software-free resilience infrastructure for cyber-physical systems
JP6090335B2 (ja) 情報処理装置
JP2015082671A (ja) 半導体装置
Takanami et al. Self-restructuring Mesh-connected Processor Arrays through Spares on Moved Diagonals, Direct Replacement and Built-in Circuits

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140407

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141009

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: 20141104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141202

R150 Certificate of patent or registration of utility model

Ref document number: 5660798

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees