JP2018165908A - Information processor and information processing method and program - Google Patents
Information processor and information processing method and program Download PDFInfo
- Publication number
- JP2018165908A JP2018165908A JP2017063000A JP2017063000A JP2018165908A JP 2018165908 A JP2018165908 A JP 2018165908A JP 2017063000 A JP2017063000 A JP 2017063000A JP 2017063000 A JP2017063000 A JP 2017063000A JP 2018165908 A JP2018165908 A JP 2018165908A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- unit
- fpga
- task
- information
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
Abstract
Description
本発明は、情報処理装置、情報処理方法及びプログラムに関する。 The present invention relates to an information processing apparatus, an information processing method, and a program.
CPU(Central Processing Unit)と、回路情報に基づいてプログラム可能な論理回路の構成を変更可能なFPGA(Field Programmable Gate Array)とを有し、処理の一部をFPGAにより実行する情報処理装置(FPGAサーバ)がある。FPGAで発生する故障には、宇宙線等により回路情報のデータが化けるソフトエラーや、断線や短絡等により回路の書き換えが不能になるハードエラーがある。ソフトエラーが発生した場合には再度同じ回路情報の書き込みを行うことで復帰可能であるが、ハードエラーが発生した場合には故障箇所は物理的に壊れているので恒久的に使用できない。 An information processing apparatus (FPGA) having a CPU (Central Processing Unit) and an FPGA (Field Programmable Gate Array) capable of changing the configuration of a programmable logic circuit based on circuit information, and executing part of the processing by the FPGA Server). Faults occurring in the FPGA include a soft error in which circuit information data is changed due to cosmic rays or the like, and a hard error in which the circuit cannot be rewritten due to disconnection or short circuit. If a soft error occurs, it can be recovered by writing the same circuit information again. However, if a hard error occurs, the fault location is physically broken and cannot be used permanently.
FPGAにおける故障は、一般的に検出可能である。例えば、回路情報が書かれているメモリ(CRAM)の故障はCRC(Cyclic Redundancy Code)等の誤り検出方式で検出可能であり、回路の故障は動作確認用のテストデータを用いることで検出可能である。また、故障を検出するセルフチェッキング回路を用いることで、セル部分の故障箇所を検出可能なFPGAが提案されている(例えば、特許文献1参照)。 Faults in the FPGA are generally detectable. For example, a failure of a memory (CRAM) in which circuit information is written can be detected by an error detection method such as CRC (Cyclic Redundancy Code), and a failure of a circuit can be detected by using test data for operation confirmation. is there. Further, there has been proposed an FPGA that can detect a failure portion of a cell portion by using a self-checking circuit that detects a failure (see, for example, Patent Document 1).
FPGAでは、同じ機能を実現する回路でも、FPGA内での回路を配置する位置が異なると、回路情報は異なる。同じ機能を実現するための複数の回路情報を予め用意しておき、FPGAで故障を検出した場合に、故障箇所を含まないで回路を構成する回路情報に切り替えることで、故障箇所を避けて機能を回復する技術が提案されている(例えば、特許文献2参照)。 In the FPGA, even in a circuit that realizes the same function, circuit information is different if the position of the circuit in the FPGA is different. Prepare multiple circuit information for realizing the same function in advance, and when a failure is detected by the FPGA, it is possible to avoid the failure location by switching to the circuit information that configures the circuit without including the failure location. Has been proposed (for example, see Patent Document 2).
前述のように同じ機能を実現するための複数の回路情報を予め用意する場合には、ハードウェア故障(ハードエラー)の発生を想定する位置の種類だけ回路情報を用意する必要がある。これには、故障箇所を含むわずかな範囲を使用不可とする多量の種類の回路情報を用意するか、あるいは故障箇所を含む粗い範囲を使用不可とする回路情報を用意するか、という何れかの課題がある。多くの種類の回路情報を用意すると、故障箇所として使用不可にする範囲を小さくすることが可能であるが、用意する回路情報を記憶するための記憶容量が大きくなる。一方、用意する回路情報の種類が少ないと、故障箇所として使用不可となる範囲が大きくなり、使用できる回路資源が少なくなる。1つの側面では、本発明の目的は、回路情報に基づいて回路構成を変更可能な再構成デバイスを有する情報処理装置にて、再構成デバイスのハードウェア故障を検出した場合、故障ブロックを避けた論理回路の再構成を可能にする情報処理装置を提供することにある。 As described above, when a plurality of pieces of circuit information for realizing the same function are prepared in advance, it is necessary to prepare circuit information for only the types of positions that are assumed to cause a hardware failure (hard error). This can be done either by preparing a large amount of circuit information that disables use of a small range including a fault location, or by preparing circuit information that disables use of a rough range including a fault location. There are challenges. If many types of circuit information are prepared, it is possible to reduce the range in which the circuit information cannot be used as a failure location, but the storage capacity for storing the prepared circuit information increases. On the other hand, if the number of types of circuit information to be prepared is small, the range that cannot be used as a failure location increases, and the circuit resources that can be used decrease. In one aspect, an object of the present invention is to avoid a failure block when a hardware failure of a reconfiguration device is detected in an information processing apparatus having a reconfiguration device capable of changing a circuit configuration based on circuit information. An object of the present invention is to provide an information processing apparatus that enables reconfiguration of a logic circuit.
情報処理装置の一態様は、論理のプログラム可能な複数のブロックを有し、回路情報に基づいてブロックを再構成することにより回路構成を変更可能な再構成デバイスと、タスクを処理する回路のソースコードから回路情報を合成する合成部と、再構成デバイスの故障を検出する検出部とを有する。検出部は、再構成デバイスのハードウェア故障を検出した場合、ハードウェア故障したブロックを特定し、合成部は、特定されたハードウェア故障したブロックを避けた回路情報を合成する。 One aspect of an information processing apparatus includes a reconfigurable device having a plurality of logic programmable blocks and capable of changing a circuit configuration by reconfiguring the blocks based on circuit information, and a source of a circuit that processes a task A synthesis unit that synthesizes circuit information from the code, and a detection unit that detects a failure of the reconfigurable device. When the detection unit detects a hardware failure of the reconfigurable device, the detection unit identifies a block having a hardware failure, and the synthesis unit synthesizes circuit information that avoids the identified block having the hardware failure.
発明の一態様においては、再構成デバイスのハードウェア故障を検出した場合、ハードウェア故障したブロックを特定して故障ブロックを避けた回路情報を合成し、複数の回路情報を予め用意することなく、故障ブロックを避けた論理回路の再構成が可能となる。 In one aspect of the invention, when a hardware failure of a reconfigurable device is detected, a block in which a hardware failure is identified and circuit information that avoids the failed block is synthesized, and a plurality of circuit information is prepared in advance. It is possible to reconfigure the logic circuit avoiding the failure block.
以下、本発明の実施形態を図面に基づいて説明する。
図1は、本発明の一実施形態における情報処理システムの構成例を示す図である。本実施形態における情報処理システムは、ネットワーク30を介して通信可能な管理サーバ10と複数のFPGAサーバ20とを有する。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a diagram illustrating a configuration example of an information processing system according to an embodiment of the present invention. The information processing system according to this embodiment includes a
管理サーバ10は、CPU(Central Processing Unit)11及び記憶部12を有する。CPU11が、記憶部12からプログラムを読み出して実行することで、管理サーバ10の各機能が実現される。記憶部12は、CPU11が実行するプログラムを含む各種データ等を記憶する。
The
管理サーバ10は、図示しないクライアントサーバからタスク処理の依頼を受けて各FPGAサーバ20にタスクを割り振るとともに、FPGAサーバ20からタスクの実行結果を受けてクライアントサーバに返す。なお、タスクの実行結果は、FPGAサーバ20からクライアントサーバに直接返すようにしてもよい。
The
また、管理サーバ10は、タスクを処理する回路のソースコードから回路情報を合成してFPGAサーバ20に提供する。ここで、管理サーバ10は、故障ブロックを避けた新たな回路情報の再合成の依頼をFPGAサーバ20から受けた場合、故障ブロックを避けて論理回路を配置する回路情報を合成してFPGAサーバ20に提供する。
In addition, the
FPGAサーバ20は、CPU21、記憶部22、及びFPGA(Field Programmable Gate Array)23を有する。CPU21が、記憶部22からプログラムを読み出して実行することで、FPGAサーバ20の各機能が実現され、例えばFPGA23に係る制御を行う。記憶部22は、CPU21が実行するプログラムやFPGA23に書き込む回路情報を含む各種データ等を記憶する。
The FPGA server 20 includes a
再構成デバイスとしてのFPGA23は、論理のプログラム可能な複数のブロックを有し、動作中の論理回路の動作を停止させずに、プログラム可能なブロックの回路構成を部分的に再構成することにより変更することができる動的部分再構成が可能なFPGAである。すなわち、FPGA23は、動的部分再構成により論理回路の構成が変更可能である。FPGA23は、他の実行中のタスクを止めずに、空いているブロックに新たに実行するタスクを処理する回路を動的部分再構成により配置することで、1つのFPGAで複数のタスクを非同期に実行可能である。
The
FPGAサーバ20は、管理サーバ10からタスク処理を実行可能か否かの問い合わせを受けると、問い合わせに対する応答を管理サーバ10に返す。また、FPGAサーバ20は、管理サーバ10からタスクの実行が依頼された場合、そのタスクを処理する回路の回路情報をFPGA23に書き込んでタスクを実行し、実行結果を管理サーバ10に返す。なお、タスクの実行結果は、タスク処理を依頼したクライアントサーバに直接返すようにしてもよい。
When the FPGA server 20 receives an inquiry from the
また、FPGAサーバ20は、FPGA23におけるハードエラー(ハードウェア故障)を検出する機能を有する。FPGAサーバ20は、FPGA23のハードエラーを検出した場合、故障ブロックを特定して、特定された故障ブロックを使用する回路情報を破棄するとともに、故障ブロックを避けた新たな回路情報の再合成を管理サーバ10に依頼する。管理サーバ10での再合成が完了した後、管理サーバ10がFPGAサーバ20に再合成した回路情報を提供することで、FPGAサーバ20がタスクを実行可能なように復帰される。
The FPGA server 20 has a function of detecting a hardware error (hardware failure) in the
図2は、本実施形態における管理サーバ及びFPGAサーバの機能構成例を示すブロック図である。図2においては、1つのFPGAサーバだけを図示している。管理サーバ210は、タスク制御部211、回路ソース記憶部212、及び回路情報合成部213を有する。タスク制御部211は制御部の一例であり、回路情報合成部213は合成部の一例である。タスク制御部211及び回路情報合成部213は、例えば管理サーバのCPU11が記憶部12からプログラムを読み出して実行することで実現され、回路ソース記憶部212は、例えば管理サーバの記憶部12により実現される。
FIG. 2 is a block diagram illustrating a functional configuration example of the management server and the FPGA server in the present embodiment. In FIG. 2, only one FPGA server is illustrated. The
タスク制御部211は、クライアントサーバからタスク処理の依頼を受け、依頼されたタスク処理を実行可能か否かの問い合わせを各FPGAサーバ220に対して行う。タスク制御部211は、問い合わせに対するFPGAサーバ220からの応答に基づいて、タスクを割り当てるFPGAサーバ220を決定し、そのFPGAサーバ220にタスクの実行依頼を送る。また、タスク制御部211は、FPGAサーバ220からタスクの実行結果を受け、タスク処理を依頼したクライアントサーバに返す。
The
回路ソース記憶部212は、各タスクを処理する論理回路のソースコード(例えばHDL:Hardware Description Language記述された回路構成)を記憶する。回路情報合成部213は、回路ソース記憶部212に記憶された論理回路のソースコードから、その論理回路をFPGAに構成するための回路情報を合成してFPGAサーバ220に提供する。また、回路情報合成部213は、故障ブロックを避けた新たな回路情報の再合成の依頼をFPGAサーバ220から受けた場合、回路ソース記憶部212に記憶されたソースコードを基に、故障ブロックを避けて論理回路を構成する回路情報を再合成してFPGAサーバ220に提供する。
The circuit
FPGAサーバ220は、タスク管理部221、回路情報管理部222、回路情報記憶部223、回路情報書き込み部224、FPGA回路部225、実行結果記憶部226、及びFPGA回路監視部227を有する。タスク管理部221は制御部の一例であり、回路情報管理部222は管理部の一例であり、回路情報記憶部223は記憶部の一例であり、FPGA回路部225は再構成デバイスの一例であり、FPGA回路監視部227は検出部の一例である。タスク管理部221、回路情報管理部222、回路情報書き込み部224、及びFPGA回路監視部227は、例えばFPGAサーバのCPU21が記憶部22からプログラムを読み出して実行することで実現される。また、回路情報記憶部223及び実行結果記憶部226は例えばFPGAサーバの記憶部22により実現され、FPGA回路部225は例えばFPGAサーバのFPGA23により実現される。
The
タスク管理部221は、管理サーバ210からタスク処理を実行可能か否かの問い合わせを受け、タスク処理を実行可能であるかを判断して管理サーバ210に実行可否を応答する。タスク管理部221は、依頼されるタスクを処理する論理回路の回路情報を有しているか、その回路情報を書き込める空きブロックがFPGA回路部225にあるか、及びその回路情報を書き込める空きブロックがない場合、何のタスクを実行しているか等に基づいて、タスク処理を実行可能か否かを判断する。
The
また、タスク管理部221は、管理サーバ210からタスクの実行依頼を受けた場合、そのタスクを処理する論理回路の回路情報を回路情報書き込み部224によりFPGA回路部225に書き込んでタスクを実行させる制御を行う。タスク管理部221は、実行結果記憶部226に記憶されるタスクの実行結果を管理サーバ210に返す。
When the
回路情報管理部222は、FPGAサーバ220における回路情報に係る管理を行う。回路情報管理部222は、ソースコードを基に合成され管理サーバ210から提供される回路情報を回路情報記憶部223に記憶する。回路情報管理部222は、FPGA回路監視部227による監視結果が通知される。FPGA回路監視部227によりFPGA回路部225でハードエラーが検出されて故障ブロックが通知されると、回路情報管理部222は、回路情報記憶部223に記憶している回路情報の内から、その故障ブロックを使用する回路情報を削除する。また、回路情報管理部222は、故障ブロックを避けた新たな回路情報の再合成を管理サーバ210に依頼する。
The circuit
回路情報記憶部223は、タスクを処理する論理回路の回路情報、及びそのタスクの動作確認用データを記憶する。回路情報書き込み部224は、実行依頼されたタスクを処理する論理回路の回路情報を回路情報記憶部223から読み出してFPGA回路部225に書き込む。FPGA回路部225は、論理のプログラム可能な複数のブロックを有しており、書き込まれた回路情報に応じてプログラム可能なブロックの回路構成を変更し、実行依頼されたタスクを実行する。実行結果記憶部226は、FPGA回路部225で実行されるタスクの実行結果を記憶する。
The circuit
FPGA回路監視部227は、FPGA回路部225の状態を監視して、監視結果をタスク管理部221及び回路情報管理部222に通知する。FPGA回路監視部227は、書き込まれている回路情報のCRC等による誤り検出を行ったり、FPGA回路部225の出力を検出したりするなどして、FPGA回路部225が正常に動作しているか否かを定期的に検査する。FPGA回路監視部227は、FPGA回路部225で回路故障が発生した場合、その故障がソフトエラーであるかハードエラーであるかを判定して通知するとともに、ハードエラーであれば故障ブロックを特定して通知する。
The FPGA
次に、動作について説明する。正常動作時の処理について図3を参照して説明し、故障発生時の処理について図4(A)及び図4(B)を参照して説明する。 Next, the operation will be described. The process at the time of normal operation will be described with reference to FIG. 3, and the process at the time of failure will be described with reference to FIGS. 4 (A) and 4 (B).
図3は、本実施形態における正常動作時の処理の流れの例を示す図である。
管理サーバ210のタスク制御部211は、クライアントサーバからタスク処理の実行依頼を受けると(301)、実行依頼されたタスク処理の実行可否を各FPGAサーバ220に問い合わせる(302)。管理サーバ210からの問い合わせを受けたFPGAサーバ220のタスク管理部221は、タスク処理を実行可能であるか否かを判断して管理サーバ210に実行可否を回答する(303)。管理サーバ210のタスク制御部211は、各FPGAサーバ220からの回答に基づいて、タスクを割り当てるFPGAサーバ220を決定し、そのFPGAサーバ220にタスクの実行依頼を送る(304)。
FIG. 3 is a diagram illustrating an example of the flow of processing during normal operation in the present embodiment.
When the
FPGAサーバ220のタスク管理部221は、管理サーバ210からタスクの実行依頼を受けると、そのタスクをFPGA回路部225で実行させるための制御を行う。例えば、実行依頼されたタスクを処理する論理回路の回路情報がFPGA回路部225に書き込まれていないときには、その回路情報を回路情報記憶部223から読み出して回路情報書き込み部224によりFPGA回路部225に書き込ませる。そして、FPGA回路部225への回路情報の書き込みが終了したら、そのタスクの動作確認用データを用いて正しく回路が動作することをFPGA回路監視部227により確認させる。
Upon receiving a task execution request from the
正しく回路が動作することが確認できたら、FPGAサーバ220のFPGA回路部225は、実行依頼されたタスクを実行し、実行結果を実行結果記憶部226に記憶する。FPGAサーバ220のタスク管理部221は、実行結果記憶部226から実行結果を適宜取得して、管理サーバ210に送る(305、306、307)。ここで、FPGAサーバ220のFPGA回路監視部227は、タスクの実行中、FPGA回路部225が正常動作していることを定期的にチェックしている。なお、FPGA回路部225が正常動作していることが確認できたときには、タスクが中断したとき等のリカバリポイントとしてタスク処理の中間データを記憶部等に記憶しておくようにしてもよい。
When it is confirmed that the circuit operates correctly, the
そして、実行依頼されたタスクの実行が完了すると、FPGAサーバ220のタスク管理部221は、タスクの実行完了を管理サーバ210に通知する(308)。管理サーバ210のタスク制御部211は、FPGAサーバ220からタスクの実行完了通知を受けると、タスクの実行結果をクライアントサーバに返して(309)、処理を終了する。
When the execution of the requested task is completed, the
図4(A)及び図4(B)は、本実施形態における故障発生時の処理の流れの例を示す図である。図4(A)には、回路故障がソフトエラーである場合を示し、図4(B)には回路故障がハードエラーである場合を示している。 FIG. 4A and FIG. 4B are diagrams illustrating an example of a processing flow when a failure occurs in the present embodiment. FIG. 4A shows a case where the circuit failure is a soft error, and FIG. 4B shows a case where the circuit failure is a hard error.
図4(A)及び図4(B)に示すように、管理サーバ210のタスク制御部211は、クライアントサーバからタスク処理の実行依頼を受けると(401)、実行依頼されたタスク処理の実行可否を各FPGAサーバ220に問い合わせる(402)。管理サーバ210からの問い合わせを受けたFPGAサーバ220のタスク管理部221は、タスク処理を実行可能であるか否かを判断して管理サーバ210に実行可否を回答する(403)。管理サーバ210のタスク制御部211は、各FPGAサーバ220からの回答に基づいて、タスクを割り当てるFPGAサーバ220を決定し、そのFPGAサーバ220にタスクの実行依頼を送る(404)。
As shown in FIGS. 4A and 4B, when the
FPGAサーバ220のタスク管理部221は、管理サーバ210からタスクの実行依頼を受けると、そのタスクをFPGA回路部225で実行させるための制御を行う。例えば、実行依頼されたタスクを処理する論理回路の回路情報がFPGA回路部225に書き込まれていないときには、その回路情報を回路情報記憶部223から読み出して回路情報書き込み部224によりFPGA回路部225に書き込ませる。そして、FPGA回路部225への回路情報の書き込みが終了したら、そのタスクの動作確認用データを用いて正しく回路が動作することをFPGA回路監視部227により確認させる。
Upon receiving a task execution request from the
正しく回路が動作することが確認できたら、FPGAサーバ220のFPGA回路部225は、実行依頼されたタスクを実行し、実行結果を実行結果記憶部226に記憶する。ここで、FPGAサーバ220のFPGA回路監視部227は、タスクの実行中、FPGA回路部225が正常動作していることを定期的にチェックしている。なお、FPGA回路部225が正常動作していることが確認できたときには、タスクが中断したとき等のリカバリポイントとしてタスク処理の中間データを記憶部等に記憶しておくようにしてもよい。
When it is confirmed that the circuit operates correctly, the
この例では、FPGAサーバ220において、FPGA回路監視部227によりFPGA回路部225の正常動作が確認され(405)、FPGAサーバ220のタスク管理部221が、実行結果記憶部226から実行結果を取得して、管理サーバ210に送る(406)。その後、タスクの実行中に、FPGAサーバ220のFPGA回路監視部227によりFPGA回路部225での回路故障が発見されてタスク管理部221に通知され(407)、タスク管理部221はタスクの実行失敗を管理サーバ210に通知する(408)。
In this example, in the
管理サーバ210のタスク制御部211は、タスクの実行失敗の通知を受けると、タスクを実行していたFPGAサーバ220に対して正常動作時の中間データの取得を要求し、正常動作時の実行結果である中間データを取得する(409)。そして、管理サーバ210のタスク制御部211は、取得した中間データを提供するなどして、回路故障により実行不能となったタスクの実行を他のFPGAサーバに依頼し、タスクの実行を継続させる(410)。他のFPGAサーバによるタスクの実行が完了すると、管理サーバ210は、タスクの実行結果をクライアントサーバに返す(411)。
Upon receiving notification of task execution failure, the
また、回路故障が発見されたFPGAサーバ220では、FPGA回路部225内の回路故障が発見された回路を書き込んだブロックにチェッキング回路(診断回路)を書き込んで動作させ、FPGA回路監視部227による故障ブロックの特定を行う。なお、チェッキング回路は、ハードエラーが発生したときに、故障したブロックが特定可能な回路である。チェッキング回路としては、例えばあるデータパターンを入力したときに出力されるデータパターンを検出することで故障箇所を示す情報が得られるような回路が適用可能である。
In addition, in the
回路故障が発見された回路を書き込んだブロックにチェッキング回路を書き込んで動作させた結果、チェッキング回路で正常動作が確認された(ブロックの故障を示さない)場合、図4(A)に示すように、FPGA回路監視部227は、回路故障がソフトエラーであると判定する。この場合には、回路故障が発見されたFPGAサーバ220は、元の回路情報をFPGA回路部225に再び書き込むソフトエラー対策により復帰させることが可能である。
When a normal operation is confirmed in the checking circuit as a result of writing and operating the checking circuit in the block in which the circuit in which the circuit failure is found is written (shown in FIG. 4A), it is shown in FIG. As described above, the FPGA
また、回路故障が発見された回路を書き込んだブロックにチェッキング回路を書き込んで動作させた結果、故障ブロックが特定された場合、図4(B)に示すように、FPGA回路監視部227は、回路故障がハードエラーであると判定する(421、422、423)。この場合には、FPGA回路監視部227は、発見された回路故障がハードエラーであることと特定された故障ブロックを回路情報管理部222に通知する。
Further, when a failure block is identified as a result of writing and operating a checking circuit in a block in which a circuit in which a circuit failure is found is written, as shown in FIG. 4B, the FPGA
回路故障がハードエラーであることを通知された回路情報管理部222は、回路情報記憶部223に記憶している回路情報の内から、特定された故障ブロックを使用する回路情報を探して削除する。また、回路情報管理部222は、管理サーバ210に対して、実行していたタスクと故障ブロックを通知し、故障ブロックを避けた(故障ブロックを使用しない)新たな回路情報の合成を管理サーバ210に依頼する(424)。
The circuit
故障ブロックを避けた新たな回路情報の合成の依頼を受けた管理サーバ210では、回路情報合成部213が、通知されたタスクと故障ブロックに基づいて、故障ブロックを避けた回路情報を再合成する(425)。管理サーバ210の回路情報合成部213は、故障ブロックを避けた回路情報を再合成が完了すると、再合成した回路情報をFPGAサーバ220に送付する(426)。そして、再合成された回路情報は、FPGAサーバ220の回路情報記憶部223に記憶される。これにより、FPGAサーバ220は、回路故障により実行不能となったタスクを、別のブロックを用いて実行することが可能になる。
In the
次に、本実施形態における故障発生時(ハードエラー発生時)の回路情報に係る処理を説明する。図5(A)〜図5(F)は、本実施形態における故障発生時の回路情報に係る処理を説明する図である。図5(A)に示すように、FPGAサーバ220の回路情報記憶部223には、タスクAを処理する論理回路の回路情報521、タスクBを処理する論理回路の回路情報522、及びタスクCを処理する論理回路の回路情報523、524が記憶されているものとする。
Next, processing related to circuit information when a failure occurs (when a hardware error occurs) in this embodiment will be described. FIG. 5A to FIG. 5F are diagrams for explaining processing related to circuit information when a failure occurs in the present embodiment. As shown in FIG. 5A, the circuit
まず、図5(A)に示すようにFPGAサーバ220のFPGA回路部225にタスクCを処理する論理回路の回路情報524が書き込まれて、FPGA回路部225は、回路511によりタスクCを実行しているものとする。管理サーバ210からFPGAサーバ220にタスクAの実行が依頼されると、図5(B)に示すように、FPGA回路部225にタスクAを処理する論理回路の回路情報521が書き込まれて、FPGA回路部225は、回路512によるタスクAの実行を開始する。
First, as shown in FIG. 5A,
FPGA回路部225が、回路511によりタスクCを実行し、回路512によりタスクAを実行しているとき、図5(C)に示すようにタスクAを実行する回路512内のブロックでハードエラーが検出されたとする。このとき、FPGAサーバ220の回路情報管理部222は、回路情報記憶部223に記憶されている回路情報521〜524の内でハードエラーが検出された故障ブロックを使用している回路情報を検索する。この例では、タスクAを処理する論理回路の回路情報521及びタスクCを処理する論理回路の回路情報523が、ハードエラーが検出された故障ブロックを使用している回路情報となる。
When the
そして、図5(D)に示すように、回路情報管理部222は、回路情報記憶部223から回路情報521、523を削除するとともに、FPGA回路部225に書き込まれていたタスクAを処理する論理回路の回路情報521が消去される。また、回路情報管理部222は、タスクAを処理する論理回路について故障ブロックを使用しない新たな回路情報の合成を管理サーバ210の回路情報合成部213に依頼する。これにより、図5(E)に示すように、回路情報記憶部223にタスクAを処理する論理回路の回路情報525が新たに記憶される。したがって、図5(F)に示すように、FPGA回路部225にタスクAを処理する論理回路の回路情報525を書き込むことで、FPGA回路部225は、回路513によるタスクAの実行が可能となる。
Then, as shown in FIG. 5D, the circuit
このようにFPGAサーバ220は、FPGA回路部225のハードエラー(ハードウェア故障)を検出した場合、故障ブロックを特定して、特定された故障ブロックを使用する回路情報を回路情報記憶部223から削除する。また、管理サーバ210は、FPGAサーバ220からの依頼に応じて、特定された故障ブロックを避けた回路情報を再合成してFPGAサーバ220に提供する。これにより、FPGA回路部225のハードエラーが検出されても、ハードウェア故障したブロックを特定することで、故障ブロックを使用しない回路については正常動作が可能となる。また、特定された故障ブロックを避けた回路情報を再合成することで、複数の回路情報を予め用意しておかなくとも、故障ブロックを避けた回路の再構成が可能となり、再合成された回路情報を書き込むことで実行不能となったタスクを実行することができる。
As described above, when the
なお、前述した例では、タスクの実行中に回路故障が発見された場合、タスクの継続実行を試みずに、他のFPGAサーバにタスクの継続実行を依頼するようにしているが、以下に説明するようにソフトエラーである場合にはタスクを継続実行させるようにしてもよい。図6(A)及び図6(B)は、本実施形態における故障発生時の処理の流れの他の例を示す図である。図6(A)には、回路故障がソフトエラーである場合を示し、図6(B)には回路故障がハードエラーである場合を示している。 In the above-described example, when a circuit failure is detected during task execution, the task is requested to be continued from another FPGA server without trying to continue task execution. As described above, in the case of a soft error, the task may be continuously executed. 6A and 6B are diagrams illustrating another example of a processing flow when a failure occurs in the present embodiment. FIG. 6A shows a case where the circuit failure is a soft error, and FIG. 6B shows a case where the circuit failure is a hard error.
図6(A)及び図6(B)において、処理601〜607は、図4(A)及び図4(B)に示した処理401〜407と同様であるので説明は省略する。
FPGA回路部225での回路故障がタスク管理部221に通知されると、FPGAサーバ220では、FPGA回路部225内の回路故障が発見された回路を書き込んだブロックにチェッキング回路(診断回路)を書き込んで動作させ、FPGA回路監視部227による故障ブロックの特定を行う。
6A and 6B, processes 601 to 607 are the same as the
When a circuit failure in the
チェッキング回路を書き込んで動作させた結果、チェッキング回路で正常動作が確認された(ブロックの故障を示さない)場合、図6(A)に示すように、FPGA回路監視部227は、回路故障がソフトエラーであると判定する。この場合には、FPGAサーバ220では、元の回路情報をFPGA回路部225に再び書き込むソフトエラー対策により実行依頼されたタスクを実行する論理回路を復帰させる(608)。
As a result of writing and operating the checking circuit, if the normal operation is confirmed in the checking circuit (not indicating a block failure), the FPGA
その後、前回の正常動作時の続きから(例えば、正常動作時の中間データを記憶したリカバリポイントから)タスクを継続実行する(609)。そして、FPGA回路監視部227がFPGA回路部225の正常動作を適宜確認し(610)、タスク管理部221が、実行結果記憶部226から実行結果を取得して管理サーバ210に送る(611)。タスクの実行が完了すると、管理サーバ210は、タスクの実行結果をクライアントサーバに返す(612)。このように制御することで、回路故障がソフトエラーであった場合には、他のFPGAサーバに依頼せずに、タスクの処理を継続して実行することができる。
Thereafter, the task is continuously executed from the continuation of the previous normal operation (for example, from the recovery point storing the intermediate data during the normal operation) (609). Then, the FPGA
また、チェッキング回路を書き込んで動作させた結果、チェッキング回路で正常動作が確認できない場合、図6(B)に示すように、FPGA回路監視部227は、回路故障がハードエラーであると判定する(621、622)。この場合には、FPGA回路監視部227により回路故障がハードエラーであることがタスク管理部221及び回路情報管理部222に通知され、タスク管理部221はタスクの実行失敗を管理サーバ210に通知する(623)。
Further, as a result of writing and operating the checking circuit, if normal operation cannot be confirmed by the checking circuit, the FPGA
管理サーバ210のタスク制御部211は、タスクの実行失敗の通知を受けると、タスクを実行していたFPGAサーバ220に対して正常動作時の中間データの取得を要求し、正常動作時の実行結果である中間データを取得する(624)。そして、管理サーバ210のタスク制御部211は、取得した中間データを提供するなどして、実行不能になったタスクの実行を他のFPGAサーバに依頼し、タスクの実行を継続させる(625)。他のFPGAサーバによるタスクの実行が完了すると、管理サーバ210は、タスクの実行結果をクライアントサーバに返す(626)。
Upon receiving notification of task execution failure, the
また、ハードエラーが発見されたFPGAサーバ220では、FPGA回路部225内に書き込んだチェッキング回路を用いて故障ブロックの特定を行う(627)。そして、故障ブロックが特定されると、FPGA回路監視部227は、特定された故障ブロックを回路情報管理部222に通知する。回路情報管理部222は、回路情報記憶部223に記憶している回路情報の内から、特定された故障ブロックを使用する回路情報を探して削除する。また、回路情報管理部222は、管理サーバ210に対して、実行していたタスクと故障ブロックを通知し、故障ブロックを避けた新たな回路情報の合成を管理サーバ210に依頼する(628)。
In addition, the
故障ブロックを避けた新たな回路情報の合成の依頼を受けた管理サーバ210では、回路情報合成部213が、通知されたタスクと故障ブロックに基づいて、故障ブロックを避けた回路情報を再合成する(629)。管理サーバ210の回路情報合成部213は、故障ブロックを避けた回路情報を再合成が完了すると、再合成した回路情報をFPGAサーバ220に送付する(630)。そして、再合成された回路情報は、FPGAサーバ220の回路情報記憶部223に記憶される。これにより、FPGAサーバ220は、回路故障により実行不能となったタスクを、別のブロックを用いて実行することが可能になる。
In the
また、前述した例では、図4(B)及び図6(B)に示した処理では、実行不能になったタスクの処理を他のFPGAサーバに依頼するようにしているが、回路故障が発生したFPGAサーバにおいて、故障ブロックを使用しない回路情報をFPGA回路部225に書き込んで実行不能になったタスクの処理を継続実行するようにしてもよい。例えば、他のFPGAサーバで回路資源(リソース)が空いていないために、実行不能になったタスクの処理を他のFPGAサーバに依頼できない場合に、回路故障が発生したFPGAサーバにおいて、故障ブロックを使用しない回路情報をFPGA回路部225に書き込んで実行不能になったタスクの処理を継続実行するようにしてもよい。
In the example described above, in the processing shown in FIGS. 4B and 6B, the processing of the task that has become impossible to execute is requested to another FPGA server, but a circuit failure occurs. In the FPGA server, the circuit information that does not use the failed block may be written in the
また、前述した例では、管理サーバを設けて、クライアントサーバから依頼されるタスクの割り振りや、タスクを処理する回路の回路情報の合成を行うようにしているが、管理サーバを設けずに、図7に示すように、FPGAサーバにタスクを処理する回路の回路情報を合成する機能を備えさせることでも前述した実施形態と同様の動作が実現可能である。図7は、本実施形態におけるFPGAサーバの他の機能構成例を示す図である。 In the above-described example, a management server is provided to allocate tasks requested from the client server and to synthesize circuit information of circuits that process the tasks. As shown in FIG. 7, the same operation as that of the above-described embodiment can be realized by providing the FPGA server with a function of synthesizing circuit information of a circuit that processes a task. FIG. 7 is a diagram illustrating another functional configuration example of the FPGA server according to the present embodiment.
FPGAサーバ710は、タスク管理部711、回路ソース記憶部712、回路情報合成部713、回路情報管理部714、回路情報記憶部715、回路情報書き込み部716、FPGA回路部717、実行結果記憶部718、及びFPGA回路監視部719を有する。タスク管理部711は制御部の一例であり、回路情報合成部713は合成部の一例であり、回路情報管理部714は管理部の一例であり、回路情報記憶部715は記憶部の一例であり、FPGA回路部717は再構成デバイスの一例であり、FPGA回路監視部719は検出部の一例である。
The
タスク管理部711、回路情報合成部713、回路情報管理部714、回路情報書き込み部716、及びFPGA回路監視部719は、例えばFPGAサーバのCPU21が記憶部22からプログラムを読み出して実行することで実現される。また、回路ソース記憶部712、回路情報記憶部715、及び実行結果記憶部718は例えばFPGAサーバの記憶部22により実現され、FPGA回路部717は例えばFPGAサーバのFPGA23により実現される。
The
タスク管理部711は、クライアントサーバからタスク処理の実行依頼を受け、そのタスクを処理する論理回路の回路情報を回路情報書き込み部716によりFPGA回路部717に書き込んでタスクを実行させる制御を行う。また、タスク管理部711は、実行結果記憶部718に記憶されるタスクの実行結果をクライアントサーバに返す。
The
回路ソース記憶部712は、各タスクを処理する論理回路のソースコードを記憶する。回路情報合成部713は、回路ソース記憶部712に記憶された論理回路のソースコードから回路情報を合成して回路情報管理部714に提供する。また、回路情報合成部713は、故障ブロックを避けた新たな回路情報の再合成の依頼を回路情報管理部714から受けた場合、故障ブロックを避けて論理回路を構成する回路情報を回路ソース記憶部712に記憶されたソースコードを基に再合成して回路情報管理部714に提供する。
The circuit
回路情報管理部714は、回路情報合成部713から提供される回路情報を回路情報記憶部715に記憶する。回路情報管理部714は、FPGA回路監視部719によりFPGA回路部717でハードエラーが検出されて故障ブロックが通知されると、回路情報記憶部715に記憶している回路情報の内から、その故障ブロックを使用する回路情報を削除する。また、回路情報管理部714は、故障ブロックを避けた新たな回路情報の再合成を回路情報合成部713に依頼する。
The circuit
回路情報記憶部715、回路情報書き込み部716、FPGA回路部717、実行結果記憶部718、及びFPGA回路監視部719のそれぞれは、図2に示した回路情報記憶部223、回路情報書き込み部224、FPGA回路部225、実行結果記憶部226、及びFPGA回路監視部227と同様であるので説明は省略する。
Each of the circuit
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
前述した実施形態に関し、さらに以下の付記を開示する。
The above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed as being limited thereto. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.
The following additional notes are disclosed with respect to the above-described embodiment.
(付記1)
論理のプログラム可能な複数のブロックを有し、回路情報に基づいて前記ブロックを再構成することにより回路構成を変更可能な再構成デバイスと、
タスクを処理する回路のソースコードから前記回路情報を合成する合成部と、
前記再構成デバイスの故障を検出する検出部とを有し、
前記検出部は、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定し、
前記合成部は、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成することを特徴とする情報処理装置。
(付記2)
前記再構成デバイスのハードウェア故障が検出された場合、前記合成部は、特定された前記ハードウェア故障したブロックで実行していたタスクを処理する回路の前記回路情報を合成することを特徴とする付記1記載の情報処理装置。
(付記3)
前記合成部により合成された前記回路情報を記憶する記憶部と、
前記再構成デバイスのハードウェア故障が検出された場合、特定された前記ハードウェア故障したブロックを使用する前記回路情報を前記記憶部から削除する管理部とを有することを特徴とする付記1又は2記載の情報処理装置。
(付記4)
前記再構成デバイスで実行するタスクに係る制御を行う制御部を有し、
前記再構成デバイスのハードウェア故障が検出された場合、前記制御部は、特定された前記ハードウェア故障したブロックで実行していたタスクの処理を他の情報処理装置に依頼することを特徴とする付記1〜3の何れか1項に記載の情報処理装置。
(付記5)
前記再構成デバイスで実行するタスクに係る制御を行う制御部を有し、
前記再構成デバイスのハードウェア故障が検出された場合、前記制御部は、特定された前記ハードウェア故障したブロックを使用しない前記回路情報を用いて、該ブロックで実行していたタスクの処理を継続させることを特徴とする付記1〜3の何れか1項に記載の情報処理装置。
(付記6)
タスクを処理する回路のソースコードから回路情報を合成する合成部を有する第1のサーバと、
論理のプログラム可能な複数のブロックを有し前記回路情報に基づいて前記ブロックを再構成することにより回路構成を変更可能な再構成デバイスと、前記再構成デバイスの故障を検出する検出部とを有し、前記第1のサーバと通信可能な第2のサーバとを有し、
前記第2のサーバは、前記検出部が前記再構成デバイスのハードウェア故障を検出した場合、前記検出部により前記ハードウェア故障したブロックを特定して該ブロックを避けた前記回路情報の合成を前記第1のサーバに依頼し、
前記第1のサーバは、前記第2のサーバからの依頼に応じて、特定された前記ハードウェア故障したブロックを避けた前記回路情報を前記合成部により合成して前記第2のサーバに提供することを特徴とする情報処理システム。
(付記7)
前記再構成デバイスのハードウェア故障が検出された場合、前記第1のサーバは、特定された前記ハードウェア故障したブロックで実行していたタスクを処理する回路の前記回路情報を前記合成部により合成して前記第2のサーバに提供することを特徴とする付記6記載の情報処理システム。
(付記8)
前記第2のサーバは、
前記第1のサーバから提供された前記回路情報を記憶する記憶部と、
前記再構成デバイスのハードウェア故障が検出された場合、特定された前記ハードウェア故障したブロックを使用する前記回路情報を前記記憶部から削除する管理部とを有することを特徴とする付記6又は7記載の情報処理システム。
(付記9)
論理のプログラム可能な複数のブロックを有し、回路情報に基づいて前記ブロックを再構成することにより回路構成を変更可能な再構成デバイスを有する情報処理装置の情報処理方法であって、
前記情報処理装置の検出部が、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定し、
前記情報処理装置の合成部が、タスクを処理する回路のソースコードから、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成することを特徴とする情報処理方法。
(付記10)
前記情報処理装置は、前記合成部により合成された前記回路情報を記憶する記憶部を有し、
前記再構成デバイスのハードウェア故障が検出された場合、特定された前記ハードウェア故障したブロックを使用する前記回路情報を前記記憶部から削除することを特徴とする付記9記載の情報処理方法。
(付記11)
論理のプログラム可能な複数のブロックを有し、回路情報に基づいて前記ブロックを再構成することにより回路構成を変更可能な再構成デバイスを有する情報処理装置のコンピュータに、
前記再構成デバイスの故障の検出を行い、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定する処理と、
タスクを処理する回路のソースコードから、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成する処理とを実行させるためのプログラム。
(付記12)
論理のプログラム可能な複数のブロックを有し、回路情報に基づいて前記ブロックを再構成することにより回路構成を変更可能な再構成デバイスを有する情報処理装置のコンピュータに、
前記再構成デバイスの故障の検出を行い、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定する処理と、
タスクを処理する回路のソースコードから、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成する処理とを実行させるためのプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
(Appendix 1)
A reconfigurable device having a plurality of logic programmable blocks, the circuit configuration being changeable by reconfiguring the blocks based on circuit information;
A synthesis unit that synthesizes the circuit information from the source code of the circuit that processes the task;
A detection unit for detecting a failure of the reconfigurable device,
When the detection unit detects a hardware failure of the reconfigurable device, the detection unit identifies the block having the hardware failure,
The information processing apparatus characterized in that the combining unit combines the circuit information avoiding the identified hardware-failed block.
(Appendix 2)
When a hardware failure of the reconfigurable device is detected, the synthesis unit synthesizes the circuit information of a circuit that processes a task executed in the identified hardware-failed block. The information processing apparatus according to attachment 1.
(Appendix 3)
A storage unit for storing the circuit information synthesized by the synthesis unit;
And a management unit that deletes, from the storage unit, the circuit information that uses the identified hardware-failed block when a hardware failure of the reconfigurable device is detected. The information processing apparatus described.
(Appendix 4)
A control unit that performs control related to a task executed by the reconfigurable device;
When a hardware failure of the reconfigurable device is detected, the control unit requests another information processing apparatus to process a task that has been executed in the identified hardware-failed block. The information processing apparatus according to any one of appendices 1 to 3.
(Appendix 5)
A control unit that performs control related to a task executed by the reconfigurable device;
When a hardware failure of the reconfigurable device is detected, the control unit continues the processing of the task executed in the block by using the circuit information that does not use the identified hardware-failed block The information processing apparatus according to any one of appendices 1 to 3, wherein:
(Appendix 6)
A first server having a synthesis unit that synthesizes circuit information from the source code of the circuit that processes the task;
A reconfigurable device having a plurality of logic programmable blocks and reconfiguring the block based on the circuit information; and a detector for detecting a failure of the reconfigurable device. And a second server capable of communicating with the first server,
When the detection unit detects a hardware failure of the reconfigurable device, the second server identifies the block having the hardware failure by the detection unit and synthesizes the circuit information that avoids the block. Ask the first server,
In response to a request from the second server, the first server synthesizes the circuit information avoiding the identified hardware-failed block by the synthesizer and provides the synthesizer with the circuit information. An information processing system characterized by this.
(Appendix 7)
When a hardware failure of the reconfigurable device is detected, the first server synthesizes the circuit information of a circuit that processes a task executed in the identified hardware-failed block by the synthesizer. The information processing system according to appendix 6, wherein the information processing system is provided to the second server.
(Appendix 8)
The second server is
A storage unit for storing the circuit information provided from the first server;
Appendix 6 or 7 further comprising: a management unit that deletes the circuit information that uses the identified hardware-failed block from the storage unit when a hardware failure of the reconfigurable device is detected. The information processing system described.
(Appendix 9)
An information processing method for an information processing apparatus having a reconfigurable device having a plurality of logic programmable blocks and reconfiguring the block by reconfiguring the block based on circuit information,
When the detection unit of the information processing apparatus detects a hardware failure of the reconfigurable device, the hardware failure block is identified,
A synthesizing unit of the information processing apparatus synthesizes the circuit information avoiding the identified hardware-failed block from source code of a circuit that processes a task.
(Appendix 10)
The information processing apparatus includes a storage unit that stores the circuit information combined by the combining unit.
The information processing method according to claim 9, wherein when a hardware failure of the reconfigurable device is detected, the circuit information that uses the identified hardware-failed block is deleted from the storage unit.
(Appendix 11)
A computer of an information processing apparatus having a reconfigurable device having a plurality of logic programmable blocks and reconfiguring the blocks by reconfiguring the blocks based on circuit information.
When the failure of the reconfigurable device is detected and a hardware failure of the reconfigurable device is detected, a process of specifying the hardware-failed block;
A program for executing, from a source code of a circuit that processes a task, a process of synthesizing the circuit information that avoids the identified hardware-failed block.
(Appendix 12)
A computer of an information processing apparatus having a reconfigurable device having a plurality of logic programmable blocks and reconfiguring the blocks by reconfiguring the blocks based on circuit information.
When the failure of the reconfigurable device is detected and a hardware failure of the reconfigurable device is detected, a process of specifying the hardware-failed block;
A computer-readable recording medium having recorded thereon a program for executing processing for synthesizing the circuit information avoiding the identified hardware-failed block from source code of a circuit for processing a task .
10 管理サーバ
20 FPGAサーバ
11、21 CPU
12、22 記憶部
23 FPGA(再構成デバイス)
210 管理サーバ
211 タスク制御部
212、712 回路ソース記憶部
213、713 回路情報合成部
220、710 FPGAサーバ
221、711 タスク管理部
222、714 回路情報管理部
223、715 回路情報記憶部
224、716 回路情報書き込み部
225、717 FPGA回路部
226、718 実行結果記憶部
227、719 FPGA回路監視部
10 Management server 20
12, 22
210
Claims (8)
タスクを処理する回路のソースコードから前記回路情報を合成する合成部と、
前記再構成デバイスの故障を検出する検出部とを有し、
前記検出部は、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定し、
前記合成部は、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成することを特徴とする情報処理装置。 A reconfigurable device having a plurality of logic programmable blocks, the circuit configuration being changeable by reconfiguring the blocks based on circuit information;
A synthesis unit that synthesizes the circuit information from the source code of the circuit that processes the task;
A detection unit for detecting a failure of the reconfigurable device,
When the detection unit detects a hardware failure of the reconfigurable device, the detection unit identifies the block having the hardware failure,
The information processing apparatus characterized in that the combining unit combines the circuit information avoiding the identified hardware-failed block.
前記再構成デバイスのハードウェア故障が検出された場合、特定された前記ハードウェア故障したブロックを使用する前記回路情報を前記記憶部から削除する管理部とを有することを特徴とする請求項1又は2記載の情報処理装置。 A storage unit for storing the circuit information synthesized by the synthesis unit;
The management unit that deletes the circuit information that uses the identified hardware-failed block from the storage unit when a hardware failure of the reconfigurable device is detected. 2. The information processing apparatus according to 2.
前記再構成デバイスのハードウェア故障が検出された場合、前記制御部は、特定された前記ハードウェア故障したブロックで実行していたタスクの処理を他の情報処理装置に依頼することを特徴とする請求項1〜3の何れか1項に記載の情報処理装置。 A control unit that performs control related to a task executed by the reconfigurable device;
When a hardware failure of the reconfigurable device is detected, the control unit requests another information processing apparatus to process a task that has been executed in the identified hardware-failed block. The information processing apparatus according to any one of claims 1 to 3.
前記再構成デバイスのハードウェア故障が検出された場合、前記制御部は、特定された前記ハードウェア故障したブロックを使用しない前記回路情報を用いて、該ブロックで実行していたタスクの処理を継続させることを特徴とする請求項1〜3の何れか1項に記載の情報処理装置。 A control unit that performs control related to a task executed by the reconfigurable device;
When a hardware failure of the reconfigurable device is detected, the control unit continues the processing of the task executed in the block by using the circuit information that does not use the identified hardware-failed block The information processing apparatus according to any one of claims 1 to 3, wherein the information processing apparatus is used.
前記情報処理装置の検出部が、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定し、
前記情報処理装置の合成部が、タスクを処理する回路のソースコードから、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成することを特徴とする情報処理方法。 An information processing method for an information processing apparatus having a reconfigurable device having a plurality of logic programmable blocks and reconfiguring the block by reconfiguring the block based on circuit information,
When the detection unit of the information processing apparatus detects a hardware failure of the reconfigurable device, the hardware failure block is identified,
A synthesizing unit of the information processing apparatus synthesizes the circuit information avoiding the identified hardware-failed block from source code of a circuit that processes a task.
前記再構成デバイスのハードウェア故障が検出された場合、特定された前記ハードウェア故障したブロックを使用する前記回路情報を前記記憶部から削除することを特徴とする請求項6記載の情報処理方法。 The information processing apparatus includes a storage unit that stores the circuit information combined by the combining unit.
The information processing method according to claim 6, wherein when a hardware failure of the reconfigurable device is detected, the circuit information that uses the identified hardware-failed block is deleted from the storage unit.
前記再構成デバイスの故障の検出を行い、前記再構成デバイスのハードウェア故障を検出した場合、前記ハードウェア故障したブロックを特定する処理と、
タスクを処理する回路のソースコードから、特定された前記ハードウェア故障したブロックを避けた前記回路情報を合成する処理とを実行させるためのプログラム。 A computer of an information processing apparatus having a reconfigurable device having a plurality of logic programmable blocks and reconfiguring the blocks by reconfiguring the blocks based on circuit information.
When the failure of the reconfigurable device is detected and a hardware failure of the reconfigurable device is detected, a process of specifying the hardware-failed block;
A program for executing, from a source code of a circuit that processes a task, a process of synthesizing the circuit information that avoids the identified hardware-failed block.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017063000A JP2018165908A (en) | 2017-03-28 | 2017-03-28 | Information processor and information processing method and program |
PCT/JP2018/002093 WO2018179739A1 (en) | 2017-03-28 | 2018-01-24 | Information processing device, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017063000A JP2018165908A (en) | 2017-03-28 | 2017-03-28 | Information processor and information processing method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018165908A true JP2018165908A (en) | 2018-10-25 |
Family
ID=63674611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017063000A Pending JP2018165908A (en) | 2017-03-28 | 2017-03-28 | Information processor and information processing method and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2018165908A (en) |
WO (1) | WO2018179739A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022269677A1 (en) * | 2021-06-21 | 2022-12-29 | 日本電信電話株式会社 | Computing system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3365581B2 (en) * | 1994-07-29 | 2003-01-14 | 富士通株式会社 | Information processing device with self-healing function |
JP3491579B2 (en) * | 1999-11-04 | 2004-01-26 | 日本電信電話株式会社 | Logic circuit data generation method and apparatus, and storage medium storing logic circuit data generation program |
CN100397331C (en) * | 2001-09-07 | 2008-06-25 | Ip菲力股份有限公司 | Data processing system and control method thereof |
JPWO2007145220A1 (en) * | 2006-06-14 | 2009-11-05 | パナソニック株式会社 | Apparatus comprising rewritable circuit, update system, update method, update program, and integrated circuit |
JP5533877B2 (en) * | 2009-09-18 | 2014-06-25 | 日本電気株式会社 | Data center system, reconfigurable node, reconfigurable node control method, reconfigurable node control program |
WO2012070669A1 (en) * | 2010-11-24 | 2012-05-31 | 日本電気株式会社 | Method and system for generating circuit information for programmable logic device, circuit testing device and computer program therefor, device and computer program for creating circuit data, and computer readable storage medium |
JP6488541B2 (en) * | 2013-12-18 | 2019-03-27 | 富士通株式会社 | Logic circuit and method for controlling logic circuit |
-
2017
- 2017-03-28 JP JP2017063000A patent/JP2018165908A/en active Pending
-
2018
- 2018-01-24 WO PCT/JP2018/002093 patent/WO2018179739A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022269677A1 (en) * | 2021-06-21 | 2022-12-29 | 日本電信電話株式会社 | Computing system |
Also Published As
Publication number | Publication date |
---|---|
WO2018179739A1 (en) | 2018-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11108859B2 (en) | Intelligent backup and recovery of cloud computing environment | |
CN108604202B (en) | Working node reconstruction for parallel processing system | |
US10956143B2 (en) | Server updates | |
US20070299943A1 (en) | Ignoring redundant symptoms in modular self-healing systems | |
Jehl et al. | Smartmerge: A new approach to reconfiguration for atomic storage | |
CN109901985B (en) | Distributed test apparatus and method, storage medium, and electronic device | |
EP3591530B1 (en) | Intelligent backup and recovery of cloud computing environment | |
US11533391B2 (en) | State replication, allocation and failover in stream processing | |
US10860411B2 (en) | Automatically detecting time-of-fault bugs in cloud systems | |
KR101024249B1 (en) | Real-time data replication system | |
CN112600690B (en) | Configuration data synchronization method, device, equipment and storage medium | |
WO2018179739A1 (en) | Information processing device, information processing method, and program | |
US20150149974A1 (en) | Diagnosis device, control method of diagnosis device, and recording medium | |
JP2009176232A (en) | Starting device, starting method, and starting program | |
JP6194496B2 (en) | Information processing apparatus, information processing method, and program | |
JP7287651B2 (en) | DISTRIBUTED PROCESSING APPARATUS, DISTRIBUTED PROCESSING METHOD, AND PROGRAM | |
EP2799991A1 (en) | The disable restart setting for AMF configuration components | |
CN112579145A (en) | Application deployment method and device | |
CN106599046B (en) | Writing method and device of distributed file system | |
Bravo et al. | Policy-based adaptation of a byzantine fault tolerant distributed graph database | |
US11663096B1 (en) | Managing storage domains, service tiers and failed storage domain | |
JP2018206233A (en) | Information processing device, process switching method and program | |
US20230092343A1 (en) | Lockstep processor recovery for vehicle applications | |
US10452445B2 (en) | Dynamically configurable storage clusters | |
JP2005157462A (en) | System switching method and information processing system |