JP2004302499A - 半導体集積回路のシミュレーション方法 - Google Patents
半導体集積回路のシミュレーション方法 Download PDFInfo
- Publication number
- JP2004302499A JP2004302499A JP2003091197A JP2003091197A JP2004302499A JP 2004302499 A JP2004302499 A JP 2004302499A JP 2003091197 A JP2003091197 A JP 2003091197A JP 2003091197 A JP2003091197 A JP 2003091197A JP 2004302499 A JP2004302499 A JP 2004302499A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- semiconductor integrated
- simulation
- integrated circuit
- layout configuration
- 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.)
- Pending
Links
Images
Abstract
【課題】素子のレイアウトパターンを反映したネットリストを作成することで実際の素子構成でシミュレーションを行う方法を提供する。
【解決手段】設計しようとする半導体集積回路において、S101は半導体集積回路作成手段において作成した半導体集積回路内の素子に対して、S102で素子毎のシミュレーション実行時の精度を指定し、S103で前記回路図のネットリストを生成し、またS104で前記素子のライブラリを読み込み、S105で前記ネットリストと前記ライブラリとを用いてシミュレーションを実行する。
【選択図】 図1
【解決手段】設計しようとする半導体集積回路において、S101は半導体集積回路作成手段において作成した半導体集積回路内の素子に対して、S102で素子毎のシミュレーション実行時の精度を指定し、S103で前記回路図のネットリストを生成し、またS104で前記素子のライブラリを読み込み、S105で前記ネットリストと前記ライブラリとを用いてシミュレーションを実行する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、半導体集積回路の特に寄生素子の影響を受ける分野のシミュレーション方法に関する。
【0002】
【従来の技術】
従来、半導体集積回路の回路設計においてシミュレーションを実行する場合にMOSFETであればモデル名、ゲート幅、ゲート長また抵抗では抵抗値など回路図に入力された値でシミュレーションを実行していた。図10は半導体集積回路の一例である。1001は半導体集積回路であり、1002は電源のシンボルであり、1003及び1004は半導体集積回路1001内で使用されているPチャネルMOSFET素子であり、1005、1006、1007は前記集積回路1001で使用されているNPNトランジスタであり、1008は前記集積回路1001内で使用されている抵抗素子であり、1009は接地電位を表すシンボルである。図11(a)は半導体集積回路1001から生成したシミュレーション用のネットリストであり、前記半導体集積回路内の素子に代入された値がそのままネットリストに出力されている。素子に対する寄生素子を考慮した等価回路のサブサーキットを指定してシミュレーションを行う場合にも、図11(b)の例のようにモデル名を指定するプロパティmodelに前記素子に対する寄生素子を考慮した等価回路のサブサーキット名を指定する。図11(b)の例ではPチャネルMOSFETの素子名M0のモデル名をPCHMOS_PR1に変更している。
【0003】
また実際のレイアウトを考慮して回路図作成を行った一例として、抵抗素子を実際のレイアウトでは複数本直列接続して実現する場合では、シミュレーション実行時には図12(a)で示したサブサーキットのように1つの素子としてシミュレーションを実行する。また同じく抵抗素子において図12(b)の例にあるように抵抗の直列接続の本数に応じたサブサーキットを予め複数パターン準備しておいてレイアウトの構成を応じて読み込むサブサーキットを変更してシミュレーションを実行する。容量素子などは前記抵抗と同様な方法でシミュレーションを実行することが可能であり、MOSFET、抵抗、容量以外の素子でも同様である。
【0004】
また、このような従来の技術が公開されている(特許文献1参照)。
【0005】
【特許文献1】
特開平1−276372号公報
【0006】
【発明が解決しようとする課題】
しかしながら、図11に示したネットリストを用いてのシミュレーションでは寄生素子の影響を考慮してシミュレーションを行う際に手作業でモデル名を変更する必要がある。
【0007】
また図12(a)のサブサーキットを用いた場合のシミュレーションでは、実際のレイアウト設計における素子を構成するパターンが考慮されていないため素子に対する寄生素子を考慮した等価回路のサブサーキットを使用してシミュレーションを行っても、実際の半導体集積回路の特性とは異なる場合が考えられる。また図12(b)のサブサーキットを用いた場合では予め準備しておいたサブサーキット以外の構成でレイアウトを実現する場合に半導体集積回路のシミュレーションに対応できないという問題がある。
【0008】
本発明は上記課題に鑑みてなされたもので、実際のレイアウト構成及び寄生素子の影響を考慮した半導体集積回路のシミュレーション方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記課題に鑑みて、本発明の半導体集積回路のシミュレーション方法は、半導体集積回路内の素子に対してレイアウトの構成を指定された場合及び寄生素子の影響を考慮したシミュレーション方法であって、半導体集積回路を作成する回路図作成手段と、前記半導体集積回路の回路図内の素子に対してレイアウト構成を指定するレイアウト構成指定手段と、前記半導体集積回路の回路図内の素子に対して寄生素子を考慮した等価回路のサブサーキットを使用するかどうかを前記素子毎に指定することによりシミュレーション実行時の精度を指定するシミュレーション精度指定手段と、前記半導体集積回路内に使用されている素子のうち前記レイアウト構成指定手段でレイアウト構成を指定した素子のサブサーキットを生成するレイアウト構成サブサーキット生成手段と、前記半導体集積回路図からシミュレーションに使用するための素子間のネットリストを生成するネットリスト生成手段と、前記レイアウト構成サブサーキット生成手段で生成されたレイアウト構成サブサーキットと前記ネットリスト生成手段で生成されたネットリストを読み込む、ネットリストおよびサブサーキット読み込み手段と、前記半導体集積回路内で使用されている素子のモデルパラメータやレイアウトの寄生素子が付加された等価回路のサブサーキットで構成されたライブラリを読み込むライブラリ読み込み手段と、前記レイアウト構成サブサーキット生成手段で生成されたサブサーキットと前記ネットリスト生成手段で生成されたネットリストと前記ライブラリ読み込み手段で読み込んだ前記ライブラリとを用いてシミュレーションを実行するシミュレーション手段とを備え、半導体集積回路のシミュレーションを行う。
【0010】
上記半導体集積回路のシミュレーション方法において、シミュレーション精度指定手段では素子毎に寄生素子の影響を考慮してシミュレーションを実行するかどうかを指定することにより、同一回路内で素子のモデル名を直接変更することなく、切り替えることにより精度を変更してシミュレーションを行うことが可能となる。
【0011】
またレイアウト構成指定手段は前記半導体集積回路内で使用されている素子を検索し、素子に対してレイアウトの構成が指定されているかどうかを判定し、前記素子に対してレイアウトの構成が指定されている場合で、すでに他の同一種別の素子で同じレイアウト構成の素子が存在し、すでにサブサーキットが生成されているかどうかを判定し、生成されていなければ、サブサーキットを生成する。次に未検索の素子がないかどうかを判定し、未検索の素子が存在すれば、再度半導体集積回路の素子を検索するという過程を繰り返すことにより半導体集積回路内の素子のうちレイアウト構成を指定している素子のサブサーキットを生成することが可能となる。
【0012】
前記半導体集積回路内の素子でレイアウト構成が指定されている素子について前記指定されたレイアウト構成に対応したレイアウト構成サブサーキットを生成後に、前記半導体集積回路内の前記素子間のネットリストを生成して、さらに精度の指定により前記寄生素子の影響を考慮した等価回路のサブサーキットを使用して、シミュレーションを実行することにより、実際のレイアウトに対応した素子構成で寄生の影響を考慮して、シミュレーションすることが可能となるという効果を奏する。
【0013】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
【0014】
本発明の実施の形態については請求項3記載のシミュレーション方法について図3を参照しながら、請求項1及び請求項2記載のシミュレーション方法についてまとめて説明する。
【0015】
図3は、本発明の一実施の形態であるシミュレーションの方法を説明する図である。
【0016】
S301は半導体集積回路の回路図を作成する手段、S302はS301で作成された回路図内で使用されている素子に寄生の影響を考慮した等価回路のサブサーキットを使用するかどうかを指定することによりシミュレーションの精度を指定するシミュレーション精度指定手段、S303はS301で作成した半導体集積回路内の素子に対してレイアウト構成を指定する手段、S304はS301で作成された回路図内に使用されている素子からサブサーキットを生成する手段。S305はS301で作成された回路図からシミュレーションに使用するための素子間のネットリストを生成する手段。S306はS304で生成されたサブサーキットとS305で生成された前記シミュレーションで使用するための素子間のネットリストを読み込む手段。S307はS301で作成された前記半導体集積回路内で使用されている素子のモデルパラメータやレイアウトの寄生素子が付加された等価回路で構成されたライブラリを読み込む手段。S308は前記S304で生成されたサブサーキットとS305で生成された前記シミュレーションで使用するためのネットリストとS307で読み込んだ前記ライブラリとを用いてシミュレーションを実行する手段である。
【0017】
図4を用いて、本発明の一実施の形態であるS302のレイアウト構成指定手段について説明する。
【0018】
401及び403は回路図作成手段S301で使用するMOSFET及び抵抗素子のシンボルの一例であり、レイアウトの構成をシンボルのプロパティによって指定する方法であり、プロセスによって前記以外の素子のシンボルも用意されている。401はPチャネルのMOSFETのシンボルでプロパティでモデル名を指定するmodel、ゲート幅を指定するw、ゲート長を指定するλ、ゲートの分割数を指定するfingerを有している。図4の(a−1)ではシンボルのプロパティにw=80μm、λ=2μm、finger=2を指定するとレイアウトでの素子は図4の(a−2)にあるようにゲートが2つに分割されw=40μmのPチャネルMOSFETが並列に接続される。また図4の(b−1)は抵抗素子の一例でシンボルのプロパティにモデル名を指定するmodel、抵抗値を指定するr、接続の構成を指定するpattern、構成する本数を指定するnumberを有しており、抵抗値rは3kΩ、接続の構成を指定するpatternにはseries、構成する本数を指定するnumberには3を指定するとレイアウトでの素子は図4(b−2)のように1kΩの抵抗3本が直列接続される。またレイアウト構成を指定する方法として半導体集積回路内の素子とそれに対応する素子のレイアウト構成をテーブルに記述して指定する方法でも同様な効果を得ることが可能である。
【0019】
図5を用いて本発明の一実施の形態であるS302のシミュレーション精度指定手段について説明する。
【0020】
図5において501及び504は回路図作成手段S301で使用する抵抗素子のシンボルの一例であり、501はプロパティにモデル名を指定するmodel、抵抗値を指定するr、寄生の影響を考慮した等価回路のサブサーキットを使用するかどうかを指定するためのシミュレーション精度指定プロパティprecisionを有しており、この場合precision=0の場合は図5(a−2)のように通常の抵抗素子としてシミュレーションが行われ、precision=1の場合は図5(a−2)の抵抗素子にさらに図5(a−3)にあるように寄生の容量を持った等価回路のサブサーキットを読み込んでシミュレーションを実行する。また図5(b−1)に示した例では504はシミュレーション精度指定プロパティに加えて、接続の構成を指定するpattern、構成する本数を指定するnumberを有しており、505、506及び507はレイアウト構成を指定するプロパティにより指定された場合に作成されるサブサーキットを構成する抵抗素子である。図5(b−1)の504では抵抗値rは3kΩ、接続の構成を指定するpatternにはseries、構成する本数を指定するnumberには3を指定するとシミュレーション時には図5(b−2)のようなサブサーキットを作成し、さらに504ではprecision=1が指定されているのでシミュレーション時には素子505、506及び507の素子に対してさらに図5(a−3)で示したような寄生の容量をもった等価回路のサブサーキットを読み込んでシミュレーションが行われる。
【0021】
図6は、本発明の一実施の形態であるS303のレイアウト構成サブサーキット生成手段を説明するフローチャートである。
【0022】
601で半導体集積回路内で使用されている素子を検索し、602で未検索の素子が存在するかどうか判定し、未検索の素子に対して603でシミュレーション精度の指定がされているどうか調べ、604でレイアウトの構成が指定されているかどうかを判定し、605で604でレイアウトの構成が指定されている場合ですでに他の素子と同一のシミュレーション精度でかつ同一のレイアウト構成の素子が存在したためにすでにサブサーキットが生成されているかどうかを判定し、生成されていなければ606でサブサーキットを生成し、601に戻り半導体集積回路の素子を検索するという過程を繰り返すことにより、半導体集積回路内の素子でシミュレーション精度に対応したレイアウト構成を指定している素子のサブサーキットを生成することが可能となる。
【0023】
図7を用いて図3の具体的なフローを説明する。
【0024】
701は半導体集積回路であり、702は電源のシンボルであり、703及び704は半導体集積回路701内で使用されているPチャネルMOSFET素子であり、705、706、707は前記半導体集積回路701で使用されているNPNトランジスタであり、708は前記集積回路701内で使用されている抵抗素子であり、709は接地電位を表すシンボルである。
【0025】
回路図作成手段S301で701の回路図を作成し、シミュレーション精度指定手段S302で708の抵抗素子のシミュレーション精度指定プロパティprecisionに1を指定する。この場合の例では1を指定することにより寄生の影響を考慮した等価回路のサブサーキットを使用する。レイアウト構成指定手段S303で703、704のPチャネルMOSFETのfingerプロパティに2という値を指定し、708の抵抗素子のプロパティpatternにレイアウトの構成パターンとしてseries、プロパティnumberに構成本数として3を指定する。S304で701内で使用されている素子のレイアウト構成サブサーキットを生成する。素子のサブサーキットの生成方法は後で説明するが、半導体集積回路701ではレイアウトの構成が指定されているものは703、704のPチャネルMOSFET及び708の抵抗素子であるのでサブサーキットを生成する。
【0026】
図8にサブサーキットの一例を示す。図8(a)は703、704のPチャネルMOSFETに対応するサブサーキットであり、シミュレーション精度の指定プロパティprecisionに0が指定されているため通常のMOSFETのモデルを使用する。またサブサーキット名がモデル名と重ならないためにモデル名PCHMOSにレイアウトの構成を識別するためにf2を加えた名前でモデルサブサーキットを生成し、また図8(b)に示したような708の抵抗素子に対応したサブサーキットである。素子708の抵抗素子はシミュレーション精度指定プロパティprecisionに1が指定されているため、寄生の影響を考慮した等価回路のサブサーキットを使用するため、シミュレーション実行時にモデル名poly_pr1を用いる。またレイアウト構成を指定するプロパティpattern、numberにそれぞれ値が指定されているため、レイアウトの構成を識別するためのs3を加えた名前でサブサーキット名を出力し、それぞれサブサーキット内の素子に半導体集積回路501の素子に指定して前記シミュレーション時のモデル名を引き継ぐようにサブサーキット内を生成する。
【0027】
さらにネットリスト生成手段S304で半導体集積回路701の素子間のネットリストを生成する。
【0028】
図9に半導体集積回路701のネットリストを示す。レイアウト構成サブサーキットを構成した素子についてはモデル名を一致させてネットリストを生成する。次にネットリスト及びレイアウト構成サブサーキット読み込み手段S306でレイアウト構成サブサーキット生成手段S304で生成したレイアウト構成サブサーキットとネットリスト生成手段S305で生成したネットリストをシミュレータに読み込み、さらにモデルパラメータと寄生の影響を考慮した等価回路のサブサーキットとで構成されるライブラリ読み込み手段S307で読み込み、シミュレーション手段S308で半導体集積回路701の回路シミュレーションを実施する。
【0029】
さらに図6を用いて具体的にサブサーキットを生成するフローについて説明する。本発明の一実施の形態であるS304のサブサーキット生成手段において、ステップ601で半導体集積回路701内の素子を検索し、ステップ602において未検索の素子が存在するかどうかを判定する。この例において素子703においてまずシミュレーション精度が指定されているかどうか調べ、レイアウト構成を指定するパラメータに値が指定されているかどうかを調べる。この場合PチャネルMOSFET503はprecisionに0が指定されており、かつfingerプロパティに値2が入力されているので図8(a)に示したようなサブサーキットを生成する。
【0030】
次に素子704について前記素子703と同様にシミュレーション精度を指定するprecisionが1に、またレイアウト構成を指定するパラメータに値が指定されているかどうかを調べる。素子704はfingerに値2が代入されているためサブサーキットを生成する素子に該当するが前記素子703の場合にステップ606で既に同じ構成のサブサーキットが生成されているためサブサーキットは生成しないで次の素子を検索する。素子705、706及び707はレイアウトを構成するパラメータを有していないため、次の素子708を調べる。抵抗素子708はシミュレーション精度を指定するプロパティprecisionに1が指定され、レイアウトを構成を指定するパラメータpattern及びnumberに値が代入されているため図8(b)に示したようなサブサーキットを生成する。
【0031】
また寄生素子の影響を考慮した等価回路のサブサーキットは精度またはレイアウト構成に応じて複数のパターンを予め準備しておきシミュレーション精度指定手法で複数のパターンを切り替え可能にしてシミュレーションを実行することも可能である。
【0032】
【発明の効果】
本発明の半導体集積回路のシミュレーション方法は、半導体集積回路に設計しようとする回路の回路図を作成する手段と、前記素子の寄生影響を考慮した等価回路のサブサーキットを使用するかどうかを素子毎に指定するシミュレーション精度指定手段と、前記半導体集積積回路の回路図内の素子に対してレイアウト構成を指定する手段と、前記半導体集積回路内に使用されている素子のうち前記レイアウト構成指定手段でレイアウト構成を指定した素子のサブサーキットを生成する手段と、前記半導体集積回路図からシミュレーションに使用するための素子間のネットリストを生成する手段と、前記サブサーキット生成手段で生成されたサブサーキットと前記ネットリスト生成手段で生成されたネットリストを読み込む手段と、前記半導体集積回路内で使用されている素子のモデルパラメータと寄生の影響を考慮した等価回路のサブサーキットで構成されるライブラリを読み込む手段と、前記サブサーキットと前記ネットリストと前記ライブラリとを用いてシミュレーションを実行するシミュレーション手段とを備え、半導体集積回路のシミュレーションを行うものである。
【0033】
従って本発明の半導体集積回路のシミュレーション方法によれば、寄生の影響を考慮した等価回路のサブサーキットを使用するかどうかを素子毎に指定してシミュレーションを行うことと、半導体集積回路内でレイアウトの構成が指定されている素子については、その構成に対応したサブサーキットを生成し、半導体集積回路内の素子間のネットリストを生成してからシミュレーションを実行することにより、実際の半導体集積回路の構成に加えて寄生の影響を考慮することと、前記半導体集積回路の素子個々に指定及び切り替え可能なシミュレーションが実行できるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施の形態である半導体集積回路のシミュレーション方法の手順を示すフローチャート
【図2】本発明の一実施の形態である半導体集積回路のシミュレーション方法の手順を示すフローチャート
【図3】本発明の一実施の形態である半導体集積回路のシミュレーション方法の手順を示すフローチャート
【図4】本発明の一実施の形態である半導体集積回路の回路図内の素子におけるレイアウト構成を指定するパラメータとレイアウトの一例を示す図
【図5】S102のシミュレーション精度指定手段とS103のレイアウト構成指定手段とでパラメータを指定された素子の一例を示す図
【図6】S104のサブサーキット生成手段のより詳細な処理手順の一例を示すフローチャート
【図7】素子のレイアウト構成に対応したシミュレーションを実行しようとする電気回路の一例を示す回路図
【図8】素子のレイアウト構成に対応したS104で生成したサブサーキットの一例を示す図
【図9】図5に示した電気回路のネットリストの一例を示した図
【図10】従来の技術のシミュレーションを実行しようとする電気回路の一例を示す図
【図11】図8に示した電気回路のネットリストの一例を示した図
【図12】従来の技術の素子のレイアウト構成に対応したサブサーキットの一例を示す図
【符号の説明】
S101 回路図作成手段
S102 シミュレーション精度指定手段
S103 ネットリスト生成手段
S104 ライブラリ読み込み手段
S105 シミュレーション手段
【発明の属する技術分野】
本発明は、半導体集積回路の特に寄生素子の影響を受ける分野のシミュレーション方法に関する。
【0002】
【従来の技術】
従来、半導体集積回路の回路設計においてシミュレーションを実行する場合にMOSFETであればモデル名、ゲート幅、ゲート長また抵抗では抵抗値など回路図に入力された値でシミュレーションを実行していた。図10は半導体集積回路の一例である。1001は半導体集積回路であり、1002は電源のシンボルであり、1003及び1004は半導体集積回路1001内で使用されているPチャネルMOSFET素子であり、1005、1006、1007は前記集積回路1001で使用されているNPNトランジスタであり、1008は前記集積回路1001内で使用されている抵抗素子であり、1009は接地電位を表すシンボルである。図11(a)は半導体集積回路1001から生成したシミュレーション用のネットリストであり、前記半導体集積回路内の素子に代入された値がそのままネットリストに出力されている。素子に対する寄生素子を考慮した等価回路のサブサーキットを指定してシミュレーションを行う場合にも、図11(b)の例のようにモデル名を指定するプロパティmodelに前記素子に対する寄生素子を考慮した等価回路のサブサーキット名を指定する。図11(b)の例ではPチャネルMOSFETの素子名M0のモデル名をPCHMOS_PR1に変更している。
【0003】
また実際のレイアウトを考慮して回路図作成を行った一例として、抵抗素子を実際のレイアウトでは複数本直列接続して実現する場合では、シミュレーション実行時には図12(a)で示したサブサーキットのように1つの素子としてシミュレーションを実行する。また同じく抵抗素子において図12(b)の例にあるように抵抗の直列接続の本数に応じたサブサーキットを予め複数パターン準備しておいてレイアウトの構成を応じて読み込むサブサーキットを変更してシミュレーションを実行する。容量素子などは前記抵抗と同様な方法でシミュレーションを実行することが可能であり、MOSFET、抵抗、容量以外の素子でも同様である。
【0004】
また、このような従来の技術が公開されている(特許文献1参照)。
【0005】
【特許文献1】
特開平1−276372号公報
【0006】
【発明が解決しようとする課題】
しかしながら、図11に示したネットリストを用いてのシミュレーションでは寄生素子の影響を考慮してシミュレーションを行う際に手作業でモデル名を変更する必要がある。
【0007】
また図12(a)のサブサーキットを用いた場合のシミュレーションでは、実際のレイアウト設計における素子を構成するパターンが考慮されていないため素子に対する寄生素子を考慮した等価回路のサブサーキットを使用してシミュレーションを行っても、実際の半導体集積回路の特性とは異なる場合が考えられる。また図12(b)のサブサーキットを用いた場合では予め準備しておいたサブサーキット以外の構成でレイアウトを実現する場合に半導体集積回路のシミュレーションに対応できないという問題がある。
【0008】
本発明は上記課題に鑑みてなされたもので、実際のレイアウト構成及び寄生素子の影響を考慮した半導体集積回路のシミュレーション方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記課題に鑑みて、本発明の半導体集積回路のシミュレーション方法は、半導体集積回路内の素子に対してレイアウトの構成を指定された場合及び寄生素子の影響を考慮したシミュレーション方法であって、半導体集積回路を作成する回路図作成手段と、前記半導体集積回路の回路図内の素子に対してレイアウト構成を指定するレイアウト構成指定手段と、前記半導体集積回路の回路図内の素子に対して寄生素子を考慮した等価回路のサブサーキットを使用するかどうかを前記素子毎に指定することによりシミュレーション実行時の精度を指定するシミュレーション精度指定手段と、前記半導体集積回路内に使用されている素子のうち前記レイアウト構成指定手段でレイアウト構成を指定した素子のサブサーキットを生成するレイアウト構成サブサーキット生成手段と、前記半導体集積回路図からシミュレーションに使用するための素子間のネットリストを生成するネットリスト生成手段と、前記レイアウト構成サブサーキット生成手段で生成されたレイアウト構成サブサーキットと前記ネットリスト生成手段で生成されたネットリストを読み込む、ネットリストおよびサブサーキット読み込み手段と、前記半導体集積回路内で使用されている素子のモデルパラメータやレイアウトの寄生素子が付加された等価回路のサブサーキットで構成されたライブラリを読み込むライブラリ読み込み手段と、前記レイアウト構成サブサーキット生成手段で生成されたサブサーキットと前記ネットリスト生成手段で生成されたネットリストと前記ライブラリ読み込み手段で読み込んだ前記ライブラリとを用いてシミュレーションを実行するシミュレーション手段とを備え、半導体集積回路のシミュレーションを行う。
【0010】
上記半導体集積回路のシミュレーション方法において、シミュレーション精度指定手段では素子毎に寄生素子の影響を考慮してシミュレーションを実行するかどうかを指定することにより、同一回路内で素子のモデル名を直接変更することなく、切り替えることにより精度を変更してシミュレーションを行うことが可能となる。
【0011】
またレイアウト構成指定手段は前記半導体集積回路内で使用されている素子を検索し、素子に対してレイアウトの構成が指定されているかどうかを判定し、前記素子に対してレイアウトの構成が指定されている場合で、すでに他の同一種別の素子で同じレイアウト構成の素子が存在し、すでにサブサーキットが生成されているかどうかを判定し、生成されていなければ、サブサーキットを生成する。次に未検索の素子がないかどうかを判定し、未検索の素子が存在すれば、再度半導体集積回路の素子を検索するという過程を繰り返すことにより半導体集積回路内の素子のうちレイアウト構成を指定している素子のサブサーキットを生成することが可能となる。
【0012】
前記半導体集積回路内の素子でレイアウト構成が指定されている素子について前記指定されたレイアウト構成に対応したレイアウト構成サブサーキットを生成後に、前記半導体集積回路内の前記素子間のネットリストを生成して、さらに精度の指定により前記寄生素子の影響を考慮した等価回路のサブサーキットを使用して、シミュレーションを実行することにより、実際のレイアウトに対応した素子構成で寄生の影響を考慮して、シミュレーションすることが可能となるという効果を奏する。
【0013】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
【0014】
本発明の実施の形態については請求項3記載のシミュレーション方法について図3を参照しながら、請求項1及び請求項2記載のシミュレーション方法についてまとめて説明する。
【0015】
図3は、本発明の一実施の形態であるシミュレーションの方法を説明する図である。
【0016】
S301は半導体集積回路の回路図を作成する手段、S302はS301で作成された回路図内で使用されている素子に寄生の影響を考慮した等価回路のサブサーキットを使用するかどうかを指定することによりシミュレーションの精度を指定するシミュレーション精度指定手段、S303はS301で作成した半導体集積回路内の素子に対してレイアウト構成を指定する手段、S304はS301で作成された回路図内に使用されている素子からサブサーキットを生成する手段。S305はS301で作成された回路図からシミュレーションに使用するための素子間のネットリストを生成する手段。S306はS304で生成されたサブサーキットとS305で生成された前記シミュレーションで使用するための素子間のネットリストを読み込む手段。S307はS301で作成された前記半導体集積回路内で使用されている素子のモデルパラメータやレイアウトの寄生素子が付加された等価回路で構成されたライブラリを読み込む手段。S308は前記S304で生成されたサブサーキットとS305で生成された前記シミュレーションで使用するためのネットリストとS307で読み込んだ前記ライブラリとを用いてシミュレーションを実行する手段である。
【0017】
図4を用いて、本発明の一実施の形態であるS302のレイアウト構成指定手段について説明する。
【0018】
401及び403は回路図作成手段S301で使用するMOSFET及び抵抗素子のシンボルの一例であり、レイアウトの構成をシンボルのプロパティによって指定する方法であり、プロセスによって前記以外の素子のシンボルも用意されている。401はPチャネルのMOSFETのシンボルでプロパティでモデル名を指定するmodel、ゲート幅を指定するw、ゲート長を指定するλ、ゲートの分割数を指定するfingerを有している。図4の(a−1)ではシンボルのプロパティにw=80μm、λ=2μm、finger=2を指定するとレイアウトでの素子は図4の(a−2)にあるようにゲートが2つに分割されw=40μmのPチャネルMOSFETが並列に接続される。また図4の(b−1)は抵抗素子の一例でシンボルのプロパティにモデル名を指定するmodel、抵抗値を指定するr、接続の構成を指定するpattern、構成する本数を指定するnumberを有しており、抵抗値rは3kΩ、接続の構成を指定するpatternにはseries、構成する本数を指定するnumberには3を指定するとレイアウトでの素子は図4(b−2)のように1kΩの抵抗3本が直列接続される。またレイアウト構成を指定する方法として半導体集積回路内の素子とそれに対応する素子のレイアウト構成をテーブルに記述して指定する方法でも同様な効果を得ることが可能である。
【0019】
図5を用いて本発明の一実施の形態であるS302のシミュレーション精度指定手段について説明する。
【0020】
図5において501及び504は回路図作成手段S301で使用する抵抗素子のシンボルの一例であり、501はプロパティにモデル名を指定するmodel、抵抗値を指定するr、寄生の影響を考慮した等価回路のサブサーキットを使用するかどうかを指定するためのシミュレーション精度指定プロパティprecisionを有しており、この場合precision=0の場合は図5(a−2)のように通常の抵抗素子としてシミュレーションが行われ、precision=1の場合は図5(a−2)の抵抗素子にさらに図5(a−3)にあるように寄生の容量を持った等価回路のサブサーキットを読み込んでシミュレーションを実行する。また図5(b−1)に示した例では504はシミュレーション精度指定プロパティに加えて、接続の構成を指定するpattern、構成する本数を指定するnumberを有しており、505、506及び507はレイアウト構成を指定するプロパティにより指定された場合に作成されるサブサーキットを構成する抵抗素子である。図5(b−1)の504では抵抗値rは3kΩ、接続の構成を指定するpatternにはseries、構成する本数を指定するnumberには3を指定するとシミュレーション時には図5(b−2)のようなサブサーキットを作成し、さらに504ではprecision=1が指定されているのでシミュレーション時には素子505、506及び507の素子に対してさらに図5(a−3)で示したような寄生の容量をもった等価回路のサブサーキットを読み込んでシミュレーションが行われる。
【0021】
図6は、本発明の一実施の形態であるS303のレイアウト構成サブサーキット生成手段を説明するフローチャートである。
【0022】
601で半導体集積回路内で使用されている素子を検索し、602で未検索の素子が存在するかどうか判定し、未検索の素子に対して603でシミュレーション精度の指定がされているどうか調べ、604でレイアウトの構成が指定されているかどうかを判定し、605で604でレイアウトの構成が指定されている場合ですでに他の素子と同一のシミュレーション精度でかつ同一のレイアウト構成の素子が存在したためにすでにサブサーキットが生成されているかどうかを判定し、生成されていなければ606でサブサーキットを生成し、601に戻り半導体集積回路の素子を検索するという過程を繰り返すことにより、半導体集積回路内の素子でシミュレーション精度に対応したレイアウト構成を指定している素子のサブサーキットを生成することが可能となる。
【0023】
図7を用いて図3の具体的なフローを説明する。
【0024】
701は半導体集積回路であり、702は電源のシンボルであり、703及び704は半導体集積回路701内で使用されているPチャネルMOSFET素子であり、705、706、707は前記半導体集積回路701で使用されているNPNトランジスタであり、708は前記集積回路701内で使用されている抵抗素子であり、709は接地電位を表すシンボルである。
【0025】
回路図作成手段S301で701の回路図を作成し、シミュレーション精度指定手段S302で708の抵抗素子のシミュレーション精度指定プロパティprecisionに1を指定する。この場合の例では1を指定することにより寄生の影響を考慮した等価回路のサブサーキットを使用する。レイアウト構成指定手段S303で703、704のPチャネルMOSFETのfingerプロパティに2という値を指定し、708の抵抗素子のプロパティpatternにレイアウトの構成パターンとしてseries、プロパティnumberに構成本数として3を指定する。S304で701内で使用されている素子のレイアウト構成サブサーキットを生成する。素子のサブサーキットの生成方法は後で説明するが、半導体集積回路701ではレイアウトの構成が指定されているものは703、704のPチャネルMOSFET及び708の抵抗素子であるのでサブサーキットを生成する。
【0026】
図8にサブサーキットの一例を示す。図8(a)は703、704のPチャネルMOSFETに対応するサブサーキットであり、シミュレーション精度の指定プロパティprecisionに0が指定されているため通常のMOSFETのモデルを使用する。またサブサーキット名がモデル名と重ならないためにモデル名PCHMOSにレイアウトの構成を識別するためにf2を加えた名前でモデルサブサーキットを生成し、また図8(b)に示したような708の抵抗素子に対応したサブサーキットである。素子708の抵抗素子はシミュレーション精度指定プロパティprecisionに1が指定されているため、寄生の影響を考慮した等価回路のサブサーキットを使用するため、シミュレーション実行時にモデル名poly_pr1を用いる。またレイアウト構成を指定するプロパティpattern、numberにそれぞれ値が指定されているため、レイアウトの構成を識別するためのs3を加えた名前でサブサーキット名を出力し、それぞれサブサーキット内の素子に半導体集積回路501の素子に指定して前記シミュレーション時のモデル名を引き継ぐようにサブサーキット内を生成する。
【0027】
さらにネットリスト生成手段S304で半導体集積回路701の素子間のネットリストを生成する。
【0028】
図9に半導体集積回路701のネットリストを示す。レイアウト構成サブサーキットを構成した素子についてはモデル名を一致させてネットリストを生成する。次にネットリスト及びレイアウト構成サブサーキット読み込み手段S306でレイアウト構成サブサーキット生成手段S304で生成したレイアウト構成サブサーキットとネットリスト生成手段S305で生成したネットリストをシミュレータに読み込み、さらにモデルパラメータと寄生の影響を考慮した等価回路のサブサーキットとで構成されるライブラリ読み込み手段S307で読み込み、シミュレーション手段S308で半導体集積回路701の回路シミュレーションを実施する。
【0029】
さらに図6を用いて具体的にサブサーキットを生成するフローについて説明する。本発明の一実施の形態であるS304のサブサーキット生成手段において、ステップ601で半導体集積回路701内の素子を検索し、ステップ602において未検索の素子が存在するかどうかを判定する。この例において素子703においてまずシミュレーション精度が指定されているかどうか調べ、レイアウト構成を指定するパラメータに値が指定されているかどうかを調べる。この場合PチャネルMOSFET503はprecisionに0が指定されており、かつfingerプロパティに値2が入力されているので図8(a)に示したようなサブサーキットを生成する。
【0030】
次に素子704について前記素子703と同様にシミュレーション精度を指定するprecisionが1に、またレイアウト構成を指定するパラメータに値が指定されているかどうかを調べる。素子704はfingerに値2が代入されているためサブサーキットを生成する素子に該当するが前記素子703の場合にステップ606で既に同じ構成のサブサーキットが生成されているためサブサーキットは生成しないで次の素子を検索する。素子705、706及び707はレイアウトを構成するパラメータを有していないため、次の素子708を調べる。抵抗素子708はシミュレーション精度を指定するプロパティprecisionに1が指定され、レイアウトを構成を指定するパラメータpattern及びnumberに値が代入されているため図8(b)に示したようなサブサーキットを生成する。
【0031】
また寄生素子の影響を考慮した等価回路のサブサーキットは精度またはレイアウト構成に応じて複数のパターンを予め準備しておきシミュレーション精度指定手法で複数のパターンを切り替え可能にしてシミュレーションを実行することも可能である。
【0032】
【発明の効果】
本発明の半導体集積回路のシミュレーション方法は、半導体集積回路に設計しようとする回路の回路図を作成する手段と、前記素子の寄生影響を考慮した等価回路のサブサーキットを使用するかどうかを素子毎に指定するシミュレーション精度指定手段と、前記半導体集積積回路の回路図内の素子に対してレイアウト構成を指定する手段と、前記半導体集積回路内に使用されている素子のうち前記レイアウト構成指定手段でレイアウト構成を指定した素子のサブサーキットを生成する手段と、前記半導体集積回路図からシミュレーションに使用するための素子間のネットリストを生成する手段と、前記サブサーキット生成手段で生成されたサブサーキットと前記ネットリスト生成手段で生成されたネットリストを読み込む手段と、前記半導体集積回路内で使用されている素子のモデルパラメータと寄生の影響を考慮した等価回路のサブサーキットで構成されるライブラリを読み込む手段と、前記サブサーキットと前記ネットリストと前記ライブラリとを用いてシミュレーションを実行するシミュレーション手段とを備え、半導体集積回路のシミュレーションを行うものである。
【0033】
従って本発明の半導体集積回路のシミュレーション方法によれば、寄生の影響を考慮した等価回路のサブサーキットを使用するかどうかを素子毎に指定してシミュレーションを行うことと、半導体集積回路内でレイアウトの構成が指定されている素子については、その構成に対応したサブサーキットを生成し、半導体集積回路内の素子間のネットリストを生成してからシミュレーションを実行することにより、実際の半導体集積回路の構成に加えて寄生の影響を考慮することと、前記半導体集積回路の素子個々に指定及び切り替え可能なシミュレーションが実行できるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施の形態である半導体集積回路のシミュレーション方法の手順を示すフローチャート
【図2】本発明の一実施の形態である半導体集積回路のシミュレーション方法の手順を示すフローチャート
【図3】本発明の一実施の形態である半導体集積回路のシミュレーション方法の手順を示すフローチャート
【図4】本発明の一実施の形態である半導体集積回路の回路図内の素子におけるレイアウト構成を指定するパラメータとレイアウトの一例を示す図
【図5】S102のシミュレーション精度指定手段とS103のレイアウト構成指定手段とでパラメータを指定された素子の一例を示す図
【図6】S104のサブサーキット生成手段のより詳細な処理手順の一例を示すフローチャート
【図7】素子のレイアウト構成に対応したシミュレーションを実行しようとする電気回路の一例を示す回路図
【図8】素子のレイアウト構成に対応したS104で生成したサブサーキットの一例を示す図
【図9】図5に示した電気回路のネットリストの一例を示した図
【図10】従来の技術のシミュレーションを実行しようとする電気回路の一例を示す図
【図11】図8に示した電気回路のネットリストの一例を示した図
【図12】従来の技術の素子のレイアウト構成に対応したサブサーキットの一例を示す図
【符号の説明】
S101 回路図作成手段
S102 シミュレーション精度指定手段
S103 ネットリスト生成手段
S104 ライブラリ読み込み手段
S105 シミュレーション手段
Claims (3)
- 半導体集積回路のシミュレーション方法であって、半導体集積回路に設計しようとする電気回路の回路図を作成する回路図作成手段と、前記回路図内の素子に対して寄生素子を考慮した等価回路のサブサーキットを使用するかどうかを指定することにより素子のシミュレーション実行時の精度を指定するシミュレーション精度指定手段と、前記電気回路のネットリストを生成するネットリスト生成手段と、前記電気回路内の素子のライブラリを読み込む手段と、前記ネットリストと前記ライブラリを用いて回路シミュレーションを行うシミュレーション手段とを有することを特徴とする半導体集積回路のシミュレーション方法。
- 半導体集積回路のシミュレーション方法であって、半導体集積回路に設計しようとする電気回路の回路図を作成する回路図作成手段と、前記回路図内の素子に対してレイアウト構成を指定するレイアウト構成指定手段と、前記レイアウト構成指定手段で指定した素子のレイアウト構成と、前記回路図内の素子のサブサーキットに生成するレイアウト構成サブサーキット生成手段と、前記電気回路のネットリストを生成するネットリスト生成手段と、前記レイアウト構成手段を指定した素子のレイアウト構成をサブサーキットと前記電気回路のネットリストを読み込む手段と、前記電気回路内の素子のライブラリを読み込む手段と、前記サブサーキットと前記ネットリストと前記ライブラリを用いて回路シミュレーションを行うシミュレーション手段とを有することを特徴とする半導体集積回路のシミュレーション方法。
- 請求項1記載の半導体集積回路のシミュレーション方法と請求項2記載の半導体集積回路のシミュレーション方法とを同時に行うことを特徴とする半導体集積回路のシミュレーション方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003091197A JP2004302499A (ja) | 2003-03-28 | 2003-03-28 | 半導体集積回路のシミュレーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003091197A JP2004302499A (ja) | 2003-03-28 | 2003-03-28 | 半導体集積回路のシミュレーション方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004302499A true JP2004302499A (ja) | 2004-10-28 |
Family
ID=33404622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003091197A Pending JP2004302499A (ja) | 2003-03-28 | 2003-03-28 | 半導体集積回路のシミュレーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004302499A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100688525B1 (ko) | 2005-01-26 | 2007-03-02 | 삼성전자주식회사 | 이벤트 구동 스위치 레벨 시뮬레이션 방법 및 시뮬레이터 |
-
2003
- 2003-03-28 JP JP2003091197A patent/JP2004302499A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100688525B1 (ko) | 2005-01-26 | 2007-03-02 | 삼성전자주식회사 | 이벤트 구동 스위치 레벨 시뮬레이션 방법 및 시뮬레이터 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101679920B1 (ko) | 집적 회로 설계 방법 및 장치 | |
US11048841B2 (en) | System, method and associated computer readable medium for designing integrated circuit with pre-layout RC information | |
US8117576B2 (en) | Method for using an equivalence checker to reduce verification effort in a system having analog blocks | |
US7434183B2 (en) | Method and system for validating a hierarchical simulation database | |
US8196075B1 (en) | Generation of input/output models | |
US20140325460A1 (en) | Method for simulation of partial vlsi asic design | |
US7424690B2 (en) | Interconnect integrity verification | |
US10068043B1 (en) | Validating integrated circuit simulation results | |
CN104933214A (zh) | 集成电路设计方法和装置 | |
US7340697B2 (en) | Integrated computer-aided circuit design kit facilitating verification of designs across different process technologies | |
CN109214023B (zh) | 一种工艺设计工具包的测试方法及装置 | |
US6550041B1 (en) | Method and apparatus for evaluating the design quality of network nodes | |
KR101821281B1 (ko) | 회로 시뮬레이션 방법 | |
US6389578B1 (en) | Method and apparatus for determining the strengths and weaknesses of paths in an integrated circuit | |
US6305003B1 (en) | System and method for propagating clock nodes in a netlist of circuit design | |
US6308301B1 (en) | System and method for detecting multiplexers in a circuit design | |
JP2004302499A (ja) | 半導体集積回路のシミュレーション方法 | |
US6507807B1 (en) | Method and apparatus for determining which branch of a network of an integrated circuit has the largest total effective RC delay | |
zu Bexten et al. | Physical verification flow for hierarchical analog ic design constraints | |
US10796051B1 (en) | Adaptive model interface for a plurality of EDA programs | |
Zwolinski | Digital system design with SystemVerilog | |
US6542860B1 (en) | System and method for detecting nodes that are susceptible to floating | |
JP4862899B2 (ja) | デバイスシミュレーションモデル生成装置およびデバイスシミュレーションモデル生成方法 | |
US6279143B1 (en) | Method and apparatus for generating a database which is used for determining the design quality of network nodes | |
Lienig et al. | Steps in Physical Design: From Netlist Generation to Layout Post Processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051222 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080729 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090127 |