(57)【要約】【課題】  スタンダードセルを使用したマスク設計に要する時間を低減する半導体集積回路のレイアウト方法を提供する。【解決手段】  回路動作情報に基づきレイアウト対象のチップ領域上にレイアウトされたスタンダードセルの情報を解析してセル情報を作成するステップと、セル情報に基づき、複数のスタンダードセルから構成されるメガセルを作成するステップと、回路動作情報に基づき、チップ領域上に同一形状の複数のメガセルを敷き詰め、チップ領域上のパターンが同一のパターンの繰り返しであるレイアウトを作成するステップとを含む。【選択図】      図１
2006285572.tif 000002
【特許請求の範囲】
【請求項１】
解析部が、セル配置情報記憶領域に格納された、回路動作情報に基づきチップ領域上にレイアウトされたスタンダードセルの情報を読み出し、該スタンダードセルの情報を解析してセル情報を作成し、作成したセル情報をセル情報記憶領域に格納するステップと、
作成部が、前記セル情報記憶領域から前記セル情報を読み出し、該セル情報に基づき、複数のスタンダードセルから構成されるメガセルを作成するステップと、
レイアウト部が、前記回路動作情報に基づき、前記チップ領域上に同一形状の複数の前記メガセルを敷き詰め、前記チップ領域上のパターンが同一のパターンの繰り返しであるレイアウトを作成し、作成したレイアウト情報をレイアウト情報記憶領域に格納するステップ
とを含むことを特徴とする半導体集積回路のレイアウト方法。    
【請求項２】
前記セル情報は、前記スタンダードセルの情報に含まれるスタンダードセルの種類及び数であることを特徴とする請求項１に記載の半導体集積回路のレイアウト方法。  
【請求項３】
前記解析部が、前記スタンダードセルの位置情報に基づき、複数の前記セル情報を作成することを特徴とする請求項１又は２に記載の半導体集積回路のレイアウト方法。  
【請求項４】
メガセル選択部が、前記セル情報に基づき、メガセルライブラリに格納された複数のメガセルのうちから、一つのメガセルを選択するステップを更に含むことを特徴とする請求項１乃至３のいずれか１項に記載の半導体集積回路のレイアウト方法。  
【請求項５】
クロック負荷調整部が、前記メガセルのクロック負荷が同一になるように、前記メガセルのクロック負荷を調整するステップを更に含むことを特徴とする請求項１乃至４のいずれか１項に記載の半導体集積回路のレイアウト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路のレイアウト方法に係り、特にスタンダードセルを使用する半導体集積回路のレイアウト方法に関する。
【背景技術】
【０００２】
半導体集積回路の設計期間を短縮するために、スタンダードセルが使用される。
【０００３】
又、スタンダードセルの配置を階層化することにより、半導体集積回路のマスク設計の効率を上げる方法がある（例えば、特許文献１参照。）。しかし、半導体集積回路をスタンダードセル（以下において、「セル」という。）を使用して設計した場合は、セルの組み合わせが非常に多いため、半導体集積回路上のレイアウトパターンの種類が多くなる。そのため、レイアウトパターンに依存するマスク設計における近接効果補正（ＯＰＣ）等の処理に多くの時間が必要になる。更に、レイアウトパターンの種類が多いために、レイアウトパターンがデザインルールを満足することをチェックするために多くの時間が必要になる。又、デザインルールチェックのミスがマスク作成時に発見された場合、マスクの再設計による時間のロスは非常に大きな問題になる。今後、半導体集積回路が微細化するにつれ、これらの問題は、更に顕著になることが予想される。
【特許文献１】米国特許第５，８３８，５８３号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、スタンダードセルを使用したマスク設計に要する時間を低減する半導体集積回路のレイアウト方法を提供する。
【課題を解決するための手段】
【０００５】
本発明の特徴は、（イ）解析部が、セル配置情報記憶領域に格納された、回路動作情報に基づきチップ領域上にレイアウトされたスタンダードセルの情報を読み出し、そのスタンダードセルの情報を解析してセル情報を作成し、作成したセル情報をセル情報記憶領域に格納するステップと、（ロ）作成部が、セル情報記憶領域からセル情報を読み出し、そのセル情報に基づき、複数のスタンダードセルから構成されるメガセルを作成するステップと、（ハ）レイアウト部が、回路動作情報に基づき、チップ領域上に同一形状の複数のメガセルを敷き詰め、チップ領域上のパターンが同一のパターンの繰り返しであるレイアウトを作成し、作成したレイアウト情報をレイアウト情報記憶領域に格納するステップとを含む半導体集積回路のレイアウト方法であることを要旨とする。    
【発明の効果】
【０００６】
本発明によれば、スタンダードセルを使用したマスク設計に要する時間を低減する半導体集積回路のレイアウト方法を提供できる。
【発明を実施するための最良の形態】
【０００７】
次に、図面を参照して、本発明の第１乃至第３の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。以下に示す第１乃至第３の実施の形態は、この発明の技術的思想を具体化するための装置や方法を例示するものであって、この発明の技術的思想は、構成部品の構造、配置等を下記のものに特定するものでない。この発明の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
【０００８】
（第１の実施の形態）
本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法を説明するためのフローチャートを図１に示す。図１に示すレイアウト方法は、例えば図２に示すレイアウト生成システムによって実行することが可能である。そのため、図２に示すレイアウト生成システムを先に説明する。
【０００９】
図２に示すレイアウト生成システムは、処理部１０、記憶装置２０、スタンダードセルライブラリ３０、入力装置４０及び出力装置５０を備える。
【００１０】
処理部１０は、セル配置部１１、解析部１２、作成部１３及びレイアウト部１４を備える。セル配置部１１は、半導体集積回路の回路動作情報に基づき、レイアウト対象のチップ領域上に複数のスタンダードセルを配置するレイアウトを行い、セル配置情報を作成する。ここで、「レイアウト」とは、チップ領域上の論理ゲート回路及び配線の配置である。レイアウトを行うために、先ず、回路動作情報に基づき、マッピングを行う。「マッピング」とは、論理動作をハードウェアを用いて実現するために、論理動作に論理ゲート回路を割り当てることである。そして、マッピング情報に基づき、レイアウトが行われる。又、解析部１２は、セル配置情報に含まれるセルの情報を解析してセル情報を作成する。「セル情報」とは、レイアウトされたセルの種類、セルの数、及び配置されたセルの位置等の情報である。作成部１３は、セル情報に基づき、複数のスタンダードセルから構成されるメガセルを作成する。「メガセル」は、複数のセルから構成される。つまり、メガセルは、多種類の論理セルや、フリップフロップ、ラッチ回路等の記憶素子から構成される。レイアウト部１４は、半導体集積回路の回路動作情報に基づき、チップ領域上に同一形状の複数のメガセルを敷き詰め、チップ領域上のパターンが同一のパターンの繰り返しであるレイアウトを作成する。
【００１１】
記憶装置２０は、論理動作情報記憶領域２１、第１マッピング情報記憶領域２２、セル配置情報記憶領域２３、セル情報記憶領域２４、メガセル情報記憶領域２５、第２マッピング情報記憶領域２６及びレイアウト情報記憶領域２７を備える。論理動作情報記憶領域２１に、回路の論理動作情報が格納される。第１マッピング情報記憶領域２２に、セル配置部１１により作成された第１マッピング情報が格納される。セル配置情報記憶領域２３に、セル配置情報が格納される。セル情報記憶領域２４に、セル情報が格納される。メガセル情報記憶領域２５に、メガセル情報が格納される。第２マッピング情報記憶領域２６に、レイアウト部１４により作成された第２マッピング情報が格納される。レイアウト情報記憶領域２７に、レイアウト情報が格納される。
【００１２】
又、スタンダードセルライブラリ３０には、マッピングに使用可能なセルの情報が格納される。
【００１３】
入力装置４０はキーボード、マウス、ライトペン又はフレキシブルディスク装置等で構成される。入力装置４０よりレイアウト実行者は、入出力データを指定できる。更に、入力装置４０より出力データの形態等を設定することも可能で、また、レイアウトの実行や中止等の指示の入力も可能である。
【００１４】
又、出力装置５０としては、レイアウト結果を表示するディスプレイやプリンタ、或いはコンピュータ読み取り可能な記録媒体に保存する記録装置等が使用可能である。ここで、「コンピュータ読み取り可能な記録媒体」とは、例えばコンピュータの外部メモリ装置、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープ等の電子データを記録することができるような媒体等を意味する。具体的には、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯディスク、カセットテープ、オープンリールテープ等が「コンピュータ読み取り可能な記録媒体」に含まれる。
【００１５】
半導体集積回路のレイアウトの例を図３に示す。図３は、チップ領域１００上に合成領域１０１、１０２、１０３と、メモリマクロ３０１、３０２を配置した例を示している。「合成領域」に、回路動作を記述した動作記述に基づき、論理合成を行って作成される回路がレイアウトされる。図３に示す合成領域１０１、１０２、１０３に、複数の論理合成の結果に基づいて作成される回路がそれぞれ配置される。或いは、１つの論理合成により作成された回路が分割して配置される。
【００１６】
図２に示したレイアウト生成システムを用いて、図１に示した半導体集積回路のレイアウト方法によりレイアウトを行う例を説明する。以下の説明では、図３に示した合成領域１０１のレイアウトを行う場合を例示的に説明する。
【００１７】
（イ）図１のステップＳ１１０において、図２に示す入力装置４０を介して、論理動作情報記憶領域２１に、図３に示す合成領域１０１にレイアウトされる回路の論理動作情報が格納される。論理動作情報は、論理合成によって作成される。論理動作情報は、予め論理動作情報記憶領域２１に格納されていてもよい。
【００１８】
（ロ）ステップＳ１２０において、セル配置部１１が、論理動作情報を論理動作情報記憶領域２１から読み出す。そしてセル配置部１１は、論理動作情報に基づきマッピングを行う。セル配置部１１は、スタンダードセルライブラリ３０に格納されたセルを参照し、論理ゲート回路としてセルを使用する。セル配置部１１により作成された第１マッピング情報は、第１マッピング情報記憶領域２２に格納される。
【００１９】
（ハ）ステップＳ１３０において、セル配置部１１が、第１マッピング情報記憶領域２２から、第１マッピング情報を読み出す。そして、セル配置部１１は第１マッピング情報に基づき、合成領域１０１に論理ゲート回路を配置する。配置された情報は、セル配置情報としてセル配置情報記憶領域２３に格納される。
【００２０】
（ニ）ステップＳ１４０において、解析部１２が、セル配置情報記憶領域２３から、セル配置情報を読み出す。そして、解析部１２はセル配置情報に基づき、合成領域１０１に配置されたセルについてセル情報を作成する。作成されたセル情報は、セル情報記憶領域２４に格納される。
【００２１】
（ホ）ステップＳ１５０において、作成部１３が、セル情報記憶領域２４からセル情報を読み出す。そして、作成部１３は、セル情報に基づき、メガセルを作成する。具体的には、作成部１３は、合成領域１０１に配置されたセルの種類及びセルの数に基づき、メガセルを構成するセルの種類及びセルの数を決定する。例えば、合成領域１０１に配置されたセルの種類と使用される数の比に応じて、メガセルを構成するセルの種類と数を選択する。図４に、作成部１３によって選択されたセルの種類及びセルの数の例を示す。作成部１３は、例えば図４に示した情報に基づき、メガセルを作成する。図５は、図４の情報に基づき、メガセル２００を構成した例である。又、メガセル２００を作成する際には、それぞれのセルの形状等を考慮して、メガセル内のセルの配置を決定する。又、合成領域１０１の形状を考慮して、合成領域１０１にメガセル２００を敷き詰めるられるような一定の形状にメガセル２００の形状を決定する。例えば、メガセル２００の形状が合成領域１０１と相似になるように、メガセル２００の形状を決定する。メガセル２００内のセルの配置及びメガセル２００の形状等のメガセル情報は、メガセル情報記憶領域２５に格納される。
【００２２】
（ヘ）ステップＳ１６０において、レイアウト部１４が、論理動作情報記憶領域２１に格納された論理動作情報及びメガセル情報記憶領域２５に格納されたメガセル情報を読み出す。そして、レイアウト部１４は、論理動作情報に基づきマッピングを行う。レイアウト部１４は、メガセル情報を参照し、論理ゲート回路としてメガセル２００を使用する。レイアウト部１４により作成された第２マッピング情報は、第２マッピング情報記憶領域２６に格納される。
【００２３】
（ト）ステップＳ１７０において、レイアウト部１４が、第２マッピング情報記憶領域２６から、第２マッピング情報を読み出す。そして、レイアウト部１４は第２マッピング情報に基づき、合成領域１０１に複数のメガセル２００を配置し、配線を行う。その結果、合成領域１０１にはメガセル２００が敷き詰められる。レイアウトされた結果は、レイアウト情報記憶領域２７に格納される。図６は、合成領域１０１を１００個（１０個×１０個）のメガセル２００で構成した例である。レイアウト情報は、出力装置５０を介して、レイアウト生成システムの外部に取り出すことができる。
【００２４】
上記に説明した方法と同様にして、図３に示した合成領域１０２〜１０３をレイアウトする。合成領域１０１〜１０３、及びメモリマクロ３０１〜３０２のレイアウト情報に基づき、マスク設計が行われる。
【００２５】
メガセルを敷き詰めた合成領域では、基板部分のレイアウトが繰り返しパターンになる。つまり、合成領域では、基板部分のレイアウトのデータが階層構造になっている。例えば、合成領域１０１の基板部分のレイアウトパターンは、メガセル２００のレイアウトの繰り返しパターンである。そのため、合成領域１０１の基板部分のＯＰＣ等の処理を行う場合は、メガセル２００についてのみＯＰＣ処理等を行えばよい。又、合成領域１０１の基板部分のデザインルールチェックを行う場合は、メガセル２００についてのみデザインルールチェックを行えばよい。その結果、マスク設計の時間を短縮することができる。
【００２６】
又、合成領域１０１にメガセル２００を敷き詰めているため、合成領域１０１に電源配線、及びクロック配線等をメッシュ状にレイアウトすることが容易である。例えば、図７に示すように、合成領域１０１に配置されたメガセル２００の縁縁部に沿って電源配線３００を配置できる。そして、合成領域１０１に配置された複数のメガセル２００に電源配線３００が接続できる。つまり、合成領域１０１上に電源配線３００を容易に配置することができ、半導体集積回路の設計時間を短縮することができる。
【００２７】
更に、合成領域１０１にメガセル２００を敷き詰めることにより、記憶素子のクロック入力端子の入力容量等のクロックバッファ回路が駆動する負荷（以下において、「クロック負荷」という。）は、合成領域１０１内で均等に分布する。そのため、クロック信号を供給するメガセルを合成領域内に均等に配置できる。図８に、合成領域１０１における、クロック信号を供給するメガセル２１０の位置の例を示す。図８は、１００個（１０個×１０個）のメガセルから構成される合成領域１０１に、４個のメガセル２１０を配置した例である。図８に示したメガセル２１０は、メガセル２１０の周囲に配置された２５個（５個×５個）のメガセルにクロック信号を供給する。又、メガセル２００のクロック負荷が同一であるため、合成領域１０１内のクロックスキューを低減することができる。そのため、クロック設計が容易になり、半導体集積回路の設計時間を短縮することができる。
【００２８】
一方、異なる種類のメガセルを合成領域に配置することができる。例えば、合成領域１０１内の場所によって使用されるセルの種類に偏りがある場合は、合成領域１０１内の場所に応じて、セルの構成が異なるメガセルを配置してもよい。ただし、合成領域１０１上の電源配線やクロック配線の設計が容易になるように、すべてのメガセルの形状は同一とする。以下に、セルの構成が互いに異なる複数のメガセルを使用する例を説明する。
【００２９】
セル配置情報記憶領域２３に格納されたセル配置情報には、セル配置部１１によってレイアウトされたセルの配置場所の情報が含まれる。そのため、レイアウトされたセルの配置場所を容易に知ることができる。即ち、解析部１２が、セル配置情報に基づき、合成領域１０１内の場所によって使用されるセルの種類を解析する。そして、セルの配置に偏りがある場合は、複数のセル情報を作成する。
【００３０】
例えば、図９に斜線部として示した合成領域１０１の領域１０１Ａにインバータ回路ＩＶが多く配置され、合成領域１０１の領域１０１Ｂにバッファ回路ＢＦが多く配置されている場合について説明する。合成領域１０１全体に使用されるセルの種類及び数に基づき、メガセル２００を構成するセルが選択される。したがって、合成領域１０１全体にメガセル２００を配置すると、領域１０１Ａにおいては、使用されないバッファ回路ＢＦが多くなり、インバータ回路ＩＶが不足する可能性がある。一方、領域１０１Ｂにおいては、使用されないインバータ回路ＩＶが多くなり、バッファ回路ＢＦが不足する可能性がある。
【００３１】
上記の問題を解決するために、領域１０１Ａ及び領域１０１Ｂそれぞれのセル情報に基づき、複数のメガセルを作成する。即ち、解析部１２が、領域１０１Ａ及び領域１０１Ｂそれぞれのセル情報を作成する。そして、作成部１３が、領域１０１Ａ及び領域１０１Ｂのセル情報に基づき、それぞれメガセルを作成する。図１０に、領域１０１Ａのセル情報に基づき作成されたメガセル２０１の構成例を示す。メガセル２００に比べ、メガセル２０１はインバータ回路ＩＶを多く含み、バッファ回路ＢＦが少ない。一方、図１１に、領域１０１Ｂのセル情報に基づき作成されたメガセル２０２の構成例を示す。メガセル２００に比べ、メガセル２０２はバッファ回路ＢＦを多く含み、インバータ回路ＩＶが少ない。メガセル２０１、２０２の形状は、メガセル２００と同一である。領域１０１Ａにメガセル２０１、領域１０１Ｂにメガセル２０２、領域１０１Ａ及び領域１０１Ｂ以外の合成領域１０１にメガセル２００を配置することにより、合成領域１０１に含まれるセルの使用率を向上させることができる。同一種類のメガセルを合成領域１０１に敷き詰める場合に比べて、ＯＰＣ処理を行う対象は増える。しかし、合成領域１０１をセルを用いてレイアウトする場合に比べれば、マスク設計の時間を短縮することができる。
【００３２】
又、例えば全加算器やクロックバッファ回路等の、合成領域内において少数しか使用されないセル（以下において「少数セル」という。）がある場合は、すべてのメガセルが少数セルを含む必要はない。少数セルを含むメガセルを合成領域に敷き詰めた場合、合成領域全体におけるセルの使用率が低下するためである。したがって、少数セルを含む特別なメガセルを作成することが好ましい。少数セルであるか否かは、解析部１２がセル配置情報から容易に判断することができる。そして、解析部１２は、少数セルを含むメガセルの情報を作成する。作成部１３は、少数セルを含むセル情報から、少数セルを含むメガセルを作成する。少数セルを含むメガセルの形状は、他のメガセルと同一の形状とする。図１２に、少数セルとして全加算器ＦＡＤＤを含むメガセル２０３の例を示す。図１３に、合成領域１０１にメガセル２０３を配置した例を示す。メガセル２０３を配置する場所は、セル情報に基づき決めることができる。
【００３３】
ところで、信号経路（パス）を構成するために使用されるセルが、一つのメガセル内の複数のパスで重複する場合がある。一方、メガセルに含まれるセルの種類と数には制限がある。そのため、使用したいセルが使用できないパスが発生する可能性がある。その場合は、レイアウト部１４が、使用できないセルと同等の機能を有する代替セルを使用してパスを構成する。「代替セル」とは、メガセル内の複数のセルを組み合わせることなどにより作成されるセル、或いは、使用したいセルと同等の機能を有するが、動作速度が遅いセル等である。つまり、通常は代替セルの動作速度は使用したいセルの動作速度より遅くなる。したがって、複数のパスにおいて使用したいセルが重複した場合は、クリティカルパス等の、より速い動作速度が必要とされるパスに、セルを優先的に割り当てる。そして、動作速度に対する要求が厳しくないパスに、代替セルを割り当てる。その結果、合成領域全体としての回路性能の低下を抑制できる。
【００３４】
メガセルを使用せずに、セルをチップ領域の任意の位置に配置した場合は、チップ面積に占める全セル面積の割合は、通常７０％〜８０％程度である。しかし、合成領域の形状に合わせてメガセルの形状を設定することにより、合成領域にメガセルを敷き詰めることができる。その結果、メガセルを使用するレイアウト方法により、チップ面積に占める全セル面積の割合を増加させることが可能である。つまり、チップ上のセル等が配置されない領域が減少し、チップの使用率を向上させることができる。
【００３５】
又、メガセル内のセルの配置は確定されている。そのため、セル間の境界を超えて、メガセル内のレイアウトパターンを変更することができる。例えば、トランジスタのソースを複数のセルで共有するなどして、メガセルの面積を減少させることが可能である。その結果、メガセルを使用しないレイアウト方法で作成されたレイアウトパターンに比べ、小さい面積で同等の機能を有するレイアウトパターンを作成することができる。
【００３６】
以上に説明したように、本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によれば、複数のセルから構成されるメガセルを使用してマッピングすることにより、合成領域のレイアウトのデータを階層構造にすることができる。又、メガセルの形状を統一することにより、電源配線或いはクロック配線の配置を容易に行える。その結果、マスク設計に要する時間を短縮することができる。更に、メガセルを使用しないレイアウト方法に比べて、チップ面積を減少することができる。
【００３７】
図１に示した一連の半導体集積回路のレイアウト方法は、図１と等価なアルゴリズムのプログラムにより、図２に示したレイアウト生成システムを制御して実行できる。このプログラムは、図２に示したレイアウト生成システムを構成する記憶装置２０に記憶させればよい。又、このプログラムは、コンピュータ読み取り可能な記録媒体に保存し、この記録媒体を図２に示した記憶装置２０に読み込ませることにより、本発明の一連の半導体集積回路のレイアウト方法を実行することができる。
【００３８】
（第２の実施の形態）
本発明の第２の実施の形態に係る半導体集積回路のレイアウト方法を説明するためのフローチャートを図１４に示す。図１４に示すように、メガセルを選択するステップＳ１４５を含む点が、図１に示したレイアウト方法と異なる。図１４に示すレイアウト方法は、例えば図１５に示すレイアウト生成システムによって実行することが可能である。図１５に示したレイアウト生成システムは、メガセルライブラリ３５とメガセル選択部１５を更に備える点が、図２に示したレイアウト生成システムと異なる。メガセルライブラリ３５には、複数のメガセルが格納される。メガセル選択部１５は、メガセルライブラリ３５から、合成領域に使用するメガセルを選択する。
【００３９】
作成済みのメガセルを利用すれば、マスク設計に要する時間を短縮することができる。例えば、図１に示したレイアウト方法において作成されたメガセル２００〜２０３等を、メガセルライブラリ３５に格納する。そして、新たなマスクを設計する際に、利用できるメガセルがメガセルライブラリ３５に格納されている場合には、そのメガセルを使用してマスク設計を行う。利用できるメガセルがメガセルライブラリ３５に格納されていない場合は、図１を用いて説明した方法と同様にして、新たにメガセルを作成する。
【００４０】
図１５に示したレイアウト生成システムを用いて、メガセルライブラリ３５に格納されたメガセルを利用して半導体集積回路のレイアウトを行う例を、図１４のフローチャートを用いて説明する。
【００４１】
（イ）図１４に示したステップＳ１１０〜Ｓ１４０において、図１を用いて説明した例と同様にして、合成領域１０１に配置されたセルのセル情報を作成する。作成されたセル情報は、セル情報記憶領域２４に格納される。
【００４２】
（ロ）ステップＳ１４５において、図１５に示すメガセル選択部１５が、セル情報記憶領域２４からセル情報を読み出す。そして、メガセル選択部１５は、セル情報に基づき、メガセルライブラリ３５に格納された複数のメガセルから、メガセルを選択する。具体的には、メガセル選択部１５は、合成領域１０１に配置されたセルの種類、及びセルの数等に基づき、メガセルを選択する。例えば、合成領域１０１に配置されたセルの種類とセルの数の比に応じて、メガセルを選択する。選択されたメガセルは、メガセル情報記憶領域２５に格納される。
【００４３】
（ハ）ステップＳ１６０〜Ｓ１７０において、図１を用いて説明した例と同様にして、論理動作情報に基づき、レイアウト部１４が、ステップＳ１４５において選択されたメガセルを使用してマッピングを行う。マッピング結果は、第２マッピング情報として、第２マッピング情報記憶領域２６に格納される。そして、レイアウト部１４が、第２マッピング情報に基づき、合成領域１０１をレイアウトする。レイアウト情報は、レイアウト情報記憶領域２７に格納される。
【００４４】
ステップＳ１４５において、セル情報に対応する適切なメガセルがメガセルライブラリ３５に格納されていない場合には、図１のステップＳ１５０において説明したように、新たなメガセルを作成する。
【００４５】
メガセルライブラリ３５には、使用実績のあるメガセルが格納される。つまり、メガセルライブラリ３５には、デザインルールチェックを満足するメガセルが格納される。又、ＯＰＣ処理等を行ったメガセルを格納することもできる。したがって、メガセルライブラリ３５に格納されたメガセルと同一の製造プロセス及び製造装置でメガセルを製造する場合には、メガセルライブラリ３５に格納されたメガセルをＯＰＣ処理等を行わずに使用することができる。つまり、使用実績のあるメガセルを、設計資産（ＩＰ）として利用できる。そのため、メガセルを作成するステップや、メガセルのＯＰＣ処理等の工程を省略できる。その結果、本発明の第２の実施の形態に係る半導体集積回路のレイアウト方法によれば、マスク設計に要する時間を短縮することができる。他は、第１の実施の形態と実質的に同様であり、重複した記載を省略する。
【００４６】
（第３の実施の形態）
本発明の第３の実施の形態に係わる半導体集積回路のレイアウト方法を説明するためのフローチャートを図１６に示す。図１６に示すように、合成領域内で使用するメガセルのクロック負荷を調整するステップＳ１５５を更に含む点が、図１に示したレイアウト方法と異なる。図１６に示すレイアウト方法は、例えば図１７に示すレイアウト生成システムによって実行することが可能である。図１５に示したレイアウト生成システムは、クロック負荷調整部１６を更に備える点が、図２に示したレイアウト生成システムと異なる。クロック負荷調整部１６は、合成領域内で使用するメガセルのクロック負荷の合計が同一になるように、メガセル毎にクロック負荷を調整する。
【００４７】
図１７に示したレイアウト生成システムを用いて、図１６に示したレイアウト方法により半導体集積回路のレイアウトを行う例を説明する。以下に、合成領域１０１に配置されるメガセルとして、図１８に示すメガセル２１１及び図１９に示すメガセル２１２が作成される場合について説明する。図１８に示すように、メガセル２１１はフリップフロップ２１１ａ、２１１ｂを含む。図１９に示すように、メガセル２１２はフリップフロップ２１２ａを含む。フリップフロップ２１１ａ、２１１ｂ及び２１２ａに、クロック配線４００を介して、クロックバッファ回路（図示略）から出力されるクロック信号が入力される。又、フリップフロップ２１１ａとフリップフロップ２１２ａのクロック入力端子の入力容量は同一であるとする。
【００４８】
（イ）図１６に示したステップＳ１１０〜Ｓ１５０において、図１を用いて説明した例と同様にして、合成領域１０１に配置されるメガセルを作成する。作成されたメガセル２１１及びメガセル２１２に含まれるセルの配置及び形状等のメガセル情報が、メガセル情報記憶領域２５に格納される。
【００４９】
（ロ）ステップＳ１５５において、クロック負荷調整部１６が、メガセル情報記憶領域２５に格納されたメガセル情報を読み出す。そして、クロック負荷調整部１６は、メガセル２１１とメガセル２１２をそれぞれ構成するセルの配置を比較する。具体的には、クロック負荷調整部１６は、クロック信号が入力されるセルの位置と数について、メガセル２１１とメガセル２１２を比較する。メガセル２１１内に配置されたフリップフロップ２１１ａと、メガセル２１２内に配置されたフリップフロップ２１２ａは、クロック入力端子の入力容量が同一である。しかし、メガセル２１１内にフリップフロップ２１１ｂが配置されているため、メガセル２１１のクロック負荷の合計とメガセル２１２のクロック負荷の合計は異なる。クロック負荷調整部１６は、メガセル２１１のクロック負荷の合計とメガセル２１２のクロック負荷の合計を同一にするために、メガセル２１２のクロック負荷を調整する。具体的には、図２０に示すように、メガセル２１１におけるフリップフロップ２１２ｂに対応するメガセル２１１の位置に、容量２１２ｃを配置する。容量２１２ｃの容量は、フリップフロップ２１１ｂのクロック入力端子の入力容量と同一にする。その結果、メガセル２１１のクロック負荷の合計とメガセル２１２のクロック負荷の合計が同一になる。容量２１２ｃが配置されたメガセル２１２Ａの情報は、メガセル情報記憶領域２５に格納される。
【００５０】
（ハ）ステップＳ１６０〜Ｓ１７０において、図１を用いて説明した例と同様にして、レイアウト部１４が、論理動作情報に基づき、メガセル２１１及びメガセル２１２Ａを使用してマッピングを行う。マッピング結果は、第２マッピング情報として第２マッピング情報記憶領域２６に格納される。次いで、レイアウト部１４が、第２マッピング情報に基づき、合成領域１０１をレイアウトする。レイアウト情報は、レイアウト情報記憶領域２７に格納される。
【００５１】
以上に説明したように、第３の実施の形態に係る半導体集積回路のレイアウト方法によれば、セル配置が互いに異なる複数のメガセルが合成領域に配置されている場合でも、合成領域に配置されるすべてのメガセルのクロック負荷の合計を同一にすることができる。そのため、クロックバッファ回路を含むメガセルを合成領域内に均等に配置できる。その結果、クロック設計が容易になるため、設計期間が短縮される。更に、チップ上に複数の合成領域がある場合に、すべての合成領域に使用されるメガセルのクロック負荷の合計を同一にすることにより、複数の合成領域でチップ全体のクロックスキューを低減することができる。他は、第１の実施の形態と実質的に同様であり、重複した記載を省略する。
【００５２】
（その他の実施の形態）
上記のように、本発明は第１乃至第３の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
【００５３】
既に述べた第１乃至第３の実施の形態の説明においては、セル配置情報記憶領域２３に格納されたセル配置情報に基づき、メガセルを作成或いは選択する方法を説明した。しかし、第１マッピング情報記憶領域２２に格納された第１マッピング情報を解析し、解析した結果に基づきメガセルを生成することも可能である。その結果、図１のステップＳ１３０〜Ｓ１４０を省略することができる。
【００５４】
このように、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。したがって、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【図面の簡単な説明】
【００５５】
【図１】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法を説明するためのフローチャートである。
【図２】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法を実行するレイアウト生成システムの構成例を示す模式図である。
【図３】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法を適用するチップ領域の例を示す模式図である。
【図４】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によって作成されるメガセルを構成するセルの情報である。
【図５】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によって作成されるメガセルの例を示す模式図である。
【図６】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によって作成される合成領域の例を示す模式図である。
【図７】図６に示した合成領域に電源配線を配置した例を示す模式図である。
【図８】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法により、合成領域にクロック信号を供給するクロックバッファ回路を配置した例を示す模式図である。
【図９】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法を適用する、位置によりセルの種類に偏りがあるチップ領域の例を示す模式図である。
【図１０】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によって、セルの位置情報に基づき作成されるメガセルの例を示す模式図である。
【図１１】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によって、セルの位置情報に基づき作成されるメガセルの他の例を示す模式図である。
【図１２】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法によって作成される、少数セルを含むメガセルの例を示す模式図である。
【図１３】本発明の第１の実施の形態に係る半導体集積回路のレイアウト方法により、合成領域に少数セルを含むメガセルを配置した例を示す模式図である。
【図１４】本発明の第２の実施の形態に係る半導体集積回路のレイアウト方法を説明するためのフローチャートである。
【図１５】本発明の第２の実施の形態に係る半導体集積回路のレイアウト方法を実行するレイアウト生成システムの構成例を示す模式図である。
【図１６】本発明の第３の実施の形態に係る半導体集積回路のレイアウト方法を説明するためのフローチャートである。
【図１７】本発明の第３の実施の形態に係る半導体集積回路のレイアウト方法を実行するレイアウト生成システムの構成例を示す模式図である。
【図１８】本発明の第３の実施の形態に係る半導体集積回路のレイアウト方法によって作成されるメガセルの例を示す模式図である。
【図１９】本発明の第３の実施の形態に係る半導体集積回路のレイアウト方法によって作成されるメガセルの他の例を示す模式図である。
【図２０】本発明の第３の実施の形態に係る半導体集積回路のレイアウト方法によって、クロック負荷を調整されたメガセルの例を示す模式図である。
【符号の説明】
【００５６】
１１…セル配置部
１２…解析部
１３…作成部
１４…レイアウト部
１５…メガセル選択部
１６…クロック負荷調整部
２３…セル配置情報記憶領域
２４…セル情報記憶領域
２７…レイアウト情報記憶領域
３５…メガセルライブラリ
【図１】
2006285572.tif 000003
【図２】
2006285572.tif 000004
【図３】
2006285572.tif 000005
【図４】
2006285572.tif 000006
【図５】
2006285572.tif 000007
【図６】
2006285572.tif 000008
【図７】
2006285572.tif 000009
【図８】
2006285572.tif 000010
【図９】
2006285572.tif 000011
【図１０】
2006285572.tif 000012
【図１１】
2006285572.tif 000013
【図１２】
2006285572.tif 000014
【図１３】
2006285572.tif 000015
【図１４】
2006285572.tif 000016
【図１５】
2006285572.tif 000017
【図１６】
2006285572.tif 000018
【図１７】
2006285572.tif 000019
【図１８】
2006285572.tif 000020
【図１９】
2006285572.tif 000021
【図２０】
2006285572.tif 000022