JP4985211B2 - 論理回路のシミュレーション - Google Patents

論理回路のシミュレーション Download PDF

Info

Publication number
JP4985211B2
JP4985211B2 JP2007212127A JP2007212127A JP4985211B2 JP 4985211 B2 JP4985211 B2 JP 4985211B2 JP 2007212127 A JP2007212127 A JP 2007212127A JP 2007212127 A JP2007212127 A JP 2007212127A JP 4985211 B2 JP4985211 B2 JP 4985211B2
Authority
JP
Japan
Prior art keywords
circuit
path
logic
simulation
input
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
JP2007212127A
Other languages
English (en)
Other versions
JP2009048323A (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 JP2007212127A priority Critical patent/JP4985211B2/ja
Priority to US12/190,477 priority patent/US8307312B2/en
Publication of JP2009048323A publication Critical patent/JP2009048323A/ja
Application granted granted Critical
Publication of JP4985211B2 publication Critical patent/JP4985211B2/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

Landscapes

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

Description

本発明は論理回路のシミュレーション、特に、論理回路の一部におけるタイミング解析のためのシミュレーションを行う方法、装置およびプログラムに関する。
クロック周波数が数GHzを超えるような超高速LSI内部で使用される論理回路(繰り返し使用されるマクロを含む)においては、設計の段階において、非常に精度の高いタイミング解析(所要のタイミング条件を満たすか否かなどの解析)が求められる部分がある。そして、タイミング解析の結果に応じて、例えばドライバ回路の選択などが行なわれる。タイミング解析の手法には、業界標準のspiceを用いたシミュレーションによる解析が知られているが、この手法は非常に長い処理時間が必要であり、現状の回路構成にみられる、トランジスタの数が数100万個にも達する巨大な論理回路に対して、実用的な時間でタイミング解析を終えることは困難である。
タイミング解析方法として、次に説明をするような方法がある。まず、解析対象回路を小規模なブロックに分割する。この分割されたブロック単位にspiceシミュレーションを行い、その結果をライブラリ化する。そして、作成したブロック単位のライブラリを用いて、回路全体の静的タイミング分析(STA)を行うことにより、回路全体のタイミング解析を行うというものである。
しかし、この方法では特に高精度を求められるパスについて、十分な精度の結果が得られないことが問題となる。また、特定のパスについてのみタイミング解析を行いたい場合、回路全体を対象とする上記の方法ではパスのタイミング解析にほとんど影響のない部分についても計算を行うため、その処理時間が問題とされる。
特開平1−240998号公報 特開平10−63693号公報
したがって本発明の目的は、比較的短い処理時間で必要な部分の高精度のシミュレーションを行うことのできるシミュレーションの手法を提案することにある。
本発明によれば、論理回路のシミュレーションを行う方法であって、論理回路を複数の分割回路に分割し、論理回路の外部入力を始点とし、論理回路の外部出力を終点とする特定のパスについて、パス回路を構成する分割回路を決定し、該パス回路を構成する分割回路以外の分割回路であって、パス回路のシミュレーションの結果に影響を与える分割回路である補助分割回路を決定し、前記パス回路を構成する分割回路および補助分割回路により構成される部分回路を対象としてシミュレーションの計算を実行することを含む方法が提供される。
前記パス回路を構成する分割回路を決定することは、前記特定のパスの外部入力からフォワードトレースを行い、フォワードトレースによりトレースされるトランジスタの第1の集合を決定し、前記特定のパスの外部出力からバックトレースを行い、バックトレースによりトレースされるトランジスタの第2の集合を決定し、前記特定のパスの外部入力の値を不定とし、前記特定のパスの外部入力以外の外部入力にシミュレーション条件に相当する確定値を与えて論理回路内に回路の論理に従って値を伝播させたときに、オン/オフが不定であるトランジスタ、またはオンでありかつドレインとソースの値が共に不定であるトランジスタの第3の集合を決定し、第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路を前記パス回路を構成する分割回路と決定することを含むことが好適である。
論理回路を複数の分割回路に分割し、特定の外部入力を始点とし特定の外部出力を終点とするパスについて抜き出したパス回路を対象としてタイミング解析を行うことにより、シミュレーション演算の対象となる回路の規模やシミュレーションパターン数が大幅に削減され、高精度のタイミング解析を行うことができるspiceシミュレーションを適用したとしても、実用的な時間でタイミング解析を終えることができる。
図1は本発明の一実施形態に係り、spice等による高精度のシミュレーションを実行するために、目的とするタイミング解析に最低限必要な部分回路を抜き出す処理を行うシステムの概略構成を示すブロック図である。
回路全体のネットリスト10は、例えばSPICEなどで記述された、図2に示すようなトランジスタ、抵抗、容量などの回路要素の接続関係を示すネットリストである。パス経由内部ノード指定情報12は、任意のノードを経由するパスをシミュレーションの対象とする場合に、ユーザが指定した内部ノードを特定する情報である。以下、ユーザに指定された内部ノードを「特定ノード」と称する。パス始終点検出装置14は、後に詳述する手法により、回路全体のネットリスト10とパス経由内部ノード指定情報12とから、タイミング解析の対象となるパスの始点と終点を特定するパス始終点指定情報16を決定する。
後述するように、パス経由内部ノード指定情報12からパスの始点と終点を決定する代わりに、ユーザがシミュレーションの対象となるパスの始点と終点を直接指定することもできる。この場合には、パス経由内部ノード指定情報12は不要となる。
パス抜き出し装置18は、回路全体のネットリスト10と、パス始終点指定情報16と、パスの始点を除く外部入力端への入力値の組み合わせからなるシミュレーション信号パターン20とから、タイミング解析を行うパスを抜き出す。シミュレーション信号パターン20は、シミュレーション条件に相当する。具体的には、パス抜き出し装置18は、特定の条件に基づいて、回路全体のネットリスト10からタイミング解析に必要な回路部分のみを抜き出して、パス回路のネットリスト22およびシミュレーション補助情報24として出力する。
パス回路のネットリスト22は、パス抜き出し装置18により抜き出されたパスを構成する回路要素の接続関係を示すものである。また、シミュレーション補助情報24は、抜き出されたパスに接続される回路に関する情報を示す。
図3は、図1のパス始終点検出装置14およびパス抜き出し装置18における処理の一例を示すフローチャートである。ステップ1000において、ネットリスト10により特定される論理回路全体が、図4において破線で示すように、複数のブロック(分割回路)30〜39に分割される。分割の単位としては、例えば、NOT,NAND,ORなどの機能レベルにおいて機能ごとに分割する。図4には図の簡単化のために分割回路が10個しか示されていないが、上記の機能レベルの機能ごとに分割されるため、実際の巨大な論理回路は著しく多数の分割回路に分割されることになる。
図3のステップ1002において、図5の(a)欄に示すような、配線の抵抗および容量を表わす抵抗、容量を含むレイアウトレベルから抵抗、容量などを除いて、(b)欄に示すようなスケマレベルへの変換が行なわれる。シミュレーションの対象となる内部ノードが指定されている場合には、ステップ1004において、指定された内部ノードに基づき、後述する処理により、パス入力ピンを検出し、ステップ1006において、パス出力ピンを検出する。一方、前述したように、パスの始点となるパス入力ピンと終点になるパス出力ピンをユーザが直接指定する場合には、ステップ1004,1006の処理はこのユーザによる指定によって代替される。
ステップ1008において、ステップ1004で検出された、またはユーザにより直接指定されたパス入力ピンを開始点として、図6に示すようにフォワードトレースが行なわれる。その後、ステップ1010において、図7に示すようにパス出力ピンを開始点としてバックトレースが行なわれる。図6および図7は、検出された、またはユーザにより指定されたパス入力ピンおよびパス出力ピンがそれぞれ外部入力ピン40および外部出力ピン42である場合の、フォワードトレースおよびバックトレースの様子を概念的に示している。実際のフォワードトレースおよびバックトレースは各分割回路内および分割回路間の結線に沿って行なわれる。分割回路を構成する各トランジスタにおいては、図8に示すように、G(ゲート)→S(ソース)の方向、G→D(ドレイン)の方向、S→Dの方向またはD→Sの方向にフォワードトレースが継続する。同様に、図9に示すように、S→G,D→G,S→DまたはD→Sの方向にバックトレースが継続する。そして、これらフォワードトレースされたトランジスタが、パス回路を構成するトランジスタの第1の候補として記憶される。同様に、バックトレースされたトランジスタが、パス回路を構成するトランジスタの第2の候補として記憶される。
ステップ1012において、パスの始点となる入力ピン40に不定値Xを与え、それ以外の入力ピン44,46,48には、シミュレーション条件に相当する確定値0または1を与えて、回路の論理に従って回路内に確定値(および不定値)を伝播させる。例えば、分割回路“AND”に確定値“0”と不定値“X”が入力されていれば、ANDの論理によりその出力には確定値“0”が伝播され、分割回路“AND”に確定値“1”と不定値“X”が入力されていれば、その出力には不定値“X”が伝播される。図10には、各分割回路を経て確定値0または1が伝播される様子が矢印で示されている。この結果、図11の(a)欄に示すように、ゲート端子の値が不定値Xであるためにオン/オフが確定しないトランジスタ、または、(b)(c)欄に示すように、オンに確定していてもドレイン端子にもソース端子にも確定した値が現れないトランジスタが、パス回路を構成するトランジスタの第3の候補として記憶される。なお、図10には、0または1の確定値が伝播する様子が概念的に示されており、分割回路30,31,32,35に、確定値が有効に到達しないトランジスタ(オン/オフが確定しないトランジスタ、またはオンで確定していてもドレイン端子にもソース端子にも確定値が現われないトランジスタ)が存在していることを示している。例えば分割回路30では確定値が何ら入力されず、分割回路31では確定値が入力されるものの確定値が出力されていないが、このことは分割回路30,31に確定値が有効に到達しないトランジスタが存在していることを表わしている。
そして、ステップ1014において、第1〜第3の候補のいずれにも含まれるトランジスタ、すなわち、フォワードトレースにおいてトレースされ、バックトレースにおいてもトレースされ、かつ確定値が有効に到達しないトランジスタを少なくとも1つ含んでいる分割回路を抜き出すことによって、パス回路を構成する分割回路が抜き出される。
図12は図6のフォワードトレース、図7のバックトレース、および図10の確定値伝播の結果を重ねて、フォワードトレースおよびバックトレースのいずれもがトレースする経路を細い実線の矢印で示し、フォワードトレースおよびバックトレースのいずれか一方のみがトレースする経路を点線の矢印で示し、確定値が伝播する経路を太い実線の矢印で示す。図12は、分割回路30,31,32にフォワードトレースによってもバックトレースによってもトレースされるトランジスタが存在し、分割回路30,31,32,35に、確定値が有効に到達しないトランジスタが存在することを示している。したがって、前述のステップ1014の処理により、図13に示すように、分割回路30,31,32から成るパス回路50が抜き出される。
なお、確定値の伝播のみによってパス回路を構成する分割回路を決定するとすれば、図12において分割回路35内に確定値が有効に到達しないトランジスタが存在することにより、入力ピン40を始点とし出力ピン42を終点とするパス上にない分割回路35が、パス回路を構成する分割回路として余計に抜き出されることになる。
また、図12および図13に示した例では、フォワードトレースとバックトレースと組み合わせのみでも、パス回路を構成する分割回路30,31,32を適切に抜き出すことができる。しかしながら、図14に示すように、入力ピン44をパスの始点とし、出力ピン45をパスの終点とする場合には、フォワードトレースとバックトレースのAND条件のみでは、パス回路を構成する分割回路として、分割回路33,34,31,35の他に分割回路38が抜き出される。しかし、分割回路34から分割回路38へ確定値が入力される結果、分割回路38内のすべての経路において値が確定する。換言すれば、分割回路38内のトランジスタはいずれも図11(a)〜(c)のいずれにも該当しない。したがって、パス回路の抜き出しに確定値伝播の条件を付加することにより、分割回路38はパス回路から除外される。なお、分割回路34については、値が確定しない経路が残っており、図11(a)〜(c)のいずれかに該当するトランジスタが存在するので、確定値伝播の条件を付加しても、パス回路から除外されない。
図3のステップ1016において、シミュレーション補助情報が抜き出される。このシミュレーション補助情報とは、ステップ1014において抜き出されたパス回路を構成する各分割回路の入出力端子のうち、パス回路に含まれない分割回路に接続される入出力端子に付加する回路の情報である。抜き出されたパス回路のみについてタイミング解析を行うと、その周辺の回路による信号遅延の影響が無視されて解析結果の精度が低下する可能性があるので、パス回路にこれら周辺回路を付加することによりタイミング解析精度を向上させることができる。
例えば図13のパス回路50の例では、図15に示すように、分割回路34と分割回路35が補助情報として抜き出される。そして、分割回路34はパス回路50に含まれる分割回路31の入力に接続されているので、分割回路34の入力は、ステップ1012における確定値の伝播により得られる値で0または1にクリップされる。
この様にして抽出したパス回路のネットリスト22とシミュレーション補助情報24(図1)で構成される回路、すなわち図15の例では分割回路30,31,32,34,35で構成される部分回路を対象としてSPICEシミュレーションを行うことにより、実用的な時間で高い精度のタイミング解析を行うことができる。
シミュレーションの対象となるパスの始点と終点が指定される代わりに、シミュレーションの対象となる内部ノードを指定することもできる。内部ノードが指定される場合の、ステップ1004におけるパス入力ピンの検出は、図16に示すように、指定された内部ノード52からバックトレースを行い、到達した外部入力ピン40,44,46をパス入力ピンとすることにより行う。また、ステップ1006のパス出力ピンの検出は、図17に示すように、指定された内部ノード52からフォワードトレースを行い、到達した外部出力ピン42,43をパス出力ピンとすることにより行う。
上記のようにして決定された外部入力ピンと外部出力ピンが、図16、図17に示した例のように、複数存在する場合には、ステップ1008,1010,1012,1014において、以下の様にしてパス回路を決定する。
すなわち、内部ノードからのバックトレースの結果複数のパス入力ピンが存在する場合には、ステップ1008においてそれらパス入力ピンのそれぞれからフォワードトレースを行って、トレースされるトランジスタを決定する。同様に内部ノードからのフォワードとレースの結果複数のパス出力ピンが存在する場合には、ステップ1010においてそれらパス出力ピンのそれぞれからバックトレースを行って、トレースされるトランジスタを決定する。
また、ステップ1012においては、内部ノードからのバックトレースの結果得られた1つまたは複数のパス入力ピンに不定値Xを与え、それ以外の外部入力ピンに確定値0または1を与えて伝播させる。
ステップ1014においては、内部ノードからのバックトレースの結果得られたパス入力ピンからのフォワードトレース、内部ノードからのフォワードトレースの結果得られたパス出力ピンからのバックトレースのいずれにおいてもトレースされ、かつ、確定値が有効に到達しないトランジスタを少なくとも1つ含んでいる分割回路が抜き出される。図16、図17に示した例では、図中に示された分割回路のほとんどが抜き出される結果となるが、実際の大規模な論理回路では著しく多数の分割回路に分割されることになるので、部分回路の抜き出しにより実用的な時間でタイミング解析を行うことが可能になる。
図18は、抜き出された部分回路を対象としてシミュレーションを行うタイミング解析装置(シミュレータ)を含む、シミュレーションシステム全体の構成の概略を示すブロック図である。
パス抽出装置18’は、図3を参照して説明した手順に従って、回路全体のネットリスト10、パス始終点指定情報16またはパス経由内部ノード指定情報12、およびシミュレーション信号パターン20から部分回路を抜き出して、パス回路のネットリスト22およびシミュレーション補助情報24を決定する。タイミング解析装置(シミュレータ)60は、抜き出された部分回路に対して例えばSPICEシミュレーションによりタイミング解析を行って、タイミング解析結果52を出力する。
前述したシステムは、コンピュータと、図3のフローチャートを参照しつつ説明した処理をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体とにより実現することができる。
本発明の一実施例に係るシステムの概略構成を示すブロック図である。 レイアウトレベルのネットリストを説明するための図である。 図1のシステムの動作の一例を説明するフローチャートである。 分割回路への分割を説明する図である。 レイアウトレベルからスケマレベルへの変換を説明する図である。 フォワードトレースの一例を説明する図である。 バックトレースの一例を説明する図である。 トランジスタにおけるフォワードトレースを説明する図である。 トランジスタにおけるバックトレースを説明する図である。 確定値伝播の一例を示す図である。 確定値が有効に到達しないトランジスタの例を説明する図である。 パス回路の抜き出しを説明するための図である。 抜き出されたパス回路の一例を示す図である。 フォワードトレースとバックトレースの組み合わせのみでは不充分な例を示す図である。 補助情報の抜き出しの一例を示す図である。 バックトレースによるパス入力ピンの決定を説明する図である。 フォワードトレースによるパス出力ピンの決定を説明する図である。 本発明の他の実施形態に係るシステムの概略構成を示すブロック図である。

Claims (11)

  1. 論理回路のシミュレーションを行う方法であって、コンピュータを用いて、
    論理回路を複数の分割回路に分割し、
    論理回路の少なくとも1つの回路の入力を始点とし、論理回路の少なくとも1つの回路の出力を終点とする特定のパスについて抜き出したパス回路のシミュレーションの結果に影響を与える分割回路を決定し、
    前記パス回路を構成する分割回路により構成される部分回路を対象としてシミュレーションの計算を実行し、
    前記パス回路のシミュレーションの結果に影響を与える分割回路を決定することは、
    前記特定のパスの前記入力からフォワードトレースを行い、フォワードトレースによりトレースされるトランジスタの第1の集合を決定し、
    前記特定のパスの前記出力からバックトレースを行い、バックトレースによりトレースされるトランジスタの第2の集合を決定し、
    前記入力からバックトレースにより到達する前記論理回路の外部入力の値を不定とし、前記外部入力以外の外部入力にシミュレーション条件に相当する固定の論理値1または0を与えて論理回路内に回路の論理に従って値を伝播させたときに、オン/オフが不定であるトランジスタ、またはオンでありかつドレインとソースの値が共に不定であるトランジスタの第3の集合を決定し、
    第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路を前記パス回路を構成する分割回路と決定することを含む方法。
  2. 前記パス回路のシミュレーションの結果に影響を与える分割回路を決定することは、
    前記第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路のいずれかの入力に接続された出力を有する分割回路であってその入力にシミュレーション条件に相当する固定の論理値1または0が与えられたもの、および、前記第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路のいずれかの出力に接続された入力を有する分割回路も前記パス回路のシミュレーションの結果に影響を与える分割回路の対象と決定することを含む請求項に記載の方法。
  3. 論理回路内の指定されたノードからバックトレースすることにより、前記特定のパスの少なくとも1つの外部入力を決定し、
    該指定されたノードからフォワードトレースすることにより、前記特定のパスの少なくとも1つの外部出力を決定することをさらに含む請求項1または2記載の方法。
  4. 論理回路のシミュレーションを行うシミュレーション装置であって、
    論理回路を複数の分割回路に分割する手段と、
    論理回路の少なくとも1つの回路の入力を始点とし、論理回路の少なくとも1つの回路の出力を終点とする特定のパスについて抜き出したパス回路のシミュレーションの結果に影響を与える分割回路を決定する手段と、
    前記パス回路を構成する分割回路により構成される部分回路を対象としてシミュレーションの計算を実行する手段とを含み、
    前記パス回路のシミュレーションの結果に影響を与える分割回路を決定する手段は、
    前記特定のパスの前記入力からフォワードトレースを行い、フォワードトレースによりトレースされるトランジスタの第1の集合を決定する手段と、
    前記特定のパスの前記出力からバックトレースを行い、バックトレースによりトレースされるトランジスタの第2の集合を決定する手段と、
    前記入力からバックトレースにより到達する前記論理回路の外部入力の値を不定とし、前記外部入力以外の外部入力にシミュレーション条件に相当する固定の論理値1または0を与えて論理回路内に回路の論理に従って値を伝播させたときに、オン/オフが不定であるトランジスタ、またはオンでありかつドレインとソースの値が共に不定であるトランジスタの第3の集合を決定する手段と、
    第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路を前記パス回路を構成する分割回路と決定する手段を含む装置。
  5. 前記パス回路のシミュレーションの結果に影響を与える分割回路を決定する手段は、
    前記第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路のいずれかの入力に接続された出力を有する分割回路であってその入力にシミュレーション条件に相当する固定の論理値1または0が与えられたもの、および、前記第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路のいずれかの出力に接続された入力を有する分割回路も前記パス回路のシミュレーションの結果に影響を与える分割回路の対象と決定する請求項に記載の装置。
  6. 論理回路内の指定されたノードからバックトレースすることにより、前記特定のパスの少なくとも1つの外部入力を決定する手段と、
    該指定されたノードからフォワードトレースすることにより、前記特定のパスの少なくとも1つの外部出力を決定する手段とをさらに含む請求項4または5記載の装置。
  7. 論理回路のシミュレーションを行う方法であって、コンピュータを用いて、
    前記論理回路を複数の分割回路に分割し、
    前記論理回路の少なくとも1つの回路の入力を始点として、前記論理回路を第1の方向にトレースし、
    前記論理回路の少なくとも1つの回路の出力を終点として、前記論理回路を第2の方向にトレースし、
    前記入力からバックトレースにより到達する前記論理回路の外部入力の値を不定とし、前記外部入力以外の外部入力にシミュレーション条件に相当する固定の論理値1または0を与えて論理回路内に回路の論理に従って値を伝播させたときに、前記分割回路中における、論理が確定しない素子の有無を判別し、
    前記第1の方向へのトレースによりトレースされた第1の素子群と、前記第2の方向へのトレースによりトレースされた第2の素子群と、前記論理が確定しない第3の素子群のいずれにも属する素子を含む分割回路を、前記入力を始点とし前記出力を終点とするパスについて抜き出したパス回路を構成する分割回路として抽出し、
    前記パス回路を構成する分割回路から構成される部分回路を対象としてシミュレーションを実行する、シミュレーション方法。
  8. 前記シミュレーション方法において、
    前記パス回路の始点あるいは終点を除く前記パス回路を構成する分割回路の端子に接続され、且つ前記パス回路を構成する分割回路を構成しない分割回路である補助分割回路を抽出し、
    前記分割回路および前記補助分割回路より構成される部分回路を対照としてシミュレーションを実行することを特徴とする、請求項に記載のシミュレーション方法。
  9. 前記シミュレーション方法において、
    前記論理回路を構成する任意のノードから第2の方向にトレースを行って、1または複数の外部入力を抽出し、
    前記任意のノードから第1の方向にトレースを行って、1または複数の外部出力を抽出し、
    前記抽出された外部入力を始点として第1の方向にトレースを行うとともに、前記抽出された外部出力を終点として第2の方向にトレースを行うように構成されることを特徴とする、請求項に記載のシミュレーション方法。
  10. 論理回路のシミュレーションを行うプログラムであって、
    論理回路を複数の分割回路に分割するステップと、
    論理回路の少なくとも1つの回路の入力を始点とし、論理回路の少なくとも1つの回路の出力を終点とする特定のパスについて抜き出したパス回路のシミュレーションの結果に影響を与える分割回路を決定するステップと、
    前記パス回路を構成する分割回路により構成される部分回路を対象としてシミュレーションの計算を実行するステップと、をコンピュータが実行し、且つ、
    前記パス回路のシミュレーションの結果に影響を与える分割回路を決定するステップは、
    前記特定のパスの前記入力からフォワードトレースを行い、フォワードトレースによりトレースされるトランジスタの第1の集合を決定するステップと、
    前記特定のパスの前記出力からバックトレースを行い、バックトレースによりトレースされるトランジスタの第2の集合を決定するステップと、
    前記入力からバックトレースにより到達する前記論理回路の外部入力の値を不定とし、前記外部入力の外部入力にシミュレーション条件に相当する固定の論理値1または0を与えて論理回路内に回路の論理に従って値を伝播させたときに、オン/オフが不定であるトランジスタ、またはオンでありかつドレインとソースの値が共に不定であるトランジスタの第3の集合を決定するステップと、
    第1〜第3の集合のいずれにも属するトランジスタを少なくとも1つ含む分割回路を前記パス回路を構成する分割回路と決定するステップとを、コンピュータが実行する、論理回路のシミュレーションを行うプログラム。
  11. 論理回路のシミュレーションを行うプログラムであって、
    前記論理回路を複数の分割回路に分割するステップと、
    前記論理回路の少なくとも1つの回路の入力を始点として、前記論理回路を第1の方向にトレースするステップと、
    前記論理回路の少なくとも1つの回路の出力を終点として、前記論理回路を第2の方向にトレースするステップと、
    前記入力からバックトレースにより到達する前記論理回路の外部入力の値を不定とし、前記外部入力以外の外部入力にシミュレーション条件に相当する固定の論理値1または0を与えて論理回路内に回路の論理に従って値を伝播させたときに、前記分割回路中における、論理が確定しない素子の有無を判別するステップと、
    前記第1の方向へのトレースによりトレースされた第1の素子群と、前記第2の方向へのトレースによりトレースされた第2の素子群と、前記論理が確定しない第3の素子群のいずれにも属する素子を含む分割回路を、前記入力を始点とし前記出力を終点とするパスについて抜き出したパス回路を構成する分割回路として抽出するステップと、
    前記パス回路を構成する分割回路から構成される部分回路を対象としてシミュレーションを行うステップと、をコンピュータが実行して、論理回路のシミュレーションを行うプログラム。
JP2007212127A 2007-08-16 2007-08-16 論理回路のシミュレーション Expired - Fee Related JP4985211B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007212127A JP4985211B2 (ja) 2007-08-16 2007-08-16 論理回路のシミュレーション
US12/190,477 US8307312B2 (en) 2007-08-16 2008-08-12 Simulation method of logic circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007212127A JP4985211B2 (ja) 2007-08-16 2007-08-16 論理回路のシミュレーション

Publications (2)

Publication Number Publication Date
JP2009048323A JP2009048323A (ja) 2009-03-05
JP4985211B2 true JP4985211B2 (ja) 2012-07-25

Family

ID=40363633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007212127A Expired - Fee Related JP4985211B2 (ja) 2007-08-16 2007-08-16 論理回路のシミュレーション

Country Status (2)

Country Link
US (1) US8307312B2 (ja)
JP (1) JP4985211B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9331066B2 (en) * 2014-01-24 2016-05-03 Taiwan Semiconductor Manufacturing Company Ltd. Method and computer-readable medium for detecting parasitic transistors by utilizing equivalent circuit and threshold distance

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01240998A (ja) 1988-03-22 1989-09-26 Fujitsu Ltd 伝搬遅延時間算出方式
US5768159A (en) * 1996-05-02 1998-06-16 Northern Telecom Limited Method of simulating AC timing characteristics of integrated circuits
JPH1063693A (ja) 1996-08-20 1998-03-06 Hitachi Ltd 論理回路の信号遅延時間計算方法および遅延時間の表示方法
JP3851357B2 (ja) * 1997-08-20 2006-11-29 株式会社ルネサステクノロジ トランジスタ回路のタイミング特性抽出方法、タイミング特性ライブラリを記憶した記憶媒体、lsiの設計方法、及びゲート抽出方法
JP3862882B2 (ja) * 1998-02-13 2006-12-27 株式会社東芝 回路データ縮約方法及び回路シミュレーション方法
JP2001076020A (ja) 1999-09-02 2001-03-23 Fujitsu Ltd 活性化パスシミュレーション装置及び活性化パスシミュレーション方法
US7451412B2 (en) * 2005-08-04 2008-11-11 Synopsys, Inc. Speeding up timing analysis by reusing delays computed for isomorphic subcircuits

Also Published As

Publication number Publication date
US8307312B2 (en) 2012-11-06
JP2009048323A (ja) 2009-03-05
US20090048818A1 (en) 2009-02-19

Similar Documents

Publication Publication Date Title
US9218440B2 (en) Timing verification of an integrated circuit
US5946475A (en) Method for performing transistor-level static timing analysis of a logic circuit
US20140325460A1 (en) Method for simulation of partial vlsi asic design
US8522182B2 (en) Generation of an end point report for a timing simulation of an integrated circuit
CN105138769A (zh) 一种用于可编程电路的时序模型生成方法及装置
US20190018917A1 (en) Hybrid timing analysis method and associated system and non-transitory computer readable medium
Jou et al. Coverage analysis techniques for hdl design validation
CN107844678B (zh) 包含IP/Memory时序路径的spice仿真方法
KR100749753B1 (ko) 게이트 레벨에서의 동적 시뮬레이션 방법, 게이트 레벨의 시뮬레이션 장치, 집적 회로의 디자인 방법, 전압 섬을 포함하는 집적 회로 칩에 대한 디자인 방법 및 칩 설계 방법
US8306802B2 (en) Method for modeling an HDL design using symbolic simulation
KR20040063846A (ko) 다양한 검증 플랫폼들의 통합 사용을 지원하는 검증 장치및 이를 이용한 검증 방법
CN107784185B (zh) 一种门级网表中伪路径的提取方法、装置及终端设备
CN111624475B (zh) 大规模集成电路的测试方法及系统
US9058452B1 (en) Systems and methods for tracing and fixing unknowns in gate-level simulation
US9104829B2 (en) Method of validating timing issues in gate-level simulation
US8392776B2 (en) Delay fault diagnosis program
JP4985211B2 (ja) 論理回路のシミュレーション
US12073159B2 (en) Computing device and method for detecting clock domain crossing violation in design of memory device
JP2009140222A (ja) Lsiの電力見積方法及びその装置
US8555228B2 (en) Tool for glitch removal
Jiang et al. Estimating likelihood of correctness for error candidates to assist debugging faulty HDL designs
US20090144044A1 (en) Logic simulator and logic simulation method
US9710579B1 (en) Using smart timing models for gate level timing simulation
US10853546B1 (en) Method and system for sequential equivalence checking
CN115983171B (zh) 用于对片上系统进行后仿真的方法和仿真平台

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100517

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111220

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120220

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: 20120403

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: 20120416

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: 20150511

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees