JP6282482B2 - プログラマブル回路装置、コンフィギュレーション情報修復方法 - Google Patents

プログラマブル回路装置、コンフィギュレーション情報修復方法 Download PDF

Info

Publication number
JP6282482B2
JP6282482B2 JP2014028797A JP2014028797A JP6282482B2 JP 6282482 B2 JP6282482 B2 JP 6282482B2 JP 2014028797 A JP2014028797 A JP 2014028797A JP 2014028797 A JP2014028797 A JP 2014028797A JP 6282482 B2 JP6282482 B2 JP 6282482B2
Authority
JP
Japan
Prior art keywords
circuit
configuration
configuration information
programmable
memory
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.)
Expired - Fee Related
Application number
JP2014028797A
Other languages
English (en)
Other versions
JP2015154417A (ja
Inventor
真 佐圓
真 佐圓
阪田 健
健 阪田
雅司 大川
雅司 大川
雄介 菅野
雄介 菅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014028797A priority Critical patent/JP6282482B2/ja
Priority to US14/593,029 priority patent/US9337838B2/en
Publication of JP2015154417A publication Critical patent/JP2015154417A/ja
Application granted granted Critical
Publication of JP6282482B2 publication Critical patent/JP6282482B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/007Fail-safe circuits
    • H03K19/0075Fail-safe circuits by using two redundant chains
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • G06F11/184Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality
    • G06F11/185Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality and the voting is itself performed redundantly
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17764Structural details of configuration resources for reliability

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Description

本発明は、プログラマブル回路装置、コンフィギュレーション情報修復方法製造後に回路構成をプログラムできる半導体集積回路を含むプログラマブル回路装置、及び、プログラマブル回路装置のコンフィギュレーション情報修復方法に関するものである。
FPGA(フィールドプログラマブルゲートアレイ)等の回路構成をプログラムできる半導体集積回路であるプログラマブル回路を用いると、使用者はLSIの製造をせずに、独自回路ブロックを持つ集積回路を短期で構築できる。プログラマブル回路は、回路機能を専用の内部メモリにコンフィギュレーションすることで機能を実現するものである。以下では、この専用のメモリをコンフィギュレーションメモリと記載する。
プログラマブル回路は、独自回路を構築できる利点の一方で、放射線によりコンフィギュレーションメモリの情報が破壊される放射線ソフトエラー等の故障が発生する場合があり、高信頼を必要とする装置への適用に向けては課題となる。特に、このコンフィギュレーションメモリが、SRAMで実装されるLSIではこの点が顕著である場合が想定される。
プログラマブル回路に発生した放射線ソフトエラー等による故障を修復する方法として、特許文献1で示されているコンフィギュレーションメモリの情報を元通りに修正し故障した回路を再コンフィギュレーションする方法がある。特許文献1では、回路を多重化した構成において、故障が発生した回路を再コンフィギュレーションし動作を再開させるための手段が開示されている。
特開2013−46181号公報
多くの装置にとって誤出力なく動作する稼働時間の割合を向上させることが求められる。稼働率向上のためには、誤出力の確率を減らすことと共に、故障を修復する時間の短縮が必要である。
放射線ソフトエラー等によるプログラマブル回路の故障を再コンフィギュレーションにより修復する際には、この再コンフィギュレーション時間の短縮が重要である。特に、端子数や回路規模などの制約から3重化など十分な多重化ができない回路部分は、短時間での修復がもとめられる。これはプログラマブル回路の故障中はそれを搭載する装置も通常の稼動が困難であるためである。3重化された回路においても、その出力信号をまとめチップの端子や他の回路に接続するための多数決回路は脆弱な箇所となる。なお、脆弱とは、例えば、多重化していない、及び/又は、故障により出力が変わる等のように出力に影響を与えること等を意味する。また十分な多重化がされている場合においても、複数個所の同時故障をさけるために、回路を再構成する時間を短くすることは同様に重要である。
以上のように回路の再コンフィギュレーションを用いてプログラマブル回路を高い稼働率で動作させるためには、それに要する時間の短縮が課題である。しかしながら、上記の文献においては再コンフィギュレーション時間を短くするための手段については開示されていない。
本発明は、以上の点に鑑み、プログラマブル回路のコンフィギュレーションメモリを短時間で修復することを目的とする。
本発明の第1の解決手段によると、
プログラマブル回路装置であって、
同一の機能を有し同一の処理を行う複数の機能回路を有する多重化ブロックと、
故障により出力が変化する又は故障により出力に重大な影響を与える又は多重化されていなく、自回路の故障の診断結果及び前記複数の機能回路の出力の比較結果を通知する冗長化用回路と、
前記冗長化用回路からの前記診断結果及び前記比較結果の通知により、コンフィギュレーション情報の複写を行うコンフィギュレーション制御回路と、
前記複数の機能回路に関する機能部コンフィギュレーション情報と、前記冗長化用回路に関する前記冗長化用回路コンフィギュレーション情報と、前記機能部コンフィギュレーション情報及び前記冗長化用回路コンフィギュレーション情報を含み前記プログラマブル回路装置内の各回路に対するコンフィギュレーション情報を含むプログラマブル回路コンフィギュレーション情報とを格納する不揮発メモリと、
前記不揮発メモリより読出し速度が速く、前記不揮発メモリから、前記機能部コンフィギュレーション情報を予め複写した揮発メモリと、
前記揮発メモリより読出し速度が速く、前記不揮発メモリから、前記冗長化用回路コンフィギュレーション情報を予め複写した内蔵メモリと、
を備え、
前記冗長化用回路は、自回路の故障を検出すると、前記コンフィギュレーション制御回路に前記診断結果を通知し、
前記コンフィギュレーション制御回路は、前記冗長化用回路コンフィギュレーション情報を前記内蔵メモリから読出し、該情報を前記冗長化用回路内のコンフィギュレーションメモリに書き込むことで前記冗長化用回路を修復し、
前記冗長化用回路は、前記複数の機能回路の信号の不一致を検出すると、前記コンフィギュレーション制御回路に前記比較結果を通知し、
前記コンフィギュレーション制御回路は、前記機能部コンフィギュレーション情報を前記揮発メモリから読出し、該情報を前記複数の機能回路の各コンフィギュレーションメモリに書き込むことで前記複数の機能回路を修復する、
プログラマブル回路装置が提供される。
本発明の第2の解決手段によると、
プログラマブル回路装置におけるコンフィギュレーション情報修復方法であって、
前記プログラマブル回路装置は、
同一の機能を有し同一の処理を行う複数の機能回路を有する多重化ブロックと、
故障により出力が変化する又は故障により出力に重大な影響を与える又は多重化されていなく、自回路の故障の診断結果及び前記複数の機能回路の出力の比較結果を通知する冗長化用回路と、
前記冗長化用回路からの前記診断結果及び前記比較結果の通知により、コンフィギュレーション情報の複写を行うコンフィギュレーション制御回路と、
を備え、

不揮発メモリに、前記複数の機能回路に関する機能部コンフィギュレーション情報と、前記冗長化用回路に関する前記冗長化用回路コンフィギュレーション情報と、前記機能部コンフィギュレーション情報及び前記冗長化用回路コンフィギュレーション情報を含み前記プログラマブル回路装置内の各回路に対するコンフィギュレーション情報を含むプログラマブル回路コンフィギュレーション情報とを格納し、
前記不揮発メモリより読出し速度が速い揮発メモリに、前記不揮発メモリから、前記機能部コンフィギュレーション情報を予め複写し、
前記揮発メモリより読出し速度が速い内蔵メモリに、前記不揮発メモリから、前記冗長化用回路コンフィギュレーション情報を予め複写し、
前記冗長化用回路は、自回路の故障を検出すると、前記コンフィギュレーション制御回路に前記診断結果を通知し、
前記コンフィギュレーション制御回路は、前記冗長化用回路コンフィギュレーション情報を前記内蔵メモリから読出し、該情報を前記冗長化用回路内のコンフィギュレーションメモリに書き込むことで前記冗長化用回路を修復し、
前記冗長化用回路は、前記複数の機能回路の信号の不一致を検出すると、前記コンフィギュレーション制御回路に前記比較結果を通知し、
前記コンフィギュレーション制御回路は、前記機能部コンフィギュレーション情報を前記揮発メモリから読出し、該情報を前記複数の機能回路の各コンフィギュレーションメモリに書き込むことで前記複数の機能回路を修復する、
コンフィギュレーション情報修復方法が提供される。
本発明は、以上の点に鑑み、プログラマブル回路のコンフィギュレーションメモリを短時間で修復することができる。
本発明の実施の形態1における放射線等の耐性を有するプログラマブル回路を含む装置の構成を示す図である。 本発明の実施の形態1における回路コンフィギュレーション情報の内容を示す図である。 本発明の実施の形態1において放射線等による故障発生時の制御フローを示す図である。 本発明の実施の形態2における放射線等の耐性を有するプログラマブル回路を含む装置の構成を示す図である。 本発明の実施の形態2において回路コンフィギュレーション情報の設定を行う際の制御フローを示す図である。 本発明の実施の形態3における放射線等の耐性を有するプログラマブル回路を含む装置の構成を示す図である。 本発明の実施の形態3における回路コンフィギュレーション情報の内容を示す図である。 本発明の実施の形態3において放射線等による故障発生時の制御フローを示す図である。 本発明の実施の形態4の多数決回路の構成を示す図である。 本発明の実施の形態5において、多数決回路を用いて機能回路の3重化を行う構成を示す図である。 本発明の実施の形態3における放射線等の耐性を有するプログラマブル回路を含む装置の変形例を示す図である。
以下に図面を参照しつつ本発明の実施の形態を説明する。

A.概要

本願において開示される発明のうち代表的な実施の形態の概要を挙げれば次の通りである。
プログラマブル回路の再コンフィギュレーション時間の短縮のためには、回路コンフィギュレーション情報をメモリから読出す時間を短縮することが効果的である。
プログラマブル回路を含む装置において、プログラマブル回路はコンフィギュレーション情報が記憶された不揮発メモリとこの不揮発メモリより読出し速度が速い別のメモリに接続され、このプログラマブル回路はコンフィギュレーションメモリ制御回路と、このコンフィギュレーションメモリ制御回路から前記不揮発メモリと前記の別のメモリへの読出しを行うための信号線群を有する。そのうえで、高速な故障の修復が必要な一部の回路コンフィギュレーション情報をこの読出し速度の速い別のメモリに複写しておく。これによって、放射線ソフトエラー等により破壊された回路コンフィギュレーション情報の修復時間の短縮が可能となる。
B.実施の形態
[実施の形態1]
図1は本発明のひとつの実施の形態におけるプログラマブル回路の構成図を示すものである。本装置は、プログラマブル回路FPGAを含み、定められた情報処理を行いつつ、プログラマブル回路の放射線等による回路故障を監視し故障発生時にはその修復(修正、修理、復旧等)を行う。なお、本実施の形態では、一例として、放射線による故障について説明するがこれに限らず、本発明及び/又は本実施の形態は、様々な回路故障に対して適用可能である。この回路故障とは、プログラマブル回路内部のコンフィギュレーションメモリのビット反転が発生したことにより、プログラマブル回路の動作が本来の動作と異なる状態となった故障をさす。故障の修復は、コンフィギュレーションメモリの情報を、コンフィギュレーションメモリ以外のメモリから読み出した正しい回路情報で書き換えることで行う。
本構成では、プログラマブル回路FPGAに、DRAM等の揮発メモリVMと、フラッシュメモリ等の不揮発メモリNVMと、プロセッサ回路や通信用回路などの機能デバイスFDが接続される。本実施の形態においては、プログラマブル回路による揮発メモリの情報読出し速度は、プログラマブル回路による不揮発メモリの情報読出し速度より大きいものとする。プログラマブル回路は、内部の回路に故障が発生した場合にそれを検知し自己修復する機能を有し、揮発メモリVMへのアクセスを行う揮発メモリアクセス回路VMIF、不揮発メモリNVMへのアクセスを行う不揮発メモリアクセス回路NVMIF、機能デバイスFDへのアクセスを行う外部通信回路FDIF、プロセッサなど機能回路FB、機能回路FBの出力結果を比較する比較回路CMP、複数(この例では、3つ)の機能回路FBの出力信号の多数決処理を行う多数決回路VOT、コンフィギュレーションメモリ制御回路CRMCを有しプログラマブル回路のコンフィグレーションを制御するコンフィギュレーション制御回路RCTR、回路診断を行う回路TST、コンフィギュレーションメモリCR、処理データやプログラムなどを格納する内蔵メモリBRを含む。コンフィギュレーションメモリCR、内蔵メモリBRは、各回路ブロックに分散して含まれる。
故障修復の際のコンフィギュレーションメモリ情報の訂正を行うのが、コンフィギュレーションメモリ制御回路である。故障修復の際にはコンフィギュレーションメモリ以外の揮発メモリVMや不揮発メモリNVMや内蔵メモリBR等のメモリから回路コンフィギュレーション情報を読出し、各コンフィギュレーションメモリに書き込む動作を行う。コンフィギュレーション情報の読出しは信号CFIFを介し、各コンフィギュレーションメモリへの書き込みは信号CRIFを介する。信号CFIFは揮発メモリアクセス回路と不揮発メモリアクセス回路と内蔵メモリに接続され、コンフィギュレーションメモリ制御回路はこれらのメモリから回路コンフィギュレーション情報を読み出すことができる。信号CRIFは各回路ブロックのコンフィギュレーションメモリに接続され、コンフィギュレーションメモリ制御回路はこの信号を介してプログラマブル回路に含まれる各コンフィギュレーションメモリの内容の読みだしと書き込みを行う。
本プログラマブル回路において、機能回路FBの故障による誤出力を防ぐために、機能回路は多重化(この例では、3重化)されている(図1中の3重化ブロックTMRB)。これら3つの機能回路は同一の機能を有し同一の処理を行い、多数決回路VOTはこれら機能回路からの出力の多数決処理を行う。その多数決処理の結果が3重化ブロックTMRBの出力となり、多数決信号VOTSを介して、揮発メモリアクセス回路VMIF、不揮発メモリアクセス回路NVMIF、外部通信回路FDIFに送信される。また、機能回路の出力は比較回路CMPにより常時比較され、それらの出力情報が異なる場合は回路に故障が発生したと判定される。この比較結果は信号CMPSを介してコンフィギュレーション制御回路RCTRに通知される。また、多数決回路及び比較回路は、それら自体に故障が発生していないかどうかを判定する診断回路TSTを有する。多数決回路の診断結果は信号TSTVSを介してコンフィギュレーション制御回路に通知され、比較回路の診断結果は信号TSTCSを介してコンフィギュレーション制御回路に通知される。
また、信号OERRは、コンフィギュレーション制御回路が、プログラマブル回路に故障が発生したことを外部に出力するための信号である。なお、信号VSELSに関しては実施の形態4にて後述する。さらに、冗長化用回路として、この例では、多数決回路VOTと比較回路CMPを用いているが、比較回路CMPのみとしたり、これに限らず、適宜の回路を用いることができる。
次にプログラマブル回路の動作に必須となる回路コンフィギュレーション情報の内容と配置について述べる。図2は実施の形態1における回路コンフィギュレーション情報の内容を表す。全体回路コンフィギュレーション情報FCFDは、プログラマブル回路内の全ての回路に対するコンフィギュレーション情報を含む。具体的には、揮発メモリアクセス回路に関するコンフィギュレーション情報VMIFD、不揮発メモリアクセス回路に関するコンフィギュレーション情報NVMIFD、外部通信回路に関するコンフィギュレーション情報FDIFD、機能回路に関するコンフィギュレーション情報FBD、比較回路に関するコンフィギュレーション情報CMPD、多数決回路に関するコンフィギュレーション情報VOTを含む。プログラマブル回路の動作中に、機能回路に故障が発生した場合に用いる機能部コンフィギュレーション情報PCFDは、機能回路に関するコンフィギュレーション情報FBDを含む。多数決回路及び比較回路に故障が発生した場合に用いる冗長化用回路コンフィギュレーション情報PCFD2は、比較回路に関するコンフィギュレーション情報CMPD、多数決回路に関するコンフィギュレーション情報VOTDを含む。
次に図1を用いて、これらコンフィギュレーション情報の配置について説明する。不揮発メモリは、全体回路コンフィギュレーション情報FCFDと機能部コンフィギュレーション情報PCFDと冗長化用回路コンフィギュレーション情報PCFD2を格納する。不揮発メモリに格納された情報のうち、機能部コンフィギュレーション情報は、プログラマブル回路のリセット後の初期設定時に揮発メモリに複写される。また不揮発メモリに格納された情報のうち、冗長化用回路コンフィギュレーション情報は、プログラマブル回路のリセット後の初期設定時に内蔵メモリBRに複写される。機能部コンフィギュレーション情報および冗長化用回路コンフィギュレーション情報を不揮発メモリから揮発メモリ又は内蔵メモリ等の別のメモリに複写するのは、故障時にコンフィギュレーション情報読出し時間を短くし故障修復を早く行うためである。本実施の形態におけるメモリの読出し速度は大きい順に、内蔵メモリ、揮発メモリ、不揮発メモリの順である。そのため故障の高速な修復が必要な回路の回路コンフィギュレーション情報は内蔵メモリと揮発メモリに複写する。なお、一般に、メモリをコンフィギュレーション回路内部に実装すると、書き込み・読出し等の信号線を比較的多く設けることができ、書き込み・読出し速度を速くすることができる。特に、多数決回路及び比較回路は機能回路と異なり多重度が低く脆弱であり、故障により出力結果が変わる等のように出力結果に重大な影響を及ぼす部分であり、かつ、論理規模も小さいため、そのコンフィギュレーション情報は内蔵メモリに配置される。但し、内蔵メモリに格納するコンフィギュレーション情報をこれらの回路に限定するものではない。
また、内蔵メモリが他の用途に用いられ容量が十分でないなどの場合には、冗長化用回路コンフィギュレーション情報も揮発メモリに複写されるようにしてもよい。内蔵メモリも通常揮発性のメモリで構成することができ、不揮発メモリに格納された一部の回路コンフィギュレーション情報をより読出し速度の速い別のメモリに複写しておくことで、同様に故障の修復の高速化が可能となる。
図3と図1を用いて、プログラマブル回路の機能回路、比較回路、多数決回路に放射線ソフトエラー等による故障が発生した場合の動作フローについて説明する。
図3(a)は比較回路CMPに故障が発生した場合のコンフィギュレーション制御回路RCTRの動作を示す。比較回路内の診断回路TSTにより比較回路内の故障が検出されると、比較回路はコンフィギュレーション制御回路に信号TSTCSを介してこれを通知する(S301)。コンフィギュレーション制御回路は、機能回路FBに対して出力停止要求を信号STRQSを介して発行し(S302)、比較回路のコンフィギュレーション情報を内蔵メモリBRから読出し、比較回路を修復する(S303)。この時、コンフィギュレーション制御回路内のコンフィギュレーションメモリ制御回路は、信号CFIFを介して内蔵メモリBRから情報を読出し、その情報をもとに信号CRIFを介して比較回路のコンフィギュレーションメモリの内容を修復する。その後、機能回路に対する出力停止要求を解除する(S304)。機能回路は出力動作を再開し、通常動作に復帰する。この過程で出力停止要求を受けた機能回路は、内部の記憶部に出力信号をバッファリングするなどして一時的に出力を抑制する。
図3(b)は多数決回路に故障が発生した場合のコンフィギュレーション制御回路の動作を示す。多数決回路内の診断回路TSTにより多数決回路内の故障が検出されると、多数決回路はコンフィギュレーション制御回路に信号TSTVSを介してこれを通知する(S311)。コンフィギュレーション制御回路は、機能回路FBに対して出力停止要求を信号STRQSを介して発行し(S312)、多数決回路のコンフィギュレーション情報を内蔵メモリBRから読出し、多数決回路を修復する(S313)。この時、コンフィギュレーション制御回路内のコンフィギュレーションメモリ制御回路は、信号CFIFを介して内蔵メモリBRから情報を読出し、その情報をもとに信号CRIFを介して多数決回路のコンフィギュレーションメモリの内容を修復する。その後、機能回路に対する出力停止要求を解除する(S314)。機能回路は出力動作を再開し、通常動作に復帰する。この過程で出力停止要求を受けた機能回路は、内部の記憶部に出力信号をバッファリングするなどして一時的に出力を抑制する。
図3(c)は機能回路の故障が比較回路により検出された場合のコンフィギュレーション制御回路の動作を示す。比較回路が機能回路の出力の不一致を検出すると、比較回路はコンフィギュレーション制御回路に信号CMPSを介してこれを通知する(S321)。コンフィギュレーション制御回路は、コンフィギュレーションメモリ制御回路を動作させ、信号CFIFを介して揮発メモリから情報を読出し、その情報をもとに信号CRIFを介して機能回路のコンフィギュレーションメモリの内容を修復する(S322)。機能回路は3重化されているため、このコンフィギュレーションメモリの修復は、比較回路により全ての回路出力が異なることが検出された場合を除き、機能回路を停止させずに行う。なお、このコンフィギュレーションメモリの修復は、機能回路を停止して行うようにしてもよい。
本実施の形態1においては、例としてプロセッサなどの機能回路を多重化し高信頼化する構成について述べたが、この構成の適用対象を機能回路に限定するものではない。揮発メモリアクセス回路や不揮発メモリアクセス回路や外部通信回路などそれ以外の回路に対しても同様の手法が適用できる。
本実施の形態によると、プログラマブル回路のコンフィギュレーションメモリのソフトエラーを短時間で修復し、プログラマブル回路が搭載された装置の稼働率を向上させることができる。
[実施の形態2]
本実施の形態2では、上述の実施の形態1に対して、不揮発メモリへ接続されるプログラマブル回路の端子と、機能デバイスへ接続されるプログラマブル回路の端子が共有される形態について記載する。初期設定時に、不揮発メモリから必要な回路コンフィギュレーション情報とソフトウェアプログラム等のソフトウェア処理情報を別のメモリに複写し、その後、不揮発メモリに接続されていたプログラマブル回路の端子を機能デバイスへの接続に切り替える。これにより、少ない端子数を持つプログラマブル回路を用いて機能を実現することが可能となる。
図4に実施の形態2におけるプログラマブル回路の構成図を示す。この形態においても、揮発メモリVMには機能回路コンフィギュレーション情報が複写され、内蔵メモリBRには多数決回路及び比較回路のコンフィギュレーション情報が複写される。
回路構成の観点で、本実施の形態2が実施の形態1と異なる主な点は、不揮発メモリアクセス回路VMIFと外部通信回路FDIFからプログラマブル回路の端子への間にIO選択回路IOSELが配置される点、不揮発メモリと機能デバイスからプログラマブル回路の間にスイッチデバイスIOSWが配置される点、これらのIO選択回路とスイッチデバイスを制御するためのIO制御回路IOCTRがプログラマブル回路内に配置される点である。
IO選択回路は、不揮発メモリアクセス回路と不揮発メモリ間のアクセスを行う信号VMIFSと、外部通信回路と外部プロセシングデバイス間のアクセスを行う信号FDIFSのいずれかを、選択信号IOSELSに従い選択し、スイッチデバイスにつながる信号IOSWPに接続する回路である。スイッチデバイスは、プログラマブル回路の端子からの信号IOSWPを、選択信号IOSWSに従い、不揮発メモリあるいは機能デバイスに接続する回路である。IO制御回路は、選択信号IOSELSを介してIO選択回路を制御すると共に、選択信号IOSWSを介してスイッチデバイスIOSWを制御する回路である。IO制御回路内のレジスタFLは、ソフトウェア処理情報の複写が完了したことをIO制御回路に設定するためのレジスタである。本構成においては、機能回路によりソフトウェア処理情報の複写が完了した後に機能回路により設定される。
図5と図4を用いて、プログラマブル回路の接続を不揮発メモリから機能デバイスに切り替える際の制御フローについて説明する。この切替処理が開始されると、IO制御回路は、IO選択回路及びスイッチデバイスを制御して、不揮発メモリを選択する。そして、コンフィギュレーション制御回路は不揮発メモリに記憶されている全体回路コンフィギュレーション情報FCFDを読出し、プログラマブル回路のコンフィギュレーションメモリに書き込みプログラマブル回路のコンフィギュレーションを実行する(S501)。
次に、コンフィギュレーション制御回路は、機能部コンフィギュレーション情報FCFDを不揮発メモリから読出し揮発メモリに書き込み(S502)、更に、冗長化用コンフィギュレーション情報PCFD2を不揮発メモリから読出し内蔵メモリに書き込む(S503)。これらの部分回路のコンフィギュレーション情報の複写が完了後、コンフィギュレーション制御回路は信号RCFSを介してIO制御回路に複写完了を通知する(S504)。
不揮発メモリには、回路コンフィギュレーション情報に加えてOS等のソフトウェアプログラムであるソフトウェア情報SWDも格納される場合がある。このような場合は、プログラマブル回路の接続を不揮発メモリから機能デバイスに切り替える前に、このソフトウェア情報も不揮発メモリから複写しておく必要がある。本実施の形態においては、機能回路がソフトウェア情報を不揮発メモリNVMから揮発メモリVMに複写を行う(S505、S506)。そのため、IO制御回路は機能回路によるソフトウェア情報の不揮発メモリから揮発メモリへの複写の完了を待つ。この複写の完了の通知は、機能回路がIO制御回路内の制御レジスタFLへ所定の値を書き込むことで行われる。回路コンフィギュレーション情報とソフトウェア情報の複写完了後、IO制御回路はIO選択回路とスイッチデバイスに対して、プログラマブル回路の接続を不揮発メモリから機能デバイスに切り替えるよう信号IOSELSと信号IOSWSを出力する(S507)。
なお、プログラマブル回路の機能回路、比較回路、多数決回路に放射線ソフトエラー等による故障が発生した場合の動作フローについては、実施の形態1と同様である。
以上の処理により、プログラマブル回路は、揮発メモリと機能デバイスに接続された状態となり、通常の情報処理の実行を開始する。この通常の情報処理の途中で放射線等によるエラーが発生した場合の制御のフローは、実施の形態1と同様である。
以上のように、本実施の形態によると、実施の形態1で記載した効果の他にも、初期設定時に必要となる不揮発メモリに接続されていたプログラマブル回路の端子を別の機能デバイスへの接続に切り替えることにより、より少ない端子数を持つプログラマブル回路に多くのデバイスを接続することができる。これにより限られたコストで装置の高機能化や高性能化が可能となる。
[実施の形態3]
図6に本実施の形態3におけるプログラマブル回路の構成図を示す。本実施の形態でも前述の実施の形態2と同様に、プログラマブル回路には揮発メモリVMと不揮発メモリNVMと機能デバイスFDが接続され、このプログラマブル回路は、内部に故障が発生した場合にそれを検知し自己修復する機能を有する。
本実施の形態におけるプログラマブル回路は、機能回路FBの故障による誤出力を防ぐために、機能回路は2重化されている(図6のDMRB)。これら2つの機能回路は同一の機能を有し同一の処理を行い、2つの機能回路FBの出力は比較回路CMPによって監視される。プログラマブル回路は、機能回路と比較回路に加えて、揮発メモリアクセス回路VMIF、不揮発メモリアクセス回路NVMIF、外部通信回路FDIF、コンフィギュレーション制御回路RCTR、コンフィギュレーションメモリ制御回路CRMC、IO制御回路IOCTR、回路診断回路TST、コンフィギュレーションメモリCR、内蔵メモリBRを含む。
図7は回路コンフィギュレーション情報の内容を示す。全体回路コンフィギュレーション情報FCFDはプログラマブル回路起動時に使用する情報であり、プログラマブル回路内の全ての回路に対するコンフィギュレーション情報を含む。具体的には、揮発メモリアクセス回路に関するVMIFD、不揮発メモリアクセス回路に関するNVMIFD、外部通信回路に関するFDIFD、機能回路に関するFBD、比較回路CMPDを含む。機能回路に故障が発生した場合に用いる機能回路コンフィギュレーション情報PCFDは、機能回路に関するコンフィギュレーション情報FBDを含む。比較回路に故障が発生した場合に用いるコンフィギュレーション情報PCFD2は、比較回路に関するコンフィギュレーション情報CMPDを含む。実施の形態2と同様に、不揮発メモリには、回路コンフィギュレーション情報に加えてOS等のソフトウェアプログラムであるソフトウェア情報SWDも格納される場合がある。
本実施の形態において、不揮発メモリには、全体回路コンフィギュレーション情報と機能部コンフィギュレーション情報と冗長化用回路コンフィギュレーション情報が格納される。不揮発メモリにある機能部コンフィギュレーション情報は、プログラマブル回路のリセット後の初期設定時に揮発メモリに複写される。また、不揮発メモリにある冗長化用回路コンフィギュレーション情報は、プログラマブル回路のリセット後の初期設定時に内蔵メモリに複写される。
機能部コンフィギュレーション情報および冗長化用回路コンフィギュレーション情報が不揮発メモリから別のメモリに複写されるのは、実施の形態1や実施の形態2と同じく、故障時にコンフィギュレーション情報読出し時間を短くし故障修復を早く行うためである。本実施の形態におけるメモリの読出し速度は大きい順に、内蔵メモリ、揮発メモリ、不揮発メモリの順である。そのため故障の高速な修復が必要な回路のコンフィギュレーション情報は内蔵メモリと揮発メモリに複写される。
なお、プログラマブル回路の接続を不揮発メモリから機能デバイスに切り替える際の制御フローについては、実施の形態2(図5等)と同様である。
図8と図6を用いて、プログラマブル回路の機能回路や比較回路に故障が発生した場合の動作フローについて説明する。
図8(a)は比較回路CMPに故障が発生した場合のコンフィギュレーション制御回路RCTRの動作を示す。比較回路内の診断回路により比較回路内の故障が検出されると、比較回路はコンフィギュレーション制御回路に信号TSTCSを介してこれを通知する(S801)。コンフィギュレーション制御回路は、機能回路に対して出力停止要求を信号STRQSを介して発行し(S802)、比較回路のコンフィギュレーション情報を内蔵メモリBRから読出し、比較回路を修復する(S803)。この時、コンフィギュレーション制御回路内のコンフィギュレーションメモリ制御回路は、信号CFIFを介して内蔵メモリBRから情報を読出し、その情報をもとに信号CRIFを介して比較回路のコンフィギュレーションメモリの内容を修復する。その後、機能回路に対する出力停止要求を解除する(S804)。機能回路は出力動作を再開し、通常動作に復帰する。この過程で出力停止要求を受けた機能回路は、内部の記憶部に出力信号をバッファリングするなどして一時的に出力を抑制する。
図8(b)は機能回路の故障が比較回路により検出された場合のコンフィギュレーション制御回路の動作を示す。比較回路が機能回路の出力の不一致を検出すると、比較回路はコンフィギュレーション制御回路に信号CMPSを介してこれを通知する(S811)。コンフィギュレーション制御回路は、まず、プログラマブル回路の外部に故障が発生したことを信号OERRを介して通知する(S812)。本実施の形態では外部LSIのFDに通知を行うが通知先はこれに限定するものではない。次にコンフィギュレーション制御回路は、コンフィギュレーションメモリ制御回路を動作させ、信号CFIFを介して不揮発メモリから情報を読出し、その情報をもとに信号CRIFを介して機能回路のコンフィギュレーションメモリの内容を修復する(S813)。この修復処理が完了した後、機能回路をリセットし処理を再開するとともに、信号OERRを介してプログラマブルLSIの外部に修復が完了したことを通知する(S814)。
図11は、本発明の実施の形態3における放射線等の耐性を有するプログラマブル回路を含む装置の変形例を示す図である。図示のように、実施の形態3の変形例として、実施の形態1のプログラマブル回路構成を用いて、図1の3重化ブロックTMRBを、実施の形態3の図6の2重化ブロックDMRBに置換した構成としてもよい。なお、この場合コンフィギュレーション制御回路RCTRからのセレクト信号VSELSは不要とする。
以上、実施の形態1から実施の形態3では、プログラマブル回路のコンフィギュレーション制御回路を不揮発メモリだけでなく揮発メモリと内蔵メモリに接続する。その上で故障の高速な修復が必要な回路の回路コンフィギュレーション情報を、プログラマブル回路からの情報読出し速度が速いメモリ(本実施の形態1から3においては揮発メモリと内蔵メモリ)に配置することで、放射線ソフトエラー等による故障からの復帰時間を短縮する手段を示した。
これにより、本実施の形態によると、実施の形態1で記載した効果の他にも、プログラマブル回路が搭載された装置の稼働率を向上させることが可能となる。
[実施の形態4]
図9を用いて、実施の形態1の多数決回路の別の形態を説明する。

本多数決回路VOTの特徴は、多数決処理を行わずに機能回路(FBA、FBB、FBC)の出力値をそのまま出力する機能を有する点である。この多数決回路の出力は、3つの機能回路出力の多数決処理結果の信号VVOTS、機能回路の出力信号FBAS、FBBS、FBCSの4つから選択でき、4つのいずれを選択するかはセレクト信号VSELSの信号値により指定できる。なお、図9においては、説明を容易にするために、3つの機能回路FBA、FBB、FBCと区別しているが同一の機能を有する回路である。
多数決回路VOTは、多数決実行回路VVOT、信号VSELS の値に従って4つの入力から1つを選択するセレクタ回路VSEL、診断回路TSTを含む。多数決実行回路は、信号FBAS、信号FBBS、信号FBCSの値の多数決処理を行う回路である。セレクタ回路は、セレクト信号VSELSに従い、多数決結果信号VVOTS、信号FBAS、信号FBBS、信号FBCSのうちのひとつの信号を選択して信号VOTSに出力する。診断回路は、多数決実行回路とセレクタ回路に故障がないか診断するための回路である。
多数決処理を行わずに機能回路の出力をそのまま出力する機能は、実フィールドで各々の機能回路の動作を検証するために利用することができる。例えば、多数決回路VOTの出力が機能回路FBAの出力FBASとなるようにセレクト信号VSELSの値を与えることで機能回路FBBと機能回路FBCを無効にすることができる。そのうえで、予め用意したテスト用の入力パターンを実行させることで、機能回路FBAの動作を検証することができる。
以上のように、本多数決回路を適用することの効果は、多重化された機能回路の一つを選択して、各々の機構回路の動作検証を行うことができることである。
[実施の形態5]
図10は、実施の形態1の3重化ブロックTMRBの別の形態である。

実施の形態1では機能回路の出力部のみに多数決回路が設けられたのに対して、本実施の形態では機能回路の出力部に加えて回路内部のいくつかの箇所に多数決回路FVOTが挿入される。
3重化された機能回路の1つのFBAに含まれる多数決回路FVOT−A1を例にとり、多数決回路の機能と構成を記載する。この多数決回路も実施の形態4で示した多数決回路VOTと同様に多数決処理を行わずに入力値をそのまま出力することができる点が特徴である。多数決回路は、多数決実行回路VVOT、信号FVSELS の値に従って2つの入力信号から1つの信号を選択するセレクタ回路VSELを含む。この構成により、多数決回路の出力を、回路ブロック(FB−A1、FB−B1、FB−C1)からの3つの信号の多数決処理結果の信号と、機能回路FB−A1の出力信号のいずれかから選択できる。他の多数決回路FVOTも同様の機能を有する。
本実施の形態において、多数決回路に多数決処理を行わないようにセレクト信号FVSELSとVSELSを用いて機能回路に指定することで、3つの機能回路FBA、FBB、FBCを独立に動作をさせることが可能となる。
このように機能回路が独立動作を行う設定にし、予め用意したテスト用の入力パターンを実行させることで、各々の機能回路を独立に検証することが可能となる。また、独立動作を行う設定とすることで、3つの機能回路を独立動作させることが可能となり、処理性能を向上させることも可能となる。また、独立動作を行う設定とすることで、3つの機能回路に跨る信号伝播がなくなり動作周波数を向上させることも可能となる。
C.付記

以上の実施の形態1から実施の形態5では、主に機能回路の放射線ソフトエラー等の耐性を向上させる手段について述べた。不揮発メモリアクセス回路や揮発メモリアクセス回路など他の回路の放射線ソフトエラー等の耐性を向上させる場合にも同様の手段を適用することができ、記載した手段は機能回路に限定するものではない。
また、実施の形態1から実施の形態3において、プログラマブル回路、不揮発メモリ、揮発メモリ、機能デバイスは別のチップで構成される場合も、またこれらのいくつかが同一チップ上に実装させる場合もあり、ともに本発明の範囲である。例えば、プログラマブル回路は、不揮発メモリ又は揮発メモリの一方を内部に備えるようにしたり、両メモリを内部に備えるようにしてもよい。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
FPGA: プログラマブル回路
NVM: 不揮発メモリ
VM: 揮発メモリ
FD: 機能デバイス
FB、FBA、FBB、FBC: 機能回路
FDIF: 外部通信回路
VMIF: 揮発メモリアクセス回路
NVMIF: 不揮発メモリアクセス回路
VOT、VOTF: 多数決回路
CMP: 比較回路
RCTR: コンフィギュレーション制御回路
CRMC: コンフィギュレーションメモリ制御回路
CR: コンフィギュレーションメモリ
TST: 診断回路
BR: 内蔵メモリ
TMRB: 機能回路3重化ブロック
DMRB: 機能回路2重化ブロック
IOSEL: IO選択回路
IOCTR: IO制御回路
VVOT: 多数決回路内多数決実行回路
VSEL: 多数決回路内セレクタ回路
FL: IO制御レジスタ
IOSW: スイッチデバイス
FCFD: 全体回路コンフィギュレーション情報
PCFD: 機能部コンフィギュレーション情報
PCFD2: 冗長化用回路コンフィギュレーション情報
VMIFD: 揮発メモリアクセス回路コンフィギュレーション情報
NVMIFD: 不揮発メモリアクセス回路コンフィギュレーション情報
FDIFD: 外部通信回路コンフィギュレーション情報
FBD: 機能回路コンフィギュレーション情報
CMPD: 比較回路コンフィギュレーション情報
VOTD: 多数決回路コンフィギュレーション情報
SWD: ソフトウェア情報
CFIF: コンフィギュレーション情報読出し信号
CRIF: コンフィギュレーションメモリアクセス信号
CMPS: 比較結果通知信号
TSTVS: 多数決回路診断結果通知信号
TSTCS: 比較回路診断結果通知信号
VMIFS: 不揮発メモリアクセス信号
FDIFS: 機能LSIアクセス信号
IOSWP: スイッチ接続信号
IOSELS: IO選択制御信号
IOSWS: スイッチ制御信号
STRQS: 機能回路出力停止要求信号
FBAS、FBBS、FBCS: 機能回路出力信号
VSELS、FVSELS: セレクト信号

Claims (15)

  1. プログラマブル回路装置であって、
    同一の機能を有し同一の処理を行う複数の機能回路を有する多重化ブロックと、
    故障により出力が変化する又は故障により出力に重大な影響を与える又は多重化されていなく、自回路の故障の診断結果及び前記複数の機能回路の出力の比較結果を通知する冗長化用回路と、
    前記冗長化用回路からの前記診断結果及び前記比較結果の通知により、コンフィギュレーション情報の複写を行うコンフィギュレーション制御回路と、
    前記複数の機能回路に関する機能部コンフィギュレーション情報と、前記冗長化用回路に関する冗長化用回路コンフィギュレーション情報と、前記機能部コンフィギュレーション情報及び前記冗長化用回路コンフィギュレーション情報を含み前記プログラマブル回路装置内の各回路に対するコンフィギュレーション情報を含むプログラマブル回路コンフィギュレーション情報とを格納する不揮発メモリと、
    前記不揮発メモリより読出し速度が速く、前記不揮発メモリから、前記機能部コンフィギュレーション情報を予め複写した揮発メモリと、
    前記揮発メモリより読出し速度が速く、前記不揮発メモリから、前記冗長化用回路コンフィギュレーション情報を予め複写した内蔵メモリと、
    を備え、
    前記冗長化用回路は、自回路の故障を検出すると、前記コンフィギュレーション制御回路に前記診断結果を通知し、
    前記コンフィギュレーション制御回路は、前記冗長化用回路コンフィギュレーション情報を前記内蔵メモリから読出し、該情報を前記冗長化用回路内のコンフィギュレーションメモリに書き込むことで前記冗長化用回路を修復し、
    前記冗長化用回路は、前記複数の機能回路の信号の不一致を検出すると、前記コンフィギュレーション制御回路に前記比較結果を通知し、
    前記コンフィギュレーション制御回路は、前記機能部コンフィギュレーション情報を前記揮発メモリから読出し、該情報を前記複数の機能回路の各コンフィギュレーションメモリに書き込むことで前記複数の機能回路を修復する、
    プログラマブル回路装置。
  2. 請求項1に記載のプログラマブル回路装置において、
    前記冗長化用回路は、
    前記複数の機能回路の出力又は信号を比較して故障を判定する比較回路と、前記比較回路の故障を検出する第1診断回路とを備え、前記冗長化用回路コンフィギュレーション情報は、比較回路に関するコンフィギュレーション情報を含む第1の構成
    び、
    前記複数の機能回路の出力又は信号の多数決処理を行い、多数決処理の結果を、前記揮発メモリ、前記不揮発メモリ、及び、外部通信回路のうち少なくとも一つに出力する多数決回路と、前記多数決回路の故障を検出する第2診断回路とを備え、前記冗長化用回路コンフィギュレーション情報は、多数決回路に関するコンフィギュレーション情報を含む第2の構成
    の少なくとも一つの構成を備えること、
    を特徴とするプログラマブル回路装置。
  3. 請求項2に記載のプログラマブル回路装置において、
    前記比較回路は、前記第1診断回路により自回路内の故障を検出すると、前記コンフィギュレーション制御回路に前記診断結果を通知し、
    前記コンフィギュレーション制御回路は、前記診断結果により、前記複数の機能回路に対して出力停止要求を発行し、前記比較回路に関するコンフィギュレーション情報を前記内蔵メモリから読出し、該情報を前記比較回路内のコンフィギュレーションメモリに書き込むことで前記比較回路を修復した後、前記複数の機能回路に対する出力停止要求を解除する
    ことを特徴とするプログラマブル回路装置。
  4. 請求項2に記載のプログラマブル回路装置において、
    前記多数決回路は、前記第2診断回路により自回路内の故障を検出すると、前記コンフィギュレーション制御回路に前記診断結果を通知し、
    前記コンフィギュレーション制御回路は、前記診断結果により、前記複数の機能回路に対して出力停止要求を発行し、前記多数決回路に関するコンフィギュレーション情報を前記内蔵メモリから読出し、該情報を前記多数決回路内のコンフィギュレーションメモリに書き込むことで前記多数決回路を修復した後、前記複数の機能回路に対する出力停止要求を解除する
    ことを特徴とするプログラマブル回路装置。
  5. 請求項2に記載のプログラマブル回路装置において、
    前記比較回路は、前記複数の機能回路の出力の不一致を検出すると、前記コンフィギュレーション制御回路に前記比較結果を通知し、
    前記コンフィギュレーション制御回路は、前記比較結果により、前記機能部コンフィギュレーション情報を前記揮発メモリから読出し、該情報を前記複数の機能回路内のコンフィギュレーションメモリに書き込むことで前記複数の機能回路を修復する
    ことを特徴とするプログラマブル回路装置。
  6. 請求項5に記載のプログラマブル回路装置において、
    前記コンフィギュレーション制御回路は、前記複数の機能回路の各コンフィギュレーションメモリの修復を、前記比較回路により全ての回路出力が異なることが検出された場合を除き、前記複数の機能回路を停止させずに行う
    ことを特徴とするプログラマブル回路装置。
  7. 請求項1に記載のプログラマブル回路装置において、
    前記コンフィギュレーション制御回路は、前記不揮発メモリに記憶されている前記プログラマブル回路コンフィギュレーション情報を読出し、プログラマブル回路内の各回路のコンフィギュレーションメモリに書き込むことにより、プログラマブル回路のコンフィギュレーションを実行し、
    前記コンフィギュレーション制御回路は、前記機能部コンフィギュレーション情報を前記不揮発メモリから読出して前記揮発メモリに書き込み、前記冗長化用回路コンフィギュレーション情報を前記不揮発メモリから読出して前記内蔵メモリに書き込むことにより、各コンフィギュレーション情報の複写を実行する
    ことを特徴とするプログラマブル回路装置。
  8. 請求項1に記載のプログラマブル回路装置において、
    前記不揮発メモリ及び機能デバイスと、前記プログラマブル回路装置との間に配置されたスイッチデバイスと、
    前記スイッチデバイスを制御するためのIO制御回路と
    をさらに備え、
    前記IO制御回路は、前記スイッチデバイスを制御して、前記不揮発メモリを選択して前記プログラマブル回路装置と接続し、
    前記コンフィギュレーション制御回路は、前記不揮発メモリに記憶されている前記プログラマブル回路コンフィギュレーション情報を読出し、プログラマブル回路内の各回路のコンフィギュレーションメモリに書き込むことにより、プログラマブル回路のコンフィギュレーションを実行し、
    前記コンフィギュレーション制御回路は、前記機能部コンフィギュレーション情報を前記不揮発メモリから読出して前記揮発メモリに書き込み、前記冗長化用回路コンフィギュレーション情報を前記不揮発メモリから読出して前記内蔵メモリに書き込むことにより、各コンフィギュレーション情報の複写を実行し、
    前記各コンフィギュレーション情報の複写が完了後、前記コンフィギュレーション制御回路は、前記IO制御回路に複写完了を通知し、
    前記IO制御回路は、該複写完了により、前記プログラマブル回路装置との接続を前記不揮発メモリから前記機能デバイスに切り替えるように前記スイッチデバイスを制御することを特徴とするプログラマブル回路装置。
  9. 請求項8に記載のプログラマブル回路装置において、
    前記不揮発メモリは、ソフトウェア情報をさらに含み、
    前記IO制御回路が、前記スイッチデバイスを制御して、前記不揮発メモリを選択して前記プログラマブル回路装置と接続した際、前記複数の機能回路の各々は、ソフトウェア情報を前記不揮発メモリから前記揮発メモリへ複写し、複写完了を前記IO制御回路内に通知し、
    前記プログラマブル回路コンフィギュレーション情報と前記ソフトウェア情報の複写完了後、前記IO制御回路は、前記プログラマブル回路との接続を前記不揮発メモリから機能デバイスに切り替えるように前記スイッチデバイスを制御する
    ことを特徴とするプログラマブル回路装置。
  10. 請求項1に記載のプログラマブル回路装置において、
    前記複数の機能回路は2重化され、2つの機能回路は同一の機能を有し同一の処理を行い、
    前記2つの機能回路のうち、一方の出力を前記多重化ブロックの出力とし、両方の各出力を前記冗長化用回路に入力する
    ことを特徴とするプログラマブル回路装置。
  11. 請求項1に記載のプログラマブル回路装置において、
    前記冗長化用回路は、前記複数の機能回路の出力の不一致を検出すると、前記コンフィギュレーション制御回路に前記比較結果を通知し、
    前記コンフィギュレーション制御回路は、前記比較結果が通知されると、前記プログラマブル回路装置の外部に故障が発生したことを通知し、前記複数の機能回路内の各コンフィギュレーションメモリの修復が完了した後、前記複数の機能回路をリセットして処理を再開するとともに、前記プログラマブル回路装置の外部に修復が完了したことを通知する
    ことを特徴とするプログラマブル回路装置。
  12. 請求項2に記載のプログラマブル回路装置において、
    前記多数決回路は、前記複数の機能回路の出力の多数決処理結果の信号、及び、前記複数の機能回路の各出力信号から、いずれかの信号を選択するように構成された
    ことを特徴とするプログラマブル回路装置。
  13. 請求項2に記載のプログラマブル回路装置において、
    前記多数決回路は、前記複数の機能回路の出力部に加えて、各機能回路内部の複数の箇所にさらに多数決のための回路を挿入した
    ことを特徴とするプログラマブル回路装置。
  14. 請求項1に記載のプログラマブル回路装置において、
    前記不揮発メモリ又は前記揮発メモリの一方、又は、前記不揮発メモリと前記揮発メモリの両方を、プログラマブル回路内部に備えた
    ことを特徴とするプログラマブル回路装置。
  15. プログラマブル回路装置におけるコンフィギュレーション情報修復方法であって、
    前記プログラマブル回路装置は、
    同一の機能を有し同一の処理を行う複数の機能回路を有する多重化ブロックと、
    故障により出力が変化する又は故障により出力に重大な影響を与える又は多重化されていなく、自回路の故障の診断結果及び前記複数の機能回路の出力の比較結果を通知する冗長化用回路と、
    前記冗長化用回路からの前記診断結果及び前記比較結果の通知により、コンフィギュレーション情報の複写を行うコンフィギュレーション制御回路と、
    を備え、
    不揮発メモリに、前記複数の機能回路に関する機能部コンフィギュレーション情報と、前記冗長化用回路に関する冗長化用回路コンフィギュレーション情報と、前記機能部コンフィギュレーション情報及び前記冗長化用回路コンフィギュレーション情報を含み前記プログラマブル回路装置内の各回路に対するコンフィギュレーション情報を含むプログラマブル回路コンフィギュレーション情報とを格納し、
    前記不揮発メモリより読出し速度が速い揮発メモリに、前記不揮発メモリから、前記機能部コンフィギュレーション情報を予め複写し、
    前記揮発メモリより読出し速度が速い内蔵メモリに、前記不揮発メモリから、前記冗長化用回路コンフィギュレーション情報を予め複写し、
    前記冗長化用回路は、自回路の故障を検出すると、前記コンフィギュレーション制御回路に前記診断結果を通知し、
    前記コンフィギュレーション制御回路は、前記冗長化用回路コンフィギュレーション情報を前記内蔵メモリから読出し、該情報を前記冗長化用回路内のコンフィギュレーションメモリに書き込むことで前記冗長化用回路を修復し、
    前記冗長化用回路は、前記複数の機能回路の信号の不一致を検出すると、前記コンフィギュレーション制御回路に前記比較結果を通知し、
    前記コンフィギュレーション制御回路は、前記機能部コンフィギュレーション情報を前記揮発メモリから読出し、該情報を前記複数の機能回路の各コンフィギュレーションメモリに書き込むことで前記複数の機能回路を修復する、
    コンフィギュレーション情報修復方法。
JP2014028797A 2014-02-18 2014-02-18 プログラマブル回路装置、コンフィギュレーション情報修復方法 Expired - Fee Related JP6282482B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014028797A JP6282482B2 (ja) 2014-02-18 2014-02-18 プログラマブル回路装置、コンフィギュレーション情報修復方法
US14/593,029 US9337838B2 (en) 2014-02-18 2015-01-09 Programmable circuit device and configuration information restoration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014028797A JP6282482B2 (ja) 2014-02-18 2014-02-18 プログラマブル回路装置、コンフィギュレーション情報修復方法

Publications (2)

Publication Number Publication Date
JP2015154417A JP2015154417A (ja) 2015-08-24
JP6282482B2 true JP6282482B2 (ja) 2018-02-21

Family

ID=53799044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014028797A Expired - Fee Related JP6282482B2 (ja) 2014-02-18 2014-02-18 プログラマブル回路装置、コンフィギュレーション情報修復方法

Country Status (2)

Country Link
US (1) US9337838B2 (ja)
JP (1) JP6282482B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6327994B2 (ja) 2014-07-28 2018-05-23 ルネサスエレクトロニクス株式会社 制御システムおよび半導体装置
KR101533081B1 (ko) * 2014-09-26 2015-07-03 성균관대학교산학협력단 저전력과 신뢰성을 동시에 확보하기 위한 이중화 대응 장치, 이중화 시스템 및 이중화 구성 설정 방법
CN108070326B (zh) * 2016-11-16 2021-09-17 琳得科株式会社 书写感改善膜
JP6836065B2 (ja) 2017-02-27 2021-02-24 富士通株式会社 情報処理装置、pld管理プログラム及びpld管理方法
US10740186B2 (en) * 2017-05-15 2020-08-11 The Boeing Company High data integrity processing system
JP6490316B1 (ja) * 2018-02-28 2019-03-27 三菱電機株式会社 出力判定回路
JP7099050B2 (ja) * 2018-05-29 2022-07-12 セイコーエプソン株式会社 回路装置、電子機器及び移動体
US11424621B2 (en) 2020-01-28 2022-08-23 Qualcomm Incorporated Configurable redundant systems for safety critical applications

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3365581B2 (ja) * 1994-07-29 2003-01-14 富士通株式会社 自己修復機能付き情報処理装置
JP3139738B2 (ja) * 1996-09-06 2001-03-05 日本電気株式会社 論理回路
JP3106998B2 (ja) * 1997-04-11 2000-11-06 日本電気株式会社 メモリ付加型プログラマブルロジックlsi
US7236000B1 (en) * 2005-10-18 2007-06-26 Xilinx, Inc. Method and apparatus for error mitigation of programmable logic device configuration memory
US7647543B2 (en) * 2006-02-01 2010-01-12 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Reprogrammable field programmable gate array with integrated system for mitigating effects of single event upsets
JP2006333496A (ja) * 2006-06-22 2006-12-07 Fuji Xerox Co Ltd プログラマブル論理回路装置および情報処理システム
JP4616862B2 (ja) * 2007-06-04 2011-01-19 株式会社日立製作所 診断装置
US20090089636A1 (en) * 2007-10-01 2009-04-02 Fernsler Matthew E Method and Apparatus for Logic Built In Self Test (LBIST) Fault Detection in Multi-Core Processors
US7702975B2 (en) * 2008-04-08 2010-04-20 International Business Machines Corporation Integration of LBIST into array BISR flow
JP2010177897A (ja) * 2009-01-28 2010-08-12 Yokogawa Electric Corp Fpgaのコンフィギュレーション回路
JP5660798B2 (ja) * 2010-04-01 2015-01-28 三菱電機株式会社 情報処理装置
JP5699057B2 (ja) * 2011-08-24 2015-04-08 株式会社日立製作所 プログラマブルデバイス、プログラマブルデバイスのリコンフィグ方法および電子デバイス
US8856602B2 (en) * 2011-12-20 2014-10-07 International Business Machines Corporation Multi-core processor with internal voting-based built in self test (BIST)

Also Published As

Publication number Publication date
JP2015154417A (ja) 2015-08-24
US20150236696A1 (en) 2015-08-20
US9337838B2 (en) 2016-05-10

Similar Documents

Publication Publication Date Title
JP6282482B2 (ja) プログラマブル回路装置、コンフィギュレーション情報修復方法
US9449717B2 (en) Memory built-in self-test for a data processing apparatus
TWI424319B (zh) 用於操作一固態驅動器之方法及固態記憶體裝置
JP5014899B2 (ja) 再構成可能デバイス
US20090144583A1 (en) Memory Circuit
TW201135746A (en) Method and controller for performing a copy-back operation
JP5506908B2 (ja) 集積回路における故障耐性
US10691565B2 (en) Storage control device and storage control method
US20150248322A1 (en) Memory controller and memory system
US6567950B1 (en) Dynamically replacing a failed chip
US20140181435A1 (en) Multiple computer system processing write data outside of checkpointing
WO2014084836A1 (en) Fault tolerance in a multi-core circuit
JP2012053778A (ja) プログラマブル論理回路のエラー訂正回路
US20190012222A1 (en) Tracking errors associated with memory access operations
JP2005235074A (ja) Fpgaのソフトエラー補正方法
WO2015068285A1 (ja) プログラマブルデバイス及びこれを用いた電子システム装置
WO2023183133A1 (en) Serial attached non-volatile memory
JP5910356B2 (ja) 電子装置、電子装置制御方法及び電子装置制御プログラム
JP2013187699A (ja) Fpga構成処理制御回路
JP3139738B2 (ja) 論理回路
JP2014016925A (ja) 情報処理システム、データ切替方法およびプログラム
JP5964265B2 (ja) 半導体集積回路装置
JP6111605B2 (ja) コンピュータシステム、コンピュータシステムの診断方法及び診断プログラム
WO2018179739A1 (ja) 情報処理装置、情報処理方法及びプログラム
US10778225B2 (en) Integrated circuit system, startup control method for integrated circuit system, and startup control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160705

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20170307

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170317

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170622

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180124

R150 Certificate of patent or registration of utility model

Ref document number: 6282482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees