(57)【特許請求の範囲】
【請求項１】
セルライブラリデータを用いた半導体集積回路のレイアウト方法であって、
（Ａ）複数の第１のセルを前記第１のセルの孤立ゲートパタンの長手方向に垂直な第１方向に配置するステップと、
（Ｂ）前記複数の第１のセルのうち、所定の第１のセル内の１つの孤立ゲートパタンを基準ゲートとして指定するステップと、
（Ｃ）前記複数の第１のセルに対し、前記第１方向に垂直な第２方向に隣接する位置に、複数の第２セルを配置するステップと、
を具備し、
前記（Ｃ）ステップは、
前記基準ゲート内の基準点から所定の距離のエリア内において、前記第１のセル内の孤立ゲートパタン数と前記第２のセル内の孤立ゲートパタン数の総和が予め設定された制約条件に適合する数よりも大きい場合には、前記エリア内における前記第２のセルの孤立ゲートパタン数を減らすステップと、
前記エリア内において、前記第１のセル内の孤立ゲートパタン数と前記第２のセル内の孤立ゲートパタン数の総和が予め設定された制約条件に適合する数よりも小さい場合には、前記エリア内における前記第２のセルの孤立ゲートパタン数を増やすステップと
を備える
半導体集積回路のレイアウト方法。
【請求項２】
セルライブラリデータを用いた半導体集積回路のレイアウト方法であって、
（Ａ）複数の第１のセルを前記第１のセルの孤立ゲートパタンの長手方向に垂直な第１方向に配置するステップと、
（Ｂ）前記複数の第１のセルのうち、所定の第１のセル内の１つの孤立ゲートパタンを基準ゲートとして指定するステップと、
（Ｃ）前記複数の第１のセルに対し前記第１方向に垂直な第２方向に隣接する位置に複数の第２セルを配置するステップと
を具備し、
前記（Ｃ）ステップは、前記基準ゲート内の基準点から所定の距離のエリア内に存在する、前記第１のセル内の孤立ゲートパタン数と前記第２のセル内の孤立ゲートパタン数の総和が、予め設定された制約条件に適合する数となるように、複数のセルの中から前記第２セルを選択配置するステップを備える半導体集積回路のレイアウト方法。
【請求項３】
請求項１又は２に記載の半導体集積回路のレイアウト方法において、
前記エリアが、矩形、又は、円形である
半導体集積回路のレイアウト方法。
【請求項４】
請求項１又は２に記載の半導体集積回路のレイアウト方法において、
前記制約条件に適合する数が、複数である
半導体集積回路のレイアウト方法。
【請求項５】
請求項１又は２に記載の半導体集積回路のレイアウト方法において、
前記第１のセル及び前記第２のセルの孤立ゲートパタン数は、孤立ゲートパタンの長手方向の幅が最小幅である場合を１としてカウントされ、孤立ゲートパタンの長手方向の幅が前記最小幅の略２倍である場合を２としてカウントされる
半導体集積回路のレイアウト方法。
【請求項６】
請求項１から５のいずれか１項に記載の半導体集積回路のレイアウト方法において、
（Ｄ）セル内のゲートのレイアウト座標を取得するステップを更に具備し、
前記（Ｃ）ステップは、
前記ゲートのレイアウト座標を参照して、前記エリアを決定するステップと、前記エリア内に存在する孤立ゲートパタン数が予め設定された制約条件に適合するように、前記所定の第１のセルに対して前記第２方向に隣接して配置するセルを決定するステップと、
を備える半導体集積回路のレイアウト方法。
【請求項７】
請求項６に記載の半導体集積回路のレイアウト方法において、
前記セルライブラリデータは前記ゲートのレイアウト座標を含み、
前記（Ｄ）ステップは、前記セルライブラリデータから前記ゲートのレイアウト座標を抽出するステップを備える
半導体集積回路のレイアウト方法。
【請求項８】
請求項６に記載の半導体集積回路のレイアウト方法において、
前記（Ｄ）ステップは、前記拡散層のレイアウト座標とポリシリコン層のレイアウト座標とを用いて、前記ゲートのレイアウト座標を算出するステップを更に備える
半導体集積回路のレイアウト方法。
【請求項９】
請求項８に記載の半導体集積回路のレイアウト方法において、
前記セルライブラリデータは、前記拡散層のレイアウト座標と前記ポリシリコン層のレイアウト座標を含み、
前記（Ｄ）ステップは、前記セルライブラリデータから前記拡散層のレイアウト座標と前記ポリシリコン層のレイアウト座標とを抽出するステップを備える
半導体集積回路のレイアウト方法。
【請求項１０】
請求項１から９いずれか１項に記載の半導体集積回路のレイアウト方法において、
前記（Ｂ）ステップは、前記所定の第１のセル内において、セル枠に隣接して配置されたゲートを前記基準ゲートとして選択するステップを備える
半導体集積回路のレイアウト方法。
【請求項１１】
請求項１０に記載の半導体集積回路のレイアウト方法において、
前記（Ｂ）ステップは、前記所定の第１のセル内の角に配置されたゲートを前記基準ゲートとして選択するステップを備える
半導体集積回路のレイアウト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路のレイアウト方法、レイアウトプログラム、及びレイアウト装置に関し、特にライブラリデータを用いてセルベースの半導体集積回路のレイアウトを行う半導体集積回路のレイアウト方法、レイアウトプログラム、及びレイアウト装置に関する。
【背景技術】
【０００２】
セルベースＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）は特定用途向け半導体集積回路（ＡＳＩＣ：  Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）をはじめ、高集積、高性能が要求されるマイクロプロセサやＡＳＳＰ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｓｔａｎｄａｒｄ  Ｐｒｏｄｕｃｔ）等のＬＳＩに好適に利用されている。セルベースＩＣは、半導体メーカーが提供するセルライブラリを用いて、ユーザーが設計する独自回路を組み合わせることにより設計される。セルライブラリには、基本回路を搭載したプリミティブセルから、ＣＰＵやメモリ等のマクロを搭載したマクロセルまで様々な種類や大きさのセルが用意される。このようなセルを配置配線ツールによって半導体チップ上に配置・配線して回路設計を行うため、設計時間や設計コストを削減することができる。又、ＣＰＵ等のレイアウトをマクロセルとしてそのまま組み込むことができるため、システムＬＳＩの作成が容易となる。
【０００３】
一方、ＬＳＩにおける配線幅の微細化に伴い、光近接効果やエッチング量のバラツキによるゲートサイズのバラツキが問題になっている。ゲートの周辺領域におけるゲート密度が場所によって異なる場合、その場所毎のゲートパターンは、光近接効果によって異なった形状となる。又、パターン密度に応じてエッチング液の浸透度が異なるため、ゲートの密度が異なる場所では、エッチング後のゲートサイズやゲート形状にバラツキが生じてしまう。ゲートサイズのバラツキに伴うトランジスタの特性バラツキは、製品性能を劣化させ、歩留まり低下の原因の１つとなっている。このため、通常、レイアウト設計フェーズにおいて、光近接効果を考慮してマスクパターンを補正するＯＰＣ（Ｏｐｔｉｃａｌ  Ｐｒｏｘｉｍｉｔｙ  Ｃｏｒｒｅｃｔｉｏｎ）処理が行われる。ＯＰＣ処理では、光近接効果によるゲートサイズの変動を考慮して、補正用のパターンが追加されたり、ゲートサイズが補正される。
【０００４】
ＬＳＩの配線幅が更に微細化されると、ＯＰＣ処理に対し更に高精度な補正が求められるようになってきた。このため、ＯＰＣ処理の演算量が増大し、処理時間が長大化してきた。このような問題を解決する技術が、例えば特開２００４−２８８６８５に記載されている（特許文献１参照）。
【０００５】
特許文献１に記載の半導体集積回路のレイアウト設計方法は、基本セルの配置禁止領域の領域境界に隣接してダミーポリシリコン入りフィルセルを配置することでステップを備える。これにより基本セルに隣接する領域には、基本セル又はダミーポリシリコン入りフィルセルが必ず配置され、基本セル内のゲートパタンと、他のセル（ダミーポリシリコン入りフィルセルを含む）におけるゲートパタン（又はポリシリコン配線パタン）との距離が一定の範囲に収まる。これにより、光近接効果やエッチングによるゲートバラツキを抑制することができる。
【特許文献１】特開２００４−２８８６８５
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来技術では、光近接効果を抑制するためのダミーポリシリコン入りフィルセルは、ゲート方向に垂直な方向（列方向）の基本セルに隣接するように配置される。このため、基本セル内のゲートパタンと列方向に隣接するセル内のポリシリコンゲートパタンとの距離は、一定の範囲内に収まるようにレイアウトされる。
【０００７】
しかし、特許文献１に記載の方法では、基本セルに対し行方向（ゲート方向）に隣接するセル内のゲートパタンとの距離が考慮されていない。このため、異なるセル行が隣接する境界付近では、位置によってゲートパタンの距離やデータ密度（ゲート長、ゲート幅、ゲート本数を考慮したゲートの面積密度）が異なる値を示す場合がある。以下、図１を参照して、詳細に説明する。
【０００８】
図１は、従来技術による方法によってセルが配置された半導体チップのレイアウトを示す平面図である。ここでは、一例として、図５に示す半導体チップ１上における行Ｌｉに複数のセル１００が配列され、これと隣接する行Ｌｉ−１に、セル１１０、１２０、１３０が配列されているものとする。ここで、ゲートの延線方向を列方向（Ｙ方向）、ゲートと垂直な方向を行方向（Ｘ方向）とする。
【０００９】
通常、セルの配置には、面積コストや配線性が考慮される。しかし、Ｙ方向に隣接するセルの境界付近におけるゲートのデータ密度は、考慮されない。このため、Ｙ方向に隣接するセルの境界付近であっても、位置によってゲートのデータ密度の密な領域と粗い領域とが現れることがある。
【００１０】
例えば、図１を参照して、行Ｌｉ−１に隣接する行Ｌｉのセル１００内の所定のゲートに着目し、その近傍の領域におけるゲートのデータ密度を比較する。ここで、セル１１０に隣接するセル１００の着目ゲートの周辺をエリアＡ０、セル１２０に隣接するセル１００の着目ゲートの周辺をエリアＢ０、セル１３０に隣接するセル１００の着目ゲートの周辺をエリアＣ０とする。エリアＢ０におけるゲートのデータ密度を基準密度とした場合、列方向（Ｙ方向）に配置されるセル内のゲート構造は考慮されていないため、エリアＡ０、エリアＣ０のデータ密度は、基準密度と異なる場合がある。ここではエリアＡ０のデータ密度は基準密度より密となり、エリアＣ０のデータ密度は基準密度より粗くなっている。
【００１１】
このように、列方向（Ｙ方向）に隣接するセル内の境界付近におけるゲート密度を考慮しないでレイアウトを行うと、境界付近に設けられたゲートの周辺領域のデータ密度は不均一になる場合がある。この場合、ゲート密度の異なる場所では、光近接効果によってゲートパターンの形状にバラツキが生じる。又、ゲートの密度に応じてエッチング量が変化するため、ゲート密度が異なる場所ではエッチング後のゲートサイズやゲート形状にバラツキが生じる。このため、従来技術によるレイアウト方法では、列方向に隣接するセル間の境界付近に設けられたトランジスタの駆動特性がばらつき、製品性能が劣化してしまう。
【課題を解決するための手段】
【００１２】
以下に、［発明を実施するための最良の形態］で使用される番号・符号を括弧付きで用いて、［課題を解決するための手段］を説明する。この番号・符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］の記載との対応関係を明らかにするために付加されたものであるが、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１３】
本発明による半導体集積回路の自動レイアウト装置（１０）は、セルライブラリデータ（２１１）が格納される記憶装置（１３）と、セルライブラリデータ（２１１）を用いて、ゲート（１０２）に垂直な第１方向（Ｘ方向）に複数のセルを配置する配置配線ツール（２５２）とを具備する。配置配線ツール（２５２）は、配置した複数のセルのうち、所定のセル（１００）内のゲートを基準ゲート（１１１）として指定する基準ゲート指定部（３２）と、基準ゲート（１１１）から所定の距離のエリア（６００）内に存在するゲート（１０２）の数が、予め設定された制約条件に適合する数となるように、既に配置された複数のセルに対して第１方向（Ｘ方向）に垂直な第２方向（Ｙ方向）に隣接するセルを配置するレイアウト部（３５）とを備える。
【００１４】
これにより、基準ゲート（１１１）として指定されたゲート（１０２）の周辺領域に存在するゲート（１０２）のデータ密度は、制約条件（２３）によって規定された値となる。データ密度が制約条件（２３）によって規定された値となる領域は、データ密度が均一となるため、光近接効果によるパタンのバラツキや、エッチング後のゲートサイズ（ゲート形状）のバラツキが低減される。
【００１５】
又、配置配線ツール（２５２）は、セル内のゲートのレイアウト座標を取得するレイアウト座標抽出部（３１）を更に備えることが好ましい。この場合、レイアウト部（３５）は、配置するセル内のゲート（１０２）のレイアウト座標を参照して、エリア（６００）を決定することができる。又、配置配線ツール（２５２）は、ゲート（１０２）
を参照してエリア内に存在するゲート（１０２）の数を把握し、予め設定された制約条件に適合するように、所定のセル（１００）に対して第２方向に隣接して配置するセルを決定する。
【００１６】
第１の態様に係るセルライブラリデータ（２１２）はゲート（１０２）のレイアウト座標を含む。この場合、レイアウト座標抽出部（３１）は、セルライブラリデータ（２１２）からゲート（１０２）のレイアウト座標を抽出する。
【００１７】
又、レイアウト座標抽出部（３１）は、拡散層のレイアウト座標と前記ポリシリコン層のレイアウト座標とを用いて、ゲート（１０２）のレイアウト座標を算出することが好ましい。
【００１８】
第２の態様に係るセルライブラリデータ（２１２）は、拡散層（１０３）のレイアウト座標とポリシリコン層（１０１）のレイアウト座標を含む。この場合、レイアウト座標抽出部（３１）は、セルライブラリデータ（２１２）から拡散層（１０３）のレイアウト座標とポリシリコン層のレイアウト座標とを抽出し、これらを用いてゲート（１０２）のレイアウト座標を算出する。
【発明の効果】
【００１９】
本発明による半導体集積回路のレイアウト方法、レイアウトプログラム、及びレイアウト装置によれば、ゲートのデータ密度に起因する半導体集積回路内のトランジスタの特性バラツキを抑制することができる。
【発明を実施するための最良の形態】
【００２０】
以下、添付図面を参照して、本発明による半導体集積回路の自動レイアウト装置及びプログラム、並びに、自動レイアウト用のセルライブラリデータ生成装置及びプログラムの実施の形態を説明する。本実施の形態では、図５に示すセルベースＩＣ（半導体チップ１）の設計を行う半導体回路設計支援装置を一例に説明する。
【００２１】
１．第１の実施の形態
（構成）
図２及び図３を参照して、本発明による半導体集積回路の自動レイアウト装置１０（レイアウト装置１０）の第１の実施の形態における構成を説明する。図２は、本発明による自動レイアウト装置１０の第１の実施の形態における構成図である。自動レイアウト装置１０は、バス１６を介して相互に接続されるＣＰＵ１１と、ＲＡＭ１２と、記憶装置１３と、入力装置１４と、出力装置１５とを具備する。記憶装置１３はハードディスクやメモリ等に例示される外部記憶装置である。又、入力装置１４は、キーボードやマウス等のユーザによって操作されることで、各種データをＣＰＵ１１や記憶装置１３に出力する。出力装置１５は、モニタやプリンタに例示され、ＣＰＵ１１から出力される半導体装置のレイアウト結果をユーザに対し視認可能に出力する。
【００２２】
記憶装置１３は、自動レイアウト用セルライブラリ２１（セルライブラリ２１）、レイアウトデータ２２、制約条件２３、ネットリスト２４、自動レイアウトプログラム２５（レイアウトプログラム２５）を格納している。ＣＰＵ１１は、入力装置１４からの入力に応答して、記憶装置１３内のレイアウトプログラム２５を実行し、セルライブラリの生成又は変換処理、セルの配置配線処理を行う。この際、記憶装置１３からの各種データやプログラムはＲＡＭ１２に一時格納され、ＣＰＵ１１は、ＲＡＭ１２内のデータを用いて各種処理を実行する。
【００２３】
セルライブラリ２１は、内部が既にレイアウト設計されたマクロセルに関するデータ（以下ライブラリデータと称す）の集合である。セルライブラリ２１には、ＮＡＮＤやフリップフロップなどの基本的回路を含むマクロセルから、ＲＡＭやＲＯＭ、ＣＰＵコア等の大規模回路を含むマクロセルが登録される。又、セルライブラリ２１には、セル内部の拡散層やゲートの座標を持たないライブラリデータ２１１と、ライブラリデータ２１１にセル内部の拡散層やポリシリコンゲートの座標データを付加した補正ライブラリデータ２１２が記録される。ライブラリデータ２１１及び補正ライブラリデータ２１２は、セル内のピン配置に関する情報とセル枠（セル外形）データを含み、セルを半導体チップ１上に配置、配線するために利用されるＬＥＦ（Ｌｉｂｒａｒｙ  Ｅｘｃｈａｎｇｅ  Ｆｏｒｍａｔ）データである。尚、ライブラリデータ２１１は、セル内の配線や端子の位置等、セルの外形や外部からの配線の接続位置、配線禁止領域を指定するデータを含む。又、ライブラリデータ２１１は、配線層より下層の拡散層やポリシリコン層のレイアウト座標等に関する従来の自動レイアウトでは不要なセルの内部構造に関する情報は含まない。補正ライブラリデータ２１２は、ライブラリデータ２１２にセル内部のレイアウトデータ２２を付加したＬＥＦデータである。補正ライブラリデータ２１２は、セル内の配線や端子の位置を指定するデータに加え、拡散層やポリシリコン層のセル内部のレイアウトに関する情報を含む。
【００２４】
レイアウトデータ２２は、拡散層レイアウトデータ２２１、ポリシリコンゲートレイアウトデータ２２２、セルの境界（セル枠）の大きさや配線やコンタクトのレイアウト等を含むＧＤＳ形式のデータである。拡散層レイアウトデータ２２１は、セル内にレイアウトされた拡散層の位置座標（レイアウト座標）を含むレイアウトデータである。ポリシリコンゲートレイアウトデータ２２２は、セル内にレイアウトされたポリシリコンゲート１０１（ゲート）の位置座標（レイアウト座標）を含むレイアウトデータである。又、レイアウトデータ２２は、拡散層上に設けられ、ゲートとして機能するポリシリコンゲート（ゲート：以下、実効ゲート１０２と称す）の位置座標（レイアウト座標）を含んでも良い。
【００２５】
制約条件２３は、配置配線ツール２５２が、半導体チップ１上にセルを配置する際、列方向（Ｙ方向）に隣接して配置するセルを決定するための条件である。ここでは、図６を参照して、基準ゲート１１１（基準点２００）から所定の距離の制約エリア６００内に配置可能な実効ゲート数が制約条件２３として設定される。制約条件２３は、制約エリア６００の大きさや、実効ゲート１０２の幅や長さ（面積）等を考慮して設定されることが好ましい。
【００２６】
ネットリスト２４は、マクロセルの接続情報を示す論理回路設計結果である。
【００２７】
レイアウトプログラム２５は、ＣＰＵ１１によって実行されることで、図３に示すライブラリ生成ツール２５１と、配置配線ツール２５２の各機能を実現する。
【００２８】
ライブラリ生成ツール２５１は、セルのレイアウトデータ２２を用いて、ライブラリデータ２１１を補正し、補正ライブラリデータ２１２を生成する。ライブラリ生成ツール２５１は、実効ゲート１０２の位置座標（レイアウト座標）を追加して補正ライブラリデータ２１２を生成する。例えば、ライブラリ生成ツール２５１は、拡散層レイアウトデータ２２１とポリシリコンゲートレイアウトデータ２２２から実効ゲート１０２のレイアウト座標を算出し、これをライブラリデータ２１１に追加する。又、レイアウトデータ２２に実効ゲート１０２のレイアウト座標が含まれる場合、レイアウトデータ２２から抽出した実効ゲート１０２のレイアウト座標をライブラリデータ２１１に追加する。更に、ライブラリ生成ツール２５１は、ライブラリデータ２１１に対し、実効ゲートのレイアウト座標を追加せず、拡散層レイアウトデータ２２１やポリシリコンゲートレイアウトデータ２２２を追加して補正ライブラリデータ２１２を生成しても良い。
【００２９】
図４を参照して、配置配線ツール２５２は、補正ライブラリデータ２１２に基づいて半導体チップ１上にセルを配置する。この際、配置配線ツール２５２は、補正ライブラリデータ２１２に含まれるマクロセルのピン配置やセルの大きさを参照し、ネットリスト２４、配線幅やセル間隔等の設計ルール、及び配線遅延等を考慮してセルの配置・配線を行う。又、配置配線ツール２５２は、入出力回路セルを入出力回路領域４００に配置し、パッド５００を設けて半導体チップ１のレイアウトを完成する。半導体チップ１のレイアウト結果は、チップレイアウトデータ２６として記憶装置１３に格納される。チップレイアウトデータ２６は、出力装置１５から視認可能に出力され、設計者はこのデータを参考に、半導体チップ１のレイアウトを決定する。
【００３０】
又、第１の実施の形態における配置配線ツール２５２は、補正ライブラリデータ２１２に含まれる拡散層やポリシリコン層のレイアウトと、制約条件２３とに基づいて、列方向（Ｙ方向）に隣接して配置するセルを決定する。
【００３１】
図５は、配置配線ツール２５２の構成の詳細を示す機能ブロック図である。配置配線ツール２５２は、レイアウト座標抽出部３１、基準ゲート指定部３２、エリア設定部３３、制約条件判定部３４、レイアウト部３５を備える。以下、配置配線ツール２５２の各機能について詳細に説明する。
【００３２】
レイアウト座標抽出部３１は、セル内にレイアウトされたポリシリコンゲートや拡散層、あるいは実効ゲート１０２のレイアウト座標を抽出する。第１の実施の形態におけるレイアウト座標抽出部３１は、補正ライブラリデータ２１２から拡散層のレイアウト座標及びポリシリコンゲートのレイアウト座標を抽出し、両者を用いてゲートのレイアウト座標を算出する。あるいは、補正ライブラリデータ２１２に実効ゲート１０２のレイアウト座標が含まれている場合、そのレイアウト座標を抽出しても良い。
【００３３】
図６を参照して、基準ゲート指定部３２は、光近接効果によって生じるバラツキを抑制したいゲートを基準ゲートとして設定する。詳細には、基準ゲート指定部３２は、レイアウト座標抽出部３１によって抽出されたゲートのレイアウト座標を参照して基準ゲート１１１を指定する。又、基準ゲート指定部３２は、指定した基準ゲート１１１上に基準点２００を設定することが好ましい。基準ゲート１１１に設定されるゲートは、他の行のセルに隣接するセル枠１０４（他の行のセルとの境界）の近傍、又は隣接して配置されたゲートであることが好ましい。特に、セルの角の領域に配置されたゲートが基準ゲート１１１として設定されることが好ましい。
【００３４】
エリア設定部３３は、設定された基準点２００に基づいて制約エリア６００を設定する。設定される制約エリア６００は、基準点からの距離が所定の値となる範囲が設定されることが好ましい。例えば、基準点２００から各辺までの距離が所定の距離に設定された矩形でも良いし、基準点２００を中心とする円形でも良い。又、基準点２００から制約エリア６００の外縁までの距離は、一定でも不定でもどちらでも良い。制約エリア６００の大きさ（基準点２００からの距離）は、ＯＰＣやＬｉｔｈｏ  Ｓｉｍｕｌａｔｉｏｎにおいて考慮される光近接効果の影響を受ける範囲に基づいて設定されることが好ましい。このため、制約エリア６００は、製造プロセス（例えば配線幅）の大きさや、レイアウトされたゲートのデータ密度に依存して設定されることが好ましい。
【００３５】
制約条件判定部３４は、設定された制約エリア６００内に配置される実効ゲート１０２の数が制約条件２３に適合しているかを判定する。図６を参照して、Ｘ方向に配置されたセル群（行Ｌｉ）に対してＹ方向に隣接する領域（例えば行Ｌｉ−１の領域）がセル配置予定領域７００が設定される。制約条件判定部３４は、この配置予定領域７００にセルを配置したときに、制約エリア６００内に配置される実効ゲート数を算出し、この数が制約条件２３に適合するかを判定する。例えば、制約条件２３が、９以上１０以下と規定されている場合、制約エリア６００内に存在する実効ゲート数が９又は１０のとき合格と判定され、その他の数の場合は不合格と判定される。
【００３６】
レイアウト部３５は、セルライブラリデータ２１１や補正ライブラリデータ２１２と、ネットリスト２４とを参照して、半導体チップ１上にセルを配置し、セル間に配線を施す。本発明によるレイアウト部３５は、制約条件判定部３４において合格と判定されたセルをセル配置予定領域７００に配置する。
【００３７】
図２から図１３を参照して、本発明によるレイアウト装置１０によるセルの自動レイアウト処理について詳細に説明する。本発明によるレイアウト装置１０は、補正ライブラリデータ２１２の生成処理とセルの配置配線処理の２つのフェーズによって半導体チップ１のレイアウトを行う。
【００３８】
（補正ライブラリ生成フェーズ）
先ず、補正ライブラリデータ２１２の生成フェーズについて説明する。
【００３９】
ライブラリ生成ツール２５１は、ライブラリデータ２１１に対応するセルのレイアウトデータ２２を、当該ライブラリデータ２１１に付加して補正ライブラリデータ２１２を生成する。ここでは、拡散層レイアウトデータ２２１、ポリシリコンゲートレイアウトデータ２２２、及び実効ゲート１０２のレイアウト座標がライブラリデータ２１１に付加される。補正ライブラリデータ２１２は、製品に搭載されるセルに対してのみ生成されても、予め用意された全てのセルに対して事前に生成されてもどちらでも良い。
【００４０】
図７（ａ）、（ｂ）及び図８（ａ）、（ｂ）を参照して、セルに対する補正ライブラリデータ２１２の生成方法について説明する。
【００４１】
図７（ａ）、（ｂ）及び図８（ａ）、（ｂ）を参照して、図７（ａ）はライブラリデータ２１１、図８（ａ）は、ライブラリデータ２１１に含まれるピン配置に関する情報に対応する配線レイアウトである。図７（ａ）及び図８（ａ）に示すように、ライブラリデータ２１１は、配線１１５や端子１１６に関する情報（ＰＯＲＴ情報）を含み、配線に影響しない拡散層やゲートのレイアウトデータを含まない。
【００４２】
図８（ｂ）は、配線層（配線１１５）より下層（Ｚ方向）にレイアウトされたポリシリコンゲート１０１や拡散層１０３の形状（レイアウト座標）を示す平面図である。図８（ｂ）に示す一例では、それぞれ矩形のポリシリコンゲート１０１及び拡散層１０３によってＭＯＳトランジスタが形成される。この場合、拡散層１０３上に形成されたポリシリコンゲート１０１はゲート１０２（ゲート長Ｌ、ゲート幅Ｗ）として機能する。ここでは、ポリシリコンゲートレイアウトデータ２２２として位置座標Ａ（Ｘ１，Ｙ１）、Ｂ（Ｘ２，Ｙ２）、拡散層レイアウトデータ２２１としてＣ（Ｘ３，Ｙ３）、Ｄ（Ｘ４，Ｙ４）が格納されているものとする。
【００４３】
ライブラリ生成ツール２５１は、セル内のポリシリコンゲート１０１及び拡散層１０３のそれぞれに対応するポリシリコンゲートレイアウトデータ２２２及び拡散層レイアウトデータ２２１を抽出し、ライブラリデータ２１１に付加して補正ライブラリデータ２１２を生成する。ここでは、ポリシリコンゲート１０１の位置座標Ａ（Ｘ１，Ｙ１）、Ｂ（Ｘ２，Ｙ２）と、拡散層１０３の位置座標Ｃ（Ｘ３，Ｙ３）、Ｄ（Ｘ４，Ｙ４）がライブラリデータ２１１に付加され、図７（ｂ）に示すような補正ライブラリデータ２１２が生成される。この際、ライブラリ生成ツール２５１は、ポリシリコンゲートの位置座標Ａ（Ｘ１，Ｙ１）、Ｂ（Ｘ２，Ｙ２）と拡散層１０３の位置座標Ｃ（Ｘ３，Ｙ３）、Ｄ（Ｘ４，Ｙ４）とを用いて、実効ゲート１０２の位置座標Ｅ（Ｘ３，Ｙ１）、Ｆ（Ｘ４，Ｙ２）を算出し、これを補正ライブラリデータ２１２に追加しても良い。ただし、補正ライブラリデータ２１２には、実効ゲート１０２のレイアウト座標を含めなくても良い。この場合、補正ライブラリデータ２１２の情報量を小さくすることができる。
【００４４】
本例における補正ライブラリデータ２１２には、拡散層１０３及びポリシリコンゲート１０２の形状が矩形であるため、角部の座標のみがライブラリデータ２１１に追加されて生成されたが、これに限らず、拡散層やポリシリコンゲートの形状及び面積、あるいは、セル内における位置（セル枠からの相対位置）を算出できるようなレイアウト座標が追加されて生成されることが好ましい。
【００４５】
以上のように、本発明によるレイアウト装置１０は、配置配線ツール２５２の入力となるセルライブラリ２１に、配線層の下層に形成された拡散層やゲートのレイアウトデータを付加して、補正ライブラリデータ２１２を生成する。
【００４６】
（セルのレイアウトフェーズ）
次に、図９から図１３を参照して、配置配線ツール２５２によるセルのレイアウト処理について説明する。ここでは、制約条件２３（制約エリア１００内に存在可能な実効ゲート１０２の数）として“１０以上１１以下”が設定されているものとする。
【００４７】
先ず、レイアウト部３５は、図４に示す半導体チップ１上の行Ｌｉに、セル１００を含むセル群を配列する。次に基準ゲート指定部３２によって基準ゲート１１１を設定し、基準ゲート１１１上の所定に位置を基準点２００として設定する。基準ゲート指定部３２は、レイアウト座標抽出部３１によって抽出された実効ゲート１０２の座標を参照して、セル１００内の実効ゲート１０２の位置を把握し、基準ゲート１１１及び基準点２００を設定する。ここでは、セル配置予定領域７００となる行Ｌｉ−１との境界（セル枠１０４）と、Ｘ方向に隣接する他のセルとの境界とに隣接する実効ゲート１０２が基準ゲート１１１として選択される。
【００４８】
基準ゲート１１１及び基準点２００は、行Ｌｉに配置されたセル群において、セル１００と同じレイアウトのセル内においても同様にして設定される。この場合、設定される基準ゲート１１１及び基準点２００は、セル内において同じ位置座標であることが好ましい。
【００４９】
基準点２００が設定されると、エリア設定部３３は、基準点２００から所定の距離の範囲を制約エリア６００として設定する。ここでは、矩形の制約エリア６００が設定される。
【００５０】
次に、制約条件判定部３４は、行Ｌｉに配置されたセル群に対しＹ方向に隣接する領域をセル配置予定領域７００とし、この領域にセルが配置された時の制約エリア内の実効ゲート１０２の数を算出する。ここでは、行Ｌｉ−１の領域にセル群が配置され、そのときの制約エリア６００内に存在する実効ゲート１０２の数が算出される。そして、その数が制約条件２３“１０以上１１以下”に適合するかが判定される。
【００５１】
例えば、図９に示すように、制約条件判定部３４は、Ｘ方向に隣接するセル２０１とセル２０２を含むセル群が、配置予定領域７００（行Ｌｉ−１）に配置される場合をシミュレーションする。ただし、セル２０２が、セル１００に対しＹ方向に隣接して配置される。制約条件判定部３４は、レイアウト座標抽出部３１によって抽出された各セルにおける実効ゲート１０２の座標を参照して、制約エリア６００内に存在する実効ゲート１０２の数を算出する。ここでは、制約エリア６００内に存在する実効ゲート数として“１２”が算出される。この場合、実効ゲート１０２の数“１２”は制約条件２３の範囲外となるため、不合格と判定される。
【００５２】
図１０を参照して、Ｘ方向に隣接するセル２０３とセル２０４を含むセル群が、配置予定領域７００（行Ｌｉ−１）に配置される場合、制約エリア６００内に存在する実効ゲート１０２の数は“９”であるため、不合格と判定される。ただし、セル２０４が、セル１００に対しＹ方向に隣接して配置される。
【００５３】
一方、図１１に示すように、Ｘ方向に隣接するセル２０５とセル２０６を含むセル群が、配置予定領域７００（行Ｌｉ−１）に配置される場合、制約エリア６００内に存在する実効ゲート１０２の数は“１０”であるため、制約条件２３に適合する。ただし、セル２０６が、セル１００に対しＹ方向に隣接して配置される。
【００５４】
制約エリア６００内に存在する実効ゲート１０２の数が制約条件２３に適合する場合、レイアウト部３５は、制約条件２３を満たすセルを、セル配置予定領域７００に配置する。図１１に示す一例では、セル２０５とセル２０６がセル配置予定領域７００に配置される。
【００５５】
上述のような、制約条件２３を用いた判定処理とセルの配置処理は、行Ｌｉにおける他の基準ゲート１１１（基準点２００）についても同様に行われる。この際、同一行内（例えば行Ｌｉ−１）においてセル１００に隣接して配置されるセルは、全て同じセルである必要はない。本例では、制約条件２３に適合していれば、図１１に示すセル２０５及びセル２０６以外のセルが選択されても構わない。例えば、図１２に示すように、制約エリア６００内に存在する実効ゲート１０２の数が“１０”となるセル２０７とセル２０８は、制約条件２３に適合するため、セル１００に隣接するセル配置予定領域７００に配置され得る。
【００５６】
以上のように、行Ｌｉに対しＹ方向に隣接する行Ｌｉ−１にセル群が配置される。図１３は、レイアウト装置１０によって配置されたセルの配置例を示す平面図である。本発明によれば、行Ｌｉに配置されたセル１００の基準ゲート（基準点２００）の周辺のエリアＡ１、Ｂ１、Ｃ１内における実効ゲート１０２の数は、制約条件２３によって規定された範囲内となる。このため、エリアＡ１、Ｂ１、Ｃ１におけるゲートのデータ密度は均一となり、光近接効果によるパターンのバラツキや、エッチング後のゲートサイズ（ゲート形状）のバラツキが低減される。
【００５７】
２．第２の実施の形態
図１４を参照して、本発明によるレイアウト装置１０の第２の実施の形態における構成及び動作を説明する。第２の実施の形態におけるレイアウト装置１０は、第１の実施の形態のように補正ライブラリデータ２１２から実効ゲート１０２のレイアウト座標を抽出するのではなく、レイアウトデータ２２を参照して、実効ゲート１０２のレイアウト座標を取得する。
【００５８】
以下では、第１の実施の形態と同様の構成要素には、同じ符号を付して説明する。又、第１の実施の形態と同様な構成及び動作についてはその説明を省略し、異なる点のみを説明する。
【００５９】
（構成）
図１４は、第２の実施の形態におけるレイアウト装置１０の構成を示すブロック図である。第２の実施の形態における記憶装置１３にはセルライブラリ２１としてライブラリデータ２１１が格納される。又、記憶装置１３には、レイアウト対応テーブル２１３が格納される。更に、自動レイアウトプログラム２５は、ライブライブラリ作成部２５１を含まない。その他の構成は第１の実施の形態と同様である。
【００６０】
レイアウト対応テーブル２１３は、同じセルに関するライブラリデータ２１１とレイアウトデータ２２とが対応付けられて記録されたテーブルである。
【００６１】
第２の実施の形態における配置配線ツール２５２のレイアウト座標抽出部３１は、配置するセルのライブラリデータ２１１を取得すると、レイアウト対応テーブル２１３を参照して、当該ライブラリデータ２１１に対応付けられた拡散層レイアウトデータ２２１及びポリシリコンゲートレイアウトデータ２２２を抽出する。そして、拡散層レイアウトデータ２２１及びポリシリコンゲートレイアウトデータ２２２を用いて、実効ゲート１０２のレイアウト座標を算出する。
【００６２】
第２の実施の形態における自動レイアウト装置１０の動作は、上述のレイアウト座標の抽出処理以外は第１の実施の形態と同じである。
【００６３】
第２の実施の形態における自動レイアウト装置１０によれば、補正ライブラリデータ２１２を用意できない場合でも、セル内のゲートのレイアウト座標を参照して、データ密度が均一となるようにセルを配置することができる。
【００６４】
以上のように、本発明では、セルをゲート方向に隣接して配置する際、セルの境界付近に配置済みのゲートを基準ゲートとし、その周辺の所定の領域内に存在するゲート数（ゲート密度）を規定の範囲内とするように配置するセルを決定する。このため、基準ゲートの周辺領域のゲートのデータ密度は均一化され、光近接効果によるゲートパタンのバラツキやエッチング後のゲートサイズやゲート形状のバラツキが低減される。このように、本発明によれば、リソグラフィを考慮したセルのレイアウトによって、セル間におけるゲートの駆動特性のバラツキを抑制することができる。
【００６５】
以上、本発明の実施の形態を詳述してきたが、具体的な構成は上記実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。本実施の形態では、レイアウトデータ２２含む補正ライブラリデータ２１２を作成して、セルの配置に用いたが、予め、拡散層やゲートの座標を含むライブラリデータが用意されている場合は、ライブラリ生成２５１ツールにおける処理を省略し、その予め用意されたライブラリデータを用いて自動レイアウトを行ってもよい。
【００６６】
又、本発明による自動レイアウトは、１半導体チップの回路全体に適用することもできるし、１半導体チップ全体の回路のうち、タイミングが厳しくない回路には、従来の方法によってセルを配置し、特にタイミングの制約が厳しい回路のみに本発明の自動レイアウトを適用し、特性バラツキを抑制することもできる。
【図面の簡単な説明】
【００６７】
【図１】図１は、従来技術による方法によって、半導体チップ上に配置されたセル内のゲートの配置を示す平面図である。
【図２】図２は、本発明による半導体集積回路の自動レイアウト装置の実施の形態における構成を示すブロック図である。
【図３】図３は、本発明による半導体集積回路の自動レイアウト装置の第１の実施の形態における構成及び動作を示すブロック図である。
【図４】図４は、本発明に係る半導体チップの構成を示す平面図である。
【図５】図５は、本発明による半導体集積回路の自動レイアウトプログラムの実施の形態における構成を示すブロック図である。
【図６】図６は、本発明に係る基準ゲート、基準点、制約エリアを説明するための平面図である。
【図７】図７（ａ）、（ｂ）は、それぞれ本発明の実施の形態に用いるライブラリデータ、補正ライブラリデータのデータ構造を示す図面である。
【図８】図８（ａ）、（ｂ）は、それぞれ本発明の実施の形態に用いるライブラリデータ、補正ライブラリデータのそれぞれに含まれるデータを説明するための平面図である。
【図９】図９は、制約エリア内に存在するゲート数が制約条件を越える場合のレイアウト構造の一例を示す平面図である。
【図１０】図１０は、制約エリア内に存在するゲート数が制約条件より少ない場合のレイアウト構造の一例を示す平面図である。
【図１１】図１１は、制約エリア内に存在するゲート数が制約条件に適合する場合のレイアウト構造の一例を示す平面図である。
【図１２】図１２は、制約エリア内に存在するゲート数が制約条件に適合する場合のレイアウト構造の一例を示す平面図である。
【図１３】図１３は、本発明による自動レイアウト方法によって、半導体チップ上に配置されたセル内のゲートの配置を示す平面図である。
【図１４】図１４は、本発明による半導体集積回路の自動レイアウト装置の第２の実施の形態における構成及び動作を示すブロック図である。
【符号の説明】
【００６８】
１：半導体チップ
１０：半導体集積回路の自動レイアウト装置（コンピュータ）
１１：ＣＰＵ
１２：ＲＡＭ
１３：記憶装置
１４：入力装置
１５：出力装置
２１：自動レイアウト用セルライブラリ
２１１：ライブラリデータ
２１２：補正ライブラリデータ
２２：レイアウトデータ
２２１：拡散層レイアウトデータ
２２２：ポリシリコンゲートレイアウトデータ
２３：制約条件
２４：ネットリスト
２５：自動レイアウトプログラム
２６：チップレイアウトデータ
２５１：ライブラリ生成ツール（ライブラリツール）
２５２：配置配線ツール
３１：レイアウト座標抽出部
３２：基準ゲート指定部
３３：エリア設定部
３４：制約条件判定部
３５：レイアウト部
１００、２０１、２０２、２０３、２０４、２０５、２０６、２０７、２０８：セル
１１１：基準ゲート
２００：基準点
３００：セル配置領域
４００：入出力回路領域
５００：パッド
６００：制約エリア
７００：セル配置予定領域
１０１：ポリシリコンゲート
１０２：ゲート（実効ゲート）
１０３：拡散層
【図１】
0005242103.tif 000002
【図２】
0005242103.tif 000003
【図３】
0005242103.tif 000004
【図４】
0005242103.tif 000005
【図５】
0005242103.tif 000006
【図６】
0005242103.tif 000007
【図７】
0005242103.tif 000008
【図８】
0005242103.tif 000009
【図９】
0005242103.tif 000010
【図１０】
0005242103.tif 000011
【図１１】
0005242103.tif 000012
【図１２】
0005242103.tif 000013
【図１３】
0005242103.tif 000014
【図１４】
0005242103.tif 000015