(57)【特許請求の範囲】
【請求項１】
少なくとも１つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルを作成する作成方法であって、
コンピュータが、
前記素子の固有の物理特性を定義する物理特性定義ステップと、
前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義ステップと、
前記素子の固有の物理特性に応じた電気的特性の制限を示す制限特性として、レイアウト制限特性を定義する制限特性定義ステップと、
前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を定義する検証処理定義ステップと、
を含む処理を実行する素子モデルの作成方法。
【請求項２】
コンピュータが、
前記シミュレーションにおいて前記素子の異常状態を模擬するための仮想的な物理特性を定義する仮想物理特性定義ステップと、
前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反していると検証された場合に、前記シミュレーションを行う電気的特性を、前記素子の固有の物理特性に応じた電気的特性から、前記仮想的な物理特性に応じた電気的特性へ変更するための処理内容を定義する変更処理定義ステップと、
を更に含む処理を実行する請求項１に記載の素子モデルの作成方法。
【請求項３】
前記制限特性定義ステップでは、素子の断線が起こらない電流又は電圧の限界値を前記制限特性として定義し、
前記仮想物理特性定義ステップでは、前記素子の断線を模擬するための仮想的な物理特性を定義する
請求項２に記載の素子モデルの作成方法。
【請求項４】
前記レイアウト制限特性は、前記電気的特性に影響が出ないようにするためのレイアウト制限特性である
請求項１〜請求項３のいずれか１項に記載の素子モデルの作成方法。
【請求項５】
前記制限特性定義ステップでは、ＭＯＳトランジスタのゲート容量又はドレイン容量の限界値を前記制限特性として定義する
請求項１〜請求項４のいずれか１項に記載の素子モデルの作成方法。
【請求項６】
前記制限特性定義ステップでは、前記物理特性及び前記電気的特性を定義するファイルと同じファイルに前記制限特性を定義する
請求項１又は請求項２に記載の素子モデルの作成方法。
【請求項７】
コンピュータが、
少なくとも１つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルであって、
前記素子の固有の物理特性を定義した物理特性定義部と、
前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義部と、
前記素子の固有の物理特性に応じた電気的特性のレイアウト制限を示す制限特性を定義した制限特性定義部と、
前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を示す制限特性検証部と、
を含む素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に制限特性を検証する回路検証方法。
【請求項８】
少なくとも１つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルであって、
前記素子の固有の物理特性を定義した物理特性定義部と、
前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義部と、
前記素子の固有の物理特性に応じた電気的特性のレイアウト制限を示す制限特性を定義した制限特性定義部と、
前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を示す制限特性検証部と、
を含む素子モデルを記憶し、記憶した素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に素子の制限特性を検証する回路検証装置。
【請求項９】
請求項１〜請求項６のいずれか１項に記載の作成方法により素子モデルを作成する作成手段と、
前記作成手段により作成された素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に素子の制限特性を検証する回路検証手段と、
を備えた回路検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路の動作を検証するためのシミュレーションに使用される素子モデル、該素子モデルを作成する素子モデル作成方法、該素子モデルを使用した回路検証方法、及び回路検証装置に関するものである。
【背景技術】
【０００２】
一般的に、半導体装置の回路設計等の際には回路シミュレーションが行われ、回路動作が検証される。回路シミュレーションでは、回路に組み込まれる素子をモデル化した素子モデルが用いられる。図１１に、従来の回路シミュレーションの手法を示す。
【０００３】
回路シミュレーションを実行する回路検証手段（以下、シミュレータ）１００には、ネットリスト、素子物理特性データ、及びシミュレーション条件のデータが入力される。ネットリストは、検証対象の回路の接続情報を示すデータである。素子物理特性データは、ネットリストで使用される素子の固有の物理特性を示すデータである。シミュレーション条件には、シミュレーション時に回路へ入力される入力波形や電源条件、温度等が含まれる。
【０００４】
シミュレータ１００は、回路解析シミュレーション機能１０２により、シミュレータ１００に内蔵される素子モデルに上記入力された素子物理特性データをあてはめ、ネットリストで表された回路について、シミュレーション条件に応じた波形を入力してシミュレーションを行い、回路動作検証結果を出力する（下記特許文献１も参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２５０８７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
シミュレータ１００で使用される従来の素子モデルは、一般的な素子の固有の物理特性（抵抗値、容量値等）及び素子固有の物理特性に応じた電気的特性を現すだけであり、素子の異常状態（例えば、断線や絶縁膜破壊等）が生じる電流や電圧の制限値を検証する機能は含まれていない。従って、シミュレーション中に素子に制限値を超える電流が流れるか否か、制限値を超える電圧が加えられるか否か等、制限特性を検証するには、図１１に示されるように、シミュレータ１００に内蔵されている素子特性検証機能１０４を用いるしかなかった。シミュレータ１００に内蔵される素子特性検証機能１０４の検証対象は限られており、該検証対象から外れた素子の限界値については該機能では検証できないという問題があった。
【０００７】
また、シミュレータ１００が異なると素子特性検証機能１０４の仕様が異なる（素子電圧や素子電流を検証する方法が異なる）。素子特性検証機能１０４の仕様がシミュレータ毎に異なると、検証者が制限値の指定を誤ったり、指定漏れが生じやすくなったりする。より具体的に説明すると、前述したように、従来の手法では、素子特性検証機能１０４で使用される制限値のデータは素子物理特性データには含まれず、検証者が、図１１に示すように、制限値の情報を記述したファイル（検証用の素子検証情報）を、シミュレーションで使用する素子モデル等とは別に作成してシミュレータ１００に入力し動作させる必要がある。従って、シミュレータ毎に素子特性検証機能１０４の仕様が異なると、指定ミスも生じやすくなる。また、素子検証情報を素子モデルとは別に作成することで、素子の物理特性に変更があった場合において、素子モデルのみ該変更が反映され、素子検証情報については変更漏れが生じる場合もある。
【０００８】
また、シミュレータ１００によっては、素子特性検証機能１０４自体が内蔵されていないものもある。このようなシミュレータ１００では、素子の制限特性が検証できないという問題があった。
【０００９】
このように、従来の手法では、シミュレータによって機能不足のために制限特性の検証ができない、或いは機能自体がなく検証自体ができないという問題があった。
【００１０】
なお、シミュレーションの際に、従来より、シミュレータ１００に内蔵されない素子モデルが作成されて使用される場合もあるが、この場合であっても、従来の手法では、固有の物理特性や該固有の物理特性に応じた電気的特性が定義された素子モデルが作成され使用されるだけであり、上記問題を解決することはできない。
【００１１】
本発明は、上述した課題を解決するために提案されたものであり、回路検証手段によらず素子の制限特性の検証を容易に行うことができる素子モデル、素子モデル作成方法、回路検証方法、及び回路検証装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
また、本発明の素子モデルの作成方法は、少なくとも１つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルを作成する作成方法であって、コンピュータが、前記素子の固有の物理特性を定義する物理特性定義ステップと、前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義ステップと、前記素子の固有の物理特性に応じた電気的特性の制限を示す制限特性として、レイアウト制限特性を定義する制限特性定義ステップと、前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を定義する検証処理定義ステップと、を含んで構成されている。
【００１４】
また、本発明の回路検証方法及び回路検証装置は、少なくとも１つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルであって、前記素子の固有の物理特性を定義した物理特性定義部と、前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義部と、前記素子の固有の物理特性に応じた電気的特性のレイアウト制限を示す制限特性を定義した制限特性定義部と、前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を示す制限特性検証部と、を含む素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に制限特性を検証するものである。
【００１５】
また、本発明の回路検証装置を、前記素子モデルの作成方法により素子モデルを作成する作成手段と、前記作成手段により作成された素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に素子の制限特性を検証する回路検証手段と、を備えて構成することもできる。
【発明の効果】
【００１６】
以上説明したように、本発明によれば、回路検証手段によらず素子の制限特性の検証を容易に行うことができる、という効果を奏する。
【図面の簡単な説明】
【００１７】
【図１】実施の形態に係る回路検証システムの構成図である。
【図２】素子モデルの構成を示す図である。
【図３】第１の実施の形態に係る素子特性定義部の構成を示す図である。
【図４】第１の実施の形態に係る素子特性検証部の構成を示す図である。
【図５】第１の実施の形態に係る素子モデルの具体的な記述例を示す図である。
【図６】ネットリストにおける素子モデルの指定例を示す図である。
【図７】素子に流れる電流値が制限値を超えたため断線状態となったことを示すエラーメッセージの一例である。
【図８】第２の実施の形態に係る素子特性定義部の構成を示す図である。
【図９】第２の実施の形態に係る素子特性検証部の構成を示す図である。
【図１０】第２の実施の形態に係る素子モデルの具体的な記述例を示す図である。
【図１１】従来の回路シミュレーションの手法を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【００１９】
［第１の実施の形態］
【００２０】
本実施の形態に係る回路検証システム１０は、図１に示すように、素子モデル作成部２０及び回路検証部３０を備えている。回路検証部３０は、少なくとも１つの素子で構成された回路の動作を検証するためのシミュレーションを実行する。素子モデル作成部２０は、素子をモデル化した素子モデルであって、上記シミュレーションで使用される素子モデルを作成する。
【００２１】
素子モデル作成部２０及び回路検証部３０の各々は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、Ｉ／Ｏ（入出力）インタフェース、及び通信インタフェースを備え、それらがバスを介して相互に接続されて構成された一般的なコンピュータにより構成されている（図示省略）。Ｉ／Ｏインタフェースには、ＨＤＤ（ハードディスクドライブ）、キーボードやマウス等の操作部、及びディスプレイ等の表示部が接続される。通信インタフェースは、通信回線やＬＡＮ等のネットワークに接続されて、該ネットワークに接続された他の端末と相互に情報をやりとりする。
【００２２】
なお、素子モデル作成装置の機能と回路検証装置の機能を兼ね備えた１つのコンピュータにより回路検証システム１０を構成してもよいが、本実施の形態では、素子モデル作成装置と回路検証装置とが異なるコンピュータにより構成された回路検証システム１０を例に挙げて説明する。
【００２３】
素子モデル作成部２０を構成するコンピュータのＣＰＵは、該コンピュータのＲＯＭやＨＤＤ等に記憶された素子モデル作成プログラムを実行する。なお、素子モデル作成部２０のＣＰＵが実行するプログラムが記憶される記録媒体は、ＲＯＭやＨＤＤ等に限定されず、ＣＤ−ＲＯＭドライブやＦＤドライブであってもよいし、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの可搬型記録媒体や素子モデル作成部２０の外部に備えられたＨＤＤ等の記憶装置等であってもよく、更にまたネットワークを介して接続されたデータベース、或いは他のコンピュータシステム並びにそのデータベースであってもよい。
【００２４】
回路検証部３０を構成するコンピュータのＣＰＵは、該コンピュータのＲＯＭやＨＤＤ等に記憶されたプログラムを実行する。ＣＰＵが実行するプログラムには、回路の動作を検証するためのシミュレーションを実行するプログラムも含まれている。なお、回路検証部３０のＣＰＵが実行するプログラムが記憶される記録媒体は、ＲＯＭやＨＤＤ等に限定されず、ＣＤ−ＲＯＭドライブやＦＤドライブであってもよいし、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの可搬型記録媒体や回路検証部３０の外部に備えられたＨＤＤ等の記憶装置等であってもよく、更にまたネットワークを介して接続されたデータベース、或いは他のコンピュータシステム並びにそのデータベースであってもよい。
【００２５】
素子モデル作成部２０には、操作部や通信インタフェース等を介して、シミュレーションする回路を構成する素子の固有の物理特性を示すデータが入力される。素子の固有の物理特性を示すデータは、例えば、製造元等で素子の物理特性を実際に測定して解析した結果から得られるデータである（図３も参照。）。例えば、素子が抵抗素子である場合には素子の抵抗値等をいい、素子が容量素子である場合には素子の容量値等のデータをいう。
【００２６】
また、素子モデル作成部２０には、操作部や通信インタフェース等を介して、素子の固有の物理特性に応じた電気的特性の制限を示す制限特性を示すデータが入力される。以下、素子固有の物理特性に応じた電気的特性を、素子の電気的特性と呼称し、該電気的特性の制限を示す制限特性を素子の制限特性と呼称する。
【００２７】
ここで、素子の制限特性とは、例えば、これを超えると素子が異常状態となる（破壊され断線したり絶縁膜破壊等が生じたりする）電流や電圧の限界値、素子が仕様上安全に動作できる電圧値・電流値等の範囲である動作領域、素子のレイアウト制限（例えば、素子から所定範囲内に特定の素子を配置してはならない、或いは素子を特定の素子と並列に配置してはならない、といった、電気的特性に影響が出ないようにするためのレイアウト制限）等をいう。この制限特性を示すデータも、素子の物理特性を実際に測定して解析した結果から得られるデータである。
【００２８】
素子モデル作成部２０は、上記入力された各データに基づき、素子の固有の物理特性を定義し、素子の制限特性を定義し、素子の電気的特性であってシミュレーションを行なう電気的特性を定義し、シミュレーション中に、素子の電気的特性が制限特性に違反しているか否かを検証するための処理内容を定義して、素子モデルを作成する。
【００２９】
より具体的には、素子の固有の物理特性の定義は、入力された素子固有の物理特性を示すデータを用い、素子の制限特性の定義は、入力された素子の制限特性を示すデータを用いて行なう。また、素子の電気的特性は、素子の種類に応じて予め定められたテンプレートに、素子固有の物理特性を示すデータをあてはめて定義し、素子の制限特性を検証するための処理内容も、予め定められたテンプレートに、上記定義した素子の電気的特性をあてはめて定義する。
【００３０】
なお、素子モデルの作成には、多くの回路シミュレータで使用されるVerilog-A記述言語、もしくは、CMI(Common Model Interface)を用いることができる。当然ながら、本実施の形態に係る回路シミュレータとしての回路検証部３０は、該Verilog-A記述言語、もしくは、CMI(Common Model Interface)をサポートしており、素子モデルの記述を解釈可能に構成されているものとする。以下、素子モデルについて詳しく説明する。
【００３１】
図２に、素子モデル作成部２０により作成される素子モデル４０の構成を示す。本実施の形態の素子モデル４０は、素子特性定義部５０と素子特性検証部５２とを備えている。
【００３２】
素子特性定義部５０は、素子の特性を定義する部分である。図３に、素子特性定義部５０の構成を示す。本実施の形態の素子特性定義部５０は、素子の固有の物理特性を定義する物理特性定義部６０と、素子の制限特性を定義する制限特性定義部６２とを備えている。
【００３３】
素子特性検証部５２は、回路及び素子の特性の検証に必要な記述部分であって、シミュレーション実行中は、回路検証部３０により、検証対象の回路の動作時間軸に沿って所定の間隔で繰り返し読み込まれる。当所定の間隔とは、シミュレータ（回路検証部３０）により決められた間隔もしくはシミュレーション実行者が指定した間隔である。図４に素子特性検証部５２の構成を示す。素子特性検証部５２は、素子特性シミュレーション部７０と、制限特性検証部７２とを備えている。
【００３４】
素子特性シミュレーション部７０は、素子の電気的特性であって、シミュレーションを行なう電気的特性を定義した部分である。例えば、素子モデルが表す素子が抵抗素子であって、物理特性定義部６０で定義された物理特性が素子の抵抗値であった場合には、該素子の抵抗値、電圧値、及び電流値の関係をオームの法則で表した電気的特性などが素子特性シミュレーション部７０として記述される。
【００３５】
制限特性検証部７２は、回路検証部３０のシミュレーション中に、素子の電気的特性が素子の制限特性に違反しているか否かを検証するための処理内容を示す部分である。なお、制限特性検証部７２は、電気的特性が制限特性に違反した状態になった場合にのみ、その旨を出力するように記述してもよいし、電気的特性が制限特性に違反していない状態においては、正常である旨のメッセージを出力し続け、違反した状態になった場合に、制限特性に違反したことを示すメッセージ出力するように記述してもよい。
【００３６】
素子モデル作成部２０は、作成した素子モデルを回路検証部３０に入力する。
【００３７】
回路検証部３０には、素子モデル作成部２０で作成された素子モデル４０が入力されると共に、操作部や通信インタフェース等を介して、ネットリスト、及びシミュレーション条件を示すデータが入力される。
【００３８】
ネットリストは、検証対象の回路を構成する素子の接続状態を表すデータである。ネットリスト中には、検証対象の回路に使用される素子の素子モデル４０が指定されており、該指定された素子モデル４０がシミュレーションで使用される。シミュレーション条件には、シミュレーションの際に回路に入力される入力波形を定めるデータや、電源電圧、及び環境温度等が含まれる。
【００３９】
回路検証部３０は、入力されたネットリストで表された回路に、入力された素子モデルを適用して、シミュレーション条件に応じたシミュレーションを行い、シミュレーション結果（回路動作検証結果）を出力する。また、回路検証部３０は、シミュレーション中に、素子モデル４０の素子特性検証部５２に示される制限特性の検証処理も実行する。シミュレーションの結果得られた回路動作検証結果や、素子の制限特性の検証結果（素子検証結果）は、ＨＤＤ等の記憶装置に出力して記憶しておいてもよいし、表示部に表示するようにしてもよいし、通信インタフェースを介して他の装置に送信するようにしてもよい。
【００４０】
なお、制限特性の検証は、回路検証部３０が通常のシミュレーションの実行中に、素子モデルに記述されている素子特性検証部５２の処理内容を実行することで実現されるものであるため、回路検証部３０は、図１１に示す回路解析シミュレーション機能１０２さえ備えていれば、図１１に示す素子特性検証機能１０４が設けられていなくても、上記制限特性の検証を実行することができる。
【００４１】
図５に、本実施の形態に係る素子モデルの具体的な例を示す。
【００４２】
この素子モデルは、"metal_resistor"という名称が付与され、ｐ端子及びｎ端子に接続される抵抗素子の素子モデルである。素子特性定義部５０の物理特性定義部６０には、この抵抗素子の固有の物理特性として、１オームの抵抗値rが定義され、制限特性定義部６２には、この抵抗素子の制限特性として、１mAの電流値の限界値current_limitが定義されている。図５の素子モデルは、電流値1mAを超える大きさの電流が流れると素子が破壊され断線するという素子モデルであることを示している。
【００４３】
次に、素子特性検証部５２について説明する。素子特性検証部５２の素子特性シミュレーション部７０には、ｐ端子及びｎ端子間に接続された素子を流れる電流の値I(p,n)を、ｐ端子とｎ端子間の電圧値V(p,n)を素子の抵抗値rで除算した値として示した関係式が、素子の電気的特性として示されている。更に、素子特性シミュレーション部７０には、該電流の値I(p,n)を、currentというパラメータにセットする処理内容も記述されている。
【００４４】
制限特性検証部７２には、currentの絶対値が、上記制限特性定義部６２で定義された限界値current_limitを超えたか否かを検証（判定）し、超えた場合には、エラーメッセージを出力する、という処理内容が示されている。
【００４５】
図６に、ネットリストにおける素子モデルの指定例を示す。図６に示すように、シミュレーションする回路Rtestのｐ端子及びｎ端子の間に、metal_resistorという名称の素子モデルで表される素子が接続されるように、指定されている。
【００４６】
回路検証部３０は、上記のように指定された素子モデルを使用して、入力されたネットリストで表された回路の動作をシミュレーションする。そして、シミュレーション中に、定期的に図５の素子特性検証部５２に示される処理内容を実行することにより、制限特性を検証する。回路検証部３０は、このように、抵抗素子metal_resistorをシミュレーションで評価し、シミュレーション中に限界値1mAを超える電流が該素子を流れたと判定した場合には、配線が断線したと判定して、図７に示すように、シミュレーション中に素子に流れた電流の値（図７では２Ａ）が限界値を超えたため断線状態となったことを示すエラーメッセージを出力する。なお、素子検証の結果、制限特性違反となっても回路動作のシミュレーションは続行される。
【００４７】
以上説明したように、本実施の形態によれば、回路検証部３０の外部で作成する素子モデルに素子の制限特性の検証機能をもたせるようにしたため、回路検証部３０によらない検証環境を提供することが可能となり、素子モデルに制限特性の情報を入れ込むことで、不具合が生じるような回路設計を防止することが可能となる。また、シミュレーションを実行する際に、回路動作の検証者が、回路動作のシミュレーションに用いる素子モデルとは別の制限特性検証用のファイルを作成して、シミュレーションとは別に素子検証を行う必要がなくなる。これにより、回路設計をスムーズに行うことができる。
【００４８】
また、本実施の形態によれば、シミュレータに内蔵されている素子モデルで表されない特殊な素子についても、該素子をモデル化した素子モデルを作成して検証を行うことができる。
【００４９】
なお、本実施の形態では、抵抗素子を例に挙げて説明したが、素子モデルで表すことができる素子は抵抗素子に限定されるものではない。例えば、MOSトランジスタ、バイポーラトランジスタ、ダイオード、容量、インダクタ、特殊な特性をもつ素子等、様々な素子においても、同様に素子検証のための記述を素子モデルに含めることで、制限特性を検証することができる。例えば、MOSトランジスタについて素子モデルを作成するのであれば、ゲート容量やドレイン容量等の限界値を素子の制限特性として素子モデルに記述しておき、制限特性検証の処理手順も上記と同様に、記述しておけばよい。
【００５０】
また、本実施の形態では、回路動作の時間軸に沿って所定の時間が経過する毎に素子モデル４０の素子特性検証部５２の記述を読み込んで検証を実行する例について説明したが、素子のレイアウト制限を検証する場合には、シミュレーション中に何度も検証する必要がないため、この場合には、例えばシミュレーションの開始時だけに素子のレイアウト状態を示す値を取得して素子検証が行われるように素子特性検証部５２を記述して素子モデルを作成してもよい。
【００５１】
また、本実施の形態では、素子モデル作成部２０を、コンピュータに内蔵されるＣＰＵがＲＯＭ等に記憶されたプログラムを実行することにより実現されるものとして説明したが、これに限定されず、例えば、検証実行者が、キーボードやマウス等の操作部を操作することにより、素子の固有の物理特性を示すデータ及び制限特性を示すデータを用いて上記と同様に素子モデルを作成することで、素子モデル作成部２０の機能を実現するようにしてもよい。
【００５２】
［第２の実施の形態］
【００５３】
第１の実施の形態では、素子モデルに制限特性を検証するための記述を加えることにより、回路シミュレーション中に、素子の電気的特性が制限特性に違反するか否かを検証する例について説明したが、本実施の形態では、素子検証に加えて、素子の電気的特性が制限特性に違反する状態となって異常状態（断線等）が生じた場合における回路動作をシミュレーションで検証可能に素子モデルを作成する例について説明する。
【００５４】
従来の素子モデルでシミュレーションを実行した場合において、シミュレーション中に素子の制限特性に違反した状態（例えば、電流の限界値を超える大きな電流が素子に流れた状態）となっても、素子の固有の物理特性に応じた電気的特性でシミュレーションが続行される。
【００５５】
しかしながら、実際は、素子の電気的特性が制限特性に違反した状態になると、素子が素子固有の物理特性を発揮できない異常な状態（例えば、断線や絶縁膜破壊等）となってしまうため、シミュレーションによる検証結果は、実際にはあり得ない回路動作を示すものとなってしまう。そこで、本実施の形態では、素子モデル作成部２０において、第１の実施の形態で説明した素子検証だけでなく、素子の電気的特性が制限特性に違反する状態となり異常な状態となった場合における回路動作の検証結果が得られる素子モデルを作成し、回路検証部３０で用いるものとする。
【００５６】
図８に、本実施の形態に係る素子モデルの素子特性定義部５０の構成を示す。本実施の形態に係る素子特性定義部５０は、第１の実施の形態で説明した物理特性定義部６０及び制限特性定義部６２の他に、仮想物理特性定義部６４を備えている。
【００５７】
仮想物理特性定義部６４は、シミュレーションにおいて素子の異常状態を模擬するための仮想的な物理特性を定義する部分である。例えば、抵抗素子の素子モデルの制限特性定義部６２において電流の限界値が1mAの制限特性が定義されている場合には、電流が限界値を超え断線した状態を模擬するための仮想的な抵抗値をここで定義する。
【００５８】
図９に、本実施の形態に係る素子特性検証部５２の構成を示す。本実施の形態に係る素子特性検証部５２も、素子特性シミュレーション部７０と、制限特性検証部７２と、特性変更部７６とを備えている。素子特性シミュレーション部７０及び制限特性検証部７２は、第１の実施の形態と同様であるため、ここでは説明を省略する。
【００５９】
特性変更部７６は、素子の固有の物理特性に応じた電気的特性が制限特性に違反した状態であると判定された場合に、シミュレーションで使用される電気的特性を、物理特性定義部６０で定義した素子固有の物理特性に応じた電気的特性から、仮想物理特性定義部６４で定義した仮想的な物理特性に応じた電気的特性へ変更するための処理内容が記述される部分である。素子モデル作成部２０は、例えば、素子モデルが表わす素子の種類毎に予め定められた作成規則を用いて、特性変更部７６を定義して、素子モデルを作成する。
【００６０】
これにより、回路検証部３０は、素子モデルの素子特性検証部５２の記述内容に従って、素子の固有の物理特性に応じた電気的特性が制限特性に違反していない間は、物理特性定義部６０で定義された素子固有の物理特性に応じた電気的特性によりシミュレーションを行い、素子の固有の物理特性に応じた電気的特性が制限特性に違反した後は、仮想物理特性定義部６４で定義された仮想的な物理特性に応じた電気的特性によりシミュレーションを行う。
【００６１】
図１０に、本実施の形態に係る素子モデルの具体的な記述例を示す。
【００６２】
この素子モデルは、"resistor"という名称が付与され、且つｐ端子及びｎ端子に接続される抵抗素子の素子モデルである。素子特性定義部５０の物理特性定義部６０には、この抵抗素子の固有の物理特性として１オームの抵抗値Ｒが定義され、制限特性定義部６２には、この抵抗素子の制限特性として、１Ａの電流値の限界値current_limitが定義されている。また、仮想物理特性定義部６４には、断線を模擬する仮想的な物理特性として、１Ｇ（１×１０９）オームの抵抗値res_cutvalが定義されている。
【００６３】
次に、素子特性検証部５２の記述について説明する。この例では、初期ステップ（initial_step)、制限特性検証部７２、特性変更部７６、及び素子特性シミュレーション部７０の順に素子特性検証部５２が記述されている。
【００６４】
初期ステップでは、限界値current_limitを抵抗値Ｒで除算して、電圧値vol_limitを求め、パラメータResに対して抵抗値Ｒをセットする処理が記述されている。この例では、制限特性検証部７２において、電流値ではなく電圧値により制限特性を判定するため、上記制限特性定義部６２で定義されている電流値を電圧値に変換している。なお、初期ステップは、シミュレーションを開始したときに１回だけ実行される。
【００６５】
次に、制限特性検証部７２及び特性変更部７６について説明する。まず、ｐ端子とｎ端子間の電圧値V(p,n)が、電圧値vol_limitを超えているか否かを判断し（図１０（１）も参照）、超えていれば、Resに抵抗値res_cut_valの値をセットする（図１０の（２）も参照）と共に、制限特性に違反して断線した旨を示すエラーメッセージを出力し（図１０（３）も参照）、電圧値V(p,n)が電圧値vol_limitを超えていないと判断した場合には、Resには抵抗値Ｒの値をセットする（図１０（４）も参照）、という処理手順が記述されている。ここで、図１０（２）は、特性変更部７６に相当する記述であり、それ以外は、制限特性検証部７２に相当する記述である。
【００６６】
すなわち、抵抗値Ｒに応じた電気的特性が素子の制限特性に違反していなければ、抵抗値Ｒに応じた電気的特性でシミュレーションが実行され、抵抗値Ｒに応じた電気的特性が素子の制限特性に違反した場合には、制限特性違反となった旨を示すエラーメッセージを出力すると共に、シミュレーションを行う電気的特性が、異常時の抵抗値res_cut_valに応じた電気的特性となるようにResの値を変更し、抵抗値res_cut_valに応じた電気的特性でシミュレーションの実行が継続されるようにしている。すなわち、異常時には素子の抵抗値を高く設定して、シミュレーション中、素子に流れる電流値を上記固有の物理特性を適用する場合より小さくし、断線状態を模擬している。
【００６７】
素子特性シミュレーション部７０には、ｐ端子及びｎ端子間を流れる電流の値I(p,n)を、ｐ端子とｎ端子間の電圧値V(p,n)をResで除算して示した電気的特性が記述されている。なお、Resの値は、上述したように、シミュレーション中の素子の電気的特性が素子の制限特性に違反しない正常な状態か、素子の電気的特性が素子の制限特性に違反した異常な状態かに応じて異なる値となる。
【００６８】
なお、回路検証部３０は、シミュレーションを開始すると、回路動作の時間軸に沿って所定の時間が経過する毎に素子モデルの素子特性検証部５２の記述を読み込んで処理を実行するが、初期ステップの処理は、シミュレーション開始時以外は実行されない。
【００６９】
このように素子モデルを作成することで、回路検証部３０によるシミュレーション実行中に、素子の制限特性が検証されるだけでなく、シミュレーション中に素子の電気的特性が制限特性に違反する状態となっても、素子に異常が生じた状態を模擬した回路動作も検証できる。
【符号の説明】
【００７０】
１０   回路検証システム
２０   素子モデル作成部
３０   回路検証部
４０   素子モデル
５０   素子特性定義部
５２   素子特性検証部
６０   物理特性定義部
６２   制限特性定義部
６４   仮想物理特性定義部
７０   素子特性シミュレーション部（電気的特性定義部）
７２   制限特性検証部
７６   特性変更部
【図１】
0005758212.tif 000002
【図２】
0005758212.tif 000003
【図３】
0005758212.tif 000004
【図４】
0005758212.tif 000005
【図５】
0005758212.tif 000006
【図６】
0005758212.tif 000007
【図７】
0005758212.tif 000008
【図８】
0005758212.tif 000009
【図９】
0005758212.tif 000010
【図１０】
0005758212.tif 000011
【図１１】
0005758212.tif 000012