(57)【特許請求の範囲】
【請求項１】
階層設計におけるトップ階層の複数のモジュールのうち少なくとも１つのモジュールが、該モジュールの周囲に沿って配置された複数の外側バッファセルと、該複数の外側バッファセルの内側に配置され、該外側バッフアセルを介して他のモジュール又はチップＩ／Ｏセルとの間で信号が入出力される内側回路とを有する集積論理回路の階層設計方法において、
（ａ）該複数の外側バッファセルの配置領域が足りない場合には、足りるように該複数の外側バッファセルを有する該モジュールのサイズを拡大するステップと、
（ｂ）該複数のモジュール間及び該複数のモジュールと該チップＩ／Ｏセルとの間の仮配線に基づいて、該複数のモジュールを配置するとともに該外側バッファセルの各々の位置を定めるステップと、
を有し、
該外側バッファセルには、該モジュールの配置領域の隣り合う２辺の長さの合計の長さの配線を介して接続されたトランジスタを直接駆動可能な駆動能力を有する出力段トランジスタを配置することを特徴とする集積論理回路の階層設計方法。
【請求項２】
階層設計におけるトップ階層の複数のモジュールのうち少なくとも１つのモジュールが、該モジュールの周囲に沿って配置された複数の外側バッファセルと、該複数の外側バッファセルの内側に配置され、該外側バッフアセルを介して他のモジュール又はチップＩ／Ｏセルとの間で信号が入出力される内側回路とを有する集積論理回路の階層設計方法において、
（ａ）該複数の外側バッファセルの配置領域が足りない場合には、足りるように該複数のモジュールを仕切直しするステップと、
（ｂ）該複数のモジュール間及び該複数のモジュールと該チップＩ／Ｏセルとの間の仮配線に基づいて、該複数のモジュールを配置するとともに該外側バッファセルの各々の位置を定めるステップと、
を有し、
該外側バッファセルには、該モジュールの配置領域の隣り合う２辺の長さの合計の長さの配線を介して接続されたトランジスタを直接駆動可能な駆動能力を有する出力段トランジスタを配置することを特徴とする集積論理回路の階層設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、モジュールを備えた集積論理回路の階層設計方法に関する。
【０００２】
【従来の技術】
集積論理回路の高機能化及び大規模化に伴って、階層化設計におけるトップ階層（チップレベルの階層）にあるモジュールの入出力端子数が数千になることがあり、一方、回路素子の微細化に伴って論理ゲートの駆動能力が小さくなり、モジュール間の長いパスを配線するには、その途中にいくつものリピータセル（バッファゲート）を挿入しなければならない。このため、構成が複雑になるとともにタイミング調整箇所が多くなり、タイミングエラーチェックとレイアウト修正の繰り返し回数が多くなって、集積論理回路の設計期間が長くなる原因となっている。
【０００３】
【発明が解決しようとする課題】
本発明の目的は、このような問題点に鑑み、トップ階層のモジュール間接続構成を簡単化しタイミング調整箇所を低減して設計期間を短縮することが可能な集積論理回路の階層設計方法を提供することにある。
【０００４】
【課題を解決するための手段及びその作用効果】
本発明の一態様では、チップ内にモジュールが配置された集積論理回路において、該モジュールは、該モジュールの周囲に沿って配置された複数の外側バッファセルと、該複数の外側バッファセルの内側に配置された内側回路とを有し、該内側回路は、該外側バッファセルを介して該外側バッファセルの外部かつ該チップ内の回路との間で信号が入出力される。
【０００５】
この構成によれば、モジュールの内側と外側の回路の間の信号入出力が必ず該モジュールの外側バッファセルを介して行われるので、接続の構成が簡単になるとともにタイミングエラー調整箇所が従来よりも削減され、タイミングエラーチェックとレイアウト修正の繰り返し処理回数も低減されて、設計期間が短縮される。
【０００６】
例えば、上記外側バッファセルの出力段トランジスタのサイズは、上記内側回路を構成するトランジスタのサイズよりも大きく、該外側バッファセルは、モジュール配置領域の最大マンハッタン長の配線を介してチップ内トランジスタを直接駆動可能な駆動能力を有する。
この構成によれば、上記効果が高められる。
【０００７】
上記複数の外側バッファセルの配置領域が足りない場合には、足りるように、該複数の外側バッファセルを有する上記モジュールのサイズを拡大し又は上記複数のモジュールを仕切直しする。
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【０００８】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を説明する。
図１は、集積論理回路が形成されるチップ１０の階層設計におけるトップ階層のモジュール配置を示す。
チップ１０の周囲部には複数のパッド１１が配置され、その各々に対応してＩ／Ｏセル１２が配置され、複数のＩ／Ｏセル１２の内側にモジュール１３〜１８が配置されている。
【０００９】
モジュール１６〜１８は従来のハードマクロであり、それぞれ最適設計されていて、トップ階層の不図示の端子の位置は固定されている。
これに対し、モジュール１３〜１５はいずれも本実施形態の特徴的な構成であり、例えばモジュール１４は、その周囲に沿って配置された複数の外側バッファセル２０と、これらの内側に配置された内側回路２１とからなり、内側回路２１とモジュール１４の外部の回路との間の信号の入出力は、外側バッファセル２０を介して行われる。トップ階層における配線長を短くするために、これら外側バッファセル２０の配置は、トップ階層の仮配線を行ってモジュールの配置が決定された後に定められる。複数の外側バッファセル２０は、互いに同一構成であり、例えば図２（Ａ）〜（Ｃ）に示すように、１つのインバータで構成された外側バッファセル２０Ａ、２つのインバータが縦続接続された外側バッファセル２０Ｂ又は１つのＤフリップフロップで構成された外側バッファセル２０Ｃである。入力用と出力用の外側バッファセルとは、回路構成は互いに同一であるが、互いに配置方向が逆になっている。
【００１０】
図３（Ａ）及び（Ｂ）はそれぞれ図２（Ａ）及び（Ｂ）の回路をＣＭＯＳで構成したパターン例を示す。図２（Ａ）及び（Ｂ）中、ＶＤＤ及びＶＳＳは電源配線であり、Ｇ１及びＧ２はゲートラインであり、ＩＮ及びＯＵＴはそれぞれ入力線及び出力線であり、Ｐ１〜Ｐ３及びＮ１〜Ｎ３はそれぞれＰ型領域及びＮ型領域である。
【００１１】
外側バッファセル２０の出力段のトランジスタは、そのサイズが内側回路２１のトランジスタのそれよりも大きく、モジュール間最大配線長、すなわちモジュール配置領域の隣り合う２辺の長さの合計２Ｌ（最大マンハッタン長）の配線を介して接続されたチップ内トランジスタを直接駆動可能な駆動能力を有する。
モジュール１４への電力は、その上方の電源配線から層間コンタクトを介して供給される。
【００１２】
モジュール１３及び１５についてもモジュール１４と同様に構成されている。モジュール１５は、外側バッファセル２２の内側に配置された回路２３の一部として、マクロセル２３Ｘを備えている。
トップ階層における自動配線では、モジュール１３〜１８の間及びこれらと複数のＩ／Ｏセル１２との間で配線が行われ、外側バッファセルの上記駆動能力により、モジュール１３〜１５の間の配線、モジュール１３〜１５と複数のＩ／Ｏセル１２との間の配線、及び、モジュール１３〜１５からモジュール１６〜１８へ信号を供給する配線については、配線の途中にリピータセルを挿入する必要がない。図１には、モジュール１３の外側バッファセル２４とモジュール１５の外側バッファセル２２との間を直接接続する配線２５が例示的に示されている。
【００１３】
このような接続により、接続の構成が簡単になるとともにタイミングエラー調整箇所が大幅に削減され、タイミングエラーチェックとレイアウト修正の繰り返し処理回数も大幅に低減されて、設計期間が短縮される。
なお、トップ階層において配線される配線のピッチ及び幅は、外側バッファセルの上記駆動能力により、内側回路のそれより広くてもよい。
【００１４】
外側バッファセル２０に要求される駆動能力により外側バッファセル２０のサイズが定まり、これにより、モジュール１４のサイズが定まると、配置可能な外側バッファセル２０の数が定まる。したがって、外側バッファセル２０の数が不足する場合、モジュール１４を設計変更する必要がある。
図４は、この設計変更を示すフローチャートである。
【００１５】
（Ｓ１）トップ階層の各モジュールをレイアウト設計する。
（Ｓ２）外側バッファセル数が不足、すなわち外側バッファセル領域が不足するモジュールがあればステップＳ３へ進み、そうでなければ処理を終了する。
（Ｓ３）外側バッファセル不足領域が所定値以下で小さい場合には、ステップＳ４へ進み、そうでなければステップＳ５へ進む。
【００１６】
（Ｓ４）外側バッファセル不足領域が無くなるようにモジュール枠を拡大する。例えば図５（Ａ）に示すようにモジュール１４の外側バッファセル２０の領域が不足している場合、モジュール１４の枠を拡大して図５（Ｂ）に示すモジュール１４Ａとすることにより、外側バッファセル２０の不足領域を無くする。次に、ステップＳ２へ戻る。
【００１７】
（Ｓ５）互いに接続される複数のモジュールについて、モジュールを仕切り直しすることにより、各モジュールのサイズ及び必要な外側バッファセルの数を変更して、外側バッファセル不足領域を無くする。例えば図５（Ａ）において、内側回路２３を回路２３ａと２３ｂとに分割し、内側回路２３ａをモジュール１４内へ移動させることにより、図５（Ｃ）に示すモジュール１４Ｂ及びモジュール１５Ａを形成する。
【００１８】
この場合、図６に示すように必要な外側バッファセル数を低減することも可能である。例えば図６（Ａ）に示すように内側回路２１の一部であるノアゲート２１１及びナンドゲート２１２の出力がそれぞれモジュール１４の外側バッファセル２０１及び２０２を介してモジュール１５の外側バッファセル２２１及び２２２に接続され、外側バッファセル２２１及び２２２の出力が、内側回路２３ａの一部であるノアゲート２３１に接続されている場合、モジュールの仕切り直しによりノアゲート２３１をモジュール１４内へ移動させて図６（Ｂ）に示す如く接続すると、図６（Ａ）の外側バッファセル２０２及び２２２が不要となり、モジュールの必要な外側バッファセル数が減少する。
【００１９】
次に、ステップＳ２へ戻る。
図７は図１の変形例であり、チップ１０Ａのトップ階層のモジュールは、周囲に外側バッファセル２０が形成されたモジュール１３、１４Ｃ、１５Ｃ及び１９のみからなる。モジュール１４Ｃ内の内側回路２１はその一部としてマクロセル２１Ｙを含み、モジュール１５Ｃ内の内側回路２３はその一部としてマクロセル２３Ｙを含んでいる。
【００２０】
図８は図１の他の変形例であり、チップ１０Ｂのトップ階層は、周囲に外側バッファセルが形成された１つのモジュール１３と、端子位置が固定された複数のハードマクロ（モジュール）３０とを含んでいる。本発明は、少なくとも１つの、外側バッファセルを備えたモジュールを含んでおれば、上記効果が得られる。
なお、各モジュールを設計した後にトップ階層の自動配置配線設計をしても、その逆であってもよい。また、複数の外側バッファ回路の一部は、電源供給端子であってもよい。
【図面の簡単な説明】
【図１】  本発明の一実施形態の集積論理回路が形成されるチップの階層設計におけるトップ階層のモジュール配置を示す図である。
【図２】  （Ａ）〜（Ｃ）はいずれも図１中のモジュールを構成する外側バッファセルの回路例を示す図である。
【図３】  （Ａ）及び（Ｂ）はそれぞれ図２（Ａ）及び（Ｂ）の回路のパターン例を示す図である。
【図４】  外側バッファ領域不足の場合のモジュール設計変更を示すフローチャートである。
【図５】  （Ａ）〜（Ｃ）は図４中のモジュール設計変更処理の説明図である。
【図６】  図４中のステップＳ５の処理を説明するための部分論理回路図である。
【図７】  図１の変形例を示すトップ階層モジュール配置図である。
【図８】  図１の他の変形例を示すトップ階層モジュール配置図である。
【符号の説明】
１０、１０Ａ、１０Ｂ  チップ
１１  パッド
１２  Ｉ／Ｏセル
１３〜１８、１４Ａ〜１４Ｃ、１５Ａ、１５Ｃ  モジュール
２０、２０Ａ〜２０Ｃ、２２、２４、２０１、２０２、２２１、２２２  外側バッファセル
２１、２３、２３ａ、２３ｂ  内側回路
２１Ｙ、２３Ｘ、２３Ｙ  マクロセル
２１１、２３１  ノアゲート
２１２  ナンドゲート
【図１】
0003891813.tif 000002
【図２】
0003891813.tif 000003
【図３】
0003891813.tif 000004
【図４】
0003891813.tif 000005
【図５】
0003891813.tif 000006
【図６】
0003891813.tif 000007
【図７】
0003891813.tif 000008
【図８】
0003891813.tif 000009