(57)【要約】【課題】レイアウト後のクロックのデューティ調整を容易に行なうことのできる、半導体集積回路の設計方法を提供する。【解決手段】、クロックの両エッジで動作するセルへクロックを供給するセルとして初期配置セルを配置した後、クロックツリーの配置、クロック配線、セル間配線などのレイアウトを実行し、レイアウト実行後の実配線長にもとづくタイミング検証を行って、デューティ値の規定を満たさないデューティ違反が発生している初期配置セルを抽出し、デューティ違反の初期配置セルを、レイアウト上の配置位置はそのままで、外形サイズ、入出力端子位置、入力容量および出力駆動力が初期配置セルと同じで、デューティが規定値を満たすように調整されたデューティ調整セルに置換する。【選択図】図１
2010039570.tif 000002
【特許請求の範囲】
【請求項１】
クロックの両エッジで動作するセルへクロックを供給するセルとして初期配置セルを配置してレイアウトを行うステップと、
前記レイアウト実行後の実配線長にもとづくタイミング検証により、デューティ値の規定を満たさないデューティ違反が発生している前記初期配置セルを抽出するステップと、
前記レイアウトの配置上で、前記デューティ違反の前記初期配置セルを、外形サイズ、入出力端子位置、入力容量および出力駆動力が前記初期配置セルと同じで、デューティが規定値を満たすように調整されたデューティ調整セルに置換するステップと
を有することを特徴とする半導体集積回路の設計方法。
【請求項２】
前記デューティ調整セルは、
前記初期配置セルと同じタイミングで、クロック周期開始エッジを出力する
ことを特徴とする請求項１に記載の半導体集積回路の設計方法。
【請求項３】
前記初期配置セルおよび前記デューティ調整セルが、
予めセルライブラリに登録されている
ことを特徴とする請求項１または２に記載の半導体集積回路の設計方法。
【請求項４】
前記セルライブラリには、
デューティ調整量の異なる複数の前記デューティ調整セルが登録されている
ことを特徴とする請求項３に記載の半導体集積回路の設計方法。
【請求項５】
前記デューティ調整セルは、
内部のディレイ素子のディレイ量を調整することによって前記デューティの調整を行う
ことを特徴とする請求項１乃至４のいずれか１項に記載の半導体集積回路の設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計方法に関する。
【背景技術】
【０００２】
予めライブラリに登録されたセルを用いて設計を行う半導体集積回路では、セルの配置およびセル間の配線を行った後に、実配線長を用いた遅延シミュレーションを実行し、クリティカルパス等のタイミング検証を行う。その中で、例えば、クロック分配におけるスキューエラーが検出されると、クロックドライバの遅延時間を調整するなどの対策が必要となる。そのとき、クロックドライバのセルのサイズが変わったり、入出力端子の位置が変わったりすると、配置・配線のやり直しが必要となり、半導体集積回路の設計期間が長くなるという問題が生じる。
【０００３】
このような問題への対策として、従来、セルの外形形状、寸法、入出力端子位置、入力端子容量、出力の駆動能力が同じで、遅延値のみが異なる複数のクロックドライバ用セルをライブラリに登録しておき、実配線遅延シミュレーション後のタイミング解析で、クロックスキューエラーが検出された場合は、クロックドライバ用セルを置き換えることで遅延時間を調整し、クロックスキューエラーを解消する設計方法が提案されている（例えば、特許文献１参照。）。
【０００４】
上述の設計方法によれば、クロックドライバ用セルの置き換えを行っても配置・配線のやり直しを行う必要がなく、半導体集積回路の設計期間の増加を防止することができる。
【０００５】
ところで、近年、半導体集積回路のさらなる高速動作を図るために、ＤＤＲ  ＳＤＲＡＭなど、クロックの立ち上り／立ち下りの両エッジを用いる回路が使用されるようになっている。クロックの立ち上り／立ち下りの両エッジを用いる場合、クロックスキューのみならず、クロックのデューティを一定の範囲内に収める必要がある。
【０００６】
しかし、従来の設計方法では、例えば、クロックの立ち上りに同期して動作する回路であれば、クロックの立ち上りのタイミングの調整が行われるのみで、クロックのデューティを一定の範囲内に収めることはできない、という問題があった。
【特許文献１】特開２００１−３３２６９３号公報  （第８−９ページ、図５）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで、本発明の目的は、レイアウト後のクロックのデューティ調整を容易に行なうことのできる、半導体集積回路の設計方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一態様によれば、クロックの両エッジで動作するセルへクロックを供給するセルとして初期配置セルを配置してレイアウトを行うステップと、前記レイアウト実行後の実配線長にもとづくタイミング検証により、デューティ値の規定を満たさないデューティ違反が発生している前記初期配置セルを抽出するステップと、前記レイアウトの配置上で、前記デューティ違反の前記初期配置セルを、外形サイズ、入出力端子位置、入力容量および出力駆動力が前記初期配置セルと同じで、デューティが規定値を満たすように調整されたデューティ調整セルに置換するステップとを有することを特徴とする半導体集積回路の設計方法が提供される。
【発明の効果】
【０００９】
本発明によれば、レイアウト後であっても、セルを置換するのみでクロックのデューティ調整を容易に行なうことができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施例を図面を参照して説明する。
【実施例】
【００１１】
図１は、本発明の実施例に係る半導体集積回路の設計方法の処理の流れの例を示すフロー図である。このフローでは、論理設計終了後の概略のフローを示す。なお、本実施例の設計方法で設計される半導体集積回路は、クロックの両エッジで動作するセルを複数個含んでいるものとする。
【００１２】
図１のフローにおける処理では、まず、セルの配置処理を行い、クロックの両エッジで動作するセルへクロックを供給するセルとして初期配置セルを配置する（ステップＳ０１）。
【００１３】
その後、クロックツリーの配置、クロック配線、セル間配線などのレイアウト工程を実行する（ステップＳ０２）。
【００１４】
その後、レイアウト実行後の実配線長にもとづくタイミング検証により、ステップＳ０１で配置した初期配置セルの中で、デューティ値の規定を満たさないデューティ違反が発生している初期配置セルを抽出する（ステップＳ０３）。
【００１５】
最後に、ステップＳ０３で抽出された初期配置セルを、レイアウト上の配置位置はそのままで、外形サイズ、入出力端子位置、入力容量および出力駆動力が初期配置セルと同じで、デューティが規定値を満たすように調整されたデューティ調整セルに置換し（ステップＳ０４）、本フローの処理を終了する。
【００１６】
ここで、上述の処理で使用する初期配置セルおよびデューティ調整セルは、半導体集積回路の設計に使用される一般のセルとともに、セルライブラリ１００に予め登録されているものとする。
【００１７】
図２は、初期配置セルの構成の例を示す回路図である。
【００１８】
この例の初期配置セル１１は、２入力ＡＮＤゲートＡＮ１１と、インバータＩＶ１１と、から構成される。
【００１９】
２入力ＡＮＤゲートＡＮ１１の一方の入力は入力端子ＩＮに接続され、他の入力は‘１’レベルに固定されている。また、２入力ＡＮＤゲートＡＮ１１の出力は、出力端子ＯＵＴに接続されている。したがって、入力端子ＩＮに入力された信号は、そのままの極性で、出力端子ＯＵＴに出力される。
【００２０】
ここで、２入力ＡＮＤゲートＡＮ１１の負荷駆動力は、出力の立ち上り時間と立ち下り時間が同じになるように設計されている。そのため、入力端子ＩＮに入力された信号は、そのデューティが保たれたまま、出力端子ＯＵＴに出力される。
【００２１】
インバータＩＶ１１は、後述のデューティ調整セルと入力容量を同じにするために入力端子ＩＮに接続されたダミーの回路である。
【００２２】
図３は、図１のステップＳ０２のレイアウト実行後の半導体集積回路のレイアウトの概略を示す図である。
【００２３】
セルＩＰ１、ＩＰ２、ＩＰ３は、クロックの両エッジで動作するセルであり、それぞれのクロック端子の直前に、初期配置セル１１が、それぞれ配置される。各初期配置セル１１へは、クロックツリーＣＴにより、クロックが分配される。
【００２４】
クロックツリーＣＴは、クロックの立ち上りにスキューエラーが発生しないように、バッファの個数等を調整して、各枝のクロックの立ち上りのディレイ量を調整する。ただし、各枝の配線容量等が異なるため、各枝に分配されるクロックのデューティは異なってくる。
【００２５】
そこで、本実施例では、図１のステップＳ０３で、セルＩＰ１、ＩＰ２、ＩＰ３に入力されるクロックのデューティを測定し、セルＩＰ１、ＩＰ２、ＩＰ３に対して規定されるデューティ値を満たしているかどうかを検証する。この検証でデューティ違反が検出された場合、そのクロックを出力している初期配置セル１１をデューティ調整セルに置換し、デューティ違反を解消する。
【００２６】
このとき、デューティ調整セルは、外形サイズ、入出力端子位置、入力容量および出力駆動力を初期配置セルと同じに設計されている。これにより、当初のレイアウトを何ら変更することなく、初期配置セル１１をデューティ調整セルに置換することができる。
【００２７】
図４に、デューティ調整セルの構成の例を示す。
【００２８】
図４（ａ）は、クロックの‘Ｈ’幅を減少させたいときに用いるデューティ調整セル２１の回路構成の例を示す。
【００２９】
デューティ調整セル２１は、２入力ＡＮＤゲートＡＮ２１と、インバータＩＶ２１と、ディレイ用バッファＤ２１と、から構成される。
【００３０】
２入力ＡＮＤゲートＡＮ２１の一方の入力は、入力端子ＩＮに直接接続され、他の入力は、直列に接続されたインバータＩＶ２１、ディレイ用バッファＤ２１を介して入力端子ＩＮに接続される。
【００３１】
２入力ＡＮＤゲートＡＮ２１の出力は、出力端子ＯＵＴに接続されている。また、２入力ＡＮＤゲートＡＮ２１の負荷駆動力は、初期配置セル１１の２入力ＡＮＤゲートＡＮ１１と同じに設計されている。
【００３２】
一方、図４（ｂ）は、クロックの‘Ｈ’幅を増加させたいときに用いるデューティ調整セル３１の回路構成の例を示す。
【００３３】
デューティ調整セル３１は、２入力ＯＲゲートＯＲ３１と、ディレイ用バッファＤ３１と、ディレイ用バッファＤ３２とから構成される。
【００３４】
２入力ＯＲゲートＯＲ３１の一方の入力は、入力端子ＩＮに直接接続され、他の入力は、直列に接続されたディレイ用バッファＤ３１、Ｄ３２を介して入力端子ＩＮに接続される。
【００３５】
２入力ＯＲゲートＯＲ３１の出力は、出力端子ＯＵＴに接続されている。また、２入力ＯＲゲートＯＲ３１の負荷駆動力は、初期配置セル１１の２入力ＡＮＤゲートＡＮ１１と同じに設計されている。
【００３６】
図５に、デューティ調整セル２１内部の動作波形を示す。
【００３７】
入力端子ＩＮに入力された信号は、インバータＩＶ２１により反転される。インバータＩＶ２１の出力は、ディレイ用バッファＤ２１により遅延される。
【００３８】
２入力ＡＮＤゲートＡＮ２１は、入力端子ＩＮに入力された信号と、ディレイ用バッファＤ２１の出力とのＡＮＤをとり、両入力がともに‘Ｈ’のとき、‘Ｈ’を出力する。このとき、ディレイ用バッファＤ２１の出力は、入力端子ＩＮに入力された信号が‘Ｈ’の期間中に、‘Ｌ’へ変化するため、２入力ＡＮＤゲートＡＮ２１の出力の‘Ｈ’の期間は、入力端子ＩＮに入力された信号の‘Ｈ’の期間よりも短くなる。
【００３９】
２入力ＡＮＤゲートＡＮ２１の出力は、出力負荷容量に応じたディレイを伴って出力端子ＯＵＴへ出力される。
【００４０】
２入力ＡＮＤゲートＡＮ２１の負荷駆動力が初期配置セル１１の２入力ＡＮＤゲートＡＮ１１と同じに設計されているので、デューティ調整セル２１の入出力端子間のディレイ（セルディレイ）は、初期配置セル１１のセルディレイと同じになる。
【００４１】
したがって、初期配置セル１１の出力端子ＯＵＴに出力される信号のクロック周期開始エッジの出力時刻ｔ１１と、デューティ調整セル２１の出力端子ＯＵＴに出力される信号のクロック周期開始エッジの出力時刻ｔ２１とは、同じ時刻となる。
【００４２】
すなわち、初期配置セル１１をデューティ調整セル２１に置換しても、その出力端子ＯＵＴに出力されるクロック信号の立ち上がりにスキューが生じることはない。
【００４３】
図６には、デューティ調整セル３１内部の動作波形を示す。
【００４４】
入力端子ＩＮに入力された信号は、ディレイ用バッファＤ３１、Ｄ３２により、順次遅延される。
【００４５】
２入力ＯＲゲートＯＲ３１は、入力端子ＩＮに入力された信号と、ディレイ用バッファＤ３２の出力とのＯＲをとり、両入力のいずれかが‘Ｈ’のとき、‘Ｈ’を出力する。このとき、ディレイ用バッファＤ３２の出力は、入力端子ＩＮに入力された信号が‘Ｌ’に変化した後も‘Ｈ’であるため、２入力ＯＲゲートＯＲ３１の出力の‘Ｈ’の期間は、入力端子ＩＮに入力された信号の‘Ｈ’の期間よりも長くなる。
【００４６】
２入力ＯＲゲートＯＲ３１の出力は、出力負荷容量に応じたディレイを伴って出力端子ＯＵＴへ出力される。
【００４７】
２入力ＯＲゲートＯＲ３１の負荷駆動力が初期配置セル１１の２入力ＡＮＤゲートＡＮ１１と同じに設計されているので、デューティ調整セル２１のセルディレイは、初期配置セル１１のセルディレイと同じになる。
【００４８】
したがって、初期配置セル１１の出力端子ＯＵＴに出力される信号のクロック周期開始エッジの出力時刻ｔ１１と、デューティ調整セル３１の出力端子ＯＵＴに出力される信号のクロック周期開始エッジの出力時刻ｔ３１とは、同じ時刻となる。
【００４９】
すなわち、初期配置セル１１をデューティ調整セル３１に置換しても、その出力端子ＯＵＴに出力されるクロック信号の立ち上がりにスキューが生じることはない。
【００５０】
図７は、初期配置セルをデューティ調整セルへ置換した例を示すレイアウトの概略図である。
【００５１】
この例では、セルＩＰ１へクロックを供給するセルが初期配置セル１１からデューティ調整セル２１に置換され、セルＩＰ２へクロックを供給するセルが初期配置セル１１からデューティ調整セル３１に置換された例を示す。
【００５２】
セルライブラリ１００には、デューティ調整量の異なる複数のデューティ調整セルが登録されている。図８および図９に、その例を示す。
【００５３】
図８は、クロックの‘Ｈ’幅を減少させたいときに用いるデューティ調整セルの例である。
【００５４】
図８（ａ）に示すデューティ調整セル２２は、デューティ調整セル２１のディレイ用バッファＤ２１の出力にさらにディレイ用バッファＤ２２を接続し、このディレイ用バッファＤ２２の出力を２入力ＡＮＤゲートＡＮ２１へ入力するようにしたものである。
【００５５】
図８（ｂ）に示すデューティ調整セル２３は、デューティ調整セル２２のディレイ用バッファＤ２２の出力にさらにディレイ用バッファＤ２３を接続し、このディレイ用バッファＤ２３の出力を２入力ＡＮＤゲートＡＮ２１へ入力するようにしたものである。
【００５６】
一方、図９は、クロックの‘Ｈ’幅を増加させたいときに用いるデューティ調整セルの例である。
【００５７】
図９（ａ）に示すデューティ調整セル３２は、デューティ調整セル３１のディレイ用バッファＤ３２の出力にさらにディレイ用バッファＤ３３を接続し、このディレイ用バッファＤ３３の出力を２入力ＯＲゲートＯＲ３１へ入力するようにしたものである。
【００５８】
図９（ｂ）に示すデューティ調整セル３３は、デューティ調整セル３２のディレイ用バッファＤ３３の出力にさらにディレイ用バッファＤ３４を接続し、このディレイ用バッファＤ３４の出力を２入力ＯＲゲートＯＲ３１へ入力するようにしたものである。
【００５９】
図１０は、デューティ調整セルの選択によりデューティが変化する様子を示す波形図である。
【００６０】
図１０（ａ）は、デューティ調整セル２３、デューティ調整セル２２、デューティ調整セル２１の選択により、クロックの‘Ｈ’幅の減少量が変化する様子を示す。
【００６１】
この例では、デューティ調整セルに内蔵されるディレイ用バッファの数が少ないほど、クロックの‘Ｈ’幅の減少量は多くなる。
【００６２】
図１０（ｂ）は、デューティ調整セル３１、デューティ調整セル３２、デューティ調整セル３３の選択により、クロックの‘Ｈ’幅の増加量が変化する様子を示す。
【００６３】
この例では、デューティ調整セルに内蔵されるディレイ用バッファの数が多いほど、クロックの‘Ｈ’幅の増加量は多くなる。
【００６４】
このような本実施例によれば、初期配置セルを、外形サイズ、入出力端子位置、入力容量および出力駆動力が同じデューティ調整セルに置換することにより、当初のレイアウトを何ら変更することなく、クロックのデューティを調整することができる。
【００６５】
このデューティ調整セルは、初期配置セルと同じタイミングで、クロック周期開始エッジを出力するよう設計されているので、初期配置セルをデューティ調整セルに置換しても、クロックの立ち上りにスキューが発生することがない。
【００６６】
また、デューティ調整量の異なる複数のデューティ調整セルがセルライブラリに登録されているので、必要なデューティ調整量に応じて最適なデューティ調整セルを選択することにより、デューティの調整を速やかに行うことができる。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施例に係る半導体集積回路の設計方法の処理の流れの例を示すフロー図。
【図２】本発明の実施例における初期配置セルの構成の例を示す回路図。
【図３】本発明の実施例の設計方法による半導体集積回路のレイアウトの概略を示す図。
【図４】本発明の実施例におけるデューティ調整セルの構成の例を示す回路図。
【図５】本発明の実施例のデューティ調整セルの動作の例を示す波形図。
【図６】本発明の実施例のデューティ調整セルの動作の例を示す波形図。
【図７】本発明の実施例の設計方法により初期配置セルをデューティ調整セルへ置換した例を示すレイアウトの概略図。
【図８】本発明の実施例におけるデューティ調整セルの構成の例を示す回路図。
【図９】本発明の実施例におけるデューティ調整セルの構成の例を示す回路図。
【図１０】本発明の実施例のデューティ調整セルの選択によりデューティが変化する様子を示す波形図。
【符号の説明】
【００６８】
１１  初期配置セル
２１〜２３、３１〜３３  デューティ調整セル
１００  セルライブラリ
ＡＮ１１、ＡＮ２１  ＡＮＤゲート
ＯＲ３１  ＯＲゲート
ＩＶ１１、ＩＶ２１  インバータ
Ｄ２１〜Ｄ２３、Ｄ３１〜Ｄ３４  ディレイ用バッファ
【図１】
2010039570.tif 000003
【図２】
2010039570.tif 000004
【図３】
2010039570.tif 000005
【図４】
2010039570.tif 000006
【図５】
2010039570.tif 000007
【図６】
2010039570.tif 000008
【図７】
2010039570.tif 000009
【図８】
2010039570.tif 000010
【図９】
2010039570.tif 000011
【図１０】
2010039570.tif 000012