(57)【要約】【課題】レイアウト設計を簡素化した半導体集積回路装置と設計方法を提供する。【解決手段】第１フリップフロップ回路及び第２フリップフロップ回路と、上記第１フリップフロップ回路の出力と第２フリップフロップ回路の入力との間に設けられた論理段を有する。上記論理段は、その遅延時間のプロセスばらつき許容範囲が大きいものは標準サイズの複数の第１ＭＯＳＦＥＴで形成された第１セルが用いられ、上記許容範囲が小さいものは上記第１セルと同じ複数のＭＯＳＦＥＴで形成され、その遅延時間が上記第１セルと同等となるよう上記第１ＭＯＳＦＥＴ対してゲート長及びゲート幅が大きく形成された第２ＭＯＳＦＥＴからなる第２セルを用いる。【選択図】図１
2007173509.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号に対応して入力信号を取り込む第１及び第２フリップフロップ回路と、
上記第１フリップフロップ回路の出力と第２フリップフロップ回路の入力との間に設けられた論理段とを備え、
上記論理段は、その遅延時間のプロセスばらつき許容範囲が大きいものは標準サイズの複数の第１ＭＯＳＦＥＴで形成された第１セルが用いられ、上記許容範囲が小さいものは上記第１セルと同じ複数のＭＯＳＦＥＴで形成され、その遅延時間が上記第１セルと同等となるよう上記第１ＭＯＳＦＥＴ対してゲート長及びゲート幅が大きく形成された第２ＭＯＳＦＥＴからなる第２セルが用いられてなることを特徴とする半導体集積回路装置。
【請求項２】
請求項１において、
上記第１セルと第２セルのＭＯＳＦＥＴは、ゲート幅Ｗ／ゲート長Ｌの比が等しく設定されてることを特徴とする半導体集積回路装置。
【請求項３】
請求項２において、
上記第１セルと第２セルとは、同一セル面積で形成されてなることを特徴とする半導体集積回路装置。
【請求項４】
請求項３において、
上記第１セル及び第２セルは、ＰチャネルＭＯＳＦＥＴとＮチャネルＭＯＳＦＥＴからなるＣＭＯＳインバータ回路であることを特徴とする半導体集積回路装置。
【請求項５】
請求項２において、
上記第２セルは、上記標準サイズのＭＯＳＦＥＴを直列形態に接続して等価的にゲート長を大きくし、上記標準サイズのＭＯＳＦＥＴを並列形態に接続して等価的にゲート幅を大きくしてなることを特徴とする半導体集積回路装置。
【請求項６】
標準サイズの複数の第１ＭＯＳＦＥＴで形成された第１セルと、
上記第１セルと同じ複数のＭＯＳＦＥＴで形成され、その遅延時間が上記第１セルと同等となるよう上記第１ＭＯＳＦＥＴ対してゲート長及びゲート幅が大きく形成された第２ＭＯＳＦＥＴからなる第２セルとを備え、
論理検証された回路設計データにより上記第１セルを用いて回路レアイウト設計を行う第１工程と、
素子のプロセスばらつきを反映させたタイミング検証を行う第２工程と、
上記第２工程でタイミングエラーと判定された上記第１セルを上記第２セルに置き換えて上記第２工程に戻る第３工程とを備えてなることを特徴とする半導体集積回路装置の設計方法。
【請求項７】
請求項６において、
上記第２セルよりもゲート長及びゲート幅が大きく形成された第３セルを更に備え、
上記第３工程は、第１回目には上記第１セルを上記第２セルに置き換え、第２回目では上記第３セルに置き換えることを特徴とする半導体集積回路装置の設計方法。
【請求項８】
請求項７において、
上記第３セルは、上記第１セル及び第２セルと同じセル高さを維持しつつセル面積が大きくされてなることを特徴とする半導体集積回路装置。
【請求項９】
請求項８において、
上記第１ないし第３セルは、ＰチャネルＭＯＳＦＥＴとＮチャネルＭＯＳＦＥＴからなるＣＭＯＳインバータ回路を含むことを特徴とする半導体集積回路装置の設計方法。
【請求項１０】
請求項９において、
上記回路設計データは、論理設計工程、論理合成工程及び論理検証し、検証合格になるまで上記論理設計工程に戻る論理検証工程で生成されることを特徴とする半導体集積回路装置の設計方法。
【請求項１１】
請求項１０において、
上記第２工程は、
素子の遅延時間評価結果に基づいて、設計対象とされる回路についての遅延時間のばらつき量として、上記設計対象とされる回路の前後の系列からは予測不可能なランダム成分と、上記設計対象とされる回路の系全体で一様に変動するシステマティック成分とを得る第１処理と、
上記設計対象とされる回路を構成するセルの種類とセル数に応じて上記ランダム成分と上記システマティック成分とを合成することにより、上記設計対象とされる回路の遅延時間のばらつき量を求める第２処理とを含むことを特徴とする半導体集積回路装置の設計方法。
【請求項１２】
請求項１１において、
上記第２工程での上記第２処理で求められたばらつき量を含む遅延時間が、予め設定された制約に違反したときに上記第３工程が実施され、制約に違反されないことを持って当該設計を終了させることを特徴とする半導体集積回路装置の設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置と設計方法に関し、例えばランダム論理回路を
備えた半導体集積回路装置と設計方法に利用して有効な技術に関するものである。
【背景技術】
【０００２】
従来の半導体集積回路のタイミング設計では、チップ上におけるデバイス特性はほぼ一様であるという仮定を前提としていた。即ち、あるチップ上でのデバイス特性は、多少の分布はあっても、許容される最小値乃至最大値の範囲に入る、ということである。したがって、この前提に立てば、タイミング設計では基本的に、仕様を満足できるか否かによってその良否を判定すればよかった。
【０００３】
デバイスの特性ばらつきと回路動作タイミングとの関係に着目した従来技術として、特許文献１にはプロセスばらつき率を考慮したプロセススキューとクロックスキューを加算してこれをティピカルスキューとする遅延計算方法が開示される。特許文献２には、配線間の結合容量を考慮したタイミングシミュレーションについて記載される。特許文献３にはデータパスとクロックパスの相互の遅延ばらつきを考慮して遅延時間の解析を行う論理シミュレーションについて記載される。特許文献４には配線抵抗を考慮した遅延解析を行うようにした遅延時間演算技術について記載される。
【特許文献１】特開平１１−３９３５７号公報
【特許文献２】特開平６−３３２９７５号公報
【特許文献３】特開平７−１８２３８１号公報
【特許文献４】特開平８−１６６３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
半導体集積回路におけるデバイスの微細化は、チップ上においてデバイス特性はほぼ一様であるという前提を維持することが難しくなってきている。即ち、半導体集積回路におけるデバイスの微細化は、光学的な加工精度の限界の問題を越えて、不純物の導入に関する統計的ばらつきの数の問題に至ると考えられる。例えば、０．１μ世代のＬＳＩで使用される最も小さいＭＯＳＦＥＴはＬ／Ｗ＝０．０７μ／０．２μ程度であり、このサイズでは、ＭＯＳＦＥＴがオンしている時のチャネル上の電子の数ですら、わずか５００個位でしかない。ＭＯＳＦＥＴの閾値電圧決定に関与する不純物原子も数百個程度になると考えられる。仮に３００個だとすると、概ね考えられるばらつき幅は６×√３００＝１０４（６σ考慮時）となる。即ち不純物のドーズが±３５％ばらつくような特性を示すデバイスが、チップに１個位は紛れ込む可能性があることになる。
【０００５】
仕様を満足できるか否かによってその良否を判定するとうい従来の手法は、半導体集積回路のタイミング設計に対して満足のいく評価を与えることが難しくなってくる。即ち、実際に製造されるデバイスの特性に比較的大きな特性ばらつきがある場合には、それに応じて回路ノードの動作遅延にも大きなばらつき幅を持つことが予想され、それがそのまま誤動作につながるような回路設計若しくはタイミング設計が行われている場合には不所望に歩留まりが低下する事態を生ずることになる。デバイス特性ばらつきや、タイミング検証に関して、要求仕様に収まるか収まらないかの判定だけでは、多種多様な信号パスに対して一律の判定を行うに過ぎず、緩すぎる判定や過剰な判定が行われ、ＬＳＩ（半導体集積回路）製品としての性能と、製造上のリスク（歩留等）のバランスをコントロールすることができない。
【０００６】
本願発明者等においては、先に特願２００５−２２８２５号において、実際の回路に則したばらつき量を含む遅延時間を算出する手法を提案している。すなわち、デバイスの遅延時間評価結果に基づいて、設計対象とされる回路についてのゲートの遅延時間のばらつき量として、上記設計対象とされる回路の前後の系列からは予測不可能なランダム成分と、上記設計対象とされる回路の系列全体で一様に変動するシステマティック成分とを得る。上記設計対象とされる回路のゲート種とゲート段数に応じて上記ランダム成分と上記システマティック成分とを合成して上記設計対象とされる回路の遅延時間のばらつき量を求める。本願発明者においては、更に上記遅延時間を算出手法を利用し、レイアウト設計を簡素化した半導体集積回路装置及びその設計方法を開発した。
【０００７】
この発明の目的は、レイアウト設計を簡素化した半導体集積回路装置と設計方法を提供することにある。この発明の前記ならびにそのほかの目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、下記の通りである。第１フリップフロップ回路及び第２フリップフロップ回路と、上記第１フリップフロップ回路の出力と第２フリップフロップ回路の入力との間に設けられた論理段を有する。上記論理段は、その遅延時間のプロセスばらつき許容範囲が大きいものは標準サイズの複数の第１ＭＯＳＦＥＴで形成された第１セルが用いられ、上記許容範囲が小さいものは上記第１セルと同じ複数のＭＯＳＦＥＴで形成され、その遅延時間が上記第１セルと同等となるよう上記第１ＭＯＳＦＥＴに対してゲート長及びゲート幅が大きく形成された第２ＭＯＳＦＥＴからなる第２セルを用いる。
【０００９】
本願において開示される発明のうち他の代表的なものの概要を簡単に説明すれば、下記の通りである。標準サイズの複数の第１ＭＯＳＦＥＴで形成された第１セルと、上記第１セルと同じ複数のＭＯＳＦＥＴで形成され、その遅延時間が上記第１セルと同等となるよう上記第１ＭＯＳＦＥＴに対してゲート長及びゲート幅が大きく形成された第２ＭＯＳＦＥＴからなる第２セルとを用意し、第１工程で論理検証された回路設計データにより上記第１セルを用いて回路レアイウト設計を行う。第２工程で素子のプロセスばらつきを反映させたタイミング検証を行う。第３工程で上記第２工程でタイミングエラーと判定された上記第１セルを上記第２セルに置き換えて上記第２工程に戻る。
【発明の効果】
【００１０】
タイミング不良検出時でのレアイウト設計のやり直しを省略ないし簡略化きる。
【発明を実施するための最良の形態】
【００１１】
図１には、この発明に係る半導体集積回路装置の設計方法の一実施例のフローチャート図が示されている。ステップ（１）では、実現する回路の仕様に基づきＨＤＬ（ハードウェア記述言語）を用いて論理回路をレジスタトランスファレベルで記述し、論理設計を行う。ステップ（２）では、論理合成処理を行い、レジスタトランスファレベルで記述された回路を、ターゲットとなるＡＳＩＣ（ＬＳＩ）ゲート回路に変換する処理を行う。ステップ（３）では、上記論理合成された論理回路を汎用プロセッサ上で擬似的に動作させることによりその動作を検証する機能を持つ論理シミュレータと呼ばれるシステムを用いて、設計した論理回路の検証を行う。この検証は、一般的には論理シミュレーションと呼ばれている。ここでは、論理機能が仕様通りかどうかを検証する。論理機能に誤りがあると、ステップ（１）に戻る。
【００１２】
上記論理機能の検証が終ると、ステップ（４）では、レイアウト設計が行われる。このレアイウト設計では、最初はプリミティブライブラリの標準セルを用いて行われる。ステップ（５）では、タイミング検証が行われる。このタイミング検証においては、先に特願２００５−２２８２５号において提案されている、実際の回路に則したばらつき量を含む遅延時間を算出する手法が用いられる。タイミング検証において、素子ばらつき量を含む遅延時間によりエラーと判定された論理セルの有無を判定する。もしも、エラー無しと判定されたなら、半導体集積回路装置の設計が終了し、ＬＳＩ製造に移行する。
【００１３】
上記ステップ（５）のタイミング検証においてエラーと判定された論理セルが存在すると、ステップ（６）において、セル置換が行われる。このセル置換には、ばらつき低減ライブラリのセルに置き換えられる。このセルは、大きく分けて第１セルと第２セルの２通りのセルが用意されている。上記第１セルは、上記標準セルと同一の大きさで、遅延時間が同等で素子ばらつき量を低減したものである。１回目は、上記第１セルに置き換えられる。第１セルに置き換えた場合には、ステップ（５）のタイミング検証が行われて、上記素子ばらつき量を含む遅延時間によりエラーと判定された論理セルの有無を判定する。
【００１４】
２回目のステップ（５）のタイミング検証において置換された第１セルにもエラーが存在すると、ステップ（６）において、再度セルの置換が行われる。このセル置換には、ばらつき低減ライブラリの上記第２セルに置き換えられる。この第２セルは、特に制限されないが、上記標準セルよりも大きなサイズとし、遅延時間が同等で素子ばらつき量を上記第１セルよりも低減したものである。このように第２セルに置換した場合には、ステップ（４）に戻り、レイアウト設計のやり直しが行われる。ただ、後述するように上記第２セルは、標準セル又は第１セルに対してセル高さＨが同じで、セルの幅（Ｌ）が１．５倍〜２倍程度にされており、レイアウト設計のやり直しは極めて単純なものとなる。
【００１５】
再度ステップ（５）でのタイミング検証が行われて、置換された第２セルの上記素子ばらつき量を含む遅延時間でのエラーの判定が行われる。一般的には、上記のような素子ばらつき量によるタイミング不良においては、上記のような第１及び第２セルの置き換えによりエラーは解消される。上記第２セルへの置き換えでもタイミング不良が解消されない場合には、論理設計からやり直すことが必要となる。
【００１６】
図２には、この発明に係る半導体集積回路装置の設計方法に用いられる標準セル及びばらつき低減ライブラリのセルを説明するための一実施例の概念図が示されている。この実施例のランダム論理回路は、フリップフロップ回路ＦＦ１、ＦＦ２及びその間に設けられたＣＭＯＳインバータ回路ＩＶ１を含む論理段から構成される。論理段は、上記ＣＭＯＳインバータ回路ＩＶ１の他にナンドゲート回路、ノアゲート回路等の論理ゲート回路を含む場合もあるし、上記ＣＭＯＳインバータ回路ＩＶ１のみの場合もあり、論理シーケンスに対応して多種多様である。同図では、このような論理ゲート回路の部分を点線として示している。フリップフロップ回路ＦＦ１の入力端子Ｄには、図示しない他の回路から入力信号ＩＮが供給され、クロック端子ＣＫにはクロックＣＬＫが供給される。上記フリップフロップ回路ＦＦ１の出力端子Ｑの出力信号は、ＣＭＯＳインバータ回路ＩＶ１を含む論理段を通してフリップフロップ回路ＦＦ２の入力端子Ｄに供給される。このフリップフロップ回路ＦＦ２のクロック端子ＣＫには上記クロックＣＬＫが供給される。
【００１７】
上記フリップフロップ回路ＦＦ１は、特に制限されないが、２つのスルーラッチ回路が縦列接続されて構成される。フリップフロップ回路ＦＦ１は、クロックＣＬＫが例えばロウレベルの期間に入力信号ＩＮを前段ラッチ回路がスルー状態となって入力端子Ｄに供給された上記入力信号ＩＮを取り込んでいる。このとき、後段ラッチ回路は前に取り込んだデータを保持して出力している。クロックＣＬＫが上記ロウレベルからハイレベルに変化すると、入力側のラッチ回路がデータ保持状態に入り、後段ラッチ回路がスルー状態となって、上記取り込まれた入力信号ＩＮに対応したデータを出力端子Ｑから出力する。
【００１８】
上記フリップフロップ回路ＦＦ２も同様２つのスルーラッチ回路から構成されており、クロックＣＬＫがロウレベルの期間に、上記インバータ回路ＩＶ１を通したフリップフロップ回路ＦＦ１の出力信号を前段ラッチ回路がスルー状態となって取り込んでいる。このとき、後段ラッチ回路は前に取り込んだデータを保持して出力している。クロックＣＬＫがロウレベルからハイレベルに変化すると、入力側のラッチ回路がデータ保持状態となり、後段ラッチ回路がスルー状態となって、上記取り込まれた信号に対応したデータを出力端子Ｑから出力する。
【００１９】
上記論理段での遅延時間が長く、上記クロックＣＬＫがロウレベルの期間において上記フリップフロップ回路ＦＦ２の前段のラッチ回路がスルー状態のときに論理段を通した信号が伝わらないときにはセットアップ不良となって論理シーケンスエラーが発生する。このようなセットアップ不良が発生するのは、主として論理段に上記ＣＭＯＳインバータ回路ＩＶ１の他に論理ゲート回路が複数段けられたり、フリップフロップ回路ＦＦ１の出力Ｑのファンアウト数が多い等による大きな負荷が設けられる場合等が考えられる。
【００２０】
上記論理段での遅延時間が短く、上記クロックＣＬＫがハイレベルに変化したとき上記フリップフロップ回路ＦＦ２の前段のラッチ回路が保持状態に入るときに、論理段の信号が上記フリップフロップ回路ＦＦ１の出力側のスルー状態による出力信号に応答して変化してしまうと、ホールド不良となって論理シーケンスエラーが発生する。このようなホールド不良が発生するのは、主として論理段が上記ＣＭＯＳインバータ回路ＩＶ１のような簡単な回路の場合等が考えられる。
【００２１】
前記図１の論理設計、論理合成及び論理検証では、上記セットアップ不良及びホールド不良が発生しないように回路及び上記クロックＣＬＫの周波数が設定される。そして、レイアウト設計後のタイミング検証では、先に特願２００５−２２８２５号において、実際の回路に則したばらつき量を含む遅延時間を算出する手法が用いられる。
【００２２】
セル１〜セル４は、上記ＣＭＯＳインバータ回路ＩＶ１を実現するためのセルである。セル１は、標準セルであり、１つのＰチャネルＭＯＳＦＥＴと１つのＮチャネルＭＯＳＦＥＴにより構成される。これに対して、セル２は、上記標準セルと同じサイズのＭＯＳＦＥＴを用いて、同一の遅延時間を持つようにされたものであり、ＰチャネルＭＯＳＦＥＴ及びＮチャネルＭＯＳＦＥＴは、２個直列形態にされたものを２組並列接続して、等価的にゲート幅Ｗとチャネル長Ｌが上記標準セルと同じくＷｐ／Ｌｐ及びＷｎ／Ｌｎにされる。このように４個ずつのＭＯＳＦＥＴを用い場合には、上記特願２００５−２２８２５号に提案されている実際の回路に則したばらつき量は、標準セルに対して１／√４のように低減できる。
【００２３】
セル３は、ＰチャネルＭＯＳＦＥＴ及びＮチャネルＭＯＳＦＥＴをそれぞれ２個並列接続したものであり、ゲート幅Ｗとチャネル長Ｌの比は、標準セルに対して２Ｗｐ／Ｌｐ及び２Ｗｎ／Ｌｎのように大きくされる。実際の回路に則したばらつき量については、標準セルのばらつき量に対して「ばらつき≪１／√２」のように小さくなるが、反面遅延時間そのものが大幅に小さくなってしまう。セル４は、ＰチャネルＭＯＳＦＥＴ及びＮチャネルＭＯＳＦＥＴをそれぞれ２個直列接続したものであり、ゲート幅Ｗとチャネル長Ｌの比は、標準セルに対してＷｐ／２Ｌｐ及びＷｎ／２Ｌｎのように小さくされる。実際の回路に則したばらつき量については、標準セルのばらつき量に対して「ばらつき≪１／√２」のように小さくなるが、反面遅延時間そのものが大幅に大きくなってしまう。
【００２４】
もしも、セットアップ不良であるなら上記第３セルを用いることは有効であるが、ホールド不良なら上記第３セルを用いることは却って不良を助長させるものとなる。逆に、セットアップ不良であるなら上記第４セルを用いることは却って不良を助長させ、ホールド不良なら上記第３セルを用いることは有効となる。このように第３セルや第４セルを用いることは、タイミング検証そのものを最初からやり直すことが必要となって、セットアップ不良／ホールド不良の種別を判定しない限りは素子ばらつき量によるタイミング不良の解決策としては有効ではない。第２セルは、遅延時間そのものは標準セルと同等であり、ばらつき量を１／√４のように大幅に低減できる。しかしながら、セルサイズが単純に約４倍にも大きくなるので、レイアウト設計からやり直す必要がある。
【００２５】
図３には、この発明に用いられるＣＭＯＳインバータ回路の回路図が示されている。ＣＭＯＳインバータ回路は、ＰチャネルＭＯＳＦＥＴ（以下、ＰＭＯＳという）とＮチャネルＭＯＳＦＥＴ（以下、ＮＭＯＳという）から構成される。ＰＭＯＳのソースは、電源電圧ＶＤＤが供給される。ＰＭＯＳとＮＭＯＳのドレイン同士が接続されて出力端子ｏｕｔとされる。また、ＰＭＯＳとＮＭＯＳのゲート同士が接続されて入力端子ｉｎとされる。そして、ＮＭＯＳのソースは、回路の接地電位ＶＳＳが与えられる。
【００２６】
図４には、図３のインバータ回路を構成する標準セルの一実施例の素子パターン図が示されている。同図でＳはソース領域を示し、Ｇはゲート電極を示し、Ｄはドレイン領域を示している。他は、図３の回路記号に対応している。このＣＭＯＳインバータ回路は、Ｈ×Ｌのようなセルサイズに形成される。
【００２７】
図５には、図３のインバータ回路を構成する前記第１セルの一実施例の素子パターン図が示されている。第１セルは、前記説明したように図１に示したばらつき低減ライブラリに登録されており、上記標準セルと同一の大きさのセルサイズ（Ｈ×Ｌ）の中に形成され、チャネル幅Ｗ及びチャネル長Ｌの比Ｗ／Ｌが上記標準セルとＷ／Ｌと等しくなるようにそれぞれ大きく形成されて遅延時間が同等にされる。このように、チャネル長Ｌ及びチャネル幅を一定の比率で大きくすることにより、上記遅延時間を同等に維持しつつ、遅延時間のばらつき量を低減させることができる。したがって、標準セルを上記第１セルに置き換えたとすると、レイアウトを含めて他は一切変更がないから、タイミング検証をやり直すことなく、当該セル部分のみばらつきに関してのみの検証で済むことなる。
【００２８】
図６には、図３のインバータ回路を構成する前記第２セルの一実施例の素子パターン図が示されている。第１セルは、前記説明したように図１に示したばらつき低減ライブラリに登録されており、上記標準セルと同一の高さ（Ｈ）を維持しつつ長さＬをＬ’のように大きくしたセルサイズ（Ｈ×Ｌ’）の中に形成され、チャネル幅Ｗ及びチャネル長Ｌの比Ｗ／Ｌが上記標準セルとＷ／Ｌと等しくなるようにそれぞれ大きく形成されて遅延時間が同等にされる。この第２セルでは、ゲート長Ｌを長くした分、ゲート幅も長くしなければならないが、上記セル高さＨに制限があるため、２つの素子に分割して回路的に並列形態として上記Ｗ／Ｌが標準セルと同等になるようにされている。この実施例では、約１．５倍のセルサイズで、上記標準セルに対して約２倍のゲート幅Ｗ及びゲート長Ｌとなるようにされている。
【００２９】
図６に示した第２セルは、素子ばらつき量に関しては、前記図２のセル３又はセル４のように標準セルに対して「ばらつき≪１／√２」のように低減させることができる。そして、セルサイズも上記のようにせいぜい１．５倍程度にしか大きくならないから、レイアウトの変更も簡単となる。そして、インバータ回路としての遅延時間は、上記標準セルと同等にされているので、前記図１のようなセル３、セル４に置き換えたようなタイミング検証のやり直しは不要である。厳密にいうと、上記標準セルの０．５Ｌ分しか増加しないから、もしも１箇所のみ標準セルが上記第２セルに置き換えたとすると、上記０．５Ｌに相当する長さだせ配線長が長くされる配線が存在する可能性を持つだけなので、タイミング検証のすべてをやり直すことなく、当該セル部分のみを選んで検証するというような省略も可能となる。
【００３０】
前記図２に示したセル２を第４セルとして登録しておき、上記第３セルでもタイミング不良が解消されてないときに、上記第４セルに置き換える工程を追加するようにするものであってもよい。
【００３１】
図７ないし図９は、上記ＣＭＯＳインバータ回路の他の一実施例の標準セルが示されている。これらの実施例のＣＭＯＳインバータ回路は、前記図１の標準セルに対して、駆動能力が異なるものとされる。つまり、図７は、図４の標準セルが２個並列接続されることにより、２倍の駆動能力を持つようにされる。図８は、図４の標準セルが４個並列接続されることにより、４倍の駆動能力を持つようにされる。図９は、図４の標準セルが６個並列接続されることにより、６倍の駆動能力を持つようにされる。これらの各標準セルは、論理ゲートのファンアウト数等必要な駆動能力に対応して選ばれる。図７の標準セルは、上記のように２個の素子を用いているので、前記図２で説明したように「ばらつき≪１／√２」のようにばらつき量は低減されるものである。図８及び図９の標準セルは、それよりも素子数が多いのでばらつき量はより低減されたものとなる。したがって、これら図７〜図９のように駆動能力を大きくしたものについて、そもそも素子ばらつき量が小さいから、更にばらつき量を小さくした前記１セル、第２セルを前記ばらつき低減ライブラリに登録させる必要はない。
【００３２】
図１０には、本発明の半導体集積回路の設計方法及び製造方法の一例が示される。同図において、チップ設計（ＳＴＰ１）では、要求仕様に応じて半導体集積回路の論理設計やレイアウト設計が行われる。最終的な設計を完了したチップデータＤ１はウェーハプロセス（ＳＴＰ２）、テスト及びエージング（ＳＴＰ３）を経てチップ形態の半導体集積回路が得られる。
【００３３】
図１０では半導体集積回路の設計に対する評価の処理内容が詳細に示される。半導体集積回路のタイミング変動要因として回路デバイス特性（デバイスパラメータ）、電源電圧ドロップ、及びクロストークに着目する。
【００３４】
回路デバイス特性はデバイスばらつきデータＤ２として取得されたものを利用する。デバイスばらつきは閾値電圧やオン電流などのデバイスパラメータのばらつきとして与えられ、デバイスパラメータ毎のガウス分布のような確率分布として与えられる。デバイスパラメータは、多数のデバイスがアレイ配置されたＴＥＧ（Test Element Group）としての評価チップを用いて取得する。デバイスばらつきデータＤ２はゲートや配線などの回路要素毎のばらつきの情報（デバイス評価結果）としてプリミティブライブラリＤ３に保持される。プリミティブライブラリＤ３に保持される情報は、個々のパラメータのばらつきと、遅延時間のばらつきの関連がわかる形で表現される。例えば、デバイスパラメータ毎に遅延時間ばらつきの項を分ける。プリミティブライブラリＤ３はチップ設計ＳＴＰ１にも利用される。
【００３５】
チップ設計された回路に対するタイミング評価の前段階として、遅延時間評価を行う（ＳＴＰ４）。この遅延時間評価ＳＴＰ４では、設計された回路ノードにおける遅延時間のばらつき分布を統計的に求める。要するに、着目する回路ノードの状態に影響を与えるデバイスの特性ばらつきを目的のタイミングに対する遅延時間のばらつき分布として評価する。その結果は動作タイミングデータベースＤ４に格納される。要するに、動作タイミングデータベースＤ４には、チップを構成する全てのゲートに対するデバイス特性ばらつきに基づくタイミングばらつき情報が付加されている。ここで表現されるばらつきは、個々のデバイスパラメータのばらつきを、遅延時間のばらつきに置き換えたものとなる。
【００３６】
例えば図１１に示されるような設計対象回路で説明する。この実施例の設計対象回路は、組み合わせ回路４０２と、上記合わせ回路４０２の前段に配置されたフリップフロップ回路４０１と、上記組み合わせ回路４０２の後段に配置されたフリップフロップ回路４０３と、上記フリップフロップ回路４０１，４０２にクロック信号ＣＬＫを分配するためのインバータ４０４，４０５，４０６とを含む。上記組み合わせ回路４０２は、インバータや、アンドゲート、ナンドゲート等の各種ゲート回路が組み合わされて成る。クロック信号ＣＬＫは、インバータ４０４，４０５を介することによりクロック信号ＣＫＡとして上記フリップフロップ回路のクロック端子ＣＫに伝達される。また、クロック信号ＣＬＫは、インバータ４０４，４０６を介することによりクロック信号ＣＫＢとしてフリップフロップ回路４０３のクロック端子ＣＫに伝達される。
【００３７】
主要な信号伝達経路における遅延時間は、ｔｐｄ１〜ｔｐｄ６で示される。図１１に示される回路構成では、遅延時間のばらつきにより、遅延時間ｔｐｄ５が短く、遅延時間ｔｐｄ６が長いとホールドマージンが不足し、それとは逆に、遅延時間ｔｐｄ５が長く、遅延時間ｔｐｄ６が短いとセットアップマージンが不足する。このような設計対象回路の動作タイミングマージンを考える場合、先ず、動作タイミングデータベースＤ４に基づいて、基本遅延ばらつき量を決定する（ＳＴＰ５）。すなわち、遅延時間のばらつきによるタイミング不良発生確率を何パーセント以下にするかを決定し、それとデバイス評価結果から基本遅延ばらつき量を決定する。
【００３８】
ここでは、基本遅延ばらつき量として、ランダム（ｒａｎｄｏｍ）成分とシステマティック（ｓｙｓｔｅｍａｔｉｃ）成分とを得る。ランダム成分は、例えば図１２（Ａ）に示されるように、設計対象回路の前後の系列からは予測不可能なばらつき成分を指す。図１２（Ａ）において横軸は遅延時間Ｔｐｄ、横軸は頻度である。ゲート遅延時間のランダム成分は、多数のデータをとると、あるひとつの分布をとるが、ひとつひとつのゲート遅延時間は予測不可能とされる。システマティック成分は、例えば図１２（Ｂ）に示されるように、設計対象回路の系列全体で一様に変動するオフセット成分を指す。図１２（Ｂ）において横軸は遅延時間Ｔｐｄ、横軸は頻度である。ゲート遅延時間のシステマティック成分は遅延時間の分布自体のばらつきである。ひとつひとつのゲートは、近傍の場合、互いに同じ分布をとるが、ゲート間の距離が離れることに従って分布自体が互いにずれてくる（μ１，μ２，μ３）。
【００３９】
次に、上記ＳＴＰ５で得られた基本遅延ばらつき量に基づいて遅延時間のばらつき量を算出する（ＳＴＰ６）。
【００４０】
システマティック成分を「σｓ」で示し、ランダム成分を「σｒ」で示すとき、設計対象とされる回路における遅延時間のばらつき量σｐａｔｈは、次式によって求めることができる。
【００４１】
【数１】
2007173509.tif 000003
【００４２】
ここで、「Ｎ」は、設計対象とされる回路における信号伝達経路におけるゲート段数に基づく係数であり、ゲート段数が多いほど、つまり、Ｎの値が大きいほど、遅延時間のばらつき量は小さくなる。このように係数Ｎに基づく重み付け処理が行われることで、設計対象とされる回路における遅延時間のばらつき量σｐａｔｈの適正化を図ることができる。
【００４３】
また、上記ゲート段数に加えてゲート種をも考慮することによって、設計対象とされる回路における遅延時間のばらつき量σｐａｔｈを求めることで、ばらつき量σｐａｔｈをさらに適正化することができる。例えば前記図３、図４及び図５に示されるように、ゲートの一例であるＣＭＯＳインバータ回路は、ＰＭＯＳと、ＮＭＯＳとが直列接続されて成る。図７〜図９のＣＭＯＳインバータ回路は、上記ＰＭＯＳＮＭＯＳの並列接続個数が増やされたもので、駆動能力が上昇されている。その場合、インバータのレイアウト面積も増大する。ＶＤＤは高電位側電源、ＶＳＳは低電位側電源、ｉｎはインバータの入力端子、ｏｕｔはインバータの出力端子を意味する。このようにデバイスの並列接続個数が増えるほど、そこでのばらつきは平均化されて小さくなる。そこで、設計対象とされる回路における遅延時間のばらつき量σｐａｔｈを求める場合、デバイスの並列接続個数（ゲート種）を考慮し、数１は、数２のように発展される。
【００４４】
【数２】
2007173509.tif 000004
【００４５】
ここで、「ＮＤ」は、設計対象とされる回路における信号伝達経路におけるゲート段数（Ｎ）と、ゲートを構成するデバイスの並列接続個数（Ｄ）とに基づく係数とされ、この係数「ＮＤ」によって重み付け処理が行われることによって、設計対象とされる回路における遅延時間のばらつき量σｐａｔｈの適正化が図られる。
【００４６】
さらに、上記数２をゲート種に応じて次式のように発展させることができる。
【００４７】
【数３】
2007173509.tif 000005
【００４８】
遅延時間のばらつき表現として標準偏差σを用いると、遅延時間Ｔｐｄが大きい場合に標準偏差も大きくなってしまうので、変動係数（遅延時間の標準偏差σを遅延時間Ｔｐｄの平均値で割って百分率で示したもの）を使って表している。数３におけるルート内の（σｓ（ｒ）％）2は、システマティック成分σｓの距離（ｒ）依存性を考慮している。また、遅延時間のばらつき量は、ゲート種（Ｄ）とゲート段数（Ｎ）を考慮して以下のように変形することができる。
【００４９】
例えば、図１４（Ａ）に示されるように、設計対象とされる回路の信号伝達経路Ａ，Ｂ間に、Ｎ個のインバータＸＣの直列接続回路が配置されている回路を考える。Ｎ個のインバータＸＣは、互いに駆動能力が等しく、そこでの遅延時間も全てｔｐｄ１とする。かかる回路構成において、信号伝達経路Ａ，Ｂ間の遅延時間のばらつき量σALL（％）は、次式によって示される。
【００５０】
【数４】
2007173509.tif 000006
【００５１】
次に、図１４（Ｂ）に示されるように、設計対象とされる回路の信号伝達経路Ａ，Ｂ間に、Ｎ個のインバータＸＣ，ＸＨ，ＸＬの直列接続回路が配置されている回路を考える。インバータＸＨの駆動能力はインバータＸＣよりも高く、インバータＸＬの駆動能力はインバータＸＣよりも低い。インバータＸＣ，ＸＨ，ＸＬでの遅延時間は、それぞれｔｐｄ１，ｔｐｄ２，ｔｐｄ３とされる。かかる回路構成において、信号伝達経路Ａ，Ｂ間の遅延時間のばらつき量σALL（％）は、次式によって示される。
【００５２】
【数５】
2007173509.tif 000007
【００５３】
次に、図１４（Ｃ）に示されるように、設計対象とされる回路の信号伝達経路Ａ，Ｂ間に、３個のインバータＸＣの直列接続回路が配置され、最終段の配線長が他に比べて長い場合を考える。３個のインバータＸＣは、互いに駆動能力が等しいが、最終段の配線長が他に比べて長い。かかる回路構成において、信号伝達経路Ａ，Ｂ間の遅延時間のばらつき量σall（％）は、次式によって示され、基本的には、図１４（Ｂ）に示される回路の場合と同様とされる。
【００５４】
【数６】
2007173509.tif 000008
【００５５】
ただし、上記遅延時間ｔｐｄ２は、他の遅延時間ｔｐｄ１に比べて遙かに大きい場合には、信号伝達経路Ａ，Ｂ間の遅延時間のばらつき量σALL（％）は、次式によって示される。
【００５６】
【数７】
2007173509.tif 000009
【００５７】
上記演算により、上記ゲート段数及びゲート種を考慮することによって、設計対象とされる回路における遅延時間のばらつき量を得ることができる。
【００５８】
次に、図１３（Ａ）に例示されるようなばらつき分布モデルを用いて不良発生確率を求める（ＳＴＰ７）。例えば、図１３（Ａ）において、タイミングマージンがある一定以下なった場合に不良が発生するなら、ｆａｉｌで示した面積部分が不良の発生確率を表すことになる。最終的には、チップの全てのタイミング要求ポイントの不良率を評価し、これらの累積、あるいは何らかの回路間の相関を考慮して、チップとしての不良発生確率を求める（ＳＴＰ８）。
【００５９】
製造上のリスク管理は、評価から求めたランダム成分σｒ及びシステマティック成分σｓを何倍にするかで決める。例えばランダム成分σｒを３倍にして「３σｒ」とした場合、それを用いて上記ばらつき量の算出を行うことにより、図１３（Ｂ）に示されるように、正常（ｐａｓｓ）領域が拡大されたモデル分布となり、１０００個中３個程度はタイミング不良となる可能性があるが、残りの９９７個程度についてもタイミング不良にならなくなる。
【００６０】
先の特願２００５−２２８２５号では、ばらつき量の算出（ＳＴＰ６）により得られた遅延時間が予め定められた制約に違反しないように、設計対象とされる回路の構成やレイアウト等を工夫し、遅延時間のばらつき量を抑え込むことで、タイミング不良発生率を抑制した回路設計を行う。これに対して、本願発明の設計方法では、上記ばらつき量の算出（ＳＴＰ６）により得られた遅延時間が予め定められた制約に違反した場合には、前記ばらつき低減ライブラリに登録された第１セルに置き換える。レイアウトを含めて他は一切変更がないから、タイミング検証をやり直すことなく、当該セル部分のみばらつきに関してのみの検証で良否を判定し、制約違反が解消しないなら第２セルに置き換える。又は、前記図２のセル２に置き換えて、レイアウト設計のやり直しを行うようにする。このようにしても制約違反が解消しないなら、前記のように設計対象とされる回路の構成やレイアウト等を工夫が行われる。この結果、タイミング不良検出時でのレアイウト設計のやり直しを省略ないし簡略化きる。
【００６１】
尚、前記チップ設計ＳＴＰ１、遅延時間評価ＳＴＰ４、基本遅延ばらつき量の決定ＳＴＰ５、ばらつき量の算出ＳＴＰ６、不良発生率の算出ＳＴＰ７、評価ＳＴＰ８の各処理は、単数又は複数のエンジニアリングワークステーション等のコンピュータ装置や補助記憶装置などを用いて行なわれる。
【００６２】
以上本発明者よりなされた発明を実施例に基づき具体的に説明したが、本願発明は前記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、変動要因の統計分布モデル化の手法や、不良発生確率の算出方法、判定方法等の数学的手法は、上記説明に限定されず、種々の変更が可能である。ばらつき低減ライブラリに登録されるセルは、ＣＭＯＳインバータ回路の他に論理回路であってもよし、ＭＯＳＦＥＴで構成された抵抗素子や容量素子であってもよい。この発明は、半導体集積回路装置及びその設計方法として広く利用することができる。
【図面の簡単な説明】
【００６３】
【図１】この発明に係る半導体集積回路装置の設計方法の一実施例を示すフローチャート図である。
【図２】この発明に係る半導体集積回路装置の設計方法に用いられる標準セル及びばらつき低減ライブラリのセルを説明するための一実施例の概念図である。
【図３】この発明に用いられるＣＭＯＳインバータ回路の回路図である。
【図４】図３のインバータ回路を構成する標準セルの一実施例を示す素子パターン図である。
【図５】図３のインバータ回路を構成する前記第１セルの一実施例を示す素子パターン図である。
【図６】図３のインバータ回路を構成する前記第２セルの一実施例を示す素子パターン図である。
【図７】図３のＣＭＯＳインバータ回路の他の一実施例を示す標準セルの素子パターン図である。
【図８】図３のＣＭＯＳインバータ回路の他の一実施例を示す標準セルの素子パターン図である。
【図９】図３のＣＭＯＳインバータ回路の他の一実施例を示す標準セルの素子パターン図である。
【図１０】本発明に用いられる半導体集積回路の設計方法及び製造方法の一例を示す説明図である。
【図１１】設計対象とされる回路の構成例回路図である。
【図１２】上記設計対象とされる回路における遅延時間ばらつきの成分分離を説明するための特性図である。
【図１３】製造上のリスク反映を説明するための特性図である。
【図１４】設計対象とされる回路例の別の説明図である。
【符号の説明】
【００６４】
ＦＦ１，ＦＦ２…フリップフロップ回路、ＰＭＯＳ…ＰチャネルＭＯＳＦＥＴ、ＮＭＯＳ…ＮチャネルＭＯＳＦＥＴ、Ｓ…ソース、Ｄ…ドレイン、Ｇ…ゲート、Ｄ１…チップデータ、Ｄ２…デバイスばらつきデータ、Ｄ３…プリミティブライブラリ、Ｄ４…動作タイミングデータベース。
【図１】
2007173509.tif 000010
【図２】
2007173509.tif 000011
【図３】
2007173509.tif 000012
【図４】
2007173509.tif 000013
【図５】
2007173509.tif 000014
【図６】
2007173509.tif 000015
【図７】
2007173509.tif 000016
【図８】
2007173509.tif 000017
【図９】
2007173509.tif 000018
【図１０】
2007173509.tif 000019
【図１１】
2007173509.tif 000020
【図１２】
2007173509.tif 000021
【図１３】
2007173509.tif 000022
【図１４】
2007173509.tif 000023