説明

半導体装置設計システム

【目的】 回路トポロジ制約を含む制約式を用いて、個人の技量に依存せず、コンピュータのタクト時間を短縮できる半導体装置の自動設計システムの構築を目的とする。
【構成】 回路図内に含まれるトランジスタのそれぞれの回路定数を制約式に基づいて算出する第1の手段と、回路定数が反映された回路図に対して電気的特性の算出を行う第2の手段と、電気的特性の算出結果が設計仕様を満たすようになるまで、パラメータへの代入値を変更しながら上記手段の処理をループさせる第3の手段と、キルヒホッフの電流則を反映する制約条件を回路図から抽出して制約式に含ませる第4の手段とを、出力制御部107とシミュレータ制御部104と入力制御部105と回路シミュレータ部103とトポロジ制約抽出部106で構成することを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体装置の設計システムに関し、特にアナログ回路を含む半導体装置の回路定数設計装置に関するものである。
【背景技術】
【0002】
アナログ回路とディジタル回路が混在した半導体装置の開発においては、その性能や特性を必要な要求に合わせるとともに、いかに短期間に実際的な設計を行うかが重要な決め手になる。ことに、近年、SOC(System On Chip)、ASIC(Application Specific Integrated Circuit)、マイクロコンピュータなどの開発が広く行われて、このような装置に用いられるアナログ回路とディジタル回路が複雑に混在した半導体装置の開発においては、この問題が特に重要である。
ディジタル回路に関しては、すでに機能設計からレイアウト設計に至るまでの自動化が進んでおり、実用上十分な程度の短期間で設計を完了することが可能になってきている。一方、アナログ回路に関しては、ディジタル回路に比べて、設計の自由度が格段に大きいことや、製造プロセス変動等に対するマージン等を含めて満たすべき要求仕様が複雑に入り組んでいるため自動化がさほど進んではいない。したがって、このような半導体装置において、アナログ回路部分の設計が製品開発期間に大きな影響を与えている。
【0003】
図8は、本発明の前提としてのアナログ回路の設計手順の一例を示すフローチャートである。この設計フローは、主に人手に基づいて回路定数を決定する際の一般的なフローである。例えば、CMOS(Complementary Metal Oxide Semiconductor)オペアンプ回路の設計を例とすると、まず、設計者が、予め作成してあるCMOSオペアンプ回路に対して、規定の設計仕様を満たせるような回路定数(ゲート長Lおよびゲート幅W)を設定する(S81)。設計仕様の項目としては、例えば、利得、ユニティゲイン周波数、位相余裕、およびスルーレートなど様々のものが挙げられる。
【0004】
次いで、この回路定数を設定したCMOSオペアンプ回路に対してコンピュータを用いた回路シミュレーションを実行する(S82)。その後、設計者又は回路シミュレータがシミュレーション結果から利得、ユニティゲイン周波数等といった回路特性の数値を算出し(S83)、それが規定の設計仕様を満たしているか判定を行う(S84)。設計仕様を満たしている場合には回路定数が確定するが(S85)、そうでない場合にはS81に移行し、設計者が回路定数を再設定した後、再度、回路シミュレーションを用いた確認を行う。このような作業は、設計仕様を満たせるようになるまで何度も繰り返される。
通常、プロセス変動や温度変動等を加味すると回路定数は容易に確定できるようなものではなく、このような作業を短期間で完了するためには、設計者が、初期段階で如何に妥当な回路定数を設定できるか、または設計仕様を満たさない場合にどのように対処すべきかといった高度な設計ノウハウや豊富な経験が必要とされる。
【0005】
ここで、設計者の力量に頼らず、コンピュータの処理能力を活用することで、図8のループ処理を試行錯誤で自動的に行わせることも可能である。すなわち、回路定数(L,W)を変数とし、設計者がその初期値やその可変範囲および刻み幅などを設定することで自動的に図8のループ処理が行われるような機能をコンピュータ上に実装すればよい。しかしながら、CMOSオペアンプ回路内には通常多くのMOSトランジスタが含まれている。そうすると、各MOSトランジスタの回路定数(L,W)をそれぞれ独立変数として変動させた場合、変数の個数の多さからループ処理による演算回数が膨大となり、演算時間が長時間になって、現実的には解を得られないような事態も起こりうる。したがって、この場合も設計者のスキルに依存し、如何に妥当な初期値および可変範囲を設定できるかが重要となる。
【0006】
このような問題を解決するため、先にオペアンプ回路を含むアナログ回路を設計対象とし、キルヒホッフの法則を反映した制約式に基づいて各回路素子の回路定数を変動させ、その都度、SPICE系の回路シミュレータによって回路特性を検証しながら最適な回路定数を探索する設計システムが提案されている(特許文献1参照)。
この設計システムを用いると、キルヒホッフの法則を反映した制約式によって回路定数の探索範囲が狭められるため、設計期間の短縮が実現できるとともに、回路シミュレータを利用した設計方式であるため、設計の容易化が図れることが示唆されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2008−181377号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1では、キルヒホッフの法則を反映した制約式に基づいて複数の独立変数からなる設計空間が狭められることを示唆するにとどまっている。
本発明は、この考え方をさらに一歩進めて、回路図から回路トポロジ制約を抽出してキルヒホッフの法則を含む制約式に反映させ、個人の技量に依存せずに最適解が容易に得られ、コンピュータのTAT(ターンアラウンドタイム:Turn Around
time)を短縮することが可能な半導体装置の自動設計システムを構築することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するため本発明の半導体装置の設計システムは、回路図内に含まれる複数のトランジスタのそれぞれの回路定数を、複数のパラメータを含んだ制約式に基づいて算出する第1の手段と、前記第1の手段で算出された回路定数が反映された状態の前記回路図に対して電気的特性の算出を行う第2の手段と、前記第2の手段での電気的特性の算出結果が予め定められた設計仕様を満たすようになるまで、前記複数のパラメータへの代入値を変更しながら前記第1の手段と前記第2の手段での処理をループさせる第3の手段とを有するコンピュータシステムを用いた半導体装置の設計システムにおいて、前記コンピュータシステムは、前記複数のパラメータの中に含まれる前記複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませる第4の手段を備えて成ることを特徴としている。
【0010】
ここで、前記回路図は増幅回路および前記増幅回路のバイアスを設定する電流源または電圧源を含み、前記第1の手段は前記回路定数の算出に加えて、前記電流源または前記電圧源の値を選択し、前記第2の手段は前記第1の手段での前記回路定数および前記電流源または前記電圧源の値が反映された状態の前記回路図に対して電気的特性の算出を行い、前記第3の手段は前記第2の手段での電気的特性の算出結果が前記設計仕様を満たさない場合に前記電流源または前記電圧源の値を変更しながら前記第1の手段と前記第2の手段での処理をループさせ、前記第4の手段は前記複数のパラメータの中に含まれる前記複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませるように構成してもよい。
【発明の効果】
【0011】
本発明によれば、回路図から回路トポロジ制約を抽出してキルヒホッフの法則を含む制約式に反映させ、個人の技量に依存せずに最適解が容易に得られ、コンピュータのTATを短縮することが可能な半導体装置の自動設計システムを構築することが可能になる。また、回路図からキルヒホッフの電流則を反映する制約条件を自動的に抽出して回路定数の自動探索範囲をある程度狭めることが可能となり、設計期間の短縮または設計の容易化を実現することが可能になる。
【図面の簡単な説明】
【0012】
【図1】本発明の半導体装置設計システムの一実施形態の構成を示すブロック図ある。
【図2】図1に示す設計システムを用いて設計を行う回路例としてのフォールデッドカスコード型CMOSオペアンプ回路の回路図の一例である。
【図3】図1に示す設計システムを用いて行う自動設計の処理内容を示すフローチャートである。
【図4】図1に示す設計システムの効果を概念的に示すための説明図である。
【図5】図1に示す設計システムで用いた設計仕様の一例を示す説明図である。
【図6】図1に示す設計システムで用いて自動設計を行った結果を示す説明図である。
【図7】図6に対応した各回路素子の回路定数探索結果を示す説明図である。
【図8】本発明の前提として検討したアナログ回路の設計手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態に係る半導体装置の設計システムについて説明するが、本発明は前記特許文献1記載の発明の改良に関するものであるため、特許文献1記載の発明との差異が明確になるように特許文献1記載の発明を適宜参照しつつ本発明の実施の形態について説明する。
尚、本発明の実施の形態に係る各図において、同一部分には同一の符号を付し、その繰り返しの説明は省略する。
【0014】
図1は、本発明の実施の形態に係る半導体装置の設計システムの構成の一例を示すブロック図である。
図1において、符号101は設計システム、102は最適化制御部、103は回路シミュレータ部、104はシミュレータ制御部、105は入力制御部、106はトポロジ制約抽出部、107は出力制御部、108はループ制御部、109は判定処理部、110は回路図、111はコーナー条件、112は制約条件、113は回路図・テストベンチ入力、114は設計仕様、115は記録媒体である。
【0015】
図1の設計システム101は、中央処理装置(CPU)やランダムアクセスメモリ(RAM)等の記憶手段を含んだコンピュータシステムによって、コンピュータ読み取り可能な記録媒体115に記憶したプログラムをインストールして実行することにより実現されていて、例えば、回路シミュレータ部103と、最適化制御部(オプティマイザ)102などによって構成される。
【0016】
回路シミュレータ部103は、与えられた各種条件の下で回路図(ネットリスト)110に記載されている回路の電気的特性を算出する機能を備えるものある。このような装置としては、例えばSPICE(Simulation Program with Integrated Circuit Emphasis)系と呼ばれるものなどがよく知られている。
最適化制御部102は、その機能概要として、回路シミュレータ部103によるシミュレーション結果が予め定めた仕様を満足するまで、回路図110内の各素子の回路定数(MOSトランジスタの場合はゲート長Lやゲート幅W)を自動的に変更し、これによって回路定数の自動設計を行う部分である。
【0017】
最適化制御部102には、入力制御部105と、出力制御部107と、シミュレータ制御部104が含まれている。
入力制御部105は、設計者によって予め定められた各種制約条件112や回路図110に与える入力信号などをシミュレータ制御部104からの制御に基づいて決定し、これらの情報を回路シミュレータ部103に設定する。
出力制御部107は、判定処理部109を含み、回路シミュレータ部103でのシミュレーション結果が予め設計者によって定められた設計仕様114を満たしているかどうかを判定する。
【0018】
シミュレータ制御部104は、ループ制御部108等を含み、出力制御部107からの判定結果に基づいて、新たなシミュレーション条件や回路定数の条件を策定し、これらの条件が回路シミュレータ部103に設定されるように入力制御部105を制御する。すなわち、所定のシミュレーション条件でのシミュレーション結果が設計仕様114を満足するまで回路定数の条件変更を繰り返すループ処理を繰り返し行う。なお、シミュレーション条件の中には、コーナー条件111と呼ばれるプロセス条件(P)/電圧条件(V)/温度条件(T)/トランジスタの詳細モデル(Model)の組合せや、前述した回路図110に与える入力信号の条件などが含まれる。
【0019】
さらに、この設計システム101には、回路図110からその回路のトポロジ制約を抽出するトポロジ制約抽出部106が含まれる。
トポロジ制約抽出部106は回路のネットワーク構成を吟味し、ネットワークの分岐構成や回路の対称性から、ネットワーク各部に流れる電流値を判定し、キルヒホッフの電流則を当てはめ、これを回路制約式、特にトランジスタ(TR)設計制約式に当てはめることで、独立設計変数を削減し設計空間の削減を実現する。
【0020】
このような全体構成であるので、図1に示す本実施の形態の設計システムは、回路図110内に含まれる各回路素子の回路定数に対し、その定数設定範囲に制約を加えるための制約条件112を与えるその与え方に主要な特徴を備えている。
制約条件112には、トランジスタ(TR)やコンデンサ(容量)(C)や抵抗(R)といった回路素子に対応する制約式が含まれるが、その中でも、特にトランジスタ(TR)の制約式に特徴がある。
すなわち、詳細は後述するが、このトランジスタ(TR)の制約式を利用してトランジスタ(TR)の回路定数(例えばMOSトランジスタの場合のL,W)の設定範囲を適切化することで、例えば、最適化制御部102による回路定数の自動設計が短期間で行えるようにすることができる。
【0021】
ここで、後述する特許請求の範囲の請求項1に記述した回路図内に含まれる複数のトランジスタのそれぞれの回路定数を、複数のパラメータを含んだ制約式に基づいて算出する第1の手段は、入力制御部105とシミュレータ制御部104で構成されて、その結果は回路シミュレータ部103に設定される。
また、この第1の手段で算出された回路定数が反映された状態の回路図に対して電気的特性の算出を行う第2の手段は、回路シミュレータ部103で構成され、その結果は出力制御部107に送られる。
【0022】
この第2の手段での電気的特性の算出結果が予め定められた設計仕様を満たすようになるまで、複数のパラメータへの代入値を変更しながら第1の手段と第2の手段での処理をループさせる第3の手段は、出力制御部107とシミュレータ制御部104と入力制御部105と回路シミュレータ部103のループで構成される。
さらに、複数のパラメータに含まれる複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませる第4の手段は、トポロジ制約抽出部106で構成される。
【0023】
ここで、制約式について説明する。制約式には、図1の制約条件112に示すように、MOSトランジスタTRの制約式とコンデンサCや抵抗Rの制約式が含まれている。
この中で、処理の中心になるのはトランジスタTRの制約式であるので、まず、トランジスタTRの制約式についてその原理を説明することにする。
本実施の形態ではトランジスタTRとしてMOSトランジスタを用いる事とする。例えば、オペアンプ回路などのアナログ回路では、MOSトランジスタを飽和領域で動作させる。MOSトランジスタの飽和領域においては、次に述べる式(1)および式(2)の関係が成り立つ。
DS>VGS−V
・・・(1)
=k’・(W/L)・(VGS−V
・・・(2)
【0024】
ここで、VDSはソース−ドレイン間電圧、VGSはソース−ゲート間電圧、Vはしきい値電圧、Iはソース−ドレイン間電流、Wはゲート幅、Lはゲート長である。また、k’は電子又はホールの移動度μとゲート酸化膜の単位面積当たりの容量Cを用いて式(3)で与えられる。
k’=(1/2)・μ・C
・・・(3)
なお、式(2)は、厳密にはチャネル長変調効果や基板バイアス効果などの項が加わることになるが、本実施の形態の設計システムでは、特に厳密な数式を用いる必要性はなく、数式が単純である方が望ましいため、これらの項を省略している。
【0025】
ここで、ある基準となるMOSトランジスタをMOSトランジスタM1に選び、このMOSトランジスタM1におけるソース−ドレイン間電流ID1と、着目するMOSトランジスタMiにおけるソース−ドレイン間電流IDiとの電流比をkc(=IDi/ID1)とおき、式(2)を用いて変形すると、Miの回路定数(ゲート幅W/ゲート長L)は式(4)となる。
/L=kr’・kc・kb・(W/L
・・・(4)
式(4)において、kr’はMiとM1の間のk’の比、kbはMiとM1の間のゲートバイアス電圧の比をそれぞれ意味するものである。尚、式(2)の2乗特性(非線形性)や省略された基板バイアス効果などの項は、単純化された線形式に基づく判定結果に対応する係数の微調整の繰り返し(ループ処理)により実効的に表現され状態で設計される。
【0026】
本実施の形態の設計システムでは、この式(4)をMOSトランジスタの制約式とすることで、回路図110内に含まれる各MOSトランジスタMi毎にその回路定数(W/L)を、基準のMOSトランジスタM1の回路定数(W/L)と3種類のパラメータ(kr’,kc,kb)とによって表現することを特徴としている。言い換えれば、M1とMiの回路定数をそれぞれ独立変数として扱うのではなく、Miの回路定数を、M1の回路定数に対して、k’の比(kr’)と電流比(kc)とバイアス比(kb)で関連付けてすべての処理を取り扱う。そして、この関連付けに際しては、以下に説明するように電流に対してキルヒホッフの法則を利用する。
【0027】
図2は、図1の設計システムを用いて自動設計を行う回路例として、フォールデッドカスコード型CMOSオペアンプ回路の一例を示した回路図である。
図2の回路は、PMOSトランジスタM1,M1_2,M2(_1,2),M5(_1,2),M6(_1〜3),M8(_1〜3)と、NMOSトランジスタM3(_1,2),M4(_1,2),M7(_1,2)と、位相補償容量Ccとバイアス電流源(バイアス電流)Ib1,Ib6,Ib8とコモンモードフィードバック回路CMFBで構成されている。
【0028】
M2_1とM2_2は、ゲートに入力信号Vinが印加される差動入力段を構成し、そのソースに対してM1から共通にバイアス電流(テール電流)が供給される。M1のゲートは、M1_2とカレントミラーを構成することでM1_2と同じバイアス電圧Vb1がソース、ゲート間に印加され、このM1_2にIb1が接続される。
M2_1とM2_2のドレイン出力は、電源電圧VDDから接地電圧GNDに向けて順に直列接続されたM6(_1,2),M5(_1,2),M4(_1,2),M3(_1,2)からなるフォールデッドカスコード段によって差動増幅される。
M6(_1,2)の共通ゲートは、M6_3とカレントミラーを構成することで同じバイアス電圧Vb6がソース、ゲート間に印加され、このM6_3にIb6が接続される。M5(_1,2)の共通ゲートとM4(_1,2)の共通ゲートは、図示しない回路によってそれぞれバイアス電圧Vb5とVb4が印加される。
【0029】
フォールデッドカスコード段によって差動増幅された信号は、M7_1及びそのバイアス電流(負荷電流)を供給するM8_1と、M7_2及びその負荷電流を供給するM8_2とからなる出力段によって更に増幅され、その結果が出力信号Voutとなる。
M8(_1,2)の共通ゲートは、M8_3とカレントミラーを構成することでバイアス電圧Vb8が印加され、このM8_3にIb8が接続される。またCMFBは、出力信号VoutをモニタしながらM3(_1,2)の共通ゲートへのバイアス電圧Vb3を制御する。
【0030】
この図2に示す回路を例として、回路定数を図1の設計システムで自動設計する場合には、まず、設計者が、回路図内の各回路素子に対し、次に示すような順序で式(4)に示した制約式を作成する。図2に示す回路では、差動入力段と、フォールデッドカスコード段と、出力段における各MOSトランジスタのソース−ドレイン間電流Iは、それぞれキルヒホッフの電流則に従い式(5)、式(6)、式(7)に示す関係が成り立つ。
【0031】
差動入力段:
=I2_1+I2_2
2_2=I2_1
・・・(5)
【0032】
フォールデッドカスコード段:
6_2=I6_1=I5_2=I5_1=I4_2=I4_1
3_2=I3_1=I2_1+I4_1
・・・(6)
【0033】
出力段:
8_2=I8_1=I7_2=I7_1
・・・(7)
【0034】
式(5)〜式(7)において、電流Iの添字はMOSトランジスタの添字に対応し、例えば電流I
はMOSトランジスタM2_1に対応する。また、図2において、MOSトランジスタMi_jの添字iの値が等しいものは回路構成の面から同一の回路定数を使用し、例えばM2_1とM2_2の回路定数は等しくなる。
ここで、式(5)〜式(7)の関係に基づき、Iを基準にIの電流比(I/I)をkc、Iの電流比(I/I)をkcとおくと、各MOSトランジスタの制約式は、式(8)〜式(10)のように定められる。
【0035】
差動入力段:
2_2/L2_2=W2_1/L2_1=(1/2)・kb・(W/L
・・・(8)
【0036】
フォールデッドカスコード段:
6_2/L6_2=W6_1/L6_1=kc・kb・(W/L),
5_2/L5_2=W5_1/L5_1=kc・kb・(W/L),
4_2/L4_2=W4_1/L4_1=kr’・kc・kb・(W/L),
3_2/L3_2=W3_1/L3_1=kr’・(1/2+kc)・kb・(W/L
・・・(9)
【0037】
出力段:
8_2/L8_2=W8_1/L8_1=kc・kb・(W/L),
7_2/L7_2=W7_1/L7_1=kr’・kc・kb・(W/L
・・・(10)
【0038】
式(8)〜式(10)において、kbは、M1のゲートバイアス電圧Vb1との間のバイアス電圧比であり、例えばkbは、Vb1/Vb6となる。また、kr’は、PMOSトランジスタM1との間のk’(式(3))の比率であるが、通常、PMOSトランジスタとNMOSトランジスタの容量Cは等しく設計されるため、着目トランジスタがPMOSトランジスタの場合はkr’が‘1’となり、NMOSトランジスタの場合はkr’がμ/μとなる。
【0039】
以上の制約式から判るように、各MOSトランジスタMiの回路定数(L,W)は、基準のMOSトランジスタM1の回路定数(L,W)と、M1のトランジスタ極性(P型又はN型)、ソース−ドレイン間電流、バイアス電圧を基準としてそれぞれMiのM1に対する比率を表した各パラメータkr’,kc,kbとによって表現される。この際に、並列接続や直列接続といった回路トポロジに基づいてキルヒホッフの電流則を適用することで、独立変数となるkcの数を削減している。
【0040】
具体的には、例えば、差動入力段M2_1,M2_2では、それぞれM1の電流の1/2倍が流れるものとし、M4_1〜M6_1のような直列接続の場合は、それぞれM1の電流のkc倍が等しく流れるものとする。更に、分岐点がある並列接続の場合は、M3_1のように、M2_1に流れる電流(1/2に対応)とM5_1に流れる電流(kcに対応)の合算電流(1/2+kc)が流れるものとする。
【0041】
このようにキルヒホッフの電流則を適用することで、図2において、M1を基準にM2〜M8の電流比を表現した場合に通常であればkc〜kcの7個の独立変数が必要となるが、それをkcとkcの2個の独立変数に削減することができる。
また、バイアス電圧比に関しても、例えばM3_1,M3_2のように、ゲートが共通接続されるトランジスタに対しては共通のバイアス電圧比を割り当てることで、独立変数の数を減らしている。
【0042】
図1に示した設計システムでは、このようなキルヒホッフの電流則の適用は、トポロジ制約抽出部106が、回路シミュレータ部103の回路図110から抽出してシミュレータ制御部104の入力変数項目に順次記憶して行う。
シミュレータ制御部104は、こうしたキルヒホッフの電流則の適用を新たな制約条件として回路シミュレータ部103に帰還させ、独立変数を削減するとともに、独立変数を逐次変更しながら、例えば図3に示すような手順で回路定数の自動設計を行う。
【0043】
図3は、図1の設計システムを用いた自動設計の処理内容の一例を示すフローチャートである。
まず、処理ステップS301において、設計者が、図2に示したような回路図およびその回路図に含まれる各MOSトランジスタ等の制約式を作成し、更に、この制約式および回路図内含まれる各独立変数の可変範囲を設定する。
ここで、図1では、回路図及びシミュレーション用のファイルであるテストベンチは、回路図・テストベンチ入力113から、MOSトランジスタ等の制約式は、制約条件112から、目標仕様、独立変数の可変範囲などは設計仕様113から入力されるようになっているが、必ずしもこの通りでなくてもよく、さらに内容が、すべてが一括で入力されても、必要に応じてその都度入力されても差し支えない。
【0044】
ここで、制約式の中には、図1の制約条件112に示すように、MOSトランジスタTRの制約式に加えて、コンデンサCや抵抗Rの制約式が含まれていてもよい。例えば、MOSトランジスタを用いてコンデンサCを形成する場合や、拡散層などによって抵抗Rを形成する場合には、そのサイズ(回路定数)を独立変数として容量値や抵抗値を制約式として組み込むことができる。
【0045】
各独立変数の可変範囲としては、図2の回路を例として、例えば次のような範囲に設定する。
(1)ゲート長:Lmin≦L,L,L,L,L,L,L,L≦Lmax
(2)ゲート幅:Wmin≦W≦Wmax
(3)電流比:0.1≦kc≦5、1≦kc≦10
(4)バイアス電圧比:0.1≦kb,kb,kb,kb,kb,kb,kb≦5〜10
(5)k’比:1/6≦kr’≦1/2
(6)バイアス電流:Imin≦Ib1,Ib6,Ib8≦Imax
(7)位相補償容量:CLmin≦Cc≦CLmax
ゲート長の最小値、最大値Lmin,Lmaxやゲート幅の最小値、最大値Wmin,Wmaxは、製造プロセスのリソグラフィ制限やレイアウトルールおよび回路面積の制限などによって定められる。電流比やバイアス電圧比は、経験的な要素や、試行錯誤によって定められる。
バイアス電流の最小値、最大値Imin,Imaxは、消費電力の仕様などに基づいて定められる。位相補償容量の最小値CLminは、回路面積の制限やMOSトランジスタ(M7やM8)のドレイン容量などを考慮して定められる。位相補償容量の最大値CLmaxは、負荷容量CLや位相補償容量の最小値CLminなどを考慮して定められる。
【0046】
次いで、処理ステップS302において、図1の最適化制御部102が、ステップS301で定めた制約式や各独立変数の可変範囲に基づいて、図2に含まれる各回路素子に対して初期の回路定数を設定する。
この際に、各MOSトランジスタに対しては、制約式内の各独立変数(kr’,kc,kb,W,L〜L)に前述した可変範囲内の初期値が代入され、これによって各MOSトランジスタ毎のLやWが算出される。
【0047】
続いて、ステップS303において、最適化制御部102が、シミュレーション条件を設定する。シミュレーション条件の中には、入力信号条件や、プロセス条件(P)/電圧条件(V)/温度条件(T)/トランジスタの詳細モデル(Model)の組合せからなるコーナー条件111やトポロジ制約抽出部106行った独立変数の削減条件等が含まれる。
その後、最適化制御部102は、回路シミュレータ103に対し、ステップS302で回路定数が定められた回路図110と、ステップS303で定めたシミュレーション条件とを設定し、回路シミュレータ103を動作させて回路シミュレーションを行う(ステップS304)。
【0048】
回路シミュレータ部103によるシミュレーション結果が得られると、最適化制御部102は、予め設計者によって設定されている評価項目に基づいて回路特性の算出を行う(ステップS305)。評価項目は本実施の形態に係る設計システムの記憶手段(図示せず)に予め記憶されており、評価項目の中には、例えばゲインやユニティゲイン周波数(UGF)や位相余裕などを代表に様々な項目が含まれる。例えば、ゲインは、回路シミュレータ部103がSPICE系のものである場合、回路シミュレータ部103の機能によって回路図110の出力信号(図2でのVout)を観測し、それと入力信号(図2でのVin)との比を算出することで得られる。
【0049】
更に、評価項目の中には、各MOSトランジスタが飽和領域で動作していることを確認する項目が含まれる。図2に示したような回路は、各MOSトランジスタが飽和領域で動作することを前提としており、前述した各MOSトランジスタに対する制約式も飽和領域で動作することを前提に定めているため、回路シミュレーション結果の妥当性を確認するためには、この飽和条件の評価項目が必要となる。
【0050】
そこで、例えば、図1の設計仕様114内で予め動作電源電圧等に対するドレイン−ソース間電圧マージンΔVDSやゲート−ソース間電圧マージンΔVGSを定める。そして、回路シミュレータ部103の機能によって、各MOSトランジスタのゲート、ドレインおよびソース電圧を観測し、各MOSトランジスタが式(11)の条件を満たすか否かを確認する。尚、式(11)において、VDSATは、飽和ドレイン電圧(=|VGS−V|)である。
【0051】
|VDS−VDSAT|≧ΔVDS
|VGS−V|≧ΔVGS ・・・(11)
【0052】
最適化制御部102は、このようなステップS303〜S305の処理を、シミュレーション条件(コーナー条件)を逐次変更しながら行う。所定のシミュレーション条件での評価が終了すると、ステップS306おいて、最適化制御部102は、ステップS305での算出した回路特性の判定を行う。すなわち、当該回路に各コーナー条件を適用した場合において、前述したゲイン等の評価項目が前記記憶手段に記憶され予め定められたスペック(SPEC)値を満足するか、および各MOSトランジスタが式(11)の飽和条件を満足するかが判定される。
【0053】
ここで、ステップS306での判定結果が全て満足していた場合は、ステップS307において、ステップS302で定めた各回路素子の回路定数が最終解として決定され、自動設計が完了する。一方、判定結果に不満足な評価項目が有った場合は、ステップS302へ移行し、回路定数を変更した上で再びステップS303〜S305の処理が行われる。すなわち、予め定めた設計仕様114を満足する回路定数を見つけ出すまでステップS302〜S306のループ処理が行われる。このループ処理においては、例えば、公知の遺伝子アルゴリズムなどを用いて回路定数の変更を行うと、より短期間で解を見つけ出すことができる。
【0054】
以上、前述したような制約式を用いて図3に示すような処理フローを実行することで例えば次のような効果を得ることができる。
第1に、短期間で回路定数の自動設計を行うことができるようになる。これは、前述したように制約式に対してキルヒホッフの法則を適用することで、図3のループ処理における回路定数の可変範囲を適正化できるためである。
【0055】
この関係を図4を用いて説明する。図4は、図1の設計システムにおいて、その効果の一例を概念的に示すための説明図である。まず、比較例として前述したような制約式を用いない場合の回路定数の可変範囲は、図2の回路を例として述べると、次のようになる。
(1)ゲート長:Lmin≦L,L,L,L,L,L,L,L≦Lmax
(2)ゲート幅:Wmin≦W,W,W,W,W,W,W,W≦Wmax
(3)バイアス電流:Imin≦Ib1,Ib6,Ib8≦Imax
(4)位相補償容量:CLmin≦Cc≦CLmax
【0056】
ここで、一例として、WとWの関係に着目すると、比較例では、図4のWmin〜WmaxからなるWに対して、WもWmin〜Wmaxの可変範囲で探索することになる。したがって、ループ処理による探索範囲は、図4のエリア401に示すように正方形の全エリアとなる。また、図示はしないが、他のゲート幅W(i=3〜8)においても同様に、Wmin〜WmaxからなるWに対して、WもWmin〜Wmaxの可変範囲で探索することになる。
【0057】
一方、図1の設計システムでは、制約式によって、図4のWmin〜WmaxからなるWに対し、Wは、式(10)から判るように、電流比を反映したW/2を目安に可変範囲が設定される。したがって、ループ処理による探索範囲は、図4に示すように、W/2を基準にその前後でkb等による可変範囲を反映させたエリア402となる。また、図示はしないが、他のゲート幅W(i=3〜8)においても同様に、Wに対して制約式に基づく特定の探索範囲が定められる。したがって、比較例に比べて格段に探索範囲が狭まるため、短期間で回路定数の自動設計を行うことができる。
【0058】
第2に、容易に回路定数の自動設計を行うことができる。これは、制約式を可能な限り単純化し、この制約式で保証されない事項を回路シミュレータのMOSモデルと飽和動作チェックによって保証しているためである。すなわち、比較例として前述したような幾何学的最適化プログラミング(GP)手法では、言うなれば制約式のみで回路定数を決定しているため、制約式自体が、例えばプロセス(P)/電源電圧(V)/温度(T)依存やチャネル長変調効果や基板バイアス効果等を盛り込んだ厳密なものでなければならない。
【0059】
ここで、図1の設計システムでは、制約式は回路定数の探索範囲を狭める役目を担い、その範囲内で、回路シミュレータが、MOSモデルによりP/V/T依存やチャネル長変調効果や基板バイアス効果等を盛り込んで厳密な最適解を算出することになる。したがって、制約式は、厳密なものである必要はなく、妥当な探索範囲を設定できるものであればよい。
この意味で、チャネル長変調効果や基板バイアス効果等の影響は小さいと考えられ、これらの項を省略しても妥当な探索範囲を設定可能である。これによって、制約式が簡略化され、設計の容易性などが向上する。また、制約式がP/V/T依存によって変化するものであったならば、コーナー条件毎に制約式を変えなければならず、容易な設計が行えなくなる。この意味で、式(4)の制約式は、キルヒホッフの法則がP/V/T依存性を持たない不変的ものであるため、各種条件に依らず共通に適用可能である。
【0060】
第3に、バイアス電流Ibを独立変数としてループ処理を行うことで、より設計の効率化が図れることが挙げられる。すなわち、回路シミュレーションに基づく一般的な設計手法では、まず、バイアス電流を設定して、そのバイアス電流において設計仕様を満たす回路定数を見つけ出すという手順が採られる。
これは、バイアス電流を固定することである基準を設けないことには回路定数の設計が行い難いという人為的な都合によるところが大きい。しかしながら、この手法では、あるバイアス電流で回路定数を見出せない場合に、バイアス電流を変えた後で再度始めから全ての回路定数の探索をやり直すことになる。
【0061】
そこで、図3の処理フローでは、バイアス電流Ibと回路定数をそれぞれ独立変数として、前述した手順(時系列的概念)に捕らわれずに変動させている。つまり、例えば、回路定数を見出せなかった場合に、その回路定数を固定した状態で設計仕様を満たすバイアス電流を探索していく処理や、遺伝子アルゴリズムを用いてバイアス電流と回路定数を同時に探索する処理などを行う。
これによって、より効率的な設計を行うことができ、短期間で最適解を見つけ出せる可能性も高くなる。なお、バイアス電流を独立変数としてループ処理を行うと、その分を探索範囲が広くなるが、これは、図4に添って述べたように、制約式によって抜本的に探索範囲を小さくすることで現実的な実現性が確保される。
本例では、バイアス電流Ibの可変による事例を示したが、バイアス電圧を可変として設計する場合もある。
【0062】
次に、図1の設計システムおよび図3の処理フローを用いて実際に回路定数の設計を行った実施例について説明する。ここでは、図2の回路に対し、0.15μmのCMOSプロセスを用いることを想定し、電源電圧VDDの仕様が1.5Vの場合の回路定数と3.3Vの場合の回路定数を設計した。
図5は、図1の設計システムで用いた設計仕様の一例を示す説明図である。図5に示すように、本実施例では、設計仕様114として、ゲイン(A0)、ユニティゲイン周波数(ft)、位相余裕(PM)、電源電流、飽和条件(式(11)参照)、および負荷容量Cといった回路特性評価項目を設定した。
ここで、飽和条件は、各電源電圧仕様(1.5V,3.3V)で個別に設定し、それ以外の評価項目は、各電源電圧仕様で共通に設定している。
【0063】
そして、図1の設計システムと図3の処理フローを用いて、このような設計仕様114を満たす回路定数を探索した。この際に、MOSトランジスタの制約式や回路素子における各独立変数の可変範囲は、図3の説明で一例として挙げた範囲を設定している。なお、MOSトランジスタの制約式は、前述したようにP/V/T条件に依存しないため、1.5V仕様および3.3V仕様で共通に使用可能である。
【0064】
また、図1のコーナー条件111は、MOSトランジスタのモデル条件の5種類、容量および抵抗からなるCR遅延条件の2種類(遅延大,遅延小)、温度条件の2種類(高温,低温)、電源電圧条件の2種類(高電圧,低電圧)からなる組合せ条件に、全て条件がティピカル(典型的)な場合を加えて計41種類を設定した。MOSトランジスタのモデルの5種類は、「PMOSトランジスタ,NMOSトランジスタ」がプロセスばらつきに応じてそれぞれスロー(S)又はファースト(F)になることを示す、「SS」条件、「SF」条件、「FS」条件、「FF」条件と、両方がティピカルになることを示す、「Typ」条件である。
【0065】
このようなコーナー条件111全てにおいて、前述した設計仕様114を満たす解を図1の設計システムで探索したところ、図6、図7に示すような結果が得られた。
図6は、図2に示したフォールデッドカスコード型CMOSオペアンプ回路(Cascode)回路における電源電圧3.3V仕様及び1.5V仕様での回路特性評価結果を示すものである。
また、図7は、図6に対応した(電源電圧3.3V仕様及び1.5V仕様)各回路素子の回路定数探索結果を示すものである。
【0066】
図6に示すように、図2のフォールデッドカスコード型CMOSオペアンプ回路の3.3V仕様と1.5V仕様において、図5の設計仕様114を満足する最適解が得られた。そして、この最適解は、図1の設計システムによる演算処理によって1日を要することがなく得ることができた。
一方、図3および図4に添って説明した比較例として、MOSトランジスタの制約式を用いずに各MOSトランジスタのゲート長Lやゲート幅Wをそれぞれ独立変数として探索する手法では、10日かかっても最適解が得られないという結果となった。
【0067】
また、図7に示す回路の回路定数をそれぞれ観察すると妥当な結果が得られていることが判る。
例えば、熟練した設計者は、高いゲインを得るために差動入力段のMOSトランジスタM2,M3のゲート長L,Lをさほど小さく設計しない場合が多い。その逆に、高いスルーレートを得るために、出力段のMOSトランジスタM7,M8のゲート長L,Lを小さく設計し、ゲート幅W,Wを大きく設計する場合が多い。図7に示した結果には、このような傾向が見られる。
【0068】
以上述べたように、本発明の実施の形態に係る半導体装置の設計システムは、回路図内に含まれる複数のトランジスタのそれぞれの回路定数を、複数のパラメータを含んだ制約式に基づいて算出する第1の手段と、前記第1の手段で算出された回路定数が反映された状態の前記回路図に対して電気的特性の算出を行う第2の手段と、前記第2の手段での電気的特性の算出結果が予め定められた設計仕様を満たすようになるまで、前記複数のパラメータへの代入値を変更しながら前記第1の手段と前記第2の手段での処理をループさせる第3の手段とを有するコンピュータシステムを用いた半導体装置の設計システムにおいて、前記コンピュータシステムは、前記複数のパラメータの中に含まれる前記複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませる第4の手段を備えて成ることを特徴としている。
【0069】
尚ここで、前記複数のトランジスタは、MOSトランジスタであり、前記複数のMOSトランジスタ(Mi)の回路定数となるゲート幅W/ゲート長Lを算出する前記制約式は、
/L=kr’・kc・kb・(W/L)であり、
kr’は、前記基準トランジスタとなるMOSトランジスタ(M1)と前記MOSトランジスタ(Mi)の間でP型又はN型からなる導電型の違いを表すパラメータであり、kbは、前記MOSトランジスタ(M1)と前記MOSトランジスタ(Mi)の間でゲートバイアス電圧の比を表すパラメータであり、kcは、前記MOSトランジスタ(M1)と前記MOSトランジスタ(Mi)の間でソース−ドレイン間電流の比を表す前記第1パラメータであり、W/Lは、前記MOSトランジスタ(M1)の回路定数であるゲート幅/ゲート長を表すパラメータであるように構成してもよい。
【0070】
また、j番目のMOSトランジスタ(Mj)に対して前記第1パラメータとなるkcが設定され、k番目のMOSトランジスタ(Mk)に対して前記第1パラメータとなるkcが設定された場合、前記MOSトランジスタ(Mi)が前記MOSトランジスタ(Mj)と直列接続されている時にはkc=kcとし、前記MOSトランジスタ(Mi)から分岐して前記MOSトランジスタ(Mj)と前記MOSトランジスタ(Mk)が接続されている時にはkc=kc+kcとしてもよい。
また、前記第3の手段での設計仕様には、前記複数のトランジスタとなるMOSトランジスタが全て飽和領域で動作していることを確認する項目が含まれているように構成してもよい。
また、前記回路図は、CMOSオペアンプ回路を含むように構成してもよい。
【0071】
また、前記回路図は、増幅回路および前記増幅回路のバイアスを設定する電流源または電圧源を含み、前記第1の手段は、前記回路定数の算出に加えて、前記電流源または前記電圧源の値を選択し、前記第2の手段は、前記第1の手段での前記回路定数および前記電流源または前記電圧源の値が反映された状態の前記回路図に対して電気的特性の算出を行い、前記第3の手段は、前記第2の手段での電気的特性の算出結果が前記設計仕様を満たさない場合に、前記電流源または前記電圧源の値を変更しながら前記第1の手段と前記第2の手段での処理をループさせ、前記第4の手段は前記複数のパラメータの中に含まれる前記複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませるように構成してもよい。
【0072】
また、さらに、前記回路図に対して電源電圧条件や温度条件を含んだ各種条件の組合せとなるコーナー条件を設定し、このコーナー条件が設定された回路図を対象に前記第2の手段で電気的特性の算出を行わせる第5の手段を備えるように構成してもよい。
また、前記第2の手段は、SPICE系の回路シミュレータで実現されるように構成してもよい。
【0073】
このように本実施の形態に係る半導体装置設計システムによれば、回路図から回路トポロジ制約を抽出してキルヒホッフの法則を含む制約式に反映させ、個人の技量に依存せずに最適解が容易に得られ、コンピュータのTATを短縮することが可能な半導体装置の自動設計システムを構築することができる。
また、回路図からキルヒホッフの電流則を反映する制約条件を自動的に抽出して回路定数の自動探索範囲をある程度狭めることが可能となり、設計期間の短縮または設計の容易化を実現することができる。
また、アナログ回路を含んだ半導体装置の回路定数設計を短期間で実現できる。更には、アナログ回路を含んだ半導体装置の回路定数設計を容易に実現できる。
【0074】
また、本実施の形態に係るプログラムをコンピュータに実行させることにより、前記設計システムを構築することができる。
また、本発明の実施の形態に係る半導体装置設計方法によれば、アナログ回路を含んだ半導体装置の回路定数設計を短期間で実現可能となり又、アナログ回路を含んだ半導体装置の回路定数設計を容易に実現できる。
実際の設計によると、本実施の形態の設計システムを用いた場合、変数削減を行わない従来例と比較して、一例として、10倍〜60倍の設計の高速化が実現できた。
【0075】
ここでは、図1の回路シミュレータ部103として広く知られているSPICE系のシミュレータを用いる場合を例としたが、このようなシミュレータに限定されるものではない。例えば、小信号等価回路に基づいて回路特性および回路定数を探索するようなシミュレータでは、小信号等価回路内の各MOSトランジスタの相互コンダクタンスgmをそれぞれ独立変数として扱い、最適解を探索するような処理が行われる。そこで、ゲート長Lやゲート幅Wの関数であるgmに対して前述したような制約式を反映させると、それぞれ無関係な独立変数であったgmにキルヒホッフの法則に基づく関連性を持たせることができるため、探索範囲を低減することができる。
【0076】
また、上述の実施の形態ではMOSトランジスタに対する具体的な制約式を示したが、勿論、MOSトランジスタに限らずMIS(Metal Insulator Semiconductor)型のトランジスタであれば同様な制約式を適用可能である。また、設計対象となる回路も、勿論オペアンプ回路に限らず、例えば電源系の回路や、ADC(Analog Digital Converter)回路といった様々なアナログ回路であってよい。
【産業上の利用可能性】
【0077】
本発明による半導体装置の設計システムは、MOSトランジスタからなるアナログ回路を含んだ半導体装置に対して、回路シミュレーションを利用して回路定数の設計を行う設計システムに適用して特に有益な技術であるが、半導体装置の設計システム全般に対しても広く適用可能である。
【符号の説明】
【0078】
101・・・設計システム
102・・・最適化制御部
103・・・回路シミュレータ部
104・・・シミュレータ制御部
105・・・入力制御部
106・・・トポロジ制約抽出部
107・・・出力制御部
108・・・ループ制御部
109・・・判定処理部
110・・・回路図
111・・・コーナー条件
112・・・制約条件
113・・・回路図・テストベンチ入力
114・・・設計仕様
115・・・記録媒体
M・・・MOSトランジスタ
Ib・・・バイアス電流源
CL・・・負荷容量
Cc・・・位相補償容量
CMFB・・・コモンモードフィードバック回路

【特許請求の範囲】
【請求項1】
回路図内に含まれる複数のトランジスタのそれぞれの回路定数を、複数のパラメータを含んだ制約式に基づいて算出する第1の手段と、前記第1の手段で算出された回路定数が反映された状態の前記回路図に対して電気的特性の算出を行う第2の手段と、前記第2の手段での電気的特性の算出結果が予め定められた設計仕様を満たすようになるまで、前記複数のパラメータへの代入値を変更しながら前記第1の手段と前記第2の手段での処理をループさせる第3の手段とを有するコンピュータシステムを用いた半導体装置の設計システムにおいて、
前記コンピュータシステムは、前記複数のパラメータの中に含まれる前記複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませる第4の手段を備えて成ることを特徴とする半導体装置の設計システム。
【請求項2】
前記回路図は、増幅回路および前記増幅回路のバイアスを設定する電流源または電圧源を含み、
前記第1の手段は、前記回路定数の算出に加えて、前記電流源または前記電圧源の値を選択し、
前記第2の手段は、前記第1の手段での前記回路定数および前記電流源または前記電圧源の値が反映された状態の前記回路図に対して電気的特性の算出を行い、
前記第3の手段は、前記第2の手段での電気的特性の算出結果が前記設計仕様を満たさない場合に、前記電流源または前記電圧源の値を変更しながら前記第1の手段と前記第2の手段での処理をループさせ、
前記第4の手段は前記複数のパラメータの中に含まれる前記複数のトランジスタの一つである基準トランジスタを比較対象とした電流比を表す第1パラメータに、前記複数のトランジスタ間の接続関係に基づいてキルヒホッフの電流則を反映する制約条件を前記回路図から抽出して含ませることを特徴とする請求項1記載の半導体装置の設計システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−81552(P2011−81552A)
【公開日】平成23年4月21日(2011.4.21)
【国際特許分類】
【出願番号】特願2009−232534(P2009−232534)
【出願日】平成21年10月6日(2009.10.6)
【出願人】(504071384)株式会社ジーダット (8)
【Fターム(参考)】