JP2015201814A - Field programmable gate array and electronic apparatus - Google Patents

Field programmable gate array and electronic apparatus Download PDF

Info

Publication number
JP2015201814A
JP2015201814A JP2014080985A JP2014080985A JP2015201814A JP 2015201814 A JP2015201814 A JP 2015201814A JP 2014080985 A JP2014080985 A JP 2014080985A JP 2014080985 A JP2014080985 A JP 2014080985A JP 2015201814 A JP2015201814 A JP 2015201814A
Authority
JP
Japan
Prior art keywords
error
circuit
configuration memory
logic circuit
soft error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014080985A
Other languages
Japanese (ja)
Inventor
幸久 田村
Yukihisa Tamura
幸久 田村
学 牧野
Manabu Makino
学 牧野
知遥 安井
Chiharu Yasui
知遥 安井
健一 新保
Kenichi Shinpo
健一 新保
雅俊 芝崎
Masatoshi Shibazaki
雅俊 芝崎
慶将 草野
Yoshimasa Kusano
慶将 草野
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
Priority to JP2014080985A priority Critical patent/JP2015201814A/en
Publication of JP2015201814A publication Critical patent/JP2015201814A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To quickly restore a system constituted by a logic circuit of an FPGA.SOLUTION: A field programmable gate array including a programmable logic circuit comprises: a configuration memory to which the logic circuit is set; and a countermeasure circuit for normalizing the configuration memory when the configuration memory includes a software error. A redundant configuration is assembled by an active system circuit and standby system circuit constituted by the field programmable gate array. The countermeasure circuit, at the time of detecting a software error generated in the configuration memory constituting the active system circuit, switches the active system circuit and standby system circuit; executes error correction for recovering from a secondary failure caused by the detected software error; and restores a value held in the logic circuit after the error correction.

Description

本発明は、プログラマブルゲートアレイ(FPGA:Field Programmable Gate Array)に生じるソフトエラーの回復技術に関する。   The present invention relates to a technique for recovering a soft error that occurs in a programmable gate array (FPGA).

半導体デバイスに対して、中性子、α線等を起因とするソフトエラーが発生することは知られている。近年、半導体デバイスのプロセスの微細化に伴い、ソフトエラーの影響が顕在化している。このようなソフトエラーの可能性がある部品をシステムに適用する場合、ソフトエラーによるシステムの一時的な停止や再起動が許容できる範囲内であればよい。しかし、社会インフラを支えるシステムにおいては、障害が短時間であっても重大な影響を及ぼすことがあるため、より厳重な対策が必要である。   It is known that soft errors due to neutrons, α rays, etc. occur in semiconductor devices. In recent years, with the miniaturization of semiconductor device processes, the effects of soft errors have become apparent. When applying such a component that may cause a soft error to the system, it may be within a range that allows a temporary stop or restart of the system due to the soft error. However, in a system that supports social infrastructure, even if a failure occurs for a short time, it may have a serious effect, so more strict measures are required.

ソフトエラーによる半導体デバイスの障害は、例えばSRAMやDRAMなどのメモリセルの場合、メモリセルのデータを保持するノードに中性子が入射して電荷が注入されることによって、保持されたデータが反転し、以降、反転されたデータを保持し続けることによって生じる。   For example, in the case of a memory cell such as SRAM or DRAM, the failure of a semiconductor device due to a soft error is caused by injecting a neutron into a node that holds data in the memory cell and injecting charges, so that the stored data is inverted. Thereafter, this is caused by continuing to hold the inverted data.

メモリデバイスのソフトエラー対策技術として最も一般的な方法は、データと共にECC(Error Correction Code)をメモリ内に格納し、データを読み出す際にECCを用いてエラーを訂正する方法である。   The most common method as a soft error countermeasure technique for a memory device is a method of storing an error correction code (ECC) together with data in the memory and correcting the error using the ECC when reading the data.

FPGAの多くは、内部のコンフィグレーションメモリをSRAMのメモリセルによって構成しており、メモリデバイスと同様のソフトエラー障害が発生する。コンフィグレーションメモリのエラーを訂正するために、ECCによるエラー訂正機能を搭載したFPGAが提案されている。   In many FPGAs, an internal configuration memory is configured by SRAM memory cells, and a soft error failure similar to that of a memory device occurs. In order to correct an error in the configuration memory, an FPGA having an error correction function based on ECC has been proposed.

FPGAにおいてソフトエラーが発生する部分は二つある。   There are two parts where a soft error occurs in the FPGA.

一つはSRAMのメモリセル構成のメモリアレイをFPGA内のメモリであり、他の一つは論理回路を形成するLUT(Look Up Table)や、プログラム可能な配線であるIC(Interconnect)等の情報を格納したコンフィグレーションメモリである。なお、FPGA内には、前述した回路の他、フリップフロップ、IOバッファ、クロックバッファ等の機能素子が搭載されるが、一般にこれらはSRAMのメモリセルで構成されないため、前述したLUTやIC等に比べてソフトエラーに対する耐力が高い。   One is an SRAM memory cell memory array, and the other is information on LUT (Look Up Table) that forms a logic circuit, IC (Interconnect) that is a programmable wiring, etc. Is a configuration memory in which is stored. In addition to the above-described circuits, functional elements such as flip-flops, IO buffers, clock buffers, and the like are mounted in the FPGA. However, since these are generally not configured with SRAM memory cells, the above-described LUTs, ICs, etc. Compared to soft errors, it has higher tolerance.

FPGAの内蔵メモリ部のソフトエラーの対策には、前述した一般的なメモリデバイスと同様のECCを用いたエラー検出及びエラー訂正が用いられる。   For countermeasures against soft errors in the built-in memory portion of the FPGA, error detection and error correction using ECC similar to the above-described general memory device is used.

また、コンフィグレーションメモリ部のソフトエラーの対策に関する先行技術として特許文献1(特開2012−27927号公報)がある。特許文献1には、プログラマブルロジックのリソース上にエラー検出回路を設け、プログラマブルロジックリソース構成データを巡回冗長検査(CRC:Cyclic Redundancy Check)モジュール内にロードし、そこでチェックサムを計算するエラー検出システムが開示されている。   Further, there is Patent Document 1 (Japanese Patent Application Laid-Open No. 2012-27927) as a prior art regarding countermeasures against soft errors in the configuration memory unit. Patent Document 1 discloses an error detection system in which an error detection circuit is provided on a programmable logic resource, programmable logic resource configuration data is loaded into a cyclic redundancy check (CRC) module, and a checksum is calculated there. It is disclosed.

FPGAは、設計者が自由に様々な論理回路を構成できるように、予め多くの基本論理モジュールや配線を搭載している。よって、FPGAの全てのリソースが使われることはなく、多くのリソースは使用されない状態のまま残ること多い。プログラマブルデバイスの構成メモリのエラー検出の先行技術として特許文献2(特開2007−293856号公報)がある。特許文献2には、プログラマブルデバイスの構成メモリから構成メモリデータを読み取ることと、該構成メモリデータにおいてエラーが発生したか否かを判断することと、エラーが発生したという判断に応答して、エラーである該構成データに対応する感度データを読み取ることと、該エラーを無視することができるか否かを判断するために該感度データを解析することと、該エラーを無視することができない場合、修復アクティビティを開始することと、該エラーを無視することができる場合、該修復アクティビティを開始しないことによって該エラーを無視することを包含する方法が開示されている。   The FPGA is preloaded with many basic logic modules and wirings so that the designer can freely configure various logic circuits. Therefore, not all resources of the FPGA are used, and many resources often remain unused. Patent Document 2 (Japanese Patent Laid-Open No. 2007-293856) is a prior art of error detection of a configuration memory of a programmable device. In Patent Document 2, in response to reading configuration memory data from the configuration memory of a programmable device, determining whether an error has occurred in the configuration memory data, and determining that an error has occurred, Reading the sensitivity data corresponding to the configuration data, analyzing the sensitivity data to determine whether the error can be ignored, and if the error cannot be ignored, A method is disclosed that includes initiating a repair activity and, if the error can be ignored, ignoring the error by not initiating the repair activity.

特開2012−27927号公報JP 2012-27927 A 特開2007−293856号公報JP 2007-293856 A

前述したように、従来のFPGAのソフトエラー対策には、メモリデバイス同様にECCを用いた訂正方法が用いられてきた。しかし、FPGAに内蔵されるコンフィグレーションメモリでは、単にソフトエラーを訂正するだけでは、機能を正常化できない場合がある。   As described above, a correction method using ECC has been used in the same way as a memory device as a countermeasure against a soft error in a conventional FPGA. However, the configuration memory built in the FPGA may not be able to normalize the function simply by correcting the soft error.

すなわち、メモリデバイスでは、接続されるメモリ制御回路がデータを読み出した時にエラーを検出及び訂正し、後段の論理回路にデータを出力する。ECCによる訂正機能は、訂正されるデータの範囲のうち1bitまでのエラーを訂正することができ、1bitまでのエラーは後段の論理回路に伝搬しない。   That is, in the memory device, an error is detected and corrected when the connected memory control circuit reads the data, and the data is output to the logic circuit in the subsequent stage. The ECC correction function can correct an error of up to 1 bit in the range of data to be corrected, and the error of up to 1 bit is not propagated to the subsequent logic circuit.

一方、コンフィグレーションメモリに格納される情報は、FPGA内に論理回路を形成するための情報を含む。例えば、組合せ論理部は、ANDやOR等の論理素子の代わりに、論理素子の組合せによる真理値をLUTによって実現しており、LUTやフリップフロップ(FF)間を接続するための配線及び分岐点をICが決定している。よって、FPGA内に構成される論理回路は、膨大なコンフィグレーションメモリデータを参照して形成されており、たとえ一時的にでもLUTの構成データやICの設定データが失われれば、論理回路の構成自体を破壊する可能性がある。   On the other hand, the information stored in the configuration memory includes information for forming a logic circuit in the FPGA. For example, the combinational logic unit realizes a truth value based on a combination of logic elements by using an LUT instead of logic elements such as AND and OR, and wiring and branch points for connecting between the LUT and the flip-flop (FF) IC has determined. Therefore, the logic circuit configured in the FPGA is formed with reference to a vast amount of configuration memory data, and even if the LUT configuration data and IC setting data are lost even temporarily, the logic circuit configuration There is a possibility of destroying itself.

また、メモリデバイスと同様な訂正回路をコンフィグレーションメモリに付加し、コンフィグレーションメモリに設定される全てのデータに訂正符号ビットを付加することは、回路規模やメモリ規模の観点から現実的ではない。従って、一般的にコンフィグレーションメモリの訂正機能は、メモリ内を所定の大きさの領域に分割し、各領域にエラー訂正ビットを設けることで、小さな領域毎に訂正を行っている。   In addition, it is not realistic from the viewpoint of circuit scale and memory scale to add a correction circuit similar to the memory device to the configuration memory and add correction code bits to all data set in the configuration memory. Therefore, the correction function of the configuration memory generally corrects each small area by dividing the memory into areas of a predetermined size and providing error correction bits in each area.

以上から、コンフィグレーションメモリにECC訂正を適用する場合でも、メモリデバイスのように全ての読み出しデータをリアルタイムで訂正することは困難であり、一般的には、エラーの発生から、検出、訂正までの間、後段の論理回路において一時的なエラーが発生する。   From the above, even when ECC correction is applied to the configuration memory, it is difficult to correct all read data in real time as in a memory device. Generally, from the occurrence of an error to detection and correction. During this time, a temporary error occurs in the subsequent logic circuit.

FPGA内に構成される論理回路がクロック同期回路である場合、エラーが発生している期間内にソフトエラーが発生しても、クロック周期内にソフトエラーの訂正が完了すれば、発生したエラーは後段の論理回路に伝搬しない。しかし、ソフトエラーの発生から訂正までの期間がクロック周期を超える場合、ソフトエラーによって誤ったデータを後段の論理回路が取り込んで、保持する可能性がある。この場合、ソフトエラーが発生した箇所が訂正によって復旧しても、後段の論理回路が取りこんだ値は誤ったままとなる。このため、ソフトエラーの訂正は完了しても、ソフトエラーが正常に復旧できない場合がある。このように、ソフトエラーの発生箇所でエラーを訂正しても、エラー発生から訂正までの間に、後段の論理回路にエラーを伝搬させてしまう現象を、本明細書では、ソフトエラーによる二次障害と称する。   When the logic circuit configured in the FPGA is a clock synchronous circuit, even if a soft error occurs within the period in which the error has occurred, if the correction of the soft error is completed within the clock period, the generated error is Does not propagate to subsequent logic circuit. However, if the period from the occurrence of the soft error to the correction exceeds the clock cycle, there is a possibility that erroneous data will be taken in and retained by the subsequent logic circuit due to the soft error. In this case, even if the location where the soft error has occurred is recovered by correction, the value captured by the subsequent logic circuit remains in error. For this reason, even if the correction of the soft error is completed, the soft error may not be recovered normally. As described above, in this specification, a phenomenon in which an error is propagated to a subsequent logic circuit between the occurrence of an error and the correction, even if the error is corrected at the location where the soft error occurs. This is called failure.

以上に説明したように、コンフィグレーションメモリにおけるソフトエラーの対策は、ECCを用いた訂正だけでは不十分であり、ソフトエラーによる二次障害は避けられない。   As described above, as a countermeasure against the soft error in the configuration memory, correction using ECC alone is not sufficient, and secondary failure due to soft error is inevitable.

このような二次障害の対策をしても、システムの復旧までには時間を要し、システムを短時間で復旧することは困難である。二次障害を復旧には数秒を要する場合があり、停止許容時間が定められているシステムおいては、数秒のシステム障害を許容できない場合がある。このため、ソフトエラーによる障害から、システムを迅速に復旧することが求められている。   Even if such a countermeasure against a secondary failure is taken, it takes time to recover the system, and it is difficult to recover the system in a short time. It may take several seconds to recover from the secondary failure. In a system in which the allowable stop time is set, a system failure of several seconds may not be allowed. For this reason, it is required to quickly recover the system from a failure caused by a soft error.

さらに、外部メモリ及び論理回路でソフトエラーの検出・訂正をする場合、これらの検出・訂正をする機能部が故障し又はソフトエラーが発生すると、エラーを誤検出し、エラーを誤って訂正することがある。エラーを誤って訂正した場合、論理回路は正しく訂正したと判断しているが、実際には訂正ができていない状態となり、エラーの検出・訂正を繰り返してしまう。コンフィグレーションメモリが故障した場合も同様に、エラーの検出・訂正を繰り返してしまう。このため、ソフトエラーを検出・訂正する機能部が故障した場合に、故障箇所を判定することが求められている。   Furthermore, when detecting and correcting soft errors with external memory and logic circuits, if these functionalities that detect and correct fail or a soft error occurs, the error is erroneously detected and the error is corrected erroneously. There is. When an error is corrected in error, the logic circuit determines that the error has been corrected correctly, but in reality, the error cannot be corrected, and error detection / correction is repeated. Similarly, when the configuration memory fails, error detection / correction is repeated. For this reason, when a functional unit that detects and corrects a soft error fails, it is required to determine the failure location.

本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、プログラミング可能な論理回路を有するプログラマブルゲートアレイであって、前記論理回路が設定されるコンフィグレーションメモリと、前記コンフィグレーションメモリ内のソフトエラーを正常化する対策回路とを備え、前記プログラマブルゲートアレイで構成される現用系の回路及び予備系の回路によって冗長構成を組み、前記対策回路は、前記現用系の回路を構成する前記コンフィグレーションメモリに発生するソフトエラーの検出を契機として、前記現用系の回路と前記予備系の回路とを切り替え、前記検出されたソフトエラーによって発生する二次障害から復旧するためのエラーの訂正を実行し、前記エラーの訂正の後に前記論理回路に保持される値を回復する。   A typical example of the invention disclosed in the present application is as follows. Namely, a programmable gate array having a programmable logic circuit, comprising: a configuration memory in which the logic circuit is set; and a countermeasure circuit for normalizing a soft error in the configuration memory, the programmable gate array A redundant configuration is formed by a working system circuit and a standby system circuit, and the countermeasure circuit is triggered by detection of a soft error occurring in the configuration memory that constitutes the working system circuit. A value held in the logic circuit after correction of the error is performed by switching between the circuit of the standby circuit and the circuit of the standby system, executing an error correction for recovering from a secondary failure caused by the detected soft error To recover.

本発明の代表的な実施の形態によれば、FPGAの論理回路で構成されるシステムを迅速に復旧することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。   According to a typical embodiment of the present invention, a system composed of FPGA logic circuits can be quickly restored. Problems, configurations, and effects other than those described above will become apparent from the description of the following embodiments.

第1実施例のソフトエラー対策回路を示す構成図である。It is a block diagram which shows the soft error countermeasure circuit of 1st Example. 第1実施例の再設定制御部と論理回路部との接続を示す構成図である。It is a block diagram which shows the connection of the reset control part and logic circuit part of 1st Example. 第2実施例のソフトエラー対策回路を示す構成図である。It is a block diagram which shows the soft error countermeasure circuit of 2nd Example. 第2実施例の配線接続交点におけるパストンランジスタの構成を示す図である。It is a figure which shows the structure of the Paston transistor in the wiring connection intersection of 2nd Example. 第2実施例の動作を示すタイミングチャートである。It is a timing chart which shows operation | movement of 2nd Example. 第3実施例のソフトエラー対策回路を示す構成図である。It is a block diagram which shows the soft error countermeasure circuit of 3rd Example. 第4実施例のソフトエラー対策回路を示す構成図である。It is a block diagram which shows the soft error countermeasure circuit of 4th Example. 第6実施例のソフトエラーの発生を契機に運用系を非運用系に切り替えるシステムの構成図である。It is a block diagram of the system which switches an active system to a non-operation system by generation | occurrence | production of the soft error of 6th Example. 第7実施例のソフトエラー対策回路を示す構成図である。It is a block diagram which shows the soft error countermeasure circuit of 7th Example. 第7実施例においてコンフィグレーションメモリのソフトエラーを判定するシーケンス図である。It is a sequence diagram which determines the soft error of a configuration memory in 7th Example. 第7実施例において構成データメモリの故障を判定するシーケンス図である。It is a sequence diagram which determines the failure of a structure data memory in 7th Example. 第7実施例においてコンフィグレーションメモリの故障を判定するシーケンス図である。It is a sequence diagram which determines the failure of a configuration memory in 7th Example. 第7実施例においてソフトエラー対策回路のソフトエラーを判定するシーケンス図である。It is a sequence diagram which determines the soft error of the soft error countermeasure circuit in 7th Example. 第7実施例においてコンフィグレーションメモリの故障を判定するシーケンス図である。It is a sequence diagram which determines the failure of a configuration memory in 7th Example. 第8実施例におけるソフトエラー対策回路の処理を説明するフローチャートである。It is a flowchart explaining the process of the soft error countermeasure circuit in 8th Example. 第8実施例におけるソフトエラー対策回路の処理を説明するフローチャートである。It is a flowchart explaining the process of the soft error countermeasure circuit in 8th Example.

本発明に係るソフトエラー対策回路の実施例を、構成図及びフローチャートを用いて説明する。   An embodiment of a soft error countermeasure circuit according to the present invention will be described with reference to a configuration diagram and a flowchart.

<実施例1>
図1は、第1実施例のソフトエラー対策回路6を示す構成図である。
<Example 1>
FIG. 1 is a block diagram showing a soft error countermeasure circuit 6 of the first embodiment.

一般に、SRAMのメモリセル構成を採用したFPGA1は、コンフィグレーションメモリ2と、それを制御するコンフィグレーションメモリ制御部3とを有し、外部の構成データメモリ4に接続される。構成データメモリ4は、コンフィグレーションメモリ2をプログラミングして、様々な論理回路を形成するための回路情報を格納し、フラッシュメモリなどの不揮発性メモリで構成される。   In general, an FPGA 1 employing an SRAM memory cell configuration includes a configuration memory 2 and a configuration memory control unit 3 that controls the configuration memory 2 and is connected to an external configuration data memory 4. The configuration data memory 4 stores circuit information for programming the configuration memory 2 to form various logic circuits, and is composed of a nonvolatile memory such as a flash memory.

構成データメモリ4に格納された回路情報によって、コンフィグレーションメモリ2内に論理回路部5が構成される。なお、この論理回路部は、その論理回路に関連する配線、クロックライン、エンベデッドに構成されるハードウェア・マクロ等、コンフィグレーションメモリ2のプログラミングによって制御される機能を全て含む。   The circuit information stored in the configuration data memory 4 constitutes a logic circuit unit 5 in the configuration memory 2. The logic circuit unit includes all functions controlled by programming of the configuration memory 2, such as wiring, clock lines, and embedded hardware macros related to the logic circuit.

第1実施例のソフトエラー対策回路6は、FPGA1内に構成され、コンフィグレーションメモリ制御部3と、コンフィグレーションメモリ2内に構成される再設定制御部7とを有し、外部の再設定データメモリ8に接続される。再設定データメモリ8は、論理回路部5のフリップフロップ12を特定するためのアドレス及び当該フリップフロップ12を再設定するための再設定データ16を格納する。再設定制御部7は、再設定データメモリ8に対して、読出しアドレス及び制御信号15を出力し、論理回路部5のフリップフロップ12を特定するためのアドレス及び再設定データ16を読み出す。   The soft error countermeasure circuit 6 of the first embodiment is configured in the FPGA 1 and includes a configuration memory control unit 3 and a reset control unit 7 configured in the configuration memory 2, and includes external reset data. Connected to the memory 8. The reset data memory 8 stores an address for specifying the flip-flop 12 of the logic circuit unit 5 and reset data 16 for resetting the flip-flop 12. The reset control unit 7 outputs a read address and a control signal 15 to the reset data memory 8 and reads an address and reset data 16 for specifying the flip-flop 12 of the logic circuit unit 5.

コンフィグレーションメモリ制御部3は、構成データメモリ4よりデータを読み出し、読み出したデータをコンフィグレーションメモリ2の制御線(アドレス線9A、データ線9B)を通して書き込む。さらに、コンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2内に発生するビットエラーを検出した際にフラグ14を出力する検出機能と、ビットエラーが訂正可能又は不可能な場合に、それぞれのフラグ14を出力する訂正機能とを有する。なお、コンフィグレーションメモリ2のビットエラーは、コンフィグレーションメモリ2のECC機能によって自動的に訂正される。さらに、コンフィグレーションメモリ制御部3は、構成データメモリ4に格納されているデータに基づいてビットエラーの発生箇所がコンフィグレーションメモリ2内で論理回路部5として使用されている領域に該当しているか又は該当していないかを判定し、該当している際にフラグ14を出力する該当判定機能を有する。   The configuration memory control unit 3 reads data from the configuration data memory 4, and writes the read data through the control lines (address line 9A, data line 9B) of the configuration memory 2. Further, the configuration memory control unit 3 outputs a flag 14 when a bit error occurring in the configuration memory 2 is detected, and each flag 14 when the bit error is correctable or impossible. And a correction function for outputting. The bit error in the configuration memory 2 is automatically corrected by the ECC function of the configuration memory 2. Further, the configuration memory control unit 3 determines whether the bit error occurrence location corresponds to an area used as the logic circuit unit 5 in the configuration memory 2 based on the data stored in the configuration data memory 4. Alternatively, it has a corresponding determination function for determining whether it is not applicable and outputting a flag 14 when it is applicable.

第1実施例では、コンフィグレーションメモリ制御部3から出力される訂正フラグをトリガに、再設定制御部7が論理回路部5に対して再設定を行う。   In the first embodiment, the reset control unit 7 resets the logic circuit unit 5 using the correction flag output from the configuration memory control unit 3 as a trigger.

以下に、再設定制御部7の基本動作を説明する。   The basic operation of the reset control unit 7 will be described below.

図2は、再設定制御部7と論理回路部5との接続を示す構成図である。   FIG. 2 is a configuration diagram showing the connection between the reset control unit 7 and the logic circuit unit 5.

図2に示す論理回路部5は、複数の基本回路モジュール10から構成される。各基本回路モジュール10は、データ保持機能を有さない組合せ論理部11と、データ保持機能であるフリップフロップ12と、フリップフロップ12にデータを設定する設定部13とで構成される。基本回路モジュール10や、その周囲の配線接続は、構成データメモリ4に格納された情報に基づいてプログラミングされ、様々な論理回路を形成する。   The logic circuit unit 5 shown in FIG. 2 includes a plurality of basic circuit modules 10. Each basic circuit module 10 includes a combinational logic unit 11 that does not have a data holding function, a flip-flop 12 that is a data holding function, and a setting unit 13 that sets data in the flip-flop 12. The basic circuit module 10 and the wiring connections around it are programmed based on the information stored in the configuration data memory 4 to form various logic circuits.

再設定制御部7は、エラー訂正フラグ14を受信すると、受信したエラー訂正フラグ14から、ビットエラーが訂正可能又は不可能である箇所のアドレスを抽出し、抽出したコンフィグレーションメモリ2のアドレスから再設定データメモリ8のアドレスを特定する。そして、再設定制御部7は、再設定データメモリ8に対して、読出しアドレス及び制御信号15を出力し、論理回路部5のフリップフロップ12を特定するためのアドレス及び再設定データ16を読み出す。さらに、再設定制御部7は、設定部13に対して、フリップフロップ12を特定するためのアドレスと制御信号17を出力し、フリップフロップ12に再設定データ18を書き込む。   Upon receiving the error correction flag 14, the reset control unit 7 extracts the address of the portion where the bit error can be corrected or impossible from the received error correction flag 14, and re-set from the extracted address of the configuration memory 2. The address of the setting data memory 8 is specified. Then, the reset control unit 7 outputs a read address and a control signal 15 to the reset data memory 8 and reads an address and reset data 16 for specifying the flip-flop 12 of the logic circuit unit 5. Further, the reset control unit 7 outputs an address for specifying the flip-flop 12 and the control signal 17 to the setting unit 13, and writes the reset data 18 in the flip-flop 12.

第1実施例は、図1及び図2に示すように、本発明による最も基本的なソフトエラー対策回路6であり、ソフトエラーによる二次障害を対策するため、アドレスと制御信号17とによって指示した特定のフリップフロップ12にデータを再設定する。一般的に、通信装置で用いられる論理回路は、主信号データを扱うデータパス系論理部と、データパス系論理部を制御する制御部と、CPU等からの設定情報を保持する設定系レジスタ部とに大別できる。第1実施例のソフトエラー対策回路6は、特に、制御部及び設定系レジスタ部に有効である。この理由は以下の通りである。データパス系論理部は、データの一部に誤りが発生しても、データが流れるため、時間の経過に伴って正常化され、また時間軸上で一時的な僅かな時間において生じたビットエラーであれば、システム上も許容できる場合がある。しかし、制御部及び設定系レジスタ部は、エラーが生じると、二次障害によってシステム全体に対して誤動作が拡大する恐れがあり、積極的な訂正が必要となる。   As shown in FIGS. 1 and 2, the first embodiment is the most basic soft error countermeasure circuit 6 according to the present invention, which is designated by an address and a control signal 17 in order to prevent a secondary failure caused by a soft error. The data is reset in the specified flip-flop 12. Generally, a logic circuit used in a communication apparatus includes a data path logic unit that handles main signal data, a control unit that controls the data path logic unit, and a setting register unit that holds setting information from a CPU or the like. And can be broadly divided. The soft error countermeasure circuit 6 of the first embodiment is particularly effective for the control unit and the setting system register unit. The reason is as follows. The data path logic unit is normalized as time passes because data flows even if an error occurs in part of the data, and bit errors that occur in a short time on the time axis If so, the system may be acceptable. However, if an error occurs in the control unit and the setting system register unit, there is a possibility that a malfunction may be expanded in the entire system due to a secondary failure, and active correction is necessary.

なお、第1実施例では、論理回路部5中のフリップフロップ12に対する再設定を制御する回路について説明したが、本実施例によるソフトエラー対策回路6を用いることによって、FPGA1に搭載される内蔵メモリや、その他エンベデッドに構成されるハードウェア・マクロなどにも同様の再設定をすることができる。   In the first embodiment, the circuit for controlling the resetting of the flip-flop 12 in the logic circuit section 5 has been described. However, by using the soft error countermeasure circuit 6 according to this embodiment, the built-in memory mounted in the FPGA 1 In addition, the same reconfiguration can be performed for hardware macros that are configured in an embedded manner.

第1実施例では、図1に示すように、再設定制御部7はコンフィグレーションメモリ2内に構成されている。再設定制御部7をコンフィグレーションメモリ2で構成することによって、システムが求める再設定方法に応じて柔軟に回路を構成できる。   In the first embodiment, the reset control unit 7 is configured in the configuration memory 2 as shown in FIG. By configuring the reset control unit 7 with the configuration memory 2, a circuit can be flexibly configured according to the reset method required by the system.

コンフィグレーションメモリ制御部3は、再設定制御部7に対するソフトエラーも検出することができる。再設定制御部7のエラーを検出した場合は、制御機能自体を保証できないため、再設定制御部7のエラーを検出した時点で、FPGA1自体を再コンフィグレーションしてもよい。なお、再設定制御部7のソフトエラー発生率を低減するためには、極力、回路規模を小さく抑えることや、再設定制御部7を3重化し多数決により制御方法を決定する構成等がある。なお、再設定制御部7は、コンフィグレーションメモリ2の外に構成してもよい。この場合、再設定制御部7を、よりソフトエラー耐力のあるFPGAやプロセッサ等に搭載してもよい。再設定制御部7に生じるソフトエラーの発生率を把握した上で、システムが求める信頼性に合わせて構成を決定してもよい。   The configuration memory control unit 3 can also detect a soft error for the reset control unit 7. When an error in the reset control unit 7 is detected, the control function itself cannot be guaranteed. Therefore, the FPGA 1 itself may be reconfigured when an error in the reset control unit 7 is detected. In order to reduce the soft error occurrence rate of the reset control unit 7, there are configurations such as minimizing the circuit scale as much as possible, and a configuration in which the reset control unit 7 is tripled and the control method is determined by majority. The reset control unit 7 may be configured outside the configuration memory 2. In this case, the reset control unit 7 may be mounted on an FPGA, a processor, or the like having a soft error tolerance. The configuration may be determined in accordance with the reliability required by the system after grasping the occurrence rate of the soft error occurring in the reset control unit 7.

以上に説明したように、従来の検出・訂正回路では、FPGA1内に構成された論理回路の一部に誤ったデータが保持され続ける不具合が生じることがあった。しかし、第1実施例によれば、前述した不具合を排除し、コンフィグレーションメモリ2にソフトエラーが発生した場合に、再設定制御部7がフリップフロップ12に再設定データを書き込むので、論理回路の機能を正常化することができる。   As described above, in the conventional detection / correction circuit, there is a problem that erroneous data is continuously held in a part of the logic circuit configured in the FPGA 1. However, according to the first embodiment, when the above-mentioned problem is eliminated and a soft error occurs in the configuration memory 2, the reset controller 7 writes the reset data to the flip-flop 12, so that the logic circuit Function can be normalized.

<実施例2>
第2実施例では、論理回路部のフリップフロップの再設定をより簡易にできる回路の例を説明する。
<Example 2>
In the second embodiment, an example of a circuit capable of simplifying resetting of the flip-flop of the logic circuit section will be described.

図3は、第2実施例のソフトエラー対策回路6を示す構成図であり、図4は、第2実施例の配線接続交点におけるパストランジスタの構成を示す図であり、図5は、第2実施例の動作を示すタイミングチャートである。   FIG. 3 is a block diagram showing the soft error countermeasure circuit 6 of the second embodiment, FIG. 4 is a diagram showing the configuration of the pass transistor at the wiring connection intersection of the second embodiment, and FIG. It is a timing chart which shows operation | movement of an Example.

図3に示すソフトエラー対策回路は、再設定制御部7と、四つの論理回路部群19〜22で構成される。図3では、一例として、ある条件保持信号23を主機能部である論理回路部22へ与える機能を考える。論理回路部群19〜22は、条件信号24を生成するための論理回路部19と、タイミング信号25を生成する論理回路部20と、タイミング信号25によって条件信号24の値を保持し、条件保持信号23を出力する論理回路部21と、条件保持信号23を受信する論理回路部22とで構成される。再設定制御部7は、現在の動作を一度初期化するために、エラー訂正フラグ14をトリガとして、リセット信号29を生成し、論理回路部群19〜22へ分配する。   The soft error countermeasure circuit shown in FIG. 3 includes a reset control unit 7 and four logic circuit unit groups 19 to 22. In FIG. 3, as an example, a function of giving a certain condition holding signal 23 to the logic circuit unit 22 which is a main function unit is considered. The logic circuit unit groups 19 to 22 hold the value of the condition signal 24 by the logic circuit unit 19 for generating the condition signal 24, the logic circuit unit 20 for generating the timing signal 25, and the timing signal 25, and hold the condition. The logic circuit unit 21 outputs the signal 23 and the logic circuit unit 22 receives the condition holding signal 23. In order to initialize the current operation once, the reset control unit 7 generates the reset signal 29 using the error correction flag 14 as a trigger and distributes the reset signal 29 to the logic circuit unit groups 19 to 22.

なお、条件信号は4bitのバス信号であるが、全てのbitが同じ構成であるため、bit0の接続のみを図3に示す。全ての回路はクロック26で動作するクロック同期回路であり、クロック26は数MHz以上である。   Although the condition signal is a 4-bit bus signal, since all the bits have the same configuration, only the connection of bit 0 is shown in FIG. All the circuits are clock synchronization circuits that operate with a clock 26, and the clock 26 is several MHz or more.

ここで、図3の配線接続交点27にソフトエラーが発生した場合、配線接続交点27は、図4に示すパストランジスタ28で構成され、構成データメモリ4に格納された回路情報に基づいてコンフィグレーションメモリ2にプログラミングされた値によって配線経路が決まる。例えば、ソフトエラー発生前のパストランジスタ28はOnの状態であるが、コンフィグレーションメモリ2にソフトエラーが発生し、その設定情報のビットが反転されると、パストランジスタ28はOffに変化し、経路が断たれる。但し、FPGA1には、図1で示したように、コンフィグレーションメモリ制御部3が設けられており、コンフィグレーションメモリ制御部3がコンフィグレーションメモリ2内のエラーを検出し、検出したエラーを訂正する。このため、エラーの発生から、しばらく時間を経過した後に訂正が完了し、経路が回復する。一般に、このエラー検出・訂正は、コンフィグレーションメモリ2内を巡回して行われるため、訂正完了までに、数ミリ秒〜数十ミリ秒程度の時間を要する。図3に示すように、数MHzのクロックで動作する論理回路部群19〜22では、エラーが訂正されるまでに多くのクロックがトグルされる(Onの状態とOffの状態が切り替わる)ために、二次障害が生じる可能性がある。   Here, when a soft error occurs at the wiring connection intersection 27 in FIG. 3, the wiring connection intersection 27 is constituted by the pass transistor 28 shown in FIG. 4 and is configured based on the circuit information stored in the configuration data memory 4. The wiring path is determined by the value programmed in the memory 2. For example, the pass transistor 28 before the occurrence of the soft error is in the On state, but when a soft error occurs in the configuration memory 2 and the bit of the setting information is inverted, the pass transistor 28 changes to Off, and the path Is refused. However, the FPGA 1 is provided with a configuration memory control unit 3 as shown in FIG. 1, and the configuration memory control unit 3 detects an error in the configuration memory 2 and corrects the detected error. . For this reason, the correction is completed after a lapse of time from the occurrence of the error, and the path is restored. In general, this error detection / correction is performed by circulating in the configuration memory 2, and therefore it takes a time of several milliseconds to several tens of milliseconds to complete the correction. As shown in FIG. 3, in the logic circuit groups 19 to 22 operating with a clock of several MHz, many clocks are toggled until the error is corrected (the On state and the Off state are switched). Secondary failures may occur.

図5のタイミングチャートを用いて詳細の動作を説明する。   The detailed operation will be described with reference to the timing chart of FIG.

条件信号24はタイミングT0で出力値を確定し、その値を取り込むためのタイミング信号25はタイミングT3で確定する。ソフトエラーが発生し、タイミングT1で条件信号24のbit0が”1”→”0”に反転した場合、エラーが検出されるのはタイミングT2であり、T2から所定時間経過後のタイミングT4に訂正が完了する。このように、エラーの発生から訂正の完了までに、クロックサイクルに対して、かなり長い時間を必要とするため、タイミングT3の時点では論理回路部21で確定する条件保持信号23は、本来取るべき値である”1011”とは異なる”1010”の誤った値を保持する。このため、以降、条件信号24が変化しなくても、次のタイミング信号25が”H”になるまでは、論理回路部22は誤った値で動作することとなる。そこで、図3に示す再設定制御部7では、現在の誤った動作を一度初期化するために、エラーが訂正されるタイミングT4以降に、確定するエラー訂正フラグ14をトリガとして、リセット信号29を生成し、論理回路部群19〜22へ分配する。リセット信号29で論理回路部群19〜22が初期化されることによって、FPGA1全体が初期状態に戻る。   The condition signal 24 determines the output value at timing T0, and the timing signal 25 for capturing the value is determined at timing T3. When a soft error occurs and bit 0 of the condition signal 24 is inverted from “1” to “0” at timing T1, the error is detected at timing T2, and is corrected to timing T4 after a predetermined time has elapsed from T2. Is completed. As described above, since a considerably long time is required for the clock cycle from the occurrence of the error to the completion of the correction, the condition holding signal 23 determined by the logic circuit unit 21 should be originally taken at the timing T3. An erroneous value “1010” different from the value “1011” is held. Therefore, after that, even if the condition signal 24 does not change, the logic circuit unit 22 operates with an incorrect value until the next timing signal 25 becomes “H”. Therefore, in the reset control unit 7 shown in FIG. 3, in order to initialize the current erroneous operation once, the reset signal 29 is triggered by the error correction flag 14 to be determined as a trigger after the error correction timing T4. It is generated and distributed to the logic circuit unit groups 19-22. The logic circuit unit groups 19 to 22 are initialized by the reset signal 29, whereby the entire FPGA 1 returns to the initial state.

第1実施例では、アドレスによって、論理回路部5中の特定のフリップフロップ12に対してデータを再設定したが、フリップフロップ12に個々に指示を与えるためには、図1に示すように、対象とするアドレス及び再設定データ16を再設定データメモリ8に格納する必要がある。また、アドレスをデコードするための設定部13が論理回路部5に必要である。また、再設定を完了するまでにも時間がかかる。   In the first embodiment, data is reset for a specific flip-flop 12 in the logic circuit unit 5 by an address. However, in order to individually give instructions to the flip-flop 12, as shown in FIG. It is necessary to store the target address and reset data 16 in the reset data memory 8. In addition, the logic circuit unit 5 requires a setting unit 13 for decoding the address. It also takes time to complete the resetting.

これに対し、第2実施例では、論理回路部21のフリップフロップを初期状態に戻すのみだけでよいため、論理回路部21の付帯回路が不要であり、短時間で再設定を完了できることが特徴である。   On the other hand, in the second embodiment, it is only necessary to return the flip-flop of the logic circuit unit 21 to the initial state, so that an auxiliary circuit of the logic circuit unit 21 is unnecessary, and the resetting can be completed in a short time. It is.

初期化の対象範囲は、図3で説明した配線接続交点27のように、ソフトエラーはコンフィグレーションメモリ2中のどこでも発生する可能性があるため、二次障害の波及範囲を特定することは難しい。このため、システムの仕様に応じて、一部の論理回路部のみを初期化してもよく、FPGA全体の論理回路部をリセットしてもよい。例えば、複数のリセット線を設け、各論理回路部が一つのリセット線に接続されている場合、一部のリセット線のみにリセット信号を送信し、一部の論理回路部のみを初期化してもよい。   As for the range of initialization, since the soft error may occur anywhere in the configuration memory 2 like the wiring connection intersection 27 described with reference to FIG. 3, it is difficult to specify the spillover range of the secondary fault. . For this reason, only some of the logic circuit units may be initialized or the logic circuit units of the entire FPGA may be reset according to the system specifications. For example, when a plurality of reset lines are provided and each logic circuit unit is connected to one reset line, a reset signal is transmitted only to some reset lines, and only some logic circuit units are initialized. Good.

以上に説明したように、第2実施例によれば、アドレス制御が不要となるので、小さな回路規模でデータを再設定することができる。また、リセットを送ればよいので、簡単案制御によってデータを再設定することができる。特に、全体のデータを再設定する場合には、1本のリセット線だけでよく、回路を簡素化することができる。   As described above, according to the second embodiment, address control is not required, and therefore data can be reset with a small circuit scale. Moreover, since it is sufficient to send a reset, the data can be reset by the simple plan control. In particular, when resetting the entire data, only one reset line is required, and the circuit can be simplified.

<実施例3>
第3実施例では、再設定の頻度を軽減するため、エラーが発生した箇所が、コンフィグレーションメモリ2の中で論理回路部として使用されている領域であると判定され、かつエラー訂正が完了したときのみ、論理回路部5のフリップフロップ(データ保持機能)12の値を再設定する回路の例を説明する。
<Example 3>
In the third embodiment, in order to reduce the frequency of resetting, it is determined that the location where an error has occurred is an area used as a logic circuit section in the configuration memory 2 and error correction has been completed. Only when will the example of the circuit for resetting the value of the flip-flop (data holding function) 12 of the logic circuit unit 5 be described.

図6は、第3実施例のソフトエラー対策回路6を示す構成図である。   FIG. 6 is a block diagram showing the soft error countermeasure circuit 6 of the third embodiment.

第3実施例(図6)では、第1実施例(図1)と異なり、コンフィグレーションメモリ2内を論理回路部群34で使用されている使用領域30と未使用領域31とで異なる扱いをする。   Unlike the first embodiment (FIG. 1), the third embodiment (FIG. 6) treats the configuration memory 2 differently in the used area 30 and the unused area 31 used in the logic circuit unit group 34. To do.

第3実施例では、コンフィグレーションメモリ2内の領域が使用されているかの情報を、例えばビットマップ形式で、構成データメモリ4に格納する。このビットマップは、構成データメモリ4から回路情報を読み出してコンフィグレーションメモリ2に設定する際に、同時に設定するとよい。そして、このビットマップを参照することによって、論理回路に使用されている使用領域30と論理回路に使用されていない未使用領域31とを特定することができる。   In the third embodiment, information indicating whether the area in the configuration memory 2 is used is stored in the configuration data memory 4 in, for example, a bitmap format. This bitmap may be set at the same time when circuit information is read from the configuration data memory 4 and set in the configuration memory 2. By referring to this bitmap, it is possible to identify the used area 30 used in the logic circuit and the unused area 31 not used in the logic circuit.

コンフィグレーションメモリ制御部3は、構成データメモリ4に格納されたビットマップを参照して、ソフトエラーが使用領域30に該当するかを判定する。そして、コンフィグレーションメモリ制御部3は、ソフトエラー発生箇所が使用領域30に該当した場合のみに該当フラグ14をアサートする該当判定機能を有する。該当判定機能は、第1実施例(図1)で説明したものと同じである。従って、該当フラグ14を検出し、且つエラー訂正が完了した場合のみに、FPGA1内の論理回路部群34中に二次障害が発生した可能性があると判定し、第1実施例で示した再設定方法や、第2実施例で示した初期化方法を行う。   The configuration memory control unit 3 refers to the bitmap stored in the configuration data memory 4 to determine whether the soft error corresponds to the use area 30. The configuration memory control unit 3 has a corresponding determination function that asserts the corresponding flag 14 only when the soft error occurrence location corresponds to the use area 30. The hit determination function is the same as that described in the first embodiment (FIG. 1). Therefore, only when the corresponding flag 14 is detected and error correction is completed, it is determined that there is a possibility that a secondary failure has occurred in the logic circuit group 34 in the FPGA 1, and the first embodiment is shown. The resetting method and the initialization method shown in the second embodiment are performed.

一般に、FPGA1は、プログラミングの自由度を広げるために、プログラミングされる論理回路部の規模の数倍〜数10倍のリソースを有し、膨大なコンフィグレーションメモリ2の領域が確保される。しかし、実際に使用される使用領域の割合は未使用領域に対して小さいことが多い。このため、第3実施例のように該当フラグ14を利用することによって、再設定を行う範囲を少なくし、システムの停止時間を短縮することができる。   In general, the FPGA 1 has resources several times to several tens of times larger than the scale of a logic circuit section to be programmed in order to increase the degree of programming freedom, and a vast configuration memory 2 area is secured. However, the ratio of the used area actually used is often smaller than the unused area. Therefore, by using the corresponding flag 14 as in the third embodiment, the reset range can be reduced and the system stop time can be shortened.

<実施例4>
第4実施例では、再設定の頻度をさらに低減するため、再設定が必要な論理回路部を特定し、特定された論理回路部(領域)のみを再設定する回路の例を説明する。
<Example 4>
In the fourth embodiment, in order to further reduce the frequency of resetting, an example of a circuit that specifies a logic circuit unit that needs to be reset and resets only the specified logic circuit unit (area) will be described.

図7は、第4実施例のソフトエラー対策回路6を示す構成図である。   FIG. 7 is a block diagram showing the soft error countermeasure circuit 6 of the fourth embodiment.

第4実施例(図7)では、第3実施例(図6)と異なり、再設定が必要な特定の論理回路部35に分割する。   Unlike the third embodiment (FIG. 6), the fourth embodiment (FIG. 7) is divided into specific logic circuit sections 35 that need to be reset.

第4実施例のコンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2の領域単位でエラーを検出する。このため、コンフィグレーションメモリ2内に設けられた領域と、コンフィグレーションメモリ2のアドレスとの対応関係を保持する。この対応関係は、FPGA1の工場出荷時又は初期設定する際に設定するとよい。そして、この対応関係を参照することによって、エラーが検出された領域を特定することができる。   The configuration memory control unit 3 according to the fourth embodiment detects an error for each area of the configuration memory 2. For this reason, the correspondence relationship between the area provided in the configuration memory 2 and the address of the configuration memory 2 is maintained. This correspondence may be set when the FPGA 1 is shipped from the factory or when it is initially set. Then, by referring to this correspondence relationship, it is possible to specify the area where the error is detected.

また、第4実施例では、再設定データメモリ8がコンフィグレーションメモリ2の領域に区分されており、各領域毎に、論理回路部5のフリップフロップ12を特定するためのアドレス及び当該フリップフロップ12を再設定するための再設定データ16を格納する。   In the fourth embodiment, the reset data memory 8 is divided into areas of the configuration memory 2, and for each area, an address for specifying the flip-flop 12 of the logic circuit unit 5 and the flip-flop 12. The reset data 16 for resetting is stored.

また、再設定制御部7は、アドレステーブル33を格納する。アドレステーブル33は、コンフィグレーションメモリ2内に設けられた領域と、コンフィグレーションメモリ2のアドレスとの対応関係を保持する。アドレステーブル33を参照することによって、コンフィグレーションメモリ2のアドレスに該当する領域を特定することができる。   The reset control unit 7 stores an address table 33. The address table 33 holds the correspondence between the area provided in the configuration memory 2 and the address of the configuration memory 2. By referring to the address table 33, an area corresponding to the address of the configuration memory 2 can be specified.

第4実施例では、図7に示すように、再設定が必要な特定の論理回路部35を領域に分けて検出することによって、データパス系論理部は再設定せず、制御部及び設定レジスタ部のみを再設定するなど、さらに細かな再設定対象を特定することができ、再設定時間を短縮することができる。   In the fourth embodiment, as shown in FIG. 7, the data path logic unit is not reset by detecting a specific logic circuit unit 35 that needs to be reset, divided into areas, and the control unit and the setting register. It is possible to specify a finer resetting target, such as resetting only the part, and shorten the resetting time.

なお、第3実施例と第4実施例とを併用して、使用領域の中でのみ再設定か必要な特定の論理回路部35を検出してもよい。   It should be noted that the third embodiment and the fourth embodiment may be used in combination to detect a specific logic circuit unit 35 that needs to be reset only in the use region.

また、第4実施例では、再設定が必要な特定の論理回路部35の該当判定を、コンフィグレーションメモリ制御部3の機能によらず、再設定制御部7より制御してもよい。   Further, in the fourth embodiment, the corresponding determination of the specific logic circuit unit 35 that needs to be reset may be controlled by the reset control unit 7 regardless of the function of the configuration memory control unit 3.

例えば、コンフィグレーションメモリ制御部3は、該当フラグ14を出力するとともに、エラーが発生したアドレス32を出力する。再設定制御部7は、アドレステーブル33を参照して、コンフィグレーションメモリ制御部3から出力されたエラーアドレス32が該当する領域を判定し、該当する領域のアドレス・再設定データ16を再設定データメモリ8から読み出し、FPGA1内部の再設定が必要な特定の論理回路部35に対してのみ再設定をすることができる。   For example, the configuration memory control unit 3 outputs the corresponding flag 14 and the address 32 where the error has occurred. The reset control unit 7 refers to the address table 33 to determine a region corresponding to the error address 32 output from the configuration memory control unit 3, and sets the address / reset data 16 of the corresponding region as reset data. It is possible to read out from the memory 8 and reset only a specific logic circuit unit 35 that needs to be reset inside the FPGA 1.

コンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2全体に対して該当領域を判定するため、膨大な回路情報を構成データメモリ4に保持する必要がある。しかし、第4実施例のように、設計時に予め再設定が必要な特定の論理回路部35のアドレスが決まっている場合、当該アドレスをアドレステーブル33に登録することによって、回路規模や必要なメモリ規模を小さく抑えることができる。   The configuration memory control unit 3 needs to store a large amount of circuit information in the configuration data memory 4 in order to determine the corresponding area for the entire configuration memory 2. However, as in the fourth embodiment, when the address of a specific logic circuit unit 35 that needs to be reset in advance is determined at the time of design, the circuit scale and required memory are registered by registering the address in the address table 33. The scale can be kept small.

また、設計時に予め再設定が必要なアドレスが決まっているので、当該決まっているアドレスの範囲で、データを再設定すればよいので、再設定を行う範囲を少なくし、システムの停止時間を短縮することができる。   In addition, since the address that needs to be reset in advance is determined at the time of design, it is sufficient to reset the data within the predetermined address range, so the range for resetting is reduced and the system downtime is shortened. can do.

<実施例5>
第5実施例では、再設定の対象領域の判定を容易にするため、論理回路部5に使用する領域をコンフィグレーションメモリ2内の定められた実装領域に設計段階で予め固定し、当該固定された領域内でエラーを検出して、訂正した場合に、再設定をする回路の例を説明する。
<Example 5>
In the fifth embodiment, in order to facilitate the determination of the reset target area, the area used for the logic circuit unit 5 is fixed in advance at a design stage in a predetermined mounting area in the configuration memory 2, and the fixed area is fixed. An example of a circuit that performs resetting when an error is detected and corrected in the area will be described.

図6を用いて、第5実施例を説明する。   A fifth embodiment will be described with reference to FIG.

第3実施例では、コンフィグレーションメモリ内に自由に配置された論理回路部群34に対して、コンフィグレーションメモリ制御部3が、ソフトエラーを検出し、ソフトエラーを検出した箇所が使用領域30であるかを判定し、使用領域30である場合に再設定制御部7が再設定を行う。   In the third embodiment, the configuration memory control unit 3 detects a soft error with respect to the logic circuit unit group 34 freely arranged in the configuration memory, and the location where the soft error is detected is the use area 30. It is determined whether or not there is a use area 30, and the reset control unit 7 resets.

第5実施例では、例えば図6の使用領域30を、論理回路部5を実装するための領域をコンフィグレーションメモリ2内の特定の物理的な領域に設計段階で予め固定し、当該領域範囲内に論理回路部5が配置されるように、FPGA1の実装設計の段階で考慮しておく。これにより、ソフトエラーの監視をFPGA1特定の領域(使用領域30)内のみに限定することができ、監視対象領域内でエラーが検出され、当該エラーが訂正されれた場合、フリップフロップ12の値を再設定することができる。   In the fifth embodiment, for example, the use area 30 of FIG. 6 is fixed in advance to a specific physical area in the configuration memory 2 in an area for mounting the logic circuit unit 5 at the design stage. Consideration is made at the stage of mounting design of the FPGA 1 so that the logic circuit unit 5 is arranged in FIG. As a result, the monitoring of the soft error can be limited to only within the FPGA1 specific area (usage area 30). When an error is detected in the monitoring target area and the error is corrected, the value of the flip-flop 12 is detected. Can be reset.

以上に説明したように第5実施例によると、使用領域を判定するための該当判定機能がコンフィグレーションメモリ制御部3に搭載されていなくてもよい。また、コンフィグレーションメモリ制御部3が該当判定機能を搭載する場合でも、判定を行うための情報を構成データメモリ4に格納する必要がなく、外部メモリの記憶容量を削減することができ、外部メモリのコスト及び基板実装面積を低減することができる。   As described above, according to the fifth embodiment, the configuration memory control unit 3 may not be provided with a corresponding determination function for determining the use area. Even when the configuration memory control unit 3 is equipped with a corresponding determination function, it is not necessary to store information for determination in the configuration data memory 4, and the storage capacity of the external memory can be reduced. Cost and board mounting area can be reduced.

<実施例6>
第6実施例では、ソフトエラーの発生を契機に運用系を非運用系に切り替えるシステムを説明する。
<Example 6>
In the sixth embodiment, a system that switches an active system to a non-operating system when a soft error occurs will be described.

図8は、第3実施例(図6)のソフトエラー対策回路6を搭載し、ソフトエラーの発生を契機に運用系を非運用系に切り替えるシステムの構成図である。   FIG. 8 is a block diagram of a system in which the soft error countermeasure circuit 6 of the third embodiment (FIG. 6) is mounted and the active system is switched to the non-operating system when a soft error occurs.

なお、第6実施例では通信装置を例にして説明するが、他のシステムにも適用することができる。また、通信装置が、第3実施例のソフトエラー対策回路6を搭載する例を説明するが、前述した第1から第5の何れの実施例のソフトエラー対策回路6を搭載してもよい。   In the sixth embodiment, a communication apparatus will be described as an example, but the present invention can also be applied to other systems. In addition, an example in which the communication apparatus includes the soft error countermeasure circuit 6 of the third embodiment will be described, but the soft error countermeasure circuit 6 of any of the first to fifth embodiments described above may be mounted.

通信装置A40と通信装置B41との間では、運用系主信号42及び非運用系主信号43によって通信している。通信装置A40と通信装置B41とは、それぞれ、運用系装置44と非運用系装置45とを搭載する。運用系装置44と非運用系装置45とは、FPGA1内の回路によって構成され、第3実施例のソフトエラー対策回路6を搭載し、コンフィグレーションメモリ2に発生するソフトエラーを検出すると、エラー検出信号46を出力する。なお、運用系装置44と非運用系装置45とは、一つのFPGA1内の回路によって構成しても、複数のFPGA1内の回路によって構成してもよい。   Communication is performed between the communication device A 40 and the communication device B 41 using the operation main signal 42 and the non-operation main signal 43. The communication device A40 and the communication device B41 are respectively equipped with an active device 44 and a non-active device 45. The operational system device 44 and the non-operation system device 45 are constituted by circuits in the FPGA 1 and are equipped with the soft error countermeasure circuit 6 of the third embodiment. When a soft error occurring in the configuration memory 2 is detected, error detection The signal 46 is output. The active device 44 and the non-active device 45 may be configured by a circuit in one FPGA 1 or may be configured by a circuit in a plurality of FPGAs 1.

セレクタ制御部47は、運用系装置44及び非運用系装置45から出力されたエラー検出信号46を監視し、運用系装置44からのエラー検出信号46を検出した場合、セレクタ制御信号48をセレクタ49に通知し、運用系主信号42から非運用系主信号43へセレクタ49を切り替える。   The selector control unit 47 monitors the error detection signal 46 output from the operation system device 44 and the non-operation system device 45, and when detecting the error detection signal 46 from the operation system device 44, the selector control signal 48 is changed to the selector 49. The selector 49 is switched from the active main signal 42 to the non-operating main signal 43.

非運用系主信号43へ切り替えることによって、ソフトエラーを訂正し、データの再設定が完了するより早く、システム障害を復旧することができる。   By switching to the non-operational main signal 43, the soft error can be corrected and the system failure can be recovered sooner than the data resetting is completed.

ソフトエラーが発生した運用系装置44は、運用系装置44から非運用系装置45へ切り替えた後、ソフトエラーを訂正し、データを再設定して、非運用系装置として継続してシステム運用することが可能になる。   The active device 44 in which the soft error has occurred switches from the active device 44 to the non-active device 45, corrects the soft error, resets the data, and continues to operate the system as a non-active device. It becomes possible.

一般的なFPGAの性能によれば、ソフトエラーの検出及び訂正からデータの再設定は数十ミリ秒〜数秒を要し、ソフトエラーの検出に要する時間は数マイクロ秒〜数ミリ秒である。ソフトエラーを検出した時点で非運用系装置45に切り替えることによって、システム障害の時間を短縮することができる。   According to general FPGA performance, data resetting from detection and correction of a soft error requires several tens of milliseconds to several seconds, and the time required to detect a soft error is several microseconds to several milliseconds. By switching to the non-operational device 45 when a soft error is detected, the system failure time can be reduced.

ソフトエラー対策回路6は、運用系装置44から非運用系装置45へ切り替えたタイミングで、ソフトエラーを検出したことを示す警報・故障情報50を警報表示・通知部51に通知する。警報表示・通知部51は、ソフトエラーの検出を保守者へ通知することによって、ソフトエラーの発生を契機として、運用系装置44から非運用系装置45への切り替えが発生したことを知ることができる。また、第8実施例で説明するように、エラーの情報を警報・故障情報50に含め、警報表示・通知部51へ通知することができる。   The soft error countermeasure circuit 6 notifies the alarm display / notification unit 51 of alarm / failure information 50 indicating that a soft error has been detected at the timing when the operation system device 44 is switched to the non-operation system device 45. The alarm display / notification unit 51 notifies the maintenance person of the detection of the soft error, thereby knowing that the switching from the active device 44 to the non-operating device 45 has occurred when the soft error occurs. it can. Further, as described in the eighth embodiment, error information can be included in the alarm / failure information 50 and notified to the alarm display / notification unit 51.

前述した第6実施例の構成は、障害の発生から復旧までの停止許容時間が規定されているシステムに適用する。停止許容時間が規定されないシステムにおいては、非運用系装置45、セレクタ49、セレクタ制御部47を搭載しなくてもよい。   The configuration of the sixth embodiment described above is applied to a system in which the allowable stop time from the occurrence of a failure to recovery is specified. In a system in which the allowable stop time is not specified, the non-operation system device 45, the selector 49, and the selector control unit 47 may not be installed.

以上に説明したように、第6実施例によると、現用系の回路を構成するコンフィグレーションメモリ2に発生するソフトエラーの検出を契機として、現用系の回路(運用系装置44)と予備系の回路(非運用系装置45)とを切り替え、検出されたソフトエラーによって発生する二次障害から復旧するためのエラーの訂正を実行し、エラーの訂正の後に論理回路に保持される値を回復するので、システムを規定内の時間で迅速に復旧することができる。   As described above, according to the sixth embodiment, the detection of the soft error occurring in the configuration memory 2 constituting the active circuit is triggered by the active circuit (active system device 44) and the standby system. Switch the circuit (non-operation system device 45), execute error correction to recover from the secondary failure caused by the detected soft error, and recover the value held in the logic circuit after the error correction As a result, the system can be quickly recovered in a prescribed time.

<実施例7>
第7実施例では、ソフトエラー対策回路に、ソフトエラーの検出及び訂正を行う機能部自身の故障やソフトエラーが発生した機能部を特定するための機能を追加した例を説明する。
<Example 7>
In the seventh embodiment, an example will be described in which a function for identifying a functional unit in which a failure or a soft error has occurred in a functional unit that detects and corrects a soft error is added to the soft error countermeasure circuit.

図9は、第7実施例のソフトエラー対策回路6を示す構成図である。   FIG. 9 is a block diagram showing the soft error countermeasure circuit 6 of the seventh embodiment.

第7実施例のソフトエラー対策回路6は、第3実施例のソフトエラー対策回路6に情報保持部65が接続されている。コンフィグレーションメモリ制御部3から情報保持部65へ、コンフィグレーション完了情報60、ソフトエラーアドレス情報61及び訂正不可情報63が送信される。また、情報保持部65からコンフィグレーションメモリ制御部3へ、ソフトエラーアドレス保持情報62及び訂正不可保持情報64が送信される。   In the soft error countermeasure circuit 6 of the seventh embodiment, an information holding unit 65 is connected to the soft error countermeasure circuit 6 of the third embodiment. Configuration completion information 60, soft error address information 61, and uncorrectable information 63 are transmitted from the configuration memory control unit 3 to the information holding unit 65. Further, the soft error address holding information 62 and the uncorrectable holding information 64 are transmitted from the information holding unit 65 to the configuration memory control unit 3.

次に、故障が発生した機能部を特定する方法を説明する。   Next, a method for identifying a functional unit in which a failure has occurred will be described.

図10は、第7実施例において、コンフィグレーションメモリ2のソフトエラーを判定するシーケンス図である。   FIG. 10 is a sequence diagram for determining a soft error in the configuration memory 2 in the seventh embodiment.

コンフィグレーションメモリ制御部3は、エラーの訂正後、コンフィグレーションメモリを1回スキャンする間に、同じアドレスで再度エラーを検出するかによってコンフィグレーションメモリ2のソフトエラーを判定する。   The configuration memory control unit 3 determines a soft error in the configuration memory 2 by detecting the error again at the same address while scanning the configuration memory once after correcting the error.

コンフィグレーションメモリ制御部3は、エラーの検出・訂正(S100)の後、ソフトエラーアドレス情報61を情報保持部65へ通知する(S101)。   The configuration memory control unit 3 notifies the information holding unit 65 of the soft error address information 61 after error detection / correction (S100) (S101).

情報保持部65は、コンフィグレーションメモリ制御部3から通知されたソフトエラーアドレス情報61をNミリ秒間保持し(S102)、ソフトエラーアドレス情報61を保持する間、ソフトエラーアドレス保持情報62をコンフィグレーションメモリ制御部3へ繰り返し返信する(S103)。なお、ソフトエラーアドレス保持情報62を定期的に送信してもよい。   The information holding unit 65 holds the soft error address information 61 notified from the configuration memory control unit 3 for N milliseconds (S102), and configures the soft error address holding information 62 while holding the soft error address information 61. It repeatedly returns to the memory control unit 3 (S103). The soft error address holding information 62 may be transmitted periodically.

ソフトエラーアドレス情報61を保持する時間(Nミリ秒)は、コンフィグレーションメモリ2を1回スキャンする時間を設定するとよい。   The time for holding the soft error address information 61 (N milliseconds) may be set to the time for scanning the configuration memory 2 once.

コンフィグレーションメモリ制御部3は、エラー検出監視期間(Nミリ秒)にエラーを検出しない場合、保持しているソフトエラーアドレス情報61の破棄を情報保持部65に指示する。なお、情報保持部65が自律的に(例えば、Nミリ秒のタイマのタイムアップによって)ソフトエラーアドレス情報61を破棄してもよい。   When no error is detected during the error detection monitoring period (N milliseconds), the configuration memory control unit 3 instructs the information holding unit 65 to discard the held soft error address information 61. Note that the information holding unit 65 may autonomously discard the soft error address information 61 (for example, due to a timer up of N milliseconds).

コンフィグレーションメモリ制御部3は、Nミリ秒間エラー検出監視を行い(S104)、Nミリ秒間にソフトエラーアドレス保持情報62と一致するアドレスにエラーを検出しない場合(S105)、エラーが正常に訂正できているため、コンフィグレーションメモリ2のソフトエラーと判定する。よって、コンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2のソフトエラーと判定した情報を警報・故障情報50に含め、警報表示・通知部51へ通知する(S106)。   The configuration memory control unit 3 performs error detection monitoring for N milliseconds (S104), and when no error is detected at the address that matches the soft error address holding information 62 for N milliseconds (S105), the error can be corrected normally. Therefore, it is determined that the configuration memory 2 is a soft error. Therefore, the configuration memory control unit 3 includes information determined to be a soft error in the configuration memory 2 in the alarm / failure information 50 and notifies the alarm display / notification unit 51 (S106).

警報表示・通知部51は、コンフィグレーションメモリ2のソフトエラーを保守者に通知する(S107)。   The alarm display / notification unit 51 notifies the maintenance person of a software error in the configuration memory 2 (S107).

図11は、第7実施例において、構成データメモリ4の故障を判定するシーケンス図である。   FIG. 11 is a sequence diagram for determining a failure of the configuration data memory 4 in the seventh embodiment.

コンフィグレーションメモリ制御部3は、エラーの訂正後、コンフィグレーションメモリ2を1回スキャンする間に、同じアドレスで再度エラーを検出するかによってコンフィグレーションメモリ2のソフトエラーを判定する。   The configuration memory control unit 3 determines a soft error in the configuration memory 2 by detecting the error again at the same address while scanning the configuration memory 2 once after correcting the error.

コンフィグレーションメモリ制御部3は、エラー検出・訂正(S110)の後、ソフトエラーアドレス情報61を情報保持部65へ通知する(S111)。   The configuration memory control unit 3 notifies the information holding unit 65 of the soft error address information 61 after error detection / correction (S110) (S111).

情報保持部65は、コンフィグレーションメモリ制御部3から通知されたソフトエラーアドレス情報61をNミリ秒間保持し(S112)、ソフトエラーアドレス情報61を保持する間、ソフトエラーアドレス保持情報62をコンフィグレーションメモリ制御部3へ繰り返し返信する(S113)。なお、ソフトエラーアドレス保持情報62を定期的に送信してもよい。   The information holding unit 65 holds the soft error address information 61 notified from the configuration memory control unit 3 for N milliseconds (S112), and configures the soft error address holding information 62 while holding the soft error address information 61. It repeatedly returns to the memory control unit 3 (S113). The soft error address holding information 62 may be transmitted periodically.

ソフトエラーアドレス情報61を保持する時間(Nミリ秒)は、コンフィグレーションメモリ2を1回スキャンする時間を設定するとよい。なお、ソフトエラーアドレス情報61を保持する時間は、最初のエラー検出監視期間(Nミリ秒)にエラーが検出された場合、次のエラー検出監視期間(Nミリ秒)が終了するまで延長される。   The time for holding the soft error address information 61 (N milliseconds) may be set to the time for scanning the configuration memory 2 once. The time for holding the soft error address information 61 is extended until the next error detection monitoring period (N milliseconds) ends when an error is detected in the first error detection monitoring period (N milliseconds). .

コンフィグレーションメモリ制御部3は、Nミリ秒間エラー検出監視を行い(S114)、エラーを検出した(S115)。エラーを検出したアドレスがソフトエラーアドレス保持情報62と一致した場合(S116)、エラーが訂正できていないため、コンフィグレーションメモリ制御部3は、訂正データを格納している構成データメモリ4又はコンフィグレーションメモリ2の故障であると判定する。   The configuration memory control unit 3 performs error detection monitoring for N milliseconds (S114) and detects an error (S115). When the address where the error is detected matches the soft error address holding information 62 (S116), since the error has not been corrected, the configuration memory control unit 3 stores the corrected data in the configuration data memory 4 or the configuration data memory 4 It is determined that the memory 2 is faulty.

ソフトエラー対策回路6は、故障箇所を特定するために、FPGA1を再コンフィグレーションする(S117)。再コンフィグレーションの完了後、コンフィグレーションメモリ制御部3は情報保持部65へコンフィグレーション完了情報60を送信する(S118)。   The soft error countermeasure circuit 6 reconfigures the FPGA 1 in order to identify the failure location (S117). After completion of the reconfiguration, the configuration memory control unit 3 transmits the configuration completion information 60 to the information holding unit 65 (S118).

情報保持部65は、コンフィグレーション完了情報60を受信すると、Nミリ秒間、ソフトエラーアドレス保持情報62をコンフィグレーションメモリ制御部3へ繰り返し返信する(S119)。なお、ソフトエラーアドレス保持情報62を定期的に送信してもよい。   Upon receiving the configuration completion information 60, the information holding unit 65 repeatedly returns the soft error address holding information 62 to the configuration memory control unit 3 for N milliseconds (S119). The soft error address holding information 62 may be transmitted periodically.

コンフィグレーションメモリ制御部3は、Nミリ秒間エラー検出監視を行い(S120)、ソフトエラーアドレス保持情報62と一致するアドレスにエラーを検出しない場合(S121)、構成データメモリ4が故障し訂正データが誤っていると判定する。よって、コンフィグレーションメモリ制御部3は、構成データメモリ4の故障情報を警報・故障情報50に含め、警報表示・通知部51へ通知する(S122)。   The configuration memory control unit 3 performs error detection monitoring for N milliseconds (S120), and when no error is detected at an address that matches the soft error address holding information 62 (S121), the configuration data memory 4 fails and correction data is stored. Judge that it is wrong. Therefore, the configuration memory control unit 3 includes the failure information of the configuration data memory 4 in the alarm / failure information 50 and notifies the alarm display / notification unit 51 (S122).

また、コンフィグレーションメモリ制御部3は、エラー検出監視期間(Nミリ秒)にエラーを検出しない場合、保持しているソフトエラーアドレス情報61の破棄を情報保持部65に指示する。なお、情報保持部65が自律的に(例えば、Nミリ秒のタイマのタイムアップによって)ソフトエラーアドレス情報61を破棄してもよい。   Further, when no error is detected during the error detection monitoring period (N milliseconds), the configuration memory control unit 3 instructs the information holding unit 65 to discard the held soft error address information 61. Note that the information holding unit 65 may autonomously discard the soft error address information 61 (for example, due to a timer up of N milliseconds).

警報表示・通知部51は、構成データメモリ4の故障情報を保守者に通知する(S123)。   The alarm display / notification unit 51 notifies the maintenance person of the failure information of the configuration data memory 4 (S123).

図12は、第7実施例において、コンフィグレーションメモリ2の故障を判定するシーケンス図である。   FIG. 12 is a sequence diagram for determining a failure of the configuration memory 2 in the seventh embodiment.

再コンフィグレーションが完了するまでの手順は、図11と同じである(S110〜S118)。再コンフィグレーションの完了後、コンフィグレーションメモリ制御部3は、Nミリ秒間エラー検出監視を行い(S130)、エラーを検出した(S131)。エラーを検出したアドレスがソフトエラー保持情報62と一致した場合(S132)、構成データメモリ4から読み出された回路情報は正しいので、コンフィグレーションメモリ2の故障と判定することができる。このため、コンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2の故障の情報を警報・故障情報50に含め、警報表示・通知部51へ通知する(S133)。   The procedure until the reconfiguration is completed is the same as that in FIG. 11 (S110 to S118). After the reconfiguration is completed, the configuration memory control unit 3 performs error detection monitoring for N milliseconds (S130) and detects an error (S131). If the address where the error is detected matches the soft error holding information 62 (S132), the circuit information read from the configuration data memory 4 is correct, so that it can be determined that the configuration memory 2 has failed. For this reason, the configuration memory control unit 3 includes failure information of the configuration memory 2 in the alarm / failure information 50 and notifies the alarm display / notification unit 51 (S133).

警報表示・通知部51は、コンフィグレーションメモリ2の故障を保守者に通知する(S134)。   The alarm display / notification unit 51 notifies the maintenance person of the failure of the configuration memory 2 (S134).

図13は、第7実施例において、ソフトエラー対策回路6のソフトエラーを判定するシーケンス図である。   FIG. 13 is a sequence diagram for determining a soft error in the soft error countermeasure circuit 6 in the seventh embodiment.

エラー訂正不可を検出した後、FPGA1を再コンフィグレーションする。再コンフィグレーション完了後、コンフィグレーションメモリを1回スキャンする間に再度エラー訂正不可の検出有無を監視することで判定する。エラーの訂正可否は、前述したように、例えば、コンフィグレーションメモリ2がECC訂正機能を有する場合、検出対象領域内で1bitまでのエラーは訂正可能であるが、2bit以上のエラーは訂正不可能であると判定することができる。   After detecting that the error cannot be corrected, the FPGA 1 is reconfigured. After the reconfiguration is completed, the determination is made by monitoring again the presence / absence of error correction impossible while scanning the configuration memory once. As described above, for example, when the configuration memory 2 has an ECC correction function, errors up to 1 bit can be corrected in the detection target area, but errors of 2 bits or more cannot be corrected. It can be determined that there is.

コンフィグレーションメモリ制御部3は、エラー訂正不可を検出した(S140)後、訂正不可情報63を情報保持部65へ通知する(S141)。情報保持部65は、コンフィグレーションメモリ制御部3から通知された訂正不可情報63保持する(S142)。   After detecting that the error cannot be corrected (S140), the configuration memory control unit 3 notifies the information holding unit 65 of the uncorrectable information 63 (S141). The information holding unit 65 holds the uncorrectable information 63 notified from the configuration memory control unit 3 (S142).

ソフトエラー対策回路6は、故障箇所を特定するために、FPGA1を再コンフィグレーションする(S143)。再コンフィグレーションの完了後、コンフィグレーションメモリ制御部3は情報保持部65へコンフィグレーション完了情報60を送信する(S144)。   The soft error countermeasure circuit 6 reconfigures the FPGA 1 in order to identify the failure location (S143). After completion of the reconfiguration, the configuration memory control unit 3 transmits the configuration completion information 60 to the information holding unit 65 (S144).

情報保持部65は、コンフィグレーション完了情報60を受信すると、Nミリ秒間、訂正不可保持情報64をコンフィグレーションメモリ制御部3へ繰り返し返信する(S145)。なお、訂正不可保持情報64を定期的に送信してもよい。   Upon receiving the configuration completion information 60, the information holding unit 65 repeatedly returns the uncorrectable holding information 64 to the configuration memory control unit 3 for N milliseconds (S145). The uncorrectable holding information 64 may be transmitted periodically.

コンフィグレーションメモリ制御部3は、Nミリ秒の間にエラー訂正不可を検出しない場合(S146)、ソフトエラー対策回路6に発生したソフトエラーによって、回路が正常に動作できず、エラー訂正できないと判定する。よって、コンフィグレーションメモリ制御部3は、ソフトエラー対策回路6のソフトエラーを警報・故障情報50に含め、警報表示・通知部51へ通知する(S147)。   If the configuration memory control unit 3 does not detect that error correction is not possible within N milliseconds (S146), the configuration memory control unit 3 determines that the circuit cannot operate normally due to the soft error generated in the soft error countermeasure circuit 6, and cannot be corrected. To do. Therefore, the configuration memory control unit 3 includes the soft error of the soft error countermeasure circuit 6 in the alarm / failure information 50 and notifies the alarm display / notification unit 51 (S147).

警報表示・通知部51は、ソフトエラー対策回路6のソフトエラーを保守者に通知する(S148)。   The alarm display / notification unit 51 notifies the maintenance person of the soft error in the soft error countermeasure circuit 6 (S148).

図14は、第7実施例において、コンフィグレーションメモリ2の故障を判定するシーケンス図である。   FIG. 14 is a sequence diagram for determining a failure of the configuration memory 2 in the seventh embodiment.

再コンフィグレーションが完了するまでの手順は、図13と同じである(S140〜S144)。再コンフィグレーションの完了後、Nミリ秒の間にエラー訂正不可を検出した場合(S150)、ソフトエラー対策回路6は正常に機能したが、コンフィグレーションメモリ2の故障によって訂正ができなかったと判定することができる。このため、コンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2の故障の情報を警報・故障情報50に含め、警報表示・通知部51へ通知する(S151)。   The procedure until the reconfiguration is completed is the same as that in FIG. 13 (S140 to S144). When error correction impossible is detected within N milliseconds after completion of reconfiguration (S150), it is determined that the soft error countermeasure circuit 6 functions normally but cannot be corrected due to a failure of the configuration memory 2. be able to. For this reason, the configuration memory control unit 3 includes failure information of the configuration memory 2 in the alarm / failure information 50 and notifies the alarm display / notification unit 51 (S151).

警報表示・通知部51は、コンフィグレーションメモリ2の故障を保守者に通知する(S152)。   The alarm display / notification unit 51 notifies the maintenance person of the failure of the configuration memory 2 (S152).

前述したように、故障部位を判定するためには、FPGA1の再コンフィグレーションが必要である。再コンフィグレーションをすると、判定に用いるためのソフトエラーアドレス情報61や訂正不可情報63が初期化され消去される。第7実施例では、この情報の消去を防ぐために、ソフトエラーアドレス情報61、訂正不可情報63を情報保持部65へ退避する。   As described above, the FPGA 1 needs to be reconfigured in order to determine the failed part. When reconfiguration is performed, the soft error address information 61 and the uncorrectable information 63 used for determination are initialized and deleted. In the seventh embodiment, the soft error address information 61 and the uncorrectable information 63 are saved in the information holding unit 65 in order to prevent this information from being erased.

情報保持部65は、FPGA1やプロセッサで構成することができる。情報保持部65をFPGA1で実現する場合、ソフトエラー対策回路6が必要となるため、図9に示す回路を搭載する。再コンフィグレーションされるFPGA1と情報保持部65との両方のソフトエラー対策回路6に同時にソフトエラーが発生すると、第7実施例の方法を実現することができない。しかし、両方のソフトエラー対策回路6で同時にソフトエラーが発生する確率は非常に小さいため、実用上の問題はない。   The information holding unit 65 can be configured by an FPGA 1 or a processor. When the information holding unit 65 is realized by the FPGA 1, the soft error countermeasure circuit 6 is required, and therefore the circuit shown in FIG. 9 is mounted. If a soft error occurs simultaneously in both the soft error countermeasure circuits 6 of the reconfigured FPGA 1 and the information holding unit 65, the method of the seventh embodiment cannot be realized. However, there is no practical problem because the probability of simultaneous occurrence of soft errors in both soft error countermeasure circuits 6 is very small.

以上に説明したように、第7実施例によると、ソフトエラーを検出・訂正する機能部が故障し又はソフトエラーが発生すると、エラーの検出・訂正を繰り返す可能性があったが、訂正後のエラー状態を詳しく分析することによって、故障した機能部を特定し、システムの保守性を向上することができる。   As described above, according to the seventh embodiment, when a functional unit that detects and corrects a soft error fails or a soft error occurs, the error detection and correction may be repeated. By analyzing the error state in detail, it is possible to identify the malfunctioning functional unit and improve the maintainability of the system.

また、エラーを検出したアドレスと、エラーの訂正の後にさらにエラーを検出したアドレスとを比較することによって、故障部位を分析するので、コンフィグレーションメモリ2のソフトエラーや、構成データメモリ4又はコンフィグレーションメモリ2の故障を的確に判定することができる。   In addition, since the failure part is analyzed by comparing the address where the error is detected with the address where the error is detected after the error is corrected, the soft error in the configuration memory 2, the configuration data memory 4 or the configuration The failure of the memory 2 can be accurately determined.

また、検出したエラーの訂正が不可能と判定した場合、論理回路の再コンフィグレーションを実行した後、再度エラーの訂正の可否を判定することによって、ソフトエラー対策回路6のソフトエラー又はコンフィグレーションメモリ2の故障を判定することができる。   If it is determined that the detected error cannot be corrected, the soft error of the soft error countermeasure circuit 6 or the configuration memory is determined by determining whether the error can be corrected again after executing reconfiguration of the logic circuit. Two failures can be determined.

さらに、論理回路の再コンフィグレーション前にエラーを検出したアドレスの情報及び訂正可否の情報を格納する情報保持部65を設けたので、再コンフィグレーションによって情報保持部65に格納された情報は消去されることなく、検出されたソフトエラーアドレス情報61及び訂正不可情報63を用いて障害を復旧することができる。   Further, since the information holding unit 65 for storing the information of the address where the error is detected before the reconfiguration of the logic circuit and the information on whether correction is possible is provided, the information stored in the information holding unit 65 by the reconfiguration is erased. The failure can be recovered by using the detected soft error address information 61 and the uncorrectable information 63.

<実施例8>
図15A、図15Bは、第8実施例におけるソフトエラー対策回路の処理を説明するフローチャートである。
<Example 8>
15A and 15B are flowcharts for explaining the processing of the soft error countermeasure circuit in the eighth embodiment.

図15A、図15Bに示すフローチャートは、第7実施例で説明したソフトエラーの検出・訂正を行う機能部の故障や、ソフトエラーが発生した機能部を特定する処理を含む。また、第6実施例で説明した運用系と非運用系とを切り替えるかを判定する処理も含む。   The flowcharts shown in FIGS. 15A and 15B include processing for identifying a functional unit that detects and corrects a soft error described in the seventh embodiment and a functional unit in which the soft error has occurred. Also included is a process for determining whether to switch between the active system and the non-active system described in the sixth embodiment.

コンフィグレーションメモリ制御部3は、コンフィグレーションメモリ2にエラーを検出すると、検出されたエラーが訂正可能かを判定する(Step1)。その結果、訂正可能な場合(Step1のYES)、第6実施例の方法を用いて運用系と非運用系とを切り替え(Step10)、切替後に訂正処理を実行し(Step2)、エラー検出フラグとエラー訂正フラグとの両方をアサートし出力する(Step3)。その後、Step3で訂正したエラーアドレスでNミリ秒間に再度エラーを検出するかを監視する(Step11)。Nミリ秒間に同一アドレスでエラーを検出しない場合(Step11のNO)、エラーが正しく訂正できたと判定できる。このため、再設定制御部7は、特定の論理回路部5に対する再設定を実行する。この論理回路部に対する再設定は、前述した第1から第5の何れの実施例の方法を採用してもよい(Step5)。その後、コンフィグレーションメモリ2のソフトエラーであると判定し(Step12)、システムを復旧し、復旧を通知する(Step21)。   When detecting an error in the configuration memory 2, the configuration memory control unit 3 determines whether the detected error can be corrected (Step 1). As a result, when correction is possible (YES in Step 1), the operation system and non-operation system are switched using the method of the sixth embodiment (Step 10), correction processing is executed after switching (Step 2), and the error detection flag and Both the error correction flag and the error correction flag are asserted and output (Step 3). Thereafter, it is monitored whether an error is detected again in N milliseconds with the error address corrected in Step 3 (Step 11). If no error is detected at the same address in N milliseconds (NO in Step 11), it can be determined that the error has been correctly corrected. For this reason, the reset control unit 7 executes reset for the specific logic circuit unit 5. For the resetting of the logic circuit unit, any of the methods of the first to fifth embodiments described above may be adopted (Step 5). Thereafter, it is determined that the configuration memory 2 is a soft error (Step 12), the system is restored, and the restoration is notified (Step 21).

一方、Step11において、Nミリ秒間に同一アドレスでエラーを検出した場合(Step11のYES)、故障部位を特定するためにFPGA1の全体を再コンフィグレーションする(Step13)。そして、再コンフィグレーションの完了後、Nミリ秒間に同一アドレスにエラーを検出するかを監視する(Step14)。   On the other hand, if an error is detected at the same address for N milliseconds in Step 11 (YES in Step 11), the entire FPGA 1 is reconfigured in order to identify the faulty part (Step 13). Then, after completion of reconfiguration, it is monitored whether an error is detected at the same address in N milliseconds (Step 14).

そして、Step14において、Nミリ秒間に同一アドレスでエラーを検出しない場合(Step14のNO)、構成データメモリ4の故障であると判定し(Step15)、構成データメモリ4の故障を通知する(Step22)。一方、Step14において、Nミリ秒間に同一アドレスでエラー検出した場合(Step14のYES)、コンフィグレーションメモリ2の故障であると判定し(Step16)、コンフィグレーションメモリ2の故障を通知する(Step23)。   If no error is detected at the same address for N milliseconds in Step 14 (NO in Step 14), it is determined that the configuration data memory 4 is faulty (Step 15), and the fault of the configuration data memory 4 is notified (Step 22). . On the other hand, if an error is detected at the same address for N milliseconds in Step 14 (YES in Step 14), it is determined that the configuration memory 2 has failed (Step 16), and the failure of the configuration memory 2 is notified (Step 23).

一方、訂正不可能な場合(Step1のNO)、第6実施例の方法を用いて運用系と非運用系とを切り替える(Step17)。その後、コンフィグレーションメモリ制御部3はエラー検出フラグのみをアサートし出力する(Step4)。つまり、エラー訂正フラグは、デアサートし出力しない。その後、再設定制御部7は、構成データメモリ4から回路情報を読み出して、FPGA1の全体を再コンフィグレーションし(Step6)、その後、エラーが検出されたアドレスでNミリ秒間に訂正不可を検出するかを監視する(Step18)。   On the other hand, when correction is impossible (NO in Step 1), the operation system and the non-operation system are switched using the method of the sixth embodiment (Step 17). Thereafter, the configuration memory control unit 3 asserts and outputs only the error detection flag (Step 4). That is, the error correction flag is deasserted and not output. After that, the reset control unit 7 reads the circuit information from the configuration data memory 4, reconfigures the entire FPGA 1 (Step 6), and then detects uncorrectable in N milliseconds at the address where the error is detected. Is monitored (Step 18).

Nミリ秒間に同一アドレスで訂正不可を検出しない場合(Step18のNO)、ソフトエラー対策回路6にソフトエラーが発生したと判定し(Step19)、FPGA1を再起動した後、全ての論理回路部を初期化し(Step7)、システムを復旧し、復旧を通知する(Step24)。   If no uncorrectable error is detected at the same address for N milliseconds (NO in Step 18), it is determined that a soft error has occurred in the soft error countermeasure circuit 6 (Step 19), and after all the logic circuit units are restarted, the FPGA 1 is restarted. Initialization is performed (Step 7), the system is restored, and the restoration is notified (Step 24).

一方、Nミリ秒間に訂正不可を検出した場合(Step18のYES)、コンフィグレーションメモリ2の故障である判定し(Step20)、コンフィグレーションメモリ2の故障を通知する(Step25)。   On the other hand, when it is detected that correction is impossible in N milliseconds (YES in Step 18), it is determined that the configuration memory 2 is faulty (Step 20), and the fault of the configuration memory 2 is notified (Step 25).

なお、図15A、図15Bに示すフローチャートは、図10から図14で説明した判定シーケンスを全て含むが、一部の故障部位のみを検出する判定シーケンスのみを含んでもよい。特に、Step1〜3、5及び10〜16の判定処理と、Step1、4、6〜5及び17〜20の判定処理とは、容易に分離可能で、一方のみを実装することができる。   The flowcharts shown in FIGS. 15A and 15B include all of the determination sequences described with reference to FIGS. 10 to 14, but may include only a determination sequence for detecting only a part of failure. In particular, the determination processes of Steps 1-3, 5, and 10-16 and the determination processes of Steps 1, 4, 6-5, and 17-20 can be easily separated, and only one of them can be implemented.

以上に説明したように、第8実施例では、訂正後のエラー状態を詳しく分析することによって、故障した機能部を容易に特定することができる。   As described above, in the eighth embodiment, the failed functional unit can be easily identified by analyzing the corrected error state in detail.

なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を有するものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加・削除・置換をしてもよい。   The present invention is not limited to the above-described embodiments, and includes various modifications and equivalent configurations within the scope of the appended claims. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and the present invention is not necessarily limited to those having all the configurations described. A part of the configuration of one embodiment may be replaced with the configuration of another embodiment. Moreover, you may add the structure of another Example to the structure of a certain Example. In addition, for a part of the configuration of each embodiment, another configuration may be added, deleted, or replaced.

また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。   In addition, each of the above-described configurations, functions, processing units, processing means, etc. may be realized in hardware by designing a part or all of them, for example, with an integrated circuit, and the processor realizes each function. It may be realized by software by interpreting and executing the program to be executed.

各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。   Information such as programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, or an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.

また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。   Further, the control lines and the information lines are those that are considered necessary for the explanation, and not all the control lines and the information lines that are necessary for the mounting are shown. In practice, it can be considered that almost all the components are connected to each other.

特許請求の範囲に記載した以外の本発明の観点の代表的なものとして、次のものがあげられる。   The following are typical examples of aspects of the present invention other than those described in the claims.

(1)プログラミング可能な論理回路を有するプログラマブルゲートアレイであって、
論理回路が設定されるコンフィグレーションメモリと、
前記コンフィグレーションメモリ内のソフトエラーを正常化する対策回路とを備え、
前記対策回路は、
前記コンフィグレーションメモリに発生するソフトエラーによって発生する二次障害から復旧するためのエラー訂正を実行し、
前記エラー訂正の後に前記論理回路に保持される値を回復することを特徴とするプログラマブルゲートアレイ。
(1) A programmable gate array having a programmable logic circuit,
A configuration memory in which the logic circuit is set, and
A countermeasure circuit for normalizing a soft error in the configuration memory,
The countermeasure circuit is
Execute error correction to recover from a secondary failure caused by a soft error that occurs in the configuration memory,
A programmable gate array for recovering a value held in the logic circuit after the error correction.

(2)前記対策回路は、前記論理回路に保持すべき値を再設定することによって、前記論理回路に保持される値を回復することを特徴とする(1)に記載のプログラマブルゲートアレイ。   (2) The programmable gate array according to (1), wherein the countermeasure circuit recovers a value held in the logic circuit by resetting a value to be held in the logic circuit.

(3)前記対策回路は、前記エラー訂正の後に前記論理回路に保持される値を初期状態に戻すことによって、前記論理回路に保持される値を回復することを特徴とする(1)に記載のプログラマブルゲートアレイ。   (3) The countermeasure circuit recovers the value held in the logic circuit by returning the value held in the logic circuit to an initial state after the error correction. Programmable gate array.

(4)前記対策回路は、
前記ソフトエラーが発生した箇所が前記コンフィグレーションメモリの中で論理回路として使用されている領域かを判定し、
前記ソフトエラーが発生した箇所がコンフィグレーションメモリの中で論理回路として使用されている領域である場合、当該論理回路に保持される値を再設定することを特徴とする(1)から(3)の何れか一つに記載のプログラマブルゲートアレイ。
(4) The countermeasure circuit is
Determine whether the location where the soft error has occurred is an area used as a logic circuit in the configuration memory,
When the location where the soft error occurs is an area used as a logic circuit in the configuration memory, the value held in the logic circuit is reset (1) to (3) The programmable gate array according to any one of the above.

(5)前記対策回路は、
前記ソフトエラーが発生した箇所が所定の領域かを判定し、
前記ソフトエラーが発生した箇所が所定の領域である場合、当該論理回路に保持される値を再設定することを特徴とする(1)から(3)の何れか一つに記載のプログラマブルゲートアレイ。
(5) The countermeasure circuit is
Determine whether the location where the soft error has occurred is a predetermined area,
The programmable gate array according to any one of (1) to (3), wherein when the location where the soft error occurs is a predetermined area, the value held in the logic circuit is reset .

(6)前記論理回路は予め決められた実装領域を使用するものであって、
前記対策回路は、
前記ソフトエラーが発生した箇所が前記実装領域かを判定し、
前記ソフトエラーが発生した箇所が前記実装領域である場合、当該論理回路に保持される値を再設定することを特徴とする(1)から(3)の何れか一つに記載のプログラマブルゲートアレイ。
(6) The logic circuit uses a predetermined mounting area,
The countermeasure circuit is
Determine whether the location where the soft error occurred is the mounting area,
The programmable gate array according to any one of (1) to (3), wherein a value held in the logic circuit is reset when the place where the soft error has occurred is the mounting area .

(7)前記対策回路は、
前記ソフトエラーの訂正が可能かを判定し、
前記ソフトエラーの訂正が可能である場合、(1)から(5)の何れか一つに記載の方法によって前記論理回路に保持される値を再設定し、
前記ソフトエラーの訂正が不可能である場合、全ての前記論理回路を初期化することを特徴とする(1)から(5)の何れか一つに記載のプログラマブルゲートアレイ。
(7) The countermeasure circuit is
Determine whether the soft error can be corrected,
When the soft error can be corrected, the value held in the logic circuit is reset by the method according to any one of (1) to (5),
The programmable gate array according to any one of (1) to (5), wherein when the soft error cannot be corrected, all the logic circuits are initialized.

1 FPGA
2 コンフィグレーションメモリ
3 コンフィグレーションメモリ制御部
4 構成データメモリ
5 論理回路部群
6 ソフトエラー対策回路
7 再設定制御部
8 再設定データメモリ
9A アドレス線
9B データ線
10 基本回路モジュール
11 組合せ論理部
12 フリップフロップ
13 設定部
14 エラー検出・訂正・該当フラグ
15 読出しアドレス及び制御信号
16 アドレス及び再設定データ
17 アドレスと制御信号
18 再設定データ
19〜22 論理回路部
23 条件保持信号
24 条件信号
25 タイミング信号
26 クロック
27 配線接続交点
28 パストランジスタ
29 リセット
30 使用領域
31 未使用領域
32 エラーアドレス
33 アドレステーブル
34 論理回路部
35 再設定が必要な特定の論理回路部
40 通信装置A
41 通信装置B
42 運用系主信号
43 非運用系主信号
44 運用系装置
45 非運用系装置
46 エラー検出信号
47 セレクタ制御部
48 セレクタ制御信号
49 セレクタ
50 警報・故障情報
51 警報表示・通知部
60 コンフィグレーション完了情報
61 ソフトエラーアドレス情報
62 ソフトエラーアドレス保持情報
63 訂正不可情報
64 訂正不可保持情報
1 FPGA
2 Configuration Memory 3 Configuration Memory Control Unit 4 Configuration Data Memory 5 Logic Circuit Group 6 Soft Error Countermeasure Circuit 7 Reset Control Unit 8 Reset Data Memory 9A Address Line 9B Data Line 10 Basic Circuit Module 11 Combinational Logic Unit 12 Flip-flop 13 Setting section 14 Error detection / correction / corresponding flag 15 Read address and control signal 16 Address and reset data 17 Address and control signal 18 Reset data 19 to 22 Logic circuit section 23 Condition holding signal 24 Condition signal 25 Timing signal 26 Clock 27 Wire connection intersection 28 Pass transistor 29 Reset 30 Used area 31 Unused area 32 Error address 33 Address table 34 Logic circuit section 35 Specific logic circuit section 40 that needs to be reset Communication apparatus A
41 Communication device B
42 Operational main signal 43 Non-operational main signal 44 Operational system 45 Non-operational apparatus 46 Error detection signal 47 Selector control unit 48 Selector control signal 49 Selector 50 Alarm / failure information 51 Alarm display / notification unit 60 Configuration completion information 61 Soft error address information 62 Soft error address holding information 63 Uncorrectable information 64 Uncorrectable holding information

Claims (8)

プログラミング可能な論理回路を有するプログラマブルゲートアレイであって、
前記論理回路が設定されるコンフィグレーションメモリと、
前記コンフィグレーションメモリ内のソフトエラーを正常化する対策回路とを備え、
前記プログラマブルゲートアレイで構成される現用系の回路及び予備系の回路によって冗長構成を組み、
前記対策回路は、
前記現用系の回路を構成する前記コンフィグレーションメモリに発生するソフトエラーの検出を契機として、前記現用系の回路と前記予備系の回路とを切り替え、
前記検出されたソフトエラーによって発生する二次障害から復旧するためのエラーの訂正を実行し、
前記エラーの訂正の後に前記論理回路に保持される値を回復することを特徴とするプログラマブルゲートアレイ。
A programmable gate array having a programmable logic circuit comprising:
A configuration memory in which the logic circuit is set;
A countermeasure circuit for normalizing a soft error in the configuration memory,
A redundant configuration is constructed by a working circuit and a standby circuit configured by the programmable gate array,
The countermeasure circuit is
Triggered by detection of a soft error that occurs in the configuration memory that constitutes the working circuit, the working circuit and the standby circuit are switched,
Performing error correction to recover from a secondary failure caused by the detected soft error;
A programmable gate array, wherein a value held in the logic circuit is recovered after the error is corrected.
請求項1に記載のプログラマブルゲートアレイであって、
前記対策回路は、前記エラーを検出したアドレスと、前記エラーの訂正の後にさらにエラーを検出したアドレスとを比較することによって、故障部位を分析することを特徴とするプログラマブルゲートアレイ。
The programmable gate array of claim 1,
The programmable circuit array characterized in that the countermeasure circuit analyzes a failed part by comparing an address where the error is detected with an address where an error is further detected after the error is corrected.
請求項1に記載のプログラマブルゲートアレイであって、
前記対策回路は、
検出したエラーの訂正の可否を判定し、
前記検出したエラーの訂正が不可能と判定した場合、前記論理回路の再コンフィグレーションを実行し、その後、再度エラーの訂正の可否を判定することによって故障部位を分析することを特徴とするプログラマブルゲートアレイ。
The programmable gate array of claim 1,
The countermeasure circuit is
Determine whether the detected error can be corrected,
When it is determined that correction of the detected error is impossible, reconfiguration of the logic circuit is performed, and then the failure part is analyzed by determining whether the error can be corrected again. array.
請求項2又は3に記載のプログラマブルゲートアレイであって、
前記対策回路は、
前記論理回路の再コンフィグレーション前にエラーを検出したアドレスの情報及び訂正可否の情報を格納する記憶部に接続されており、
前記再コンフィグレーションの完了後に、前記記憶部に格納された情報を取得することを特徴とするプログラマブルゲートアレイ。
A programmable gate array according to claim 2 or 3,
The countermeasure circuit is
It is connected to a storage unit that stores information on an address where an error is detected before reconfiguration of the logic circuit and information on whether correction is possible,
A programmable gate array, wherein information stored in the storage unit is acquired after completion of the reconfiguration.
プログラミング可能な論理回路を含むプログラマブルゲートアレイを有する電子装置であって、
前記プログラマブルゲートアレイで構成される二つの回路によって、現用系及び予備系による冗長構成を組み、

前記プログラマブルゲートアレイは、論理回路が設定されるコンフィグレーションメモリと、前記コンフィグレーションメモリ内のソフトエラーを正常化する対策回路とを有し、
前記対策回路は、
現用系の回路を構成する前記コンフィグレーションメモリに発生するソフトエラーの検出を契機として、前記現用系の回路と予備系の回路とを切り替え、
前記検出されたソフトエラーによって発生する二次障害から復旧するためのエラーの訂正を実行し、
前記エラーの訂正の後に前記論理回路に保持される値を回復することを特徴とする電子装置。
An electronic device having a programmable gate array including programmable logic circuitry,
With the two circuits configured by the programmable gate array, a redundant configuration by the active system and the standby system is assembled,

The programmable gate array has a configuration memory in which a logic circuit is set, and a countermeasure circuit that normalizes a soft error in the configuration memory,
The countermeasure circuit is
Triggered by the detection of a soft error that occurs in the configuration memory that constitutes the working circuit, the working circuit and the standby circuit are switched,
Performing error correction to recover from a secondary failure caused by the detected soft error;
An electronic device for recovering a value held in the logic circuit after correcting the error.
請求項5に記載の電子装置であって、
前記対策回路は、前記エラーを検出したアドレスと、前記エラーの訂正の後にさらにエラーを検出したアドレスとを比較することによって、故障部位を分析することを特徴とする電子装置。
The electronic device according to claim 5,
The electronic device according to claim 1, wherein the countermeasure circuit analyzes a failed part by comparing an address where the error is detected with an address where the error is further detected after the error is corrected.
請求項5に記載の電子装置であって、
前記対策回路は、
検出したエラーの訂正の可否を判定し、
前記検出したエラーの訂正が不可能と判定した場合、前記論理回路の再コンフィグレーションを実行し、その後、再度エラーの訂正の可否を判定することによって故障部位を分析することを特徴とする電子装置。
The electronic device according to claim 5,
The countermeasure circuit is
Determine whether the detected error can be corrected,
If it is determined that the detected error cannot be corrected, the electronic device is characterized by reconfiguring the logic circuit and then analyzing again the failure site by determining whether the error can be corrected again. .
請求項6又は7に記載の電子装置であって、
前記対策回路は、
前記論理回路の再コンフィグレーション前にエラーを検出したアドレスの情報及び訂正可否の情報を格納する記憶部に接続されており、
前記再コンフィグレーションの完了後に、前記記憶部に格納された情報を取得することを特徴とする電子装置。
The electronic device according to claim 6 or 7,
The countermeasure circuit is
It is connected to a storage unit that stores information on an address where an error is detected before reconfiguration of the logic circuit and information on whether correction is possible,
An electronic device that acquires information stored in the storage unit after the reconfiguration is completed.
JP2014080985A 2014-04-10 2014-04-10 Field programmable gate array and electronic apparatus Pending JP2015201814A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014080985A JP2015201814A (en) 2014-04-10 2014-04-10 Field programmable gate array and electronic apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014080985A JP2015201814A (en) 2014-04-10 2014-04-10 Field programmable gate array and electronic apparatus

Publications (1)

Publication Number Publication Date
JP2015201814A true JP2015201814A (en) 2015-11-12

Family

ID=54552721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014080985A Pending JP2015201814A (en) 2014-04-10 2014-04-10 Field programmable gate array and electronic apparatus

Country Status (1)

Country Link
JP (1) JP2015201814A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552258B2 (en) 2016-09-16 2020-02-04 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device, electronic device, and driving method thereof

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053873A (en) * 2004-08-16 2006-02-23 Fujitsu Ltd Function device, function maintenance method and function maintenance program
JP2006262227A (en) * 2005-03-18 2006-09-28 Konica Minolta Holdings Inc Hardware configuration device
US20070283193A1 (en) * 2006-04-21 2007-12-06 Altera Corporation Soft error location and sensitivity detection for programmable devices
JP2009017010A (en) * 2007-07-02 2009-01-22 Nec Electronics Corp Reconfigurable device
JP2010134678A (en) * 2008-12-04 2010-06-17 Nec Corp Electronic device, failure detection method for electronic device and failure recovery method for electronic device
JP2012053778A (en) * 2010-09-02 2012-03-15 Toshinori Sueyoshi Error correction circuit of programmable logic circuit
JP2013187699A (en) * 2012-03-07 2013-09-19 Fujitsu Telecom Networks Ltd Fpga configuration processing control circuit

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006053873A (en) * 2004-08-16 2006-02-23 Fujitsu Ltd Function device, function maintenance method and function maintenance program
JP2006262227A (en) * 2005-03-18 2006-09-28 Konica Minolta Holdings Inc Hardware configuration device
US20070283193A1 (en) * 2006-04-21 2007-12-06 Altera Corporation Soft error location and sensitivity detection for programmable devices
JP2009017010A (en) * 2007-07-02 2009-01-22 Nec Electronics Corp Reconfigurable device
JP2010134678A (en) * 2008-12-04 2010-06-17 Nec Corp Electronic device, failure detection method for electronic device and failure recovery method for electronic device
JP2012053778A (en) * 2010-09-02 2012-03-15 Toshinori Sueyoshi Error correction circuit of programmable logic circuit
JP2013187699A (en) * 2012-03-07 2013-09-19 Fujitsu Telecom Networks Ltd Fpga configuration processing control circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552258B2 (en) 2016-09-16 2020-02-04 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device, electronic device, and driving method thereof

Similar Documents

Publication Publication Date Title
US7589558B1 (en) Method and apparatus for configuring an integrated circuit
US8099625B1 (en) Self-checking and self-correcting internal configuration port circuitry
CN101930052B (en) Online detection fault-tolerance system of FPGA (Field programmable Gate Array) digital sequential circuit of SRAM (Static Random Access Memory) type and method
US10078565B1 (en) Error recovery for redundant processing circuits
KR101358776B1 (en) Apparatus and method for recording reboot reason of equipment
JP4643977B2 (en) Programmable logic device, information processing apparatus, and control method for programmable logic device
US9337838B2 (en) Programmable circuit device and configuration information restoration method
US9575862B1 (en) Integrated circuits with error handling capabilities
Agiakatsikas et al. Reconfiguration control networks for TMR systems with module-based recovery
US8522091B1 (en) Prioritized detection of memory corruption
JP6408482B2 (en) Programmable device and electronic system apparatus using the same
Ebrahim et al. On enhancing the reliability of internal configuration controllers in FPGAs
CN107273240B (en) Single event upset protection method for satellite-borne phased array TR (transmitter-receiver) assembly
CN103389921A (en) Signal processing circuit and testing device employing the signal processing circuit
US7626415B1 (en) Method and apparatus for configuring an integrated circuit
Kastil et al. Dependability analysis of fault tolerant systems based on partial dynamic reconfiguration implemented into FPGA
Bolchini et al. A reliable reconfiguration controller for fault-tolerant embedded systems on multi-FPGA platforms
EP2641174A1 (en) Classifying a criticality of a soft error and mitigating the soft error based on the criticality
JP2015201814A (en) Field programmable gate array and electronic apparatus
Miculka et al. Methodology for fault tolerant system design based on fpga into limited redundant area
Anjankar et al. Fault Tolerant and Correction System Using Triple Modular Redundancy
Gericota et al. A self-healing real-time system based on run-time self-reconfiguration
JP2015201813A (en) Field programmable gate array
US9542266B2 (en) Semiconductor integrated circuit and method of processing in semiconductor integrated circuit
Beningo A review of watchdog architectures and their application to Cubesats

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180306