JP2007052591A - 半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム - Google Patents

半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム Download PDF

Info

Publication number
JP2007052591A
JP2007052591A JP2005236621A JP2005236621A JP2007052591A JP 2007052591 A JP2007052591 A JP 2007052591A JP 2005236621 A JP2005236621 A JP 2005236621A JP 2005236621 A JP2005236621 A JP 2005236621A JP 2007052591 A JP2007052591 A JP 2007052591A
Authority
JP
Japan
Prior art keywords
power
power supply
area
current
information
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
Application number
JP2005236621A
Other languages
English (en)
Inventor
Takashi Kurihara
栗原  隆
Kenji Wada
研二 和田
Masahiro Suzuki
正浩 鈴木
Eiji Fujine
栄司 藤根
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 JP2005236621A priority Critical patent/JP2007052591A/ja
Priority to US11/305,184 priority patent/US7367000B2/en
Publication of JP2007052591A publication Critical patent/JP2007052591A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】 パワーユニットモデル作成時間の短縮化を図ることや、フロアプランのばらつきを考慮した高精度のシミュレーションを行うことが可能な半導体集積回路の電源電圧分布シミュレーション方法を提供すること。
【解決手段】
ステップS1では、デザイン情報(コアサイズCS、コアリング幅CW、ブロック形状BS・マクロ形状MS、ブロック電流BI・マクロ電流MI、など)がシミュレータに入力される。ステップS2では、フロアプランに関する情報(ブロック位置BP・マクロ位置MP、電源I/O位置IOP)が設計者によってシミュレータに入力される。ステップS3では、パワーユニット管理テーブル初期化、抵抗モデリング、電流源モデリングが行われる。ステップS5(図1)では、ステップS4で得られたパワーユニット管理テーブルCTを用いて、スタティックIRドロップが計算される。
【選択図】 図1

Description

本発明は、半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラムに関し、特に電源電圧ドロップの初期見積りについてのシミュレーション方法およびシミュレーションプログラムに関するものである。
近年のLSI開発では、微細化に伴い、搭載ゲートサイズの大規模化、複雑化が進み、開発期間の長期化が問題となっている。よって開発期間の短縮化を図るため、デザイン開始前の初期見積りの段階において、電源電圧ドロップが許容値内に収まるような電源仕様等を検討する必要が生じている。
特許文献1では、半導体集積回路の電源配線領域を、パワーユニットと呼ばれる小領域に分割し、パワーユニットの抵抗値および消費電流値を与えることで、一定消費電流値による定常的な電圧降下(スタティックIRドロップ)をシミュレートする。また同様に特許文献2では、パワーユニットに対して抵抗値、消費電流値、インダクタンス値、容量値を与えることで、動的な電源電圧分布(ダイナミックIRドロップ)をシミュレートする。
尚、上記の関連技術として特許文献1、2が開示されている。
特開2003−233637号公報 特開2004−234618号公報
上記従来技術では、設計者がパワーユニットの抵抗値、消費電流値、インダクタンス値、容量値などの各種パラメータを計算してシミュレータに入力する必要がある。しかし、パワーユニットは多数存在するため、全てのパワーユニットについて計算を行う場合には、シミュレーションに多大な時間が必要となるため問題である。
また多数のパワーユニットについてパラメータを計算することは現実的ではないため、パワーユニット数を減少させてシミュレーションを行うことも考えられる。しかしこの場合には、十分な精度を有した電圧分布結果が得られず、シミュレーション結果の信頼度が低下するため問題である。さらに上記従来技術では、パワーユニットの各種パラメータの具体的な計算方法については開示されていないため問題である。
本発明は前記背景技術の課題の少なくとも1つを解消するためになされたものであり、パワーユニットモデル作成時間の短縮化を図ることにより、IRドロップ・シミュレーションの効率を高め、半導体集積回路の開発期間短縮化を図ることや、より多数のパワーユニットを取り扱うことにより、フロアプランのばらつき(各種回路のレイアウト領域内における各種パラメータの偏在)を考慮した高精度のシミュレーションを行うことが可能な半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラムを提供することを目的とする。
前記目的を達成するために、発明に係る第1の思想では、半導体集積回路のレイアウト領域を複数の分割ユニットに分割し、前記分割ユニットにおける電源配線密度を表す電源占有率情報を取得するステップと、前記レイアウト領域に少なくとも1つ以上の電源が供給される位置を表す電源I/O位置情報を取得するステップと、予め定められた前記電源配線のシート抵抗値と前記電源占有率情報とに応じて、隣接する前記分割ユニット間の電源配線の抵抗値を表すモデル抵抗の抵抗値を求めるステップと、前記レイアウト領域の少なくとも一部を占めるように少なくとも1つ配置される所定領域に、少なくとも一部が重なる前記分割ユニットを、前記所定領域に属する前記分割ユニットとし、前記所定領域において消費される消費電流を前記所定領域に属する前記分割ユニットに均等に割り付けるステップとを備えることを特徴とする。
半導体集積回路の電源電圧分布には、一定消費電流値による定常的な電圧降下(スタティックIRドロップ)、経時的なダイナミックな動的な電源電圧分布(電源ノイズ)などがある。半導体集積回路のレイアウト領域は、例えば、主動作にかかる回路が配置されるコア領域、コア領域の周囲に環状に備えられる電源配線(コアリング)が配置されるコアリング領域、電源を供給するセルである電源I/Oセルが配置される電源I/O領域等の領域を含んでいる。主動作にかかる回路には、例えば、階層レイアウトのブロックやRAMやROMなどのハードマクロで表される回路が挙げられる。
分割ユニットは、レイアウト領域を複数領域に分割して得られる各々の領域である。分割ユニット形状は多角形形状とされ、例えば、三角形状、四角形状、六角形状等とされる。各分割ユニットは均等の大きさに分割されてもよいし、電圧分布を詳しくシミュレーションしたい領域の分割ユニットは小さく、大まかにシミュレーションする領域の分割ユニットは大きくするように分割しても良い。
電源占有率情報は、分割ユニットにおける電源配線密度を表す情報である。配線密度の表現方法は各種存在する。例えば、電源配線の配線幅と配線間隔とを1配線単位と定義し、当該1配線単位が分割ユニットに占める面積の割合を電源占有率情報としてもよい。または、電源配線が分割ユニットに占める面積の割合を電源占有率情報としてもよい。
電源I/O位置情報は、電源I/Oセルの位置を表す情報である。電源I/Oセルは少なくとも1つ以上備えられる。電源I/Oセルの位置は、電圧分布に直接的に関係するパラメータである。
モデル抵抗は、分割ユニットの各辺ごとに備えられ、隣接する前記分割ユニット間の電源配線の抵抗値を表す抵抗である。例えば四角形状の分割ユニットであれば、各辺に4つのモデル抵抗が備えられる。このとき分割ユニットの中心で4つの抵抗が十字状に共通接続されるとしてもよい。電源配線のシート抵抗値は、テクノロジに応じて予め定められる。分割ユニットの面積と、電源占有率情報による電源配線密度とにより、分割ユニットが有する抵抗値が求められる。求められた分割ユニット全体の抵抗値を、各モデル抵抗に割り振ることにより、モデル抵抗の抵抗値が得られる。
所定領域は、レイアウト領域の少なくとも一部を占めるように少なくとも1つ配置される領域である。所定領域は単数・複数の何れであってもよい。例えば所定領域は、レイアウト領域全面であってもよいし、階層レイアウトのブロックにより占有される領域であってもよいし、RAMやROMなどのハードマクロにより占有される領域であってもよい。また所定領域では、ある所定量の電流が消費される。
半導体集積回路の全面に一定量の電流が流れるとするモデルにおいては、レイアウト領域全面が所定領域とされる。この場合には1種類の分割ユニットを用いればよいため、モデル作成時間を短縮することができる。よってシミュレーション総時間を短縮化できる。またレイアウト領域内に電流値が異なる領域が複数あるとするモデルにおいては、それら各々の領域が所定領域とされる。この場合には、レイアウト領域内における電源配線の抵抗値等の偏在(ばらつき)を考慮したモデルを作成できるため、より正確な電圧分布をシミュレーションすることができる。
所定領域に属する前記分割ユニットとは、所定領域に少なくとも一部が重なる分割ユニットである。よって、分割ユニットの全領域が所定領域に重なる場合にのみ、その分割ユニットが所定領域に属するとしてもよい。所定領域内の消費電流は均一であると仮定されているため、所定領域における消費電流を前記所定領域に属する前記分割ユニットに均等に割り付けることができる。これにより、分割ユニットにおける消費電流値が求まる。
モデル抵抗の抵抗値、電源供給位置、分割ユニットにおける消費電流値が定まれば、電源電圧分布を求める分割ユニットモデル(先行文献の)が完成する。そして各々の分割ユニットモデルを接続することにより、半導体集積回路のモデルが得られる。半導体集積回路のモデルを用いて得られる回路方程式を計算することにより、半導体集積回路の電源電圧分布が得られる。
これにより本発明に係る第1の思想では、電源電圧分布シミュレーション用の分割ユニットのモデル作成時において、各種抵抗値や電流値などのパラメータを用いる必要がなく、抵抗値や電流値に対して設計の上位概念のパラメータ(電源占有率情報、電源I/O位置情報、シート抵抗値など)を用いることが出来る。よって、分割ユニットのモデル作成時に、抵抗値や電流値などを求める手間を省くことができ、モデル作成時間の短縮化を図ることができる。よってシミュレーションの高効率化が可能となるため、半導体集積回路の開発期間短縮化を図ることができる。また分割ユニットのモデル作成時において、抵抗値や電流値を与える手間を省くことにより、モデル作成効率が高められるため、従来と同じ時間でより多数の分割ユニットのモデルを作成することが可能となる。よって電圧ドロップシミュレーションの精度を向上させることができるため、IRドロップの初期見積りをより正確に行うことが可能となる。
本発明によれば、電源電圧分布シミュレーション用の分割ユニットのモデル作成時において、抵抗値や電流値に対して設計の上位概念のパラメータ(電源占有率情報、電源I/O位置情報など)を用いてモデル作成を行うことができる。よって、分割ユニットのモデル作成時に、抵抗値や電流値などを求める手間を省くことができ、モデル作成時間の短縮化を図ることで、シミュレーションの高効率化を可能とすることができる。またモデル作成効率の向上に伴い、より多数の分割ユニットを取り扱うことができるため、電圧ドロップシミュレーションの精度を向上させることができる。
以下、本発明の半導体記憶装置および半導体記憶装置について具体化した実施形態を図1乃至図12に基づき図面を参照しつつ詳細に説明する。本発明の第1実施形態を図1乃至図11を用いて説明する。
第1実施形態は、一定消費電流値による定常的な電圧降下(スタティックIRドロップ)の初期見積りおよび対策を可能とする実施形態である。初期見積りは、設計の初期段階で行われるため、ネットリスト等の品種データが不要とされる。
まず、本発明のスタティックIRドロップ・シミュレーションで用いられるモデルについて説明する。図2に示すように、半導体集積回路のレイアウト領域LAの全体が、四角形かつ行列状の小領域であるパワーユニットPUに分割される。そしてパワーユニットPUは、コア領域CA、コアリング領域RA、電源I/O領域PAに分類される。ここでコア領域CAとは、レイアウト領域LAのうち、主動作にかかる回路(階層レイアウトのブロックやマクロ等)が配置される領域である。またコアリング領域RAとは、コア領域CAの周囲に環状に備えられる電源配線(コアリング)が配置される領域である。また電源I/O領域PAとは、コアリング領域RAに電源を供給するセルである電源I/Oセルが複数備えられる領域である。電源I/Oセルは、電源パッドとワイヤボンディングとを介して半導体パッケージの外部電源端子に接続される。
パワーユニットPUのモデルを図3に示す。四角形状のパワーユニットPUの各辺に、4つのモデル抵抗RX1、RX2、RY1、RY2が備えられることで、隣接するパワーユニットPU間の電源配線が1つの抵抗でモデル化される。4つの抵抗はパワーユニットPUの中心ノードCNで十字状に共通接続される。またパワーユニットPU内の全ての消費電流が、1つの電流源PIに置き換えられる。これにより、2次元十字形の回路モデルが形成される。このパワーユニットPUを用いて、ステップS5において、例えば特許文献(特開2003−233637)に記載されている方法により、スタティックIRドロップが計算される。以下、電源配線の抵抗のモデリングを行うフロー、およびパワーユニットPUの電流源PIの電流値であるパワーユニット電流値PUIのモデリングを行うフローを主に説明する。
図1に第1実施形態に係るフロー図を示す。ステップS0のライブラリ設定において、プロセステクノロジに応じたパラメータがライブラリに予め格納される。本実施形態にかかる半導体集積回路の配線層は、第1配線層MET1から第4配線層MET4までの4層であるとする。このとき第1配線層シート抵抗値SR1乃至第4配線層シート抵抗値SR4、第1配線層MET1の配線幅W1乃至第4配線層MET4の配線幅W4、第1配線層MET1の配線間距離SP1乃至第4配線層MET4の配線間距離SP4がライブラリに格納される。また、パワーユニットPUの大きさを表すパワーユニットサイズUS(パワーユニットX方向サイズPUX、パワーユニットY方向サイズPUY)が、ライブラリに格納される。
ステップS1を説明する。ステップS1では、デザイン情報が、設計者によってシミュレータに入力され、不図示の情報格納部DMに格納される。ここでデザイン情報とは、(1)コアサイズCS、(2)コアリング幅CW、(3)ブロック形状BS・マクロ形状MS、(4)ブロック電流BI・マクロ電流MI、(5)チップトータル電流CI、(6)電源I/O抵抗値IOR、(7)パッケージ抵抗PR、(8)電源占有率(ブロック上電源占有率BPR、マクロ上電源占有率MPR、チップ電源占有率CPR)、である。
コアサイズCSとは、レイアウト領域LA上において、主動作にかかる回路が配置されるコア領域CA(図2)が占めるサイズ(X、Y)である。コアリング幅CWとは、コアリング領域RAに形成されるコアリングの配線幅のことである。
ブロック形状BSとはブロックが有する形状であり、マクロ形状MSとはマクロが有する形状である。これらの形状を有して、ブロック・マクロは、コア領域CA内に配置される。ここでブロックとは、階層レイアウトを行った際の階層ブロックのことである。またマクロとは、RAMやROMなどのハードマクロである。ブロックおよびマクロは複数種類が存在する。
ブロック電流BIとはブロック一つ当たりが消費する電流量であり、マクロ電流MIとはマクロ一つ当たりが消費する電流量である。ブロック電流BIおよびマクロ電流MIは、ブロックやマクロの種類ごとに定まる値である。チップトータル電流CIとは、半導体チップ全体で消費される電流であり、顧客の要求スペックから求められる。
電源I/O抵抗値IORとは、電源I/Oセル部が有する抵抗値である。パッケージ抵抗PRとは、電源I/Oセルからパッケージ外部端子までの径路上に存在する抵抗値の合計であり、例えば、直列に接続されたパッケージのリード線の抵抗とワイヤボンディングの抵抗との合成抵抗で表される。
電源占有率は、パワーユニットPUの配線層の電源配線密度を表す情報であり、各々のパワーユニットPUごとに定められる。電源配線には、VDD配線およびVSS配線がある。電源占有率は、パワーユニットPUが属するブロックやマクロの種類に応じて定められ、また、着目する配線層に応じて定められる。パワーユニットPUの少なくとも一部がブロックと重なる場合には、そのパワーユニットPUの電源占有率には、ブロック上電源占有率BPRが適用される。またパワーユニットPUの少なくとも一部がマクロと重なる場合には、そのパワーユニットPUの電源占有率には、マクロ上電源占有率MPRが適用される。またパワーユニットPUがブロックおよびマクロの何れとも重ならない場合には、そのパワーユニットPUの電源占有率には、チップ電源占有率CPRが適用される。なおパワーユニットPUの少なくとも一部がブロックおよびマクロの両方に重なる場合には、マクロが優先され、そのパワーユニットPUの電源占有率には、マクロ上電源占有率MPRが適用される。
電源占有率の表現方法は各種存在する。本実施形態では、電源によって潰される信号配線グリッドの割合を電源占有率とする。なお、電源配線自体の面積がパワーユニットPUに占める面積の割合を電源占有率情報と定義してもよいことは言うまでもない。
ステップS2を説明する。ステップS2では、フロアプランに関する情報が設計者によってシミュレータに入力され、不図示の情報格納部DMに格納される。ここでフロアプランに関する情報とは、(9)ブロック位置BP・マクロ位置MP、(10)電源I/O位置IOP、である。
ブロック位置BPとは、ブロックがコア領域CAに占める座標である。マクロ位置MPとは、マクロがコア領域CAに占める座標である。また電源I/O位置IOPとは、電源I/Oセルが図2に示す電源I/O領域PA(図2)に占める座標である。なお電源I/Oセルは、電源I/O領域PAの任意の位置に任意の数が配置される。
ステップS2において、ブロックBLK1およびBLK2、マクロMCR1乃至MCR5がコア領域CAに配置されたフロアプラン例を図4に示す。ステップS2では、図4に示すようなシミュレーション画面を設計者が見ながら、コア領域CAにブロックおよびマクロを配置するという操作により、ブロックおよびマクロの座標入力を行うことができる。よって、視覚的にフロアプランを確認しながら、ブロックおよびマクロの座標入力を入力可能であり、また画面を見ながらフロアプラン修正も可能であるという利点がある。なお、画面表示を使用しない数値による座標入力によってもよいことは言うまでもない。
ステップS3(図1)を説明する。ステップS3は、ステップS11(パワーユニット管理テーブル初期化)、ステップS12(抵抗モデリング)、ステップS13(電流源PIモデリング)で構成される。
ステップS11のパワーユニット管理テーブル初期化は、以下の3ステップから構成される。まず、コアサイズCSが、情報格納部DMから取得される。次に、ライブラリから、パワーユニットサイズUSが取得される。そしてコアサイズCSとパワーユニットサイズUSとから、半導体集積回路のコア領域CAが行列状の小領域であるパワーユニットPUに分割される。例えばコアサイズCSが(X、Y)=(5000、5000(μm))、パワーユニットサイズUSが(X、Y)=(100、100(μm))の場合は、コア領域CAはX方向およびY方向に50分割される。よってコア領域CAには2500個のパワーユニットPUが備えられる。また同様にして、コアリング領域RAおよび電源I/O領域PAもパワーユニットPUに分割される。そして図2に示すパワーユニットマップPMが構成される。また、コア領域CAに備えられる全てのパワーユニットPUを管理するパワーユニット管理テーブルCTが作成される。
ステップS12で行われる抵抗モデリングを、図5および図6のフローチャートに示す。図4に示すフロアプランに対して抵抗モデリングが行われる場合を説明する。抵抗モデリングとは、パワーユニットPUが備える十字モデル(図3)における、各抵抗RX1、RX2、RY1、RY2の抵抗値を求める工程である。ステップS12における抵抗モデリング方法は、ステップS31乃至S35を備える。ステップS31は、コア領域CAにおいて、ブロックBLK1、BLK2と重なるパワーユニットPUを抽出した上で、抽出されたパワーユニットPUが備える抵抗値を算出するステップである。ステップS32は、コア領域CAにおいて、マクロMCR1乃至MCR5と重なるパワーユニットPUを抽出した上で、抽出されたパワーユニットPUの抵抗値を算出するステップである。ステップS33は、コアリング領域RAに存在するパワーユニットPUの抵抗値を算出するステップである。ステップS34は、電源I/O領域PAにおいて、電源I/Oセルと重なるパワーユニットPUの抵抗値を算出すると共に、算出した抵抗値にパッケージ抵抗PRを加算するステップである。ステップS35は、コア領域CAにおいて、ブロックおよびマクロの何れとも重ならないパワーユニットPUを抽出した上で、抽出されたパワーユニットPUの抵抗値を算出するステップである。
ステップS31について説明する。ステップS31は、ステップS41乃至S45を備える。ステップS41では、ブロック選択およびブロック形状・位置判定が行われる。ブロック選択により、コア領域CA内に配置された全ブロックの各々が順次選択される。例として本実施形態(図4)では、まずブロックBLK1が選択される。そしてブロックBLK1の形状と配置位置とを考慮して、ブロックBLK1に少なくとも一部が重なるパワーユニットPUが抽出される。抽出されたパワーユニットPUは、ブロックBLK1に属するパワーユニットPUとして認識される。
ステップS42では、ブロックBLK1について、第1配線層MET1から第4配線層MET4までの各々のブロック上電源占有率BPR1乃至BPR4が、情報格納部DMから取得される。
ステップS43では、ブロックBLK1に属するパワーユニットPUの抵抗値が算出される。ブロックBLK1内の抵抗値は均一であるとモデル化されているため、ブロックBLK1に属するパワーユニットPUも、全て同一の抵抗値を有するとされる。よって1つの代表パワーユニットPUについて計算が行われる。ここで第1配線層MET1から第4配線層MET4のうち、第1および第3配線層はY方向、第2および第4配線層はX方向に配線されているとする。すると、第1配線層MET1から第4配線層MET4の各々に対応するブロック上電源占有率BPR1乃至BPR4を用いて、各層ごとの抵抗値を計算し、同一方向同士の抵抗値を並列抵抗とみなして足し合わせて1値にする必要がある。
例として、ブロックBLK1に属するパワーユニットPUにおける、第1配線層MET1(Y方向)の抵抗値R1を求める方法を、図7を用いて説明する。図7のパワーユニットPUには、VDD配線およびVSS配線が存在する。VDD配線およびVSS配線の配線幅は、配線幅W1とされる。また配線間には、配線間距離SP1が空けられる。またVDD配線とVSS配線とのペアによって、最小配線単位WUが構成される。
最小配線単位WU=(配線幅W1+配線間距離SP1)×2 ・・・式(0)
なおパワーユニットPU内では、最小配線単位WUは等間隔で配置されるとする。
VDD配線の抵抗値を求める場合を説明する。まず、第1配線層MET1におけるパワーユニットPU内に存在する、VDD配線の配線数N1が下式により求められる。
配線数N1=(ブロック上電源占有率BPR1(%)/100)×パワーユニットX方向サイズPUX/最小配線単位WU・・・式(1)
次に、配線数N1から抵抗値R1が算出される。
抵抗値R1=シート抵抗値SR1×パワーユニットY方向サイズPUY/(配線幅W1×配線数N1)・・・式(2)
これにより、第1配線層MET1の抵抗値R1が求まる。
同様にして、第2配線層MET2(X方向)の抵抗値R2、第3配線層MET3(Y方向)の抵抗値R3、第4配線層MET4(X方向)の抵抗値R4が求められる。そして多層のうち同方向のものを並列抵抗とみなし、1値にマージすることが行われ、X方向抵抗成分RXおよびY方向抵抗成分RYが得られる。
X方向抵抗成分RX=1/(1/R2+1/R4) ・・・式(3)
Y方向抵抗成分RY=1/(1/R1+1/R3) ・・・式(4)
そして図3に示す十字モデルにおける抵抗RX1、RX2、RY1、RY2の抵抗値が求められる。このとき、抵抗値RX1=RX2=X方向抵抗成分RX/2とされる。また同様に、抵抗値RY1=RY2=Y方向抵抗成分RY/2とされる。そしてブロックBLK1に属する全てのパワーユニットPUについて、得られた抵抗値が与えられることで、BLK1に属するパワーユニットPUについての抵抗モデリングが完了する。
ステップS44(図5)において、ブロックBLK1に属する全てのパワーユニットPUについての抵抗RX1、RX2、RY1、RY2の抵抗値が、パワーユニット管理テーブルCTに格納され管理される。
その後ステップS45へ進み、コア領域CA内の全てのブロックについて抵抗モデリングが行われたか否かが判断される。本実施形態では、ブロックBLK2についての抵抗モデリングがまだ行われていない(S45:N)ため、ステップS41へ戻り、ブロックBLK2についての抵抗モデリングが行われる。このフローを繰り返すことで、コア内の全ブロックについて抵抗モデリングが行われると(S45:Y)、ステップS32に進む。
ステップS32について説明する。ステップS32は、ステップS46乃至S50を備える。ステップS46では、マクロ選択およびマクロ形状・位置判定が行われる。マクロ選択により、コア領域CA内に配置された全マクロの各々が順次選択される。例として本実施形態(図4)では、まずマクロMCR1が選択され、マクロMCR1に少なくとも一部が重なるパワーユニットPUが抽出される。ステップS47では、マクロMCR1について、第1配線層MET1から第4配線層MET4までの各々のマクロ上電源占有率MPR1乃至MPR4が、情報格納部DMから取得される。ステップS48では、マクロMCR1に属する全てのパワーユニットPUについて、抵抗モデリングが行われる。ステップS49において、マクロMCR1に属する全てのパワーユニットPUについての抵抗RX1、RX2、RY1、RY2の抵抗値が、パワーユニット管理テーブルCTに格納され管理される。ステップS50において、コア領域CA内の全てのマクロについて抵抗モデリングが行われたか否かが判断され、全マクロについて抵抗モデリングが終了(S50:Y)すると、ステップS33に進む。なお、詳細な抵抗モデリング方法については、ブロックについての抵抗モデリング方法(ステップS41乃至S45)と同様であるため、ここでは説明を省略する。
なおブロック内にマクロが含まれる場合があるため、あるパワーユニットPUの少なくとも一部が、ブロックとマクロとの両方に重なる場合があるが、この場合にはマクロが優先される。すなわちブロックとマクロとの両方に重なるパワーユニットPUは、ステップS41において当該ブロックには属さないと判断され、ステップS46においてマクロに属すると判断される。
ステップS33について説明する。ステップS33は、ステップS51乃至S53を備える。ステップS51では、コアリング幅CWが、情報格納部DMから取得される。そして位置判定により、コアリングに少なくとも一部が重なるパワーユニットPUが抽出される。
ステップS52では、コアリングに属するパワーユニットPUの抵抗値が算出される。 例として、第1配線層MET1におけるコアリング抵抗値CR1を求める方法を説明する。X方向に配置されるコアリングの抵抗値は下式(5)、Y方向に配置されるコアリングの抵抗値は下式(6)によって求められる。
X方向コアリング抵抗値CRX1=シート抵抗値SR1/コアリング幅CW×パワーユニットX方向サイズPUX ・・・式(5)
Y方向コアリング抵抗値CRY1=シート抵抗値SR1/コアリング幅CW×パワーユニットY方向サイズPUY ・・・式(6)
同様にして、第2配線層MET2乃至第4配線層MET4のコアリングの抵抗値が求められる。各配線層のコアリングの抵抗値は並列抵抗とみなされ、1値にマージされることで、コアリング抵抗値CRが得られる。そしてステップS53において、コアリングに属する全てのパワーユニットPUについてのコアリング抵抗値CRが、パワーユニット管理テーブルCTに格納され管理される。これによりコアリングについての抵抗モデリングが終了し、ステップS34へ進む。
ステップS34(図6)について説明する。ステップS34は、ステップS55乃至S61を備える。ステップS55では、電源I/O領域PAに配置された電源I/Oセルの各々について順次選択される。そして選択された電源I/Oセルの位置座標が、情報格納部DMから取得される。ステップS56では、選択された電源I/Oセルの電源I/O抵抗値IORが、情報格納部DMから取得される。
ステップS57では、選択された電源I/Oセルの座標を用いて、当該電源I/Oセルに少なくとも一部が重なるパワーユニットPUの座標が判定・抽出される。そして当該電源I/Oセルに属するパワーユニットPUの抵抗値が、電源I/O抵抗値IORから求められる。ここで、コアリングのY方向成分を有する辺に対して電源を供給する電源I/Oセルに属するパワーユニットPUには、抵抗RX1およびRX2が備えられる。また、コアリングのX方向成分を有する辺に対して電源を供給する電源I/Oセルに属するパワーユニットPUには、抵抗RY1およびRY2が備えられる。ステップS58において、当該電源I/Oセルに属するパワーユニットPUについての抵抗値RX1、RX2(またはRY1、RY2)が、パワーユニット管理テーブルCTに格納され管理される。
ステップS59において、選択された電源I/Oセルに対応するパッケージ抵抗PRが情報格納部DMから取得される。ステップS60において、電源I/Oセルに属するパワーユニットPUについての抵抗値RX1、RX2(またはRY1、RY2)に、ステップS59で取得されたパッケージ抵抗PRが加算された上で、PU管理テーブルに再度設定される。これにより、パッケージ抵抗PRを考慮したパワーユニットPUの作成が可能となる。
その後ステップS61へ進み、電源I/O領域PA内の全ての電源I/Oセルについて抵抗モデリングが行われたか否かが判断される。そして全ての電源I/Oセルについて抵抗モデリングが行われると(S61:Y)、ステップS35に進む。なおこのとき、電源I/O領域PA内のパワーユニットPUであって、何れの電源I/Oセルにも属さないパワーユニットPUについての抵抗値は、無限大とされる。
ステップS35について説明する。ステップS35は、ステップS63乃至S66を備える。ステップS63では、ブロックおよびマクロの何れにも属さないパワーユニットPUの抽出が行われる。ステップS64では、ブロックおよびマクロの何れにも属しないパワーユニットPUについて、第1配線層MET1から第4配線層MET4までの各々のチップ電源占有率CPR1乃至CPR4が、情報格納部DMから取得される。ステップS65では、ブロックおよびマクロの何れにも属しないパワーユニットPUの抵抗値が算出されることで、抵抗モデリングが行われる。ステップS66では、ブロックおよびマクロの何れにも属しない全てのパワーユニットPUが備える抵抗RX1、RX2、RY1、RY2の抵抗値が求められた上で、パワーユニット管理テーブルCTに格納され設定される。なお詳細な抵抗モデリング方法については、ブロックに属するパワーユニットPUにおける抵抗モデリング(ステップS41乃至S45)と同様であるため、詳細な説明は省略する。これによりステップS12における抵抗モデリングは終了し、ステップS13へ進む。
ステップS13における電流源モデリングのフローチャートを図8に示す。電流源モデリングとは、パワーユニットPU(図3)における電流源PIをモデリングする方法である。ステップS13における電流源PIモデリングは、ステップS71乃至S73を備える。ステップS71は、コア領域CAにおいて、ブロックBLK1、BLK2と重なるパワーユニットPUを抽出した上で、電流値を算出するステップである。ステップS72は、コア領域CAにおいて、マクロMCR1乃至MCR5と重なるパワーユニットPUを抽出した上で、電流値を算出するステップである。ステップS73は、コア領域CAにおいて、ブロックおよびマクロの何れとも重ならないパワーユニットPUを抽出した上で、電流値を算出するステップである。
ステップS71について説明する。ステップS71は、ステップS81乃至S85を備える。ステップS81では、ブロック選択およびブロック形状・位置判定が行われる。ブロック選択により、コア領域CA内に配置された全ブロックの各々が順次選択される。例として図4では、まずブロックBLK1が選択される。そしてブロックBLK1の形状と配置位置とを考慮して、ブロックBLK1に少なくとも一部が重なるパワーユニットPUが抽出される。また、抽出されたパワーユニットPUの総数であるパワーユニット総数PUS1が求められる。
ステップS82では、ブロックBLK1に対応するブロック電流BIが、情報格納部DMから取得される。ステップS83では、ブロックBLK1に属するパワーユニットPUの1つ当たりの電流値であるパワーユニット電流値PUI1が算出される。ここでブロック内の電流値は均一であるとモデル化されているため、パワーユニット電流値PUI1は、下式(7)で求められる。
パワーユニット電流値PUI1=(ブロック電流BI)/(パワーユニット総数PUS1) ・・・式(7)
そしてステップS84において、パワーユニット電流値PUI1が、パワーユニット管理テーブルCTに格納され管理される。その後ステップS85へ進み、コア領域CA内の全てのブロックについてパワーユニット電流値PUI1の算出が行われたか否かが判断され、全ブロックについて電流値算出が行われると(S85:Y)、ステップS72に進む。
ステップS72について説明する。ステップS72は、ステップS87乃至S90を備える。ステップS87では、マクロ選択およびマクロ形状・位置判定が行われる。図4では、まずマクロMCR1が選択され、マクロMCR1に少なくとも一部が重なるパワーユニットPUが抽出される。また、抽出されたパワーユニットPUの総数であるパワーユニット総数PUS2が求められる。ステップS88では、マクロMCR1に対応するマクロ電流MIが、情報格納部DMから取得される。ステップS89では、マクロMCR1に属するパワーユニットPUの1つ当たりの電流値であるパワーユニット電流値PUI2が、下式(8)により算出される。
パワーユニット電流値PUI2=(マクロ電流MI)/(パワーユニット総数PUS2) ・・・式(8)
ステップS90において、パワーユニット電流値PUI2が、パワーユニット管理テーブルCTに格納され管理される。その後ステップS91へ進み、コア領域CA内の全てのマクロについてパワーユニット電流値PUI2の算出が行われたか否かが判断され、全マクロについて電流値算出が行われると(S91:Y)、ステップS73に進む。
ステップS73について説明する。ステップS73は、ステップS93乃至S96を備える。ステップS93では、ブロックおよびマクロの何れにも属さないパワーユニットPUの抽出が行われる。また、抽出されたパワーユニットPUの総数であるパワーユニット総数PUS3が求められる。ステップS94では、半導体チップ全体で消費される電流であるチップトータル電流CIが、情報格納部DMから取得される。ステップS95では、ブロックおよびマクロの何れにも属さないパワーユニットPUの1つ当たりの電流値であるパワーユニット電流値PUI3が、下式(9)により算出される。
パワーユニット電流値PUI3=(チップトータル電流CI−ブロックトータル電流TBI−マクロトータル電流TMI)/(パワーユニット総数PUS3) ・・・式(9)
ここでブロックトータル電流TBIは、ブロック電流BIの全ブロックにおける積算値である。またマクロトータル電流TMIは、マクロ電流MIの全マクロにおける積算値である。
ステップS96では、パワーユニット電流値PUI3が、パワーユニット管理テーブルCTに格納され管理される。これによりステップS13における電流源PIモデリングは終了する。
以上により、レイアウト領域LA内の全てのパワーユニットPUについて、抵抗値とパワーユニット電流値PUI1乃至PUI3が得られるため、ステップS3におけるパワーユニットPUのモデリングが終了する。そしてモデリング終了に伴い、パワーユニット管理テーブルCTが完成される(ステップS4)。
ステップS5(図1)では、ステップS4で得られたパワーユニット管理テーブルCTを用いて、例えば特許文献(特開2003−233637)の方法により、スタティックIRドロップが計算される。
計算終了後、ステップS6へ進み、IRドロップ解析結果表示が行われる。図4のフロアプランに対応したIRドロップ解析結果表示を、図9に示す。図9に示すように、チップ左側中央部の電圧降下量が多いことが分かる。これは図4のフロアプラン図において、マクロMCR4およびMCR5が配置される位置の近傍に該当する。すなわちIRドロップ見積もりに、フロアプランにおけるブロック・マクロの偏在(バラつき)を考慮することができ、より高精度なIRドロップ計算が可能とされていることが分かる。
ステップS7において、IRドロップ解析により得られたIRドロップ見積り量が、規格値内であるか否かが判断される。本実施形態では、図9に示すようにチップ左側中央のIRドロップ見積り量が多く、規格値外となる。原因として、図4のフロアプランに示すように、マクロMCR1乃至MCR5の配置がチップ左辺に集中し、電源リソース量が不足していることが考えられる。またチップ左辺に配置された電源I/Oセル量が少ないことや、チップ左辺に大きな消費電流値が割り当てられていることなども考えられる。よって、マクロMCR1乃至MCR5がコア領域CAの左辺中央部に集中しないようにフロアプランを変更することが好ましいことが分かる。よって再度ステップS1またはステップS2へ戻り(S7:N)、図9のIRドロップ解析結果をフィードバックして、IRドロップ量の見積りのやり直しが行われる。なお、ステップS1まで戻る場合はデザイン情報の変更が必要な場合であり、ステップS2へ戻る場合はフロアプランの変更のみを行う場合である。
ステップS2において、フロアプラン配置を再調整した例を図10に示す。またステップS6において得られた、図10のフロアプランに対応したIRドロップ解析結果を図11に示す。図11において、コア領域CA左辺へのIRドロップ量の偏りが解消されると共に、ドロップ量のピーク値も低くなったことが分かる。これにより、IRドロップ見積り量が規格内に入り、初期見積りは終了(S7:Y)する。そしてステップS8へ進み、物理設計が行われる。
以上詳細に説明したとおり、第1実施形態に係る半導体集積回路の電源電圧ドロップシミュレーション方法によれば、シミュレーション用のパワーユニットPU(図3)のモデル作成時において、各種抵抗値や電流値などのパラメータを用いる必要がなく、抵抗値や電流値に対して設計の上位概念のパラメータ(コアサイズCS、電源占有率、チップトータル電流CI、電源I/O位置IOPなど)を用いることが出来る。これにより、パワーユニットPUモデル作成時に、抵抗値や電流値などを求める手間を省くことができ、モデル作成時間の短縮化を図ることができる。よってスタティックIRドロップの初期見積りシミュレーションの高効率化が可能となり、半導体集積回路の開発期間短縮化を図ることができる。
またパワーユニットPUのモデル作成時において、抵抗値や電流値を与える手間を省くことにより、モデル作成効率が高められるため、従来と同じ時間でより多数のパワーユニットPUのモデルを作成することが可能となる。するとレイアウト領域LAへの各種ブロック・マクロの配置(フロアプラン)に応じた、電源配線の抵抗値・電流値等の各種パラメータの偏在(ばらつき)をモデル化可能になる。よって電圧ドロップシミュレーションの精度を向上させることができるため、スタティックIRドロップの初期見積りをより正確に行うことが可能となる。
また、抵抗値や電流値などのパラメータに対して設計の上位概念のパラメータであるコアリング幅CW、電源I/O抵抗値IOR、パッケージ抵抗PRを、デザイン情報として取得することにより、半導体集積回路のデザインごとにこれらのパラメータの影響をシミュレーションに反映させることができる。よってスタティックIRドロップの初期見積りの精度をより高めることが可能となる。
また図4に示すように、マクロおよびブロックをコア領域CAに配置するという操作によって、マクロ・ブロックの配置位置の偏在(ばらつき)を、IRドロップの初期見積もりに反映させることができる。これにより、IRドロップ解析結果のフィードバックが簡易化・高効率化されるため、半導体集積回路の開発期間短縮化を図ることができる。
本発明の第2実施形態を図12を用いて説明する。第2実施形態は、ダイナミックドロップと呼ばれる瞬時的な電圧変動に対するシミュレーション方法である。まず、本発明のダイナミックIRドロップ・シミュレーションで用いられるパワーユニットのモデルについて図12を用いて説明する。ダイナミックIRドロップ用のパワーユニットは、VDD配線用のパワーユニットDPUと、VSS配線用のパワーユニットSPUとを備える。パワーユニットDPUおよびSPUは、四角形状の各辺に4つのモデルインダクタLX1、LX2、LY1、LY2が備えられる2次元十字形の回路モデルを備える。またパワーユニットDPUとSPUとの間には、内部容量サブモデルCSM及び内部消費電流サブモデルISMが作成される。このパワーユニットを用いて、例えば特許文献(特開2004−234618)の方法により、ダイナミックIRドロップが計算される。以下、パワーユニットのモデルインダクタのモデリングを行うフロー、および内部容量サブモデルCSMに含まれるキャパシタCCおよび抵抗MRのモデリングを行うフローについて、図1を用いて説明する。
図1のフローにおけるステップS1(デザイン情報入力)において、第2実施形態では、さらに電源I/OインダクタンスIOL、パッケージインダクタンスPL、デカップリング容量値DCがシミュレータに入力され、これらの情報は情報格納部DMに格納される。電源I/OインダクタンスIOLとは、電源I/Oセルが有するインダクタンス値である。パッケージインダクタンスPLとは、電源I/Oセルからワイヤボンディングを介してパッケージ外部端子へ至るまでの径路上に存在するインダクタンス値の合計である。またデカップリング容量値DCとは、半導体集積回路全体が有するデカップリング容量であり、具体的には、パワーユニットDPUとSPUが表現する面内に存在する電源配線間の容量と、電源ノイズを低減するためのデカップリングキャパシタの容量と、内部回路の論理ゲートの容量の合計により求められる。
また図1のフローにおけるステップS13(電流源モデリング)とステップS4(パワーユニット管理テーブルCT設定)との間に、インダクタモデリングステップとキャパシタンスモデリングステップとが追加して備えられる。
インダクタモデリングステップは、ステップS12の抵抗モデリングステップ(図5、図6)と同様のフローを備える。そして、ステップS43、S48、S52において、シート抵抗値SR1乃至SR4に代えてシートインダクタンス値SL1乃至SL4が用いられる。またステップS56では、選択された電源I/Oセルの電源I/O抵抗値IORに加えて、インダクタンス値IOLが、情報格納部DMから取得される。またステップS59では、選択された電源I/Oセルに対応するパッケージ抵抗PRに加えて、パッケージインダクタンスPLが情報格納部DMから取得される。なお、詳細なインダクタンスのモデリング方法については、ステップS12の抵抗モデリング方法と同様であるため、ここでは説明を省略する。
一方、キャパシタンスモデリングステップは、コア領域CAに属するパワーユニットPUの内部容量サブモデルCSMに備えられるキャパシタCCの容量値を算出するステップである。具体的には、キャパシタCCの容量値は、デカップリング容量値DCを、コア領域CAに属するパワーユニットPUの総数で除することにより求めることが出来る。なお、詳細なキャパシタンスのモデリング方法については、ステップS13の電流源モデリング方法と同様であるため、ここでは説明を省略する。また内部消費電流サブモデルISMの電流値には、ステップS13の電流源モデリングステップ(図8)により求められるパワーユニット電流値PUI1乃至PUI3が用いられる。また内部容量サブモデルCSMの抵抗MRの抵抗値は、パワーユニットの抵抗値RX1等と比して十分小さいとして無視することが可能である。
以上詳細に説明したとおり、第2実施形態に係る半導体集積回路の電源電圧ドロップシミュレーション方法によれば、ダイナミックドロップと呼ばれる瞬時的な電圧変動に対するシミュレーション用のパワーユニットPU(図12)のモデル作成時において、各種インダクタンス値やキャパシタンス値などのパラメータを用いる必要がなく、インダクタンス値やキャパシタンス値に対して設計の上位概念のパラメータ(デカップリング容量値DC、シートインダクタンス値SL、コアサイズCS、電源占有率など)を用いることが出来る。これにより、パワーユニットPUモデル作成時に、インダクタンス値やキャパシタンス値などを求める手間を省くことができ、モデル作成時間の短縮化を図ることができるため、ダイナミックIRドロップの初期見積りシミュレーションの高効率化が可能となる。
またパワーユニットPUのモデル作成時において、インダクタンス値やキャパシタンス値を与える手間を省くことにより、モデル作成効率が高められるため、従来と同じ時間でより多数のパワーユニットPUのモデルを作成することが可能となる。するとレイアウト領域LAへの各種ブロック・マクロの配置に応じた、電源配線のインダクタンス値等の各種パラメータの偏在(ばらつき)をモデル化可能になる。よって、ダイナミックドロップと呼ばれる瞬時的な電圧変動に対して、電源ノイズを低減する容量成分の効果を精度良く解析することが可能となる。また解析結果に応じて、デカップリングキャパシタの配置の最適化などを図ることが可能となる。
尚、本発明は前記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良、変形が可能であることは言うまでもない。第1実施形態では、レイアウト領域LAにおけるブロック位置、マクロ位置、電源I/Oセル位置などを考慮することで、レイアウト領域LA内での各種パラメータの偏在(ばらつき)をモデル化しているが、この形態に限られない。例えば、チップ全面を均一モデルと考え、パワーユニットPUは全て同一のものを使うことにより、ブロック及びマクロのフロアプランを考慮しないとしてもよい。
この場合、ステップS1(図1)で入力が必要なデザイン情報のうち、ブロック形状BS・マクロ形状MS、ブロック電流BI・マクロ電流MIは不要とされる。またコアリング幅CW、電源I/O抵抗値IORはテクノロジで固定とされる。またパッケージ抵抗PRは、テクノロジで代表的なパッケージの値が使用されるとする。よってデザイン情報として必要なパラメータは、チップ均一電源占有率UPR、コアサイズCS、チップトータル電流CIとなり、必要なパラメータが簡略化される。またステップS2で入力が必要なフロアプラン情報のうち、ブロック位置BP・マクロ位置MPは不要とされる。よってフロアプラン情報として必要なパラメータは、電源I/O位置IOPに簡略化される。
この場合、パワーユニットPUのモデル(図3)におけるモデル抵抗RX1、RX2、RY1、RY2を求めるには、ステップS12において、チップ均一電源占有率UPRを用いて計算が行われる。またパワーユニット電流値PUIを求めるには、ステップS13において、コアサイズCSをライブラリから取得されたパワーユニットサイズUSによって除することにより、コア領域CAを占めるパワーユニットPUの総数であるパワーユニット総数PUS4が求められる。そしてチップトータル電流CIをパワーユニット総数PUS4に均等に割り付けることにより、パワーユニット電流値PUIが求められる。これにより、シミュレーションに必要なデザイン情報およびフロアプラン情報を減らすことや、パワーユニットPUのモデル数を減らすことができるため、さらにモデル作成時間の短縮化を図ることができる。よってスタティックIRドロップの初期見積りシミュレーションのさらなる高効率化が可能とされ、半導体集積回路の開発期間をより短縮化することができる。
また第2実施形態においても、チップ全面を均一モデルと考え、パワーユニットPUは全て同一のものを使用し、ブロック及びマクロのフロアプランを考慮しないとしてもよい。この場合、デザイン情報として必要なパラメータは、チップ均一電源占有率UPR、コアサイズCS、チップトータル電流CIに加えて、デカップリング容量値DCとなる。またフロアプラン情報として必要なパラメータは、電源I/O位置IOPとなる。これにより第2実施形態においても、ダイナミックIRドロップ・シミュレーションに必要なデザイン情報およびフロアプラン情報を減らすことや、パワーユニットPUのモデル数を減らすことができるため、さらにモデル作成時間の短縮化を図ることができる。
またブロックやマクロに少なくとも一部が重なるパワーユニットPUは、当該ブロックやマクロに属するパワーユニットPUとして認識されるとしたが、この形態に限られない。パワーユニットPUがブロックやマクロに重なる割合を求め、この割合に応じてブロックやマクロに属するとして、抵抗モデリングや電流源モデリングを行うとしてもよい。例えばパワーユニットPUの面積の半分がブロックBLK1に重なる場合には、当該パワーユニットPUはブロックBLK1に50%帰属するとし、この帰属率に応じて抵抗値や電流値が得られるとしてもよい。これにより、さらに高精度にレイアウト領域LAにおける各種パラメータのばらつきをモデル化できるため、IRドロップの初期見積りシミュレーションの精度をさらに向上させることができる。
また本実施形態では、ネットリスト等の品種データを用いずに、設計の初期段階での見積もりを可能とする実施形態であるとしたが、この形態に限られない。ネットリストが既に存在する場合には、ネットリストを取り込むことによりデザインエントリ作業を簡略化可能であり、柔軟な運用が可能とされることは言うまでもない。
なお、パワーユニットPUは分割ユニットの一例、ブロックBLK1およびBLK2、マクロMCR1乃至MCR5は回路集合体の一例、ブロック形状BSおよびマクロ形状MSは回路集合体形状情報の一例、ブロック電流BIおよびマクロ電流MIは回路集合体電流量情報のそれぞれ一例である。
第1実施形態に係るスタティックIRドロップ・シミュレーションのフロー図である。 レイアウト領域LAを示す図である。 第1実施形態に係るパワーユニットPUのモデル図である。 コア領域CAにおけるブロックおよびマクロの配置図(調整前)である。 ステップS12における抵抗モデリングのフロー図(その1)である。 ステップS12における抵抗モデリングのフロー図(その2)である。 パワーユニットPUにおける第1配線層MET1を示す図である。 ステップS13における電流源モデリングのフロー図である。 図4に対応するIRドロップ解析結果の表示図である。 コア領域CAにおけるブロックおよびマクロの配置図(調整後)である。 図10に対応するIRドロップ解析結果の表示図である。 第2実施形態に係るパワーユニットのモデル図である。
符号の説明
CS コアサイズ
CW コアリング幅
BS ブロック形状
MS マクロ形状
BI ブロック電流
MI マクロ電流
CI チップトータル電流
IOR 電源I/O抵抗値
PR パッケージ抵抗
UPR チップ均一電源占有率
BPR ブロック上電源占有率
MPR マクロ上電源占有率
CPR チップ電源占有率
BP ブロック位置
MP マクロ位置
IOP 電源I/O位置
BLK1、BLK2 ブロック
MCR1乃至MCR5 マクロ
PU パワーユニット
SR1乃至SR4 シート抵抗値

Claims (10)

  1. 半導体集積回路のレイアウト領域を複数の分割ユニットに分割し、前記分割ユニットにおける電源配線密度を表す電源占有率情報を取得するステップと、
    前記レイアウト領域に少なくとも1つ以上の電源が供給される位置を表す電源I/O位置情報を取得するステップと、
    予め定められた前記電源配線のシート抵抗値と前記電源占有率情報とに応じて、隣接する前記分割ユニット間の電源配線の抵抗値を表すモデル抵抗の抵抗値を求めるステップと、
    前記レイアウト領域の少なくとも一部を占めるように少なくとも1つ配置される所定領域に、少なくとも一部が重なる前記分割ユニットを、前記所定領域に属する前記分割ユニットとし、
    前記所定領域において消費される消費電流を前記所定領域に属する前記分割ユニットに均等に割り付けるステップと
    を備えることを特徴とする電源電圧分布シミュレーション方法。
  2. 前記レイアウト領域のうち、主動作にかかる回路が配置されるコア領域の大きさを表すコアサイズ情報を取得するステップと、
    前記所定領域において消費される消費電流として、前記半導体集積回路全体で消費する電流であるチップトータル電流情報を取得するステップとを備え、
    前記所定領域として前記コア領域が用いられ、
    前記コアサイズ情報を、前記分割ユニットの大きさを表す予め定められた分割ユニットサイズ情報によって除することにより、前記コア領域を占める前記分割ユニットの総数であるコア領域分割ユニット数を求め、求めた前記コア領域分割ユニット数が前記所定領域に属する前記分割ユニットの数として用いられることを特徴とする請求項1に記載の電源電圧分布シミュレーション方法。
  3. 複数の回路が組み合わされてなる回路集合体を複数種類備え、前記レイアウト領域のうち主動作にかかる回路が配置されるコア領域に前記回路集合体が配置される電源電圧分布シミュレーション方法であって、
    前記コア領域に配置される前記回路集合体の前記コア領域上における位置を表す回路集合体位置情報を取得するステップと、
    前記回路集合体の形状を表す回路集合体形状情報を取得するステップと、
    前記回路集合体の種類に応じて、該回路集合体が消費する電流を表す回路集合体電流量情報を取得するステップと、
    前記半導体集積回路全体で消費する電流であるチップトータル電流情報を取得するステップと、
    前記回路集合体位置情報と前記回路集合体形状情報とから、前記回路集合体の各々が前記コア領域上に存在する回路集合体占有領域を算出し、
    前記回路集合体占有領域に属する前記分割ユニットの数を前記回路集合体ごとに抽出するステップと、
    前記分割ユニットが属する前記回路集合体の種類に応じて定められる前記電源占有率情報と前記シート抵抗値とにより、前記モデル抵抗の抵抗値を求めるステップとを備え、
    前記回路集合体占有領域に属する前記分割ユニットにおける消費電流値は、前記回路集合体電流量情報の電流値を前記回路集合体占有領域に属する前記分割ユニットの数で除することにより得られ、
    前記回路集合体占有領域に属さない前記分割ユニットにおける消費電流値は、前記チップトータル電流情報から、前記回路集合体電流量情報を全ての前記回路集合体について合算した値を引いた残値を、何れの前記回路集合体占有領域にも属しない前記分割ユニットの数で除することにより得られることを特徴とする請求項1に記載の電源電圧分布シミュレーション方法。
  4. 前記半導体集積回路は、前記電源配線の配線層を複数有する多層配線構造を備え、
    前記電源占有率情報は、前記配線層ごとに定められることを特徴とする請求項3に記載の電源電圧分布シミュレーション方法。
  5. 前記レイアウト領域のうち主動作にかかる回路が配置されるコア領域の周囲に環状に配置される電源配線であるコアリングの幅を表すコアリング幅情報を取得するステップを備え、
    前記シート抵抗値と前記コアリング幅情報とに応じて、前記コアリングに属する前記分割ユニットの前記モデル抵抗の抵抗値を求めること
    を特徴とする請求項1に記載の電源電圧分布シミュレーション方法。
  6. 前記レイアウト領域に少なくとも1つ以上の電源を供給するセルである電源I/Oセルが有する抵抗値を表す電源I/O抵抗情報を取得するステップを備えることを特徴とする請求項1に記載の電源電圧分布シミュレーション方法。
  7. 前記レイアウト領域に少なくとも1つ以上の電源を供給するセルである電源I/Oセルと前記半導体集積回路のパッケージの外部接続端子との接続径路上に存在する抵抗値を表すパッケージ抵抗情報を取得するステップを備えることを特徴とする請求項1に記載の電源電圧分布シミュレーション方法。
  8. 異なる電源種ごとに作成された前記分割ユニットの間を内部回路モデルで接続し、半導体集積回路の動的な電源電圧分布を求める電源電圧シミュレーション方法であって、
    前記所定領域が備えるデカップリング容量を表すデカップリング容量情報を取得するステップを備え、
    前記デカップリング容量情報が前記所定領域に属する前記分割ユニットに均等に割り付けられ、
    隣接する前記分割ユニット間の電源配線の抵抗値を少なくとも1つ以上のモデルインダクタで表し、予め定められた前記電源配線のシートインダクタンス値と前記電源占有率情報とから、前記モデルインダクタのインダクタンス値が求められ
    ることを特徴とする請求項1に記載の電源電圧分布シミュレーション方法。
  9. 前記レイアウト領域のうち、主動作にかかる回路が配置されるコア領域の大きさを表すコアサイズ情報を取得するステップと、
    前記所定領域において消費される消費電流として、前記半導体集積回路全体で消費する電流であるチップトータル電流情報を取得するステップとを備え、
    前記所定領域として前記コア領域が用いられ、
    前記コアサイズ情報を、前記分割ユニットの大きさを表す予め定められた分割ユニットサイズ情報によって除することにより、前記コア領域を占める前記分割ユニットの総数であるコア領域分割ユニット数を求め、求めた前記コア領域分割ユニット数が前記所定領域に属する前記分割ユニットの数として用いられることを特徴とする請求項8に記載の電源電圧分布シミュレーション方法。
  10. 半導体集積回路のレイアウト領域を複数の分割ユニットに分割し、前記分割ユニットにおける電源配線密度を表す電源占有率情報を取得するステップと、
    前記レイアウト領域に少なくとも1つ以上の電源が供給される位置を表す電源I/O位置情報を取得するステップと、
    予め定められた前記電源配線のシート抵抗値と前記電源占有率情報とに応じて、隣接する前記分割ユニット間の電源配線の抵抗値を表すモデル抵抗の抵抗値を求めるステップと、
    前記レイアウト領域の少なくとも一部を占めるように少なくとも1つ配置される所定領域に、少なくとも一部が重なる前記分割ユニットを、前記所定領域に属する前記分割ユニットとし、
    前記所定領域において消費される消費電流を前記所定領域に属する前記分割ユニットに均等に割り付けるステップと
    を備えることを特徴とする電源電圧分布シミュレーションプログラム。
JP2005236621A 2005-08-17 2005-08-17 半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム Pending JP2007052591A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005236621A JP2007052591A (ja) 2005-08-17 2005-08-17 半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム
US11/305,184 US7367000B2 (en) 2005-08-17 2005-12-19 Method for simulating power voltage distribution of semiconductor integrated circuit and simulation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005236621A JP2007052591A (ja) 2005-08-17 2005-08-17 半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム

Publications (1)

Publication Number Publication Date
JP2007052591A true JP2007052591A (ja) 2007-03-01

Family

ID=37768566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005236621A Pending JP2007052591A (ja) 2005-08-17 2005-08-17 半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム

Country Status (2)

Country Link
US (1) US7367000B2 (ja)
JP (1) JP2007052591A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8249849B2 (en) 2008-05-29 2012-08-21 Fujitsu Limited Power source network analyzing apparatus, power source network analyzing method, and power source network analyzing program
JP2012181581A (ja) * 2011-02-28 2012-09-20 Fujitsu Ltd ノイズ見積り方法及びノイズ見積り装置
US8576955B2 (en) 2008-03-28 2013-11-05 Qualcomm Incorporated Architecture to handle concurrent multiple channels

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7327150B2 (en) * 2005-10-11 2008-02-05 Intel Corporation Integrated circuit package resistance measurement
JP5161035B2 (ja) * 2008-10-29 2013-03-13 ルネサスエレクトロニクス株式会社 半導体集積回路の設計装置、設計方法およびプログラム
US8190418B1 (en) * 2009-03-19 2012-05-29 Altera Corporation Producing integrated circuits with time-dependent-impedance elements
US8701066B1 (en) * 2012-06-28 2014-04-15 Cadence Design Systens, Inc. Extracting capacitance and resistance from FinFET devices
US8707547B2 (en) * 2012-07-12 2014-04-29 Inpaq Technology Co., Ltd. Method for fabricating a lead-frameless power inductor
US20150186586A1 (en) * 2013-12-30 2015-07-02 Samsung Electronics Co., Ltd. Integrated circuit layouts and methods to improve performance
JP6328974B2 (ja) * 2014-03-28 2018-05-23 株式会社メガチップス 半導体装置及び半導体装置の設計手法
KR102276908B1 (ko) 2014-12-05 2021-07-13 삼성전자주식회사 반도체 장치의 파워 노이즈 해석 방법을 수행하는 프로그램을 실행 가능한 컴퓨팅 장치, 상기 방법을 포함하는 반도체 장치의 설계 방법, 및 상기 프로그램을 저장하는 프로그램 저장 매체
JP6439896B1 (ja) * 2018-08-21 2018-12-19 富士通株式会社 メモリ書き込み制御装置及び不揮発性メモリの不良判定方法
US10990731B1 (en) * 2019-12-20 2021-04-27 Ansys, Inc. Dynamic voltage drop analysis with improved coverage
US11663388B1 (en) 2019-12-20 2023-05-30 Ansys, Inc. DVD simulation using microcircuits
US11531794B1 (en) 2019-12-20 2022-12-20 Ansys, Inc. Voltage drop analysis using local circuit representation
CN113361227B (zh) * 2021-06-22 2022-11-15 无锡江南计算技术研究所 一种封装与印制板级分布式电源压降仿真方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003158188A (ja) * 2001-11-21 2003-05-30 Matsushita Electric Ind Co Ltd 半導体装置、半導体装置用パターンの生成方法、半導体装置の製造方法、および半導体装置用パターン生成装置
JP2004178501A (ja) * 2002-11-29 2004-06-24 Fujitsu Ltd 半導体集積回路装置の設計方法及び設計装置
JP2005196468A (ja) * 2004-01-07 2005-07-21 Toshiba Corp 半導体集積回路の静電放電の解析装置および解析プログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4053767B2 (ja) * 2001-12-07 2008-02-27 富士通株式会社 電源配線設計方法、電源配線設計装置、記録媒体、及びプログラム
JP2003233637A (ja) 2002-02-08 2003-08-22 Fujitsu Ltd 半導体集積回路の電源電圧ドロップ・シミュレーション方法及び装置
US7818157B2 (en) * 2002-06-19 2010-10-19 LS1 Corporation Instantaneous voltage drop sensitivity analysis tool (IVDSAT)
KR100545748B1 (ko) * 2002-08-09 2006-01-24 마쯔시다덴기산교 가부시키가이샤 반도체 집적회로 장치의 설계 방법 및 설계 장치
JP2004139181A (ja) * 2002-10-15 2004-05-13 Renesas Technology Corp レイアウト装置及びプログラム
JP4325274B2 (ja) 2002-12-06 2009-09-02 富士通株式会社 半導体装置モデル作成方法及び装置
JP4368641B2 (ja) * 2003-08-27 2009-11-18 富士通マイクロエレクトロニクス株式会社 電源パッドの数及び位置見積もり方法、チップサイズ見積もり方法及び設計装置
US7155689B2 (en) * 2003-10-07 2006-12-26 Magma Design Automation, Inc. Design-manufacturing interface via a unified model
JP2005250874A (ja) * 2004-03-04 2005-09-15 Toshiba Corp 回路シミュレーション装置、回路シミュレーション方法を格納するコンピュータ記録媒体及び回路シミュレーションプログラム
US7315992B2 (en) * 2004-07-29 2008-01-01 Texas Instruments Incorporated Electro-migration (EM) and voltage (IR) drop analysis of integrated circuit (IC) designs
US7246335B2 (en) * 2005-02-15 2007-07-17 Fujitsu Limited Analyzing substrate noise

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003158188A (ja) * 2001-11-21 2003-05-30 Matsushita Electric Ind Co Ltd 半導体装置、半導体装置用パターンの生成方法、半導体装置の製造方法、および半導体装置用パターン生成装置
JP2004178501A (ja) * 2002-11-29 2004-06-24 Fujitsu Ltd 半導体集積回路装置の設計方法及び設計装置
JP2005196468A (ja) * 2004-01-07 2005-07-21 Toshiba Corp 半導体集積回路の静電放電の解析装置および解析プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8576955B2 (en) 2008-03-28 2013-11-05 Qualcomm Incorporated Architecture to handle concurrent multiple channels
US8249849B2 (en) 2008-05-29 2012-08-21 Fujitsu Limited Power source network analyzing apparatus, power source network analyzing method, and power source network analyzing program
JP2012181581A (ja) * 2011-02-28 2012-09-20 Fujitsu Ltd ノイズ見積り方法及びノイズ見積り装置

Also Published As

Publication number Publication date
US7367000B2 (en) 2008-04-29
US20070044047A1 (en) 2007-02-22

Similar Documents

Publication Publication Date Title
JP2007052591A (ja) 半導体集積回路の電源電圧分布シミュレーション方法およびシミュレーションプログラム
US8495547B2 (en) Providing secondary power pins in integrated circuit design
US20210200929A1 (en) System for designing a semiconductor device, device made, and method of using the system
US8171446B2 (en) Method for designing a semiconductor device by computing a number of vias, program therefor, and semiconductor device
JP4530049B2 (ja) 半導体装置の設計プログラムおよび半導体装置の設計システム
US20160154924A1 (en) Semiconductor design method and computer-readable recording medium
JP2010066871A (ja) 半導体集積回路のレイアウト設計方法及びレイアウト設計装置
TWI665739B (zh) 積體電路內的貫孔佈局
US11681854B2 (en) Generation of layout including power delivery network
US9454634B1 (en) Methods, systems, and computer program product for an integrated circuit package design estimator
US10990741B2 (en) Multiple patterning method and system for implementing the method
US8863062B2 (en) Methods and apparatus for floorplanning and routing co-design
US9104830B1 (en) Methods, systems, and articles of manufacture for assigning track patterns to regions of an electronic design
JP7405679B2 (ja) ライン構成計画装置
US10643020B1 (en) System and method to estimate a number of layers needed for routing a multi-die package
JP4728944B2 (ja) 電源ノイズ解析モデル生成プログラム及び電源ノイズ解析モデル作成装置
US7539964B2 (en) Cell placement taking into account consumed current amount
WO2006137119A1 (ja) フロアプラン装置,フロアプランプログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
JP4678027B2 (ja) 集積回路装置の評価装置、評価方法及び評価プログラム
US20120047472A1 (en) Dummy-metal-layout evaluating device and dummy-metal-layout evaluating method
CN101667554A (zh) 生成半导体器件的布局图案的方法以及布局图案生成设备
KR101932805B1 (ko) 패턴 기반 전력 및 접지 (pg) 라우팅 및 비아 생성
JP5003407B2 (ja) プリント回路基板設計システム、プリント回路基板設計方法及びプログラム
JP3230937B2 (ja) 電子回路最適設計支援装置及びその方法
JP7009039B2 (ja) 半導体集積回路のレイアウト設計装置及びレイアウト設計用プログラム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070517

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070521

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080704

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100511

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100921