(57)【要約】【課題】  フォールスパスを構成している信号線の通過点を直接検出することにより、フォールスパス検出の処理時間および検出したフォールスパス情報を利用するツールの処理時間を短縮する。【解決手段】  記憶手段１ａは、設計者によって設計された回路の回路情報を記憶装置１ｆに記憶する。信号値生成手段１ｂは、回路中の信号線のあり得ない信号値を生成する。信号伝搬検査手段１ｃは、信号値生成手段１ｂより生成され信号値を、その信号値が生成された信号線と接続されているゲート入力に割り当て、その信号値でのみゲートの他の入力が信号伝搬するか調べる。通過点取得手段１ｄは、ゲートの他の入力において信号伝搬がされる場合、ゲートの他の入力に接続されている他の信号線の通過点を取得する。フォールスパス指定手段１ｅは、通過点取得手段１ｄによって取得された通過点によって、フォールスパスを指定する。【選択図】  図１
2005149373.tif 000002
【特許請求の範囲】
【請求項１】
設計された回路のフォールスパスを検出するフォールスパス検出プログラムにおいて、
コンピュータを、
前記回路の回路情報を受け付け記憶装置に記憶する記憶手段、
前記回路中の信号線のあり得ない信号値を生成する信号値生成手段、
前記信号線と接続されているゲート入力に前記信号値を割り当て、前記ゲートの他の入力が前記信号値でのみ信号伝搬するか調べる信号伝搬検査手段、
前記信号伝搬がされる場合、前記他の入力に接続されている他の信号線の通過点を取得する通過点取得手段、
前記通過点によってフォールスパスを指定するフォールスパス指定手段、
として機能させることを特徴とするフォールスパス検出プログラム。
【請求項２】
前記信号値生成手段は、前記信号線に印加されている定数信号から前記信号値を生成することを特徴とする請求項１記載のフォールスパス検出プログラム。
【請求項３】
前記信号値生成手段は、前記回路中の同じ信号値をとる等価信号線に印加される等価信号または前記回路中の異なる信号値をとる排他的信号線に印加される排他信号から前記あり得ない信号値を生成することを特徴とする請求項１記載のフォールスパス検出プログラム。
【請求項４】
前記信号値生成手段は、含意関係にある前記信号線に印加される含意信号から前記信号値を生成することを特徴とする請求項１記載のフォールスパス検出プログラム。
【請求項５】
前記信号値生成手段は、前記あり得ない信号値の組み合わせを、組み合わせ要素数の少ないものから順に生成することを特徴とする請求項１記載のフォールスパス検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はフォールスパス検出プログラムに関し、特にディジタル回路のタイミング解析および検証に用いられるフォールスパス検出プログラムに関する。
【背景技術】
【０００２】
ＬＳＩなどの半導体装置の設計には、ＣＡＤ（Computer Aided Design）が利用されている。ＣＡＤによって設計された半導体装置の回路には、機能上使用されないフォールスパスが含まれることがある。
【０００３】
ＣＡＤはフォールスパスを検出し、タイミング解析をする機能を有している。これによって、例えば、ある回路の入力から出力までの最大遅延時間が、フォールスパスによる遅延時間であれば、その回路は、最大遅延時間より少ない時間で動作でき、最大遅延時間を小さくできる。
【０００４】
従来、フォールスパスを検出してタイミング解析を行う方法には、次の３つの方法があった。その１は、回路の入力から出力までのパスごとにフォールスパスかどうかを判定する方法である（例えば、特許文献１、非特許文献１参照）。このとき、高位レベルの動作記述の情報を用いて個々のパスのフォールスパスを判定する方法もある（例えば、特許文献２参照）。その２は、遅延時間の値をある上限値から徐々に小さくしながらできるだけ小さな遅延時間を求めていく方法である（例えば、非特許文献２参照）。このとき、フォールスパスの遅延時間であれば無視してさらに小さな遅延時間を求めていく。その３は、入力ベクトル（いくつかの入力信号）に対して遅延時間をシミュレーションにより計算していく方法（動的タイミング解析（dynamic timing analysis）とも呼ばれる）である（例えば、非特許文献３参照）。なお、この方法を効率化した方法もある（例えば、特許文献３参照）。このように、ＣＡＤを用いた回路設計には、フォールスパス解析が必要となる。
【特許文献１】特開平８−１８００９８号公報（段落番号〔００１４〕〜〔００３１〕、図２〜図１１）
【特許文献２】特開２００２−３４２４０３号公報（段落番号〔００１９〕〜〔００３２〕、図１〜図３）
【特許文献３】特開平２００１−６７３８３号公報（段落番号〔００５３〕〜〔００６９〕、図１）
【非特許文献１】H.-C.Chen and D.H.-C Du.Path sensitization in critical path problem.IEEE Transactions on Computer-Aided Design of Integrated Circuits,12(2):196-207,February 1993
【非特許文献２】S.Devadas,K.Keutzer,and S.Malik. Computer of floating mode delay in combinational circuits:Theoty and algorithma.IEEE Transactions on Computer-Aided Design of Integrated Circuits,12(12):1913-1923,December 1993
【非特許文献３】D.Brand and V.S.Iyengar.Timing analysis using functional analysis.IEEE Transactions on Computer,37(10):1309-1314,October 1988
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、従来のフォールスパス解析を大規模で複雑な回路設計に適用すると解析に時間がかかってしまう。上記の方法その１のパスを数え上げる方法では、最悪の場合パス数が回路規模の指数倍となってしまいフォールスパス解析に時間がかかる。また、方法その２の遅延時間の値をある上限値から徐々に小さくしていく方法では、遅延時間を小さくしていく範囲を小さく設定するとフォールスパス解析回数が増える。また、方法その３の入力ベクトルに対しシミュレーションする方法では、入力数ｎに対し、フォールスパス解析をする回数が２のｎ乗となってしまい計算時間が現実的でなくなる。
【０００６】
タイミング解析において、クリティカルなタイミングのフォールスパスやすでにタイミングエラーのあるフォールスパスのみ検出して、フォールスパス解析の処理時間を抑制することも考えられるが、近年、回路の性能要求が高まり、回路設計時には、膨大な数のクリティカルなタイミングのフォールスパスやタイミングエラーのあるフォールスパスが存在し、現実的ではない。
【０００７】
また、自動検出されるフォールスパス数が膨大になることが原因で、そのフォールスパス情報を利用するツールの処理時間が増大するという問題点がある。
本発明はこのような点に鑑みてなされたものであり、フォールスパスを構成している信号線の通過点を直接検出することによって、フォールスパス検出の処理時間を短縮し、かつフォールスパスの情報をコンパクトに記述できるフォールスパス検出プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明では上記問題を解決するために、設計された回路のフォールスパスを検出するフォールスパス検出プログラムにおいて、コンピュータ１を、回路の回路情報を受け付け記憶装置１ｆに記憶する記憶手段１ａ、回路中の信号線のあり得ない信号値を生成する信号値生成手段１ｂ、信号線と接続されているゲート入力に信号値を割り当て、ゲートの他の入力が信号値でのみ信号伝搬するか調べる信号伝搬検査手段１ｃ、信号伝搬がされる場合、他の入力に接続されている他の信号線の通過点を取得する通過点取得手段１ｄ、通過点によってフォールスパスを指定するフォールスパス指定手段１ｅ、として機能させることを特徴とするフォールスパス検出プログラムが提供される。
【０００９】
このようなフォールスパス検出プログラムによれば、設計された回路の信号線のあり得ない信号値を生成して、その信号線を入力とするゲートに生成した信号値を割り当てる。そして、割り当てた信号値でのみ、ゲートの他の入力において信号伝搬がされる場合、他の入力に接続されている他の信号線の通過点を取得し、この通過点によってフォールスパスを指定する。よって、設計された回路の信号線のあり得ない信号値を生成することにより、フォールスパスを構成している信号線の通過点を直接検出することが可能となる。
【発明の効果】
【００１０】
本発明のフォールスパス検出プログラムでは、設計された回路の信号線のあり得ない信号値を生成して、フォールスパスを構成している信号線の通過点を直接検出するようにした。これにより、フォールスパス検出の処理時間を短縮することができる。また、通過点によってフォールスパスを指定することにより、フォールスパスをコンパクトに記述できる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の原理を図面を参照して詳細に説明する。
図１は、本発明の原理を説明する原理図である。
図に示すように、コンピュータ１は、記憶手段１ａ、信号値生成手段１ｂ、信号伝搬検査手段１ｃ、通過点取得手段１ｄ、フォールスパス指定手段１ｅ、および記憶装置１ｆを有している。
【００１２】
記憶手段１ａは、設計者によって設計された回路の回路情報を受け付け、記憶装置１ｆに記憶する。信号値生成手段１ｂは、設計された回路中の信号線のあり得ない信号値を生成する。信号伝搬検査手段１ｃは、信号値生成手段１ｂより生成された信号値を、信号値が生成された信号線と接続されているゲート入力に割り当てる。そして、ゲートの他の入力が、割り当てられた信号値でのみ信号伝搬するか調べる。通過点取得手段１ｄは、生成された信号値において、ゲートの他の入力で信号伝搬がされる場合、ゲートの他の入力と接続されている他の信号線の通過点を取得する。フォールスパス指定手段１ｅは、通過点取得手段１ｄによって取得された通過点によって、フォールスパスを指定する。
【００１３】
これによって、パスごとではなくフォールスパスを構成している信号線の通過点が直接検出されるので、フォールスパス検出の処理時間を短縮することができる。また、通過点によってフォールスパスを指定することにより、フォールスパスをコンパクトに記述できる。
【００１４】
次に、本発明の第１の実施の形態を図面を参照して詳細に説明する。本発明のフォールスパス検出プログラムが実行されるコンピュータのハードウェア構成について説明する。
図２は、第１の実施の形態に係るコンピュータのハードウェア構成を示すブロック図である。
【００１５】
コンピュータ１０は、ＣＰＵ（Central Processing Unit）１０ａによって装置全体が制御されている。ＣＰＵ１０ａには、バス１０ｇを介してＲＡＭ（Random Access Memory）１０ｂ、ハードディスクドライブ（ＨＤＤ：Hard Disc Drive）１０ｃ、グラフィック処理装置１０ｄ、入力インターフェース１０ｅ、および通信インターフェース１０ｆが接続されている。
【００１６】
ＲＡＭ１０ｂには、ＣＰＵ１０ａに実行させるＯＳ（Operating System）のプログラムや、ＣＡＤプログラム、フォールスパス検出プログラムのアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０ｂには、ＣＰＵ１０ａによる処理に必要な各種データが保存される。ＨＤＤ１０ｃには、上記のＯＳやアプリケーションプログラム、各種データなどが格納される。
【００１７】
グラフィック処理装置１０ｄには、モニタ１０ｈが接続されている。グラフィック処理装置１０ｄは、ＣＰＵ１０ａからの命令に従って、画像をモニタ１０ｈの表示画面に表示させる。入力インターフェース１０ｅには、キーボード１０ｉとマウス１０ｊとが接続されている。入力インターフェース１０ｅは、キーボード１０ｉやマウス１０ｊから送られてくる信号を、バス１０ｇを介してＣＰＵ１０ａに送信する。通信インターフェース１０ｆは、図示してないがネットワークを介して接続されている他のコンピュータと通信を行う。
【００１８】
以上のようなコンピュータのハードウェア構成によって、フォールスパス検出プログラムが実行される。
次に、フォールスパス検出プログラムの実行によって、コンピュータ１０に実現される機能について説明する。
【００１９】
図３は、第１の実施の形態に係るコンピュータの機能ブロック図である。
コンピュータ１０は、フォールスパス検出プログラムを実行することによって、図３に示すような機能ブロックを有する。コンピュータ１０は、回路入力部１１、定数信号線検出部１２、対信号線検出部１３、含意関係検出部１４、集合含意関係検出部１５、組み合わせ生成部１６、通過点取得部１７、およびフォールスパス出力部１８を有している。
【００２０】
回路入力部１１は、設計者から回路情報を受け付ける。回路情報は、設計者が設計した回路の情報で、例えば、信号線、回路素子、および回路素子の入出力端子に付与される識別子、信号線と回路素子の接続関係である。回路入力部１１は、受け付けた回路情報を、例えば、図２のＲＡＭ１０ｂまたはＨＤＤ１０ｃに記憶する。
【００２１】
定数信号線検出部１２は、設計者から受け付けた回路情報より、定数信号（一定の状態にしかならない信号）が入力される信号線（定数信号線）を検出する。定数信号は、例えば、回路のあるモードでのタイミング解析を行いたい場合に設計者から指定される。
【００２２】
対信号線検出部１３は、回路中で常に信号値が等しくなる信号線の対（等価信号線）、あるいは、常に信号値が異なる信号線の対（排他的信号線）を検出する。例えば、ファンアウトされる信号線は等価信号線である。また、信号線にインバータ回路が挿入されている場合、インバータ回路の入力側の信号線と出力側の信号線は排他的信号線である。
【００２３】
含意関係検出部１４は、含意関係にある信号線を検出する。例えば、ある信号線ｓの値がａならばある別の信号線ｔの値が必ずｂであるという含意関係（ｓ＝ａ→ｔ＝ｂ）にある信号線を検出する。
【００２４】
集合含意関係検出部１５は、大きさｋ（ｋは２以上の自然数）の信号線集合と含意関係にある信号線を検出する。例えば、信号線集合（ｓ１，ｓ２，…，ｓｋ）の値が（ａ１，ａ２，…，ａｋ）ならば、ある別の信号線ｔの値が必ずｂであるという集合含意関係（ｓ１，ｓ２，…，ｓｋ）＝（ａ１，ａ２，…，ａｋ）→ｔ＝ｂにある信号線を検出する。
【００２５】
なお、定数信号線検出部１２、対信号線検出部１３、含意関係検出部１４、および集合含意関係検出部１５は、設計者から入力される指示によって動作する。これによって、例えば、定数信号線検出部１２と対信号線検出部１３のみを動作させることも可能である。
【００２６】
組み合わせ生成部１６は、定数信号線検出部１２、対信号線検出部１３、含意関係検出部１４、および集合含意関係検出部１５の検出した信号線において、あり得ない信号線値の組み合わせを生成する。組み合わせ生成部１６は、生成した信号線値を検出された信号線に出力して、その信号線と接続されているゲート回路に入力する。
【００２７】
通過点取得部１７は、あり得ない信号線値によってのみ入力される信号線と接続されているゲート回路の、その信号線以外の他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。信号線の通過点は、例えば、信号線に付けられた識別子、またはゲート回路の端子で表される。通過点取得部１７は、取得した通過点（通過点が２以上であれば通過点間）にパス（信号線）が存在するか判断する。なお、通過点の数は、設計者からの入力によって指定され、通過点取得部１７は、指定された数の範囲内で通過点を取得することもできる。
【００２８】
なお、信号が伝搬するとは、信号がゲート回路でブロックされないことをいい、例えば、ＡＮＤ回路の一方に１が入力されると、ＡＮＤ回路の出力は、他方の信号の入力に応じて変化することをいう。ブロックとは、例えば、ＡＮＤ回路の一方に０が入力されると、出力が常に０になり、他方の信号の入力に関係なく一定の出力をすることをいう。
【００２９】
フォールスパス出力部１８は、通過点取得部１７よりパスが存在すると判断された場合に、通過点をフォールスパス（フォールスパスの通過点）として出力する。出力されたフォールスパスは、例えば、図２のＲＡＭ１０ｂ、またはＨＤＤ１０ｃに記憶され、もしくは、モニタ１０ｈに表示される。また、出力されたパスは、直接タイミング解析に利用される。なお、フォールスパス出力部１８は、設計者からの入力によって指定された数だけフォールスパスを出力することができる。このとき、フォールスパス出力部１８は、通過点の少ない順にフォールスパスを出力する。
【００３０】
具体的には、組み合わせ生成部１６は、定数信号線検出部１２より検出された定数信号線のあり得ない値、すなわち、定数信号を否定した否定信号を生成する。組み合わせ生成部１６は、定数信号線とつながっているゲート回路に、生成したあり得ない信号線値を入力する。通過点取得部１７は、あり得ない信号線値によってのみゲート回路の他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、取得された通過点にパスが存在するか判断する。フォールスパス出力部１８は、通過点取得部１７より通過点にパスがあると判断された場合、その通過点をフォールスパスとして出力する。
【００３１】
また、組み合わせ生成部１６は、対信号線検出部１３より検出された等価信号線、または排他的信号線において、あり得ない組み合わせの信号線値を生成する。組み合わせ生成部１６は、生成したあり得ない信号線値を等価信号線、または排他的信号線に接続されているゲート回路の入力に割り当てる。通過点取得部１７は、あり得ない信号線値が入力されているゲート回路の他の信号線において信号が伝搬される場合、他の信号の通過点を取得する。通過点取得部１７は、取得された通過点間にパスが存在するか判断する。フォールスパス出力部１８は、通過点取得部１７より通過点間にパスがあると判断された場合、その通過点をフォールスパスとして出力する。
【００３２】
また、組み合わせ生成部１６は、含意関係検出部１４より検出された含意関係にある信号線において、あり得ない信号線値の組み合わせを生成する。組み合わせ生成部１６は、生成したあり得ない信号線値を含意関係にある信号線と接続されたゲート回路に出力する。通過点取得部１７は、生成されたあり得ない信号線値によってのみゲート回路の他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、取得された通過点間にパスが存在するか判断する。フォールスパス出力部１８は、通過点取得部１７より通過点間にパスがあると判断された場合、その通過点をフォールスパスとして出力する。
【００３３】
また、組み合わせ生成部１６は、集合含意関係検出部１５より検出された含意関係にある信号線において、あり得ない信号線値の組み合わせを生成する。組み合わせ生成部１６は、生成したあり得ない信号線値を含意関係にある信号線と接続されたゲート回路に出力する。通過点取得部１７は、生成されたあり得ない信号線値が入力されるゲート回路の他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、取得された通過点間にパスが存在するか判断する。フォールスパス出力部１８は、通過点取得部１７より通過点間にパスがあると判断された場合、その通過点をフォールスパスとして出力する。
【００３４】
次に、フォールスパスの検出がされる回路例を示す。
図４は、フォールスパスの検出がされる回路の一例である。
インバータ回路Ｚ１は、信号を入力する端子ｔ１、信号を出力する端子ｔ２を有している。端子ｔ１には、信号線Ｌ１４が接続され、信号ｓ２が入力される。インバータ回路Ｚ１は、端子ｔ１に入力される信号を反転して端子ｔ２に出力する。
【００３５】
ＡＮＤ回路Ｚ２は、信号を入力する端子ｔ３，ｔ４、信号を出力する端子ｔ５を有している。端子ｔ３は、信号線Ｌ２によってインバータ回路Ｚ１の端子ｔ２と接続されている。ＡＮＤ回路Ｚ２は、端子ｔ３，ｔ４に入力される信号の論理積演算をし、端子ｔ５に出力する。
【００３６】
信号線Ｌ３には、信号ｓ３が入力される。信号線Ｌ３は、信号線Ｌ４，Ｌ５と接続されている。信号線Ｌ４は、ＡＮＤ回路Ｚ２の端子ｔ４と接続されている。
ＯＲ回路Ｚ３は、信号を入力する端子ｔ６，ｔ７、信号を出力する端子ｔ８を有している。端子ｔ６は信号線Ｌ１が接続され、信号ｓ１が入力される。端子ｔ７は、信号線Ｌ６によって、ＡＮＤ回路Ｚ２の端子ｔ５と接続されている。端子ｔ８には、信号線Ｌ７が接続されている。信号線Ｌ７には、信号線Ｌ８，Ｌ９が接続されている。ＯＲ回路Ｚ３は、端子ｔ６，ｔ７に入力される信号の論理和演算をし、端子ｔ８に出力する。端子ｔ８に出力される信号は、信号線Ｌ８から信号ｏ１として出力される。
【００３７】
ＯＲ回路Ｚ４は、信号を入力する端子ｔ９，ｔ１０、信号を出力する端子ｔ１１を有している。端子ｔ９には、信号線Ｌ７，Ｌ８に接続された信号線Ｌ９が接続されている。端子ｔ１０には、信号線Ｌ３，Ｌ４に接続されている信号線Ｌ５が接続されている。端子ｔ１１は信号線Ｌ１０が接続されている。ＯＲ回路Ｚ４は、端子ｔ９，ｔ１０に入力される信号の論理和演算をし、端子ｔ１１に出力する。
【００３８】
マルチプレクサＺ５は、信号を入力する端子ｔ１２〜ｔ１４、信号を出力する端子ｔ１５を有している。端子ｔ１２は信号線Ｌ１０と接続されている。端子ｔ１３は、信号線Ｌ１１と接続されている。端子ｔ１４は信号線Ｌ１２と接続されている。信号線Ｌ１１には信号ｓ４が入力される。信号線Ｌ１２には信号ｓ５が入力される。端子ｔ１５は信号線Ｌ１３と接続されている。マルチプレクサＺ５は、端子ｔ１４に入力される信号ｓ５に応じて、端子ｔ１２，ｔ１３に入力されている信号の一方を端子ｔ１５から出力する。マルチプレクサＺ５は、信号ｓ５が１のとき、端子ｔ１３に入力されている信号を端子ｔ１５から出力する。マルチプレクサＺ５は、信号ｓ５が０のとき、端子ｔ１２に入力されている信号を端子ｔ１５から出力する。端子ｔ１５から出力される信号は、信号線Ｌ１３から信号ｏ２として出力される。
【００３９】
設計者は、図４に示す設計した回路の回路情報、例えば、回路に入力される信号、回路を構成している素子の種類、素子の入出力端子、素子間を結ぶ信号線をコンピュータ１０に入力する。コンピュータ１０は、入力された回路情報を基に、図４に示す回路のフォールスパスの検出を行う。
【００４０】
次に、コンピュータ１０が処理を実行するときに構築するデータの構成例について説明する。
図５は、定数信号線検出処理によって構築されるデータ構成例である。
【００４１】
図に示すように、定数信号線データ２１は、定数信号線の欄、定数信号の欄、およびあり得ない信号線値によってのみ信号伝搬するノードの通過点の欄を有している。定数信号線データ２１は、図２のＲＡＭ１０ｂ、またはＨＤＤ１０ｃの記憶装置に構築される。
【００４２】
定数信号線の欄には、フォールスパスの検出がされる回路において、信号線値が一定となる信号線の識別子（例えば、信号線に付与されている名前または番号）が格納される。定数信号の欄には、定数信号線の信号値が格納される。あり得ない信号線値によってのみ信号伝搬するノードの通過点の欄には、信号が伝搬されるノードの通過点が格納される。
【００４３】
定数信号線および定数信号は設計者により入力され、回路入力部１１によって定数信号線および定数信号の欄に格納される。信号が伝搬されるノードの通過点は、定数信号線検出部１２、組み合わせ生成部１６、通過点取得部１７によって算出され、信号が伝搬するノードの通過点の欄に格納される。
【００４４】
例えば、図４の回路において、信号線Ｌ１２を定数信号線、定数信号を０とする。この場合、定数信号線検出部１２は、定数信号線の信号線Ｌ１２を検出する。組み合わせ生成部１６は、信号線Ｌ１２のあり得ない値、すなわち、定数信号の０を否定した１の否定信号を生成する。組み合わせ生成部１６は、信号線Ｌ１２とつながっているマルチプレクサＺ５に、生成した否定信号の１を入力する。通過点取得部１７は、入力された否定信号において、信号が伝搬されるマルチプレクサＺ５の端子ｔ１３を、信号が伝搬するノードの通過点として検出し、定数信号線データ２１の信号が伝搬するノードの通過点の欄に格納する。
【００４５】
なお、定数信号線データ２１のデータ内容を全て記憶装置に記憶する必要はなく、一行処理をしたらそれに対するフォールスパスを出力して、その内容を消去することにより、記憶領域の削減を図ることができる。
【００４６】
図６は、対信号線検出処理によって構築されるデータ構成例である。
図に示すように、対信号線データ２２は、ノード１，２および位相差から構成される対信号線の欄、あり得ない信号線値によってのみ信号が伝搬するノード対の通過点の欄、およびあり得ない信号線値によってのみ信号が伝搬するノード対を通るパスが存在の欄を有している。対信号線データ２２は、図２のＲＡＭ１０ｂ、またはＨＤＤ１０ｃの記憶装置に構築される。
【００４７】
対信号線の欄のノード１，２には、信号値が同じになる信号線（等価信号線）の識別子および信号値が異なる信号線（排他的信号線）が格納される。位相差には、信号線を伝搬する信号の位相差が格納される。０で位相差０を示し、１で位相差πを示す。あり得ない信号線値によってのみ信号が伝搬するノード対の通過点の欄には、信号が伝搬されるノードの通過点が格納される。あり得ない信号線値によってのみ信号が伝搬するノード対を通るパスが存在の欄には、信号が伝搬するノード対の通過点間に、パスが存在するか否かの情報が０，１によって格納される。０でパスが存在しないことを示す。１でパスが存在することを示す。
【００４８】
図４の例では、対信号線検出部１３より、等価信号線である信号線Ｌ４，Ｌ５、信号線Ｌ８，Ｌ９、信号線Ｌ８，Ｌ１３、および排他的信号線である信号線Ｌ２，Ｌ１４が検出される。検出された信号線は、信号値の位相差とともに、対信号線データ２２の対信号線の欄に格納される。組み合わせ生成部１６は、等価信号線および排他的信号線のあり得ない組み合わせの信号線値を生成する。例えば、信号線Ｌ４，Ｌ５において、それぞれ１，０を生成する。通過点取得部１７は、生成された信号線値が入力されるゲート回路の信号線と対になっている他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。例えば、信号線Ｌ４が１であるので、信号線Ｌ２の信号は伝搬される。また、信号線Ｌ５が０であるので、信号線Ｌ９の信号は伝搬される。従って、信号が伝搬されるノード対の通過点として、端子ｔ３，ｔ９が取得される。通過点取得部１７は、信号が伝搬するノード対の通過点を通るパスがある場合、あり得ない信号線値によってのみ信号が伝搬するノード対を通るパスが存在の欄に１を格納する。
【００４９】
なお、対信号線データ２２のデータ内容を全て記憶装置に記憶する必要はなく、一行処理をしたらそれに対するフォールスパスを出力して、その内容を消去することにより、記憶領域の削減を図ることができる。
【００５０】
図７は、含意信号線検出処理によって構築されるデータ構成例である。
図に示すように、含意信号線データ２３は、ノード、値から構成される含意元の欄、ノード、値から構成される含意先の欄、あり得ない信号線値によってのみ信号が伝搬するノード対の通過点の欄、およびあり得ない信号線値によってのみ信号が伝搬するノード対を通るパスが存在の欄を有している。含意信号線データ２３は、図２のＲＡＭ１０ｂ、またはＨＤＤ１０ｃの記憶装置に構築される。
【００５１】
含意元の欄のノードには、含意元の信号線の識別子が格納される。含意元の欄の値には、含意元の信号線の信号値が格納される。含意先の欄のノードには、含意先の信号線の識別子が格納される。含意先の欄の値には、含意元の条件において、含意先が取り得る信号線の信号値が格納される。あり得ない信号線値によってのみ信号が伝搬するノード対の通過点の欄には、信号が伝搬するノードの通過点が格納される。あり得ない信号線値によってのみ信号が伝搬するノード対を通るパスが存在の欄には、信号が伝搬するノード対の通過点間に、パスが存在するか否かの情報が０，１によって格納される。０でパスが存在しないことを示す。１でパスが存在することを示す。
【００５２】
例えば、図４の回路において、含意関係検出部１４より、信号線Ｌ２が０ならば信号線Ｌ６が０という含意関係が検出され、含意信号線データ２３の含意元、含意先の欄に格納される。組み合わせ生成部１６は、信号線Ｌ２が０、信号線Ｌ６が１のあり得ない信号線値を生成する。通過点取得部１７は、生成されたあり得ない信号線値において、信号が伝搬する端子ｔ６を取得し、あり得ない信号線値によってのみ信号が伝搬するノード対の通過点の欄に格納する。通過点取得部１７は、端子ｔ４，ｔ６の間にパスがないので、信号が伝搬するノード対を通るパスが存在しないと判断し、含意信号線データ２３のあり得ない信号線値によってのみ信号が伝搬するノード対を通るパスが存在の欄に０を格納する。
【００５３】
なお、含意信号線データ２３のデータ内容を全て記憶装置に記憶する必要はなく、一行処理をしたらそれに対するフォールスパスを出力して、その内容を消去することにより、記憶領域の削減を図ることができる。
【００５４】
図８は、集合含意信号線検出処理によって構築されるデータ構成例である。
図に示すように、集合含意信号線データ２４は、含意元の欄、ノード、値から構成される含意先の欄、あり得ない信号線値によってのみ信号が伝搬するノード集合の欄、およびあり得ない信号線値によってのみ信号が伝搬するノード集合を通るパスが存在の欄を有している。集合含意信号線データ２４は、図２のＲＡＭ１０ｂ、またはＨＤＤ１０ｃの記憶装置に構築される。
【００５５】
含意元の欄には、集合含意関係の含意元となる信号線の識別子が格納される。含意先の欄のノードには、含意先の信号線の識別子が格納される。含意先の値の欄には、含意元の条件において、含意先の信号線が取り得る信号値が格納される。あり得ない信号線値によってのみ信号が伝搬するノード集合の欄には、含意関係において、信号が伝搬するノードの通過点が格納される。あり得ない信号線値によってのみ信号が伝搬するノード集合を通るパスが存在の欄には、信号が伝搬する通過点間にパスが存在するか否かの情報が０，１によって格納される。０でパスが存在しないことを示す。１でパスが存在することを示す。
【００５６】
図４の例では、集合含意関係検出部１５より、大きさｋの信号線集合とある信号線の含意関係が検出される。含意関係は、集合含意信号線データ２４の含意元、含意先の欄に格納される。組み合わせ生成部１６は、検出した含意関係のあり得ない組み合わせの信号線値を生成する。通過点取得部１７は、生成された信号線値が入力されるゲート回路の信号線と対になっている他の信号線において信号が伝搬される場合、他の信号線の通過点を取得し、集合含意信号線データ２４の信号が伝搬するノード集合の欄に格納する。通過点取得部１７は、信号が伝搬するノード対の通過点間を通るパスがある場合、集合含意信号線データ２４のあり得ない信号線値によってのみ信号が伝搬するノード集合を通るパスが存在の欄に１を格納する。
【００５７】
なお、集合含意信号線データ２４のデータ内容を全て記憶装置に記憶する必要はなく、一行処理をしたらそれに対するフォールスパスを出力して、その内容を消去することにより、記憶領域の削減を図ることができる。
【００５８】
以下、図３の機能ブロック図の動作について説明する。
図９，図１０は、図３の機能ブロック図の処理の流れを示したフローチャートである。
まず、フローチャートの概略から説明する。フォールスパスの検出がされる回路の例を図４の回路とする。ステップＳ１では、フォールスパスの検出対象となる回路の回路情報と、ステップＳ１２の処理におけるｋ対１の含意関係の、ｋの最大値ｋｍａｘの入力を受け付ける。なお、ｋｍａｘは入力されなくてもよい。
【００５９】
ステップＳ２〜Ｓ４では、あり得ない信号線値の組み合わせの中で要素数が最も少ない要素数１の組み合わせ、すなわち、定数信号線に対するフォールスパスの検出が行われる。あり得ない信号線値の信号線がつながっているゲート回路の、他の信号線の通過点を用いてフォールスパスを表し出力する。
【００６０】
ステップＳ５〜Ｓ１０では、あり得ない信号線値の組み合わせの中で次に要素数の少ない要素数２の組み合わせ、すなわち、２信号線間の関係に対するフォールスパスの検出が行われる。２信号線間の関係には、等価関係、等価関係の否定である排他的関係、および含意関係の３つがある。等価関係、排他関係に対するフォールスパスの検出は、ステップＳ５〜Ｓ７で行われる。含意関係に対するフォールスパスの検出は、ステップＳ８〜Ｓ１０で行われる。
【００６１】
ステップＳ１１〜Ｓ１６では、あり得ない信号線値の組み合わせで要素数が３以上、すなわち、集合含意関係に対するフォールスパスの検出が行われる。なお、要素数を順に大きくしながらｋ（ｋ≧２）対１の含意関係におけるフォールスパスの検出を行う。
【００６２】
以下、詳細に説明する。図３の機能ブロック図は、以下のステップに従って処理を実行する。
ステップＳ１において、回路入力部１１は、設計者から回路情報とｋｍａｘの入力を受け付ける。なお、入力された回路情報において、図４の信号線Ｌ１２に入力される信号ｓ５は、あらかじめ定数０に固定されているものとする。
【００６３】
ステップＳ２において、定数信号線検出部１２は、図４の回路において、未検出の定数信号線があるか判断する。未検出の定数信号線があれば、ステップＳ３へ進む。未検出の定数信号線がなければステップＳ５へ進む。
【００６４】
ステップＳ３において、組み合わせ生成部１６は、定数信号線検出部１２により検出された定数信号線のあり得ない信号値を生成し、定数信号線と接続されているゲート回路に出力する。通過点取得部１７は、生成された信号値においてゲート回路の他の信号線の信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、通過点にパスが存在するか判断する。
【００６５】
例えば、図４において、ステップＳ１で入力された回路情報より、信号線Ｌ１２が定数０の定数信号線である。よって、定数信号線検出部１２は、信号線Ｌ１２を定数信号線として検出する。組み合わせ生成部１６は、信号線Ｌ１２のあり得ない信号線値として、定数０の否定をとった１を生成し、マルチプレクサＺ５の端子ｔ１４に出力する。このとき、マルチプレクサＺ５と接続されている他の信号線Ｌ１１の信号は伝搬される。従って、通過点取得部１７は、信号線Ｌ１１と接続されている端子ｔ１３を通過点として取得する。端子ｔ１３を通過するパスは、論理的なフォールスパスである。ここで、さらに遅延を考慮して従来のフォールスパス検出をする場合には、端子ｔ１３，ｔ１４の遅延関係をさらに調べて本当のフォールスパスか否か判断する。
【００６６】
ステップＳ４において、フォールスパス出力部１８は、通過点取得部１７より通過点にパスが存在すると判断された場合、その通過点をフォールスパスの集合として出力する。上記例では、フォールスパスの集合は、信号線Ｌ１１の通過点である端子ｔ１３を用いて｛ｔ１３｝と表される。ステップＳ４において出力されるフォールスパスを表す通過点指定は、必ず最小値の１となる。なお、定数信号線検出部１２は、上記のように指定された定数の他、指定された定数値を伝搬して得られる定数信号線および回路の動作により定数０しか取り得ない定数信号線も検出する。
【００６７】
ステップＳ５において、対信号線検出部１３は、等価信号線対および排他的信号線対を検出する。検出対象があればステップＳ６へ進む。検索対象がなければステップＳ８へ進む。
【００６８】
ステップＳ６において、組み合わせ生成部１６は、等価信号線対および排他的信号線対を検出し、その信号線対においてあり得ない信号線値の組み合わせを生成する。組み合わせ生成部１６は、生成したあり得ない組み合わせの信号値を等価信号線対および排他的信号線対に接続されているゲート回路に出力する。通過点取得部１７は、あり得ない信号値によって、ゲート回路の他の信号線の信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、取得した通過点にパスが存在するか判断する。
【００６９】
例えば、図４の回路において、信号線Ｌ３のファンアウトである信号線Ｌ４，Ｌ５は、等価信号線対である。信号線Ｌ３に定数値が伝搬すると、等価関係においてあり得ない信号線値の組み合わせは信号線Ｌ４の信号≠信号線Ｌ５の信号となる組み合わせである。信号線Ｌ４を入力しているゲート回路はＡＮＤ回路Ｚ２で、信号線Ｌ５を入力しているゲート回路はＯＲ回路Ｚ４である。ここで、ＡＮＤ回路Ｚ２の無制御値（non-controlling Value）は０で、ＯＲ回路Ｚ４の無制御値は１である。すなわち、ＡＮＤ回路Ｚ２、ＯＲ回路Ｚ４において、端子ｔ３，ｔ９に入力される信号を伝搬する信号線Ｌ４，Ｌ５の信号値はそれぞれ１，０であり、これはあり得ない信号値であるので、ＡＮＤ回路Ｚ２の端子ｔ４以外の端子ｔ３と、ＯＲ回路Ｚ４の端子ｔ１０以外の端子ｔ９が通過点として取得される。端子ｔ３，ｔ９にパスが存在すればそれは論理的フォールスパスである。インバータ回路Ｚ１の出力の端子ｔ２とＯＲ回路Ｚ４の入力の端子ｔ９との間でパスが存在するかどうか調べると、信号線Ｌ２，Ｌ６，Ｌ７，Ｌ９というパスが存在する。
【００７０】
ステップＳ７において、フォールスパス出力部１８は、通過点取得部１７より通過点にパスが存在すると判断された場合、その通過点をフォールスパスの集合として出力する。上記例では、フォールスパスの集合は、信号線Ｌ２，Ｌ９の通過点である端子ｔ３，ｔ９を用いて｛ｔ３，ｔ９｝と表される。よって、通過点｛ｔ３，ｔ９｝を通るパス集合は論理的フォールスパスである。ここで、さらに遅延を考慮してフォールスパス解析をする場合には、端子ｔ３と端子ｔ４、端子ｔ９と端子ｔ１０の遅延関係をさらに調べて本当のフォールスパスか否かを判断する。なお、ステップＳ７で出力されるフォールスパスは、指定される通過点の数が必ず２であるパスである。
【００７１】
ステップＳ８において、含意関係検出部１４は、含意関係にある信号線を検出する。検出対象があればステップＳ９へ進む。検出対象がなければステップＳ１１へ進む。
ステップＳ９において、組み合わせ生成部１６は、検出された含意関係にある信号線においてあり得ない組み合わせの信号線値を生成する。組み合わせ生成部１６は、生成したあり得ない信号線値を含意関係にある信号線と接続されたゲート回路に出力する。組み合わせ生成部１６は、ゲート回路の他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、取得された通過点間にパスが存在するか判断する。
【００７２】
例えば、図４の回路において、信号線Ｌ２＝０ならば信号線Ｌ６＝０という含意関係がある。この含意関係では、あり得ない信号線値の組み合わせは、（Ｌ２，Ｌ６）＝（０，１）である。そして、信号が伝搬される信号線の通過点は、端子ｔ６である。なお、ＡＮＤ回路Ｚ２の信号線Ｌ２に対する入力の端子ｔ４と、ＯＲ回路Ｚ３の信号線Ｌ６に対する入力の端子ｔ６の通過点間にはパスがない。
【００７３】
ステップＳ１０において、フォールスパス出力部１８は、通過点取得部１７より通過点にパスが存在すると判断された場合、その通過点をフォールスパスの集合として出力する。なお、上記例では、通過点にパスが存在しないので、フォールスパスの集合は出力されない。
【００７４】
ステップＳ１１において、集合含意関係検出部１５は、変数ｋに２を代入する。変数ｋに代入される値は、ユーザによって変更することができる。
ステップＳ１２において、集合含意関係検出部１５は、変数ｋがｋｍａｘ以下かまたは最大ゲート段数以下かを判断する。変数ｋがｋｍａｘ以下かまたは最大ゲート段数以下であればステップＳ１３へ進む。変数ｋがｋｍａｘ以下かまたは最大ゲート段数以下でなければ、処理を終了する。
【００７５】
ステップＳ１３において、集合含意関係検出部１５は、未検出のｋ対１の含意関係にある信号線が存在するか判断する。未検出の含意関係がなければステップＳ１４へ進む。未検出の含意関係があればステップＳ１５へ進む。ｋ対１の含意関係の検出は、例えば、ｋ＝２であれば、図４の回路において、Ｌ１＝１かつＬ１２＝０ならばＬ１３＝１という関係を検出する。そして、上記ステップＳ９，Ｓ１０と同様のステップＳ１５，Ｓ１６の処理によって、含意関係に対するフォールスパスを生成する。
【００７６】
ステップＳ１４は、集合含意関係検出部１５は、変数ｋに１を加算する。
ステップＳ１５において、組み合わせ生成部１６は、検出された含意関係にある信号線においてあり得ない組み合わせの信号線値を生成する。組み合わせ生成部１６は、生成したあり得ない信号線値を含意関係にある信号線と接続されたゲートの入力に割り当て、その入力によってのみ、ゲート回路の他の信号線において信号が伝搬される場合、他の信号線の通過点を取得する。通過点取得部１７は、取得された通過点間にパスが存在するか判断する。
【００７７】
ステップＳ１６において、フォールスパス出力部１８は、通過点取得部１７より通過点にパスが存在すると判断された場合、その通過点をフォールスパスの集合として出力する。
【００７８】
なお、図９，１０に示してないが、ステップＳ２〜Ｓ４、ステップＳ５〜Ｓ７、ステップＳ８〜Ｓ１０、ステップＳ１１〜Ｓ１６の個々の処理のみ実行することもできる。また、設計者からの指示によって、ステップＳ２〜Ｓ４、ステップＳ５〜Ｓ７、ステップＳ８〜Ｓ１０、ステップＳ１１〜Ｓ１６の処理を選択して実行することもできる。また、設計者からの入力によって指定された数だけフォールスパスを出力することもできる。
【００７９】
このように、定数信号線検出部１２、対信号線検出部１３、含意関係検出部１４、および集合含意関係検出部１５により、回路中のあり得ない信号線値の組み合わせを生成することにより、遅延値を考慮せずに複数のパスを同時に検出することができるため、パスの数え上げや遅延値の数え上げによる計算時間の爆発を避けることができる。
【００８０】
また、信号線の通過点によってフォールスパスを指定することにより、フォールスパスをコンパクトに記述できる。
また、入力ベクトルの数え上げによる場合は、２のｎ乗（ｎ：自然数）個の入力ベクトルそれぞれに対して解析をする必要があり、それより少ない数の入力ベクトルに対してのみ解析を行うと、解析でカバーしていない回路動作があるということで回路遅延の過小評価につながる。本発明では、あり得ない信号値の組み合わせ数や組み合わせの要素数を増減することにより、回路遅延の過小評価を行うことなく検出能力を柔軟に変えることができる。
【００８１】
また、定数信号線検出部１２、対信号線検出部１３、含意関係検出部１４、集合含意関係検出部１５の順に回路中のあり得ない信号値の組み合わせ要素数の少ないものから数え上げることにより、通過点数の指定の少ないフォールスパスから順に数え上げることができるため、その順番でフォールスパス出力できる。通過点の数は、フォールスパスを利用するタイミング最適化システムやタイミング解析システムの処理速度に指数的に影響するため、フォールスパスを利用する側にとって都合のよいフォールスパスを生成することができる。さらに、外部から生成するフォールスパス数を指定することにより、その数で最も都合のよいフォールスパスの集合を生成することができる。
【００８２】
次に、本発明の第２の実施の形態を図面を参照して詳細に説明する。第２の実施の形態に係るコンピュータでは、通過点の指定により記述されたフォールスパスの記述量の圧縮にも用いることができる。コンピュータは、通過点指定により記述されたフォールスパスを受け付け、指定された通過点の信号線のみに対して、図９，１０に示したフローチャートと同様の処理を行う。そして、コンピュータは、入力されたフォールスパスの記述量を減らしたフォールスパスの記述を出力する。
【００８３】
図１１は、第２の実施の形態に係るコンピュータの機能ブロック図である。
図に示すようにコンピュータ３０は、フォールスパス集合入力部３１、フォールスパス信号線値生成部３２、フォールスパス生成部３３、およびフォールスパス指定部３４を有している。
【００８４】
フォールスパス集合入力部３１は、設計者から通過点指定により記述されたフォールスパスを受け付ける。
フォールスパス信号線値生成部３２は、通過点指定によって指定されたフォールスパスが通過する信号線においてのみ、あり得ない信号線値の組み合わせを要素数の少ないものから順に生成する。
【００８５】
フォールスパス生成部３３は、あり得ない信号線値の組み合わせに対応するフォールスパスを生成する。
フォールスパス指定部３４は、フォールスパスを信号線値の組み合わせの要素数と同じ数の通過点で指定し出力する。
【００８６】
第２の実施の形態では、回路情報のかわりに通過点指定により記述されたフォールスパスがコンピュータ３０に入力される。図９，図１０に示したフローチャートのステップＳ１において、通過点指定により記述されたフォールスパスが入力されることとなる。そして、第１の実施の形態と同様の処理が、入力されたフォールスパスの信号線において行われる。例えば、図４の回路において、｛ｔ１，ｔ２，ｔ３，ｔ５，ｔ７，ｔ８，ｔ９，ｔ１１，ｔ１２，ｔ１５｝という通過点によりフォールスパスを指定したとする。このフォールスパスをコンピュータ３０に入力すると、この信号線間のみにおいてフォールスパスの検出が行われ、｛ｔ３，ｔ９｝という通過点指定の記述が圧縮されたフォールスパス記述が出力される。
【００８７】
このように、通過点指定によりフォールスパスの信号線を指定し、その信号線についてフォールスパスの検出をするようにした。これにより、入力されたフォールスパスの記述は圧縮されて出力され、回路中のフォールスパスの位置をより特定して知ることが可能となる。
【００８８】
（付記１）  設計された回路のフォールスパスを検出するフォールスパス検出プログラムにおいて、
コンピュータを、
前記回路の回路情報を受け付け記憶装置に記憶する記憶手段、
前記回路中の信号線のあり得ない信号値を生成する信号値生成手段、
前記信号線と接続されているゲート入力に前記信号値を割り当て、前記ゲートの他の入力が前記信号値でのみ信号伝搬するか調べる信号伝搬検査手段、
前記信号伝搬がされる場合、前記他の入力に接続されている他の信号線の通過点を取得する通過点取得手段、
前記通過点によってフォールスパスを指定するフォールスパス指定手段、
として機能させることを特徴とするフォールスパス検出プログラム。
【００８９】
（付記２）  前記信号値生成手段は、前記信号線に印加されている定数信号から前記信号値を生成することを特徴とする付記１記載のフォールスパス検出プログラム。
（付記３）  前記信号値生成手段は、前記回路中の同じ信号値をとる等価信号線に印加される等価信号または前記回路中の異なる信号値をとる排他的信号線に印加される排他信号から前記あり得ない信号値を生成することを特徴とする付記１記載のフォールスパス検出プログラム。
【００９０】
（付記４）  前記信号値生成手段は、含意関係にある前記信号線に印加される含意信号から前記信号値を生成することを特徴とする付記１記載のフォールスパス検出プログラム。
【００９１】
（付記５）  前記信号値生成手段は、前記あり得ない信号値の組み合わせを、組み合わせ要素数の少ないものから順に生成することを特徴とする付記１記載のフォールスパス検出プログラム。
【００９２】
（付記６）  前記信号値生成手段は、
前記信号線に与えられている定数信号から前記信号値を生成する信号生成手段と、
前記回路中の等価信号線に印加される等価信号または前記回路中の排他的信号線に印加される排他信号から前記信号値を生成する対信号生成手段と、
含意関係にある前記信号線に印加される含意信号から前記信号値を生成する含意信号生成手段と、
前記信号値が、前記信号生成手段、前記対信号生成手段、前記含意信号生成手段から順に生成されるよう制御する生成制御手段と、
を有することを特徴とする付記１記載のフォールスパス検出プログラム。
【００９３】
（付記７）  前記定数信号は、外部から指定することができることを特徴とする付記６記載のフォールスパス検出プログラム。
（付記８）  前記通過点の数は、外部からの入力によって指定され、前記通過点取得手段は、前記数の範囲内で前記通過点を取得することを特徴とする付記１記載のフォールスパス検出プログラム。
【００９４】
（付記９）  外部からの入力によって指定された数だけ前記フォールスパスを出力し、かつ前記通過点の少ない順に出力することを特徴とする付記１記載のフォールスパス検出プログラム。
【００９５】
（付記１０）  前記回路情報は、通過点により指定されたフォールスパスであることを特徴とする付記１記載のフォールスパス検出プログラム。
（付記１１）  設計された回路のフォールスパスを検出するフォールスパス検出装置において、
前記回路中の信号線のあり得ない信号値を生成する信号値生成手段と、
前記信号線と接続されているゲート入力に前記信号値を割り当て、前記ゲートの他の入力が前記信号値でのみ信号伝搬するか調べる信号伝搬検査手段と、
前記信号伝搬がされる場合、前記他の入力に接続されている他の信号線の通過点を取得する通過点取得手段と、
前記通過点によってフォールスパスを指定するフォールスパス指定手段と、
を有することを特徴とするフォールスパス検出装置。
【００９６】
（付記１２）  設計された回路のフォールスパスをコンピュータによって検出するフォールスパス検出方法において、
前記回路の回路情報を受け付け記憶手段で記憶装置に記憶し、
前記回路中の信号線のあり得ない信号値を信号値生成手段で生成し、
前記信号線と接続されているゲート入力に前記信号値を割り当て、前記ゲートの他の入力が前記信号値でのみ信号伝搬するか信号伝搬検査手段で調べ、
前記信号伝搬がされる場合、前記他の入力に接続されている他の信号線の通過点を通過点取得手段で取得し、
前記通過点によってフォールスパスをフォールスパス指定手段で指定する、
ことを特徴とするフォールスパス検出方法。
【図面の簡単な説明】
【００９７】
【図１】本発明の原理を説明する原理図である。
【図２】第１の実施の形態に係るコンピュータのハードウェア構成を示すブロック図である。
【図３】第１の実施の形態に係るコンピュータの機能ブロック図である。
【図４】フォールスパスの検出がされる回路の一例である。
【図５】定数信号線検出処理によって構築されるデータ構成例である。
【図６】対信号線検出処理によって構築されるデータ構成例である。
【図７】含意信号線検出処理によって構築されるデータ構成例である。
【図８】集合含意信号線検出処理によって構築されるデータ構成例である。
【図９】図３の機能ブロック図の処理の流れを示したフローチャートである。
【図１０】図３の機能ブロック図の処理の流れを示したフローチャートである。
【図１１】第２の実施の形態に係るコンピュータの機能ブロック図である。
【符号の説明】
【００９８】
１，１０  コンピュータ
１ａ  記憶手段
１ｂ  信号値生成手段
１ｃ  信号伝搬検査手段
１ｄ  通過点取得手段
１ｅ  フォールスパス指定手段
１ｆ  記憶装置
１１  回路入力部
１２  定数信号線検出部
１３  対信号線検出部
１４  含意関係検出部
１５  集合含意関係検出部
１６  組み合わせ生成部
１７  通過点取得部
１８  フォールスパス出力部
３１  フォールスパス集合入力部
３２  フォールスパス信号線値生成部
３３  フォールスパス生成部
３４  フォールスパス指定部
【図１】
2005149373.tif 000003
【図２】
2005149373.tif 000004
【図３】
2005149373.tif 000005
【図４】
2005149373.tif 000006
【図５】
2005149373.tif 000007
【図６】
2005149373.tif 000008
【図７】
2005149373.tif 000009
【図８】
2005149373.tif 000010
【図９】
2005149373.tif 000011
【図１０】
2005149373.tif 000012
【図１１】
2005149373.tif 000013