図面 (/)

この項目の情報は公開日時点(2016年5月16日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (15)

課題

多重故障を検出して安全性を向上する半導体装置を提供する。

解決手段

半導体装置は、三重化された論理回路10,11,12と、三重化された論理回路10,11,12の2個ずつの出力を比較する3個の比較器20,21,22と、三重化された論理回路10,11,12の3個の出力の多数決をとる1個の多数決回路30と、三重化された論理回路10,11,12および3個の比較器20,21,22の故障判定を行う1個の故障判定回路40と、を有する。故障判定回路40は、故障判定論理回路41と、故障判定論理回路41の出力を保持する故障判定レジスタ42と、を有する。故障判定論理回路41は、比較器20,21,22の3個の出力と、故障判定レジスタ42の保持している値との論理をとる。

概要

背景

FPGAは、デジタル回路回路設計電気的に変更可能なデバイスとして知られている。FPGAは、多数の論理ゲートを有し、論理ゲート間論理関係接続関係とを記述したコンフィグレーションデータを、FPGAが備えるコンフィグレーションRAMに書き込むことで、所定の論理回路として機能する。よって、コンフィグレーションデータを変更することで、ハードウェアを変更することなく容易に回路設計を変更できるため、電子機器を始として様々な製品で利用されている。

例えば、非特許文献1で述べられているように、FPGAの応用分野が広がっているが、高信頼性が要求される用途では、コンフィグレーションRAMのソフトエラーが問題となっている。その対策の1つとして、Triple Module Redundancy (TMR三重化)が用いられている。

また、特許文献1には、三重化回路故障判定を行う回路が開示されている。例えば、図1に構成が示されている第1実施例で、図2の比較回路で三重化されたCPUの出力を比較し、その比較結果を図3のエラー判別回路により論理をとって判定する。

概要

多重故障を検出して安全性を向上する半導体装置を提供する。半導体装置は、三重化された論理回路10,11,12と、三重化された論理回路10,11,12の2個ずつの出力を比較する3個の比較器20,21,22と、三重化された論理回路10,11,12の3個の出力の多数決をとる1個の多数決回路30と、三重化された論理回路10,11,12および3個の比較器20,21,22の故障判定を行う1個の故障判定回路40と、を有する。故障判定回路40は、故障判定論理回路41と、故障判定論理回路41の出力を保持する故障判定レジスタ42と、を有する。故障判定論理回路41は、比較器20,21,22の3個の出力と、故障判定レジスタ42の保持している値との論理をとる。

目的

本発明の代表的な目的は、多重故障を検出して安全性を向上する半導体装置を提供する

効果

実績

技術文献被引用数
1件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

三重化された論理回路と、前記三重化された論理回路の2個ずつの出力を比較する3個の比較器と、前記三重化された論理回路の3個の出力の多数決をとる1個の多数決回路と、前記三重化された論理回路および前記3個の比較器の故障判定を行う1個の故障判定回路と、を有し、前記故障判定回路は、故障判定論理回路と、前記故障判定論理回路の出力を保持する故障判定レジスタと、を有し、前記故障判定論理回路は、前記比較器の3個の出力と、前記故障判定レジスタの保持している値との論理をとる、半導体装置

請求項2

請求項1に記載の半導体装置において、前記半導体装置は、FPGAである、半導体装置。

請求項3

請求項2に記載の半導体装置において、前記半導体装置は、コンフィグレーションRAMで論理が決まる前記FPGAである、半導体装置。

請求項4

請求項3に記載の半導体装置において、前記半導体装置は、前記コンフィグレーションRAMを一定の間隔で巡回してエラー修正を行うためのスクラビング回路を有する、半導体装置。

請求項5

請求項4に記載の半導体装置において、前記スクラビング回路の動作によってリセット信号が生成され、前記リセット信号によって前記故障判定レジスタの保持している値がリセットされる、半導体装置。

請求項6

請求項1に記載の半導体装置において、前記比較器の出力に基づく故障状況は、前記論理回路および前記比較器の故障なし、前記論理回路の故障、前記比較器の故障、および、前記論理回路および前記比較器の多重故障のいずれかである、半導体装置。

請求項7

請求項6に記載の半導体装置において、前記多重故障は、前記三重化された論理回路のうちの第1の論理回路が故障し、さらに前記第1の論理回路とは異なる第2の論理回路が故障する場合と、前記3個の比較器のうちの第1の比較器が故障し、さらに前記三重化された論理回路のうちの第1の論理回路が故障する場合と、前記三重化された論理回路のうちの第1の論理回路が故障し、さらに前記3個の比較器のうちの第1の比較器が故障する場合と、前記3個の比較器のうちの第1の比較器が故障し、さらに前記第1の比較器とは異なる第2の比較器が故障する場合と、を含む、半導体装置。

請求項8

請求項1に記載の半導体装置において、前記故障判定回路の状態遷移は、前記論理回路および前記比較器の故障なし状態から前記論理回路または前記比較器の故障状態への遷移と、前記論理回路および前記比較器の故障なし状態から前記論理回路および前記比較器の多重故障状態への遷移と、前記論理回路または前記比較器の故障状態から前記論理回路および前記比較器の多重故障状態への遷移と、前記論理回路または前記比較器の故障状態から前記論理回路および前記比較器の故障なし状態への遷移と、前記論理回路および前記比較器の多重故障状態から前記論理回路および前記比較器の故障なし状態への遷移と、を含む、半導体装置。

請求項9

請求項1に記載の半導体装置において、前記比較器および前記故障判定論理回路は、ルックアップテーブルで構成されている、半導体装置。

請求項10

請求項1に記載の半導体装置において、前記論理回路は、プロセッサである、半導体装置。

請求項11

請求項1に記載の半導体装置において、前記故障判定回路は、二重化または三重化されている、半導体装置。

請求項12

多重化された論理回路と、前記多重化された論理回路の複数個ずつの出力を比較する複数個の比較器と、前記多重化された論理回路の複数個の出力の多数決をとる1個の多数決回路と、前記多重化された論理回路および前記複数個の比較器の故障判定を行う1個の故障判定回路と、を有し、前記故障判定回路は、故障判定論理回路と、前記故障判定論理回路の出力を保持する故障判定レジスタと、を有し、前記故障判定論理回路は、前記比較器の複数個の出力と、前記故障判定レジスタの保持している値との論理をとる、半導体装置。

請求項13

請求項12に記載の半導体装置において、前記半導体装置は、FPGAである、半導体装置。

請求項14

請求項13に記載の半導体装置において、前記半導体装置は、コンフィグレーションRAMで論理が決まる前記FPGAである、半導体装置。

請求項15

請求項14に記載の半導体装置において、前記半導体装置は、前記コンフィグレーションRAMを一定の間隔で巡回してエラー修正を行うためのスクラビング回路を有する、半導体装置。

技術分野

0001

本発明は、半導体装置に関し、特に、FPGA(Field Programmable Gate Array)の高信頼性を実現するために三重回路を有する半導体装置に関する。

背景技術

0002

FPGAは、デジタル回路回路設計電気的に変更可能なデバイスとして知られている。FPGAは、多数の論理ゲートを有し、論理ゲート間論理関係接続関係とを記述したコンフィグレーションデータを、FPGAが備えるコンフィグレーションRAMに書き込むことで、所定の論理回路として機能する。よって、コンフィグレーションデータを変更することで、ハードウェアを変更することなく容易に回路設計を変更できるため、電子機器を始として様々な製品で利用されている。

0003

例えば、非特許文献1で述べられているように、FPGAの応用分野が広がっているが、高信頼性が要求される用途では、コンフィグレーションRAMのソフトエラーが問題となっている。その対策の1つとして、Triple Module Redundancy (TMR:三重化)が用いられている。

0004

また、特許文献1には、三重化回路の故障判定を行う回路が開示されている。例えば、図1に構成が示されている第1実施例で、図2比較回路で三重化されたCPUの出力を比較し、その比較結果を図3エラー判別回路により論理をとって判定する。

0005

特許第3229070号公報

先行技術

0006

H. Asadi and M. B. Tahoori, “Analytical Techniques for Soft Error Rate Modeling and Mitigation ofFPGA-Based Designs,”IEEE Trans.VLSISystems, Vol. 15, No. 12, 2007, pp. 1320-1331.

発明が解決しようとする課題

0007

前記特許文献1に開示されている技術では、故障の有無と多重故障を判定するが、CPUの1つに故障が発生した後、二重化動作を続けた場合に、さらに別なCPUに故障が発生しても気がつかない恐れがあり、安全性が低い。

0008

本発明の代表的な目的は、多重故障を検出して安全性を向上する半導体装置を提供するものである。

0009

本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。

課題を解決するための手段

0010

本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。

0011

代表的な半導体装置は、三重化された論理回路と、前記三重化された論理回路の2個ずつの出力を比較する3個の比較器と、前記三重化された論理回路の3個の出力の多数決をとる1個の多数決回路と、前記三重化された論理回路および前記3個の比較器の故障判定を行う1個の故障判定回路と、を有する。前記故障判定回路は、故障判定論理回路と、前記故障判定論理回路の出力を保持する故障判定レジスタと、を有する。前記故障判定論理回路は、前記比較器の3個の出力と、前記故障判定レジスタの保持している値との論理をとる。

発明の効果

0012

本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下の通りである。

0013

代表的な効果は、多重故障を検出して安全性を向上することができる。

図面の簡単な説明

0014

本発明の一実施の形態における半導体装置の構成の一例を示すブロック図である。
図1の半導体装置において、多数決回路の構成の一例を示す回路図である。
図1の半導体装置において、比較器の構成の一例を示す回路図である。
図1の半導体装置において、比較器の出力に対して可能性が高い故障状況の一例を示す説明図である。
図1の半導体装置において、故障判定回路の状態遷移の一例を示す説明図である。
図1の半導体装置において、故障判定回路の構成の一例を示す回路図である。
図1の半導体装置において、故障判定回路の真理値表の一例を示す説明図である。
図6の故障判定回路において、判定論理回路の構成の一例を示す回路図である。
図1の半導体装置において、故障判定回路の動作の一例(論理回路が故障し、さらに別の論理回路も故障した場合)を示すタイミングチャートである。
図1の半導体装置において、故障判定回路の動作の一例(比較器が故障し、さらに論理回路も故障した場合)を示すタイミングチャートである。
図1の半導体装置において、故障判定回路の動作の一例(論理回路が故障し、さらに比較器も故障した場合)を示すタイミングチャートである。
図1の半導体装置において、故障判定回路の動作の一例(比較器が故障し、さらに別の比較器も故障した場合)を示すタイミングチャートである。
本発明の一実施の形態における半導体装置を適用したFPGAの構成の一例を示すブロック図である。
図13のFPGAにおいて、故障判定回路とスクラビング回路との時間的関係の一例を示す説明図である。

実施例

0015

以下の実施の形態においては、便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。

0016

さらに、以下の実施の形態において、その構成要素(要素ステップ等も含む)は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。

0017

[実施の形態の概要]
まず、実施の形態の概要について説明する。本実施の形態の概要では、一例として、括弧内に実施の形態の対応する構成要素の符号等を付して説明する。

0018

実施の形態の代表的な半導体装置は、三重化された論理回路(10,11,12)と、前記三重化された論理回路の2個ずつの出力を比較する3個の比較器(20,21,22)と、前記三重化された論理回路の3個の出力の多数決をとる1個の多数決回路(30)と、前記三重化された論理回路および前記3個の比較器の故障判定を行う1個の故障判定回路(40)と、を有する。前記故障判定回路は、故障判定論理回路(41)と、前記故障判定論理回路の出力を保持する故障判定レジスタ(42)と、を有する。前記故障判定論理回路は、前記比較器の3個の出力と、前記故障判定レジスタの保持している値との論理をとる。

0019

以下、上述した実施の形態の概要に基づいた一実施の形態を図面に基づいて詳細に説明する。なお、一実施の形態を説明するための全図において、同一の部材には原則として同一の符号または関連する符号を付し、その繰り返しの説明は省略する。また、以下の一実施の形態では、特に必要なとき以外は同一または同様な部分の説明を原則として繰り返さない。

0020

[一実施の形態]
本実施の形態における半導体装置について、図1図14を用いて説明する。

0021

<半導体装置>
まず、図1を用いて、本実施の形態における半導体装置の構成について説明する。図1は、この半導体装置の構成の一例を示すブロック図である。

0022

本実施の形態における半導体装置は、3個の論理回路10,11,12と、3個の比較器20,21,22と、1個の多数決回路30と、1個の故障判定回路40とを有する。

0023

論理回路10,11,12は、三重化された論理回路である。各論理回路10,11,12は、例えば、プロセッサなどからなり、同じ構成で、故障が無ければ、同じ動作を行い、同じ値を出力する回路である。各論理回路10,11,12の出力は、それぞれA,B,Cとする。論理回路10,11,12の各出力A,B,Cは、所定のバス幅とする(太線で図示)。

0024

比較器20,21,22は、論理回路10,11,12に接続され、論理回路10,11,12の2個ずつの出力を比較する比較器である。比較器20は、論理回路10の出力Aと論理回路11の出力Bとを入力に持ち、この出力Aと出力Bとを比較する比較器である。この比較器20の比較結果の出力は、D0とする。比較器21は、論理回路11の出力Bと論理回路12の出力Cとを入力に持ち、この出力Bと出力Cとを比較する比較器である。この比較器21の比較結果の出力は、D1とする。比較器22は、論理回路12の出力Cと論理回路10の出力Aとを入力に持ち、この出力Cと出力Aとを比較する比較器である。この比較器22の比較結果の出力は、D2とする。

0025

多数決回路30は、論理回路10,11,12に接続され、論理回路10,11,12の3個の出力の多数決をとる回路である。この多数決回路30は、論理回路10,11,12の出力A,B,Cを入力に持ち、この出力A,B,Cの多数決をとる回路である。この多数決回路30の多数決結果の出力は、OUTとする。

0026

故障判定回路40は、3個の比較器20,21,22に接続され、論理回路10,11,12および比較器20,21,22の故障判定を行う回路であり、故障判定論理回路41と、故障判定レジスタ42とを有する。故障判定論理回路41は、比較器20,21,22の3個の出力D0,D1,D2と、故障判定レジスタ42の保持している値(F)との論理をとり、故障判定を行う回路である。この故障判定論理回路41の故障判定結果の出力は、Eとする。故障判定レジスタ42は、故障判定論理回路41の出力Eを入力に持ち、この出力Eを保持するレジスタである。この故障判定レジスタ42の保持する出力は、Fとする。この故障判定レジスタ42の出力Fは、故障判定論理回路41の1つの入力となる。また、この故障判定レジスタ42には、リセット信号RSTが入力される。

0027

<多数決回路>
図2を用いて、前述した多数決回路30の構成について説明する。図2は、この多数決回路30の構成の一例を示す回路図である。図2では、所定のバス幅のうちの1ビット分を示しており、この図2の構成をバス幅に応じた個数分用いる。

0028

多数決回路30は、論理回路10の出力A、論理回路11の出力B、論理回路12の出力Cを入力とし、この出力A,B,Cの多数決をビットごとに行う回路である。この多数決回路30では、3個の出力A,B,Cの多数決を行うことにより、出力A,B,Cのうちの2つが正しい値であれば、出力OUTは正しい値となる。

0029

図2では、所定のバス幅のうちの1ビット分(0ビット目)を示しており、論理回路10の出力A0、論理回路11の出力B0、論理回路12の出力C0の多数決をとり、この多数決結果を出力OUT0する構成である。この多数決回路30の1ビット分は、3個の2入力のNAND論理積否定ゲート101,102,103と、1個の3入力のNANDゲート104とからなる。NANDゲート101は、A0とB0とを入力として、結果を出力する。NANDゲート102は、B0とC0とを入力として、結果を出力する。NANDゲート103は、C0とA0とを入力として、結果を出力する。NANDゲート104は、NANDゲート101の出力とNANDゲート102の出力とNANDゲート103の出力とを入力とし、結果のOUT0を出力する。

0030

<比較器>
図3および図4を用いて、前述した比較器20,21,22の構成、さらに、比較器20,21,22の出力に対して可能性が高い故障状況について説明する。図3は、この比較器20,21,22の構成の一例を示す回路図である。図3では、比較器20を例として、論理回路10,11からの出力A,Bのバス幅が8ビットの場合を示している。

0031

比較器20は、論理回路10の出力Aと論理回路11の出力Bとを入力に持ち、この出力Aと出力Bとを比較し、この比較結果を出力D0する構成である。この比較器20は、ビットごとに排他的論理和をとり、それらの論理和をとる構成であり、これにより、AとBが1ビットでも異なると、出力D0が1となる。

0032

図3では、2個の2入力のXNOR(排他的論理和の否定)ゲート201,202と1個の2入力のNANDゲート203とからなる第1ブロック(破線で図示)が4セットと、2個の2入力のNOR(論理和の否定)ゲート211,212と1個の2入力のNANDゲート213とからなる第2ブロック(破線で図示)が1セットとからなる。例えば、XNORゲート201,202とNANDゲート203とからなる1つの第1ブロックでは、XNORゲート201はA0とB0とを入力とし、XNORゲート202はA1とB1とを入力とし、各結果を出力する。そして、NANDゲート203は、XNORゲート201の出力とXNORゲート202の出力とを入力として、結果を出力する。他の第1ブロック(A2,B2,A3,B3、A4,B4,A5,B5、A6,B6,A7,B7)においても同様である。

0033

さらに、NORゲート211,212とNANDゲート213とからなる第2ブロックでは、NORゲート211はA0,B0,A1,B1の第1ブロックの出力とA2,B2,A3,B3の第1ブロックの出力とを入力とし、NORゲート212はA4,B4,A5,B5の第1ブロックの出力とA6,B6,A7,B7の第1ブロックの出力とを入力として、各結果を出力する。そして、NANDゲート213は、NORゲート211の出力とNORゲート212の出力とを入力として、結果のD0を出力する。

0034

比較器20は、図3において、論理ゲートで描いているが、第1ブロック、第2ブロックの破線の箱ごとに、4入力のLUT(Look Up Table)で実現できる。このLUTは、4入力における各入力値に対する1出力における出力値の関係をテーブル形式にしたものである。

0035

以上の図3を用いて説明した比較器20の構成などは、他の比較器21,22においても同様である。

0036

図4は、比較器20,21,22の出力D0,D1,D2に対して可能性が高い故障状況の一例を示す説明図である。

0037

図4において、Dは、比較器20,21,22の出力D0,D1,D2の各1ビットの値を並べた3ビットの値を示している。

0038

(1)論理回路10,11,12および比較器20,21,22に故障が何もなければ、Dは3ビットとも0となる。すなわち、図4において、000=故障なし、の関係である。

0039

(2)論理回路10,11,12および比較器20,21,22に故障があっても、それが発現しないようなデータパターンになれば、Dは3ビットとも0となる。すなわち、図4において、000=故障なし、の関係である。

0040

(3)論理回路10,11,12が1個故障して誤った値を出力すると、他の2つの論理回路の出力との比較が不一致となるので、Dは2ビットが1となる。すなわち、図4において、011=論理回路10の故障、110=論理回路11の故障、101=論理回路12の故障、の関係である。

0041

(4)比較器20,21,22が、入力が一致でも1を出力するような故障となると、その比較器の出力だけが1となる。すなわち、図4において、001=比較器20の故障、010=比較器21の故障、100=比較器22の故障、の関係である。

0042

(5)論理回路10,11,12が2個故障すると、たまたま同じ値をとるような故障でなければ、論理回路の出力がばらばらな値となり、比較器20,21,22がいずれも1を出力する。すなわち、図4において、111=多重故障、の関係である。

0043

なお、図4以外の故障状況も考えられる。例えば、比較器20,21,22に入力が不一致でも0を出力するような故障があり、論理回路10,11,12が1個故障すると、Dは1ビットだけが1となる。また、2個の比較器20,21,22が、入力が一致でも1を出力するような故障となると、論理回路10,11,12が故障していなくとも、Dの2ビットが1となる。これらの確率は低いので、本実施の形態では考えられる例に留める。

0044

<故障判定回路>
図5図12を用いて、前述した故障判定回路40の状態遷移、さらに、故障判定回路40の構成やタイミングチャートなどについて説明する。図5は、この故障判定回路40の状態遷移の一例を示す説明図である。

0045

図5において、丸の中に故障判定レジスタ42が保持している値Fを示している。また、Dは比較器20,21,22の出力であり、RSTは故障判定レジスタ42へのリセット信号である。故障判定レジスタ42が保持している値Fには、000,001,010,100,011,110,101,111がある。比較器20,21,22の出力Dには、000,001,010,100,011,110,101,111がある。

0046

(1)故障判定レジスタ42がリセットされた状態では、この故障判定レジスタ42が保持している値Fは000となる。これは、図5上段の状態である。

0047

(2)故障判定レジスタ42が保持している値Fが000のとき、比較器20,21,22の出力Dが000以外になると、Dの値をFとする。これは、図5の上段から中段または下段への遷移である。すなわち、論理回路および比較器の故障なし状態から論理回路または比較器の故障状態への遷移、または、論理回路および比較器の故障なし状態から論理回路および比較器の多重故障状態への遷移である。

0048

(3)故障判定レジスタ42が保持している値Fが000,111以外のとき、比較器20,21,22の出力Dが000もしくはFと同じ値であるとき、Fの値は保持される。これは、図5の中段の保持である。

0049

(4)故障判定レジスタ42が保持している値Fが000,111以外のとき、比較器20,21,22の出力Dが000もしくはFと同じ値以外の値であるとき、Fの値は111となる。これは、図5の中段から下段への遷移である。すなわち、論理回路または比較器の故障状態から論理回路および比較器の多重故障状態への遷移である。

0050

(5)故障判定レジスタ42が保持している値Fがいかなる状態であっても、リセット信号RSTによってFは000となる。これは、図5の中段または下段から上段への遷移である。すなわち、論理回路または比較器の故障状態から論理回路および比較器の故障なし状態への遷移、または、論理回路および比較器の多重故障状態から論理回路および比較器の故障なし状態への遷移である。

0051

(6)比較器20,21,22の出力Dが000以外の2種類の値をとれば、故障判定レジスタ42が保持している値Fを111とすることにより、多重故障が判定できる。

0052

図6は、故障判定回路40の構成の一例を示す回路図である。

0053

故障判定回路40は、3個の判定論理回路411〜413からなる故障判定論理回路41と、3個のフリップフロップFF)421〜423からなる故障判定レジスタ42とを有する。

0054

故障判定論理回路41において、3個の判定論理回路411〜413は同じ論理である。判定論理回路411は、F0,D0,F1,D1,F2,D2を入力として、判定論理の結果E0を出力する。判定論理回路412は、F1,D1,F2,D2,F0,D0を入力として、判定論理の結果E1を出力する。判定論理回路413は、F2,D2,F0,D0,F1,D1を入力として、判定論理の結果E2を出力する。

0055

故障判定レジスタ42において、3個のフリップフロップ421〜423は、それぞれ、判定論理回路411〜413からの出力E0,E1,E2を入力として、保持している値F0,F1,F2を出力する回路である。また、3個のフリップフロップ421〜423は、それぞれ、リセット信号RSTが入力されることで、保持している値F0,F1,F2がリセットされる。フリップフロップ421は、E0を入力として、保持している値F0を出力する。フリップフロップ422は、E1を入力として、保持している値F1を出力する。フリップフロップ423は、E2を入力として、保持している値F2を出力する。

0056

図7は、故障判定回路40の真理値表の一例を示す説明図である。図7に示す真理値表は、図5に示した状態遷移を実現する。図7において、Dは比較器20,21,22の出力であり、Fは故障判定レジスタ42が保持している値を示している。

0057

例えば、F=000のとき、D=001になると、F=001となる。同様に、F=000のとき、D=011,010,110,111,101,100になると、それぞれ、F=011,010,110,111,101,100となる。これは、図5における上段から中段または下段への遷移である。なお、F=000のとき、D=000では、F=000を保持する。

0058

例えば、F=001のとき、D=011になると、F=111となる。同様に、F=001のとき、D=010,110,111,101,100になると、いずれも、F=111となる。これは、図5における中段(F=001)から下段への遷移である。なお、F=001のとき、D=000,001では、どちらも、F=001を保持する。また、F=001のような状態遷移または保持は、F=011,010,110,101,100でも同様である。

0059

例えば、F=111のとき、D=000,001,011,010,110,111,101,100では、いずれも、F=111を保持する。

0060

図8は、判定論理回路411〜413の構成の一例を示す回路図である。図8では、判定論理回路411を例として示している。

0061

判定論理回路411は、4個の3入力(1入力は否定入力)のAND(論理積)ゲート301〜304と、1個の6入力のOR(論理和)ゲート305とからなる。ANDゲート301は、F1(否定入力),D1,F2を入力として、結果を出力する。ANDゲート302は、D1(否定入力),F1,D2を入力として、結果を出力する。ANDゲート303は、F1,D2,F2(否定入力)を入力として、結果を出力する。ANDゲート304は、D1,F2,D2(否定入力)を入力として、結果を出力する。ORゲート305は、F0,D0とANDゲート301〜304の各出力とを入力とし、結果のE0を出力する。

0062

判定論理回路411は、図8において、論理ゲートで描いているが、1個の6入力のLUTで実現できる。このLUTは、6入力における各入力値に対する1出力における出力値の関係をテーブル形式にしたものである。

0063

以上の図8を用いて説明した判定論理回路411の構成などは、他の判定論理回路412,413においても同様である。

0064

図9図12は、故障判定回路40の動作の一例を示すタイミングチャートである。図9図12では、クロック信号CLKに同期して各回路が動作し、クロック信号の立ち上がり時間T0〜T10からの各周期サイクルとする。

0065

図9は、論理回路12が故障し、さらに論理回路11も故障した場合の例である。T2からのサイクルで、論理回路12が故障して、Dが101(D2=1、D1=0、D0=1)になることにより、F0及びF2が1となる。論理回路12に故障が起きても、データパターンが変化することにより、その出力CがA及びBと不一致を続けるとは限らない。例えば、T4のタイミングで出力が変化した結果Dが000(D2=0、D1=0、D0=0)に戻っても、故障判定レジスタ42により、Fは論理回路12の故障を示す101(F2=1、F1=0、F0=1)を維持する。

0066

さらに、T8で論理回路11が故障して、Dが110(D2=1、D1=1、D0=0)になると、故障判定回路40は2種類目の故障であると判定し、FはT9で多重故障を示す111(F2=1、F1=1、F0=1)を出力する。このように、2個の論理回路12,11の故障が同時に、比較結果Dに反映されなくても二重故障が検出できる。

0067

図10は、比較器20が故障し、さらに論理回路12も故障した場合の例である。T2からのサイクルで、比較器20が故障して、Dが001(D2=0、D1=0、D0=1)になることにより、F0が1となる。例えば、データパターンが変化することにより、Dが000(D2=0、D1=0、D0=0)に戻っても、故障判定レジスタ42により、Fは比較器20の故障を示す001(F2=0、F1=0、F0=1)を維持する。

0068

さらに、T8で論理回路12が故障して、Dが101(D2=1、D1=0、D0=1)になると、故障判定回路40は2種類目の故障であると判定し、FはT9で多重故障を示す111(F2=1、F1=1、F0=1)を出力する。このように、サイクル毎には一個回路ブロックにしか故障が無いような比較結果Dであっても、多重故障が検出できる。

0069

図11は、T2で論理回路12が故障し、さらにT8で比較器22も故障した場合の例である。T2での論理回路12の故障は、前述した図9と同様である。さらに、比較器22の故障により、CがA及びBと不一致であるのにDが100(D2=1、D1=0、D0=0)となると、Fは多重故障を示す111(F2=1、F1=1、F0=1)を出力する。このように、比較器22が0を出力してしまう故障も検出できる。

0070

図12は、T2で比較器20が故障し、さらにT8で比較器21も故障した場合の例である。T2での比較器20の故障は、前述した図10と同様である。さらに、比較器21の故障により、Dが010(D2=0、D1=1、D0=0)となると、Fは多重故障を示す111(F2=1、F1=1、F0=1)を出力する。このような多重故障も検出できる。

0071

以上、図9図12に示したように、故障判定論理回路41で、比較器20,21,22の3個の出力D0,D1,D2と、故障判定レジスタ42の保持している値F0,F1,F2の論理をとることにより、2種類の故障発生を検出する。これにより、多重故障を高い確率で判定でき、安全性が高まる。

0072

なお、前述した特許文献1の図17にステータスレジスタを設けた構成が示されているが、図18に示されているように、値を一時的に保持しているだけで、故障の判定に用いる本発明の概念は言及されていない。

0073

以上説明した故障判定回路40は、3個の6入力のLUT(故障判定論理回路41)と、3個のフリップフロップ(故障判定レジスタ42)で実現できるので、回路規模が小さい。また、故障判定回路40の故障の確率は低い。

0074

<FPGA>
図13図14を用いて、前述した半導体装置をFPGAに適用した場合について説明する。図13は、このFPGAの構成の一例を示すブロック図である。FPGAは、多数の論理ゲート間の論理関係と接続関係とを記述したコンフィグレーションデータを、FPGAが備えるコンフィグレーションRAMに書き込むことで、所定の論理回路として機能する。本実施の形態におけるFPGAは、コンフィグレーションRAM(図示省略)で論理が決まるFPGAである。

0075

FPGAは、三重化されたプロセッサ10a,11a,12aと、3個の比較器20,21,22と、1個の多数決回路30と、1個の故障判定回路40と、FPGA制御回路50と、スクラビング回路60とを有する。このFPGAにおいて、プロセッサ10a,11a,12aと、比較器20,21,22と、多数決回路30と、故障判定回路40とが、FPGAファブリックユーザ論理で構成される。プロセッサ10a,11a,12aは、図1に示した論理回路10,11,12の一例である。比較器20,21,22、多数決回路30、および、故障判定回路40は、図1に示した各回路と同じである。

0076

FPGA制御回路50は、FPGAのコンフィグレーションなど動作全体を制御する回路である。このFPGA制御回路50は、故障判定回路40に接続され、故障判定回路40との間で、故障判定回路40の出力FがFPGA制御回路50に入力され、FPGA制御回路50からリセット信号RSTが故障判定回路40に入力される。

0077

スクラビング回路60は、FPGA制御回路50に接続され、コンフィグレーションRAMを一定の間隔で巡回してエラー修正を行うためのスクラビングを行う回路である。

0078

図14は、故障判定回路40とスクラビング回路60との時間的関係の一例を示す説明図である。

0079

スクラビング回路60は、コンフィグレーションRAMを一巡した後、故障判定回路40の故障判定レジスタ42をリセット信号RSTで000にリセットする。図14では、巡回n回目、巡回n+1回目、巡回n+2回目を示しており、巡回の各回は巡回開始から巡回終了までの時間である。故障判定レジスタ42のリセットは、リセット信号RSTの入力により巡回の各回の巡回終了時に行われる。

0080

スクラビングn回目終了時とn+1回目開始時との間で発生した故障[1]は、スクラビングn+1回目で修理し、故障判定レジスタ42が保持している値Fをn+1回目終了時にリセットする。故障[1]の発生から修理までの間は故障期間[1]となる。

0081

スクラビングn+1回目開始時とn+1回目終了時との間で発生した故障[2]は、スクラビングn+1回目終了時では修理せず、Fをリセットするが、その直後に故障判定回路40が故障[2]を再検出するために問題がない。なお、この故障[2]はスクラビングn+2回目で修理し、Fをn+2回目終了時にリセットする。故障[2]の発生から修理までの間は故障期間[2]となる。

0082

以上説明したFPGAでは、多重故障が高い確率で検出できるので、プロセッサ10a,11a,12aの1つに故障が発生した後、他の2つのプロセッサで二重化動作を続けても安全性が高い。さらに、スクラビングとの組合せが好適である。

0083

また、FPGAに適用する場合に、故障判定回路40をハードマクロとすると、故障判定回路40のコンフィグレーションRAMソフトエラーの恐れをなくせる。また、故障判定回路40の規模は小さいので、面積ペナルティは小さい。

0084

<変形例>
本実施の形態においては、以下のような変形例が可能である。

0085

例えば、故障判定回路40を、二重化や三重化することも可能である。二重化して故障判定結果の論理和をとれば、論理和をとる回路の故障の恐れが加わるが、1個の故障判定回路が故障しても安全側故障になる。三重化して故障判定回路の多数決をとれば、多数決をとる回路の故障の恐れが加わるが、1個の故障判定回路が故障しても影響を除去できる。故障判定回路の回路規模は小さいので、多重化してもFPGAファブリックの使用量でのペナルティは小さい。

0086

また、三重化された論理回路10,11,12が、それぞれ別チップであるようなシステムにも適用することが可能である。

0087

<実施の形態の効果>
以上説明した本実施の形態における半導体装置によれば、多重故障を検出して安全性を向上することができる。すなわち、故障判定レジスタ42に故障の状態を保持しておくことにより、別な種類の故障発生を検出できるので、多重故障を検出することが可能となる。この結果、多重故障を検出できるので、安全性を向上することが可能となる。

0088

本実施の形態における半導体装置は、高信頼性を必要とされる用途(例えばインフラ系装置など)でのFPGAに適用可能であり、さらに、高信頼コンピュータシステムなどへの応用も可能となる。

0089

より詳細には、以下の通りである。

0090

(1)故障判定論理回路41は、比較器20,21,22の3個の出力と、故障判定レジスタ42の保持している値との論理をとることで、2種類の故障発生を検出することができる。これにより、多重故障を高い確率で判定できるので、安全性を高めることが可能となる。

0091

(2)半導体装置は、FPGAに適用することができる。

0092

(3)半導体装置は、コンフィグレーションRAMで論理が決まるFPGAに適用することができる。

0093

(4)半導体装置は、スクラビング回路60を有することで、コンフィグレーションRAMを一定の間隔で巡回してエラー修正を行うことができる。

0094

(5)スクラビング回路60の動作によってリセット信号RSTを生成し、このリセット信号RSTによって故障判定レジスタ42の保持している値をリセットすることができる。

0095

(6)比較器20,21,22の出力に基づいて、論理回路および比較器の故障なし、論理回路の故障、比較器の故障、および、論理回路および比較器の多重故障のいずれかの故障状況であるかを判定することができる。

0096

(7)多重故障として、1つの論理回路とさらに異なる別の論理回路が故障する場合、1つの比較器とさらに1つの論理回路が故障する場合、1つの論理回路とさらに1つの比較器が故障する場合、および、1つの比較器とさらに異なる別の比較器が故障する場合、を含むことができる。

0097

(8)故障判定回路40の状態遷移として、論理回路および比較器の故障なし状態から論理回路または比較器の故障状態への遷移、論理回路および比較器の故障なし状態から論理回路および比較器の多重故障状態への遷移、論理回路または比較器の故障状態から論理回路および比較器の多重故障状態への遷移、論理回路または比較器の故障状態から論理回路および比較器の故障なし状態への遷移、および、論理回路および比較器の多重故障状態から論理回路および比較器の故障なし状態への遷移、を含むことができる。

0098

(9)比較器20,21,22および故障判定論理回路41は、LUTで構成することができる。

0099

(10)論理回路10,11,12は、プロセッサ10a,11a,12aとすることができる。

0100

(11)故障判定回路40は、二重化または三重化することで、安全性を高めることができる。

0101

<他の実施の形態>
本実施の形態における半導体装置においては、三重化された論理回路を有する場合に限らず、四重化以上などの多重化された論理回路を有する場合にも適用可能である。この場合に、半導体装置は、多重化(四重化以上)された論理回路と、前記多重化された論理回路の複数個ずつの出力を比較する複数個の比較器と、前記多重化された論理回路の複数個の出力の多数決をとる1個の多数決回路と、前記多重化された論理回路および前記複数個の比較器の故障判定を行う1個の故障判定回路と、を有する。前記故障判定回路は、故障判定論理回路と、前記故障判定論理回路の出力を保持する故障判定レジスタと、を有する。前記故障判定論理回路は、前記比較器の複数個の出力と、前記故障判定レジスタの保持している値との論理をとる。

0102

このような四重化以上などの多重化された論理回路を有する半導体装置では、比較器を1段で接続する場合に限らず、2段などのように階層的に接続したり、各回路をLUTで実現することなどが考えられる。また、論理回路、比較器、多数決回路、故障判定回路の各回路の詳細などは、前記三重化された論理回路を有する場合で説明したものと同様である。

0103

以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。

0104

例えば、前記実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。

0105

10,11,12論理回路
10a,11a,12aプロセッサ
20,21,22比較器
30多数決回路
40故障判定回路
41故障判定論理回路
42 故障判定レジスタ
50FPGA制御回路
60スクラビング回路

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ