(57)【要約】【課題】回路の設計パラメータを方程式に基づいて効率的に最適化する。【解決手段】一以上の設計パラメータによって特徴づけられた素子を有する回路を最適化する方法であって、第１の設計パラメータの指数を含み、回路の性能規格に使用するポジノミアル関数ｆを作成し、前記性能規格の一以上の制約値を与え、前記性能規格を含む凸最適化問題を作成し、前記凸最適化問題を解いて前記回路の一以上の最適化された設計パラメータ値を得るものである。【選択図】図３【特許請求の範囲】
【請求項１】
一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法であって、
第１の設計パラメータの指数を含と共に前記回路の性能規格に使用されるポジノミアル（posynomial）関数ｆを作成し、
前記性能規格用の一以上の制約値を与え、
前記性能規格を含む凸最適化問題を作成し、
前記凸最適化問題を解いて前記回路に対する一以上の最適化された設計パラメータ値を得る、
ことを特徴とする回路の最適化方法。
【請求項２】
前記ポジノミアル関数ｆがさらに第２の設計パラメータを含むことを特徴とする請求項１記載の回路の最適化方法。
【請求項３】
前記一以上の設計パラメータのうち、いずれかの設計パラメータの一次関数ｇ１をさらに作成することを特徴とする請求項１記載の回路の最適化方法。
【請求項４】
前記一次関数ｇ１が前記第１の設計パラメータを含むことを特徴とする請求項３記載の回路の最適化方法。
【請求項５】
前記一以上の設計パラメータのうち、いずれかの設計パラメータの第２のポジノミアル関数ｆ２を含む式をさらに作成することを特徴とする請求項１記載の回路の最適化方法。
【請求項６】
前記一次関数ｇ１が前記回路の一以上の電圧値に対する最適化された設計パラメータ値を計算するために使用されることを特徴とする請求項４記載の回路の最適化方法。
【請求項７】
前記一以上の電圧値がキルヒホッフの電圧法則を使用して計算されることを特徴とする請求項６記載の回路の最適化方法。
【請求項８】
トランジスタの前記設計パラメータが選択されることを特徴とする請求項１記載の回路の最適化方法。
【請求項９】
前記トランジスタは、金属酸化膜半導体（ＭＯＳ）トランジスタを含むことを特徴とする請求項８記載の回路の最適化方法。
【請求項１０】
前記設計パラメータは、トランジスタのドレン電流を含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１１】
前記設計パラメータは、
（ａ）トランジスタ幅（Ｗ）、
（ｂ）トランジスタ長さ（Ｌ）、
（ｃ）ＭＯＳトランジスタのうちの一つの二端子間電圧、
（ｄ）ＭＯＳトランジスタのうちの一つの二端子間容量、
の何かを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１２】
前記設計パラメータは、半導体接合容量を含むことを特徴とする請求項１記載の回路の最適化方法。
【請求項１３】
前記設計パラメータは、ゲート・ソース間容量Ｃｇｓを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１４】
前記設計パラメータは、トランジスタの相互コンダクタンスｇｍを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１５】
前記設計パラメータは、トランジスタの出力コンダクタンスｇｄｓを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１６】
前記設計パラメータは、動作の弱反転領域におけるトランジスタの一以上のパラメータを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１７】
前記設計パラメータは、動作の強反転領域におけるトランジスタの一以上のパラメータを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１８】
前記設計パラメータは、動作の閾値下の領域におけるトランジスタの一以上のパラメータを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項１９】
前記設計パラメータは、ゲート・ソース間電圧Ｖｇｓを含むことを特徴とする請求項９記載の回路の最適化方法。
【請求項２０】
前記トランジスタは、バイポーラ接合トランジスタ（ＢＪＴ）を含むことを特徴とする請求項８記載の回路の最適化方法。
【請求項２１】
前記設計パラメータは、トランジスタのコレクタ・エミッタ電流Ｉｃｅを含むことを特徴とする請求項２０記載の回路の最適化方法。
【請求項２２】
一以上の設計パラメータによって特徴づけられた諸素子を有する回路を設計し、最適化する方法であって、
第１の設計パラメータを含むと共に回路の性能規格に使用される一次関数ｇ１と、前記第１の設計パラメータの指数を含むと共に該回路の性能規格に使用されるポジノミアル関数ｆとを作成し、
前記性能規格に関する制約値を与え、
前記性能規格を記述する関数を含んでなる凸最適化問題を作成し、
前記凸最適化問題を解いて前記回路の一以上の最適化された設計パラメータ値を得る、
ことを特徴とする回路の設計及び最適化方法。
【請求項２３】
前記ポジノミアル関数ｆがさらに第２の設計パラメータを含むことを特徴とする請求項２２記載の回路の設計最適化方法。
【請求項２４】
前記一以上の設計パラメータの第２のポジノミアル関数ｆ２をさらに作成することを特徴とする請求項２２記載の回路の設計及び最適化方法。
【請求項２５】
前記一次関数ｇ１は、アナログ回路の一以上の電圧値に最適化された設計パラメータ値を与えることを特徴とする請求項２２記載の回路の設計及び最適化方法。
【請求項２６】
前記一以上の電圧値は、キルヒホッフの電圧法則を使用して計算されることを特徴とする請求項２５記載の回路の設計及び最適化方法。
【請求項２７】
トランジスタの前記設計パラメータが選択されることを特徴とする請求項２２記載の回路の設計最適化方法。
【請求項２８】
前記トランジスタは、金属酸化膜半導体（ＭＯＳ）トランジスタを含むことを特徴とする請求項２７記載の回路の設計及び最適化方法。
【請求項２９】
前記設計パラメータは、トランジスタのドレン電流を含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３０】
前記設計パラメータは、半導体接合容量を含むことを特徴とする請求項２２記載の回路の設計及び最適化方法。
【請求項３１】
前記設計パラメータは、
（ａ）トランジスタ幅（Ｗ）、
（ｂ）トランジスタ長さ（Ｌ）、
（ｃ）ＭＯＳトランジスタのうちの一つの二端子間電圧、
（ｄ）ＭＯＳトランジスタのうちの一つの二端子間容量、
の何かを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３２】
前記設計パラメータは、ゲート・ソース間容量Ｃｇｓを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３３】
前記設計パラメータは、トランジスタの相互コンダクタンスｇｍを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３４】
前記設計パラメータは、トランジスタの出力コンダクタンスｇｄｓを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３５】
前記設計パラメータは、動作の弱反転領域におけるトランジスタの一以上のパラメータを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３６】
前記設計パラメータは、動作の強反転領域におけるトランジスタの一以上のパラメータを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３７】
前記設計パラメータは、動作の閾値の下領域におけるトランジスタの一以上のパラメータを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３８】
前記設計パラメータは、ゲート・ソース間電圧Ｖｇｓを含むことを特徴とする請求項２８記載の回路の設計及び最適化方法。
【請求項３９】
前記トランジスタは、バイポーラ接合トランジスタ（ＢＪＴ）を含むことを特徴とする請求項２７記載の回路の設計及び最適化方法。
【請求項４０】
前記設計パラメータは、トランジスタのコレクタ・エミッタ電流Ｉｃｅを含むことを特徴とする請求項３９記載の回路の設計及び最適化方法。
【請求項４１】
設計パラメータによって特徴づけられた諸素子を有する回路を設計する方法であって、
ｅｘ１及びｘ２に関するポジノミアル関数の制約関数ｆと、ｘ１に関する一次関数ｇ１との制約を条件とする目的関数ｆ０（ｘ１，ｘ２）からなる最適化問題を定式化すると共に該ｘ１及びｘ２が設計パラメータを含み、前記目的関数ｆ０（ｘ１，ｘ２）が前記制約関数の形式を採り得るようなステップと、
前記最適化問題を凸問題に変換するステップと、
前記凸問題を解いて前記ｘ１及びｘ２に関する最適化された設計パラメータ値を得るステップと、
を含むことを特徴とする回路の設計方法。
【請求項４２】
前記ｘ２に関するポジノミアルの制約関数ｆ２をさらに含むことを特徴とする請求項４１記載の回路の設計方法。
【請求項４３】
前記最適化問題を凸問題に変換するステップは、
ｙ２＝ｌｏｇｘ２をｆ０及びｆに置換し、
新しい関数ｆ′＝ｌｏｇｆ（ｘ１，ｙ２）及びｆ２′＝ｌｏｇｆ２（ｙ２）を定義し、
ｘ１及びｙ２に関する凸の制約関数ｆ′、ｙ２に関する凸関数ｆ２′、及びｘ１に関する擬似変換に関する関数ｇ１を条件として最適関数ｆ０′（ｘ１，ｙ２）を得るために凸最適化問題を再定式化する、
ことを特徴とする請求項４２記載の回路の設計方法。
【請求項４４】
前記凸問題を解くステップは、内点法の使用を含むことを特徴とする請求項４１記載の回路の設計方法。
【請求項４５】
一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法を実行するコンピュータプログラムによって実行可能な命令のプログラムを実施化するコンピュータが読取り可能な媒体であって、
第１の設計パラメータの指数を含み、回路の性能規格に使用されるポジノミアル関数ｆを作成し、
前記性能規格に一以上の制約値を与え、
前記性能規格を含む凸最適化問題を作成し、
前記凸最適化問題を解いて前記回路の一以上の最適化された設計パラメータ値を得る、
ことを特徴とするコンピュータが読取り可能な媒体。
【請求項４６】
前記ポジノミアル関数ｆがさらに第２の設計パラメータを含むことを特徴とする請求項４５記載のコンピュータが読取り可能な媒体。
【請求項４７】
前記一以上の設計パラメータのうち、いずれかの設計パラメータの一次関数ｇ１をさらに作成することを特徴とする請求項４５記載のコンピュータが読取り可能な媒体。
【請求項４８】
前記一次関数ｇ１が前記第１の設計パラメータを含むことを特徴とする請求項４７記載のコンピュータが読取り可能な媒体。
【請求項４９】
設計パラメータｘ１及びｘ２を含む諸素子を有する回路を設計し、最適化する方法であって、
ｅｘ１及びｘ２に関するポジノミアル関数ｆとｘ１及びｌｏｇｘ２に関する対数凸関数ｈとを含む制約関数を条件とし、前記ｆ及びｈのうちのいずれかの形式をとる最適関数ｆ０を含む最適化問題を定式化し、
前記最適化問題を凸最適化問題に変換し、
前記凸最適化問題を解いて少なくとも一つの最適化された設計パラメータ値を得る、
ことを特徴とする回路の設計及び最適化方法。
【請求項５０】
前記制約関数は、ｘ２に関するポジノミアル関数ｆ２をさらに含み、前記ｆ０が前記ｆ２の形式をとることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項５１】
さらに、前記制約関数は、ｘ１に関する一次関数ｇ１を含み、前記ｆ０が前記ｇ１の形式をとることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項５２】
前記制約関数は、ｘ１に関する一次関数ｇ１をさらに含み、前記ｆ０が前記ｇ１の形式をとることが可能であることを特徴とする請求項５０記載の回路の設計及び最適化方法。
【請求項５３】
前記最適化問題の凸最適化問題への変換は、
ｙ２＝ｌｏｇｘ２に変数を変換し、
ｙ２の項でｆ０，ｆ及びｈを書き換え、
前記ｆ０，ｆ，及びｈの対数をとる、
ことを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項５４】
前記最適化問題の凸最適化問題への変換は、
ｙ２＝ｌｏｇｘ２に変数を変換し、
ｙ２の項でｆ０，ｆ，ｆ２，ｇ１及びｈを書き換え、
前記ｆ０，ｆ，ｆ２及びｈの対数をとる、
ことを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項５５】
前記ｈは、
【数１】
2008515097.tif 000020
で表され、前記ｂｋはゼロ以上であることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項５６】
前記凸最適化問題を解く段階においては、チャンネル長変調効果を含むＣＭＯＳトランジスタのドレン電流に対する最適化された設計パラメータ値を得ることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項５７】
前記凸最適化問題を解く段階においては、チャンネル長変調効果を含むＣＭＯＳトランジスタのドレン電流に対する最適化された設計パラメータ値を得ることを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項５８】
前記凸最適化問題を解く段階においては、半導体の接合容量に対する最適化された設計パラメータ値を得ることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項５９】
前記凸最適化問題を解く段階においては、ＣＭＯＳの接合容量に対する最適化された設計パラメータ値を得ることを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項６０】
前記凸最適化問題を解く段階においては、トランジスタのゲート・ソース間容量に対する最適化された設計パラメータ値を得ることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項６１】
前記凸最適化問題を解く段階においては、垂直電界による移動度の低下に影響するＭＯＳトランジスタのドレン電流に対する最適化された設計パラメータ値を得ることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項６２】
前記凸最適化問題を解く段階においては、垂直電界による移動度の低下に影響するＭＯＳトランジスタのドレン電流に対する最適化された設計パラメータ値を得ることを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項６３】
前記凸最適化問題を解く段階は、ＭＯＳトランジスタの幅（Ｗ）を含む最適化された設計パラメータ値を作成することを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項６４】
前記凸最適化問題を解く段階は、ＭＯＳトランジスタの長さ（Ｌ）を含む最適化された設計パラメータ値を作成することを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項６５】
前記凸最適化問題を解く段階は、ＭＯＳトランジスタの幅（Ｗ）を含む最適化された設計パラメータ値を作成することを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項６６】
前記凸最適化問題を解く段階は、ＭＯＳトランジスタの長さ（Ｌ）を含む最適化された設計パラメータ値を作成することを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項６７】
前記凸最適化問題を解く段階は、ＭＯＳトランジスタの出力コンダクタンスを含む設計パラメータの特定をすることを含むことを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項６８】
前記凸最適化問題を解く段階は、ＭＯＳトランジスタの出力コンダクタンスを含む設計パラメータの特定することを含むことを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項６９】
前記凸最適化問題を解く段階においては、キルヒホッフの電圧法則を使用して一以上の電圧を含む設計パラメータの特定を含むことを特徴とする請求項５１記載の回路の設計及び最適化方法。
【請求項７０】
前記凸最適化問題を解く段階においては、キルヒホッフの電圧法則を使用して一以上の電圧を含む設計パラメータの特定を含むことを特徴とする請求項５２記載の回路の設計及び最適化方法。
【請求項７１】
前記回路の構成要素には、バイポーラ接合トランジスタ（ＢＪＴ）が含まれることを特徴とする請求項４９記載の回路の設計及び最適化方法。
【請求項７２】
前記回路の設計パラメータは、ＢＪＴトランジスタのコレクタ・エミッタ電流Ｉｃｅを含むことを特徴とする請求項７１記載の回路の設計及び最適化方法。
【請求項７３】
ｘ１及びｘ２が回路の一以上の素子の設計パラメータを含み、ｅｘ１及びｘ２に関するポジノミアル関数ｆと、ｘ１及びｌｏｇｘ２に関する対数凸関数ｈとからなる制約関数を作成し、
前記凸最適化問題を解いて最適化された設計パラメータ値を得る、
ことを特徴とする回路の最適化方法。
【請求項７４】
前記設計パラメータは、ＭＯＳトランジスタのドレン電流Ｉｄｓを含むことを特徴とする請求項７３記載の回路の最適化方法。
【請求項７５】
前記ドレン電流Ｉｄｓがチャンネル長変調を含むことを特徴とする請求項７３記載の回路の最適化方法。
【請求項７６】
前記設計パラメータは、トランジスタの電圧を含むことを特徴とする請求項７３記載の回路の最適化方法。
【請求項７７】
前記設計パラメータは、ＣＭＯＳトランジスタの幅（Ｗ）及び長さ（Ｌ）を含むことを特徴とする請求項７３記載の回路の最適化方法。
【請求項７８】
回路を最適化する方法を実行するコンピュータプログラムによって実行可能な命令のプログラムを実施化するコンピュータが読取り可能な媒体であって、
ｘ１及びｘ２が回路の一以上の素子の設計パラメータを含み、ｅｘ１及びｘ２に関するポジノミアル関数ｆと、ｘ１及びｌｏｇｘ２に関する対数凸関数ｈとからなる制約関数を作成し、
前記凸最適化問題を解いて最適化された設計パラメータ値を得る、
ことを特徴とするコンピュータが読取り可能な媒体。
【請求項７９】
一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法であって、
第１の設計パラメータの指数を含むシグノミアル（signomial）関数ｓと第１の設計パラメータ及び第２の設計パラメータの対数を含む対数凸関数ｈとを条件として、前記ｓ又はｈのいずれかの形式をとるｓ０を最適化するための問題を定式化し、
標準形式の対数凸線形問題の制約（ＬＣＬＰ−Ｒ）問題として最適化問題に近似し、
凸形式の前記ＬＣＬＰ−Ｒ問題を解く、
ことを特徴とする回路の最適化方法。
【請求項８０】
前記近似及び解く段階においては、さらに、
（ａ）点ｘ及び許容値ε≧０を選択し、
（ｂ）最適化問題を点ｘ周りの局所的な凸形式に転換し、
（ｃ）解析点ｘαを演算し、
（ｄ）解析点ｘαで近似エラーＥを演算し、
（ｅ）解析点ｘαでｘを更新し、
（ｆ）Ｅ≦εとなるまで、又は反復回数が最大値に近づくまで前記（ａ）〜（ｅ）のステップを繰り返す、
ことを特徴とする請求項７９記載の回路の最適化方法。
【請求項８１】
前記最適化問題の近似は、式がポジノミアルに簡略化されるようにシグノミアルｓを近似することを特徴とする請求項８０記載の回路の最適化方法。
【請求項８２】
前記最適化問題の近似は、最小二乗法に最もよく適合する単項式と共に負の係数を有する単項式の項に近似することによってシグノミアルｓに近似することを特徴とする請求項７９記載の回路の最適化方法。
【請求項８３】
凸形式の前記ＬＣＬＰ−Ｒを解く段階は、内点法を使用することを特徴とする請求項７９記載の回路の最適化方法。
【請求項８４】
前記ｓは、第２の設計パラメータに関するシグノミアルであることを特徴とする請求項７９記載の回路の最適化方法。
【請求項８５】
近似エラーを演算する段階は、
【数２】
2008515097.tif 000021
式を使用することを特徴とする請求項８０記載の回路の最適化方法。
【請求項８６】
前記第２の設計パラメータに関するシグノミアル関数ｓ２をさらに含み、前記ｓ０がｓ２の形式をとることを特徴とする請求項７９記載の回路の最適化方法。
【請求項８７】
第１の設計パラメータに関する一次関数ｇ１をさらに含み、前記ｓ０がｇ１の形式をとることが可能であることを特徴とする請求項７９記載の回路の最適化方法。
【請求項８８】
第１の設計パラメータに関する一次関数ｇ１をさらに含み、前記ｓ０がｇ１の形式をとることを特徴とする請求項８０記載の回路の最適化方法。
【請求項８９】
前記近似及び解く段階においては、さらに、
（ａ）点ｘ及び許容値ε≧０を選択し、
（ｂ）最適化問題を点ｘ周りの局所的な凸形式に転換し、
（ｃ）解析点ｘαを演算し、
（ｄ）解析点ｘαで近似エラーＥを演算し、
（ｅ）解析点ｘαでｘを更新し、
（ｆ）Ｅ≦εとなるまで、又は反復回数が最大値に近づくまで前記（ａ）〜（ｅ）のステップを繰り返す、
ことを特徴とする請求項８６記載の回路の最適化方法。
【請求項９０】
前記一次関数ｇ１は、アナログ回路における一以上の電圧値に最適化された設計パラメータ値を与えることを特徴とする請求項８７記載の回路の最適化方法。
【請求項９１】
前記ｇ１は、前記回路の一以上の電圧値を計算するために使用されることを特徴とする請求項８８記載の回路の最適化方法。
【請求項９２】
前記一以上の電圧値は、キルヒホッフの電圧法則を使用して計算されることを特徴とする請求項９１記載の回路の最適化方法。
【請求項９３】
前記第２の設計パラメータ及び第１の設計パラメータの指数は、前記回路の一以上のトランジスタに関連する最適化された設計パラメータを計算するために使用されることを特徴とする請求項７９記載の回路の最適化方法。
【請求項９４】
最適化されたトランジスタの電流が計算されることを特徴とする請求項９３記載の回路の最適化方法。
【請求項９５】
キルヒホッフの電流法則が最適化されたトランジスタの電流を計算するために使用されることを特徴とする請求項９４記載の回路の最適化方法。
【請求項９６】
前記ｈは、半導体の接合容量を計算するために使用されることを特徴とする請求項７９記載の回路の最適化方法。
【請求項９７】
一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法であって、
負の係数を備えた少なくとも一つの項を有し、且つ対数凸関数ｈを条件として該ｈの形式をとるｓ０を最適化するための問題を定式化し、
前記最適化問題を標準形式の対数凸線形問題の制約（ＬＣＬＰ−Ｒ）問題として近似し、
凸形式の前記ＬＣＬＰ−Ｒ問題を解く、
ことを特徴とする回路の最適化方法。
【請求項９８】
前記近似及び解く段階においては、さらに、
（ａ）点ｘ及び許容値ε≧０を選択し、
（ｂ）最適化問題を点ｘ周りの局所的な凸形式に転換し、
（ｃ）解析点ｘαを演算し、
（ｄ）解析点ｘαで近似エラーＥを演算し、
（ｅ）解析点ｘαでｘを更新し、
（ｆ）Ｅ≦εとなるまで、又は反復回数が最大値に近づくまで前記（ａ）〜（ｅ）のステップを繰り返す、
ことを特徴とする請求項９７記載の回路の最適化方法。
【請求項９９】
一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法を実行するコンピュータプログラムによって実行可能な命令のプログラムを実施化するコンピュータが読取り可能な媒体であって、
第１の設計パラメータの指数を含むシグノミアル関数ｓと第１の設計パラメータ及び第２の設計パラメータの対数を含む対数凸関数ｈとを条件として前記ｓ又はｈのいずれかの形式をとるｓ０を最適化するための問題を定式化し、
前記最適化問題を標準形式の対数凸線形問題の制約（ＬＣＬＰ−Ｒ）問題として近似し、
凸形式における前記ＬＣＬＰ−Ｒ問題を解く、
ことを特徴とするコンピュータが読取り可能な媒体。
【請求項１００】
前記方法における前記近似及び解く段階は、さらに、
（ａ）点ｘ及び許容値ε≧０を選択し、
（ｂ）最適化問題を点ｘ周りの局所的な凸形式に転換し、
（ｃ）解析点ｘαを演算し、
（ｄ）解析点ｘαで近似エラーＥを演算し、
（ｅ）解析点ｘαでｘを更新し、
（ｆ）Ｅ≦εとなるまで、又は反復回数が最大値に近づくまで前記（ａ）〜（ｅ）のステップを繰り返す、
ことを特徴とする請求項９９記載のコンピュータが読取り可能な媒体。
【請求項１０１】
前記第１の設計パラメータは、電圧の変数を含むことを特徴とする請求項９９記載のコンピュータが読取り可能な媒体。
【請求項１０２】
少なくとも一つの設計パラメータを備えた凸最適化を使用して回路を最適化する方法であって、
前記設計パラメータの指数に関するポジノミアル関数ｆである目的関数ｆを最小化し、
前記ｆを解いて前記少なくとも一つの最適化された設計パラメータ値を得る、
ことを特徴とする回路の最適化方法。
【請求項１０３】
前記設計パラメータは、電圧の変数であることを特徴とする請求項１０２記載の回路の最適化方法。
【請求項１０４】
前記設計パラメータは、トランジスタの特性を含むことを特徴とする請求項１０２記載の回路の最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、「回路設計のための新規な最適化」の名称で発明者をハーセンソン及びデービッド．Ｍ．コレランとして２００４年９月３０日に出願された米国出願番号６０／６１４，７４５に基づく優先権を主張するものであり、その内容は全て本明細書に組み込まれる。
【０００２】
本発明は、一般的に回路設計に関し、特に、方程式に基づく最適化技術を用いる回路設計方法に関する。
【背景技術】
【０００３】
より効率的かつ効果的な方程式及びソフトウェアに基づいた集積回路の設計方法が、電子機器及びコンピュータ機器類の開発に関与する今日のビジネスにおいては最も必要となっている。過去十年間に亘り、上述のような種々の方法がデジタル及びアナログの回路設計の両分野において導入されてきた。電子機器及びそれらの構成要素類の高度化につれ、この高度化に一意的に適合した設計解法も要求されている。現代の集積回路の高度化が指数関数的に進むにつれ、より正確でより効率的な方法に対する要請が強くなっていることは自明なことである。
【０００４】
予め設計されたセルのライブラリに基づく自動合成フローを使用して多様なデジタル集積回路が設計されるものの、他の種類の回路、特に高性能が要求される回路、例えばマイクロプロセッサー、混合信号回路及びその他同種のものは、まだカスタム設計、つまり注文設計方式が採られている。カスタム回路設計は、一般的に、標準セルに基づく設計よりもはるかに複雑である。カスタム回路設計においては、基本的な構成要素には、大きさが固定されたゲートではなく、トランジスタ、コンデンサ、配線（インターコネクト）、及び同様の素子が含まれる。カスタム設計における合成プロセスは、論理合成ツールに基づくのではなく手動である。さらに、物理的なカスタム設計は、構築されずに、様々な形式がとられる。
【０００５】
カスタム回路設計においては、その設計者は、回路トポロジー、特定サイズ、セル配置、及び全体的な回路の物理的な設計等を事実上完全に制御する。設計者は殆ど設計制約条件を持たない、つまり例えば、設計者は単なる固定サイズではなく制限範囲内で任意の機器サイズを利用可能であるため、非常に高性能な回路の創作することが可能である。しかしながら、このような性能上の利点は、設計過程の複雑さから、コストの問題に直面することとなる。
【０００６】
残念ながら、設計プロセスは、時間経過と共に複雑になって来ている。特に、その理由には、拡大縮小技術の増加、オンチップ集積化のより高度化、アナログ設計サイクルがデジタル設計サイクルと同程度に短くなったという事実、及び現今のプロセス技術における大きなプロセスパラメータの変化量が含まれる。ほとんどのカスタム設計は、専門の設計者数が減少したことによって２０年前と同じ技術を使用して手動で行なわれている。カスタム回路設計者、特にアナログ設計者不足によって、問題は悪化している。市場へより速く出荷された高性能な製品に対して消費者の需要が増大するにつれ、これらのスケジュールに合わせようとする会社にとって、より効率的な設計ツールが必要性とされるようになった。
【０００７】
従来のカスタム設計法においては、一般に設計者は、１組の規格書と目標プロセスから設計を開始する。次に、設計者は、見込みの有る回路アーキテクチャ又はトポロジーを選択する。その後、設計者は、所望の性能に対する要求条件を達成するための構成要素の大きさ寸法や数値を決定し、構成要素の定寸プロセスを開始する。標準セルライブラリを使用する設計と比較して、一般に、設計変数の数が高々数十又は数百程度と比較的少ない。標準セル設計と異なり、カスタム回路設計の性能は、一般に、設計変数の僅かな変化に対して非常に敏感である。したがって、設計者は、全ての設計変数に就いて非常に正確に決定しなければならない。さもないと、結果としての回路性能は、よくても貧弱なものである。それどころか、回路は簡単には動作しないこととなろう。
【０００８】
さらに、カスタム設計手法を使用する各設計変数は、一般に、全ての性能指数に複雑で高度な非線形的な具合により影響を及ぼす。従来の手法においては、構成要素を定寸する従来の手法は、ＳＰＩＣＥのようなツールにより回路シミュレーションを繰り返し循環させ、そして手動又は自動の検索エンジンのいずれかで設計変数を更新し、或いは微調整するものである。
【０００９】
それでもなお、このカスタム設計手順は、手作りにより回路性能を最大にすることができるという点で大きな利点を有している。設計者は、一般に、回路に手を加えたり、また解かなければならない制約を踏まえて可能な最大性能を得ようとして長時間を費やすことになる。残念ながら、このカスタム設計手順は幾つかの欠点を有している。第１に、そのプロセスが多大な時間を要することである。実際、カスタム設計が選択されると、設計者は、設計変数を調整するのに許容される計画時間より長時間を費やす。一般に、最大性能を得るための回路の調整を何時止めるかを決定するのは非常に難しく、又全く新しいカスタム回路をゼロから創作したり、新しいプロセス技術に既存回路を移植するためには、カスタム設計手順は、経験豊富なカスタム設計者に大いに依存する。カスタム設計手順は、経験豊富な設計者の知識を要約保存することができない。また、その故に、経験の浅い設計者が、その知識を後で使用することができない。又は、現存の回路を効率的に修正するために経験豊富な設計者によってすらその知識を再使用することができない。
【００１０】
これらの多くの障害を克服しようとして、カスタム回路設計の方程式に基づく合成法が実施され、又は文献に提案されている。方程式に基づく方法においては、設計問題は、数値アルゴリズムによって解くことができる数理最適化問題として位置づけられる。その結果生じる問題は、一般的な非線形の最適化問題、又は幾何的計画（geometric program）又は線形計画（linear program）のような凸最適化問題として位置づけられる。アナログ設計において生ずる一般的な非線形最適化問題を解くためには、最急降下法、逐次二次計画法及びラグランジェ乗数法のような古典的数値最適化方法が使用されて来た。さらに、様々な周知の汎用最適化コード、及び古典的最適化法に基づくアナログ及び混合信号回路設計用の他の計算機援用設計（ＣＡＤ）法が使用される場合もある。さらに、カスタムデジタル回路設計用の他の方程式に基づく方法が、ゲートの定寸化及び接地・電源間網の設計の目的で一般に非線形、又は凸のいずれかに使用される。
【００１１】
幾何的計画法は、カスタム回路設計において回路パラメータを特定するための方程式に基づく方法の一種である。この方法は、例えば、デジタル回路のエルモア遅れ（Elmore delay）を最小にするために、トランジスタ及び配線を定寸する際に広く使用されている。一般に、幾何的計画は、１組の特定の最適化された設計パラメータをもたらすポジノミアル（posynomial:ポジノミアルにおける座標値、係数が正の実数であるものを言い、以下、単にポジノミアルと記載する）及び単項式ないしモノミアル（monomial、単項のポジノミアルで以下、単に単項式と記載する）の制約を条件とするポジノミアル関数を最小化することを包含する。幸いにも、幾何学形式の複雑な最適化プログラムを効率的に解くための市販のプログラムが沢山ある。そのようなプログラムには、例えば、ＭＯＳＥＫが含まれる。また、幾何的計画を解くための一般に利用可能なソルバーが幾つかある。
【００１２】
幾何的計画は、変数を変更することにより、またそこに含まれている関数の対数をとることにより凸最適化問題として再定式化することができる。凸最適化方法は、最適化問題、即ち凸最適化問題のような特殊な問題を解く方程式に基づく方法の一種である。この方法において、回路条件と性能は、特殊な形式を有する１組の解析的設計方程式によって記述される。一度この形式がとられると、設計問題は、凸最適化問題に転換される。この種の数理最適化問題は、その問題が大規模で非線形であっても、全体的に効率的に解くことができる。大規模で非線形の凸最適化問題を解くことができるということは、多くの事例において有利である。なぜなら、例えばフェーズロックループ（ＰＬＬ）、又はデータ変換器のような複雑なブロックの性能を正確に予測するために、何千もの高度な非線形方程式の形をとることができる可能性があるからである。
【００１３】
凸最適化方式が、たとえ方程式に基づく方法の特殊なタイプであるとしても、必ずしも既存の方程式に基づく方法で発生していた従来のような精度問題に悩まされることがない。特に、使用可能な方程式の種類が制限されても、即ち、方程式が凸関数でなければならないものであるとしも、それらはなお高度に非線形で複雑であり、難解な回路動作を表わすために使用することができる。
【００１４】
汎用の最適化方法と比較して、凸最適化の非常に大きな利点の一つは、開始時点にも係らず広範な解が常に見つかるということである。さらに、実行不可能であることが明確に検知される。すなわち、上記方法を使用しても実現可能な回路の解が得られない場合に、その問題が実現不可能であるということが証明される。また、幾何的計画が解決され、解かれると、その問題の完全な感度解析が計算作業を追加することなく得られる。これらの感度数は、非常に有用な設計洞察を提供してくれる。
【００１５】
凸最適化問題の他の重要で実用的な利点は、非常に効率的に解くことができるということである。この十年間に、一般的な凸最適化問題を解く有力な内点法が開発された。これらの方法は、何万もの変数及び何十万もの制約条件を有する大きな問題を非常に効率的に、例えば最近のＰＣを使用して数分以内に解くことができる。数十もの変数及び何百もの制約条件を含む問題は、小さな問題とみなされ、最近のＰＣによって、一般に１秒未満で解くことができる。
【００１６】
凸最適化方法を使用する場合には、その問題を記述するために使用可能な方程式の種類が必ず制限される。しかしながら、上記方法が適用可能である場合には、アルゴリズム上で大きな利点が得られる。たとえ回路設計が凸の定式化の使用を制限されても、その方法は種々の回路設計問題に適用することができる。
【発明の開示】
【発明が解決しようとする課題】
【００１７】
幾何的計画法（プログラミング）及び凸最適化方法を含む既存の方程式に基づく方法の様々な欠点は、広く明らかになっている。例えば、凸問題の作成に幾何的計画法を使用すると、回路素子のモデルをポジノミアルの形式で近似しなければならない。また、現時点のように、簡単な設計パラメータが幾何学的プログラミング又は凸最適化プログラムに関連した性能規格を指定するポジノミアル関数の変数として使用される場合、この方法については、ハーセンソン等に付与された米国特許第６，２６９，２７７号に開示されているが、幾つかの他のエラーが入り込む。実例としては、これらのエラーは、サブミクロン深さのＣＭＯＳプロセスにおいて非常に顕著になる。幾何的計画方法は、一般に、チャネル長が短いトランジスタに対しては正確ではない。この場合、チャネル長変調、体積効果、ドレンに生じる障壁の低下、垂直領域のモビリティ低下、及び他の非理想性が、トランジスタのパラメータに対する方程式を複雑にする。他の例として、動作の閾値下、又は弱反転領域で動作するトランジスタは、幾何的計画方法を使用して正確にモデル化することができない。その他、回路設計には多くの例があるが、方程式に基づく方法が簡単な設計パラメータを使用する幾何的計画法形式に限定されるときには、設計パラメータを正確に最適化することができないと言う欠点がある。
【００１８】
さらに、幾何的計画法に基づく方法の別の欠点は、一般的な線形制約関数を使用することができないということである。幾何的計画法は、特に、ポジノミアルの不等式及び単項等式の制約に制限される。幾何的計画法のこのような特性により、回路設計の分野においてそれぞれ実用上の不都合が生じる。例えば、殆ど全てのアナログ回路設計問題の第１ステップは、適切な直流（ＤＣ）の動作点を決定することである。キルヒホッフの電圧法則（Kirchoff’s Voltage Law：以下「ＫＶＬ」という）及びキルヒホッフの電流法則（Kirchoff’s Current Law：以下「ＫＣＬ」という）を使用して、上記ＤＣの動作点を代数的に解くことができる。しかしながら、アナログ回路を殆ど全て決定する上記２つの基本法則は、一般に、ポジノミアルの等式制約をもたらし、それ故、幾何的計画法を使用して扱うことができない。
【００１９】
従って、任意の回路設計問題において、様々の回路条件の下で種々の設計パラメータのタイプを正確にモデル化するために使用される、効率的な方程式に基づく方法の技術が求められている。
【課題を解決するための手段】
【００２０】
本発明の一態様によれば、一以上の設計パラメータによって特徴づけられる諸素子を有する回路を最適化する方法は、第１の設計パラメータの指数を含むと共に該回路の性能規格に使用されるポジノミアル関数ｆを作成し、前記性能規格に関する一以上の制約値を与え、前記性能規格を含む凸最適化問題を作成し、前記凸最適化問題を解いて前記回路に対する一以上の最適化された設計パラメータ値を得るものである。
【００２１】
また、本発明の別の態様によれば、一以上の設計パラメータによって特徴づけられる諸素子を有する回路を設計し、最適化する方法は、第１の設計パラメータを含むと共に該回路の性能規格に使用される一次関数ｇ１と、前記第１の設計パラメータの指数を含むと共に該回路の性能規格に使用されるポジノミアル関数ｆとを作成し、前記性能規格に関する制約値を与え、前記性能規格を記述する関数を含む凸最適化問題を作成し、前記凸最適化問題を解いて前記回路の一以上の最適化された設計パラメータ値を得るものである。
【００２２】
さらに、本発明の別の態様によれば、設計パラメータによって特徴づけられる諸素子を有する回路を設計する方法は、次のステップ、すなわち、ｅｘ１及びｘ２に関するポジノミアル関数の制約関数ｆと、ｘ１に関する一次関数ｇ１との制約を条件とする目的関数ｆ０（ｘ１，ｘ２）からなる最適化問題を定式化すると共に該ｘ１及びｘ２が設計パラメータを含み、目的関数ｆ０（ｘ１，ｘ２）が前記制約関数の形式を採り得るようなステップと、最適化問題を凸問題に変換するステップと、前記凸問題を解いて前記ｘ１及びｘ２に関する最適化された設計パラメータ値を得るステップと、を含むものである。
【００２３】
さらにまた、本発明の別の態様によれば、一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法を実行するコンピュータプログラムによって実行可能な命令のプログラムを実施化するコンピュータが読取り可能な媒体は、第１の設計パラメータの指数を含み、回路の性能規格で使用されるポジノミアル関数ｆを作成し、前記性能規格に一以上の制約値を与え、前記性能規格を含む凸最適化問題を作成し、前記凸最適化問題を解いて前記回路の一以上の最適化された設計パラメータ値を得るものである。
【００２４】
そして、本発明の別の態様によれば、設計パラメータｘ１及びｘ２を含む諸素子を有する回路を設計し、最適化する方法は、ｅｘ１及びｘ２に関するポジノミアル関数ｆとｘ１及びｌｏｇｘ２に関する対数凸関数ｈとを含む制約関数を条件とする最適関数ｆ０を含む最適化問題を定式化し、このとき前記ｆ０は前記ｆ及びｈのうちのいずれかの形式をとるものとし、前記最適化問題を凸最適化問題に変換し、次いで前記凸最適化問題を解いて少なくとも一つの最適化された設計パラメータ値を得るようにする。
【００２５】
また、本発明の別の態様によれば、回路を最適化する方法は、ｘ１及びｘ２が該回路の一以上の素子の設計パラメータを含み、ｅｘ１及びｘ２に関するポジノミアル関数ｆと、ｘ１及びｌｏｇｘ２に関する対数凸関数ｈとからなる制約関数を作成し、凸最適化問題を解いて、最適化された設計パラメータ値を得るのである。
【００２６】
さらに、本発明の別の態様によれば、回路を最適化する方法を実行するコンピュータプログラムによって実行可能な命令のプログラムを実施化するコンピュータが読取り可能な媒体は、ｘ１及びｘ２が回路の一以上の構成要素の設計パラメータを含むものとし、ｅｘ１及びｘ２に関するポジノミアル関数ｆと、ｘ１及びｌｏｇｘ２に関する対数凸関数ｈとからなる制約関数を作成し、凸最適化問題を解いて最適化された設計パラメータ値を得るのである。
【００２７】
さらにまた、本発明の別の態様によれば、一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法は、第１の設計パラメータの指数を含む一般化されたポジノミアル関数、つまりシグノミアル関数ｓ（signomial function s）と第１の設計パラメータ及び第２の設計パラメータの対数を含む対数凸関数ｈとを条件として、前記ｓ又はｈのいずれかの形式をとるｓ０を最適化するための問題を定式化し、標準形式の対数凸線形問題の制約（ＬＣＬＰ−Ｒ）問題として最適化問題に近似し、凸形式における前記ＬＣＬＰ−Ｒ問題を解くものである。
【００２８】
そして、本発明の別の態様によれば、一以上の設計パラメータによって特徴づけられる諸素子を有する回路を最適化する方法は、負の係数を備えた少なくとも一つの項を有し、且つ対数凸関数ｈを条件として該ｈの形式をとることのできるｓ０を最適化するための問題を定式化し、該最適化問題を標準形式の対数凸線形問題の制約（ＬＣＬＰ−Ｒ）問題として近似し、かつ凸形式の前記ＬＣＬＰ−Ｒ問題を解くものである。
【００２９】
また、本発明の別の態様における、一以上の設計パラメータによって特徴づけられた諸素子を有する回路を最適化する方法を実行するコンピュータプログラムによって実行可能な命令のプログラムを具現化するコンピュータで読取り可能な媒体は、第１の設計パラメータの指数を含むシグノミアル関数ｓと第１の設計パラメータ及び第２の設計パラメータの対数を含む対数凸関数ｈとを条件として前記ｓ又はｈのいずれかの形式をとることができるｓ０を最適化するための問題を定式化し、該最適化問題を標準形式の対数凸線形問題の制約（ＬＣＬＰ−Ｒ）問題として近似し、かつ凸形式による前記ＬＣＬＰ−Ｒ問題を解くものである。
【００３０】
さらに、本発明の別の態様によれば、少なくとも一つの設計パラメータを備えた凸最適化を使用して回路を最適化する方法は、前記設計パラメータの指数に関するポジノミアル関数ｆである目的関数ｆを最小化し、前記ｆを解いて前記少なくとも一つの最適化された設計パラメータ値を得るものである。
【００３１】
そして、本発明の他の実施形態は、図示例を介して本発明の実施形態として図示及び記載する以下の詳細な説明に基づいて、当業者なら容易に理解することができるであろう。本発明に基づいて他の実施形態及び異なった実施形態を実現することができることは自明である。また、本発明の技術的思想及び範囲を逸脱することなく種々改変することができることは自明である。したがって、図面及び詳細な記載は、具体的な実施形態として見なされるべきであり、限定的なものとしてみなされるべきでない。
【発明を実施するための最良の形態】
【００３２】
添付図面に基づいて以下に詳述されている事項は、本発明の様々な実施形態の説明を意図としたものであり、本発明の実施が可能なただ一つの実施形態を表わすように意図したものではない。ここに開示されている各実施形態は、単に本発明の一例又は説明図として提供されたものであり、必ずしも他の実施形態よりも好ましく又は優れたものであると解釈すべきではない。詳述された事項には、本発明の理解を深めるために特定の事項を含んでいる。しかし、本発明がこれらの特定事項に限定されないことは、当該技術に精通した当業者には自明の事柄である。いくつかの例示において、周知な構造及び構成要素は、本発明の概念を不明瞭にしないために、ブロックダイヤグラム形式又は部分的な概要図で示されている。
【００３３】
本発明の一態様では、設計パラメータの指数が使用されている。この開示において、「設計パラメータの指数」ｘとはｅｘを指す。例えば、回路設計問題の電圧変数は、電圧変数の指数に転換される。すなわち、電圧Ｖの指数は、この開示において量ｅＶを指す。例えばｅＶｇｓ、ｅＶｄｓ及びｅＶｓｂのような設計パラメータの指数変換だけでなく、例えばＷ、Ｌ及びＩｄｓのような標準設計パラメータも使用する正確なトランジスタモデルは、凸最適化と互換性のあるフォーマットで作られる。そうすることにより、回路設計問題は、上述の方法と異なった形式で扱われる問題のタイプを、事実上制約なしに凸最適化問題として扱うことができる。さらに、これらの方法は、速く効率的に解くことができるという点で有効である。
【００３４】
変数変換は、最適化問題の凸状を維持している間、トランジスタの電圧Ｖｇｓ、Ｖｄｓ及びＶｓｂに関して線形等式及び不等式制約を構築することを可能にする。そうすることにより、キルヒホッフの電圧法則を使用して作られた回路制約を、最適化、即ち既存の凸最適化方式に該当しない特性によって必然的に効率的に扱うことができる。電圧の指数関数、又は他の変数の指数に素子電圧を変換する他の利点は、トランジスタモデルの精度が劇的に向上するということである。これらの有利な特性については、以下により詳細に説明する。さらに、利点の一つは、回路設計に必要とされる精度を維持したまま、一つの動作領域を同時にモデル化することができるということである。
【００３５】
トランジスタの大小信号パラメータの数字の精度は、本発明の方法を使用して改善される。この事実を示す幾つかの例をここに示す。先ず、次の方程式を検討する。
Ｉｄｓ＝（μＣｏｘ／２）（Ｗ／Ｌ）（Ｖｇｓ−Ｖｔ）２（１＋λＶｄｓ）…（１．１）
長チャネルのＭＯＳトランジスタのドレン電流がチャネル長変調の効果を含めて式（１．１）に示されている。ドレン電流がＶｄｓの増加に伴ってわずかに増加するという事実を具体化するために、（１+λＶｄｓ）が付け加えられる。電流の増加は、二次効果である。したがって、λＶｄｓは、ほとんど常に１未満である。ｅｘ≒１＋ｘで表せるという周知のテイラー級数を適用すると、（１＋λＶｄｓ）≒ｅλＶｄｓとなる。Ｖｄｓを指数変換することにより、チャネル長変調が凸関数、単項式の形式において必然的にモデル化される。
【００３６】
現在のＣＭＯＳプロセスにおいて一般的な垂直電界による移動度の低下は、同様のプロセスを有するＭＯＳトランジスタの理想的なドレン電流を減少させる。垂直電界による移動度の低下を考慮したドレン電流は、
Ｉｄｓ＝Ｉｄｓ，ｉｄｅａｌ（１+βｇＶｄｓ）−１ 
と表すことができる。
ここで、再度、テイラー級数の近似を適用すると、βｇＶｄｓに関しては、
（１+βｇＶｄｓ）−１≒ｅβｇＶｄｓとなる。Ｖｄｓに対して指数変換を使用すれば、垂直電界による移動度の低下が単項式の形式で必然的にモデル化される。
【００３７】
ソースとドレン拡散領域に起因する寄生ダイオードの容量は、指数変換により正確な凸関数モデルを作成することができる別の例を示している。例えば、逆バイアスされた拡散ダイオードのバルク容量は、次の式で表すことができる。
【００３８】
【数３】
2008515097.tif 000002
【００３９】
同じテイラー級数近似を用いると小さなγＶｓｂに関しては、（１＋γＶｓｂ）０．５≒ｅ０．５γＶｓｂとなることは明らかである。凸最適化方式と互換性のある正確なモデルは、素子電圧の指数変換を使用して作成される。この方式を従来の最適化方式と比較するためには、Ｖｓｂの単項式関数、即ちαＶｓｂβとしてのＣｓｂを考察する。すなわち、Ｖｓｂがゼロに接近するにつれ、静電容量は、ｓｉｎβに依存して、ゼロ又は無限大のいずれかの方に変化する。従って、設計変数Ｖｄｓ及びＶｓｂを直接使用する従来の凸最適化モデルによれば、設計パラメータに対して誤った値が得られることは明白である。
【００４０】
ｅＶｓｂの代わりにｅ(Ｖｄｓ＋Ｖｓｂ)を使用すれば、ＣｄｂがＣｓｂと同じ方法で計算することができる。ＫＶＬを使用して計算されるＶｄｓ及びＶｓｂの一次結合は、正確にＣｄｂを計算するために必要である。この計算は、幾何的計画法において既存の方法を使用して行うことができない。
【００４１】
また、ＣｓｂとＣｄｂの計算には、この明細書において紹介する新しいＬＣＬＰ−Ｒの凸最適化技法を活用することができる。ＶｓｂとＶｄｂが大きいときには、テイラー級数近似において、ＣｓｂとＣｄｂにいくらかの誤差が生じる。ｘ１＝（１＋γＶｓｂ）及びｂｋ＝０．５として後述の式（１５）を参照すれば、テイラー級数近似におけるＣｓｂ及びＣｄｂの誤差は無視することができる。このとき、対数凸線形制約（ＬＣＬＰ−Ｒ）された後述の最適化問題の有益な対数凸関数の特性は保存されている。さらに、いくつかの半導体の接合容量に上記Ｃｓｂの式を適用することができる。
【００４２】
弱反転かつ閾値下の動作領域は、従来の凸最適化方式を使用して正確にモデル化することができない。代表的には、強反転動作領域だけが、既存の解法を用いて、ある状況下で適当な精度でモデル化される。電源電圧降下や消費電力が回路設計において重大な問題になるので、弱反転の動作領域や閾値下の動作領域においてトランジスタにバイアスをかける電流及びゲート・ソース間電圧は低く設計される。閾値下の領域においては、トランジスタのドレン電流が拡散電流によって支配されることは周知である。従って、閾値下の領域におけるＭＯＳトランジスタのドレン電流を示す式は、次の式に示すように、バイポーラ接合トランジスタ（ＢＪＴ）のエミッタ電流に近似している。
Ｉｃｅ＝ＩｓｅＶｂｅ／Ｖｔｈ
Ｉｄｓ＝Ｉｓ，ｓｕｂｅＶｇｓ／Ｖｔｈ 
バイポーラトランジスタのエミッタ電流、及び閾値下の動作領域におけるＭＯＳトランジスタのドレン電流の両方は、素子電圧の指数関数変換を正確に使用してモデル化される。弱反転領域のドレン電流は、ほぼ、強反転領域における長チャンネルのＭＯＳトランジスタのＶｇｓへ指数関数的に依存する部分と、Ｖｇｓへ二乗検波的に依存する部分との間にある。
【００４３】
ｅＶｇｓを使用して、Ｉｄｓ、ｇｍ、ｇｄｓ、Ｃｇｓ、及び他の重要なトランジスタのパラメータに対する正確なモデルが作成される。このモデルは、トランジスタ動作の多くの領域に渡って正確である。回路性能は、トランジスタの動作領域に存在する制約を除去することにより劇的に改善される場合がある。しかしながら、これらの改善は、既に提案されている解法と異なり、かなりの時間を節約し、はるかに効率的で信頼性のある解法を可能にして凸最適化方式を実現する。本発明の最適化方式を使用するｇｍモデルを従来の幾何的計画法に基づく方式と比較すると、図１０に示すように、本発明のモデルの精度が改善されていることは明白である。
【００４４】
〔一般的な回路設計問題に対するモデル〕
先ず、本発明の種々の実施形態に対する一例として、一般的な回路設計問題の説明に使用される解析モデルの代表的なものを概説する。回路設計問題における代表的な設計変数は、次のものを含んでいる。即ち、
・ 能動的及び受動的な素子サイズ（Ｓｉ）（例えば、トランジスタ、抵抗、ワイヤ等）
・ 回路変数（ノード電圧Ｖｉ及びブランチ電流Ｉｉ）
・ 外的な回路パラメータ（Ｘｉ）（例えば、電源電圧やバイアス電流）
【００４５】
図１は、代表的なコモンソースの増幅器を示している。この増幅器は、トランジスタＭ１と、抵抗Ｒと、静電容量Ｃを含んで構成されている。入力ノード１００は、トランジスタＭ１のゲートにある。出力ノード１０１は、トランジスタＭ１のドレンにある。静電容量Ｃもまたノード１０１に接続されている。トランジスタＭ１のソースと静電容量Ｃの他方の端子は、接地ノード１０２に接続されている。抵抗Ｒは、出力ノード１０１と電源ノード１０３との間に接続されている。
【００４６】
図１の増幅器は、回路動作を説明する式が少なくとも四つのカテゴリーに分類できるということを理解するのに有益である。第１のカテゴリーは、例えば、アナログ回路のバイアスポイントのような動作点の式を含んでいる。このカテゴリー内では、キルヒホッフの電圧法則（ＫＶＬ）により、次のような電圧の一次方程式が成立する。
ｆＫＶＬ（Ｖｉ）＝０
例えば、図１に示すコモンソースの増幅器においては、次の二つの式が成立する。
ＶＤＤ=ＶＲ+ＶＤ，Ｍ１    …（１）
Ｖｉｎ＝ＶＧ，Ｍ１    …（２）
ここで、ＶＲは抵抗Ｒの降下電圧であり、ＶＤ，Ｍ１はトランジスタＭ１のドレン電圧であり、ＶＧ，Ｍ１はトランジスタＭ１のゲート電圧である。式（１）及び（２）は、ノード電圧（ＶＧ，Ｍ１及びＶＤ，Ｍ１）に関しての一次方程式である。
【００４７】
また、第１のカテゴリー（動作点方程式）には、次のような電流の一次方程式が成立するキルヒホッフの電流法則（ＫＣＬ）の応用が含まれる。
ｆＫＣＬ（Ｉｉ）＝０
例えば、図１の回路においては、次の式が適用される。
ＩＤＳ，Ｍ１=ＩＲ    …（３）
ここで、ＩＤＳ，Ｍ１はトランジスタの電流であり、ＩＲは抵抗を流れる電流である。このように、式（３）は素子電流に関する一次方程式である。
【００４８】
第２のカテゴリーには、端子電圧、電流及び大きさに関して次に示す非線形方程式が成立する非線形素子が含まれる。
ｆＮＬ（Ｖｉ，Ｉｉ，Ｓｉ）＝０
非線形素子の様々な形が回路設計に存在する。例示においては、特に、金属酸化膜半導体（ＭＯＳ）トランジスタ、バイポーラ接合トランジスタ及び非線形容量が含まれる。動作の活性領域におけるバイポーラ接合トランジスタの特性は、次のような簡単な式で表すことができる。
ＩＣ＝ＩＳｅＶＢＥ／ＶＴ（１＋ＶＣＢ／ＶＡ）    …（４）
ここで、ＩＣはコレクタ電流、ＩＳはコレクタ領域に依存する飽和電流、ＶＢＥはベース・エミッタ間電圧、ＶＴは熱電圧、ＶＣＢはコレクタ・ベース間電圧、ＶＡは初期電圧である。上記式（４）は、素子の端子電圧、電流及び大きさに関する非線形方程式である。
【００４９】
別の図のように、動作の飽和領域における長チャネルのＣＭＯＳトランジスタの式は、次の通りである。
ＩＤ＝ｋ（ＶＧＳ−Ｖｔ）２（１＋λＶＤＳ）    …（５）
ここで、ＩＤはドレン電流、ｋはプロセスと大きさの従属変数、ＶＧＳはゲート・ソース間電圧、Ｖｔはトランジスタの閾値電圧、λはプロセス定数、ＶＤＳはドレン・ソース間電圧である。
【００５０】
第３のカテゴリーには、端子電圧、電流及び大きさに関して次に示す一次方程式が成立する線形素子が含まれる。
ｆＬ（Ｖｉ，Ｉｉ，Ｓｉ）＝０
一定の状況下における多くの素子の動作が一次方程式を使用して非常によくモデル化することができる。そのような素子は、例えば、ある値が固定される時に、抵抗、容量及びインダクタを含んでいる。単純な理想抵抗に対しては、オームの法則が適用できる。
ＶＲ＝ＩＲＲ    …（６）
ここで、式（６）は、固定抵抗値に対する抵抗の電圧降下と電流との線形関係を表わしている。
【００５１】
第４のカテゴリーには、次のような設計変数の非線形方程式としてモデル化することができる回路設計パラメータが含まれる。
ｆＣＫＴ（Ｖｉ，Ｉｉ，Ｓｉ）
多くの回路設計パラメータが存在する。これらのパラメータのうちのいくつかは、例えばトランジスタの相互コンダクタンスｇｍのような素子自身の特性や、例えば増幅器の利得のような回路仕様である。一般に、仕様は回路によって変わる。例えば、増幅器を設計する際には、電力、単位利得帯域幅、開ループ利得、位相余裕及び他の設計パラメータのようなパラメータが考慮される。また、論理ゲートを設計する際には、立上り時間、立下り時間、電力等のパラメータが考慮される。設計パラメータは、独立している場合もあれば、依存している場合もある。例えば、アンプゲインの設計パラメータは、あるときにはトランジスタ幅（Ｗ）のような一以上の独立した設計パラメータに依存する場合がある。即ち、アンプゲインの設計パラメータは、そのような設計パラメータの関数である。例えば、図１に示すような簡単なコモンソース増幅器に対しては、設計パラメータのいくつかは、次のようなものである。
Ｐ＝ＶＤＤＩＲ    …（７）
｜Ｇ｜＝ｇｍＲ    …（８）
ω３ｄＢ＝（Ｒ＋ｒ０）／（Ｒ・ｒ０・ＣＤ）    …（９）                          
ここで、Ｐは電力、｜Ｇ｜絶対利得、ω３ｄＢは３ｄＢの周波数、ｒ０は小信号トランジスタ出力抵抗、ＣＤはドレンノードの全静電容量である。
【００５２】
要約すれば、回路設計問題は、総称的に最適化問題として表すことができる。この場合、他の設計パラメータの制限を条件として回路特性パラメータが最小化される。例えば、
最小化  ｆＣＫＴ，０（Ｖｉ，Ｉｉ，Ｓｉ）
条件    ｆＣＫＴ，ｉ（Ｖｉ，Ｉｉ，Ｓｉ）≦Ｐｉ，ｉ＝１，…，ｐ
ｆＫＶＬ（Ｖｉ）＝０，ｉ＝１，…，ｎｖ                         …（１０）
ｆＫＶＬ（Ｉｉ）＝０，ｉ＝１，…，ｎｉ
ｆＮＬ（Ｖｉ，Ｉｉ，Ｓｉ）＝０，ｉ＝１，…，ｎｍ
ｆＬ（Ｖｉ，Ｉｉ）＝０，ｉ＝１，…，ｎｒ
Ｓｉ＞０，ｉ＝１，…，ｎ
ここで、Ｐｉは性能ｉのための要求仕様であり、Ｐは性能規格の数、ｎｖは回路中のループの数、ｎｉは回路中のブランチの数、ｎｍは非線形素子の動作を表わす方程式の数、ｎｒは線形素子の動作を表わす方程式の数、ｎは物理的変数の数である。性能規格（制約）関数は、ある制約値によって制限されるか、又はある制約値に等しい変数の関数を含む。
【００５３】
このように、ほとんどの回路設計問題は、設計変数における線形・非線形方程式が混在した形で記述される。その結果、回路を設計する最適化問題は、線形・非線形方程式の両方を含むものとなる。この問題を解くために、一般的な非線形最適化ソルバーを使用すればよい。上記技術において周知のように、そのような方法は多数の欠点を有しており、不可能ではないにしても、解くのが非常に難しい。一般的な非線形の非凸最適化問題の課題には、極小、実現可能性の不確定性、開始点への依存性、最適化に長時間が掛かるなどが含まれる。
【００５４】
〔回路設計手順〕
図２は代表的な回路設計手順を示すブロック図である。ステップ２０２に示すように、適当な回路図が最初に作成される。ステップ２０４において、自動方程式キャプチャーが実行され、ステップ２０２で選択された回路の特有の方程式が作成される。さらに、又はステップ２０４の自動方程式キャプチャーの代わりとして、ステップ２０６のような、手動方程式作成ステップを含んでいてもよい。
【００５５】
ステップ２０８においては、組立工程及び他の適当な設計仕様に関する情報が提供される。さらに、ステップ２０８においては、方程式に基づく合成のための基礎的な枠組みを確立するために、「予め注釈された」データが提供されてもよい。例えば、レイアウト情報及び歩留情報等である。この情報は、素子の寄生容量の見積もり、プロセスパラメータ上の統計情報、及び同種のものを含んだ様々な形式をとる場合がある。
【００５６】
その結果、方程式が決定され、プロセスデータ及び設計データが提供されて、ステップ２１０の方程式に基づく合成が行われる。ステップ２１０は、例えば、他の関連した設計パラメータの方程式に基づいた回路定寸及び回路計算を含んでいる。さらに、ステップ２１２に示すように、シミュレーション法が使用される。シミュレーションに基づいた方法は、方程式に基づいた方法を補強する。多くの場合、カスタム回路設計問題のための最適解は、方程式及びシミュレーションに基づいた方法の両方を組み合わせることである。合理的な努力が方程式を使用して、問題となっている回路をモデル化する際に費やされる。同様に、シミュレーションは、回路用の方程式を作成するか又は設計の手直しをするか等、いずれかを導くやり方で使用される。
【００５７】
ステップ２１０及び２１２に基づく設計パラメータの初期設定を行うことにより、ステップ２１４に示すような回路が実現できる。その回路の特性及びパラメータは、「後ろの注釈」ステップ２１６において、必要に応じて設計に手を加えるべく再度プロセスに通すために使用される。
【００５８】
図２は、回路設計のための一手順を示したものにすぎない。したがって、方程式に基づく方法及びシミュレーションの両方を組み合わせる他のやり方でも、同様に回路設計は可能であり、それは本発明の技術的思想及び範囲に含まれる。
【００５９】
本発明の一態様においては、対数凸線形問題（log convex linear problem：以下「ＬＣＬＰ」と記載する）は、回路パラメータを最適化する方程式に基づいた方法を含んでいる。後述するように、ＬＣＬＰ問題は、設計パラメータｅｘの指数に関するポジノミアルからなる少なくとも一つの回路性能規格化関数を含んでいる。設計パラメータｘは、最適化される代表的な回路パラメータの変数を含んでいる。ＬＣＬＰを解く際に、最適化された設計パラメータ値が作られる。最適化された設計パラメータは、設計パラメータｘの最適値を示している。一以上の設計パラメータが使用され各設計パラメータが演算されて、対応する最適化された設計パラメータ値が求められる。さらに、後述するＬＣＬＰは、付加的な性能規格化関数（制約関数）を含んでいる。最適化された値が各性能規格に対して決められる。
【００６０】
後述のｘ１で示される設計パラメータの変数は、一般に指数、即ちｅｘ１に付随する方程式の中で表わされている。一方、ｘ２で示される設計パラメータの変数は、非指数関数の簡単な設計パラメータ、即ちｘ２として一般に表わされる。このように区別するのは、実際の用途におけるのと同様に用語を明確にするためだけであり、本発明の技術的思想又は範囲を外れない限り、上記変数又は付加的な変数に対して異なった用語が上記ＬＣＬＰ問題を表すのに使用されてもよい。
【００６１】
次に示す最適化問題について考えてみる。
最小化  ｆ０（ｘ１，ｘ２）
条件    ｆｉ（ｘ１，ｘ２）≦１  ｉ＝１，…，ｎ１
ｆｉ２（ｘ２）    ≦１  ｉ＝１，…，ｎ２    …（１１）
ｇｉ（ｘ１，ｘ２）＝１  ｉ＝１，…，ｎ３
ｇｉ１（ｘ１）    ＝０  ｉ＝１，…，ｎ４
ｘ２                   ≧０
ここで、ｆｉはｅｘ１とｘ２の ポジノミアルである。また、ｆｉ２はｘ２のポジノミアルである。さらに、ｇｉはｅｘ１とｘ２の単項式である。さらにまた、ｇｉ１はｘ１の一次方程式である。そして、ｆ０はｆｉ，ｆｉ２，ｇｉ，ｇｉ１のいずれかの形をとるものである。
【００６２】
式（１１）は、標準形式のＬＣＬＰ問題を示している。
【００６３】
ここで、先ず、この問題を解くために使用される手順、及び本発明の範囲以内にある問題の他の特殊形の幾つかを説明する。その後で、特定の回路と素子にこの問題の概念を適用し、素子の動作を正確に予測するためにこの問題の方法論をどのように適用することができるかを詳細に説明する。
【００６４】
標準形式のＬＣＬＰ問題は、凸問題に変換される。この変換を行なうために、次の手順がとられる。
（１）ｙ２＝ｌｏｇｘ２のように変数変換を行なう
（２）新しい変数ｙ２に関して、ｆ０，ｆｉ，ｆｉ２，ｇｉを書き換える
（３）ｆ０，ｆｉ，ｆｉ２，ｇｉの対数をとり、次のような新しい関数を定義する
ｆ０′（ｘ１，ｙ２）＝ｌｏｇｆ０（ｘ１，ｙ２）
ｆｉ′（ｘ１，ｙ２）＝ｌｏｇｆｉ（ｘ１，ｙ２）
ｆｉ２′（ｙ２）＝ｌｏｇｆｉ２（ｙ２）
ｇｉ′（ｘ１，ｙ２）＝ｌｏｇｇｉ（ｘ１，ｙ２）
その結果生じる問題は、次のように書くことができる。 
最小化  ｆ０′（ｘ１，ｙ２）
条件    ｆｉ′（ｘ１，ｙ２）≦０
ｆｉ２′（ｙ２）    ≦０    …（１２）
ｇｉ′（ｘ１，ｙ２）＝０
ｇｉ１（ｘ１）      ＝０
ここで、ｆｉ′は、ｘ１及びｙ２に関する凸関数であり、次式で表されるｅｘ１及びｘ２の対数指数ポジノミアル関数である。
【００６５】
【数４】
2008515097.tif 000003
【００６６】
また、ｆｉ２′は、ｙ２に関する凸関数であり、次式で表されるｅｘ１及びｘ２の対数指数ポジノミアル関数である。
【００６７】
【数５】
2008515097.tif 000004
【００６８】
さらに、ｇｉ′は、ｙ２に関するアファイン変換であり、次のように表される。
ｇｉ′＝βｇｉ＋αｇｉＴｙ２＋γｇｉＴｘ１
そして、ｇｉ１は、上記関数の特別な場合のｘ１に関するアファイン変換であり、次のように表される。
【００６９】
【数６】
2008515097.tif 000005
【００７０】
ｆｉ′及びｆｉ２′が凸関数であり、ｇｉ′及びｇｉ１がアファイン変換であるため、式（１２）は凸関数となる。また、最近発展した内点法を非常に効率的に使用して、全体的に解くことができる。式（１２）は、凸関数の形式でＬＣＬＰ問題と呼ばれる。
【００７１】
理論上、式（１２）の代わりに式（１１）を解くことができる。しかしながら、式（１１）は凸関数ではなく、それを解くのは困難である。したがって、式（１１）を効率よく解くためには、式（１２）のように凸関数の形式に変換する。これにより、凸問題を解くことができる。
【００７２】
この開示において詳述しているように、上記形式で回路最適化問題を解くことは、従来の方法よりも遥かに大きな効果がある。例えば、回路の２端子トランジスタの電圧のような一定の設計パラメータの一次関数を使用すれば、ｘ１（ｇ１（ｘ１））をキルヒホッフの電圧法則により処理することが可能となる。なお、キルヒホッフの電圧法則は、既存の幾何的計画法（ＧＰ）、及び他の方法において処理することができない。即ち、ポジノミアルの等式制約がある場合には、上記問題は標準形式の幾何的計画法（ＧＰ）を適用することができない。さらに、ｆｉがｘ１の指数のポジノミアル、即ちｅｘ１である場合に、既存の方法では設計パラメータの単純なポジノミアルを正確に使用してモデル化し得なかったＭＯＳ及びＢＪＴ素子の動作を、ｆ（ｘ１，ｘ２）を使用して表現することが可能となる。
【００７３】
設計変数の指数関数のような新しい最適化変数を導入することにより、例えばＫＶＬの構築及び多くの非ポジノミアル関数のモデル化のような幾何的計画法に関連した従来の多くの問題を解くことが可能となる。
【００７４】
式（１１）においては、ｇｉが以下の二つのポジノミアルより成る不等式と等価、即ちｇｉ＝１が次式と等価であるので、等式ｇｉには言及する必要がない。
ｇｉ≧１
ｇｉ≦１
そして、全ての単項式がポジノミアル的であるので、ｇｉ＝１は明示的なｇｉではなく、むしろｆｉと一緒に２つのポジノミアルの不等式で書くことができ、方程式は標準形式のＬＣＬＰの方程式のままである。 
【００７５】
図３は、本発明の実施形態による対数凸線形問題を解くための手順を示すフローチャートである。ステップ１において、回路の特性を示す設計パラメータｘ、例えば電圧、所要のアンプゲイン等が最適化のために選択される（ブロック３０２参照）。また、この例においては、目的関数ｆ０（ｘ）、及び３つの性能規格、又は制約関数ｆ１（ｘ），ｆ２（ｘ），ｆ３（ｘ）が示されている（ブロック３０４参照）。ステップ２においては、ｆ１，ｍａｘ，ｆ２，ｍａｘ，ｆ３，ｍａｘの値が性能規格（１１０６）の制約として決められる。ステップ３（ブロック３０８参照）においては、これらの関数を使用して、上記問題が一般的な最適化問題として記述される。ステップ４（ブロック３１０参照）において、最適化問題が式（１１）に示すような標準形式の対数凸線形計画として作成され、それが解かれる。特に、ブロック３１０に示された問題は、凸問題に転換することができ、例えば市販のソフトウェアＭＯＳＥＫで実施される内点法のような利用可能な様々な方法を使用して解くことができる。その結果（３１２）、最適化された設計パラメータ値ｘｏｐ、即ち設計パラメータｘに対する最適化された値が得られる。
【００７６】
図４は、本発明の実施形態による対数凸線形計画を解く手順を示したフローチャートである。設計パラメータが２つのタイプｘ１及びｘ２に分類される（ステップ４０２）。目的関数ｆ０（ｘ１，ｘ２）及び性能規格ｆ１（ｘ１，ｘ２），ｆ２（ｘ１，ｘ２），ｆ３（ｘ１，ｘ２）に続いて、ｘ２の対数をとり、ｙ２＝ｌｏｇｘ２の変数変換を行ない、新しい変数ｙ２を使用してｆ０（ｘ１，ｘ２），ｆ１（ｘ１，ｘ２），ｆ２（ｘ１，ｘ２），ｆ３（ｘ１，ｘ２）を書き直す（ステップ４０４）。次に、ｘ１に関して非線形である全てのｆｉ（ｘ１，ｘ２）の対数をとる（ステップ４０６）。なお、この例においては、ｆ３はｘ１に関して線形であるものとする。各性能規格の最適値が決定されると、凸形式のＬＣＬＰ問題が結果として生じ、最適値ｘ１，ｏｐ及びｙ２，ｏｐに対して容易に解くことができる（ステップ４０８）。次に、ステップ４１０においては、元の変数ｘ２，ｏｐの最適解を得るためにｙ２，ｏｐの指数関数がとられる。ステップ４０８において生じる問題は、凸形式の幾何的計画法である。
【００７７】
図５は、幾何学的な標準形式の対数凸線形問題（ＬＣＬＰ）５００と、標準形式５０４，５０２の線形問題との間の関係をそれぞれ示した図である。ＬＣＬＰ問題５００は、２つの周知な最適化問題へ変質させる特別のタイプの最適化問題である。第１は、幾何的計画法問題５０４である。ｘ１変数ではなくｘ２変数が選択されると、即ちｅｘ１が使用されず、またｘ１変数の関数が全く使用されなかった場合に、この幾何的計画法問題への変質が発生する。第２は、単純な線形計画法問題５０２である。ｘ２ではなくｘ１変数が選択され、一次関数ｇｉだけが生じた場合、この変質が発生する。
【００７８】
〔ＬＣＬＰ−Ｒ問題〕
本発明の他の態様においては、制約された対数凸線形問題（ＬＣＬＰ−Ｒ）が開示されている。ここでは、次に示す最適化問題について説明する。
最小化    ｆ０（ｘ１，ｘ２）
条件      ｆｉ（ｘ１，ｘ２）≦１  ｉ＝１，…，ｎ１
ｆｉ２（ｘ２）    ≦１  ｉ＝１，…，ｎ２
ｇｉ（ｘ１，ｘ２）＝１  ｉ＝１，…，ｎ３    …（１３）
ｇｉ１（ｘ１）    ＝０  ｉ＝１，…，ｎ４
ｈｉ（ｘ１，ｘ２）≦１  ｉ＝１，…，ｎ５
ここで、ｆｉはｅｘ１及びｘ２に関するポジノミアル、ｆｉ２はｘ２に関するポジノミアル、ｇｉはｅｘ１及びｘ２に関する単項式、ｇｉ１はｘ１に関する一次方程式、ｈｉはｅｘ１及びｘ２に関するポジノミアルではなくｘ１及びｙ２＝ｌｏｇｘ２に関する対数凸関数であり、ｆ０はｆｉ，ｆｉ２，ｇｉ，ｇｉ１，ｈｉのいずれかの形式をとるものである。
【００７９】
上記式（１３）を標準形式におけるＬＣＬＰ−Ｒ問題という。標準形式におけるＬＣＬＰ問題と異なり、制約問題にはｘ１及びｙ２＝ｌｏｇｘ２に関する対数凸関数である性能規格化関数ｈｉが含まれる。また、標準形式におけるＬＣＬＰ−Ｒ問題は、凸問題に転換することができる。この凸問題への転換は、以下の手順に従って行なう。
・変数ｙ２＝ｌｏｇｘ２の変換を考慮
・新しい変数ｙ２に関してｆ０，ｆｉ，ｆｉ２，ｇｉ，ｈｉを書き換える
・ｆ０，ｆｉ，ｆｉ２，ｇｉ，ｈｉの対数をとり、次の新しい関数を定義する
ｆ０′（ｘ１，ｙ２）＝ｌｏｇｆ０（ｘ１，ｙ２）
ｆｉ′（ｘ１，ｙ２）＝ｌｏｇｆｉ（ｘ１，ｙ２）
ｆｉ２′（ｙ２）＝ｌｏｇｆｉ２（ｙ２）
ｇｉ′（ｘ１，ｙ２）＝ｌｏｇｇｉ（ｘ１，ｙ２）
ｈｉ′（ｘ１，ｙ２）＝ｌｏｇｈｉ（ｘ１，ｙ２）
【００８０】
こうして、問題は以下のようになる。
最小化    ｆ０′（ｘ１，ｙ２）
条件      ｆｉ′（ｘ１，ｙ２）≦０
ｆｉ２′（ｙ２）    ＝０
ｇｉ′（ｘ１，ｙ２）＝０    …（１４）
ｇｉ１（ｘ１）      ＝０
ｈｉ′（ｘ１，ｙ２）≦０
ここで、ｆｉ′は、ｘ１及びｙ２に関する凸関数であり、前節で説明されたものである。また、ｆｉ２′は、ｙ２に関する凸関数であり、前節で説明されたものである。さらに、ｇｉ′は、ｙ２＝ｌｏｇｘ２に関するアファイン変換であり、前節で説明されたものである。さらにまた、ｇｉ１は、ｘ１に関するアファイン変換であり、前節で説明されたものである。そして、ｈｉ′は、ｘ１及びｙ２に関する凸関数である。凸関数ｈｉ′は、本発明の範囲内において様々のものを選択することができる。しかし、回路設計の用途として有用な凸関数は、次のものである。この場合、ｂｋ＞０である。
【００８１】
【数７】
2008515097.tif 000006
【００８２】
ｈｉ′が凸関数であることを証明するために、ｈｉ′が対数凸関数を合計したものの対数（ｈｉ′＝ｌｏｇ（Σｋｈｉ，ｋ））として表され、したがって、それが凸関数であることが示される。先ず、次に示すような和の項の一つの項について考える。
【００８３】
【数８】
2008515097.tif 000007
【００８４】
その後、対数をとると次のようになる。
ｌｏｇ（ｈｉ，ｋ）＝βｋ＋αｋＴｙ２＋γｋＴｘ１−ｂｋｌｏｇｘ１
そして、ｌｏｇ（ｈｉ，ｋ）がｘ１及びｙ２の凸関数であり、アファイン（擬似）関数（βｋ＋αｋＴｙ２）及び凸関数（−ｂｋｌｏｇｘ１）の和であることが分かる。ここで、重要なことは、ｂｋが負でないことである。ｈｉ，ｋが対数凸関数であるため、ｈｉ′は凸関数である。
【００８５】
ｈｉ′に対して多数の他の可能性がある。例えば、次の式のように簡単に書くことができる。この場合、ｂｋ≧０である。
【００８６】
【数９】
2008515097.tif 000008
【００８７】
ｈｉ′関数をｆｉ関数から区別する。なお、この場合、ｈｉ′関数は、幾つかの変数における対数指数ポジノミアル関数ではない。
【００８８】
ｆｉ′，ｆｉ２′，ｈｉ′が凸関数であり、ｇｉ′，ｇｉ１がアファイン変換であるため、式（１４）は凸関数である。したがって、最近、広く発展した内点法を使用して、式（１４）は非常に効率的に解くことができる。式（１４）を凸関数形式のＬＣＬＰ−Ｒ問題と称する。
【００８９】
式（１３）は凸関数ではなく、それを解くことは難しい。したがって、式（１３）を解くためには、それを式（１４）に示すような凸関数形式に変換することが重要である。次に、様々な周知の方法の一つをそのまま使用して、凸関数形式のＬＣＬＰ−Ｒ問題が解かれる。
【００９０】
図６は、対数凸問題６００と、ＬＣＬＰ問題６０１と、幾何及び線形問題６０４，６０２との関係をそれぞれ示した図である。一般的な対数凸関数ｈｉが含まれなければ、対数凸問題６００がＬＣＬＰ問題６０１へ変質する。上述の問題は、本発明の実施形態に関連したＬＣＬＰ問題６０１であり、対数凸問題６００の一種である。さらに、ＬＣＬＰ問題６０１は、図５に関連して上述された条件下で幾何問題６０４又は線形問題６０２へ変質することがある。
【００９１】
図１１は、一般的なＬＣＬＰ−Ｒ問題について示すフローチャートである。ステップ１においては、設計パラメータｘが選択される（ブロック１１０２参照）。また、その問題は、代表的な性能規格ｆ１（ｘ），ｆ２（ｘ），ｆ３（ｘ），ｆ４（ｘ）を条件として、ｆ０（ｘ）を最小化するための一般的な最適化問題として表される（ブロック１１０４参照）。ステップ２においては、値ｆ１，ｍａｘ，ｆ２，ｍａｘ，ｆ３，ｍａｘ，ｆ４，ｍａｘが性能規格の制約条件として規定される（ブロック１１０６参照）。ステップ３においては、上記問題は指定された制約条件を有する一般的な最適化問題として表わされる（ブロック１０８参照）。ステップ４（ブロック１１１０参照）においては、最適化問題は、式（１３）のような標準形式のＬＣＬＰ−Ｒ問題として提示される。そして、ＬＣＬＰ−Ｒ問題が解かれ、その結果、一以上の最適値ｘｏｐが生ずる（ブロック１１１２参照）。結果として生じるプログラムは、凸問題に転換され、例えば、他の有用な解法であって、市販のソフトウェアＭＯＳＥＫで実施される内点法のような様々な有用な方法を使用して解くことができる。
【００９２】
図１２は、本発明の実施形態による図１１のＬＣＬＰ−Ｒ問題を解くためにフローチャートである。図１２は、特に、図１１のステップ４（ブロック１１１０参照）の解法の詳細を示している。先ず、設計パラメータをｘ１及びｘ２の２タイプに分類する（ステップ１２０２）。次に、目的関数ｆ０（ｘ１，ｘ２）及び性能規格ｆ１（ｘ１，ｘ２），ｆ２（ｘ１，ｘ２），ｆ３（ｘ１，ｘ２），ｆ４（ｘ１，ｘ２）から始めて、ｘ２の対数をとり、変数変換（ｙ２＝ｌｏｇ（ｘ２））を行ない、新しい変数ｙ２に関してｆ０（ｘ１，ｘ２）及び性能規格ｆ１（ｘ１，ｘ２），ｆ２（ｘ１，ｘ２），ｆ３（ｘ１，ｘ２），ｆ４（ｘ１，ｘ２）を書き換える（ステップ１２０４）。その後、ｘ１に関して線形でない全てのｆｉ（ｘ１，ｘ２）の対数をとる（ステップ１２０６）。この実施例においては、ｆ３はｘ１に関して線形であり、ｆ４はどの変数又は変数の指数関数に関してポジノミアルでないものとする。各性能規格の最適値が決定されると、その結果は、最適値ｘ１，ｏｐ，ｙ２，ｏｐに対して容易に解くことができる凸形式のＬＣＬＰ−Ｒ問題となる（ステップ１２０８）。次に、ステップ１２１０において、元の変数の最適解ｘ２，ｏｐを得るために、ｙ２の指数関数をとる。ステップ１２０８の問題は、凸形式の幾何的計画ではない。
【００９３】
〔非凸問題  ＬＣＬＰ−Ｌ−１〕
本発明の他の態様においては、非凸問題は、ＬＣＬＰ又はＬＣＬＰ−Ｒ問題として逐次近似することにより解かれる。そのような問題の一つは、標準形式のＬＣＬＰ−Ｒ−１問題が参照される。次に示す最適化問題について考えてみる。
最小化    ｓ０（ｘ１，ｘ２）
条件      ｓｉ（ｘ１，ｘ２）≦１，ｉ＝１，…，ｎ１
ｓｉ２（ｘ２）    ＝１，ｉ＝１，…，ｎ２
ｇｉ（ｘ１，ｘ２）＝１，ｉ＝１，…，ｎ３    …（１７）
ｇｉ１（ｘ１）    ＝０，ｉ＝１，…，ｎ４
ｈｉ（ｘ１，ｘ２）≦１，ｉ＝１，…，ｎ５
ｘ２                  ≧０
ここで、
１．ｓｉはｅｘ１及びｘ２に関するシグノミアル関数（signomial）である
２．ｓｉ２はｘ２に関するシグノミアル関数である
３．ｇｉはｅｘ１及びｘ２に関する単項式である
４．ｇｉ１はｘ１に関する一次方程式である
５．ｈｉはｘ１及びｙ２＝ｌｏｇｘ２に関する対数凸関数であり、ｅｘ１及びｘ２に関するポジノミアルではない 
６．ｆ０はｆｉ，ｆｉ２，ｇｉ，ｇｉ１，ｈｉのいずれかの形式をとる
【００９４】
式（１７）は、標準形式のＬＣＬＰ−Ｒ−１問題と呼ばれる。関数ｓｉ及びｓｉ２が負係数を有するシグノミアル関数であるため、式（１７）は、一般に非凸最適化問題である。シグノミアル関数について、以下に詳述する。関数ｓｉ及びｓｉ２がシグノミアル関数であるので、それらは、一般に、変数ｘ１及びｌｏｇｘ２の対数凸関数ではない。従って、式（１７）は、一般に、凸関数に変換することができない。
【００９５】
〔シグノミアル関数のプログラミング〕
シグノミアル関数はポジノミアルと同じ形式を有する関数である。しかし、この場合、係数ｃｋが負であることが許容される。シグノミアル関数は、特別な場合としてポジノミアル（従って単項式）及び正又は負の定数を含んでいる。いずれかのシグノミアル関数は、正の係数を備えた項及び負の係数を備えた項を共にまとめることにより、２つのポジノミアル間の差分として表わすことができる。シグノミアル関数は、加算、減算及び乗算の下で閉じられている。非ゼロで、ただ一つの項（即ち、単項式、又は負の単項式）を有するシグノミアル関数で除算されるシグノミアル関数は、なおもシグノミアル関数である。さらに、自然数の指数をいくらか上げたシグノミアル関数もシグノミアル関数である。
【００９６】
一般化された幾何学のプログラム又はシグノミアル関数のプログラムは、次のように決められる。
最小化    ｓ０（ｘ）
条件      ｓｉ（ｘ）≦１，ｉ＝１，…，ｍ
ｘｉ      ＞０，ｉ＝１，…，ｎ
ここで、ｓｉは、シグノミアル関数であり、係数に符号の制約がない単項式関数の和である。単項式の全ての項が正の係数を有することという要件を緩和すると、コストが高くなる。即ち、一般的な命令文ではシグノミアル関数のプログラムの凸性について作ることができない。また、その結果生じる問題は、解くのが非常に難しい。
【００９７】
汎用の非線形ソルバーを使用することができるが、シグノミアル関数を解くための特殊用途の方法がいろいろと提案されている。例えば、シグノミアル関数のプログラムの極小値を見つけるための幾つかのソルバーは、簡約化されたポジノミアルの概念に基づいている。簡約化されたポジノミアルの概念は、それ自体、算術幾何平均の不等式に基づいている。算術平均の不等式及び簡約化されたポジノミアルについて以下に簡単に説明する。
【００９８】
〔算術幾何平均の不等式〕
任意のベクトルｗ、及び成分の合計が１（Σεｉ＝１）となる任意の自然数のベクトルεに対して、次式が成立する。この場合、（ｗｉ／εｉ）εｉは、εｉ＝０のとき１であると定義される。
【００９９】
【数１０】
2008515097.tif 000009
【０１００】
〔簡約化されたポジノミアル〕
ポジノミアルｆ（ｘ）＝Σｉｇｉ（ｘ）、及び成分の合計が１（Σεｉ＝１）となる任意の自然数のベクトルεが与えられると、重みεを有する等価な簡約化されたポジノミアルｆｃ（ｘ）は、次のように定義される。
【０１０１】
【数１１】
2008515097.tif 000010
【０１０２】
なお、簡約化されたポジノミアルは単項式の関数であり、与えられたｘに対して、常にｆ（ｘ）≦ｆｃ（ｘ）が成立する。
【０１０３】
簡約化されたポジノミアルの方法に基づく一般的な取り組みにおいては、簡約化されたポジノミアル（単項式の項）によってシグノミアル関数のプログラムに負の項を有する近似ポジノミアルが含まれる。ほとんどのソルバーは、シグノミアル関数のプログラムが重みの任意の組みを使用して、ポジノミアルのプログラムに近似し、その後、近似問題の解を重みの新しい組を選択するために使用して、元の問題の新しい近似ポジノミアルが見つかるまで反復する。いくつかの条件下では、この反復過程を通して元のシグノミアル関数問題の極小に収束する。
【０１０４】
さらに、最後に全ての単項式の制約がついている簡約化されたポジノミアルによって、ポジノミアルの制約及び目標が近似される。対数をとった後には、近似問題は、正に線形プログラムとなる。線形プログラムを使用してシグノミアル関数のプログラムを解く様々な反復法も開発されている。最後に、シグノミアル関数のプログラムを解くために汎用の最適化ツールが使用される。しかし、一般には、上述した解法と同様には行なうことができない。
【０１０５】
実際、アナログ回路設計において発生する問題には、少数のシグノミアル関数が含まれる。結果的に生じる問題は、凸関数ではないが、それはなおも特殊な形式を有しており、特殊用途のソルバーを使用して解くことができる。最近、オペアンプ設計用のシグノミアル関数のプログラミングを使用する方法が示された。
【０１０６】
前述の式（１７）を参照して、ポジノミアルからなるｓｉ，ｊ及びｓｉ，ｊ２が制限されば、式（１７）は式（１３）に示す標準形式のＬＣＬＰ−Ｒ問題となる。
【０１０７】
〔ＬＣＬＰ−Ｒ−Ｌ−１問題を解くためのアルゴリズム〕
元の問題の凸近似の数列を解く単純なアルゴリズムを使用して、式（１７）を解くための優れた方法がここに開示されている。図７は、本発明の実施形態によるＬＣＬＰ−Ｒ−Ｌ−１問題を解く方法について示すフローチャートである。式（１７）に示すように、先ず、標準形式のＬＣＬＰ−Ｒ−Ｌ−１問題についての検討が開始する（ステップ７０２）。ステップ７０４においては、ＬＣＬＰ−Ｒ−Ｌ−１問題は、ある点の周りが局所的な凸であるＬＣＬＰ−Ｒ問題に近似される。この近似の鍵は、ポジノミアルの項をシグノミアル関数の項に、又はＬＣＬＰ−Ｒ問題に比例した他の項に転換することである。この近似は様々な方法を使用して行なうことができる。例えば、上述の縮合技術を使用して、ポジノミアルの制約によりシグノミアル関数の制約を近似することができる。あるいは、最小二乗法に最もよく適合する単項式と共に負係数を有する単項式の項に近似することにより、シグノミアル関数の制約を接近することができる。ｘの最初の選択が適切であるか、又は適切でないかに係らず、結果は、ある点ｘの周りが局所的な凸であるＬＣＬＰ−Ｒ問題となる。この技術は、本発明の方法を使用して効率的に正確に解くことができる回路問題の種類を大幅に広げるのに有効である。 
【０１０８】
次に、ステップ７０６においては、結果的に生じるＬＣＬＰ−Ｒ問題が凸関数の形式で解かれる。このステップを行なうために、始点ｘ及び許容値ε≧０が使用される。ＬＣＬＰ−Ｒ問題を解くために上述の方法を利用して、最適点ｘａ′が計算される。さらに、ステップ７０８においては、最適点ｘａ′における近似エラーの大きさを演算することにより、始点ｘの選択の実現可能性が判定される。解が得られない場合には、最後の解が報告される（ステップ７１２）。
【０１０９】
一実施形態においては、近似エラーは次の方程式によって判定される。
【０１１０】
【数１２】
2008515097.tif 000011
【０１１１】
ステップ７１０においては、計算されたエラーがＥ≦εかどうかが判定される。Ｅ≦εではなく、ＬＣＬＰ−Ｒ問題を解くことができる場合には、始点ｘが値ｘａ′に更新される。また、その手順は、Ｅ≦ε、又は反復回数の最大値、例えばその方法を実行するコンピュータプログラムによって定められた最大値のいずれか一方に到達するまで、ステップ７０４に戻って再び始めから繰り返される。
【０１１２】
これらのステップを実行することにより、解決するべき他の難問をはるかに容易な問題へ変換することができる。さらに、実行可能性が判定される。また、エラー限界が許容範囲に入るまで上記ステップを繰り返すことによって、最適値ｘａ′の計算精度が得られる。
【０１１３】
〔回路のモデル化〕
次に、回路設計における特定の問題に本発明の手順を適用した場合について説明する。後に説明するように、新方式の利点及び効果は重要である。回路設計問題に対して、次の設計変数が選択される。この実施形態を実施する際に、先ず、次の一般的な設計パラメータが決められる。
ｘ１：Ｖ    …（１８）
ｘ２：Ｉ，Ｓ    …（１９）
ここで、Ｖは電圧、Ｉは電流、Ｓは受動及び能動素子の大きさを示している。従って、電圧はｘ１タイプ、電流及び大きさはｘ２タイプの変数であり、前述のｘ１及びｘ２と同じタイプのものである。
【０１１４】
様々な回路制約は、以下のように説明することができる。ただし、これらの方法においては、多数の他の変数が適用可能であり、それらは本発明の範囲内にある。
（i）キルヒホッフの電圧法則は、Ｖｉの線形式の制約として扱われる。即ち、それはｇｉ１（ｘ１）形式の制約に相当する。
（ii）キルヒホッフの電流法則は、Ｉｉのシグノミアル関数の制約として扱われる。即ち、それはｓｉ（ｘ２）形式の制約に相当する。
（iii）トランジスタの非線形特性は、Ｖ、及びｌｏｇＩ，ｌｏｇＳの項における対数凸制約のグループに近似される。即ち、それらは、ｈｉ（ｘ１，ｘ２）形式又はｓｉ（ｘ１，ｘ２）形式のいずれかに相当する。
（iV）抵抗器のような要素の線形特性は、Ｖ、及びｌｏｇＩ，ｌｏｇＳの項におけるシグノミアル関数の制約のグループに近似される。ここで、ＶＡは、（ｅＶ＝１＋ＶＡ＋ＶＡ２／２！＋ＶＡ３／３！＋…）のような電圧Ｖのテイラー近似によって決められる。特に、ＶＡは、ｓｉ（ｘ１，ｘ２）形式と同じ実際の電圧（ｘ１パラメータ）に近似したｘ２タイプのパラメータである。
（V） 回路性能を表わす式は、ｅＶ、及びＩ，Ｓのシグノミアル関数の制約を表している。即ち、それらは、ｓｉ２（ｘ１，ｘ２）形式の制約に相当する。さらに、それらは、単にＩ，Ｓだけのシグノミアル関数の制約、即ちｓｉ２（ｘ２）形式の制約である。
そして、これらの仮定の下に、回路設計問題は、上述のアルゴリズムで解くことができるＬＣＬＰ−Ｒ−１問題として提起される。
【０１１５】
キルヒホッフの電圧法則がＶｉの線形式の制約として扱われるので、本発明の一実施形態における最適化方法は、既存の幾何的計画法の方法と異なり、キルヒホッフの電圧法則を正確にモデル化することができる。さらに、キルヒホッフの電流法則がＩｉのシグノミアル関数の制約として一般に扱われるとすれば、本発明の一実施形態における最適化方法は、ＫＣＬを使用して計算される素子の電流を正確にモデル化することができる。上述したように、シグノミアル関数は、回路設計問題を凸のＬＣＬＰ−Ｒへ変質させる様々な方法において簡略化され、又は近似される。
【０１１６】
同様に、この実施形態においては、トランジスタの動作は、対数凸及びシグノミアル関数の制約を使用して正確にモデル化することができる。この場合、そのような制約は、ポジノミアル又は単項式制約として近似される。そして、回路設計問題が上記ＬＣＬＰ−Ｒ−１問題において説明したように、局所的に凸であるＬＣＬＰ−Ｒへ変質する場合がある。
【０１１７】
上記問題に二つの特別な状況があることは自明である。第１は、全てのシグノミアル関数の制約がポジノミアルである場合である。その場合、生じる最適化問題は、ＬＣＬＰ−Ｒ問題であり、凸問題に転換することができ、非常に効率的に解くことができる。第２は、全てのシグノミアル関数の制約がポジノミアルで、一般的な対数凸関数がない場合である。後者の場合には、生じる最適化問題はＬＣＬＰ問題であり、凸問題に転換することができ、非常に効率的に解くことができる。
【０１１８】
ここで、本発明の一実施形態における回路設計手順を、具体的なオペアンプのモデル化により説明する。指定されたパラメータを有する具体的なＣＭＯＳアナログ回路の説明において、回路設計問題は、選択された性能規格、又は回路トポロジーに制限されない。即ち、追加の又は代替の性能規格を回路説明に加えることができる。さらに、本発明の原理は、この回路トポロジー又はＭＯＳ技術に限定されず、他の回路トポロジー、バイポーラ接合トランジスタ（ＢＪＴ）、ガリウム砒素化技術、及び他の半導体プロセス及び回路技術にも同様に適用可能である。図８は、代表的なＣＭＯＳオペアンプであり、最適化された設計パラメータを得るために本発明の法則の実施形態が適用されるものである。図８に示すように、回路は、二つのオペアンプ入力Ｖ＋（ノード８０２）とＶ−（ノード８０４）とを備えている。オペアンプ出力は、Ｖｏｕｔ（ノード８０６）である。図８に示すオペアンプは、二つの状態を有するオペアンプである。即ち、第１の状態は、トランジスタＭ１〜Ｍ５を含み、第２の状態は、トランジスタＭ６〜Ｍ８及びバイアス電流源８０１を含む。さらに、オペアンプは、接地ノード８０８、抵抗器ＲＣ（８０３）、容量ＣＣ（８０５）及び負荷容量ＣＬ（８０７）を含んでいる。電源Ｖｄｄは、ノード８１１に供給される。
【０１１９】
図８に示すＣＭＯＳオペアンプにおいては、トランジスタＭ３，Ｍ４，Ｍ６がＮＭＯＳトランジスタであり、 トランジスタＭ１，Ｍ２，Ｍ５，Ｍ７，Ｍ８がＰＭＯＳトランジスタである。最適化問題のステップ１においては、最適化しようとする設計パラメータ（変数）は、一例として、以下のように選択される。
ｘ１：Ｖｇ１，Ｖｇ２，Ｖｄ１，Ｖｓ１，Ｖｇ５，Ｖｄ６
ｘ２：Ｗｉ，Ｌｉ，Ｉｉ，Ｉｂｉａｓ、ここでｉ＝１，…，８
ステップ２おいて、回路問題が方程式で表される。
上記方程式は、手動手段又は例えばソフトウェアのような自動手段、或はその両方によって取得することができる。先ず、回路のＫＶＬに基づく方程式が表される。これらの方程式は夫々線形制約の形式をとる。ここで、
｜Ｖｄｓ，１｜＝｜Ｖｄ１−Ｖｓ１｜
Ｖｄｓ，６＋｜Ｖｄｓ，７｜＝Ｖｄｄ
｜Ｖｄｓ，５｜＋｜Ｖｄｓ，１｜＋Ｖｄｓ，３＝Ｖｄｄ
｜Ｖｄｓ，８｜＋ＶＩｂａｉｓ＝Ｖｄｄ
｜Ｖｄｓ，１｜＋Ｖｄｓ，３＝｜Ｖｄｓ，２｜＋Ｖｄｓ，４
である。
【０１２０】
次に、図８におけるオペアンプに関するＫＣＬに基づく方程式が表される。ＫＣＬに基づく方程式は、単項式及びシグノミアル関数の制約の両方を含んでいる。単項式の制約には、次のものが含まれる。即ち、
Ｉ１＝Ｉ２
Ｉ６＝Ｉ７
Ｉ８＝Ｉｂｉａｓ
シグノミアル関数の制約には、次のものが含まれる。即ち、
Ｉ５＝Ｉ１＋Ｉ２
図８から明白なように、Ｉ１とＩ２とが同一であるので、 上記方程式は単項式の制約として次のように書くことができる。
Ｉ５＝Ｉ１／２
【０１２１】
ここで、トランジスタの複数の代表的な性能特性がモデル化される。別の又は追加のモデルも可能である。
〔トランジスタＭ１用のバイアス方程式〕
これらの方程式は、次の線形制約を含んでいる。
Ｖｓｂ，１=Ｖｄｄ−（Ｖｃｍ＋Ｖｇｓ，１）
Ｖｄｂ，１＝Ｖｄｄ−（Ｖｇｓ，３）
Ｖｄｓ，１＝Ｖｄｂ，１−Ｖｓｂ，１
Ｖｄｓ，１≧Ｖｇｓ，１−Ｖｔ，１
Ｉｄｓ，１＝ｃＩＷαＩ，３ＬαＩ，２ｅ（αＩ，３Ｖｄｓ，３）ｅ（αＩ，４Ｖｇｓ，３）ｅ（αＩ，５Ｖｓｂ，１）
【０１２２】
〔相互コンダクタンス〕
変数ｅｘ１及びｘ２に次の単項式の制約を有する素子の相互コンダクタンスは、次のように正確に表わされる。
ｇｍ＝ｃｇｍＷαｇｍ，３Ｌαｇｍ，２Ｉαｇｍ，６ｅαｇｍ，３Ｖｄｓｅαｇｍ，４Ｖｇｓｅαｇｍ，５Ｖｓｂ
【０１２３】
〔ドレン・基板間容量〕
対数凸関数の制約を有する単位面積当たりのドレン・基板間容量は、次のように表わされる。
【０１２４】
【数１３】
2008515097.tif 000012
【０１２５】
Ｌｄｉｆｆ，ＣＣｄｂ，０，φｉは、プロセスに依存した定数である。この方程式は、ＬＣＬＰ−Ｒ形式であり、上述の方法を使用して効率的に解くことができる。素子の出力コンダクタンス、ゲート・ソース間容量、飽和電圧等のような他の多数のトランジスタのパラメータがモデル化されてもよい。上記手順は非常によく類似している。即ち、ｘ１変数の一次関数、ｅｘ１及びｘ２の単項式又はポジノミアル関数、又はｘ１及びｌｏｇｘ２の対数凸関数のようなこれら性能特性をモデル化する必要がある。
【０１２６】
〔抵抗器及び容量の直線性〕
図８に示すＣＣ８０５及び抵抗器ＲＣ８０３は、直列に接続されており、ＤＣ動作において電流はそれらを流れないようになっている。その結果、回路の他の点で電圧及び電流を決定するために、それら他の点の周りでＫＶＬ及びＫＣＬを考慮する必要がない。
【０１２７】
〔回路性能制約〕
モデル化され最適化される様々な回路性能制約の一定の実例を以下に説明する。そのような制約の一つは、零入力電力である。零入力電力は、次のように、回路によって消費される電源電圧と総電流の積で与えられる。
Ｐ＝Ｖｄｄ（Ｉ８＋Ｉ５＋Ｉ７）
例えば、回路に最大の零入力電力を課そうとする場合には、ｘ２変数に次のポジノミアルの制約が適用される。
Ｖｄｄ（Ｉ８＋Ｉ５＋Ｉ７）≦Ｐｍａｘ
モデル化される別の回路パラメータは、３ｄＢの帯域幅である。図８に示すオペアンプは、次に示す点に支配極を有している。
【０１２８】
【数１４】
2008515097.tif 000013
【０１２９】
ここで、素子の出力コンダクタンスｇｄｉは素子のＷ，Ｌ，Ｉ，ｅＶＧＳ，ｅＶＤＳ，ｅＶＳＢの単項式又はポジノミアルとして表わすことができる。支配極として最小の所要の周波数を課そうとした場合、変数ｅｘ１及びｘ２に次のようなシグノミアル関数の制約を課してもよい。
【０１３０】
【数１５】
2008515097.tif 000014
【０１３１】
図８のオペアンプの開ループ利得もモデル化される。開ループ利得は、次の方程式から与えられる。
【０１３２】
【数１６】
2008515097.tif 000015
【０１３３】
ここで、素子の出力コンダクタンスｇｄｉ及び相互コンダクタンスｇｍｉは、素子のＷ，Ｌ，Ｉ，ｅＶＧＳ，ｅＶＤＳ，ｅＶＳＧの単項式又はポジノミアルとして表わすことができる。このように、最小の所要の開ループ利得における制約は、変数ｅｘ１及びｘ２に次に示すポジノミアルの制約によって与えられる。
【０１３４】
【数１７】
2008515097.tif 000016
【０１３５】
単位利得帯域幅、位相余裕、入力に起因するノイズ、入力に起因するオフセット等の他の多くの制約がある。手順は同様である。即ち、回路性能規格をｘ１変数の一次関数、ｅｘ１及びｘ２の単項式又はポジノミアル関数、ｘ１及びｌｏｇｘ２の対数凸関数を表わす必要がある。
【０１３６】
ステップ３において、最適化問題が上述のように表され、形式化される。また、このステップにおいは、特定された制約条件が最小化される。ここで、目標及び目的により最適化問題を定式化する際に、目前の問題に照らして種々の選択が行われる。この用途の代表的な最適化問題は、零入力の消費電力、Ｖｄｄ（Ｉ８＋Ｉ５＋Ｉ７）を最小化し、３ｄＢの帯域幅の制約、開ループ利得の制約、ＫＶＬ制約、ＫＣＬ制約、及び方程式の形式でオペアンプ回路の性能を表す他の全ての適切な制約の条件を最小化することである。この実施例において、零入力の消費電力は、目的関数を表わす。しかし、この関数及びそれに関連する制約に対する他の多くの選択肢がある。
【０１３７】
ステップ４において、形式化された最適化問題が解かれる。特定方法は、ステップ３に起因する問題のタイプに依存する。例えば、設計問題がＬＣＬＰ問題である場合には、その問題は、先ず、凸形式に変換されて解かれ、次に、最適化された設計パラメータ、即ち設計パラメータの数値を得るために夫々周知の方法のうちの一つが適用される。ここで、設計問題がＬＣＬＰ−Ｒ問題である場合には、その問題は、先ず、ＬＣＬＰ−Ｒ問題を凸形式に変換することにより解かれる。一方、設計問題がＬＣＬＰ−Ｒ−Ｌ−１問題である場合には、その問題は、上記アルゴリズムを使用して解かれる。
【０１３８】
図９には、ＣＭＯＳインバータが示されている。この図は、本発明の実施形態を使用して遅延演算を解くことを目的としたものである。インバータは、入力ノード９００に接続されたゲート、電源（ｄｄ）ノード９１０に接続されたソース、ウェルノード９０４、及び出力ノード９０２に接続されたドレンを有するＰＭＯＳトランジスタを備えている。ＮＭＯＳトランジスタＭｎは、入力ノード９００に接続したゲートと、出力ノード９０２に接続したドレンと、接地ノード９０８に接続したソースと、基板ノード９０６とを有している。負荷容量ＣＬは、出力ノード９０２と接地ノード９０６との間で接続されている。ＮＭＯＳ及びＰＭＯＳトランジスタの間の大きさの差はＲの因数で表わされる。
【０１３９】
この図には、インバータ連鎖の一設計例が示されている。これは回路デザインにおける一般的な問題である。なぜなら、より複雑なゲート定寸化問題を等価なインバータ連鎖定寸化問題として定式化することができるからである。この問題においては、単純化するために一定の仮定がなされる。即ち、配線による遅延は考慮されず、図９に示すように、スルーレートが固定され、ＮＭＯＳ／ＰＭＯＳ比（Ｒ）が一定であると仮定する。
【０１４０】
ステップ１においては、適当な設計変数が選択される。例えば、
ｘ１：Ｖｔｈｉ
ｘ２：ＷＮ，Ｌ
ここで、Ｖｔｈはトランジスタの閾値電圧であり、図９に示すようにＶｓｕｂ及びＶｗｅｌｌによって制御される。ステップ２においては、回路問題を表わす方程式が定式化される。
【０１４１】
〔動作点〕
この問題において、図９のＣＭＯＳインバータが動的回路であるため、動作点を定義する方程式を考慮する必要がない。その故、ＫＶＬ方程式、ＫＣＬ方程式、又は非線形及び線形素子の電流・電圧特性を定義する方程式が含まれない。
【０１４２】
〔回路性能〕
回路性能をモデル化するために、先ず、インバータ連鎖における一つのインバータのモデルを得る。他の多くのモデルであってもよい。即ち、下記特性を有するモデルは、ただ一つの可能なモデルである。この実施例において、回路性能として熟慮した三つのパラメータは、遅延、動的電力及び漏れ電力である。遅延演算に対して、インバータは、次のようにモデル化される。
【０１４３】
【数１８】
2008515097.tif 000017
【０１４４】
ここで、Ｋｄ及びαｄはフィッティングパラメータであり、ｗｏｕｔ／ｗｉｎはゲートの電気的なファンアウトを測定したもの、ｗｐａｒ／ｗｉｎは、ゲートの固有の遅れを測定したもの、Ｖｄｄは電源電圧、及びＶｔｈは閾値電圧である。
【０１４５】
式（２０）は、次のように書き直すことができる。
【０１４６】
【数１９】
2008515097.tif 000018
【０１４７】
上記式は次のように近似することができる。
【０１４８】
【数２０】
2008515097.tif 000019
【０１４９】
式（２１）は、ｅｘ１及びｘ２のポジノミアル関数、又ｘ１及びｌｏｇｘ２の対数凸関数を表わしている。
【０１５０】
動的電力は、ゲートの切換によって発生する消費電力を表わす。この実施例において、動的電力は、次のようにモデル化される。
ｅＳＷ＝α・Ｋｅ・（ｗｏｕｔ＋ｗｐａｒ）・Ｖｄｄ２
ここで、αはゲート切換の可能性を表わし、Ｋｅはフィッティングパラメータである。さらに、Ｖｇｓ＝０におけるゲートの漏れ電力は、次のようにモデル化される。
ｅＬＫ＝Ｄ・ｗｉｎ・Ｉ０（Ｓｉｎ）ｅ（Ｖｔｈ−γＶｄｄ）／Ｖ０    …（２２）
ここで、Ｄはサイクル時間であり、Ｉ０（Ｓｉｎ）はＳｉｎ状態におけるゲート入力の規格化された漏れ電流であり、Ｖ０＝ｎｋＴ／ｑ及びγは閾値下の傾斜及びＤＢＩＬ因数をそれぞれ説明する。式（２２）は、次のように近似することができる。
ｅＬＫ＝Ｄ・ｗｉｎ・Ｉ０（Ｓｉｎ）ｅ（−Ｖｔｈ／Ｖ０）（１＋γＶｄｄ／Ｖ０）
【０１５１】
ステップ３として、図９に示す回路の上記パラメータを解く際に、最適化問題が書き出される。又は、ソフトウェアのパッケージが作られてもよい。上述のように、このステップにおいては、一以上の制約条件の下に目的関数が最小化される。用途及び目的に応じて、種々の可能性が存在する。最適化問題の一つは、動的電力、漏れ電力、及び方程式の形式でこのインバータ回路の性能を表わす他の適切な制約を条件として、次のように表わされるインバータの遅れを最小化することである。
ＫｄＶｄｄ（１−αｄ）αｄｅ（−Ｖｔｈ／Ｖｄｄ）（ｗｏｕｔ／ｗｉｎ＋ｗｐａｒ／ｗｉｎ）
【０１５２】
最後に、ステップ４においては、明確にされた最適化問題が解かれる。本発明の手順を使用して、ステップ３で作成された最適化問題が効率的な方法で解かれる。その特定な方法は、ステップ３に起因する問題のタイプに依存する。
【０１５３】
ここに提案された方法は、バイポーラトランジスタを使用して設計された回路、及び他の回路トポロジー及び製作技術に等しく適用可能である。
【０１５４】
ここに開示された実施形態は、どんな当業者も本発明を実施することができる程度に明確かつ十分に説明されている。これらの実施形態に対して様々な改良を加えることができることは、当業者にとって明白である。また、ここに明示された代表的な手順は、本発明の技術的思想又は範囲から外れない限り、他の実施形態に適用することが可能である。したがって、本発明は、ここに開示された実施形態に制限されることを意図しておらず、開示された手順及び新規な特徴と一致する十分な範囲を許容する。
【図面の簡単な説明】
【０１５５】
【図１】コモンソースＭＯＳ増幅器の概要図である。
【図２】代表的な回路設計方法を説明するフローチャートである。
【図３】本発明の実施形態による対数凸線形問題を求めるためのステップを示すフローチャートである。
【図４】本発明の実施形態による対数凸線形問題を解くステップを示すフローチャートである。
【図５】幾何的計画法及び線形計画法を有する対数凸線形問題間の関係を示す説明図である。
【図６】対数凸問題、ＬＣＬＰ問題、及び幾何的計画法及び線形計画法問題間の関係を示す説明図である。
【図７】本発明の実施形態によるＬＣＬＰ−Ｒ−Ｌ−１問題の解法を示すフローチャートである。
【図８】本発明の実施形態の手順を適用して最適化された設計パラメータを得ようとする代表的なＣＭＯＳオペアンプの一構成例である。
【図９】本発明の実施形態の手順を適用して最適化された設計パラメータを得ようとする代表的なＣＭＯＳインバータの一構成例である。
【図１０】本発明の実施形態による動作の弱反転領域及び動作の強反転領域の飽和動作において、相互コンダクタンス対ＭＯＳトランジスタのドレン電流の関係を示すグラフである。
【図１１】本発明の実施形態による対数凸線形制約（ＬＣＬＰ−Ｒ）問題のフローチャートである。
【図１２】本発明の実施形態による対数凸線形制約（ＬＣＬＰ−Ｒ）問題の解法を示すフローチャートである。
【符号の説明】
【０１５６】
１００〜１０３…ノード
５００，６０１…ＬＣＬＰ
５０２，６０２…ＬＰ
５０４，６０４…ＧＰ
８０１…バイアス電流源
８０２，８０３，８０６，８０８，８１１…ノード
８０３…抵抗器
８０５…容量
８０７…負荷容量
９００〜９０６…ノード
【図１】
2008515097.tif 000022
【図２】
2008515097.tif 000023
【図３】
2008515097.tif 000024
【図４】
2008515097.tif 000025
【図５】
2008515097.tif 000026
【図６】
2008515097.tif 000027
【図７】
2008515097.tif 000028
【図８】
2008515097.tif 000029
【図９】
2008515097.tif 000030
【図１０】
2008515097.tif 000031
【図１１】
2008515097.tif 000032
【図１２】
2008515097.tif 000033