【文献】
Junjun Li et al.,Compact Modeling of On-Chip ESD Protection Devices Using Verilog-A,IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS,IEEE,2006年 6月,Vol.25, No.6,pp.1047〜1063
(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
シミュレータ100で使用される従来の素子モデルは、一般的な素子の固有の物理特性(抵抗値、容量値等)及び素子固有の物理特性に応じた電気的特性を現すだけであり、素子の異常状態(例えば、断線や絶縁膜破壊等)が生じる電流や電圧の制限値を検証する機能は含まれていない。従って、シミュレーション中に素子に制限値を超える電流が流れるか否か、制限値を超える電圧が加えられるか否か等、制限特性を検証するには、
図11に示されるように、シミュレータ100に内蔵されている素子特性検証機能104を用いるしかなかった。シミュレータ100に内蔵される素子特性検証機能104の検証対象は限られており、該検証対象から外れた素子の限界値については該機能では検証できないという問題があった。
【0007】
また、シミュレータ100が異なると素子特性検証機能104の仕様が異なる(素子電圧や素子電流を検証する方法が異なる)。素子特性検証機能104の仕様がシミュレータ毎に異なると、検証者が制限値の指定を誤ったり、指定漏れが生じやすくなったりする。より具体的に説明すると、前述したように、従来の手法では、素子特性検証機能104で使用される制限値のデータは素子物理特性データには含まれず、検証者が、
図11に示すように、制限値の情報を記述したファイル(検証用の素子検証情報)を、シミュレーションで使用する素子モデル等とは別に作成してシミュレータ100に入力し動作させる必要がある。従って、シミュレータ毎に素子特性検証機能104の仕様が異なると、指定ミスも生じやすくなる。また、素子検証情報を素子モデルとは別に作成することで、素子の物理特性に変更があった場合において、素子モデルのみ該変更が反映され、素子検証情報については変更漏れが生じる場合もある。
【0008】
また、シミュレータ100によっては、素子特性検証機能104自体が内蔵されていないものもある。このようなシミュレータ100では、素子の制限特性が検証できないという問題があった。
【0009】
このように、従来の手法では、シミュレータによって機能不足のために制限特性の検証ができない、或いは機能自体がなく検証自体ができないという問題があった。
【0010】
なお、シミュレーションの際に、従来より、シミュレータ100に内蔵されない素子モデルが作成されて使用される場合もあるが、この場合であっても、従来の手法では、固有の物理特性や該固有の物理特性に応じた電気的特性が定義された素子モデルが作成され使用されるだけであり、上記問題を解決することはできない。
【0011】
本発明は、上述した課題を解決するために提案されたものであり、回路検証手段によらず素子の制限特性の検証を容易に行うことができる素子モデル、素子モデル作成方法、回路検証方法、及び回路検証装置を提供することを目的とする。
【課題を解決するための手段】
【0013】
また、本発明の素子モデルの作成方法は、少なくとも1つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルを作成する作成方法であって、
コンピュータが、前記素子の固有の物理特性を定義する物理特性定義ステップと、前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義ステップと、前記素子の固有の物理特性に応じた電気的特性の制限を示す制限特性
として、レイアウト制限特性を定義する制限特性定義ステップと、前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を定義する検証処理定義ステップと、を含んで構成されている。
【0014】
また、本発明の回路検証方法及び回路検証装置は、
少なくとも1つの素子で構成された回路の動作を検証するためのシミュレーションで使用される前記素子をモデル化した素子モデルであって、前記素子の固有の物理特性を定義した物理特性定義部と、前記素子の固有の物理特性を用いた電気的特性であって前記シミュレーションを行う電気的特性を定義する電気的特性定義部と、前記素子の固有の物理特性に応じた電気的特性のレイアウト制限を示す制限特性を定義した制限特性定義部と、前記シミュレーション中に、前記素子の固有の物理特性に応じた電気的特性が前記制限特性に違反しているか否かを検証するための処理内容を示す制限特性検証部と、を含む素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に制限特性を検証するものである。
【0015】
また、本発明の回路検証装置を、前記素子モデルの作成方法により素子モデルを作成する作成手段と、前記作成手段により作成された素子モデルを用いて、前記シミュレーションを行うと共に、該シミュレーション中に素子の制限特性を検証する回路検証手段と、を備えて構成することもできる。
【発明の効果】
【0016】
以上説明したように、本発明によれば、回路検証手段によらず素子の制限特性の検証を容易に行うことができる、という効果を奏する。
【発明を実施するための形態】
【0018】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【0020】
本実施の形態に係る回路検証システム10は、
図1に示すように、素子モデル作成部20及び回路検証部30を備えている。回路検証部30は、少なくとも1つの素子で構成された回路の動作を検証するためのシミュレーションを実行する。素子モデル作成部20は、素子をモデル化した素子モデルであって、上記シミュレーションで使用される素子モデルを作成する。
【0021】
素子モデル作成部20及び回路検証部30の各々は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、I/O(入出力)インタフェース、及び通信インタフェースを備え、それらがバスを介して相互に接続されて構成された一般的なコンピュータにより構成されている(図示省略)。I/Oインタフェースには、HDD(ハードディスクドライブ)、キーボードやマウス等の操作部、及びディスプレイ等の表示部が接続される。通信インタフェースは、通信回線やLAN等のネットワークに接続されて、該ネットワークに接続された他の端末と相互に情報をやりとりする。
【0022】
なお、素子モデル作成装置の機能と回路検証装置の機能を兼ね備えた1つのコンピュータにより回路検証システム10を構成してもよいが、本実施の形態では、素子モデル作成装置と回路検証装置とが異なるコンピュータにより構成された回路検証システム10を例に挙げて説明する。
【0023】
素子モデル作成部20を構成するコンピュータのCPUは、該コンピュータのROMやHDD等に記憶された素子モデル作成プログラムを実行する。なお、素子モデル作成部20のCPUが実行するプログラムが記憶される記録媒体は、ROMやHDD等に限定されず、CD−ROMドライブやFDドライブであってもよいし、DVDディスク、光磁気ディスク、ICカードなどの可搬型記録媒体や素子モデル作成部20の外部に備えられたHDD等の記憶装置等であってもよく、更にまたネットワークを介して接続されたデータベース、或いは他のコンピュータシステム並びにそのデータベースであってもよい。
【0024】
回路検証部30を構成するコンピュータのCPUは、該コンピュータのROMやHDD等に記憶されたプログラムを実行する。CPUが実行するプログラムには、回路の動作を検証するためのシミュレーションを実行するプログラムも含まれている。なお、回路検証部30のCPUが実行するプログラムが記憶される記録媒体は、ROMやHDD等に限定されず、CD−ROMドライブやFDドライブであってもよいし、DVDディスク、光磁気ディスク、ICカードなどの可搬型記録媒体や回路検証部30の外部に備えられたHDD等の記憶装置等であってもよく、更にまたネットワークを介して接続されたデータベース、或いは他のコンピュータシステム並びにそのデータベースであってもよい。
【0025】
素子モデル作成部20には、操作部や通信インタフェース等を介して、シミュレーションする回路を構成する素子の固有の物理特性を示すデータが入力される。素子の固有の物理特性を示すデータは、例えば、製造元等で素子の物理特性を実際に測定して解析した結果から得られるデータである(
図3も参照。)。例えば、素子が抵抗素子である場合には素子の抵抗値等をいい、素子が容量素子である場合には素子の容量値等のデータをいう。
【0026】
また、素子モデル作成部20には、操作部や通信インタフェース等を介して、素子の固有の物理特性に応じた電気的特性の制限を示す制限特性を示すデータが入力される。以下、素子固有の物理特性に応じた電気的特性を、素子の電気的特性と呼称し、該電気的特性の制限を示す制限特性を素子の制限特性と呼称する。
【0027】
ここで、素子の制限特性とは、例えば、これを超えると素子が異常状態となる(破壊され断線したり絶縁膜破壊等が生じたりする)電流や電圧の限界値、素子が仕様上安全に動作できる電圧値・電流値等の範囲である動作領域、素子のレイアウト制限(例えば、素子から所定範囲内に特定の素子を配置してはならない、或いは素子を特定の素子と並列に配置してはならない、といった、電気的特性に影響が出ないようにするためのレイアウト制限)等をいう。この制限特性を示すデータも、素子の物理特性を実際に測定して解析した結果から得られるデータである。
【0028】
素子モデル作成部20は、上記入力された各データに基づき、素子の固有の物理特性を定義し、素子の制限特性を定義し、素子の電気的特性であってシミュレーションを行なう電気的特性を定義し、シミュレーション中に、素子の電気的特性が制限特性に違反しているか否かを検証するための処理内容を定義して、素子モデルを作成する。
【0029】
より具体的には、素子の固有の物理特性の定義は、入力された素子固有の物理特性を示すデータを用い、素子の制限特性の定義は、入力された素子の制限特性を示すデータを用いて行なう。また、素子の電気的特性は、素子の種類に応じて予め定められたテンプレートに、素子固有の物理特性を示すデータをあてはめて定義し、素子の制限特性を検証するための処理内容も、予め定められたテンプレートに、上記定義した素子の電気的特性をあてはめて定義する。
【0030】
なお、素子モデルの作成には、多くの回路シミュレータで使用されるVerilog-A記述言語、もしくは、CMI(Common Model Interface)を用いることができる。当然ながら、本実施の形態に係る回路シミュレータとしての回路検証部30は、該Verilog-A記述言語、もしくは、CMI(Common Model Interface)をサポートしており、素子モデルの記述を解釈可能に構成されているものとする。以下、素子モデルについて詳しく説明する。
【0031】
図2に、素子モデル作成部20により作成される素子モデル40の構成を示す。本実施の形態の素子モデル40は、素子特性定義部50と素子特性検証部52とを備えている。
【0032】
素子特性定義部50は、素子の特性を定義する部分である。
図3に、素子特性定義部50の構成を示す。本実施の形態の素子特性定義部50は、素子の固有の物理特性を定義する物理特性定義部60と、素子の制限特性を定義する制限特性定義部62とを備えている。
【0033】
素子特性検証部52は、回路及び素子の特性の検証に必要な記述部分であって、シミュレーション実行中は、回路検証部30により、検証対象の回路の動作時間軸に沿って所定の間隔で繰り返し読み込まれる。当所定の間隔とは、シミュレータ(回路検証部30)により決められた間隔もしくはシミュレーション実行者が指定した間隔である。
図4に素子特性検証部52の構成を示す。素子特性検証部52は、素子特性シミュレーション部70と、制限特性検証部72とを備えている。
【0034】
素子特性シミュレーション部70は、素子の電気的特性であって、シミュレーションを行なう電気的特性を定義した部分である。例えば、素子モデルが表す素子が抵抗素子であって、物理特性定義部60で定義された物理特性が素子の抵抗値であった場合には、該素子の抵抗値、電圧値、及び電流値の関係をオームの法則で表した電気的特性などが素子特性シミュレーション部70として記述される。
【0035】
制限特性検証部72は、回路検証部30のシミュレーション中に、素子の電気的特性が素子の制限特性に違反しているか否かを検証するための処理内容を示す部分である。なお、制限特性検証部72は、電気的特性が制限特性に違反した状態になった場合にのみ、その旨を出力するように記述してもよいし、電気的特性が制限特性に違反していない状態においては、正常である旨のメッセージを出力し続け、違反した状態になった場合に、制限特性に違反したことを示すメッセージ出力するように記述してもよい。
【0036】
素子モデル作成部20は、作成した素子モデルを回路検証部30に入力する。
【0037】
回路検証部30には、素子モデル作成部20で作成された素子モデル40が入力されると共に、操作部や通信インタフェース等を介して、ネットリスト、及びシミュレーション条件を示すデータが入力される。
【0038】
ネットリストは、検証対象の回路を構成する素子の接続状態を表すデータである。ネットリスト中には、検証対象の回路に使用される素子の素子モデル40が指定されており、該指定された素子モデル40がシミュレーションで使用される。シミュレーション条件には、シミュレーションの際に回路に入力される入力波形を定めるデータや、電源電圧、及び環境温度等が含まれる。
【0039】
回路検証部30は、入力されたネットリストで表された回路に、入力された素子モデルを適用して、シミュレーション条件に応じたシミュレーションを行い、シミュレーション結果(回路動作検証結果)を出力する。また、回路検証部30は、シミュレーション中に、素子モデル40の素子特性検証部52に示される制限特性の検証処理も実行する。シミュレーションの結果得られた回路動作検証結果や、素子の制限特性の検証結果(素子検証結果)は、HDD等の記憶装置に出力して記憶しておいてもよいし、表示部に表示するようにしてもよいし、通信インタフェースを介して他の装置に送信するようにしてもよい。
【0040】
なお、制限特性の検証は、回路検証部30が通常のシミュレーションの実行中に、素子モデルに記述されている素子特性検証部52の処理内容を実行することで実現されるものであるため、回路検証部30は、
図11に示す回路解析シミュレーション機能102さえ備えていれば、
図11に示す素子特性検証機能104が設けられていなくても、上記制限特性の検証を実行することができる。
【0041】
図5に、本実施の形態に係る素子モデルの具体的な例を示す。
【0042】
この素子モデルは、"metal_resistor"という名称が付与され、p端子及びn端子に接続される抵抗素子の素子モデルである。素子特性定義部50の物理特性定義部60には、この抵抗素子の固有の物理特性として、1オームの抵抗値rが定義され、制限特性定義部62には、この抵抗素子の制限特性として、1mAの電流値の限界値current_limitが定義されている。
図5の素子モデルは、電流値1mAを超える大きさの電流が流れると素子が破壊され断線するという素子モデルであることを示している。
【0043】
次に、素子特性検証部52について説明する。素子特性検証部52の素子特性シミュレーション部70には、p端子及びn端子間に接続された素子を流れる電流の値I(p,n)を、p端子とn端子間の電圧値V(p,n)を素子の抵抗値rで除算した値として示した関係式が、素子の電気的特性として示されている。更に、素子特性シミュレーション部70には、該電流の値I(p,n)を、currentというパラメータにセットする処理内容も記述されている。
【0044】
制限特性検証部72には、currentの絶対値が、上記制限特性定義部62で定義された限界値current_limitを超えたか否かを検証(判定)し、超えた場合には、エラーメッセージを出力する、という処理内容が示されている。
【0045】
図6に、ネットリストにおける素子モデルの指定例を示す。
図6に示すように、シミュレーションする回路Rtestのp端子及びn端子の間に、metal_resistorという名称の素子モデルで表される素子が接続されるように、指定されている。
【0046】
回路検証部30は、上記のように指定された素子モデルを使用して、入力されたネットリストで表された回路の動作をシミュレーションする。そして、シミュレーション中に、定期的に
図5の素子特性検証部52に示される処理内容を実行することにより、制限特性を検証する。回路検証部30は、このように、抵抗素子metal_resistorをシミュレーションで評価し、シミュレーション中に限界値1mAを超える電流が該素子を流れたと判定した場合には、配線が断線したと判定して、
図7に示すように、シミュレーション中に素子に流れた電流の値(
図7では2A)が限界値を超えたため断線状態となったことを示すエラーメッセージを出力する。なお、素子検証の結果、制限特性違反となっても回路動作のシミュレーションは続行される。
【0047】
以上説明したように、本実施の形態によれば、回路検証部30の外部で作成する素子モデルに素子の制限特性の検証機能をもたせるようにしたため、回路検証部30によらない検証環境を提供することが可能となり、素子モデルに制限特性の情報を入れ込むことで、不具合が生じるような回路設計を防止することが可能となる。また、シミュレーションを実行する際に、回路動作の検証者が、回路動作のシミュレーションに用いる素子モデルとは別の制限特性検証用のファイルを作成して、シミュレーションとは別に素子検証を行う必要がなくなる。これにより、回路設計をスムーズに行うことができる。
【0048】
また、本実施の形態によれば、シミュレータに内蔵されている素子モデルで表されない特殊な素子についても、該素子をモデル化した素子モデルを作成して検証を行うことができる。
【0049】
なお、本実施の形態では、抵抗素子を例に挙げて説明したが、素子モデルで表すことができる素子は抵抗素子に限定されるものではない。例えば、MOSトランジスタ、バイポーラトランジスタ、ダイオード、容量、インダクタ、特殊な特性をもつ素子等、様々な素子においても、同様に素子検証のための記述を素子モデルに含めることで、制限特性を検証することができる。例えば、MOSトランジスタについて素子モデルを作成するのであれば、ゲート容量やドレイン容量等の限界値を素子の制限特性として素子モデルに記述しておき、制限特性検証の処理手順も上記と同様に、記述しておけばよい。
【0050】
また、本実施の形態では、回路動作の時間軸に沿って所定の時間が経過する毎に素子モデル40の素子特性検証部52の記述を読み込んで検証を実行する例について説明したが、素子のレイアウト制限を検証する場合には、シミュレーション中に何度も検証する必要がないため、この場合には、例えばシミュレーションの開始時だけに素子のレイアウト状態を示す値を取得して素子検証が行われるように素子特性検証部52を記述して素子モデルを作成してもよい。
【0051】
また、本実施の形態では、素子モデル作成部20を、コンピュータに内蔵されるCPUがROM等に記憶されたプログラムを実行することにより実現されるものとして説明したが、これに限定されず、例えば、検証実行者が、キーボードやマウス等の操作部を操作することにより、素子の固有の物理特性を示すデータ及び制限特性を示すデータを用いて上記と同様に素子モデルを作成することで、素子モデル作成部20の機能を実現するようにしてもよい。
【0053】
第1の実施の形態では、素子モデルに制限特性を検証するための記述を加えることにより、回路シミュレーション中に、素子の電気的特性が制限特性に違反するか否かを検証する例について説明したが、本実施の形態では、素子検証に加えて、素子の電気的特性が制限特性に違反する状態となって異常状態(断線等)が生じた場合における回路動作をシミュレーションで検証可能に素子モデルを作成する例について説明する。
【0054】
従来の素子モデルでシミュレーションを実行した場合において、シミュレーション中に素子の制限特性に違反した状態(例えば、電流の限界値を超える大きな電流が素子に流れた状態)となっても、素子の固有の物理特性に応じた電気的特性でシミュレーションが続行される。
【0055】
しかしながら、実際は、素子の電気的特性が制限特性に違反した状態になると、素子が素子固有の物理特性を発揮できない異常な状態(例えば、断線や絶縁膜破壊等)となってしまうため、シミュレーションによる検証結果は、実際にはあり得ない回路動作を示すものとなってしまう。そこで、本実施の形態では、素子モデル作成部20において、第1の実施の形態で説明した素子検証だけでなく、素子の電気的特性が制限特性に違反する状態となり異常な状態となった場合における回路動作の検証結果が得られる素子モデルを作成し、回路検証部30で用いるものとする。
【0056】
図8に、本実施の形態に係る素子モデルの素子特性定義部50の構成を示す。本実施の形態に係る素子特性定義部50は、第1の実施の形態で説明した物理特性定義部60及び制限特性定義部62の他に、仮想物理特性定義部64を備えている。
【0057】
仮想物理特性定義部64は、シミュレーションにおいて素子の異常状態を模擬するための仮想的な物理特性を定義する部分である。例えば、抵抗素子の素子モデルの制限特性定義部62において電流の限界値が1mAの制限特性が定義されている場合には、電流が限界値を超え断線した状態を模擬するための仮想的な抵抗値をここで定義する。
【0058】
図9に、本実施の形態に係る素子特性検証部52の構成を示す。本実施の形態に係る素子特性検証部52も、素子特性シミュレーション部70と、制限特性検証部72と、特性変更部76とを備えている。素子特性シミュレーション部70及び制限特性検証部72は、第1の実施の形態と同様であるため、ここでは説明を省略する。
【0059】
特性変更部76は、素子の固有の物理特性に応じた電気的特性が制限特性に違反した状態であると判定された場合に、シミュレーションで使用される電気的特性を、物理特性定義部60で定義した素子固有の物理特性に応じた電気的特性から、仮想物理特性定義部64で定義した仮想的な物理特性に応じた電気的特性へ変更するための処理内容が記述される部分である。素子モデル作成部20は、例えば、素子モデルが表わす素子の種類毎に予め定められた作成規則を用いて、特性変更部76を定義して、素子モデルを作成する。
【0060】
これにより、回路検証部30は、素子モデルの素子特性検証部52の記述内容に従って、素子の固有の物理特性に応じた電気的特性が制限特性に違反していない間は、物理特性定義部60で定義された素子固有の物理特性に応じた電気的特性によりシミュレーションを行い、素子の固有の物理特性に応じた電気的特性が制限特性に違反した後は、仮想物理特性定義部64で定義された仮想的な物理特性に応じた電気的特性によりシミュレーションを行う。
【0061】
図10に、本実施の形態に係る素子モデルの具体的な記述例を示す。
【0062】
この素子モデルは、"resistor"という名称が付与され、且つp端子及びn端子に接続される抵抗素子の素子モデルである。素子特性定義部50の物理特性定義部60には、この抵抗素子の固有の物理特性として1オームの抵抗値Rが定義され、制限特性定義部62には、この抵抗素子の制限特性として、1Aの電流値の限界値current_limitが定義されている。また、仮想物理特性定義部64には、断線を模擬する仮想的な物理特性として、1G(1×10
9)オームの抵抗値res_cutvalが定義されている。
【0063】
次に、素子特性検証部52の記述について説明する。この例では、初期ステップ(initial_step)、制限特性検証部72、特性変更部76、及び素子特性シミュレーション部70の順に素子特性検証部52が記述されている。
【0064】
初期ステップでは、限界値current_limitを抵抗値Rで除算して、電圧値vol_limitを求め、パラメータResに対して抵抗値Rをセットする処理が記述されている。この例では、制限特性検証部72において、電流値ではなく電圧値により制限特性を判定するため、上記制限特性定義部62で定義されている電流値を電圧値に変換している。なお、初期ステップは、シミュレーションを開始したときに1回だけ実行される。
【0065】
次に、制限特性検証部72及び特性変更部76について説明する。まず、p端子とn端子間の電圧値V(p,n)が、電圧値vol_limitを超えているか否かを判断し(
図10(1)も参照)、超えていれば、Resに抵抗値res_cut_valの値をセットする(
図10の(2)も参照)と共に、制限特性に違反して断線した旨を示すエラーメッセージを出力し(
図10(3)も参照)、電圧値V(p,n)が電圧値vol_limitを超えていないと判断した場合には、Resには抵抗値Rの値をセットする(
図10(4)も参照)、という処理手順が記述されている。ここで、
図10(2)は、特性変更部76に相当する記述であり、それ以外は、制限特性検証部72に相当する記述である。
【0066】
すなわち、抵抗値Rに応じた電気的特性が素子の制限特性に違反していなければ、抵抗値Rに応じた電気的特性でシミュレーションが実行され、抵抗値Rに応じた電気的特性が素子の制限特性に違反した場合には、制限特性違反となった旨を示すエラーメッセージを出力すると共に、シミュレーションを行う電気的特性が、異常時の抵抗値res_cut_valに応じた電気的特性となるようにResの値を変更し、抵抗値res_cut_valに応じた電気的特性でシミュレーションの実行が継続されるようにしている。すなわち、異常時には素子の抵抗値を高く設定して、シミュレーション中、素子に流れる電流値を上記固有の物理特性を適用する場合より小さくし、断線状態を模擬している。
【0067】
素子特性シミュレーション部70には、p端子及びn端子間を流れる電流の値I(p,n)を、p端子とn端子間の電圧値V(p,n)をResで除算して示した電気的特性が記述されている。なお、Resの値は、上述したように、シミュレーション中の素子の電気的特性が素子の制限特性に違反しない正常な状態か、素子の電気的特性が素子の制限特性に違反した異常な状態かに応じて異なる値となる。
【0068】
なお、回路検証部30は、シミュレーションを開始すると、回路動作の時間軸に沿って所定の時間が経過する毎に素子モデルの素子特性検証部52の記述を読み込んで処理を実行するが、初期ステップの処理は、シミュレーション開始時以外は実行されない。
【0069】
このように素子モデルを作成することで、回路検証部30によるシミュレーション実行中に、素子の制限特性が検証されるだけでなく、シミュレーション中に素子の電気的特性が制限特性に違反する状態となっても、素子に異常が生じた状態を模擬した回路動作も検証できる。