(57)【要約】【課題】チップサイズの増大を抑制した上で、異なる電源に接続されるウエル同士が隣接しないように配置することのできる、半導体集積回路のレイアウト設計方法を提供する。【解決手段】（ａ）第１ウエルを有する第１スタンダードセルと、第２ウエルを有する第２スタンダードセルとを配置するステップと、（ｂ）前記第１スタンダードセルの外側であり、前記第１ウエルからの距離が第１距離以内となる領域に、空きセルを配置するステップと、（ｃ）前記空セルが前記第２ウエルと重なった場合に、前記第２スタンダードセルを、前記空セルと前記第２ウエルとが重ならなくなるように移動するステップと、を具備する。ここで、前記第１ウエルと前記第２ウエルとは互いに異なる電源電圧の供給されるウエルである。【選択図】図１１
2009111119.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）コンピュータにより、第１ウエルを有する第１スタンダードセルと、第２ウエルを有する第２スタンダードセルとを配置するステップと、ここで、前記第１ウエルと前記第２ウエルとは互いに異なる電圧の供給されるウエルであり、
（ｂ）コンピュータにより、前記第１ウエルからの距離が第１距離以内となる領域に、空きセルを配置するステップと、
（ｃ）コンピュータにより、前記空セルが前記第２ウエルと重なった場合に、前記第２スタンダードセルを、前記空セルと前記第２ウエルとが重ならなくなるように移動させるステップと、
を具備する
半導体集積回路のレイアウト設計方法。
【請求項２】
請求項１に記載された半導体集積回路のレイアウト設計方法であって、
更に、
（ｄ）コンピュータにより、前記（ｃ）ステップの後に、前記空セルを削除するステップ、
を具備する
半導体集積回路のレイアウト設計方法。
【請求項３】
請求項１又は２に記載された半導体集積回路のレイアウト設計方法であって、
前記（ｃ）ステップは、
（ｃ−１）前記第１スタンダードセルを、移動が禁止されるように設定するステップと、
（ｃ−２）前記（ｃ−１）ステップの後に、前記第２スタンダードセルを、前記空セルと前記第２ウエルとが重ならなくなるように移動させるステップと、を有する
半導体集積回路のレイアウト設計方法。
【請求項４】
請求項１乃至３のいずれかに記載された半導体集積回路のレイアウト設計方法であって、
更に、
（ｅ）コンピュータにより、第１電源と第２電源とのレイアウトを決定するステップと、
（ｆ）コンピュータにより、前記（ｃ）ステップの後に、前記第１スタンダードセルが前記第１電源に接続され、前記第２スタンダードセルが前記第２電源に接続されるように、結線するステップと、
を具備する
半導体集積回路のレイアウト設計方法。
【請求項５】
請求項１乃至４のいずれかに記載された半導体集積回路のレイアウト設計方法であって、
前記（ａ）ステップにおいて、前記第１スタンダードセルと前記第２スタンダードセルとは、それぞれ、複数個づつが配置され、
更に、
（ｇ）コンピュータにより、前記（ａ）ステップの後に、前記複数の第１スタンダードセルの各々同士が近傍に配置されるように、前記複数の第１スタンダードセルを再配置するステップ、
を具備し、
前記（ｂ）ステップは、前記（ｇ）ステップの後に実行される
半導体集積回路のレイアウト設計方法。
【請求項６】
請求項５に記載された半導体集積回路のレイアウト設計方法であって、
更に、
（ｈ）コンピュータにより、前記第１スタンダードセルの移動可能な領域である移動可能領域を決定するステップ、
を具備し、
前記（ｇ）ステップにおいて、前記移動可能領域内で前記各第１スタンダードセルを移動させることで、前記各第１スタンダードセル同士を近傍に配置させる
半導体集積回路のレイアウト設計方法。
【請求項７】
請求項１乃至６のいずれかに記載された半導体集積回路のレイアウト設計方法をコンピュータに実行させるための、半導体集積回路のレイアウトプログラム。
【請求項８】
第１ウエルを有する第１スタンダードセルと、第２ウエルを有する第２スタンダードセルとを配置して、配置済みレイアウトデータを生成する第１配置部と、ここで、前記第１ウエルと前記第２ウエルとは互いに異なる電圧の供給されるウエル同士であり、
前記配置済みレイアウトデータに基づいて、前記第１ウエルからの距離が第１距離以内となる領域に、空きセルを配置し、空セル配置済みレイアウトデータを生成する空セル配置部と、
前記空セル配置済みレイアウトデータにおいて前記空セルが前記第２ウエルと重なった場合に、前記第２スタンダードセルを、前記空セルと前記第２ウエルとが重ならなくなるように変更し、再配置済みレイアウトデータを生成する第２配置部と、
を具備する
半導体集積回路のレイアウト設計支援装置。
【請求項９】
請求項８に記載された半導体集積回路のレイアウト設計支援装置であって、
更に、
前記再配置済みレイアウトデータ中における前記空セルを削除し、空セル削除済みレイアウトデータを生成する空セル削除部、
を具備する
半導体集積回路のレイアウト設計支援装置。
【請求項１０】
請求項８又は９に記載された半導体集積回路のレイアウト設計支援装置であって、
前記第２配置部は、
前記第１スタンダードセルを、移動が禁止されるように設定する禁止設定部と、
前記第２スタンダードセルを、前記空セルと前記第２ウエルとが重ならなくなるように移動させる第２自動配置部と、を有する
半導体集積回路のレイアウト設計支援装置。
【請求項１１】
請求項８乃至１０のいずれかに記載された半導体集積回路のレイアウト設計支援装置であって、
更に、
第１電源と第２電源とのレイアウトを決定する電源配線部と、
前記空セル削除済みレイアウトデータに基づいて、前記第１スタンダードセルが前記第１電源に接続され、前記第２スタンダードセルが前記第２電源に接続されるように結線し、電源接続済みレイアウトデータを生成する電源接続部と、
を具備する
半導体集積回路のレイアウト設計支援装置。
【請求項１２】
請求項８乃至１１のいずれかに記載された半導体集積回路のレイアウト設計支援装置であって、
前記第１配置部は、前記第１スタンダードセルと前記第２スタンダードセルとを、それぞれ、複数個づつ配置し、
更に、
前記配置済みレイアウトデータに対して、前記複数の第１スタンダードセルの各々同士が近傍に配置されるように、前記複数の第１スタンダードセルを再配置し、配置変更済みレイアウトデータを生成する第３配置部、
を具備し、
前記空セル配置部は、前記配置変更済みレイアウトデータに対して、前記空セルを配置する
半導体集積回路のレイアウト設計支援装置。
【請求項１３】
請求項１２に記載された半導体集積回路のレイアウト設計支援装置であって、
更に、
前記第１スタンダードセルの移動可能な領域である移動可能領域を決定する移動可能領域設定部、
を具備し、
前記第３配置部は、前記移動可能領域内で前記各第１スタンダードセルを移動させることで、前記各第１スタンダードセル同士を近傍に配置させる
半導体集積回路のレイアウト設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路のレイアウト設計に関し、特に電圧の異なる複数の電源から電圧の供給される半導体集積回路のレイアウト設計に関する。
【背景技術】
【０００２】
半導体集積回路のレイアウト設計の手法として、スタンダードセル方式が知られている。スタンダードセル方式では、予め、回路動作等の検証された複数種類のスタンダードセルが用意される。これらのスタンダードセルには、インバータ、ＮＡＮＤ、ＮＯＲ、フリップフロップ等の基本論理機能を得るのに必要な回路パターンが含まれている。
【０００３】
図１は、スタンダードセル方式を用いたレイアウト設計方法の例を示したフローチャートである。まず、スタンダードセルやハードブロック（ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｌｙ）及びＲＡＭ（Ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）等）の端子情報Ｄ１０２、及びネットリストＤ１０１に基づいて、チップサイズやハードブロックの配置等を示すフロアプランが決定される（ステップＳ１０１）。次に、電源が配置される（ステップＳ１０２）。そして、ネットリストＤ１０１、タイミング情報Ｄ１０３などに基づいて、所望の論理機能を有するのに必要なスタンダードセルが複数選択され、自動配置される（ステップＳ１０３）。更に、スタンダードセル間が結線される（ステップＳ１０４）。
【０００４】
一方、半導体集積回路に対しては、更なる低消費電力、低ノイズ化が要求されている。こうした要求を満たすため、同一チップ内に、複数の電源から異なる電圧が供給されることがある。
【０００５】
半導体集積回路中には、トランジスタが形成される。そのトランジスタは、通常、ウエル内に形成される。複数の電源から異なる電圧が供給される半導体集積回路の場合、異なる電源に接続されたウエル同士が隣接してしまうことが考えられる。異なる電源に接続されたウエル間では、ウエル自体の電位も異なることになる。これにより、ウエル間にリーク電流が流れてしまい、ウエル電位が低下したり、消費電力が増加してしまうことがある。そのため、リーク電流が流れないように、ウエル同士を離して配置する必要がある。
【０００６】
スタンダード方式でレイアウト設計を行う場合、異なる電位のウエル同士が隣接しないようにするため、電源毎に一定のエリアを決め、決められたエリア内に各スタンダードセルを配置することが知られている。図２は、電源毎に一定のエリアを決めてスタンダードセルを配置した場合のレイアウトパターンを示す概略図である。図２の例では、複数の電源（ＶＤＤ１、ＶＤＤ２）の各々に対して、一定のエリア（Ａ１、Ａ２）が決めらている。電源ＶＤＤ１から電圧の供給されるスタンダードセル（１Ａ−１、１Ａ−２、１Ａ−３、１Ａ−４）はエリアＡ１内に配置され、電源ＶＤＤ２から電圧の供給されるスタンダードセル（２Ａ−１、２Ａ−２）はエリアＡ２内に配置される。尚、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｌｙ）や、ＲＡＭ（Ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）などのハードブロックは、スタンダードセルとは別に、エリアＡ１内に配置されている。
【０００７】
図２のように、電源毎にスタンダードセルの配置されるエリアを決めれば、異なる電位のウエル同士が隣接することを防止することができる。しかしながら、各スタンダードセルの配置される位置に制限が設けられることととなり、信号の授受の行われるスタンダードセル間の距離が遠くなり易い。そのため、配線遅延時間が増大し易くなり、高速化が困難となる。
【０００８】
一方、特許文献１には、電源毎にスタンダードセルの配置されるエリアを固定せずにレイアウト設計を行う技術が記載されている。この特許文献１では、スタンダードセル内において、Ｎウエルがセルの境界全周から離れて配置される。これにより、セル同士が隣接しても、スタンダードセル内のＮウエルを隣接するセルのＮウエルから分離することができる、と記載されている。
【０００９】
【特許文献１】特開２００４−２２８７７号  公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
特許文献１に記載されるように、Ｎウエルがセルの境界外周から離れて配置されたスタンダードセル（以下、複数電源用スタンダードセル）を用いれば、各電源毎にスタンダードセルの配置されるエリアを決める必要が無くなり、配線遅延時間の増大を回避することができる。
【００１１】
しかし、複数電源用スタンダードセル内には、ウエル間隔を確保するための領域が含まれる。このため、一つの複数電源用スタンダードセルの占有する面積が大きくなり、チップサイズも大きくなってしまう。このことを、図３及び図４を参照して説明する。図３は、複数電源用スタンダードセルを示す概略図である。複数電源用スタンダードセルには、Ｐウエル１０１と、Ｎウエル１０２と、領域１０３とが含まれている。尚、実際には、Ｐウエル１０１やＮウエル１０２内には、トランジスタ等が形成されているが、これらの図示は省略されている。Ｎウエル１０２がセルの境界外周から離れて配置されることにより、Ｎウエル１０２とセルの境界外周との間に、領域１０３が生じている。図４は、複数電源用スタンダードセルを用いてレイアウト設計された半導体集積回路のレイアウトパターンを示す概略図である。図４のレイアウトパターンには、複数電源用スタンダードセルとして、電源ＶＤＤ１の供給される複数のスタンダードセル１００と、電源ＶＤＤ２の供給される複数のスタンダードセル２００とが描かれている。複数のスタンダードセル１００の各々にはＮウエル１０２が設けられており、複数のスタンダードセル２００の各々にはＮウエル２０２が設けられている。複数のスタンダードセル１００のいくつかは、隣接して配置されている。同様に、複数のスタンダードセル２００のいくつかも、隣接して配置されている。複数のスタンダードセル１００同士が隣接している箇所では、本来、Ｎウエル１０２同士の電位も同じになるので、Ｎウエル１０２同士が隣接してもリーク電流が流れることは無い。しかしながら、各スタンダードセル１００内に領域１０３が配置されていることによって、Ｎウエル１０２同士の間には間隔が生じている。複数のスタンダードセル２００同士が隣接している箇所についても同様である。このように、同じ電源に接続されるスタンダードセル同士が隣接している部分にも、Ｎウエル間に領域１０３が配置されてしてしまうため、チップサイズが大きくなる。
【課題を解決するための手段】
【００１２】
以下に、［発明を実施するための最良の形態］で使用する括弧付き符号を用いて、課題を解決するための手段を説明する。これらの符号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］の記載との対応関係を明らかにするために付加されたものであるが、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１３】
本発明の半導体集積回路のレイアウト設計方法は、（ａ）コンピュータにより、第１ウエル（Ｐ１１）を有する第１スタンダードセル（Ｐ１０）と、第２ウエル（Ｐ２１）を有する第２スタンダードセル（Ｐ２０）とを配置するステップ（ステップＳ３）と、（ｂ）コンピュータにより、第１ウエル（Ｐ１１）からの距離が第１距離（Ｌ１）以内となる領域に、空セル（Ｐ３０）を配置するステップ（ステップＳ４）と、（ｃ）コンピュータにより、空セル（Ｐ３０）が第２ウエル（Ｐ２１）と重なった場合に、第２スタンダードセル（Ｐ２０）を、空セル（Ｐ３０）と第２ウエル（Ｐ２１）とが重ならなくなるように移動するステップ（ステップＳ６）と、を具備する。ここで、第１ウエル（Ｐ１１）と第２ウエル（Ｐ２１）とは互いに異なる電圧の供給されるウエル同士である。
【００１４】
この方法によれば、ステップＳ３において、一度第１スタンダードセル（Ｐ１０）と第２スタンダードセル（Ｐ２０）が配置された後に、ステップＳ４において空セル（Ｐ３０）が配置される。ここで、空セル（Ｐ３０）と第２ウエル（Ｐ２０）が重なっている領域は、第１ウエル（Ｐ１０）と第２ウエル（Ｐ２０）との距離が第１距離（Ｌ１）以内である領域である。ステップＳ５において、空セル（Ｐ３０）と第２ウエル（Ｐ３０）とが重なっている（重なり領域Ｐ３１）がなくなるように第２スタンダードセル（Ｐ２０）の配置を変更することによって、第１ウエル（Ｐ１０）と第２ウエル（Ｐ２０）とが第１距離（Ｌ１）以内で接近している領域をなくすことができる。これにより、異なる電位のウエル同士が隣接することが防止される。一方、第１ウエル（Ｐ１０）同士が隣接している箇所については、隣接する第１ウエル（Ｐ１０）間の距離を変更する必要は無い。同様に、第２ウエル（Ｐ２０）同士が隣接している場合でも、第２ウエル（Ｐ２０）間の距離を変更する必要は無い。すなわち、重なり領域Ｐ３１を無くすことにより、第１ウエル（Ｐ１０）と第２ウエル（Ｐ２０）とが隣接している箇所にのみ選択的に間隔を設けることができる。このため、レイアウトパターン内に余分な領域が設けられなくなり、チップサイズの増大が必要最低限に抑えられる。
【００１５】
本発明の半導体集積回路のレイアウトプログラムは、上述の半導体集積回路のレイアウト設計方法をコンピュータに実行させるためのプログラムである。
【００１６】
本発明の半導体集積回路のレイアウト設計支援装置は、第１ウエル（Ｐ１１）を有する第１スタンダードセル（Ｐ１０）と、第２ウエル（Ｐ２１）を有する第２スタンダードセル（Ｐ２０）とを配置して、配置済みレイアウトデータを生成する第１配置部（１３）と、その配置済みレイアウトデータに基づいて、第１ウエル（Ｐ１１）からの距離が第１距離以内となる領域に、空セル（Ｐ３０）を配置し、空セル配置済みレイアウトデータを生成する空セル配置部（１４）と、その空セル配置済みレイアウトデータにおいて空セル（Ｐ３０）が第２ウエル（Ｐ２１）と重なった場合に、第２スタンダードセル（Ｐ２０）の位置を、空セル（Ｐ３０）と第２ウエル（Ｐ２１）とが重ならなくなるように変更し、再配置済みレイアウトデータを生成する第２配置部（１５）と、を具備する。ここで、第１ウエル（Ｐ１１）と第２ウエル（Ｐ２１）とは互いに異なる電圧の供給されるウエル同士である。
【発明の効果】
【００１７】
本発明によれば、チップサイズの増大を抑制した上で、異なる電源に接続されるウエル同士が隣接しないように配置される、半導体集積回路のレイアウト設計方法が提供される。
【発明を実施するための最良の形態】
【００１８】
（第１の実施形態）
図面を参照しつつ、本発明の第１の実施形態について説明する。本実施形態に係る半導体集積回路のレイアウト設計支援装置１は、ＲＯＭ、ＲＡＭ、ＣＰＵなどを有するコンピュータに、半導体集積回路のレイアウトプログラムがインストールされた装置である。この半導体集積回路のレイアウトプログラムが実行されることにより、半導体集積回路のレイアウト設計方法が実行される。
【００１９】
図５は、半導体集積回路のレイアウト設計支援装置１の機能構成を示す機能ブロック図である。半導体集積回路のレイアウト設計支援装置１は、フロアプラン部１１、電源配線部１２、第１自動配置部１３、空セル配置部１４、第２配置部１５、空セル削除部１６、電源接続部１７、及び自動配線部１８を備えている。第２配置部１５は、禁止設定部１９と第２自動配置部２０とを備えている。
【００２０】
半導体集積回路のレイアウト設計支援装置１は、格納部２にアクセス可能に接続されている。格納部２は、各種情報を格納する機能を有し、ハードディスクやＲＡＭなどに例示される。格納部２には、予め、設計するレイアウトパターンにおける論理回路の接続関係などを記述したネットリストＤ１、複数種類のスタンダードセルやハードブロックに関する情報Ｄ２、及びタイミング制約などを記述したタイミング情報Ｄ３が格納されている。複数種類のスタンダードセルの各々は、基本論理機能を有する回路パターンを含んでいる。また、ハードブロックは、ＣＰＵ、ＲＯＭ、及びＲＡＭなどのある特定の機能を有する論理回路のパターンを含んでおり、複数種類のスタンダードセルとは別に用意されるものである。情報Ｄ２には、ハードブロックやスタンダードセルの端子属性などを示す端子情報も含まれている。
【００２１】
図６は、各スタンダードセルのパターンを概略的に示す図である。各スタンダードセルは矩形状であり、電源に接続されるＮウエルと接地されるＰウエルとを含んでいる。尚、図６に図示されていないが、これらのウエル内には、トランジスタなどを含む論理回路が形成されている。また、各スタンダードセルには、信号の入出力端子、電源用端子、及び接地用端子なども設けられている。本実施形態では、必ずしもＮウエルを各スタンダードセルとの外周境界から離して配置する必要は無く、各スタンダードセルの外周はＰウエルとＮウエルの外周により形成されている。
【００２２】
図７は、半導体集積回路のレイアウト装置の動作方法を示すフローチャートである。図７に示されるステップＳ１〜Ｓ９の動作により、半導体集積回路のレイアウトが設計される。各ステップにおける動作の詳細を、以下に説明する。
【００２３】
ステップＳ１；フロアプランの作成
まず、フロアプラン部１１が、格納部２に格納されたネットリストＤ１及び情報Ｄ２に基づいて、使用されるハードブロック、チップサイズ、及びハードブロックの配置を決定し、フロアプランを作成する。
【００２４】
ステップＳ２；電源の配置
続いて、電源配線部１２が、フロアプランに基づいて、ハードブロックや各スタンダードセルに電圧を供給する電源配線の配置を行い、電源配線済みレイアウトデータを生成する。図８は、電源配線済みレイアウトデータを示す概念図である。本実施形態では、図８に示されるように、複数（２種類）の電源配線（ＶＤＤ１とＶＤＤ２）と、接地配線ＧＮＤが、配置されるものとする。第１電源ＶＤＤ１と第２電源ＶＤＤ２とでは、供給する電圧が異なるものとする。電源配線部１２は、複数の電源配線（ＶＤＤ１、ＶＤＤ２）と接地配線ＧＮＤとを、行方向及び列方向に沿って配置する。
【００２５】
ステップＳ３；自動配置
続いて、第１自動配置部１３が、電源配線部１２で生成された電源配線済みレイアウトデータと、ネットリストＤ１及びタイミング情報Ｄ３に基づいて、複数のスタンダードセルを配置し、配置済みレイアウトデータを生成する。複数のスタンダードセルは、例えば、タイミングドリブン手法などを利用した自動配置ツールを用いることで、配置される。
【００２６】
図９は、配置済みレイアウトデータを示す概念図である。図９に示されるように、複数のスタンダードセルが配置される。尚、配置済みレイアウトデータ中にも電源配線（ＶＤＤ１、ＶＤＤ２）及び接地配線ＧＮＤは含まれているが、複数のスタンダードセルの配置に説明の焦点を置いているため、これらの図示は省略されている。
【００２７】
ここで、複数のスタンダードセルは、第１電源ＶＤＤ１に接続されるものと、第２電源ＶＤＤ２に接続されるものとに分けられる。本実施形態では、第１電源ＶＤＤに接続されるスタンダードセルを第１スタンダードセルＰ１０とし、第２電源ＶＤＤに接続されるスタンダードセルを第２スタンダードセルとする。第１スタンダードセルＰ１０と第２スタンダードセルＰ２０とは、それぞれ、複数づつ配置される。また、第１スタンダードセルＰ１０のＮウエルを第１ＮウエルＰ１１、第１スタンダードセルのＰウエルを第１ＰウエルＰ１２、第２スタンダードセルＰ２０のＮウエルを第２ＮウエルＰ２１、第２スタンダードセルＰ２０のＰウエルを第２ＰウエルＰ２２と、それぞれ記載する。また、第１ＰウエルＰ１２と第２ＰウエルＰ２２とには、共通の接地配線ＧＮＤが接続されるものとする。配置済みレイアウトデータ中において、複数の第１スタンダードセルＰ１０と、複数の第２スタンダードセルＰ２０とは、混在して配置される。
【００２８】
図９に示されるように、複数のスタンダードセルは、複数のスタンダードセル行が形成されるように配置される。複数のスタンダードセル行の各々では、複数のスタンダードセルが行方向に沿って配置されている。また、複数のスタンダードセル行同士は、列方向で隣接している。ここで、複数のスタンダードセル行中において、複数のスタンダードセルの各々は、列方向でＮウエル同士又はＰウエル同士が向き合うように、配置されている。従って、列方向で隣接するスタンダードセル間において、ＮウエルとＰウエルとが隣接することはない。従って、スタンダードセル間でＮウエルとＰウエルが隣接することにより、リーク電流が流れることは無い。
【００２９】
また、第１自動配置部１３は、配置済みレイアウトデータを生成すると共に、電源グループリストＤ４を作成し、格納部２に格納する。図１０は、電源グループリストＤ４の示す内容の例を示す概念図である。電源グループリストＤ４は、各スタンダードセルにどの電源配線が接続されるかを示した情報である。すなわち、電源グループリストＤ４を参照することで、各スタンダードセルが第１スタンダードセルＰ１０であるのか、第２スタンダードセルＰ２０であるのかが識別できる。
【００３０】
電源グループリストＤ４は、電源名とインスタンス名で構成されている。図１０に示される例では、電源名が「ＶＤＤ１」である電源配線にインスタント名が「Ｔｏｐ／ｃｐｕ／ｎ０００１、Ｔｏｐ／ｃｐｕ／ｎ０００２、Ｔｏｐ／ｃｐｕ／ｎ０００３・・・」である第１スタンダードセルが接続され、電源名が「ＶＤＤ２」である電源配線にインスタンス名が「Ｔｏｐ／ｃｐｕ／ｎ１００１、Ｔｏｐ／ｃｐｕ／ｎ１００２、Ｔｏｐ／ｃｐｕ／ｎ１００３・・・」である第２スタンダードセルが接続されることになる。
【００３１】
ステップＳ４；空セル配置
次に、空セル配置部１４が、配置済みレイアウトデータに基づいて、空セルＰ３０を配置し、空セル配置済みレイアウトデータを生成する。空セルＰ３０は、異なる電源に接続されるスタンダードセル間に間隔を設けるために配置されるセルである。空セルＰ３０は最終的には削除されるセルであり、内部にパターンなどを含んでいる必要はない。
【００３２】
図１１は、空セルＰ３０の配置される位置を説明するための説明図である。図１１に示されるように、空セルＰ３０は、第１スタンダードセルＰ１０の外側であり、第１ＮウエルＰ１１からの距離が第１距離Ｌ１以内となる領域に、配置される。第１距離Ｌ１は、第１ＮウエルＰ１１と、第２スタンダードセルＰ２０の第２ＮウエルＰ２１との間で、リーク電流が発生しないような距離（以下、異電位ウエル間隔）に設定される。
【００３３】
図１２は、空セル配置済みレイアウトデータの内容を示す概念図である。空セルＰ３０を配置すると、空セルＰ３０と第２ＮウエルＰ２１とが重なった重なり領域Ｐ３１が生じることがある。この重なり領域Ｐ３１では、第１ＮウエルＰ１１と第２ＮウエルＰ２１とが、第１距離Ｌ１以内で接近していることになる。尚、図１２において、空セルＰ３０は、第１ＮウエルＰ１１と重なる領域にも配置されることになるが、説明を分かり易くするため、第１ＮウエルＰ１１と空セルＰ３０とが重なった領域は、第１ＮウエルＰ１１と区別されていない。
【００３４】
ステップＳ５；移動禁止の設定
続いて、禁止設定部１９が、空セル配置済みレイアウトデータ及び電源グループリストＤ４に基づいて、第１スタンダードセルＰ１０に対して移動禁止の設定を行う。
【００３５】
ステップＳ６；自動配置
次に、第２自動配置部２０が、移動禁止の設定されていないスタンダードセル（本実施形態では第２スタンダードセル）を移動させ、再配置済みレイアウトデータを生成する。
【００３６】
ここで、第２自動配置部３０は、重なり領域Ｐ３１がなくなるように、各第２スタンダードセルＰ２０を移動させる。本実施形態では、各第２スタンダードセルＰ２０が、重なり領域Ｐ３１がなくなるように、行方向に移動する。本ステップにおける移動は、例えば、ステップＳ３と同様に、タイミングドリブン手法などを用いた自動配置により行うことができる。重なり領域Ｐ３１が無くなる事で、第１ＮウエルＰ１１と第２ＮウエルＰ２１との間には、少なくとも第１距離Ｌ１（異電位ウェル間隔Ｌ１）より大きい間隔が設けられることになる。
【００３７】
尚、本実施形態では、複数種類の電源として、二種類の電源（ＶＤＤ１とＶＤＤ２）を用いる場合について説明するが、３種類以上の電源を用いる場合でも、ステップＳ４〜Ｓ６の動作を繰り返すことにより、異なる電位のウエル同士が接近している領域を無くすことができる。例えば、ｎ種類の電源が用いられる場合には、Ｓ４〜Ｓ６の動作をｎ−１回ほど繰り返し、ステップＳ４において隣接して空セルＰ３０が配置され、ステップＳ５で移動禁止の設定されるスタンダードセルを、一種類づつ増やしていけばよい。
【００３８】
ステップＳ７；空セル削除
続いて、空セル削除部１６が、配置済みレイアウトデータに基づいて、空セルＰ３０を削除し、空セル削除済みレイアウトデータを生成する。図１３は、空セル削除済みレイアウトデータの内容を示す概念図である。図１３に示されるように、重なり領域Ｐ３１が無くなり、第１ＮウエルＰ１１と第２ＮウエルＰ２１との間には、少なくとも異電位間隔が確保される。なお、空セルＰ３０の削除は、例えば、自動レイアウトツールを用いることで行うことができる。
【００３９】
ステップＳ８；電源接続
続いて、電源接続部１７が、空セル削除済レイアウトデータとネットリストＤ１などに基づいて、各スタンダードセルと電源配線（ＶＤＤ１、ＶＤＤ２）及び接地配線ＧＮＤとを結線し、電源接続済みレイアウトデータを生成する。
【００４０】
ステップＳ９；自動配線
更に、自動配線部１８が、電源接続済みレイアウトデータに基づいて、素子間（ハードブロックや各スタンダードセル間）を接続する信号線などを、配置する。また、信号線の材質（例えば、アルミ）なども決定される。
【００４１】
以上説明したステップＳ１〜９の処理により、半導体集積回路のレイアウトパターンが作成される。尚、スタンダードセルや、ＦＩＬＬセル（隙間埋めセル）などの追加や変更が行われた場合は、ステップＳ４〜Ｓ８の動作が再度行われる。ＦＩＬＬセルとは、同電位のスタンダードセル間を埋めるためのセルであり、内部にＮウエル及びＰウエルのパターンが含まれたセルである。
【００４２】
本実施形態によれば、各スタンダードセル内に、隣接するウエルとの間隔を保つための領域を設けておく必要は無く、同じ電位のウエル同士が隣接する領域については必ずしもウエル間に間隔が設けられない。従って、チップサイズの増大を最低限に抑えることができる。
【００４３】
また、各電源毎にスタンダードセルの配置されるエリアが固定されていないので、複数種類のスタンダードセルを混在させて配置することができる。従って、スタンダードセル間の距離を比較的自由に選択することができ、配線遅延などが生じ難い。
【００４４】
加えて、ステップＳ６において、異なる電位のウエル同士が隣接する領域がなくなるようにスタンダードセル同士が再配置されるので、異なる電位のウエル同士の間には異電位ウエル間隔が確保される。すなわち、異なる電位のウエル同士間におけるリーク電流が防止される。
【００４５】
（第２の実施形態）
続いて、第２の実施形態について説明する。第１の実施形態によれば、異なる電位のウエル間にのみ異電位ウエル間隔Ｌ１が確保され、チップサイズを抑えることができる。しかし、ステップＳ３において異なる電位のウエルを有するスタンダードセルが交互に並んだ場合、結果として、全てのスタンダードセルの間に異電位ウエル間隔Ｌ１が設けられてしまう。図１４は、第１スタンダードセルＰ１０と第２スタンダードセルＰ２０とがステップＳ３で行方向に交互に並んだ場合に、最終的に設計されるレイアウトパターンを示す概略図である。図１４では、レイアウトパターンのうちの一つのスタンダードセル行が示されている。図１４に示されるように、第１スタンダードセルＰ１０と第２スタンダードセルＰ２０とが、異電位ウエル間隔Ｌ１を空けて交互に配置される。全てのスタンダードセル間に異電位ウエル間隔Ｌ１が設けられるため、チップサイズを抑える効果が十分に発揮されない。
【００４６】
本実施形態では、上述のように異なる電位のウエルを有するスタンダードセルが交互に並んだとしてもチップサイズが抑制されるように、工夫が施されている。
【００４７】
図１５は、本実施形態に係る半導体集積回路のレイアウト設計支援装置の機能構成を示す機能ブロック図である。本実施形態の半導体集積回路のレイアウト設計支援装置は、第１の実施形態と比較して、移動可能領域設定部２１及び第３配置部２２が追加されている。第３配置部２２は、配置変更部２３と第３自動配置部２４とを備えている。また、図１６は、本実施形態に係る半導体集積回路のレイアウト設計支援装置の動作方法を示すフローチャートである。第１の実施形態と比較して、ステップＳ３１〜Ｓ３３の動作が追加されている。これら以外の点については、第１の実施形態と同様である。
【００４８】
以下に、本実施形態に係る半導体集積回路のレイアウト設計方法について、詳述する。但し、第１の実施形態と同様な点に関しては、詳細な説明を省略する。
【００４９】
ステップＳ３１；移動可能領域の設定
図１５及び図１６に示されるように、本実施形態では、ステップＳ３にて複数のスタンダードセルが配置された後に、移動可能領域設定部２２が、各スタンダードセルに対して、移動可能領域を設定する。移動可能領域は、各スタンダードセルを移動させることのできる領域を示している。ステップＳ３で配置された各スタンダードセルを別の場所に移動させると、例えば、各スタンダードセル間を結ぶ配線の距離が長くなりすぎる、などの理由から、所望の特性を得ることができなくなることがある。移動可能領域は、各スタンダードセルを移動させても所望の特性を得ることができる領域を表す。
【００５０】
移動可能領域は、例えば、各スタンダードセルの出力端子に設定されている容量値制限に基づいて算出することができる。より具体的な例を示す。各スタンダードセルの出力端子に１ｐＦの容量値制限が設定されており、接続される各スタンダードセルの入力端子容量を加味することで、各スタンダードセル間の配線の容量値が０．９ｐＦに制限されるとする。また、配線１０μｍあたりの容量が０．１ｐＦであるとする。このとき、配線の容量値を制限範囲内（０．９ｐＦ以内）とするためには、配線の長さが９０μｍ以内である必要がある。従って、互いに接続される二つのスタンダードセル間の距離（以下、第２距離Ｌ２）は、９０μｍ以内である必要がある。この場合、あるスタンダードセルに対して設定される移動可能領域は、接続先のスタンダードセルからの距離が９０μｍ以内となるような領域に、設定される。
【００５１】
尚、第２距離Ｌ２は、スタンダードセルの種類毎に別々に設定されてもよいし、複数種類のスタンダードセルに対して一つの値が設定されてもよい。
【００５２】
ステップＳ３２；配置変更
続いて、第３配置部２２の配置変更部２３が、第１自動配置部１３で生成された配置済みレイアウトデータに対して、各スタンダードセルの配置を変更し、配置変更済みレイアウトデータを生成する。第３配置部２２は、各第１スタンダードセルＰ１０同士が近傍に配置され、各第２スタンダードセルＰ２０同士が近傍に配置されるように、各スタンダードセルの配置を変更する。その際、配置変更部２３は、移動可能領域設定部２２で設定された移動可能領域の範囲内で、各スタンダードセルを移動させる。具体的には、電源グループリストＤ４を参照して、複数の第１スタンダードセルのうち一番目に記載されている第１スタンダードセルの近傍に、他の第１スタンダードセルを移動させる。１番目の第１スタンダードセルの近傍に配置できないセル、すなわち移動可能領域の範囲内では１番目の第１スタンダードセルから所定の範囲内に配置できないセルについては、移動させない。配置変更部２３は、複数の第１スタンダードセルを一通り移動させた後に、移動しなかった第１スタンダードセル同士について、再度移動を行う。すなわち、移動しなかった第１スタンダードセルのうち、電源グループリストＤ４中の最も上に記載された第１スタンダードセルの近傍に、他の第１スタンダードセルを移動させる。これにより、第１スタンダードセル同士が、移動可能領域による制約の範囲内ででまとまって配置されることになる。配置変更部２３は、同様の処理を、他の種類のスタンダードセルに対しても実行する。
【００５３】
図１７Ａ及び図１７Ｂを参照して、配置変更部２３の処理をより具体的に説明する。図１７Ａは、配置済みレイアウトデータの、あるスタンダードセル行における各スタンダードセルの配置を示す概念図である。図１７Ｂは、図１７Ａの配置済みレイアウトデータに基づいて生成された配置変更済みレイアウトデータを示す概念図である。図１７Ａに示されるように、配置済みレイアウトデータにおいて、第１スタンダードセル（Ｐ１０−１〜Ｐ１０ー４）と第２スタンダードセル（Ｐ２０−１〜Ｐ２０−４）とが、行方向にランダムな順番で配置されていたとする。例えば第２スタンダードセルＰ２０−３は、第１スタンダードセルＰ１０−２とＰ１０−３との間に配置されている。これに対して、図１７Ｂに示されるように、配置変更済みレイアウトデータ中では、第２スタンダードセルＰ２０−３が第２スタンダードセルＰ２０−２の近傍に移動されており、第２スタンダードセル（Ｐ２０−１〜Ｐ２０−３）がまとまって配置されている。同様に、第１スタンダードセル（Ｐ１０−２、１０−４）も、第１スタンダードセル（Ｐ１０−２〜Ｐ１０−４）がまとまって配置されるように、移動されている。
【００５４】
ステップＳ３３；自動配置
続いて、第３自動配置部２４が、配置変更済みレイアウトデータに対して、各スタンダードセルの配置を調整する。ステップＳ３２の処理によって、各スタンダードセルを移動させたことにより、タイミングが悪化している可能性がある。第３自動配置部２４は、タイミング修正を行うために、各スタンダードセルの配置を調整する。第３自動配置部２４は、例えばタイミングドリブン配置の機能を利用することにより、タイミングが悪化した各スタンダードセルの配置を微調整し、タイミングを修正する。
【００５５】
ステップＳ４〜ステップＳ９；
以降の処理は、第１の実施形態のステップＳ４〜Ｓ９と同様であり、詳細な説明は省略する。第１の実施形態と同様に、空セルを配置した後（ステップＳ４）、移動禁止の設定を行い（ステップＳ５）、自動配置を行うことで（ステップＳ６）、第１スタンダードセルと第２スタンダードセルとの間にのみ、異電位間隔Ｌ１が設けられる。
【００５６】
図１８は、図１７Ｂの配置変更済みレイアウトーデータに対して、ステップＳ６の処理までが行われた後のレイアウトデータを示す概念図である。図１８に示されるように、第１スタンダードセルＰ１０と第２スタンダードセルＰ２０との間には、異電位間隔Ｌ１が設けられている。一方、第２スタンダードセル（Ｐ２０−１〜Ｐ２０−３）はまとまって配置されており、第２スタンダードセル同士の間に間隔は設けられていない。同様に、第１スタンダードセル（Ｐ１０−２〜Ｐ１０−４）同士も、間隔をあけずにまとまって配置されている。
【００５７】
このように、本実施形態によれば、配置済みレイアウトデータ中において異なる電位のウエルを有するスタンダードセルが交互に並んだとしても、第３配置部２２によって同じ電位のウエルを有するスタンダードセル同士がまとまるように、各スタンダードセルの配置が変更される。その結果、最終的に、異電位ウエル間隔Ｌ１の設けられる箇所を最小限にすることができ、チップサイズをより効果的に抑えることができる。
【００５８】
尚、本実施形態では、ステップＳ３１が、ステップＳ３とステップＳ３２の間に実行される場合について説明した。すなわち、移動可能領域設定部３１は、ステップＳ３において自動配置がなされた後に、移動可能領域を設定し、このときに第２距離Ｌ２を算出する例について説明した。但し、第２距離Ｌ２の設定は、ステップＳ３２で各スタンダードセルの配置が変更されるより前の段階であれば、どの段階で実行されてもよい。すなわち、ステップＳ３１の処理は、ステップＳ３とステップＳ３２の間に限定されない。
【００５９】
（実施例及び比較例）
本発明者が試算を行った結果、本発明によれば、図３で示したようにウエルとスタンダードセル外周との間に領域を設けた場合よりも、１０％以上のチップサイズ縮小ができることがわかった。以下に、本発明者らによる試算について説明する。
【００６０】
（比較例）
複数種類のスタンダードセルとして、Ａ電位のウエルを有するスタンダードセルＡと、Ｂ電位のウエルを有するスタンダードセルＢとを、５００個づつ用いるものとする。すなわち、生成されるレイアウトパターン中のスタンダードセルの数は、１０００個であるものとする。
スタンダードセルＡのサイズを、高さ（列方向長さ）が５．０４ｕｍ、幅（行方向長さ）が８．４ｕｍであるとする。
スタンダードセルＢのサイズを、異なる電位のウエル同士の間に必要な間隔が１．６μｍであるものとして、スタンダードセルＡよりも行方向両側に１．６μｍ分追加したサイズであるものとする。尚、実際には列方向に対しても間隔を設ける必要があるが、ここでは考慮しない。すなわち、スタンダードセルＢのサイズを、高さ（列方向長さ）が５．０４μｍ、幅方向が８．４μｍ＋１．６μｍ×２＝１１．６μｍであるものとする。
【００６１】
比較例により生成されるレイアウトパターンのサイズは、次の式１により、５０４００（μｍ２）となる。
（式１）；５．０４（μｍ）×８．４（μｍ）×５００（個）＋１１．６（μｍ）×５．０４（μｍ）×５００（個）＝５０４００（μｍ２）
【００６２】
（実施例）
比較例と同様に、Ａ電位のウエルを有するスタンダードセルＡと、Ｂ電位のウエルを有するスタンダードセルＢとを、５００個づつ用いるものとする。
但し、実施例のスタンダードセルＡとＢのサイズは、ともに、比較例のスタンダードセルＡと同じサイズ（高さが５．０４μｍ、幅が８．４μｍ）であるものとする。
また、異なる電位のウエル同士の間に必要な間隔は、比較例と同じく、１．６ｕｍであるものとする。
【００６３】
実施例においては、既述の実施形態で述べたように、スタンダードセルＡに対して、１．６μｍ幅の空セルを配置し、空セルがスタンダードセルＢと重ならないように、再配置が行われるものとする。そしてその結果、５個のスタンダードセルＢが行方向に隙間無く隣接して配置されていき、その５個のスタンダードセルＢの行方向両側に、１．６μｍづつの異電位間隔が設けられていくものとする。
【００６４】
実施例により生成されるレイアウトパターンのサイズは、下記式２で表される。
（式２）；５００個のスタンダードセルＡの面積＋５００個のスタンダードセルＢの面積＋異電位間隔により設けられた隙間（以下、単に隙間という）の合計面積
【００６５】
ここで、「５００個のスタンダードセルＢの面積＋異電位間隔の合計面積」は、「５個のスタンダードセルＢの面積＋スタンダードセルＢの両側の隙間の面積（隙間２個分の面積）」の１００個分に相当する。
従って、「５００個のスタンダードセルＢの面積＋異電位間隔の面積」は、下記式３により、２２７８０．８（μｍ２）となる。
（式３）；（５×８．４×５．０４＋１．６×２×５．０４）×１００＝２２７８０．８（μｍ２）
【００６６】
一方、「５００個のスタンダードセルＡの面積」は、下記式４より、２１１６８（μｍ２）となる。
（式４）；５００×８．４×５．０４＝２１１６８（μｍ２）
【００６７】
よって、実施例により生成されるレイアウトパターンのサイズは、全体として、下記式５より、４３９４８．８（μｍ２）となる。
（式５）；２２７８０．８＋２１１６８＝４３９４８．８（μｍ２）
【００６８】
（実施例と比較例の比較）
実施例で生成されるレイアウトパターンのサイズは、比較例で生成されるレイアウトパターンに対して、下記式６で示されるとおり、面積において約１３％削減されることがわかる。
（式６）；（５０４００−４３９４８．８）／５０４００×１００＝１２．８（％）
【図面の簡単な説明】
【００６９】
【図１】一般的な半導体集積回路のレイアウト設計方法を示すフローチャートである。
【図２】一般的な半導体集積回路のレイアウト設計方法により作成されるレイアウトパターンの概念図である。
【図３】複数電源用スタンダードセルのパターンを示す概念図である。
【図４】複数電源用スタンダードセルを用いて設計されるレイアウトパターンを示す概念図である。
【図５】第１の実施形態に係る半導体集積回路のレイアウト設計支援装置の機能構成を示す概略ブロック図である。
【図６】第１の実施形態において用いられるスタンダードセルを示す概念図である。
【図７】第１の実施形態に係る半導体集積回路のレイアウト設計方法を示すフローチャートである。
【図８】第１の実施形態における電源配線済みレイアウトデータを示す概念図である。
【図９】第１の実施形態における配置済みレイアウトデータを示す概念図である。
【図１０】電源グループリストの内容を示す概念図である。
【図１１】空セルの配置を示す概念図である。
【図１２】第１の実施形態における空セル配置済みレイアウトデータの内容を示す概念図である。
【図１３】第１の実施形態における空セル削除済みレイアウトデータの内容を示す概念図である。
【図１４】第１スタンダードセルと第２スタンダードセルＰ２０とが交互に並んだ場合に設計されるレイアウトパターンを示す概略図である。
【図１５】第２の実施形態に係る半導体集積回路のレイアウト設計支援装置の機能構成を示す概略ブロック図である。
【図１６】第２の実施形態に係る半導体集積回路のレイアウト設計方法を示すフローチャートである。
【図１７Ａ】第２の実施形態において配置されるスタンダードセルを説明するための説明図である。
【図１７Ｂ】第２の実施形態において配置されるスタンダードセルを説明するための説明図である。
【図１８】第２の実施形態により設計されるレイアウトパターンを示す概念図である。
【符号の説明】
【００７０】
１  レイアウト装置
２  格納部
１１  フロアプラン部
１２  電源配線部
１３  第１自動配置部
１４  空セル配置部
１５  第２配置部
１６  空セル削除部
１７  電源接続部
１８  自動配線部
１９  禁止設定部
２０  第２自動配置部
２１  移動可能領域設定部
２２  第３配置部
２３  配置変更部
２４  第３自動配置部
Ｐ１０  第１スタンダードセル
Ｐ１１  第１Ｎウエル
Ｐ１２  第１Ｐウエル
Ｐ２０  第２スタンダードセル
Ｐ２１  第２Ｎウエル
Ｐ２２  第２Ｐウエル
Ｐ３０  空セル
Ｐ３１  重なり領域
１００  複数電源用スタンダードセル
１０１    Ｐウエル
１０２    Ｎウエル
１０３    領域
２００  複数電源用スタンダードセル
２０２  Ｎウエル
Ｄ１  ネットリスト
Ｄ２  ハードブロック、スタンダードセルの端子情報
Ｄ３  タイミング情報
Ｄ４  電源グループリスト
【図１】
2009111119.tif 000003
【図２】
2009111119.tif 000004
【図３】
2009111119.tif 000005
【図４】
2009111119.tif 000006
【図５】
2009111119.tif 000007
【図６】
2009111119.tif 000008
【図７】
2009111119.tif 000009
【図８】
2009111119.tif 000010
【図９】
2009111119.tif 000011
【図１０】
2009111119.tif 000012
【図１１】
2009111119.tif 000013
【図１２】
2009111119.tif 000014
【図１３】
2009111119.tif 000015
【図１４】
2009111119.tif 000016
【図１５】
2009111119.tif 000017
【図１６】
2009111119.tif 000018
【図１７Ａ】
2009111119.tif 000019
【図１７Ｂ】
2009111119.tif 000020
【図１８】
2009111119.tif 000021