JP3544356B2 - Layout method and design system for semiconductor integrated circuit - Google Patents

Layout method and design system for semiconductor integrated circuit Download PDF

Info

Publication number
JP3544356B2
JP3544356B2 JP2000381448A JP2000381448A JP3544356B2 JP 3544356 B2 JP3544356 B2 JP 3544356B2 JP 2000381448 A JP2000381448 A JP 2000381448A JP 2000381448 A JP2000381448 A JP 2000381448A JP 3544356 B2 JP3544356 B2 JP 3544356B2
Authority
JP
Japan
Prior art keywords
layout
bypass capacitor
semiconductor integrated
integrated circuit
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.)
Expired - Fee Related
Application number
JP2000381448A
Other languages
Japanese (ja)
Other versions
JP2001351985A (en
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 JP2000381448A priority Critical patent/JP3544356B2/en
Publication of JP2001351985A publication Critical patent/JP2001351985A/en
Application granted granted Critical
Publication of JP3544356B2 publication Critical patent/JP3544356B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、半導体集積回路のレイアウト方法および設計システムに関するものである。
【0002】
【従来の技術】
従来の半導体集積回路におけるノイズ対策として電源配線とグラウンド配線の間にコンデンサを配置する方法について特願平11−10010号に記載されたものが知られている。
【0003】
図6は従来のコンデンサを配置するフローチャートを示しており、以下に各ステップごとに内容を説明する。
【0004】
ステップST11にてグランド配線に基板コンタクトを有するレイアウトを生成する。
【0005】
次にステップST12にて半導体集積回路のデザインルールを取り込み、電源配線
の抽出を行う。
【0006】
ステップST13にてデザインルールによりコンデンサを配置する為のテクノロジの算出を行う。
【0007】
ステップST14にてステップST13で算出したテクノロジに基づき電源配線間にコンデンサの配置を行う。
【0008】
図7は従来のコンデンサを配置したレイアウトで、15は半導体基板、9はグランド配線、8は電源配線、10はポリシリコン電極であり、容量絶縁膜及び電極により構成されるコンデンサを有しており、16の回路ブロックに電源を供給している。17は自動レイアウト装置により自動生成された回路ブロックである。
【0009】
従来は、半導体集積回路のレイアウト工程によりセルの配置や配線の生成が終了しているレイアウトに関して、基板上の電源配線とグラウンド配線パターンにコンデンサを接続している。
【0010】
【発明が解決しようとする課題】
しかしながら、従来のバイパスコンデンサの配置は、レイアウトが生成された後に電源配線およびグランド配線に実施するものであったため、レイアウトの修正無しに電源ノイズ源となっている電源変動の大きい場所にコンデンサを配置することができないという問題点があった。
【0011】
本発明は、このような問題点を解決するもので、半導体集積回路のレイアウトを生成する前に電源変動の大きいトランジスタ等の素子を検出し、その素子の電源にコンデンサを配置し、効率的に電源ノイズ成分を吸収する半導体集積回路のレイアウト方法および設計システムを提供することを目的とする。
【0012】
【課題を解決するための手段】
請求項1記載の半導体集積回路のレイアウト方法は、自動的に半導体集積回路のレイアウトを生成する方法であって、半導体集積回路情報からファンイン・ファンアウトチェックによりN個以上のファンアウトを有する回路を抽出する第1のステップと、この第1のステップにより抽出されたデータを前記半導体集積回路情報に追加して前記N個以上のファンアウトを有する回路に関してコンデンサを有する回路情報を生成する第2のステップと、この第2のステップに基づいて生成された回路情報より自動レイアウトを実施する第3のステップと、前記半導体集積回路のレイアウトの電源配線に自動的にバイパスコンデンサを生成する第4のステップを含むものである。
【0013】
請求項1記載の半導体集積回路のレイアウト方法によれば、レイアウト生成前にデザインルールからファンイン・ファンアウトチェックを実施するステップと、N以上のファンアウトの素子を抽出し、抽出した素子にコンデンサを配置するステップを有するため、半導体集積回路のレイアウトを生成する前に電源変動の大きいトランジスタ等の素子を検出でき、その素子の電源にコンデンサを配置して効率的に電源ノイズ成分を吸収することができる。
【0014】
請求項2記載の半導体集積回路のレイアウト方法は、自動的に半導体集積回路のレイアウトを生成する方法であって、ある指定されたテストパターンに基づいて所定の時間幅における信号の状態が変化した回数を求め所定の回数を超えて変化した素子を抽出し、前記抽出された素子に関してコンデンサを配置した回路情報を生成する第1のステップと、この第1のステップに基づいて生成された回路情報より自動レイアウトを実施する第2のステップと、前記半導体集積回路のレイアウトの電源配線に自動的にバイパスコンデンサを配置する第3のステップを含むものである。
【0015】
請求項2記載の半導体集積回路のレイアウト方法によれば、請求項1と同様な効果がある。
【0016】
請求項3記載の半導体集積回路の設計システムは、トランジスタサイズ情報を有する論理セルライブラリを用いた半導体集積回路を設計する設計システムであって、前記論理セルライブラリ1つに対して複数のバイパスコンデンサ情報を有する論理セルライブラリを用いて、前記トランジスタサイズ情報を有する論理セルを、その論理セルのトグル率に応じて前記複数のバイパスコンデンサ情報のうちから1つを選択して、前記バイパスコンデンサ情報を有する論理セルで置き換え、自動レイアウトを行うことを特徴とするものである。
【0017】
請求項3記載の半導体集積回路の設計システムによれば、ノイズの発生源であるセルそのものにバイパスコンデンサを内蔵しているので確実にノイズの発生源にバイパスコンデンサを置くことができる。また、トグル率に応じてバイパスコンデンサの容量を選択するので、電流消費に最適なバイパスコンデンサ容量値を実現できる。
【0018】
請求項4記載の半導体集積回路のレイアウト方法は、バイパスコンデンサ容量の大きいレイアウトセルをグループ化するステップと、バイパスコンデンサ容量の小さいレイアウトセルをクループ化するステップと、バイパスコンデンサのないレイアウトセルをグループ化するステップと、バイパスコンデンサ容量が大きいレイアウトセルの横幅の合計を算出するステップと、バイパスコンデンサ容量が小さいレイアウトセルの横幅の合計を算出するステップと、バイパスコンデンサのないレイアウトセルの横幅の合計を算出するステップと、前記横幅の合計を用いてバイパスコンデンサ容量が大きいレイアウトセルのグループを配置する領域の形状と位置とを算出して電源配線の近くに置くようにするステップと、前記横幅の合計を用いてバイパスコンデンサ容量が小さいレイアウトセルのグループを配置する領域の形状と位置とを算出して前記横幅の合計を用いてバイパスコンデンサ容量が大きい前記レイアウトセルのグループの次に前記電源配線の近くに置くようにするステップと、前記横幅の合計を用いてバイパスコンデンサのないレイアウトセルのグループを配置する領域の形状と位置とを算出して前記電源配線から最も遠くなるようにするステップとを含むものである。
【0019】
請求項4記載の半導体集積回路のレイアウト方法によれば、バイパスコンデンサ容量の大きなセルすなわち電源電流の消費が大きなセルほど電源幹線に近く配置されるため、電流が流れることによる電源配線の電圧降下を最小限にして電源ノイズを抑えることができる。
【0020】
請求項5記載の半導体集積回路のレイアウト方法は、バイパスコンデンサ情報を有するレイアウトセルライブラリを用いて、ブロック外へ出力するレイアウトセルであってバイパスコンデンサ容量が大きいものを抽出するステップと、このステップにより抽出した前記レイアウトセルの出力負荷を抽出するステップと、前記出力負荷に見合った出力能力を算出するステップと、前記レイアウトセルのトランジスタサイズが前記出力能力より大きい場合前記バイパスコンデンサ容量が小さいレイアウトセルで置き換えるステップとを含むものである。
【0021】
請求項5記載の半導体集積回路のレイアウト方法によれば、ブロック間に跨る出力セルを見直すことで、不要なバイパスコンデンサを削減でき、レイアウト面積の最適化が達成される。
【0022】
【発明の実施の形態】
(実施の形態1)
本発明の第1の実施の形態の半導体集積回路のレイアウト方法について説明する。
【0023】
図1は半導体集積回路の設計工程におけるバイパスコンデンサ配置の手順を示すフローチャートである。以下、図1のフローチャートに沿って半導体集積回路のレイアウトにコンデンサを配置する工程を説明する。
【0024】
まず、ステップST1 にてゲートレベルの回路情報を生成する。次にステップST2〜ST5で、電源配線および回路ブロック内にバイパスコンデンサを生成する。このとき、ステップST7 のデザインルールによりファンアウトをステップST2 にて算出し、その結果をステップST3 に取り込みコンデンサを有する回路情報を生成する。次に生成された回路情報からステップST4 で半導体のレイアウトを自動レイアウトツールを用いて生成した後、ステップST5で電源配線にコンデンサを生成し、最終的にステップST6 で回路ブロック内のファンアウトの大きい素子と、電源配線にコンデンサが配置された半導体のレイアウトを生成する。
【0025】
ステップST2 にて半導体集積回路のゲートレベル情報を取り込み、この回路情報に基づいて、各素子の出力端子が他の素子の入力端子に何本接続されているのかをステップST7 のデザインルールを用いて算出する。
【0026】
ステップST3 で、ステップST2 で算出したデータよりN以上のファンアウトを有する素子に関して、ステップST8 よりコンデンサを有する素子データを入力して、コンデンサを有する素子のデータへ置換し、コンデンサを有する回路情報を生成する。
【0027】
図2は、上記ステップで算出された素子にコンデンサを配置した回路図である。
【0028】
1は抽出された素子、2は抽出された素子に接続されている素子、3は電源配線、4はグランド配線、5はコンデンサであり、6は抽出された素子にコンデンサを配置した素子枠である。電源配線3とグランド配線4より素子1に電源が供給されている。図3は上記回路に接続するコンデンサのレイアウト図であり、7はコンデンサのセル枠、8は電源配線、9はグランド配線、10はポリシリコン電極、11はp型の拡散層、12はn型の拡散層でありMOSトランジスタと同じ構成をとる。そのため、自動レイアウトツールで配置する素子のセル枠と共通に扱うことができ、素子とコンデンサを接合が容易に行えるようになっている。また、図4は素子にコンデンサを配置したレイアウトであり、13は抽出された素子のレイアウト、14はコンデンサを配置した状態で1つのセルとして扱えるようにしてある。
【0029】
次にステップST4 にて、ステップST3の回路情報から自動レイアウト生成ツールを用いて半導体集積回路のレイアウトパターンを生成する。図5 はST3 にて生成したレイアウトで、17は自動レイアウト装置により自動生成された回路ブロックである。3の電源配線と4のグランド配線より電源が供給されている。
【0030】
ステップST5 にて、ファンアウトの大きい素子にコンデンサの配置を終了したレイアウトパターンより、ステップST6 にて電源配線にコンデンサを配置する。なお、電源配線へのコンデンサの生成は、特願平11−10010号に開示されている方法を使用することができる。
【0031】
(実施の形態2)
図5は、本発明の第2の実施の形態におけるレイアウト方法のフローチャート
である。
【0032】
本実施の形態においては、ステップST9 において論理シミュレーションを実施し所定の時間における素子の変化回数を算出する。
【0033】
次にステップST10にて、所定の変化回数を超えた素子に対してコンデンサを配置する。
【0034】
その後、第1の実施の形態のステップST4 以降と同様のステップを実施することによりコンデンサを配置した半導体集積回路のレイアウトを生成することが出来る。
【0035】
なお、本発明の実施の形態によれば特定の素子にMOSトランジスタを用いたコンデンサを配置しているが、配線を用いたコンデンサで実現してもよいものとする。
【0036】
(実施の形態3)
本発明の第3の実施の形態である半導体集積回路の設計システムについて図8から図19を用いて説明する。
【0037】
最初に、図8は半導体集積回路の設計の手順を示すフローチャートである。図8に沿って半導体集積回路の設計手順の全体を説明する。Step−801にて機能記述811を論理合成し、トランジスタサイズ情報の入った論理回路を生成する。Step−802で、シミュレーションを実施し、各論理セルのトグル率を得る。Step−803では、Step−802の結果であるトグル率を用いて、トランジスタサイズ情報を有する論理セルを、バイパスコンデンサ容量情報を有する論理セルに置き換える。Step−804にて、バイパスコンデンサ容量情報を有する論理セルに対応するバイパスコンデンサを有するレイアウトセルを自動配置配線する。このとき、バイパスコンデンサ容量の大きいセルほど電源幹線の近くになるように自動配置配線を実施する。Step−805において、機能ブロック間にまたがる配線接続を見直す。Step−806にてバイパスコンデンサ容量の大きいセルを用いてクロックツリー作成を行なう。
【0038】
次に図8のStep−801〜806までの各ステップについて図9から図19を用いて説明する。
【0039】
図9は機能記述811である。図10は図9の機能記述811を論理合成して得られるトランジスタサイズ情報を有する論理回路である。図8のStep−801では、論理合成により、図9の機能記述811から図10のトランジスタサイズ情報を有する論理回路812を得る。
【0040】
図11は、図8のStep−802で行なうトグル率算出のシミュレーション結果を用いてStep−803のバイパスコンデンサ情報を有する論理セルに置き換えるアルゴリズムである。図12は図10の論理回路に対して、入力としてリセット信号resetを1パルス加えた後、クロック信号clkを加えて得られる信号a[3]、a[2]、a[1]、a[0] の波形図と各論理セル1042、1041、1032、1031、1023、1022、1021、1013、1012、1011、1002、1001の出力の波形図である。図13はトランジスタサイズ情報を有するセルライブラリとバイパスコンデンサ容量情報を有するセルライブラリの表である。図13の縦方向は、各論理セルをその機能とトランジスタサイズによって並べている。図13の縦方向の例として、トランジスタサイズ情報を有する論セルライブラリ1300、1301、1302、1303、1304について説明する。1300はトランジスタサイズの小さいインバータ、1301はトランジスタサイズの大きいインバータ、1302はD−フリップフロップ、1303は排他的論理和、1304は論理積である。図13の横方向は、トランジスタサイズ情報を有する論理セルライブラリ1つに対してバイパスコンデンサ容量の大きさの順番に並べている。ここで、バイパスコンデンサとは各論理セルの電源VDDとグランドVSSに電源ノイズを低減するために設けるコンデンサである。図13の横方向の例として、トランジスタサイズの小さいインバータ1300、1310、1320、1330で説明する。トランジスタサイズの小さいインバータ1300は、通常のトランジスタ情報を有するトランジスタサイズの小さいインバータのセルである。トランジスタサイズの小さいインバータ1310、1320、1330はバイパスコンデンサ容量情報を有するインバータのセルである。バイパスコンデンサ容量情報を有するインバータセル1310、1320、1330のうち、1310はバイパスコンデンサがないインバータセル、1320、1330はバイパスコンデンサがあるインバータセルである。バイパスコンデンサがあるインバータセル1320、1330は、1320がバイパスコンデンサ容量の小さいインバータセル、1330はバイパスコンデンサ容量の大きいインバータセルである。トランジスタサイズの小さいインバータ1300の名前としてINV0とつける。バイパスコンデンサ容量情報を有するトランジスタサイズの小さいインバータ1310、1320、1330には、バイパスコンデンサの容量の大きさに応じて、バイパスコンデンサ容量の無いセルにはC0、バイパスコンデンサ容量の小さいセルにはC1、バイパスコンデンサ容量の大きいセルにはC2と末尾につける。バイパスコンデンサのないトランジスタサイズの小さいインバータ1310にはINV0C0、バイパスコンデンサ容量の小さいトランジスタサイズの小さいインバータ1320にはINV0C1、バイパスコンデンサ容量の大きいトランジスタサイズの小さいインバータ1330にはINV0C2と名前を付ける。同様に、他の論セルにも図13の表のようにバイパスコンデンサ容量に応じて名前を付ける。また、図13の各セルライブラリに1対1に対応するバイパスコンデンサを有するレイアウトセルライブラリを準備し、同じ名前を付ける。図14は図10の論理回路のシミュレーション結果であるトグル率から、図10の各論理セル1042、1041、1032、1031、1023、1022、1021、1013、1012、1011、1002、1001を、バイパスコンデンサ容量情報を有する論理セル1442、1441、1432、1431、1423、1422、1421、1413、1412、1411、1402、1401に置き換えた論理回路である。
【0041】
図11から図14を用いて図8のStep−802とStep−803を説明する。図11のStep−1101で図10の論理回路に対してシミュレーションを実施する。図10の各信号の波形図、そして、各論理セルの出力波形図として図12を得る。ここで、各信号のレベルがHレベルからLレベルに変化する、又は、LレベルからHレベルに変化する回数をトグル回数と呼ぶ。クロックのトグル回数に対する各信号、又は各論理セル出力のトグル回数の割合をトグル率と呼ぶ。たとえば、図12のようにクロックCLKの32回のトグル回数に対して、信号a[0]のようにトグル回数16回のものはトグル率50%である。図11のStep−1102では、トグル率の高いものとして50%以上の論理セルを図10の論理回路から抽出する。図10のD−フリップフロップ1001、インバータ1002、1041、1042が該当する。図11のStep−1103で図13のバイパスコンデンサ容量情報を有するセルライブラリ表から容量の大きいD−フリップフロップ1332、インバータ1330、1331、1330を各々選択し、図14のD−フリップフロップ1401、インバータ1402、1441、1442に置き換える。図11のStep−1104では、トグル率15%以下の論理セルを抽出する。図10の論理回路においてD−フリップフロップ 1031、排他的論理和1032が該当する。図11のStep−1105として図13のバイパスコンデンサ容量情報を有するセルライブラリ表からバイパスコンデンサ容量のないD−フリップフロップ1312、排他的論理和1313を各々選択し、図14のD−フリップフロップ1431、排他的論理和1432に置き換える。図11のStep−1106にて、トグル率が50%より小さく、かつ15%より大きい論理セル、つまり、図11のStep−1102、Step−1104で該当しなかった論理セルD−フリップフロップ1011、1021、排他的論理和1012、1022、論理積1013、1023について、図13のバイパスコンデンサ容量が小さい論理セルD−フリップフロップ1322、1322、排他的論理和1323、1323、論理積1324、1324を各々選択し、図14のD−フリップフロップ1411、1421、排他的論理和1412、1422、論理積1413、1423に置き換える。以上により、バイパスコンデンサ容量情報を有する論理回路813 である図14を得る。
【0042】
図15は、4つの機能ブロックをまとめて自動配置配線を実施したチップ全体を示す。図15の1500が電源配線( 幹線) であり、1510、1520、1530、1540は機能ブロックである。図15では模式的にブロック間の境界を示したが、チップ全体では実際はお互いのセルが混在している。図13の表のバイパスコンデンサ情報を有する論理セルライブラリに1対1に対応するバイパスコンデンサを有するレイアウトセルがあり、図8の814 のレイアウトAが得られるStep−804では、図11のアルゴリズムを用いて図8のStep−803で選ばれたバイパスコンデンサ情報を有する論理セルに1対1に対応するレイアウトセル群を自動配置配線する。この図8のStep−804の自動配置配線では、電流が流れる電源配線はノイズ発生源となるので、電流が大きく流れる電源配線が短くなるようにセルを配置、配線する。図8のStep−803でトグル率が高いもの、つまり、電流が大きく流れるものにはバイパスコンデンサ容量の大きいセルが選択されている。よって、図15の電源配線1500に対して近いブロック1511にはバイパスコンデンサ容量の大きいレイアウトセルを、電源配線1500に対してブロック1511の次に近いブロック1512にはバイパスコンデンサ容量の小さいレイアウトセルを、電源配線1500( 幹線) から最も遠いブロック1513に対してはバイパスコンデンサのないレイアウトセルを配置する。
【0043】
図16は、図8のStep−804のブロック内での自動配置配線のアルゴリズムである。図13の表に対応するバイパスコンデンサを有する各レイアウトセルには、バイパスコンデンサ容量の大きい順に名前の末尾にC2、C1、C0と付けてある。Step−1611では名前にC2があるセルをグループ2とする。Step−1612では名前にC1があるセルをグループ1とする。Step−1613では名前にC0があるセルをグループ0とする。Step−1621で名前にC2があるセルの幅の合計W2を計算する。Step−1622で名前にC1があるセルの幅の合計W1を計算する。Step−1623で名前にC0があるセルの幅の合計W0を計算する。Step−1630 でブロック横幅をw=(W2+W1+W0)/Nで計算する。Nは自動配置配線時の縦に並べるセルの段数である。Step−1631でグループ2の横幅をw2=W2/Nで計算する。Step−1632でグループ1の横幅をw1=W1/Nで計算する。Step−1633でグループ0の横幅をw0=W0/Nで計算する。Step−1640でブロックの高さをh=H*Nで計算する。Hはレイアウトセルの高さである。図17は711 のブロック内でのグループ2、712 のグループ1、713 のグループ0の各領域を示した図である。図17のように図16におけるStep−1651でグループ2の領域を場所(X2 、Y2)=(0、0) 、横幅w2、高さH*Nと指定する。Step−1652でグループ1の領域を場所(X1 、Y1)=(w2、0)、 横幅w1、高さH*Nと指定する。Step−1653でグループ0の領域を場所(X0 、Y0)=(w2+w1、0) 、横幅w0、高さH*Nと指定する。Step−1660で、各領域にセルをしきつめて自動配置配線を終了する。
【0044】
図18はブロック間の接続の図であり、ブロック間にまたがる信号を出力するセルの見直しを要するブロック間の接続の図である。図18のブロック1800から他のブロック1803へ出る信号1802に出力するレイアウトセルは、図8のStep−804で自動配置配線において、デフォルトでトランジスタサイズの大きいレイアウトセル1801が選択される。図18のブロック1800では、インバータ1801はバイパスコンデンサ容量が大きいとし、この信号1802がブロック1803のトランジスタサイズの小さくかつ距離の近いインバータ1804に接続されることを示しているのが図18(a)である。このとき、配線容量とゲート容量との合計が小さいのでインバータ1801の電源電流は小さくなる。そのため、インバータ1801のバイパスコンデンサは小さくても構わない。図8のStep−805で、図18(b)に示すようにインバータ1801からインバータ1811へとバイパスコンデンサ容量を小さくする置き換えを行ない、図8の815 のレイアウトBを得る。
【0045】
図19は図8のStep−805のアルゴリズムを示した図である。Step−1901でブロック外への出力信号を抽出する。Step−1902では、Step−1901で抽出された信号を出力するレイアウトセルを1つ抽出する。Step−1903では、Step−1902で抽出されたセルのバイパスコンデンサ容量の大きさを見る。大きくない時にはStep−1908へ進み、大きい時にはStep−1904へ進む。Step−1904では、信号の配線容量とゲート容量の合計を抽出する。Step−1905で再度、ランクを計算する。ここで、ランクとは出力負荷である配線容量とゲート容量の合計から必要とされる出力能力に準じたトランジスタサイズをさす。Step−1906で現行ランクと比較する。再度計算したランクと現行ランクが同じとき、Step−1908へ進む。再度計算したランクが現行ランクより小さい時には、Step−1907へ進む。Step−1907では、バイパスコンデンサ容量の小さいレイアウトセルに置き換える。Step−1908では、Step−1901で抽出されたブロック外への出力信号を出力したレイアウトセルにおいて全て処理したかどうか判断する。全て処理した場合にはStep−1909に進み、終了する。全て処理していない場合には、Step−1902に戻る。図18において、図19のアルゴリズムを用いる。Step−1901において、信号1802が抽出される。Step−1902においてバイパスコンデンサ容量の大きくトランジスタサイズの大きいインバータ1801が抽出される。Step−1903でバイパスコンデンサ容量が大きいので、ハイとなり、Step−1904に進む。Step−1904で配線容量・ゲート容量の合計を計算し、Step−1905で再度ランクを計算すると、現行ランクより小さくなる。Step−1906で現行ランクより小さいに当てはまり、Step−1907でバイパスコンデンサ容量の大きいインバータ1801からバイパスコンデンサ容量の小さいインバータ1811に置き換える。Step−1908で全て処理が終わったと判断すると、Step−1909で終了となる。
【0046】
図8の816のレイアウトCを生成するStep−806のクロックツリーの作成においては、まず、既存のアルゴリズムを用いてクロックツリーの作成をする。さらに、クロックツリーの作成実施後には、クロックツリーの各レイアウトセルはトグル率が高いので、容量の大きなセルを割り当てる。
【0047】
以上、本発明の第3の実施の形態においては、図11のStep−1102のトグル率を50%としたが、他の数字でも構わない。また、図11のStep−1104のトグル率15%についても同様に他の数字に設定しても構わない。また、バイパスコンデンサ容量を、バイパスコンデンサがない、バイパスコンデンサ容量が小さい、バイパスコンデンサ容量が大きいの3段階に分けたが、分け方は何段階でも構わない。なお第2の実施の形態の請求項4、5に対応するレイアウト方法は第1、第2の実施の形態に適用することができる。
【0048】
【発明の効果】
請求項1記載の半導体集積回路のレイアウト方法によれば、レイアウト生成前にデザインルールからファンイン・ファンアウトチェックを実施するステップと、N以上のファンアウトの素子を抽出し、抽出した素子にコンデンサを配置するステップを有するため、半導体集積回路のレイアウトを生成する前に電源変動の大きいトランジスタ等の素子を検出でき、その素子の電源にコンデンサを配置して効率的に電源ノイズ成分を吸収することができる。
【0049】
請求項2記載の半導体集積回路のレイアウト方法によれば、請求項1と同様な効果がある。
【0050】
請求項3記載の半導体集積回路の設計システムによれば、ノイズの発生源であるセルそのものにバイパスコンデンサを内蔵しているので確実にノイズの発生源にバイパスコンデンサを置くことができる。また、トグル率に応じてバイパスコンデンサの容量を選択するので、電流消費に最適なバイパスコンデンサ容量値を実現できる。
【0051】
請求項4記載の半導体集積回路のレイアウト方法によれば、バイパスコンデンサ容量の大きなセルすなわち電源電流の消費が大きなセルほど電源幹線に近く配置されるため、電流が流れることによる電源配線の電圧降下を最小限にして電源ノイズを抑えることができる。
【0052】
請求項5記載の半導体集積回路のレイアウト方法によれば、ブロック間に跨る出力セルを見直すことで、不要なバイパスコンデンサを削減でき、レイアウト面積の最適化が達成される。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態におけるコンデンサ配置の手順を示すフローチャートである。
【図2】ファンアウトの大きい素子にコンデンサの配置を終了した回路図である。
【図3】素子に配置するコンデンサのレイアウト図である。
【図4】ファンアウトの大きい素子にコンデンサを配置したレイアウト図である。
【図5】本発明の第2の実施の形態におけるコンデンサ配置の手順を示すフローチャートである。
【図6】従来のコンデンサを配置するフローチャート図である。
【図7】従来の半導体集積回路にコンデンサを配置したレイアウトである。
【図8】本発明の第3の実施の形態における設計の手順を示すフローチャートである。
【図9】本発明の第3の実施の形態で使用する4ビットカウンタの機能記述である。
【図10】本発明の第3の実施の形態で、図9の4ビットカウンタの機能記述を図8のStep−801で論理合成によって得られる論理回路である。
【図11】図8のStep−802、Step−803のアルゴリズムを示すフローチャートである。
【図12】図10の論理回路をシミュレーションした各信号の波形と各論理セルの出力波形である。
【図13】トランジスタサイズ情報を有する論理セルライブラリとバイパスコンデンサ容量情報を有する論理セルライブラリの表である。
【図14】バイパスコンデンサ容量情報を有する論理セルライブラリを用いた論理回路図である。
【図15】1チップレイアウトの図である。
【図16】ブロックに対する図8のStep−804における自動配置配線のアルゴリズムである。
【図17】図16の自動配置配線の説明図である。
【図18】ブロック間の接続の図である。
【図19】図8のStep−805におけるブロック間接続のセルの見直しにおけるアルゴリズムである。
【符号の説明】
1 素子
2 素子
3 電源
4 グランド
5 コンデンサ
6 基本セル
7 基本セル
8 電源配線
9 グランド配線
10 ポリシリコン電極
11 コンタクトホール
12 コンタクトホール
13 基本セル
14 基本セル
15 半導体基板
16 基板コンタクト
17 回路ブロック
811 機能記述
812 トランジスタ情報を有する論理回路
813 バイパスコンデンサ容量情報を有する論理回路
814 レイアウトA
815 レイアウトB
816 レイアウトC
1001、1011、1021、1031 D−フリップフロップ
1002、1042 トランジスタサイズの小さいインバータ
1012、1022、1032 排他的論理和
1013、1023 論理積
1300、1310、1320、1330 トランジスタサイズの小さいインバータ
1301、1311、1321、1331 トランジスタサイズの大きいインバータ
1302、1312、1322、1332 D−フリップフロップ
1303、1313、1323、1333 排他的論理和
1304、1314、1324、1334 論理積
1310、1311、1312、1313、1314 バイパスコンデンサのない論理セル
1320、1321、1322、1323、1324 バイパスコンデンサ容量の小さい論理セル1330、1331、1332、1333、1334 バイパスコンデンサ容量の大きい論理セル
1401 バイパスコンデンサ容量の大きいD−フリップフロップ
1411、1421 バイパスコンデンサ容量の小さいD−フリップフロップ
1431 バイパスコンデンサ容量のないD−フリップフロップ
1402、1442 バイパスコンデンサ容量の大きいトランジスタサイズの小さいインバータ
1412、1422 バイパスコンデンサ容量の小さい排他的論理和
1432 バイパスコンデンサのない排他的論理和
1413、1423 バイパスコンデンサ容量の小さい論理積
1500 電源幹線
1510、1520、1530、1540 機能ブロック
1511 電源幹線に近い領域(グループ2の領域)
1512 電源幹線から1511の次に近い領域(グループ1の領域)
1513 電源幹線から遠い領域(グループ0の領域)
1711 グループ2の領域(電源幹線に近い領域)
1712 グループ1の領域(電源幹線からグループ2の次に近い領域)
1713 グループ0の領域(電源幹線から遠い領域)
1800、1803 機能ブロック
1801 バイパスコンデンサ容量が大きいトランジスタサイズの大きいインバータ
1802 機能ブロック外への出力信号
1804 トランジスタサイズの小さいインバータ
1810、1813 機能ブロック
1811 バイパスコンデンサ容量が小さいトランジスタサイズの大きいインバータ
1812 ブロック外への出力信号
1814 トランジスタサイズの小さいインバータ
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a layout method and a design system for a semiconductor integrated circuit.
[0002]
[Prior art]
A method of disposing a capacitor between a power supply wiring and a ground wiring as a countermeasure against noise in a conventional semiconductor integrated circuit is disclosed in Japanese Patent Application No. 11-10010.
[0003]
FIG. 6 shows a flowchart of arranging a conventional capacitor, and the content of each step will be described below.
[0004]
In step ST11, a layout having a substrate contact on the ground wiring is generated.
[0005]
Next, in step ST12, the design rules of the semiconductor integrated circuit are fetched, and the power supply wiring
Is extracted.
[0006]
In step ST13, a technology for arranging the capacitors is calculated according to the design rule.
[0007]
In step ST14, a capacitor is arranged between the power supply wires based on the technology calculated in step ST13.
[0008]
FIG. 7 shows a layout in which conventional capacitors are arranged, 15 is a semiconductor substrate, 9 is a ground wiring, 8 is a power supply wiring, 10 is a polysilicon electrode, and has a capacitor constituted by a capacitance insulating film and an electrode. , And 16 circuit blocks. Reference numeral 17 denotes a circuit block automatically generated by the automatic layout device.
[0009]
Conventionally, a capacitor is connected to a power supply wiring and a ground wiring pattern on a substrate in a layout in which cell arrangement and wiring generation have been completed in a semiconductor integrated circuit layout process.
[0010]
[Problems to be solved by the invention]
However, since the conventional placement of bypass capacitors was performed on the power supply wiring and ground wiring after the layout was generated, the capacitors were placed in places with large power supply fluctuations that were the power supply noise source without modifying the layout. There was a problem that it was not possible.
[0011]
The present invention solves such a problem, and detects an element such as a transistor having a large power supply fluctuation before generating a layout of a semiconductor integrated circuit, and arranges a capacitor in a power supply of the element to efficiently perform the operation. An object of the present invention is to provide a layout method and a design system of a semiconductor integrated circuit that absorbs a power supply noise component.
[0012]
[Means for Solving the Problems]
2. The layout method for a semiconductor integrated circuit according to claim 1, wherein the layout of the semiconductor integrated circuit is automatically generated, wherein the circuit having N or more fan-outs by fan-in / fan-out check from the semiconductor integrated circuit information. And extracting the data extracted in the first step to the semiconductor integrated circuit information. To generate circuit information having a capacitor for the circuit having the N or more fanouts A second step, a third step of performing an automatic layout based on the circuit information generated based on the second step, and automatically generating a bypass capacitor in a power supply wiring of the layout of the semiconductor integrated circuit. It includes the fourth step.
[0013]
According to the layout method of a semiconductor integrated circuit according to the first aspect, a step of performing a fan-in / fan-out check from a design rule before generating a layout, extracting elements having N or more fan-outs, and adding a capacitor to the extracted elements. Before the layout of the semiconductor integrated circuit is generated, it is possible to detect an element such as a transistor having a large fluctuation in power supply, and to arrange a capacitor in the power supply of the element to efficiently absorb a power supply noise component. Can be.
[0014]
3. The layout method for a semiconductor integrated circuit according to claim 2, wherein the layout of the semiconductor integrated circuit is automatically generated, wherein the number of times that the state of the signal in a predetermined time width changes based on a specified test pattern. To determine the elements that have changed more than a predetermined number of times, and to the extracted elements regarding A first step of generating circuit information in which capacitors are arranged; a second step of performing automatic layout based on the circuit information generated based on the first step; It includes a third step of automatically placing a bypass capacitor.
[0015]
According to the semiconductor integrated circuit layout method of the second aspect, the same effect as that of the first aspect can be obtained.
[0016]
4. The design system for a semiconductor integrated circuit according to claim 3, wherein the design system for designing a semiconductor integrated circuit using a logic cell library having transistor size information includes a plurality of pieces of bypass capacitor information for one logic cell library. The logic cell library having the transistor size information is selected from the plurality of pieces of bypass capacitor information according to a toggle rate of the logic cell using the logic cell library having the bypass capacitor information. Replace with logic cell Do automatic layout It is characterized by the following.
[0017]
According to the semiconductor integrated circuit design system of the third aspect, since the bypass capacitor is built in the cell itself, which is the source of the noise, the bypass capacitor can be reliably placed at the source of the noise. Further, since the capacity of the bypass capacitor is selected according to the toggle rate, it is possible to realize an optimum bypass capacitor value for current consumption.
[0018]
According to a fourth aspect of the present invention, there is provided a layout method of a semiconductor integrated circuit, wherein a layout cell having a large bypass capacitor is grouped, a layout cell having a small bypass capacitor is grouped, and a layout cell having no bypass capacitor is grouped. Calculating the total width of the layout cells having a large bypass capacitor capacity, calculating the total width of the layout cells having a small bypass capacitor capacity, and calculating the total width of the layout cells having no bypass capacitor. Calculating the shape and position of a region in which a group of layout cells having a large bypass capacitor capacity is arranged using the sum of the widths, and placing the region near the power supply wiring. Using The shape and position of a region where a group of layout cells having a small pass capacitor is arranged are calculated, and the total of the widths is used to place the layout cell group near the power supply wiring next to the group of layout cells having a large bypass capacitor. And calculating the shape and position of a region in which a group of layout cells without bypass capacitors is to be arranged using the sum of the horizontal widths so as to be farthest from the power supply wiring.
[0019]
According to the layout method of the semiconductor integrated circuit according to the fourth aspect, a cell having a larger bypass capacitor capacity, that is, a cell consuming more power supply current is arranged closer to the power supply main line, so that the voltage drop of the power supply wiring due to the current flowing is reduced. Power noise can be suppressed by minimizing it.
[0020]
A layout method of a semiconductor integrated circuit according to a fifth aspect of the present invention uses a layout cell library having bypass capacitor information to extract layout cells having large bypass capacitor capacitances to be output to outside the block. Extracting the output load of the extracted layout cell; calculating the output capacity corresponding to the output load; and selecting the layout cell having a smaller bypass capacitor capacitance when the transistor size of the layout cell is larger than the output capacity. Replacement step.
[0021]
According to the layout method of the semiconductor integrated circuit according to the fifth aspect, by reviewing the output cells extending between the blocks, unnecessary bypass capacitors can be reduced, and the layout area can be optimized.
[0022]
BEST MODE FOR CARRYING OUT THE INVENTION
(Embodiment 1)
A layout method of the semiconductor integrated circuit according to the first embodiment of the present invention will be described.
[0023]
FIG. 1 is a flowchart showing a procedure for disposing a bypass capacitor in a design process of a semiconductor integrated circuit. Hereinafter, the steps of arranging the capacitors in the layout of the semiconductor integrated circuit will be described with reference to the flowchart of FIG.
[0024]
First, in step ST1, gate-level circuit information is generated. Next, in steps ST2 to ST5, a bypass capacitor is generated in the power supply wiring and the circuit block. At this time, the fan-out is calculated in step ST2 according to the design rule in step ST7, and the result is taken in step ST3 to generate circuit information having a capacitor. Next, in step ST4, a semiconductor layout is generated from the generated circuit information using an automatic layout tool. Then, in step ST5, a capacitor is generated in the power supply wiring. Finally, in step ST6, a large fan-out in the circuit block is obtained. A layout of elements and semiconductors in which capacitors are arranged on power supply wiring is generated.
[0025]
In step ST2, gate level information of the semiconductor integrated circuit is fetched, and based on the circuit information, how many output terminals of each element are connected to input terminals of other elements is determined using the design rule of step ST7. calculate.
[0026]
In step ST3, for an element having a fanout of N or more than the data calculated in step ST2, element data having a capacitor is input from step ST8, and the data of the element having a capacitor is replaced. Generate.
[0027]
FIG. 2 is a circuit diagram in which a capacitor is arranged on the element calculated in the above step.
[0028]
1 is an extracted element, 2 is an element connected to the extracted element, 3 is a power supply wiring, 4 is a ground wiring, 5 is a capacitor, and 6 is an element frame in which a capacitor is arranged in the extracted element. is there. Power is supplied to the element 1 from the power supply wiring 3 and the ground wiring 4. FIG. 3 is a layout diagram of a capacitor connected to the above-mentioned circuit, 7 is a cell frame of the capacitor, 8 is a power supply line, 9 is a ground line, 10 is a polysilicon electrode, 11 is a p-type diffusion layer, and 12 is an n-type. And has the same configuration as the MOS transistor. Therefore, it can be handled in common with the cell frame of the element to be arranged by the automatic layout tool, and the element and the capacitor can be easily joined. FIG. 4 shows a layout in which a capacitor is arranged in an element, 13 is a layout of an extracted element, and 14 is a state in which a capacitor is arranged so that it can be handled as one cell.
[0029]
Next, in step ST4, a layout pattern of the semiconductor integrated circuit is generated from the circuit information in step ST3 using an automatic layout generation tool. FIG. 5 shows the layout generated in ST3, and 17 is a circuit block automatically generated by the automatic layout device. Power is supplied from a power supply line 3 and a ground line 4.
[0030]
In step ST5, a capacitor is arranged on the power supply wiring in step ST6 from the layout pattern in which the arrangement of the capacitor has been completed for the element having a large fan-out. Note that a method disclosed in Japanese Patent Application No. 11-10010 can be used to generate a capacitor in the power supply wiring.
[0031]
(Embodiment 2)
FIG. 5 is a flowchart of a layout method according to the second embodiment of the present invention.
It is.
[0032]
In the present embodiment, in step ST9, a logic simulation is performed to calculate the number of element changes in a predetermined time.
[0033]
Next, in step ST10, a capacitor is arranged for an element having exceeded a predetermined number of changes.
[0034]
Thereafter, the layout of the semiconductor integrated circuit in which the capacitors are arranged can be generated by performing the same steps as those after step ST4 of the first embodiment.
[0035]
According to the embodiment of the present invention, a capacitor using a MOS transistor is arranged for a specific element, but it may be realized by a capacitor using wiring.
[0036]
(Embodiment 3)
A semiconductor integrated circuit design system according to a third embodiment of the present invention will be described with reference to FIGS.
[0037]
First, FIG. 8 is a flowchart showing a procedure of designing a semiconductor integrated circuit. The entire procedure of designing a semiconductor integrated circuit will be described with reference to FIG. In Step-801, the function description 811 is logically synthesized to generate a logical circuit containing transistor size information. In Step-802, a simulation is performed to obtain a toggle rate of each logic cell. In Step-803, the logic cell having the transistor size information is replaced with the logic cell having the bypass capacitor capacity information by using the toggle rate as a result of Step-802. In Step-804, a layout cell having a bypass capacitor corresponding to the logic cell having the bypass capacitor capacitance information is automatically arranged and wired. At this time, the automatic placement and routing is performed so that the cell having the larger bypass capacitor capacity is closer to the power supply main line. In Step-805, the wiring connection extending between the functional blocks is reviewed. In Step-806, a clock tree is created using a cell having a large bypass capacitor capacity.
[0038]
Next, steps from Step-801 to Step 806 in FIG. 8 will be described with reference to FIGS.
[0039]
FIG. 9 is a function description 811. FIG. 10 shows a logic circuit having transistor size information obtained by logically synthesizing the function description 811 of FIG. In Step-801 in FIG. 8, a logic circuit 812 having transistor size information in FIG. 10 is obtained from the function description 811 in FIG. 9 by logic synthesis.
[0040]
FIG. 11 shows an algorithm for replacing the logic cell having the bypass capacitor information of Step-803 with the simulation result of the toggle ratio calculation performed in Step-802 of FIG. FIG. 12 shows signals a [3], a [2], a [1], and a [3] obtained by adding one pulse of a reset signal reset as an input to the logic circuit of FIG. 10 and then adding a clock signal clk. 0] and the output waveforms of the respective logic cells 1042, 1041, 1032, 1031, 1023, 1022, 1021, 1013, 1012, 1011, 1002, and 1001. FIG. 13 is a table of a cell library having transistor size information and a cell library having bypass capacitor capacity information. In the vertical direction of FIG. 13, each logic cell is arranged according to its function and transistor size. As an example in the vertical direction of FIG. 13, logical cell libraries 1300, 1301, 1302, 1303, and 1304 having transistor size information will be described. Reference numeral 1300 denotes an inverter with a small transistor size, 1301 denotes an inverter with a large transistor size, 1302 denotes a D-flip-flop, 1303 denotes an exclusive OR, and 1304 denotes a logical product. In the horizontal direction in FIG. 13, one logic cell library having transistor size information is arranged in the order of the capacitance of the bypass capacitor. Here, the bypass capacitor is a capacitor provided at the power supply VDD and the ground VSS of each logic cell to reduce power supply noise. As an example in the horizontal direction of FIG. 13, inverters 1300, 1310, 1320, and 1330 with small transistor sizes will be described. The inverter 1300 having a small transistor size is a cell of an inverter having a small transistor size having normal transistor information. Inverters 1310, 1320, and 1330 each having a small transistor size are inverter cells having bypass capacitor capacity information. Of the inverter cells 1310, 1320, and 1330 having bypass capacitor capacity information, 1310 is an inverter cell without a bypass capacitor, and 1320 and 1330 are inverter cells with a bypass capacitor. Inverter cells 1320 and 1330 each having a bypass capacitor have an inverter cell 1320 having a small bypass capacitor capacity and an inverter cell 1330 having a large bypass capacitor capacity. The inverter 1300 having a small transistor size is named INV0. The inverters 1310, 1320, and 1330 each having the bypass capacitor capacity information and having a small transistor size have C0 according to the size of the bypass capacitor, C0 according to the capacity of the bypass capacitor, C1 according to the capacity of the bypass capacitor, and C1, C2 is added to the end of the cell having a large bypass capacitor capacity. The inverter 1310 with a small transistor size without a bypass capacitor is named INV0C0, the inverter 1320 with a small transistor size with a small bypass capacitor is named INV0C1, and the inverter 1330 with a small transistor size with a large bypass capacitor is named INV0C2. Similarly, other logic cells are named according to the bypass capacitor capacity as shown in the table of FIG. In addition, a layout cell library having a bypass capacitor corresponding to each cell library of FIG. 13 on a one-to-one basis is prepared and given the same name. FIG. 14 shows that each of the logic cells 1042, 1041, 1032, 1031, 1023, 1022, 1021, 1013, 1012, 1011, 1002, and 1001 in FIG. This is a logic circuit replaced with logic cells 1442, 1441, 1432, 1431, 1423, 1422, 1421, 1413, 1412, 1411, 1402, and 1401 each having capacity information.
[0041]
Step-802 and Step-803 in FIG. 8 will be described with reference to FIGS. In step 1101 of FIG. 11, a simulation is performed on the logic circuit of FIG. FIG. 12 is obtained as a waveform diagram of each signal in FIG. 10 and an output waveform diagram of each logic cell. Here, the number of times the level of each signal changes from the H level to the L level or from the L level to the H level is referred to as a toggle count. The ratio of the number of toggles of each signal or each logic cell output to the number of toggles of the clock is called a toggle rate. For example, as shown in FIG. 12, a signal a [0] having 16 toggles has a toggle rate of 50% with respect to 32 toggles of the clock CLK. In Step- 1102 of FIG. 11, a logic cell having a high toggle rate of 50% or more is extracted from the logic circuit of FIG. 10. This corresponds to the D-flip-flop 1001 and the inverters 1002, 1041, and 1042 in FIG. In step 1103 of FIG. 11, a large-capacity D-flip-flop 1332 and inverters 1330, 1331, and 1330 are selected from the cell library table having the bypass capacitor capacitance information of FIG. Replace with 1402, 1441 and 1442. In Step-1104 of FIG. 11, a logic cell having a toggle rate of 15% or less is extracted. The D-flip-flop 1031 and the exclusive OR 1032 correspond to the logic circuit in FIG. As Step-1105 in FIG. 11, the D-flip-flop 1312 and the exclusive OR 1313 without the bypass capacitor capacitance are selected from the cell library table having the bypass capacitor capacitance information in FIG. Replace with exclusive OR 1432. In Step-1106 of FIG. 11, the logic rate is less than 50% and the logic cell is greater than 15%, that is, the logic cell D-flip-flop 1011 which is not applicable in Step-1102 and Step-1104 of FIG. 1021, the exclusive ORs 1012 and 1022, and the logical products 1013 and 1023, the logical cell D-flip-flops 1322 and 1322, the exclusive ORs 1323 and 1323, and the logical products 1324 and 1324 of FIG. Select and replace with D-flip-flops 1411, 1421, exclusive ORs 1412, 1422, and logical products 1413, 1423 in FIG. As described above, FIG. 14 which is the logic circuit 813 having the bypass capacitor capacity information is obtained.
[0042]
FIG. 15 shows an entire chip in which four functional blocks are collectively subjected to automatic placement and routing. In FIG. 15, 1500 is a power supply wiring (main line), and 1510, 1520, 1530, and 1540 are functional blocks. FIG. 15 schematically shows boundaries between blocks, but cells are actually mixed in the entire chip. In the logic cell library having the bypass capacitor information shown in the table of FIG. 13, there is a layout cell having a bypass capacitor corresponding to one-to-one, and in Step-804 in which the layout A of 814 in FIG. 8 is obtained, the algorithm of FIG. Then, a layout cell group corresponding to the logic cells having the bypass capacitor information selected in Step-803 of FIG. In the automatic placement and routing of Step-804 in FIG. 8, since the power supply wiring through which the current flows becomes a noise generation source, the cells are arranged and wired so that the power supply wiring through which the large current flows becomes short. In Step-803 of FIG. 8, a cell having a high toggle rate, that is, a cell having a large bypass capacitor is selected for a cell in which a large current flows. Therefore, a layout cell having a large bypass capacitor is placed in a block 1511 near the power supply line 1500 in FIG. 15, a layout cell having a small bypass capacitor is placed in a block 1512 next to the block 1511 with respect to the power supply line 1500, A layout cell without a bypass capacitor is arranged for the block 1513 farthest from the power supply wiring 1500 (main line).
[0043]
FIG. 16 shows an algorithm of automatic placement and routing within the block of Step-804 in FIG. The layout cells having the bypass capacitors corresponding to the table of FIG. 13 are named with C2, C1, and C0 at the end of the name in the descending order of the capacitance of the bypass capacitors. In Step-1611, a cell having C2 in the name is set to group 2. In Step-1612, a cell having C1 in the name is set as a group 1. In Step-1613, the cell having C0 in the name is set to group 0. In Step-1621, the total width W2 of the cells having C2 in the name is calculated. At Step-1622, the total width W1 of the cells having the name C1 is calculated. In Step-1623, the total width W0 of the cells having the name C0 is calculated. In Step-1630, the block width is calculated by w = (W2 + W1 + W0) / N. N is the number of vertically arranged cells during automatic placement and routing. In Step-1631, the width of the group 2 is calculated by w2 = W2 / N. In Step-1632, the width of the group 1 is calculated by w1 = W1 / N. In Step-1633, the width of the group 0 is calculated by w0 = W0 / N. In Step-1640, the height of the block is calculated by h = H * N. H is the height of the layout cell. FIG. 17 is a diagram showing each area of group 2 of 711, group 1 of 712, and group 0 of 713. As shown in FIG. 17, the area of group 2 is designated as location (X2, Y2) = (0, 0), width w2, and height H * N in Step-1651 in FIG. In Step-1652, the area of group 1 is designated as location (X1, Y1) = (w2, 0), width w1, and height H * N. In Step-1653, the area of group 0 is designated as location (X0, Y0) = (w2 + w1, 0), width w0, and height H * N. In Step-1660, cells are tightly packed in each area, and the automatic placement and routing is completed.
[0044]
FIG. 18 is a diagram of a connection between blocks, and is a diagram of a connection between blocks that requires a review of a cell that outputs a signal extending between blocks. A layout cell 1801 having a large transistor size is selected by default as a layout cell for outputting a signal 1802 output from the block 1800 in FIG. 18 to another block 1803 in the automatic placement and routing in Step-804 in FIG. In the block 1800 of FIG. 18, it is assumed that the inverter 1801 has a large bypass capacitor capacity, and the signal 1802 is connected to the inverter 1804 of the block 1803 having a small transistor size and a short distance. It is. At this time, since the sum of the wiring capacitance and the gate capacitance is small, the power supply current of the inverter 1801 decreases. Therefore, the bypass capacitor of inverter 1801 may be small. In Step-805 in FIG. 8, the inverter 1801 is replaced with the inverter 1811 to reduce the capacitance of the bypass capacitor as shown in FIG. 18B, and the layout B of 815 in FIG. 8 is obtained.
[0045]
FIG. 19 is a diagram showing the algorithm of Step-805 in FIG. In Step-1901, an output signal outside the block is extracted. In Step-1902, one layout cell that outputs the signal extracted in Step-1901 is extracted. In Step-1903, the magnitude of the bypass capacitor capacitance of the cell extracted in Step-1902 is checked. If it is not larger, the process proceeds to Step-1908, and if it is larger, the process proceeds to Step-1904. In Step-1904, the sum of the signal wiring capacitance and the gate capacitance is extracted. In Step-1905, the rank is calculated again. Here, the rank refers to a transistor size according to a required output capability based on a sum of a wiring capacitance and a gate capacitance, which are output loads. In Step-1906, the current rank is compared. When the recalculated rank is the same as the current rank, the process proceeds to Step-1908. If the recalculated rank is smaller than the current rank, the process proceeds to Step-1907. In Step-1907, the layout cell is replaced with a layout cell having a small bypass capacitor capacity. In Step-1908, it is determined whether or not all the layout cells that output the output signals to the outside of the block extracted in Step-1901 have been processed. If all the processes have been performed, the process proceeds to Step-1909 and ends. If not, the process returns to Step-1902. In FIG. 18, the algorithm of FIG. 19 is used. In Step-1901, a signal 1802 is extracted. In Step-1902, an inverter 1801 having a large bypass capacitor capacity and a large transistor size is extracted. Since the capacitance of the bypass capacitor is large in Step-1903, it becomes high, and proceeds to Step-1904. When the total of the wiring capacitance and the gate capacitance is calculated in Step-1904 and the rank is calculated again in Step-1905, the rank becomes smaller than the current rank. In Step-1906, it is smaller than the current rank, and in Step-1907, the inverter 1801 having a large bypass capacitor is replaced with the inverter 1811 having a small bypass capacitor. If it is determined in Step-1908 that all the processes have been completed, the process ends in Step-1909.
[0046]
In the creation of the clock tree of Step-806 for generating the layout C of 816 in FIG. 8, first, a clock tree is created using an existing algorithm. Further, after the clock tree is created, since the layout cells of the clock tree have a high toggle rate, cells having a large capacity are allocated.
[0047]
As described above, in the third embodiment of the present invention, the toggle rate of Step-1102 in FIG. 11 is set to 50%, but another number may be used. Also, the toggle rate of 15% in Step-1104 in FIG. 11 may be set to another number in the same manner. In addition, the bypass capacitor capacity is divided into three stages, that is, no bypass capacitor, a small bypass capacitor capacity, and a large bypass capacitor capacity. The layout method according to claims 4 and 5 of the second embodiment can be applied to the first and second embodiments.
[0048]
【The invention's effect】
According to the layout method of a semiconductor integrated circuit according to the first aspect, a step of performing a fan-in / fan-out check from a design rule before generating a layout, extracting elements having N or more fan-outs, and adding a capacitor to the extracted elements. Before the layout of the semiconductor integrated circuit is generated, it is possible to detect an element such as a transistor having a large fluctuation in power supply, and to arrange a capacitor in the power supply of the element to efficiently absorb a power supply noise component. Can be.
[0049]
According to the semiconductor integrated circuit layout method of the second aspect, the same effect as that of the first aspect can be obtained.
[0050]
According to the semiconductor integrated circuit design system of the third aspect, since the bypass capacitor is built in the cell itself, which is the source of the noise, the bypass capacitor can be reliably placed at the source of the noise. Further, since the capacity of the bypass capacitor is selected according to the toggle rate, it is possible to realize an optimum bypass capacitor value for current consumption.
[0051]
According to the layout method of the semiconductor integrated circuit according to the fourth aspect, a cell having a larger bypass capacitor capacity, that is, a cell consuming more power supply current is arranged closer to the power supply main line, so that the voltage drop of the power supply wiring due to the current flowing is reduced. Power noise can be suppressed by minimizing it.
[0052]
According to the layout method of the semiconductor integrated circuit according to the fifth aspect, by reviewing the output cells extending between the blocks, unnecessary bypass capacitors can be reduced, and the layout area can be optimized.
[Brief description of the drawings]
FIG. 1 is a flowchart showing a procedure for arranging capacitors according to a first embodiment of the present invention.
FIG. 2 is a circuit diagram in which the arrangement of capacitors for elements having a large fan-out has been completed.
FIG. 3 is a layout diagram of a capacitor arranged in an element.
FIG. 4 is a layout diagram in which a capacitor is arranged in an element having a large fan-out.
FIG. 5 is a flowchart illustrating a procedure for arranging capacitors according to the second embodiment of the present invention.
FIG. 6 is a flowchart illustrating a conventional arrangement of capacitors.
FIG. 7 shows a layout in which capacitors are arranged in a conventional semiconductor integrated circuit.
FIG. 8 is a flowchart showing a design procedure according to the third embodiment of the present invention.
FIG. 9 is a functional description of a 4-bit counter used in the third embodiment of the present invention.
FIG. 10 is a logic circuit according to a third embodiment of the present invention, in which the function description of the 4-bit counter in FIG. 9 is obtained by logic synthesis in Step-801 in FIG.
FIG. 11 is a flowchart showing an algorithm of Step-802 and Step-803 in FIG.
12 shows waveforms of signals simulating the logic circuit of FIG. 10 and output waveforms of each logic cell.
FIG. 13 is a table of a logic cell library having transistor size information and a logic cell library having bypass capacitor capacity information.
FIG. 14 is a logic circuit diagram using a logic cell library having bypass capacitor capacity information.
FIG. 15 is a diagram of a one-chip layout.
FIG. 16 shows an algorithm of automatic placement and routing in Step-804 of FIG. 8 for a block.
FIG. 17 is an explanatory diagram of the automatic placement and routing in FIG. 16;
FIG. 18 is a diagram of connections between blocks.
FIG. 19 is an algorithm for reviewing cells for connection between blocks in Step-805 of FIG. 8;
[Explanation of symbols]
1 element
2 elements
3 power supply
4 Ground
5 Capacitor
6 basic cells
7 Basic cell
8 Power supply wiring
9 Ground wiring
10 Polysilicon electrode
11 Contact hole
12 Contact hole
13 Basic cell
14 Basic cell
15 Semiconductor substrate
16 Substrate contact
17 Circuit block
811 Function description
812 Logic circuit having transistor information
813 Logic circuit having bypass capacitor capacitance information
814 Layout A
815 Layout B
816 Layout C
1001, 1011, 1021, 1031 D flip-flop
1002, 1042 Inverter with small transistor size
1012, 1022, 1032 Exclusive OR
1013, 1023 logical product
1300, 1310, 1320, 1330 Inverter with small transistor size
1301, 1311, 1321, 1331 Inverter with large transistor size
1302, 1312, 1322, 1332 D-flip-flop
1303, 1313, 1323, 1333 Exclusive OR
1304, 1314, 1324, 1334 AND
1310, 1311, 1312, 1313, 1314 Logic cell without bypass capacitor
1320, 1321, 1322, 1323, 1324 Logic cells 1330, 1331, 1332, 1333, 1334 with small bypass capacitor capacity Logic cells with large bypass capacitor capacity
1401 D-flip-flop with large bypass capacitor
1411, 1421 D-flip-flop with small bypass capacitor
1431 D-flip-flop without bypass capacitor
1402, 1442 Inverter with large transistor size and large transistor size
1412, 1422 Exclusive OR with small capacity of bypass capacitor
1432 Exclusive OR without bypass capacitor
1413, 1423 Logical product with small bypass capacitor capacity
1500 power supply mains
1510, 1520, 1530, 1540 Function block
1511 Area close to main power line (area of group 2)
1512 Area next to 1511 from power supply main line (area of group 1)
1513 Area far from power supply main line (area of group 0)
1711 Group 2 area (area near power supply mains)
1712 Group 1 area (area next to Group 2 from power supply main line)
1713 Group 0 area (area far from the main power line)
1800, 1803 Function block
1801 Large inverter transistor with large bypass capacitor
1802 Output signal to outside function block
1804 Inverter with small transistor size
1810, 1813 Function block
1811 Inverter with large transistor size with small bypass capacitor
1812 Output signal outside block
1814 Inverter with small transistor size

Claims (5)

自動的に半導体集積回路のレイアウトを生成する方法であって、半導体集積回路情報からファンイン・ファンアウトチェックによりN個以上のファンアウトを有する回路を抽出する第1のステップと、この第1のステップにより抽出されたデータを前記半導体集積回路情報に追加して前記N個以上のファンアウトを有する回路に関してコンデンサを有する回路情報を生成する第2のステップと、この第2のステップに基づいて生成された回路情報より自動レイアウトを実施する第3のステップと、前記半導体集積回路のレイアウトの電源配線に自動的にバイパスコンデンサを生成する第4のステップを含む半導体集積回路のレイアウト方法。A method for automatically generating a layout of a semiconductor integrated circuit, comprising: a first step of extracting a circuit having N or more fan-outs from semiconductor integrated circuit information by a fan-in / fan-out check; A second step of adding the data extracted by the step to the semiconductor integrated circuit information to generate circuit information having a capacitor for the circuit having the N or more fanouts, and generating the circuit information based on the second step; A semiconductor integrated circuit layout method including a third step of performing an automatic layout based on the obtained circuit information and a fourth step of automatically generating a bypass capacitor in a power supply wiring of the semiconductor integrated circuit layout. 自動的に半導体集積回路のレイアウトを生成する方法であって、ある指定されたテストパターンに基づいて所定の時間幅における信号の状態が変化した回数を求め所定の回数を超えて変化した素子を抽出し、前記抽出された素子に関してコンデンサを配置した回路情報を生成する第1のステップと、この第1のステップに基づいて生成された回路情報より自動レイアウトを実施する第2のステップと、前記半導体集積回路のレイアウトの電源配線に自動的にバイパスコンデンサを配置する第3のステップを含む半導体集積回路のレイアウト方法。A method for automatically generating a layout of a semiconductor integrated circuit, wherein the number of changes in the state of a signal within a predetermined time width is determined based on a specified test pattern, and elements that have changed more than the predetermined number of times are extracted. and, a first step of generating circuit information of arranging the capacitor related to the extracted element, a second step of carrying out the automatic layout from circuit information generated on the basis of the first step, A semiconductor integrated circuit layout method including a third step of automatically arranging a bypass capacitor on a power supply wiring of the semiconductor integrated circuit layout. トランジスタサイズ情報を有する論理セルライブラリを用いた半導体集積回路を設計する設計システムであって、前記論理セルライブラリ1つに対して複数のバイパスコンデンサ情報を有する論理セルライブラリを用いて、前記トランジスタサイズ情報を有する論理セルを、その論理セルのトグル率に応じて前記複数のバイパスコンデンサ情報のうちから1つを選択して、前記バイパスコンデンサ情報を有する論理セルで置き換え、自動レイアウトを行うことを特徴とする半導体集積回路の設計システム。What is claimed is: 1. A design system for designing a semiconductor integrated circuit using a logic cell library having transistor size information, comprising: a logic cell library having a plurality of bypass capacitor information for one logic cell library; Automatically selecting one of the plurality of pieces of bypass capacitor information according to a toggle rate of the logic cell, replacing the logic cell with the logic cell having the bypass capacitor information, and performing automatic layout. Semiconductor integrated circuit design system. バイパスコンデンサ容量の大きいレイアウトセルをグループ化するステップと、バイパスコンデンサ容量の小さいレイアウトセルをクループ化するステップと、バイパスコンデンサのないレイアウトセルをグループ化するステップと、バイパスコンデンサ容量が大きいレイアウトセルの横幅の合計を算出するステップと、バイパスコンデンサ容量が小さいレイアウトセルの横幅の合計を算出するステップと、バイパスコンデンサのないレイアウトセルの横幅の合計を算出するステップと、前記横幅の合計を用いてバイパスコンデンサ容量が大きいレイアウトセルのグループを配置する領域の形状と位置とを算出して電源配線の近くに置くようにするステップと、前記横幅の合計を用いてバイパスコンデンサ容量が小さいレイアウトセルのグループを配置する領域の形状と位置とを算出して前記横幅の合計を用いてバイパスコンデンサ容量が大きい前記レイアウトセルのグループの次に前記電源配線の近くに置くようにするステップと、前記横幅の合計を用いてバイパスコンデンサのないレイアウトセルのグループを配置する領域の形状と位置とを算出して前記電源配線から最も遠くなるようにするステップとを含む半導体集積回路のレイアウト方法。Grouping layout cells having a large bypass capacitor capacity, grouping layout cells having a small bypass capacitor capacity, grouping layout cells having no bypass capacitor, and lateral widths of layout cells having a large bypass capacitor capacity Calculating the sum of the widths of the layout cells having a small bypass capacitor capacity; calculating the sum of the widths of the layout cells having no bypass capacitor; and calculating the bypass capacitor using the sum of the widths. Calculating the shape and position of a region in which a group of layout cells having a large capacity is to be arranged so as to be located close to the power supply wiring; Calculating the shape and position of a region in which a plurality of layout cells are arranged, and using the sum of the widths to place them next to the power supply wiring next to the group of layout cells having a large bypass capacitor capacitance; Calculating the shape and position of a region in which a group of layout cells without bypass capacitors is arranged using the sum to make the region farthest from the power supply wiring. バイパスコンデンサ情報を有するレイアウトセルライブラリを用いて、ブロック外へ出力するレイアウトセルであってバイパスコンデンサ容量が大きいものを抽出するステップと、このステップにより抽出した前記レイアウトセルの出力負荷を抽出するステップと、前記出力負荷に見合った出力能力を算出するステップと、前記レイアウトセルのトランジスタサイズが前記出力能力より大きい場合前記バイパスコンデンサ容量が小さいレイアウトセルで置き換えるステップとを含む半導体集積回路のレイアウト方法。Using a layout cell library having bypass capacitor information to extract layout cells that output outside the block and have a large bypass capacitor capacity; and extracting the output load of the layout cells extracted by this step. Calculating the output capability corresponding to the output load; and replacing the layout cell with a layout cell having a smaller bypass capacitor when the transistor size of the layout cell is larger than the output capability.
JP2000381448A 2000-04-06 2000-12-15 Layout method and design system for semiconductor integrated circuit Expired - Fee Related JP3544356B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000381448A JP3544356B2 (en) 2000-04-06 2000-12-15 Layout method and design system for semiconductor integrated circuit

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000104654 2000-04-06
JP2000-104654 2000-04-06
JP2000381448A JP3544356B2 (en) 2000-04-06 2000-12-15 Layout method and design system for semiconductor integrated circuit

Publications (2)

Publication Number Publication Date
JP2001351985A JP2001351985A (en) 2001-12-21
JP3544356B2 true JP3544356B2 (en) 2004-07-21

Family

ID=26589573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000381448A Expired - Fee Related JP3544356B2 (en) 2000-04-06 2000-12-15 Layout method and design system for semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JP3544356B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7139989B2 (en) 2002-06-27 2006-11-21 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit designing apparatus, semiconductor integrated circuit designing method, semiconductor integrated circuit manufacturing method, and readable recording media
JP2004070721A (en) 2002-08-07 2004-03-04 Renesas Technology Corp Automatic arrangement and wiring device
JP2005150639A (en) * 2003-11-19 2005-06-09 Sanyo Electric Co Ltd Method for designing semiconductor integrated device, designed device, and design program
JP2005183758A (en) * 2003-12-22 2005-07-07 Nec Micro Systems Ltd Layout design method for semiconductor integrated device, and computer program
JP4220932B2 (en) 2004-05-11 2009-02-04 パナソニック株式会社 Semiconductor integrated circuit design support method
JP4734981B2 (en) 2005-03-17 2011-07-27 日本電気株式会社 Layout design method and design apparatus for semiconductor integrated circuit
JP5224642B2 (en) * 2005-11-21 2013-07-03 富士通セミコンダクター株式会社 Integrated circuit layout method and computer program
JP4967534B2 (en) * 2006-08-28 2012-07-04 富士通セミコンダクター株式会社 Semiconductor device layout method and layout program

Also Published As

Publication number Publication date
JP2001351985A (en) 2001-12-21

Similar Documents

Publication Publication Date Title
US10268793B2 (en) System and method for designing cell rows
US7600208B1 (en) Automatic placement of decoupling capacitors
Zhao et al. Pre-bond testable low-power clock tree design for 3D stacked ICs
JP2006040962A (en) Arranging method of decoupling capacitance
TWI718786B (en) Integrated circuit device, method for integrated circuit co-design and method for integrated circuit simulation
JP3544356B2 (en) Layout method and design system for semiconductor integrated circuit
US20240037309A1 (en) Multiplexer
TW202002166A (en) Integrated device and method of forming the same
Chen et al. A new architecture for power network in 3D IC
Gao et al. Application of cell-aware test on an advanced 3nm CMOS technology library
TW202247410A (en) Integrated circuit including standard cells
TWI472941B (en) Method for input/output design of chip
US11392743B2 (en) Multiplexer
US20190384869A1 (en) Integrated system of pdn implementation and digital co-synthesis
US7260804B1 (en) Method for circuit block routing based on switching activity
Sarhan et al. 3DCoB: A new design approach for Monolithic 3D Integrated Circuits
Lee et al. Analysis and reduction of on-chip inductance effects in power supply grids
US20070033565A1 (en) Basic cell of semiconductor integrated circuit and layout method thereof
Wang Reliable Design of Three-Dimensional Integrated Circuits
US20200201954A1 (en) Method of designing a layout for a semiconductor integrated circuit
JP4186890B2 (en) Semiconductor integrated circuit element arrangement system, element arrangement method, and program
JP3130891B2 (en) Wiring method
Roy et al. 3-D IC: An Overview of Technologies, Design Methodology, and Test Strategies
KR20230029541A (en) Full die and partial die tape outs from common design
JP2005183758A (en) Layout design method for semiconductor integrated device, and computer program

Legal Events

Date Code Title Description
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: 20040330

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040401

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

Free format text: PAYMENT UNTIL: 20080416

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090416

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100416

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110416

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120416

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees