JP2015201814A - Field programmable gate array and electronic apparatus - Google Patents
Field programmable gate array and electronic apparatus Download PDFInfo
- 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
Links
Images
Landscapes
- Logic Circuits (AREA)
- Hardware Redundancy (AREA)
Abstract
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.
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
前述したように、従来の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.
本発明に係るソフトエラー対策回路の実施例を、構成図及びフローチャートを用いて説明する。 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
構成データメモリ4に格納された回路情報によって、コンフィグレーションメモリ2内に論理回路部5が構成される。なお、この論理回路部は、その論理回路に関連する配線、クロックライン、エンベデッドに構成されるハードウェア・マクロ等、コンフィグレーションメモリ2のプログラミングによって制御される機能を全て含む。
The circuit information stored in the configuration data memory 4 constitutes a logic circuit unit 5 in the
第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
コンフィグレーションメモリ制御部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
第1実施例では、コンフィグレーションメモリ制御部3から出力される訂正フラグをトリガに、再設定制御部7が論理回路部5に対して再設定を行う。
In the first embodiment, the
以下に、再設定制御部7の基本動作を説明する。
The basic operation of the
図2は、再設定制御部7と論理回路部5との接続を示す構成図である。
FIG. 2 is a configuration diagram showing the connection between the
図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
再設定制御部7は、エラー訂正フラグ14を受信すると、受信したエラー訂正フラグ14から、ビットエラーが訂正可能又は不可能である箇所のアドレスを抽出し、抽出したコンフィグレーションメモリ2のアドレスから再設定データメモリ8のアドレスを特定する。そして、再設定制御部7は、再設定データメモリ8に対して、読出しアドレス及び制御信号15を出力し、論理回路部5のフリップフロップ12を特定するためのアドレス及び再設定データ16を読み出す。さらに、再設定制御部7は、設定部13に対して、フリップフロップ12を特定するためのアドレスと制御信号17を出力し、フリップフロップ12に再設定データ18を書き込む。
Upon receiving the
第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
なお、第1実施例では、論理回路部5中のフリップフロップ12に対する再設定を制御する回路について説明したが、本実施例によるソフトエラー対策回路6を用いることによって、FPGA1に搭載される内蔵メモリや、その他エンベデッドに構成されるハードウェア・マクロなどにも同様の再設定をすることができる。
In the first embodiment, the circuit for controlling the resetting of the flip-
第1実施例では、図1に示すように、再設定制御部7はコンフィグレーションメモリ2内に構成されている。再設定制御部7をコンフィグレーションメモリ2で構成することによって、システムが求める再設定方法に応じて柔軟に回路を構成できる。
In the first embodiment, the
コンフィグレーションメモリ制御部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
以上に説明したように、従来の検出・訂正回路では、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
<実施例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
なお、条件信号は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
ここで、図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
図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
第1実施例では、アドレスによって、論理回路部5中の特定のフリップフロップ12に対してデータを再設定したが、フリップフロップ12に個々に指示を与えるためには、図1に示すように、対象とするアドレス及び再設定データ16を再設定データメモリ8に格納する必要がある。また、アドレスをデコードするための設定部13が論理回路部5に必要である。また、再設定を完了するまでにも時間がかかる。
In the first embodiment, data is reset for a specific flip-
これに対し、第2実施例では、論理回路部21のフリップフロップを初期状態に戻すのみだけでよいため、論理回路部21の付帯回路が不要であり、短時間で再設定を完了できることが特徴である。
On the other hand, in the second embodiment, it is only necessary to return the flip-flop of the
初期化の対象範囲は、図3で説明した配線接続交点27のように、ソフトエラーはコンフィグレーションメモリ2中のどこでも発生する可能性があるため、二次障害の波及範囲を特定することは難しい。このため、システムの仕様に応じて、一部の論理回路部のみを初期化してもよく、FPGA全体の論理回路部をリセットしてもよい。例えば、複数のリセット線を設け、各論理回路部が一つのリセット線に接続されている場合、一部のリセット線のみにリセット信号を送信し、一部の論理回路部のみを初期化してもよい。
As for the range of initialization, since the soft error may occur anywhere in the
以上に説明したように、第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
図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
第3実施例では、コンフィグレーションメモリ2内の領域が使用されているかの情報を、例えばビットマップ形式で、構成データメモリ4に格納する。このビットマップは、構成データメモリ4から回路情報を読み出してコンフィグレーションメモリ2に設定する際に、同時に設定するとよい。そして、このビットマップを参照することによって、論理回路に使用されている使用領域30と論理回路に使用されていない未使用領域31とを特定することができる。
In the third embodiment, information indicating whether the area in the
コンフィグレーションメモリ制御部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
一般に、FPGA1は、プログラミングの自由度を広げるために、プログラミングされる論理回路部の規模の数倍〜数10倍のリソースを有し、膨大なコンフィグレーションメモリ2の領域が確保される。しかし、実際に使用される使用領域の割合は未使用領域に対して小さいことが多い。このため、第3実施例のように該当フラグ14を利用することによって、再設定を行う範囲を少なくし、システムの停止時間を短縮することができる。
In general, the
<実施例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
また、第4実施例では、再設定データメモリ8がコンフィグレーションメモリ2の領域に区分されており、各領域毎に、論理回路部5のフリップフロップ12を特定するためのアドレス及び当該フリップフロップ12を再設定するための再設定データ16を格納する。
In the fourth embodiment, the
また、再設定制御部7は、アドレステーブル33を格納する。アドレステーブル33は、コンフィグレーションメモリ2内に設けられた領域と、コンフィグレーションメモリ2のアドレスとの対応関係を保持する。アドレステーブル33を参照することによって、コンフィグレーションメモリ2のアドレスに該当する領域を特定することができる。
The
第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
例えば、コンフィグレーションメモリ制御部3は、該当フラグ14を出力するとともに、エラーが発生したアドレス32を出力する。再設定制御部7は、アドレステーブル33を参照して、コンフィグレーションメモリ制御部3から出力されたエラーアドレス32が該当する領域を判定し、該当する領域のアドレス・再設定データ16を再設定データメモリ8から読み出し、FPGA1内部の再設定が必要な特定の論理回路部35に対してのみ再設定をすることができる。
For example, the configuration memory control unit 3 outputs the
コンフィグレーションメモリ制御部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
また、設計時に予め再設定が必要なアドレスが決まっているので、当該決まっているアドレスの範囲で、データを再設定すればよいので、再設定を行う範囲を少なくし、システムの停止時間を短縮することができる。 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
図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
第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
以上に説明したように第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
セレクタ制御部47は、運用系装置44及び非運用系装置45から出力されたエラー検出信号46を監視し、運用系装置44からのエラー検出信号46を検出した場合、セレクタ制御信号48をセレクタ49に通知し、運用系主信号42から非運用系主信号43へセレクタ49を切り替える。
The
非運用系主信号43へ切り替えることによって、ソフトエラーを訂正し、データの再設定が完了するより早く、システム障害を復旧することができる。
By switching to the non-operational
ソフトエラーが発生した運用系装置44は、運用系装置44から非運用系装置45へ切り替えた後、ソフトエラーを訂正し、データを再設定して、非運用系装置として継続してシステム運用することが可能になる。
The
一般的な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
ソフトエラー対策回路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 /
前述した第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
以上に説明したように、第6実施例によると、現用系の回路を構成するコンフィグレーションメモリ2に発生するソフトエラーの検出を契機として、現用系の回路(運用系装置44)と予備系の回路(非運用系装置45)とを切り替え、検出されたソフトエラーによって発生する二次障害から復旧するためのエラーの訂正を実行し、エラーの訂正の後に論理回路に保持される値を回復するので、システムを規定内の時間で迅速に復旧することができる。
As described above, according to the sixth embodiment, the detection of the soft error occurring in the
<実施例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
コンフィグレーションメモリ制御部3は、エラーの訂正後、コンフィグレーションメモリを1回スキャンする間に、同じアドレスで再度エラーを検出するかによってコンフィグレーションメモリ2のソフトエラーを判定する。
The configuration memory control unit 3 determines a soft error in the
コンフィグレーションメモリ制御部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
コンフィグレーションメモリ制御部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
警報表示・通知部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
コンフィグレーションメモリ制御部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
コンフィグレーションメモリ制御部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
ソフトエラー対策回路6は、故障箇所を特定するために、FPGA1を再コンフィグレーションする(S117)。再コンフィグレーションの完了後、コンフィグレーションメモリ制御部3は情報保持部65へコンフィグレーション完了情報60を送信する(S118)。
The soft error countermeasure circuit 6 reconfigures the
情報保持部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 /
また、コンフィグレーションメモリ制御部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
再コンフィグレーションが完了するまでの手順は、図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
警報表示・通知部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
コンフィグレーションメモリ制御部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
情報保持部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 /
警報表示・通知部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
再コンフィグレーションが完了するまでの手順は、図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
警報表示・通知部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
情報保持部65は、FPGA1やプロセッサで構成することができる。情報保持部65をFPGA1で実現する場合、ソフトエラー対策回路6が必要となるため、図9に示す回路を搭載する。再コンフィグレーションされるFPGA1と情報保持部65との両方のソフトエラー対策回路6に同時にソフトエラーが発生すると、第7実施例の方法を実現することができない。しかし、両方のソフトエラー対策回路6で同時にソフトエラーが発生する確率は非常に小さいため、実用上の問題はない。
The information holding unit 65 can be configured by an
以上に説明したように、第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
また、検出したエラーの訂正が不可能と判定した場合、論理回路の再コンフィグレーションを実行した後、再度エラーの訂正の可否を判定することによって、ソフトエラー対策回路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
一方、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
そして、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
一方、訂正不可能な場合(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
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
一方、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
なお、図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
以上に説明したように、第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
41 Communication device B
42 Operational
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.
前記対策回路は、前記エラーを検出したアドレスと、前記エラーの訂正の後にさらにエラーを検出したアドレスとを比較することによって、故障部位を分析することを特徴とするプログラマブルゲートアレイ。 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.
前記対策回路は、
検出したエラーの訂正の可否を判定し、
前記検出したエラーの訂正が不可能と判定した場合、前記論理回路の再コンフィグレーションを実行し、その後、再度エラーの訂正の可否を判定することによって故障部位を分析することを特徴とするプログラマブルゲートアレイ。 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.
前記対策回路は、
前記論理回路の再コンフィグレーション前にエラーを検出したアドレスの情報及び訂正可否の情報を格納する記憶部に接続されており、
前記再コンフィグレーションの完了後に、前記記憶部に格納された情報を取得することを特徴とするプログラマブルゲートアレイ。 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.
前記対策回路は、前記エラーを検出したアドレスと、前記エラーの訂正の後にさらにエラーを検出したアドレスとを比較することによって、故障部位を分析することを特徴とする電子装置。 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.
前記対策回路は、
検出したエラーの訂正の可否を判定し、
前記検出したエラーの訂正が不可能と判定した場合、前記論理回路の再コンフィグレーションを実行し、その後、再度エラーの訂正の可否を判定することによって故障部位を分析することを特徴とする電子装置。 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. .
前記対策回路は、
前記論理回路の再コンフィグレーション前にエラーを検出したアドレスの情報及び訂正可否の情報を格納する記憶部に接続されており、
前記再コンフィグレーションの完了後に、前記記憶部に格納された情報を取得することを特徴とする電子装置。 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.
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)
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)
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 |
-
2014
- 2014-04-10 JP JP2014080985A patent/JP2015201814A/en active Pending
Patent Citations (7)
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)
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 |