JP2006146595A - 遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置 - Google Patents

遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置 Download PDF

Info

Publication number
JP2006146595A
JP2006146595A JP2004336330A JP2004336330A JP2006146595A JP 2006146595 A JP2006146595 A JP 2006146595A JP 2004336330 A JP2004336330 A JP 2004336330A JP 2004336330 A JP2004336330 A JP 2004336330A JP 2006146595 A JP2006146595 A JP 2006146595A
Authority
JP
Japan
Prior art keywords
circuit
transistor
simulation
interest
partial
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.)
Granted
Application number
JP2004336330A
Other languages
English (en)
Other versions
JP4313288B2 (ja
Inventor
Taisuke Abe
泰典 阿部
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 JP2004336330A priority Critical patent/JP4313288B2/ja
Priority to US11/066,430 priority patent/US7689401B2/en
Publication of JP2006146595A publication Critical patent/JP2006146595A/ja
Application granted granted Critical
Publication of JP4313288B2 publication Critical patent/JP4313288B2/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)

Abstract

【課題】出力負荷を適切に近似して行うためのシミュレーション方法、及び、関連するプログラム、シミュレーション装置を提供する。
【解決手段】論理回路を複数の部分回路に分割するモデル生成機能111と、分割された複数の部分回路のうち、着目回路と後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能112と、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続して前記負荷回路を簡略化する簡略化機能113と、前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能114とを有するシミュレーション装置を提供する。
【選択図】図3

Description

本発明は、LSI(Large Scale Integration)における回路の遅延特性評価のための回路シミュレーション方法に関し、特に、回路を簡略化してシミュレーションを行う方法、及び、関連するプログラム、装置に関する。
集積回路における遅延特性を評価する方法として、集積回路から部分回路を切り出し、切り出された部分回路(着目ブロックと呼ぶ)毎に、遅延特性評価を行うことが知られている。集積回路から部分回路を切り出すには、例えば、トランジスタのドレインを起点として、電源またはゲートまで接続されているトランジスタ及び抵抗をソース接続デバイス群(Source Connected device Cluster、以下SCC)とするとき、ゲート入力を境目として分割するSCC境界法によって集積回路を分割する。
この場合、着目ブロックの出力側端子に接続される回路(以下、出力負荷回路)を着目ブロックと同様に切り出し、両者を合わせてシミュレーションに使用することにより、実際の集積回路と同じ出力負荷を考慮した遅延特性評価を行うことが可能になる。しかし、着目ブロックの他に出力負荷回路を用いるとシミュレーションに使用する回路規模が大きくなりがちであり、また、着目ブロックのためだけでなく出力負荷回路のための、シミュレーション用情報(各種設定パラメータや、入力データのパターン)が必要となる。
すると、すべての入力データのパターンに対する遅延値から最大遅延となる遅延を特定しようとする場合など、シミュレーションの回数、1回のシミュレーションにかかる時間が増大してしまう。そこで、出力負荷回路を簡略化(モデル化)することで、シミュレーションの回路規模を縮小したり、シミュレーション用情報を削減したりすることが行われている。
例えば、着目ブロックの出力がゲート入力となっているトランジスタとその寄生容量だけを切り出し、切り出されたトランジスタのソースとドレインとを短絡するモデリングや、切り出されたトランジスタのソースとドレイン間に固定電位を与えたりするモデリングが適用される。
なお、関連する従来技術として、特許文献1には大規模な集積回路に対するタイミング検証方法が記載される。
特開平11−296572号公報
しかし、従来技術における簡略化においては、トランジスタのオンオフの状態を切替えるスイッチングの過程で、ドレインとソース間の容量が大きくなり、電圧がほとんど変化しなくなるミラー効果と同様の現象が生じてしまうため、出力負荷が実際より過少に見積もられてしまうという課題を有していた。
そこで、本発明の目的は、LSIにおける遅延特性評価のための回路シミュレーションにおいて、出力負荷を(過少評価することなく)適切に近似して行うためのシミュレーション方法、及び、関連するプログラム、シミュレーション装置を提供することにある。
上記目的は、本発明の第一の側面として、論理回路の遅延特性を評価するためのシミュレーションを処理するシミュレーション装置であって、予め、シミュレーションプログラムが格納される記憶部と、前記記憶部から前記シミュレーションプログラムを読み出して実行する制御部とを有し、前記制御部は、前記論理回路を複数の部分回路に分割するモデル生成機能と、分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能と、前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化する簡略化機能と、前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能と、前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成機能とを前記シミュレーションプログラムを実行して実現することを特徴とするシミュレーション装置を提供することにより達成される。
また、上記目的は、第二の側面として、論理回路の遅延特性を評価するためのシミュレーション装置であって、前記論理回路を複数の部分回路に分割するモデル生成部と、分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択部と、前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化部と、前記着目回路と、前記簡略部により簡略化した負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択部が選択する着目回路毎に行うシミュレーション部と、前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成部とを有することを特徴とするシミュレーション装置を提供することにより達成される。
また、上記目的は、第三の側面として、論理回路の遅延特性を評価するためのシミュレーション方法であって、前記論理回路を複数の部分回路に分割し、分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択し、前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化し、前記着目回路と、前記簡略部により簡略化した負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択部が選択する着目回路毎に行い、前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めることを特徴とするシミュレーション方法を提供することにより達成される。
また、上記目的は、第四の側面として、論理回路の遅延特性を評価するためのシミュレーションを処理するコンピュータに、前記論理回路を複数の部分回路に分割するモデル生成機能と、分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能と、前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化する簡略化機能と、前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能と、前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成機能とを実現させるためのシミュレーションプログラムを提供することにより達成される。
上記発明の第一から第四の側面においてより好ましい実施例によれば、前記仮想制御電圧源は、前記ゲート電位に対応する信号レベルがHIGHならばLOWに対応する電位を、LOWならばHIGHに対応する電位を与える。
本発明によれば、規模の大きな負荷回路を、仮想制御電圧源を用いて簡略化することによって、その負荷回路の負荷が過少に見積られることを防ぐことができる。こうして、実際の負荷回路に最大負荷となるパターンを与えた場合と同じか、それより大きな負荷でのシミュレーションが可能であり、従来技術より実際の回路に即したシミュレーションを行うことできる。
簡略化においては、負荷回路の入力端子から接続を辿るとき最初に発見されるトランジスタ以外が削除されるトランジスタ数が削減されており、シミュレーション処理を高速化することもできる。この簡略化された負荷回路は、不安定な回路ではないため、シミュレータの実装の影響によって動作が不安定になる可能性が小さい。
以下、本発明の実施の形態について図面に従って説明する。しかしながら、本発明の技術的範囲はかかる実施の形態に限定されるものではなく、特許請求の範囲に記載された発明とその均等物にまで及ぶものである。
図1は、本発明の実施形態において評価される遅延特性を説明する図である。本実施形態においては、遅延特性として、遅延時間と、入力スルー、出力スルーが評価される。図1Aは、一例として3入力のNORゲートを示している。図1Bは、その真理値表である。
図1Cは、3入力の端子I0、I1、I2のうち、端子I1、I2には固定電位を与えておき、端子I0に与える電位を変動させるときの出力変化を示すものである。この電位変動は、(I0、I1、I2)=(0、0、0)から(I0、I1、I2)=(1、0、0)への変化に対応し、図1Bを参照すれば、出力端子Outにおいて、電位変化に対応するH(High)からL(Low)への信号レベルの変化が起こることがわかる。
遅延時間は、入力端子I0に与える電位の変動時刻から、出力端子Outにおける電位の変動時刻までの時間である。より詳細には、例えば、信号レベルがLからH、又は、HからLに遷移する際の50%レベル点で遅延時間を計る。図1Cにおいて、L=0v、H=5vであれば、入力端子I0においてLからHになるとき2.5vになる時刻から、出力端子OutにおいてHからLになるとき2.5vになる時刻までの時間が遅延時間とされる。
入力スルー又は出力スルーとは、信号レベルがLからH、又は、HからLに遷移する際に、例えば、20%レベル点から80%レベル点(またはその逆に)変化するのに要する時間である。図1Cにおいて、L=0v、H=5vであれば、1vから4vへ(またはその逆)変化するのに要する時間をいう。図1Cのようなタイミングチャートにするとき、入力スルー、出力スルーの大小は、変化の傾きに表れ、傾きが大きければ、それだけ短い時間で変化するため、スルーは小さい。
ここでは、I0に与える電位を変動させたが、実際のシミュレーションにおいては、変動する電位を与える入力端子を変え、そのとき他の入力端子に与える固定電位を変え、入力スルーを変え、さまざまな入力パターンの組合せが試され、遅延時間、出力スルーの結果が蓄積される。
図2は、本発明の実施形態におけるシミュレーション装置1の構成ブロック図である。シミュレーション装置1は、デスクトップ型PC、ノートブック型PC、PDA(Personal Digital Assistance)、サーバ等の情報処理装置であって、バス34を介して互いに接続される制御部11、RAM(Random Access Memory)12、記憶部13、周辺機器接続用インタフェース(周辺機器I/F)15、情報が入力される入力部16、情報を出力し、利用者に情報を与えるための出力部17を含む。
制御部11は、図示省略されたCPU(Central Processing Unit)を含み、RAM12に格納されるプログラムを実行し、シミュレーション装置1に含まれる各部を制御する。RAM12は、シミュレーション装置1の処理における演算結果やプログラムが一時的に格納される記憶手段である。記憶部13は、ハードディスク、光ディスク、磁気ディスク、フラッシュメモリ等の不揮発性記憶手段であり、各種データやRAM12へ読み出される前のOS(Operating System)等のプログラムが格納される。
周辺機器I/F15は、シミュレーション装置1に周辺機器を接続するためのインタフェースであり、パラレルポート、USB(Universal Serial Bus)ポートや、PCIカードスロット等である。周辺機器としては、プリンタ、TVチューナ、SCSI(Small Computer System Interface)機器、オーディオ機器、ドライブ装置、メモリカードリーダライタ、ネットワークインタフェースカード、無線LANカード、モデムカード、キーボードやマウス、ディスプレイ装置など多岐に渡る。周辺機器とシミュレーション装置1との接続形態は、有線であっても無線であっても構わない。
出力部17は、情報を出力し、利用者に情報を与えるための出力手段であり、CRT(Cathode Ray Tube)、液晶ディスプレイ等ユーザに情報を提示する表示手段の他、音声によって指示や情報を読み上げて利用者に伝えるスピーカなどである。入力部16は、キーボード、マウス等ユーザの要求が入力される入力手段である。また、シミュレーション装置1は、CD(Compact Disc)、DVD(Digital Versatile Disk)、MO(Magneto-Optical)ディスク等の記憶媒体を読み出すためのドライブ装置を持つ場合がある。ドライブ装置を使用すれば、記憶媒体に格納された情報が読み出され、シミュレーション装置1に入力される。つまり、ドライブ装置も、入力部16として機能する。
図3は、本実施形態におけるシミュレーション装置1の制御部11を説明する機能ブロック図である。制御部11は、モデル生成部111、選択部112、簡略化部113、シミュレーション部114、ライブラリ生成部115を含んでいる。制御部11の各機能部は、制御部11に備えられる図示省略されたCPUで実行されるプログラムとして実現されるが、ハードウェアにより実現することも可能である。
本実施形態においては、遅延特性を評価する対象である全体回路を複数の部分回路に分割し、部分回路の遅延特性を基に、全体回路の遅延特性を評価するものである。その特徴は、部分回路の遅延特性を評価するにあたり、評価される部分回路(これを着目回路と呼ぶ)の後段の負荷回路の回路規模が大きい場合、負荷回路に含まれるトランジスタのゲート電位に応じて、そのトランジスタの出力電位を変動させることのできる仮想制御電圧源を付加することで、負荷が過少に見積られることを防ぐ点にある。なお予め、記憶部13には、遅延特性を評価する対象である全体回路のネットリストが、ゲートレベル又はトランジスタレベルで記述され格納されているものとする。
モデル生成部111は、全体回路のネットリストを基に、全体回路を複数の部分回路に分割する。例えば、トランジスタレベルで記述された全体回路において、Pチャネル型MOSトランジスタ(以下PMOSと略)とNチャネル型MOSトランジスタ(以下NMOSと略)のドレイン接続を起点として、電源(Vdd)、接地(Vss)又は、他のトランジスタのゲート端子に辿りつく接続を探索し、探索結果の接続形態に含まれる、電源、接地、トランジスタ、抵抗等をソース接続デバイス群(source connected device cluster、略してSCC)としてまとめる。こうすると、トランジスタレベルで記述された全体回路中の、トランジスタ、抵抗、線形インダクタ等を漏れなく、そして重複無く、複数のグループに分割でき、結果として、全体回路を複数の部分回路に分割することができる。なお、このSCCを用いた分割を行うに際して、全体回路がゲートレベルで記述されている場合は、モデル生成部111が、前処理として全体回路をトランジスタレベルの記述に変換すればよい。
選択部112は、複数の部分回路のうち遅延特性評価を行う対象の部分回路を着目回路として、その着目回路の後段に接続される部分回路を負荷回路として選択する。選択部112は、複数の部分回路が1回は着目回路になるように選択を行い、各着目回路に対応する負荷回路を関連付けて記憶部13に格納する。すると、着目回路と負荷回路の組が複数生成される。
選択部112は、生成された組をどの順番でシミュレーションするのが最適か決定するためトポロジーソートを行って組に順位を付け、その順位をトポロジーソート結果として記憶部13に格納しておく。トポロジーソートのアルゴリズムは、例えば、全体回路の入力端子に近い方を高い順位にする、などとすればよい。
簡略化部113は、トポロジーソート結果順にシミュレーションを行うとき、着目回路に対応付けられた負荷回路の回路規模が大きい場合に、負荷回路を上述した仮想制御電圧源を用いて簡略化する。簡略化の様子については、後述する。
シミュレーション部114は、トポロジーソート結果順にシミュレーションを行うとき、着目回路に対する入力パターンを生成し、着目回路の遅延特性を評価する。シミュレーションの結果は、記憶部13にシミュレーション結果として格納する。
ライブラリ生成部115は、シミュレーション結果として求められた部分回路の遅延特性を基に、全体回路の遅延特性を評価する。こうして、全体回路における入力端子と出力端子を結ぶ経路毎の遅延特性が評価され、結果、全体回路の遅延特性が明らかとなる。
図4は、本実施形態におけるシミュレーション装置1の動作を説明するフローチャートである。
まず、モデル生成部111が全体回路をSCCに分割する(S1)。SCCへの分割については、図3のモデル生成部111において説明した通りである。
そして、モデル生成部111は、SCCに基づき、部分回路を生成する(S2)。もちろん、最も単純な部分回路の生成法は、SCCに分割されたグループを、そのまま(1対1に対応させて)部分回路として用いることである。ステップS2が意味するところは、その他に、SCCに分割されたグループをいくつかまとめたものを部分回路として用いても良いことである。
ステップS2が完了すると、選択部112が、部分回路のトポロジーソートを行う(S3)。上述したように、選択部112は、複数の部分回路から、まず着目回路を選択し、そして、その着目回路の後段に接続される部分回路から負荷回路を選択する。選択部112は、複数の部分回路が1回は着目回路となるよう、この作業を繰り返す。そして、着目回路と負荷回路の複数の組合せを、全体回路における入力端子に近い側に位置する着目回路が、シミュレーションの順位が高くなるよう順位付けし、組合せと共にトポロジーソート結果として記憶部13に格納する。
続いて、各着目回路についてのシミュレーションが行われる。まず、未処理の着目回路があるかが判断される(S4)。部分回路の評価特性は、トポロジーソート結果に含まれる着目回路に対して行われるため、未処理の着目回路があれば、まだ、シミュレーションが完了していないことを意味する。
未処理の着目回路がある場合(S4Yes)、シミュレーション部114は、着目回路のネットリストを取得する(S5)。そして、ステップS5で取得した着目回路の前段に、すでに遅延特性評価が完了した部分回路が存在する場合、その部分回路の遅延特性を取得する(S6)。部分回路が多段に接続される場合、後段になるほど、出力スルーが所定の範囲に絞られることがある。ステップS6を行うのは、シミュレーションの完了した部分回路の出力が着目回路の入力となるため、前段の遅延特性を活用すると、次のステップで生成する入力パターンの数を減らすことができ、シミュレーションの高速化につながるためである。
ステップS6が済むと、シミュレーション部114は、入力パターンを生成する(S7)。入力パターンは、図1Cに示すように、着目回路の入力端子に対する入力情報(L、H、LからHへ変位、HからLへ変位、変位のタイミング)や、入力スルーの組合せのことである。
次に、ステップS5で取得された着目回路に対応する負荷回路が取得される(S8)。ステップS8においては、簡略化部113が負荷回路のネットリストを取得する。そして、簡略化部113は、取得した負荷回路に含まれるトランジスタ数に基づき、負荷回路規模が大きいかを判定する(S9)。トランジスタ数が所定の閾値よりも大きい場合、負荷回路規模が大きいと判定され(S9Yes)、簡略化部113は、負荷回路の簡略化を行う(S11)。ステップS10の処理は、次図5を用いて説明する。
一方、トランジスタ数が所定の閾値よりも小さい場合、負荷回路規模が小さいと判定され(S9No)、簡略化部113は、負荷回路の簡略化をせず、負荷回路の駆動パターンを決定する(S10)。負荷回路の駆動パターンの決定とは、負荷回路の入力端子に対する入力情報を与えるとき、負荷回路に含まれるトランジスタのうち導通状態が遷移する数が最大となるときの入力情報を特定し、その入力情報が与えられると仮定するときのトランジスタの状態を、シミュレーションに用いる負荷回路として決定することである。更に、導通状態が遷移するトランジスタ数が最小となるときの入力情報を特定し、その入力情報が与えられるとするときのトランジスタの状態を負荷回路として決定してもよい。前者は、最大負荷をシミュレーションすることとなり、後者は、最小負荷をシミュレーションすることになる。ここでは、最大負荷のシミュレーションを行うだけで十分である。
負荷回路は、着目回路からの出力が入力される他に、入力端子を持つ場合があるから、着目回路に対する入力パターンを考慮すると、それぞれの入力パターンに対応する負荷回路を用意する必要があり、着目回路と負荷回路の1つの組に対し、複数回のシミュレーションが必要になってしまう。そこで、ステップS10により負荷回路の駆動パターンを決定することでコノ問題が回避される。なお、後述するように、ステップS11の簡略化が行われる場合も、この問題は回避されており、着目回路と負荷回路の1つの組に対し、複数回のシミュレーションが必要になることはない。こうして、シミュレーション処理を高速化することができる。
ステップS10又はS11により、簡略化部113による処理が済むと、シミュレーション部114が、ステップS5で取得された着目回路と、ステップS10で駆動パターンが決定されるか、あるいは、ステップS11で簡略化された負荷回路とを用い、ステップS7で生成された入力パターンを着目回路に与えるときの、遅延特性(すなわち、遅延時間や出力スルー)を測定する(S12)。測定された遅延特性は、着目回路に対するシミュレーション結果として収集され、記憶部13に格納される(S13)。
このとき、シミュレーション部114は、上記ステップS6で使用するための伝播波形(ステップS5で取得された着目回路の後段側に位置する他の部分回路が着目回路として使用される場合に備えた、入力パターン生成用のデータ)を生成する(S14)。こうして、トポロジーソート結果に含まれる着目回路と負荷回路の1つの組合せに対するシミュレーションが完了し、その着目回路の遅延特性が求まる。ステップS14が済むと、再び、ステップS4に戻り、残りの組合せに対するシミュレーションが行われる。
そしてトポロジーソート結果に含まれる着目回路と負荷回路の全ての組合せに対するシミュレーションが完了すれば、未処理の着目回路がないと判断され(S4No)、続いて、ライブラリ生成部115が、部分回路の遅延特性を基に、全体回路の遅延特性を求める静的遅延解析を行い(S15)、ライブラリとして記憶部13に格納し、シミュレーションを終了する(S16)。
ステップS15における静的遅延解析では、まず、全体回路の入力端子と出力端子を接続する経路毎に、その経路に含まれる部分回路を特定し、その部分回路の遅延時間を足して、その経路の遅延時間が求められる。出力スルーに関しても、その経路に含まれる最後段の部分回路における出力スルーが、全体回路の出力スルーとして求められることになる。
図5は、負荷回路を簡略化する際の簡略化部113の動作を説明するフローチャートである。これは図4のステップS11を詳細に説明するものである。まず、着目回路に対する入力端子と、ゲート端子とが接続されるトランジスタを抽出する(S111)。抽出されたトランジスタがインバータを構成するものではない場合(S112No)、その抽出されたトランジスタのドレインにゲート電位に応じてトランジスタの出力電位を変動させる仮想制御電圧源(Virtual Control Voltage Source、以下VCVS)を追加する(S114)。本実施形態におけるVCVSは、ゲート電位に対応する信号レベルがHighならばLowに対応する電位を、LowならばHighに対応する電位を与えるものである。ステップS114におけるVCVSの接続法については、次図6にて詳述する。
抽出されたトランジスタがインバータを構成する場合(S112Yes)には、そのまま負荷回路とし、特に何も処理しない(S113)。インバータを構成するトランジスタにおいては、本発明の前提となる課題が生じないため、仮想制御電圧源の接続は必要ない。
ステップS113又はS114が済むと、着目回路に未処理の入力端子があるかを判定する(S115)。未処理の入力端子があれば(S115Yes)、ステップS111に戻り処理が続行される。着目回路のすべての入力端子に対する処理が完了すれば(S115No)、負荷回路の整形が行われる(S116)。ステップS116における回路の整形とは、ステップS111で(負荷回路の入力端子毎に)抽出されるトランジスタ以外の要素を削除することである。
図6は、仮想制御電圧源(VCVS)を接続する方法を説明する図であり、図6AはPMOSの場合、図6BはNMOSの場合をそれぞれ示す。図6Aの左図はVCVS接続前の状態を示し、図6Aの真ん中の図は、VCVS接続後の状態を示す。図6Aに示されるように、VCVSはPMOSにおける電源Vddの反対となるドレインに接続される。
図6Aの右図(括弧内の図)は、VCVS接続状態のPMOSを模式化した図である。この図において、PMOSは、ゲート電位がH(High)で接続され、ゲート電位がL(Low)で開放されるスイッチとして記載される。この図において明らかなように、ゲート電位の信号レベルがHとなりスイッチが開放されるとき、トランジスタの出力電位Voutには、信号レベルLowに対応する電位が与えられる。こうして、スイッチング時にトランジスタの出力電位Voutが変化しないという現象を避けることができ、負荷回路の負荷が過少に見積られることもない。
図6Bの右図(括弧内の図)は、VCVS接続状態のNMOSを模式化した図である。この図において、NMOSは、ゲート電位がL(Low)で接続され、ゲート電位がH(High)で開放されるスイッチとして記載される。この図において明らかなように、ゲート電位の信号レベルがLとなりスイッチが開放されるとき、トランジスタの出力電位Voutには、信号レベルHighに対応する電位が与えられる。こうして、スイッチング時にトランジスタの出力電位Voutが変化しないという現象を避けることができ、負荷回路の負荷が過少に見積られることもない。
続いて、全体回路の例を用いて、以上の処理を具体的に説明する。適宜図4を(場合によっては図5も)参照されたい。
図7は、全体回路の例を示す図である。図7は、全体回路を複数の部分回路(部分回路SCC1からSCC5まで)に分割した状態を表す。もとの全体回路から図7に示す部分回路が形成される様子は、次の通りである。
まず、全体回路をSCCに分割する(図4S1参照)。例えば、部分回路SCC1において、Pチャネル型MOSトランジスタP1とNチャネル型MOSトランジスタN1のドレイン接続となる箇所を探す。すると、接続点D1が見つかる。この接続点D1を起点として、電源Vdd、接地Vss、他のトランジスタのゲートに接続されるまで接続を辿ると、トランジスタP1を経由して上方で電源に接続され、トランジスタN1とトランジスタN2を経由して下方で接地に接続され、トランジスタP2を経由して右上方で電源に接続され、右方でトランジスタP3のゲートに接続されている。こうして、接続点D1から辿ることのできる範囲に含まれる要素がグループ化され、グループSCC1ができる。
他の箇所においても、同様にグループ化を行えば、グループSCC2からグループSCC5も同様に形成される。そして、このグループをそのまま部分回路に置き換えたものが図7である(図4S2参照)。
図4ステップS2で説明したように、SCCによるグループと部分回路を1対1に対応させなくてもよい。例えば、グループSCC3+グループSCC4を組み合わせて1つの部分回路としてもよい。
図8Aは、生成された部分回路とその接続関係を示す図である。部分回路SCC1の入力端子は、端子Q1、Q2の2つであり、出力端子は、端子Q6である。この端子Q6は、部分回路SCC4の入力端子の1つでもある。他の部分回路も同様に入力端子、出力端子を持ち、前段の部分回路の出力端子が、後段の部分回路の入力端子となっている。
図8Bは、生成された部分回路に含まれる部分経路を示す図である。部分回路SCC1には、端子Q1と端子Q6とを接続する部分経路R11と、端子Q2と端子Q6とを接続する部分経路R12とが含まれる。他の部分回路においても、入力端子と出力端子を接続する部分経路が形成される。
図8Cは、全体回路における入力端子と出力端子を接続する経路の関係を示す図である。全体回路における入力端子は、端子Q1〜Q5と端子Q9であり、出力端子は、端子Q11である。従って、全体回路における入力端子と出力端子を接続する経路としては、図8Cに示す経路PATH1〜PATH6までの6つが挙げられる。
シミュレーションの目的は、部分回路の遅延特性を基に、図8Cに示される経路の遅延特性を評価することにある。
図9は、図4のステップS3において行われるトポロジーソートの結果を示すデータ構成例である。図9のトポロジーソート結果は、「順番」「組合せ」というデータ項目を持つ。
「組合せ」は、着目回路として選択された部分回路と、その着目回路に対応付けられる負荷回路として選択された部分回路を特定する識別子である。プラス(+)記号の前が着目回路、後が負荷回路を示す。「順番」は、何番目にその組合せをシミュレーションするかを示す順位である。
図4において説明したように選択部112は、全体回路の入力端子に近い側の着目回路から順にシミュレーションが行われるよう順位付けするから、例えば、図7に示される全体回路の場合、部分回路SCC1、SCC2、SCC3、SCC4、SCC5の順に着目回路とすればよい。その時の負荷回路としては、選択部112が、単純に後段に接続される部分回路を1つ選択すればよく、その結果、図9に示すようなトポロジーソート結果が得られる。
そして、図4のステップS4〜S14において、各部分回路の遅延特性が評価される。図9に示すように、ここでは、最初に部分回路SCC1を着目回路、部分回路SCC4を負荷回路とする場合に、部分回路SCC1に図4ステップS7で生成される入力パターンを与えるときの遅延特性が評価される。
ここで、部分回路SCC4は、ドレイン出力を共有するパストランジスタの中に、別のトランジスタとソース入力を共有するパストランジスタを含んでおり、結果として回路規模が大きくなっている。一般的には、より数珠繋ぎ(daisy chain)の度合いが進む場合もある。そこで、本実施形態においては、この部分回路SCC4を負荷回路として用いる場合、図4のステップS9において回路規模が大きいと判定される結果(S9Yes)、VCVSを用いた簡略化が行われる(図4S11、図5S114)。
図10は、部分回路SCC4を負荷回路として用いる場合のVCVSを用いた簡略化の例を示す図である。部分回路SCC4に対する入力は、図8Aに示すように、端子Q6〜Q9まで4つ存在するが、トランジスタのゲート端子に接続されるのは、Pチャネル型MOSトランジスタP3に接続される端子Q6からの接続だけである(図5S111)。
そして、このPチャネル型MOSトランジスタP3は単独で存在しており、インバータを構成していないため(図5S112No)、そのドレインにVCVSが接続される(図5S114)。こうして、VCVSが接続されたPチャネル型MOSトランジスタP3以外の要素は、ステップS116において整形(削除)され、部分回路SCC1を着目回路、部分回路SCC4を負荷回路とする場合(図9における最初のデータエントリの場合)、図10に示す簡略化された負荷回路が使用されることになる。
図11は、図4ステップS14の伝播波形の生成処理を、具体例を用いて説明する図である。図11Aは、部分回路SCC1を着目回路、部分回路SCC4を負荷回路とする場合の入力スルーと出力スルーの関係の一例を示す図である。ここでは、着目回路の入力端子Q1、Q2に与える入力スルーとして、5つの入力スルーF1〜F5を用いて入力パターンが生成される。そして、シミュレーションの結果、出力端子Q6における出力スルーは、出力スルーF2、F3の2つに絞られるとする。出力スルーF2、F3は、入力スルーF2、F3と同じ波形(傾き)であるとする。
そこで、図4のステップS14においては、シミュレーション部114が、着目回路にさまざまな入力スルー(上記入力スルーF1〜F5)を与えたシミュレーションの結果生じる出力スルー(上記出力スルーF2、F3)を傾き(言い換えると、信号レベルがLからH、又は、HからLに遷移する際に、例えば、20%レベル点から80%レベル点(またはその逆に)変化するのに要する時間)あるいは波形として記憶しておく。または、取りうる出力スルーの範囲(最小値から最大値までの範囲)を記憶してもよい。
図11Bは、部分回路SCC4を着目回路、部分回路SCC5を負荷回路とする場合の入力スルーと出力スルーの関係の一例を示す図である。図9を参照すれば、着目回路SCC4をシミュレーションする前に、既に部分回路SCC1、SCC2、SCC3の遅延特性が求まっていることになる。従って、図11Bに示されるように、着目回路SCC4に対する入力パターンは、既にシミュレーションが完了している部分回路の出力スルーに絞ることができ、シミュレーション部114は、入力パターンの生成に要する時間を削減することができる。こうして、図4ステップS5で取得された着目回路の後段側に位置する他の部分回路が着目回路として使用される場合に、シミュレーション済みの部分回路の出力スルーが取り出され(図4S6)、その「他の部分回路」における入力パターン生成の処理負担が軽減される(図4S7)。
以降、図9に示されるトポロジーソートの結果に基づき、順番に着目回路の遅延特性が評価される。なお、全体回路において出力端子に最も近い部分回路SCC5は、後段に接続する部分回路がないことから、この場合だけは、動作特徴の分かっている外部負荷を用意してシミュレーションを行う。すべての着目回路に対して、ステップS4〜S14の処理が完了すれば、ライブラリ生成部115が、部分回路の遅延特性を基に全体回路の遅延特性を求める。
図12は、ライブラリ生成部115が生成するライブラリのデータ構成例である。図12のライブラリは、「経路」「入出力パターン」「最大最小」「遅延時間」「出力スルー」というデータ項目を持つ。
「経路」は、全体回路における入力端子と出力端子を接続する経路であり、図8Cに示される経路PATH1〜PATH6に対応する。「入出力パターン」は、入力と出力の対応である。例えば、「Up→Up」は、入力をLからHに変位させるとき、出力もLからHに変位するパターンを示す。「Up→Down」は、入力をLからHに変位させるとき、出力はHからLに変位するパターンを示す。残りのパターンについても同様である。
「最大最小」は、最大遅延時間と最小遅延時間を識別するフラグ情報である。「遅延時間」は、全体経路の遅延時間を示すものであり、具体的には、全体経路に含まれる各部分回路における遅延時間を足したものである。この時、各部分回路における最大遅延時間を全て足せば最大遅延時間が求まり、各部分回路における最小遅延時間をすべて足せば最小遅延時間が求まる。
「出力スルー」は、全体経路の出力スルーを示すものであり、具体的には、全体経路に含まれる部分回路の最後段(最も出力端子に近いもの)における出力スルーとして求められる。こうして、部分回路の遅延特性を基に、図8Cに示される経路の遅延特性を評価するという目的が達成されることになる。
以上に説明したように、本実施形態によれば、規模の大きな負荷回路を仮想制御電圧源を用いて簡略化することによって、その負荷回路の負荷が過少に見積られることを防ぐことができる。こうして、実際の負荷回路に最大負荷となるパターンを与えた場合と同じか、それより大きな負荷でのシミュレーションが可能であり、従来より実際の回路に即したシミュレーションを行うことできる。
簡略化においては、負荷回路の入力端子から接続を辿るとき最初に発見されるトランジスタ以外が削除されるトランジスタ数が削減されており、シミュレーション処理を高速化することもできる。この簡略化された負荷回路は、不安定な回路ではないため、シミュレータの実装の影響によって動作が不安定になる可能性が小さい。
以上まとめると付記のようになる。
(付記1)
論理回路の遅延特性を評価するためのシミュレーションを処理するシミュレーション装置であって、
予め、シミュレーションプログラムが格納される記憶部と、
前記記憶部から前記シミュレーションプログラムを読み出して実行する制御部とを有し、
前記制御部は、
前記論理回路を複数の部分回路に分割するモデル生成機能と、
分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能と、
前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化する簡略化機能と、
前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能と、
前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成機能とを前記シミュレーションプログラムを実行して実現することを特徴とするシミュレーション装置。
(付記2)
付記1において、
前記仮想制御電圧源は、前記ゲート電位に対応する信号レベルがHIGHならばLOWに対応する電位を、LOWならばHIGHに対応する電位を与えることを特徴とするシミュレーション装置。
(付記3)
付記1において、
前記制御部は、前記着目回路の出力端子を介して駆動されるトランジスタがインバータの一部である場合、簡略化を行わないことを特徴とするシミュレーション装置。
(付記4)
付記1において、
前記制御部は、更に、前記負荷回路の入力端子を介して駆動されるトランジスタであって、前記着目回路の出力端子を介して駆動されるトランジスタ以外のものを特定し、該特定されたトランジスタに対し前記簡略化を施すことを特徴とするシミュレーション装置。
(付記5)
付記1において、
前記制御部は、前記負荷回路に含まれる要素のうち、前記着目回路の出力端子を介して駆動されるトランジスタを除いた要素を削除して、負荷回路を整形することを特徴とするシミュレーション装置。
(付記6)
論理回路の遅延特性を評価するためのシミュレーション装置であって、
前記論理回路を複数の部分回路に分割するモデル生成部と、
分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択部と、
前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化部と、
前記着目回路と、前記簡略部により簡略化した負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択部が選択する着目回路毎に行うシミュレーション部と、
前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成部とを有することを特徴とするシミュレーション装置。
(付記7)
論理回路の遅延特性を評価するためのシミュレーション方法であって、
前記論理回路を複数の部分回路に分割し、
分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択し、
前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、
該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、
前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化し、
前記着目回路と、前記簡略部により簡略化した負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択部が選択する着目回路毎に行い、
前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めることを特徴とするシミュレーション方法。
(付記8)
付記7において、
前記仮想制御電圧源は、前記ゲート電位に対応する信号レベルがHIGHならばLOWに対応する電位を、LOWならばHIGHに対応する電位を与えることを特徴とするシミュレーション方法。
(付記9)
付記7において、
前記着目回路の出力端子を介して駆動されるトランジスタがインバータの一部である場合、簡略化が行われないことを特徴とするシミュレーション方法。
(付記10)
付記7において、
更に、前記負荷回路の入力端子を介して駆動されるトランジスタであって、前記着目回路の出力端子を介して駆動されるトランジスタ以外のものを特定し、
該特定されたトランジスタに対し前記簡略化を施すことを特徴とするシミュレーション方法。
(付記11)
付記7において、
更に、前記負荷回路に含まれる要素のうち、前記着目回路の出力端子を介して駆動されるトランジスタを除いた要素を削除して、負荷回路を整形することを特徴とするシミュレーション方法。
(付記12)
論理回路の遅延特性を評価するためのシミュレーションを処理するコンピュータに、
前記論理回路を複数の部分回路に分割するモデル生成機能と、
分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能と、
前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化する簡略化機能と、
前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能と、
前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成機能とを実現させるためのシミュレーションプログラム。
(付記13)
付記12において、
前記仮想制御電圧源は、前記ゲート電位に対応する信号レベルがHIGHならばLOWに対応する電位を、LOWならばHIGHに対応する電位を与えることを特徴とするシミュレーションプログラム。
(付記14)
付記12において、
前記簡略化機能では、前記着目回路の出力端子を介して駆動されるトランジスタがインバータの一部である場合、簡略化が行われないことを特徴とするシミュレーションプログラム。
(付記15)
付記12において、
前記簡略化機能では、更に、前記負荷回路の入力端子を介して駆動されるトランジスタであって、前記着目回路の出力端子を介して駆動されるトランジスタ以外のものが特定され、該特定されたトランジスタに対し前記簡略化が施されることを特徴とするシミュレーションプログラム。
(付記16)
付記12において、
前記簡略化機能では、前記負荷回路に含まれる要素のうち、前記着目回路の出力端子を介して駆動されるトランジスタを除いた要素が削除され、負荷回路が整形されることを特徴とするシミュレーションプログラム。
本発明の実施形態において評価される遅延特性を説明する図であり、Aは、一例として3入力のNORゲートを示し、Bは、その真理値表を示し、Cは、3入力の端子のうち、ある端子に与える電位を変動させるときの出力変化を示すものである。 本発明の実施形態におけるシミュレーション装置の構成ブロック図である。 本実施形態におけるシミュレーション装置の制御部を説明する機能ブロック図である。 本実施形態におけるシミュレーション装置の動作を説明するフローチャートである。 負荷回路を簡略化する際の簡略化部の動作を説明するフローチャートである。 仮想制御電圧源(VCVS)を接続する方法を説明する図であり、AはPMOSの場合、BはNMOSの場合をそれぞれ示す。 全体回路の例を示す図である。 Aは、生成された部分回路とその接続関係を示す図であり、Bは、生成された部分回路に含まれる部分経路を示す図であり、Cは、全体回路における入力端子と出力端子を接続する経路の関係を示す図である。 トポロジーソートの結果を示すデータ構成例である。 VCVSを用いた簡略化の例を示す図である。 伝播波形の生成処理を、具体例を用いて説明する図であり、Aは、部分回路SCC1を着目回路、部分回路SCC4を負荷回路とする場合の入力スルーと出力スルーの関係の一例を示す図であり、Bは、部分回路SCC4を着目回路、部分回路SCC5を負荷回路とする場合の入力スルーと出力スルーの関係の一例を示す図である。 ライブラリのデータ構成例である。
符号の説明
1 シミュレーション装置、11 制御部、12 RAM、13 記憶部、14 バス、15 周辺機器インタフェース、16 入力部、17 出力部、111 モデル生成部、112 選択部、113 簡略化部、114 シミュレーション部、115 ライブラリ生成部

Claims (5)

  1. 論理回路の遅延特性を評価するためのシミュレーションを処理するシミュレーション装置であって、
    予め、シミュレーションプログラムが格納される記憶部と、
    前記記憶部から前記シミュレーションプログラムを読み出して実行する制御部とを有し、
    前記制御部は、
    前記論理回路を複数の部分回路に分割するモデル生成機能と、
    分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能と、
    前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化する簡略化機能と、
    前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能と、
    前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成機能とを前記シミュレーションプログラムを実行して実現することを特徴とするシミュレーション装置。
  2. 請求項1において、
    前記仮想制御電圧源は、前記ゲート電位に対応する信号レベルがHIGHならばLOWに対応する電位を、LOWならばHIGHに対応する電位を与えることを特徴とするシミュレーション装置。
  3. 論理回路の遅延特性を評価するためのシミュレーション装置であって、
    前記論理回路を複数の部分回路に分割するモデル生成部と、
    分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択部と、
    前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化部と、
    前記着目回路と、前記簡略部により簡略化した負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択部が選択する着目回路毎に行うシミュレーション部と、
    前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成部とを有することを特徴とするシミュレーション装置。
  4. 論理回路の遅延特性を評価するためのシミュレーション方法であって、
    前記論理回路を複数の部分回路に分割し、
    分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択し、
    前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、
    該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、
    前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化し、
    前記着目回路と、前記簡略部により簡略化した負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択部が選択する着目回路毎に行い、
    前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めることを特徴とするシミュレーション方法。
  5. 論理回路の遅延特性を評価するためのシミュレーションを処理するコンピュータに、
    前記論理回路を複数の部分回路に分割するモデル生成機能と、
    分割された複数の部分回路のうち、着目回路と前記着目回路の後段に接続される負荷回路とを、前記部分回路が少なくとも1回は着目回路となるように選択する選択機能と、
    前記負荷回路をトランジスタレベルで表現するとき、前記着目回路の出力端子を介して駆動されるトランジスタを特定し、該トランジスタのゲート電位に応じて該トランジスタの出力電位を変動させる仮想制御電圧源を、該トランジスタのドレインに接続し、前記仮想制御電圧源が接続された前記トランジスタを用いて前記負荷回路を簡略化する簡略化機能と、
    前記着目回路と、前記簡略化された負荷回路とを組み合わせて、前記着目回路に対する入力パターンに基づき、前記着目回路の遅延特性を評価するシミュレーションを、前記選択される着目回路毎に行うシミュレーション機能と、
    前記論理回路の入力端子と出力端子を接続する経路毎に、該経路に含まれる前記部分回路の遅延特性に基づき、該経路全体の遅延特性を求めるライブラリ生成機能とを実現させるためのシミュレーションプログラム。

JP2004336330A 2004-11-19 2004-11-19 遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置 Expired - Fee Related JP4313288B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004336330A JP4313288B2 (ja) 2004-11-19 2004-11-19 遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置
US11/066,430 US7689401B2 (en) 2004-11-19 2005-02-28 Method of circuit simulation for delay characteristic evaluation, circuit simulation program and circuit simulation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004336330A JP4313288B2 (ja) 2004-11-19 2004-11-19 遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置

Publications (2)

Publication Number Publication Date
JP2006146595A true JP2006146595A (ja) 2006-06-08
JP4313288B2 JP4313288B2 (ja) 2009-08-12

Family

ID=36461982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004336330A Expired - Fee Related JP4313288B2 (ja) 2004-11-19 2004-11-19 遅延特性評価のための回路シミュレーション方法、回路シミュレーションプログラム及び回路シミュレーション装置

Country Status (2)

Country Link
US (1) US7689401B2 (ja)
JP (1) JP4313288B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282904A (ja) * 2008-05-26 2009-12-03 Fujitsu Ltd 回路シミュレーションプログラム、回路シミュレーション装置及び回路シミュレーション方法
US8904328B2 (en) 2013-03-18 2014-12-02 Fujitsu Limited Support apparatus and design support method
JP7440984B2 (ja) 2021-08-09 2024-02-29 ▲蘇▼州▲貝▼克▲微▼▲電▼子股▲ふん▼有限公司 高効率の回路シミュレーション方法、装置、機器及び記憶媒体

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5640259B2 (ja) * 2010-06-09 2014-12-17 ルネサスエレクトロニクス株式会社 回路シミュレーション方法および回路シミュレーション装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5446676A (en) * 1993-03-29 1995-08-29 Epic Design Technology Inc. Transistor-level timing and power simulator and power analyzer
US5640328A (en) * 1994-04-25 1997-06-17 Lam; Jimmy Kwok-Ching Method for electric leaf cell circuit placement and timing determination
US5946475A (en) * 1997-01-21 1999-08-31 International Business Machines Corporation Method for performing transistor-level static timing analysis of a logic circuit
JP4126748B2 (ja) 1998-04-14 2008-07-30 沖電気工業株式会社 集積回路のタイミング検証方法
US7000202B1 (en) * 1998-07-22 2006-02-14 Magma Design Automation, Inc. Method of vector generation for estimating performance of integrated circuit designs
US7647220B2 (en) * 2001-10-18 2010-01-12 Cadence Design Systems, Inc. Transistor-level timing analysis using embedded simulation
US7155692B2 (en) * 2004-09-01 2006-12-26 Hewlett-Packard Development Company, L.P. Method and system for performing timing analysis on a circuit

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282904A (ja) * 2008-05-26 2009-12-03 Fujitsu Ltd 回路シミュレーションプログラム、回路シミュレーション装置及び回路シミュレーション方法
US8904328B2 (en) 2013-03-18 2014-12-02 Fujitsu Limited Support apparatus and design support method
JP7440984B2 (ja) 2021-08-09 2024-02-29 ▲蘇▼州▲貝▼克▲微▼▲電▼子股▲ふん▼有限公司 高効率の回路シミュレーション方法、装置、機器及び記憶媒体

Also Published As

Publication number Publication date
US7689401B2 (en) 2010-03-30
US20060111885A1 (en) 2006-05-25
JP4313288B2 (ja) 2009-08-12

Similar Documents

Publication Publication Date Title
US7340698B1 (en) Method of estimating performance of integrated circuit designs by finding scalars for strongly coupled components
US7003738B2 (en) Process for automated generation of design-specific complex functional blocks to improve quality of synthesized digital integrated circuits in CMOS using altering process
JP5935544B2 (ja) 論理セルのアナログモデルを生成する方法、製品及びコンピュータシステム
CN105701120A (zh) 确定语义匹配度的方法和装置
US10275553B2 (en) Custom circuit power analysis
US6112022A (en) Method for simulating ULSI/VLSI circuit designs
JP5029096B2 (ja) 電源ノイズモデル生成方法及び電源ノイズモデル生成装置
US7689401B2 (en) Method of circuit simulation for delay characteristic evaluation, circuit simulation program and circuit simulation device
US6460166B1 (en) System and method for restructuring of logic circuitry
US9298875B2 (en) Semiconductor circuit design method, memory compiler and computer program product
JP2005071370A (ja) 回路設計のアクティビティファクタを決定するためのシステムおよび方法
US6711720B2 (en) Method of optimizing high performance CMOS integrated circuit designs for power consumption and speed through genetic optimization
US6253356B1 (en) System and method for improving logic synthesis in logic circuits
US7698672B1 (en) Methods of minimizing leakage current
US20200117230A1 (en) Optimally driving non-uniform clock mesh loads
JP5151712B2 (ja) ノイズ解析装置
US10176284B2 (en) Semiconductor circuit design and manufacture method
JP2013003611A (ja) 設計検証方法及びプログラム
US6631506B1 (en) Method and apparatus for identifying switching race conditions in a circuit design
US6434728B1 (en) Activation path simulation equipment and activation path simulation method
Maheshwari et al. Logical effort based power-delay-product optimization
Celinski et al. Logical effort based design exploration of 64-bit adders using a mixed dynamic-cmos/threshold-logic approach
JP3054109B2 (ja) 論理回路の遅延計算方法、その遅延計算装置及び遅延ライブラリの遅延データ計算方法
JP2776263B2 (ja) 遅延シミュレータ及び遅延値算出方法
US6467071B2 (en) Shield circuit designing apparatus and shield circuit designing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090416

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

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

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

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees