(57)【要約】  回路規模と速度性能の要件を両立しながら、シングルイベントトランジエントの影響を低減するために、論理信号群のうち冗長化されていない第１信号群が入力され、第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、論理信号群のうち冗長化された第２信号群と、フィルタ回路の出力データ信号群とが入力され、第２信号群を構成する信号の組合せに基づいて、出力データ信号群のうち少なくとも一つを選択する第２論理選択回路とを備える論理集積回路とする。
2020095854.tif 000002
【特許請求の範囲】
【請求項１】
論理信号群のうち冗長化されていない第１信号群が入力され、前記第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、
前記第１論理選択回路によって選択された前記少なくとも二つのデータ信号が入力され、前記少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、
前記論理信号群のうち冗長化された第２信号群と、前記フィルタ回路の出力データ信号群とが入力され、前記第２信号群を構成する信号の組合せに基づいて、前記出力データ信号群のうち少なくとも一つを選択する第２論理選択回路とを備える論理集積回路。
【請求項２】
前記第２信号群が伝播される第２信号線群には、前記論理信号群のうち遅延が最大となる信号が割り当てられる請求項１に記載の論理集積回路。
【請求項３】
前記第１論理選択回路は、
前記第１信号群を構成する信号の組合せに基づいて、前記データ信号群のうち二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路によって選択された二つの前記データ信号のそれぞれに含まれる前記グリッチを除去する請求項１または２に記載の論理集積回路。
【請求項４】
前記第１論理選択回路は、
前記第１信号群が伝播される第１信号線群に接続され、前記第１信号線群から入力される前記第１信号群を構成する信号の組合せに基づいて二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路によって選択された二つの前記データ信号のそれぞれに含まれるグリッチを除去し、
前記第２論理選択回路は、
二重冗長化された前記第２信号群が伝播される第２信号線群に接続され、前記第２信号線群から入力される前記第２信号群を構成する信号の組合せに基づいて、前記フィルタ回路からの前記出力データ信号群のうち一つを選択する請求項１または２に記載の論理集積回路。
【請求項５】
前記第２論理選択回路は、
第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を二つずつ有し、
前記第１選択トランジスタは、
二つの前記第２選択トランジスタのうちいずれか一方と対をなし、前記フィルタ回路から出力された二つの出力データ信号のうち一方が伝播される信号線に拡散層の一端が接続され、対をなす前記第２選択トランジスタの拡散層の一端に拡散層の他端が接続され、
前記第２選択トランジスタは、
対をなす前記第１選択トランジスタの拡散層の他端に拡散層の一端が接続され、もう一方の前記第２選択トランジスタの拡散層の他端に拡散層の他端が接続され、拡散層の他端がもう一方の前記第２選択トランジスタと共通の出力端を形成し、
前記第１論理否定回路は、
二つの前記第２論理否定回路のうちいずれか一方と対をなし、二重冗長化された前記第２信号群が伝播される信号線のうちいずれか一方に入力が接続されるとともに、二つの前記第１選択トランジスタのうちいずれか一方のゲートと、対をなす前記第２論理否定回路の入力とに出力が接続され、
前記第２論理否定回路は、
対をなす前記第１論理否定回路の出力に入力が接続され、対をなす前記第１論理否定回路の出力が接続された前記第１選択トランジスタとは異なる前記第１選択トランジスタのゲートに出力が接続される請求項４に記載の論理集積回路。
【請求項６】
前記第１論理選択回路から出力される第１データ信号が伝播される信号線と、前記フィルタ回路を通過した前記第１データ信号が伝播される信号線とに入力が接続され、二つの前記第１選択トランジスタのうち一方に出力が接続される第１マルチプレクサと、
前記第１論理選択回路から出力される第２データ信号が伝播される信号線と、前記フィルタ回路を通過した前記第２データ信号が伝播される信号線とに入力が接続され、二つの前記第１選択トランジスタのうち他方に出力が接続される第２マルチプレクサとを備える請求項５に記載の論理集積回路。
【請求項７】
前記第２論理選択回路によって選択された前記出力データ信号をクロックに同期して読み込むフリップフロップと、
前記第２論理選択回路から出力される信号が伝播される信号線と、前記フリップフロップから出力される信号が伝播される信号線とに入力が接続され、入力された信号のうちいずれかを選択する第３マルチプレクサとを備える請求項６に記載の論理集積回路。
【請求項８】
前記第２信号群が伝播される第２信号線群に接続され、前記第２信号線群から入力される前記第２信号群を構成する信号のうち値が多数の信号を選択し、選択した信号を前記第２論理選択回路に出力する多数決回路を有し、
前記第１論理選択回路は、
前記第１信号群が伝播される第１信号線群に接続され、前記第１信号線群から入力される前記第１信号群を構成する信号の組合せに基づいて、前記データ信号群に含まれる二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路によって選択された二つの前記データ信号のそれぞれに含まれる前記グリッチを除去し、
前記第２論理選択回路は、
前記多数決回路によって選択された信号に基づいて、前記フィルタ回路から入力される二つの出力データ信号のうち一つを選択する請求項１または２に記載の論理集積回路。
【請求項９】
前記第２論理選択回路は、
第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を有し、
前記第１選択トランジスタは、
前記フィルタ回路から出力される二つの前記出力データ信号のうち一方が伝播される信号線に拡散層の一端が接続され、前記第２選択トランジスタの拡散層の一端に拡散層の他端が接続され、拡散層の他端が前記第２選択トランジスタと共通の出力端を形成し、
前記第２選択トランジスタは、
前記フィルタ回路から出力される二つの前記出力データ信号のうち他方が伝播される信号線に拡散層の一端が接続され、前記第１選択トランジスタの拡散層の一端に拡散層の他端が接続され、拡散層の他端が前記第１選択トランジスタと共通の前記出力端を形成し、
前記第１論理否定回路は、
入力が前記多数決回路の出力に接続されるとともに、出力が前記第１選択トランジスタのゲートと前記第２論理否定回路の入力とに接続され、
前記第２論理否定回路は、
入力が前記第１論理否定回路の出力に接続され、出力が前記第２選択トランジスタのゲートに接続される請求項８に記載の論理集積回路。
【請求項１０】
多重化された前記第２論理選択回路に接続され、多重化された前記第２論理選択回路によって選択された出力データ信号のうち値が多数の信号を出力する多数決回路を有し、
前記第１論理選択回路は、
前記第１信号群が伝播される第１信号線群に接続され、前記第１信号線群から入力される前記第１信号群を構成する信号の組合せに基づいて二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路から出力される二つの前記データ信号のそれぞれに含まれる前記グリッチを除去し、
多重化された前記第２論理選択回路のそれぞれは、
前記第２信号群が伝播される第２信号線群を構成する信号線のうちいずれかに接続され、接続された信号線からの信号に基づいて、前記フィルタ回路から入力される二つの前記出力データ信号のうち一つを選択して前記多数決回路に出力する請求項１または２に記載の論理集積回路。
【請求項１１】
多重化された前記第２論理選択回路のそれぞれは、
第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を有し、
前記第１選択トランジスタは、
拡散層の一端が前記フィルタ回路から出力される二つの前記出力データ信号のうち一方が伝播される信号線に接続され、拡散層の他端が前記第２選択トランジスタの拡散層の一端に接続され、拡散層の他端が前記第２選択トランジスタと共通の出力端を形成し、
前記第２選択トランジスタは、
拡散層の一端が前記フィルタ回路から出力される二つの前記出力データ信号のうち他方が伝播される信号線に接続され、拡散層の他端が前記第１選択トランジスタの拡散層の一端に接続され、拡散層の他端が前記第１選択トランジスタと共通の前記出力端を形成し、
前記第１論理否定回路は、
入力が前記第２信号群の伝播するいずれかの信号線に接続されるとともに、出力が前記第１選択トランジスタのゲートと前記第２論理否定回路の入力とに接続され、
前記第２論理否定回路は、
入力が前記第１論理否定回路の出力に接続され、出力が前記第２選択トランジスタのゲートに接続され、
前記出力端は、
前記多数決回路の入力に接続される請求項１０に記載の論理集積回路。
【請求項１２】
前記論理集積回路は、さらに、
前記第１信号群が伝播される前記第１論理選択回路と、前記第２信号群が伝播される前記第２論理選択回路とのいずれかに、前記論理信号群に含まれる信号をルーティングするクロスバ回路と、
前記第２論理選択回路によって選択された出力データ信号をクロックに同期して読み込むフリップフロップとを備える請求項１乃至１１のいずれか一項に記載の論理集積回路。
【請求項１３】
前記クロスバ回路は、
第１方向に延伸する複数の第１配線と、
前記第１方向と交差する第２方向に延伸する複数の第２配線と、
前記第１配線と前記第２配線との交差する位置に配置される複数のスイッチセルとを備え、
複数の前記第２配線のそれぞれは、
前記第１論理選択回路および前記第２論理選択回路のいずれかに接続され、
前記スイッチセルは、
抵抗変化スイッチを含む請求項１２に記載の論理集積回路。
【請求項１４】
前記抵抗変化スイッチは、
銅を主成分とする活性電極と、銅と比べて活性の低い金属を主成分とする不活性電極と、前記活性電極と前記不活性電極との間に配置される抵抗変化素子とを有する請求項１３に記載の論理集積回路。
【請求項１５】
論理信号群のうち冗長化されていない第１信号群が入力され、前記第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、前記第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、前記少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、前記論理信号群のうち冗長化された第２信号群と前記フィルタ回路の出力データ信号群が入力され、前記第２信号群を構成する信号の組合せに基づいて、前記出力データ信号群のうち少なくとも一つを選択する第２論理選択回路と、を備える論理集積回路に構成情報を設定する構成情報設定方法であって、
少なくとも遅延コストを含む評価関数を最小化する配線を探索し、
前記遅延コストが最大になる信号経路を、前記第２信号群が伝播される第２信号線群に割り当てる構成情報を生成し、
生成された前記構成情報に基づいた回路構成を前記論理集積回路に設定する構成情報設定方法。
【請求項１６】
論理信号群のうち冗長化されていない第１信号群が入力され、前記第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、前記第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、前記少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、前記論理信号群のうち冗長化された第２信号群と前記フィルタ回路の出力データ信号群が入力され、前記第２信号群を構成する信号の組合せに基づいて、前記出力データ信号群のうち少なくとも一つを選択する第２論理選択回路と、を備える論理集積回路に構成情報を設定するプログラムであって、
少なくとも遅延コストを含む評価関数を最小化する配線を探索する処理と、
前記遅延コストが最大になる信号経路を、前記第２信号群が伝播される第２信号線群に割り当てる構成情報を生成する処理と、
生成された前記構成情報に基づいた回路構成を前記論理集積回路に設定する処理とをコンピュータに実行させるプログラムを記憶させた非一過性の記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路構成を再構成可能な論理集積回路、その論理集積回路に回路を設定する構成情報設定方法、およびプログラムに関する。
【背景技術】
【０００２】
ＦＰＧＡ（Field Programmable Gate Array）等のプログラマブル論理集積回路（以下、論理集積回路とも呼ぶ）は、論理演算回路の動作や接続をメモリ素子に記憶することによって、論理動作や配線の接続を変更できる集積回路である。一般的な論理集積回路は、外部との入出力を行う入出力部、複数の論理セル、入出力部や論理セルを接続するための内部配線などを含む。論理集積回路の内部配線には、複数の配線の交点にスイッチが配置されたクロスバや、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）で構成したマルチプレクサなどがある。例えば、特許文献１および特許文献２には、印加電圧に応じて抵抗状態が変化する二つの抵抗変化素子を組み合わせたユニット素子を交点に配置したクロスバについて開示されている。【０００３】
論理集積回路を構成する論理素子に放射線が入射すると、放射線の影響で生成する電荷によって論理素子の出力電圧が過渡的に変動するシングルイベントトランジエント（以下、ＳＥＴ：Single Event Transient）という現象が発生しうる。論理集積回路のクロスバに含まれるトランジスタにＳＥＴが発生すると、電位が規定レベルから擾乱を受け、デジタルのパルスが論理回路中を伝播する可能性がある。ＳＥＴの持続時間は、典型的には１ナノ秒以下と短期間であるため、これまでは大きな問題につながる可能性は低かった。しかしながら、クロックスピードの上昇に伴って、ＳＥＴに起因する信号が論理回路中を伝播してＤフリップフロップの入力端子に到達し、Ｄフリップフロップの出力として誤った論理が保持される可能性が高くなった。ＳＥＴに起因する信号が入力端子に到達するのと同時にクロックがトリガされた場合、その信号がＤフリップフロップにラッチされてソフトエラーを引き起こす可能性がある。【０００４】
ＳＥＴに起因する信号を除去するフィルタを信号経路中に挿入することによって、その信号が論理回路中に伝播することを防ぐことができる。特許文献３には、放射線事象に起因するシングルイベント効果によって状態が変化した入力信号イベントの伝播を防ぐグリッチフィルタを備える装置について開示されている。図２６は、論理集積回路を構成するルックアップテーブル（以下、ＬＵＴ５１１：Look Up Table）とＤフリップフロップ（以下、ＤＦＦ５１２：D Flip Flop）との間にＳＥＴフィルタ５１３を挿入する例である。また、論理回路を冗長化すれば、ＳＥＴフィルタを用いなくても、ＳＥＴに起因する信号が後続に影響を与えることを回避できる。図２７は、ＬＵＴ群５２１を三重冗長系とし、ＬＵＴ群５２１とＤＦＦ５２２との間に多数決回路５２５を挿入する例である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２０１２／０４３５０２号
【特許文献２】国際公開第２０１３／１９０７４１号
【特許文献３】特表２００８−５４３１７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
図２６の構成にすれば、ＳＥＴに起因する信号は、ＬＵＴ５１１を通過してもＳＥＴフィルタ５１３によって除去されるため、ＤＦＦ５１２にＳＥＴの影響が伝播することを防止できる。しかしながら、図２６の構成では、ＳＥＴフィルタ５１３のフィルタ時定数分（１ナノ秒程度）の遅延が発生するため、ＬＵＴ５１１とＳＥＴフィルタ５１３との組み合わせが重なった場合に遅延が累積されてしまう。そのため、ＬＵＴ５１１とＤＦＦ５１２との間にＳＥＴフィルタ５１３を挿入するだけの構成では、期待される速度性能を満たすことが難しくなるという問題点があった。【０００７】
また、図２７の構成にすれば、ＳＥＴに起因する信号がＬＵＴ群５２１のいずれかのＬＵＴを通過しても、ＳＥＴの影響を受けていない信号が多数決回路５２５から出力される。そのため、図２７の構成にすれば、信号を遅延させずに、ＳＥＴの影響が後続に及ぶことを防ぐことができる。しかしながら、図２７のように論理回路を三重冗長系にすると、回路規模が３倍となってしまう。そのため、論理回路を冗長系にするだけの構成では、面積オーバーヘッドが増大するという問題点があった。【０００８】
本発明の目的は、上述した課題を解決するために、回路規模と速度性能の要件を両立しながら、シングルイベントトランジエントの影響を低減できる論理集積回路を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一態様の論理集積回路は、論理信号群のうち冗長化されていない第１信号群が入力され、第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、論理信号群のうち冗長化された第２信号群と、フィルタ回路の出力データ信号群とが入力され、第２信号群を構成する信号の組合せに基づいて、出力データ信号群のうち少なくとも一つを選択する第２論理選択回路とを備える。【００１０】
本発明の一態様の構成情報設定方法は、論理信号群のうち冗長化されていない第１信号群が入力され、第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、論理信号群のうち冗長化された第２信号群とフィルタ回路の出力データ信号群が入力され、第２信号群を構成する信号の組合せに基づいて、出力データ信号群のうち少なくとも一つを選択する第２論理選択回路と、を備える論理集積回路に構成情報を設定する構成情報設定方法であって、少なくとも遅延コストを含む評価関数を最小化する配線を探索し、遅延コストが最大になる信号経路を、第２信号群が伝播される第２信号線群に割り当てる構成情報を生成し、生成された構成情報に基づいた回路構成を論理集積回路に設定する。【００１１】
本発明のプログラムは、論理信号群のうち冗長化されていない第１信号群が入力され、第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、論理信号群のうち冗長化された第２信号群とフィルタ回路の出力データ信号群が入力され、第２信号群を構成する信号の組合せに基づいて、出力データ信号群のうち少なくとも一つを選択する第２論理選択回路と、を備える論理集積回路に構成情報を設定するプログラムであって、少なくとも遅延コストを含む評価関数を最小化する配線を探索する処理と、遅延コストが最大になる信号経路を、第２信号群が伝播される第２信号線群に割り当てる構成情報を生成する処理と、生成された構成情報に基づいた回路構成を論理集積回路に設定する処理とをコンピュータに実行させる。
【発明の効果】
【００１２】
本発明によれば、回路規模と速度性能の要件を両立しながら、シングルイベントトランジエントの影響を低減できる論理集積回路を提供することが可能になる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態に係る論理集積回路の構成の一例を示すブロック図である。
【図２】本発明の第１の実施形態に係る論理集積回路が備えるクロスバ回路の構成の一例を示すブロック図である。
【図３】本発明の第１の実施形態に係る論理集積回路が備えるクロスバ回路のスイッチセルに含まれる抵抗変化素子の抵抗状態について説明するための概念図である。
【図４】本発明の第１の実施形態に係る論理集積回路が備えるクロスバ回路のスイッチセルに含まれる抵抗変化素子の別の抵抗状態について説明するための概念図である。
【図５】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴの構成の一例を示すブロック図である。
【図６】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴに含まれる第１論理選択回路の構成の一例を示すブロック図である。
【図７】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴに含まれるフィルタ回路の構成の一例を示すブロック図である。
【図８】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴに含まれるフィルタ回路を実現する回路構成の一例を示すブロック図である。
【図９】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴに含まれる第２論理選択回路の構成の一例を示すブロック図である。
【図１０】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴを実現する回路構成の一例を示すブロック図である。
【図１１】本発明の第１の実施形態に係る論理集積回路が備えるＬＵＴを実現する回路構成の別の一例を示すブロック図である。
【図１２】本発明の第２の実施形態に係る論理集積回路の構成の一例を示すブロック図である。
【図１３】本発明の第２の実施形態に係る論理集積回路が備えるＬＵＴの構成の一例を示すブロック図である。
【図１４】本発明の第２の実施形態に係る論理集積回路が備えるＬＵＴに含まれる多数決回路を実現する回路構成の一例を示すブロック図である。
【図１５】本発明の第２の実施形態に係る論理集積回路が備えるＬＵＴに含まれる第２論理選択回路の構成の一例を示すブロック図である。
【図１６】本発明の第２の実施形態に係る論理集積回路が備えるＬＵＴを実現する回路構成の一例を示すブロック図である。
【図１７】本発明の第３の実施形態に係る論理集積回路の構成の一例を示すブロック図である。
【図１８】本発明の第３の実施形態に係る論理集積回路が備えるＬＵＴの構成の一例を示すブロック図である。
【図１９】本発明の第３の実施形態に係る論理集積回路が備えるＬＵＴに含まれる第２論理選択回路の構成の一例を示すブロック図である。
【図２０】本発明の第３の実施形態に係る論理集積回路が備えるＬＵＴを実現する回路構成の別の一例を示すブロック図である。
【図２１】本発明の第４の実施形態に係る設計支援システムの構成の一例を示すブロック図である。
【図２２】本発明の第４の実施形態に係る設計支援システムが用いる設計支援ツール群の一例を示すブロック図である。
【図２３】本発明の第４の実施形態に係る設計支援システムの動作の一例を示すフローチャートである。
【図２４】本発明の第４の実施形態に係る設計支援システムの配置配線ツールによる配置配線処理の一例を示すフローチャートである。
【図２５】本発明の第４の実施形態に係る設計支援システムを実現するハードウェア構成の一例を示すブロック図である。
【図２６】ＳＥＴ対策が施された論理集積回路の構成の一例を示すブロック図である。
【図２７】ＳＥＴ対策が施された論理集積回路の構成の別の一例を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下に、本発明を実施するための実施形態について図面を用いて説明する。ただし、以下に述べる実施形態には、本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。なお、以下の実施形態の説明に用いる全図においては、特に理由がない限り、同様箇所には同一符号を付す。また、以下の実施形態において、同様の構成・動作に関しては繰り返しの説明を省略する場合がある。また、図面中の矢印の向きは、一例を示すものであり、ブロック間の信号の向きなどを限定するものではない。
【００１５】
（第１の実施形態）
まず、本発明の第１の実施形態に係る論理集積回路について図面を参照しながら説明する。本実施形態の論理集積回路は、論理演算回路の動作や接続をメモリ素子に記憶することによって、論理動作や配線の接続を変更できるプログラマブル論理集積回路である。本実施形態においては、クロスバの出力がＬＵＴ（Look Up Table）を介して記憶装置であるＤＦＦ（D-type Flip Flop）に接続される例について説明する。実際には、複数のクロスバ、ＬＵＴ、およびＤＦＦを組み合わせてより大規模な論理集積回路が構成される。なお、クロスバの替わりにマルチプレクサを用いた構成としてもよい。また、複数のクロスバを多段に接続した構成としてもよい。
【００１６】
図１は、本実施形態の論理集積回路１の構成の概要について説明するための概念図である。図１のように、論理集積回路１は、クロスバ回路１１、ＬＵＴ１２、ＤＦＦ１３を備える。クロスバ回路１１は、冗長化されてない信号群（以下、第１信号群とも呼ぶ）を伝播させる第１信号線群１０１と、冗長化された信号群（以下、第２信号群とも呼ぶ）を伝播させる第２信号線群１０２とを介してＬＵＴ１２に接続される。第１信号群は、冗長化されてない信号Ｓ１〜Ｓ３によって構成される。第２信号群は、冗長化された信号Ｓ４〜Ｓ５によって構成される。
【００１７】
ＬＵＴ１２とＤＦＦ１３とは論理ブロック１００を構成する。図１には、論理ブロック１００が一組のＬＵＴ１２とＤＦＦ１３とによって構成される例を図示しているが、論理ブロック１００は複数組のＬＵＴ１２とＤＦＦ１３とによって構成されてもよい。また、図１には、論理集積回路１が一組のクロスバ回路１１、ＬＵＴ１２、およびＤＦＦ１３によって構成される例を図示しているが、複数の論理ブロック１００をクロスバ回路１１で接続させて論理集積回路１を構成させてもよい。
【００１８】
クロスバ回路１１は、第１方向に延伸する複数の第１配線と、第１方向と交わる第２方向に延伸する複数の第２配線とが交差する位置にスイッチセルが配置された構成を有する。スイッチセルとは、第１配線と第２配線との接続を切り替えるための回路である。例えば、スイッチセルは、ＳＲＡＭ（Static Random Access Memory）セルと、スイッチ機能を有する１個のトランジスタとによって実現される。また、スイッチセルは、抵抗状態によってオンとオフとを切り替えることができる抵抗変化素子を含む構成によって実現されてもよい。クロスバ回路１１は、隣接し合う論理ブロック同士を接続する。
【００１９】
クロスバ回路１１には、前段の論理ブロックからの論理信号群を伝播させる配線群（図示しない）が接続される。また、クロスバ回路１１の後段にはＬＵＴ１２が接続される。クロスバ回路１１は、冗長化されてない第１信号群（信号Ｓ１〜Ｓ３）を伝播させる第１信号線群１０１と、冗長化された第２信号群（信号Ｓ４〜Ｓ５）を伝播させる第２信号線群１０２とを介してＬＵＴ１２に接続される。第１信号線群１０１および第２信号線群１０２を構成するそれぞれの配線は、複数の第２配線のいずれかを延伸させたものである。
【００２０】
ＬＵＴ１２は、入力側が第１信号線群１０１と第２信号線群１０２とを介してクロスバ回路１１に接続され、出力側がＤＦＦ１３に接続される。ＬＵＴ１２には、第１信号線群１０１および第２信号線群１０２を介して、クロスバ回路１１からの信号群（信号Ｓ１〜Ｓ５）が入力される。ＬＵＴ１２は、アドレスをデコードする入力回路（図示しない）に入力された複数の信号の組合せに応じて、内部の記憶素子（図示しない）に記憶されたデータ群（データ信号群とも呼ぶ）のうち少なくとも一つの信号を選択してＤＦＦ１３に出力する。例えば、ＬＵＴ１２は、４入力１出力や６入力１出力など、複数の信号を入力とし、一つの信号を出力する。ＬＵＴ１２の内部構成については後述する。
【００２１】
ＤＦＦ１３は、ＬＵＴ１２の出力に接続される。ＤＦＦ１３には、ＬＵＴ１２から出力されたデータが記憶される。ＤＦＦ１３に記憶されるデータは、後続の論理ブロックに出力される。
【００２２】
以上が、論理集積回路１の構成の概要についての説明である。続いて、論理集積回路１を構成する個々の要素について図面を参照しながら説明する。
【００２３】
〔クロスバ回路〕
図２は、クロスバ回路１１の構成の一例を示す回路図である。図２のように、クロスバ回路１１は、第１方向に延伸される複数の第１配線１１１と、第２方向に延伸される複数の第２配線１１２とが交叉する位置にスイッチセル１１３を配置した構成を有する。図２においては、オン状態のスイッチセル１１３を黒く塗りつぶし、オフ状態のスイッチセル１１３を白抜きで示す。なお、図２に示すスイッチセル１１３のオン状態・オフ状態は一例であって、複数のスイッチセル１１３の状態は任意に設定できる。また、図２においては、クロスバ回路１１を構成するプログラミングドライバや制御線等の構成を省略する。
【００２４】
第１配線１１１の入力は、前段の論理ブロック１００−１の出力に接続される。第１配線１１１は、スイッチセル１１３を介して第２配線１１２に接続される。第１配線１１１には、前段の論理ブロック１００−１から出力された論理信号群が入力される。第１配線１１１に入力された信号は、オン状態のスイッチセル１１３を介して第２配線１１２に転送される。
【００２５】
第２配線１１２は、スイッチセル１１３を介して第１配線１１１に接続される。第２配線１１２の出力は、冗長化されていない第１信号群（信号Ｓ１〜Ｓ３）が伝播する第１信号線群１０１と、冗長化された第２信号群（信号Ｓ４〜Ｓ５）が伝播する第２信号線群１０２とを介してＬＵＴ１２の入力に接続される。第２配線１１２は、オン状態のスイッチセル１１３を介して第１配線１１１から入力された信号を、第１信号線群１０１または第２信号線群１０２を介してＬＵＴ１２に出力する。なお、図２においては、第２信号線群１０２に伝播させる第２信号群をクロスバ回路１１で冗長化するように構成しているが、前段の論理ブロック１００−１で冗長化するように構成してもよい。
【００２６】
スイッチセル１１３は、第１配線１１１と第２配線１１２とが交差する位置に配置される。スイッチセル１１３は、外部からの制御に応じて、オン状態またはオフ状態に設定される。スイッチセル１１３がオン状態の場合、そのスイッチセル１１３に接続される第１配線１１１と第２配線１１２とは接続状態になる。それに対し、スイッチセル１１３がオフ状態の場合、そのスイッチセル１１３に接続される第１配線１１１と第２配線１１２とは非接続状態になる。
【００２７】
例えば、スイッチセル１１３は、抵抗変化素子を含む抵抗変化スイッチを含む構成によって実現される。抵抗変化素子を含む抵抗変化スイッチは、特許文献１（国際公開第２０１２／０４３５０２号）や特許文献２（国際公開第２０１３／１９０７４１号）などに開示されている。なお、スイッチセル１１３は、抵抗変化素子ではなく、例えば、ｎＭＯＳＦＥＴ（n metal-oxide-semiconductor field-effect transistor）を含むパストランジスタでもよい。また、図２においては、クロスバ回路１１の全ての交点にスイッチセル１１３を配置する構成を図示しているが、いくつかの交点にスイッチセル１１３を配置せずに間引いた構成としてもよい。
【００２８】
以上が、クロスバ回路１１の構成の一例についての説明である。なお、図２のクロスバ回路１１の構成は一例であって、本実施形態のクロスバ回路１１の構成をそのままの形態に限定するものではない。
【００２９】
〔抵抗変化素子〕
ここで、第１配線１１１と第２配線１１２とが交差する位置に配置されるスイッチセル１１３の構成例について図面を参照しながら説明する。図３および図４は、スイッチセル１１３に含まれる抵抗変化スイッチ１１０の一例を示す概念図である。なお、図３および図４においては、セルトランジスタなどの構成は省略する。
【００３０】
図３のように、抵抗変化スイッチ１１０は、二つの抵抗変化素子１３０を直列に接続した構成を有する。抵抗変化素子１３０は、活性電極１３１、不活性電極１３２、および抵抗変化層１３３を有する。二つの抵抗変化素子１３０の不活性電極１３２は、互いに接続されて共通ノードＮＤを形成する。例えば、活性電極１３１は、銅を含む金属材料で構成する。なお、抵抗変化素子１３０は、活性電極１３１同士を接続するように構成してもよい。
【００３１】
抵抗変化素子１３０は、高抵抗状態（図３）と低抵抗状態（図４）の二つの抵抗状態を取り得る。本実施形態では、高抵抗状態をオフ状態（図３）、低抵抗状態をオン状態（図４）と定義する。抵抗変化素子１３０がオン状態（図４）の場合、電圧レベルで与えられる信号は抵抗変化素子１３０を通過する。一方、抵抗変化素子１３０がオフ状態（図３）の場合、電圧レベルで与えられる信号は抵抗変化素子１３０によって遮断される。また、抵抗変化素子１３０の抵抗状態は、構成情報の１（データ１）と０（データ０）に対応付けられる。本実施形態では、低抵抗状態（オン状態）をデータ１、高抵抗状態（オフ状態）をデータ０と定義する。
【００３２】
ここで、スイッチセル１１３に含まれる抵抗変化素子１３０の導通状態を切り替える方法について説明する。
【００３３】
まず、抵抗変化素子１３０を高抵抗状態（オフ状態）から低抵抗状態（オン状態）へと遷移させる方法について説明する。
【００３４】
図３のような高抵抗状態（オフ状態）の抵抗変化素子１３０において、活性電極１３１に正電圧を印加し、不活性電極１３２を接地すると、活性電極１３１に含まれる銅などの金属がイオン化されて金属イオンとして抵抗変化層１３３の内部に溶解する。その結果、図４のように、抵抗変化層１３３に溶解した金属イオンは還元されて金属として析出し、析出した金属によって活性電極１３１と不活性電極１３２とを電気的に接続する金属架橋１３５が形成される。金属架橋１３５によって活性電極１３１と不活性電極１３２とが電気的に接続されると、抵抗変化素子１３０は高抵抗状態（オフ状態）から低抵抗状態（オン状態）へと遷移する。
【００３５】
次に、抵抗変化素子１３０を低抵抗状態（オン状態）から高抵抗状態（オフ状態）へと遷移させる方法について説明する。
【００３６】
図４のような低抵抗状態（オン状態）の抵抗変化素子１３０において、活性電極１３１を接地して、不活性電極１３２に正電圧を印加すると、金属架橋１３５が金属イオンとして抵抗変化層１３３の内部に溶解し、金属架橋１３５の一部が切れる。その結果、金属架橋１３５の一部が切れ、活性電極１３１と不活性電極１３２との間の電気的な接続が解消され、抵抗変化素子１３０は高抵抗状態（オフ状態）へと遷移する。活性電極１３１と不活性電極１３２との間では、電気的な接続が完全に切れる前の段階から電気抵抗が大きくなったり、電極間の容量が変化したりして電気的な特性が変化し、最終的に電気的な接続が切れる。抵抗変化素子１３０を高抵抗状態（オフ状態）から低抵抗状態（オン状態）にするためには、不活性電極１３２に再び負電圧を印加すればよい。
【００３７】
以上のように、抵抗変化素子１３０の低抵抗状態と高抵抗状態とを制御することによって、スイッチセル１１３を構成する抵抗変化スイッチ１１０の導通状態を切り替えることができる。
【００３８】
以上が、クロスバ回路１１の構成の一例についての説明である。なお、図２〜図４に示すクロスバ回路１１の構成は一例であって、本実施形態のクロスバ回路１１の構成をそのままの形態で限定するものではない。なお、例えば、ＰＲＡＭ（Phase change Random Access Memory）やＲｅＲＡＭ（Resistive Random Access Memory）に用いられる抵抗変化型不揮発性メモリ素子を抵抗変化素子として用いてもよい。
【００３９】
〔ＬＵＴ〕
図５は、ＬＵＴ１２の構成の一例を示すブロック図である。図５のように、ＬＵＴ１２は、第１論理選択回路１２１、フィルタ回路１２２、第２論理選択回路１２３を有する。
【００４０】
図５のように、第１論理選択回路１２１は、第１信号線群１０１を介してクロスバ回路１１の出力に接続されるとともに、フィルタ回路１２２に接続される。また、第１論理選択回路１２１は、アドレスが設定された複数の記憶素子を含む。複数の記憶素子のそれぞれにはデータが記憶される。
【００４１】
第１論理選択回路１２１には、第１信号線群１０１を介して、冗長化されていない第１信号群が入力される。第１論理選択回路１２１は、入力された第１信号群を構成する選択信号の組合せに応じて、指定されたアドレスの記憶素子からデータを選択して読み出す。第１論理選択回路１２１は、選択したデータに基づいた少なくとも二つのデータ信号をフィルタ回路１２２に出力する。
【００４２】
図６は、第１論理選択回路１２１の構成の一例を示すブロック図である。図６のように、第１論理選択回路１２１は、第１入力回路１５１、第１選択回路１５２を含む。また、第１論理選択回路１２１は、複数の記憶素子Ｍ１〜Ｍｎを含む（ｎは自然数）。複数の記憶素子Ｍ１〜Ｍｎのそれぞれにはアドレスが設定され、１ビットのデータが記憶される。複数の記憶素子Ｍ１〜Ｍｎの出力はデータ信号群を形成する。例えば、記憶素子Ｍは、ＳＲＡＭ（Static Random Access Memory）で構成される。また、複数の記憶素子Ｍ１〜Ｍｎはクロスバとして構成してもよい。
【００４３】
第１入力回路１５１は、第１信号線群１０１を介してクロスバ回路１１に接続されるとともに、第１選択回路１５２に接続される。第１入力回路１５１には、読み出し対象のデータが記憶された記憶素子Ｍを選択するための信号が入力される。第１入力回路１５１は、クロスバ回路１１からの信号の組合せに対応するアドレスの記憶素子Ｍに記憶されたデータを読み出すための信号を第１選択回路１５２に出力する。
【００４４】
例えば、第１入力回路１５１は、第１信号線群１０１を構成する信号線ごとに、それらの信号線からの入力信号を反転させた信号（以下、反転信号と呼ぶ）を生成する第１否定回路と、その反転信号をさらに反転させた信号を生成する第２否定回路とを含む。例えば、第１入力回路１５１は、反転信号が出力される信号線と、その反転信号をさらに反転した信号が出力される信号線とを介して第１選択回路１５２に接続される。
【００４５】
第１選択回路１５２は、複数の記憶素子Ｍと、第１入力回路１５１と、フィルタ回路１２２とに接続される。第１選択回路１５２には、第１入力回路１５１から選択信号が入力される。第１選択回路１５２は、第１入力回路１５１から入力される選択信号に応じて、指定されたアドレスの記憶素子Ｍからデータを読み出す。第１選択回路１５２は、読み出したデータに基づいた少なくとも二つのデータ信号をフィルタ回路１２２に出力する。図６は、複数の記憶素子Ｍ１〜Ｍｎの出力であるデータ信号群から二つのデータ信号を選択し、選択したデータに基づいたデータ信号をフィルタ回路１２２に出力する例を示す。
【００４６】
図５のように、フィルタ回路１２２は、入力が第１論理選択回路１２１に接続され、出力が第２論理選択回路１２３に接続される。フィルタ回路１２２は、放射線の影響で生成される電荷によって論理素子の出力電圧が過渡的に変動するＳＥＴ（Single Effect Transient）が発生した際に発生するノイズ（以下、グリッチとも呼ぶ）を除去するフィルタである。フィルタ回路１２２には、第１選択回路１５２によって選択されたデータ信号が第１選択回路１５２から入力される。フィルタ回路１２２は、入力されたデータ信号にグリッチが含まれる場合、そのグリッチが除去された出力データ信号群を第２論理選択回路１２３に出力する。
【００４７】
図７は、フィルタ回路１２２の構成の一例を示すブロック図である。図７のように、フィルタ回路１２２は、第１フィルタ素子１６１と第２フィルタ素子１６２とを含む。第１フィルタ素子１６１および第２フィルタ素子１６２のそれぞれには、第１論理選択回路１２１によって選択されたデータ信号が入力される。第１フィルタ素子１６１および第２フィルタ素子１６２のそれぞれは、第１論理選択回路１２１からのデータ信号からグリッチを除去し、その出力信号（出力データ信号とも呼ぶ）を第２論理選択回路１２３に出力する。例えば、第１フィルタ素子１６１および第２フィルタ素子１６２は、アナログ式やデジタル式のローパスフィルタによって実現される。
【００４８】
図８は、第１フィルタ素子１６１および第２フィルタ素子１６２を実現するデジタル式のフィルタ素子１６０（ＳＥＴフィルタとも呼ぶ）の構成の一例である。図８のように、フィルタ素子１６０は、遅延回路１６３、ガードゲート１６４を含む。フィルタ素子１６０に入力される信号Ｓは、遅延回路１６３とガードゲート１６４とに入力される。遅延回路１６３は、信号Ｓを所定時定数分遅延させた信号Ｓ’をガードゲート１６４に出力する。ガードゲート１６４は、信号Ｓ、信号Ｓ’、自身から出力された信号Ｄを用いて、信号Ｓからグリッチを除去する。フィルタ素子１６０は、ガードゲート１６４によって生成される信号を出力する。例えば、フィルタ素子１６０に含まれる遅延回路１６３の時定数を調整できるように構成してもよい。
【００４９】
図８の構成のフィルタ素子１６０は、信号Ｓ’を用いて、ＳＥＴによって発生したグリッチを除去する。そのため、第１フィルタ素子１６１および第２フィルタ素子１６２として図８のフィルタ素子１６０を用いると、そのフィルタ素子１６０の時定数分の遅延が発生する。複数の論理ブロックを連結させる大規模な論理集積回路を構成する場合、複数のフィルタ回路１２２が直列で接続される構成では信号の遅延が累積されていく。そのため、本実施形態では、伝播遅延に関する要件が厳しい信号経路は冗長化することによってＳＥＴ対策を施し、その信号経路上にはフィルタ回路１２２を配置しない。すなわち、本実施形態においては、冗長化しない第１信号群を第１論理選択回路１２１に入力させ、冗長化させた第２信号群を第２論理選択回路１２３に入力させる。
【００５０】
図５のように、第２論理選択回路１２３の入力は、第２信号線群１０２を介してクロスバ回路１１の出力に接続されるとともに、フィルタ回路１２２の出力に接続される。よって、第２論理選択回路１２３には、前段の論理ブロック１００−１から出力された論理信号群のうち冗長化された第２信号群（信号Ｓ４〜Ｓ５）と、フィルタ回路１２２の出力データ信号とが入力される（図２参照）。また、第２論理選択回路１２３の出力は、ＤＦＦ１３の入力に接続される。第２論理選択回路１２３は、第２信号線群１０２から入力される第２信号群を構成する選択信号の組合せに応じて、フィルタ回路１２２からの少なくとも二つの出力データ信号のうち一つを選択してＤＦＦ１３に出力する。
【００５１】
図９は、第２論理選択回路１２３の構成の一例を示す概念図である。図９のように、第２論理選択回路１２３は、第２入力回路１７１および第２選択回路１７２を含む。
【００５２】
第２入力回路１７１は、入力が第２信号線群１０２を介してクロスバ回路１１に接続され、出力が第２選択回路１７２に接続される。第２入力回路１７１には、フィルタ回路１２２から出力された少なくとも二つの出力データ信号のうちいずれか一つを選択するための信号が入力される。第２入力回路１７１は、入力された信号に対応する出力データ信号を選択するための選択信号を第２選択回路１７２に出力する。
【００５３】
例えば、第２入力回路１７１は、第２信号線群１０２を構成する複数の信号線ごとに、それらの信号線からの入力信号を反転させた信号（以下、反転信号と呼ぶ）を生成する第１否定回路と、その反転信号をさらに反転させた信号を生成する第２否定回路とを含む。例えば、第２入力回路１７１は、反転信号が出力される信号線と、その反転信号をさらに反転した信号が出力される信号線とを介して第２選択回路１７２に接続される。
【００５４】
第２選択回路１７２は、第２入力回路１７１と、フィルタ回路１２２と、ＤＦＦ１３とに接続される。第２選択回路１７２には、第２入力回路１７１から選択信号が入力される。第２選択回路１７２は、第２入力回路１７１から入力される選択信号に応じて、フィルタ回路１２２から入力される二つの出力データ信号のうち一つを選択する。第２選択回路１７２は、選択した出力データ信号をＤＦＦ１３に出力する。
【００５５】
以上が、ＬＵＴ１２の構成の一例についての説明である。なお、図５〜図９に示すＬＵＴ１２の構成は一例であって、本実施形態のＬＵＴ１２の構成をそのままの形態で限定するものではない。
【００５６】
〔回路構成〕
次に、本実施形態の論理集積回路１のＬＵＴ１２を実現する回路構成の一例について図面を参照しながら説明する。
【００５７】
図１０は、ＬＵＴ１２の回路構成の一例（ＬＵＴ１２−１）を示す概念図である。図１０のように、ＬＵＴ１２−１は、第１論理選択回路１２１、フィルタ回路１２２、第２論理選択回路１２３を有する。なお、対応関係を分かりやすくするために図１０の符号を図５〜図９の符号と同じにしたが、図５〜図９の回路構成を図１０の回路構成に限定するわけではない。
【００５８】
第１論理選択回路１２１は、複数の記憶素子Ｍ１〜Ｍ１６、第１入力回路１５１、および第１選択回路１５２を含む。第１入力回路１５１は、複数のＮＯＴ回路Ｎ１１〜Ｎ１２（論理否定回路とも呼ぶ）を含む。第１選択回路１５２は、複数の選択トランジスタＴ１１〜Ｔ１３を含む。なお、図１０においては、一部の選択トランジスタＴ１１〜Ｔ１３のみに符号を付し、大部分の選択トランジスタＴ１１〜Ｔ１３の符号は省略している。
【００５９】
フィルタ回路１２２は、第１フィルタ素子１６１と第２フィルタ素子１６２とを含む。第１フィルタ素子１６１および第２フィルタ素子１６２は、第１論理選択回路１２１の二つの出力のうちいずれか一方と、第２論理選択回路１２３の入力のうちいずれか一方との間に挿入される。
【００６０】
第２論理選択回路１２３は、第２入力回路１７１および第２選択回路１７２を含む。第２入力回路１７１は、二つのＮＯＴ回路Ｎ２１、二つのＮＯＴ回路Ｎ２２を含む。第２選択回路１７２は、二つの選択トランジスタＴ２１、二つの選択トランジスタＴ２２を含む。
【００６１】
以上が、ＬＵＴ１２−１の概略的な回路構成についての説明である。続いて、ＬＵＴ１２−１に含まれる構成について詳細に説明する。
【００６２】
複数のＮＯＴ回路Ｎ１１のそれぞれの入力には、第１信号線群１０１を構成するいずれかの信号線が接続される。複数のＮＯＴ回路Ｎ１１には、第１信号線群１０１から冗長化されていない信号が入力される。複数のＮＯＴ回路Ｎ１１のそれぞれの出力は、第１選択回路１５２に含まれる複数の選択トランジスタＴ１１〜Ｔ１３のうちいずれかのゲートと、複数のＮＯＴ回路Ｎ１２のうちいずれかの入力とに接続される。複数のＮＯＴ回路Ｎ１２のそれぞれの入力には、複数のＮＯＴ回路Ｎ１１のうちいずれかの出力が接続される。複数のＮＯＴ回路Ｎ１２のそれぞれの出力は、第１選択回路１５２に含まれる複数の選択トランジスタＴ１１〜Ｔ１３のうちいずれかのゲートに接続される。ＮＯＴ回路Ｎ１１およびＮＯＴ回路Ｎ１２は、入力された信号の値を反転させて出力する。
【００６３】
複数の選択トランジスタＴ１１のそれぞれの拡散層（ソースまたはドレイン）の一端は、いずれかの記憶素子Ｍ１〜Ｍ１６に接続される。複数の選択トランジスタＴ１１のそれぞれの拡散層の他端は、隣接し合ういずれかの選択トランジスタＴ１１の拡散層の他端とともに、後続する選択トランジスタＴ１２の拡散層の一端に接続される。より詳しくは、複数の選択トランジスタＴ１１のそれぞれの拡散層の他端は、反転された入力信号をゲートに接続されて対をなす選択トランジスタＴ１１の他端とともに、後続する選択トランジスタＴ１２の拡散層の一端に接続される。
【００６４】
複数の選択トランジスタＴ１２のそれぞれの拡散層の一端は、前段の二つの選択トランジスタＴ１１の拡散層の他端と接続される。複数の選択トランジスタＴ１２のそれぞれの拡散層の他端は、隣接し合ういずれかの選択トランジスタＴ１２の拡散層の他端とともに、後続する選択トランジスタＴ１３の拡散層の一端に接続される。
【００６５】
複数の選択トランジスタＴ１３のそれぞれの拡散層の一端は、前段の二つの選択トランジスタＴ１２の拡散層の他端と接続される。複数の選択トランジスタＴ１３のそれぞれの拡散層の他端は、隣接し合ういずれかの選択トランジスタＴ１３の拡散層の他端とともに、フィルタ回路１２２に接続される。
【００６６】
ＬＵＴ１２−１の第１論理選択回路１２１は、８個の選択トランジスタＴ１１、４個の選択トランジスタＴ１２、２個の選択トランジスタＴ１３を含む選択トランジスタ群を２組有する。第１論理選択回路１２１に含まれる二つの選択トランジスタ群のそれぞれの出力は、フィルタ回路１２２に含まれる第１フィルタ素子１６１および第２フィルタ素子１６２のうちいずれか一方に接続される。第１論理選択回路１２１によって選択される二つのデータ信号のそれぞれは、後続するフィルタ回路１２２に含まれる第１フィルタ素子１６１および第２フィルタ素子１６２のうちいずれか一方に出力される。
【００６７】
二つのＮＯＴ回路Ｎ２１（第１論理否定回路とも呼ぶ）のそれぞれの入力には、第２信号線群１０２を構成する二つの信号線のうちいずれか一方が接続される。ＮＯＴ回路Ｎ２１には、第２信号線群１０２を構成するいずれかの信号線から、冗長化された信号が入力される。二つのＮＯＴ回路Ｎ２１のうち一方の出力は、第２選択回路１７２に含まれる二つの選択トランジスタＴ２１のうち一方のゲートと、二つのＮＯＴ回路Ｎ２２のうち一方の入力とに接続される。二つのＮＯＴ回路Ｎ２１のうち他方の出力は、第２選択回路１７２に含まれる二つの選択トランジスタＴ２２のうち他方のゲートと、二つのＮＯＴ回路Ｎ２２のうち他方の入力とに接続される。ＮＯＴ回路Ｎ２１は、入力された信号の値を反転させて出力する。
【００６８】
言い換えると、第２信号線群１０２を構成する二つの信号線のうち一方は、選択トランジスタＴ２１のゲートに接続されるＮＯＴ回路Ｎ２１の入力に接続される。また、第２信号線群１０２を構成する二つの信号線のうち他方は、選択トランジスタＴ２２のゲートに接続されるＮＯＴ回路Ｎ２１の入力に接続される。
【００６９】
二つのＮＯＴ回路Ｎ２２（第２論理否定回路とも呼ぶ）のそれぞれの入力には、複数のＮＯＴ回路Ｎ２１のうちいずれか一方の出力が接続される。二つのＮＯＴ回路Ｎ２２のうち一方の出力は、第２選択回路１７２に含まれる二つの選択トランジスタＴ２１のうち他方のゲートに接続される。二つのＮＯＴ回路Ｎ２２のうち他方の出力は、第２選択回路１７２に含まれる二つの選択トランジスタＴ２２のうち他方のゲートに接続される。ＮＯＴ回路Ｎ２２は、入力された信号の値を反転させる。
【００７０】
二つの選択トランジスタＴ２１（第１選択トランジスタとも呼ぶ）のうち一方の拡散層の一端は、フィルタ回路１２２に含まれる第１フィルタ素子１６１に接続される。二つの選択トランジスタＴ２１のうち一方の拡散層の他端は、対をなす選択トランジスタＴ２２の拡散層の一端に接続される。二つの選択トランジスタＴ２１のうち他方の拡散層の一端は、フィルタ回路１２２に含まれる第２フィルタ素子１６２に接続される。二つの選択トランジスタＴ２１のうち他方の拡散層の他端は、対をなす選択トランジスタＴ２２の拡散層の一端に接続される。
【００７１】
二つの選択トランジスタＴ２２（第２選択トランジスタとも呼ぶ）のうち一方の拡散層の一端は、対をなす選択トランジスタＴ２１の拡散層の他端と接続される。二つの選択トランジスタＴ２２のうち他方の拡散層の一端は、対をなす選択トランジスタＴ２１の拡散層の他端と接続される。二つの選択トランジスタＴ２２の拡散層の他端は、ＤＦＦ１３の入力Ｄ端子に接続される。
【００７２】
第１フィルタ素子１６１は、第１論理選択回路１２１からの二つの出力のうち一方と、第２論理選択回路１２３に含まれる二つの選択トランジスタＴ２１のうち一方の拡散層の一端とに接続される。第２フィルタ素子１６２は、第１論理選択回路１２１からの二つの出力のうち他方と、第２論理選択回路１２３に含まれる二つの選択トランジスタＴ２１のうち他方の拡散層の一端とに接続される。第１フィルタ素子１６１および第２フィルタ素子１６２は、入力された信号からグリッチを除去し、第２論理選択回路１２３に含まれる二つの選択トランジスタＴ２１のうちいずれか一方に出力データ信号を出力する。例えば、第１フィルタ素子１６１および第２フィルタ素子１６２は、ＳＥＴに起因して発生したグリッチを除去するＳＥＴフィルタによって実現される。
【００７３】
図１０のＬＵＴ１２−１には、第１信号線群１０１から冗長化されていない信号が入力され、第２信号線群１０２から二重冗長化された信号が入力される。そして、図１０のＬＵＴ１２−１は、それらの信号の組合せに応じて一つの信号を選択し、選択した信号を出力する。すなわち、図１０のＬＵＴ１２−１は、実効的には４入力１出力である。なお、ＬＵＴ１２−１は、さらに大規模な回路構成としてもよい。
【００７４】
図１０の構成では、第１信号線群１０１から入力される信号に含まれるグリッチは、フィルタ回路１２２に含まれる第１フィルタ素子１６１および第２フィルタ素子１６２によって除去される。第２信号線群１０２のいずれか一つの信号が、ＳＥＴの発生によって一時的に不正な値をとっても、第２選択回路１７２の出力が一時的にハイインピーダンス状態となるため、出力容量によりＳＥＴが発生する前の電圧レベルが保持される。そのため、図１０の構成によれば、ＳＥＴの影響がＤＦＦ１３に及ぶことを防止できる。
【００７５】
図１０には、ＬＵＴ１２−１に含まれる選択トランジスタＴ１１〜Ｔ１３をｎＦＥＴ（ｎ Field effect transistor）で構成する例を示したが、ＬＵＴ１２−１に含まれる選択トランジスタはｐＦＥＴで構成してもよい。また、ＬＵＴ１２−１には、ｎＦＥＴまたはｐＦＥＴによって構成される選択トランジスタの替わりに、ｎＦＥＴとｐＦＥＴとを組み合わせたトランスミッションゲートを構成してもよい。また、ＤＦＦ１３の前段に、論理振幅を回復させるためのプルアップ回路を挿入してもよい。
【００７６】
次に、図１０のＬＵＴ１２−１とは異なる回路構成について説明する。図１１は、図１０のＬＵＴ１２−１とは異なる回路構成の一例（ＬＵＴ１２−２）を示す概念図である。なお、図１１においては、図１０と同様の構成については同じ符号を付し、詳細な説明は省略する。図１１のＬＵＴ１２−２は、図１０のＬＵＴ１２−１にマルチプレクサ１８１〜１８２を追加した回路構成を有する。ＬＵＴ１２−２の出力は、ＤＦＦ１３とマルチプレクサ１８３の入力に接続される。なお、図１０においては、マルチプレクサ１８１〜１８３に選択制御信号を入力するための選択制御線は省略する。また、ＬＵＴ１２−２の構成にマルチプレクサ１８３を含めてもよい。
【００７７】
マルチプレクサ１８１（第１マルチプレクサとも呼ぶ）は、第１論理選択回路１２１からの二つの出力のうち一方と、第１フィルタ素子１６１の出力とに接続される。マルチプレクサ１８２（第２マルチプレクサとも呼ぶ）は、第１論理選択回路１２１からの二つの出力のうち他方と、第２フィルタ素子１６２の出力とが接続される。マルチプレクサ１８１およびマルチプレクサ１８２は、入力された二つの信号のうちいずれか一方を選択して出力する。マルチプレクサ１８１およびマルチプレクサ１８２に接続される第１論理選択回路１２１からの二つの信号経路は、第１フィルタ素子１６１および第２フィルタ素子１６２を使用しない場合の迂回経路である。例えば、ＤＦＦ１３を使用しない回路を構成する場合などには迂回経路が選択される。
【００７８】
マルチプレクサ１８３（第３マルチプレクサとも呼ぶ）は、第２論理選択回路１２３からの出力と、ＤＦＦ１３の出力Ｑとに接続される。マルチプレクサ１８３は、入力された二つの信号のうちいずれか一方を選択して出力する。マルチプレクサ１８３に接続される第２論理選択回路１２３からの信号経路は、ＤＦＦ１３を使用しない場合の迂回経路である。例えば、ＤＦＦ１３を使用せずに、第１論理選択回路１２１および第２論理選択回路１２３のみを使用する回路を構成する場合などには迂回経路が選択される。
【００７９】
図１１のＬＵＴ１２−２を用いれば、ＤＦＦ１３やフィルタ回路１２２を迂回する回路を構成できる。
【００８０】
以上が、論理集積回路１のＬＵＴ１２を実現する回路構成の一例についての説明である。なお、図１０および図１１の回路構成は一例であって、ＬＵＴ１２の回路構成をそのままの形態に限定するものではない。
【００８１】
以上のように、本実施形態の論理集積回路は、ＬＵＴ、クロスバ回路、およびフリップフロップを備える。ＬＵＴは、第１論理選択回路、フィルタ回路、および第２論理選択回路を備える。
【００８２】
第１論理選択回路は、前段の論理ブロックからの論理信号群のうち冗長化されていない第１信号群が伝播される第１信号線群に接続される。第１論理選択回路は、第１信号線群から入力される第１信号群を構成する信号の組合せに基づいて少なくとも一つのデータ信号を選択して出力する。言い換えると、第１論理選択回路は、論理信号群のうち冗長化されていない第１信号群が入力され、第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する。
【００８３】
フィルタ回路は、第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、少なくとも二つのデータ信号に含まれるグリッチを除去する。
【００８４】
第２論理選択回路は、前段の論理ブロックからの論理信号群のうち冗長化された第２信号群が伝播される第２信号線群とフィルタ回路とに接続される。第２論理選択回路は、第２信号線群から入力される第２信号群を構成する信号の組合せに基づいて、フィルタ回路から入力されるデータ信号のうち少なくとも一つを選択して出力する。言い換えると、第２論理選択回路は、論理信号群のうち冗長化された第２信号群と、フィルタ回路の出力データ信号群とが入力され、第２信号群を構成する信号の組合せに基づいて、出力データ信号群のうち少なくとも一つを選択する。例えば、第２信号群が伝播される第２信号線群には、論理信号群のうち遅延が最大となる信号が割り当てられる。
【００８５】
クロスバ回路は、第１信号群が伝播される第１論理選択回路と、第２信号群が伝播される第２論理選択回路とのいずれかに、論理信号群に含まれる信号をルーティングする。
【００８６】
フリップフロップは、第２論理選択回路によって選択された出力データ信号をクロックに同期して読み込む。
【００８７】
本実施形態において、第１論理選択回路は、第１信号群が伝播される第１信号線群に接続され、第１信号線群から入力される第１信号群を構成する信号の組合せに基づいて二つのデータ信号を選択する。フィルタ回路は、第１論理選択回路によって選択された二つのデータ信号のそれぞれに含まれるグリッチを除去する。第２論理選択回路は、二重冗長化された第２信号群が伝播される第２信号線群に接続され、第２信号線群から入力される第２信号群を構成する信号の組合せに基づいて、フィルタ回路からの出力データ信号群のうち一つを選択する。
【００８８】
例えば、第２論理選択回路は、第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を二つずつ有する。第１選択トランジスタは、二つの第２選択トランジスタのうちいずれか一方と対をなす。第１選択トランジスタは、フィルタ回路から出力された二つの出力データ信号のうち一方が伝播される信号線に拡散層の一端が接続され、対をなす第２選択トランジスタの拡散層の一端に拡散層の他端が接続される。第２選択トランジスタは、対をなす第１選択トランジスタの拡散層の他端に拡散層の一端が接続される。第２選択トランジスタは、もう一方の第２選択トランジスタの拡散層の他端に拡散層の他端が接続され、その拡散層の他端がもう一方の第２選択トランジスタと共通の出力端を形成する。第１論理否定回路は、二つの第２論理否定回路のうちいずれか一方と対をなす。第１論理否定回路は、二重冗長化された第２信号群が伝播される信号線のうちいずれか一方に入力が接続されるとともに、二つの第１選択トランジスタのうちいずれか一方のゲートと、対をなす第２論理否定回路の入力とに出力が接続される。第２論理否定回路は、対をなす第１論理否定回路の出力に入力が接続される。第２論理否定回路は、対をなす第１論理否定回路の出力が接続された第１選択トランジスタとは異なる第１選択トランジスタのゲートに出力が接続される。
【００８９】
例えば、第２論理選択回路は、第１マルチプレクサと第２マルチプレクサとを備える。第１マルチプレクサは、第１論理選択回路から出力される第１データ信号が伝播される信号線と、フィルタ回路を通過した第１データ信号が伝播される信号線とに入力が接続され、二つの第１選択トランジスタのうち一方に出力が接続される。第２マルチプレクサは、第１論理選択回路から出力される第２データ信号が伝播される信号線と、フィルタ回路を通過した第２データ信号が伝播される信号線とに入力が接続され、二つの第１選択トランジスタのうち他方に出力が接続される。
【００９０】
例えば、第２論理選択回路は、フリップフロップと、第３マルチプレクサとを備える。フリップフロップは、第２論理選択回路によって選択された出力データ信号をクロックに同期して読み込む。第３マルチプレクサは、第２論理選択回路から出力される信号が伝播される信号線と、フリップフロップから出力される信号が伝播される信号線とに入力が接続され、入力された信号のうちいずれかを選択する。
【００９１】
例えば、クロスバ回路は、第１方向に延伸する複数の第１配線と、第１方向と交差する第２方向に延伸する複数の第２配線と、第１配線と第２配線との交差する位置に配置される複数のスイッチセルとを備える。複数の前記第２配線のそれぞれは、第１論理選択回路および第２論理選択回路のいずれかに接続される。スイッチセルは、抵抗変化スイッチを含む。例えば、抵抗変化スイッチは、銅を主成分とする活性電極と、銅と比べて活性の低い金属を主成分とする不活性電極と、活性電極と不活性電極との間に配置される抵抗変化素子とを有する。
【００９２】
本実施形態においては、ＬＵＴの信号入力のうち、第１信号線群には冗長化しない信号を入力し、第２信号線群には冗長化させた同じ信号を入力する。冗長化しない経路にはフィルタを配してグリッチを防止する。一方、冗長化する経路には、フィルタを配置しない構成とする。本実施形態においては、伝播遅延が最も厳しい信号経路を第２信号線群に割り当てて伝播遅延の増加なしにＳＥＴ対策をするとともに、他の信号経路にはフィルタを配置することによって冗長構成とせずにＳＥＴ対策をする。その結果、本実施形態によれば、回路規模や速度性能の要件を満たしながら、シングルイベントトランジエントの影響を低減できる。
【００９３】
（第２の実施形態）
次に、本発明の第２の実施形態に係る論理集積回路について図面を参照しながら説明する。本実施形態の論理集積回路は、三重冗長化された第２信号群のうち値が多数の信号を選択する多数決回路を有する点で第１の実施形態とは異なる。
【００９４】
図１２は、本実施形態の論理集積回路２の構成の概要について説明するための概念図である。図１２のように、論理集積回路２は、クロスバ回路２１、ＬＵＴ２２、ＤＦＦ２３を備える。クロスバ回路２１は、冗長化されてない第１信号群を伝播させる第１信号線群２０１と、冗長化された第２信号群を伝播させる第２信号線群２０２とを介してＬＵＴ２２に接続される。第１信号群は、冗長化されてない信号Ｓ１〜Ｓ３によって構成される。第２信号群は、冗長化された信号Ｓ４〜Ｓ６によって構成される。
【００９５】
ＬＵＴ２２とＤＦＦ２３とは論理ブロック２００を構成する。図１２には、論理ブロック２００が一組のＬＵＴ２２とＤＦＦ２３とによって構成される例を図示しているが、論理ブロック２００は複数組のＬＵＴ２２とＤＦＦ２３とによって構成されてもよい。また、図１２には、論理集積回路２が一組のクロスバ回路２１、ＬＵＴ２２、およびＤＦＦ２３によって構成される例を図示しているが、複数の論理ブロック２００をクロスバ回路２１で接続させて論理集積回路２を構成してもよい。なお、クロスバ回路２１およびＤＦＦ２３のそれぞれは、第１の実施形態のクロスバ回路１１およびＤＦＦ１３と同様の構成であるため、詳細な説明を省略する。
【００９６】
図１３は、ＬＵＴ２２の構成の一例を示すブロック図である。図１３のように、ＬＵＴ２２は、第１論理選択回路２２１、フィルタ回路２２２、第２論理選択回路２２３、多数決回路２２５を有する。なお、第１論理選択回路２２１およびフィルタ回路２２２の構成は第１の実施形態と同様であるため、詳細な説明は省略する。以下においては、第１の実施形態と相違する第２論理選択回路２２３および多数決回路２２５について説明する。
【００９７】
第２論理選択回路２２３の入力は、多数決回路２２５の出力に接続されるとともに、フィルタ回路２２２の出力に接続される。また、第２論理選択回路２２３の出力は、ＤＦＦ２３の入力に接続される。第２論理選択回路２２３は、多数決回路２２５から入力される選択信号に応じて、フィルタ回路２２２からの少なくともニつのデータ信号のうち一つを選択してＤＦＦ２３に出力する。
【００９８】
多数決回路２２５は、入力が第２信号線群２０２を介してクロスバ回路２１に接続され、出力が第２論理選択回路２２３に接続される。多数決回路２２５は、第２信号線群２０２を介して入力される第２信号群を構成する信号のうち、多数の値を選択して出力する。図１３の例では、多数決回路２２５は、第２信号線群２０２からの三つの入力のうち、二つ以上が「１」であれば「１」を出力し、二つ以上が「０」であれば「０」を出力する。
【００９９】
図１４は、多数決回路２２５を実現する回路の構成例（多数決回路２８０）である。多数決回路２８０は、三つのＡＮＤ回路２８１〜２８３と、一つのＯＲ回路２８４とを含む。なお、図１４の例では、第２信号線群２０２が三つの第２信号線２０２−１〜３で構成されるものとする。ＡＮＤ回路２８１の入力には、第２信号線２０２−１と第２信号線２０２−２とが接続される。ＡＮＤ回路２８２の入力には、第２信号線２０２−２と第２信号線２０２−３とが接続される。ＡＮＤ回路２８３の入力には、第２信号線２０２−１と第２信号線２０２−３とが接続される。ＡＮＤ回路２８１〜２８３の出力は、ＯＲ回路２８４の入力に接続される。ＯＲ回路２８４は、ＡＮＤ回路２８１〜２８３の入力のうち多数の値を一つ選択して第２入力回路２７１に出力する。
【０１００】
図１５は、第２論理選択回路２２３の構成の一例を示す概念図である。図１５のように、第２論理選択回路２２３は、第２入力回路２７１、第２選択回路２７２を含む。
【０１０１】
図１５のように、第２入力回路２７１は、入力が多数決回路２２５の出力に接続され、出力が第２選択回路２７２に接続される。第２入力回路２７１には、フィルタ回路２２２から出力された少なくとも二つのデータ信号のうちいずれか一つを選択するための選択信号が入力される。第２入力回路２７１は、入力された信号に対応するデータ信号を読み出すための選択信号を第２選択回路２７２に出力する。
【０１０２】
例えば、第２入力回路２７１は、多数決回路２２５からの入力信号を反転させた信号（以下、反転信号と呼ぶ）を生成する第１否定回路と、その反転信号をさらに反転させた信号を生成する第２否定回路とを含む。例えば、第２入力回路２７１は、反転信号が出力される信号線と、その反転信号をさらに反転した信号が出力される信号線とを介して第２選択回路２７２に接続される。
【０１０３】
第２選択回路２７２は、第２入力回路２７１と、フィルタ回路２２２と、ＤＦＦ２３とに接続される。第２選択回路２７２には、第２入力回路２７１から選択信号が入力される。第２選択回路２７２は、第２入力回路２７１から入力される選択信号に応じて、フィルタ回路２２２から入力されるデータ信号をうち一つを選択する。第２選択回路２７２は、選択したデータ信号をＤＦＦ２３に出力する。
【０１０４】
以上が、ＬＵＴ２２の構成の一例についての説明である。なお、図１３〜図１５に示すＬＵＴ２２の構成は一例であって、本実施形態のＬＵＴ２２の構成をそのままの形態で限定するものではない。
【０１０５】
〔回路構成〕
次に、本実施形態の論理集積回路２のＬＵＴ２２を実現する回路構成の一例について図面を参照しながら説明する。
【０１０６】
図１６は、ＬＵＴ２２の回路構成の一例（ＬＵＴ２２−１）を示す概念図である。図１６のように、ＬＵＴ２２−１は、第１論理選択回路２２１、フィルタ回路２２２、第２論理選択回路２２３、多数決回路２２５を有する。なお、対応関係を分かりやすくするために図１６の符号を図１２〜図１５の符号と同じにしたが、図１２〜図１５の回路構成を図１６の回路構成に限定するわけではない。
【０１０７】
第１論理選択回路２２１は、複数の記憶素子Ｍ１〜Ｍ１６、第１入力回路２５１、および第１選択回路２５２を含む。第１入力回路２５１は、複数のＮＯＴ回路Ｎ１１〜Ｎ１２（論理否定回路とも呼ぶ）を含む。第１選択回路２５２は、複数の選択トランジスタＴ１１〜Ｔ１３を含む。なお、図１６においては、一部の選択トランジスタＴ１１〜Ｔ１３のみに符号を付し、大部分の選択トランジスタＴ１１〜Ｔ１３の符号は省略している。また、第１論理選択回路２２１の構成は、図１０に示す第１論理選択回路１２１の構成と同様であるため、詳細な説明は省略する。
【０１０８】
フィルタ回路２２２は、第１フィルタ素子２６１と第２フィルタ素子２６２とを含む。第１フィルタ素子２６１および第２フィルタ素子２６２は、第１論理選択回路２２１の二つの出力のうちいずれか一方と、第２論理選択回路２２３の入力のうちいずれか一方との間に挿入される。フィルタ回路２２２の構成は、図１０に示すフィルタ回路１２２の構成と同様であるため、詳細な説明は省略する。
【０１０９】
第２論理選択回路２２３は、第２入力回路２７１および第２選択回路２７２を含む。第２入力回路２７１は、ＮＯＴ回路Ｎ２１およびＮＯＴ回路Ｎ２２を含む。第２選択回路２７２は、選択トランジスタＴ２１および選択トランジスタＴ２２を含む。
【０１１０】
多数決回路２２５の入力には、第２信号線群２０２を構成する三つの信号線が接続される。また、多数決回路２２５の出力には、第２入力回路２７１のＮＯＴ回路Ｎ２１が接続される。多数決回路２２５は、三つの信号線から入力される三つの信号の中で値が多数の信号（選択信号とも呼ぶ）を選択して第２入力回路２７１に出力する。
【０１１１】
以上が、ＬＵＴ２２−１の概略的な回路構成についての説明である。続いて、ＬＵＴ２２−１に含まれる構成について詳細に説明する。以下においては、図１０のＬＵＴ１２−１と同様の構成については説明を省略し、主に第２論理選択回路２２３の構成について説明する。
【０１１２】
ＮＯＴ回路Ｎ２１（第１否定論理回路とも呼ぶ）の入力には、多数決回路２２５の出力が接続される。ＮＯＴ回路Ｎ２１の出力は、第２選択回路２７２に含まれる選択トランジスタＴ２１のゲートと、ＮＯＴ回路Ｎ２２の入力とに接続される。ＮＯＴ回路Ｎ２１には、多数決回路２２５から出力される選択信号が入力される。ＮＯＴ回路Ｎ２１は、入力された選択信号の値を反転した信号を、選択トランジスタＴ２１のゲートおよびＮＯＴ回路Ｎ２２の入力に出力する。
【０１１３】
ＮＯＴ回路Ｎ２２（第２否定論理回路とも呼ぶ）の入力には、ＮＯＴ回路Ｎ２１の出力が接続される。ＮＯＴ回路Ｎ２２の出力は、第２選択回路２７２に含まれる選択トランジスタＴ２２のゲートに接続される。ＮＯＴ回路Ｎ２２は、入力された信号の値を反転させた信号を選択トランジスタＴ２２のゲートに出力する。
【０１１４】
選択トランジスタＴ２１（第１選択トランジスタとも呼ぶ）の拡散層の一端は、フィルタ回路２２２に含まれる第１フィルタ素子２６１に接続される。選択トランジスタＴ２１の拡散層の他端は、選択トランジスタＴ２２の拡散層の他端とともにＤＦＦ２３の入力に接続される。
【０１１５】
選択トランジスタＴ２２（第２選択トランジスタとも呼ぶ）の拡散層の一端は、フィルタ回路２２２に含まれる第２フィルタ素子２６２に接続される。選択トランジスタＴ２２の拡散層の他端は、選択トランジスタＴ２１の拡散層の他端とともにＤＦＦ２３の入力に接続される。
【０１１６】
図１６のＬＵＴ２２−１には、第１信号線群２０１から冗長化されていない信号が入力され、第２信号線群２０２から三重冗長化された信号が入力される。そして、図１６のＬＵＴ２２−１は、選択信号の組合せに応じて一つのデータ信号を選択して出力する。図１６のＬＵＴ２２−１は、実効的には４入力１出力である。なお、ＬＵＴ２２−１は、さらに大規模な回路構成としてもよい。
【０１１７】
図１６の構成では、第１信号線群２０１から入力される信号に含まれるグリッチは、フィルタ回路２２２に含まれる第１フィルタ素子２６１および第２フィルタ素子２６２によって除去される。一方、第２信号線群２０２から入力される信号は、ＳＥＴが発生した際に一時的に不正な値をとっても、多数決回路２２５によって、ＳＥＴが発生する前の電圧レベルが保持される。そのため、図１６の構成によれば、ＳＥＴの影響がＤＦＦ１３に及ぶことを防止できる。
【０１１８】
以上のように、本実施形態の論理集積回路は、第２信号群が伝播される第２信号線群に接続され、第２信号線群から入力される第２信号群を構成する信号のうち値が多数の信号を選択し、選択した信号を第２論理選択回路に出力する多数決回路を有する。
【０１１９】
第１論理選択回路は、第１信号群が伝播される第１信号線群に接続され、第１信号線群から入力される第１信号群を構成する信号の組合せに基づいて、データ信号群に含まれる二つのデータ信号を選択する。フィルタ回路は、第１論理選択回路によって選択された二つのデータ信号のそれぞれに含まれるグリッチを除去する。第２論理選択回路は、多数決回路によって選択された信号に基づいて、フィルタ回路から入力される二つの出力データ信号のうち一つを選択する。
【０１２０】
例えば、第２論理選択回路は、第１論理否定回路、第２論理否定回路、第１選択トランジスタ、および第２選択トランジスタを有する。第１選択トランジスタの拡散層の一端は、フィルタ回路から出力される二つのデータ信号のうち一方が伝播される信号線に接続される。第１選択トランジスタの拡散層の他端は、第２選択トランジスタの拡散層の一端に接続され、第２選択トランジスタと共通の出力端を形成する。第２選択トランジスタの拡散層の一端は、フィルタ回路から出力される二つのデータ信号のうち他方が伝播される信号線に接続される。第２選択トランジスタの拡散層の他端は、第１選択トランジスタの拡散層の一端に接続され、第１選択トランジスタと共通の出力端を形成する。第１論理否定回路は、入力が多数決回路の出力に接続されるとともに、出力が第１選択トランジスタのゲートと第２論理否定回路の入力とに接続される。第２論理否定回路は、入力が第１論理否定回路の出力に接続され、出力が第２選択トランジスタのゲートに接続される。
【０１２１】
本実施形態においては、第１の実施形態と同様に、伝播遅延が最も厳しい信号経路を第２信号線群に割り当てて伝播遅延の増加なしにＳＥＴ対策をするとともに、他の信号経路にはフィルタを配置することによって冗長構成とせずにＳＥＴ対策をする。その結果、本実施形態によれば、回路規模や速度性能の要件を満たしながら、シングルイベントトランジエントの影響を低減できる。また、本実施形態によれば、多数決回路を挿入することにより、第１の実施形態と比べて第２論理選択回路を簡略化できる。
【０１２２】
（第３の実施形態）
次に、本発明の第３の実施形態に係る論理集積回路について図面を参照しながら説明する。本実施形態の論理集積回路は、三重冗長化された第２論理選択回路から出力されるデータ信号のうち値が多数の信号を選択する多数決回路を有する点で第１〜第２の実施形態とは異なる。
【０１２３】
図１７は、本実施形態の論理集積回路３の構成の概要について説明するための概念図である。図１７のように、論理集積回路３は、クロスバ回路３１、ＬＵＴ３２、ＤＦＦ３３を備える。クロスバ回路３１は、冗長化されてない第１信号群を伝播させる第１信号線群３０１と、冗長化された第２信号群を伝播させる第２信号線群３０２とを介してＬＵＴ３２に接続される。第１信号群は、冗長化されてない信号Ｓ１〜Ｓ３によって構成される。第２信号群は、冗長化された信号Ｓ４〜Ｓ６によって構成される。
【０１２４】
ＬＵＴ３２とＤＦＦ３３とは論理ブロック３００を構成する。図１７には、論理ブロック３００が一組のＬＵＴ３２とＤＦＦ３３とによって構成される例を図示しているが、論理ブロック３００は複数組のＬＵＴ３２とＤＦＦ３３とによって構成されてもよい。また、図１７には、論理集積回路３が一組のクロスバ回路３１、ＬＵＴ３２、およびＤＦＦ３３によって構成される例を図示しているが、複数の論理ブロック３００をクロスバ回路３１で接続させて論理集積回路３を構成してもよい。なお、クロスバ回路３１およびＤＦＦ３３のそれぞれは、第１の実施形態のクロスバ回路１１およびＤＦＦ１３と同様の構成であるため、詳細な説明を省略する。
【０１２５】
図１８は、ＬＵＴ３２の構成の一例を示すブロック図である。図１８のように、ＬＵＴ３２は、第１論理選択回路３２１、フィルタ回路３２２、第２論理選択回路３２３、多数決回路３２５を有する。なお、第１論理選択回路３２１およびフィルタ回路３２２の構成は第１の実施形態と同様であるため、詳細な説明は省略する。以下においては、第１の実施形態と相違する第２論理選択回路３２３および多数決回路３２５について説明する。
【０１２６】
図１８において、第２論理選択回路３２３は、三重に冗長化されている。三重冗長化された第２論理選択回路３２３のそれぞれの入力は、第２信号線群３０２を構成する信号線のいずれかを介してクロスバ回路３１に接続されるとともに、フィルタ回路３２２の出力に接続される。また、三重冗長化された第２論理選択回路３２３の出力は、多数決回路３２５の入力に接続される。三重冗長化された第２論理選択回路３２３のそれぞれは、第２信号線群３０２から入力される信号に応じて、フィルタ回路３２２からの少なくとも三つのデータ信号のうち一つを選択して多数決回路３２５に出力する。なお、第２論理選択回路３２３は、三重以外の多重度で冗長化されてもよい。
【０１２７】
図１８においては、全ての第２論理選択回路３２３がフィルタ回路３２２に接続するように図示しているが、一つの第２論理選択回路３２３がフィルタ回路３２２に接続するように構成してもよい。また、少なくとも一つの第２論理選択回路３２３がフィルタ回路３２２に接続するように構成してもよい。
【０１２８】
多数決回路３２５は、三重冗長化された第２論理選択回路３２３のそれぞれの出力に入力が接続され、ＤＦＦ３３に出力が接続される。多数決回路３２５は、第２論理選択回路３２３から入力されるデータ信号のうち、多数の値の信号を選択して出力する。例えば、多数決回路３２５は、三重冗長化された第２論理選択回路３２３からの三つの入力のうち、二つ以上が「１」であれば「１」を出力し、二つ以上が「０」であれば「０」を出力する。例えば、多数決回路３２５は、図１４の多数決回路２８０によって実現される。
【０１２９】
図１９は、第２論理選択回路３２３の構成の一例を示す概念図である。図１９のように、第２論理選択回路３２３は、第２入力回路３７１、第２選択回路３７２を含む。
【０１３０】
図１９のように、第２入力回路３７１は、第２信号線群３０２を構成する信号線のいずれかに入力が接続され、多数決回路３２５の入力に出力が接続される。第２入力回路３７１には、フィルタ回路３２２から出力された少なくとも一つのデータ信号のうちいずれか一つを選択するための選択信号が入力される。第２入力回路３７１は、入力された信号に対応するデータ信号を読み出すための選択信号を第２選択回路３７２に出力する。
【０１３１】
例えば、第２入力回路３７１は、第２信号線群３０２を構成するいずれかの信号線からの入力信号を反転させた信号（以下、反転信号と呼ぶ）を生成する第１論理否定回路と、その反転信号をさらに反転させた信号を生成する第２論理否定回路とを含む。例えば、第２入力回路３７１は、反転信号が出力される信号線と、その反転信号をさらに反転した信号が出力される信号線とを介して第２選択回路３７２に接続される。
【０１３２】
第２選択回路３７２は、第２入力回路３７１と、フィルタ回路３２２と、多数決回路３２５とに接続される。第２選択回路３７２には、第２入力回路３７１から選択信号が入力される。第２選択回路３７２は、第２入力回路３７１から入力される選択信号に応じて、フィルタ回路３２２から入力されるデータ信号のうち一つを選択する。第２選択回路３７２は、選択したデータ信号を多数決回路３２５に出力する。
【０１３３】
以上が、ＬＵＴ３２の構成の一例についての説明である。なお、図１７〜図１９に示すＬＵＴ３２の構成は一例であって、本実施形態のＬＵＴ３２の構成をそのままの形態で限定するものではない。
【０１３４】
〔回路構成〕
次に、本実施形態の論理集積回路３のＬＵＴ３２を実現する回路構成の一例について図面を参照しながら説明する。
【０１３５】
図２０は、ＬＵＴ３２の回路構成の一例（ＬＵＴ３２−１）を示す概念図である。なお、図２０においては、図１６と同様の構成については同じ符号を付し、詳細な説明は省略する。図２０のＬＵＴ３２−１は、第２論理選択回路３２３を三重冗長化し、三重冗長化した第２論理選択回路３２３の後段に多数決回路３２５を配置した回路構成を有する。なお、図２０のＬＵＴ３２−１の説明においては、図１６のＬＵＴ２２−１と同様の箇所については詳細な説明を省略する。
【０１３６】
第１論理選択回路３２１は、複数の記憶素子Ｍ１〜Ｍ１６、第１入力回路３５１、および第１選択回路３５２を含む。第１入力回路３５１は、複数のＮＯＴ回路Ｎ１１〜Ｎ１２（論理否定回路とも呼ぶ）を含む。第１選択回路３５２は、複数の選択トランジスタＴ１１〜Ｔ１３を含む。なお、図２０においては、一部の選択トランジスタＴ１１〜Ｔ１３のみに符号を付し、大部分の選択トランジスタＴ１１〜Ｔ１３の符号は省略している。また、第１論理選択回路３２１の構成は、図１０に示す第１論理選択回路１２１の構成と同様であるため、詳細な説明は省略する。
【０１３７】
フィルタ回路３２２は、第１フィルタ素子３６１と第２フィルタ素子３６２とを含む。第１フィルタ素子３６１および第２フィルタ素子３６２は、第１論理選択回路３２１の二つの出力のうちいずれか一方と、第２論理選択回路３２３の入力のうちいずれか一方との間に挿入される。フィルタ回路３２２の構成は、図１０に示すフィルタ回路１２２の構成と同様であるため、詳細な説明は省略する。
【０１３８】
第２論理選択回路３２３は、三重冗長化される。三重冗長化された第２論理選択回路３２３のそれぞれに含まれるＮＯＴ回路Ｎ２１の入力には、三重冗長化された第２信号線群３０２を構成する信号線のうちいずれかが接続される。また、三重冗長化された第２論理選択回路３２３のそれぞれに含まれる選択トランジスタＴ２１の拡散層の一端には、第１フィルタ素子３６１の出力が接続される。三重冗長化された第２論理選択回路３２３のそれぞれに含まれる選択トランジスタＴ２２の拡散層の一端には、第２フィルタ素子３６２の出力が接続される。第２論理選択回路３２３は、第１論理選択回路３２１から出力される二つのデータ信号のうちいずれか一方を、第２信号線群３０２からの信号に基づいて選択し、選択した信号を多数決回路３２５に出力する。なお、三重冗長化された第２論理選択回路３２３のうち少なくとも一つをフィルタ回路３２２に接続し、その他の第２論理選択回路３２３はフィルタ回路３２２に接続させないように構成してもよい。
【０１３９】
多数決回路３２５の入力には、三重冗長化された第２論理選択回路３２３のそれぞれの出力が接続される。多数決回路３２５の出力には、ＤＦＦ３３の入力Ｄ端子が接続される。多数決回路３２５は、三つの第２論理選択回路３２３から出力される三つの信号中、二つ以上が「１」であれば、「１」をＤＦＦ３３に出力し、２つ以上が「０」であれば「０」をＤＦＦ３３に出力する。
【０１４０】
図２０のように、第２論理選択回路３２３を冗長化し、冗長化された第２論理選択回路３２３の後段に多数決回路３２５を配置する構成としても、図１６のＬＵＴ２２−１と同様の機能を実現できる。
【０１４１】
以上のように、本実施形態の論理集積回路は、多重化された第２論理選択回路に接続され、多重化された第２論理選択回路によって選択された出力データ信号のうち値が多数の信号を出力する多数決回路を有する。第１論理選択回路は、第１信号群が伝播される第１信号線群に接続され、第１信号線群から入力される第１信号群を構成する信号の組合せに基づいて二つのデータ信号を選択する。フィルタ回路は、第１論理選択回路から出力される二つのデータ信号のそれぞれに含まれるグリッチを除去する。それぞれの第２論理選択回路は、第２信号群が伝播される第２信号線群を構成する信号線のうちいずれかに接続され、接続された信号線からの信号に基づいて、フィルタ回路から入力される二つの出力データ信号のうち一つを選択して多数決回路に出力する。
【０１４２】
例えば、多重化された第２論理選択回路のそれぞれは、第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を有する。第１選択トランジスタの拡散層の一端は、フィルタ回路から出力される二つの出力データ信号のうち一方が伝播される信号線に接続され。第１選択トランジスタの拡散層の他端は、第２選択トランジスタの拡散層の一端に拡散層の他端が接続され、第２選択トランジスタと共通の出力端を形成する。第２選択トランジスタの拡散層の一端は、フィルタ回路から出力される二つの出力データ信号のうち他方が伝播される信号線に接続される。第２選択トランジスタの拡散層の他端は、拡散層の他端が第１選択トランジスタの拡散層の一端に接続され、第１選択トランジスタと共通の出力端を形成する。第１論理否定回路は、入力が第２信号群の伝播するいずれかの信号線に接続されるとともに、出力が第１選択トランジスタのゲートと第２論理否定回路の入力とに接続される。第２論理否定回路は、入力が第１論理否定回路の出力に接続され、出力が第２選択トランジスタのゲートに接続される。出力端は、多数決回路の入力に接続される。
【０１４３】
本実施形態においては、第１の実施形態と同様に、伝播遅延が最も厳しい信号経路を第２信号線群に割り当てて伝播遅延の増加なしにＳＥＴ対策をするとともに、他の信号経路にはフィルタを配置することによって冗長構成とせずにＳＥＴ対策をする。その結果、本実施形態によれば、回路規模や速度性能の要件を満たしながら、シングルイベントトランジエントの影響を低減できる。また、本実施形態によれば、第２論理選択回路の後段に多数決回路を挿入することにより、第２の実施形態と比べて、シングルイベントトランジエントの影響が後段に及ぶことをより低減できる。
【０１４４】
（第４の実施形態）
次に、本発明の第４の実施形態に係る設計支援システム、当該設計支援システムが実行する構成情報設定方法、当該設計支援システムを構成するコンピュータに実行させるプログラムについて図面を参照しながら説明する。本実施形態に係る設計支援システムは、遅延が最大となる信号経路を算出し、その信号経路を第２信号線群に割り当てる構成情報を生成し、かかる構成情報を前述した論理集積回路に転送する。
【０１４５】
（構成）
図２１は、本実施形態の設計支援システム４０の構成の一例を示す概念図である。図２２は、設計支援システム４０が有する設計支援ツール群４００の構成の一例を示す概念図である。
【０１４６】
図２１のように、設計支援システム４０は、構成情報生成装置４１および構成情報転送装置４２を備える。設計支援システム４０は、少なくとも論理集積回路４に論理回路を設定する際には、その論理集積回路４に接続される。論理集積回路４は、第１〜第３の実施形態の論理集積回路１〜３のいずれかである。
【０１４７】
図２１のように、構成情報生成装置４１は、構成情報転送装置４２に接続される。また、構成情報生成装置４１は、構成情報転送装置４２を介して論理集積回路４に接続される。構成情報生成装置４１と構成情報転送装置４２との接続、構成情報転送装置４２と論理集積回路４との接続は、有線および無線のいずれを用いてもよく、それらの接続における信号の通信方式は特に限定しない。
【０１４８】
図２１のように、構成情報生成装置４１は、演算部４１１、記憶部４１２、表示部４１３、および入出力部４１４を備える。演算部４１１、記憶部４１２、表示部４１３、および入出力部４１４は、バス４１５を介して互いに接続される。構成情報生成装置４１は、例えば、コンピュータシステムによって実現される。
【０１４９】
演算部４１１は、記憶部４１２にあらかじめ格納されたプログラムに従って処理を実行することによって、構成情報生成装置４１の全体の動作を制御する。また、演算部４１１は、記憶部４１２にあらかじめ格納されているプログラムに従った処理を実行することによって、設計支援ツール群４００の機能を実現する。
【０１５０】
記憶部４１２は、設計情報やプログラムを格納するメモリ等の記憶媒体である。設計情報は、設計者が作成する回路の動作記述情報や、制約条件情報などの論理集積回路４に実装される情報を含む。例えば、設計情報には、演算部４１１の処理結果であるネットリスト情報や、配置配線情報、論理集積回路４のリソース情報や構成情報、書き換え履歴情報等の情報が含まれる。
【０１５１】
表示部４１３は、ＳＥＴフィルタの挿入位置やクリティカルパス遅延を持つノードなどを表示できる。また、表示部４１３は、設計支援ツール群４００の命令入力画面や処理結果を表示してもよい。例えば、表示部４１３は、スイッチセルの書き換え回数（変更回数とも呼ぶ）に関する情報を表示してもよい。例えば、表示部４１３は、統計処理後のデータのグラフ表示や、フロアプランナー上でのカラー表示などの表示情報を表示してもよい。例えば、ユーザは、表示部４１３の表示情報を確認することによって、所望のフロアプランを作成できる。
【０１５２】
入出力部４１４は、キーボードや、マウス、タッチパネル等の入力装置や、構成情報転送装置４２、図示しない印刷装置等の出力装置との間で信号やデータを送受信し合うためのインターフェースである。入出力部４１４は、冗長化された信号が伝播される第２信号群に最大遅延信号が割り当てられるための設定をユーザに提供する。ユーザは、入出力部４１４によって提供される機能を利用することによって、最大遅延信号が第２信号群に割り当てられた配置配線を論理集積回路４に実装できる。
【０１５３】
構成情報転送装置４２は、構成情報生成装置４１と論理集積回路４とに接続される。構成情報転送装置４２は、構成情報生成装置４１と論理集積回路４との間における構成情報などのデータ伝送を制御する。例えば、構成情報転送装置４２は、構成情報生成装置４１から送信された構成情報等のデータを受信し、論理集積回路４のデータ入出力仕様の送信データに変換して転送する。また、例えば、構成情報転送装置４２は、論理集積回路４から出力された構成情報等のデータを受信し、構成情報生成装置４１のデータ入出力仕様の送信データに変換して転送する。なお、構成情報転送装置４２によるデータ変換方式については、特に限定を加えない。
【０１５４】
図２２の設計支援ツール群４００は、図２１の記憶部４１２にあらかじめ格納される。図２２の設計支援ツール群４００は、演算部４１１が記憶部４１２から読み出して実行するツールである。図２２に示すように、設計支援ツール群４００は、論理合成ツール４０１、配置配線ツール４０２、および構成情報生成ツール４０３を含む。
【０１５５】
論理合成ツール４０１（論理合成手段とも呼ぶ）は、論理集積回路４の設計者が入出力部４１４を用いて入力した動作記述情報や遅延・電力などの制約条件情報を含む動作記述ファイルを入力とする。論理合成ツール４０１は、入力した動作記述ファイルの論理合成を行う。論理合成ツール４０１は、論理集積回路４が備える論理要素を用いてネットリストを作成する。ネットリストは、論理要素および論理要素間の接続情報である。
【０１５６】
配置配線ツール４０２（配置配線手段とも呼ぶ）は、論理集積回路４の論理要素や配線リソース等のリソース情報を生成する。配置配線ツール４０２は、論理集積回路４のリソース情報に基づいて、冗長化された信号が伝播される第２信号線群に最大遅延経路が割り当てられるように、ネットリストに含まれる論理要素を仮想的に配置・配線する。言い換えると、配置配線ツール４０２は、生成したリソース情報に基づいてネットリストに含まれる論理要素を配置し、配置した論理要素間を配線して少なくとも一つの信号経路を仮想的に生成する。
【０１５７】
構成情報生成ツール４０３（構成情報生成手段とも呼ぶ）は、回路の構成情報を生成する。構成情報生成ツール４０３は、冗長化された信号が伝播される第２信号線群に最大遅延経路が割り当てられるように、配置配線ツール４０２によって配線された信号経路に配線リソースおよびスイッチリソースの割り当てを行う。構成情報生成ツール４０３は、生成した論理集積回路４の構成情報を出力する。例えば、構成情報生成ツール４０３は、表示部４１３に構成情報を表示させたり、入出力部４１４から構成情報転送装置４２に構成情報を出力したりする。
【０１５８】
以上が、構成情報生成装置４１の構成に関する説明である。続いて、構成情報生成装置４１の動作について図面を参照しながら説明する。
【０１５９】
（動作）
図２３は、本実施形態の構成情報生成装置４１による設計支援方法について説明するためのフローチャートである。図２３のフローチャートに沿った以下の説明においては、構成情報生成装置４１を動作の主体として説明する。
【０１６０】
図２３において、まず、構成情報生成装置４１は、回路の動作記述ファイルを入力とする（ステップＳ４１）。動作記述ファイルは、入出力部４１４によって入力される。
【０１６１】
例えば、動作記述ファイルは、ハードウェア記述言語を用いて作成される。ハードウェア記述言語の一例としては、Ｖｅｒｉｌｏｇ−ＨＤＬ（Hardware Description Language）が挙げられる。また、ハードウェア記述言語の一例として、ＶＨＤＬ（Very high-speed integrated circuit Hardware Description Language）が挙げられる。
【０１６２】
次に、構成情報生成装置４１は、入力された動作記述ファイルを論理合成する（ステップＳ４２）。動作記述ファイルの論理合成は、論理合成ツール４０１によって実行される。
【０１６３】
次に、構成情報生成装置４１は、ネットリストを生成する（ステップＳ４３）。ネットリストは、論理合成ツール４０１によって生成される。論理合成ツール４０１は、論理集積回路４に含まれる論理要素を用いてネットリストを生成する。論理合成ツール４０１は、設計者があらかじめ設定したタイミング制約情報を論理集積回路が満たすように、回路を最適化する。
【０１６４】
次に、構成情報生成装置４１は、論理集積回路４に実装する回路の配置配線処理を実行する（ステップＳ４４）。構成情報生成装置４１は、冗長化された信号が伝播される第２信号線群に遅延コストが最大となる信号経路を割り当てられる。回路の配置配線処理は、配置配線ツール４０２によって実行される。
【０１６５】
次に、構成情報生成装置４１は、配置配線結果に基づいて回路の構成情報を生成する（ステップＳ４５）。構成情報生成装置４１は、冗長化された信号が伝播される第２信号線群に最大遅延経路を割り当てる。構成情報の生成は、構成情報生成ツール４０３によって実行される。
【０１６６】
回路の構成情報が決定すると、ユーザによって入出力部４１４に行われた操作に基づいて、構成情報生成装置４１と論理集積回路４とが構成情報転送装置４２を介して接続される。その結果、構成情報生成装置４１と論理集積回路４との通信経路が確立される。構成情報生成装置４１は、構成情報転送装置４２を介して論理集積回路４に構成情報を送信する。論理集積回路４は、構成情報転送装置４２から構成情報を受信すると、コンフィグレーション動作を開始する。全ての構成情報のコンフィグレーション動作が完了すると、論理集積回路４に回路が実装された状態となる。
【０１６７】
以上が、構成情報生成装置４１の動作についての説明である。なお、図２２のフローチャートに沿った処理は構成情報生成装置４１の動作の一例であって、本実施形態の構成情報生成装置４１の動作をそのままの手法に限定するわけではない。
【０１６８】
〔配置配線処理〕
続いて、構成情報生成装置４１の配置配線処理について図面を参照しながら説明する。図２４は、構成情報生成装置４１の配置配線ツール４０２によって実行される配置配線処理（ステップＳ４４）の詳細について説明するためのフローチャートである。図２４のフローチャートに沿った以下の説明においては、配置配線ツール４０２を動作の主体として説明する。
【０１６９】
図２４において、まず、配置配線ツール４０２は、論理要素やルーティングリソース等のリソース情報を生成する（ステップＳ４４１）。
【０１７０】
論理要素の構成情報の保存には、スイッチセルによって構成されるメモリリソースを用いてもよい。ルーティングリソースは、配線リソースやスイッチリソースによって構成される。スイッチリソースは、スイッチセルによって構成されてもよい。リソース情報は、ある論理要素の識別番号と、その論理要素の構成情報を保存するスイッチリソース内のスイッチセルの識別番号とを一組とした情報を含んでいてもよい。また、リソース情報は、ある配線リソースの識別番号と、その配線リソースに接続されるスイッチリソースの内部のスイッチセルの識別番号とがリンクした情報として、配線リソースの有向グラフや無向グラフを含んでいてもよい。
【０１７１】
次に、配置配線ツール４０２は、ネットリストに含まれる各論理要素を論理集積回路４の配置スロットに割り当てる（ステップＳ４４２）。
【０１７２】
スロットとは、論理要素を配置する場所である。例えば、配置配線ツール４０２は、ネットの仮想配線長の総和を評価値（評価関数とも呼ぶ）とし、その評価関数を最小化する配置を探索する。例えば、ネットの仮想配線長は、そのネットに含まれる全ての論理要素のスロット位置を囲う矩形のｘ軸方向の長さと、ｙ軸方向の長さとの和である。なお、配置配線ツール４０２が用いる評価関数はここで挙げた限りではない。
【０１７３】
次に、配置配線ツール４０２は、ネットリストに含まれる各論理要素がいずれの配線リソースとスイッチリソースとを利用して接続するのかを決定する（ステップＳ４４３）。
【０１７４】
例えば、配置配線ツール４０２は、遅延時間を最小化することや、配線経路が見つからないことを避けることを実現するために、少なくとも遅延コストを含む評価関数を最小化する配線を探索する。遅延コストとは、配線経路の遅延時間に基づいて算出されるコストである。配置配線ツール４０２は、冗長化された信号が伝播される第２信号線群に遅延コストが最大となる信号経路が割り当てられるように配線を実行する。
【０１７５】
また、例えば、配置配線ツール４０２は、遅延コストに加えて、混雑コストを含む評価関数を最小化する配線を探索する。混雑コストとは、あるルーティングリソースに対して、競合しているネットの数に基づいて算出されるコストである。配置配線ツール４０２は、混雑コストを徐々に上げながら繰り返し配線を行うことによって、競合を解消していく。配置配線ツール４０２は、競合を解消できない場合、論理複製などの他の手順を用いて配線を実行してもよい。
【０１７６】
以上が、配置配線ツール４０２による配置配線処理についての説明である。なお、図２４のフローチャートに沿った処理は一例であって、本実施形態の配置配線ツール４０２による配置配線処理をそのままの手法に限定するわけではない。
【０１７７】
以上のように、本実施形態の設計支援システムは、第１〜第３の実施形態の論理集積回路に関して、少なくとも遅延コストを含む評価関数を最小化する配線を探索する。そして、本実施形態の設計支援システムは、遅延コストが最大になる信号経路を、第２信号群が伝播される第２信号線群に割り当てる構成情報を生成し、生成された構成情報に基づいた回路構成を論理集積回路に設定する。その結果、本実施形態によれば、論理信号群のうち遅延が最大となる信号経路が第２信号線群に割り当てられる。
【０１７８】
（ハードウェア）
ここで、本発明の第４の実施形態に係る設計支援システムの処理を実行するハードウェア構成について、図２５の情報処理装置９０を一例として挙げて説明する。なお、図２５の情報処理装置９０は、第４の実施形態の設計支援システムの処理を実行するための構成例であって、本発明の範囲を限定するものではない。
【０１７９】
図２５のように、情報処理装置９０は、プロセッサ９１、主記憶装置９２、補助記憶装置９３、入出力インターフェース９５および通信インターフェース９６を備える。図２５においては、インターフェースをＩ／Ｆ（Interface）と略して表記する。プロセッサ９１、主記憶装置９２、補助記憶装置９３、入出力インターフェース９５および通信インターフェース９６は、バス９９を介して互いにデータ通信可能に接続される。また、プロセッサ９１、主記憶装置９２、補助記憶装置９３および入出力インターフェース９５は、通信インターフェース９６を介して、インターネットやイントラネットなどのネットワークに接続される。
【０１８０】
プロセッサ９１は、補助記憶装置９３等に格納されたプログラムを主記憶装置９２に展開し、展開されたプログラムを実行する。本実施形態においては、情報処理装置９０にインストールされたソフトウェアプログラムを用いる構成とすればよい。プロセッサ９１は、本実施形態に係る設計支援システムによる処理を実行する。
【０１８１】
主記憶装置９２は、プログラムが展開される領域を有する。主記憶装置９２は、例えばＤＲＡＭ（Dynamic Random Access Memory）などの揮発性メモリとすればよい。また、ＭＲＡＭ（Magnetoresistive Random Access Memory）などの不揮発性メモリを主記憶装置９２として構成・追加してもよい。
【０１８２】
補助記憶装置９３は、種々のデータを記憶する。補助記憶装置９３は、ハードディスクやフラッシュメモリなどのローカルディスクによって構成される。なお、種々のデータを主記憶装置９２に記憶させる構成とし、補助記憶装置９３を省略することも可能である。
【０１８３】
入出力インターフェース９５は、情報処理装置９０と周辺機器とを接続するためのインターフェースである。通信インターフェース９６は、規格や仕様に基づいて、インターネットやイントラネットなどのネットワークを通じて、外部のシステムや装置に接続するためのインターフェースである。入出力インターフェース９５および通信インターフェース９６は、外部機器と接続するインターフェースとして共通化してもよい。
【０１８４】
情報処理装置９０には、必要に応じて、キーボードやマウス、タッチパネルなどの入力機器を接続するように構成してもよい。それらの入力機器は、情報や設定の入力に使用される。なお、タッチパネルを入力機器として用いる場合は、表示機器の表示画面が入力機器のインターフェースを兼ねる構成とすればよい。プロセッサ９１と入力機器との間のデータ通信は、入出力インターフェース９５に仲介させればよい。
【０１８５】
また、情報処理装置９０には、情報を表示するための表示機器を備え付けてもよい。表示機器を備え付ける場合、情報処理装置９０には、表示機器の表示を制御するための表示制御装置（図示しない）が備えられていることが好ましい。表示機器は、入出力インターフェース９５を介して情報処理装置９０に接続すればよい。
【０１８６】
また、情報処理装置９０には、必要に応じて、ディスクドライブを備え付けてもよい。ディスクドライブは、バス９９に接続される。ディスクドライブは、プロセッサ９１と図示しない記録媒体（プログラム記録媒体）との間で、記録媒体からのデータ・プログラムの読み出し、情報処理装置９０の処理結果の記録媒体への書き込みなどを仲介する。記録媒体は、例えば、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光学記録媒体で実現できる。また、記録媒体は、ＵＳＢ（Universal Serial Bus）メモリやＳＤ（Secure Digital）カードなどの半導体記録媒体や、フレキシブルディスクなどの磁気記録媒体、その他の記録媒体によって実現してもよい。
【０１８７】
以上が、第４の実施形態に係る設計支援システムを可能とするためのハードウェア構成の一例である。なお、図２５のハードウェア構成は、第４の実施形態に係る設計支援システムの演算処理を実行するためのハードウェア構成の一例であって、本発明の範囲を限定するものではない。また、第４の実施形態に係る設計支援システムに関する処理をコンピュータに実行させるプログラムも本発明の範囲に含まれる。さらに、第４の実施形態に係るプログラムを記録したプログラム記録媒体も本発明の範囲に含まれる。
【０１８８】
第４の実施形態の設計支援システムの構成要素は、任意に組み合わせることができる。また、第４の実施形態の設計支援システムの構成要素は、ソフトウェアによって実現してもよいし、回路によって実現してもよい。
【０１８９】
以上、実施形態を参照して本発明を説明してきたが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１９０】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
論理信号群のうち冗長化されていない第１信号群が入力され、前記第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、
前記第１論理選択回路によって選択された前記少なくとも二つのデータ信号が入力され、前記少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、
前記論理信号群のうち冗長化された第２信号群と、前記フィルタ回路の出力データ信号群とが入力され、前記第２信号群を構成する信号の組合せに基づいて、前記出力データ信号群のうち少なくとも一つを選択する第２論理選択回路とを備える論理集積回路。
（付記２）
前記第２信号群が伝播される第２信号線群には、前記論理信号群のうち遅延が最大となる信号が割り当てられる付記１に記載の論理集積回路。
（付記３）
前記第１論理選択回路は、
前記第１信号群を構成する信号の組合せに基づいて、前記データ信号群のうち二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路によって選択された二つの前記データ信号のそれぞれに含まれる前記グリッチを除去する付記１または２に記載の論理集積回路。
（付記４）
前記第１論理選択回路は、
前記第１信号群が伝播される第１信号線群に接続され、前記第１信号線群から入力される前記第１信号群を構成する信号の組合せに基づいて二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路によって選択された二つの前記データ信号のそれぞれに含まれるグリッチを除去し、
前記第２論理選択回路は、
二重冗長化された前記第２信号群が伝播される第２信号線群に接続され、前記第２信号線群から入力される前記第２信号群を構成する信号の組合せに基づいて、前記フィルタ回路からの前記出力データ信号群のうち一つを選択する付記１または２に記載の論理集積回路。
（付記５）
前記第２論理選択回路は、
第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を二つずつ有し、
前記第１選択トランジスタは、
二つの前記第２選択トランジスタのうちいずれか一方と対をなし、前記フィルタ回路から出力された二つの出力データ信号のうち一方が伝播される信号線に拡散層の一端が接続され、対をなす前記第２選択トランジスタの拡散層の一端に拡散層の他端が接続され、
前記第２選択トランジスタは、
対をなす前記第１選択トランジスタの拡散層の他端に拡散層の一端が接続され、もう一方の前記第２選択トランジスタの拡散層の他端に拡散層の他端が接続され、拡散層の他端がもう一方の前記第２選択トランジスタと共通の出力端を形成し、
前記第１論理否定回路は、
二つの前記第２論理否定回路のうちいずれか一方と対をなし、二重冗長化された前記第２信号群が伝播される信号線のうちいずれか一方に入力が接続されるとともに、二つの前記第１選択トランジスタのうちいずれか一方のゲートと、対をなす前記第２論理否定回路の入力とに出力が接続され、
前記第２論理否定回路は、
対をなす前記第１論理否定回路の出力に入力が接続され、対をなす前記第１論理否定回路の出力が接続された前記第１選択トランジスタとは異なる前記第１選択トランジスタのゲートに出力が接続される付記４に記載の論理集積回路。
（付記６）
前記第１論理選択回路から出力される第１データ信号が伝播される信号線と、前記フィルタ回路を通過した前記第１データ信号が伝播される信号線とに入力が接続され、二つの前記第１選択トランジスタのうち一方に出力が接続される第１マルチプレクサと、
前記第１論理選択回路から出力される第２データ信号が伝播される信号線と、前記フィルタ回路を通過した前記第２データ信号が伝播される信号線とに入力が接続され、二つの前記第１選択トランジスタのうち他方に出力が接続される第２マルチプレクサとを備える付記５に記載の論理集積回路。
（付記７）
前記第２論理選択回路によって選択された前記出力データ信号をクロックに同期して読み込むフリップフロップと、
前記第２論理選択回路から出力される信号が伝播される信号線と、前記フリップフロップから出力される信号が伝播される信号線とに入力が接続され、入力された信号のうちいずれかを選択する第３マルチプレクサとを備える付記６に記載の論理集積回路。
（付記８）
前記第２信号群が伝播される第２信号線群に接続され、前記第２信号線群から入力される前記第２信号群を構成する信号のうち値が多数の信号を選択し、選択した信号を前記第２論理選択回路に出力する多数決回路を有し、
前記第１論理選択回路は、
前記第１信号群が伝播される第１信号線群に接続され、前記第１信号線群から入力される前記第１信号群を構成する信号の組合せに基づいて、前記データ信号群に含まれる二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路によって選択された二つの前記データ信号のそれぞれに含まれる前記グリッチを除去し、
前記第２論理選択回路は、
前記多数決回路によって選択された信号に基づいて、前記フィルタ回路から入力される二つの出力データ信号のうち一つを選択する付記１または２に記載の論理集積回路。
（付記９）
前記第２論理選択回路は、
第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を有し、
前記第１選択トランジスタは、
前記フィルタ回路から出力される二つの前記出力データ信号のうち一方が伝播される信号線に拡散層の一端が接続され、前記第２選択トランジスタの拡散層の一端に拡散層の他端が接続され、拡散層の他端が前記第２選択トランジスタと共通の出力端を形成し、
前記第２選択トランジスタは、
前記フィルタ回路から出力される二つの前記出力データ信号のうち他方が伝播される信号線に拡散層の一端が接続され、前記第１選択トランジスタの拡散層の一端に拡散層の他端が接続され、拡散層の他端が前記第１選択トランジスタと共通の前記出力端を形成し、
前記第１論理否定回路は、
入力が前記多数決回路の出力に接続されるとともに、出力が前記第１選択トランジスタのゲートと前記第２論理否定回路の入力とに接続され、
前記第２論理否定回路は、
入力が前記第１論理否定回路の出力に接続され、出力が前記第２選択トランジスタのゲートに接続される付記８に記載の論理集積回路。
（付記１０）
多重化された前記第２論理選択回路に接続され、多重化された前記第２論理選択回路によって選択された出力データ信号のうち値が多数の信号を出力する多数決回路を有し、
前記第１論理選択回路は、
前記第１信号群が伝播される第１信号線群に接続され、前記第１信号線群から入力される前記第１信号群を構成する信号の組合せに基づいて二つの前記データ信号を選択し、
前記フィルタ回路は、
前記第１論理選択回路から出力される二つの前記データ信号のそれぞれに含まれる前記グリッチを除去し、
多重化された前記第２論理選択回路のそれぞれは、
前記第２信号群が伝播される第２信号線群を構成する信号線のうちいずれかに接続され、接続された信号線からの信号に基づいて、前記フィルタ回路から入力される二つの前記出力データ信号のうち一つを選択して前記多数決回路に出力する付記１または２に記載の論理集積回路。
（付記１１）
多重化された前記第２論理選択回路のそれぞれは、
第１選択トランジスタ、第２選択トランジスタ、第１論理否定回路、および第２論理否定回路を有し、
前記第１選択トランジスタは、
拡散層の一端が前記フィルタ回路から出力される二つの前記出力データ信号のうち一方が伝播される信号線に接続され、拡散層の他端が前記第２選択トランジスタの拡散層の一端に接続され、拡散層の他端が前記第２選択トランジスタと共通の出力端を形成し、
前記第２選択トランジスタは、
拡散層の一端が前記フィルタ回路から出力される二つの前記出力データ信号のうち他方が伝播される信号線に接続され、拡散層の他端が前記第１選択トランジスタの拡散層の一端に接続され、拡散層の他端が前記第１選択トランジスタと共通の前記出力端を形成し、
前記第１論理否定回路は、
入力が前記第２信号群の伝播するいずれかの信号線に接続されるとともに、出力が前記第１選択トランジスタのゲートと前記第２論理否定回路の入力とに接続され、
前記第２論理否定回路は、
入力が前記第１論理否定回路の出力に接続され、出力が前記第２選択トランジスタのゲートに接続され、
前記出力端は、
前記多数決回路の入力に接続される付記１０に記載の論理集積回路。
（付記１２）
前記論理集積回路は、さらに、
前記第１信号群が伝播される前記第１論理選択回路と、前記第２信号群が伝播される前記第２論理選択回路とのいずれかに、前記論理信号群に含まれる信号をルーティングするクロスバ回路と、
前記第２論理選択回路によって選択された出力データ信号をクロックに同期して読み込むフリップフロップとを備える付記１乃至１１のいずれか一項に記載の論理集積回路。
（付記１３）
前記クロスバ回路は、
第１方向に延伸する複数の第１配線と、
前記第１方向と交差する第２方向に延伸する複数の第２配線と、
前記第１配線と前記第２配線との交差する位置に配置される複数のスイッチセルとを備え、
複数の前記第２配線のそれぞれは、
前記第１論理選択回路および前記第２論理選択回路のいずれかに接続され、
前記スイッチセルは、
抵抗変化スイッチを含む付記１２に記載の論理集積回路。
（付記１４）
前記抵抗変化スイッチは、
銅を主成分とする活性電極と、銅と比べて活性の低い金属を主成分とする不活性電極と、前記活性電極と前記不活性電極との間に配置される抵抗変化素子とを有する付記１３に記載の論理集積回路。
（付記１５）
論理信号群のうち冗長化されていない第１信号群が入力され、前記第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、前記第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、前記少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、前記論理信号群のうち冗長化された第２信号群と前記フィルタ回路の出力データ信号群が入力され、前記第２信号群を構成する信号の組合せに基づいて、前記出力データ信号群のうち少なくとも一つを選択する第２論理選択回路と、を備える論理集積回路に構成情報を設定する構成情報設定方法であって、
少なくとも遅延コストを含む評価関数を最小化する配線を探索し、
前記遅延コストが最大になる信号経路を、前記第２信号群が伝播される第２信号線群に割り当てる構成情報を生成し、
生成された前記構成情報に基づいた回路構成を前記論理集積回路に設定する構成情報設定方法。
（付記１６）
論理信号群のうち冗長化されていない第１信号群が入力され、前記第１信号群を構成する信号の組合せに基づいて、データ信号群から少なくとも二つのデータ信号を選択する第１論理選択回路と、前記第１論理選択回路によって選択された少なくとも二つのデータ信号が入力され、前記少なくとも二つのデータ信号に含まれるグリッチを除去するフィルタ回路と、前記論理信号群のうち冗長化された第２信号群と前記フィルタ回路の出力データ信号群が入力され、前記第２信号群を構成する信号の組合せに基づいて、前記出力データ信号群のうち少なくとも一つを選択する第２論理選択回路と、を備える論理集積回路に構成情報を設定するプログラムであって、
少なくとも遅延コストを含む評価関数を最小化する配線を探索する処理と、
前記遅延コストが最大になる信号経路を、前記第２信号群が伝播される第２信号線群に割り当てる構成情報を生成する処理と、
生成された前記構成情報に基づいた回路構成を前記論理集積回路に設定する処理とをコンピュータに実行させるプログラム。
【０１９１】
この出願は、２０１８年１１月８日に出願された日本出願特願２０１８−２１０７０１を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１９２】
１、２、３    論理集積回路
１１、２１、３１    クロスバ回路
１２、２２、３２    ＬＵＴ
１３、２３、３３    ＤＦＦ
４０    設計支援システム
４１    構成情報生成装置
４２    構成情報転送装置
１００、２００、３００    論理ブロック
１０１、２０１、３０１    第１信号線群
１０２、２０２、３０２    第２信号線群
１１１    第１配線
１１２    第２配線
１１３    スイッチセル
１２１、２２１、３２１    第１論理選択回路
１２２、２２２、３２２    フィルタ回路
１２３、２２３、３２３    第２論理選択回路
１３０    抵抗変化素子
１３１    活性電極
１３２    不活性電極
１３３    抵抗変化層
１５１、２５１、３５１    第１入力回路
１５２、２５２、３５２    第１選択回路
１６０    フィルタ素子
１６１、２６１、３６１    第１フィルタ素子
１６２、２６２、３６２    第２フィルタ素子
１７１、２７１、３７１    第２入力回路
１７２、２７２、３７２    第２選択回路
２２５、２８０、３２５    多数決回路
２８１、２８２、２８３    ＡＮＤ回路
２８４    ＯＲ回路
４００    設計支援ツール群
４０１    論理合成ツール
４０２    配置配線ツール
４０３    構成情報生成ツール
４１１    演算部
４１２    記憶部
４１３    表示部
４１４    入出力部
４１５    バス
５１１    ＬＵＴ
５１２、５２２    ＤＦＦ
５１３    ＳＥＴフィルタ
５２１    ＬＵＴ群
５２５    多数決回路
【図１】
2020095854.tif 000003
【図２】
2020095854.tif 000004
【図３】
2020095854.tif 000005
【図４】
2020095854.tif 000006
【図５】
2020095854.tif 000007
【図６】
2020095854.tif 000008
【図７】
2020095854.tif 000009
【図８】
2020095854.tif 000010
【図９】
2020095854.tif 000011
【図１０】
2020095854.tif 000012
【図１１】
2020095854.tif 000013
【図１２】
2020095854.tif 000014
【図１３】
2020095854.tif 000015
【図１４】
2020095854.tif 000016
【図１５】
2020095854.tif 000017
【図１６】
2020095854.tif 000018
【図１７】
2020095854.tif 000019
【図１８】
2020095854.tif 000020
【図１９】
2020095854.tif 000021
【図２０】
2020095854.tif 000022
【図２１】
2020095854.tif 000023
【図２２】
2020095854.tif 000024
【図２３】
2020095854.tif 000025
【図２４】
2020095854.tif 000026
【図２５】
2020095854.tif 000027
【図２６】
2020095854.tif 000028
【図２７】
2020095854.tif 000029
【国際調査報告】
2020095854.tif 000030
2020095854.tif 000031
2020095854.tif 000032
2020095854.tif 000033