(57)【要約】【課題】設計期間の短縮が実現可能な半導体装置の設計方法を提供する。【解決手段】例えば、セルレイアウトライブラリＣＬＬＩＢ上に、それぞれ同一のレイアウト寸法、入力・出力端子配置を備えたバッファ用セルレイアウトＣＬ＿ＢＦ［１］〜ＣＬ＿ＢＦ［ｎ］や、それぞれ同一のレイアウト寸法、入力・出力端子配置を備えたフリップフロップ用セルレイアウトＣＬ＿ＦＦ［１］〜ＣＬ＿ＦＦ［ｍ］を準備する。コンピュータシステムは、このようなＣＬＬＩＢと回路図データ（ネットリスト）ＮＬＤＡＴを入力として、初期値となるセルレイアウト（例えばＣＬ＿ＢＦ［ｋ］）を用いて配置配線、実負荷抽出、タイミング検証を行う。タイミング違反が生じた場合には、初期値となるセルレイアウト（例えばＣＬ＿ＢＦ［ｋ］）を次のセルレイアウト（例えばＣＬ＿ＢＦ［ｋ＋１］）に差し替え、実負荷抽出に戻って同様の処理を繰り返す。【選択図】図１
2010027644.tif 000002
【特許請求の範囲】
【請求項１】
複数のセルおよび前記複数のセル間の結線情報を含む回路図データと、
前記複数のセルのいずれかのレイアウト候補となる第１セルレイアウトと、前記第１セルレイアウトに代わるレイアウト候補となり、前記第１セルレイアウトと同一の回路機能、レイアウト寸法、入力端子配置ならびに出力端子配置を備え、なおかつ前記第１セルレイアウトとは駆動能力が異なるように設計された第２セルレイアウトとを含むセルレイアウトライブラリとを準備する第１工程と、
コンピュータシステムが、前記回路図データおよび前記セルレイアウトライブラリを入力として自動レイアウト設計を行う第２工程とを備え、
前記第２工程では、
前記第１セルレイアウトを用いて前記回路図データに対応する第１レイアウトデータを生成する第１ステップと、
前記第１レイアウトデータから寄生容量や寄生抵抗となる実負荷データを抽出する第２ステップと、
前記回路図データと前記実負荷データを用いて前記第１レイアウトデータのタイミング違反の有無を検証する第３ステップと、
前記第１セルレイアウトに関連して前記タイミング違反が有った場合に、前記第１セルレイアウトを前記第２セルレイアウトに差し替えることで第２レイアウトデータを生成する第４ステップと、が実行されることを特徴とする半導体装置の設計方法。
【請求項２】
請求項１記載の半導体装置の設計方法において、
前記第１セルレイアウトおよび前記第２セルレイアウトの回路機能は、信号遅延を担うバッファ回路であることを特徴とする半導体装置の設計方法。
【請求項３】
請求項１記載の半導体装置の設計方法において、
前記第１セルレイアウトおよび前記第２セルレイアウトの回路機能は、信号のラッチを担うフリップフロップ回路であることを特徴とする半導体装置の設計方法。
【請求項４】
請求項３記載の半導体装置の設計方法において、
前記フリップフロップ回路は、
クロック入力端子から受信したクロック信号をバッファリングして出力するクロックバッファ回路と、
入力端子からの信号を前記クロックバッファ回路からのクロック信号に同期してラッチし、このラッチした信号を出力端子に出力するマスタスレーブラッチ回路とを備え、
前記第１セルレイアウトと前記第２セルレイアウトでは、前記マスタスレーブラッチ回路内で前記出力端子を駆動する出力トランジスタのサイズが異なっていることを特徴とする半導体装置の設計方法。
【請求項５】
請求項３記載の半導体装置の設計方法において、
前記フリップフロップ回路は、
クロック入力端子から受信したクロック信号をバッファリングして出力するクロックバッファ回路と、
入力端子からの信号を前記クロックバッファ回路からのクロック信号に同期してラッチし、このラッチした信号を出力端子に出力するマスタスレーブラッチ回路とを備え、
前記第１セルレイアウトと前記第２セルレイアウトでは、前記クロックバッファ回路を構成するトランジスタのサイズが異なっていることを特徴とする半導体装置の設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置の設計方法に関し、特に論理回路の自動レイアウト設計方法に適用して有効な技術に関するものである。
【背景技術】
【０００２】
近年、特に論理回路においては、各種設計ツールを用いた設計の自動化が進んでいる。一般的な設計方法としては、論理合成ツールを用いて、ハードウェア記述言語で記載した回路仕様から回路図データ（ネットリスト）を作成し、配置配線ツールを用いて、この回路図データ内の各セル（回路素子）に実際のレイアウトを反映させると共にセル間の配線を行うことで製造時のマスクデータを完成させる。また、この際には、回路図データからの仮負荷情報を用いたタイミング検証や、レイアウト後の実負荷情報を用いたタイミング検証が適宜行われる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
図１８は、本発明の前提として検討した半導体装置の設計方法において、その処理の一例を示すフロー図である。図１８に示す処理フローは、レイアウト段階の処理フローとなっている。まず、回路図データ（ネットリスト）ＮＬＤＡＴや、セルレイアウトライブラリＣＬＬＩＢを含む設計データＤＳＮＤＡＴを入力として各種設計ツールを用いたレイアウト設計が行われる（Ｓ１８０１）。この際に、配置配線ツールは、例えば、面積値や外部端子の配置、場合によってはタイミング制約等を含むレイアウト制約ＤＦＬＹを参照しながら、ＮＬＤＡＴ内の各セルにＣＬＬＩＢ内の対応するセルレイアウトを反映させると共に、各セルレイアウト間の配線を行う。
【０００４】
次いで、実負荷抽出ツールが、Ｓ１８０１によって得られたレイアウトデータに対して、配線容量、配線抵抗、素子容量、素子抵抗等の寄生成分を算出して、実負荷データを抽出する（Ｓ１８０２）。その後、タイミング検証ツールが、この実負荷データに基づく遅延時間を用いて、例えばクロック周波数のスペック等を含むタイミング制約ＤＦＴＭを参照しながら、各フリップフロップ間のパスの遅延時間等がこのタイミング制約を満足するかを検証する（Ｓ１８０３）。ここで、仮にフリップフリップＦＦ１とＦＦ２間で各種ロジック部ＬＧ１を経由するパスがタイミング制約を満たさない場合、例えば、クロック信号（ｃｌｋ）の経路にバッファＢＦを挿入したり、遅延時間が異なる他のＢＦに入れ替えたり、あるいは駆動能力が異なる他のフリップフロップに入れ替えたり等でタイミング調整を行う必要がある。このような処理は、通常、手動で行われ、その後、再び配置配線の処理（Ｓ１８０１）に戻ることになる。
【０００５】
しかしながら、このようなタイミング調整に伴う変更等と共に再度配置配線が行われると、他のレイアウト配置が変更されることがあり、これに伴い、また別の箇所でタイミング違反が生じる恐れがある。具体的には、例えば、変更前後でバッファＢＦやフリップフロップＦＦ等のレイアウト面積が異なっていたり、あるいは変更前後でＢＦやＦＦの入出力端子配置が異なっていた場合、他のレイアウト配置がズレたり、あるいは配線長が変わったりすることがある。そうすると、タイミング調整が収束せずに、設計期間の増大を招いてしまう。
【０００６】
そこで、本発明の目的の一つは、設計期間の短縮が実現可能な半導体装置の設計方法を提供することにある。本発明の前記ならびにそれ以外の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
本願において開示される発明の代表的な実施の形態の概要を簡単に説明すれば、次のとおりである。
【０００８】
本発明の一実施の形態による半導体装置の設計方法は、複数のセルおよび各セル間の結線情報を含む回路図データと、各セルのレイアウト情報を含むセルレイアウトライブラリとを用いて、コンピュータシステムが自動レイアウト設計を行うものとなっている。ここで、セルレイアウトライブラリには、あるセルのレイアウト候補として第１セルレイアウトと第２セルレイアウトが含まれている。第１セルレイアウトと第２セルレイアウトは、同一の回路機能、レイアウト寸法、入力端子配置ならびに出力端子配置を備えるが、共に駆動能力が異なっている。コンピュータシステムは、自動レイアウト設計において、第１セルレイアウトを用いてレイアウトデータを生成した後、その実負荷を抽出してタイミング検証を行う。この際に、第１セルレイアウトに関連してタイミング違反が生じた場合には、第１セルレイアウトが第２セルレイアウトに差し替わった状態のレイアウトデータを生成する。
【０００９】
このような半導体装置の設計方法を用いると、第１セルレイアウトに関連してタイミング違反が生じた場合に、再度配置配線を行う必要がなく単純に第１セルレイアウトを第２セルレイアウトに差し替えるだけで新たなレイアウトデータを生成できる。この際に、差し替えに伴ってその周辺等に位置するレイアウトを変動させることがないため、タイミング設計が容易に収束し、設計期間の短縮が実現可能となる。
【発明の効果】
【００１０】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すると、半導体装置の設計期間が短縮可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００１２】
図１は、本発明の一実施の形態による半導体装置の設計方法において、その処理の一例を示すフロー図である。図２は、図１の設計方法を実現する半導体設計システムの構成例を示す概略図である。図２の半導体設計システムは、プロセッサ、ＲＡＭ、ハードディスク等を含むコンピュータシステムＣＯＭを用いたプログラム処理によって実現される。コンピュータシステムＣＯＭは、特に限定はされないが、例えば、配置配線ツールＰ＆Ｒ、実負荷抽出ツールＲＣＣＡＬ、およびタイミング検証ツールＳＴＡといった各種設計ツールと、この設計ツール間の入出力データを制御する設計支援ツールＤＡＳなどが実装されている。
【００１３】
配置配線ツールＰ＆Ｒは、設計支援ツールＤＡＳより制御部ＣＴＬを介してセルレイアウトライブラリＣＬＬＩＢ、回路図データ（ネットリスト）ＮＬＤＡＴ、各種制約データＤＦＤＡＴ等を受け、セルの配置ならびにセル間の配線などを行い、その結果をＣＴＬを介してレイアウトデータＬＹＤＡＴとして出力する。実負荷抽出ツールＲＣＣＡＬは、ＤＡＳよりＣＴＬを介してＬＹＤＡＴ等を受け、レイアウト上の容量成分、抵抗成分といった寄生成分を算出し、その結果をＣＴＬを介して実負荷データＲＣＤＡＴとして出力する。タイミング検証ツールＳＴＡは、ＤＡＳよりＣＴＬを介してＮＬＤＡＴ、ＲＣＤＡＴ、ＤＦＤＡＴ等を受け、ＲＣＤＡＴに基づく遅延時間を用いてＮＬＤＡＴ上の各種パスのタイミングを検証する。なお、ここでは、一例として３つの設計ツールと設計支援ツールを示したが、これに限定されるものではなく、例えば、これら全てが統合された一つの設計ツールなどであってもよい。
【００１４】
本実施の形態による半導体装置の設計方法は、このような半導体設計システムを用いて図１に示すような処理を行う。図１の処理フローは、レイアウト段階の処理フローとなっている。まずは、回路図データ（ネットリスト）ＮＬＤＡＴや、セルレイアウトライブラリＣＬＬＩＢを含む設計データＤＳＮＤＡＴを入力として、レイアウト設計が行われる。ＮＬＤＡＴは、各種端子、各種セル、およびそれらの間の接続情報を含んだデータである。ＣＬＬＩＢは、バッファＢＦ、フリップフロップＦＦ等を代表とする各種セルのレイアウト情報を含んだライブラリデータである。ここでは、例えば、バッファＢＦのセルレイアウトとして、予めｎ通りのセルレイアウトＣＬ＿ＢＦ［１］〜ＣＬ＿ＢＦ［ｎ］が設けられ、フリップフロップＦＦのセルレイアウトとして、予めｍ通りのセルレイアウトＣＬ＿ＦＦ［１］〜ＣＬ＿ＦＦ［ｍ］が設けられている。
【００１５】
ここで、ＣＬ＿ＢＦ［１］〜ＣＬ＿ＢＦ［ｎ］のそれぞれは、同一の回路占有領域（縦横レイアウト寸法）と同一の端子（入力端子および出力端子）配置を備え、互いに駆動能力（遅延時間）が異なっている。同様に、ＣＬ＿ＦＦ［１］〜ＣＬ＿ＦＦ［ｍ］のそれぞれも、同一の回路占有領域（縦横レイアウト寸法）と同一の端子（入力端子および出力端子）配置を備え、互いに駆動能力（伝播遅延時間）が異なっている。詳細なレイアウト構成例は後述するが、本実施の形態においては、このように、同一の回路占有領域と端子配置を備え、互いに駆動能力（遅延時間）が異なる複数のセルレイアウトが準備されていることが特徴となっている。
【００１６】
次いで、このような設計データＤＳＮＤＡＴを用いて、配置配線ツールＰ＆Ｒが、前述したセルレイアウトライブラリＣＬＬＩＢの中から、初期設定となるセルレイアウト（例えばＣＬ＿ＢＦ［ｋ］やＣＬ＿ＦＦ［ｋ］）を選択する（Ｓ１０１）。または、設計支援ツールＤＡＳが、配置配線ツールＰ＆Ｒに対して、初期設定となるセルレイアウトを選択させる。続いて、Ｐ＆Ｒは、この選択したセルレイアウトを用いて、配置配線を行う（Ｓ１０２）。この際に、Ｐ＆Ｒは、例えば、面積値や外部端子の配置、場合によってはタイミング制約等を含むレイアウト制約ＤＦＬＹを参照しながら、ＮＬＤＡＴ内の各セルに選択されたセルレイアウトを反映させると共に、各セルレイアウト間の配線を行う。
【００１７】
次いで、実負荷抽出ツールＲＣＣＡＬが、Ｓ１０２によって得られたレイアウトデータＬＹＤＡＴに対して、配線容量、配線抵抗、素子容量、素子抵抗等の寄生成分を算出して、実負荷データＲＣＤＡＴを抽出する（Ｓ１０３）。その後、タイミング検証ツールＳＴＡが、この実負荷データＲＣＤＡＴに基づく遅延時間を用いて、例えばクロック周波数のスペック等と含むタイミング制約ＤＦＴＭを参照しながら、各フリップフロップ間のパスの遅延時間等がこのタイミング制約を満足するかを検証する（Ｓ１０４）。タイミング制約を満足した場合には、レイアウト設計完了となる（Ｓ１０６）。
【００１８】
一方、Ｓ１０４において、タイミング制約に違反した場合、設計支援ツールＤＡＳ等が、この違反した箇所に関連するセルレイアウト（ＣＬ＿ＢＦ［ｋ］やＣＬ＿ＦＦ［ｋ］）を変更し、ＣＬ＿ＢＦ［ｋ＋１］やＣＬ＿ＦＦ［ｋ＋１］、またはＣＬ＿ＢＦ［ｋ−１］やＣＬ＿ＦＦ［ｋ−１］を新たなセルレイアウトとして適用する（Ｓ１０５）。この際に、設計支援ツールＤＡＳ等は、再度配置配線を行わせることなく、単純にレイアウトデータＬＹＤＡＴ上でセルレイアウトを差し替えるのみで、Ｓ１０３の実負荷データ抽出処理へと移行させる。つまり、回路占有領域（縦横レイアウト寸法）と端子配置が同一であれば、このような差し替えが再度配置配線を行わせることなく実現可能となる。その後は、Ｓ１０４においてタイミング制約を満足するまで、セルレイアウトを適宜差し替えながらこのような処理が繰り返される。
【００１９】
以上のように、本実施の形態による半導体装置の設計方法を用いると、図１８で述べたような再度の配置配線処理が不要となるため、タイミング調整が容易に収束し、設計期間の短縮が実現可能となる。以下においては、前述したセルレイアウト（ＣＬ＿ＢＦやＣＬ＿ＦＦなど）の詳細な構成例について説明を行う。
【００２０】
図３は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの詳細な構成例およびそれらの回路図を示すものである。図３では、２段のＣＭＯＳインバータ回路からなるバッファ回路のレイアウト構成例が示されている。１段目のＣＭＯＳインバータ回路となるＰＭＯＳトランジスタＭＰ１およびＮＭＯＳトランジスタＭＮ１のゲートが入力端子ＩＮとなり、２段目のＣＭＯＳインバータ回路となるＰＭＯＳトランジスタＭＰ２およびＮＭＯＳトランジスタＭＮ２のドレインが出力端子ＯＵＴとなる。
【００２１】
図３の（ａ）は基準となるセルレイアウトとなっており、（ｂ）と（ｃ）は、それぞれ（ａ）に対してゲート幅（Ｗ）を変更することで駆動能力（遅延時間）を変更したセルレイアウトとなっている。ここで、（ａ）〜（ｃ）のいずれも、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される入力端子ＩＮおよび出力端子ＯＵＴの配置および形状も同じとなっている。（ｂ）は、（ａ）に比べてＭＰ１に該当するＰ型半導体領域ＤＦＰの寸法と、ＭＮ１，ＭＮ２に該当するＮ型半導体領域ＤＦＮの寸法が小さくなっている。（ｃ）は、（ａ）に比べてＭＰ１，ＭＰ２に該当するＤＦＰの寸法と、ＭＮ１に該当するＤＦＮの寸法が小さくなっている。なお、図３（以降の図面も同様）において、ＶＤＤは電源電圧、ＧＮＤは接地電圧、ＰＯはゲートポリシリコン層、ＣＴはコンタクト層を意味する。
【００２２】
図４は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの他の詳細な構成例およびそれらの回路図を示すものである。図４では、２段のＣＭＯＳインバータ回路からなるバッファ回路のレイアウト構成例が示されている。１段目のＣＭＯＳインバータ回路となるＰＭＯＳトランジスタＭＰ１およびＮＭＯＳトランジスタＭＮ１のゲートが入力端子ＩＮとなり、２段目のＣＭＯＳインバータ回路となるＰＭＯＳトランジスタＭＰ２［１］，ＭＰ２［２］およびＮＭＯＳトランジスタＭＮ２［１］，ＭＮ２［２］のドレインが出力端子ＯＵＴとなる。
【００２３】
図４の（ａ）は基準となるセルレイアウトとなっており、（ｂ）と（ｃ）は、それぞれ（ａ）に対してゲート幅（Ｗ）を変更することで駆動能力（遅延時間）を変更したセルレイアウトとなっている。ここで、（ａ）〜（ｃ）のいずれも、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される入力端子ＩＮおよび出力端子ＯＵＴの配置および形状も同じとなっている。（ｂ）は、（ａ）に比べてＭＰ１に該当するＰ型半導体領域ＤＦＰの寸法と、ＭＮ１，ＭＮ２［１］，ＭＮ２［２］に該当するＮ型半導体領域ＤＦＮの寸法が大きくなっている。（ｃ）は、（ａ）に比べてＭＰ１に該当するＤＦＰの寸法が小さくなっており、ＭＮ２［１］，ＭＮ２［２］に該当するＤＦＮの寸法が大きくなっている。
【００２４】
図５は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの更に他の詳細な構成例およびその回路図を示すものである。図５では、２段のＣＭＯＳインバータ回路からなるバッファ回路のレイアウト構成例が示されている。１段目のＣＭＯＳインバータ回路となるＰＭＯＳトランジスタＭＰ１［１］，ＭＰ１［２］およびＮＭＯＳトランジスタＭＮ１のゲートが入力端子ＩＮとなり、２段目のＣＭＯＳインバータ回路となるＰＭＯＳトランジスタＭＰ２［１］〜ＭＰ２［４］およびＮＭＯＳトランジスタＭＮ２［１］〜ＭＮ２［３］のドレインが出力端子ＯＵＴとなる。なお、図５に示すセルレイアウトは、後述する図７のセルレイアウトの基準となるものである。
【００２５】
図６は、図５、図７〜図１０の示すセルレイアウトの模式的な回路図である。前述した図５、ならびに後述する図７〜図１０に示すセルレイアウトは、いずれも図６に示すような２段構成のＣＭＯＳインバータ回路となっている。１段目のＣＭＯＳインバータ回路は、単数または並列接続された複数のＰＭＯＳトランジスタからなるＰＭＯＳブロックＭＰ１＿ＢＫと、単数または並列接続された複数のＮＭＯＳトランジスタからなるＮＭＯＳブロックＭＮ１＿ＢＫとからなり、これらの各トランジスタのゲートが入力端子ＩＮとなり、ドレインが２段目の入力に接続される。２段目のＣＭＯＳインバータ回路は、単数または並列接続された複数のＰＭＯＳトランジスタからなるＰＭＯＳブロックＭＰ２＿ＢＫと、単数または並列接続された複数のＮＭＯＳトランジスタからなるＮＭＯＳブロックＭＮ２＿ＢＫとからなり、これらの各トランジスタのゲートに１段目からの出力が接続され、ドレインが出力端子ＯＵＴとなる。図５の場合では、ＭＰ１＿ＢＫに２個、ＭＮ１＿ＢＫに１個、ＭＰ２＿ＢＫに４個、ＭＮ２＿ＢＫに３個のトランジスタがそれぞれ備わっていることになる。
【００２６】
図７は、図５に対して駆動能力を変更したセルレイアウトの構成例を示すものである。図７の（ａ）と（ｂ）に示すセルレイアウトは、図５のセルレイアウトと比較して、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される入力端子ＩＮおよび出力端子ＯＵＴの配置および形状も同じとなっている。図７の（ａ）のセルレイアウトは、図６を参照して、ＭＰ１＿ＢＫに２個、ＭＮ１＿ＢＫに２個、ＭＰ２＿ＢＫに３個、ＭＮ２＿ＢＫに３個のトランジスタがそれぞれ備わったものとなっている。図５の各トランジスタ数と比較すると、ＭＮ１＿ＢＫに１個加わり、ＭＰ２＿ＢＫから１個減少し、ＭＮ２＿ＢＫから１個減少している。また、図５の各トランジスタサイズと比較して、ＭＰ１＿ＢＫのゲート幅（Ｗ）が大きくなっている。一方、図７の（ｂ）のセルレイアウトは、図６を参照して、ＭＰ１＿ＢＫに１個、ＭＮ１＿ＢＫに１個、ＭＰ２＿ＢＫに４個、ＭＮ２＿ＢＫに３個のトランジスタがそれぞれ備わったものとなっている。図５の各トランジスタ数と比較すると、ＭＰ１＿ＢＫから１個減少している。なお、これらのトランジスタ数の増減は、ゲート幅（Ｗ）の増減と等価である。
【００２７】
図８は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの更に他の詳細な構成例を示すものである。図９および図１０のそれぞれは、図８に対して駆動能力を変更したセルレイアウトの構成例を示すものである。図８のセルレイアウトは、図６を参照して、ＭＰ１＿ＢＫに２個、ＭＮ１＿ＢＫに２個、ＭＰ２＿ＢＫに６個、ＭＮ２＿ＢＫに４個のトランジスタがそれぞれ備わったものとなっている。図９に示すセルレイアウトは、図８のセルレイアウトと比較して、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される入力端子ＩＮの配置および形状も同じとなっている。ただし、Ｍ１で形成される出力端子ＯＵＴの形状が、図８から一部削減される形で若干変更されている。この削減された箇所は、他のセルと配線する際の接続点とはならないことが明らかな領域であり、このような箇所に関しては端子形状を変更することも可能である。一方、図１０に示すセルレイアウトは、図８のセルレイアウトと比較して、回路占有領域（縦横レイアウト寸法）は同じであり、Ｍ１で形成されるＩＮおよびＯＵＴの配置および形状も同じとなっている。
【００２８】
図９のセルレイアウトは、図６を参照して、ＭＰ１＿ＢＫに３個、ＭＮ１＿ＢＫに３個、ＭＰ２＿ＢＫに４個、ＭＮ２＿ＢＫに４個のトランジスタがそれぞれ備わったものとなっている。図８の各トランジスタ数と比較すると、ＭＰ１＿ＢＫに１個加わり、ＭＮ１＿ＢＫに１個加わり、ＭＰ２＿ＢＫから２個減少している。また、図８の各トランジスタサイズと比較すると、ＭＮ１＿ＢＫ内の各トランジスタに該当するＮ型半導体領域ＤＦＮの寸法が大きくなっている。一方、図１０のセルレイアウトは、図６を参照して、ＭＰ１＿ＢＫに１個、ＭＮ１＿ＢＫに１個、ＭＰ２＿ＢＫに６個、ＭＮ２＿ＢＫに４個のトランジスタがそれぞれ備わったものとなっている。図８の各トランジスタ数と比較すると、ＭＰ１＿ＢＫから１個減少し、ＭＮ１＿ＢＫから１個減少している。また、図８の各トランジスタサイズと比較すると、ＭＮ１＿ＢＫ内の各トランジスタに該当するＮ型半導体領域ＤＦＮの寸法が大きくなっている。
【００２９】
図１１は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの更に他の詳細な構成例およびそれらの回路図を示すものである。図１１では、ＰＭＯＳトランジスタＭＰ１およびＮＭＯＳトランジスタＭＮ１からなるＣＭＯＳインバータ回路のレイアウト構成例が示されている。ＭＰ１およびＭＮ１のゲートは入力端子ＩＮとなり、ＭＰ１およびＭＮ１のドレインは出力端子ＯＵＴとなる。図１１の（ａ）は基準となるセルレイアウトとなっており、（ｂ）〜（ｅ）は、それぞれ（ａ）に対してゲート幅（Ｗ）を変更することで駆動能力（遅延時間）を変更したセルレイアウトとなっている。
【００３０】
ここで、図１１の（ａ）〜（ｅ）のいずれも、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される入力端子ＩＮおよび出力端子ＯＵＴの配置および形状も同じとなっている。図１１の（ｂ）は、（ａ）に比べてＭＰ１に該当するＰ型半導体領域ＤＦＰの寸法と、ＭＮ１に該当するＮ型半導体領域ＤＦＮの寸法が小さくなっている。（ｃ）は、（ａ）に比べてＭＮ１に該当するＤＦＮの寸法が小さくなっている。（ｄ）は、（ａ）に比べてＭＰ１に該当するＤＦＰの寸法が小さくなっている。（ｅ）は、（ａ）に比べてＭＰ１に該当するＤＦＰの寸法と、ＭＮ１に該当するＤＦＮの寸法が大きくなっている。
【００３１】
図１２は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの更に他の詳細な構成例およびそれらの回路図を示すものである。図１２では、ＰＭＯＳトランジスタＭＰ１ａ，ＭＰ１ｂおよびＮＭＯＳトランジスタＭＮ１ａ，ＭＮ１ｂからなるＮＡＮＤ回路のレイアウト構成例が示されている。電源電圧ＶＤＤと出力端子ＯＵＴの間にはＭＰ１ａとＭＰ１ｂが並列に接続され、ＯＵＴと接地電圧ＧＮＤの間にはＭＮ１ｂとＭＮ１ａが直列に接続される。ＭＰ１ａとＭＮ１ａのゲートは第１入力端子ＩＮ１となり、ＭＰ１ｂとＭＮ１ｂのゲートは第２入力端子ＩＮ２となる。図１２の（ａ）は基準となるセルレイアウトとなっており、（ｂ）〜（ｄ）は、それぞれ（ａ）に対してゲート幅（Ｗ）を変更することで駆動能力（遅延時間）を変更したセルレイアウトとなっている。
【００３２】
ここで、図１２の（ａ）〜（ｄ）のいずれも、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される各入力端子ＩＮ１，ＩＮ２および出力端子ＯＵＴの配置および形状も同じとなっている。図１２の（ｂ）は、（ａ）に比べてＭＰ１ａ，ＭＰ１ｂに該当するＰ型半導体領域ＤＦＰの寸法と、ＭＮ１ａ，ＭＮ１ｂに該当するＮ型半導体領域ＤＦＮの寸法が小さくなっている。（ｃ）は、（ａ）に比べてＭＮ１ａ，ＭＮ１ｂに該当するＤＦＮの寸法が小さくなっている。（ｄ）は、（ａ）に比べてＭＰ１ａ，ＭＰ１ｂに該当するＤＦＰの寸法が小さくなっている。
【００３３】
図１３は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの更に他の詳細な構成例およびそれらの回路図を示すものである。図１３では、ＰＭＯＳトランジスタＭＰ２ａ，ＭＰ２ｂおよびＮＭＯＳトランジスタＭＮ２ａ，ＭＮ２ｂからなるＮＯＲ回路のレイアウト構成例が示されている。電源電圧ＶＤＤと出力端子ＯＵＴの間にはＭＰ２ａとＭＰ２ｂが直列に接続され、ＯＵＴと接地電圧ＧＮＤの間にはＭＮ２ａとＭＮ２ｂが並列に接続される。ＭＰ２ａとＭＮ２ａのゲートは第１入力端子ＩＮ１となり、ＭＰ２ｂとＭＮ２ｂのゲートは第２入力端子ＩＮ２となる。図１３の（ａ）は基準となるセルレイアウトとなっており、（ｂ）〜（ｄ）は、それぞれ（ａ）に対してゲート幅（Ｗ）を変更することで駆動能力（遅延時間）を変更したセルレイアウトとなっている。
【００３４】
ここで、図１３の（ａ）〜（ｄ）のいずれも、回路占有領域（縦横レイアウト寸法）は同じであり、第１メタル配線層Ｍ１で形成される各入力端子ＩＮ１，ＩＮ２および出力端子ＯＵＴの配置および形状も同じとなっている。図１３の（ｂ）は、（ａ）に比べてＭＰ２ａ，ＭＰ２ｂに該当するＰ型半導体領域ＤＦＰの寸法と、ＭＮ２ａ，ＭＮ２ｂに該当するＮ型半導体領域ＤＦＮの寸法が小さくなっている。（ｃ）は、（ａ）に比べてＭＮ２ａ，ＭＮ２ｂに該当するＤＦＮの寸法が小さくなっている。（ｄ）は、（ａ）に比べてＭＰ２ａ，ＭＰ２ｂに該当するＤＦＰの寸法が小さくなっている。
【００３５】
図１４は、図１のセルレイアウトライブラリＣＬＬＩＢにおける各セルレイアウトの更に他の詳細な構成例を示すものであり、（ａ）は回路図、（ｂ）はレイアウト図である。図１５〜図１７のそれぞれは、図１４に対して駆動能力を変更したセルレイアウトの構成例を示すものであり、（ａ）は回路図、（ｂ）はレイアウト図である。図１４〜図１７には、マスタ・スレーブのフリップフロップ回路のレイアウト構成例が示されている。このフリップフロップ回路は、回路上では図１４（ａ）〜図１７（ａ）等に示すように、データラッチ系の回路と、クロック供給系の回路によって構成される。
【００３６】
データラッチ系の回路は、ＣＭＯＳインバータ回路ＩＶ１〜ＩＶ４と、クロックドインバータ回路ＣＩＶ１，ＣＩＶ２と、ＣＭＯＳスイッチ回路ＳＷ１，ＳＷ２を備えている。入力端子ＩＮからの信号は、ＩＶ１とＳＷ１を介して、ＩＶ２に伝送され、ＩＶ２の出力は、ＳＷ２を介してＩＶ３に伝送され、ＩＶ３の出力は、ＩＶ４を介して出力端子ＯＵＴに伝送される。ＳＷ１は、ＰＭＯＳトランジスタのゲートがクロック信号（ｃｋ）で制御され、ＮＭＯＳトランジスタのゲートが反転クロック信号（ｃｋｂ）で制御され、逆に、ＳＷ２は、ＰＭＯＳトランジスタのゲートが反転クロック信号（ｃｋｂ）で制御され、ＮＭＯＳトランジスタのゲートがクロック信号（ｃｋ）で制御される。ＣＩＶ１は、ＩＶ２の出力を入力としてＩＶ２の入力に帰還し、クロック信号（ｃｋ）が‘Ｈ’レベルの際にイネーブルとなることでマスタラッチを行う。一方、ＣＩＶ２は、ＩＶ３の出力を入力としてＩＶ３の入力に帰還し、クロック信号（ｃｋ）が‘Ｌ’レベルの際にイネーブルとなることでスレーブラッチを行う。また、クロック供給系の回路は、ＣＭＯＳインバータ回路ＩＶ５，ＩＶ６を備えている。ＩＶ５の入力は、クロック入力端子ＣＬＫに接続され、その出力がＩＶ６の入力になると共に反転クロック信号（ｃｋｂ）となる。そして、ＩＶ６の出力は、クロック信号（ｃｋ）となる。
【００３７】
このように、図１４〜図１７に示すフリップフロップ回路は、入力端子ＩＮ、クロック入力端子ＣＬＫ、出力端子ＯＵＴを備えた構成となっている。図１４（ｂ）は、その基準セルレイアウトである。図１５（ｂ）〜図１７（ｂ）のセルレイアウトは、図１４（ｂ）と比較して、同じ回路占有領域（縦横レイアウト寸法）を備え、第１メタル配線層Ｍ１で形成される各入力端子ＩＮ，ＣＬＫおよび出力端子ＯＵＴの配置および形状も同じとなっている。
【００３８】
図１５（ｂ）は、図１４（ｂ）と比較して、出力ＭＯＳトランジスタとなるＩＶ４の駆動能力（遅延時間）を変更したセルレイアウトであり、ＩＶ４を構成するＰＭＯＳトランジスタとＮＭＯＳトランジスタのゲート幅が大きくなっている。図１６（ｂ）は、図１４（ｂ）と比較して、出力ＭＯＳトランジスタとなるＩＶ４の駆動能力（遅延時間）を変更したセルレイアウトであり、ＩＶ４を構成するＰＭＯＳトランジスタとＮＭＯＳトランジスタのゲート幅が小さくなっている。図１７（ｂ）は、図１４（ｂ）と比較して、クロック供給トランジスタとなるＩＶ５およびＩＶ６の駆動能力（遅延時間）を変更したセルレイアウトであり、ＩＶ５を構成するＰＭＯＳトランジスタとＩＶ６を構成するＮＭＯＳトランジスタのゲート幅がそれぞれ小さくなっている。
【００３９】
以上のように、セルレイアウトライブラリＣＬＬＩＢ内において、同一の回路機能、回路占有領域（縦横レイアウト寸法）、端子配置および端子形状を備え、かつそれぞれの駆動能力が異なっている複数のセルレイアウトを設けることで、前述したように設計期間の短縮が実現可能となる。なお、回路機能（バッファ回路、フリップフリップ回路、ＮＡＮＤ回路等）の種類や、同一回路機能における駆動能力のバリエーションに関しては、勿論、前述した例に限定されるものではなく、適宜拡張可能である。
【００４０】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【産業上の利用可能性】
【００４１】
本発明の一実施の形態による半導体装置の設計方法は、論理回路を含む半導体装置の自動レイアウト設計方法に適用して有効な技術である。
【図面の簡単な説明】
【００４２】
【図１】本発明の一実施の形態による半導体装置の設計方法において、その処理の一例を示すフロー図である。
【図２】図１の設計方法を実現する半導体設計システムの構成例を示す概略図である。
【図３】図１のセルレイアウトライブラリにおける各セルレイアウトの詳細な構成例およびそれらの回路図を示すものである。
【図４】図１のセルレイアウトライブラリにおける各セルレイアウトの他の詳細な構成例およびそれらの回路図を示すものである。
【図５】図１のセルレイアウトライブラリにおける各セルレイアウトの更に他の詳細な構成例およびその回路図を示すものである。
【図６】図５、図７〜図１０の示すセルレイアウトの模式的な回路図である。
【図７】図５に対して駆動能力を変更したセルレイアウトの構成例を示すものである。
【図８】図１のセルレイアウトライブラリにおける各セルレイアウトの更に他の詳細な構成例を示すものである。
【図９】図８に対して駆動能力を変更したセルレイアウトの構成例を示すものである。
【図１０】図８に対して駆動能力を変更したセルレイアウトの他の構成例を示すものである。
【図１１】図１のセルレイアウトライブラリにおける各セルレイアウトの更に他の詳細な構成例およびそれらの回路図を示すものである。
【図１２】図１のセルレイアウトライブラリにおける各セルレイアウトの更に他の詳細な構成例およびそれらの回路図を示すものである。
【図１３】図１のセルレイアウトライブラリにおける各セルレイアウトの更に他の詳細な構成例およびそれらの回路図を示すものである。
【図１４】図１のセルレイアウトライブラリにおける各セルレイアウトの更に他の詳細な構成例を示すものであり、（ａ）は回路図、（ｂ）はレイアウト図である。
【図１５】図１４に対して駆動能力を変更したセルレイアウトの構成例を示すものであり、（ａ）は回路図、（ｂ）はレイアウト図である。
【図１６】図１４に対して駆動能力を変更したセルレイアウトの他の構成例を示すものであり、（ａ）は回路図、（ｂ）はレイアウト図である。
【図１７】図１４に対して駆動能力を変更したセルレイアウトの更に他の構成例を示すものであり、（ａ）は回路図、（ｂ）はレイアウト図である。
【図１８】本発明の前提として検討した半導体装置の設計方法において、その処理の一例を示すフロー図である。
【符号の説明】
【００４３】
ＮＬＤＡＴ  回路図データ
ＣＬＬＩＢ  セルレイアウトライブラリ
ＤＳＮＤＡＴ  設計データ
ＤＦＬＹ  レイアウト制約
ＤＦＴＭ  タイミング制約
ＣＬ＿ＢＦ，ＣＬ＿ＦＦ  セルレイアウト
ＣＯＭ  コンピュータシステム
Ｐ＆Ｒ  配置配線ツール
ＲＣＣＡＬ  実負荷抽出ツール
ＳＴＡ  タイミング検証ツール
ＤＡＳ  設計支援ツール
ＤＦＤＡＴ  制約データ
ＬＹＤＡＴ  レイアウトデータ
ＲＣＤＡＴ  実負荷データ
ＣＴＬ  制御部
ＤＦＰ  Ｐ型半導体領域
ＤＦＮ  Ｎ型半導体領域
ＰＯ  ゲートポリシリコン層
ＣＴ  コンタクト層
Ｍ１  第１メタル配線層
ＩＮ  入力端子
ＯＵＴ  出力端子
ＭＰ  ＰＭＯＳトランジスタ
ＭＮ  ＮＭＯＳトランジスタ
ＶＤＤ  電源電圧
ＧＮＤ  接地電圧
ＭＰ１＿ＢＫ，ＭＰ２＿ＢＫ  ＰＭＯＳブロック
ＭＮ１＿ＢＫ，ＭＮ２＿ＢＫ  ＮＭＯＳブロック
ＩＶ  ＣＭＯＳインバータ回路
ＳＷ  ＣＭＯＳスイッチ回路
ＣＩＶ  クロックドインバータ回路
ＣＬＫ  クロック入力端子
ＦＦ  フリップフロップ
ＬＧ  ロジック部
ＢＦ  バッファ
【図１】
2010027644.tif 000003
【図２】
2010027644.tif 000004
【図６】
2010027644.tif 000005
【図１８】
2010027644.tif 000006
【図３】
2010027644.tif 000007
【図４】
2010027644.tif 000008
【図５】
2010027644.tif 000009
【図７】
2010027644.tif 000010
【図８】
2010027644.tif 000011
【図９】
2010027644.tif 000012
【図１０】
2010027644.tif 000013
【図１１】
2010027644.tif 000014
【図１２】
2010027644.tif 000015
【図１３】
2010027644.tif 000016
【図１４】
2010027644.tif 000017
【図１５】
2010027644.tif 000018
【図１６】
2010027644.tif 000019
【図１７】
2010027644.tif 000020