(57)【要約】【課題】ＬＵＴ３４への書込内容を工夫してソフトエラーを顕在化させる。【解決手段】４入力１出力のＬＵＴ３４を多数具備したＬＵＴ型ＦＰＧＡ(30)に二線式検査回路(15)を書込搭載する際、ＬＵＴ３４ａ，３４ｂ，３４ｃそれぞれに論理素子２１，２２，２３を一つずつ分散して書込搭載するとともに、各ＬＵＴ３４ａ，３４ｂ，３４ｃの４入力のうち搭載した論理素子の２入力の何れも入力されないところには固定値“０”を入力することにより、ＬＵＴ３４ａ，３４ｂ，３４ｃの何れについても、搭載した論理素子の２入力の全ビットパターンの何れかにアドレスの対応する４箇所（△）に、読出箇所が限定されるようにする。ソフトエラーが比較照合結果の不一致の形で顕在化する。【選択図】        図１
2014197754.tif 000002
【特許請求の範囲】
【請求項１】
２入力１出力の論理素子の組み合わせ回路からなり比較照合対象データ対の各ビット対が総て２ビット異値の正規符号語である場合は２ビット異値の正規符号語を出力し他の場合は２ビット同値の非正規符号語を出力する二線式検査回路を、４入力以上の多入力のルックアップテーブルを多数具備したルックアップテーブル型フィールドプログラマブルゲートアレイに搭載した二線式検査回路搭載ＦＰＧＡにおいて、前記ルックアップテーブルのうち前記論理素子の何れかを書込搭載したものは、何れも、該論理素子の２入力の全ビットパターンの何れかにアドレスの対応する４箇所に読出箇所が限定されていることを特徴とする二線式検査回路搭載ＦＰＧＡ。
【請求項２】
前記ルックアップテーブルのうち前記論理素子の何れかを書込搭載したものが何れも多入力１出力のものであり、それらのルックアップテーブルそれぞれに前記論理素子が一つずつ分散して書込搭載されていることを特徴とする請求項１記載の二線式検査回路搭載ＦＰＧＡ。
【請求項３】
前記ルックアップテーブルのうち前記論理素子の何れかを書込搭載したものの多入力のうち、該論理素子の２入力の何れも入力されないところには、固定値が入力されるようになっていることを特徴とする請求項１又は請求項２に記載された二線式検査回路搭載ＦＰＧＡ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、フェールセーフ比較回路などに組み込まれる二線式検査回路をシングルチップ・ワンチップのルックアップテーブル型フィールドプログラマブルゲートアレイにてＬＳＩ化した二線式検査回路搭載ＦＰＧＡに関する。
二線式検査回路は、比較照合対象データ対が一致していているか否かを調べる論理回路であって、片方反転下で対比されるビット対が総て２ビット異値の正規符号語になっていれば即ち２ビットの符号語のうち“０１”又は“１０”になっていれば一つの正規符号語“０１”又は“１０”を出力するが、そうでなければ２ビット同値の非正規符号語すなわち２ビットの符号語のうち“００”又は“１１”を出力するようになっている。
ルックアップテーブル型フィールドプログラマブルゲートアレイ（本明細書ではＬＵＴ型ＦＰＧＡや単にＦＰＧＡとも呼ぶ）は、多入力１出力の組み合わせ回路に相当する論理関数を書込可能な汎用ロジックをＳＲＡＭ等のルックアップテーブル（本明細書では単にＬＵＴとも呼ぶ）で具現化した汎用ＩＣである。
【背景技術】
【０００２】
鉄道信号保安装置などの鉄道信号制御分野で用いられる多重系電子計算機には、複数の電子計算機（コンピュータ，ＣＰＵ）のバスラインの情報を比較する二線式検査回路とその結果を交番信号で出力する振子回路とを組み合わせたバス照合回路が具備されており、そのＬＳＩ化も図られている。すなわち（例えば特許文献１〜５参照）、同期して動作する一対のコンピュータそれぞれの入出力情報を入力してその入出力情報対を比較する二線式検査回路と、前記入出力情報対が一致しているときには前記入出力情報に対応する交番信号を出力するが前記入出力情報対が一致しないときにはその交番信号の出力を停止する振子回路と、前記二線式検査回路と前記振子回路とを搭載したシングルチップ（ワンチップ）の半導体集積回路装置（ＬＳＩ，ＩＣ）とを備えたバス照合回路が、実用化されて、フェールセーフコンピュータ等に応用されている。
【０００３】
図６は、従来の基本的なバス照合回路の構造を示し、（ａ）がバス照合回路１０のブロック図、（ｂ）が二線式検査回路１５と振子回路１６のブロック図、（ｃ）が基本の絞込回路２０の回路図である。また、図７（ａ）は、絞込回路２０の半分を占める絞込回路半分２１〜２３の回路図であり、残りの半分を占める同一構成の絞込回路半分２４〜２６も括弧内の符号にて示している。なお、同図（ｂ）は、絞込回路半分２１〜２３又は２４〜２６と等価であるが別態様で具現化された絞込回路半分２７〜２９の回路図である。
それらの構成等は詳細に知られているので（例えば特許文献１，２参照）、ここでは、後述する本願発明の理解に役立つ部分を、掻い摘んで説明する。
【０００４】
このバス照合回路１０は（図６（ａ）参照）、Ａ系ＣＰＵ（第１コンピュータ）からその入出力情報Ｄａを入力するための第１ラッチ部１１，１２即ちＡ系ラッチ制御回路１１及びＡ系ラッチ回路１２と、Ｂ系ＣＰＵ（第２コンピュータ）からその入出力情報Ｄｂを入力するための第２ラッチ部１３，１４即ちＢ系ラッチ回路１３及びＢ系ラッチ制御回路１４と、Ａ系ラッチ回路１２から入出力情報Ｄａを入力するとともにＢ系ラッチ制御回路１４から入出力情報Ｄｂをビット反転させた入出力情報Ｄｂ￣（図ではアッパーライン付きＤｂで表しているが、本明細書では「入出力情報Ｄｂ￣」と記す）を入力してそれらの入出力情報対Ｄａ，Ｄｂ（比較照合対象データ対）を比較する二線式検査回路１５と、二線式検査回路１５が比較結果として二線式符号で出力した出力符号語“ＸＹ”を入力して出力符号語“ＸＹ”が正規符号語“０１”又は“１０”であるときは入出力情報対Ｄａ，Ｄｂに対応する交番信号を出力するが出力符号語“ＸＹ”が非正規符号語“００”又は“１１”であるときはその交番信号の出力を停止する振子回路１６と、最終的な照合結果をリレー信号で出力するために交番信号検出回路１７によって駆動されて交番信号出力の有無に応じて励磁／非励磁される正常リレーＲとを具備している。
【０００５】
二線式検査回路１５は（図６（ｂ）参照）、基本の絞込回路２０をツリー状の多列多段に連ねたものであり、基本の絞込回路２０は（図６（ｃ）参照）、入力した二つの符号語“ＡＢ”，“ＣＤ”を一つの符号語“ＥＦ”に集約して出力するものであるが、集約に際して、二つの入力符号語が何れも正規符号語であれば正規符号語を一つ出力し、それ以外のときには非正規符号語を一つ出力するようになっている。
二線式検査で用いる二線式符号では、通常のビット値“０”にはビット対“０１”が、通常のビット値“１”にはビット対“１０”が、対応しており、これらのビット対だけが即ち２ビット異値の符号語だけが正規符号語とされる。そして、それ以外のビット対である“００”や“１１”すなわち２ビット同値の符号語は非正規符号語とされる。
【０００６】
具体例を示した二線式検査回路１５は（図６（ｂ）参照）、Ａ系ＣＰＵもＢ系ＣＰＵもデータバスのライン数が８本の場合のものであり、Ａ系ＣＰＵの入出力情報Ｄａをなす８ビットのデータＤａ０〜Ｄａ７と、Ｂ系ＣＰＵの入出力情報Ｄｂをビット反転させた入出力情報Ｄｂ￣をなす８ビットのデータＤｂ０￣〜Ｄｂ７￣（図ではアッパーライン付きＤｂ０，Ｄｂ７等で表しているが、本明細書ではビットデータＤｂ０￣，Ｄｂ７￣等と記す）とを、各ビット毎の対応付けにて８対の二線式符号として入力し、それを一段目の４個の絞込回路２０で４対の二線式符号語に絞り込み、それを二段目の２個の絞込回路２０で２対の二線式符号語に絞り込み、それを三段目の１個の絞込回路２０で１対の二線式符号語に絞り込み、それを出力符号語“ＸＹ”として振子回路１６へ送出するようになっている。このような二線式検査回路１５は、Ａ系ＣＰＵの入出力情報ＤａとＢ系ＣＰＵの入出力情報Ｄｂとを入力して入出力情報対Ｄａ，Ｄｂ（比較照合対象データ対）を二線式符号にしてから二線式検査方式で比較し、入出力情報対Ｄａ，Ｄｂの一致時には正規符号語を出力するが不一致時には非正規符号語を出力するものとなっている。なお、バスラインの本数が８ビット以外の場合は、ライン数に応じて絞込回路２０の段数や列数を増減すれば良い。
【０００７】
また、二線式検査回路１５に前置されている第１ラッチ部１１，１２及び第２ラッチ部１３，１４は（図６（ａ）参照）、二線式検査の実施に必須のものではないが、比較タイミング整合等のため多くのものに設けられている。Ａ系ラッチ回路１２は、Ａ系ＣＰＵの入出力情報Ｄａを一時保持して二線式検査回路１５に送出するものであり、Ａ系ラッチ制御回路１１は、外部から与えられた又は内部で生成したクロックＣＬＫとＡ系ＣＰＵのデータ読出制御信号ＲＤａ及びデータ書込制御信号ＷＲａとに基づいてＡ系ラッチ回路１２のラッチ動作を制御するようになっている。Ｂ系ラッチ回路１３は、Ｂ系ＣＰＵの入出力情報Ｄｂを一時保持して二線式検査回路１５に送出するものであり、Ｂ系ラッチ制御回路１４は、上記のクロックＣＬＫとＢ系ＣＰＵのデータ読出制御信号ＲＤｂ及びデータ書込制御信号ＷＲｂとに基づいてＢ系ラッチ回路１３のラッチ動作を制御するようになっている。なお、図示の例では、Ｂ系ラッチ回路１３が入出力情報Ｄｂをビット反転させて入出力情報Ｄｂ￣にしてから二線式検査回路１５に送出するようになっているが、それに代えて、Ａ系ラッチ回路１２が反転出力するようにしても良く、二線式検査回路１５が入力時に入出力情報対Ｄａ，Ｄｂの何れか一方を反転させるようにしても良い。
【０００８】
振子回路１６は（図６（ｂ）参照）、二線式検査回路１５の出力符号語“ＸＹ”を入力して、それが正規符号語“０１”又は“１０”であるのか其れとも非正規符号語“００”又は“１１”であるのかを検出する符号語検出回路と、その検出結果をラッチするフリップフロップＦＦとを具えている。入出力情報対Ｄａ，Ｄｂが一致していて出力符号語“ＸＹ”が正規符号語“０１”又は“１０”になる状態が継続している間は、フリップフロップＦＦひいては振子回路１６の出力信号Ｚが交番信号になるが、そうでなく入出力情報対Ｄａ，Ｄｂが不一致のため出力符号語“ＸＹ”が非正規符号語“００”又は“１１”になったときには、出力信号Ｚが交番信号でなくなるように、振子回路１６が出来ている。
【０００９】
上述した二線式検査回路１５（図６（ｂ）参照）に多数組み込まれている絞込回路２０について更に説明すると（図６，図７参照）、一つの絞込回路２０は４入力２出力の論理回路であり（図６（ｃ）参照）、入出力情報対Ｄａ，Ｄｂ（比較照合対象データ対）の比較照合では（図６（ｂ）参照）、４入力Ａ，Ｂ，Ｃ，ＤとしてビットデータＤａ０，Ｄｂ０￣，Ｄａ１，Ｄｂ１￣が入力される絞込回路２０は、ビット対Ｄａ０，Ｄｂ０￣及びビット対Ｄａ１，Ｄｂ１￣が何れも正規符号語であるときだけ２出力Ｅ，Ｆとして正規符号語を出力し、４入力Ａ，Ｂ，Ｃ，ＤとしてビットデータＤａ２，Ｄｂ２￣，Ｄａ３，Ｄｂ３￣が入力される絞込回路２０は、ビット対Ｄａ２，Ｄｂ２￣及びビット対Ｄａ３，Ｄｂ３￣が何れも正規符号語であるときだけ２出力Ｅ，Ｆとして正規符号語を出力し、他の絞込回路２０も、同じく、４入力Ａ，Ｂ，Ｃ，Ｄとして二組の正規符号語が入力されたときだけ２出力Ｅ，Ｆとして正規符号語を出力し、他の場合は非正規符号語を出力するようになっている。
【００１０】
このような絞込回路２０は（図６（ｃ），図７（ａ）参照）、４入力Ａ，Ｄ，Ｂ，Ｃから２出力Ｅ，Ｆの一方の１出力Ｅを生成する絞込回路半分２１〜２３と、４入力Ｃ，Ａ，Ｄ，Ｂから２出力Ｅ，Ｆの他方の１出力Ｆを生成する絞込回路半分２４〜２６とからなり、それらの絞込回路半分２１〜２３，２４〜２６には入力が入れ替わっているという相違点があるものの、何れの絞込回路半分２１〜２３，２４〜２６も、三つの論理素子［２１，２２，２３］，［２４，２５，２６］で構成されている。論理素子２１，２２，２３は何れも２入力１出力のゲートで良く、三つの論理素子２１，２２，２３として二つのＡＮＤゲート２１，２２と一つのＯＲゲート２３とを用いた絞込回路半分２１〜２３と（図７（ａ）参照）、三つの論理素子２７，２８，２９何れにもＮＡＮＤゲートを用いた別態様の絞込回路半分２７〜２９とが公知である（図７（ｂ）参照）。
【００１１】
ここで、一般的な汎用のＬＵＴ型ＦＰＧＡ（ルックアップテーブル型フィールドプログラマブルゲートアレイ）についても、後述する本願発明の理解に役立つ部分を、掻い摘んで説明する。図８は、一般的なＬＵＴ型ＦＰＧＡ３０の概要構成図であり、図９は、（ａ）が汎用ロジック部３２のブロック図、（ｂ）がロジックエレメント３３のブロック図、（ｃ）が絞込回路２０を具現化したＬＵＴ（ルックアップテーブル）対３４，３４の例、（ｄ），（ｅ）が絞込回路半分２１〜２３を具現化したＬＵＴ３４の例である。
【００１２】
ＬＵＴ型ＦＰＧＡ３０は、縦横に配置された多数のデバイス内配線３１と汎用ロジック部３２とを具備しており（図８参照）、汎用ロジック部３２はそれぞれ多数のロジックエレメント３３を具備しており（図９（ａ）参照）、ロジックエレメント３３はＬＵＴ３４とレジスタ（フリップフロップ）３５とを具備しており（図９（ｂ）参照）、ＬＵＴ３４に論理演算値を書き込んで所望の論理関数・組み合わせ回路を具現化するとともに、それらや外部入出力端子をデバイス内配線３１を介して適宜接続することで、ユーザが所望のデジタル回路をワンチップＩＣ・シングルチップＬＳＩに搭載することができるようになっている。なお、順序回路を構築するときには、ＬＵＴ３４と共にレジスタ３５も用いられるようになっている。
【００１３】
ＬＵＴ３４は、一般に４入力１出力や６入力１出力のＳＲＡＭ等で構成されているので（例えば特許文献６段落０００２参照）、二線式検査回路１５をＬＵＴ型ＦＰＧＡ３０に搭載する際には、４入力１出力の絞込回路半分２１〜２３を一つのＬＵＴ３４に搭載するのが、自然であり、ＬＵＴ３４を無駄なく利用することができる。
具体例を挙げると（図９（ｃ）参照）、４入力Ａ，Ｂ，Ｃ，Ｄから１出力Ｅを生成する絞込回路半分２１〜２３を搭載するＬＵＴ３４には、４入力Ａ，Ｂ，Ｃ，Ｄを４ビットアドレスとして“００００”〜“１１１１”の各アドレスに１ビット値“０”，“０”，“０”，“０”，“０”，“０”，“１”，“１”，“０”，“１”，“０”，“１”，“０”，“１”，“１”，“１”が書き込まれる。
【００１４】
また、４入力Ａ，Ｂ，Ｃ，Ｄから１出力Ｆを生成する絞込回路半分２４〜２６を搭載する他のＬＵＴ（３４）には（図９（ｃ）破線枠部参照）、やはり４入力Ａ，Ｂ，Ｃ，Ｄを４ビットアドレスとして“００００”〜“１１１１”の各アドレスに１ビット値“０”，“０”，“０”，“０”，“０”，“１”，“０”，“１”，“０”，“０”，“１”，“１”，“０”，“１”，“１”，“１”が書き込まれる。
この場合、４入力Ａ，Ｂ，Ｃ，Ｄが“０１０１”，“０１１０”，“１００１”，“１０１０”のところは２出力Ｅ，Ｆがそれぞれ“０１”，“１０”，“１０”，“０１”という正規符号語になるが（図９（ｃ）○参照）、他のところは２出力Ｅ，Ｆが非正規符号語“００”又は“１１”になる（図９（ｃ）×参照）。
【００１５】
さらに、ＬＵＴ型ＦＰＧＡ３０については、ＬＵＴ３４に書き込まれたデータ値が宇宙線や放射線の影響で不所望に反転してしまうソフトエラー（ＳＥＲ）が発生しうることも知られている（例えば特許文献７段落００１８〜００２３参照）。
具体例としては、絞込回路半分２１〜２３を搭載したＬＵＴ３４のアドレス“０１１０”のデータ値が“１”→“０”に書き変わる場合（図９（ｄ）＊参照）や、絞込回路半分２１〜２３を搭載したＬＵＴ３４のアドレス“０１１１”のデータ値が“１”→“０”に書き変わる場合（図９（ｅ）＊参照）が挙げられる。
このようなソフトエラーは、単一現象故障（Ｓingle-Ｅvennt Ｕpset）であり、一カ所での発生確率が小さく、複数箇所でデータ値が反転する確率は更に小さい。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開昭６１−２０１３４２号公報
【特許文献２】特開平０４−１１９４３５号公報
【特許文献３】特開２００２−２４７０１２号公報
【特許文献４】特開２００２−３１２２５４号公報
【特許文献５】特開２００６−３３８０９４号公報
【特許文献６】特許３４１２７３１号公報
【特許文献７】特開２００８−０６６５９８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
もっとも、ソフトエラーの発生確率が小さいとは言え、二線式検査回路はフェールセーフのために用いられるものであるから、その回路が故障したときでも動作状態は安全側に維持されなければならない。
しかしながら、上述したＬＵＴ型ＦＰＧＡの各ＬＵＴに絞込回路半分を一つずつ書き込む通常の搭載態様では、ソフトエラーの発生箇所によっては、それによる回路故障が顕在化しないで潜在化する場合があり、その場合には比較照合対象データ対の不一致を見逃してしまうおそれがある。
【００１８】
上述の例で具体的に説明すると、先ず回路故障が顕在化する事例では、Ａ系ＣＰＵやＢ系ＣＰＵといった比較照合対象が未だ正常で入出力情報対Ｄａ，Ｄｂといった比較照合対象データ対が一致している状態で、絞込回路半分２１〜２３を搭載したＬＵＴ３４のアドレスとなる４入力Ａ，Ｂ，Ｃ，Ｄが“０１１０”のデータ値が“１”から“０”に反転した場合（図９（ｄ）＊参照）、このデータ値は正規符号語“１０”の半分を成しているため（図９（ｃ）参照）、絞込回路半分２１〜２３の出力ひいては絞込回路２０の出力さらには二線式検査回路１５の出力が非正規符号語に変化するので、比較照合対象データ対の不一致の検出という形で故障が顕在化する。
【００１９】
次に、回路故障が潜在化する事例であるが、絞込回路半分２１〜２３を搭載したＬＵＴ３４のアドレスとなる４入力Ａ，Ｂ，Ｃ，Ｄが“０１１１”のデータ値が“１”から“０”に反転した場合（図９（ｅ）＊参照）、この反転データ値は、非正規符号語“１１”の半分を成していて（図９（ｃ）参照）、比較照合対象が正常で比較照合対象データ対が一致している状態では未だアクセスされないため、故障が潜在化する。しかも、比較照合対象が異常になって比較照合対象データ対の不一致により上記の反転データ値がアクセスされると（図９（ｅ）＊参照）、該当する絞込回路２０の出力が、本来の正しい非正規符号語“１１”から（図９（ｃ）参照）、ソフトエラーにより誤った正規符号語“０１”になってしまうため、故障が潜在化し続けるばかりか、誤検知するおそれがある。
【００２０】
このように、ＬＵＴ型ＦＰＧＡの各ＬＵＴに絞込回路半分を一つずつ書き込む通常の搭載態様では、ＬＵＴのメモリアクセスが符号語に集中する謂わば符号語依存型になるため、非正規符号語書込箇所のソフトエラーが潜在化してしまうということが判明した。しかも、この潜在化は、二線式検査回路を二重化して一致確認するといった誤検知対策を施した場合ですら、比較照合対象データ対の不一致発生まで続く。そのため、二重化した一方の二線式検査回路でソフトエラーが潜在化している間に、他方の二線式検査回路でもソフトエラーが発生する可能性を無視することはできず、両方の二線式検査回路で非正規符号語の書込箇所にソフトエラーが発生した場合、その発生態様によっては二重化による誤検知の機能を喪失するおそれもある。
そこで、ＬＵＴへの書込内容を工夫することにより、ＬＵＴのソフトエラーが顕在化する二線式検査回路搭載ＦＰＧＡを実現することが技術的な課題となる。
【課題を解決するための手段】
【００２１】
本発明の二線式検査回路搭載ＦＰＧＡは（解決手段１）、このような課題を解決するために創案されたものであり、２入力１出力の論理素子の組み合わせ回路からなり比較照合対象データ対の各ビット対が総て２ビット異値の正規符号語である場合は２ビット異値の正規符号語を出力し他の場合は２ビット同値の非正規符号語を出力する二線式検査回路を、４入力以上の多入力のルックアップテーブルを多数具備したルックアップテーブル型フィールドプログラマブルゲートアレイに搭載した二線式検査回路搭載ＦＰＧＡにおいて、前記ルックアップテーブルのうち前記論理素子の何れかを書込搭載したものは、何れも、該論理素子の２入力の全ビットパターンの何れかにアドレスの対応する４箇所に読出箇所が限定されていることを特徴とする。
【００２２】
また、本発明の二線式検査回路搭載ＦＰＧＡは（解決手段２）、上記解決手段１の二線式検査回路搭載ＦＰＧＡであって、前記ルックアップテーブルのうち前記論理素子の何れかを書込搭載したものが何れも多入力１出力のものであり、それらのルックアップテーブルそれぞれに前記論理素子が一つずつ分散して書込搭載されていることを特徴とする。
【００２３】
さらに、本発明の二線式検査回路搭載ＦＰＧＡは（解決手段３）、上記解決手段１，２の二線式検査回路搭載ＦＰＧＡであって、前記ルックアップテーブルのうち前記論理素子の何れかを書込搭載したものの多入力のうち、該論理素子の２入力の何れも入力されないところには、固定値が入力されるようになっていることを特徴とする。
【発明の効果】
【００２４】
このような本発明の二線式検査回路搭載ＦＰＧＡにあっては（解決手段１）、二線式検査回路の論理素子を搭載したＬＵＴに対する読出アクセスが、搭載した論理素子の２入力の全ビットパターンの何れかにアドレスの対応する４箇所に限定されている。
一方、二線式検査回路に入力される比較照合対象データ対について、各絞込回路の４入力を見ると既述したように正常時は正規符号語しか入力されないが、初段の論理素子の２入力を見ると、対比されるビット対でなく、その隣のビット同士が入力されるため、データ値に依存するが正常時でも２ビットの全ビットパターンが入力される。また、他の論理素子の２入力についても、前段の論理素子の出力しだいであるが、やはり正常時であっても２ビットの全ビットパターンが入力される。
【００２５】
そして、そのようにデータ値に依存はするが正常時でもアクセスされうる４箇所に対して上述の如く読出アクセスが限定されるようにしたことにより、ＬＵＴにおける論理素子の書込搭載箇所にソフトエラーが発生した場合、発生箇所が何処であれ、入力された比較照合対象データ対が一致しているときであっても、データ値によっては二線式検査回路が不一致検出を出力するので、その時点で故障が顕在化する。
したがって、この発明によれば、ＬＵＴへの書込内容を符号語依存型からデータ依存型に変えたことにより、ＬＵＴのソフトエラーが顕在化する二線式検査回路搭載ＦＰＧＡを実現することができる。
【００２６】
また、本発明の二線式検査回路搭載ＦＰＧＡにあっては（解決手段２）、多入力１出力のルックアップテーブルに２入力１出力の論理素子を一つずつ分散して書込搭載することで、容易かつ的確に、上述した４箇所に読出箇所を限定することができる。
【００２７】
さらに、本発明の二線式検査回路搭載ＦＰＧＡにあっては（解決手段３）、ルックアップテーブルの入力について論理素子の２入力以外は固定値を入力することで、容易かつ的確に、アクセス範囲を絞り込めて、上述の４箇所に読出箇所を限定することができる。
【図面の簡単な説明】
【００２８】
【図１】本発明の実施例１について、二線式検査回路搭載ＦＰＧＡの構造を示し、（ａ）がバス照合回路の二線式検査回路の絞込回路半分に係る回路図、（ｂ）が３個の絞込回路半分を分散搭載したロジックエレメント３個のブロック図、（ｃ），（ｄ），（ｅ）が何れも絞込回路半分の各論理素子を具現化したＬＵＴ（ルックアップテーブル）である。
【図２】（ａ），（ｂ），（ｃ）が何れも絞込回路半分の各論理素子を具現化したＬＵＴであり、（ｄ），（ｅ）が何れも絞込回路の回路図である。
【図３】（ａ），（ｂ），（ｃ）が何れも絞込回路半分の各論理素子を具現化したＬＵＴであり、（ｄ），（ｅ）が何れも絞込回路の回路図である。
【図４】本発明の実施例２について、二線式検査回路搭載ＦＰＧＡの構造を示し、（ａ）がバス照合回路の二線式検査回路の絞込回路半分に係る回路図、（ｂ）が３個の絞込回路半分を分散搭載したロジックエレメント３個のブロック図、（ｃ），（ｄ），（ｅ）が何れも絞込回路半分の各論理素子を具現化したＬＵＴである。
【図５】本発明の実施例３について、二線式検査回路搭載ＦＰＧＡの構造を示し、（ａ），（ｂ）、何れも、二線式検査回路を二重化してＬＵＴ型ＦＰＧＡに搭載したバス照合回路のブロック図である。
【図６】従来の基本的なバス照合回路の構造を示し、（ａ）がバス照合回路のブロック図、（ｂ）が二線式検査回路と振子回路のブロック図、（ｃ）が基本の絞込回路の回路図である。
【図７】（ａ）が絞込回路半分の回路図、（ｂ）が別態様の等価な絞込回路半分の回路図である。
【図８】一般的なＬＵＴ型ＦＰＧＡの概要構成図である。
【図９】（ａ）が汎用ロジック部のブロック図、（ｂ）がロジックエレメントのブロック図、（ｃ）が絞込回路すなわち絞込回路半分２個を具現化したＬＵＴ（ルックアップテーブル）対の例、（ｄ），（ｅ）が絞込回路半分を具現化したＬＵＴの例である。
【発明を実施するための形態】
【００２９】
このような本発明の二線式検査回路搭載ＦＰＧＡについて、これを実施するための具体的な形態を、以下の実施例１〜３により説明する。
図１〜３に示した実施例１は、上述した解決手段１〜３（出願当初の請求項１〜３）を総て具現化したものであり、図４に示した実施例２や、図５に示した実施例３は、その変形例である。
なお、それらの図示に際し従来と同様の構成要素には同一の符号を付して示したので、また、それらについて背景技術の欄で述べたことは以下の実施例についても共通するので、重複する再度の説明は割愛し、以下、従来との相違点を中心に説明する。
【実施例１】
【００３０】
本発明の二線式検査回路搭載ＦＰＧＡの実施例１について、その具体的な構成を、図面を引用して説明する。図１は、（ａ）がバス照合回路１０の二線式検査回路１５の絞込回路半分２１〜２３に係る回路図、（ｂ）が絞込回路半分２１〜２３を分散搭載した３個のロジックエレメント３３に係るブロック図、（ｃ）が絞込回路半分２１〜２３の論理素子２１を具現化したＬＵＴ（ルックアップテーブル）３４ａ、（ｄ）が絞込回路半分２１〜２３の論理素子２２を具現化したＬＵＴ３４ｂ、（ｅ）が絞込回路半分２１〜２３の論理素子２３を具現化したＬＵＴ３４ｃである。
【００３１】
この実施例の二線式検査回路搭載ＦＰＧＡは、既述した従来の二線式検査回路搭載ＦＰＧＡと同じくバス照合回路１０の二線式検査回路１５をＬＵＴ型ＦＰＧＡ３０に書込搭載したものであるが、ＬＵＴへの書込態様が従来品と相違している。
従来品では一つのＬＵＴ３４に一つの絞込回路半分２１〜２３が書込搭載されていたのに対し（図９（ｂ），（ｃ）参照）、この発明実施品では（図１参照）、絞込回路半分２１〜２３という組み合わせ回路の単位でなく、個々の論理素子の単位で、ＬＵＴに搭載されている。すなわち、ＬＵＴ３４ａ，３４ｂ，３４ｃそれぞれに論理素子２１，２２，２３が一つずつ分散して書込搭載されている。二線式検査回路１５に含まれている他の論理素子についても同様に一つのＬＵＴに一つずつ分散して書込搭載されている。なお、ＬＵＴ３４ａ，３４ｂ，３４ｃそれぞれに対応したレジスタ３５ａ，３５ｂ，３５ｃの使用は、任意であるが、ここでは使用する場合を図示した（図１（ｂ）参照）。
【００３２】
絞込回路半分２１〜２３の論理素子２１，２２，２３の搭載態様について詳述すると、先ず、入力値Ａ，Ｄから中間値Ｇを生成するＡＮＤゲートの論理素子２１については（図１（ａ），（ｂ），（ｃ）参照）、それに割り当てられた４入力１出力のＬＵＴ３４ａに対して、入力値Ａ，Ｄ，及び固定値“０”，“０”の四つが入力されるとともに、アドレス“００００”，“０１００”，“１０００”の所にデータ値“０”が書き込まれ、アドレス“１１００”の所にデータ値“１”が書き込まれる。なお、上記の固定値は、“０”を例示したが、“１”でも良い。
【００３３】
次に、入力値Ｂ，Ｃから中間値Ｈを生成するＡＮＤゲートの論理素子２２についても（図１（ａ），（ｂ），（ｄ）参照）、同様にして、それに割り当てられた４入力１出力のＬＵＴ３４ｂに対して、入力値Ｂ，Ｃ，及び固定値“０”，“０”の四つが入力されるとともに、アドレス“００００”，“０１００”，“１０００”，“１１００”の所にそれぞれデータ値“０”，“０”，“０”“１”が書き込まれる。
さらに、中間値Ｇ，Ｈから出力値Ｅを生成するＯＲゲートの論理素子２３についても（図１（ａ），（ｂ），（ｅ）参照）、同様にして、それに割り当てられた４入力１出力のＬＵＴ３４ｃに対して、中間値Ｇ，Ｈ，及び固定値“０”，“０”の四つが入力されるとともに、アドレス“００００”，“０１００”，“１０００”，“１１００”の所にそれぞれデータ値“０”，“１”，“１”“１”が書き込まれる。
【００３４】
このような書込がなされたＬＵＴ３４ａ，３４ｂ，３４ｃは、それぞれ論理素子２１，２２，２３が一つずつ書込搭載されて、それぞれに論理値Ａ，Ｂ，Ｃ，Ｄ，Ｇ，Ｈのうち該当する二つずつが入力されるとともに、それ以外の所には固定値“０”が入力されるため、各論理素子２１，２２，２３の２入力Ａ＋Ｄ，Ｂ＋Ｃ，Ｇ＋Ｈの全ビットパターン“００”，“０１”，“１０”，“１１”の何れかにアドレス“００００”，“０１００”，“１０００”，“１１００”の対応する４箇所（図１（ｃ）〜（ｅ）△参照）に読出箇所すなわち使用メモリ部分が限定されたものとなっている。その他のアドレスは（図１（ｃ）〜（ｅ）で△の無い箇所を参照）、絞込回路半分２１〜２３の入力値Ａ，Ｂ，Ｃ，Ｄの値に係わらずアクセスされることのない不使用メモリ部分となっている。
【００３５】
この実施例１の二線式検査回路搭載ＦＰＧＡについて、その使用態様及び動作を、図面を引用して説明する。図２は、（ａ），（ｂ），（ｃ）がそれぞれ絞込回路半分２１〜２３の各論理素子２１，２２，２３を具現化したＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃであり、（ｄ），（ｅ）が絞込回路２０の回路図であって、不使用メモリ部分にソフトエラーが発生したときの動作を例示している。また、図３も、（ａ），（ｂ），（ｃ）がそれぞれ絞込回路半分２１〜２３の各論理素子２１，２２，２３を具現化したＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃであり、（ｄ），（ｅ）が絞込回路２０の回路図であるが、こちらは、使用メモリ部分にソフトエラーが発生したときの動作を例示している。
【００３６】
書込態様が異なっていても、ソフトエラーその他の回路故障の無い正常状態では、二線式検査回路搭載ＦＰＧＡの使い方や動作は従来と同じなので、ここでは、従来とは異なるソフトエラー発生時動作について詳述する。
二線式検査回路１５の絞込回路２０の絞込回路半分２１〜２３の論理素子２２を書込搭載したＬＵＴ３４ｂにソフトエラーが発生した場合の事例を二つ説明する。
一つ目は不使用メモリ部分にソフトエラーが発生した場合であり（図２参照）、二つ目は使用メモリ部分にソフトエラーが発生した場合である（図３参照）。
【００３７】
先ず、ＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃ（図２（ａ）〜（ｃ）参照）のうちＬＵＴ３４ｂの不使用メモリ部分の一カ所のデータ値がソフトエラーによって反転したとする（図２（ｂ）＊参照）。この場合、ＬＵＴ３４ｂは部分的に故障しているが、その故障箇所は入力値Ｂ，Ｃが２ビットの全パターンのどの値を採ろうとアクセスされず、論理素子２２の機能が全く損なわれることなく正常に維持されているので、論理素子２２を含んだ絞込回路２０は（図２（ｄ），（ｅ）参照）、入力値Ａ，Ｂ，Ｃ，Ｄとして正規符号語“０１”又は“１０”が二つ入力されると出力値Ｅ，Ｆとして一つの正規符号語“０１”又は“１０”を出力し、それ以外のときには非正規符号語“００”又は“１１”を出力する。この動作は回路故障の無い正常時と同じなので、不使用メモリ部分のソフトエラーは実質的には回路故障で無いと言える。ＬＵＴ３４ａ，３４ｃについても同じである。
【００３８】
次に、ＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃ（図３（ａ）〜（ｃ）参照）のうちＬＵＴ３４ｂの使用メモリ部分の一カ所のデータ値がソフトエラーによって反転したとする（図３（ｂ）＊参照）。この場合もＬＵＴ３４ｂの故障は部分的なものであるが、この場合、その故障箇所が入力値Ｂ，Ｃのパターンによってはアクセスされる。例えば論理素子２２を書き込み搭載したＬＵＴ３４ｂにおいてアドレス“１０００”のデータ値が“０”から“１”に反転したとすると、論理素子２２を含んだ絞込回路２０は（図３（ｄ）参照）、入力値Ａ，Ｂ，Ｃ，Ｄとして二つの正規符号語“０１”＋“１０”が入力されたときには出力値Ｅ，Ｆとして正しい一つの正規符号語“１０”を出力するが、入力値Ａ，Ｂ，Ｃ，Ｄとして他の二つの正規符号語“０１”＋“０１”が入力されたときには（図３（ｅ）参照）、出力値Ｅ，Ｆとして非正規符号語“１１”を出力する。
【００３９】
このようにＬＵＴ３４ｂの使用メモリ部分にソフトエラーが発生した場合は、ＬＵＴ３４ａ，３４ｃについても同様であるが、正常時に変化するデータにより、入力値Ａ，Ｂ，Ｃ，Ｄが全ビットパターンに変化することで、ＬＵＴ３４ｂのデータ反転箇所に読出アクセスが行われると、そこに書込搭載されている論理素子２２の出力する中間値Ｈが異常値になり、それに応じて絞込回路２０の出力値Ｅ，Ｆが非正規符号語になり、最終的には二線式検査回路１５が非正規符号語を出力するため、ＬＵＴのソフトエラーが比較照合対象データ対の不一致検出という形を借りて顕在化する。
【実施例２】
【００４０】
本発明の二線式検査回路搭載ＦＰＧＡの実施例２について、その具体的な構成を、図面を引用して説明する。図４は、（ａ）がバス照合回路１０の二線式検査回路１５の絞込回路半分２７〜２９に係る回路図、（ｂ）が絞込回路半分２７〜２９を分散搭載した３個のロジックエレメント３３のブロック図、（ｃ）が絞込回路半分２７〜２９の論理素子２７を具現化したＬＵＴ（ルックアップテーブル）３４ａ、（ｄ）が絞込回路半分２７〜２９の論理素子２８を具現化したＬＵＴ３４ｂ、（ｅ）が絞込回路半分２７〜２９の論理素子２９を具現化したＬＵＴ３４ｃである。
【００４１】
この二線式検査回路搭載ＦＰＧＡが上述した実施例１のものと相違するのは、絞込回路半分２１〜２３に代えてそれと等価だがゲート種の異なる絞込回路半分２７〜２９が三つのロジックエレメント３３〜３３それぞれに一つずつ書込搭載されている点である。
すなわち、ＬＵＴ３４ａにはＮＡＮＤゲートの論理素子２７が書込搭載され（図４（ａ），（ｂ），（ｃ）参照）、ＬＵＴ３４ｂにはＮＡＮＤゲートの論理素子２８が書込搭載され（図４（ａ），（ｂ），（ｄ）参照）、ＬＵＴ３４ｃにはやはりＮＡＮＤゲートの論理素子２９が書込搭載されている（図４（ａ），（ｂ），（ｅ）参照）。
【００４２】
繰り返しとなる詳細な説明は割愛するが、論理素子２７，２８，２９を書込搭載したＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃが何れも４入力１出力のものであることや、それらのＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃそれぞれに論理素子２７，２８，２９が一つずつ分散して書込搭載されていること、ＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃが何れも搭載した論理素子の２入力の全ビットパターンの何れかにアドレスの対応する４箇所に読出箇所が限定されていること（図４（ｃ）〜（ｅ）△参照）、ＬＵＴ３４ａ，ＬＵＴ３４ｂ，ＬＵＴ３４ｃが何れも４入力のうち，搭載した論理素子の２入力の何れも入力されないところには，固定値“０”が入力されるようになっていることは、実施例１の二線式検査回路搭載ＦＰＧＡと同様である。
そして、使用態様や動作も、ゲート種の相違による小異は別として、同様となる。
【実施例３】
【００４３】
本発明の二線式検査回路搭載ＦＰＧＡの実施例３について、その具体的な構成を、図面を引用して説明する。図５は、（ａ），（ｂ）、何れも、二線式検査回路１５を二重化してＬＵＴ型ＦＰＧＡ３０に搭載したバス照合回路のブロック図である。
【００４４】
二線式検査回路１５を二重化した場合、両回路１５，１５に加えて、それらの出力を入力して一つの出力符号語“ＸＹ”に纏める絞込回路２０も設けることにより、前段の回路１１〜１４も、後段の回路１６，１７も、既製品を踏襲するすることができる。
そのように二重化した二線式検査回路１５＋１５＋２０は上述のようにしてＬＵＴ型ＦＰＧＡ３０に搭載されるが、その際、二重化二線式検査回路１５＋１５＋２０だけを搭載しても良く（図５（ａ）参照）、二重化二線式検査回路１５＋１５＋２０に加えて前段のラッチ部１１〜１４や後段の振子回路１６まで搭載しても良い（図５（ｂ）参照）。
【００４５】
［その他］
上記実施例では、バス照合回路５０の最終的な出力が正常リレーＲによって生成されるようになっていたが、これはリレー信号を多用する鉄道信号制御分野への応用を意識した一例であり、正常リレーＲは本願発明の実施に必須のものではない。
上記実施例では、二線式検査回路１５にラッチ部１１〜１４が前置されていたが、ラッチ部１１〜１４も必須でなく、比較タイミングに余裕があるとき等には省略することも可能である。逆に比較タイミングが厳しいとき等には連続データを蓄積しうるデュアルポート等をラッチ部１１〜１４に代えて前置すると良い（特許文献５参照）。
【産業上の利用可能性】
【００４６】
本発明の二線式検査回路搭載ＦＰＧＡの適用は、上述した二重系電子計算機のバス照合回路への適用に限られる訳でなく、上述した二重系を含んでいる三重系以上の多重系電子計算機のバス照合回路にも適用することができる。
【符号の説明】
【００４７】
１０…バス照合回路、
１１…Ａ系ラッチ制御回路（第１入出力情報入力回路）、
１２…Ａ系ラッチ回路（第１入出力情報入力回路）、
１３…Ｂ系ラッチ回路（第２入出力情報入力回路）、
１４…Ｂ系ラッチ制御回路（第２入出力情報入力回路）、
１５…二線式検査回路（比較回路）、
１６…振子回路（誤り表示回路）、１７…交番信号検出回路（誤り表示回路）、
２０…絞込回路、
２１，２２，２３…論理素子（絞込回路半分）、
２４，２５，２６…論理素子（絞込回路半分）、
２７，２８，２９…論理素子（絞込回路半分）、
３０…ＦＰＧＡ（ルックアップテーブル型フィールドプログラマブルゲートアレイ）、
３１…デバイス内配線、３２…汎用ロジック部、３３…ロジックエレメント、
３４，３４ａ，３４ｂ，３４ｃ…ＬＵＴ（ルックアップテーブル）、
３５，３５ａ，３５ｂ，３５ｃ…レジスタ（フリップフロップ）、
Ａ，Ｂ…入力値（入力ビット対）、Ｃ，Ｄ…入力値（入力ビット対）、
Ｅ，Ｆ…出力値（出力ビット対）、Ｇ，Ｈ…中間値、
Ｒ…正常リレー（監視リレー，最終照合結果出力リレー）
【図１】
2014197754.tif 000003
【図２】
2014197754.tif 000004
【図３】
2014197754.tif 000005
【図４】
2014197754.tif 000006
【図５】
2014197754.tif 000007
【図６】
2014197754.tif 000008
【図７】
2014197754.tif 000009
【図８】
2014197754.tif 000010
【図９】
2014197754.tif 000011