(57)【特許請求の範囲】
【請求項１】
解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出させる解析対象パス抽出工程と、
前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断させる判断工程と、
前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定させる特定工程と、
前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成させる生成工程と、
をコンピュータに実行させることを特徴とするフォールスパス記述情報生成プログラム。
【請求項２】
前記生成工程は、
前記フォールスパスに関する記述情報を、前記特定工程によって特定された回路素子（以下、「特定回路素子」という）のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換させることにより、前記フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成させることを特徴とする請求項１に記載のフォールスパス記述情報生成プログラム。
【請求項３】
前記生成工程によって生成された前記各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出させる圧縮化記述情報抽出工程と、
前記各解析対象パスに関する圧縮化記述情報の中から、前記圧縮化記述情報抽出工程よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定させる解析対象パス特定工程と、を前記コンピュータに実行させ、
前記生成工程は、
前記各解析対象パスに関する圧縮化記述情報の中から、前記解析対象パス特定工程によって特定された解析対象パスに関する圧縮化記述情報のうち前記同一の圧縮化記述情報を削除させることを特徴とする請求項２に記載のフォールスパス記述情報生成プログラム。
【請求項４】
解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出手段と、
前記解析対象パス抽出手段によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断手段と、
前記判断手段によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定手段と、
前記特定手段によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成手段と、
を備えたことを特徴とするフォールスパス記述情報生成装置。
【請求項５】
解析対象パス抽出手段、判断手段、特定手段および生成手段を備えるコンピュータが、
前記解析対象パス抽出手段により、解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出工程と、
前記判断手段により、前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断工程と、
前記特定手段により、前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定工程と、
前記生成手段により、前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成工程と、
を実行することを特徴とするフォールスパス記述情報生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、解析の対象となる解析対象回路から検出されたフォールスパスの記述情報を生成するフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法に関する。
【背景技術】
【０００２】
ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）などの半導体装置の回路設計においては、回路遅延を見積もり、見積もった回路遅延がＬＳＩまたはＬＳＩの一部を構成する解析対象回路の正常動作に必要な範囲内であることを確認するタイミング解析をおこなっている。このタイミング解析は、設計した回路が正しく動作することの保障やクロック動作の最適化のために必要不可欠な工程であり、解析の対象となった回路のネットリストだけでなく、フォールスパスなどのタイミング例外パスの指定などを記述した情報が必要となる。
【０００３】
ここで、図１０を用いて、上述したフォールスパスについて説明する。図１０は、解析対象回路におけるフォールスパスの概要を示す説明図である。図１０において、解析対象回路１０００は、組合せ論理回路１００１，１００２，１００３，１００４と、マルチプレクサー１００５，１００６と、ＮＯＴゲート１００７と、から構成されている。
【０００４】
組合せ論理回路１００１，１００２，１００３，１００４は、論理回路を組み合わせた回路であり、組合せ論理回路１００１および組合せ論理回路１００３は３ｎｓ、組合せ論理回路１００２および組合せ論理回路１００４は１ｎｓの処理時間を要する回路である。
【０００５】
また、マルチプレクサー１００５，１００６は、入力信号によってパスの切替をおこなう。具体的には、入力Ｃからの入力信号が「０」であった場合に入力Ａからのパスを通し、入力Ｃからの入力信号が「１」であった場合に入力Ｂからのパスを通す。ＮＯＴゲート１００７は、入力信号を反転させる論理ゲートで、具体的には、入力信号「０」に対しては出力信号を「１」とし、入力信号「０」に対しては出力信号を「０」とする。
【０００６】
解析対象回路１０００において太線で示した解析対象パス１０１０は、信号を伝播する入力の組合せが存在しないフォールスパスである。具体的には、マルチプレクサー１００５における入力Ｃからの入力信号が「０」であった場合に入力Ａを通すが、ＮＯＴゲート１００７が存在するため、マルチプレクサー１００６における入力Ｃからの入力信号は「１」となるため、マルチプレクサー１００６では、入力Ａを通すことはない。
【０００７】
さらに、マルチプレクサー１００６における入力Ｃからの入力信号を「０」とすれば、マルチプレクサー１００６では、入力Ａを通すが、ＮＯＴゲート１００７を考慮すると、マルチプレクサー１００５における入力Ｃからの入力信号は「１」であるため、マルチプレクサー１００５では、入力Ａを通すことはない。
【０００８】
解析対象回路１０００におけるタイミング解析では、上述のようなフォールスパスを検出することによって回路遅延を見積もることとなる。具体的には、解析対象回路１０００では、解析対象パス１０１０を通過する場合に、最大の処理時間６ｎｓを要するが、信号が伝播することがないため無視をすることができ、回路遅延は４ｎｓと見積もることができる。より具体的には、組合せ論理回路１００１および組合せ論理回路１００４を通過するパス、あるいは組合せ論理回路１００２および組合せ論理回路１００３を通過するパスの処理時間４ｎｓが回路遅延となる。
【０００９】
これまでに、フォールスパスの検出について、解析対象回路上に存在するパスを、充足可能性検査に基づいてフォールスパスであるか否かを調べる方法や、フォールスパスの判定に際して、パスに対する入力パターンを圧縮することで、フォールスパス判定を高速化する提案がされている（たとえば、下記特許文献１，２参照。）。
【００１０】
また、解析対象回路中のあり得ない信号線値の割り当てについて、解析対象回路の通過点を直接検出してフォールスパスとすることにより、フォールスパス検出における処理時間および検出したフォールスパス情報を利用するツールにおける処理時間を短縮する提案がされている（たとえば、下記特許文献３参照。）。
【００１１】
【特許文献１】特表２００３−５２６１４９号公報
【特許文献２】特開２００１−６７３８３号公報
【特許文献３】特開２００５−１４９３７３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
近年ＬＳＩまたはＬＳＩの一部の解析対象回路は、論理ゲート数の増大などに起因して、解析対象回路が複雑化されており、上述した従来技術によるフォールスパスの検出をおこなっても、検出結果として出力されるフォールスパスに該当するパスの記述情報は膨大な数および膨大なデータ量となってしまう。
【００１３】
したがって、膨大な数のフォールスパスに関する記述情報に対し、すべての記述情報についてタイミング解析をおこない、回路設計のレイアウトの最適化などをおこなう場合、多大な処理時間を要してしまう。そのため、設計期間の長期化を招くという問題があった。
【００１４】
さらに、出力されたフォールスパスに関する記述情報だけでは、タイミング解析に対して、フォールスパスの原因を特定する場合、すべての記述情報について、入力信号の確認をおこなわなければならない。そのため、設計者に多大な労力および負担がかかるという問題があった。
【００１５】
この発明は、上述した従来技術による問題点を解消するため、設計期間の短縮化および設計者の負担を低減することができるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決し、目的を達成するため、この発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法は、解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出し、抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断し、前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定し、特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成することを特徴とする。
【００１７】
この発明によれば、フォールスパスとして検出された解析対象パスに関する記述情報を、フォールスパスの原因となる回路素子のみの記述情報に圧縮することができる。
【００１８】
また、上記発明において、生成された前記フォールスパスに関する記述情報を、特定された回路素子（以下、「特定回路素子」という）のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換することにより、前記フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成することとしてもよい。
【００１９】
この発明によれば、入力信号が矛盾し合う特定回路素子に関する記述情報を用いて、フォールスパスに関する記述情報を入力信号が矛盾し合う特定回路素子の組合せに関する記述情報に圧縮することができる。
【００２０】
また、上記発明において、前記解析対象回路に存在するパスに関する記述情報の中から、あらたな解析対象パスに関する記述情報を抽出し、抽出されたあらたな解析対象パスに関する記述情報に、生成された圧縮化記述情報が含まれているか否かを判断し、判断された判断結果に基づいて、前記あらたな解析対象パスがフォールスパスであるか否かを判断することとしてもよい。
【００２１】
この発明によれば、フォールスパスの実質的な判断をおこなう前に、解析対象パスに関する記述情報に、既に生成された圧縮化記述情報が含まれているか否かについての簡易的な判断をおこなうことができる。
【００２２】
また、上記発明において、前記圧縮化記述情報が含まれていると判断された場合、前記あらたな解析対象パスがフォールスパスであるか否かの判断をおこなわないこととしてもよい。
【００２３】
この発明によれば、簡易的な判断によって、解析対象パスに関する記述情報に既に生成された圧縮化記述情報が含まれている場合は、解析対象パスがフォールスパスであるか否かの実質的な判断をおこなわずに、フォールスパスであることを特定できる。さらに、フォールスパスに関する記述情報が多大であるほど効率的な処理を図ることができる。
【００２４】
また、上記発明において、前記圧縮化記述情報が含まれていないと判断された場合、前記あらたな解析対象パスがフォールスパスであるか否か判断することとしてもよい。
【００２５】
この発明によれば、簡易的な判断によって、解析対象パスに関する記述情報に既に生成された圧縮化記述情報が含まれていない解析対象パスについて、実質的な判断によってフォールスパスであるか否かを判断することができる。
【００２６】
また、上記発明において、生成された前記各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出し、前記各解析対象パスに関する圧縮化記述情報の中から、抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定し、前記各解析対象パスに関する圧縮化記述情報の中から、特定された解析対象パスに関する圧縮化記述情報のうち前記同一の圧縮化記述情報を削除することとしてもよい。
【００２７】
この発明によれば、圧縮化記述情報の数を削減するため、解析対象となるフォールスパスに関する記述情報を削減することできる。
【００２８】
また、上記発明において、前記各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出することとしてもよい。
【００２９】
この発明によれば、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出することによって、各解析対象パスに関する圧縮化記述情報に多く存在する同一の圧縮化記述情報から削減することができ、データ量を効率的に圧縮することができる。
【００３０】
また、上記発明において、特定された回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に基づいて、前記フォールスパスの原因を証明する記述情報を生成することとしてもよい。
【００３１】
この発明によれば、フォールスパスの原因を証明する記述情報によって、フォールスパスの確認を容易におこなうことができるため、設計期間の短縮化および設計者の負担の低減を図ることができる。
【発明の効果】
【００３２】
本発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法によれば、設計期間の短縮化および設計者の負担の低減を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００３３】
以下に添付図面を参照して、この発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法の好適な実施の形態を詳細に説明する。
【００３４】
（実施の形態）
（フォールスパス記述情報の生成の概要）
まず、図１および図２−１〜図２−３を用いて、この発明の実施の形態にかかるフォールスパス記述情報の生成の概要について説明する。図１は、この発明の実施の形態にかかるフォールスパスの概要について示す説明図である。
【００３５】
図１において、解析対象回路１００は、回路素子Ｇ１と、Ｇ２と、Ｇ３と、Ｇ４と、Ｇ５と、Ｇ６と、から構成されている。なお、本明細書では、Ｇ１、Ｇ２・・・は、各パスの回路素子に関する記述情報のテキスト情報とする。
【００３６】
回路素子Ｇ１、Ｇ３およびＧ５は、図１０で前述したマルチプレクサーであり、入力信号によってパスの切替をおこなう素子である。具体的には、入力Ｃからの入力信号が「１」であった場合（Ｄ１）に入力Ａからのパスを選択し、入力Ｃからの入力信号が「０」であった場合（Ｄ０）に入力Ｂからのパスを選択する。
【００３７】
回路素子Ｇ２は、ＡＮＤゲートであり、論理積の機能を有する論理ゲートである。具体的には、入力ＡおよびＢからの入力信号がともに「１」であった場合、出力Ｘへの出力信号を「１」とする素子である。換言すれば、入力ＡあるいはＢからの入力信号の少なくともいずれか一方が「０」であった場合、出力Ｘへの出力信号を「０」とする素子である。
【００３８】
回路素子Ｇ４は、ＯＲゲートであり、論理和の機能を有する論理ゲートである。具体的には、入力ＡあるいはＢからの入力信号の少なくともいずれか一方が「１」であった場合、出力Ｘへの出力信号を「１」とする素子である。換言すれば、入力ＡおよびＢからの入力信号がともに「０」であった場合、出力Ｘへの出力信号を「０」とする素子である。
【００３９】
回路素子Ｇ６は、ＮＯＴゲートであり、入力信号を反転させるインバータの機能を有する論理ゲートである。具体的には、入力信号「０」に対しては出力信号を「１」とし、入力信号「１」に対しては出力信号を「０」とする。
【００４０】
ここで、解析対象回路１００において太線で示した解析対象パス１１０は、信号を伝播する入力の組合せが存在しないフォールスパスである。具体的には、Ｇ１における入力Ｃからの入力信号が「１」であった場合に入力Ａを通すが、ＮＯＴゲートであるＧ６が存在するため、Ｇ３における入力Ｃからの入力信号は「０」となるため、Ｇ３では、入力Ａを通すことはない。
【００４１】
さらに、Ｇ３における入力Ｃからの入力信号を「１」とすれば、Ｇ３では、入力Ａを通すが、ＮＯＴゲートであるＧ６を考慮すると、Ｇ１における入力Ｃからの入力信号は「０」であるため、Ｇ１では、入力Ａを通すことはない。
【００４２】
このように、Ｇ１およびＧ３に信号を伝播させるため入力の組合せは存在することがなく、信号を伝播させるためには矛盾（ｃｏｎｆｌｉｃｔ）が生ずることとなる。解析対象回路１００におけるタイミング解析では、上述のような矛盾を含む解析対象パス１１０がフォールスパスとして検出されることとなる。
【００４３】
（フォールスパス記述情報の概要）
つぎに、図２−１〜図２−３を用いて、この発明の実施の形態にかかるフォールスパス記述情報の概要について説明する。図２−１は、この発明の実施の形態にかかるフォールスパスとして検出された解析対象パスに関する記述情報を示す説明図である。
【００４４】
図２−１において、解析対象パス１１０に関する記述情報２１０は、前述の図１における解析対象パス１１０に関する記述情報である。解析対象パス１１０に関する記述情報２１０は、パスの種類と、通過する回路素子の記述情報によって構成されている。
【００４５】
具体的には、解析対象パス１１０は、フォールスパスとして検出されたため「ｓｅｔ＿ｆａｌｓｅ＿ｐａｔｈ」からなる記述情報を有している。さらに、通過する回路素子およびその入力からなる記述情報を有している。
【００４６】
より具体的には、解析対象パス１１０は、Ｇ１における入力Ａ、Ｇ２における入力Ａ、Ｇ３における入力Ａ、Ｇ４における入力Ａ、Ｇ５における入力Ａを通過しており、解析対象パス１１０に関する記述情報２１０に示すように、「ｓｅｔ＿ｆａｌｓｅ＿ｐａｔｈ」以降に「−ｔｈｒｏｕｇｈ  Ｇ１．Ａ  −ｔｈｒｏｕｇｈ  Ｇ２．Ａ  −ｔｈｒｏｕｇｈ  Ｇ３．Ａ  −ｔｈｒｏｕｇｈ  Ｇ４．Ａ  −ｔｈｒｏｕｇｈ  Ｇ５．Ａ」からなる記述情報により構成されている。なお、以降の本明細書では、たとえば、Ｇ１．Ａは通過する回路素子および入力をあらわすこととし、通過する回路素子および入力の数を、ｔｈｒｏｕｇｈ数とあらわすこととする。
【００４７】
つづいて、図２−２を用いて、この発明の実施の形態にかかるフォールスパスに関する記述情報について説明する。図２−２は、この発明の実施の形態にかかるフォールスパスに関する記述情報を示す説明図である。
【００４８】
図２−２において、フォールスパスに関する記述情報２２０は、前述の図２−１における解析対象パス１１０に関する記述情報２１０のｔｈｒｏｕｇｈ数を最小化させた記述情報である。処理の詳細は、図５に後述するが、具体的には、解析対象パス１１０において、矛盾が生じた回路素子Ｇ１およびＧ３を特定し、特定された回路素子以外の回路素子について解析対象パス１１０に関する記述情報２１０のｔｈｒｏｕｇｈ数を削除して、フォールスパスに関する記述情報２２０とする。
【００４９】
換言すれば、矛盾し合う回路素子を用いてフォールスパスに関する記述情報２２０とすることで、「−ｔｈｒｏｕｇｈ  Ｇ１．Ａ  −ｔｈｒｏｕｇｈ  Ｇ３．Ａ」からなる記述情報により構成することができる。このフォールスパスに関する記述情報２２０によって、解析対象パス１１０に関する記述情報２１０は、矢印２２１で示されるように、記述情報数の削減およびデータ量の削減を実現することができる。
【００５０】
また、「−ｔｈｒｏｕｇｈ  Ｇ１．Ａ  −ｔｈｒｏｕｇｈ  Ｇ３．Ａ」からなるフォールスパスに関する記述情報２２０は、回路素子Ｇ１における入力Ａおよび回路素子Ｇ３における入力Ａを通過するパスに関する記述情報である。換言すれば、回路素子Ｇ１における入力Ａおよび回路素子Ｇ３における入力Ａを通過するパスの集合を一意的に示す記述情報である。
【００５１】
さらに、回路素子Ｇ１における入力Ａおよび回路素子Ｇ３における入力Ａを通過するパスは、図１で前述したように信号を伝播させるためには矛盾が生じている。したがって、フォールスパスに関する記述情報２２０は、解析対象パス１１０のみならず、解析対象回路１００において、回路素子Ｇ１における入力Ａおよび回路素子Ｇ３における入力Ａを通過するパスをフォールスパスに関する記述情報としてあらわす。
【００５２】
つぎに、図２−３を用いて、この発明の実施の形態にかかるフォールスパスの原因を証明する記述情報について説明する。図２−３は、この発明の実施の形態にかかるフォールスパスの原因を証明する記述情報を示す説明図である。
【００５３】
図２−３において、フォールスパスの原因を証明する記述情報２３０は、フォールスパスとして検出された解析対象パス１１０に関する記述情報２１０において、入力信号が矛盾し合う回路素子に関する記述情報から構成されている。
【００５４】
具体的には、前述の図２−２で特定された、矛盾し合う回路素子Ｇ１およびＧ３とその入力信号からなり、図２−３では、図１におけるＧ１の入力Ｃからの入力信号を「１」、Ｇ３の入力Ｃからの入力信号を「１」とすれば、解析対象パス１１０に信号が伝播する。しかしながら、Ｇ１の入力Ｃからの入力信号を「１」とした場合に、Ｇ３の入力Ｃからの入力信号は「０」となるはずなので、矛盾を生じていることを示している。
【００５５】
なお、フォールスパスの原因を証明する記述情報２３０は、図示した記述情報に限ることなく、矛盾し合う回路素子とその入力信号との矛盾が確認できる構成であればよい。
【００５６】
上述のように、この発明の実施の形態におけるフォールスパスに関する記述情報２２０は、生成元となった解析対象パス１１０がフォールスパスであった場合に、入力信号が矛盾し合う回路素子を特定する。そして、特定された回路素子以外の回路素子について解析対象パス１１０に関する記述情報２１０のｔｈｒｏｕｇｈ数を削除して、フォールスパスに関する記述情報２２０とする。したがって、記述情報の数が最小化されるとともにデータ量の削減を実現することができる。
【００５７】
さらに、フォールスパスに関する記述情報２２０は、フォールスパスに関する記述情報２２０に含まれる回路素子を通過するパスの集合をあらわすため、複数のフォールスパスを一意的にあらわすこととなり、フォールスパスに関する記述情報の数およびデータ量が削減されることとなる。
【００５８】
また、フォールスパスとして検出された解析対象パス１１０に関する記述情報２１０において、入力信号が矛盾し合う回路素子に関する記述情報によって、フォールスパスの原因を証明する記述情報を生成する。したがって、フォールスパスに関する記述情報を用いたタイミング解析を効率的におこなうことができる。
【００５９】
（フォールスパス記述情報生成装置のハードウェア構成）
つぎに、図３を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置のハードウェア構成について説明する。図３は、この発明の実施の形態にかかるフォールスパス記述情報生成装置のハードウェア構成を示すブロック図である。
【００６０】
図３において、フォールスパス記述情報生成装置は、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、ＨＤＤ（ハードディスクドライブ）３０４と、ＨＤ（ハードディスク）３０５と、ＦＤＤ（フレキシブルディスクドライブ）３０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）３０７と、ディスプレイ３０８と、Ｉ／Ｆ（インターフェース）３０９と、キーボード３１０と、マウス３１１と、スキャナ３１２と、プリンタ３１３と、を備えている。また、各構成部はバス３００によってそれぞれ接続されている。
【００６１】
ここで、ＣＰＵ３０１は、フォールスパス記述情報生成装置の全体の制御を司る。ＲＯＭ３０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ３０３は、ＣＰＵ３０１のワークエリアとして使用される。ＨＤＤ３０４は、ＣＰＵ３０１の制御にしたがってＨＤ３０５に対するデータのリード／ライトを制御する。ＨＤ３０５は、ＨＤＤ３０４の制御で書き込まれたデータを記憶する。
【００６２】
ＦＤＤ３０６は、ＣＰＵ３０１の制御にしたがってＦＤ３０７に対するデータのリード／ライトを制御する。ＦＤ３０７は、ＦＤＤ３０６の制御で書き込まれたデータを記憶したり、ＦＤ３０７に記憶されたデータをフォールスパス記述情報生成装置に読み取らせたりする。
【００６３】
また、着脱可能な記録媒体として、ＦＤ３０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、メモリカードなどであってもよい。ディスプレイ３０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ３０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００６４】
Ｉ／Ｆ３０９は、通信回線を通じてインターネットなどのネットワーク３１４に接続され、このネットワーク３１４を介して他の装置に接続される。また、Ｉ／Ｆ３０９は、ネットワーク３１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ３０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００６５】
キーボード３１０は、文字、数字、各種指示などの入力のためのキーを備え、押下されたキーに対応するデータを装置内部へ入力する。また、キーボード３１０としては、タッチパネル式の入力パッドやテンキーなどであってもよい。また、マウス３１１を操作することで、マウス３１１の本体下部の移動を検出するセンサによる出力および本体上部の各ボタンのＯＮ／ＯＦＦを随時装置内部へ入力して、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなってもよい。なお、ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００６６】
スキャナ３１２は、書類などの画像情報を光学的に読み取り、装置内に画像データとして取り込む。さらにＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能も備えており、ＯＣＲ機能によって、印刷された解析対象パスに関する記述情報を読み取ってデータ化することもできる。また、プリンタ３１３は、フォールスパスに関する記述情報やフォールスパスの原因を証明する記述情報などのデータを印刷する。プリンタ３１３は、たとえば、レーザプリンタ、インクジェットプリンタなどである。
【００６７】
（フォールスパス記述情報生成装置の機能的構成）
つぎに、図４を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置の機能的構成について説明する。図４は、この発明の実施の形態にかかるフォールスパス記述情報生成装置の機能的構成を示すブロック図である。図４において、フォールスパス記述情報生成装置４００は、解析対象パス抽出部４０１と、判断部４０２と、特定部４０３と、生成部４０４と、圧縮化記述情報抽出部４０７と、解析対象パス特定部４０８と、から構成されている。
【００６８】
解析対象パス抽出部４０１は、解析対象回路におけるタイミング解析の対象となる解析対象回路に存在するパスに関する記述情報の中から、任意の解析の対象となる解析対象パスに関する記述情報を抽出する。また、解析対象パス抽出部４０１は、解析対象回路に存在するパスについて、解析がすべてのパスについて終了するまで、繰り返して解析対象パスに関する記述情報を抽出することとしてもよい。
【００６９】
判断部４０２は、フォールスパス判断部４０５と、圧縮化記述情報判断部４０６と、から構成されている。フォールスパス判断部４０５は、解析対象パス抽出部４０１によって抽出された解析対象パスに関する記述情報に基づいて、解析対象パスがフォールスパスであるか否かを判断する。フォールスパスであるか否かを判断は、公知の技術であるため詳細な説明を省略するが、たとえば、解析対象パス抽出部４０１によって抽出された解析対象パスに関する記述情報に含まれる回路素子に、入力信号が矛盾し合う回路素子が存在するか否かを判断する。
【００７０】
特定部４０３は、フォールスパス判断部４０５によって解析対象パスがフォールスパスであると判断された場合、解析対象パスに含まれる回路素子の中からフォールスパスの原因となる回路素子を特定する。フォールスパスの原因となる回路素子は、解析対象パスにおいて、入力信号が矛盾し合う回路素子である。
【００７１】
生成部４０４は、特定部４０３によって特定された回路素子（以下、「特定回路素子」という）以外の回路素子に関する記述情報を、解析対象パスに関する記述情報から削除することにより、フォールスパスに関する記述情報を生成する。
【００７２】
また、生成部４０４は、フォールスパスに関する記述情報を、特定部４０３によって特定された特定回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換させることにより、フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成する。
【００７３】
具体的には、生成部４０４は、前述の図２−１および図２−２のように、解析対象パス１１０に関する記述情報２１０のｔｈｒｏｕｇｈ数を最小化させて、フォールスパスに関する記述情報２２０を生成する。また、解析対象パス１１０に関する記述情報２１０に、入力信号が矛盾し合う特定回路素子の組合せが複数存在する場合は、複数に分割して変換することとしてもよい。
【００７４】
また、生成部４０４は、各解析対象パスに関する圧縮化記述情報の中から、後述する解析対象パス特定部４０８によって特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除する。処理の詳細は、図９で後述するが、同一の圧縮化記述情報を削除することにより、重複した圧縮化記述情報を一元化することができ、処理時間およびデータ量の削減を実現することができる。
【００７５】
さらに、生成部４０４は、特定部４０３によって特定された回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に基づいて、フォールスパスの原因を証明する記述情報を生成する。具体的には、前述した図２−３のように、矛盾し合う特定回路素子と、その入力信号に関する記述情報から構成されている。また、フォールスパスの原因を証明する記述情報によって、フォールスパスに関する記述情報を確認することによるタイミング解析を効率的におこなうことができる。
【００７６】
圧縮化記述情報判断部４０６は、解析対象パス抽出部４０１によって抽出されたあらたな解析対象パスに関する記述情報に、生成部４０４によって生成された圧縮化記述情報が含まれているか否かを判断する。ここで、フォールスパス判断部４０５は、圧縮化記述情報判断部４０６における判断結果に基づいて、あらたな解析対象パスがフォールスパスであるか否かを判断する。
【００７７】
具体的には、フォールスパス判断部４０５は、圧縮化記述情報判断部４０６により、圧縮化記述情報が含まれていると判断された場合、あらたな解析対象パスがフォールスパスであるか否かの判断をおこなわない。
【００７８】
また、フォールスパス判断部４０５は、圧縮化記述情報判断部４０６により、圧縮化記述情報が含まれていないと判断された場合、あらたな解析対象パスがフォールスパスであるか否かを判断する。
【００７９】
換言すれば、矛盾し合う特定回路素子を用いた圧縮化記述情報は、矛盾し合う特定回路素子を通過するパスに関する記述情報の集合であるため、圧縮化記述情報判断部４０６により、圧縮化記述情報が含まれている解析対象パスは、フォールスパス判断部４０５による判断をおこなわなくても、フォールスパスとすることができる。したがって、処理の迅速化が実現することができる。
【００８０】
圧縮化記述情報抽出部４０７は、生成部４０４によって生成された各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出する。詳細は、図７および図８で後述するが、各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出することとしてもよい。
【００８１】
解析対象パス特定部４０８は、各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報抽出部４０７よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定する。具体的には、圧縮化記述情報抽出部４０７よって抽出された圧縮化記述情報を有する解析対象パスとは別の解析対象パスに関する記述情報から、圧縮化記述情報抽出部４０７よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定する。
【００８２】
なお、図４において上述した解析対象パス抽出部４０１、判断部４０２、特定部４０３、生成部４０４、圧縮化記述情報抽出部４０７、解析対象パス特定部４０８は、具体的には、たとえば、図３で示したＲＯＭ３０２、ＲＡＭ３０３、ＨＤ３０５などの記録媒体に記憶されたプログラムを、ＣＰＵ３０１が実行することによって、またＩ／Ｆ３０９やキーボード３１０やマウス３１１によって、その機能を実現する。
【００８３】
（フォールスパス記述情報生成装置４００のフォールスパス記述情報生成処理手順）
つぎに、図５を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置４００のフォールスパス記述情報生成処理手順について説明する。図５は、この発明の実施の形態にかかるフォールスパス記述情報生成装置のフォールスパス記述情報生成処理手順を示すフローチャートである。
【００８４】
図５のフローチャートにおいて、フォールスパス記述情報生成装置４００は、解析対象回路に存在するパスに関する記述情報を取得する（ステップＳ５０１）。パスに関する記述情報の取得は、ＨＤ３０５やＦＤ３０７などの記録媒体に記憶されている構成でもよく、解析対象回路に存在する複数のパスに関する記述情報を取得する。また、パスに関する記述情報は、Ｉ／Ｆ３０９を介して外部から取得する構成としてもよい。
【００８５】
つづいて、解析対象パス抽出部４０１により、ステップＳ５０１において取得されたパスに関する記述情報の中から、解析対象パスに関する記述情報を抽出する（ステップＳ５０２）。
【００８６】
つぎに、圧縮化記述情報判断部４０６により、ステップＳ５０２において抽出された解析対象に関する記述情報が、既に検出された既検出のフォールスパスに関する記述情報に含まれるか否かを判断する（ステップＳ５０３）。既検出のフォールスパスに関する情報は、図４で前述したように、矛盾し合う特定回路素子を用いた圧縮化記述情報によって構成されていてもよく、ステップＳ５０２において抽出された解析対象パスに既に検出された圧縮化記述情報が含まれているか否かを判断する。
【００８７】
ステップＳ５０３において、ステップＳ５０２において抽出された解析対象に関する記述情報が、既検出のフォールスパスに関する記述情報に含まれている場合（ステップＳ５０３：Ｙｅｓ）は、ステップＳ５０８へ移行して、ステップＳ５０１で取得された、解析対象回路に存在するパスに関する記述情報について、解析が終了したか否かを判断する（ステップＳ５０８）。
【００８８】
ステップＳ５０３において、ステップＳ５０２において抽出された解析対象パスに関する記述情報が、既検出のフォールスパスに関する記述情報に含まれていない場合（ステップＳ５０３：Ｎｏ）は、つづいて、フォールスパス判断部４０５により、ステップＳ５０２において抽出された解析対象パスに関する記述情報が、フォールスパスであるか否かを判断する（ステップＳ５０４）。
【００８９】
フォールスパスの判断は、公知の技術であるため、詳細な説明を省略するが、ステップＳ５０２において抽出された解析対象パスに関する記述情報に含まれる回路素子に、入力信号が矛盾し合う回路素子が存在するか否かを判断することである。
【００９０】
ステップＳ５０４において、ステップＳ５０２において抽出された解析対象パスに関する記述情報が、フォールスパスでないと判断された場合（ステップＳ５０４：Ｎｏ）は、ステップＳ５０８へ移行して、ステップＳ５０１で取得された、解析対象回路に存在するパスに関する記述情報について、解析が終了したか否かを判断する（ステップＳ５０８）。
【００９１】
また、ステップＳ５０４において、ステップＳ５０２において抽出された解析対象パスに関する記述情報が、フォールスパスであると判断された場合（ステップＳ５０４：Ｙｅｓ）は、つづいて、特定部４０３により、特定回路素子を特定するとともに、生成部４０４により、解析対象パスに関する記述情報におけるｔｈｒｏｕｇｈ数を最小化する（ステップＳ５０５）。
【００９２】
具体的には、特定部４０３により、図２−１および図２−２で前述した、フォールスパスとして検出された解析対象パス１１０に関する記述情報２１０において、入力信号が矛盾し合う回路素子を特定する。そして、生成部４０４により、解析対象パス１１０に関する記述情報２１０から、入力信号が矛盾し合う特定回路素子以外の回路素子の記述情報を削除して、圧縮化記述情報を生成する。なお、図５の説明では、ｔｈｒｏｕｇｈ数を最小化と表現しているが、ｔｈｒｏｕｇｈの記述を省略して、回路素子と入力のみの記述情報として圧縮化記述情報もよい。
【００９３】
あわせて、ステップＳ５０５において生成された圧縮化記述情報における特定回路素子のうち、入力信号が矛盾し合う特定回路素子に関する記述情報により、生成部４０４により、フォールスパスの原因を証明する記述情報を生成する（ステップＳ５０６）。
【００９４】
そして、ステップＳ５０５において生成された圧縮化記述情報と、ステップＳ５０６において生成されたフォールスパスの原因を証明する記述情報とにより、図示しない記憶部などにより、フォールスパス記述情報集合を記憶する（ステップＳ５０７）。ここで、圧縮化記述情報と、フォールスパスの原因を証明する記述情報は、同一のデータとして記憶しなくてもよく、それぞれが関連づけられて記憶されていればよい。
【００９５】
つぎに、ステップＳ５０１で取得された、解析対象回路に存在するパスに関する記述情報について、解析が終了したか否かを判断する（ステップＳ５０８）。ステップＳ５０８において、解析が終了していない場合（ステップＳ５０８：Ｎｏ）は、ステップＳ５０２に戻って処理を繰り返す。
【００９６】
また、ステップＳ５０８において、解析が終了した場合（ステップＳ５０８：Ｙｅｓ）は、生成部４０４により、ステップＳ５０７において記憶されたフォールスパス記述情報集合の最小化処理をおこなう（ステップＳ５０９）。
【００９７】
最小化処理の詳細は、図９に後述するが、生成部４０４は、ステップＳ５０７において記憶されたフォールスパス記述情報集合に含まれる、各解析対象パスに関する圧縮化記述情報の中から、解析対象パス特定部４０８によって特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除する。
【００９８】
そして、図示しない出力部によりステップＳ５０９において生成された最小化フォールスパス記述情報を出力し（ステップＳ５１０）、一連の処理を終了する。最小化フォールスパス記述情報の出力は、ステップＳ５０６において生成されたフォールスパスの原因を証明する記述情報とともにおこなってもよく、Ｉ／Ｆ３０９を介して外部装置へ出力したり、プリンタ３１３などによって印刷出力をしたりする構成でもよい。
【００９９】
つぎに、図６〜図９を用いて、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理について説明する。図６は、この発明の実施の形態にかかる最小化処理後のフォールスパス記述情報集合の概要を示す説明図である。
【０１００】
図６において、最小化フォールスパス記述情報６００は、フォールスパス記述情報集合として記憶された、各解析対象パスに関する圧縮化記述情報の中から、解析対象パス特定部４０８によって特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除した記述情報である。
【０１０１】
具体的には、図７および図８に後述するが、解析対象パスに関する記述情報を圧縮化記述情報とすることで、矢印６０１について記述情報数およびデータ量を削減することができる。そして、特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除することで、矢印６０２について記述情報数およびデータ量を削減することができる。
【０１０２】
ここで、図７を用いて、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理をおこなう解析対象回路について説明する。図７は、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理をおこなう解析対象回路を示す説明図である。
【０１０３】
図７において、解析対象回路７００は、回路素子Ｇ１１と、Ｇ１２と、Ｇ１３と、Ｇ１４と、Ｇ１５と、Ｇ１６と、Ｇ１７と、Ｇ１８と、Ｇ１９と、から構成されている。
【０１０４】
回路素子Ｇ１１、Ｇ１３およびＧ１５は、図１および図１０で前述したマルチプレクサーであり、入力信号によってパスの切替をおこなう素子である。具体的には、入力Ｃからの入力信号が「１」であった場合（Ｄ１）に入力Ａからのパスを選択し、入力Ｃからの入力信号が「０」であった場合（Ｄ０）に入力Ｂからのパスを選択する。
【０１０５】
回路素子Ｇ１２およびＧ１７は、ＡＮＤゲートであり、論理積の機能を有する論理ゲートである。具体的には、入力ＡおよびＢからの入力信号がともに「１」であった場合、出力Ｘへの出力信号を「１」とする素子である。換言すれば、入力ＡあるいはＢからの入力信号の少なくともいずれか一方が「０」であった場合、出力Ｘへの出力信号を「０」とする素子である。
【０１０６】
回路素子Ｇ１４は、ＯＲゲートであり、論理和の機能を有する論理ゲートである。具体的には、入力ＡあるいはＢからの入力信号の少なくともいずれか一方が「１」であった場合、出力Ｘへの出力信号を「１」とする素子である。換言すれば、入力ＡおよびＢからの入力信号がともに「０」であった場合、出力Ｘへの出力信号を「０」とする素子である。
【０１０７】
回路素子Ｇ１６およびＧ１９は、ＮＯＴゲートであり、入力信号を反転させるインバータの機能を有する論理ゲートである。具体的には、入力信号「０」に対しては出力信号を「１」とし、入力信号「０」に対しては出力信号を「０」とする。
【０１０８】
ここで、解析対象回路７００において太線で示した解析対象パス７１０，７２０は、信号を伝播する入力の組合せが存在しないフォールスパスである。解析対象パス７１０は、入力Ｉ２から出力Ｏ２までのパスであり、図２−１で前述した”ｔｈｒｏｕｇｈ”を含んだ記述情報を簡略化して、「Ｉ２−Ｇ１１−Ｇ１２−Ｇ１８−Ｇ１３−Ｇ１４−Ｇ１５−Ｏ１」からなる記述情報によって構成される。また、解析対象パス７２０は、解析対象パス７１０と同様にして、「Ｉ２−Ｇ１１−Ｇ１２−Ｇ１８−Ｇ１３−Ｇ１４−Ｏ２」からなる記述情報によって構成される。
【０１０９】
解析対象パス７１０は、Ｇ１１、Ｇ１３およびＧ１５を特定回路素子とするフォールスパスである。また、解析対象パス７２０は、Ｇ１１およびＧ１３を特定回路素子とするフォールスパスである。
【０１１０】
具体的には、Ｇ１１における入力Ｃからの入力信号が「１」であった場合に入力Ａを通すが、ＮＯＴゲートであるＧ１６が存在するため、Ｇ１３における入力Ｃからの入力信号は「０」となるため、Ｇ１３では、入力Ａを通すことはない。
【０１１１】
さらに、Ｇ１３における入力Ｃからの入力信号を「１」とすれば、Ｇ１３では、入力Ａを通すが、ＮＯＴゲートであるＧ１６を考慮すると、Ｇ１１における入力Ｃからの入力信号は「０」であるため、Ｇ１１では、入力Ａを通すことはない。このように、Ｇ１１およびＧ１３は、信号を伝播させるため入力の組合せは存在することがなく、入力信号が矛盾し合う構成となっている。
【０１１２】
また、Ｇ１３およびＧ１５についても同様にして、ＮＯＴゲートであるＧ１９を考慮すると、信号を伝播させるため入力の組合せは存在することがなく、入力信号が矛盾し合う構成となっている。
【０１１３】
つづいて、図８を用いて、この発明の実施の形態にかかるフォールスパス記述情報集合について説明する。図８は、この発明の実施の形態にかかるフォールスパス記述情報集合を示す説明図である。
【０１１４】
図８において、フォールスパス記述情報集合８００は、解析対象パス欄８０１における解析対象パスと、圧縮化記述情報欄８０２における各解析対象パスごとの圧縮化記述情報が関連づけられている。
【０１１５】
具体的には、図７で前述した解析対象パス７１０，７２０を用いて説明すると、解析対象パス欄８０１に示される解析対象パス７１０は、「Ｉ２−Ｇ１１−Ｇ１２−Ｇ１８−Ｇ１３−Ｇ１４−Ｇ１５−Ｏ１」からなる記述情報によって構成され、解析対象パス７１０における圧縮化記述情報欄８０２には、矛盾し合う特定回路素子により、（Ｇ１１．Ｄ１，Ｇ１３．Ｄ１）および（Ｇ１３．Ｄ１，Ｇ１５．Ｄ１）からなる圧縮化記述情報が示されている。
【０１１６】
また、解析対象パス欄８０１に示される解析対象パス７２０は、「Ｉ２−Ｇ１１−Ｇ１２−Ｇ１８−Ｇ１３−Ｇ１４−Ｏ２」からなる記述情報によって構成され、解析対象パス７２０における圧縮化記述情報欄８０２には、矛盾し合う特定回路素子により、（Ｇ１１．Ｄ１，Ｇ１３．Ｄ１）からなる圧縮化記述情報が示されている。
【０１１７】
つぎに、図９を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置４００におけるフォールスパス記述情報集合の最小化処理（図５のステップＳ５０９）手順について説明する。図９は、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理（図５のステップＳ５０９）手順を示すフローチャートである。
【０１１８】
図９のフローチャートにおいて、まず、圧縮化記述情報抽出部４０７により、図５のステップＳ５０７において記憶されたフォールスパス記述情報集合から、最も多く含まれる圧縮化記述情報を抽出する（ステップＳ９０１）。
【０１１９】
ステップＳ９０１における圧縮化記述情報の抽出は、前述の図８を用いて説明すると、フォールスパス記述情報集合８００に多く含まれる圧縮化記述情報（Ｇ１１．Ｄ１，Ｇ１３．Ｄ１）を抽出することである。
【０１２０】
そして、生成部４０４により、ステップＳ９０１において抽出された圧縮化記述情報を要素として含む記述情報を削除する（ステップＳ９０２）ことによって、最小化フォールスパス記述情報を生成する（ステップＳ９０３）。
【０１２１】
具体的には、ステップＳ９０１において抽出された圧縮化記述情報（Ｇ１１．Ｄ１，Ｇ１３．Ｄ１）を要素として含む解析対象パス７１０および解析対象パス７２０のうち、圧縮化記述情報（Ｇ１１．Ｄ１，Ｇ１３．Ｄ１）のみを要素として含む解析対象パス７２０および解析対象パス７２０に関連づけられた圧縮化記述情報（Ｇ１１．Ｄ１，Ｇ１３．Ｄ１）を削除する。
【０１２２】
ステップＳ９０２における記述情報の削除は、たとえば、各解析対象パスにおける圧縮化記述情報に重複する記述情報がなくなるようにする構成であればよい。より具体的には、最も多くの解析対象パスに関連づけられた圧縮化記述情報のうち、生成元の解析対象パスにおける回路素子の数が多い圧縮化記述情報を残すこととしてもよい。さらに、生成元の解析対象パスにおける回路素子の数が同数であれば、生成元の解析対象パスに関連づけられた圧縮化記述情報の数を比較してもよい。
【０１２３】
そして、図５のステップＳ５０７において記憶されたフォールスパス記述情報集合に、重複する圧縮化記述情報があるか否かを判断する（ステップＳ９０４）。ステップＳ９０４において、重複する圧縮化記述情報がある場合（ステップＳ９０４：Ｙｅｓ）は、ステップＳ９０１へ戻って処理を繰り返す。
【０１２４】
また、ステップＳ９０４において、重複する圧縮化記述情報がない場合（ステップＳ９０４：Ｎｏ）は、そのまま図５におけるステップＳ５０９のフォールスパス記述情報集合の最小化処理を終了して、ステップＳ５１０へ移行する。
【０１２５】
このように、この発明の実施の形態によれば、解析対象回路上に存在する解析対象パスがフォールスパスであった場合、フォールスパスに関する記述情報について、フォールスパスの原因となる特定回路素子を用いた圧縮化記述情報を生成する。したがって、解析対象パスのすべての回路素子を用いた記述情報よりも記述情報数を削減し、データ量を低減させることができる。
【０１２６】
また、この発明の実施の形態によれば、解析対象パスが、既に生成された圧縮化記述情報を含む場合には、解析対象パスに対してフォールスパスか否かの判断をおこなわないため、フォールスパスに関して、実質的な判断をおこなわなくても簡易的な判断によって、解析対象回路に存在するパスの解析を迅速かつ効率的におこなうことができる。
【０１２７】
また、この発明の実施の形態によれば、複数の圧縮化記述情報からなるフォールスパス記述情報集合において、適切に圧縮化記述情報を削減して最小化フォールスパス記述情報として、データ量を低減させることができる。したがって、設計者における設計期間の短縮および負担の軽減を実現することができる。
【０１２８】
また、この発明の実施の形態によれば、フォールスパスの原因を証明する記述情報をあわせて生成するため、最小化フォールスパス記述情報によるフォールスパスの確認を容易におこなうことができる。したがって、設計者によるフォールスパス記述の確認が簡便なものとなり、設計期間の短縮および負担の軽減を実現することができる。
【０１２９】
以上説明したように、この発明によれば、最適なフォールスパスに関する記述情報を効率的に生成することで、設計期間の短縮化および設計者の負担の低減を図ることができる。
【０１３０】
なお、本実施の形態で説明したフォールスパス記述情報生成方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【０１３１】
（付記１）解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出させる解析対象パス抽出工程と、
前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断させる判断工程と、
前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定させる特定工程と、
前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成させる生成工程と、
をコンピュータに実行させることを特徴とするフォールスパス記述情報生成プログラム。
【０１３２】
（付記２）前記生成工程は、
前記フォールスパスに関する記述情報を、前記特定工程によって特定された回路素子（以下、「特定回路素子」という）のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換させることにより、前記フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成させることを特徴とする付記１に記載のフォールスパス記述情報生成プログラム。
【０１３３】
（付記３）前記解析対象パス抽出工程は、
前記解析対象回路に存在するパスに関する記述情報の中から、あらたな解析対象パスに関する記述情報を抽出させ、
前記判断工程は、
前記解析対象パス抽出工程によって抽出されたあらたな解析対象パスに関する記述情報に、前記生成工程によって生成された圧縮化記述情報が含まれているか否かを判断させる圧縮化記述情報判断工程をコンピュータに実行させ、
当該圧縮化記述情報判断工程によって判断された判断結果に基づいて、前記あらたな解析対象パスがフォールスパスであるか否かを判断させることを特徴とする付記２に記載のフォールスパス記述情報生成プログラム。
【０１３４】
（付記４）前記判断工程は、
前記圧縮化記述情報判断工程により、前記圧縮化記述情報が含まれていると判断された場合、前記あらたな解析対象パスがフォールスパスであるか否かの判断をおこなわせないことを特徴とする付記３に記載のフォールスパス記述情報生成プログラム。
【０１３５】
（付記５）前記判断工程は、
前記圧縮化記述情報判断工程により、前記圧縮化記述情報が含まれていないと判断された場合、前記あらたな解析対象パスがフォールスパスであるか否か判断させることを特徴とする付記３に記載のフォールスパス記述情報生成プログラム。
【０１３６】
（付記６）前記生成工程によって生成された前記各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出させる圧縮化記述情報抽出工程と、
前記各解析対象パスに関する圧縮化記述情報の中から、前記圧縮化記述情報抽出工程よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定させる解析対象パス特定工程と、をコンピュータに実行させ、
前記生成工程は、
前記各解析対象パスに関する圧縮化記述情報の中から、前記解析対象パス特定工程によって特定された解析対象パスに関する圧縮化記述情報のうち前記同一の圧縮化記述情報を削除させることを特徴とする付記２〜５のいずれか一つに記載のフォールスパス記述情報生成プログラム。
【０１３７】
（付記７）前記圧縮化記述情報抽出工程は、
前記各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出させることを特徴とする付記６に記載のフォールスパス記述情報生成プログラム。
【０１３８】
（付記８）前記生成工程は、
前記特定工程によって特定された回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に基づいて、前記フォールスパスの原因を証明する記述情報を生成させることを特徴とする付記１〜７のいずれか一つに記載のフォールスパス記述情報生成プログラム。
【０１３９】
（付記９）付記１〜８のいずれか一つに記載のフォールスパス記述情報生成プログラムを記録したコンピュータに読み取り可能な記録媒体。
【０１４０】
（付記１０）解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出手段と、
前記解析対象パス抽出手段によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断手段と、
前記判断手段によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定手段と、
前記特定手段によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成手段と、
を備えたことを特徴とするフォールスパス記述情報生成装置。
【０１４１】
（付記１１）解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出工程と、
前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断工程と、
前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定工程と、
前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成工程と、
を含むことを特徴とするフォールスパス記述情報生成方法。
【産業上の利用可能性】
【０１４２】
以上のように、本発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法は、解析対象回路から検出されたフォールスパスに関する記述情報の生成に有用であり、複雑なＬＳＩ回路におけるタイミング解析を効率的におこなうための記述情報を生成する場合に適している。
【図面の簡単な説明】
【０１４３】
【図１】この発明の実施の形態にかかるフォールスパスの概要について示す説明図である。
【図２−１】この発明の実施の形態にかかるフォールスパスとして検出された解析対象パスに関する記述情報を示す説明図である。
【図２−２】この発明の実施の形態にかかるフォールスパスに関する記述情報を示す説明図である。
【図２−３】この発明の実施の形態にかかるフォールスパスの原因を証明する記述情報を示す説明図である。
【図３】この発明の実施の形態にかかるフォールスパス記述情報生成装置のハードウェア構成を示すブロック図である。
【図４】この発明の実施の形態にかかるフォールスパス記述情報生成装置の機能的構成を示すブロック図である。
【図５】この発明の実施の形態にかかるフォールスパス記述情報生成装置のフォールスパス記述情報生成処理手順を示すフローチャートである。
【図６】この発明の実施の形態にかかる最小化処理後のフォールスパス記述情報集合の概要を示す説明図である。
【図７】この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理をおこなう解析対象回路を示す説明図である。
【図８】この発明の実施の形態にかかるフォールスパス記述情報集合を示す説明図である。
【図９】この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理（図５のステップＳ５０９）手順を示すフローチャートである。
【図１０】解析対象回路におけるフォールスパスの概要を示す説明図である。
【符号の説明】
【０１４４】
３００  バス
３０１  ＣＰＵ
３０２  ＲＯＭ
３０３  ＲＡＭ
３０４  ＨＤＤ
３０５  ＨＤ
３０６  ＦＤＤ
３０７  ＦＤ
３０８  ディスプレイ
３０９  Ｉ／Ｆ
３１０  キーボード
３１１  マウス
３１２  スキャナ
３１３  プリンタ
４００  フォールスパス記述情報生成装置
４０１  解析対象パス抽出部
４０２  判断部
４０３  特定部
４０４  生成部
４０５  フォールスパス判断部
４０６  圧縮化記述情報判断部
４０７  圧縮化記述情報抽出部
４０８  解析対象パス特定部
【図１】
0004682059.tif 000002
【図２−１】
0004682059.tif 000003
【図２−２】
0004682059.tif 000004
【図２−３】
0004682059.tif 000005
【図３】
0004682059.tif 000006
【図４】
0004682059.tif 000007
【図５】
0004682059.tif 000008
【図６】
0004682059.tif 000009
【図７】
0004682059.tif 000010
【図８】
0004682059.tif 000011
【図９】
0004682059.tif 000012
【図１０】
0004682059.tif 000013