JP2009158566A - 半導体装置、容量値算出方法 - Google Patents

半導体装置、容量値算出方法 Download PDF

Info

Publication number
JP2009158566A
JP2009158566A JP2007332298A JP2007332298A JP2009158566A JP 2009158566 A JP2009158566 A JP 2009158566A JP 2007332298 A JP2007332298 A JP 2007332298A JP 2007332298 A JP2007332298 A JP 2007332298A JP 2009158566 A JP2009158566 A JP 2009158566A
Authority
JP
Japan
Prior art keywords
value
capacitance
region
calculating
semiconductor device
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.)
Granted
Application number
JP2007332298A
Other languages
English (en)
Other versions
JP5217418B2 (ja
Inventor
Takamasa Okumura
隆昌 奥村
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 Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor 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 Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2007332298A priority Critical patent/JP5217418B2/ja
Priority to US12/335,097 priority patent/US8224601B2/en
Publication of JP2009158566A publication Critical patent/JP2009158566A/ja
Application granted granted Critical
Publication of JP5217418B2 publication Critical patent/JP5217418B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • 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)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Architecture (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

【課題】デカップリング容量が占める領域が最適化された半導体装置を提供すること。
【解決手段】半導体装置21は、第1電源線LHと第2電源線LLとの間に接続されたインスタンス32a〜32cと、第1電源線LHと第2電源線LLとの間に接続されたデカップリング容量33とを有する。インスタンス32a〜32cには、信号が伝播される配線LSが接続されている。デカップリング容量33の容量値は、配線LSにおける入力信号の変化から出力信号の変化までの期間に依存する許容遅延変動量と、第1電源線LHと第2電源線LLとの間の電圧に依存する許容電圧変動量に基づく容量値である。
【選択図】図2

Description

電源配線間に接続されたデカップリング容量を含む半導体装置、及びデカップリング容量の容量値算出方法に関するものである。
近年の半導体装置では、プロセスの微細化、高集積化、動作周波数の高速化、電源電圧の低電圧化が進んでいる。高速化、低電圧化は、半導体装置に形成されたインスタンスの動作により生じる電源電圧の変動が電源ノイズとなって、論理的な誤動作や、タイミングのずれによる誤動作を引き起こす。このため、半導体装置の設計段階において、半導体装置の設計装置では、対象領域内に配置される論理セルの総消費電力を算出し、総消費電力に対応するデカップリング容量を対象となる領域内や対象とするインスタンスの近傍に分散して配置していた(例えば、特許文献1参照)。
特開2006−40962号公報
ところで、半導体装置は複数種類のインスタンスを接続して構成されている。そして、各インスタンスは、動作に影響する電源電圧の変動量が異なる、即ち、各インスタンスのノイズ耐量が異なる。上記の方法では、デカップリング容量の容量値が半導体装置の構成から必要とされる容量値よりも大きくなる場合がある。半導体装置に形成された多数のデカップリング容量は、半導体装置のチップ面積の増大の要因となる。このため、半導体装置のチップ面積縮小化に伴い、デカップリング容量が占める領域の最適(縮小)が求められている。
目的は、デカップリング容量が占める領域が最適化された半導体装置、その半導体装置に配置する容量の容量値算出方法を提供することにある。
この半導体装置は、第1電源線と第2電源線との間に接続された素子と、第1電源線と第2電源線との間に接続された容量と、を有し、容量の容量値は、素子に入力される入力信号の変化から素子から出力される出力信号の変化までの期間に依存する第1の値と、第1電源線と第2電源線との間の電圧に依存する第2の値とに基づく容量値である。
この構成によれば、素子の動作に対応する第1の値と、素子に供給される電圧に依存する第2の値とに基づいて容量の容量値が決定されているため、従来よりも正確な容量値の容量が配置され、必要以上に大きな容量が減らせるので、容量がチップに占める領域を最適にできる。
また、この半導体装置の第1の値は、素子の許容遅延変動量であり、第2の値は、第1電源線と第2電源線との間の許容電圧変動量である。この構成によれば、素子の動作と、素子の動作により変動する電圧とに基づいて、正確な容量値が算出される。
また、この半導体装置の第1の値は、素子の理想電圧時における入力信号に対する出力信号の遅延時間に基づいて算出された値であり、第2の値は、第1の値から素子の電気的特性に基づいて算出された値である。この構成によれば、第1の値と第2の値とがそれぞれ素子に応じて算出されるため、素子に適した容量値の容量が配置される。
また、この半導体装置の素子はクロック信号を伝播するクロックパス上の素子であって、クロックパスは複数の素子を介してクロック信号を伝播し、容量値は、第2の値に基づいて算出された第1の容量値と、クロックパスにおける仮想ノイズ波形と、クロックパスと非同期の関係にある他のクロックパスにおける仮想ノイズ波形とに基づいて算出された電圧変動に基づいて算出された第2の容量値と、に対応する値である。この構成によれば、非同期関係にあるクロックパス間の影響を考慮した容量値の容量が配置される。
また、この半導体装置の容量値は、素子を配置するセル配置領域を分割した複数の領域毎に、各領域内で消費される電荷総量と、第2の値と電荷総量とに基づいてデカップリング容量係数とを算出し、容量係数の総和と各領域の容量係数との比に基づいて、半導体装置内で必要な容量の総和を各領域に分配し、各領域にそれぞれ分配した容量値と領域内の寄生容量の容量値とに基づいて算出された値である。この構成によれば、消費される電荷総量を各領域に分配することで、各領域のノイズ量に対応する容量値の容量が配置される。
この容量値算出方法は、第1電源線と第2電源線との間に接続された素子に入力される入力信号の変化から素子から出力される出力信号の変化までの期間に依存する第1の値を算出する工程と、第1電源線と第2電源線との間の電圧に依存する第2の値を算出する工程と、第1の値と第2の値とに基づいて容量の容量値を算出する工程と、を含む。この構成によれば、素子の動作に対応する第1の値と、素子に供給される電圧に依存する第2の値とに基づいて容量の容量値が決定されているため、従来よりも正確な容量値の容量が配置され、必要以上に大きな容量が減らせるので、容量がチップに占める領域を最適にできる。
また、この容量値算出方法は、第1の値を算出する工程において、素子の理想電圧時における入力信号に対する出力信号の遅延時間に基づいて第1の値を算出する。この構成によれば、第1の値が素子に応じて算出されるため、素子に適した容量値の容量が配置される。
また、この容量値算出方法は、第2の値を算出する工程において、第1の値から素子の電気的特性に基づいて第2の値を算出する。この構成によれば、第2の値が素子に応じて算出されるため、素子に適した容量値の容量が配置される。
また、この容量値算出方法において、素子はクロック信号を伝播するクロックパス上の素子であって、クロックパスは複数の素子を介してクロック信号を伝播し、容量値を算出する工程は、各素子のそれぞれに対して第1の値に相当する仮想ノイズ波形を生成する工程と、第2の値に基づいて第1の容量値を算出する工程と、クロックパス内の素子に対応する仮想ノイズ波形を合成した合成ノイズ波形を生成する工程と、互いに影響する非同期な2つのクロックパスそれぞれの仮想ノイズ波形に基づき、一方のクロックパスにおける第1電源線と第2電源線との間の電圧変動の最大値を算出し、その最大値から他方のクロックパスに発生するノイズの影響を考慮した一方のクロックパスにおける第2の容量値を算出する工程と、を含む。この構成によれば、非同期関係にあるクロックパス間の影響を考慮した容量値の容量が配置される。
また、この容量値算出方法は、半導体装置内で必要な容量の総和を算出する工程と、半導体装置のセル配置領域を複数の領域に分割し、各領域内で消費される電荷総量を算出する工程と、領域内の素子について第1の値を算出し、第1の値から第2の値算出する工程と、各領域において、第2の値と電荷総量とに基づいてデカップリング容量係数を算出する工程と、容量係数の総和と各領域の容量係数との比に基づいて、容量の総和を各領域に分配し、各領域にそれぞれ分配した容量値と各領域の寄生容量の容量値とに基づいて各領域に配置する容量の容量値を算出する工程と、を含む。この構成によれば、素子の動作に対応する第1の値と、素子に供給される電圧に依存する第2の値とに基づいて容量の容量値が決定されているため、従来よりも正確な容量値の容量が配置され、必要以上に大きな容量が減らせるので、容量がチップに占める領域を最適にできる。
開示した半導体装置は、デカップリング容量が占める領域が最適化された半導体装置である。
開示した容量値算出方法は、デカップリング容量が占める領域が最適化された半導体装置を提供することができるという効果を奏する。
(第一実施形態)
以下、第一実施形態を図1〜図8に従って説明する。
図1に示すように、半導体装置の設計装置11は一般的なCAD(Computer Aided Design) 装置からなり、中央処理装置(以下、CPU)12、メモリ13、記憶装置14、表示装置15、入力装置16、及びドライブ装置17を備え、それらはバス18を介して相互に接続されている。
CPU12は、メモリ13を利用してプログラムを実行し、デカップリング容量の配置に必要な処理を実現する。このデカップリング容量は、必要とする容量値に応じた形状の1つの容量セル、又は必要な容量値に応じて複数の容量セルを接続した容量セル群を示す。メモリ13には、デカップリング容量の配置処理を行うために必要なプログラムとデータが格納され、メモリ13としては、通常、キャッシュ・メモリ,システム・メモリ,及びディスプレイ・メモリ等(図示略)を含む。
表示装置15は、レイアウト表示、パラメータ入力画面等の表示に用いられ、これには通常、CRT,LCD,PDP等(図示略)が用いられる。入力装置16は、ユーザからの要求や指示、パラメータの入力に用いられ、これにはキーボード及びマウス装置等(図示略)が用いられる。
記憶装置14は、通常、磁気ディスク装置,光ディスク装置,光磁気ディスク装置等(図示略)を含む。記憶装置14には、図3に示すデカップリング容量の配置処理のためのプログラムデータ(以下、プログラム)及び各種のデータファイル(以下、ファイル)51〜53が格納される。CPU12は、入力装置16による指示に応答してプログラムや各種ファイルに格納されるデータを適宜メモリ13へ転送し、プログラムを逐次実行する。そして、CPU12は、プログラムの実行に必要なファイルやデータの読み込み、プログラムの実行によるファイルやデータの作成を、記憶装置14に対して行う。この記憶装置14は、データベースとしても使用される。
CPU12が実行するプログラムは、記録媒体19にて提供される。ドライブ装置17は、記録媒体19を駆動し、その記憶内容にアクセスする。CPU12は、ドライブ装置17を介して記録媒体19からプログラムを読み出し、それを記憶装置14にインストールする。尚、記録媒体19に格納して提供するものは、プログラムに限らず、ライブラリ等の各種データを提供しても良い。
記録媒体19としては、メモリカード,フレキシブルディスク,光ディスク(CD-ROM,DVD-ROM,… ),光磁気ディスク(MO,MD,…)等(図示略)、任意のコンピュータ読み取り可能な記録媒体を使用することができる。尚、半導体メモリや外部接続されるハードディスク装置等が用いられても良い。この記録媒体19に、上述のプログラムを格納しておき、必要に応じて、メモリ13にロードして使用することもできる。
尚、記録媒体19には、通信媒体を介してアップロード又はダウンロードされたプログラムを記録した媒体、ディスク装置、通信媒体を介して設計装置11(コンピュータ)が接続されるサーバ装置の記憶装置、等を含む。更に、コンピュータによって直接実行可能なプログラムを記録した記録媒体だけでなく、自身又は他の記録媒体(ハードディスク等)にインストールすることによって実行可能となるようなプログラムを記録した記録媒体や、暗号化されたり、圧縮されたりしたプログラムを記録した記録媒体も含む。
図2に示すように、上記の設計装置11により設計された半導体装置21は矩形状に形成され、その辺に沿って複数のパッド22が形成され、パッド22の内側には内部回路23が形成されている。内部回路23は、図面下部の拡大図に示すように、クロックパス31を含む。クロックパス31は所定の2つの端子間でクロック信号を伝達する経路であり、経路中に複数の論理セル(バッファセル)を含む。つまり、所定の2つの端子間において、クロック信号が論理セルを介して伝達される。なお、図中にはクロックパス31を構成する3つのバッファセル32a〜32cを示す。
各バッファセル32a〜32cは、各回路に高電位電圧Vddを供給する第1電源線LHと低電位電圧Vssを供給する第2電源線LLとの間に接続されている。各バッファセル32a〜32c間、及びバッファセル32aに信号を供給するインスタンス(図示略)とバッファセル32aとの間、バッファセル32cから出力される信号が供給されるインスタンス(図示略)とバッファセル32cとの間は信号を伝達する配線LSにより接続されている。
更に、第1電源線LHと第2電源線LLとの間にはデカップリング容量33が接続されている。このデカップリング容量33の容量値は、図1に示す設計装置11により、図3に示すフローチャートに従って算出されている。
概略的には、デカップリング容量33の容量値は、半導体装置21のノイズ源となるインスタンス毎の遅延制約に基づいて算出されている。デカップリング容量33の容量値は、更に、非同期動作による影響を考慮して算出されている。
インスタンスにおける信号の伝播時間は、そのインスタンスに供給される電源電圧に対応している。従って、ノイズにより電源電圧が変動すると、インスタンスにおける信号伝播の遅延時間が変動する。半導体装置21の動作により、インスタンスにおける許容遅延変動量、即ち許容可能な遅延時間の変動量が算出される。この許容遅延変動量を算出することにより、インスタンスにおける許容電圧変動量、即ちインスタンスに供給する電源電圧の変動量が算出される。この許容電圧変動量に応じてデカップリング容量の容量値を算出することで、インスタンスの動作に応じた容量値のデカップリング容量を配置することができる。つまり、許容遅延変動量と許容電圧変動量が遅延制約となる。そして、インスタンスの動作に応じてデカップリング容量の容量値を算出することで、必要以上の容量値をもつデカップリング容量の配置を防ぐことができ、従来の手法に比べて半導体装置21のチップ面積を縮小することができる。
次に、設計装置11におけるデカップリング容量の配置処理を説明する。
設計装置11は、図3に示すステップ41〜44の各処理を実行し、半導体装置(LSI)21に対応するデカップリング容量の数量の算出、及び算出した数のデカップリング容量の配置を行う。この処理において、設計装置11は、ファイル51〜53のデータ(情報)に基づいて算出した数値に基づいて、デカップリングセルの追加配置の要否を判断し、ファイル53にデカップリングセルの位置情報を格納する。これらファイル51〜53は、図1に示す記憶装置14に格納されている。また、設計装置11は、上記処理において算出した一時的なデータをメモリ13に格納する。なお、設計装置11が一時的なデータを図1に示す記憶装置14等の記憶装置に格納してもよい。
図3に示す配置情報(レイアウトデータ)51、接続情報(ネットリスト)52、セルライブラリ53は、例えば図1に示す記憶装置14に記憶されている。配置情報51と接続情報52は、論理合成等によって作成されている。配置情報51は、半導体装置21を構成するインスタンス(論理セルや回路ブロック等)、配線、ビア等の種別、配置位置を示すデータである。接続情報52は、インスタンスやパッド22等の接続関係、所謂ネットを示すデータである。セルライブラリ53には、各種インスタンスの論理機能、インスタンスやデカップリング容量等の電気的特性や物理的構造、等のデータが格納されている。
ステップ41(波形生成処理)において、設計装置11は、配置情報51、接続情報52を読み込み、セルライブラリ53を参照して、クロックパス上でノイズ源となるインスタンス毎に遅延制約に基づく仮想ノイズ波形を算出し、その仮想ノイズ波形からクロックパスにおける制約を算出する。更に設計装置11は、算出した制約に基づき、クロックパスに対するデカップリング容量を算出する。そして、設計装置11は、求めた仮想ノイズ波形を含む波形データ54、制約を含む制約データ55、デカップリング容量を含む容量データ56を記憶装置14に格納する。
次に、ステップ42(波形合成処理)において、設計装置11は、波形データ54からインスタンス毎に求めた仮想ノイズ波形を読み込み、複数の仮想ノイズ波形を合成してクロックパスにおける合成ノイズ波形を生成し、その合成ノイズ波形の合成波形データ57を記憶装置14に格納する。
次に、ステップ43(制約算出処理)において、設計装置11は、合成ノイズ波形に基づいて、各クロックパスに対し、他のクロックパスの影響を考慮したデカップリング容量を算出し、デカップリング容量を含む容量データ58を記憶装置14に格納する。
次に、ステップ44(デカップリング容量配置処理)において、設計装置11は、容量データ56,58のデカップリング容量に応じた数のデカップリング容量33を、インスタンス近傍に配置する。つまり、設計装置11は、レイアウトデータ51の配置情報と、容量データ56,58のデカップリング容量に応じた数のデカップリング容量33を配置する配置位置を含むレイアウトデータ59を生成する。
各ステップ41〜44における処理を図面に従って説明する。
[ステップ41]
設計装置11は、ノイズ源となるインスタンス各々について、許容遅延変動量ΔDを算出する。設計装置11は、インスタンスの理想遅延時間Dideal に対するマージンを許容遅延変動量ΔDとする。図4に示すように、理想遅延時間Dideal は理想電圧(変動がない電源電圧)が供給されたインスタンス32における入力信号に対する出力信号の遅延時間である。電源電圧が変動(減少)すると、インスタンス32における遅延時間が増加する。この電圧変動時における遅延時間をDΔVとすると、理想遅延時間Dideal と遅延時間をDΔVの差が、許容遅延変動量ΔDとなる。
尚、許容遅延変動量ΔDを固定値(例えば10ps)、理想遅延時間Dideal の所定割合(例えば10パーセント)としてもよい。また、タイミング解析結果のスラック量を参照して算出しても良い。
次に、設計装置11は、インスタンスの電圧−遅延特性を参照し、許容電圧変動量ΔVを算出する。電圧−遅延特性の一例を図5に示す。この特性は、図3に示すセルライブラリ53に格納されている。設計装置11は、セルライブラリ53を参照し、この特性において、許容遅延変動量ΔDに対する電圧変化量を許容電圧変動量ΔVとする。尚、電圧−遅延特性を、シミュレーションにより求め、その特性から許容電圧変動量ΔVを算出するようにしてもよい。
次に、設計装置11は、上記の許容遅延変動量ΔDに相当する仮想ノイズ波形を生成する。電源電圧の変動は、インスタンスの動作に対する電圧変化を静的に考えると、インスタンスにおける理想遅延時間Dideal の間、許容電圧変動量ΔVだけ電源電圧が変動したと見なすことができる。従って、ノイズ波形の面積を、インスタンスの動作期間、つまりインスタンスにおける理想遅延時間Dideal と許容電圧変動量ΔVの積とする。設計装置11は、ノイズ波形を、電源電圧の変動波形を単純な形状にモデル化した波形、例えば三角波形とする。さらに、設計装置11は、ノイズの幅、つまり三角波形の底辺の長さを、インスタンスにおける信号遅延時間に応じて算出する。例えば、入力信号の変化開始を「0%」とし、出力信号の変化終了を「100%」とし、パーセントを用いて「D0-100%」として表された期間を底辺の長さとする。
次に、設計装置は、許容電圧変動量ΔVの制約を満たすデカップリング容量Cdを例えば次式により算出する。なお、Fはインスタンスの動作周波数、Iはインスタンスの消費電流量、Cpはインスタンス内及び周囲の寄生容量の値である。
Figure 2009158566
設計装置11は、図7に示すように、クロックパスに含まれる各インスタンス32a〜32cに対応する仮想ノイズ波形S1〜S3を生成する。更に、設計装置11は、制約としての許容電圧変動量ΔV、及びデカップリング容量Cdを各インスタンスについて算出する。
[ステップ42]
設計装置11は、上記のステップ41において、クロックパスに含まれる各インスタンスについて生成した仮想ノイズ波形を合成し、クロックパスにおける仮想ノイズ波形を生成する。例えば、図7に示す3つのインスタンス32a〜32cに対応する仮想ノイズ波形S1〜S3を波形合成する。この結果、図8に示すように、クロックパスにおいて伝達されるクロック信号の周波数に対応するサイクル時間(Tcycle )内でパスにより伝達されるクロック信号のレベルが遷移する時間幅(パス遅延時間Dpath)の位置にすべての仮想ノイズ波形の面積の合計値(=ΣS)と等しい面積を持つ合成ノイズ波形が得られる。
[ステップ43]
設計装置11は、互いに非同期なクロックパス間の影響を考慮したデカップリング容量を算出する。一例として、半導体装置21内にはn個のクロックパスが存在し、図9(a)(b)に示すように、i番目のクロックパスPi と、j番目のクロックパスPj との間でノイズ伝播を考慮する。着目するパスPi に対し、他のクロックパスPj から伝播したノイズに対応するデカップリング容量を算出する。クロックパスPi とクロックパスPj の周波数、つまりクロックパスPi に含まれるインスタンスの動作周波数とクロックパスPj に含まれるインスタンスの動作周波数は異なっている。また、クロックパスPi における信号変化と、クロックパスPj における信号変化は、非同期である。
対象とするクロックパスPj は、着目パスPi におけるノイズの発生期間である時間幅、即ちパス遅延時間Dpiの間、着目パスPi からの影響を受けると見なすことができる。従って、この期間において、クロックパスPj において発生するノイズによる電圧変動と、着目パスPi において発生するノイズによる電圧変動との合計値が、両クロックパスPi ,Pj 間の影響を考慮した値となる。設計装置11は、この値(平均電圧降下量)を、着目パスPi におけるノイズの大きさ(面積ΣSi )と、対象とするクロックパスPj においてパス遅延時間Dpi内に発生するノイズの大きさ(面積ΣSj )の合計値を、パス遅延時間Dpiで割ることにより求める。
更に、両クロックパスPi ,Pj は非同期であるため、互いのパスの信号が変化するタイミングが一定していない。従って、両クロックパスPi ,Pj の信号変化のタイミングを相対的にずらしながら上記の平均電圧降下量値を算出する。その結果、図9(c)に示すように、平均電圧変動量ΔVj は、両クロックパスPi ,Pj の信号変化のタイミングに応じて変化する。このように変化する平均電圧変動量ΔVj において、電源電圧が最も低くなる場合に対応してデカップリング容量を設定する必要がある。つまり、平均電圧変動量ΔVj の最大値に応じてデカップリング容量Cdjを算出する。設計装置11は、このデカップリング容量Cdjを、平均電圧変動量ΔVj を用いて上記式(1)を用いて算出する。
設計装置11は、着目パスPi に対して他の非同期パス各々について上記のデカップリング容量を算出する。更に、設計装置11は、半導体装置21に含まれるクロックパスの各々について上記のデカップリング容量を算出する。なお、パス間の物理的な距離に応じて影響するノイズの大きさ(面積)を変更しても良い。
[ステップ44]
設計装置11は、ステップ41にて対象としたインスタンス各々につき、ステップ41で算出したデカップリング容量Cd、及びステップ43で算出したデカップリング容量Cdjの合計値(ΣCdj)に対応するデカップリング容量をインスタンス近傍に配置する。この場合、設計装置11は、所定の容量を持つ容量セル(単位容量セル)を上記デカップリング容量(=Cd+ΣCdj)を満たす数だけ配置する。なお、デカップリング容量の大きさを上記デカップリング容量(=Cd+ΣCdj)に応じて変更するようにしてもよい。
以上記述したように、本実施形態によれば、以下の効果を奏する。
(1)半導体装置21は、第1電源線LHと第2電源線LLとの間に接続されたインスタンス32a〜32cと、第1電源線LHと第2電源線LLとの間に接続されたデカップリング容量33とを有する。インスタンス32〜32cには、信号が伝播される配線LSが接続されている。デカップリング容量33の容量値は、配線LSにおける入力信号の変化から出力信号の変化までの期間に依存する許容遅延変動量ΔDと、第1電源線LHと第2電源線LLとの間の電圧に依存する許容電圧変動量ΔVに基づく容量値である。従って、インスタンス32a〜32cの動作に対応する許容遅延変動量ΔDと、インスタンス32a〜32cに供給される電源電圧に依存する許容電圧変動量ΔVとに基づいてデカップリング容量33の容量値が決定されているため、従来よりも正確な容量値のデカップリング容量33が配置され、必要以上に大きな容量が減らせるので、容量がチップに占める領域を最適にできる。
(2)インスタンス32a〜32cは、電源電圧の変動(降下)により、信号を伝播する遅延時間が増大する。従って許容遅延変動量と許容電圧変動量を用いることにより、インスタンス32a〜32cの動作と、インスタンス32a〜32cの動作により変動する電圧とに基づいて、正確なデカップリング容量33の容量値を算出することができる。
(3)インスタンス32a〜32cの理想電圧時における入力信号に対する出力信号の遅延時間に基づいて許容遅延変動量ΔDを算出し、インスタンス32a〜32cの電気的特性に基づいて許容遅延変動量ΔDから許容電圧変動量ΔVを算出するようにした。従って、インスタンス32a〜32cの動作に応じて許容遅延変動量ΔDと許容電圧変動量ΔVとを算出するため、インスタンス32a〜32cに適した容量値のデカップリング容量33を配置することができる。
(4)互いに非同期関係にあるクロックパスPi ,Pj の仮想ノイズ波形に基づいて算出された電圧変動に基づいて許容電圧変動量ΔVを算出することにより、非同期関係にあるクロックパスPi ,Pj 間の影響を考慮した容量値のデカップリング容量33を配置することができる。
(第二実施形態)
以下、第二実施形態を図10〜図12に従って説明する。
尚、説明の便宜上、第一実施形態と同様の構成については同一の符号を付してその説明を一部省略する。
本実施形態において、図10に示す半導体装置61を作成するためのデータを生成する設計装置は、第一実施形態の設計装置11と同じ構成であり、その設計装置11が実行する処理、つまり記憶装置14に記憶されたデカップリング容量の配置処理のためのプログラムが異なる。従って、本実施形態では、デカップリング容量の配置処理、及びその処理によって作成される半導体装置61について説明する。
図10に示すように、半導体装置61は矩形状に形成され、その辺に沿って複数のパッド62が形成され、パッド62の内側には内部回路63が形成されている。内部回路63は、インスタンス等を配線により接続することにより構成されており、インスタンスには電源線により電源電圧(高電位電圧及び低電位電圧)が供給されている。インスタンスに高電位電圧Vddを供給する第1電源線LHと低電位電圧Vssを供給する第2電源線LLとの間には、デカップリング容量66が接続されている。
このデカップリング容量の容量値は、図1に示す設計装置11により、図11に示すフローチャートに従って算出されている。概略的には、設計装置11は、内部回路63を複数の領域64に区分し、各領域64に含まれるインスタンス65の遅延制約(許容遅延変動量、許容電圧変動量)に基づいて各領域64に配置するデカップリング容量の容量値を算出し、そのデカップリング容量を領域64内に配置する。
次に、設計装置11におけるデカップリング容量の配置処理を説明する。
設計装置11は、図11に示すステップ71〜76の各処理を実行し、半導体装置(LSI)61に対応するデカップリング容量の数量の算出、及び算出した数のデカップリング容量の配置を行う。この処理において、設計装置11は、ファイル51〜53のデータ(情報)に基づいて算出した数値に基づいて、デカップリングセルの追加配置の要否を判断し、ファイル53にデカップリングセルの位置情報を格納する。これらファイル51〜53は、図1に示す記憶装置14に格納されている。また、設計装置11は、上記処理において算出した一時的なデータをメモリ13に格納する。なお、設計装置11が一時的なデータを図1に示す記憶装置14等の記憶装置に格納してもよい。
ステップ71(総量算出処理)において、設計装置11は、配置情報51、接続情報52を読み込み、セルライブラリ53を参照して、半導体装置61の内部回路63に対応するデカップリング総量を算出し、その総量をメモリ13に記憶する。
次に、ステップ72(領域電荷量算出処理)において、設計装置11は、セル配置領域を矩形の領域に分割する。そして、設計装置11は配置情報に基づいて各領域の電荷総量を算出し、その電荷総量のデータ81を図1に示す記憶装置14に格納する。電源ノイズ量は、単位時間における消費電流の変化量と半導体装置61のパッケージインダクタンスで決定されるため、電荷総量が電源ノイズを代表する値となる。
次に、ステップ73(ノイズ耐量算出処理)において、設計装置11は、各領域にそれぞれ含まれるインスタンスに対して、電源ノイズによる遅延変動許容量に対するノイズ耐量を算出し、ノイズ耐量のデータ82を記憶装置14に格納する。
次に、ステップ74(容量係数算出処理)において、設計装置11は、電荷量とノイズ耐量とから各領域のデカップリング容量係数を算出し、そのデカップリング容量係数のデータ83を記憶装置14に格納する。
次に、ステップ75(領域容量算出処理)において、設計装置11は、各領域において寄生容量を含む容量の比がステップ74で算出した各領域のデカップリング容量係数の比と一致するように、ステップ71で算出したデカップリング総量を各領域に分配する。そして、設計装置11は、分配した各領域の容量値(領域容量)のデータ84を記憶装置14に格納する。
次に、ステップ76(デカップリング容量配置処理)において、設計装置11は、ステップ75で分配した各領域の容量値を満たすデカップリング容量をそれぞれ配置する。つまり、設計装置11は、レイアウトデータ51の配置情報と、配置したデカップリング容量の配置位置を含むレイアウトデータ85を生成する。
各ステップ71〜76における処理の詳細を説明する。
[ステップ71]
設計装置11は、半導体装置61の動作周波数(F),消費電力(I),電源ノイズによる電圧変動の許容量(ΔV)から、例えば次式を用いて半導体装置61内で必要な容量の総和(Cv)を求める。このデカップリング総量Cvは、半導体装置61に配置されるべきデカップリング容量の容量値と、半導体装置61の寄生容量の容量値との合計値である。
Figure 2009158566
[ステップ72]
図12に示すように、設計装置11は、半導体装置61内のセル配置領域91を、m個×n個の矩形の領域A11〜Amnに分割する。セル配置領域91は図10に示す内部回路63を構成するセル等のインスタンスを配置する領域であり、本実施形態では内部回路63を形成する領域である。
各領域A11〜AmnのサイズΔx及びΔyは、例えばデカップリング容量が有効となる上限の距離、つまりデカップリング容量により電圧変動を打ち消すことが可能な距離に設定されている。そして、設計装置11は、各領域A11〜Amnにそれぞれ含まれるインスタンス各々の消費電流Iを算出する。更に、設計装置11は、各インスタンスの消費電流Iと動作周波数とから、各領域でサイクル時間内で消費される電荷量Qを算出する。
例えば、図12に示すように、領域Aijに含まれるk番目のインスタンス93における消費電流Ik と、そのインスタンス93の動作周波数、つまりインスタンス93に入力される信号の周期Tk との積により、そのインスタンス93においてサイクル時間Tk 内で消費される電荷量Qk が得られる。従って、設計装置11は、領域Aijに含まれるインスタンスにおける電荷量の合計値Qij(=ΣIk ・Tk )を算出する。電源ノイズ量は、単位時間における消費電流の変化量と半導体装置61のパッケージインダクタンスで決定されるため、電荷総量が電源ノイズを代表する値となる。
[ステップ73]
設計装置11は、電源ノイズによる許容遅延変動量ΔDを領域Aij内の各インスタンスに適用し、相当する静的電圧変動量ΔVを得る。遅延変動量は、電源ノイズ波形に拠らず遷移時間内での平均電圧で表され、静的電圧変動量ΔVは、電源ノイズに対するインスタンス毎のノイズ耐量に相当する。領域Aijに対する値に、領域内のインスタンスの静的電圧変動量ΔVの最小値を算出する。静的電圧変動量ΔVが小さいインスタンスは、それが大きいインスタンスに比べて電源ノイズによる電圧変動の影響を受けやすい。従って、領域に含まれる複数のインスタンスの静的電圧変動量ΔVの最小値が、その領域において抑えることが必要な電圧変動の範囲となる。
インスタンスの遅延特性は、図11に示すセルライブラリ53に格納されている。尚、SPICEシミュレーションの結果等を用いても良い。許容遅延変動量ΔDは、第一実施形態と同様に、固定値、理想遅延時間Dideal の所定割合、タイミング解析結果のスラック量を参照して算出しても良い。
[ステップ74]
設計装置11は、領域毎に電荷量Qとノイズ耐量に対応する静的電圧変動量ΔVの比を算出し、その結果をデカップリング容量係数αとする。デカップリング容量係数αはノイズ量(電荷量)に比例し、ノイズ耐量に反比例する。このため、各領域に対し、各領域に必要なデカップリング容量を、領域間で相対的に表す相対値となる。
[ステップ75]
設計装置11は、デカップリング容量係数αの値に従い、領域毎にステップ71で算出したデカップリング総量を各領域に分配する。デカップリング容量係数αは各領域に必要なデカップリング容量を相対的に表す値である。従って、半導体装置61の全体に必要なデカップリング容量は、各領域のデカップリング容量係数αの総和(=Σα)に対応する。従って、領域Aijに必要な容量Cijと半導体装置61のデカップリング総量Cvとの比は、領域Aijのデカップリング容量係数αijと総和Σαとの比と等しい(Cij:Cv=Σα:αij)。そして、領域Aijに必要なデカップリング容量の容量値Cdijは、領域Aijに必要な容量Cijから、その領域Aijに含まれる寄生容量の容量値Cpijを引いた者となる。従って、領域Aijに必要なデカップリング容量の容量値Cdijは、次式により求めることができる。
Figure 2009158566
[ステップ76]
設計装置11は、ステップ75において求めたデカップリング容量の容量値Cdijに対応するデカップリング容量をインスタンス近傍に配置する。この場合、設計装置11は、所定の容量を持つ容量セル(単位容量セル)を、上記容量値Cdijを満たす数だけ配置する。なお、デカップリング容量の大きさを上記デカップリング容量の容量値Cdijに応じて変更するようにしてもよい。
以上記述したように、本実施形態によれば、以下の効果を奏する。
(1)半導体装置61には所定の容量値のデカップリング容量66が配置される。このデカップリング容量66の容量値は、内部回路63を配置する領域を分割した領域64毎に、各領域64内で消費される電荷総量を、デカップリング容量係数αの総和Σαと各領域64のデカップリング容量係数αとの比に基づいて、半導体装置61内で必要な容量の総和を各領域64に分配し、各領域にそれぞれ分配した容量値と領域内の寄生容量の容量値とに基づいて算出された値である。従って、半導体装置61において消費される電荷総量を各領域64に分配することで、各領域64のノイズ量に対応する容量値のデカップリング容量66を配置することができる。そして、従来よりも正確な容量値の容量が配置され、必要以上に大きな容量が減らせるので、容量がチップに占める領域を最適にできる。
設計装置の概略構成図である。 第一実施形態の半導体装置の説明図である。 デカップリング容量の配置処理のフローチャートである。 仮想ノイズ波形算出処理の説明図である。 仮想ノイズ波形算出処理の説明図である。 仮想ノイズ波形算出処理の説明図である。 ノイズ波形合成処理の説明図である。 ノイズ波形合成処理の説明図である。 (a)〜(c)は非同期パス間の影響に対する処理の説明図である。 第二実施形態の半導体装置の説明図である。 デカップリング容量の配置処理のフローチャートである。 セル配置領域の領域分割の説明図である。
符号の説明
21,61 半導体装置
33,66 デカップリング容量
Vdd 高電位電圧
Vss 低電位電圧
LH 第1電源線
LL 第2電源線
LS 配線
32,65 インスタンス(素子)
64 領域
A11〜Amn 領域
ΔD 許容遅延変動量
ΔV 許容電圧変動量

Claims (10)

  1. 第1電源線と第2電源線との間に接続された素子と、
    前記第1電源線と前記第2電源線との間に接続された容量と、
    を有し、
    前記容量の容量値は、前記素子に入力される入力信号の変化から前記素子から出力される出力信号の変化までの期間に依存する第1の値と、前記第1電源線と前記第2電源線との間の電圧に依存する第2の値とに基づく容量値である
    ことを特徴とする半導体装置。
  2. 前記第1の値は、前記素子の許容遅延変動量であり、
    前記第2の値は、前記第1電源線と前記第2電源線との間の許容電圧変動量である、
    ことを特徴とする請求項1に記載の半導体装置。
  3. 前記第1の値は、前記素子の理想電圧時における前記入力信号に対する前記出力信号の遅延時間に基づいて算出された値であり、
    前記第2の値は、前記第1の値から前記素子の電気的特性に基づいて算出された値である、
    ことを特徴とする請求項2に記載の半導体装置。
  4. 前記素子はクロック信号を伝播するクロックパス上の素子であって、前記クロックパスは複数の素子を介して前記クロック信号を伝播し、
    前記容量値は、
    前記第2の値に基づいて算出された第1の容量値と、
    前記クロックパスにおける仮想ノイズ波形と、前記クロックパスと非同期の関係にある他のクロックパスにおける仮想ノイズ波形とに基づいて算出された電圧変動に基づいて算出された第2の容量値と、に対応する値である、
    ことを特徴とする請求項2又は3に記載の半導体装置。
  5. 前記容量値は、前記素子を配置するセル配置領域を分割した複数の領域毎に、各領域内で消費される電荷総量と、前記第2の値と前記電荷総量とに基づいてデカップリング容量係数とを算出し、前記容量係数の総和と各領域の容量係数との比に基づいて、前記半導体装置内で必要な容量の総和を各領域に分配し、各領域にそれぞれ分配した容量値と領域内の寄生容量の容量値とに基づいて算出された値である、
    ことを特徴とする請求項1又は2に記載の半導体装置。
  6. 第1電源線と第2電源線との間に接続された容量の容量値を算出する容量値算出方法であって、
    前記第1電源線と前記第2電源線との間に接続された素子に入力される入力信号の変化から前記素子から出力される出力信号の変化までの期間に依存する第1の値を算出する工程と、
    前記第1電源線と前記第2電源線との間の電圧に依存する第2の値を算出する工程と、
    前記第1の値と前記第2の値とに基づいて前記容量の容量値を算出する工程と、
    を含むことを特徴とする容量値算出方法。
  7. 前記第1の値を算出する工程において、
    前記素子の理想電圧時における前記入力信号に対する前記出力信号の遅延時間に基づいて前記第1の値を算出する、
    ことを特徴とする請求項6に記載の容量値算出方法。
  8. 前記第2の値を算出する工程において、
    前記第1の値から前記素子の電気的特性に基づいて前記第2の値を算出する、
    ことを特徴とする請求項6又は7に記載の容量値算出方法。
  9. 前記素子はクロック信号を伝播するクロックパス上の素子であって、前記クロックパスは複数の素子を介して前記クロック信号を伝播し、
    前記容量値を算出する工程は、
    前記各素子のそれぞれに対して前記第1の値に相当する仮想ノイズ波形を生成する工程と、
    前記第2の値に基づいて第1の容量値を算出する工程と、
    前記クロックパス内の前記素子に対応する仮想ノイズ波形を合成した合成ノイズ波形を生成する工程と、
    互いに影響する非同期な2つのクロックパスそれぞれの仮想ノイズ波形に基づき、一方のクロックパスにおける前記第1電源線と前記第2電源線との間の電圧変動の最大値を算出し、その最大値から他方の前記クロックパスに発生するノイズの影響を考慮した一方の前記クロックパスにおける第2の容量値を算出する工程と、
    を含むことを特徴とする請求項6〜8のうちの何れか1項に記載の容量値算出方法。
  10. 半導体装置内で必要な容量の総和を算出する工程と、
    前記半導体装置のセル配置領域を複数の領域に分割し、各領域内で消費される電荷総量を算出する工程と、
    領域内の素子について前記第1の値を算出し、前記第1の値から前記第2の値算出する工程と、
    各領域において、前記第2の値と前記電荷総量とに基づいてデカップリング容量係数を算出する工程と、
    前記容量係数の総和と各領域の容量係数との比に基づいて、前記容量の総和を各領域に分配し、各領域にそれぞれ分配した容量値と各領域の寄生容量の容量値とに基づいて各領域に配置する容量の容量値を算出する工程と、
    を含むことを特徴とする請求項請求項6〜8のうちの何れか1項に記載の容量値算出方法。
JP2007332298A 2007-12-25 2007-12-25 半導体装置、容量値算出方法 Expired - Fee Related JP5217418B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007332298A JP5217418B2 (ja) 2007-12-25 2007-12-25 半導体装置、容量値算出方法
US12/335,097 US8224601B2 (en) 2007-12-25 2008-12-15 Semiconductor device and method of estimating capacitance value

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007332298A JP5217418B2 (ja) 2007-12-25 2007-12-25 半導体装置、容量値算出方法

Publications (2)

Publication Number Publication Date
JP2009158566A true JP2009158566A (ja) 2009-07-16
JP5217418B2 JP5217418B2 (ja) 2013-06-19

Family

ID=40789621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007332298A Expired - Fee Related JP5217418B2 (ja) 2007-12-25 2007-12-25 半導体装置、容量値算出方法

Country Status (2)

Country Link
US (1) US8224601B2 (ja)
JP (1) JP5217418B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010108187A (ja) * 2008-10-29 2010-05-13 Nec Electronics Corp 半導体集積回路の設計装置、設計方法およびプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5119506B2 (ja) * 2009-05-20 2013-01-16 日本電気株式会社 半導体集積回路の設計装置、そのデータ処理方法、およびその制御プログラム
US10289790B2 (en) 2017-06-14 2019-05-14 Nuvoton Technology Corporation System, method and computer product for enhanced decoupling capacitor implementation
US10585999B2 (en) * 2018-01-12 2020-03-10 Seagate Technology Llc Selection of die and package parasitic for IO power domain

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007142282A (ja) * 2005-11-21 2007-06-07 Fujitsu Ltd 集積回路のレイアウト方法及びコンピュータプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7900164B1 (en) * 2004-01-16 2011-03-01 Alters Corporation Structure to measure both interconnect resistance and capacitance
JP4860123B2 (ja) 2004-07-22 2012-01-25 富士通セミコンダクター株式会社 デカップリング容量の配置方法
KR101055929B1 (ko) * 2006-07-31 2011-08-09 미쓰비시덴키 가부시키가이샤 전원 장치 및 시퀀서 시스템
JP4422179B2 (ja) * 2007-10-19 2010-02-24 株式会社半導体理工学研究センター 半導体集積回路のタイミング解析装置及び方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007142282A (ja) * 2005-11-21 2007-06-07 Fujitsu Ltd 集積回路のレイアウト方法及びコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010108187A (ja) * 2008-10-29 2010-05-13 Nec Electronics Corp 半導体集積回路の設計装置、設計方法およびプログラム

Also Published As

Publication number Publication date
US20090164157A1 (en) 2009-06-25
JP5217418B2 (ja) 2013-06-19
US8224601B2 (en) 2012-07-17

Similar Documents

Publication Publication Date Title
TW575819B (en) High accuracy timing model for integrated circuit verification
US8086988B2 (en) Chip design and fabrication method optimized for profit
US7245516B2 (en) Layout method and computer program product
US7921395B2 (en) Method for laying out decoupling cells and apparatus for laying out decoupling cells
JP5217418B2 (ja) 半導体装置、容量値算出方法
US9275186B2 (en) Optimization for circuit migration
TW201923823A (zh) 積體電路及其設計的方法及其設計系統
JP4205662B2 (ja) 半導体集積回路の設計方法
KR100398850B1 (ko) 반도체 집적 회로에 대한 전자기 간섭 시뮬레이션을 위한 전원 모델, 전원 모델을 설계하는 방법, 전자기 간섭 시뮬레이터, 전원 모델 생성용 컴퓨터 프로그램을 저장하는 저장 매체, 및 전원 모델 설계 지원 시스템
US7076754B2 (en) Functional block design method and apparatus
JP4664222B2 (ja) 許容値算出方法及び検証方法
JP4539376B2 (ja) 伝送信号波形解析方法及びプログラム
KR101577876B1 (ko) 반도체 장치의 설계 방법, 기록 매체 및 설계 장치
JP7218666B2 (ja) 設計方法、および設計プログラム
JP5332972B2 (ja) デカップリング容量決定方法、デカップリング容量決定装置およびプログラム
JP2000029923A (ja) 自動配置配線装置及び半導体集積回路
JP5029247B2 (ja) 電力演算装置、方法及びプログラム
KR20060050072A (ko) 반도체 집적 회로의 소자 배치 시스템, 소자 배치 방법, 및소자 배치 프로그램
JP2008176486A (ja) 多電源集積回路の設計方法、多電源集積回路の設計支援システム及びプログラム
US7110930B2 (en) Integrated circuit and package modeling
JP2021039679A (ja) 回路設計装置
JP5272892B2 (ja) 試験条件調整装置および試験条件調整方法
Lu et al. An effective decap insertion method considering power supply noise during floorplanning
JP2005183758A (ja) 半導体集積装置のレイアウト設計方法及びコンピュータプログラム
JP2012234892A (ja) レイアウト設計方法及びレイアウト設計装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130218

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5217418

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees