JP4682059B2 - フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法 - Google Patents

フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法 Download PDF

Info

Publication number
JP4682059B2
JP4682059B2 JP2006056447A JP2006056447A JP4682059B2 JP 4682059 B2 JP4682059 B2 JP 4682059B2 JP 2006056447 A JP2006056447 A JP 2006056447A JP 2006056447 A JP2006056447 A JP 2006056447A JP 4682059 B2 JP4682059 B2 JP 4682059B2
Authority
JP
Japan
Prior art keywords
description information
path
analysis target
false
target path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006056447A
Other languages
English (en)
Other versions
JP2007233840A (ja
Inventor
博之 樋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006056447A priority Critical patent/JP4682059B2/ja
Priority to US11/521,148 priority patent/US7441217B2/en
Publication of JP2007233840A publication Critical patent/JP2007233840A/ja
Application granted granted Critical
Publication of JP4682059B2 publication Critical patent/JP4682059B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/3312Timing analysis
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31725Timing aspects, e.g. clock distribution, skew, propagation delay
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • G01R31/318357Simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

この発明は、解析の対象となる解析対象回路から検出されたフォールスパスの記述情報を生成するフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法に関する。
LSI(Large Scale Integrated circuit)などの半導体装置の回路設計においては、回路遅延を見積もり、見積もった回路遅延がLSIまたはLSIの一部を構成する解析対象回路の正常動作に必要な範囲内であることを確認するタイミング解析をおこなっている。このタイミング解析は、設計した回路が正しく動作することの保障やクロック動作の最適化のために必要不可欠な工程であり、解析の対象となった回路のネットリストだけでなく、フォールスパスなどのタイミング例外パスの指定などを記述した情報が必要となる。
ここで、図10を用いて、上述したフォールスパスについて説明する。図10は、解析対象回路におけるフォールスパスの概要を示す説明図である。図10において、解析対象回路1000は、組合せ論理回路1001,1002,1003,1004と、マルチプレクサー1005,1006と、NOTゲート1007と、から構成されている。
組合せ論理回路1001,1002,1003,1004は、論理回路を組み合わせた回路であり、組合せ論理回路1001および組合せ論理回路1003は3ns、組合せ論理回路1002および組合せ論理回路1004は1nsの処理時間を要する回路である。
また、マルチプレクサー1005,1006は、入力信号によってパスの切替をおこなう。具体的には、入力Cからの入力信号が「0」であった場合に入力Aからのパスを通し、入力Cからの入力信号が「1」であった場合に入力Bからのパスを通す。NOTゲート1007は、入力信号を反転させる論理ゲートで、具体的には、入力信号「0」に対しては出力信号を「1」とし、入力信号「0」に対しては出力信号を「0」とする。
解析対象回路1000において太線で示した解析対象パス1010は、信号を伝播する入力の組合せが存在しないフォールスパスである。具体的には、マルチプレクサー1005における入力Cからの入力信号が「0」であった場合に入力Aを通すが、NOTゲート1007が存在するため、マルチプレクサー1006における入力Cからの入力信号は「1」となるため、マルチプレクサー1006では、入力Aを通すことはない。
さらに、マルチプレクサー1006における入力Cからの入力信号を「0」とすれば、マルチプレクサー1006では、入力Aを通すが、NOTゲート1007を考慮すると、マルチプレクサー1005における入力Cからの入力信号は「1」であるため、マルチプレクサー1005では、入力Aを通すことはない。
解析対象回路1000におけるタイミング解析では、上述のようなフォールスパスを検出することによって回路遅延を見積もることとなる。具体的には、解析対象回路1000では、解析対象パス1010を通過する場合に、最大の処理時間6nsを要するが、信号が伝播することがないため無視をすることができ、回路遅延は4nsと見積もることができる。より具体的には、組合せ論理回路1001および組合せ論理回路1004を通過するパス、あるいは組合せ論理回路1002および組合せ論理回路1003を通過するパスの処理時間4nsが回路遅延となる。
これまでに、フォールスパスの検出について、解析対象回路上に存在するパスを、充足可能性検査に基づいてフォールスパスであるか否かを調べる方法や、フォールスパスの判定に際して、パスに対する入力パターンを圧縮することで、フォールスパス判定を高速化する提案がされている(たとえば、下記特許文献1,2参照。)。
また、解析対象回路中のあり得ない信号線値の割り当てについて、解析対象回路の通過点を直接検出してフォールスパスとすることにより、フォールスパス検出における処理時間および検出したフォールスパス情報を利用するツールにおける処理時間を短縮する提案がされている(たとえば、下記特許文献3参照。)。
特表2003−526149号公報 特開2001−67383号公報 特開2005−149373号公報
近年LSIまたはLSIの一部の解析対象回路は、論理ゲート数の増大などに起因して、解析対象回路が複雑化されており、上述した従来技術によるフォールスパスの検出をおこなっても、検出結果として出力されるフォールスパスに該当するパスの記述情報は膨大な数および膨大なデータ量となってしまう。
したがって、膨大な数のフォールスパスに関する記述情報に対し、すべての記述情報についてタイミング解析をおこない、回路設計のレイアウトの最適化などをおこなう場合、多大な処理時間を要してしまう。そのため、設計期間の長期化を招くという問題があった。
さらに、出力されたフォールスパスに関する記述情報だけでは、タイミング解析に対して、フォールスパスの原因を特定する場合、すべての記述情報について、入力信号の確認をおこなわなければならない。そのため、設計者に多大な労力および負担がかかるという問題があった。
この発明は、上述した従来技術による問題点を解消するため、設計期間の短縮化および設計者の負担を低減することができるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法を提供することを目的とする。
上述した課題を解決し、目的を達成するため、この発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法は、解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出し、抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断し、前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定し、特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成することを特徴とする。
この発明によれば、フォールスパスとして検出された解析対象パスに関する記述情報を、フォールスパスの原因となる回路素子のみの記述情報に圧縮することができる。
また、上記発明において、生成された前記フォールスパスに関する記述情報を、特定された回路素子(以下、「特定回路素子」という)のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換することにより、前記フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成することとしてもよい。
この発明によれば、入力信号が矛盾し合う特定回路素子に関する記述情報を用いて、フォールスパスに関する記述情報を入力信号が矛盾し合う特定回路素子の組合せに関する記述情報に圧縮することができる。
また、上記発明において、前記解析対象回路に存在するパスに関する記述情報の中から、あらたな解析対象パスに関する記述情報を抽出し、抽出されたあらたな解析対象パスに関する記述情報に、生成された圧縮化記述情報が含まれているか否かを判断し、判断された判断結果に基づいて、前記あらたな解析対象パスがフォールスパスであるか否かを判断することとしてもよい。
この発明によれば、フォールスパスの実質的な判断をおこなう前に、解析対象パスに関する記述情報に、既に生成された圧縮化記述情報が含まれているか否かについての簡易的な判断をおこなうことができる。
また、上記発明において、前記圧縮化記述情報が含まれていると判断された場合、前記あらたな解析対象パスがフォールスパスであるか否かの判断をおこなわないこととしてもよい。
この発明によれば、簡易的な判断によって、解析対象パスに関する記述情報に既に生成された圧縮化記述情報が含まれている場合は、解析対象パスがフォールスパスであるか否かの実質的な判断をおこなわずに、フォールスパスであることを特定できる。さらに、フォールスパスに関する記述情報が多大であるほど効率的な処理を図ることができる。
また、上記発明において、前記圧縮化記述情報が含まれていないと判断された場合、前記あらたな解析対象パスがフォールスパスであるか否か判断することとしてもよい。
この発明によれば、簡易的な判断によって、解析対象パスに関する記述情報に既に生成された圧縮化記述情報が含まれていない解析対象パスについて、実質的な判断によってフォールスパスであるか否かを判断することができる。
また、上記発明において、生成された前記各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出し、前記各解析対象パスに関する圧縮化記述情報の中から、抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定し、前記各解析対象パスに関する圧縮化記述情報の中から、特定された解析対象パスに関する圧縮化記述情報のうち前記同一の圧縮化記述情報を削除することとしてもよい。
この発明によれば、圧縮化記述情報の数を削減するため、解析対象となるフォールスパスに関する記述情報を削減することできる。
また、上記発明において、前記各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出することとしてもよい。
この発明によれば、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出することによって、各解析対象パスに関する圧縮化記述情報に多く存在する同一の圧縮化記述情報から削減することができ、データ量を効率的に圧縮することができる。
また、上記発明において、特定された回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に基づいて、前記フォールスパスの原因を証明する記述情報を生成することとしてもよい。
この発明によれば、フォールスパスの原因を証明する記述情報によって、フォールスパスの確認を容易におこなうことができるため、設計期間の短縮化および設計者の負担の低減を図ることができる。
本発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法によれば、設計期間の短縮化および設計者の負担の低減を図ることができるという効果を奏する。
以下に添付図面を参照して、この発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法の好適な実施の形態を詳細に説明する。
(実施の形態)
(フォールスパス記述情報の生成の概要)
まず、図1および図2−1〜図2−3を用いて、この発明の実施の形態にかかるフォールスパス記述情報の生成の概要について説明する。図1は、この発明の実施の形態にかかるフォールスパスの概要について示す説明図である。
図1において、解析対象回路100は、回路素子G1と、G2と、G3と、G4と、G5と、G6と、から構成されている。なお、本明細書では、G1、G2・・・は、各パスの回路素子に関する記述情報のテキスト情報とする。
回路素子G1、G3およびG5は、図10で前述したマルチプレクサーであり、入力信号によってパスの切替をおこなう素子である。具体的には、入力Cからの入力信号が「1」であった場合(D1)に入力Aからのパスを選択し、入力Cからの入力信号が「0」であった場合(D0)に入力Bからのパスを選択する。
回路素子G2は、ANDゲートであり、論理積の機能を有する論理ゲートである。具体的には、入力AおよびBからの入力信号がともに「1」であった場合、出力Xへの出力信号を「1」とする素子である。換言すれば、入力AあるいはBからの入力信号の少なくともいずれか一方が「0」であった場合、出力Xへの出力信号を「0」とする素子である。
回路素子G4は、ORゲートであり、論理和の機能を有する論理ゲートである。具体的には、入力AあるいはBからの入力信号の少なくともいずれか一方が「1」であった場合、出力Xへの出力信号を「1」とする素子である。換言すれば、入力AおよびBからの入力信号がともに「0」であった場合、出力Xへの出力信号を「0」とする素子である。
回路素子G6は、NOTゲートであり、入力信号を反転させるインバータの機能を有する論理ゲートである。具体的には、入力信号「0」に対しては出力信号を「1」とし、入力信号「1」に対しては出力信号を「0」とする。
ここで、解析対象回路100において太線で示した解析対象パス110は、信号を伝播する入力の組合せが存在しないフォールスパスである。具体的には、G1における入力Cからの入力信号が「1」であった場合に入力Aを通すが、NOTゲートであるG6が存在するため、G3における入力Cからの入力信号は「0」となるため、G3では、入力Aを通すことはない。
さらに、G3における入力Cからの入力信号を「1」とすれば、G3では、入力Aを通すが、NOTゲートであるG6を考慮すると、G1における入力Cからの入力信号は「0」であるため、G1では、入力Aを通すことはない。
このように、G1およびG3に信号を伝播させるため入力の組合せは存在することがなく、信号を伝播させるためには矛盾(conflict)が生ずることとなる。解析対象回路100におけるタイミング解析では、上述のような矛盾を含む解析対象パス110がフォールスパスとして検出されることとなる。
(フォールスパス記述情報の概要)
つぎに、図2−1〜図2−3を用いて、この発明の実施の形態にかかるフォールスパス記述情報の概要について説明する。図2−1は、この発明の実施の形態にかかるフォールスパスとして検出された解析対象パスに関する記述情報を示す説明図である。
図2−1において、解析対象パス110に関する記述情報210は、前述の図1における解析対象パス110に関する記述情報である。解析対象パス110に関する記述情報210は、パスの種類と、通過する回路素子の記述情報によって構成されている。
具体的には、解析対象パス110は、フォールスパスとして検出されたため「set_false_path」からなる記述情報を有している。さらに、通過する回路素子およびその入力からなる記述情報を有している。
より具体的には、解析対象パス110は、G1における入力A、G2における入力A、G3における入力A、G4における入力A、G5における入力Aを通過しており、解析対象パス110に関する記述情報210に示すように、「set_false_path」以降に「−through G1.A −through G2.A −through G3.A −through G4.A −through G5.A」からなる記述情報により構成されている。なお、以降の本明細書では、たとえば、G1.Aは通過する回路素子および入力をあらわすこととし、通過する回路素子および入力の数を、through数とあらわすこととする。
つづいて、図2−2を用いて、この発明の実施の形態にかかるフォールスパスに関する記述情報について説明する。図2−2は、この発明の実施の形態にかかるフォールスパスに関する記述情報を示す説明図である。
図2−2において、フォールスパスに関する記述情報220は、前述の図2−1における解析対象パス110に関する記述情報210のthrough数を最小化させた記述情報である。処理の詳細は、図5に後述するが、具体的には、解析対象パス110において、矛盾が生じた回路素子G1およびG3を特定し、特定された回路素子以外の回路素子について解析対象パス110に関する記述情報210のthrough数を削除して、フォールスパスに関する記述情報220とする。
換言すれば、矛盾し合う回路素子を用いてフォールスパスに関する記述情報220とすることで、「−through G1.A −through G3.A」からなる記述情報により構成することができる。このフォールスパスに関する記述情報220によって、解析対象パス110に関する記述情報210は、矢印221で示されるように、記述情報数の削減およびデータ量の削減を実現することができる。
また、「−through G1.A −through G3.A」からなるフォールスパスに関する記述情報220は、回路素子G1における入力Aおよび回路素子G3における入力Aを通過するパスに関する記述情報である。換言すれば、回路素子G1における入力Aおよび回路素子G3における入力Aを通過するパスの集合を一意的に示す記述情報である。
さらに、回路素子G1における入力Aおよび回路素子G3における入力Aを通過するパスは、図1で前述したように信号を伝播させるためには矛盾が生じている。したがって、フォールスパスに関する記述情報220は、解析対象パス110のみならず、解析対象回路100において、回路素子G1における入力Aおよび回路素子G3における入力Aを通過するパスをフォールスパスに関する記述情報としてあらわす。
つぎに、図2−3を用いて、この発明の実施の形態にかかるフォールスパスの原因を証明する記述情報について説明する。図2−3は、この発明の実施の形態にかかるフォールスパスの原因を証明する記述情報を示す説明図である。
図2−3において、フォールスパスの原因を証明する記述情報230は、フォールスパスとして検出された解析対象パス110に関する記述情報210において、入力信号が矛盾し合う回路素子に関する記述情報から構成されている。
具体的には、前述の図2−2で特定された、矛盾し合う回路素子G1およびG3とその入力信号からなり、図2−3では、図1におけるG1の入力Cからの入力信号を「1」、G3の入力Cからの入力信号を「1」とすれば、解析対象パス110に信号が伝播する。しかしながら、G1の入力Cからの入力信号を「1」とした場合に、G3の入力Cからの入力信号は「0」となるはずなので、矛盾を生じていることを示している。
なお、フォールスパスの原因を証明する記述情報230は、図示した記述情報に限ることなく、矛盾し合う回路素子とその入力信号との矛盾が確認できる構成であればよい。
上述のように、この発明の実施の形態におけるフォールスパスに関する記述情報220は、生成元となった解析対象パス110がフォールスパスであった場合に、入力信号が矛盾し合う回路素子を特定する。そして、特定された回路素子以外の回路素子について解析対象パス110に関する記述情報210のthrough数を削除して、フォールスパスに関する記述情報220とする。したがって、記述情報の数が最小化されるとともにデータ量の削減を実現することができる。
さらに、フォールスパスに関する記述情報220は、フォールスパスに関する記述情報220に含まれる回路素子を通過するパスの集合をあらわすため、複数のフォールスパスを一意的にあらわすこととなり、フォールスパスに関する記述情報の数およびデータ量が削減されることとなる。
また、フォールスパスとして検出された解析対象パス110に関する記述情報210において、入力信号が矛盾し合う回路素子に関する記述情報によって、フォールスパスの原因を証明する記述情報を生成する。したがって、フォールスパスに関する記述情報を用いたタイミング解析を効率的におこなうことができる。
(フォールスパス記述情報生成装置のハードウェア構成)
つぎに、図3を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置のハードウェア構成について説明する。図3は、この発明の実施の形態にかかるフォールスパス記述情報生成装置のハードウェア構成を示すブロック図である。
図3において、フォールスパス記述情報生成装置は、CPU301と、ROM302と、RAM303と、HDD(ハードディスクドライブ)304と、HD(ハードディスク)305と、FDD(フレキシブルディスクドライブ)306と、着脱可能な記録媒体の一例としてのFD(フレキシブルディスク)307と、ディスプレイ308と、I/F(インターフェース)309と、キーボード310と、マウス311と、スキャナ312と、プリンタ313と、を備えている。また、各構成部はバス300によってそれぞれ接続されている。
ここで、CPU301は、フォールスパス記述情報生成装置の全体の制御を司る。ROM302は、ブートプログラムなどのプログラムを記憶している。RAM303は、CPU301のワークエリアとして使用される。HDD304は、CPU301の制御にしたがってHD305に対するデータのリード/ライトを制御する。HD305は、HDD304の制御で書き込まれたデータを記憶する。
FDD306は、CPU301の制御にしたがってFD307に対するデータのリード/ライトを制御する。FD307は、FDD306の制御で書き込まれたデータを記憶したり、FD307に記憶されたデータをフォールスパス記述情報生成装置に読み取らせたりする。
また、着脱可能な記録媒体として、FD307のほか、CD−ROM(CD−R、CD−RW)、MO、DVD(Digital Versatile Disk)、メモリカードなどであってもよい。ディスプレイ308は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ308は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F309は、通信回線を通じてインターネットなどのネットワーク314に接続され、このネットワーク314を介して他の装置に接続される。また、I/F309は、ネットワーク314と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F309には、たとえばモデムやLANアダプタなどを採用することができる。
キーボード310は、文字、数字、各種指示などの入力のためのキーを備え、押下されたキーに対応するデータを装置内部へ入力する。また、キーボード310としては、タッチパネル式の入力パッドやテンキーなどであってもよい。また、マウス311を操作することで、マウス311の本体下部の移動を検出するセンサによる出力および本体上部の各ボタンのON/OFFを随時装置内部へ入力して、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなってもよい。なお、ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ312は、書類などの画像情報を光学的に読み取り、装置内に画像データとして取り込む。さらにOCR(Optical Character Reader)機能も備えており、OCR機能によって、印刷された解析対象パスに関する記述情報を読み取ってデータ化することもできる。また、プリンタ313は、フォールスパスに関する記述情報やフォールスパスの原因を証明する記述情報などのデータを印刷する。プリンタ313は、たとえば、レーザプリンタ、インクジェットプリンタなどである。
(フォールスパス記述情報生成装置の機能的構成)
つぎに、図4を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置の機能的構成について説明する。図4は、この発明の実施の形態にかかるフォールスパス記述情報生成装置の機能的構成を示すブロック図である。図4において、フォールスパス記述情報生成装置400は、解析対象パス抽出部401と、判断部402と、特定部403と、生成部404と、圧縮化記述情報抽出部407と、解析対象パス特定部408と、から構成されている。
解析対象パス抽出部401は、解析対象回路におけるタイミング解析の対象となる解析対象回路に存在するパスに関する記述情報の中から、任意の解析の対象となる解析対象パスに関する記述情報を抽出する。また、解析対象パス抽出部401は、解析対象回路に存在するパスについて、解析がすべてのパスについて終了するまで、繰り返して解析対象パスに関する記述情報を抽出することとしてもよい。
判断部402は、フォールスパス判断部405と、圧縮化記述情報判断部406と、から構成されている。フォールスパス判断部405は、解析対象パス抽出部401によって抽出された解析対象パスに関する記述情報に基づいて、解析対象パスがフォールスパスであるか否かを判断する。フォールスパスであるか否かを判断は、公知の技術であるため詳細な説明を省略するが、たとえば、解析対象パス抽出部401によって抽出された解析対象パスに関する記述情報に含まれる回路素子に、入力信号が矛盾し合う回路素子が存在するか否かを判断する。
特定部403は、フォールスパス判断部405によって解析対象パスがフォールスパスであると判断された場合、解析対象パスに含まれる回路素子の中からフォールスパスの原因となる回路素子を特定する。フォールスパスの原因となる回路素子は、解析対象パスにおいて、入力信号が矛盾し合う回路素子である。
生成部404は、特定部403によって特定された回路素子(以下、「特定回路素子」という)以外の回路素子に関する記述情報を、解析対象パスに関する記述情報から削除することにより、フォールスパスに関する記述情報を生成する。
また、生成部404は、フォールスパスに関する記述情報を、特定部403によって特定された特定回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換させることにより、フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成する。
具体的には、生成部404は、前述の図2−1および図2−2のように、解析対象パス110に関する記述情報210のthrough数を最小化させて、フォールスパスに関する記述情報220を生成する。また、解析対象パス110に関する記述情報210に、入力信号が矛盾し合う特定回路素子の組合せが複数存在する場合は、複数に分割して変換することとしてもよい。
また、生成部404は、各解析対象パスに関する圧縮化記述情報の中から、後述する解析対象パス特定部408によって特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除する。処理の詳細は、図9で後述するが、同一の圧縮化記述情報を削除することにより、重複した圧縮化記述情報を一元化することができ、処理時間およびデータ量の削減を実現することができる。
さらに、生成部404は、特定部403によって特定された回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に基づいて、フォールスパスの原因を証明する記述情報を生成する。具体的には、前述した図2−3のように、矛盾し合う特定回路素子と、その入力信号に関する記述情報から構成されている。また、フォールスパスの原因を証明する記述情報によって、フォールスパスに関する記述情報を確認することによるタイミング解析を効率的におこなうことができる。
圧縮化記述情報判断部406は、解析対象パス抽出部401によって抽出されたあらたな解析対象パスに関する記述情報に、生成部404によって生成された圧縮化記述情報が含まれているか否かを判断する。ここで、フォールスパス判断部405は、圧縮化記述情報判断部406における判断結果に基づいて、あらたな解析対象パスがフォールスパスであるか否かを判断する。
具体的には、フォールスパス判断部405は、圧縮化記述情報判断部406により、圧縮化記述情報が含まれていると判断された場合、あらたな解析対象パスがフォールスパスであるか否かの判断をおこなわない。
また、フォールスパス判断部405は、圧縮化記述情報判断部406により、圧縮化記述情報が含まれていないと判断された場合、あらたな解析対象パスがフォールスパスであるか否かを判断する。
換言すれば、矛盾し合う特定回路素子を用いた圧縮化記述情報は、矛盾し合う特定回路素子を通過するパスに関する記述情報の集合であるため、圧縮化記述情報判断部406により、圧縮化記述情報が含まれている解析対象パスは、フォールスパス判断部405による判断をおこなわなくても、フォールスパスとすることができる。したがって、処理の迅速化が実現することができる。
圧縮化記述情報抽出部407は、生成部404によって生成された各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出する。詳細は、図7および図8で後述するが、各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出することとしてもよい。
解析対象パス特定部408は、各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報抽出部407よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定する。具体的には、圧縮化記述情報抽出部407よって抽出された圧縮化記述情報を有する解析対象パスとは別の解析対象パスに関する記述情報から、圧縮化記述情報抽出部407よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定する。
なお、図4において上述した解析対象パス抽出部401、判断部402、特定部403、生成部404、圧縮化記述情報抽出部407、解析対象パス特定部408は、具体的には、たとえば、図3で示したROM302、RAM303、HD305などの記録媒体に記憶されたプログラムを、CPU301が実行することによって、またI/F309やキーボード310やマウス311によって、その機能を実現する。
(フォールスパス記述情報生成装置400のフォールスパス記述情報生成処理手順)
つぎに、図5を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置400のフォールスパス記述情報生成処理手順について説明する。図5は、この発明の実施の形態にかかるフォールスパス記述情報生成装置のフォールスパス記述情報生成処理手順を示すフローチャートである。
図5のフローチャートにおいて、フォールスパス記述情報生成装置400は、解析対象回路に存在するパスに関する記述情報を取得する(ステップS501)。パスに関する記述情報の取得は、HD305やFD307などの記録媒体に記憶されている構成でもよく、解析対象回路に存在する複数のパスに関する記述情報を取得する。また、パスに関する記述情報は、I/F309を介して外部から取得する構成としてもよい。
つづいて、解析対象パス抽出部401により、ステップS501において取得されたパスに関する記述情報の中から、解析対象パスに関する記述情報を抽出する(ステップS502)。
つぎに、圧縮化記述情報判断部406により、ステップS502において抽出された解析対象に関する記述情報が、既に検出された既検出のフォールスパスに関する記述情報に含まれるか否かを判断する(ステップS503)。既検出のフォールスパスに関する情報は、図4で前述したように、矛盾し合う特定回路素子を用いた圧縮化記述情報によって構成されていてもよく、ステップS502において抽出された解析対象パスに既に検出された圧縮化記述情報が含まれているか否かを判断する。
ステップS503において、ステップS502において抽出された解析対象に関する記述情報が、既検出のフォールスパスに関する記述情報に含まれている場合(ステップS503:Yes)は、ステップS508へ移行して、ステップS501で取得された、解析対象回路に存在するパスに関する記述情報について、解析が終了したか否かを判断する(ステップS508)。
ステップS503において、ステップS502において抽出された解析対象パスに関する記述情報が、既検出のフォールスパスに関する記述情報に含まれていない場合(ステップS503:No)は、つづいて、フォールスパス判断部405により、ステップS502において抽出された解析対象パスに関する記述情報が、フォールスパスであるか否かを判断する(ステップS504)。
フォールスパスの判断は、公知の技術であるため、詳細な説明を省略するが、ステップS502において抽出された解析対象パスに関する記述情報に含まれる回路素子に、入力信号が矛盾し合う回路素子が存在するか否かを判断することである。
ステップS504において、ステップS502において抽出された解析対象パスに関する記述情報が、フォールスパスでないと判断された場合(ステップS504:No)は、ステップS508へ移行して、ステップS501で取得された、解析対象回路に存在するパスに関する記述情報について、解析が終了したか否かを判断する(ステップS508)。
また、ステップS504において、ステップS502において抽出された解析対象パスに関する記述情報が、フォールスパスであると判断された場合(ステップS504:Yes)は、つづいて、特定部403により、特定回路素子を特定するとともに、生成部404により、解析対象パスに関する記述情報におけるthrough数を最小化する(ステップS505)。
具体的には、特定部403により、図2−1および図2−2で前述した、フォールスパスとして検出された解析対象パス110に関する記述情報210において、入力信号が矛盾し合う回路素子を特定する。そして、生成部404により、解析対象パス110に関する記述情報210から、入力信号が矛盾し合う特定回路素子以外の回路素子の記述情報を削除して、圧縮化記述情報を生成する。なお、図5の説明では、through数を最小化と表現しているが、throughの記述を省略して、回路素子と入力のみの記述情報として圧縮化記述情報もよい。
あわせて、ステップS505において生成された圧縮化記述情報における特定回路素子のうち、入力信号が矛盾し合う特定回路素子に関する記述情報により、生成部404により、フォールスパスの原因を証明する記述情報を生成する(ステップS506)。
そして、ステップS505において生成された圧縮化記述情報と、ステップS506において生成されたフォールスパスの原因を証明する記述情報とにより、図示しない記憶部などにより、フォールスパス記述情報集合を記憶する(ステップS507)。ここで、圧縮化記述情報と、フォールスパスの原因を証明する記述情報は、同一のデータとして記憶しなくてもよく、それぞれが関連づけられて記憶されていればよい。
つぎに、ステップS501で取得された、解析対象回路に存在するパスに関する記述情報について、解析が終了したか否かを判断する(ステップS508)。ステップS508において、解析が終了していない場合(ステップS508:No)は、ステップS502に戻って処理を繰り返す。
また、ステップS508において、解析が終了した場合(ステップS508:Yes)は、生成部404により、ステップS507において記憶されたフォールスパス記述情報集合の最小化処理をおこなう(ステップS509)。
最小化処理の詳細は、図9に後述するが、生成部404は、ステップS507において記憶されたフォールスパス記述情報集合に含まれる、各解析対象パスに関する圧縮化記述情報の中から、解析対象パス特定部408によって特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除する。
そして、図示しない出力部によりステップS509において生成された最小化フォールスパス記述情報を出力し(ステップS510)、一連の処理を終了する。最小化フォールスパス記述情報の出力は、ステップS506において生成されたフォールスパスの原因を証明する記述情報とともにおこなってもよく、I/F309を介して外部装置へ出力したり、プリンタ313などによって印刷出力をしたりする構成でもよい。
つぎに、図6〜図9を用いて、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理について説明する。図6は、この発明の実施の形態にかかる最小化処理後のフォールスパス記述情報集合の概要を示す説明図である。
図6において、最小化フォールスパス記述情報600は、フォールスパス記述情報集合として記憶された、各解析対象パスに関する圧縮化記述情報の中から、解析対象パス特定部408によって特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除した記述情報である。
具体的には、図7および図8に後述するが、解析対象パスに関する記述情報を圧縮化記述情報とすることで、矢印601について記述情報数およびデータ量を削減することができる。そして、特定された解析対象パスに関する圧縮化記述情報のうち同一の圧縮化記述情報を削除することで、矢印602について記述情報数およびデータ量を削減することができる。
ここで、図7を用いて、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理をおこなう解析対象回路について説明する。図7は、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理をおこなう解析対象回路を示す説明図である。
図7において、解析対象回路700は、回路素子G11と、G12と、G13と、G14と、G15と、G16と、G17と、G18と、G19と、から構成されている。
回路素子G11、G13およびG15は、図1および図10で前述したマルチプレクサーであり、入力信号によってパスの切替をおこなう素子である。具体的には、入力Cからの入力信号が「1」であった場合(D1)に入力Aからのパスを選択し、入力Cからの入力信号が「0」であった場合(D0)に入力Bからのパスを選択する。
回路素子G12およびG17は、ANDゲートであり、論理積の機能を有する論理ゲートである。具体的には、入力AおよびBからの入力信号がともに「1」であった場合、出力Xへの出力信号を「1」とする素子である。換言すれば、入力AあるいはBからの入力信号の少なくともいずれか一方が「0」であった場合、出力Xへの出力信号を「0」とする素子である。
回路素子G14は、ORゲートであり、論理和の機能を有する論理ゲートである。具体的には、入力AあるいはBからの入力信号の少なくともいずれか一方が「1」であった場合、出力Xへの出力信号を「1」とする素子である。換言すれば、入力AおよびBからの入力信号がともに「0」であった場合、出力Xへの出力信号を「0」とする素子である。
回路素子G16およびG19は、NOTゲートであり、入力信号を反転させるインバータの機能を有する論理ゲートである。具体的には、入力信号「0」に対しては出力信号を「1」とし、入力信号「0」に対しては出力信号を「0」とする。
ここで、解析対象回路700において太線で示した解析対象パス710,720は、信号を伝播する入力の組合せが存在しないフォールスパスである。解析対象パス710は、入力I2から出力O2までのパスであり、図2−1で前述した”through”を含んだ記述情報を簡略化して、「I2−G11−G12−G18−G13−G14−G15−O1」からなる記述情報によって構成される。また、解析対象パス720は、解析対象パス710と同様にして、「I2−G11−G12−G18−G13−G14−O2」からなる記述情報によって構成される。
解析対象パス710は、G11、G13およびG15を特定回路素子とするフォールスパスである。また、解析対象パス720は、G11およびG13を特定回路素子とするフォールスパスである。
具体的には、G11における入力Cからの入力信号が「1」であった場合に入力Aを通すが、NOTゲートであるG16が存在するため、G13における入力Cからの入力信号は「0」となるため、G13では、入力Aを通すことはない。
さらに、G13における入力Cからの入力信号を「1」とすれば、G13では、入力Aを通すが、NOTゲートであるG16を考慮すると、G11における入力Cからの入力信号は「0」であるため、G11では、入力Aを通すことはない。このように、G11およびG13は、信号を伝播させるため入力の組合せは存在することがなく、入力信号が矛盾し合う構成となっている。
また、G13およびG15についても同様にして、NOTゲートであるG19を考慮すると、信号を伝播させるため入力の組合せは存在することがなく、入力信号が矛盾し合う構成となっている。
つづいて、図8を用いて、この発明の実施の形態にかかるフォールスパス記述情報集合について説明する。図8は、この発明の実施の形態にかかるフォールスパス記述情報集合を示す説明図である。
図8において、フォールスパス記述情報集合800は、解析対象パス欄801における解析対象パスと、圧縮化記述情報欄802における各解析対象パスごとの圧縮化記述情報が関連づけられている。
具体的には、図7で前述した解析対象パス710,720を用いて説明すると、解析対象パス欄801に示される解析対象パス710は、「I2−G11−G12−G18−G13−G14−G15−O1」からなる記述情報によって構成され、解析対象パス710における圧縮化記述情報欄802には、矛盾し合う特定回路素子により、(G11.D1,G13.D1)および(G13.D1,G15.D1)からなる圧縮化記述情報が示されている。
また、解析対象パス欄801に示される解析対象パス720は、「I2−G11−G12−G18−G13−G14−O2」からなる記述情報によって構成され、解析対象パス720における圧縮化記述情報欄802には、矛盾し合う特定回路素子により、(G11.D1,G13.D1)からなる圧縮化記述情報が示されている。
つぎに、図9を用いて、この発明の実施の形態にかかるフォールスパス記述情報生成装置400におけるフォールスパス記述情報集合の最小化処理(図5のステップS509)手順について説明する。図9は、この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理(図5のステップS509)手順を示すフローチャートである。
図9のフローチャートにおいて、まず、圧縮化記述情報抽出部407により、図5のステップS507において記憶されたフォールスパス記述情報集合から、最も多く含まれる圧縮化記述情報を抽出する(ステップS901)。
ステップS901における圧縮化記述情報の抽出は、前述の図8を用いて説明すると、フォールスパス記述情報集合800に多く含まれる圧縮化記述情報(G11.D1,G13.D1)を抽出することである。
そして、生成部404により、ステップS901において抽出された圧縮化記述情報を要素として含む記述情報を削除する(ステップS902)ことによって、最小化フォールスパス記述情報を生成する(ステップS903)。
具体的には、ステップS901において抽出された圧縮化記述情報(G11.D1,G13.D1)を要素として含む解析対象パス710および解析対象パス720のうち、圧縮化記述情報(G11.D1,G13.D1)のみを要素として含む解析対象パス720および解析対象パス720に関連づけられた圧縮化記述情報(G11.D1,G13.D1)を削除する。
ステップS902における記述情報の削除は、たとえば、各解析対象パスにおける圧縮化記述情報に重複する記述情報がなくなるようにする構成であればよい。より具体的には、最も多くの解析対象パスに関連づけられた圧縮化記述情報のうち、生成元の解析対象パスにおける回路素子の数が多い圧縮化記述情報を残すこととしてもよい。さらに、生成元の解析対象パスにおける回路素子の数が同数であれば、生成元の解析対象パスに関連づけられた圧縮化記述情報の数を比較してもよい。
そして、図5のステップS507において記憶されたフォールスパス記述情報集合に、重複する圧縮化記述情報があるか否かを判断する(ステップS904)。ステップS904において、重複する圧縮化記述情報がある場合(ステップS904:Yes)は、ステップS901へ戻って処理を繰り返す。
また、ステップS904において、重複する圧縮化記述情報がない場合(ステップS904:No)は、そのまま図5におけるステップS509のフォールスパス記述情報集合の最小化処理を終了して、ステップS510へ移行する。
このように、この発明の実施の形態によれば、解析対象回路上に存在する解析対象パスがフォールスパスであった場合、フォールスパスに関する記述情報について、フォールスパスの原因となる特定回路素子を用いた圧縮化記述情報を生成する。したがって、解析対象パスのすべての回路素子を用いた記述情報よりも記述情報数を削減し、データ量を低減させることができる。
また、この発明の実施の形態によれば、解析対象パスが、既に生成された圧縮化記述情報を含む場合には、解析対象パスに対してフォールスパスか否かの判断をおこなわないため、フォールスパスに関して、実質的な判断をおこなわなくても簡易的な判断によって、解析対象回路に存在するパスの解析を迅速かつ効率的におこなうことができる。
また、この発明の実施の形態によれば、複数の圧縮化記述情報からなるフォールスパス記述情報集合において、適切に圧縮化記述情報を削減して最小化フォールスパス記述情報として、データ量を低減させることができる。したがって、設計者における設計期間の短縮および負担の軽減を実現することができる。
また、この発明の実施の形態によれば、フォールスパスの原因を証明する記述情報をあわせて生成するため、最小化フォールスパス記述情報によるフォールスパスの確認を容易におこなうことができる。したがって、設計者によるフォールスパス記述の確認が簡便なものとなり、設計期間の短縮および負担の軽減を実現することができる。
以上説明したように、この発明によれば、最適なフォールスパスに関する記述情報を効率的に生成することで、設計期間の短縮化および設計者の負担の低減を図ることができる。
なお、本実施の形態で説明したフォールスパス記述情報生成方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
(付記1)解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出させる解析対象パス抽出工程と、
前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断させる判断工程と、
前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定させる特定工程と、
前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成させる生成工程と、
をコンピュータに実行させることを特徴とするフォールスパス記述情報生成プログラム。
(付記2)前記生成工程は、
前記フォールスパスに関する記述情報を、前記特定工程によって特定された回路素子(以下、「特定回路素子」という)のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換させることにより、前記フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成させることを特徴とする付記1に記載のフォールスパス記述情報生成プログラム。
(付記3)前記解析対象パス抽出工程は、
前記解析対象回路に存在するパスに関する記述情報の中から、あらたな解析対象パスに関する記述情報を抽出させ、
前記判断工程は、
前記解析対象パス抽出工程によって抽出されたあらたな解析対象パスに関する記述情報に、前記生成工程によって生成された圧縮化記述情報が含まれているか否かを判断させる圧縮化記述情報判断工程をコンピュータに実行させ、
当該圧縮化記述情報判断工程によって判断された判断結果に基づいて、前記あらたな解析対象パスがフォールスパスであるか否かを判断させることを特徴とする付記2に記載のフォールスパス記述情報生成プログラム。
(付記4)前記判断工程は、
前記圧縮化記述情報判断工程により、前記圧縮化記述情報が含まれていると判断された場合、前記あらたな解析対象パスがフォールスパスであるか否かの判断をおこなわせないことを特徴とする付記3に記載のフォールスパス記述情報生成プログラム。
(付記5)前記判断工程は、
前記圧縮化記述情報判断工程により、前記圧縮化記述情報が含まれていないと判断された場合、前記あらたな解析対象パスがフォールスパスであるか否か判断させることを特徴とする付記3に記載のフォールスパス記述情報生成プログラム。
(付記6)前記生成工程によって生成された前記各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出させる圧縮化記述情報抽出工程と、
前記各解析対象パスに関する圧縮化記述情報の中から、前記圧縮化記述情報抽出工程よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定させる解析対象パス特定工程と、をコンピュータに実行させ、
前記生成工程は、
前記各解析対象パスに関する圧縮化記述情報の中から、前記解析対象パス特定工程によって特定された解析対象パスに関する圧縮化記述情報のうち前記同一の圧縮化記述情報を削除させることを特徴とする付記2〜5のいずれか一つに記載のフォールスパス記述情報生成プログラム。
(付記7)前記圧縮化記述情報抽出工程は、
前記各解析対象パスに関する圧縮化記述情報の中から、圧縮化記述情報数が最大となる解析対象パスに関する圧縮化記述情報を抽出させることを特徴とする付記6に記載のフォールスパス記述情報生成プログラム。
(付記8)前記生成工程は、
前記特定工程によって特定された回路素子のうち入力信号が矛盾し合う特定回路素子に関する記述情報に基づいて、前記フォールスパスの原因を証明する記述情報を生成させることを特徴とする付記1〜7のいずれか一つに記載のフォールスパス記述情報生成プログラム。
(付記9)付記1〜8のいずれか一つに記載のフォールスパス記述情報生成プログラムを記録したコンピュータに読み取り可能な記録媒体。
(付記10)解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出手段と、
前記解析対象パス抽出手段によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断手段と、
前記判断手段によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定手段と、
前記特定手段によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成手段と、
を備えたことを特徴とするフォールスパス記述情報生成装置。
(付記11)解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出工程と、
前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断工程と、
前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定工程と、
前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成工程と、
を含むことを特徴とするフォールスパス記述情報生成方法。
以上のように、本発明にかかるフォールスパス記述情報生成プログラム、該プログラムを記録した記録媒体、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法は、解析対象回路から検出されたフォールスパスに関する記述情報の生成に有用であり、複雑なLSI回路におけるタイミング解析を効率的におこなうための記述情報を生成する場合に適している。
この発明の実施の形態にかかるフォールスパスの概要について示す説明図である。 この発明の実施の形態にかかるフォールスパスとして検出された解析対象パスに関する記述情報を示す説明図である。 この発明の実施の形態にかかるフォールスパスに関する記述情報を示す説明図である。 この発明の実施の形態にかかるフォールスパスの原因を証明する記述情報を示す説明図である。 この発明の実施の形態にかかるフォールスパス記述情報生成装置のハードウェア構成を示すブロック図である。 この発明の実施の形態にかかるフォールスパス記述情報生成装置の機能的構成を示すブロック図である。 この発明の実施の形態にかかるフォールスパス記述情報生成装置のフォールスパス記述情報生成処理手順を示すフローチャートである。 この発明の実施の形態にかかる最小化処理後のフォールスパス記述情報集合の概要を示す説明図である。 この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理をおこなう解析対象回路を示す説明図である。 この発明の実施の形態にかかるフォールスパス記述情報集合を示す説明図である。 この発明の実施の形態にかかるフォールスパス記述情報集合の最小化処理(図5のステップS509)手順を示すフローチャートである。 解析対象回路におけるフォールスパスの概要を示す説明図である。
符号の説明
300 バス
301 CPU
302 ROM
303 RAM
304 HDD
305 HD
306 FDD
307 FD
308 ディスプレイ
309 I/F
310 キーボード
311 マウス
312 スキャナ
313 プリンタ
400 フォールスパス記述情報生成装置
401 解析対象パス抽出部
402 判断部
403 特定部
404 生成部
405 フォールスパス判断部
406 圧縮化記述情報判断部
407 圧縮化記述情報抽出部
408 解析対象パス特定部

Claims (5)

  1. 解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出させる解析対象パス抽出工程と、
    前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断させる判断工程と、
    前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定させる特定工程と、
    前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成させる生成工程と、
    をコンピュータに実行させることを特徴とするフォールスパス記述情報生成プログラム。
  2. 前記生成工程は、
    前記フォールスパスに関する記述情報を、前記特定工程によって特定された回路素子(以下、「特定回路素子」という)のうち入力信号が矛盾し合う特定回路素子に関する記述情報に変換させることにより、前記フォールスパスに関する記述情報を圧縮化した圧縮化記述情報を生成させることを特徴とする請求項1に記載のフォールスパス記述情報生成プログラム。
  3. 前記生成工程によって生成された前記各解析対象パスに関する圧縮化記述情報の中から、任意の解析対象パスに関する圧縮化記述情報を抽出させる圧縮化記述情報抽出工程と、
    前記各解析対象パスに関する圧縮化記述情報の中から、前記圧縮化記述情報抽出工程よって抽出された圧縮化記述情報と同一の圧縮化記述情報を有する解析対象パスを特定させる解析対象パス特定工程と、を前記コンピュータに実行させ、
    前記生成工程は、
    前記各解析対象パスに関する圧縮化記述情報の中から、前記解析対象パス特定工程によって特定された解析対象パスに関する圧縮化記述情報のうち前記同一の圧縮化記述情報を削除させることを特徴とする請求項2に記載のフォールスパス記述情報生成プログラム。
  4. 解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出手段と、
    前記解析対象パス抽出手段によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断手段と、
    前記判断手段によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定手段と、
    前記特定手段によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成手段と、
    を備えたことを特徴とするフォールスパス記述情報生成装置。
  5. 解析対象パス抽出手段、判断手段、特定手段および生成手段を備えるコンピュータが、
    前記解析対象パス抽出手段により、解析対象回路に存在するパスに関する記述情報の中から、任意の解析対象パスに関する記述情報を抽出する解析対象パス抽出工程と、
    前記判断手段により、前記解析対象パス抽出工程によって抽出された解析対象パスに関する記述情報に基づいて、当該解析対象パスがフォールスパスであるか否かを判断する判断工程と、
    前記特定手段により、前記判断工程によって前記解析対象パスがフォールスパスであると判断された場合、当該解析対象パスに含まれる回路素子の中から前記フォールスパスの原因となる回路素子を特定する特定工程と、
    前記生成手段により、前記特定工程によって特定された回路素子以外の回路素子に関する記述情報を、前記解析対象パスに関する記述情報から削除することにより、前記フォールスパスに関する記述情報を生成する生成工程と、
    実行することを特徴とするフォールスパス記述情報生成方法。
JP2006056447A 2006-03-02 2006-03-02 フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法 Expired - Fee Related JP4682059B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006056447A JP4682059B2 (ja) 2006-03-02 2006-03-02 フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法
US11/521,148 US7441217B2 (en) 2006-03-02 2006-09-14 Method and apparatus for creating simplified false-path description on false path, and computer product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006056447A JP4682059B2 (ja) 2006-03-02 2006-03-02 フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法

Publications (2)

Publication Number Publication Date
JP2007233840A JP2007233840A (ja) 2007-09-13
JP4682059B2 true JP4682059B2 (ja) 2011-05-11

Family

ID=38519468

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006056447A Expired - Fee Related JP4682059B2 (ja) 2006-03-02 2006-03-02 フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法

Country Status (2)

Country Link
US (1) US7441217B2 (ja)
JP (1) JP4682059B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10275561B2 (en) * 2016-05-27 2019-04-30 Taiwan Semiconductor Manufacturing Company Limited Method for eliminating false paths of a circuit unit to be implemented using a system
CN113282246B (zh) * 2021-06-15 2023-07-04 杭州海康威视数字技术股份有限公司 数据处理方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002342403A (ja) * 2001-05-16 2002-11-29 Nec Corp フォールスパス検出装置、フォールスパス検出方法およびそのプログラム
JP2005293349A (ja) * 2004-04-01 2005-10-20 Nec Electronics Corp 回路設計支援システム、設計方法及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067383A (ja) 1999-08-26 2001-03-16 Matsushita Electric Ind Co Ltd 静的タイミング解析方法におけるフォールスパス検出方法およびフォールスパス検査方法
US6714902B1 (en) 2000-03-02 2004-03-30 Cadence Design Systems, Inc. Method and apparatus for critical and false path verification
US6952812B2 (en) * 2001-02-13 2005-10-04 Freescale Semiconductor, Inc. Design analysis tool for path extraction and false path identification and method thereof
JP4128131B2 (ja) * 2003-11-19 2008-07-30 富士通株式会社 フォールスパス検出プログラム
US7526745B2 (en) * 2004-12-08 2009-04-28 Telefonaktiebolaget L M Ericsson (Publ) Method for specification and integration of reusable IP constraints

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002342403A (ja) * 2001-05-16 2002-11-29 Nec Corp フォールスパス検出装置、フォールスパス検出方法およびそのプログラム
JP2005293349A (ja) * 2004-04-01 2005-10-20 Nec Electronics Corp 回路設計支援システム、設計方法及びプログラム

Also Published As

Publication number Publication date
JP2007233840A (ja) 2007-09-13
US7441217B2 (en) 2008-10-21
US20070220457A1 (en) 2007-09-20

Similar Documents

Publication Publication Date Title
JP4217220B2 (ja) 検証支援プログラムおよび検証支援装置
JP2007264994A (ja) 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体
JP2006252438A (ja) 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体
JP4414444B2 (ja) 遅延解析支援プログラム、該プログラムを記録した記録媒体、遅延解析支援装置、および遅延解析支援方法
JP4549280B2 (ja) 設計支援装置、設計支援方法、および設計支援プログラム
JP4682059B2 (ja) フォールスパス記述情報生成プログラム、フォールスパス記述情報生成装置およびフォールスパス記述情報生成方法
JP2006004056A (ja) レイアウト設計装置、レイアウト設計方法、レイアウト設計プログラム、および記録媒体
JP2007264993A (ja) 検証支援装置、検証支援方法、検証支援プログラム、および記録媒体
JP2006201980A (ja) カバレッジ評価装置、カバレッジ評価方法、カバレッジ評価プログラム、および記録媒体
JP5167740B2 (ja) 設計支援プログラム、設計支援装置、および設計支援方法
JP4370274B2 (ja) 検証支援装置、検証支援方法、および検証支援プログラム
US20080195985A1 (en) Apparatus, method, and computer product for estimating power consumption of LSI
US7299437B2 (en) Method and apparatus for detecting timing exception path and computer product
JP4649356B2 (ja) 消費電力算出プログラム、記録媒体、消費電力算出方法、および消費電力算出装置
JP4388847B2 (ja) レイアウト設計装置、レイアウト設計プログラム、および記録媒体
JP2008004024A (ja) レイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計装置、およびレイアウト設計方法
KR20100004930A (ko) Lsi 시험 장치, lsi 시험 방법, 및 lsi 시험 프로그램을 기록한 기록 매체
JP5263393B2 (ja) 設計支援方法、設計支援装置、および設計支援プログラム
US7694248B2 (en) Method and apparatus for supporting verification, and computer product
JP2009110380A (ja) レイアウト支援プログラム、該プログラムを記録した記録媒体、レイアウト支援装置、およびレイアウト支援方法
JP4747036B2 (ja) Lsi解析プログラム、該プログラムを記録した記録媒体、lsi解析装置、およびlsi解析方法
JP4351245B2 (ja) 遅延解析プログラム、該プログラムを記録した記録媒体、遅延解析装置および遅延解析方法
JP2006344165A (ja) レイアウト設計装置、レイアウト設計方法、レイアウト設計プログラム、および記録媒体
JP2007257375A (ja) 遅延解析プログラム、記録媒体、遅延解析方法、および遅延解析装置
JP4957641B2 (ja) 検証支援プログラム、検証支援装置、および検証支援方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110207

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140210

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees