JP6408482B2 - Programmable device and electronic system apparatus using the same - Google Patents

Programmable device and electronic system apparatus using the same Download PDF

Info

Publication number
JP6408482B2
JP6408482B2 JP2015546247A JP2015546247A JP6408482B2 JP 6408482 B2 JP6408482 B2 JP 6408482B2 JP 2015546247 A JP2015546247 A JP 2015546247A JP 2015546247 A JP2015546247 A JP 2015546247A JP 6408482 B2 JP6408482 B2 JP 6408482B2
Authority
JP
Japan
Prior art keywords
error
configuration memory
unit
cram
programmable device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015546247A
Other languages
Japanese (ja)
Other versions
JPWO2015068285A1 (en
Inventor
健一 新保
健一 新保
鳥羽 忠信
忠信 鳥羽
長崎 文彦
文彦 長崎
学 牧野
学 牧野
鈴木 秀和
秀和 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2015068285A1 publication Critical patent/JPWO2015068285A1/en
Application granted granted Critical
Publication of JP6408482B2 publication Critical patent/JP6408482B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/003Modifications for increasing the reliability for protection
    • H03K19/0033Radiation hardening
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Logic Circuits (AREA)
  • Detection And Correction Of Errors (AREA)

Description

本発明は、プログラマブルデバイス及びこれを用いた電子システム装置に関する。   The present invention relates to a programmable device and an electronic system apparatus using the programmable device.

本技術分野の背景技術として、米国登録特許US8332722号(特許文献1)“Method and architecture for performing scrubbing of an FPGA's configuration memory”がある。   As a background art in this technical field, there is US registered patent US8332722 (Patent Document 1) "Method and architecture for performing scrubbing of an FPGA's configuration memory".

米国特許第8332722号明細書US Pat. No. 8,332,722

FPGA(Field Programmable Gate Array)などのプログラマブルデバイスでは、コンフィギュレーションメモリ(以下、CRAMと記す)に放射線起因のソフトエラーが発生すると、ユーザロジックの構成情報が一時的に破壊され、誤動作を引き起こす可能性がある。そこで、従来のプログラマブルデバイスでは、CRAMに格納されるデータを固定長のデータフレームに分割し、フレーム毎に巡回しながらエラーチェックする回路を用意されている。ユーザは、この回路のCRAMソフトエラー検出信号をトリガとして、プログラマブルデバイスの再コンフィグレーションや、装置再起動などのリカバリ処理を実施することで、ソフトエラー状態から復旧でき、装置の信頼性を向上させることができる。   In a programmable device such as an FPGA (Field Programmable Gate Array), if a soft error due to radiation occurs in the configuration memory (hereinafter referred to as CRAM), the configuration information of the user logic may be temporarily destroyed, causing malfunction. There is. Therefore, a conventional programmable device is provided with a circuit that divides the data stored in the CRAM into fixed-length data frames and performs an error check while circulating each frame. The user can recover from the soft error state by improving the reliability of the device by performing recovery processing such as reconfiguration of the programmable device or device restart using the CRAM soft error detection signal of this circuit as a trigger. be able to.

しかし、従来のエラーチェック方法ではCRAM全領域をフレーム順にチェックするため、プログラマブルデバイスの大容量化が進むと、ソフトエラー検出時間が遅くなってしまう。例えば、2重化を採用する通信装置では、異常時の装置切替え時間を数十ミリ秒以内にすることが求められるため、装置に搭載されるプログラマブルデバイスは上記時間以内にエラーを検出し、訂正できることが望ましい。しかし、大容量化が進むプログラマブルデバイスでは、単純にエラー検出までに100ミリ秒以上要する場合もあり、切替え時間内でのリカバリが困難になってきている。そのため、CRAMに発生した環境放射線ソフトエラーの検出および訂正時間を短縮し、装置の停止時間やリカバリ時間を短縮することが必要となる。また、エラー検出に加え、CRAM内のソフトエラーを短時間で訂正することが求められる。   However, in the conventional error check method, the entire area of the CRAM is checked in the order of frames. Therefore, when the capacity of the programmable device is increased, the soft error detection time is delayed. For example, in a communication device that employs duplexing, it is required that the device switching time at the time of abnormality be within tens of milliseconds, so the programmable device mounted on the device detects and corrects an error within the above time. It is desirable to be able to do it. However, in a programmable device whose capacity is increasing, it may take 100 milliseconds or more to simply detect an error, and recovery within the switching time has become difficult. For this reason, it is necessary to shorten the detection and correction time of the environmental radiation soft error occurring in the CRAM, and to shorten the stop time and recovery time of the apparatus. In addition to error detection, it is required to correct soft errors in the CRAM in a short time.

特許文献1によれば、CRAMに発生するソフトエラーを検出・訂正する回路(スクラビング回路)について記載されている。スクラビング回路はユーザ論理回路の一部としてFPGAに実装され、CRAMデータをフレームと呼ばれる固定長データ単位で読み出し、CRCによるエラー検出や、ECCによるエラー訂正ができる。また、外部ROMに格納された正常データを再度CRAMに上書きすることで複数ビットエラーを訂正できる。   According to Patent Document 1, a circuit (scrubbing circuit) that detects and corrects a soft error that occurs in a CRAM is described. The scrubbing circuit is mounted on the FPGA as a part of the user logic circuit, and can read CRAM data in fixed-length data units called frames, and can detect errors by CRC and correct errors by ECC. In addition, the multi-bit error can be corrected by overwriting the normal data stored in the external ROM on the CRAM again.

また、スクラビング回路は構成要素としてFPGA内部のソフトプロセッサを使用し、命令メモリ内に格納された命令コードに従って、CRAMの任意フレームのエラーチェックを行うことができる。しかし、特許文献1ではCRAMのエラー検出時間や訂正時間については考慮されておらず、エラー検出時間や訂正時間を短くするための手段や効果について積極的に言及されていない。   Also, the scrubbing circuit uses a soft processor inside the FPGA as a component, and can perform error checking of an arbitrary frame in the CRAM according to the instruction code stored in the instruction memory. However, Patent Document 1 does not consider the error detection time and correction time of the CRAM, and does not actively mention means and effects for shortening the error detection time and correction time.

本発明の目的は、ソフトエラー発生時の検出時間および訂正時間を短縮させるプログラマブルデバイス及びこれを用いた電子システム装置を提供することにある。   An object of the present invention is to provide a programmable device that shortens detection time and correction time when a soft error occurs, and an electronic system apparatus using the programmable device.

上記課題を解決するために、例えば請求の範囲に記載の構成を採用する。その一例を挙げるならば、コンフィギュレーションメモリを有するプログラマブルデバイスにおいて、コンフィギュレーションメモリの診断手段として、コンフィギュレーションメモリのデータをリード、ライトするリードライト部と、コンフィギュレーションメモリのデータに対してエラーチェックを行う機能ブロック部と、リードライト部と機能ブロック部に対し、コンフィギュレーションメモリ内の所定の領域のデータを所定の順序でエラーチェックを行うよう制御するシーケンサ部と、を備える構成とする。   In order to solve the above problems, for example, the configuration described in the claims is adopted. For example, in a programmable device having a configuration memory, as a diagnostic means for the configuration memory, a read / write unit that reads and writes data in the configuration memory, and an error check on the data in the configuration memory. And a sequencer unit that controls the read / write unit and the functional block unit to perform error checking on data in a predetermined area in the configuration memory in a predetermined order.

本発明によれば、ソフトエラー発生時の検出時間および訂正時間を短縮し、稼働時間を長くすることで、プログラマブルデバイス及びこれを用いた電子システム装置の信頼性が向上する。   ADVANTAGE OF THE INVENTION According to this invention, the reliability of a programmable device and an electronic system apparatus using the same improves by shortening the detection time and correction time at the time of soft error occurrence, and lengthening operation time.

実施例1に係るプログラマブルデバイスの構成図。1 is a configuration diagram of a programmable device according to Embodiment 1. FIG. 領域テーブル3の格納データ構造を示す図。The figure which shows the storage data structure of the area | region table 3. FIG. チェック領域の設定例を示す図。The figure which shows the example of a setting of a check area | region. 実行順序テーブル4の格納データ構造を示す図。The figure which shows the storage data structure of the execution order table. 機能ブロック部7の構成を示す図。The figure which shows the structure of the functional block part. エラー信号出力部8の構成例を示す図。The figure which shows the structural example of the error signal output part 8. FIG. 実施例2に係るプログラマブルデバイスの構成図。FIG. 6 is a configuration diagram of a programmable device according to a second embodiment. 実施例2における実行順序テーブル4Aを示す図。The figure which shows 4 A of execution order tables in Example 2. FIG. プログラマブルデバイスを搭載した電子システム装置(通信装置)の一例を示す構成図(実施例3)。The block diagram which shows an example of the electronic system apparatus (communication apparatus) which mounts a programmable device (Example 3). 通信装置90のエラー発生時の制御フローを示す図。The figure which shows the control flow at the time of the error generation of the communication apparatus 90. FIG. エラー情報の表示例を示す図。The figure which shows the example of a display of error information. プログラマブルデバイスを搭載した電子システム装置の一例(モータ制御システム)を示す構成図(実施例4)。The block diagram (Example 4) which shows an example (motor control system) of the electronic system apparatus carrying a programmable device. 実施例5に係るプログラマブルデバイスの構成図。FIG. 10 is a configuration diagram of a programmable device according to a fifth embodiment.

本発明に係るプログラマブルデバイス及びこれを用いた電子システム装置の実施例を、図面を用いて説明する。   Embodiments of a programmable device and an electronic system apparatus using the same according to the present invention will be described with reference to the drawings.

図1は、実施例1に係るプログラマブルデバイスの構成図である。本実施例のプログラマブルデバイス100は、ユーザロジックの回路構成情報を格納するためのコンフィギュレーションメモリ(CRAM)9と、CRAM内に発生したソフトエラーを検出・訂正するCRAM制御部1を有する。ここで、CRAM9は、格納されるデータをフレームと呼ばれる固定長のデータに分割され、CRAM制御部1はそのデータフレーム単位でソフトエラーの検出・訂正を行う。また、CRAM制御部1は、ユーザロジックの一部としてプログラマブルデバイス100に実装する。   FIG. 1 is a configuration diagram of a programmable device according to the first embodiment. The programmable device 100 according to the present embodiment includes a configuration memory (CRAM) 9 for storing circuit configuration information of user logic, and a CRAM control unit 1 that detects and corrects a soft error generated in the CRAM. Here, the CRAM 9 divides the stored data into fixed-length data called frames, and the CRAM control unit 1 detects and corrects soft errors in units of the data frames. The CRAM control unit 1 is mounted on the programmable device 100 as part of the user logic.

プログラマブルデバイス100では、CRAM制御部1によってCRAM9のソフトエラー検出および訂正動作を行う。基本的な動作としては、CRAM9からデータフレームを読み出し、エラービットの有無をチェックして、エラービットが有った場合はデータを訂正する。エラーが無ければ次に指定されたデータフレームをリードし、エラーをチェックする、という動作を繰り返す。   In the programmable device 100, the CRAM control unit 1 performs a soft error detection and correction operation of the CRAM 9. As a basic operation, a data frame is read from the CRAM 9 and the presence or absence of an error bit is checked. If there is an error bit, the data is corrected. If there is no error, the operation of reading the next designated data frame and checking the error is repeated.

もしエラー訂正ができない場合は、ユーザロジックにも接続できる信号としてエラー信号8aやエラー情報8bを出力する。エラー信号8a,8bは複数種類の情報を有し、必要に応じてユーザロジックへ接続するか、そのままプログラマブルデバイス10の外部に出力してもよい。   If the error cannot be corrected, an error signal 8a or error information 8b is output as a signal that can be connected to the user logic. The error signals 8a and 8b have a plurality of types of information, and may be connected to the user logic as necessary or output to the outside of the programmable device 10 as they are.

CRAM制御部1の構成は次の通りである。CRAMリードライト部2は、CRAM9のデータフレームをリード、ライトする。領域テーブル3は、エラーをチェックするCRAMの領域情報を格納する。実行順序テーブル4は、CRAM9に対してエラーをチェックする領域の順序や、エラー検出および訂正などのデータ処理の種類、繰返し回数など、チェックシーケンスの情報を格納する。機能ブロック部7は、エラー検出や訂正などCRAMのデータ処理に関する複数種類の機能ブロックを有する。セレクタ部6は、使用する機能ブロックを選択する。エラー信号出力部8は、機能ブロック部7からの複数のエラー信号を必要な種類のエラー信号に変換して出力する。シーケンサ部5は、領域テーブル3および実行順序テーブル4の情報を基にCRAM9のエラーチェック動作を実行する。   The configuration of the CRAM control unit 1 is as follows. The CRAM read / write unit 2 reads and writes the data frame of the CRAM 9. The area table 3 stores area information of CRAM for checking errors. The execution order table 4 stores check sequence information such as the order of areas for checking errors in the CRAM 9, the type of data processing such as error detection and correction, and the number of repetitions. The functional block unit 7 has a plurality of types of functional blocks related to CRAM data processing such as error detection and correction. The selector unit 6 selects a functional block to be used. The error signal output unit 8 converts a plurality of error signals from the function block unit 7 into necessary types of error signals and outputs them. The sequencer unit 5 executes an error check operation of the CRAM 9 based on information in the area table 3 and the execution order table 4.

ここにCRAMリードライト部2は、CRAM9とのインタフェース部を内蔵し、指定したCRAM9の物理アドレスに従ってデータフレームのリードおよびライト動作を行う。また、CRAMリードライト部2は、CRAM9以外にプログラマブルデバイス10に接続された外部ROM50とのインタフェースを有し、外部ROM50のリードおよびライト動作を行うことができる。外部ROM50には、プログラマブルデバイス10を起動した際にCRAM9にコンフィギュレーションするためのユーザロジックの回路構成情報が格納されている。CRAMリードライト部2によれば、例えば、外部ROM50から読み出したデータをCRAM9に書き込むことができる。   Here, the CRAM read / write unit 2 includes an interface unit with the CRAM 9 and performs data frame read and write operations according to the physical address of the designated CRAM 9. The CRAM read / write unit 2 has an interface with the external ROM 50 connected to the programmable device 10 in addition to the CRAM 9 and can perform read and write operations of the external ROM 50. The external ROM 50 stores user logic circuit configuration information for configuring the CRAM 9 when the programmable device 10 is activated. According to the CRAM read / write unit 2, for example, data read from the external ROM 50 can be written into the CRAM 9.

図2は、領域テーブル3の格納データ構造を示す図である。前述したようにCRAM9は固定長のデータフレームで分割されており、それぞれのフレームには固有のアドレスが割り当てられている。本テーブルの行方向がデータフレームのアドレスを示しており、列方向には複数のチェック領域A0〜Anを設定できるテーブルが用意されている。各フレームアドレスの欄には、チェックする/しないを示す1ビット情報を格納している。例えば、領域番号A2ではデータフレームアドレスF2,F3をチェックすることを示す。   FIG. 2 is a diagram illustrating a storage data structure of the area table 3. As described above, the CRAM 9 is divided into fixed-length data frames, and a unique address is assigned to each frame. The row direction of this table indicates the address of the data frame, and a table in which a plurality of check areas A0 to An can be set in the column direction is prepared. Each frame address column stores 1-bit information indicating whether or not to check. For example, area number A2 indicates that data frame addresses F2 and F3 are to be checked.

図3は、チェック領域の設定例を示す図である。領域テーブル3によれば、図中のA0〜A4のように複数の異なるチェック領域を設定することができる。また、各チェック領域は、吹き出しに示したようにデータフレーム10のグループとして設定するため、領域の形状はA1〜A3のような矩形の領域でなくてもよい。A0のように、L字型の領域や、離れた領域を1つの領域として設定できる。また、A2とA3のように複数の領域が重なりあうように指定してもよい。この場合、A2とA3には同一のデータフレームが含まれる。   FIG. 3 is a diagram illustrating an example of setting a check area. According to the area table 3, a plurality of different check areas can be set like A0 to A4 in the figure. Further, since each check area is set as a group of data frames 10 as shown in the balloon, the shape of the area may not be a rectangular area such as A1 to A3. Like A0, an L-shaped area or a distant area can be set as one area. Moreover, you may designate so that several area | regions may overlap like A2 and A3. In this case, A2 and A3 include the same data frame.

但し、一般的にユーザロジックのレイアウトは、FPGAベンダが用意する専用のマッピングツールによって、ユーザロジックの動作タイミングを満足するように自動的に最適配置される。そのため、領域を分けずにCRAM全面をチェックする場合には、最適配置後のユーザロジックのレイアウトを基に、使用しているデータフレームのみをチェックするように領域テーブルを設定する。   However, in general, the layout of the user logic is automatically optimally arranged so as to satisfy the operation timing of the user logic by a dedicated mapping tool prepared by the FPGA vendor. Therefore, when checking the entire surface of the CRAM without dividing the area, the area table is set so as to check only the data frame being used based on the layout of the user logic after optimal placement.

また、FPGAベンダからCRAMのユーザ使用ビット情報が提供される場合は、その情報を基に、使用しているビットが含まれるデータフレームのみをチェックするよう領域テーブルを設定することが望ましい。また、一般的にユーザロジックは、図3のA1のように階層化設計されるため、各モジュールA10〜A12のレイアウトに合わせて、チェック領域を設定する。その場合、ユーザロジックがA10〜A12内にレイアウトされるように、配置を指定してマッピングする。
このように領域テーブル3によってチェックする領域を限定することで、無駄なチェック時間を省き、CRAM9内のソフトエラー検出時間を短縮することができる。
In addition, when user use bit information of CRAM is provided from the FPGA vendor, it is desirable to set the area table so as to check only the data frame including the used bit based on the information. In general, since the user logic is hierarchically designed as shown by A1 in FIG. 3, check areas are set in accordance with the layout of the modules A10 to A12. In that case, the layout is designated and mapped so that the user logic is laid out in A10 to A12.
By limiting the area to be checked by the area table 3 in this way, useless check time can be omitted and the soft error detection time in the CRAM 9 can be shortened.

図4は、実行順序テーブル4の格納データ構造を示す図である。CRAM制御部1におけるエラーチェックは、テーブル4に格納されたシーケンス情報に従って実行される。実行順序テーブル4には、実行番号とチェック領域番号、処理番号、リピート回数、次の実行番号、で構成されるシーケンス情報を格納する。実行番号は本テーブルのアドレスを示す。アドレスが指定された場合はその実行番号から実行を開始する。指定が無ければ実行番号0から実行を開始する。チェック領域番号は領域テーブル4に設定された領域番号を示す。処理番号は機能ブロック部7の機能ブロック番号を示す。リピート回数は実行番号を連続で実行する繰返し回数を示す。次の実行番号には、次に実行する実行番号を設定する。これより、同じ実行番号を繰り返したり、前の実行番号に戻って動作を繰り返すことができる。   FIG. 4 is a diagram showing a storage data structure of the execution order table 4. The error check in the CRAM control unit 1 is executed according to the sequence information stored in the table 4. The execution order table 4 stores sequence information including an execution number, a check area number, a processing number, the number of repeats, and the next execution number. The execution number indicates the address of this table. If an address is specified, execution starts from that execution number. If not specified, execution starts from execution number 0. The check area number indicates an area number set in the area table 4. The process number indicates the function block number of the function block unit 7. The number of repeats indicates the number of repetitions in which execution numbers are continuously executed. The next execution number is set to the next execution number. Thus, the same execution number can be repeated, or the operation can be repeated by returning to the previous execution number.

例えば、図4に示す実行順序テーブルでは、まずは実行番号0を実行し、チェック領域A1のデータフレームについてエラー処理番号#0(エラー検出)の処理を1回行う。A1内の全てのデータフレームのチェックが終わったら、次の実行番号1に進む。実行番号1では、領域A0のデータフレームについて処理番号#1(エラー検出および訂正)の処理を4回繰返し、次の実行番号2に進む。実行番号2では、領域A2のデータフレームについて処理番号#0(エラー検出)の処理を2回繰返し、次に実行番号0へ戻る。そして、以上のチェック動作を繰り返す。   For example, in the execution order table shown in FIG. 4, first, the execution number 0 is executed, and the processing of the error processing number # 0 (error detection) is performed once for the data frame in the check area A1. When all the data frames in A1 are checked, the process proceeds to the next execution number 1. In execution number 1, the processing of process number # 1 (error detection and correction) is repeated four times for the data frame in area A0, and the process proceeds to the next execution number 2. In execution number 2, the process of process number # 0 (error detection) is repeated twice for the data frame in area A2, and then the process returns to execution number 0. Then, the above check operation is repeated.

実行順序テーブル4を用いることにより、稼動率や重要度が高い回路モジュールの領域については繰返し回数を多くし、エラーチェック頻度を増やすことで、他の領域に比べて重点的にエラーの検出を行うことができる。   By using the execution order table 4, the number of repetitions is increased and the error check frequency is increased for the area of the circuit module having a high operation rate and high importance, so that error detection is focused on compared to other areas. be able to.

シーケンサ部5は、これら領域テーブル3および実行順序テーブル4の格納情報を基に、CRAM9のエラーチェックを実行する。実行順序テーブル4で指定された領域番号を基に領域テーブル3を参照し、リードするデータフレームのアドレスをCRAMリードライト部2に通知する(5a)。同時に、エラー処理番号に従って使用する機能ブロックを選択する(5c)。CRAMリードライト部2によってリードされたデータフレーム2aは、選択された機能ブロック部7に入力され、エラーチェック処理を行う。   The sequencer unit 5 performs an error check of the CRAM 9 based on the storage information of the area table 3 and the execution order table 4. The area table 3 is referred to based on the area number specified in the execution order table 4, and the address of the data frame to be read is notified to the CRAM read / write unit 2 (5a). At the same time, the function block to be used is selected according to the error processing number (5c). The data frame 2a read by the CRAM read / write unit 2 is input to the selected functional block unit 7 to perform error check processing.

機能ブロック部7は、CRAMデータに対するソフトエラー対策処理機能を持った回路ブロック群である。CRAM制御部1は、複数種類の機能ブロックを内蔵した機能ブロック部7を有し、ユーザは目的に合わせてこれを選択して使用する。   The function block unit 7 is a circuit block group having a soft error countermeasure processing function for CRAM data. The CRAM control unit 1 has a function block unit 7 incorporating a plurality of types of function blocks, and the user selects and uses it according to the purpose.

図5は、機能ブロック部7の構成を示す図である。機能ブロック部7には複数種類の機能ブロック#0〜#nを内蔵する。ここでは#0(70)としてCRC(Cyclic Redundancy Code)によるエラー検出機能ブロックを、#1(71)としてECCによる1ビットエラー訂正機能ブロックを例に示す。   FIG. 5 is a diagram illustrating a configuration of the functional block unit 7. The function block unit 7 incorporates a plurality of types of function blocks # 0 to #n. Here, an error detection function block by CRC (Cyclic Redundancy Code) is shown as # 0 (70), and a 1-bit error correction function block by ECC is shown as # 1 (71).

機能ブロック#0(70)は、CRCエラーチェック部11と、冗長ビット格納部12と、CRC冗長ビット生成部13で構成される。CRCエラーチェック部11は、順次入力されるCRAMリードデータフレームを、予め冗長ビット格納部12に格納した冗長ビットと比較することで、データフレーム内のエラービット有無を検出する。CRC冗長ビット生成部13は、CRAM制御部1の起動時に全データフレームの冗長ビットを自動生成し、冗長ビット格納部12に格納する。これにより、データフレーム内のソフトエラーを検出できる。CRCエラー検出時は、エラー検出を表すエラー信号E1を出力すると共に、エラーが検出された領域番号や、フレームアドレス、エラー種類などのエラー情報を同時に出力する。   The functional block # 0 (70) includes a CRC error check unit 11, a redundant bit storage unit 12, and a CRC redundant bit generation unit 13. The CRC error check unit 11 detects the presence or absence of an error bit in the data frame by comparing sequentially input CRAM read data frames with redundant bits stored in the redundant bit storage unit 12 in advance. The CRC redundant bit generation unit 13 automatically generates redundant bits for all data frames when the CRAM control unit 1 is activated, and stores the redundant bits in the redundant bit storage unit 12. Thereby, a soft error in the data frame can be detected. When a CRC error is detected, an error signal E1 indicating error detection is output, and error information such as an area number in which an error is detected, a frame address, and an error type are simultaneously output.

なお、冗長ビット格納部12に格納する冗長ビット情報は、CRAM制御部1の起動時にCRC冗長ビット生成部13により生成するものとしたが、CRAM9のデータフレームに付加しておいてもよい。また、エラーの検出アルゴリズムや、エラービットの訂正アルゴリズムについては特に限定しない。複数種類の機能ブロックを搭載しても良いが、許容できる回路規模の範囲で搭載する機能ブロックを限定してもよい。   The redundant bit information stored in the redundant bit storage unit 12 is generated by the CRC redundant bit generation unit 13 when the CRAM control unit 1 is activated, but may be added to the data frame of the CRAM 9. Further, an error detection algorithm and an error bit correction algorithm are not particularly limited. A plurality of types of function blocks may be mounted, but the function blocks to be mounted may be limited within an allowable circuit scale.

機能ブロック#1(71)は、エラーチェック訂正部14と、冗長ビット格納部15と、冗長ビット生成部16で構成される。エラーチェック訂正部14は、順次入力されるCRAMリードデータフレームを、予め冗長ビット格納部15に格納したECC冗長ビットと比較することで、データフレーム内のエラービット有無を検出する。そして、エラーを検出した時はこれを訂正し、CRAMライトデータフレームとして出力する。冗長ビット生成部16は、CRAM制御部1の起動時に全データフレームのECC冗長ビットを自動生成し、冗長ビット格納部15に格納する。これにより、データフレーム内のソフトエラーを検出できる。ECCエラー検出時は、エラー検出を表すエラー信号E1およびエラー訂正成功を表すエラー信号E2を出力する。さらに、エラービット数が1ビット以上の場合で訂正できなかった場合は、訂正不可通知としてエラー信号E3を出力する。さらに、エラー検出・訂正および訂正不可と判定されたデータフレームのアドレスやエラー種類などのエラー情報を同時に出力する。   The functional block # 1 (71) includes an error check correction unit 14, a redundant bit storage unit 15, and a redundant bit generation unit 16. The error check correction unit 14 detects the presence / absence of an error bit in the data frame by comparing sequentially input CRAM read data frames with ECC redundant bits stored in the redundant bit storage unit 15 in advance. When an error is detected, it is corrected and output as a CRAM write data frame. The redundant bit generation unit 16 automatically generates ECC redundant bits of all data frames when the CRAM control unit 1 is activated and stores the ECC redundant bits in the redundant bit storage unit 15. Thereby, a soft error in the data frame can be detected. When an ECC error is detected, an error signal E1 indicating error detection and an error signal E2 indicating error correction success are output. Further, if the error bit number is 1 bit or more and correction is not possible, an error signal E3 is output as a correction impossible notification. Further, error information such as the address and error type of the data frame determined to be error detected / corrected and uncorrectable is simultaneously output.

また、前述したように、CRAM制御部1はユーザロジックの一部としてプログラマブルデバイスに実装するため、回路規模が大きくなるとCRAM制御部自身の中性子ソフトエラー率が大きくなってしまう。そのため、本実施例における機能ブロックはモジュール構成となっており、必要な機能ブロックのみを選択して実装することができる。不要なブロックについては切り離して、プログラマブルデバイスに実装しないことで、CRAM制御部自身の回路規模を縮小し、ソフトエラー障害を低減できる。   Further, as described above, since the CRAM control unit 1 is mounted on a programmable device as part of the user logic, the neutron soft error rate of the CRAM control unit itself increases as the circuit scale increases. Therefore, the functional blocks in the present embodiment have a module configuration, and only necessary functional blocks can be selected and mounted. By separating unnecessary blocks and not mounting them on a programmable device, the circuit scale of the CRAM control unit itself can be reduced and soft error failures can be reduced.

図6は、エラー信号出力部8の構成例を示す図である。エラー信号出力部8では、機能ブロック部7からの複数のエラー信号を外部で必要な形式(種類、本数、信号形状(レベル、パルス)、タイミング)のエラー信号に変換して出力する。図6では、機能ブロック部(#0〜#n)からのエラー信号E1〜E3、およびエラー情報を、論理和80〜83でまとめて、エラー信号E1’、E2’、E3’およびエラー情報として出力する。
このように、本実施例におけるプログラマブルデバイス100では、CRAM制御部1によって、CRAM9の複数の任意領域に対するエラーチェック順序、チェック内容(エラー処理番号)、繰返し回数を自由に設定することができる。これより、CRAM9内の指定した領域を重点的にエラーチェックすることで、エラー検出処理の効率が向上し、エラー検出時間を短縮できる。
FIG. 6 is a diagram illustrating a configuration example of the error signal output unit 8. In the error signal output unit 8, a plurality of error signals from the function block unit 7 are converted into error signals of an externally required format (type, number, signal shape (level, pulse), timing) and output. In FIG. 6, error signals E1 to E3 and error information from the function block units (# 0 to #n) are combined with logical sums 80 to 83, and error signals E1 ′, E2 ′, E3 ′ and error information are collected. Output.
As described above, in the programmable device 100 according to this embodiment, the CRAM control unit 1 can freely set the error check order, the check contents (error processing number), and the number of repetitions for a plurality of arbitrary areas of the CRAM 9. As a result, the error check processing efficiency can be improved and the error detection time can be shortened by focusing on the specified area in the CRAM 9 for error checking.

例えば、FPGAベンダから提供されるCRAMのユーザ使用ビット情報を基に、そのビットが含まれるデータフレームのみをチェックするように領域テーブル3を設定することで、チェックするフレーム数が限定されるため、エラー検出時間を短縮できる。また、本実施例のプログラマブルデバイスを搭載した電子システム装置では、プログラマブルデバイスにおいてソフトエラーの検出・訂正が従来に比べて短時間で完了するため、すばやくリカバリ処理を実行することができ、装置全体の復旧時間を短縮できる。   For example, the number of frames to be checked is limited by setting the area table 3 so as to check only the data frame including the bit based on the user use bit information of the CRAM provided by the FPGA vendor. Error detection time can be shortened. In addition, in the electronic system apparatus equipped with the programmable device of this embodiment, the soft error detection / correction in the programmable device is completed in a shorter time than before, so that the recovery process can be executed quickly, and the entire apparatus can be Recovery time can be shortened.

また、本実施例におけるプログラマブルデバイス100では、領域テーブル4の設定情報を基に、エラーが検出された領域情報を通知、または領域別にエラー信号を通知できる。CRAM領域情報とその領域に格納されるユーザロジックの構成情報は対応しているため、エラーが発生したCRAM領域が特定できれば、エラーとなったユーザロジック部分が特定でき、そのユーザロジックに合わせて必要最低限の最適なリカバリ処理を行うことができる。   Further, in the programmable device 100 according to the present embodiment, based on the setting information of the region table 4, it is possible to notify the region information where an error has been detected, or to notify the error signal for each region. Since the CRAM area information and the configuration information of the user logic stored in the area correspond to each other, if the CRAM area where the error has occurred can be identified, the user logic portion in which the error has occurred can be identified, and is necessary according to the user logic. Minimal optimal recovery processing can be performed.

なお、本実施例では、CRAM制御部1はプログラム可能なユーザロジックの一部としてCRAM9に実装しており、実行順序テーブル4および領域テーブル3は、プログラマブルデバイス内部のブロックRAMに格納している。CRAM制御部1はCRAMに実装する以外に、プログラマブルデバイス内部の専用ハードウェア回路として実装してもよい。また、CRAM制御回路1を外部デバイスに実装した構成でもよい。また、上記のエラー検出ブロック70ではCRCを用いたが、エラーを検出するための方法をCRCに限定するものではない。   In this embodiment, the CRAM control unit 1 is mounted on the CRAM 9 as a part of programmable user logic, and the execution order table 4 and the area table 3 are stored in a block RAM inside the programmable device. The CRAM control unit 1 may be mounted as a dedicated hardware circuit inside the programmable device in addition to being mounted on the CRAM. Further, the CRAM control circuit 1 may be mounted on an external device. Although the error detection block 70 uses CRC, the error detection method is not limited to CRC.

また、図示していないが、機能ブロックの種類には、複数ビットのソフトエラーを検出・訂正できる回路ブロックなどを含む。訂正手段はECCなどの訂正符号技術を使用してもよいし、外部メモリに格納されているコンフィギュレーションデータをフレーム単位で呼び出してCRAMに上書きする訂正手法を使用してもよい。さらに、全てのフレームに対して、エラー検出有無に関わらず、常に上書きする強制訂正手法を使用してもよい。また、他の機能ブロックとして、訂正後または訂正直後に再度エラーチェックを1回乃至複数回行うことで訂正不可(ハードウェア故障)を検出するハードエラー検出ブロックなどが含まれる。   Although not shown, the types of functional blocks include a circuit block that can detect and correct a multi-bit soft error. The correction means may use a correction code technique such as ECC, or may use a correction method in which configuration data stored in the external memory is called in units of frames and overwritten in the CRAM. Furthermore, a forced correction method that always overwrites all frames regardless of whether or not an error is detected may be used. Other functional blocks include a hardware error detection block that detects uncorrectable (hardware failure) by performing error check once or multiple times after correction or immediately after correction.

以上のことから、本実施例によれば、電子システム製品に用いるプログラマブルデバイスにおいて、コンフィギュレーションメモリ内の重要なデータ領域のみをエラーチェックすることで、コンフィギュレーションメモリのエラー検出時間を短縮することができる。さらに、本実施例のプログラマブルデバイスを搭載した製品では、高速にコンフィギュレーションメモリのエラーを検知でき、装置のリカバリ時間を短縮でき、高信頼化および可用性の向上を図ることができる。これより、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することができる。   From the above, according to the present embodiment, the error detection time of the configuration memory can be shortened by performing error check only on the important data area in the configuration memory in the programmable device used in the electronic system product. it can. Furthermore, in the product equipped with the programmable device of this embodiment, it is possible to detect an error in the configuration memory at high speed, to shorten the recovery time of the apparatus, and to achieve high reliability and improvement in availability. As a result, it is possible to provide a programmable device in which the soft error detection time is shortened and the reliability is improved, and an electronic system apparatus using the programmable device.

図7は、実施例2に係るプログラマブルデバイスの構成図である。本実施例のプログラマブルデバイス101は、実施例1のCRAM制御部1において、デバイス外部からの割込み信号によってCRAM9のエラーチェック順序を制御できるように構成している。   FIG. 7 is a configuration diagram of a programmable device according to the second embodiment. The programmable device 101 of the present embodiment is configured such that the error check order of the CRAM 9 can be controlled by the interrupt signal from the outside of the device in the CRAM control unit 1 of the first embodiment.

CRAM制御部1A内のシーケンサ部5には、外部からの割り込み信号を入力する割込信号インタフェース(IF)17を接続している。割込信号IF17には0〜n番の複数の割り込み信号が入力できる。割り込み信号が入力されると、インタフェースの入力ポート番号に従って、シーケンサ部5に割込み番号を通知する(17a)。シーケンサ部5はその割込み番号に従って、実行中のCRAMエラーチェックの途中に、指定されたCRAMエラーチェック処理を割り込ませて実行する。   An interrupt signal interface (IF) 17 for inputting an external interrupt signal is connected to the sequencer unit 5 in the CRAM control unit 1A. A plurality of interrupt signals 0 to n can be input to the interrupt signal IF17. When an interrupt signal is input, the interrupt number is notified to the sequencer unit 5 in accordance with the input port number of the interface (17a). In accordance with the interrupt number, the sequencer unit 5 interrupts and executes the designated CRAM error check process during the CRAM error check being executed.

図8は、本実施例における実行順序テーブル4Aを示す図である。通常は、テーブルの内容に従って実行番号0→1→3→0という順序で、領域A0〜A2に対するCRAMエラー検出・訂正の動作を繰り返し実行している。例えば、ここで割り込みIF17のポート2に割込み信号が入力された場合、割込信号IF17はシーケンサ部5に割り込み番号(=2)を通知する。割込み番号を受信したシーケンサ部は優先的にこの割込み番号(=2)に従って、実行順序テーブル4Aの実行番号2の処理を実行する。図8の例では、CRAM9の全面領域A5に対するエラー検出および訂正動作が実行される。また、実行番号2のテーブルの次の実行番号には、通常のエラーチェック動作(実行番号0)を設定することで、割り込み信号による動作が終了後、自動的に通常のエラーチェック動作に復旧させることができる。   FIG. 8 is a diagram showing the execution order table 4A in the present embodiment. Normally, the CRAM error detection / correction operations for the areas A0 to A2 are repeatedly executed in the order of execution numbers 0 → 1 → 3 → 0 according to the contents of the table. For example, when an interrupt signal is input to port 2 of the interrupt IF 17 here, the interrupt signal IF 17 notifies the sequencer unit 5 of the interrupt number (= 2). The sequencer unit that has received the interrupt number preferentially executes the process of the execution number 2 in the execution order table 4A according to the interrupt number (= 2). In the example of FIG. 8, error detection and correction operations are performed on the entire area A5 of the CRAM 9. In addition, the normal error check operation (execution number 0) is set to the next execution number in the execution number 2 table, so that the normal error check operation is automatically restored after the operation by the interrupt signal is completed. be able to.

このように、本実施例におけるプログラマブルデバイス101では、CRAM制御部1Aに割込信号IF17を追加するよって、CRAM9内の通常のエラーチェックだけでなく、外部からの割込み信号によって、指定したエラーチェックを強制実行することができる。例えば、通常は部分的な領域のエラーチェックを実行している場合でも、強制的にCRAM全領域のエラーチェックを割り込み実行できる。また、ユーザロジックの各回路モジュールや、プログラマブルデバイス101に接続される他のデバイスや、プログラマブルデバイスを搭載した装置側からの異常信号をCRAM制御部1Aで受信し、その異常に関連するプログラマブルデバイスのCRAM領域のみをエラー検出・訂正することができ、エラー検出効率が向上しエラー検出時間を短縮できる。   As described above, in the programmable device 101 according to the present embodiment, by adding the interrupt signal IF17 to the CRAM control unit 1A, not only the normal error check in the CRAM 9 but also the specified error check by the interrupt signal from the outside is performed. It can be forcibly executed. For example, even when a partial area error check is normally executed, the error check of the entire CRAM area can be forcibly interrupted. Also, each circuit module of the user logic, other devices connected to the programmable device 101, and an abnormal signal from the device side on which the programmable device is mounted are received by the CRAM control unit 1A, and the programmable device related to the abnormality is received. Only the CRAM area can be detected and corrected, error detection efficiency can be improved, and error detection time can be shortened.

以上のことから、本実施例のプログラマブルデバイスでは、割り込み信号を使ってユーザが指定した領域のみエラーチェックすることで、CRAM内のソフトエラー検出時間を短縮することができる。また、本実施例のプログラマブルデバイスを搭載した装置では、高速にCRAMのエラーを検知でき、装置のリカバリ時間を短縮でき、高信頼化および可用性の向上を図ることができる。これより、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することができる。   From the above, in the programmable device of this embodiment, the soft error detection time in the CRAM can be shortened by checking the error only in the area designated by the user using the interrupt signal. In addition, the apparatus equipped with the programmable device of this embodiment can detect CRAM errors at high speed, reduce the recovery time of the apparatus, and achieve high reliability and improved availability. As a result, it is possible to provide a programmable device with a reduced soft error detection time and improved reliability, and an electronic system apparatus using the programmable device.

図9は、プログラマブルデバイスを搭載した電子システム装置の一例を示す構成図である。本実施例では、電子システム装置として通信装置を例に挙げ、またプログラマブルデバイスとしてFPGA(Field Programmable Gate Array)を用いた場合を示している。   FIG. 9 is a configuration diagram illustrating an example of an electronic system device on which a programmable device is mounted. In this embodiment, a communication device is taken as an example of an electronic system device, and a case where an FPGA (Field Programmable Gate Array) is used as a programmable device is shown.

通信装置90は、コールドスタンバイと呼ばれる待機系の2重化構成となっており、現用系91と、予備系92で構成される。現用系91のユニットが稼動状態(ACT)のときは、予備系92は電源OFFの状態で待機(SBY)している。ここで、何らかの原因により現用系91に異常が発生した場合は、予備系92に動作(ACT)を切替えて装置稼動を継続する。   The communication device 90 has a standby system duplex configuration called cold standby, and is composed of an active system 91 and a standby system 92. When the unit of the active system 91 is in the operating state (ACT), the standby system 92 is on standby (SBY) with the power off. Here, when an abnormality occurs in the active system 91 for some reason, the operation (ACT) is switched to the standby system 92 and the operation of the apparatus is continued.

それぞれの系は、複数種類のユニットで構成されている。通信制御ユニット91c,92cは、主に通信用パケットデータを入力し、そのパケットデータに付加される送り先データに従って出力先を選択する。診断ユニット91b,92bは、この通信制御ユニット91c,92cが正常に動作しているかを診断する。監視ユニット91a,92aは、通信制御ユニット91c,92cおよび診断ユニット91b,92bの動作開始、リセット、搭載しているプロセッサやプログラマブルデバイスの初期化等、ユニット動作の制御を行う。本例では、全てのユニットに、実施例1のCRAM制御部1を実装したFPGA93,94が搭載されている。   Each system is composed of a plurality of types of units. The communication control units 91c and 92c mainly input communication packet data, and select an output destination according to destination data added to the packet data. The diagnosis units 91b and 92b diagnose whether the communication control units 91c and 92c are operating normally. The monitoring units 91a and 92a control unit operations such as operation start and reset of the communication control units 91c and 92c and diagnosis units 91b and 92b, initialization of installed processors and programmable devices, and the like. In this example, FPGAs 93 and 94 mounted with the CRAM control unit 1 of the first embodiment are mounted on all units.

図10は、通信装置90のエラー発生時の制御フローを示す図である。ここでは、現用系91が稼動状態で、予備系92が待機状態のとき、現用系91側でエラーが検出された場合の例を示す。   FIG. 10 is a diagram illustrating a control flow when an error occurs in the communication device 90. Here, an example in which an error is detected on the active system 91 side when the active system 91 is in operation and the standby system 92 is in a standby state is shown.

通信装置を稼動(S0)後、診断ユニット91bは各ユニットのFPGAからのCRAMエラー検出信号を監視する(S1)。CRAMエラーが検出された場合(S2)、直ちに現用系91と予備系92の系切り替え処理を行う(S3)。本例では、予備系92を稼動状態へ、現用系91を待機状態へ切り替える。装置としては予備系92で稼動を継続する。一方で、エラーが検出された現用系91の監視ユニット91aは、エラーを発生したFPGAに関連するユニット(例えば通信制御ユニット91c)の一時的停止処理を行う(S4)。このとき診断ユニット91bは、エラー情報をログファイルに出力する。ログファイルには、エラー発生時刻と、検出や訂正成功、訂正不可などのエラーモードの情報や、エラーが発生したデータフレームのアドレス情報などが記録される(S5)。   After operating the communication device (S0), the diagnostic unit 91b monitors the CRAM error detection signal from the FPGA of each unit (S1). When a CRAM error is detected (S2), the active system 91 and the standby system 92 are immediately switched (S3). In this example, the standby system 92 is switched to the operating state, and the active system 91 is switched to the standby state. The apparatus continues to operate in the standby system 92. On the other hand, the monitoring unit 91a of the active system 91 in which the error is detected performs a temporary stop process of a unit (for example, the communication control unit 91c) related to the FPGA in which the error has occurred (S4). At this time, the diagnosis unit 91b outputs error information to a log file. In the log file, an error occurrence time, error mode information such as detection, correction success, and correction impossible, and address information of a data frame in which an error has occurred are recorded (S5).

また、図11のように、モニタ画面18上のユーザインタフェース画面19に、取得したエラー情報の内容を表示してもよい(S5)。その後、通信制御ユニット91cのFPGAはCRAMのエラー訂正処理を行い(S6)、監視ユニット91aはFPGAのリセット処理を行う(S7)。また監視ユニット91aは、装置のファームウエアによるエラー検出前後のパケット廃棄、再送によるリカバリ処理を行い(S8)、待機状態として次の系切り替えに備える。復旧後に系切り戻しが必要な装置などでは、ここで再度系切り替えを実施する。   Further, as shown in FIG. 11, the content of the acquired error information may be displayed on the user interface screen 19 on the monitor screen 18 (S5). Thereafter, the FPGA of the communication control unit 91c performs CRAM error correction processing (S6), and the monitoring unit 91a performs FPGA reset processing (S7). The monitoring unit 91a performs recovery processing by discarding and retransmitting packets before and after error detection by the device firmware (S8), and preparing for the next system switching as a standby state. For devices that require system switchback after recovery, system switching is performed again here.

本実施例によるプログラマブルデバイスを用いて通信装置を構成すると、従来リカバリ処理時間の多くを費やすコンフィグレーションメモリエラーの検出時間(S1〜S2)を短縮することができ、装置復旧処理時間を短縮することが可能となる。   When the communication device is configured using the programmable device according to the present embodiment, it is possible to shorten the configuration memory error detection time (S1 to S2) that spends much of the conventional recovery processing time, and to shorten the device recovery processing time. Is possible.

例えば、図9に示す予備系92を持つ通信装置90の場合、何らかの原因により現用系91で異常が発生した場合、装置を利用しているユーザに影響のない時間で系を切り替える必要がある。この場合、予備系92への切り替えが短時間であれば、装置を利用しているユーザには影響が無いようにすることができる。また、通常停止している予備系92も、切り替え直後に障害が発生することがある。環境放射線による障害、いわゆるソフトエラー障害に対し、本実施例のように系切り替え時間内に現用系91を復旧することで、予備系92の障害発生に備えることができる。これは、通信装置のような信頼性、可用性を求める装置において有効である。   For example, in the case of the communication apparatus 90 having the standby system 92 shown in FIG. 9, when an abnormality occurs in the active system 91 for some reason, it is necessary to switch the system in a time that does not affect the user who uses the apparatus. In this case, if switching to the standby system 92 is performed in a short time, it is possible to prevent the user who uses the apparatus from being affected. Also, the standby system 92 that is normally stopped may fail immediately after switching. In response to a failure caused by environmental radiation, that is, a so-called soft error failure, it is possible to prepare for the failure of the standby system 92 by restoring the active system 91 within the system switching time as in this embodiment. This is effective in a device such as a communication device that requires reliability and availability.

また、電力削減を目的として、待機系のクロックを停止する等で、即動作可能な状態で、動作のみ停止させて待機することがあるが、この場合、待機系のプログラマブルデバイスが、待機から実行モードに移った直後にプログラマブルデバイス内のコンフィギュレーションメモリのデータ反転が検出されることも考えられ、その場合も系切替時間として許される時間内での復旧を行うことができる。   In addition, for the purpose of reducing power consumption, the standby system clock may be stopped in a state where it can be operated immediately, such as by stopping the standby system. In this case, the standby system programmable device executes from standby. It is conceivable that the data inversion of the configuration memory in the programmable device is detected immediately after the mode is shifted, and in this case, the recovery can be performed within the time allowed as the system switching time.

また、本実施例におけるプログラマブルデバイス93、または94では、領域テーブル4の設定情報を基に、エラーが検出された領域情報を通知、または領域別にエラー信号を通知できる。CRAM領域情報とその領域に格納されるユーザロジックの構成情報は対応しているため、エラーが発生したCRAM領域情報によって、エラーとなったユーザロジック部分が特定でき、そのユーザロジックに合わせて必要最低限の最適なリカバリ処理を行うことができる。本実施例では、例えば、ある領域1におけるエラーについてはCRAM訂正のみを行うが、ユーザロジックのステートマシンなどの制御部が含まれた別の領域2でエラーが発生した場合はFPGAをリコンフィギュレーションするなど、エラー発生領域によって異なるリカバリ処理を行う。   Further, in the programmable device 93 or 94 according to the present embodiment, it is possible to notify the area information in which an error is detected based on the setting information of the area table 4 or to notify the error signal for each area. Since the CRAM area information and the configuration information of the user logic stored in the area correspond to each other, it is possible to identify the user logic portion in which the error has occurred based on the CRAM area information in which the error has occurred. It is possible to perform a limited optimal recovery process. In this embodiment, for example, only the CRAM correction is performed for an error in an area 1, but if an error occurs in another area 2 including a control unit such as a user logic state machine, the FPGA is reconfigured. The recovery process varies depending on the error occurrence area.

以上のことから、本実施例によれば、電子システム装置に搭載するプログラマブルデバイスのユーザが指定した領域のみエラーチェックすることで、CRAM内のソフトエラー検出時間を短縮することができる。また、本実施例のプログラマブルデバイスを搭載した装置では、高速にCRAMのエラーを検知でき、装置のリカバリ時間を短縮でき、高信頼化および可用性の向上を図ることができる。これより、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することができる。   From the above, according to the present embodiment, it is possible to shorten the soft error detection time in the CRAM by performing error check only on the area specified by the user of the programmable device mounted on the electronic system apparatus. In addition, the apparatus equipped with the programmable device of this embodiment can detect CRAM errors at high speed, reduce the recovery time of the apparatus, and achieve high reliability and improved availability. As a result, it is possible to provide a programmable device with a reduced soft error detection time and improved reliability, and an electronic system apparatus using the programmable device.

実施例4では、プログラマブルデバイスを搭載した電子システム装置として、圧延装置やエレベータ、水道制御ポンプなどで使用されるモータ制御システムを例に挙げて説明する。   In Example 4, a motor control system used in a rolling device, an elevator, a water supply control pump, or the like will be described as an example of an electronic system device equipped with a programmable device.

図12は、モータ制御システム200の構成例を示す図である。本システム200は、モータ制御装置20、モータ26、システム環境を監視する監視カメラ25、オペレータが稼動状態などを確認するためのモニタ24で構成される。モータ制御装置20は、実施例1のCRAM制御部1が実装されたFPGA21と、外部装置群とのインタフェースを行う入出力IF23で構成される。本システム200では、制御装置20からモータの回転量を示す制御値26aを出力し、同時に現時点の回転量26bを、モータ26内部に搭載されたセンサ(図示せず)で監視し、制御装置20側へフィードバックすることで、所望の回転量を保つなどのモータ制御動作を行っている。ここで、モータ26の回転量制御にFPGA21を用いるため、CRAM内に発生するソフトエラーによってユーザロジック22が破壊されると、制御値が急激に変わり、異常な高速回転状態や、停止状態など、予期せぬシステム障害発生の可能性がある。   FIG. 12 is a diagram illustrating a configuration example of the motor control system 200. The system 200 includes a motor control device 20, a motor 26, a monitoring camera 25 that monitors the system environment, and a monitor 24 for an operator to check the operating state. The motor control device 20 includes an FPGA 21 on which the CRAM control unit 1 according to the first embodiment is mounted and an input / output IF 23 that interfaces with an external device group. In the system 200, a control value 26a indicating the rotation amount of the motor is output from the control device 20, and the current rotation amount 26b is simultaneously monitored by a sensor (not shown) mounted in the motor 26. By performing feedback to the side, a motor control operation such as maintaining a desired rotation amount is performed. Here, since the FPGA 21 is used to control the rotation amount of the motor 26, when the user logic 22 is destroyed due to a soft error generated in the CRAM, the control value changes abruptly, such as an abnormal high-speed rotation state or a stop state. An unexpected system failure may have occurred.

本実施例では、CRAM制御部1によって、FPGA21のCRAMに発生するソフトエラー検出および訂正を行う。特に、モータ制御に関係するユーザロジック22の構成情報が格納されるCRAM領域のみをチェックするため、モータ26のフィードバック制御サイクル以内でのCRAM内のエラーチェック・訂正を可能とし、モータ停止などのシステム障害を回避することができる。   In this embodiment, the CRAM control unit 1 detects and corrects soft errors that occur in the CRAM of the FPGA 21. In particular, since only the CRAM area in which the configuration information of the user logic 22 related to motor control is stored is checked, error checking and correction within the CRAM within the feedback control cycle of the motor 26 is possible, and a system such as a motor stop is performed. Obstacles can be avoided.

また、実施例2に示した割込信号IF17を有するCRAM制御部1を使用した場合、モータ26の惰性動作時間や、非稼働時間情報を利用したFPGA21のエラーチェックが可能なため、さらに効率良くモータ26の異常発生率を抑制することができる。   Further, when the CRAM control unit 1 having the interrupt signal IF 17 shown in the second embodiment is used, the error check of the FPGA 21 using the inertia operation time of the motor 26 and the non-operation time information is possible, so that the efficiency is further improved. The abnormality occurrence rate of the motor 26 can be suppressed.

本実施例によれば、プログラマブルデバイスにおけるソフトエラーの検出時間を短縮することができ、FPGAソフトエラーに起因する装置異常から短時間で復旧することができ、電子システム装置の信頼性を向上することができる。   According to the present embodiment, it is possible to shorten the detection time of the soft error in the programmable device, to recover from the device abnormality caused by the FPGA soft error in a short time, and to improve the reliability of the electronic system device Can do.

図13は、実施例5に係るプログラマブルデバイスの構成図である。前記実施例におけるCRAM制御部1および1Aは、FPGAのユーザロジックとして実装されるため、CRAM制御部自身がソフトエラーによって破壊される可能性がある。そこで本実施例では、プログラマブルデバイス102内のCRAM制御部1Bは、CRAM制御部自身の動作をチェックするための内部診断部27を有する構成とした。   FIG. 13 is a configuration diagram of a programmable device according to the fifth embodiment. Since the CRAM control units 1 and 1A in the embodiment are implemented as FPGA user logic, the CRAM control unit itself may be destroyed by a soft error. Therefore, in this embodiment, the CRAM control unit 1B in the programmable device 102 is configured to include the internal diagnosis unit 27 for checking the operation of the CRAM control unit itself.

内部診断部27は、エラーデータ挿入部28と比較部29で構成される。エラーデータ挿入部28は、CRAM9から読み出した任意のデータフレーム2aに対し、意図的にエラーデータを挿入して再度CRAM9へ書き戻す(28a)。その後比較部29は、エラー検出ブロック#0またはエラー訂正ブロック#1から出力されるエラー情報(発生アドレスおよびデータ)8bと、故意に書き込んだエラー情報28aとを比較する。比較結果が一致しない場合、CRAM制御部1Bが何らかの異常状態であるとしてFPGAまたは外部にエラー信号27aを出力する。
内部診断部27も他の機能ブロック同様、領域テーブル3および実行順序テーブル4の設定データに従って、シーケンサ部5の制御信号5cによって動作する。
The internal diagnosis unit 27 includes an error data insertion unit 28 and a comparison unit 29. The error data insertion unit 28 intentionally inserts error data into any data frame 2a read from the CRAM 9 and writes it back to the CRAM 9 again (28a). Thereafter, the comparison unit 29 compares the error information (occurrence address and data) 8b output from the error detection block # 0 or the error correction block # 1 with the intentionally written error information 28a. If the comparison results do not match, the CRAM control unit 1B outputs an error signal 27a to the FPGA or the outside as being in some abnormal state.
The internal diagnostic unit 27 operates in accordance with the control signal 5c of the sequencer unit 5 in accordance with the setting data of the area table 3 and the execution order table 4 like the other functional blocks.

また、図示していないが、上記内部診断部27では、CRAM9の各データフレームのリードライトチェックを複数回実施することで異常部位を弁別することができる。例えば、全領域のフレームに対してALL“0”またはALL“1”のリードライトチェックを行い、複数回同じデータフレームでエラーが検出される場合はCRAM9側の異常とする。また、エラーを挿入してもエラー検出信号が出力されない場合や違うアドレスのデータフレームでエラーが検出される場合は、CRAM制御部1Bの異常と判断できる。また、外部ROM50に格納されたコンフィギュレーションデータによる上書き訂正を使用し、リードライトチェックで異常が検出された場合は外部ROM50の異常と判断できる。   Although not shown, the internal diagnostic unit 27 can discriminate abnormal parts by performing read / write check of each data frame of the CRAM 9 a plurality of times. For example, a read / write check of ALL “0” or ALL “1” is performed on the frames in the entire area, and if an error is detected in the same data frame a plurality of times, an error is detected on the CRAM 9 side. If an error detection signal is not output even when an error is inserted, or if an error is detected in a data frame with a different address, it can be determined that the CRAM control unit 1B is abnormal. In addition, when overwriting correction using configuration data stored in the external ROM 50 is used and an abnormality is detected by the read / write check, it can be determined that the external ROM 50 is abnormal.

また、本診断手法では、CRAMデータに異常値を書き込むため、通常ユーザロジックが動作している時間帯に診断を実施する場合は、ユーザロジックが使用していないデータフレームを利用して上記チェックを行う。FPGAの起動直後などでユーザロジックをまだ動作させていない時間帯に診断を実施できる場合には、CRAM9の全データフレームを対象としたチェックを実施する。   Also, in this diagnostic method, abnormal values are written to the CRAM data, so when performing a diagnosis in a time zone in which the user logic is normally operating, the above check is performed using a data frame not used by the user logic. Do. If the diagnosis can be performed in a time zone in which the user logic is not yet operated, such as immediately after starting the FPGA, a check for all data frames in the CRAM 9 is performed.

また、CRAM制御部1Bでは、上記診断に加え、CRAM制御部1B自身の回路情報が格納されたCRAM領域を領域テーブル4に設定し、その領域のCRAMデータを定期的にチェックすることによってCRAM制御部1Bの診断を行う構成としてもよい。また、CRAM制御部1Bの主要部分を全て2重化し、出力値の比較を行なうことでCRAM制御部自身の異常をFPGA側へ通知する構成としても良い。   In addition to the above diagnosis, the CRAM control unit 1B sets a CRAM area in which circuit information of the CRAM control unit 1B itself is stored in the area table 4, and periodically checks the CRAM data in the area to perform CRAM control. It is good also as a structure which diagnoses the part 1B. Alternatively, the main part of the CRAM control unit 1B may be duplicated and the output values may be compared to notify the FPGA side of the abnormality of the CRAM control unit itself.

また、内部診断部27のエラーデータ挿入部28を使えば、CRAM内に意図的に誤ったエラーデータを挿入できる。そのため、FPGAに擬似的なソフトエラー障害を発生させ、ソフトエラー発生時のシステム挙動の検証に使用しても良い。   If the error data insertion unit 28 of the internal diagnosis unit 27 is used, erroneous error data can be intentionally inserted into the CRAM. Therefore, a pseudo soft error failure may be generated in the FPGA and used for verification of the system behavior when the soft error occurs.

本実施例によれば、CRAM制御部自身のソフトエラー率を低減し、高信頼なCRAMエラー検出・訂正を実現することで、システム装置の装置異常を短時間で復旧することができ、電子システム装置の信頼性を向上することができる。   According to the present embodiment, by reducing the soft error rate of the CRAM control unit itself and realizing highly reliable CRAM error detection / correction, it is possible to recover the device abnormality of the system device in a short time, and the electronic system The reliability of the apparatus can be improved.

1,1A,1B:CRAM御部、
2:CRAMリードライト部、
3:領域テーブル、
4:実行順序テーブル、
5:シーケンサ部、
6:セレクタ部、
7:機能ブロック部、
8:エラー信号出力部、
9:コンフィギュレーションメモリ(CRAM)、
10:データフレーム、
11:CRCエラーチェック部、
12,15:冗長ビット格納部、
13:CRC冗長ビット生成部、
14:エラーチェック訂正部、
16:冗長ビット生成部、
17:割込信号IF、
20:モータ制御装置、
27:内部診断部、
28:エラーデータ挿入部、
29:比較部、
50:外部ROM、
90:通信装置、
100,101,102:プログラマブルデバイス(FPGA)、
200:モータ制御システム。
1, 1A, 1B: CRAM part,
2: CRAM read / write unit,
3: Area table,
4: Execution order table,
5: Sequencer section,
6: selector part,
7: Function block part,
8: Error signal output unit,
9: Configuration memory (CRAM),
10: data frame,
11: CRC error check part,
12, 15: Redundant bit storage unit,
13: CRC redundant bit generator,
14: Error check correction section
16: Redundant bit generator
17: Interrupt signal IF,
20: motor control device,
27: Internal diagnosis unit
28: Error data insertion part,
29: Comparison part,
50: External ROM,
90: a communication device,
100, 101, 102: Programmable device (FPGA),
200: Motor control system.

Claims (9)

コンフィギュレーションメモリを有するプログラマブルデバイスを搭載する電子システム装置において、
前記プログラマブルデバイスは、前記コンフィギュレーションメモリの診断手段として、
前記コンフィギュレーションメモリのデータをリード、ライトするリードライト部と、
前記コンフィギュレーションメモリのデータに対してエラーチェックを行う機能ブロック部と、
前記コンフィギュレーションメモリ内のエラーチェックを行う、ユーザロジックの回路構成と対応した前記コンフィギュレーションメモリ内の領域情報を格納する領域テーブルと、
前記コンフィギュレーションメモリのエラーチェックを実行する領域の順序情報を格納する実行順序テーブルと、
前記リードライト部と前記機能ブロック部に対し、前記領域テーブルに格納された前記領域情報と、前記実行順序テーブルに格納された前記順序情報に基づいて、所定の領域を所定の順序でエラーチェックを行うよう制御するシーケンサ部と、
前記エラーチェックでエラーが検出された場合、前記機能ブロック部からのエラーが検出された領域情報を含むエラー信号を入力し、前記電子システム装置に出力するエラー信号出力部と、
を備え
前記実行順序テーブルが格納する前記順序情報には、前記ユーザロジックの稼動率や重要度に基づいた繰り返しチェック回数が記述され、
稼動率や重要度の高い前記ユーザロジックに対応する前記コンフィギュレーションメモリの領域について、エラーチェックの頻度を増やすようにしたことを特徴とする電子システム装置。
In an electronic system apparatus equipped with a programmable device having a configuration memory,
The programmable device is a diagnostic means for the configuration memory.
A read / write unit for reading and writing data of the configuration memory;
A functional block unit that performs an error check on the data in the configuration memory;
An area table for storing area information in the configuration memory corresponding to the circuit configuration of the user logic, which performs error checking in the configuration memory;
An execution order table for storing order information of areas for executing error checking of the configuration memory;
Based on the area information stored in the area table and the order information stored in the execution order table, an error check is performed on a predetermined area in a predetermined order for the read / write unit and the functional block unit. A sequencer section that controls to perform,
When an error is detected by the error check, an error signal output unit that inputs an error signal including area information in which an error is detected from the functional block unit, and outputs the error signal to the electronic system device;
Equipped with a,
The order information stored in the execution order table describes the number of repeated checks based on the operating rate and importance of the user logic,
An electronic system device characterized in that the frequency of error checks is increased in the configuration memory area corresponding to the user logic having a high operating rate and high importance .
請求項1に記載の電子システム装置であって、
前記コンフィギュレーションメモリの診断手段には、少なくとも1つの入力ポートを有する割込信号入力部を有し、該入力ポートから入力する割込信号に基づいて指定されたエラーチェックの割り込み動作を実行することを特徴とする電子システム装置。
The electronic system device according to claim 1,
The diagnostic means of the configuration memory has an interrupt signal input section having at least one input port, and executes an error check interrupt operation designated based on an interrupt signal input from the input port. An electronic system device characterized by the above.
請求項1または2に記載の電子システム装置であって、
前記コンフィギュレーションメモリの診断手段には、該診断手段自身の正常動作を確認する内部診断部を備え、
該内部診断部は、前記コンフィギュレーションメモリへエラーデータを挿入するエラーデータ挿入部と、挿入したエラー情報と、検出されたエラー情報を比較する比較部で構成されることを特徴とする電子システム装置。
The electronic system device according to claim 1 or 2,
The diagnostic means of the configuration memory includes an internal diagnostic unit for confirming the normal operation of the diagnostic means itself,
The internal diagnosis unit includes an error data insertion unit that inserts error data into the configuration memory, and a comparison unit that compares the inserted error information with the detected error information. .
請求項1乃至3のいずれか一項に記載の電子システム装置であって、
前記機能ブロック部は、前記コンフィギュレーションメモリのエラー検出と訂正処理を行うものであって、処理内容に応じて複数の機能ブロックから構成され、各機能ブロックは必要に応じて追加・削除することが可能なモジュール構成としたことを特徴とする電子システム装置。
An electronic system device according to any one of claims 1 to 3,
The functional block unit performs error detection and correction processing of the configuration memory, and is composed of a plurality of functional blocks according to the processing content, and each functional block can be added or deleted as necessary. An electronic system device characterized by having a modular configuration.
請求項1乃至4のいずれか一項に記載の電子システム装置であって、
当該電子システム装置は複数のユニットで構成され、前記プログラマブルデバイスは各ユニットに搭載されていることを特徴とする電子システム装置。
An electronic system device according to any one of claims 1 to 4,
The electronic system apparatus is composed of a plurality of units, and the programmable device is mounted on each unit.
コンフィギュレーションメモリを有するプログラマブルデバイスにおいて、
前記コンフィギュレーションメモリの診断手段として、
前記コンフィギュレーションメモリのデータをリード、ライトするリードライト部と、
前記コンフィギュレーションメモリのデータに対してエラーチェックを行う機能ブロック部と、
前記コンフィギュレーションメモリ内のエラーチェックを行う、ユーザロジックの回路構成と対応した前記コンフィギュレーションメモリ内の領域情報を格納する領域テーブルと、
前記コンフィギュレーションメモリのエラーチェックを実行する領域の順序情報を格納する実行順序テーブルと、
前記リードライト部と前記機能ブロック部に対し、前記領域テーブルに格納された前記領域情報と、前記実行順序テーブルに格納された前記順序情報に基づいて、所定の領域を所定の順序でエラーチェックを行うよう制御するシーケンサ部と、
前記機能ブロック部からのエラーが検出された領域情報を含むエラー信号を入力し、外部に出力するエラー信号出力部と、
を備え
前記実行順序テーブルが格納する前記順序情報には、前記ユーザロジックの稼動率や重要度に基づいた繰り返しチェック回数が記述され、
稼動率や重要度の高い前記ユーザロジックに対応する前記コンフィギュレーションメモリの領域について、エラーチェックの頻度を増やすようにしたことを特徴とするプログラマブルデバイス。
In a programmable device having a configuration memory,
As diagnostic means for the configuration memory,
A read / write unit for reading and writing data of the configuration memory;
A functional block unit that performs an error check on the data in the configuration memory;
An area table for storing area information in the configuration memory corresponding to the circuit configuration of the user logic, which performs error checking in the configuration memory;
An execution order table for storing order information of areas for executing error checking of the configuration memory;
Based on the area information stored in the area table and the order information stored in the execution order table, an error check is performed on a predetermined area in a predetermined order for the read / write unit and the functional block unit. A sequencer section that controls to perform,
An error signal output unit that inputs an error signal including region information in which an error from the functional block unit is detected,
Equipped with a,
The order information stored in the execution order table describes the number of repeated checks based on the operating rate and importance of the user logic,
A programmable device characterized in that the frequency of error checking is increased for the area of the configuration memory corresponding to the user logic having a high operating rate and high importance .
請求項6に記載のプログラマブルデバイスであって、
前記コンフィギュレーションメモリの診断手段には、少なくとも1つの入力ポートを有する割込信号入力部を有し、該入力ポートから入力する割込信号に基づいて指定されたエラーチェックの割り込み動作を実行することを特徴とするプログラマブルデバイス。
The programmable device according to claim 6,
The diagnostic means of the configuration memory has an interrupt signal input section having at least one input port, and executes an error check interrupt operation designated based on an interrupt signal input from the input port. A programmable device characterized by
請求項6または7に記載のプログラマブルデバイスであって、
前記コンフィギュレーションメモリの診断手段には、該診断手段自身の正常動作を確認する内部診断部を備え、
該内部診断部は、前記コンフィギュレーションメモリへエラーデータを挿入するエラーデータ挿入部と、挿入したエラー情報と、検出されたエラー情報を比較する比較部で構成されることを特徴とするプログラマブルデバイス。
A programmable device according to claim 6 or 7,
The diagnostic means of the configuration memory includes an internal diagnostic unit for confirming the normal operation of the diagnostic means itself,
The internal diagnostic unit includes an error data insertion unit that inserts error data into the configuration memory, and a comparison unit that compares the inserted error information with detected error information.
請求項6乃至8のいずれか一項に記載のプログラマブルデバイスであって、
前記機能ブロック部は、前記コンフィギュレーションメモリのエラー検出と訂正処理を行うものであって、処理内容に応じて複数の機能ブロックから構成され、各機能ブロックは必要に応じて追加・削除することが可能なモジュール構成としたことを特徴とするプログラマブルデバイス。
A programmable device according to any one of claims 6 to 8,
The functional block unit performs error detection and correction processing of the configuration memory, and is composed of a plurality of functional blocks according to the processing content, and each functional block can be added or deleted as necessary. A programmable device characterized by a possible module configuration.
JP2015546247A 2013-11-08 2013-11-08 Programmable device and electronic system apparatus using the same Active JP6408482B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/080336 WO2015068285A1 (en) 2013-11-08 2013-11-08 Programmable device and electronic system device using same

Publications (2)

Publication Number Publication Date
JPWO2015068285A1 JPWO2015068285A1 (en) 2017-03-09
JP6408482B2 true JP6408482B2 (en) 2018-10-17

Family

ID=53041086

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015546247A Active JP6408482B2 (en) 2013-11-08 2013-11-08 Programmable device and electronic system apparatus using the same

Country Status (2)

Country Link
JP (1) JP6408482B2 (en)
WO (1) WO2015068285A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11822425B2 (en) 2020-01-27 2023-11-21 Hitachi, Ltd. Programmable device, and controller using the same

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017002157A1 (en) * 2015-06-29 2017-01-05 株式会社日立製作所 Computer system and computer system control method
US10248484B2 (en) * 2017-02-21 2019-04-02 Intel Corporation Prioritized error-detection and scheduling
JP7104525B2 (en) * 2018-02-21 2022-07-21 日立Astemo株式会社 Error detection method for electronic control device and configuration memory
JP7338608B2 (en) * 2020-10-30 2023-09-05 横河電機株式会社 Apparatus, method and program

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005235074A (en) * 2004-02-23 2005-09-02 Fujitsu Ltd Software error correction method of fpga
JP4583077B2 (en) * 2004-06-14 2010-11-17 株式会社東芝 X-ray computed tomography system
JP2007058419A (en) * 2005-08-23 2007-03-08 Hitachi Ltd Storage system with logic circuit constructed according to information inside memory on pld
US7702978B2 (en) * 2006-04-21 2010-04-20 Altera Corporation Soft error location and sensitivity detection for programmable devices
JP5310176B2 (en) * 2009-03-25 2013-10-09 富士通株式会社 Integrated circuit and configuration method
JP2012009098A (en) * 2010-06-23 2012-01-12 Fujitsu Kyushu Network Technologies Ltd Programmable logic device and its test method
JP2013187699A (en) * 2012-03-07 2013-09-19 Fujitsu Telecom Networks Ltd Fpga configuration processing control circuit
JP5825178B2 (en) * 2012-03-30 2015-12-02 沖電気工業株式会社 Memory diagnostic device, memory diagnostic program and device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11822425B2 (en) 2020-01-27 2023-11-21 Hitachi, Ltd. Programmable device, and controller using the same

Also Published As

Publication number Publication date
WO2015068285A1 (en) 2015-05-14
JPWO2015068285A1 (en) 2017-03-09

Similar Documents

Publication Publication Date Title
JP5014899B2 (en) Reconfigurable device
JP6496562B2 (en) Semiconductor device, diagnostic test method and diagnostic test circuit
JP6408482B2 (en) Programmable device and electronic system apparatus using the same
JP6880795B2 (en) Control device and its control method
CN102541756A (en) Cache memory system
CN101901170B (en) A data processing device and a method for error detection and error correction
JP6282482B2 (en) Programmable circuit device and configuration information restoration method
JP6290934B2 (en) Programmable device, error holding system, and electronic system apparatus
JP2006157482A (en) Programmable logic device, information processor, and method for controlling programmable logic device
JP2010170462A (en) Fault handling device and method
JP2014052781A (en) Fpga monitoring control circuit
JP2770913B2 (en) Parity replacement apparatus and method
JP5910356B2 (en) Electronic device, electronic device control method, and electronic device control program
JP6332134B2 (en) Memory diagnostic circuit
Miculka et al. Methodology for fault tolerant system design based on fpga into limited redundant area
JP2014229130A (en) Highly reliable processor and highly reliable control device using the same
JP2008084080A (en) Failure information storage system, service processor, failure information storage method, and program
JP2015216507A (en) Device for mounting fpga
US9519539B2 (en) Monitoring data error status in a memory
WO2021053853A1 (en) Control device and control method
JP2015001774A (en) Semiconductor integrated circuit and processing method thereof
JP2009116978A (en) Semiconductor storage device
JP2015201814A (en) Field programmable gate array and electronic apparatus
JP2017111579A (en) Semiconductor integrated circuit and function recovery method thereof
JP2014225110A (en) Safety controller

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180425

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180920

R150 Certificate of patent or registration of utility model

Ref document number: 6408482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150