JP4205662B2 - 半導体集積回路の設計方法 - Google Patents

半導体集積回路の設計方法 Download PDF

Info

Publication number
JP4205662B2
JP4205662B2 JP2004380271A JP2004380271A JP4205662B2 JP 4205662 B2 JP4205662 B2 JP 4205662B2 JP 2004380271 A JP2004380271 A JP 2004380271A JP 2004380271 A JP2004380271 A JP 2004380271A JP 4205662 B2 JP4205662 B2 JP 4205662B2
Authority
JP
Japan
Prior art keywords
capacity
integrated circuit
semiconductor integrated
cell
calculating
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.)
Expired - Fee Related
Application number
JP2004380271A
Other languages
English (en)
Other versions
JP2006185323A (ja
Inventor
和弘 佐藤
健ニ 島崎
敬弘 一宮
将三 平野
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2004380271A priority Critical patent/JP4205662B2/ja
Priority to US11/312,370 priority patent/US7480875B2/en
Publication of JP2006185323A publication Critical patent/JP2006185323A/ja
Application granted granted Critical
Publication of JP4205662B2 publication Critical patent/JP4205662B2/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/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)

Description

本発明は、半導体集積回路の設計方法に係り、特に、電源配線に発生する電源ノイズを抑えた半導体集積回路の設計方法に関する。
近年の半導体集積回路では、1千万トランジスタを超える回路素子を搭載することにより、電源電位の変動が非常に大きくなってきている。このような電源電位の変動を抑えるために電源とグラウンドとの間にデカップリング容量と呼ばれる容量を持たせることが一般的な技術として用いられている。
従来技術として、特許文献1には、電源ノイズを低減させる方法として、論理セル(半導体集積回路の回路素子であるトランジスタを均一の幅に収まるように組み合わせた組み合わせ論理回路)ごとに電源ノイズを低減させるための容量値を計算し、図18(a)および(b)に示すように論理セル(ロジックゲートセル)11の横にその容量値を持つ容量セル12を配置する方法が提案されている。13,14はロジックゲートセル11の負荷容量であり、15は電源容量セルの電源容量である。
また、非特許文献1には半導体集積回路の配置配線情報から得られる電圧降下情報と、消費電流情報とから、最適化を行なう方法について提案されている。
特開2000−277618号公報 Proceedings of ASP−DAC2004 pp.505 6B−2:A Fast Decoupling Capacitor Budgeting Algorithm for Robust On−Chip Power Delivery
しかしながら、特許文献1に記載された方法では、限られたチップ面積の中では、必要容量(デカップリング容量)を十分確保できず、現実的ではない。さらにまた、トランジスタは非動作時には容量として作用するため、不要な容量セルを配置することになる場合もあり、理想モデルには程遠いものになる場合がある。
また非特許文献1に記載された方法では、動作していないトランジスタの容量効果を考慮しておらず、デカップリング容量の適切な配置を行なうことができない。またあらかじめレイアウトを行なう必要があり、レイアウトを完成させるまでの工程に時間がかかってしまう。
このように、電源ノイズ等のダイナミックな電圧変動を抑制する手法として、電源-グラウンド間に容量を挿入したり、電源配線或いはグラウンド配線にインダクタンスを挿入したりする手法が採られているが、容量を挿入する手法に対しては、全セルに均等に容量が形成し面積的にデメリットが大きいことや、電源ネットワークを事前に動的解析する必要があり、処理時間が大きいなどの課題がある。
本発明は、前記実情に鑑みてなされたもので、占有面積の増大を抑制しつつ、必要総容量の最適化をはかり、電源ノイズを抑えた半導体集積回路を設計する方法を提供することを目的とする。
そこで本発明の半導体集積回路の設計方法は、データ読み込み手段によって、データベースに記録された前記半導体集積回路のネットリスト情報を容量セル位置決定手段に読み込む工程と、データベースに記録された前記半導体集積回路のインスタンス活性化率を容量セル位置決定手段に読み込む工程を含む方法を実行させ、かつ、容量セル位置決定手段によって、前記半導体集積回路に含まれる活性化状態のインスタンスに生じる電源電流値を算出する工程と、前記半導体集積回路に含まれる非活性化状態のインスタンスに生じる容量値を算出する工程と、前記ネットリスト情報に基づいて前記半導体集積回路内の余剰面積を求め、前記半導体集積回路に挿入可能な総容量値を算出する工程と、前記活性化状態のインスタンスに生じる電源電流値を算出する工程で算出した電源電流値と、前記非活性状態のインスタンスに生じる容量値を算出する工程で算出した容量値を用いて、前記半導体集積回路内の電圧降下解析を行う工程と、前記電圧降下解析を行う工程で得られた電圧降下値に基づいて電源容量挿入可能箇所に重み付けを行なう工程と、前記総容量値を算出する工程で算出した総容量値を上限として、前記重み付けを行う工程で定めた重みの大きい順に、電源容量挿入可能箇所に電源容量を挿入する工程を含む方法を実行させることを特徴とする。
また、上記半導体集積回路の設計方法において、前記容量セル位置決定手段は、前記電圧降下解析を行う工程で得られた前記電圧降下値を考慮したタイミング計算を行う工程を含む方法を実行し、前記重み付けを行う工程では、前記電圧降下値と前記タイミング計算を行う工程で得られた結果に基づいて電源容量挿入箇所に重み付けを行うものを含む。
また、上記半導体集積回路の設計方法において、前記容量セル位置決定手段は、前記半導体集積回路内に含まれる各インスタンスの動作時刻を算出する工程と、前記半導体集積回路内に含まれる各インスタンスの内、同時刻もしくは近傍時刻に動作する複数のインスタンスを抽出する工程と、前記抽出工程で抽出された前記複数のインスタンスが近傍に配置されている箇所を抽出する工程を含む方法を実行し、前記電源容量を挿入する工程は、前記抽出された箇所に優先的に電源容量を挿入するものを含む。
また、上記半導体集積回路の設計方法において、前記容量セル位置決定手段は、前記半導体集積回路内の各インスタンスの電圧降下を低減するために必要な容量を算出する工程と、容量挿入が必要な箇所に配置済みのインスタンスがある場合には、前記配置済みのインスタンスを容量挿入が必要な箇所以外の箇所に移動させる工程を含む方法を実行するものを含む。
また本発明は以下の態様も含む。
本発明の半導体集積回路の設計方法は、半導体集積回路の必要容量最適化に際し、セルの活性度を静的または動的に考慮し、IRドロップ(電圧降下)を最適化し、より高精度の容量最適化を測るものである。
すなわち、本発明の半導体集積回路の設計方法は、回路情報から、対象回路の各セルが活性状態にあるか否かを考慮して、電圧降下を最適化にするのに必要な必要総容量を算出する工程を含むことを特徴とする。
本発明は、非活性状態のトランジスタなどのセルが容量として作用するという事実に着目してなされたもので、この方法によれば、非活性状態のトランジスタの容量効果を考慮して電源容量の最適化を行なうことにより、静的あるいは動的な電源変動を安定化することができる。
また、本発明の半導体集積回路の設計方法は、前記回路情報がネットリスト情報であり、前記対象回路のネットリスト情報を読み込む工程と、前記ネットリスト情報中のセル活性化率を読み込む工程と、前記対象回路のセル活性化率に基づき、電圧降下を最適化にするのに必要な必要総容量を算出する工程とを含むものを含む。
この方法によれば、活性化率をパラメータとして非動作トランジスタの容量としての影響を考慮することにより、ネットリストに基づいてフロアプランなしに容量を適切なブロックに適切な量配置することができる。従って、電源の電圧変動を抑制するために挿入する電源容量の見積もり時に、回路活性率を考慮して全体で必要な容量成分を削減したり、セル動作タイミングを見積もって電源変動の激しい時間的な箇所を補強するためのみ必要な容量にしたりして、面積的なデメリットを削減し、前記容量見積もり時に配線負荷モデルを使用することにより、設計初期の段階にかつ短時間で処理が可能になる。
また、本発明の半導体集積回路の設計方法は、さらに前記ネットリスト情報から、前記ネットリスト情報中の単位容量セル情報を読み込む工程と、前記単位容量セル情報と、前記活性化率とに基づき容量セル配置位置を決定する工程とを含む。
また、本発明の半導体集積回路の設計方法は、前記単位容量セル情報を読み込む工程で得られた既配置済の容量セルの容量と、活性化率0で容量成分として作用するセル内容量とを抽出する工程を含み、前記容量セル配置位置を決定する工程が、既配置の容量セルの容量分を考慮して決定されるようにしたものを含む。
また、本発明の半導体集積回路の設計方法は、前記回路情報のネットリスト情報から、負荷モデルを生成し、この負荷モデルに基づくセル動作時間を算出する工程と、前記負荷モデルに基づく各セル消費電力を算出する工程と、前記セル動作時間とセル消費電力から動的消費電力情報を算出する工程とを含み、前記必要総容量を算出する工程は、前記動的消費電力情報から動的電流情報に変換する工程と、前記動的電流が前記最大許容電流値内に収まるために必要な容量値を算出する工程とを含むものを含む。
また、本発明の半導体集積回路の設計方法は、前記負荷モデルは、前記ネットリスト情報からレイアウト情報を生成し、このレイアウト情報から得られた負荷情報に基づいて生成されるものを含む。
また、前記ネットリスト情報からレイアウト情報を生成し、あるいはさらにフロアプランを形成した後、さらに活性化率をパラメータとして非動作トランジスタの容量としての影響を考慮することにより、より精度良く容量を適切な位置に配置することができる。
また、本発明の半導体集積回路の設計方法は、前記動的消費電力情報を算出する工程は、前記セル動作時間とセル消費電力と、セル活性化率とから動的消費電力情報を算出する工程であるものを含む。
この方法によれば、セル動作時間とセル消費電力と、セル活性化率とから動的消費電力情報を算出するようにしているため、より高精度の容量算出が可能となり、電源容量の最適化が効率よくかつ高精度に実現可能となる。
また、本発明の半導体集積回路の設計方法は、前記対象回路の前記各セルのセル動作時間を算出する工程と、セル非動作時のセル内容量を算出する工程とを含み、電源容量挿入時に前記非同時動作セルのセル内容量分を差し引いて挿入するものを含む。
この方法によれば、前記非同時動作セルのセル内容量分を差し引いて挿入するようにしているため、不要な容量挿入を回避し、高精度で信頼性の高い容量最適化が可能となる。
また、本発明の半導体集積回路の設計方法は、前記対象回路の電圧降下解析を行なう工程と、前記電圧降下値に基づいて電源容量挿入可能箇所に重み付けを行なう工程と、前記重み付けされた順に、電源容量を挿入する工程とを含むようにしたものを含む。
この方法によれば、電流波形のピーク抑制のための制約値ではなく、総容量から重み付けにすることにより、面積に制限がある場合にも対応可能とすることができる。
また、本発明の半導体集積回路の設計方法は、前記電圧降下解析を行なう工程で得られた前記電圧降下値を考慮したタイミング計算を行なう工程と、前記電圧降下値と、前記タイミング計算を行なう工程で得られた結果とに基づいて電源容量挿入可能箇所に重み付けを行なう工程とを含ものを含む。
この方法によれば、活性化率をパラメータとして非動作トランジスタの容量としての影響を考慮するとともにタイミングの厳しい箇所に重み付けが来るように制御することにより、容量を特に適切な位置に配置可能とすることができる。
また、本発明の半導体集積回路の設計方法は、前記回路情報から、セル活性化率を読み込む工程を含み、前記重み付けを行なう工程が、前記電圧降下値と前記セル活性化率とに基づいて電源容量挿入可能箇所に重み付けを行なう工程であるものを含む。
また、本発明の半導体集積回路の設計方法は、前記対象回路の前記各セルのセル動作時間を算出する工程と、前記対象回路の同時刻近傍動作セルを抽出する工程と、前記抽出されたセルが近傍に配置されている箇所を抽出する工程とを含み、前記電源容量を挿入する工程は、前記抽出されたセルに優先的に電源容量を挿入するものを含む。
また、本発明の半導体集積回路の設計方法は、前記活性化率を読み込む工程と、前記活性化率が高く、消費電力の大きいセルをフロアプラン時に電源パッド寄りに配置されるように制御する工程とを含むものを含む。
この方法によれば、活性化率の高いセルや消費電力の大きいセルが電源の入り口に来るように制御することにより、容量を特に適切な位置に配置可能とすることができる。
また、本発明の半導体集積回路の設計方法は、各セル毎に必要総容量を算出する工程と、容量挿入箇所に配置済みのセルを移動させる工程とを含むものを含む。
この方法によれば、容量を挿入すべき箇所に、配置済みのセルを移動させることにより、占有面積を増大させることなく、適切な容量配置が可能となる。
また、場所を空けておくことにより、容量を適切な位置に容易に配置することが可能となる。
また、活性化率の高いところに配置することにより、電源容量を頻繁に活用できるため効果的である。
また、活性化率の高いところと低いところを混在させることにより、容量セルの配置が困難な場合に、近接したセルを利用し易いため効果的である。
また、同時スイッチングを考慮することにより、影響の大きい箇所に配置することができる。
また、本発明の半導体集積回路の設計方法は、容量挿入に先立ち、非同時動作セルまたは非活性化セルを容量挿入箇所に移動させて必要総容量を減らす工程を含むものを含む。
この方法によれば、占有面積を増大することなく容易に容量の最適化が可能となる。
また、本発明の半導体集積回路の設計方法は、本発明の半導体集積回路の設計方法によれば、非活性状態にあるトランジスタの容量効果を考慮して電源容量の最適化を行なうことにより、静的あるいは動的な電源変動を安定化することができる。
また、ネットリストから、あるいはレイアウト情報から、活性化率をパラメータとして非動作トランジスタの容量としての影響を考慮することにより、フロアプランなしあるいはフロアプラン後に活性化率をパラメータとして非動作トランジスタの容量としての影響を考慮することにより、より精度良く容量を適切な位置に配置することができる。
(実施の形態1)
本実施の形態の半導体集積回路装置の設計方法は、ネットリスト情報中のセル活性化率およびセル動作時間を考慮し、電圧降下を最適化にするのに必要な必要総容量を算出して、容量セル位置を決定する工程を含むことを特徴とするものである。
図1は、本発明の実施形態に係る半導体集積回路の設計方法を実行する設計装置の構成を示すブロック図である。図1に示す設計装置は、電圧降下を最適化にするのに必要な必要総容量を算出して、容量セル位置を決定して、容量セルレイアウト情報305を出力するセル位置決定手段304を備えている。この設計装置のセル位置決定手段304には、単位容量セル情報303と、ネットリスト情報302と、インスタンス活性化率301と、必要に応じてセル動作時間情報306が入力される。
設計装置は、概ね以下のように動作する。
ネットリスト情報302は、設計対象となる半導体集積回路(以下設計対象回路)の回路網をあらわすデータである。この実施例では、論理否定・論理和・論理積のような論理を持つ論理ゲートを高さまたは幅を均一にしてレイアウトしたものである論理セルを、配線で結合した回路網を用いている。同一のネットリスト上で同じ論理を持つ論理セルが複数用いられるため、個々の論理セルはそれらを区別するために『インスタンス』と一般的に呼称されている。
単位容量セル情報303は、電源とグラウンド間に容量を構成できるようにしたデカップリング容量用のセルの大きさおよび容量値をあらわすデータである。このセルは、たとえばトランジスタセルのソース端子とドレイン端子を結合し、それらの端子とゲート端子との間のゲート酸化膜による容量を利用するデバイス容量などで実現される。
なお、要求される容量値に応じて、容量セルのサイズを可変にできるようなパラメタライズセルの場合には、セルの大きさと容量値との関係をあらわすデータを記憶する。
インスタンス活性化率301は、個々の論理セルである各インスタンスの動作頻度である活性化率をあらわす。活性化率はたとえばクロック周期何回に対して、インスタンスの出力が何回変動するか、という割合で動作頻度を表す。好ましくは、クロック周期内の動作頻度の分布であらわすことにより、後述の実施例で示すように、より電源変動を安定化させるようなセル配置が可能となる。
セル位置決定手段304は、ネットリスト情報302から、個々のインスタンスにおける電圧変動を予測する。この際、インスタンス活性化率情報301に基づき、動作しないインスタンスが持つ容量を、デカップリング容量と同様に電圧変動を抑える働きをするものとしてその影響を考慮して予測を行なう。その結果、電圧降下と消費電流との関係から個々のインスタンスに必要となる容量を予測し、単位容量セル情報303より必要となる容量の個数もしくは大きさを決定し、論理セルとともに容量セルを配置した結果を、セルレイアウト情報305として出力する。
セル動作時間情報306は、ネットリスト中のインスタンスが基準時間に対して、どのような時間に動作するか、或いは動作する可能性があるかを表す情報である。例えば、論理検証ツール等を用いて得られた各ネットの動作情報High/Lowと遷移時間情報を含むVCD(Value Change Dump)ファイルや、静的タイミング解析(STA:STATIC TIMING ANALYSIS)ツールで得られた各クロック信号に対する遅延情報ファイルに含まれる。
このようにして得られた半導体集積回路では、論理セルを配置した後の空き領域に容量セルを配置する場合に比べて、局所的な電圧降下が抑制されている。
以下、設計装置の詳細を説明する。
ネットリスト情報302は、設計対象回路の回路網をあらわすデータである。たとえば図2に示すような設計対象回路が記憶されている。この例では、論理セルのインスタンスであるクロックバッファCK1、CK2、CK3、フリップフロップFF1、FF2、インバータINV1、INV2、INV3、INV4と、それらを接続する配線とから構成されている。また、電源配線のテクノロジ情報(電源配線の抵抗密度や配線間の材質の誘電率など)や、論理変化時に論理セルの消費する消費電流、論理変化をしないときの論理セルの電源とグラウンド間の容量値、各配線の持つ容量値、各インスタンスの変化時の変化時間(トランジション時間)が含まれている。
単位容量セル情報303は、電源とグラウンド間に容量を構成できるようにしたデカップリング容量用のセルの大きさおよび容量値をあらわすデータである。たとえば、容量セルCAP1、CAP2、CAP3に対して、容量値が1pF、5pF、10pFであり、セル幅が10μm、40μm、80μmである、というような情報が記憶されている。
インスタンス活性化率301は、個々の論理セルであるインスタンスの動作頻度である活性化率をあらわす。図2に示すように、たとえば信号線w8、w9、w10、w11、w12はクロックと同期しているので200%、w1はクロック周期2回に1回変化するとすると、50%、w2、w3、w4、w5、w6、w7もクロックが変化するごとにFF1、FF2の入力から出力に信号が伝播するとすると50%、といったようにクロック周期何回に対して、インスタンスの出力が何回変動するか、という割合で動作頻度を表す。このような情報は、論理シミュレータを用いてあらかじめ調べておくことが可能である。
セル位置決定手段304は、図3に示すようなフローチャートに従い、セル位置を決定する。
ここでは、まず実際の配置や配線を行っていないフロアプラン前の状態を想定しているので、電流波形を算出する際には、一般的に良く利用されている、大まかな回路規模と配置面積とファンアウト(出力端子に対する入力ピン数)の関係で表される負荷容量モデル(仮負荷モデル)によって、インスタンスが動作する時間及びインスタンス毎の消費電力を見積もることができる。これにより、実際のフロアプラン処理に着手する前に概略消費電力と必要電源容量を算出することができ、フロアプラン段階までに必要な容量セル領域を確保することが可能となる。
次に、図2に示すようなネットリスト情報302を用い、個々のインスタンスにおける電圧変動を予測する。この際、個々のインスタンスの出力の1変動に対して消費電力の大きさも同時に読み込み、インスタンス活性化率情報を積算することで消費電力Pを計算する。P=IVであることから、消費電力Pを電源電圧Vで割ることで電流源の電流量Iを計算することができる。電流源の波形は、事前に決められたインスタンスの変化時間を用い、積分値が電流量Iとなるように波形を構築する(ステップ501)。
次に、(1−活性化率R)に各インスタンスが非動作時に容量成分として作用する総容量Cをかけた値を、非動作トランジスタがデカップリング容量として働く容量分として計算する(ステップ502)。ここで、各インスタンスが非動作時に容量成分として作用する容量成分には、セルの出力信号がHiまたはLowになる状態に固定し、電源・グラウンド間に在るトランジスタやセル内部容量及び出力配線負荷容量が考えられる。トランジスタ及びセル内部容量に関してはインスタンスではなく、セル固有の値になるため、一般的にセルの動作特性(遅延特性や消費電力特性)をライブラリ化するためにキャラクタライズ処理を行なう際に、出力固定状態でのセル内部容量としてライブラリ情報に追加することが考えられる。
また、出力配線負荷容量に関しては、インスタンス毎に異なるためライブラリ化を行って高速処理を行なうことは難しいが、セル毎に出力配線負荷容量が電源容量として作用する際の有効容量割合を算出することが可能なため、配線負荷容量全体の内どの程度の割合で有効電源間容量として作用するかをキャラクタライズしておき、配線負荷容量に対して、その係数を乗算することにより算出可能となる。
次に、図4に示すような電源経路モデルのiに電流源の波形を、cに非動作トランジスタのデカップリング容量として働く容量分及び既配置済の容量セルや電源配線間容量を与える。電源抵抗rには、あらかじめ定めた一定の抵抗値を与える。また、電源パッドやLSI内部のインダクタンス成分を考慮するにはlの部分にインダクタンス成分を含ませることで考慮できる。この回路網を、SPICE(Simulation Program with Integrated Circuit Emphasis)等のトランジスタレベルシミュレータを用いて、各接点のダイナミックな電流変動や、電圧変動を計算する(ステップ503)。
次に、平均電流値を基準としてピーク電流(電流波形の波高値の内最も高い部分)制約値ilimitを決定する。たとえば平均電流値の1.2倍とあらかじめ決めておくことでこれを計算する(ステップ504)。
次に、図5に示すように、ピーク電流制約値を超えるダイナミック電流波形の差分の面積を計算し、差分電荷量Qとして算出する(ステップ505)。
次に、差分電荷量Qから各ノードに必要な容量C=Q/Vを計算する(ステップ506)。
そして最後に、各インスタンスと、各ノードに必要な容量を、配置ツールを用いて配置する。配置ツールは一般的にP&Rツールと呼ばれるツールを使用することで容易に実現可能である(ステップ507)。ここで、図5に示すような電流波形をLSI全体に対してではなく、機能モジュール毎に算出するなど、より細かい単位で作成することにより、より高精度な電流波形の見積もりが可能となる。
(実施の形態2)
なお、あらかじめセル位置決定手段304で容量を含むセルを最適配置する前に、概略配置(フロアプラン)を行っておくようにしてもよい。このときの装置構成およびこの方法のフローチャート図を図6及び図7に示す。
ここで、図7のフロアプランステップ601を追加するもので、この構成においては、メモリセルやソフトマクロセルの配置位置の決定と電源配線を行い、論理セルに関しては少なくとも概略配置まで行っておく。ここで、信号配線に関しての詳細配線等の処理は必要としない。この手段を用いる場合には、LSI全体におけるブロックの配置位置が概略ではあるが決定されるため、消費電力の分布の精度が上がる。また、電源抵抗や、動いていないセルの容量効果の影響をより正確に見積もることが可能となり、概略配置までの処理で処理時間的にも短時間で精度の高い見積もりを行なうことが可能となる。
また、図6において既配置容量セル抽出手段404にてあらかじめ配置済みの容量セルや動いていないセルの容量効果を見積もっておくようにしている。この情報に基づきより少ない容量セルでノイズ低減を行なうことが可能である。
(実施の形態3)
また、本発明の実施の形態3では、図8にフローチャートを示すように、セル位置決定手段が各ノード周辺の非同時動作セルの抽出を行なうステップ701と、非同時動作セルの容量成分を必要容量から差し引くステップ702とを備えたことを特徴とするものである。
このステップ701では、各ノード周辺でセルが動作する時間が同時もしくは同時から前後数ps〜数nsの時間内に動作しないセルを非同時動作セルとして抽出する。この非同時動作セルの抽出に必要な情報としては、一般的な論理検証ツールから出力されるVCD(Value Change Dump)ファイル等のセル(ネット)動作時間が含まれるファイルや静的タイミング解析(STA)ツール等のクロック動作に対する各インスタンス動作時間情報から抽出することができる。
そして、各ノードに必要と算出された容量値から非同時動作セルの容量値を差し引くステップ702を追加することにより、実際にLSIが動作する際に容量セルや配線間容量以外に容量成分として働く容量を考慮することができ、真に必要となる容量のみを追加することが可能となる。
これは容量を適切な位置に配置可能で、非同時動作セル容量を考慮することにより挿入する電源容量数を削減し、容量セル挿入のための面積増加を抑制するという効果がある。
(実施の形態4)
また、本発明の実施の形態4では、図9にフローチャートを示すように、セル位置決定手段が、活性化率に配線容量を乗じた値を非動作トランジスタの容量としてモデル化した後、トランジスタ数やネット数から余剰面積を求め、使用可能な総容量を決定するステップ801と、各ノードの電圧降下値と、ダイナミックな電流波形を計算した後、電圧降下値を基準として各ノードの重み付けを決定するステップ802と、各ノードに必要な容量を算出してノードと容量のテーブル値を出力するステップ803とを備えたことを特徴とする。
すなわち、ステップ801でトランジスタ数やネット数から余剰面積を求め、主な容量セルを構成する為に必要な面積と容量値の情報から挿入可能な総容量を決定する。次に、ステップ503で各ノードの電圧降下値とダイナミックな電流波形を計算し、ステップ802で電圧降下値を基準として、電圧降下値の大きいノードには優先的に電源容量が挿入されるように、各ノードの重み付けを決定する。そして続いて、ステップ803で重み付け×総容量から各ノードに必要な容量を計算し、ノードと容量のテーブルとして出力することにより、電流波形のピーク抑制のための制約値から決められた必要容量を全て挿入するのではなく、挿入可能総容量を重み付けにより効果的な位置に容量を挿入することができる。これは面積に制限がある場合に限られた容量を最大限有効活用することができるように挿入することが可能になる。
(実施の形態5)
また、本発明の実施の形態5では、図10にフローチャートを示すように、電圧降下値・タイミングを基準として各ノードの電流量制約値を決定するようにしたことを特徴とするものである。
セル位置決定手段は、ステップ901で電圧降下値・タイミングを基準として各ノードの電流量制約値を決定する。このタイミング(セットアップタイミング・ホールドタイミング制約)を基準に重み付けを決定するステップでは、単に一般的に言う電圧降下を考慮しないSTAでのタイミングが厳しい箇所を指すのではなく、電圧降下を考慮した遅延値を用いてSTAを行った際に、タイミングが厳しく且つ電圧降下未考慮と比較して最もタイミングが劣化した部分の重み付けを重く設定する。
また、電圧降下を考慮してもタイミング違反が発生しない回路の場合は、クロック系の回路部分の重み付けを重くするなどの対応を行い、クロックネットの電圧降下による遅延変動を抑えることが望ましい。このステップの追加により、活性化率で非動作トランジスタが容量として作用する影響を考慮するとともにタイミングの厳しい箇所に重み付けが来るように制御することができる。これは面積に制限がある場合に限られた容量を最大限有効活用することができるように挿入することが可能になる。
(実施の形態6)
また、本発明の実施の形態6では、図11にフローチャートを示すように、活性化率の高いセルや単体消費電力が大きいセルをできるだけ電源入り口に近づけるように制御するステップ1001を付加したことを特徴とする。
図11に示すフローチャートのように、セル位置決定は、ステップ1001においてフロアプラン(仮レイアウト)時に活性化率の高いセルや単体消費電力が大きいセルをできるだけ電源入り口に近づけるように制御する。消費電力の比較的大きなセルをLSI中央領域から電源パッドに近づけることで、LSI中央領域へ流入する電流を削減することができる。これにより各電源ノードの電流値も削減されることから、ピーク電流も小さくなり、電流制約値を超える電流も減少することになる。ついで、ステップ505において算出される必要容量も減少する。このステップの追加により、LSI中央領域に必要な容量を削減することができ、LSIの全体面積の削減が可能となる。
(実施の形態7)
また、本発明の実施の形態7では、図12にフローチャートを示すように、容量の必要箇所をシフトして場所をあけるステップ1101を含むことを特徴とする。
すなわち、図12に示すように、セル位置決定手段は、ステップ1101で容量の必要箇所をシフトして場所をあけるようにしており、図13(a)に示すように活性化率の高いセルや単体消費電力が大きいセルと、容量セル配置可能領域があった場合に、ステップ1101の処理を行った結果が図13(b)の矢印で示すように容量セル配置可能領域が消費電力の高いセル近傍に来るように論理セルの位置を移動させる。ここでは容量挿入が必要となる箇所と領域をあらかじめ算出することによって、その領域に存在しシフトが必要なセル数の算出を行なう。また、このシフトによってタイミング的に厳しくなる可能性があるセルについては移動禁止等のフラグを設定しておくことにより、タイミング的な違反の増加を抑制することができる。ここで、瞬間電流の変動が激しく、容量を実際に必要としている箇所の近傍に容量を配置することが可能となり、容量と供給先との間の抵抗値を低く抑えることができる。これにより、同一電流を供給するために必要な容量値をより低く抑えることが可能となり、容量挿入のための総面積の抑制が可能となる。
(実施の形態8)
また、本発明の実施の形態8では、図14にフローチャートを示すように、活性化率の高い箇所の差分電荷量から各ノードに必要な容量C=Q/Vを計算し、ノードと容量のテーブルとして出力するステップ1401を付加したことを特徴とする。
このように、本実施の形態では、セル位置決定手段の動作ステップに、活性化率の高い箇所の差分電荷量から各ノードに必要な容量C=Q/Vを計算し、ノードと容量のテーブルとして出力するステップ1401を追加することにより、活性化率の高いところに配置することができる。これは高速動作で効果的である。
(実施の形態9)
また、本発明の実施の形態9では、図15にフローチャートを示すように、差分電荷量の大きい箇所に活性化率の低いセルが配置されるよう再レイアウトし、レイアウト情報を出力することにより、活性化率の高いところと低いところを混在させるようにしたことを特徴とするものである。
本実施の形態では、セル位置決定手段が、ステップ1501において、差分電荷量の分布の解析を行い、差分電荷量が大きく密度が高い領域を検出し、近隣のセルの内、STA情報等から求められる動作タイミングが異なり、且つ活性化率の低いセルの抽出を行なう。次に、差分電荷量の大きい箇所に活性化率の低いセルが配置されるよう再レイアウトし、レイアウト情報を出力することにより、活性化率の高いところと低いところを混在させることができる。これは容量セルの配置が困難な場合に効果的である。
(実施の形態10)
また、本発明の実施の形態10では、図16にフローチャートを示すように、差分電荷量が大きくかつ同時スイッチングするノードに容量セルを作成し、レイアウト情報を出力するステップ1601を付加するようにしたことを特徴とする。
また、図16に示すフローチャートのように、セル位置決定手段の中で、ステップ1601として差分電荷量を実平面での領域分析に加え時間軸に沿った分析を行い、同一時間もしくは近傍の時間において差分電荷量の総量が大きいノードに対しての解析を行い、図17に示すような各電源ノードに対応したテーブル情報を生成する。ここで図17では電源配線のみを示しているが、この電源配線に沿ってセルが存在している。
次に、このようにして生成したテーブルから同時スイッチングセル数及びそれに伴う必要容量量により重み付けを行い、容量セルを挿入する。
このようにして、近隣セルが同時スイッチングする際に特に必要になる電流量を考慮することができる。これにより容量セル挿入の効果の大きい箇所に容量セルを配置し、容量セルを有効活用することが可能となる。
本発明の設計方法は、動作していないトランジスタの容量効果を考慮して、電源ノイズを抑えた半導体集積回路を設計することができることから、各種の半導体集積回路の設計に利用することができる。
本発明の実施の形態1にかかるセル活性化率使用フロー図 本発明の実施の形態1にかかる配線活性化率説明図 本発明の実施の形態1にかかるフロアプラン前必要容量見積もりフロー図 本発明の実施の形態1にかかる必要容量算出時電源経路モデル図 本発明の実施の形態1にかかる必要容量算出時電流波形モデル図 本発明の実施の形態2にかかる既存容量考慮フロー図 本発明の実施の形態2にかかるフロアプラン時必要容量見積もりフロー図 本発明の実施の形態3にかかる非同時動作セル容量考慮フロー図 本発明の実施の形態4にかかる限定面積容量挿入フロー図 本発明の実施の形態5にかかるタイミング情報考慮容量挿入フロー図 本発明の実施の形態6にかかるフロアプラン時セル配置位置制御フロー図 本発明の実施の形態7にかかる容量挿入領域確保フロー図 本発明の実施の形態7にかかる容量セル挿入位置確保のイメージ図 本発明の実施の形態8にかかる活性化率依存重み付けフロー図 本発明の実施の形態9にかかる活性化率依存配置制御フロー図 本発明の実施の形態10にかかる動作タイミング考慮重み付けフロー図 本発明の実施の形態10にかかる動作タイミング考慮重み付けイメージ図 従来の容量セル挿入例を示す図
符号の説明
301 インスタンス活性化率
302 ネットリスト
303 単位容量セル情報
304 容量セル位置決定手段
305 容量セルレイアウト情報
306 セル動作時間情報

Claims (3)

  1. 半導体集積回路の設計方法であって、
    データ読み込み手段によって、
    データベースに記録された前記半導体集積回路のネットリスト情報を容量セル位置決定手段に読み込む工程と、
    データベースに記録された前記半導体集積回路のインスタンス活性化率を容量セル位置決定手段に読み込む工程を含む方法を実行させ、
    かつ、容量セル位置決定手段によって、
    前記半導体集積回路に含まれる活性化状態のインスタンスに生じる電源電流値を算出する工程と、
    前記半導体集積回路に含まれる非活性化状態のインスタンスに生じる容量値を算出する工程と、
    前記ネットリスト情報に基づいて前記半導体集積回路内の余剰面積を求め、前記半導体集積回路に挿入可能な総容量値を算出する工程と、
    前記活性化状態のインスタンスに生じる電源電流値を算出する工程で算出した電源電流値と、
    前記非活性状態のインスタンスに生じる容量値を算出する工程で算出した容量値を用いて、前記半導体集積回路内の電圧降下解析を行う工程と、
    前記電圧降下解析を行う工程で得られた電圧降下値に基づいて電源容量挿入可能箇所に重み付けを行なう工程と、
    前記総容量値を算出する工程で算出した総容量値を上限として、前記重み付けを行う工程で定めた重みの大きい順に、電源容量挿入可能箇所に電源容量を挿入する工程を含む方法を実行させることを特徴とした半導体集積回路の設計方法。
  2. 請求項記載の半導体集積回路の設計方法であって、
    前記容量セル位置決定手段は、
    前記電圧降下解析を行う工程で得られた前記電圧降下値を考慮したタイミング計算を行う工程を含む方法を実行し、
    前記重み付けを行う工程では、前記電圧降下値と前記タイミング計算を行う工程で得られた結果に基づいて電源容量挿入箇所に重み付けを行うことを特徴とする半導体集積回路の設計方法。
  3. 請求項記載の半導体集積回路の設計方法であって、
    前記容量セル位置決定手段は、
    前記半導体集積回路内に含まれる各インスタンスの動作時刻を算出する工程と、
    前記半導体集積回路内に含まれる各インスタンスの内、同時刻もしくは近傍時刻に動作する複数のインスタンスを抽出する工程と、
    前記抽出工程で抽出された前記複数のインスタンスが近傍に配置されている箇所を抽出する工程を含む方法を実行し、
    前記電源容量を挿入する工程は、前記抽出された箇所に優先的に電源容量を挿入することを特徴とする半導体集積回路の設計方法。
JP2004380271A 2004-12-28 2004-12-28 半導体集積回路の設計方法 Expired - Fee Related JP4205662B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004380271A JP4205662B2 (ja) 2004-12-28 2004-12-28 半導体集積回路の設計方法
US11/312,370 US7480875B2 (en) 2004-12-28 2005-12-21 Method of designing a semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004380271A JP4205662B2 (ja) 2004-12-28 2004-12-28 半導体集積回路の設計方法

Publications (2)

Publication Number Publication Date
JP2006185323A JP2006185323A (ja) 2006-07-13
JP4205662B2 true JP4205662B2 (ja) 2009-01-07

Family

ID=36613255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004380271A Expired - Fee Related JP4205662B2 (ja) 2004-12-28 2004-12-28 半導体集積回路の設計方法

Country Status (2)

Country Link
US (1) US7480875B2 (ja)
JP (1) JP4205662B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4967534B2 (ja) * 2006-08-28 2012-07-04 富士通セミコンダクター株式会社 半導体装置のレイアウト方法およびレイアウトプログラム
JP5070785B2 (ja) * 2006-09-26 2012-11-14 富士通セミコンダクター株式会社 回路設計方法及び回路設計システム
US7600208B1 (en) * 2007-01-31 2009-10-06 Cadence Design Systems, Inc. Automatic placement of decoupling capacitors
JP4946573B2 (ja) * 2007-03-30 2012-06-06 富士通セミコンダクター株式会社 デカップリングセル配置方法及びデカップリングセル配置装置
JP5084380B2 (ja) * 2007-07-17 2012-11-28 株式会社東芝 半導体設計装置および半導体回路
US8020129B2 (en) * 2008-01-29 2011-09-13 International Business Machines Corporation Multiple voltage threshold timing analysis for a digital integrated circuit
JP2009265773A (ja) * 2008-04-22 2009-11-12 Toshiba Corp 半導体集積回路の設計方法
JP5161035B2 (ja) * 2008-10-29 2013-03-13 ルネサスエレクトロニクス株式会社 半導体集積回路の設計装置、設計方法およびプログラム
US8495547B2 (en) * 2009-11-11 2013-07-23 International Business Machines Corporation Providing secondary power pins in integrated circuit design
JP5832759B2 (ja) * 2011-02-24 2015-12-16 株式会社メガチップス 半導体集積回路の設計方法
WO2012127784A1 (ja) * 2011-03-24 2012-09-27 ルネサスエレクトロニクス株式会社 半導体集積回路の電源配線レイアウト方法及び電源配線レイアウト装置
US8352900B1 (en) * 2012-01-24 2013-01-08 International Business Machines Corporation Analytic experimental estimator for impact of voltage-overshoot of voltage waveform on dielectric failure/breakdown
US8578314B1 (en) 2012-09-06 2013-11-05 International Business Machines Corporation Circuit design with growable capacitor arrays
CN108604106B (zh) 2016-02-08 2021-06-01 科欧罗基克斯有限公司 侧信道感知的自动布局和布线

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69311596T2 (de) * 1992-02-27 1998-01-02 Philips Electronics Nv Integrierte CMOS-Schaltung
JP3450739B2 (ja) 1999-03-24 2003-09-29 松下電器産業株式会社 Lsi配置方法
US6523159B2 (en) * 2001-01-16 2003-02-18 International Business Machines Corporation Method for adding decoupling capacitance during integrated circuit design
JP3894535B2 (ja) 2001-07-13 2007-03-22 松下電器産業株式会社 不要輻射解析方法および不要輻射解析装置
JP2004070721A (ja) * 2002-08-07 2004-03-04 Renesas Technology Corp 自動配置配線装置
US7278120B2 (en) * 2004-07-23 2007-10-02 Synplicity, Inc. Methods and apparatuses for transient analyses of circuits

Also Published As

Publication number Publication date
JP2006185323A (ja) 2006-07-13
US7480875B2 (en) 2009-01-20
US20060143585A1 (en) 2006-06-29

Similar Documents

Publication Publication Date Title
US7480875B2 (en) Method of designing a semiconductor integrated circuit
US5838947A (en) Modeling, characterization and simulation of integrated circuit power behavior
US7673260B2 (en) Modeling device variations in integrated circuit design
US7600208B1 (en) Automatic placement of decoupling capacitors
US7590958B2 (en) Method and apparatus for retrofitting semiconductor chip performance analysis tools with full-chip thermal analysis capabilities
US7469394B1 (en) Timing variation aware compilation
US7930674B2 (en) Modifying integrated circuit designs to achieve multiple operating frequency targets
US6832361B2 (en) System and method for analyzing power distribution using static timing analysis
US8219953B2 (en) Budgeting electromigration-related reliability among metal paths in the design of a circuit
JP5401376B2 (ja) 半導体集積回路装置の設計方法
US7840918B1 (en) Method and apparatus for physical implementation of a power optimized circuit design
US20120266120A1 (en) Glitch power reduction
US8612911B2 (en) Estimating power consumption of an electronic circuit
KR20130084029A (ko) 탭리스 스탠다드 셀을 포함하는 시스템-온-칩의 설계 방법, 설계 시스템 및 시스템-온-칩
JP2008250630A (ja) デカップリングセル配置方法及びデカップリングセル配置装置
US6684373B1 (en) Optimize global net timing with repeater buffers
US10302698B1 (en) Estimation of power consumed by combinatorial circuitry
EP2899653A1 (en) Method, system and computer program product for characterizing the variability of an integrated circuit design
US20120304135A1 (en) Method and apparatus for precision tunable macro-model power analysis
US20160217239A1 (en) Method and system for selecting stimulation signals for power estimation
Posser et al. Electromigration Inside Logic Cells
Mehra et al. Synopsys Low-Power Design Flow
JP6322888B2 (ja) 半導体試験プログラム、半導体試験装置および半導体試験方法
JP2008123458A (ja) 半導体集積回路の設計方法
Frenkil Sequence Design Flow for Power-Sensitive Design

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071113

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080319

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080611

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080811

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: 20080917

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081016

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

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees