(57)【要約】【課題】ソフトエラーに対する耐性向上と回路規模の縮小を両立させることができない。【解決手段】クロック調整回路７は、入力クロック信号ＣＬＫのハイ状態とロウ状態の比率を、１つのマスタラッチ１のデータ保持時間帯を狭めるように調整し、ハイ状態（マスタラッチ１のデータ保持時間）を可及的に狭めて出力する。インバータ６はクロック調整回路７の出力を極性反転する。マスタラッチ１のトランスファーゲート４およびスレーブラッチ２−１〜２−３のトランスファーゲート５−１〜５−３は、クロック調整回路７およびインバータ６の出力により、データの通過を制御する。スレーブラッチ２−１〜２−３の出力は３入力多数決回路３で多数決をとられた後に出力信号Ｑとなる。【選択図】図１
2010273322.tif 000002
【特許請求の範囲】
【請求項１】
マスタラッチの後段に設けられた奇数個のスレーブラッチと、
前記マスタラッチおよびスレーブラッチへのデータの通過を制御するマスタラッチおよ
びスレーブラッチと１対１対応のトランスファーゲートと、
前記各スレーブラッチの出力の多数決をとって出力信号とする多数決回路と、
入力クロック信号のハイ状態とロウ状態の比率を前記マスタラッチのデータ保持時間帯を狭めるように調整して、前記マスタラッチおよび前記スレーブラッチの前記トランスファーゲートへ供給するクロック調整回路を有することを特徴とする多数決回路付きフリップフロップ回路。
【請求項２】
前記マスタラッチのデータ保持時間帯は、前記マスタラッチがデータを保持し、かつ前記スレーブラッチがデータを入力し得る最短時間であることを特徴とする請求項１に記載の多数決回路付きフリップフロップ回路。
【請求項３】
前記マスタラッチおよび付随するトランスファーゲートを１つとしたことを特徴とする
請求項１〜２に記載の多数決回路付きフリップフロップ回路。
【請求項４】
前記マスタラッチおよび付随するトランスファーゲートを奇数個とし、該各マスタラッ
チの出力の多数決をとる多数決回路を設けたことを特徴とする請求項１〜２に記載の多数
決回路付きフリップフロップ回路。
【請求項５】
前記スレーブラッチと１対１対応に多数決回路を設けたことを特徴とする請求項１〜４に記載の多数決回路付きフリップフロップ回路。
【請求項６】
前記スレーブラッチは、対応するトランスファーゲートの出力を入力する第１のインバータと該第１のインバータへ出力する第２のインバータから成り、
前記スレーブラッチと１対１対応の多数決回路は、前記第１のインバータの出力を入力し、前記第２のインバータへ出力すると共に、
前記スレーブラッチと１対１対応の多数決回路のいずれかを当該多数決回路付きフリップフロップ回路の出力としたことを特徴とする請求項５に記載の多数決回路付きフリップフロップ回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ信号の保持及び出力を行う論理回路に関し、特に、α線や二次宇宙線
中性子などの外的要因によるソフトエラーが発生しても正しい記憶内容を保持し出力する
ことができる多数決回路付きフリップフロップ回路に関する。
【背景技術】
【０００２】
α線や二次宇宙線中性子などの外的要因により、フリップフロップのデータが意図しな
い値に書き換えられてしまうソフトエラーに対し、耐性を高めるために、例えば、図１４
に示すように、それぞれがマスタラッチ１，スレーブラッチ２およびトランスファーゲー
ト４，５から成る３つのフリップフロップを配置して冗長化し、３つのフリップフロップ
の出力データを３入力多数決回路３にて多数決し、ソフトエラーの影響を回避する方策が
知られている。しかしながら、この方法では、それぞれがマスタラッチとスレーブラッチを有する同構成のフリップフロップを複数個設けるので、回路規模が大きくなり、論理回路が占める面積や消費電力も増加してしまう。
【０００３】
この問題を解決し回路規模を小さくするために、図１４のフリップフロップ回路に関連
して、３組のマスタラッチ１とスレーブラッチ２に代わって、２つのマスタラッチと１つ
のスレーブラッチとし、この３つのラッチで多数決することが公開されている。しかし、
この構成では、スレーブラッチのデータ保持時間帯でソフトエラーが発生した場合には、
その影響を回避できず正しいデータに復帰することができない。
【０００４】
なお、マスタラッチ回路とスレーブラッチ回路とから成るレジスタの前段に、データの取り込みタイミングを調整してマスタラッチ回路に供給する遅延調整回路を設け、近年のＣＰＵの高速化に対応するようにした技術も公開されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】WO２００４/１０５２４１号公報
【特許文献２】特開２０００−３１５３９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
解決しようとする問題点は、ソフトエラーに対する耐性向上と回路規模の縮小を両立さ
せることができない点である。
【課題を解決するための手段】
【０００７】
本発明は、クロック信号のハイ状態とロウ状態の比率を調整することによりマスタラッ
チの入力データ信号の保持時間を短縮して、マスタラッチのデータ保持時間中におけるソ
フトエラーに対する耐性を高めたことを最も主要な特徴とする。
【発明の効果】
【０００８】
本発明の多数決回路付きフリップフロップ回路は、マスタラッチを１つとし、その入力
データ信号の保持時間を可及的に短縮して、マスタラッチのデータ保持時間中のソフトエ
ラーの発生数を低減すると共に、スレーブラッチのデータ保持時間中のソフトエラーに対
しては多数決により、その影響を回避することにより、回路規模を縮小しながらソフトエ
ラーに対する耐性を向上させたことを利点とする。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例１を示す回路図である。
【図２】実施例１におけるクロック調整回路の詳細図である。
【図３】クロック調整回路の波形図である。
【図４】実施例１の動作を説明するための第１のタイミングチャートである。
【図５】実施例１の動作を説明するための第２のタイミングチャートである。
【図６】本発明の実施例２を示す回路図である。
【図７】実施例２における５入力多数決回路の回路図である。
【図８】５入力多数決回路の真理値表を示す図である。
【図９】本発明の実施例３を示す回路図である。
【図１０】実施例３のタイミングチャートである。
【図１１】実施例１〜実施例３の問題点を説明するためのタイミングチャートである。
【図１２】本発明の実施例４を示す回路図である。
【図１３】実施例４の動作を説明するためのタイミングチャートである。
【図１４】従来の多数決回路付きフリップフロップ回路例を示す回路図である。
【発明を実施するための形態】
【００１０】
ソフトエラーに対する耐性向上と回路規模の縮小を両立させるという目的を、マスタラ
ッチの個数を削減することとマスタラッチのデータ保持時間帯を短縮することとにより実
現した。
【実施例１】
【００１１】
図１は、本発明回路の実施例１の回路図であって、基本的には、マスタラッチ１とスレーブラッチ２、および各ラッチへのデータ信号の入力を制御するためのトランスファーゲート４，５から成る。そして、ソフトエラーの影響を回避するために、スレーブラッチ２を３つのスレーブラッチ２−１〜２−３とし、その出力について多数決をとる３入力多数決回路３を有する。図１４の回路と比べて、マスタラッチを１つとし、更にクロック調整回路７を設けた点が異なっている。３つのスレーブラッチ２−１〜２−３，３入力多数決回路３およびインバータ６は図１４の回路と同様である。
【００１２】
クロック調整回路７は、入力するクロック信号ＣＬＫのハイ状態とロウ状態の比率を、マスタラッチのデータ保持時間帯を狭めるように調整し、クロック信号ＣＬＫのハイ状態（マスタラッチ１のデータ保持時間）を可及的に狭めて出力する。その程度は、マスタラッチ１がデータを保持し、かつスレーブラッチ２がデータを入力し得る最短時間である。このように、マスタラッチは１つであるため多数決による保護は無いが、そのデータ保持時間帯を短縮すれば、マスタラッチ１におけるソフトエラー発生数は極めて少なくなるのである。インバータ６はクロック調整回路７の出力の極性を反転する。
【００１３】
クロック調整回路７の出力は、マスタラッチ１に対するトランスファーゲート４の負ゲートとスレーブラッチ２に対するトランスファーゲート５の正ゲートへ供給される。インバータ６の出力は、マスタラッチ１に対するトランスファーゲート４の正ゲートとスレーブラッチ２に対するトランスファーゲート５の負ゲートへ供給される。この結果、マスタラッチ１とスレーブラッチ２において、一方がデータ保持時間帯なら他方はデータ入力時間帯、一方がデータ入力時間帯なら他方はデータ保持時間帯となる。
【００１４】
トランスファーゲート４は、クロック信号ＣＬＫがハイ状態では閉じてデータ信号ＤＩ
Ｎのマスタラッチ１への入力を拒み、ロウ状態では開いてデータ信号ＤＩＮのマスタラッ
チ１への入力を許す。トランスファーゲート５は、逆に、クロック信号ＣＬＫがハイ状態
では開いてマスタラッチ１出力の入力を許し、ロウ状態では閉じてのマスタラッチ１出力
のスレーブラッチ２への入力を拒む。このように、スレーブ側入力の３つのトランスファ
ーゲート５−１〜５−３とスレーブラッチ２−１〜２−３は全て同じタイミングで動作を
する。
【００１５】
３入力多数決回路３は、スレーブラッチ２−１〜２−３の出力を多数決し、スレーブラッチ２−１〜２−３のいずれか１つにおいてソフトエラーが発生しても、それを訂正し多数決結果としてフリップフロップの出力信号Ｑとして正しい値を出力する。３入力多数決回路３は３つの２入力ＮＡＮＤと１つの３入力ＮＡＮＤで構成され、スレーブラッチ２−１と２−２の出力、スレーブラッチ２−１と２−３の出力、スレーブラッチ２−２と２−３の出力をそれぞれ２入力ＮＡＮＤに入力し、３つの２入力ＮＡＮＤ出力の否定論理和を３入力ＮＡＮＤでとっている。
【００１６】
クロック調整回路７でクロック信号ＣＬＫのロウ状態が長くなると、トランスファーゲ
ート４が開いている時間が長いことになる。しかし、その間はマスタラッチ１には常にデ
ータ信号ＤＩＮが入力されており、スレーブラッチ２−１〜２−３はデータ保持状態であ
る。従って、マスタラッチ１でソフトエラーが発生しても、マスタラッチ１からスレーブ
ラッチ２への入力はなく問題とならない。一方、クロック信号ＣＬＫがハイ状態の時は、
マスタラッチ１はデータ保持状態でスレーブラッチ２はデータ入力状態である。しかし、
クロック調整回路７を設けることによって、多数決の対象とならないマスタラッチ１のデ
ータ保持状態の時間を短くしたので、ソフトエラーの影響がフリップフロップの出力信号
Ｑとして顕在化する確率は極めて低いことになる。
【００１７】
図２はクロック調整回路７の詳細例を示す回路図であり、図３はそのタイミングチャー
トである。この回路例は、クロック信号ＣＬＫを遅延させる遅延ゲート８と、インバータ
９と、２入力のＡＮＤゲート１０で構成されている。クロック信号ＣＬＫはＡＮＤゲート
１０と遅延ゲート８に入力される。遅延ゲート８は、調整後クロック出力に基づいて、マスタラッチ１がデータを保持し、かつスレーブラッチ２−１〜２−３がデータを入力し得る最短時間だけクロック信号ＣＬＫを遅延させる。遅延ゲート８の出力はインバータ９で反転し、クロック信号ＣＬＫとＡＮＤゲート１０でＡＮＤすることで、マスタラッチ１がデータを保持できる最短のハイ状態の調整後クロック出力を作り出すことができる。
【００１８】
図４はソフトエラーが発生した時の動作をタイミングチャートで示したものである。上
述のように、クロック調整回路７を経過したクロック信号はハイ状態が短くなり、マスタ
ラッチ１のデータ保持状態の時間帯を短くしている。いま、クロック信号ＣＬＫがロウ状
態のタイミングｔ１においてスレーブラッチ２−３でソフトエラーａが発生し、スレーブ
ラッチ２−３の出力がハイ状態からロウ状態に下降したとする。スレーブラッチ２−３は
データ保持の状態であるためソフトエラー発生直後からエラー状態を保持している。３つ
のスレーブラッチ２−１〜２−３の出力は多数決回路３に入力されている。
【００１９】
多数決回路３に入力されたスレーブラッチ２−１の出力信号とスレーブラッチ２−２の
出力信号はＮＡＮＤゲートの論理でロウを出力している。一方、ソフトエラーが発生して
いるスレーブラッチ２−３の出力信号を入力している２つのＮＡＮＤゲートは共にハイを
出力している。このため、３入力ＮＡＮＤの出力、即ちフリップフロップの出力信号Ｑは
ハイ状態となり、スレーブラッチ２−３で発生したソフトエラーａは顕在化しない。
【００２０】
次に、マスタラッチ１でソフトエラーｂが発生したとする。前述のように、クロック調
整回路７の出力信号のハイ状態は非常に短い幅となるため、マスタラッチ１はデータ保持
状態が非常に短い。従って、ソフトエラーｂはタイミングｔ２のように、マスタラッチ１におけるデータ入力状態で発生する確率が高い。このソフトエラーｂは、トランスファーゲート５が閉じているため、スレーブラッチ２に受け入れられない。
【００２１】
ちなみに、クロック調整回路７が存在せず、図５に示すように、マスタラッチ１のデー
タ保持状態がデータ入力状態と同じ長さであれば、マスタラッチ１のデータ保持状態（ス
レーブラッチ２のデータ入力状態）でソフトエラーｂが発生する確率が高い。そして、ソ
フトエラーｂは全てのスレーブラッチ２に伝播してしまうので、多数決回路３を有してい
ても回復できないことになる。
【００２２】
このように、本発明のフリップフロップ回路では、クロック調整回路７を設けることに
よりマスタラッチ１でソフトエラーを保持する確率を小さくし、スレーブラッチ２は３つ
以上用意してそれぞれの出力を多数決回路３の論理を用いて誤り訂正を実施している。
【実施例２】
【００２３】
図６はスレーブラッチ２の数を５つとした多数決回路付きフリップフロップ回路の実施
例である。図１に比べて、スレーブラッチ２−１〜２−５、トランスファーゲート５−１
〜５−５と２つずつ増数し、５入力多数決回路１１となっている。図７は５入力多数決回
路１１の回路図、図８は５入力多数決回路１１の真理値表を示す。
【００２４】
本実施例でスレーブラッチ２−１と２−２がソフトエラーを発生したとする。例えば、
ソフトエラーが“１”から“０”へ化けたものであれば、スレーブラッチ２−３〜２−５
の出力は“１”であり、真理値表の８行目により出力信号Ｑは“１”であって、正しい値
を保持していることになる。また、ソフトエラーが“０”から“１”へ化けたものであれ
ば、スレーブラッチ２−３〜２−５の出力は“０”であり、真理値表の２５行目により出
力信号Ｑは“０”であって、正しい値を保持していることになる。
【実施例３】
【００２５】
図９はマスタラッチを複数構成とし、これに対しても多数決回路を設けた多数決回路付
きフリップフロップ回路の実施例である。３つのマスタラッチ１−１〜１−３におけるデ
ータ保持時間帯におけるマスタラッチ１−１〜１−３でのソフトエラーに対しても、３入
力多数決回路１２により正しいデータの保持に万全を期したものである。この例は、図６
のフリップフロップ回路に適用したものであるが、図１のフリップフロップ回路について
も同様に適用することができる。
【００２６】
図１０はソフトエラーが発生した時の動作をタイミングチャートで示したものである。
いま、スレーブラッチ２−１〜２−５がデータ保持状態において、この内の２つのスレー
ブラッチ２でソフトエラーａとｂが発生したとする。ソフトエラーが同時に２つ発生して
もスレーブラッチ２−１〜２−５の出力が多数決で正常な値を示すことになるため、ソフ
トエラーの顕在化は回避されフリップフロップの出力信号Ｑは正常な値を出力する。また、マスタラッチ１−１〜１−３の内の１つがデータ保持時間帯でソフトエラーｃを保持することがあっても、３入力多数決回路１２でソフトエラーの顕在化を回避できる。
【００２７】
このように、図１や図６のように元々ソフトエラーの発生確率を低減させていたマスタ
ラッチ１にも誤り訂正機能を追加し、かつスレーブラッチ２の誤り訂正機能を向上させる
ことでソフトエラーの顕在化を極限まで低く抑えることが可能となる。
【実施例４】
【００２８】
以上に説明した実施例、例えば実施例１のスレーブラッチ２−１において、図１１に示すようにデータ保持時間帯でソフトエラーが発生すると、そのデータ保持期間中、スレーブラッチ２−１は誤ったデータを保持し続ける。この状態はクロック調整回路７の出力信号が次にハイ状態（スレーブラッチがデータ入力状態）となるまで持続する。この状態において、例えば、スレーブラッチ２−３においてソフトエラーが発生すると、もはや３入力多数決回路３によって救済することができない。
【００２９】
そこで、この実施例では、スレーブラッチと１対１対応に多数決回路を設けることとする。図１２は実施例１（図１）に対応するものであって、スレーブラッチ２−１〜２−３と１対１対応に３入力多数決回路３−１〜３−３を設けている。３入力多数決回路３−１においては、３入力多数決回路３−１〜３−３の右向きのインバータの出力について多数決し、その出力を３入力多数決回路３−１の左向きのインバータへ入力する。３入力多数決回路３−２〜３−３についても同様である。３入力多数決回路３−１〜３−３いずれの出力もフリップフロップ回路の出力信号Ｑとすることができる。
【００３０】
このような構成の結果、例えば、３入力多数決回路３−１においてデータ保持時間帯でソフトエラーａが発生しても、図１３に示すように、短時間で訂正される。この訂正に要する時間は、３入力多数決回路３−１における２入力力ＮＡＮＤと３入力ＮＡＮＤをデータが通過するに要する時間である。従って、ソフトエラーａが発生したのと同じデータ保持時間帯で３入力多数決回路３−２または３入力多数決回路３−３においてソフトエラーが発生しても重複する確率は低く、フリップフロップ回路の出力Ｑは正しいデータとなる。
【００３１】
なお、実施例４の着想を実施例２または実施例３に適用できることは勿論のことである。
【００３２】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下に限定されない。
【００３３】
（付記１）マスタラッチの後段に設けられた奇数個のスレーブラッチと、マスタラッチおよびスレーブラッチへのデータの通過を制御するマスタラッチおよびスレーブラッチと１対１対応のトランスファーゲートと、各スレーブラッチの出力の多数決をとって出力信号とする多数決回路と、入力クロック信号のハイ状態とロウ状態の比率をマスタラッチのデータ保持時間帯を狭めるように調整して、マスタラッチおよびスレーブラッチのトランスファーゲートへ供給するクロック調整回路を有することを特徴とする多数決回路付きフリップフロップ回路。
【００３４】
（付記２）マスタラッチのデータ保持時間帯は、マスタラッチがデータを保持し、かつスレーブラッチがデータを入力し得る最短時間であることを特徴とする付記１に記載の多数決回路付きフリップフロップ回路。
【００３５】
（付記３）マスタラッチおよび付随するトランスファーゲートを１つとしたことを特徴とする付記１〜２に記載の多数決回路付きフリップフロップ回路。
【００３６】
（付記４）マスタラッチおよび付随するトランスファーゲートを奇数個とし、該各マスタラッチの出力の多数決をとる多数決回路を設けたことを特徴とする付記１〜２に記載の多数決回路付きフリップフロップ回路。
【００３７】
（付記５）スレーブラッチと１対１対応に多数決回路を設けたことを特徴とする付記１〜４に記載の多数決回路付きフリップフロップ回路。
【００３８】
（付記６）スレーブラッチは、対応するトランスファーゲートの出力を入力する第１のインバータと該第１のインバータへ出力する第２のインバータから成り、スレーブラッチと１対１対応の多数決回路は、第１のインバータの出力を入力し、第２のインバータへ出力すると共に、スレーブラッチと１対１対応の多数決回路のいずれかを当該多数決回路付きフリップフロップ回路の出力としたことを特徴とする付記５に記載の多数決回路付きフリップフロップ回路。
【符号の説明】
【００３９】
１        マスタラッチ
２        スレーブラッチ
３，１２  ３入力多数決回路
４，５    トランスファーゲート
６，９    インバータ
７        クロック調整回路
８        遅延ゲート
１０      ＡＮＤゲート
１１      ５入力多数決回路
【図１】
2010273322.tif 000003
【図２】
2010273322.tif 000004
【図３】
2010273322.tif 000005
【図４】
2010273322.tif 000006
【図５】
2010273322.tif 000007
【図６】
2010273322.tif 000008
【図７】
2010273322.tif 000009
【図８】
2010273322.tif 000010
【図９】
2010273322.tif 000011
【図１０】
2010273322.tif 000012
【図１１】
2010273322.tif 000013
【図１２】
2010273322.tif 000014
【図１３】
2010273322.tif 000015
【図１４】
2010273322.tif 000016