JP2012014353A - Controller, information processor, control program and control method - Google Patents
Controller, information processor, control program and control method Download PDFInfo
- Publication number
- JP2012014353A JP2012014353A JP2010149357A JP2010149357A JP2012014353A JP 2012014353 A JP2012014353 A JP 2012014353A JP 2010149357 A JP2010149357 A JP 2010149357A JP 2010149357 A JP2010149357 A JP 2010149357A JP 2012014353 A JP2012014353 A JP 2012014353A
- Authority
- JP
- Japan
- Prior art keywords
- input
- error
- output
- detected
- port
- 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
Links
Images
Abstract
Description
本発明は、制御装置、情報処理装置、制御プログラム、及び制御方法に関する。 The present invention relates to a control device, an information processing device, a control program, and a control method.
デジタル回路の回路設計を電気的に変更可能なデバイスとして、FPGA(Field Programmable Gate Array)が知られている。FPGAは、多数の論理ゲートを有するLSI(Large Scale Integration circuit)である。FPGAは、論理ゲート間の論理関係と接続関係とを記述したコンフィギュレーションデータを、FPGAが備えるコンフィギュレーションRAMに書き込むことで、所定の論理回路として機能する。よって、種々の電子機器の回路部品にFPGAを用いることにより、設計に従って回路部品を製造する場合より短期間で回路設計を実装することができる。また、コンフィギュレーションデータを変更することでハードウェアを変更することなく容易に回路設計を変更できるため、電子機器を始めとして様々な製品で利用されている。 An FPGA (Field Programmable Gate Array) is known as a device that can electrically change the circuit design of a digital circuit. The FPGA is an LSI (Large Scale Integration circuit) having a large number of logic gates. The FPGA functions as a predetermined logic circuit by writing configuration data describing a logical relationship and a connection relationship between logic gates to a configuration RAM included in the FPGA. Therefore, by using the FPGA for circuit components of various electronic devices, it is possible to implement the circuit design in a shorter period of time than when manufacturing circuit components according to the design. In addition, since the circuit design can be easily changed without changing the hardware by changing the configuration data, it is used in various products including electronic devices.
例えば、情報の格納を目的とするメモリカードや、無線カードやモデムカードに代表される、外部装置との間で情報の入出力を行うことを目的とするI/Oカードのポート制御に、FPGAを用いる技術が提案されている(例えば、特許文献1)。 For example, an FPGA is used for port control of an I / O card for inputting / outputting information to / from an external device such as a memory card for storing information, a wireless card or a modem card. A technique using this is proposed (for example, Patent Document 1).
ところで、上述のコンフィギュレーションRAMで発生するエラーには、回路そのものがダメージを受けた「ハードエラー」と、宇宙線等の放射線によりRAM内のデータが破壊された「ソフトエラー」とが存在する。「ハードエラー」が発生した場合には、FPGAそのものの交換が必要となる。一方、「ソフトエラー」が発生した場合、FPGAをリコンフィギュレーションすれば復旧が可能である。リコンフィギュレーションは、コンフィギュレーションデータをコンフィギュレーションRAMにリロードすることによって行われる。従って、コンフィギュレーションデータのリロード中には、ポートでの入出力処理ができない。すなわち、1つのポートを1つのFPGAで制御するI/Oカード(図1(A))においては、コンフィギュレーションデータのリロード中には、一切の入出力処理ができないこととなる。 By the way, errors occurring in the configuration RAM include a “hard error” in which the circuit itself is damaged and a “soft error” in which data in the RAM is destroyed by radiation such as cosmic rays. When a “hard error” occurs, it is necessary to replace the FPGA itself. On the other hand, when a “soft error” occurs, it can be recovered by reconfiguring the FPGA. Reconfiguration is performed by reloading configuration data into the configuration RAM. Therefore, input / output processing cannot be performed at the port while the configuration data is being reloaded. In other words, in an I / O card (FIG. 1A) in which one port is controlled by one FPGA, no input / output processing can be performed while the configuration data is reloaded.
そこで、I/Oカードの可用性を高めるために、単一のポートを複数のFPGAで制御する構成(図1(B))、複数のポートと、各ポートに対応するFPGAとを備える構成(図1(C))が提案されている。また、複数のポートを備え、各ポートを複数のFPGAで制御する構成(図1(D))等も提案されている。しかしながら、上述の構成ではコストが高くなったり、カード内にFPGA等のデバイスを収めるのが困難な場合がある。そこで、コストと可用性とのトレードオフにより、複数のポートを単一のFPGAで制御する構成(図1(E))を選択する場合がある。 Therefore, in order to increase the availability of the I / O card, a configuration in which a single port is controlled by a plurality of FPGAs (FIG. 1B), a configuration having a plurality of ports and an FPGA corresponding to each port (FIG. 1). 1 (C)) has been proposed. In addition, a configuration in which a plurality of ports are provided and each port is controlled by a plurality of FPGAs (FIG. 1D) has been proposed. However, with the above-described configuration, the cost may be high, and it may be difficult to fit a device such as an FPGA in the card. Therefore, there is a case where a configuration (FIG. 1E) in which a plurality of ports are controlled by a single FPGA is selected depending on a trade-off between cost and availability.
ここで、複数のポートを単一のFPGAで制御するI/Oカードにおいて、各ポートが入出力処理を実行している最中に、1つのポートでエラーが発生し、その原因がコンフィギュレーションRAMのソフトエラーによるものだったとする。この場合、エラーを復旧するためには、FPGAのリコンフィギュレーションが必要であるが、コンフィギュレーションRAMの内容を書き換えている間は、エラーの無い他のポートも入出力処理を実行できなくなる。つまり、コンフィギュレーションデータのリロードが開始されると、エラーが発生していない他ポートでの入出力処理も中断されることとなり、エラーが発生していない他ポートにまで、エラーの影響が拡大してしまうおそれがある。 Here, in an I / O card in which a plurality of ports are controlled by a single FPGA, an error occurs in one port while each port is executing input / output processing, and the cause is the configuration RAM. Suppose it was due to a soft error. In this case, the FPGA needs to be reconfigured in order to recover the error. However, while the contents of the configuration RAM are being rewritten, other ports without error cannot execute the input / output processing. In other words, when reloading of configuration data is started, I / O processing at other ports where no error has occurred will be interrupted, and the impact of the error will extend to other ports where no error has occurred. There is a risk that.
1つの側面では、本発明は、単一のプログラマブル論理回路で複数のポートを制御する入出力処理装置の可用性を高める制御装置、情報処理装置、制御プログラム、及び制御方法を提供することを目的とする。 In one aspect, an object of the present invention is to provide a control device, an information processing device, a control program, and a control method that increase the availability of an input / output processing device that controls a plurality of ports with a single programmable logic circuit. To do.
上記課題を解決するために、明細書開示の制御装置は、複数の入出力ポートと、前記複数の入出力ポートを制御する単一のプログラマブル論理回路とを備える入出力処理装置において、前記複数の入出力ポートのうちいずれか1つの入出力ポートからエラーが検出された場合に、検出されたエラーが、前記プログラマブル論理回路が備える回路配置データ用メモリのソフトエラーであるか否か判定する判定部と、前記検出されたエラーが前記回路配置データ用メモリのソフトエラーである場合に、前記エラーが検出されていない他の入出力ポートの状態を入出力処理が不可能であることを示すビジー状態に設定する設定部と、前記設定部が前記ビジー状態を設定した後に、前記プログラマブル論理回路に回路配置データの再設定を指示する指示部と、を備える。 In order to solve the above-described problem, a control device disclosed in the specification is an input / output processing device including a plurality of input / output ports and a single programmable logic circuit that controls the plurality of input / output ports. A determination unit that determines whether or not the detected error is a soft error in a circuit arrangement data memory included in the programmable logic circuit when an error is detected from any one of the input / output ports. And when the detected error is a soft error in the memory for circuit arrangement data, the busy state indicating that the input / output processing is impossible for the state of the other input / output port in which the error is not detected And a setting unit for instructing the programmable logic circuit to reset circuit arrangement data after the setting unit sets the busy state. It comprises a part, a.
上記課題を解決するために、明細書開示の情報処理装置は、複数の入出力ポートと、前記複数の入出力ポートを制御する単一のプログラマブル論理回路とを備える入出力処理装置と、明細書開示の制御装置とを備える。 In order to solve the above problems, an information processing device disclosed in the specification includes an input / output processing device including a plurality of input / output ports and a single programmable logic circuit that controls the plurality of input / output ports; The disclosed control device.
上記課題を解決するために、明細書開示の制御プログラムは、複数の入出力ポートと、前記複数の入出力ポートを制御する単一のプログラマブル論理回路とを備える入出力処理装置において、前記複数の入出力ポートのうちいずれか1つの入出力ポートからエラーが検出された場合に、検出されたエラーが、前記プログラマブル論理回路が備える回路配置データ用メモリのソフトエラーであるか否か判定する判定ステップと、前記検出されたエラーが前記回路配置データ用メモリのソフトエラーである場合に、前記エラーが検出されていない他の入出力ポートの状態を入出力処理が不可能であることを示すビジー状態に設定する設定ステップと、前記設定ステップでのビジー状態の設定が終了した後に、前記プログラマブル論理回路に回路配置データの再設定を指示する指示ステップと、をコンピュータに実行させる。 In order to solve the above-described problem, a control program disclosed in the specification includes: a plurality of input / output ports; and a single programmable logic circuit that controls the plurality of input / output ports. A determination step of determining whether or not the detected error is a soft error in a circuit arrangement data memory included in the programmable logic circuit when an error is detected from any one of the input / output ports. And when the detected error is a soft error in the memory for circuit arrangement data, the busy state indicating that the input / output processing is impossible for the state of the other input / output port in which the error is not detected And after the setting of the busy state in the setting step is completed, circuit arrangement is performed on the programmable logic circuit. To execute the instruction step for instructing the resetting of the data, to the computer.
上記課題を解決するために、明細書開示の制御方法は、複数の入出力ポートと、前記複数の入出力ポートを制御する単一のプログラマブル論理回路とを備える入出力処理装置において、前記複数の入出力ポートのうちいずれか1つの入出力ポートからエラーが検出された場合に、検出されたエラーが、前記プログラマブル論理回路が備える回路配置データ用メモリのソフトエラーであるか否か判定する判定ステップと、前記検出されたエラーが前記回路配置データ用メモリのソフトエラーである場合に、前記エラーが検出されていない他の入出力ポートの状態を入出力処理が不可能であることを示すビジー状態に設定する設定ステップと、前記設定ステップでのビジー状態の設定が終了した後に、前記プログラマブル論理回路に回路配置データの再設定を指示する指示ステップと、を有する。 In order to solve the above problems, a control method disclosed in the specification includes an input / output processing device including a plurality of input / output ports and a single programmable logic circuit that controls the plurality of input / output ports. A determination step of determining whether or not the detected error is a soft error in a circuit arrangement data memory included in the programmable logic circuit when an error is detected from any one of the input / output ports. And when the detected error is a soft error in the memory for circuit arrangement data, the busy state indicating that the input / output processing is impossible for the state of the other input / output port in which the error is not detected And after the setting of the busy state in the setting step is completed, the circuit arrangement data is stored in the programmable logic circuit. Having, an instruction step of instructing the re-configuration.
明細書開示の制御装置、情報処理装置、制御プログラム、及び制御方法によれば、単一のプログラマブル論理回路で複数のポートを制御する入出力処理装置の可用性が高まる。 According to the control device, information processing device, control program, and control method disclosed in the specification, the availability of an input / output processing device that controls a plurality of ports with a single programmable logic circuit is increased.
以下、本件の実施例について、添付図面を参照しつつ説明する。 Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
まず、図2を参照して、本件の制御装置を含む情報処理装置のシステム構成の一例について説明する。図2に示すように、情報処理装置100は、I/Oカード10と、制御装置20とを備える。
First, an example of a system configuration of an information processing apparatus including the control device of the present case will be described with reference to FIG. As illustrated in FIG. 2, the
I/Oカード10は、制御装置20の制御に基づいて、外部装置との間でデータの入出力を行う。I/Oカード10は、データの入出力インタフェースとしての入出力ポート30A及び30Bを備える。また、I/Oカード10は、入出力ポート30A及び30Bを制御するFPGA(プログラマブル論理回路)40を1つ備える。さらに、I/Oカード10は、ソフトエラー判定用レジスタ50を備える。
The I /
FPGA40は、コンフィギュレーションRAM(回路配置データ用メモリ)401と、ユーザRAM402とを備える。コンフィギュレーションRAM401は、論理ゲート間の論理関係と接続関係とを記述したコンフィギュレーションデータ(回路配置データ)を格納する。ユーザRAM402は、ユーザが自由に使用できるメモリであり、FPGA40で実行する処理を実現するためのプログラム等が格納される。
The
ソフトエラー判定用レジスタ50は、コンフィギュレーションRAM401にソフトエラーが発生しているか否かを表すフラグを格納するレジスタである。コンフィギュレーションRAM401のソフトエラーは、周知のパトロール技術によって発見され、ソフトエラーが発見された場合には、ソフトエラー判定用レジスタ50のフラグが、例えば「0」から「1」に変更される。
The soft
制御装置20は、I/Oカード10を制御する。また、制御装置20は、I/Oカード10でエラーが発生した場合に、エラー復旧処理を行う。制御装置20は、ハードウェア構成として、例えば、入出力部201、ROM(Read Only Memory)202、中央処理装置(CPU:Central Processing Unit)203、及びRAM(Random Access Memory)204を備える。
The
入出力部201は、I/Oカード10との間でデータの送受信を行う。ROM202は、FPGA40で発生したエラーの復旧処理を実行するためのプログラム(詳細は後述)等を格納する。CPU203は、ROM202に格納されたプログラムを読み込んで実行する。また、ROM202に格納されたプログラムのCPU203による演算によって、図5に示す判定部222、設定部223、指示部224、及び再起動部225が有する機能が実現される。RAM204は、プログラムを実行する際に使用される一時的なデータを保存する。
The input /
次に、制御装置20のソフトウェア構成の一例について説明する。図3は、制御装置20のソフトウェア構成の一例を示す図である。制御装置20は、図3(A)に示すように、アプリケーション211、OS(Operating System)212、I/Oライブラリ213、及びデバイスドライバ214を備える。
Next, an example of the software configuration of the
アプリケーション211は、OS212上で動作するアプリケーションプログラムのCPU203による演算によって実現され、例えば、外部装置へのデータ送信機能等の所定の機能を提供する。アプリケーション211は、外部装置との間でデータの入出力が必要な場合、OS212にデータの入出力を要求する。
The
OS212は、アプリケーション211から、データの入出力要求を受付けると、I/Oライブラリ213が管理する管理データ(バスデータ)を確認する。ここで、I/Oライブラリ213が管理する管理データについて説明する。図3(B)は、I/Oライブラリ213が管理する管理データの一例である。
When the
管理データは、例えば、I/Oカード10が備えるポート毎に登録される。図3(B)では、管理データ1がポート1(入出力ポート30A)に関する情報を格納し、管理データ2がポート2(入出力ポート30B)に関する情報を格納している。管理データは、ポート番号、ビジーフラグ、及びデバイスの項目を備える。
The management data is registered for each port included in the I /
「ポート番号」は、I/Oカード10が備える複数のポートから、管理対象のポートを一意に識別するための番号である。「ビジーフラグ」は、ポート番号のポートが、入出力処理を実行できる状態にあるか否かを示すフラグである。ポートが入出力処理を実行できる状態にある場合には、ビジーフラグには「非ビジー」が設定される。ポートが入出力処理を実行できない状態にある場合には、ビジーフラグには「ビジー」が設定される。
The “port number” is a number for uniquely identifying a management target port from a plurality of ports provided in the I /
「デバイス」は、I/Oカード10が備える複数のポートのうち、いずれのポートをデバイスドライバによって制御するのかを示すための、デバイスファイルパスを指定する。
“Device” designates a device file path for indicating which port of the plurality of ports of the I /
図3(B)の管理データ1は、「ポート番号」に“1”が入力され、「ビジーフラグ」に“ビジー”が設定されているので、ポート番号1のポートが、入出力処理が実行できない状態にあることを示している。また、管理データ1は、「デバイス」に“デバイスファイルパス1”が入力されているので、ポート番号1のポートの制御には、ポート1制御用のデバイスファイルパスが使用されることを示している。管理データ2は、「ポート番号」に“2”が入力され、「ビジーフラグ」に“非ビジー”が設定されているので、ポート番号2のポートが、入出力処理を実行可能な状態であることを示している。また、管理データ2は、「デバイス」に“デバイスファイルパス2”が入力されているので、ポート番号2のポートの制御には、ポート2制御用のデバイスファイルパスが使用されることを示している。
In the
OS212は、上述の管理データを確認し、ビジーフラグに「ビジー」が設定されていない入出力ポートを介して、データの入出力を行う。具体的には、デバイスドライバ214による制御によって入出力ポートを介したデータの入出力が行われる。OS212は、ビジーフラグに「ビジー」が設定されている場合には、所定の時間(リトライ期間)が経過してから再びビジーフラグを確認し、ビジーフラグが「非ビジー」になっていればデータの入出力を行う。
The
デバイスドライバ214は、OS212の命令に基づいて、I/Oカード10が備える入出力ポート30A及び30Bを制御し、外部装置との間のデータの入出力を可能にする。
The
次に、上述の情報処理装置100で、I/Oカード10にエラーが発生した場合に実行される処理について説明する。図4は、I/Oカード10にエラーが発生した場合に情報処理装置100で実行される処理の一例を示すシーケンス図である。
Next, processing executed when an error occurs in the I /
まず、FPGA40がポートのエラーを検出すると、I/Oライブラリ213に、エラー検出を通知する(A)。ここでは、ポート1でエラーが検出されたとする。
First, when the
I/Oライブラリ213は、ポート1の状態を「ビジー状態」に設定する。具体的には、I/Oライブラリ213は、ポート1を管理する管理データ1のビジーフラグに「ビジー」を設定する(B)。これにより、OS212は、アプリケーション211から入出力の要求を受けても、入出力処理を行うポートとしてポート1を選択しない。すなわち、ビジーフラグに「ビジー」を設定することによって、上位プログラムであるOS212に、ポート1が入出力処理を実行できないビジー状態であることが通知される。また、OS212は、エラーが発生したポート1を使用して入出力処理を実行しないため、入出力エラーの発生が防止される。
The I /
次に、I/Oライブラリ213は、デバイスドライバ214経由で、I/Oカード10からエラー情報を取得する(C)。具体的には、I/Oライブラリ213が、デバイスドライバ214に、エラー情報を取得するよう指示する。デバイスドライバ214は、ソフトエラー判定用レジスタ50をチェックし、ソフトエラーが発生したか否かのエラー情報を取得する。デバイスドライバ214は、エラー情報をI/Oライブラリ213に送信する。
Next, the I /
I/Oライブラリ213は、検出されたエラーがコンフィギュレーションRAM401のソフトエラーであった場合、エラーが検出されていないポート2の入出力処理が完了してから、ポート2を管理する管理データ2のビジーフラグに「ビジー」を設定する(D)。これによって、OS212は、アプリケーション211から入出力の要求を受けても、入出力処理を行うポートとしてポート2を選択しない。これにより、後述するFPGA40のリコンフィギュレーション中に、ポート2において入出力エラーが発生するのを防止できる。
If the detected error is a soft error in the
次に、I/Oライブラリ213は、デバイスドライバ214を介して、FPGA40にリコンフィギュレーション(回路配置データの再設定)を指示する(E)。具体的には、I/Oライブラリ213は、デバイスドライバ214に、FPGA40のリコンフィギュレーションを要求する。デバイスドライバ214は、I/Oライブラリ213の要求を受けて、FPGA40にリコンフィギュレーションを指示する。
Next, the I /
FPGA40のリコンフィギュレーションが終了すると、I/Oライブラリ213は、デバイスドライバ214を介してポート1及び2を再立ち上げすると共に、各ポートのビジー状態を解除する。具体的には、I/Oライブラリ213は、デバイスドライバ214に、各ポートに対するマイクロコードリロードや、セレクティブリセットを要求する。デバイスドライバ214は、I/Oライブラリ213からの要求を受けて、各ポートに対してマイクロコードリロードや、セレクティブリセットを実行する。また、I/Oライブラリ213は、管理データのビジーフラグを「ビジー」から「非ビジー」に変更する。これにより、OS212は、ポート1又はポート2を利用した入出力処理を行うことができる。
When the reconfiguration of the
次に、上述のシーケンス図に示した処理を実現するために制御装置20が備える機能の一例について、図5の機能ブロック図を用いて説明する。各機能は、I/Oライブラリ213及びデバイスドライバ214のソフトウェア機構として実装される。
Next, an example of functions provided in the
制御装置20は、管理データ221、判定部222、設定部223、指示部224、及び再起動部225を備える。
The
判定部222は、I/Oカード10のソフトエラー判定用レジスタ50からエラー情報を取得し、検出されたエラーが、コンフィギュレーションRAM401のソフトエラーか否か判定する。判定部222は、判定結果を設定部223に出力する。
The
設定部223は、FPGA40から、入出力ポート30A及び30Bのいずれかでエラーが検出されると、エラーが発生したポートを管理する管理データのビジーフラグに、「ビジー」を設定する。また、設定部223は、判定部222から判定結果を受付け、検出されたエラーがコンフィギュレーションRAM401のソフトエラーである場合、エラーが発生していないポートを管理する管理データのビジーフラグに、「ビジー」を設定する。また、設定部223は、エラーが発生していないポートを管理する管理データのビジーフラグに「ビジー」を設定したことを、指示部224に通知する。
When an error is detected in either of the input /
指示部224は、設定部223からの通知を受けて、FPGA40にリコンフィギュレーションを指示する。FPGA40は、指示部224からの指示を受けて、リコンフィギュレーションを実行する。
The
指示部224は、FPGA40のリコンフィギュレーションが終了すると、その旨を再起動部225に通知する。
When the reconfiguration of the
再起動部225は、FPGA40のリコンフィギュレーションが終了すると、各ポートのビジー状態を解除し、入出力ポート30A及び30Bの再立ち上げを実行する。具体的には、再起動部225は、FPGA40からリコンフィギュレーションの終了通知を受付けると、管理データのビジーフラグを、「ビジー」から「非ビジー」に変更するとともに、入出力ポート30A及び30Bの再立ち上げを実行する。
When the reconfiguration of the
次に、制御装置20が実行する処理の一例について説明する。図6は、制御装置20が実行する処理の一例を示すフローチャートである。
Next, an example of processing executed by the
設定部223は、FPGA40が入出力ポート30A又は30Bのエラーを検出したか否か判定する(ステップS11)。
The
ステップS11の判定がNOの場合、設定部223は、ステップS11の処理を継続する。ステップS11の判定がYESの場合、設定部223は、エラーが検出されたポートを管理する管理データのビジーフラグに、「ビジー」を設定する(ステップS12)。
When the determination in step S11 is NO, the
次に、判定部222がエラー情報を取得する(ステップS13)。判定部222は、取得したエラー情報に基づいて、入出力ポート30A又は30Bで発生したエラーが、コンフィギュレーションRAM401のソフトエラーか否か判定する(ステップS14)。
Next, the
ステップS14の判定がNOの場合、図5に図示しないエラー処理部によって、入出力エラーを復旧するための入出力エラー処理が実行される(ステップS20)。 If the determination in step S14 is NO, an input / output error process for recovering the input / output error is executed by an error processing unit (not shown in FIG. 5) (step S20).
ステップS14の判定がYESの場合、設定部223は、エラーが検出されていない他ポートが入出力処理を実行しているか否か判定する(ステップS15)。他ポートが入出力処理を実行中の場合(ステップS15/YES)、設定部223は、他ポートが入出力処理を完了するまで、ステップS15の処理を繰り返す。
When the determination in step S14 is YES, the
他ポートが入出力処理を実行していない場合(ステップS15/NO)、設定部223は、他ポートを管理する管理データのビジーフラグに「ビジー」を設定する(ステップS16)。
When the other port is not executing input / output processing (step S15 / NO), the
次に、指示部224が、FPGA40にリコンフィギュレーションを指示する(ステップS17)。再起動部225は、FPGA40のリコンフィギュレーションが終了したか否か判定する(ステップS18)。
Next, the
FPGA40のリコンフィギュレーションが終了していない場合(ステップS18/NO)、再起動部225は、ステップS18の処理を継続する。FPGA40のリコンフィギュレーションが終了した場合(ステップS18/YES)、再起動部225は、ポートの再立ち上げ、及び管理データの「ビジー」状態を解除し(ステップS19)、処理を終了する。
When the reconfiguration of the
以上の説明から明らかなように、上述の実施例によれば、設定部223は、例えば、ポート1で発生したエラーがコンフィギュレーションRAM401のソフトエラーである場合、ポート2で実行中の入出力処理が完了してから、ポート2を「ビジー」状態に設定する。そして、指示部224は、ポート2が「ビジー」状態に設定されてから、FPGA40にリコンフィギュレーションを指示する。これにより、ポート2が入出力処理を実行している最中に、FPGA40がリコンフィギュレーションを開始することによって、ポート2の入出力処理が中断されるのを防止できる。その結果、リコンフィギュレーションの開始による入出力エラーの発生が防止されるため、I/Oカード10の可用性が低下するのを防げる。また、ポート2は実行中の入出力処理を完了することができるため、I/Oカード10の可用性が高まる。また、FPGA40がリコンフィギュレーションを実行している間、ポート2は、「ビジー」状態となっているため、ポート2を用いた入出力処理を防止できる。これにより、FPGA40がリコンフィギュレーションを実行している間の入出力エラーの発生を防止することができる。また、設定部223は、ポート1で発生したエラーが、コンフィギュレーションRAM401のソフトエラーでない場合、ポート2を「ビジー」状態にしない。これにより、FPGA40をリコンフィギュレーションする必要のないエラーの場合には、ポート2での入出力処理を継続できるため、I/Oカード10の可用性が高まる。
As is apparent from the above description, according to the above-described embodiment, the
また、設定部223は、エラーが検出されたポートを、ビジー状態に設定する。例えば、設定部223は、ポート1でエラーが検出された場合、ポート1をビジー状態に設定する。これにより、エラーが検出されたポートを用いた入出力処理を防止できるため、入出力エラーの発生を防止することができる。
In addition, the
また、FPGA40のリコンフィギュレーションが完了すると、再起動部225が「ビジー」状態を解除し、入出力ポートを再立ち上げする。これにより、I/Oカード10を用いた入出力処理が再び実行可能となるため、I/Oカード10を用いた入出力処理が行えない期間は、FPGA40がリコンフィギュレーションを実行している期間となる。つまり、I/Oカード10が使用できないために、デバイスドライバ214及びI/Oライブラリ213の上位プログラムであるOS212へ与える影響は、FPGA40がリコンフィギュレーションを実行している期間となるので、I/Oカード10の可用性が高まる。
When the reconfiguration of the
以上、本件の実施例について詳述したが、本件は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 The embodiment of the present invention has been described in detail above. However, the present invention is not limited to the specific embodiment, and various modifications and changes can be made within the scope of the gist of the present invention described in the claims. Is possible.
上述の実施例では、情報処理装置100が備えるI/Oカードの数は1つであったが、情報処理装置100は、I/Oカードを複数備えていてもよい。例えば、図7のように、情報処理装置100は、I/Oカード10A〜10Cを備え、制御装置20は、I/Oカード10A〜10Cのそれぞれを制御するデバイスドライバ214A〜214Cを備えていてもよい。
In the embodiment described above, the
また、I/Oカードが備える入出力ポートの数は2つに限られるものではない。例えば、入出力ポートを図7のI/Oカード10Bのように3つ備えていてもよい。また、上述の制御装置20は、図7に示すように、複数のポートを単一のFPGAで制御するI/Oカード10A及び10Bと、1つのポートを単一のFPGAで制御するI/Oカード10Cが混在する環境で使用することも可能である。これにより、異なる構成を有する情報処理装置においても、各I/Oカードの可用性を高めることができる。
Further, the number of input / output ports provided in the I / O card is not limited to two. For example, three input / output ports may be provided like the I /
なお、上記の制御装置20が有する機能は、CPU、ROM、RAM等を備えるコンピュータによって実現することができる。その場合、制御装置20が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
In addition, the function which said
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。 When the program is distributed, for example, it is sold in the form of a portable recording medium such as a DVD (Digital Versatile Disc) or a CD-ROM (Compact Disc Read Only Memory) on which the program is recorded. It is also possible to store the program in a storage device of a server computer and transfer the program from the server computer to another computer via a network.
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。 The computer that executes the program stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. Further, each time the program is transferred from the server computer, the computer can sequentially execute processing according to the received program.
10…I/Oカード
20…制御装置
30A、30B…入出力ポート
40…FPGA
222…判定部
223…設定部
224…指示部
225…再起動部
10 ... I /
222:
Claims (7)
前記検出されたエラーが前記回路配置データ用メモリのソフトエラーである場合に、前記エラーが検出されていない他の入出力ポートの状態をビジー状態に設定する設定部と、
前記設定部が前記ビジー状態を設定した後に、前記プログラマブル論理回路に回路配置データの再設定を指示する指示部と、
を備えることを特徴とする制御装置。 In an input / output processing device comprising a plurality of input / output ports and a single programmable logic circuit for controlling the plurality of input / output ports, an error is detected from any one of the plurality of input / output ports. A determination unit for determining whether or not the detected error is a soft error in a circuit arrangement data memory included in the programmable logic circuit,
When the detected error is a soft error in the circuit arrangement data memory, a setting unit that sets the state of the other input / output port in which the error is not detected to a busy state;
An instruction unit that instructs the programmable logic circuit to reset circuit arrangement data after the setting unit sets the busy state;
A control device comprising:
請求項1から4のいずれか1項に記載の制御装置と、
を備える情報処理装置。 An input / output processing device comprising a plurality of input / output ports and a single programmable logic circuit for controlling the plurality of input / output ports;
A control device according to any one of claims 1 to 4,
An information processing apparatus comprising:
前記検出されたエラーが前記回路配置データ用メモリのソフトエラーである場合に、前記エラーが検出されていない他の入出力ポートの状態をビジー状態に設定する設定ステップと、
前記設定ステップでのビジー状態の設定が終了した後に、前記プログラマブル論理回路に回路配置データの再設定を指示する指示ステップと、
をコンピュータに実行させることを特徴とする制御プログラム。 In an input / output processing device comprising a plurality of input / output ports and a single programmable logic circuit for controlling the plurality of input / output ports, an error is detected from any one of the plurality of input / output ports. A determination step of determining whether or not the detected error is a soft error in a circuit arrangement data memory included in the programmable logic circuit,
When the detected error is a soft error of the circuit arrangement data memory, a setting step for setting the state of the other input / output port where the error is not detected to a busy state;
After completing the setting of the busy state in the setting step, an instruction step for instructing the programmable logic circuit to reset the circuit arrangement data;
A control program for causing a computer to execute.
前記検出されたエラーが前記回路配置データ用メモリのソフトエラーである場合に、前記エラーが検出されていない他の入出力ポートの状態をビジー状態に設定する設定ステップと、
前記設定ステップでのビジー状態の設定が終了した後に、前記プログラマブル論理回路に回路配置データの再設定を指示する指示ステップと、
を有することを特徴とする制御方法。 In an input / output processing device comprising a plurality of input / output ports and a single programmable logic circuit for controlling the plurality of input / output ports, an error is detected from any one of the plurality of input / output ports. A determination step of determining whether or not the detected error is a soft error in a circuit arrangement data memory included in the programmable logic circuit,
When the detected error is a soft error of the circuit arrangement data memory, a setting step for setting the state of the other input / output port where the error is not detected to a busy state;
After completing the setting of the busy state in the setting step, an instruction step for instructing the programmable logic circuit to reset the circuit arrangement data;
A control method characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010149357A JP5499950B2 (en) | 2010-06-30 | 2010-06-30 | Control apparatus, information processing apparatus, control program, and control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010149357A JP5499950B2 (en) | 2010-06-30 | 2010-06-30 | Control apparatus, information processing apparatus, control program, and control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012014353A true JP2012014353A (en) | 2012-01-19 |
JP5499950B2 JP5499950B2 (en) | 2014-05-21 |
Family
ID=45600724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010149357A Active JP5499950B2 (en) | 2010-06-30 | 2010-06-30 | Control apparatus, information processing apparatus, control program, and control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5499950B2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014052781A (en) * | 2012-09-06 | 2014-03-20 | Fujitsu Telecom Networks Ltd | Fpga monitoring control circuit |
JP2016052074A (en) * | 2014-09-02 | 2016-04-11 | 株式会社日立製作所 | Communication device |
US9342407B2 (en) | 2012-09-28 | 2016-05-17 | Fujitsu Limited | Storage control apparatus and computer-readable recording medium recorded with control program |
JP2016092546A (en) * | 2014-10-31 | 2016-05-23 | 東日本電信電話株式会社 | Controller, control method, and computer program |
WO2019097800A1 (en) * | 2017-11-16 | 2019-05-23 | 株式会社日立産機システム | Control device |
JP2022073271A (en) * | 2020-10-30 | 2022-05-17 | 横河電機株式会社 | Device, method and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002222003A (en) * | 2001-01-26 | 2002-08-09 | Matsushita Electric Works Ltd | General unit for programmable controller |
JP2003229760A (en) * | 2002-02-01 | 2003-08-15 | Hitachi High-Technologies Corp | Device controller |
JP2005235074A (en) * | 2004-02-23 | 2005-09-02 | Fujitsu Ltd | Software error correction method of fpga |
JP2010079356A (en) * | 2008-09-24 | 2010-04-08 | Koyo Electronics Ind Co Ltd | Programmable controller |
-
2010
- 2010-06-30 JP JP2010149357A patent/JP5499950B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002222003A (en) * | 2001-01-26 | 2002-08-09 | Matsushita Electric Works Ltd | General unit for programmable controller |
JP2003229760A (en) * | 2002-02-01 | 2003-08-15 | Hitachi High-Technologies Corp | Device controller |
JP2005235074A (en) * | 2004-02-23 | 2005-09-02 | Fujitsu Ltd | Software error correction method of fpga |
JP2010079356A (en) * | 2008-09-24 | 2010-04-08 | Koyo Electronics Ind Co Ltd | Programmable controller |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014052781A (en) * | 2012-09-06 | 2014-03-20 | Fujitsu Telecom Networks Ltd | Fpga monitoring control circuit |
US9342407B2 (en) | 2012-09-28 | 2016-05-17 | Fujitsu Limited | Storage control apparatus and computer-readable recording medium recorded with control program |
JP2016052074A (en) * | 2014-09-02 | 2016-04-11 | 株式会社日立製作所 | Communication device |
JP2016092546A (en) * | 2014-10-31 | 2016-05-23 | 東日本電信電話株式会社 | Controller, control method, and computer program |
WO2019097800A1 (en) * | 2017-11-16 | 2019-05-23 | 株式会社日立産機システム | Control device |
KR20200012930A (en) * | 2017-11-16 | 2020-02-05 | 가부시키가이샤 히다치 산키시스템 | Control unit |
KR102294177B1 (en) * | 2017-11-16 | 2021-08-27 | 가부시키가이샤 히다치 산키시스템 | control device |
US11194739B2 (en) | 2017-11-16 | 2021-12-07 | Hitachi Industrial Equipment Systems Co., Ltd. | Control apparatus |
JP2022073271A (en) * | 2020-10-30 | 2022-05-17 | 横河電機株式会社 | Device, method and program |
US11687397B2 (en) | 2020-10-30 | 2023-06-27 | Yokogawa Electric Corporation | Control device, method, and computer-readable storage medium |
JP7338608B2 (en) | 2020-10-30 | 2023-09-05 | 横河電機株式会社 | Apparatus, method and program |
Also Published As
Publication number | Publication date |
---|---|
JP5499950B2 (en) | 2014-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5499950B2 (en) | Control apparatus, information processing apparatus, control program, and control method | |
RU2720068C2 (en) | Information processing device, method for control thereof and data storage medium | |
US9665521B2 (en) | System and method for providing a processing node with input/output functionality by an I/O complex switch | |
US9182998B2 (en) | Remote bios update in system having multiple computers | |
JP5593856B2 (en) | Information processing apparatus and driver execution control method | |
US9240924B2 (en) | Out-of band replicating bios setting data across computers | |
US9823972B2 (en) | Mobile flash storage boot partition and/or logical unit shadowing | |
TWI724415B (en) | A multi-node storage system and method for updating firmware thereof | |
US9384095B2 (en) | Recovering from a defective boot image | |
KR20140058281A (en) | Method for updating boot image for fast booting and image forming apparatus for performing the same | |
JP2008262538A (en) | Method and system for handling input/output (i/o) errors | |
US9459884B2 (en) | Self-healing using an alternate boot partition | |
JP2017076357A (en) | Ufs device operation method, ufs host operation method, and operation method of system including ufs device and ufs host | |
JP6599725B2 (en) | Information processing apparatus, log management method, and computer program | |
JP5034979B2 (en) | START-UP DEVICE, START-UP METHOD, AND START-UP PROGRAM | |
JP2007080012A (en) | Rebooting method, system and program | |
JPWO2004081791A1 (en) | Virtual machine system and firmware update method in virtual machine system | |
US20060047927A1 (en) | Incremental provisioning of software | |
US7506115B2 (en) | Incremental provisioning of software | |
JP2005309580A (en) | Storage control system and boot control system | |
TWI448967B (en) | Updating method of software and computer readable medium | |
JP2006178688A (en) | Multiplexing apparatus and method for multiplexing legacy device | |
WO2016067404A1 (en) | Computer system | |
JP2020057250A (en) | Information processor, and control method and program therefor | |
JP2018106251A (en) | Information processing apparatus, updating method of operation program and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130507 |
|
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: 20140212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140225 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5499950 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |