(57)【特許請求の範囲】
【請求項１】
解析対象となる半導体装置の電源系ネットリストを抽出する電源系ネットリスト抽出手段と、
前記半導体装置中の各ブロックの電源電流波形を算出するブロック電源電流波形解析手段と、
前記電源系ネットリストに前記ブロック電源電流波形解析手段で算出された各ブロックの電源電流波形をもつ電流源を付加して電流源付加後電源系ネットリストを生成する電流源付加手段と、
前記電流源付加手段で生成された電流源付加後電源系ネットリストに対して回路シミュレーションを実行し、各ブロックの動作に伴い発生するノイズの時系列的な変化を示す電源系の電流電圧波形データを出力する回路シミュレーション手段と、
前記回路シミュレーション手段による回路シミュレーションの結果を表示する表示手段と
を備えることを特徴とする半導体装置のノイズ解析装置。
【請求項２】
前記回路シミュレーション手段から出力された電源系の電流電圧波形データをフーリエ変換してスペクトルデータを算出するフーリエ変換手段を備え、
前記表示手段は、前記回路シミュレーション手段による回路シミュレーションの結果と前記フーリエ変換手段によるフーリエ変換の結果を表示することを特徴とする請求項１記載の半導体装置のノイズ解析装置。
【請求項３】
解析対象として指定されたブロックのブロック指定情報と、当該ブロック指定情報にしたがって指定されたブロックに対応する電流源が単独で存在する場合の前記回路シミュレーション手段により得られる電源系の電流電圧波形データとを合成して、合成後電源系電流電圧波形データを生成する電源系電流電圧波形データ合成手段と、
前記電源系電流電圧波形データ合成手段により生成された合成後電源系電流電圧波形データに対してフーリエ変換を実行するフーリエ変換手段を設けたことを特徴とする請求項１に記載の半導体装置のノイズ解析装置。
【請求項４】
前記電流源付加手段は、各ブロックに対して電流源を付加し、それぞれの前記電流源に対して、一つの区間には一つの電流源についてのみ電流波形が与えられる、複数の区間からなる電流波形を与えることを特徴とする請求項３に記載の半導体装置のノイズ解析装置。
【請求項５】
回路素子値変更情報に従って、電流源を付加した電源系ネットリスト中の回路素子の素子値を変更する回路素子変更手段を備えることを特徴とする請求項１乃至２に記載の半導体装置のノイズ解析装置。
【請求項６】
前記ブロックは、レイアウトデータを所定の大きさの格子で区切ることにより定義されたものであることを特徴とする請求項１乃至５記載の半導体装置のノイズ解析装置。
【請求項７】
前記表示手段は、指定された周波数におけるスペクトル強度の大小関係を、色彩、模様もしくはこれらの結合により区別してレイアウトデータ上に表示することを特徴とする請求項１乃至５記載の半導体装置のノイズ解析装置。
【請求項８】
前記表示手段は、指定された時刻における電流の方向を矢印で、電流の大きさを矢印の色、長さもしくは太さにより区別してレイアウトデータ上に表示することを特徴とする請求項１乃至５記載の半導体装置のノイズ解析装置。
【請求項９】
前記表示手段は、レイアウトデータ上の指定された位置における電流波形データ及び電流スペクトルデータを表示することを特徴とする請求項２乃至５記載の半導体装置のノイズ解析装置。
【請求項１０】
前記表示手段は、並行する配線に電流が同じ向きに流れている部分を含む領域を他の領域と区別して表示することを特徴とする請求項１乃至５記載の半導体装置のノイズ解析装置。
【請求項１１】
前記表示手段は、電流がループ状に流れている部分の面積とループ部分を流れる電流の積が指定した値よりも大きい部分を含む領域を他の領域と区別して表示することを特徴とする請求項１乃至５記載の半導体装置のノイズ解析装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、集積回路などの半導体装置のノイズ対策に関するもので、例えば電源系に発生するノイズや共振により発生するノイズを低減するための技術に関する。
【０００２】
【従来の技術】
近年、集積回路の高速化、高集積化に伴い、集積回路に起因するＥＭＩノイズが大きな問題となっている。ＥＭＩノイズが発生する原因としては、集積回路内部の多数の回路素子が同時にスイッチングを行うと電源線に瞬間的に大きな電流が流れる。このように急激に変化する電流は高周波成分を多く含むため、集積回路内部の配線や集積回路につながる集積回路外部の配線をアンテナとして電磁波を放射し、これがＥＭＩノイズとなり、他の電子機器に悪影響を与えるものと考えられている。
【０００３】
従来、このような集積回路に起因するＥＭＩノイズを低減するために、電源系に容量や抵抗を付加したり、電源を複数に分離するという手法がとられている。
【０００４】
【発明が解決しようとする課題】
上記手法によるノイズ対策では、その効果を調べるために実際に集積回路を製造して、集積回路の端子から外に出る電流を実測してノイズレベルを評価していた。このため、ノイズを低減するためには容量や抵抗の配置、大きさなどを変えながら実測を繰り返すしかなく、時間とコストがかかる作業となっていた。
【０００５】
ところで、ＥＭＩノイズ対策において、設計データから集積回路の動作に伴う電源の電流スペクトルが解析できれば、チップ製造前にノイズレベルを予測することができる。また、集積回路の端子位置での電流スペクトルだけでなく、集積回路内部の電源系の各部における電流スペクトルや電流経路を解析できれば、チップ製造前に容量や抵抗の配置や大きさなどを最適化することができる。しかし、実測で得られるのは集積回路の端子から外に出る電流の情報のみであり、集積回路内部の電流の情報を得ることはできないため、電流スペクトルや電流経路などの解析は不可能であった。
【０００６】
こうした集積回路の電源系の解析に関する従来技術として、例えば特開平９−５５４３３号公報には、自動レイアウトの結果を利用して論理シミュレーションを実行することにより、回路内の電源配線、接地配線の電圧降下を自動的に求めるようにした半導体集積回路のシミュレーション装置およびシミュレーション方法が提案されている。また、特開平８−２０２７６３号公報には、半導体回路のレイアウト上の機能領域をコンパクト化コンポーネント値にコンパクト化し、このコンパクト化コンポーネント値をもとにパワーネットワークのシミュレーションを行うことにより、ＶＬＳＩ回路のパワーネットワークの性能の効率的な分析を行うことができるようにした超ＬＳＩ回路のパワーネットワークの分析装置及び分析方法が提案されている。しかしながら、これらの技術はいずれも電源系の電圧降下やエレクトロマイグレーションを解析するものであり、電源系の電流スペクトルや電流経路を解析することはできなかった。
【０００７】
一方、集積回路は等価的にＬＣ並列共振回路とみなすことができるため、この共振回路により大きなノイズを発生する場合がある。こうしたノイズを低減するには、共振をキャンセルさせたり、共振のＱを下げるなどの方法が考えられる。
【０００８】
上記共振をキャンセルする方法として、例えば特開平１０−２３６６４号公報には、集積回路にＲＬＣの直列共振回路を付加する方法が提案されている。しかし、この方法ではＬＳＩに寄生するＬＣの容量を正確に見積もることが難しいため、付加する回路のＲ、Ｌ、Ｃの各素子値を決めるためには素子値を変えながら実測を繰り返すしかなく、作業に時間とコストがかかるという問題点があった。
【０００９】
また、共振のＱを下げる方法としては電源抵抗を付加する方法がある。しかし、この方法では付加する抵抗が大きいと電源電圧降下を招くおそれがあるため、最適な抵抗値を決めるには抵抗値を変えながら実測を繰り返すしかなく、作業に時間とコストがかかるという問題点があった。
【００１０】
この発明は、半導体装置のノイズ対策を効率良く行うことができる半導体装置のノイズ解析装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記目的を達成するため、請求項１の発明は、解析対象となる半導体装置の電源系ネットリストを抽出する電源系ネットリスト抽出手段と、前記半導体装置中の各ブロックの電源電流波形を算出するブロック電源電流波形解析手段と、前記電源系ネットリストに前記ブロック電源電流波形解析手段で算出された各ブロックの電源電流波形をもつ電流源を付加して電流源付加後電源系ネットリストを生成する電流源付加手段と、前記電流源付加手段で生成された電流源付加後電源系ネットリストに対して回路シミュレーションを実行し、各ブロックの動作に伴い発生するノイズの時系列的な変化を示す電源系の電流電圧波形データを出力する回路シミュレーション手段と、前記回路シミュレーション手段による回路シミュレーションの結果を表示する表示手段とを備えることを特徴とする半導体装置のノイズ解析装置である。
【００１２】
請求項１の発明においては、回路シミュレーションにより集積回路の動作に伴う電源系の電流波形の解析が可能となるため、集積回路の製造前にノイズレベルの評価を行うことができる。また、回路シミュレーションの結果を表示手段で表示することにより、集積回路内部の電源系の電流経路を視覚的に把握することができるため、集積回路の製造前に回路に付加すべき容量や抵抗の配置や大きさなどを最適化することができる。さらに、電源系の電圧波形の解析も可能となるため、電圧降下の解析を行うこともできる。
【００１３】
請求項２の発明は、請求項１において、前記回路シミュレーション手段から出力された電源系の電流電圧波形データをフーリエ変換してスペクトルデータを算出するフーリエ変換手段を備え、前記表示手段は、前記回路シミュレーション手段による回路シミュレーションの結果と前記フーリエ変換手段によるフーリエ変換の結果を表示することを特徴とする。
【００１４】
請求項３の発明は、請求項１において、解析対象として指定されたブロックのブロック指定情報と、当該ブロック指定情報にしたがって指定されたブロックに対応する電流源が単独で存在する場合の前記回路シミュレーション手段により得られる電源系の電流電圧波形データとを合成して、合成後電源系電流電圧波形データを生成する電源系電流電圧波形データ合成手段と、前記電源系電流電圧波形データ合成手段により生成された合成後電源系電流電圧波形データに対してフーリエ変換を実行するフーリエ変換手段を設けたことを特徴とする。
【００１５】
請求項４の発明は、請求項３において、前記電流源付加手段は、各ブロックに対して電流源を付加し、それぞれの前記電流源に対して、一つの区間には一つの電流源についてのみ電流波形が与えられる、複数の区間からなる電流波形を与えることを特徴とする。
【００１６】
請求項５の発明は、請求項１乃至２において、回路素子値変更情報に従って、電流源を付加した電源系ネットリスト中の回路素子の素子値を変更する回路素子変更手段を備えることを特徴とする。
【００１７】
請求項６の発明は、請求項１乃至５において、前記ブロックは、レイアウトデータを所定の大きさの格子で区切ることにより定義されたものであることを特徴とする。
【００１９】
請求項７の発明は、請求項２乃至５において、前記表示手段は、指定された周波数におけるスペクトル強度の大小関係を、色彩、模様もしくはこれらの結合により区別してレイアウトデータ上に表示することを特徴とする。
【００２０】
請求項８の発明は、請求項１乃至５において、前記表示手段は、指定された時刻における電流の方向を矢印で、電流の大きさを矢印の色、長さもしくは太さにより区別してレイアウトデータ上に表示することを特徴とする。
【００２１】
請求項９の発明は、請求項２乃至５において、前記表示手段は、レイアウトデータ上の指定された位置における電流波形データ及び電流スペクトルデータを表示することを特徴とする。
【００２２】
請求項１０の発明は、請求項１乃至５において、前記表示手段は、並行する配線に電流が同じ向きに流れている部分を含む領域を他の領域と区別して表示することを特徴とする。
【００２３】
請求項１１の発明は、請求項１乃至５において、前記表示手段は、電流がループ状に流れている部分の面積とループ部分を流れる電流の積が指定した値よりも大きい部分を含む領域を他の領域と区別して表示することを特徴とする。
【００３７】
以下、この発明に係わる半導体装置のノイズ解析装置を集積回路のノイズ解析装置に適用した実施形態について説明する。
【００３８】
まず、集積回路のノイズ解析装置の実施形態について説明する。
【００３９】
［実施形態１］
実施形態１に係わる集積回路のノイズ解析装置１０の機能的な構成を図１に、レイアウトデータ２１から電流源付加後電源系ネットリスト２６を作成するまでの過程を図２にそれぞれ示す。
【００４０】
電源系ネット抽出部１１は、解析対象となる集積回路のレイアウトデータ２１から電源系ネットリスト２２を抽出する。電源系ネットリスト２２とは、ＬＳＩの電源端子からＬＳＩ内部の各ブロックに電源を供給するための電源配線、接地配線からなる電源系統の回路記述である。この電源系ネットリスト２２には、電源配線、接地配線に寄生的に存在する抵抗素子、容量素子、インダクタンス素子のほか、ノイズ削減のために意図的に付加した抵抗素子、容量素子、インダクタンス素子などが含まれる。また、必要に応じて図３に示すようにパッケージやプリント基板の等価回路Ａ、Ｂを付加してもよい。
【００４１】
なお、抽出した電源系ネットリスト２２中の各素子や各ノードに関して、レイアウトデータ２１上での位置情報を図示しないデータ保持部に保持しておく。この位置情報は、後にシミュレーション結果をレイアウトデータ２１上に表示する際に用いる。
【００４２】
ブロックネット抽出部１２は、レイアウトデータ２１からブロックネットリスト２３を抽出する。ブロックネットリスト２３とは、ＬＳＩ内部のブロック部分の回路記述のことである。設計の過程で既にブロックネットのデータが存在する場合は、この処理は省略することができる。また、ＡＳＩＣのようにはっきりとしたブロックが存在しない場合は、図４に示すようにチップ全体を適当な大きさの格子で区切ることによりブロックを定義してもよい。これによれば、ＡＳＩＣのようにブロックが存在しない集積回路についてもノイズ解析が可能となる。
【００４３】
ブロック電源電流波形解析部１３は、ブロックネットリスト２３とテストベクトルデータ２４から電源電流波形としてのブロック電源電流波形データ２５を求める。ブロック電源電流波形データ２５とは、ブロックの回路動作に伴ってブロック部分にお６いて消費される電源電流の波形データである。またテストベクトルデータ２４とは、ブロックの回路動作をシミュレーションするために与えられる入力信号データである。
【００４４】
ブロック電源電流波形解析部１３の実現手段としては、例えば電源電流波形の解析が可能なスイッチングシミュレータを用いる方法などがある。また、ＳＰＩＣＥ（Simulation Program with Integrated Circuit Emphasis） のような回路シミュレータを用いることもできるが、処理時間、使用メモリ量などの点で処理可能なブロックサイズが限られてくる。さらに、スイッチングシミュレータは回路シミュレータに比べると精度は落ちるが、通常のＥＷＳで数十万トランジスタ程度のブロックまで処理が可能である。
【００４５】
一方、ＡＳＩＣの場合には、ブロック電源電流波形解析部１３を図５に示すように構成することもできる。
【００４６】
図５の動作について説明すると、まずＡＳＩＣで使用されている各セルについて電源電流波形を解析して、その波形データを電源電流波形ライブラリ１３０１として保持しておく。次に、ブロックネットリスト２３とテストベクトルデータ２４を用いて、論理シミュレーション部１３０２で論理シミュレーションを実行する。この論理シミュレーションの結果からセルのスイッチング時刻がわかる。次に、セルのスイッチングが発生する各時刻において、電源電流波形ライブラリ１３０１中のセルの電源電流波形と前記論理シミュレーションの結果とを電源電流波形合成部１３０３によって足し合わせていくことで、ブロック電源電流波形データ２５を得ることができる。これによれば、ブロックの電源電流波形を迅速に求めることができる。
【００４７】
電流源付加部１４は、電源系ネットリスト２２のブロック部分に、対応する電流源を付加して電流源付加後電源系ネットリスト２６を生成する。電流源の電流波形としては、ブロック電源電流波形解析部１３で求めたブロック電源電流波形データを与える。
【００４８】
回路シュミレーション部１５は、電流源付加後電源系ネットリスト２６に対して回路シミュレーションを行う。回路シミュレーションにより得られた各素子の電流波形データ、各ノードの電圧波形データは電源系電流電圧波形データ２７として保存しておく。ただし、素子数、ノード数が多い場合は、レイアウトデータ２１上の代表点に対応する素子やノードに対してのみデータを保存するようにしてもよい。電源系電流電圧波形データ２７には電流波形データ、電圧波形データがあり、それぞれ電流データ、電圧データを得ることができる。回路シミュレーション部１５の実現手段としては、ＳＰＩＣＥのような回路シミュレータなどが挙げられる。
【００４９】
フーリエ変換部１６は、回路シミュレーション部１５により得られた電源系電流電圧波形データ２７をフーリエ変換してスペクトルデータ２８を求める。電源系電流電圧波形データ２７に含まれる電流波形データと、それをフーリエ変換して得られた電流スペクトルデータの例を図６に示す。図６（ａ）は電流波形データを、同図（ｂ）はフーリエ変換により得られた電流スペクトルデータをそれぞれ示している。ただし、図６（ａ）において縦軸は電流、横軸は時間を表している。また図６（ｂ）において、縦軸は電流のスペクトル（単位はデシベル）、横軸は周波数を表している。なお、図示していないが、電源系電流電圧波形データ２７に含まれる電圧波形データをフーリエ変換することにより電圧スペクトルデータを得ることもできる。
【００５０】
シミュレーション結果表示部１７は、電源系電流電圧波形データ２７及びスペクトルデータ２８をＣＲＴなどの表示画面上に表示する。
【００５１】
次に、上記のように構成されたノイズ解析装置によりノイズ解析を行う場合の処理手順を図７のフローチャートに従って説明する。
【００５２】
まず、電源系ネット抽出部１１により解析対象となる集積回路のレイアウトデータ２１から電源系ネットリスト２２を抽出する（ステップ１０１）。次に、ブロックネット抽出部１２によりレイアウトデータ２１からブロックネットリスト２３を抽出する（ステップ１０２）。続いて、ブロック電源電流波形解析部１３によりブロックネットリスト２３とテストベクトルデータ２４からブロック電源電流波形データ２５を求める（ステップ１０３）。次に、電流源付加部１４により電源系ネットリスト２２のブロック部分に、対応する電流源を付加して電流源付加後電源系ネットリスト２６を生成し（ステップ１０４）、さらに回路シュミレーション部１５により電流源付加後電源系ネットリスト２６に対して回路シミュレーションを実行し、電源系電流電圧波形データ２７を求める（ステップ１０５）。次に、フーリエ変換部１６により回路シミュレーション部１５により得られた電源系電流電圧波形データ２７をフーリエ変換してスペクトルデータ２８を求め（ステップ１０６）、シミュレーション結果表示部１７により電源系電流電圧波形データ２７及びスペクトルデータ２８を表示画面上に表示する（ステップ１０７）。
【００５３】
次に、シミュレーション結果表示部１７において、電源系電流電圧波形データ２７やスペクトルデータ２８、あるいはこれらのデータを用いて解析を行った結果を表示する場合の表示例について説明する。
【００５４】
図８は、電流スペクトルデータの表示例を示す説明図である。ユーザから所定の周波数が指定されたときに、その周波数におけるスペクトル強度とレイアウトデータ２１とを重ね合わせて表示するようにした例である。スペクトル強度は色や模様で区別して表示する。図８では、色が濃くなるにしたがってスペクトル強度が大きくなるように表示されている。このような表示にすることにより、電流の高周波成分のＬＳＩ内部における分布を視覚的に把握することができる。
【００５５】
具体的には次のようなことを把握することができる。図８の Block2、Block3、Block6からは、周波数100MHzにおいて大きなノイズ電流成分が出ている。各ブロックにはそれぞれ近傍に容量が付加してあるが、Block2、Block3から発生するノイズ電流成分はこの容量で吸収されて、そこから外にあまり漏れ出していない。しかし、Block6から発生するノイズ電流成分はこの容量では吸収しきれず、そこから漏れ出したノイズは端子付近にまで達している。このようなことから、Block6の近傍に配置してある容量をもっと大きくするか、あるいはノイズの漏れ出している経路に別の容量を付加する必要がある、というような検討が可能となる。
【００５６】
図９は、電流波形データから得た電流データの表示例を示す説明図である。ユーザからシミュレーション開始からの所定の時刻が指定されたときに、その時刻（この例ではｔ＝10ns）における電流の方向、電流の大きさをレイアウトデータ２１と重ね合わせて表示するようにした例である。電流の方向は矢印の向きで、電流の大きさは矢印の太さ、長さ、色などを変えることで大小関係を表示することができる。この例では、矢印の太さで電流の大きさを表している。このような表示をすることにより、ＬＳＩ内部の電流経路を把握することができる。
【００５７】
この図９の例のように、フーリエ変換を行う前の電源系電流電圧波形データ２７から電流経路を明らかにするだけでも、ノイズの発生原因についてのおおよその傾向を把握することができる。この場合でも、従来のようにノイズ対策の効果を調べるために集積回路の容量や抵抗の配置、大きさなどを変えながら実測を繰り返す手法に比べて、ＥＭＩノイズの対策を効率良く行うことができる。
【００５８】
なお、図８は所定の周波数におけるデータのみを示し、また図９は所定の時刻におけるデータのみを示しているが、図１０（ａ）、（ｂ）に示すように、レイアウトデータ上の所定位置が例えばカーソルで指定されたときに、その位置における電流波形データと電流スペクトルデータを並べて表示するようにしてもよい。図１０（ａ）は周波数100MHzにおいて、指定された位置における電流波形データと電流スペクトルデータを並べて表示したものであり、図１０（ｂ）は時刻ｔ＝10nsにおいて、電源ライン上の指定された位置における電流波形データと電流スペクトルデータを並べて表示したものである。
【００５９】
図１１、図１２は、電流波形データをもとに、さらに別の解析を行った結果の表示例を示したものである。
【００６０】
回路内で並行する配線に電流が同じ方向に流れるとインダクタンスの影響が大きくなり共振などの問題を引き起こすおそれがある。図１１は、並行する配線に電流が同じ向きに流れている部分を検出して、その部分を含む領域を他の領域と異なる色彩又は模様で表示するようにしたものである。また、電流がループ状に流れると、その部分がループアンテナとして機能し、電磁波を放射する可能性がある。このとき放射される電磁波の強度は、ループ部分の面積とループ部分を流れる電流の積に比例する。図１２は、電流がループ状に流れている部分の面積とループ部分を流れる電流の積が指定した値よりも大きい部分を検出して、その部分を含む領域を他の領域と異なる色彩又は模様で表示するようにしたものである。
【００６１】
以上のように、実施形態１のノイズ解析装置においては、集積回路の動作に伴う電源系の電流波形の解析が可能となるので、集積回路の製造前にノイズレベルの評価を行うことができる。また、集積回路内部の電源系の各部における電流スペクトルや電流経路を視覚的に把握することができるので、従来のようにノイズ対策の効果を調べるために集積回路の容量や抵抗の配置、大きさなどを変えながら実測を繰り返す手法に比べて、時間とコストを大幅に短縮することができる。したがって、ＥＭＩノイズの対策を効率良く行うことが可能となる。
【００６２】
なお、上記実施形態では、おもにＥＭＩノイズの解析という観点から、電流に関連したデータの表示例について説明したが、この実施形態１のノイズ解析装置で保持している電源系電流電圧波形データ２７からは電流データだけでなく電圧データも得ることができるため、例えば図１３に示すように、電圧データをレイアウトデータに重ねて表示することにより電源電圧降下の解析も可能となる。図１３は時刻ｔ＝10nsにおける電源配線の電圧を示しており、色が濃くなるほど電圧が低い、すなわち電圧降下が大きいことを示している。
【００６３】
［実施形態２］
一般に、ＲＬＣのみからなる線形回路において、複数の電源が存在する場合、回路中の任意の素子の電流、電圧は、それぞれの電源が単独に存在する場合におけるその素子の電流、電圧を加えたものになるという、いわゆる重ね合わせの理が成立する。電源系ネットリストはＲＬＣのみの線形回路であるので、各ブロックに対応する電流源が単独に存在する場合の電流電圧データを求めておけば、任意の数の電流源が存在する場合の電流電圧データは、それらを加え合わせることによって求めることができる。この実施形態２は、実施形態１の応用例として、指定したブロックに対応する電流源のみが存在する場合の電流電圧データや、そのスペクトルデータを得られるようにしたものである。
【００６４】
実施形態２に係わるノイズ解析装置２０の構成を図１４に示す。この実施形態２は、実施形態１の構成に電源系電流電圧波形データ合成部１８を加えた構成となっている。その他の構成は図１と同じであり、図１と同等部分を同一符号で示している。以下、実施形態１との相違点について説明する。
【００６５】
電流源付加部１４及び回路シミュレーション部１５は、電流源が単独に存在する場合の電源系電流電圧波形データ２７を、各電流源について求める。そのためには、電流源付加部１４において電流源を一つだけ付加し、生成された電流源付加後、電源系ネットリスト２２に対して回路シミュレーションを実行する処理を各電流源について実行すればよい。
【００６６】
あるいは、電源源付加部１４において、図１５に示すような電流波形を各電流源に与えるようにしてもよい。この電流波形は、Ｔ１からＴ６の各区間では一つの電流源についてのみ電流波形を与え、その他の電流源には電流波形を与えないようになっている。回路シミュレーション部１５では、各区間のシミュレーション結果を分けて保存する。このようにすることで、１度の回路シミュレーションで各電流源が単独に存在する場合のデータを得ることができる。
【００６７】
電源系電流電圧波形データ合成部１８は、ブロック指定情報２９と、指定されたブロックに対応する電流源が単独に存在する場合の電源系電流電圧波形データ２７とを加え合わせて、合成後電源系電流電圧波形データ３１を生成する。
【００６８】
フーリエ変換部１６では、このデータに対してフーリエ変換を実行してスペクトルデータ２８を得る。
【００６９】
シミュレーション結果表示部１７では、これらの合成後電源系電流電圧波形データ３１やスペクトルデータ２８を表示する。このようにすることで、指定したブロックのみが存在する場合の電流経路や電流スペクトルを視覚的に把握することができるので、より詳細なノイズ対策を行うことができる。
【００７０】
［実施形態３］
実施形態３に係わるノイズ解析装置３０の構成を図１６に示す。この実施形態３は、実施形態１の構成に回路素子値変更部１９を付加した構成となっている。その他の構成は実施形態１と同じであり、図１と同等部分を同一符号で示している。以下、実施形態１との相違点について説明する。
【００７１】
回路素子値変更部１９は、回路素子値変更情報３２をもとに電流源付加後電源系ネットリスト２２中の回路素子の素子値を変更して、回路素子値変更後電源系ネットリスト３３を生成する。回路素子値変更情報３２とは、回路を構成する素子の抵抗値や容量などを変更する際に指定される情報であり、素子値を変更する回路素子の素子名と変更後の素子値からなる。回路素子の指定方法としては、直接回路素子名を指定するほかに、レイアウトデータ上の位置を指定すると、その位置に対応する回路素子の素子名が指定されるようにすることも可能である。
【００７２】
次に、上記のように構成されたノイズ解析装置３０によりノイズ解析を行う場合の処理手順を図１７のフローチャートに従って説明する。
【００７３】
電源系ネットリストの抽出（ステップ２０１）からシミュレーション結果の表示（ステップ２０７）までの処理手順は、図７のステップ１０１〜１０７と同じである。この実施形態３では、ステップ２０７に続いて、回路素子値変更部１９により、電流付加後電源系ネット１１０中の回路素子の素子値を指定された値に変更する（ステップ２０８）。その後、再びステップ２０５に戻って回路シミュレーションをを実行し、その結果をシミュレーション結果表示部１７に表示する。ユーザは素子値を変更した場合のシミュレーション結果を参照し、必要があればさらに素子値を変更してシミュレーションを繰り返し実行する。
【００７４】
これによると、回路素子値を変更した場合の解析を容易に行うことができるようになり、ノイズ対策の効果の検証をさらに効率良く行うことができる。
【００７５】
［実施形態４］
次に、ノイズ低減機構を備えた集積回路の実施形態について説明する。
【００７６】
図１８は、一般的な集積回路の等価回路を示す回路図である。図１８に示すように、一般的な集積回路はインダクタ４１、キャパシタ４３、抵抗４５、電流源４７、電圧源４９で構成される等価回路４０に置き換えることができる。このような等価回路４０はＬＣ並列共振回路とみなすことができるため、先に述べたように共振により大きなノイズを発生することがある。
【００７７】
図１９は、ノイズ低減機構を備えた実施形態４に係わる集積回路の等価回路を示す回路図であり、図１８と同等部分を同一符号で示している。図１９に示す等価回路５０では、電気的特性可変手段として、キャパシタ４３と並列に容量値可変のキャパシタ１４３が、またインダクタ４１と直列にインダクタンス値可変のインダクタ１４１が、さらに抵抗４５と直列に抵抗値可変の抵抗１４５がそれぞれ接続されている。
【００７８】
図２０は、容量値可変のキャパシタ１４３とその制御回路の具体的な回路構成図である。図２０において、インバータ回路１４３１、１４３２、１４３３の出力側には、それぞれキャパシタ１４３４、１４３５、１４３６が接続され、ＶＤＤとＶＳＳの間に複数のキャパシタ成分が並列に配置された構成となっている。また、インバータ回路１４３１、１４３２、１４３３の入力側は制御回路１４３０に接続され、制御回路１４３０から与えられる入力値によりインバータ回路１４３１〜１４３３の動作が制御されるように構成されている。
【００７９】
上記構成において、外部から制御回路１４３０に所定の素子値が指示されると、制御回路１４３０は指示された素子値に応じたキャパシタ１４３４〜１４３６を選択し、選択したキャパシタにつながるインバータ回路には０を、それ以外のインバータ回路には１を出力する。すると、０が与えられたインバータでは、ＶＤＤ−ＶＳＳ間のキャパシタが形成される。また１が与えられたインバータではＶＳＳ−ＶＳＳ間のキャパシタとなり、このキャパシタは無効となる。したがって、設定したい素子値に応じてインバータへの出力値を選択することにより、集積回路内での容量値を適宜に変更することができる。なお、図２０において、キャパシタ１４３４、１４３５、１４３６の各容量値は同一でもよいし、またそれぞれ異なる値であってもよい。
【００８０】
図２１は、インダクタンス値可変のインダクタ１４１とその制御回路の具体的な回路構成図である。図２１において、制御回路１４１０からの制御信号及びその制御信号をインバータ回路１４１１、１４１２、１４１３、１４１４で反転した信号が伝送ゲート１４１５、１４１６、１４１７、１４１８のｐ、ｎ端子に供給され、制御回路１４１０からの制御信号により、伝送ゲート１４１５〜１４１８の開閉動作が制御されるように構成されている。この伝送ゲート１４１５〜１４１８は、インダクタ１４１９、１４２０、１４２１が直列に接続された電源ライン部分とインダクタのない電源ライン部分の間を接続する構成となっている。
【００８１】
上記構成において、外部から制御回路１４１０に所定の素子値が指示されると、制御回路１４１０は指示された素子値に応じて、伝送ゲート１４１５〜１４１８の開閉を制御する。伝送ゲートの開閉の制御は、ある伝送ゲートのみ閉状態にし、その他の伝送ゲートは開状態になるように行う。このようにすることで、閉状態にした伝送ゲートの右側にあるインダクタが電源ラインにおいて有効になる。例えば、伝送ゲート１４１７を閉状態にし、その他の伝送ゲートを開状態にすれば、インダクタ１４２１が有効になる。また、伝送ゲート１４１６を閉状態にし、その他の伝送ゲートを開状態にすれば、インダクタ１４２０及び１４２１が有効になる。したがって、設定したい素子値に応じて伝送ゲートの開閉状態を制御することにより、集積回路内でのインダクタンス値を適宜に変更することができる。なお、図２１において、インダクタ１４１９、１４２０、１４２１の各インダクタンス値は同一でもよいし、またそれぞれ異なる値であってもよい。
【００８２】
上記のように構成された等価回路５０においては、容量値可変のキャパシタ１４３及びインダクタンス値可変のインダクタ１４１について、それぞれ容量値やインダクタンス値を制御することにより、共振周波数を変化させることができるので、等価回路５０内で生じる共振が最も小さくなるようにキャパシタ１４３及びインダクタ１４１を制御することで、ノイズの原因となる共振を最小限に抑えることができる。したがって、集積回路にＲＬＣの直列共振回路を付加する従来例のように、Ｒ、Ｌ、Ｃの各素子値を決めるために素子値を変えながら実測を繰り返す手法に比べて、作業に要する時間とコストを大幅に短縮することができるようになり、共振回路により生じるノイズの低減を効率良く行うことが可能となる。
【００８３】
図２２は、抵抗値可変の抵抗１４１とその制御回路の具体的な回路構成図である。図２１において、制御回路１４５０からの制御信号及びその制御信号をインバータ回路１４５１、１４５２、１４５３、１４５４で反転した信号が伝送ゲート１４５５、１４５６、１４５７、１４５８のｐ、ｎ端子に供給され、制御回路１４５０からの制御信号により、伝送ゲート１４５５〜１４５８の開閉動作が制御されるように構成されている。この伝送ゲート１４５５〜１４５８は、抵抗１４５９、１４６０、１４６１が直列に接続された電源ライン部分と抵抗のない電源ライン部分の間を接続する構成となっている。
【００８４】
上記構成において、外部から制御回路１４５０に所定の素子値が指示されると、制御回路１４５０は指示された素子値に応じて、伝送ゲート１４５５〜１４５８の開閉を制御する。伝送ゲートの開閉の制御は、ある伝送ゲートのみ閉状態にし、その他の伝送ゲートは開状態になるように行う。このようにすることで、閉状態にした伝送ゲートの右側にある抵抗が電源ラインにおいて有効になる。例えば、伝送ゲート１４５７を閉状態にし、その他の伝送ゲートを開状態にすれば、抵抗１４６１が有効になる。また、伝送ゲート１４５６を閉状態にし、その他の伝送ゲートを開状態にすれば、抵抗１４６０及び１４６１が有効になる。したがって、設定したい素子値に応じて伝送ゲートの開閉状態を制御することにより、集積回路内での抵抗値を適宜に変更することができる。なお、図２２において、抵抗１４５９、１４６０、１４６１の各抵抗値は同一でもよいし、またそれぞれ異なる値であってもよい。
【００８５】
上記のように構成された等価回路５０においては、抵抗値可変の抵抗４４の抵抗値を制御することにより、共振のＱを変化させることができるので、等価回路５０内で生じる電源電圧降下が問題とならない範囲で共振のＱを下げることができる。したがって、従来例のように最適な抵抗値を決めるために抵抗値を変えながら実測を繰り返す手法に比べて、作業に要する時間とコストを大幅に短縮することができるようになり、共振回路により生じるノイズの低減を効率良く行うことが可能となる。
【００８６】
図１９に示す等価回路５０によれば、容量値可変のキャパシタ１４３の容量値及びインダクタンス値可変のインダクタ１４１のインダクタンス値を制御することにより、共振周波数を変化させることができ、また抵抗値可変の抵抗１４５を抵抗値を制御することにより、共振のＱを変化させることができるので、これら容量値、インダクタンス値及び抵抗値の制御を組み合わせることで、共振回路により生じるノイズの低減をより効率良く行うことが可能となる。とくに図１９に示す等価回路５０では、集積回路の量産前に最もノイズの少ない素子値を決定することができるとともに、また量産後においても個々の集積回路においてノイズ低減のための調整を行うことが可能となる。
【００８７】
なお、図１９では、電気的特性可変手段として、容量値可変のキャパシタ１４３、インダクタンス値可変のインダクタ１４１及び抵抗値可変の抵抗１４５の３つを接続した例について説明したが、これらのうちの少なくとも１つを用いるだけでも、従来手法に比べてノイズの低減を効率良く行うことが可能となる。
【００８８】
図２３は、図１９に示す等価回路５０にさらにノイズ検出機構を加えた等価回路を示す回路図であり、図１９と同等部分を同一符号で示している。図２３に示す等価回路６０では、電源ラインであるＶＤＤとＶＳＳからの信号を検出し、この検出した信号に含まれるノイズレベルをもとにして、図２０〜図２２に示した制御回路１４３０、１４１０及び１４５０を制御するノイズ検出部１４６１が接続されている。また、制御回路１４６０は、容量値可変のキャパシタ１４３、インダクタンス値可変のインダクタ１４１及び抵抗値可変の抵抗１４５をそれぞれ制御する機能を備えている。
【００８９】
上記構成において、集積回路を動作させると、ノイズ検出部６１では、ＶＤＤとＶＳＳから検出した信号に含まれるノイズレベルをもとにして、ノイズ低減に適した容量値、インダクタンス値及び抵抗値をそれぞれ算出し、制御回路１４６０に出力する。制御回路１４６０では、ノイズ検出部１４６１から与えられた素子値に応じてキャパシタ、インダクタ及び抵抗を選択し、所定の信号値を出力する。これによれば、ノイズ低減のために各素子値を決定し、これを制御回路１４６０に入力する一連の作業を自動的に行うことが可能となるため、作業に要する時間とコストをさらに短縮することができる。
【００９０】
なお、図２３の実施形態においても、電気的特性可変手段として、容量値可変のキャパシタ１４３、インダクタンス値可変のインダクタ１４１及び抵抗値可変の抵抗１４５の３つを接続した例について説明したが、これらのうちの少なくとも１つを用いるだけでも、従来手法に比べてノイズの低減を効率良く行うことが可能となる。
【００９１】
【発明の効果】
請求項１の発明においては、集積回路の動作に伴う電源系の電流波形の解析が可能となるため、集積回路の製造前にノイズレベルの評価を行うことができる。また、集積回路内部の電源系の電流経路を視覚的に把握することができるため、集積回路の製造前に回路に付加すべき容量や抵抗の配置や大きさなどを最適化することができる。さらに、電源系の電圧波形の解析も可能となるため、電圧降下の解析を行うこともできる。
【００９２】
請求項２の発明においては、集積回路の動作に伴う電源系の電流波形と電流スペクトルの解析が可能となるため、集積回路の製造前に回路に付加すべきノイズレベルの評価を行うことができる。また、集積回路内部の電源系の電流経路や電流スペクトルを視覚的に把握することができるため、集積回路の製造前に容量や抵抗の配置や大きさなどをより効率良く最適化することができる。さらに、電源系の電圧波形の解析も可能となるため、電圧降下の解析を行うこともできる。
【００９３】
請求項３及び４の発明においては、指定したブロックのみが存在する場合の電流経路や電流スペクトルを視覚的に把握することができるので、より詳細なノイズ対策を行うことができる。
【００９４】
請求項５の発明においては、回路素子値を変更した場合の解析を容易に行うことができるので、ノイズ対策の効果の検証をさらに効率良く行うことができる。
【００９５】
請求項６の発明においては、ＡＳＩＣのようにブロックが存在しない集積回路についてもノイズ解析を行うことができる。
【００９７】
請求項７乃至請求項１１の発明においては、集積回路内部における電流の状態を設計者が理解しやすい形式で表現することができるため、回路に付加すべき容量や抵抗の配置や大きさなどを検討する際に、問題箇所の把握が容易なものとなり、ノイズ対策を効果的に行うことができる。
【０１０２】
以上のように、請求項１乃至１１の発明によれば、従来のようにノイズ対策の効果を調べるために集積回路の容量や抵抗の配置、大きさなどを変えながら実測を繰り返す手法に比べて、ノイズ低減に要する時間とコストを大幅に短縮することができるので、半導体装置のノイズ対策を効率良く行うことができる。
【図面の簡単な説明】
【図１】実施形態１に係わるノイズ解析装置の機能的な構成を示すブロック図。
【図２】レイアウトデータから電流源付加後電源系ネットリストを作成するまでの過程を示す説明図。
【図３】電源系ネットリストにパッケージやプリント基板の等価回路を付加した場合の例を示す回路図。
【図４】ＡＳＩＣのレイアウトデータを格子で区切ってブロックを定義した場合の例を示す説明図。
【図５】ブロック電源電流波形解析部の構成例を示すブロック図。
【図６】（ａ）は電流波形データ、（ｂ）はフーリエ変換により得られた電流スペクトルデータを示す説明図。
【図７】実施形態１のノイズ解析装置によりノイズ解析を行う場合の処理手順を示すフローチャート。
【図８】電流スペクトルデータの表示例を示す説明図。
【図９】電流波形データから得た電流データの表示例を示す説明図。
【図１０】（ａ）、（ｂ）はレイアウトデータ上の所定位置において電流波形データと電流スペクトルデータを並べて表示した場合の表示例を示す説明図。
【図１１】回路内で並行する配線に電流が同じ向きに流れている様子を示す説明図。
【図１２】電圧データの表示例を示す説明図。
【図１３】回路内で電流がループ状に流れている様子を示す説明図。
【図１４】実施形態２に係わるノイズ解析装置の機能的な構成を示すブロック図。
【図１５】電流源付加部が各電流源に与える電流波形を示す波形図。
【図１６】実施形態３に係わるノイズ解析装置の機能的な構成を示すブロック図。
【図１７】実施形態３のノイズ解析装置によりノイズ解析を行う場合の処理手順を示すフローチャート。
【図１８】一般的な集積回路の等価回路を示す回路図。
【図１９】実施形態４のノイズ低減機構を備えた集積回路の等価回路図。
【図２０】容量値可変のキャパシタとその制御回路の具体的な回路構成図。
【図２１】インダクタンス値可変のインダクタとその制御回路の具体的な回路構成図。
【図２２】抵抗値可変の抵抗とその制御回路の具体的な回路構成図。
【図２３】ノイズ検出機構を加えた等価回路を示す回路図。
【符号の説明】
１１  電源系ネット抽出部
１２  ブロックネット抽出部
１３  ブロック電源電流波形解析部
１４  電流源付加部
１５  回路シミュレーション部
１６  フーリエ変換部
１７  シミュレーション結果表示部
１８  電源系電流電圧波形データ合成部
１９  回路素子値変更部
１４１  インダクタンス値可変のインダクタ
１４３  容量値可変のキャパシタ
１４５  抵抗値可変の抵抗
１４６１  ノイズ検出部
【図１】
0004427115.tif 000002
【図２】
0004427115.tif 000003
【図３】
0004427115.tif 000004
【図４】
0004427115.tif 000005
【図５】
0004427115.tif 000006
【図６】
0004427115.tif 000007
【図７】
0004427115.tif 000008
【図８】
0004427115.tif 000009
【図９】
0004427115.tif 000010
【図１０】
0004427115.tif 000011
【図１１】
0004427115.tif 000012
【図１２】
0004427115.tif 000013
【図１３】
0004427115.tif 000014
【図１４】
0004427115.tif 000015
【図１５】
0004427115.tif 000016
【図１６】
0004427115.tif 000017
【図１７】
0004427115.tif 000018
【図１８】
0004427115.tif 000019
【図１９】
0004427115.tif 000020
【図２０】
0004427115.tif 000021
【図２１】
0004427115.tif 000022
【図２２】
0004427115.tif 000023
【図２３】
0004427115.tif 000024