Comments
Description
Transcript
GoldenGate ワークショップ
GoldenGate ワークショップ 2009年2月 GoldenGate 4-3-0を使用 1 GoldenGateワークショップの概要 このワークショップは、RFICデザインの経験はあるが、GoldenGateを使用したことが ない方を対象にしています。ここでは、GoldenGateシミュレーション/ポストプロセッシング テクノロジーをRFICデザインフローで使用する方法を示します。これらのシミュレーション結 果を見れば、GoldenGateの使い方を学んで使用することにより、より良いデザインをより効率 的に作成できます。 このワークショップのシミュレーションは、802.11bトランシーバICのレシーバ/トラ ンシーバセクションの各ブロックと、レシーバ/トランシーバ全体を対象としています。何種 類かのシミュレータと、さまざまなシミュレーション手法を詳しく紹介しているので、このワ ークショップで提供されるデザインデータベースを利用してこれらを使いこなすことができま す。紹介するシミュレーションには、VCO、プリスケーラ、受信ミキサ、LNA、パワーアンプ があります。Extracted Viewとモンテカルロシミュレーションについても扱います。 トランシーバ全体のブロック図 目次 GoldenGateワークショップの概要 .........................................................................................................2 1) LNAのシミュレーション .....................................................................................................................5 DCバイアス情報の取得 ............................................................................................................................................ 5 Sパラメータ、有能利得、雑音円のシミュレーション......................................................................................11 LNAのDCバイアス情報の取得 ..............................................................................................................................26 2 LNAのSパラメータとNFのシミュレーション ....................................................................................................26 パワーと電圧の1 dB利得圧縮ポイントのシミュレーション ............................................................................30 Virtual Test Benchを使用したWLAN信号のシミュレーションと雑音によるEVMの悪化の観察 ...............38 ブロッカ信号によるEVMの劣化 ...........................................................................................................................46 Job Managerを使用した複数のシミュレーションの開始と単一ADEセッションの結果の選択..................48 コーナー解析の実行 ...............................................................................................................................................49 2) ダウンコンバージョンミキサのシミュレーション.........................................................................51 ミキサのNFのシミュレーション ..........................................................................................................................51 ミキサのIP3シミュレーション..............................................................................................................................55 ミキサの変換利得圧縮のシミュレーション ........................................................................................................57 ミキサの2次相互変調歪み(IM2)のシミュレーション ...................................................................................63 3) VCOのシミュレーション ...................................................................................................................68 MomentumによるVCOのスパイラルインダクタのシミュレーション ............................................................68 VCOのスパイラルインダクタのMomentumモデルのL値、R値、Q値の計算 ................................................81 回路が不安定であることの確認............................................................................................................................84 発振周波数/振幅の調整........................................................................................................................................86 位相雑音のシミュレーション................................................................................................................................90 4) VCOとプリスケーラを組み合わせた場合のシミュレーション .....................................................94 雑音なしの場合のシミュレーション....................................................................................................................94 VCOおよびプリスケーラ(ディバイダ)の位相雑音のシミュレーション.....................................................99 位相雑音シミュレーションに基づいた雑音相関ファイルの作成 ..................................................................102 任意の位相雑音プロファイルを持つ雑音相関ファイルの使用 ......................................................................104 5) LNAとミキサを組み合わせた場合のシミュレーション.............................................................. 106 LNAとミキサを組み合わせ場合のNFのシミュレーション.............................................................................106 VCOとプリスケーラを使用してLOを発生させて、LNAとミキサを組み合わせた回路のNFをシミュレー ション .....................................................................................................................................................................108 LNAとミキサを組み合わせた場合のIP3のシミュレーション ........................................................................111 LNAとミキサを組み合わせた場合の利得圧縮のシミュレーション ..............................................................113 Jivaro for GoldenGateを使用した、Extracted Viewネットリストのサイズの縮小 ...................................115 LNAとミキサを組み合わせた場合のExtracted ViewによるNFおよび変換利得のシミュレーション(モ ンテカルロを含む) .............................................................................................................................................117 6) レシーバのシミュレーション......................................................................................................... 123 NFと変換利得のシミュレーション ....................................................................................................................123 レシーバのブロッカシミュレーション..............................................................................................................127 7)変調信号の作成 .............................................................................................................................. 129 8)トランスミッタのシミュレーション............................................................................................ 136 ベースバンドチェーンの周波数応答のシミュレーション ..............................................................................136 デジタルステートファイルを使用した、ベースバンドチェーンの制御電圧の設定........................................137 3 正弦波を使った送信チェーンの利得圧縮と歪みのシミュレーション...........................................................144 無線LAN入力信号を使った送信チェーンのシミュレーション ......................................................................149 9) パワーアンプのシミュレーション................................................................................................. 157 ロードプルシミュレーションの実行..................................................................................................................157 ソースプルシミュレーションの実行..................................................................................................................161 1 dB利得圧縮ポイントでのロードプルシミュレーションの実行 ..................................................................162 パワーアンプの1トーン利得圧縮と電力付加効率............................................................................................163 パワーアンプの2トーン、パワー掃引IP3、利得圧縮、電力付加効率 ..........................................................167 無線LAN入力信号を使ったパワーアンプのシミュレーション ......................................................................169 パワーアンプのExtracted Viewのシミュレーション.......................................................................................175 ワークショップのまとめ..................................................................................................................... 177 付録:ワークショップデータベース内のセルおよびステートとその内容.................................... 178 ワークショップのデータベースの構成およびシミュレーションの実行方法に関する注意 ワークショップを展開すると、次のディレクトリ構造ができます。 ~/RFIC_FlowWorkshopGGr6/design ~/RFIC_FlowWorkshopGGr6/share cdを実行してdesignディレクトリに移動し、setupGG.kshファイルを編集します(Kシェルを 実行していると仮定します)。ほとんどの場合、WS_HOME、FLOW、CDS_INST_DIR、 HPEESOF_DIR、XPEDION、CDS_LIC_FILE、AGILEESOFD_LICENSE_FILEを定義する 行を編集する必要があります。Cシェルを実行している場合は、setup.cshファイル内で同様の 編集を実行する必要があります。 Kシェルを使用してCadenceを開始するには、designディレクトリ内からsetupGG.kshファイ ルを読み込みます。 . ./setupGG.ksh (最初のピリオドが必要です。最初のピリオドと2番目のピリオドの間 にはスペースがあります)。 icfb& Cシェルを使用する場合は、対応するコマンドを使用してsetup.cshファイルを読み込みます。 .cdsinitファイルを必ずしも編集する必要はありませんが、調べてみるのも面白いかもしれませ ん。 Library Managerを使ってデザインを開くのが最も簡単な方法です。シミュレーション対象の デザインはRFIC_Workshop_Sims Libraryにあります。Show Categoriesを選択すると、シミ ュレーションセットアップの構成方法が表示されます。また、各シミュレーションのアーティ ストステートが、artist_statesディレクトリではなく、対応するschematicセルビューを用いて 保存されています。 4 1) LNAのシミュレーション このセクションでは、LNAのさまざまなシミュレーションを紹介します。DCバイアス点、利得 圧縮、Sパラメータ、NF、IP3シミュレーションおよび、表示方法を示します。 DCバイアス情報の取得 このセクションでは、DCシミュレーションをセットアップして実行し、結果をスケマティック 上に表示する方法を示します。DCバイアス電圧およびデバイス動作点を確認するには、7種類 の方法があります。DCシミュレーションを実行して、DCバイアス電圧とデバイスパラメータ 値(ドレイン電流、VGS、VDS、gmなど)をスケマティックにバックアノテートすることもで きます。DC動作点情報をすべてデータベースに保存し、データディスプレイで表示することも できます。DCデータをPSFフォーマットで保存し、Results Browserを使って表示することも 可能です。保存するDCバイアス情報の量を選択することもできます。 RFIC_Workshop_Simsライブラリ、LNAカテゴリのLNA_NF_Investスケマティックを開きま す。このスケマティックは、差動LNAの半分で、入力整合回路がありません。後でこのスケマ ティックを使用して、最小NFを実現するのに最適な信号源インピーダンスを決定します。 5 LNAアクティブデバイスのシミュレーション用のLNA_NF_Investスケマティック Library ManagerからLab1_LNA_Invest_DCビューをロードします。これにより、Analog Design Environmentウィンドウが開き、DCシミュレーション実行用のステートがロードされ ます。(Analog Design Environmentウィンドウを最初に開くことにより、ステートをロード することもできます。次に、Session > Load Stateを選択し、Load State Optionの隣の CellViewを選択します)。右上コーナにSimulator:GoldenGateと表示されることに注意して ください。これは.cdsinitファイル内の1行で設定されています。 6 Lab1_LNA_Invest_DCをロードした後のアナログデザイン環境 Analog Design Environmentウィンドウで、Setup > Model Libraries...を選択すると、モデル ライブラリセットアップにgpdk.scsがあることが示されます。 モデルライブラリの定義 gpdk.scsファイルは$FLOW/share/gpdk180/models/spectreにあり、コーナ/統計解析の実 行のためのデバイスモデルのセクションを定義するファイルです。このディレクトリは、 Include Path(Setup > Simulation Files...)で定義されています。 7 ファイル検索のためのInclude Pathの定義 Switch View ListとStop View ListにGoldenGateが表示されます。 Switch View ListとStop View List 8 DCシミュレーションの設定はデフォルト設定だけです。シミュレーションの実行には数秒しか かからず、全DC消費電力が約24.9 mWであることが示されます。 シミュレーションの後、Results > Annotate > DC Node Voltagesを選択すると、ノード電圧が トップレベルスケマティック上に表示されます。G1LNA_biasサブ回路内に表示されたノード 電圧を表示するには、サブ回路を選択して、(スケマティックウィンドウで) Design > Hierarchy > Descend Edit...を選択します。その後、(Analog Design Environment ウィンドウで)Results > Annotate > DC Operating Points選択すると、デバイスの動作点が 表示されます。 DCバイアス電圧とデバイス動作点 DCバックアノテーションデータをpsfまたはテキストファイルに保存することもできます。こ のためには、Analog Design Environmentウィンドウで、Outputs > Save Options...を選択し ます。 表示されるダイアログで、データ保存の方法と保存するデータの種類に関するオプショ ンを選択できます。Save Device Infoを選択します。 9 DCデータの保存方法と保存するデータの種類の指定 Environment OptionsウィンドウのResults Typeの隣のpsfが選択されていることを確認する 必要があります。選択されていないと、psfの結果が表示されません。 保存するpsfデータの指定 その後、Tools > Results Browser...の下のResults Browserを使って、保存したデータを読み 込むことができます。 Results Browser Results Browserで、opBeginを右クリックし、Tableを選択して、動作点情報を表示します。 10 デバイス動作点情報の表 Sパラメータ、有能利得、雑音円のシミュレーション このセクションでは、LNAのアクティブデバイスのSパラメータ、有能利得、雑音円をシミュ レートして、最小NFを実現する最適信号源インピーダンスを決定します。 同じLNA_NF_Investスケマティックが開いている状態で、Lab1_LNA_Invest_SPステートを開 きます。これには、Sパラメータ解析対周波数に加えて、2ポートノイズパラメータの計算が含 まれています。 11 Sパラメータシミュレーションセットアップ シミュレーションを実行します。 かかる時間はわずか10秒以下です。Cadence AWDを使用し て結果をプロットするには、Session > Options …のAWDが選択されていることを確認します (WaveScanを使用する場合を除く)。 使用する波形ツールの指定 12 Results > GoldenGate Results > LNA_NF_Invest_SPを選択して、S-Parameter Resultsウィ ンドウを表示します。 S-Parameter Resultsウィンドウ Plot ModeをCreateに設定して、dB(S21)のプロットを作成します。 13 dB(S21)プロット こ れ に よ り 、 入 力 整 合 回 路 を 含 め る 前 の 利 得 の 周 波 数 応 答 が す ぐ に 表 示 さ れ ま す 。 SParameter Resultsウィンドウで、Post Processを選択し、Circlesの下のNFCを選択します。 次に、NF Constantフィールドに値を入力し、周波数を選択して、Plotをクリックします。 14 NF円をプロットするためのダイアログ NF Constantに新しい値を入力し、Plot ModeをAppendに変更して、Plotをクリックすること により、円を追加することもできます。GACを選択し、同様の手順を用いることにより、有能 利得円を作成することもできます。 15 NF (1.05および1.1 dB) と有能利得 (21および22 dB) 円 次に、データディスプレイを使用してこの情報をプロットします。これは、ADSやRFDEと同 じです。データディスプレイを使用するには、シミュレータでデータセットを作成する必要が あります。シミュレーションを実行する前に、Setup > Environment …の下のResults Typeの 隣のData Display File (.ds)を選択すると、シミュレータはデータセットを作成します。データ セットとは、シミュレーションの結果を記録したバイナリファイルです。データセットファイ ルの内容を、プロット、リストカラムなどに表示するためには、データディスプレイファイル が使用されます。データディスプレイファイルはまた、データのさまざまなポストプロセッシ ングにも用いられます。シミュレーションを実行した後、Results > ADS Data Display …を選 択します。 16 デフォルトデータセット名 最初のデータディスプレイウィンドウ 元のデフォルトのデータセットはLNA_NF_Invest_DCでしたが、Sパラメータをプロットする ので、LNA_NF_Invest_SPデータセットを選択しました。 デフォルトデータセットウィンドウでのデータセット名の選択 直交座標グラフのアイコンをクリックし、右側の空白部分にカーソルを移動します。 直交座標プロットの挿入 17 空白部分でクリックするとプロットが固定され、Plot Traces & Attributesダイアログが開きま す。 プロットするデータの選択 >>Add>>をクリックすると、Complex Data!ダイアログが開き、データの処理方法を尋ねられ ます。 複素数データの処理 dB()関数を使用したいので、OKをクリックして、Plot Traces & Attributesに再度戻ります。 18 dB(S(2,1))の最初のプロット View Allを選択すると、プロットがウィンドウ全体に表示されます。 View All を使用したプロットの表示可能領域全体表示 19 NFなどの別のトレースをプロットに追加するには、プロット内の適当な場所(トレース以外) を右クリックして、Item Options…を選択します(または、プロットをダブルクリックしま す)。 プロットのItem Options…メニュー 前のPlot Traces & Attributesダイアログが表示されます。次に、nf(2)を選択します。これは ポート2(ほとんどの場合、出力ポート)に対するNFです。>>Add>>をクリックします。 NF挿入後のデータディスプレイ NFトレースを右側Y軸に移動すると、分解能が向上します。このためには、NFトレースをダブ ルクリックします。Trace Optionsダイアログが開きます。 20 Trace Optionsダイアログ Plot Axesを選択して、Y軸を左から右に移動します。 トレースの右側Y軸の選択 NFスケールの分解能が高くなっています 次に、式を使ってS21応答の3 dB帯域幅を計算します。データディスプレイウィンドウの左側 にあるEqnアイコンをクリックし、カーソルを右側に移動して、プロットの下をクリックしま す。Enter Equationダイアログが開きます。 21 式入力のためのダイアログボックス Enter equation hereフィールドに次のように入力します。 Bandwidth=bandwidth_func(dB(S21),3) この関数は、応答の帯域幅を計算します。この関数はドキュメントに記載されていて、第1引 数がデータ、第2引数がdB数値、第3引数(オプション)が応答のタイプ(0 - バンドパス(デ フォルト)、1 - バンドストップ、2 - ローパス、3 - ハイパス)を表します。 計算されたBandwidthの結果を表示するには、リストカラムを使用します。Listアイコンをク リックし、データディスプレイウィンドウ内部をクリックして、ウィンドウにリストカラムを 配置します。 リストカラムをプロットするアイコン Plot Traces & Attributesダイアログが開き、表示する内容を選択できます。Datasets and Equationsの下の下矢印をクリックし、Equationsを選択します。 データセット名から式への切り替え これにより、データディスプレイウィンドウに入力した式だけが、このフィールドの下のリス トに表示されます。 22 Bandwidth式をリストに表示するために選択 >>Add>>をクリックして、Bandwidth式を右側のTracesの下のフィールドに追加します。計算 された帯域幅がリストカラムに表示されます。 Bandwidth式と計算結果 リストカラムの空白部分をダブルクリックすると、Plot Traces & Attributesダイアログが表示 されます。Plot Optionsタブを選択します。Formatの下でEngineeringを選択します。OKを クリックして、数値表示のフォーマットを変更します。 フォーマットをEngineeringに変更した結果 データディスプレイテンプレートから雑音円と利得円をプロットすることもできます。新しい データディスプレイウィンドウを開くか、Page > New Pageを選択して既存のデータディスプ レイファイルに新しいページを作成します。Insert > Template…を選択します。Component Library/Template Browserダイアログが開きます。 データディスプレイテンプレートブラウザ 23 DDS Templatesの下のProductカテゴリに、GoldenGate Tools 4-3-0に付属しているテンプレ ートのリストが表示されています。Sパラメータおよび雑音シミュレーションの結果をさまざ まなフォーマットで表示するテンプレートや、さまざまなCRシミュレーションの結果を表示す るテンプレートがあります。Circles_Ga_NFを選択してOKをクリックします。 有能利得および雑音指数のテンプレート 有能利得および雑音指数を表示する、上図のテンプレートが表示されます。RF Frequency Selectorの下のマーカを移動すると、円がすべて更新されます。これらのプロットを自分で最 初から作成するよりも、テンプレートを使った方が時間と労力を大幅に節約できます。任意の データディスプレイファイルから独自のテンプレートを作成するには、File > Save As Template…を選択します。作成したテンプレートは、Template Browserの下のUserカテゴリ に表示されます。 これとは別に、これらの円が作成されたデータディスプレイファイルLNA_NF_Investが保存さ れています。File > Openを選択し、LNA_NF_Invest.dds、Openと続けてクリックします。 24 雑音円、有能利得円、安定円 円は、m2マーカを移動して選択した周波数と一致します。マーカm2は、0∼25の範囲の整数 (Y軸値)、シミュレートした周波数当たり1つの値(X軸値)のトレース上にあります。 ns_circle() 関 数 の 最 初 の 要 素 は 、 プ ロ ッ ト す る 各 NF 円 の 値 を 表 し ま す 。 NFmin[m2]+[0.001,0.1,0.2,0.3,0.4]のシンタックスは、(マーカm2で指定した周波数で)最小 NF+0.001 dB(単なる単一ピクセルではなく、円が表示されるように、この値が使用されてい ます)、+0.1 dB、+0.2 dBなどを実現する円を指定します。NFmin[m2]のリストカラムを挿 入して、m2マーカ周波数で最小NFを実現します。 ns_circle()関数のNFmin[m2]+[0.001,0.1,0.2,0.3,0.4]のシンタックスを[1.05, 1.15, 1.25]に置き 換えます。これらのNF値の雑音円だけが描かれます。最小NFが1.05より大きい場合は、対応す る雑音円は描かれません。 このデータディスプレイファイルを保存する場合は、File > Saveを選択します。これらのシミ ュレーション結果を表示して必要に応じて調べるために、別の同様のデータディスプレイ LNA_NF_InvestMoreDataがすでに作成されています。データディスプレイファイルを保存/ 再利用して、自分(または他の人の)以前の作業を簡単に活用することもできます。 25 LNAのDCバイアス情報の取得 上述のLNAの一部のDCバイアスポイントをシミュレートするのと同じ手順で、LNA全体をシミ ュレートすることができます。完成したLNAでDCシミュレーションを実行することもできます。 これには、sim_G1LNA_wMomIndsスケマティックを開くことによって得られたスパイラルイ ンダクタのMomentumモデルを使用した入力整合回路が含まれています。Lab1_DCステート をロードして、上述の結果のDCシミュレーションおよび表示を再現することもできます。 LNAのSパラメータとNFのシミュレーション 同じsim_G1LNA_wMomIndsスケマティックを使用して、Analog Design Environmentウィン ドウを開き、Lab1_Linear_Gain_NFステートをロードします。SP解析を有効にし、他の解析 を無効にします。Sパラメータ解析フォームを開きます。 Sパラメータ解析フォーム 26 入力信号源の周波数が、シミュレータの内部変数freqを使用して掃引されます。Compute Noiseが選択され、Input PortとOutput Portが入力されます。データはシミュレーション終了 後に解析できるので、Performancesは入力する必要はありません。ただし、ここには、既定義 の利得とNFの計算値が示されています。Performancesの隣のEdit…をクリックすると、 Performance Editorダイアログボックスが表示されます。 Performance Editorを使用した利得性能の定義 Analysis Specificフィールドには、指定した解析タイプに固有の関数が表示されています。自 分が作った関数を保存して他のシミュレーションセットアップで使用することもできます。関 数はGlobal Performancesの下に表示されます。シミュレーションを実行すると、これらの関 数の処理結果は出力ログに記録されます。結果が妥当かどうかがすぐにわかるので、これは特 に、長いシミュレーションの実行時に便利です。 Simulation > Netlist and Runでシミュレーションを実行後、Results > GoldenGate Results … > sim_G1LNA_wMomInds_SPを選択します。S-Parameter Resultsダイアログが開きます。 ここから結果をプロットすることができます。この利得とNFのプロットを作成できるかどうか を確認します。 27 LNAの利得とNF データディスプレイを使用して、これらのプロットを作成できるかどうかを確認します。 結果の簡単なデータディスプレイへのプロット 全雑音に最も大きく寄与するデバイスがどれかを知るにはどうしたらよいでしょう か?Choosing Analyses Fromで、Compute NCTを選択します。 雑音寄与表を計算するための指定 28 Choosing Analysesフォームの下部のOptionsを選択して、S-Parameter Optionsフォームを開 きます。Noise OptionsのDevice Contributionsで、雑音寄与計算に含めるデバイスまたはデ バイスのタイプを指定できます。 雑音寄与表のオプションの指定 各ダイアログボックスでOKを選択し、シミュレーションを実行します。雑音寄与計算を実行す ると、シミュレーション速度がわずかに低下します。シミュレーションが終了した後、結果を Wavescan ま た は AWD に 表 示 す る 場 合 は 、 Results > GoldenGate Results...> sim_G1LNA_wMomInds_SP Analysis Resultsを選択します。これを使って、雑音寄与の結果 を表示します。表示されたS-Parameter ResultsウィンドウのNoiseの中で、NCTが表示される まで下にスクロールします。これを選択し、Table Modeの隣のCreateを選択します。Tableを クリックすると、雑音寄与表が表示されます。 雑音寄与表 freq:2.60Gが 表 示さ れるま で表 を下に スク ロール する と、雑 音の 大部分 が I6.NM0お よび I6.NM10からの寄与であることがわかります。 29 パワーと電圧の1 dB利得圧縮ポイントのシミュレーション 同 じ sim_G1LNA_wMomInds ス ケ マ テ ィ ッ ク を 使 用 し て 、 LNA の 利 得 圧 縮 を 調 べ ま す 。 Analog Design Environmentウィンドウを開いて、Lab1_GainCompステートをロードします。 これには利得圧縮(GC)シミュレーションが設定されています。 利得圧縮解析フォーム 30 F_RFは入力信号源の周波数であり、シミュレーションで考慮される高調波の個数は7(+ DC)です。このシミュレーションでは、入力信号源(/PORT0)と出力プローブ(/PORT1) を指定します。 出力プローブは信号が定義されていないanalogLibポートなので、実際には終 端として動作します。ndB Compフィールドは1に設定され、シミュレータが1 dB利得圧縮ポイ ントを探索することを示しています。最小と最大入力パワーレベルを指定する必要があります。 前者で増幅器はリニア動作していると仮定され、後者で増幅器は1 dBを超える圧縮が生じるま でドライブされると仮定されます(最大値を−20に設定するとどうなるか確認してください)。 回路特性(Performance)は各解析に専用の関数を使って計算されます。Performance Editor を開くには、Performancesの隣のEdit…を選択します。この例では、gc.gain(1,0,0)関数がリ ニアパワー利得をdB単位で返し、gc.value(1,0,0)関数が1 dB利得圧縮ポイントでの出力パワー をdBm単位で返します。(1,0,0)という表記は、解析のトーン1の最初の高調波(基本波)のパ ワーを求めることを表します。 利得圧縮シミュレーションで得られる性能(測定)の指定 GoldenGateは、実行するシミュレーションのタイプを認識していて、実行する解析のタイプに 応じた関数をAnalysis Specificフィールドに表示します。これらの関数は、GoldenGateのイン ストールディレクトリの下のdoc/ディレクトリにあるGoldenGate User Guide gg_ug.pdfファ イルで説明されています。 31 Performance EditorとChoosing Analysesダイアログを閉じます。シミュレーションを実行し ます。goldengate.outウィンドウが開き、シミュレーションの進行とともに情報を表示します。 シミュレーションが終了すると、Performanceの計算結果がこのウィンドウに出力されます。 シミュレーション出力ログへのPerformance計算結果の表示 パラメータを掃引する場合は、計算結果の逐次出力は、特に長いシミュレーションの際に非常 に便利です。これを見れば、セットアップに問題がないかどうかを確認できます。 シミュレーションにかかる時間は20秒以下です。シミュレーションが終了したら、(Analog Design Environment ウ ィ ン ド ウ で ) Results > GoldenGate Results ... > sim_G1LNA_wMomInds_GC Analysis Resultsを選択します。Gain Compression Analysis Resultsウィンドウが開きます。 利得圧縮解析の結果ウィンドウ これにより、InputSweep、Gain、CompressionPointの各データをプロットしたり、表でリ ストできます。Performanceを選択すると、シミュレーションセットアップで定義した3つの 性能を表示できます。Post ProcessのInputSweepを選択し、Plotをクリックします。これによ り、出力パワー対入力パワー(有効信号源パワー)のプロットが作成され、1 dB利得圧縮ポイ ントでの出力パワーと入力パワーが示されます。この図では、下のラインは実際の出力パワー、 上のラインは増幅器に利得圧縮がなかった場合の出力パワーを表します。 32 パワー掃引データと利得圧縮ポイント(ズームイン後) Gainもプロットします。 これにより、入力パワーの増加とともにパワー利得がどのようにロー ルオフするかが示されます。 GC解析でも、電圧と電流の利得圧縮が計算されます。しかし、通常はオンチップ電圧利得の方 が重要です。電圧利得圧縮を計算するには、Choosing AnalysesフォームのPower (dBm)を Voltage (dBV)に変更します。 電圧利得圧縮計算の指定 33 混 乱 を 避 け る た め に 、 Performances の 名 前 を 変 更 し て く だ さ い 。 例 え ば 、 Pavail_dBm_atGainCompPointで は な く Vin_dBVatGainCompPoint、 Pout_atGainCompPoint ではなくVout_atGainCompPointとそれぞれ名前を付けます。ただし、式の右側はそのままです。 シミュレーションを再実行すると、電圧利得圧縮データが作成されます。 電圧利得圧縮プロット(ズームイン後) 次に、増幅器の電圧利得とパワー利得を掃引入力パワーCR解析を使ってシミュレートする方法 を示します。CR("carrier"の略)解析は、ハーモニックバランス解析と同じです。 プロットウィンドウをすべて閉じ、Analog Design Environmentウィンドウに戻ります。 Lab1_Swept_Input_Power_HB ス テ ー ト を ロ ー ド し ま す 。 Carrier Analysis の Choosing Analysesダイアログボックスを開きます。これはGC解析に似ていますが、特定の利得圧縮ポ イントを探す代わりに、入力パワー変数pinを掃引し、電圧とパワー利得を計算する点が異なり ます。 34 CR解析フォーム 入力パワー変数を2つのレンジで掃引します。 入力パワーが小さいときは大きなステップ、増 幅器の圧縮に近いときは小さいステップにします。 Performancesの隣のEdit...をクリックして、Performance Editorを開きます。 35 CRシミュレーションで得られる性能(測定)の指定 GC解析の場合と同様に、各解析専用の関数または出力があります。PORT1(m,n,p)は、m、n、 pに入力した数値で指定される特定のミキシング周波数でポートに供給されるパワーを得るた めに用いられます。 式PowerGain_dB=w2dBm(PORT1.p(1, 0, 0))-pinは、入力から出力までのパワー利得をdB単 位で計算します。信号源パワーの指定に使用される掃引変数 pinが入力パワーとして使用され て い る の で 、 こ れ は ト ラ ン ス デ ュ ー サ パ ワ ー 利 得 で す 。 ( PowerGain_dB 式 を PowerGain_dB=w2dBm(PORT1.p(1, 0, 0))-w2dBm(PORT0.p(1,0,0))に変更した場合は、どう なるでしょうか?1)出力パワーは、(1,0,0)の組合わせで示されるように、トーン1の基本波周波 数での値です。w2dBm()関数はパワーをWからdBmに変換します。 VoltageGain_dB式は、入力ポートから出力ポートまでの電圧利得をdB単位で計算します。こ こで使用されるPORT0.vおよびPORT1.v関数は、指定された周波数インデックスでのこれらの ポートの電圧フェーザを返します(これに似ているPORT0.c関数は、ポートの電流フェーザを 返します。電流はポートから流れ出る方向が正です)。 シミュレーションを実行します。かかる時間は10秒以下です。goldengate.outログファイルに は、電圧およびパワー利得が掃引入力パワーpinの関数として示されます。 1 動作パワー利得が得られます。これは(負荷に供給されるパワー)/(回路へのパワー入力)です。この利得が異なる のは、通常、回路へのパワー入力が信号源から得られるパワーよりも小さいからです。 36 CR解析の出力ログ Results > GoldenGate Results > sim_G1LNA_wMomInds_CR Analysis Resultsコマンドを使 って、電圧利得対入力パワーを表示します。 このようなシミュレーション結果の表示は、Analog Design Environmentでも可能です。各解 析の結果はResults > GoldenGate Results > ...の下で得られ、さまざまなシミュレーションの 結果を同じプロットに表示できます。qWaveでは、各シミュレーションのデータをロードする ことにより、同じことができます。 シミュレーション後のネットまたはピンにおける波形をプロットするもう1つの方法として、ダ イレクトプロットがあります。シミュレーションの前に、ADEからOutputs > To Be Saved > Select On Schematicを選択します。次に、出力でPORT1に接続されたワイヤを強調表示しま す。 保存する出力ノードの選択後 シミュレーションをもう一度実行します。シミュレーションが終了したら、Results > Direct Plot > sim_G1LNA_wMomInds_CR (Signal)を選択します(ダイレクトプロットを使用したデ ータのプロットにはこれ以外のオプションもありますが、タイムドメイン信号のプロットから 最も有用な結果が得られます。これはこの例では、定常状態のハーモニックバランススペクト ラムから計算されます)。次に、PORT1に接続された同じnet11をクリックします。このノー ドでの定常状態波形が、各パワーレベルに対して1つずつ表示されます。 37 ダイレクトプロットからの出力波形 Virtual Test Benchを使用したWLAN信号のシミュレーションと雑音によるEVMの 悪化の観察 このセクションでは、Virtual Test Benchを使用してWLAN信号を発生し、増幅器のエラーベ クトル振幅(EVM)をシミュレートする方法を示します。信号パワーが雑音より十分大きい (ただし増幅器が圧縮に達するほどは大きくない)場合、EVMはほぼ0です。入力信号パワー を下げていくと、増幅器内部の雑音が相対的に大きくなり、EVMは悪化します。 同じsim_G1LNA_wMomIndsスケマティックを使用して、Lab1_WLAN_VTBステートをロー ドします。これにはエンベロープトランジェント解析が指定されています。Fundamental Frequencyは、Virtual Test Benchで指定された信号源およびシンク周波数と一致する必要が あります(周波数変換がない場合)。Number of Harmonicsは、CR解析の場合と同じ方法で 設定できます。 38 エンベロープトランジェント解析ダイアログ Modulation Signal Definitionの下でTime Domainを指定しているのは、シミュレーションの タイムステップを変調信号源に合わせて設定するためです。これは、Auto Stepを選択するこ とによって行われます。Stop Timeは、Virtual Test Benchに指定されたシンクが、指定され た測定を実行するために十分なデータを収集できる長さに設定する必要があります。この設定 が短すぎると、シミュレーションは失敗しますが、必要な最小のStop Timeが出力ログに記さ れます。シンクで必要なより長い時間に設定しても問題はありません。シンクが十分なデータ を収集すると、シミュレーションは自動的に停止するからです。Time Roundingの設定が意味 を持つのは、シンクによる計算に加えて他のポストプロセッシングを実行しようとしている場 合だけです。 シミュレーションに雑音を使用したいので、Compute Noiseを選択しています。 Virtual Test Benchは、Analog Design EnvironmentウィンドウのSetup > Virtual Test Bench …の下で指定されます。説明のためにWLAN 802.11b送信信号源を使用していますが、シミュ レートしているのはLNAです。この場合も、レシーバの性能指標としてEVMが使用できます。 EVM品質が低いと、ビットエラー比(BER)に問題があることがわかり、EVMの方がはるかに 短時間でシミュレートできるからです。 39 Virtual Test Benchの設定 スケマティックに対するRF信号源ノードとRFシンクノードを選択する必要があります。シン クはスケマティックに負荷を与えませんが、信号源にはインピーダンスがあり、スケマティッ クに負荷を与えます。信号源インピーダンスとその他のパラメータは、Source Parametersタ ブで指定します。通常は、Carrier FrequencyをEnvelope AnalysisダイアログのFundamental Frequencyと同じ値に設定します。 40 Virtual Test Benchの信号源パラメータの指定 Sink Parametersタブでは、実行したい測定と個々の測定パラメータを指定します。 Virtual Test Benchのシンクパラメータの指定 LNAの入力に接続された信号源を実質的に除去するために、信号源の50 ΩとVirtual Test Bench信号源の50 Ωの両方で入力に負荷を与えるのではなく、バーチャル信号源に1 GΩの抵 抗を使用して大きな負荷を与えます(実質的にオープンになります)。ブロッキング信号の効 果を観察したい場合は、オフセット周波数が異なる別の正弦波トーンを入力に供給することも できます。 41 バーチャル信号源を使用してPORT0信号源を高インピーダンスに置き換えることにより、 回路から実質的に除去 シミュレーションを実行します。シミュレーションは10秒以下で終了し、データディスプレイ が自動的に開いて、要求した測定、例えばEVM、出力スペクトラム、CCDF(相補累積分布関 数)などが表示されます。出力スペクトラムは、有限のノイズフロアを除いてほぼ理想的です。 増幅器の出力スペクトラム 42 この自動的に作成されたデータディスプレイは、保存しておくことをお勧めします。保存しな かった場合は、これを閉じてCadenceを終了すると、再び作成するために、もう一度シミュレ ーションを実行するか、各テンプレートを手動で挿入する必要があります。 有効信号源パワーpinを−75 dBmに設定した後、シミュレーションを再実行します。結果の比 較を容易にするために、結果を別のデータセットに保存します。Analog Design Environment ウィンドウで、Setup > Environment …の下のPrepend Result Name With:の下で、User Nameを選択し、m75(「マイナス75」を表す)と入力します。もちろん、このフィールドに は何を入力してもかまいません。シミュレーションを再実行します。新しいデータディスプレ イが自動的に開き、sim_G1LNA_wMomInds_m75_ET.ptolemySinkデータセットからの結果 が表示されます。スペクトラムを見ると、ノイズフロアが信号に対してかなり高くなっている ことがわかります。 入力パワーを−75 dBmに下げた後の増幅器出力スペクトラム コンスタレーションダイアグラムには雑音が大幅に増えています。元のコンスタレーションは、 2つの式を挿入することによってプロットされます。1つめは、Yの値をXの値に対してプロット するものです。 43 元のデータセットからのデータに対する式の入力。下矢印を使って、 挿入するデータの元になるデータセットを選択。 データセットを選択した後、PSDU_Constellationデータを選択し、<<Insert<<をクリックし ます。 式に使用するデータの選択 データを式に挿入して“)”を追加した後 同様に、Xの式を作成します。この場合、imag()の代わりにreal()関数を使用します。 Y対Xをプロットして元のシミュレーションからのコンスタレーションを作成 下図の左のプロットは、右側のプロットをコピーして、トレース式をvs(Y,X)に変更することに よって作成されています。プロットのタイトルも編集されています。 44 コンスタレーションダイアグラムの悪化を示す比較 EVMは、ほぼ0 %から約6 %に悪化しています。入力パワーを−85 dBmに下げて、シミュレー ションを再実行してみてください。 入力パワー=−75 dBmで計算されたEVM 45 ブロッカ信号によるEVMの劣化 LNAの入力に不要な干渉信号(ブロッカ)があると、性能が低下します。このシミュレーショ ンは、ブロッカによるEVMの悪化を示します。このシミュレーションは上記のVirtual Test Benchとほとんど同じですが、スケマティックの入力ポートを1 GΩの抵抗に置き換える代わり に、1つまたは複数の正弦波を使用してブロッカ信号をモデリングします。 同じsim_G1LNA_wMomIndsスケマティックを使用して、Lab1_WLAN_VTB_wBlockerステ ートをロードします。Vir Srcボタンをクリックして、Virtual Source Editorを起動します。 バーチャル信号源・エディタによるブロッカ正弦波の定義 ブロッカのパワーとオフセット周波数は、デザイン変数によって定義されます。シミュレーシ ョンを実行します。かかる時間は1分以下です。出力スペクトラムにはブロッカ信号がクリア に示されます。 46 ブロッカ信号があるLNA出力スペクトラム コンスタレーションダイアグラムには悪化が見られ、EVMは約8 %です。 ブロッカ信号によって劣化したコンスタレーション 47 Job Managerを使用した複数のシミュレーションの開始と単一ADEセッションの 結果の選択 Job Managerを使用すると、複数のシミュレーションを同時に開始できます。このため、前に 開始した長いシミュレーションが完了するのを待たずに、シミュレーションを実行し続けるこ とができます。デバイスモデルの限界条件、温度、バイアス電圧、フィルタ帯域幅、利得設定 などの、さまざまな条件で、複数のタイプの解析を連続して(または、複数のCPUにアクセス できる場合は並行して)実行できます。 Job Managerは常に現在のステートを実行するので、実行するジョブごとに異なるステートを 作成する必要があります。シミュレートするスケマティックのステートをロードし、ジョブに 名前を付けてから、シミュレーションを開始します。次のステートをロードし、次の対応する ジョブに名前を付け、次のシミュレーションを開始します。各ジョブの結果は個別に保存され ます。このセクションでは、非常に簡単な例について説明します。 こ の セ ク シ ョ ン の sim_G1LNA_wMomInds ス ケ マ テ ィ ッ ク を 使 用 し て 、 Lab1_Linear_Gain_NF ス テ ー ト を ロ ー ド し ま す 。 Job Manager を ク リ ッ ク し て 、 Job Managerを開きます。 アナログデザイン環境のJob Managerボタン 図のようにジョブの名前を入力します。 ジョブの名前の入力 Addを押してジョブを強調表示し、Simulation > Netlist and Runをクリックしてシミュレーシ ョンを開始します。 48 最初のジョブを強調表示して、開始 このジョブが開始したら、別のステート(例えば、Lab1_Swept_Input_Power_HB)をロード し、対応するジョブを定義して、開始することができます。Results > GoldenGate Results … を選択すると、最後に実行したJob Manager以外のシミュレーションに加えて、ジョブ結果の メニュー選択が表示されます。 表示するJob Managerの結果の選択 前と同じように、これらのシミュレーションの結果を表示できます。 コーナー解析の実行 コ ー ナ ー 解 析 を 実 行 す る に は 、 い く つ か の 方 法 が あ り ま す 。 Cadence Corners ツ ー ル (Virtuoso Analog Corners Analysis)を実行するライセンスがある場合は、このツールを GoldenGateシミュレーションで使用できます。また、QMCC(Q Multi-Controller Cockpit) を使って、Cadence Cornersツールを並列コアで実行することもできます(QMCCについては 次の章のミキサのモンテカルロ解析で説明します)。 上で説明したように、Job Managerを使用してコーナー解析を実行できます。各コーナーに対 して異なるステートを定義する必要があります。 スクリプトを使用してJob Managerを実行すると、手動セットアップの時間を大幅に節約でき ます。designディレクトリには、LNA_CornersScriptJM.logというファイルがあります。この ファイルには、スケマティックを開き、ステートをロードし、ジョブ名を定義し、ジョブを実 行するSkillコマンドのリストが記録されています。スクリプトを実行する前に、シミュレート する各コーナー条件に対応するステートを定義する必要があります。スクリプトは、 sim_G1LNA_wMomInds ス ケ マ テ ィ ッ ク に 関 連 す る 5 つ の 異 な る ス テ ー ト 、 す な わ ち Lab1_Linear_Gain_NF、Lab1_Linear_Gain_NF_FF、Lab1_Linear_Gain_FSなどをロードし ます。Lab1_Linear_Gain_NF_FFステートは公称ステートに似ていますが、Model Library Setup で FF セ ク シ ョ ン を 持 つ gpdk.scs が 使 用 さ れ て い て 、 vdd が 3.5 V で 、 Setup > Temperature…の下で温度が0 ℃に設定されている点が異なります。 49 解析温度の指定 スクリプトを実行するために、Cadenceを終了し、designディレクトリで次のように入力しま す。./RunCornersScriptJM.sh このシェルファイルは、次のような行でジョブディレクトリを削除します。 rm –rf ./simulation/sim_G1LNA_wMomInds/GoldenGate/Linear_Gain_Nom.job その後、次の行でスクリプトを実行します。 icms –log error_LNA_CornersJM.log –replay ./LNA_CornersScriptJM.log スクリプトの実行には数分間かかります。実行が終了したら、icfb&コマンドでCadenceを再起 動し、sim_G1LNA_wMomIndsスケマティックを開き、ステートをロードして、各ジョブの結 果を参照します。結果の参照と表示にはqWaveを使うのが最も簡単です。 もう1つの方法として、別のスクリプトLNA_CornersScript.logを実行することもできます。こ れはJob Managerを使用しません。このスクリプトは、公称ステートを開き、シミュレーショ ンを実行し、gpdk.scsモデルセクションをFFに変更し、vddデザイン変数を3.5に変更し、温度 を0 ℃に変更し、作成されたデータセットファイル名に“FF”を追加し、シミュレーションを実 行します。次に、モデルセクション名をFSに変更し、同様の変更をシミュレーションセットア ップに加えて、次のコーナーを実行します。これが、合計4つのコーナーと公称条件に対して 実行されます。 スクリプトを実行するために、Cadenceを終了し、designディレクトリで次のように入力しま す。./RunCornersScript.shシミュレーションの実行には数分間かかります。実行が終了した ら、designディレクトリでddsと入力して、データディスプレイを起動します。初期状態の空 白 の デ ー タ デ ィ ス プ レ イ ウ ィ ン ド ウ が 開 い た ら 、 File > Open… を 選 択 し 、 simulation/sim_G1LNA_wMomInds/GoldenGate/schematic/CornersTest.ddsファイルを開 きます。 この方法の利点の1つは、解析の再実行が非常に容易であり、コーナー条件の変更も比較的容 易であることです。 50 もう1つのコーナー解析方法によるシミュレーション結果 2) ダウンコンバージョンミキサのシミュレーション ミキサのNFのシミュレーション 次に、受信ミキサのNF、変換利得、IP3をシミュレートします。sim_G2MixGGスケマティッ クを開きます。 51 レシーバミキサのNFと変換利得のシミュレーション これはGilbert Cellミキサのシミュレーションで、理想的なバランと正弦波信号源を使ってLO信 号が供給されています。バランが必要なのは、正弦波信号に加えてDCを供給するためです。 Analog Design Environmentウィンドウを開いて、Lab2_NF_Gainステートをロードします。 これは、信号源/負荷抵抗、LO周波数、RF周波数、LO信号パラメータを設定します。RF周波 数の入力ポートからベースバンド周波数の出力ポートまでのNFと変換利得を計算するために、 小信号雑音解析(SSNA)がセットアップされます。FrfはFlo+100kと定義されているので、ベ ースバンド周波数は100 kHzです。タイムドメインシミュレータとは異なり、このベースバン ド周波数をどれだけ小さく設定してもシミュレーション時間には影響しません。 小信号雑音解析では、 52 小信号雑音解析フォーム 1つまたは2つの大信号トーン(この場合はLO 1つだけ)と、1つの小信号トーン(RF)を指定 します。ミキサはLO信号により非線形にドライブされ、RF信号振幅に対しては線形動作する と仮定されます。このため、RF信号の振幅を指定する必要はありません。入力ポートと出力プ ローブを選択し、出力周波数のインデックスを指定する必要があります。この例では、出力信 号は-1*Flo +1*Frfです。Compute Noiseが選択されています。 シミュレーションの実行には数秒しかかからず、電圧変換利得とNFがシミュレーションの最後 にログファイルへ出力されます。この出力は、Performancesが設定されていなくても行われ ます。 53 NF/変換利得シミュレーションの結果 出力ログのnoise inは入力信号源の雑音だけに起因する出力の雑音、noise outは出力の全雑音、 added_noiseは回路が発生した雑音です(入力信号源の寄与を除く)。 次に、VLOampを0.7∼2.0 Vの範囲、0.1 Vステップで掃引し、2つの式、 VoltageGain_dB=db(vgain())とNF_SSB=nf()を追加します。シミュレーションを実行し、NF と変換利得を図のようにプロットします。 電圧利得(上のトレース)/NF(対LO振幅) 練習として、データディスプレイを使用して、掃引変数をRsourceに変更し、この変数とNFの 関係をプロットしてください。 54 ミキサのNF/変換利得対信号源抵抗 はるかに低いLO周波数でミキサを使用する場合は、analogLib vsin信号源の代わりにvpulse信 号源を使用する方がよいでしょう。これにより、より方形波に近いLO信号源をシミュレートで きます。方形波をモデリングするために、LOトーンに十分な数の高調波を設定する必要があり ます。 ミキサのIP3シミュレーション このセクションでは、IPシミュレーションを使ってミキサのIP3をシミュレートする方法を示 します。前のセクションと同じsim_G2MixGGスケマティックを使用します。Lab2_IP3ステー トをロードします。Analysesの下のIP行を選択し、Choose Analyses...アイコンを選択して、 Intercept Point Analysisダイアログを開きます。ここでは、Circuit TypeがMixerに設定され ているので、2つのRF入力周波数だけでなく、LO周波数も指定する必要があります。IP Rank とIPN Typeを選択することもできます。入力と出力のIP3を計算するPerformancesが指定され ていますが、これらは自動的に出力されます。 55 ミキサのインターセプトポイント解析 LOの次数は7に設定されています。これより小さい値を使用すると、結果が不正確になる可能 性があります。Fast IPNは、IP Rankが3に設定されているときだけ使用できるオプションです。 これを選択すると、入力トーンの1つが小信号として扱われるため、シミュレーション時間が 短縮され、メモリ使用量が減少します。 PORT1 psin信号源には、FrfとFrf2の2つの入力トーンが指定されています。 これらの振幅は 同じVRFampです。これらはすべてデザイン変数として指定されています。 シミュレーションを実行し、Output IP3を選択してPower Sweepをプロットします。 シミュレ ーションを実行し、AWDを使って以下のように結果をプロットします。 56 パワー掃引による(外挿された)OIP3を作成するダイアログ これにより、理想的に外挿されたインターセプトポイントを示すプロットが作成されます。 外挿によるミキサの出力3次インターセプトポイント ミキサの変換利得圧縮のシミュレーション このセクションでは、ミキサのRF入力信号振幅と変換利得圧縮の掃引を示します。IP3の計算 も行われます。GCシミュレーションとIPシミュレーションでも同じ情報が得られますが、これ は、CRCシミュレーションの方が場合によっては有効であることを示しています。 Lab2_IP3_Swept_CRステートをロードします。CRのChoosing Analysesダイアログを開きま す。 57 変換利得圧縮のセットアップ これは3トーン解析であり、RF入力信号(VRFamp_dB)の振幅が2つのレンジで掃引されます。 1つのレンジは粗いステップを使用し、もう1つのレンジは利得圧縮ポイントの近くで細かいス テップを使用します。ポート電圧に加えて、LO入力インピーダンスの測定用にLOポートにバ ーチャル・プローブ電圧/電流プローブを定義しました。Analog Design Environmentウィン ドウでVir Probeボタンをクリックすると、Virtual Probe Editorが表示されます。ここには、 電圧/電流プローブの定義が表示されます。 Virtual Probe Editor データディスプレイで結果のポストプロセッシングを実行するので、GoldenGateがデータセッ トを作成することを確認する必要があります。このためには、Analog Design Environmentウ ィンドウで、Setup > Environment...を選択します。Environment Optionsウィンドウが表示 されます。ここで、シミュレータがどちらかまたは両方のタイプの結果ファイルを出力するよ うに指定できます。Data Display File (.ds)が選択されていることを確認します。 58 GoldenGateが両方のデータセットと.blk結果ファイルを出力するように指定 CR解析を実行します。かかる時間は2分以下です。Results > Start ADS Data Display …を選 択して、空白のデータディスプレイウィンドウを開きます。左上コーナのデフォルトのデータ セット名がsim_G2MixGG_CRであることを確認します。 下に示すのは、入力および出力基準のIP3ポイントと変換利得圧縮を計算する式とプロットのセ ットを作成する方法です。 左側のEqnアイコンをクリックし、右側の空白部分にカーソルを移動します。 式を挿入するアイコン 適当な場所をクリックして式を入力します。基本波出力トーンの1つに対する式を図のように 入力します。 基本波出力トーンの1つを指定する式 59 データディスプレイでは、mix()関数を使って、特定のスペクトラムトーンを指定します。この 例では、−1×(最初の解析周波数)+1×(2番目の解析周波数)+0×(3番目の解析周波 数)です。特定の周波数に対応するインデックスを見るには、数字のアイコン(下図)をクリ ックしてListを挿入します。 Listを挿入するアイコン このアイコンをクリックしてカーソルを右側にドラッグし、クリックしてリストを配置すると、 Plot Traces & Attributesダイアログが開きます。 リストに表示するデータアイテムの選択 >>Add>>をクリックし、OKをクリックしてリストを作成します。最初は、リストは大きな"X" が入った長方形として表示されます。これをダブルクリックしてPlot Traces & Attributes dialogをもう一度表示します。Plot Optionsタブをクリックし、Suppress Table Formatを選 択し、OKをクリックします。リストは下のように表示されます。 60 周波数と対応するミキシングインデックス 今度は3次の項に対する式を作成するために、Fund1_Out式の左側のEqnブロックをクリック し 、 cntrl-c 、 cntrl-v を 押 し て コ ピ ー / 貼 り 付 け し ま す 。 オ ン ス ク リ ー ン 編 集 を 使 っ て ThirdOrd_Out=mix(PORT2.v,{-1,2,-1})に変更します。 3次のIMD項の式を作成した後 次に、この2つの式を表示するプロットを挿入します。Rectangular Plotアイコンをクリックし ます。 直交座標プロットを挿入するアイコン 式とリストを挿入したときと同様に、カーソルを右側のプロット領域までドラッグします。 Plot Traces & Attributesダイアログが開きます。sim_G2MixGG_CRをEquationsに変更しま す。 61 sim_G2MixGG_CRをEquationsに変更した後 これら2つの式を強調表示し、>>Add>>をクリックし、dBを選択し、OKをクリックしてプロッ トを作成します。 図のようなプロットと式が作成されたことを確認します。 IP3ポイント、利得、利得圧縮、RF/LOポートインピーダンスの計算 マーカが挿入され、その表示値を使ってIP3ポイントが外挿により計算されています。変換利得 は入力信号振幅の関数として計算されます。変換利得圧縮は、入力信号が最小値のときの利得 を基準とした利得の減少量として計算されます。ConvGain_dBには入力電圧VRFamp_dBのそ れぞれの値に対応した複数の値があります。ConvGain_dB[0]はVRFamp_dBの初期値に対応 する変換利得です。 62 sim_G2MixGGスケマティックでは、VRFamp_dBは、ポート抵抗と等しい抵抗Rsourceに接続 されている場合に、PORT1に現れる電圧です。これは、VRF_PノードとVRF_Nノードの差で ある、ミキサへの入力での電圧Vin_dBとは異なります。これは、ミキサのRF入力インピーダ ンスがRsourceと異なるためです。電圧変換利得は、ここに示すように、ミキサ入力の電圧 Vin_dBを基準にして計算する必要があります。 RF入力インピーダンスの計算式Zin_RFでは、mix()関数に第3パラメータMixが必要です。こ れは、第1パラメータVin/(PORT1.i)がデータセットにない計算量だからです。Zin_LO式の場 合も同様です。 このプロットは保存されています。これをデータディスプレイウィンドウから開くには、File > Openを選択し、sim_G2MixGG_CR.ddsを強調表示し、OKをクリックします。 保存されているデータディスプレイファイルを開くダイアログ データディスプレイファイルを再利用して、他のシミュレーションの結果を表示できます。 InterceptCalcBasic.ddsデータディスプレイファイルを開くと、インターセプトポイントを外 挿する別の方法を見ることができます。 ミキサの2次相互変調歪み(IM2)のシミュレーション IM2は主に、デザインの非対称性に起因します。このため、完全に整合したスケマティックビ ューでIM2をシミュレートすると、非常に低い非現実的な値が示される可能性があります。IM2 を予測する良い方法は、現実の非対称の条件(抽出ビューまたはモンテカルロ)で、平均値と 標準偏差を計算することです。ここでは、IM2を計算するためのモンテカルロシミュレーショ ンのデモを行います。 63 Lab2_IP2ステートをロードします。これは、G2MixerRXセルのExtracted Viewをシミュレー トするためのセットアップです。このセルはextractedRCビューを持ちます。Switch View Listのschematicの前にこれを配置すると、schematicビューではなく、このビューがシミュレ ートされます。 schematicビューではなく、extractedRCビューの使用を指定 別の方法として、シミュレーションのconfigビューを作成して、シミュレートする各セルのビ ューを指定することもできます。 前述のように、CR解析は3トーン解析ですが、振幅掃引は実行されません。インターセプトポ イントが1つの入力振幅レベルから外挿されます。これは、掃引を実行するよりはるかに高速 です。ただし、この入力レベルが圧縮ポイントを大きく下回っていることを確認する必要があ ります。大きく下回っていない場合は、外挿エラーが生じます。 CR解析で簡単なグラフによる外挿でインターセプトポイントを計算するために、Performance も定義します。 IP2とIP3のPerformance また、統計的変動を考慮するモンテカルロシミュレーションもあります。 64 モンテカルロシミュレーションのセットアップ このCadence GPDKの統計変数に関する注記: このPDKのモデルファイルには、プロセス統計変数とミスマッチ統計変数があります。困った ことに、これらの変数は同じ名前を持っています。 これは推奨される方法ではなく、実際の PDKでの一般的な手法でもありません。GoldenGateでは現在のところこの状況を正しく処理で きません。現在は、プロセス統計変数が最初に定義され、その後にモデルファイルのミスマッ チ統計変数が定義されています。ミスマッチ変数がプロセス変数を上書きしないように に、./share/gpdk180/models/spectre/capacitor.scs、cmodel.scs、nmos1.scs、pmos1.scsファ イルで、ミスマッチ変数がコメントアウトされています。このため、Bothが選択されて ProcessとMismatchの両方の効果がシミュレーションで考慮されていますが、実際に考慮され るのはプロセス変動だけです。しかし、IM2の変動を示すにはこれで十分です。 どの統計的な変動が性能に最も大きな影響を与えるかを知るには、Compute Correlationsを選 択します。RegularでなくLHSが選択されているのは、LHSモンテカルロシミュレーションの 方が、はるかに少ない回数の試行で、最終的な平均値と標準偏差に収束する傾向があるからで す(これについては、GoldenGate RFIC Simulator User GuideのAppendix A.19 Using Different Monte Carlo Modesで説明されています)。 シミュレーションの実行にかかる時間は、1コアを使用した場合で4分以下、8コアを並列で使 用した場合で2分以下です。この場合、1回の試行のシミュレーション時間はきわめて短いため、 8コアのセットアップと制御のオーバヘッドが、全シミュレーション時間のほとんどを占めま す。シミュレーションが完了したら、sim_G2MixGG_CR_MCデータディスプレイを開きます。 IP2とIP3のデータの統計的なバラツキがわかります。ヒストグラムからは、IP2の変動が大きい のに対して、IP3の変動がごくわずかであることがわかります。 65 出力のIP3およびIP2の値の統計的なバラツキ 今度は、同じモンテカルロシミュレーションを複数のコアを持つマシンで実行し、シミュレー ションの進行をQMCC(Q Multi-Controller Cockpit)を使って追跡します。QMCCは、シミ ュレーションの進行をモニタできるツールです。これには、各コアの各試行の進行が示され、 どれかのコアが他のプロセスで過負荷になった場合は、そのコアの使用を止めることができま す。QMCCにはまた、各モンテカルロ試行の終了時に、定義したすべての性能が表示され、各 性能の積算平均も示されます。 QMCCをオンにするには、Analog Design EnvironmentウィンドウのSetup > Environment … の下で、Use qMCCを選択します。 Environment OptionsダイアログでQMCCをオンにする 並列シミュレーションを実行するには、Choosing Analyses Formの下部にあるParallelismで、 実行する並列処理のタイプを選択します。最も単純な例は、マルチコアのマシンでシミュレー シ ョ ン を 実 行 す る 場 合 で す 。 こ の 場 合 は 、 Local を 選 択 し ま す 。 さ ら に 、 Number Of Processesを指定します。これは、シミュレーションがこのマシンで使用できるコアの数を示 します。 66 並列処理のタイプとプロセス数の指定 Choosing Analyses FormでOKを選択して、シミュレーションを開始します。QMCCウィンド ウが表示され、各コアで実行中のモンテカルロ試行の進行が示されます。 各試行の進捗を示すQMCCウィンドウ シミュレーション中に、表の中の任意の番号にカーソルを置き、右クリックしてView Results (All)を選択します。 シミュレーション中に右クリックして表示する結果を選択した後 qWaveウィンドウが開き、表示する性能の下でTrial Dataを選択すると、試行データの散布図 が表示されます。これは各試行の終了時に更新されます。 67 モンテカルロシミュレーションの試行結果を示す散布図 Statisticsを右クリックし、Display (Table)を選択すると、性能に関する統計情報が表示され ます。 2次インターセプトポイントの統計 3) VCOのシミュレーション このセクションでは、VCOの何種類かのシミュレーションを示します。これには、発振、同調 範囲、出力信号の振幅、位相雑音のテストが含まれます。 MomentumによるVCOのスパイラルインダクタのシミュレーション ここでは、Momentumを使ってスパイラルインダクタをシミュレートします。Momentumは、 平面回路をモデリングするための電磁界ソルバです。Momentumを使うと、スパイラルインダ クタだけでなく、スパイラルへの接続やその他の構造もモデリングできます。Momentumの結 果を再利用する発振器シミュレーションは、Momentumが作成したSパラメータファイルをハ ーモニックバランスが非常に効率的に扱えるので、非常に高速に実行されます。 68 Momentumを使ってシミュレートされたレイアウトが用意されています。これは、標準の Cadenceレイアウトを出発点とし、いくつかの変更を加えて作成されています。標準のレイア ウトから出発してMomentumシミュレーションの実行を準備する手順を以下に示します。 CIWからFile > Openを選択して、発振器のスパイラルインダクタのレイアウトを開きます。ダ イアログボックスで、Library NameをRFIC_Workshop_Designs、Cell NameをG7VCO_inds、 View Nameをlayoutにします。OKをクリックしてレイアウトビューを開きます。Momentum シミュレーションを実行する前に、レイアウトをmomentumビューにする必要があります。 Layoutウィンドウで、Tools > Momentumを選択します。これにより、上部のツールバーに "Momentum-Virtuoso"という新しい項目が追加されます。 69 Metal5 ここにズームインし てビアアレイを表示 Metal6 2 つのビアアレイが重なっ たところ(Metal4-Metal5 と Metal5-Metal6) =ビアアレイ の位置 Metal4 VCOスパイラルインダクタのレイアウトビュー このスパイラルの大部分はトップメタルレイヤMetal6上にありますが、図の上部のアンダーパ スとコンタクトはMetal5上にあります。下にある1つのコンタクトは、スパイラルの最内周部 をグランドに接続するためのもので、Metal4上にあります。このレイアウトには、異なるメタ ルレイヤの間を接続するための複数のビアアレイが存在します。ビアアレイを見るにはズーム インする必要があります。 70 Momentumシミュレーションの高速化のために置き換える必要があるビアアレイ Momentumシミュレーションでは、これらの大規模なアレイを1つの大きな正方形のビアに置 き換えた方が効率的(おそらく100倍以上高速)になります。この場合、Momentumでシミュ レートする構造が物理的な構造と一致しなくなるので、シミュレーションにわずかな誤差が生 じます。しかし、ビアの高さと損失はきわめて小さいので、生じる誤差は無視できると見なせ ます。これにより、Momentumが構造の計算に使用するメッシュの数が大幅に減り、シミュレ ーションがはるかに高速になります。 ビアアレイは自動的に単純化されるので、大幅な時間の節約になります。このプロセスを自動 化するSkillマクロを(メニューから選択して)実行できます。このコマンドを使用するには、 gpdk180_mom.ilといった名前の簡単なファイルをdesignディレクトリに作成する必要があり ます。このファイルには、レイアウト内のビアレイヤと、それによって接続されるメタルレイ ヤのリストが記載されます。このファイルは、.cdsinitファイル中の次のコマンドによってロー ドされます。 (load “gpdk180_mom.il” ) 71 以下では、G7VCO_indsMom momentumビューの作成方法を説明します(別のセル名を使用 するだけで、これらのステップを再現できます)。G7VCO_inds layoutビューを出発点として、 Tools > Momentumを選択して、最初のG7VCO_indsMom momentumビューを作成します。 これにより、新しいメニュー項目Momentum-Virtuosoが作成されます。 Tools > Momentumを選択すると、Momentum-Virtuosoメニュー項目が表示されます Momentum-Virtuoso > Make Momentum Cell…を選択し、Momentum Cell Nameフィールド に名前を入力します。 Make Momentum Cellダイアログ(これを自分で試してみたい場合は、別の名前を使用) OKをクリックすると、この名前でMomentum Cellが作成され、Agilent Momentum-Virtuoso ダイアログが開きます。 Momentumシミュレーションをセットアップ/実行するための最初のダイアログ シミュレーションをセットアップする前に、momentumビューでビアを単純化します。スパイ ラルインダクタ全体を選択し、Edit > Hierarchy > Flatten…を実行します。 72 ビアを単純化する前にスパイラルインダクタのレイアウトをフラット化するためのダイアログ 次 に 、 Agilent Momentum-Virtuoso ダ イ ア ロ グ ボ ッ ク ス か ら 、 Layout > Perform Via Simplification…を選択します。Simplify Viasダイアログで、Use Same Setting for All Via Layers、Local via arraysを選択し、Simplification Criteriaに対してMerge Vias keeping boundariesを選択します。 ビアアレイを単純化するためのダイアログ OKをクリックすると、ビアアレイが図のように単純化されます。 73 各ビアアレイは外側境界と全領域が同じ「フレーム」に置き換えられます コンタクトビアの記述を完成するために使用される、レイヤに関するメッセージが表示されま す(このメッセージは、gpdk180_mom.ilファイル中のcompleteViaDescriptionListコマンド が出力したものです)。このメッセージは単なる情報用であり、シミュレートするMomentum レイアウトにMetal1レイヤとNimpレイヤの間のビアが含まれていた場合に、どのビアレイヤが 追加されるかを示します。このレイアウトでは、Metal4レイヤより下にレイヤは存在しません。 コンタクトビアの記述を完成するために使用される、レイヤに関するメッセージ 74 今 度 は 、 G7VCO_indsMom セ ル の momentum ビ ュ ー を シ ミ ュ レ ー ト し ま す 。 す べ て の Momentumシミュレーションパラメータを含むステートがあります。これをロードするために、 Session > Load State...を選択します。G7VCO_indsMomStateが強調表示されているはずです。 OKをクリックします。 Momentumシミュレーションステートをロードした後 サブストレート定義ファイルはSetup > Substrate...の下で定義されています。 サブストレートファイルの指定 .ltdサフィックスは、これがサブストレートファイルであり、グラフィカルサブストレートエ ディタで表示または編集が可能なことを示します。Edit…をクリックしてサブストレート定義 を表示します。 75 グラフィカルサブストレートスタックアップ定義 このファイルは、各誘電体とメタルレイヤの厚さ、誘電率、伝導率、その他の物理情報を定義 します。ファイルが入手できない場合は、電磁界シミュレーションを実行しようとする設計者 は、ファンダリから提供される製造プロセス情報からこのファイルを作成できます。ファイル の 作 成 方 法 は 、 Agilent EEsof Knowledge Center か ら ダ ウ ン ロ ー ド で き る SubEdTrainingTutorial_v1.2.pdfドキュメントに説明されています。サンプルID番号318540を 検索してください。 サブストレートスタックアップの領域またはレイヤにカーソルを移動すると、情報ウィンドウ が表示されます。 76 サブストレートの厚さやその他の物理特性の表示 Edit > Materials …を選択すると、ダイアログが表示され、サブストレートとメタルレイヤの さまざまな物理特性を編集できます。 Edit materialsダイアログ Edit > Masks ...を選択すると、各マスクの特性を定義するダイアログが表示されます。 77 各マスクの特性の指定 メ タルま たは ビアマ スク に対応 して いるレ イヤ 番号を 確認 したい 場合 は、 layoutビ ュ ー (momentumではなく)を開いて、CIWにrfdeMom_dumpTechLayers()と入力します。これ により、レイヤ番号のリストとそれらに対応するマスク名がCIWに出力されます。 レイヤ番号と対応するマスク名 78 Agilent Momentum-Virtuosoウィンドウに戻り、Frequenciesの下の1つだけの行を強調表示 し、Frequencies > Edit...メニュー項目を選択します。これにより、シミュレーション対象に 指定された周波数が表示されます。この例では、レンジは0∼50 GHzで、最大解析ポイント数 は15ポイントです。また、Adaptiveが選択されていて、アダプティブ周波数サンプリングが使 用されることを示しています。 これにより、正確な周波数応答を得るために必要な最小限の数 の周波数ポイントが用いられます。 ポートはPorts > Auto-generateコマンドで自動作成されていて、レイアウトの各ピンに対して 1個ずつ存在します。これはポートを定義する最も簡単な方法ですが、ポートの順序をユーザ が制御することはできません。順序を定義するにはポートを手動で定義する必要があります。 "MODE SUBS MESH"アイコンをクリックするかSimulation > Options...を選択すると、 Simulation Optionsダイアログが表示されます。RFモードが指定されています。シミュレート される周波数レンジではレイアウトは電気的に小さいので、これで十分です。RFモードは通常 Microwaveモードよりも高速です。"3-D Metal Expansion"がUpに設定されているので、 Momentum は 有 限 の メ タ ル の 厚 さ の 影 響 を 考 慮 し ま す 。 Current Model Type が 3Ddistributedに設定されているので、水平方向の側面電流がモデリングされ、シミュレーション がより正確になります。この例では、Edge Meshをオンにしても結果に大きな変化はありませ ん。これはNoneに設定されており、シミュレーションを大幅に高速化する効果があります。ビ アを単純化しており、ビア上の水平方向の電流は解析に含めないようにします。これは、Via のCurrent Model Typeを2D-distributedに設定して行います。 79 Momentumシミュレーションオプションダイアログ 0∼50 GHzの周波数応答を正確に求めるのに必要な解析周波数ポイントの数はわずか7個でした。 8コアのマシンの場合、マルチスレッド処理の効果で、これには23秒しかかかりませんでした。 シミュレーションの終了後、結果を回路シミュレーションで再利用したい場合は、Agilent Momentum-VirtuosoウィンドウでTools > Create Circuit Simulator Viewsを選択する必要が あります。これにより、symbol、ads、spectre、auLvs、mommdlの各ビューが作成されます。 自動作成されたsymbolビューにはリファレンスピンはありません。Momentumデータの再シミ ュレーションの際にレイアウトの残りの部分に対してAssura抽出を使用する場合は、シンボル がリファレンスピンを持たないことが要求されます。この方法は、RFDE Momentumマニュア ルに詳しく説明されています。Tools > Create Circuit Simulator Viewsオプションを使用すれ 80 ば、リファレンスピンを持つシンボルを作成できます。Agilent Momentum-Virtuosoウィンド ウとG7VCO_indsMom momentumウィンドウを閉じます。 このセクションでは、VCOのスパイラルインダクタの正確な電磁界モデルを高速に作成できる ことを示しました。このモデルはVCOを含むこの後のすべてのシミュレーションで使用され、 スパイラルの大規模な集中定数等価回路モデルを使用する場合に比べてシミュレーションを大 幅に高速化する効果があります。 VCOのスパイラルインダクタのMomentumモデルのL値、R値、Q値の計算 次に、スパイラルインダクタのMomentumモデルを中心の接続がフローティングの状態でスル ーとしてシミュレートし、インダクタンス、抵抗、Q値対周波数を計算します。 Inductor_LRQ_Calcセルのschematicビューを開きます。 インダクタのMomentumモデルをスルーとしてシミュレートし、L、R、Qを計算 81 このコンポーネントはG7VCO_indsMomセルのsymbolビューであり、Momentumシミュレー ション結果を再利用した3ポートのSパラメータモデルとして動作します。Analog Design Environmentウィンドウを開いて、Lab3_Inductor_LRQステートをロードします。シミュレ ーションを再実行することもできます。これには数秒しかかかりません。または、単にデータ ディスプレイを開くこともできます。このためには、Analog Design Environmentウィンドウ でResults > Start DDSを選択します。空白のデータディスプレイが開いたら、そこからFile > Openを選択し、Inductor_LRQ_Calc.ddsを強調表示してOKをクリックします。 L 対周波数 R 対周波数 Q 対周波数 Y11 より計算 S11、S12 より 計算 MomentumインダクタモデルのL値、R値、Q値 ここに示すのは、スパイラルのL、R、Qのプロットです。L、R、Qの値は、1つのケースでは 理想Lと理想RLの直列から構成される2ポートネットワークのY11から、もう1つのケースでは S11とS21から計算されています。S11とS21から計算されたRとQの値は、シリコンなどの損失 のあるサブストレート上のスパイラルをシミュレートする場合には、より正確であると仮定さ れます。もっと現実的な等価回路を使用すると、同様の式によってL、R、Qのさらによい推定 値を得ることができます。 82 スパイラルインダクタのインピーダンスの計算と、それを使ったLとRLの計算 この単純化したモデルは、低い周波数では有効ですが、周波数が高くなると寄生成分のために 破綻します。この回路は製造されていないので(PDKが実際のプロセスに対応しないため)、 これらの結果を実際の測定値と比較することはできません。L、R、Qの計算に用いられる式は、 データディスプレイの"Equations"ページに示されています。"Page"プルダウンメニューを使っ てこのページに切り替えます。 Y11およびS11/S21からR、L、Qを計算する式 このセクションでは、データディスプレイを使って、スパイラルインダクタのR、L、Qを、再 利用可能な式を使って計算できることを示しました。 83 回路が不安定であることの確認 こ こ で は 、 VCO の 周 波 数 / 振 幅 と 同 調 電 圧 の 関 係 を シ ミ ュ レ ー ト し ま す 。 sim_G7VCO_w_indsMomGGスケマティックを開きます。 VCOのシミュレーションのトップレベルスケマティック G7VCO_w_indsMomGGスケマティックビューを開いて、発振器のトポロジーを観察します。 84 スパイラルインダクタのMomentumモデルを使用した発振器回路 VCOは一般的なRFICトポロジーであり、一対の負荷トランジスタのベースとコレクタがそれぞ れクロスカップルに接続されています。共振子は、Momentumシミュレーションから得られた Sパラメータでモデリングされたスパイラルインダクタと、調整可能なキャパシタンスを実現 する4個のバラクタダイオードです。 ト ッ プ レ ベ ル ス ケ マ テ ィ ッ ク か ら 、 Analog Design Environment ウ ィ ン ド ウ を 開 き 、 Lab3_VCO_Instabilityステートをロードします。発振器のシミュレーションは、増幅器などの ドライブされる回路の場合よりも複雑です。これは、発振周波数と、基本波および高調波周波 数の定常状態の振幅を、シミュレータが求める必要があるからです。 GoldenGateには安定性解析機能があります。これは、DC Analysisウィンドウに表示された Nyquist DiagramまたはEigenvalue Computationのいずれかを使って、不安定な可能性がある 周波数を発見するものです。 85 安定性解析を含むDC解析 Max Pert. Freq.は予想される発振周波数よりも大きい値に設定する必要があります。大きな値 に設定しないと、回路が安定と仮定される可能性があります。シミュレーションを実行します。 シミュレーションが終了したら安定性「フラグ」を示す表を表示します。このフラグはStable (安定)またはUnstable(不安定)のいずれかです。回路が不安定の場合は、発振が起きる可 能性がある周波数のリストが示されます。 安定性解析で見つかった発振の可能性がある周波数 この発振器の場合は、Eigenvalue Computationによる安定性解析を使用すると、不安定な周 波数が見つかりません。このため、最初に使用した解析方法で不安定性が検出されなかった場 合は、もう1つの方法を試してください。 発振周波数/振幅の調整 これは、VCOの周波数および振幅と同調電圧との関係をシミュレートします。同じスケマティ ックを使用して、Lab3_Freq_vs_Vtステートをロードします。これにより、Carrier Analysis を使用して、発振の定常状態の周波数と基本波および高調波の振幅を求めます。同調電圧Vtは、 バラクタダイオードのバイアスを設定し、発振の周波数を調整します。 86 VCOの周波数対同調電圧のCR解析 発振器周波数の予想値を指定する必要があります。この例ではこれはデザイン変数Foscで定義 されています。この値は、実際の発振周波数にそれほど近くなくてもかまいませんが、発振周 波数(この例ではVt=0.25のときの周波数)に近い方がシミュレーションが早く収束し、実行が 高速になります。 Oscillator Analysisが選択されています。 87 1つのPerformanceが設定されています。domain.nlfreq()関数は、発振の周波数を出力します。 Vout VDMETER プ ロ ー ブ は 差 動 出 力 電 圧 を 返 し 、 ノ ー ド Op と On は 、 Analog Design EnvironmentウィンドウでOutputs > To Be Saved > Select On Schematicによって選択されて います。 発振器解析を実行するには、発振器電圧プローブ(goldenGateLib、OSCVP)を挿入するか、 Analog Design EnvironmentウィンドウからOutputs > GoldenGate Probes...で発振器プロー ブを指定する必要があります。後者の方法を推奨します。この方法では、スケマティックビュ ーへの非物理的なデバイスの挿入を避けることができ、LVSで問題が生じる可能性がないから です。 発振器プローブの指定 発振器サブ回路にノードを指定する必要があります。この例では、クロス結合のドレインノー ドが選択されています。ノードは共振子の両側で(この例のように)選択することをお勧めし ます。Harmonic Indexは1に設定されています。 これは、発振器が基本波解析周波数で発振す るからです。 シミュレーションの実行には約6秒かかり、Vt対基本波周波数がシミュレーション中に出力され ます。シミュレーションが終了したら、Vtに対する基本波周波数の波形を図のようにプロット します。また、スペクトラムもプロットします。 結果をプロットするもう1つの方法は、シミュレーションの前にOutputs > To Be Saved > Select on Schematicを選択する方法です。シミュレーションが終了したら、Results > Direct Plotを選択し、プロットする値として、例えばsim_G7VCO_w_indsMomGG_CR (Difference) を選択します。これにより、2つのノードの差をプロットできます。 88 各Vtでの発振器出力波形 Vt対発振周波数 次のプロット(データディスプレイより)は、VCOの周波数と同調電圧および同調感度の関係 を示します。感度は有限差分の傾きを計算するdiff()関数を使って計算されます。 89 VCOの周波数および同調電圧と同調感度の関係 位相雑音のシミュレーション 次 に 、 VCO の 位 相 雑 音 を シ ミ ュ レ ー ト し ま す 。 同 じ ス ケ マ テ ィ ッ ク sim_G7VCO_w_indsMomGGを使用して、Lab3_VCO_PhNoise_vs_Vtステートをロードし ます。これは、同調電圧の各値での位相雑音解析が含まれている以外は、前のステートと類似 しています。 発振器位相雑音シミュレーションのセットアップの一部 位相雑音は、基本波周波数から対数オフセットの周波数で計算されます。雑音データは自動的 に保存されるので、Performancesを設定する必要はありません。OptionsでNoise Optionsま で下にスクロールすると、Flicker Noise ModelがCyclostatに設定されています。この場合、 RFDEとほぼ同じ位相雑音の結果が得られます。 90 Cyclostatフリッカノイズモデルの指定 シ ミ ュ レ ー シ ョ ン の 実 行 に は 約 10 秒 か か り ま す 。 結 果 を 表 示 す る に は 、 Results > GoldenGate Results > sim_G7VCO_w_indsMomGG_CRを使用してCarrier Analysis Results フォームを開きます。 位相雑音シミュレーションの結果を表示するためのダイアログ 91 Noiseをクリックし、PMまたはSB位相雑音データのプロットを作成します。Vout_sb_leftと Vout_sb_rightは、単側波帯位相雑音データであり、Vout_pmデータよりも約3 dB下です。そ れぞれの同調電圧に対応するトレースを追加することができます。 位相変調/単側波帯の位相雑音 データディスプレイを代わりに使用して、位相雑音データをプロットすることもできます。 sim_G7VCO_w_indsMomGG_CR_PhNoiseデータディスプレイファイルを開きます。 92 データディスプレイを使用してプロットした位相雑音データ 前と同じ周波数対同調電圧プロットと同調感度プロットに加えて、これには位相雑音プロット も含まれています。what()関数により、各変数の独立変数がわかります。例えば、左上のリス トカラムには、VCO_FreqがVtの関数であることが示されています。side_band_right出力は、 Vtとnoisefreqの関数です。左下のプロットは実際には複数のトレースで、ズームアイコンを使 用してズームインすることにより、よりクリアに表示されます。 プロットをズームインするためのアイコン 右下のプロット (side_band_right[::,0,m1]) は、同調電圧のすべての値の1つのオフセット周波 数(noisefreq)における位相雑音を示しています(::シンタックスで示されています)。マー カm1を使用して、オフセット周波数が選択されます。マーカm1は、整数 (0∼10) 対雑音オフ セット周波数をプロットするトレース上にあるので、m1の読み値(Y軸値)は掃引雑音オフセ ット周波数のn番目の値になります。右上にプロットされている式では、シミュレートする雑 音周波数の総数を変更した場合でも、マーカの読み値は正しく機能し、右下のプロットも依然 として有効です。 93 4) VCOとプリスケーラを組み合わせた場合のシミュレーション このセクションでは、VCOとプリスケーラ(周波数ディバイダ)を一緒にシミュレートする方 法を示します。 雑音なしの場合のシミュレーション sim_G7VCO_wPrescaler_w_indsMom ス ケ マ テ ィ ッ ク を 開 き ま す 。 G7VCO_wPrescaler_w_indsMomGGサブ回路には、G7VCOのサブ回路とプリスケーラのサブ 回路があります。電圧計バーチャル・プローブが、VCOの出力に加えて、プリスケーラのI出力 とQ出力に追加されています。 Analog Design Environmentを開いて、Lab4_OscFreq_vs_Vtuneステートをロードします。 発振器とプリスケーラのシミュレーションのセットアップ これは発振器解析を含みますが、基本波解析周波数は分割された出力周波数FoscBy2近傍に設 定されています。同調電圧は前の発振器シミュレーションと同様に掃引されますが、開始電圧 が2.5 Vになっています。その理由は後で説明します。Optionsを選択して、Carrier Optionsウ ィンドウを開きます。 94 初期トランジェントの実行とその長さの指定 Carrier Analysis(ハーモニックバランス)は周波数ディバイダ回路を直接解くことはできず、 トランジェントシミュレーションで初期値を生成しておく必要があります。このために、Run Initial Transientを選択します。トランジェントシミュレーションによる初期値がないと、ハ ーモニックバランスは周波数ディバイダが分割を行わない間違った解を見つけます。また、デ ィバイダが安定した出力波形に達するために、Number of Periodsを十分大きく設定する必要 があります。Number of Periodsが小さすぎると(この例では約75以下)、シミュレーション が収束しなかったり、間違った解に収束します。Periods to Saveの隣のLastまたはAllを選択 した場合は、qWaveを使ってトランジェント波形を観察し、ディバイダが定常状態に達したか どうかを判定できます。これらの初期トランジェントシミュレーションからの波形をデータデ ィスプレイに表示したい場合は、Analog Design Environmentの下で、Setup > Environment …を選択し、Environment Optionsダイアログの下部で、Create ds File for Init Tranを選択 します。 Environment Optionsの下で、初期トランジェントシミュレーションから データセットファイルを作成することを指定 発振器が存在するので、発振器プローブを使用する必要があります。これはAnalog Design EnvironmentウィンドウのOutputs > GoldenGate Probes...で指定します。 95 発振器/電圧計プローブの指定 VCO単独のシミュレーションの場合と同じノードが発振器サブ回路に指定されていますが、レ イヤ階層が増えているため、指定方法が異なっています。Harmonic Indexは2に設定されてい ます。 これは、発振信号の基本波周波数が分割された出力信号の第2高調波周波数にあたるか らです。発振器とプリスケーラの電圧差を検出するために、電圧プローブも設定されています。 また、この初期トランジェントシミュレーションは、S-Parameter snport Devicesの下部の Simulation > Options > Analog …で、Computational MethodをDiscrete Convolutionに設定 しない限り収束しません。Sパラメータモデル(例えば、Momentumシミュレーションから実 行するモデル)を使ってトランジェントシミュレーションを実行する場合に、この設定が必要 になることがあります。 Computational MethodをDiscrete Convolutionに設定 初期トランジェントが必要なこれらの周波数ディバイダ回路では、トランジェントシミュレー ションを実行して波形を観察するのが非常に有用な場合があります。このためには、TR解析を 有効にし、CR解析を無効にします。TR解析のStop Timeは100/FoscBy2、Max Time Stepは 1/(64*FoscBy2)に設定されているので、分割された出力信号の100周期がシミュレートされま す。シミュレーションを実行します。かかる時間は5秒以下です。その後、 sim_G7VCO_wPrescaler_w_indsMom_CR_tranデータディスプレイファイルを開きます。 96 発振器およびディバイダの出力波形と周波数対時間 発振器/ディバイダの出力の信号の周波数は、マーカをトレース上に配置することによって計 算されます。indep() 関数は、マーカのX軸値(この場合は時間)を返します。(タイムドメイ ン信号の周期から周波数を計算するこの方法は、近似に過ぎません。これは、マーカを正確に 1周期あけて配置することができないためです)。cross(DivOutQ,1)関数は、ディバイダのQ出 力の、連続する正方向の0交差の間の時間差を返します。1/cross(DivOutQ,1)をプロットする ことにより、この信号の周波数対時間がプロットされます。これらのプロットからわかるのは、 ディバイダはきわめて短時間で定常状態に達しているように見えますが、実際には定常状態ま で多くのサイクルがかかっているということです。Vt =0.25でシミュレーションを再実行して みると、定常状態波形のようなものが見られます。しかし、発振器とディバイダの信号は定常 状態に達しておらず、発振器の出力はきわめて小さくなっています。この値のVtでは、発振器 とディバイダは定常状態に達するまでさらに長い時間がかかります。 今度は、TRシミュレーションを無効にし、CRシミュレーションを有効にします。シミュレー ションを実行します。かかる時間は25秒以下です。ディバイダとVCOの出力スペクトラムと波 形 を プ ロ ッ ト し ま す 。 こ れ ら の プ ロ ッ ト を 作 成 す る こ と も 、 sim_G7VCO_wPrescaler_w_indsMom_CR data displayファイルを単に開くこともできます。 97 Divider Spectra 発振器およびプリスケーラ出力のスペクトラムと波形 Vt掃引の方向を反転すると、シミュレーションは収束しますが、間違った解が得られます。こ れは、周波数ディバイダが定常状態に達するだけの長い期間にわたって、初期トランジェント シミュレーションが実行されなかったためです。Vtが0.25 Vの場合は、Vtが2.5 Vの場合よりも、 発振ははるかに弱く、立ち上がりにはるかに時間がかかります。このため、Vtを2.5 Vから0.25 Vまで掃引した方が大幅に効率的です。初期トランジェント解は、Vtの最初の値に対して回路 を解くためだけに必要です。Vtを掃引する場合は、その後の値に対する回路の解は、前のハー モニックバランス解に基づいて計算され、ごく短時間で求められます。このため、ハーモニッ クバランスは、パラメータを変化させながら回路をシミュレートするためにきわめて効率的で す。 出 力 ロ グ に は 、 発 振 器 の 周 波 数 FoscFund と 同 調 電 圧 の 関 係 が 記 録 さ れ ま す 。 こ れ は Performance、すなわちFoscFund=domain.nlfreq(2,0,0)から計算されます。 これらの周波数は、予想通り、前の発振器単独のシミュレーションで得られたものと一致しま す。 分割された出力波形は、方形波よりもむしろ三角波に似ていて、31個の高調波の代わりに15個 の高調波を使用しても、結果に大きな違いがないことがわかります。 98 VCOおよびプリスケーラ(ディバイダ)の位相雑音のシミュレーション ここでは、同調電圧の1つの値に対して、プリスケーラ(周波数ディバイダ)の出力の位相雑 音をシミュレートします。sim_G7VCO_wPrescaler_w_indsMomスケマティックがまだ開いて いない場合は開きます。Analog Design Environmentウィンドウを開いて、Lab4_PhaseNoise ステートをロードします。これにはCarrier Analysisがあり、Compute Noiseが選択されてい ます。 発振器とプリスケーラのシミュレーションで位相雑音の計算を指定 位相雑音は、Probesと対応するIndicesで指定したように、発振器の出力プローブと、ディバ イダの出力プローブの1つで計算されます。シミュレーションを実行します。これにかかる時 間は2分以下です。AWDを使用して位相雑音をプロットします。 99 ディバイダ出力の1つでの側波帯位相雑音のプロット 下のプロットからは、VCOの出力の位相雑音がディバイダの出力の位相雑音より6 dB高いこと がわかります。 100 VCOとディバイダの出力の位相雑音 雑音寄与表NCTを使用して、位相雑音に最も大きく寄与するデバイスを確認します。 101 雑音寄与表の作成準備 位相雑音シミュレーションに基づいた雑音相関ファイルの作成 出力スペクトラムと位相雑音の結果をその後のシミュレーションの信号源として使用する場合 は、GoldenGateでnoisecorrelation.corファイルを作成するように指定できます。これにより、 位相雑音解析を含め、発振器や周波数ディバイダを再度解く必要がないので、その後のより大 規 模 な 回 路 の シ ミ ュ レ ー シ ョ ン が 大 幅 に 高 速 化 さ れ ま す 。 同 じ sim_G7VCO_wPrescaler_w_indsMomスケマティックを使用して、Lab4_Create_NoiseCorス テートをロードします。これは、雑音相関ファイルが作成されること以外は、前のステートと 同じです。Carrier Optionsウィンドウの下部のCreate Noise Corr Fileを選択します。 雑音相関ファイルの作成を指定 102 Output Spectrum Fundamentalは適切に選択する必要があります。(1, 0, 0)のインデックスは 分割された出力基本波周波数に対応します。シミュレーションを実行します。これにかかる時 間は3分ほどです。 Create Noise Correlを選択することによって作成されたnoisecorrelation.corファイルは、 simulation/sim_G7VCO_wPrescaler_w_indsMom/GoldenGate/schematic/netlist デ ィ レ ク トリに書き込まれます。このファイルをテキストエディタで開くと、プリスケーラ出力の基本 波周波数、すべての高調波の振幅と位相、雑音データが記載されています。このファイルを再 利用して、バーチャル信号源(推奨の方法)、またはgoldenGateLib COMBVS電圧源と NOISECORコンポーネント(noisecorrelation.corファイルへのパスを指定)を使用すること により、同じ特性を持つI/Q信号を作成することもできます。 雑音相関ファイルに発振器の出力データを保存する場合は、シミュレーションセットアップは 上述のセットアップとほとんど同じです。異なる点は、Carrier Analysisフォームで、Output Probesフィールドが/DivOutIp、/DivOutIn、/DivOutQp、/DivOutQnから/I9/OscOutpおよ び/I9/OscOutnに、Indicesが(1,0,0)から(2,0,0)に変更されていることだけです。 2つのディバイダ出力で雑音を計算するように指定 VCO出力プローブで雑音を計算するように指定 混乱を避けるために、必要に応じてNoise Corr File NameをnoisecorOscOut.corに変更します。 シミュレーションを再実行する場合は、前と同じ場所にあるnoisecorOscOut.corファイルを編 集します。このファイルから、基本波の信号の振幅が本質的に0であり、最大振幅が二次高調 波で発生していることがわかります。 シミュレーションごとにネットリストディレクトリが上書きされるため、noisecorOscOut.cor ファイルとnoisecorDivOut.corファイルは$FLOW/designディレクトリに保存してあります。 これらのファイルを使用するその後のシミュレーションでは、$FLOW/designディレクトリを 参照しています。 103 任意の位相雑音プロファイルを持つ雑音相関ファイルの使用 LOが存在するレシーバまたはトランスミッタの雑音性能を、指定した任意の位相雑音プロファ イルでシミュレートしたい場合があります。例えば、LOがフェーズロックループ内に存在し、 PLLによる位相雑音の低減を考慮した位相雑音プロファイルを指定したい場合などです。ここ では、雑音相関ファイルを指定して使用することにより、任意位相雑音プロファイルを定義す る方法の例を示します。 sim_Div_wNoisecorスケマティックを開き、Lab4_Using_a_Noisecorステートをロードします。 noisecor信号源でドライブされるプリスケーラ VCOを置き換える理想信号源は、2つの電圧制御電圧源を経由してプリスケーラ入力に差動的 に供給されます。このような方法(またはトランス)が必要なのは、プリスケーラ入力に正し いDCバイアス電圧を供給するためです。手動で位相雑音プロファイルを入力するこの方法では、 この後のセクションで説明する、正と負のノードに別々のnoisecor信号源を供給する方法とは 異なり、単一の差動noisecor信号源を供給する必要があります。 Analog Design Environmentウィンドウで、Vir Srcをクリックすると、入力のV6 vsin信号源 の代わりにNoisecorバーチャル信号源が使用されていることが示されます。スペクトラムおよ び雑音データを記録したNoisecorファイルは、$FLOW/design/noisecorOscOutPM.corです。 104 重要 noisecorOscOutPM.corファイルの最初の部分 noisecorOscOutPM.corファイルの最後の部分。位相雑音がdBc/Hzで指定されている シミュレーションを実行します。かかる時間は約18秒です。sim_Div_wNoisecor_CRデータデ ィスプレイファイルを見ると、Clockプローブでの位相雑音がnoisecorOscOutPM.corファイル の位相雑音データと一致していて、ディバイダ出力プローブの1つでの位相雑音は予想通り6 dBよくなっていることがわかります。 105 5) LNAとミキサを組み合わせた場合のシミュレーション LNAとミキサを組み合わせ場合のNFのシミュレーション このセクションでは、LNAとミキサの1つを組み合わせた場合のNFと変換利得のシミュレーシ ョンを説明します。sim_LNA_Mix_wNoiseCorスケマティックを開きます。 LNAとミキサを組み合わせた場合のシミュレーションのスケマティック 前の章でnoisecorDivOut.corファイルが作成されたときに、雑音は周波数ディバイダの4つの出 力ノードのそれぞれで計算されました。このスケマティックでは、下部にある4つの電圧源の それぞれが、noisecorファイル内の4つの信号源の1つに置き換えられます。ファイル内の4つの 信号源はそれぞれDC値を持つので、元の周波数ディバイダを直接接続した場合と同様に、適切 なDCバイアスがミキサに供給されます。 Analog Design Environmentを開いて、Lab5_NFステートをロードします。これにはSSNAが 指定されていて、その中でLO周波数がreadfreq(Vt,”$FLOW/design/noisecorDivOut.cor”)に 設定されています。Vtデザイン変数は1.25 Vに設定されていて、これに対応する周波数が、上 記の発振器と周波数ディバイダの位相雑音シミュレーションで作成されたnoisecorDivOut.cor ファイルから読み取られます。RF周波数はLO周波数よりも1 MHz高いので、IF出力は1 MHzに なります。noisecorDivOut.corファイルを参照するNoisecorバーチャル信号源が指定されてい ます。これには4つの信号源があるので、このファイルを使用するスケマティックには4つの信 号源が存在する必要があります。ただし、そのうちV0とV1の2つはどこにも接続されていませ ん。Source Inst Namesフィールドの信号源の順番は重要です。最初の信号源はDivOutIpプロ ーブの雑音/スペクトラムデータを使用し、2番目の信号源はDivOutInプローブの雑音/スペ クトラムデータを使用し、3番目の信号源はDivOutQpプローブの雑音/スペクトラムデータを 使用します(以下同様)。これは、noisecorDivOut.corファイルを作成したシミュレーション で指定したプローブの順番と同じです。 106 V0/V1/V2/V3信号源の代わりにnoisecorファイルを使用するように指定 (noisecorファイルは通常、ネットリストディレクトリに保存されていますが、 ここでは削除されないように$FLOW/designディレクトリに移動されています) その他の点では、このシミュレーションは前のミキサ単独の雑音解析と同じです。このシミュ レーションの実行時間は10秒以内で、終了するとNFと変換利得がログファイルに出力されます。 107 NF/変換利得シミュレーションの結果 VCOとプリスケーラを使用してLOを発生させて、LNAとミキサを組み合わせた 回路のNFをシミュレーション レシーバのNFのより正確な(ただし時間がかかる)シミュレーションを実行するには、 NOISECORコンポーネントの代わりにVCOとプリスケーラを使用してLOを発生させます。 sim_LNA_Mix_wVCOスケマティックを開きます。これは前のスケマティックと似ていますが、 前のセクションのVCOとプリスケーラがLOを発生している点が異なります。 108 VCOとプリスケーラでLOを構成した、LNAとミキサのシミュレーション用のスケマティック Lab5_NF_wVCOステートをロードします。これには、NFを計算するためのSSNA解析があり ます。基本波解析周波数はFoscBy2で、LO周波数の推定値です。自励発振器のため、正確な LO周波数はシミュレーションの前にはわかりません。 109 LOにVCOを使用した、雑音指数シミュレーションのためのSSNA解析 RF入力信号周波数は、LO周波数のすぐ上の狭い周波数範囲で掃引されます。Small Signal Noise Optionsの下でRun Initial Transientが選択されています。これは周波数ディバイダのた めに必要です。シミュレーションを実行します。これには約1分8秒かかります。出力ログには、 Output Frequencyが0 Hzに近づくにつれてNFが悪化することが示されます。これは、VCOか らの位相雑音が原因です。sim_LNA_Mix_wVCO_SSNAデータディスプレイには、NFおよび電 圧利得対出力周波数が示されます。 110 NF/電圧変換利得対出力周波数 LNAとミキサを組み合わせた場合のIP3のシミュレーション こ れ に は 、 前 と 同 じ sim_LNA_Mix_wNoiseCor ス ケ マ テ ィ ッ ク を 使 用 し ま す 。 Lab5_IP3_Swept_CRステートをロードします。IP3は、3トーンCR解析の相互変調歪みの結果 から計算されます。この回路に対しては、この「手動」の方法の方がIP解析よりも高速です。 Carrier Analysisには3つの大信号トーンが指定され、RF_Power変数が掃引されます。 111 IP3をシミュレートするための3トーンキャリア解析 RF_Powerは、2つのRF入力トーンのそれぞれにおけるdBm単位の有効パワーです。IP3ポイン トを正確に外挿するには、回路が圧縮ポイントからかなり離れるまで、入力パワーレベルを十 分小さく設定する必要があります。入力パワーレベルを掃引することにより、目的のトーンの 傾きが入力パワーの1 dBの変化に対して1 dBであり、相互変調トーンの傾きが入力パワーの1 dBの変化に対して3 dBであることを確認できます。 入力と出力のIP3ポイントがPerformancesを使って計算されます。 入力/出力IP3ポイントと変換利得の計算 シミュレーションを実行します。これには約28秒かかります。インターセプトポイントの値が 出力ログに記録されます。 112 IP3と変換利得の計算値 この場合は入力パワーが増加してもIP3の値または変換利得に変化がないので、IP3外挿のため の目的のトーンと相互変調歪みトーンの傾きが正しいことを確認できます。傾きが正しいこと を確かめるには、1 MHzの目的の出力トーンと900 kHzの相互変調歪みトーンと入力パワーの関 係をプロットします。マーカを使用して、傾きが正しいことを確かめます。 1 MHzの目的のトーンと900 kHzの相互変調歪みトーン 入力パワーが圧縮ポイントを大きく下回っていることを確認したら、掃引を除去して、シミュ レーションを高速化することができます。 LNAとミキサを組み合わせた場合の利得圧縮のシミュレーション 前のセクションのIP3シミュレーションを少し変更すると、LNAとミキサを組み合わせた場合 の利得圧縮を求めることができます。Lab5_CG_IP3_Swept_CRステートをロードし、Carrier Analysisダイアログを開きます。これは前のIP3シミュレーションと似ていますが、入力パワー が利得圧縮を起こす大きさまで掃引される点が異なります。LNAの出力にV-meterプローブが 追加され、LNAの電圧利得を計算するPerformanceが追加されています。 113 IP3、利得、変換利得性能 出力ログから、全体の変換利得(ConversionGain_dB)が約−29 dBmの入力パワーレベルで1 dB低下することがわかります。LNAの圧縮はこれよりはるかに大きな入力パワーレベルで起こ ります。ConversionGain_dBをプロットすることにより、利得圧縮がはっきりと示されます。 IP3、利得、変換利得データ 114 Jivaro for GoldenGateを使用した、Extracted Viewネットリストのサイズの縮小 Jivaro for GoldenGate(JivaroGG)寄生成分削減ツールをインストールして使用する方法に ついては、“GoldenGate 4.3 – Jivaro for GoldenGate Installation and User Guide”に記述さ れています。ここでは、簡単なアプリケーション例について説明します。LNAとミキサの Extracted Viewのモンテカルロシミュレーションを実行します。JivaroGGを使用してこれらの Extracted Viewのサイズを縮小することにより、モンテカルロシミュレーションを大幅に高速 化します。 sim_LNA_Mix_wNoiseCorMC configビューを開きます。G1LNAセル、VLCextractedRCビュ ー、およびG2MixerRXセル、extractedRCビューに対してJivaroGGを実行します。Analog Design Environmentで、Tools > Jivaro Parasitic Reducer …を選択します。 ツールがデフォルト設定で開きます。 Jivaro寄生成分削減ツールの最初のダイアログ 115 Selected CellViewsタブをクリックします。このタブから、スケマティックのさまざまなセル と、削減するビューを選択できます。 Addをクリックしてミキサ/LNAセルと削減するビューを指定する前 次に、削減する寄生成分名の指定が必要な場合があります。 寄生成分名とその他のパラメータの指定 削減するExtracted Viewにcmodelやsnacapacitorなどのその他の寄生成分名がある場合は、こ れらをリストに追加する必要があります。追加しないと、これらは意図的な成分と見なされ、 これらが接続されているノードは削減されません。これは、抽出で使用される寄生成分モデル 名がわかっている場合に有効です。別の方法として、削減前のExtracted Viewのネットリスト をチェックする方法があります。 削減されたネットリストのシミュレーションが元のネットリストのシミュレーションに一致す る精度は、Freq. LimitおよびMax. Error Toleranceで設定されます。周波数リミットが高く、 最大許容誤差値が小さいほど、削減されたネットリストは元のネットリストによく一致します。 ただし、周波数誤差リミットを大きくし過ぎたり、最大許容誤差値を小さくし過ぎると、ネッ トリスト削減の効果が小さすぎて無意味になります。周波数リミットは、シミュレーションで 考慮したい最高の周波数に設定します。例えば、増幅器のシミュレーションの場合は、高調波 が基本波よりかなり小さい場合は、このリミットは2次または3次の高調波周波数に設定すれば 十分です。これらの設定は、シミュレーション精度(削減前のネットリストの結果との比較) とネットリストの削減量との兼ね合いを考慮して決定する必要があります。 116 Reduce > Runを選択して削減を実行します。削減にかかる時間は5秒以下です。ログファイル に削減の統計が示されます。 JivaroGGによってネットリストの寄生成分がどれだけ削減されたかを示す統計 次のセクションでは、削減後のネットリストをシミュレートします。 LNAとミキサを組み合わせた場合のExtracted ViewによるNFおよび変換利得のシ ミュレーション(モンテカルロを含む) このセクションでは、configビューを使ってLNAとミキサのExtracted Viewをシミュレートし ます。モンテカルロシミュレーションも行います。 sim_LNA_Mix_wNoiseCorMC configビューを開きます。ダイアログでconfigとschematicの 両方の隣でyesが選択されていることを確認します。 configビューとschematicビューの両方を開くことを指定 117 configビューとschematicビューが開きます。schematicビューは前のシミュレーションの sim_LNA_Mix_wNoiseCorと似ています。違うのは、G1LNAサブ回路がスパイラルインダク タにMomentumモデルを使用しないことです。このため、Momentumでスパイラルをシミュレ ートする前に、Extracted Viewが元のレイアウトから作成されています。 configビューでは、各サブ回路でどのビューをシミュレーションに使用するかを指定できます。 これはView Listに表示されたビューのシーケンスに依存します。View Foundは各Cellに対し て見つかったView Listの左端のビューであり、View to Useフィールドに別のセルビューを入 力しない限りこのビューがシミュレートされます。 各セルのどのビューをシミュレートするかをconfigビューで指定 schematicビューから、Analog Design Environmentを開き、Lab5_NF_MCステートをロード します。モンテカルロシミュレーションでExtracted Viewをシミュレートすると長時間かかる 場合があるので、シミュレーションで高調波の数を変更すると結果に大きな影響があるかどう かを確認します。3回の非モンテカルロシミュレーションを、LOの高調波の数を7、15、31と 増やして繰り返し実行すると、変換利得とNFは変わりませんが、シミュレーション時間とメモ リは、3秒/178 MB、6秒/201 MB、11秒/300 MBと増加します。これに基づいて、高調波数 を7に設定します。 118 メモリ使用効率を最大化するために、高調波の数を2N−1(Nは整数)に設定します。これは、 DC解析のために「高調波」が1つ追加で必要になるからです。すなわち、Nが3の場合は、解析 対象のトーン数は8です。シミュレーションの実行に必要なメモリ量は2倍ずつ増えるため、LO の高調波の数を32(実際にはDC項を含めて33)に設定した場合は、必要なメモリ量はLOの高 調波の数を63に設定した場合と同じであり、31に設定した場合のメモリ量の2倍になります。 このPDKでは、統計変数はどこで定義されているのでしょうか?Analog Design Environment のSetup > Model Libraries ...の下の、gpdk.scsがシミュレーションで使用されるモデルを定義 するファイルです。このファイルのパスはSetup > Simulation Files ...の下のInclude Pathフィ ー ル ド に あ り 、 $FLOW/share/gpdk180/models/spectre で す 。 nmos1.scs 、 pmos1.scs 、 resistor.scs、capacitor.scsはすべて統計プロセス変数とミスマッチ変数を持っていますが、 ミスマッチ統計変数はコメントアウトされています。 このCadence GPDKの統計変数に関する注記: このPDKのモデルファイルには、プロセス変数とミスマッチ変数があります。困ったことに、 これらの変数は同じ名前を持っています。これは推奨される方法ではなく、実際のPDKでの一 般的な手法でもありません。GoldenGateでは現在のところこの状況を正しく処理できません。 モデルファイルに同じ名前の2つの統計変数がある場合は、後にある方が先にある方を上書き します。このため、ミスマッチ統計変数はコメントアウトされており、モンテカルロ解析では Processだけを実行します。統計変数が大きく変動する場合は、回路応答がモンテカルロの実 行のたびに大きく変化するため、収束プロセスに時間がかかり、シミュレーション速度が多少 低下します。 100回のモンテカルロシミュレーションは、1つのCPUでは約2分48秒で実行され、247 Mバイト のメモリが必要でした。同じマシンで8コアを並列に使用した場合、実行時間は約1分16秒でし た。 qWaveを使って、NFのヒストグラム/統計値と、電圧利得のヒストグラム/統計値を表示でき ます。 結果を表示する最も簡単な方法は、Analog Design EnvironmentウィンドウからResults > GoldenGate Results > sim_LNA_Mix_wNoiseCorMC_SSNA (Stats/qWave) >を選択する方法 で す 。 Monte Carlo Analysis performances VoltageGain お よ び NoiseFigure の 下 で Histogramを右クリックし、Display (Linear)を左クリックします。同様に、Statisticsを右ク リックし、Display (Table)を左クリックして、各Performanceの統計データを表示します。 119 NFと電圧利得の統計的なバラツキを示すヒストグラムと表 比較のために、同じモンテカルロシミュレーションを、削減前の元のExtracted Viewを使って 再実行しました。これには、同じマシン(1つのCPUを使用)で11分54秒の時間と607 MBのメ モリ、8コア並列使用で4分46秒の時間がかかりました。NFと電圧利得の統計データは、上記の 削減後のExtracted Viewの結果とほぼ同じです。 削減前のExtracted ViewのNFと電圧利得の統計的なバラツキ(上記の結果とほぼ同じ) ビン数を変更できる同様のヒストグラムプロットを作成するには、qWaveを起動し、File Browser を 使 っ て sim_LNA_Mix_wNoiseCorMC_SSNA.blk フ ァ イ ル (simulation/sim_LNA_Mix_wNoiseCorMC/GoldenGate/config/psf/にある)に移動し、こ のファイルをロードし、Performance下のVoltageGainおよびNoiseFigureのヒストグラムプロ ットを作成します。 Process Variable Correlationsを選択すると、それぞれのPerformanceと最も高い相関を示す 統計プロセス変数のリストが表示されます。これから、VoltageGainとNoiseFigureがrshhip統 計変数と最も相関が高いことがわかります。 120 電圧利得と雑音指数はrshhip統計プロセス変数と最も相関が高い 散布図を作成することもできます。次の図は、電圧利得および雑音指数とcjmimおよびrshhip 統計プロセス変数との関係を示しています。これらの変数の公称値を小さくすれば、歩留まり を改善できるはずです。 電圧利得および雑音指数とcjmimおよびrshhip統計プロセス変数の関係を示す散布図 こ れ ら の 散 布 図 を 作 成 す る 場 合 に も 、 Results > GoldenGate Results > sim_LNA_Mix_wNoiseCorMC_SSNA (Stats/qWave) を 選 択 し て ( Analog Design Environmentウィンドウで)、最初にsim_LNA_Mix_wNoiseCorMC_SSNA.mcファイルをロ ードしました。次に、Monte Carlo Analysis、process variables、cjmimの下のTrial Dataを 強調表示します。次にSet as Xを左クリックして選択します。 121 散布図のX軸値の設定 次 に 、 performances の 下 の VoltageGain の 下 で 、 Trial Data を 右 ク リ ッ ク し 、 Display (Linear)を左クリックすると、VoltageGainとcjmimパラメータの関係を示す散布図が作成さ れます。 122 散布図に表示する性能としてVoltageGainを選択 Monte Carloシミュレーションセットアップでは、何らかの理由ですべての統計変数の間の相 関を観察したい場合を除いて、Compute CorrelationsとVariable Correlationの両方を選択す ることはお勧めしません。この両方を選択すると、他のシミュレーション結果と同じディレク トリに<cellname>.var_correlation.txtファイルが作成されます。このファイルはすべての統計 変数の間の相関を示しますが、大きすぎて解釈が困難な場合があります。Excel®スプレッドシ ートにインポートすれば見やすくなることがあります。 6) レシーバのシミュレーション NFと変換利得のシミュレーション このシミュレーションには、周波数ディバイダ、LNA、ミキサ、I/Qベースバンドチェーンが含 まれています。ベースバンドチェーンには、アナログ可変利得増幅器と同調可能アナログフィ ルタが含まれています。最初のシミュレーションでは、LNA入力からベースバンドチェーンの 1つの出力までの雑音指数と変換利得、および積分された出力雑音電圧を求めます。最初のシ ミュレーションはスケマティックビューで、比較的高速に実行されます。 sim_LNA_Mix_wBBスケマティックを開きます。 123 レシーバ(ベースバンドチェーンを含む)の雑音指数と変換利得を シミュレートするためのスケマティック 前のLNAと単一ミキサのシミュレーションとは異なり、ここでは、analogLib vsin信号源を上 書きする2つのNoisecorバーチャル信号源によってドライブされる周波数ディバイダを使用し て、VCOをモデル化します。前のシミュレーションで行ったように、周波数ディバイダを4つ のNoisecorバーチャル信号源で置き換えることにより、両方のミキサをドライブすることもで きます。各ミキサの出力は、I/Qチャネルのそれぞれに対応するアナログベースバンドチェーン をドライブします。 雑音指数のシミュレーションでは、外部負荷を提供する必要があります。この例では、1 kΩの 抵抗を使用します。Analog Design Environmentウィンドウを開き、Lab6_NF_ConvGainス テートをロードします。これには、前に示したように、Fundamental Freq.を分割した発振器 周波数FoscBy2に設定した小信号雑音解析があります。 124 小信号雑音解析の設定 FoscBy2はデザイン変数であり、readfreq(VtOsc,”$FLOW/design/noisecorOscOut.cor”)に 等しい値を持ちます。デザイン変数VtOscは、0∼2.5の範囲の任意の値に設定できます。これ は、noisecorOscOut.corファイル内の掃引変数の値の範囲です。readfreq()関数は、VtOscの 値に対応するファイルからの基本波分割周波数を返し、必要に応じて補間を行います。もう1 つの方法として、FoscBy2をシミュレーションで使用する特定の周波数に設定することもでき ます。 雑音解析では、雑音指数をいくつかのオフセット周波数で計算し、雑音を帯域幅全体にわたっ て積分するように指定しています。Integrated over Bandwidthの代わりにSpot Noiseを指定 して1つのオフセット周波数で雑音をシミュレートすると、精度は下がりますが高速になりま す。 125 雑音シミュレーションのタイプと周波数の指定 ベースバンドフィルタチェーンの利得と帯域幅に影響するデザイン変数はいくつかあります。 Vt、Vcfilter、Vcvgaがそうです。Vtは、1.85∼2.5 Vの間で同調されることにより、フィルタ帯 域幅を5∼10 MHzの間で調整します。Vcfilterは、0.4∼1.6 Vの間で変更されることにより、全 利 得 を 14 ∼ 30 dB の 間 で 調 整 し ま す 。 Vcvga も 利 得 を 調 整 し ま す 。 Vcfilter=1.2 お よ び Vcvga=1.72では、利得は約40 dBになります。 シミュレーションを実行します。 これには約1分4秒かかります。出力ログには、各出力周波数 での雑音指数および雑音電圧と、積分された出力雑音電圧が示されます。 雑音と変換利得のシミュレーション結果 モンテカルロ解析をオンにしてシミュレーションを再実行することもできますが、指定した反 復回数によってはかなり時間がかかる場合もあります。 Extracted Viewをシミュレーションする場合は、Analog Design EnvironmentでSetup > Design…を選択し、View Nameをschematicからconfigに変更します。sim_LNA_Mix_wBB configビューを開いて、各サブ回路のシミュレーション対象のビューを確認することもできま す。Jivaroによって作成されたreduced_extractedビューでこのシミュレーションを実行する には約1.5分かかり、雑音指数が9.5 dBに悪化し、変換利得が68.0 dBに悪化していることがわ かります。 126 レシーバのブロッカシミュレーション レシーバ入力に大きな不要トーン(「ブロッカ」)があると、レシーバの雑音指数と変換利得 が大幅に悪化することがあります。小信号雑音解析(SSNA)を使えばこの種のシミュレーシ ョンを効率的に実行できます。 これには、前のセクションと同じsim_LNA_Mix_wBBスケマティックを使用します。Analog Design Environmentを開いて、Lab6_NF_wBlockerステートをロードします。このステート には追加のバーチャル信号源が定義されているので、周波数F_Blocker、パワーP_Blockerの 干渉トーンが入力ポートに追加されます。 バーチャル信号源を使用した入力ポートへのブロッカ信号の定義 127 周波数F_Blockerは、目的の信号の周波数RF_Freq1よりもF_Offsetだけ上にデザイン変数とし て定義されています。 SSNA解析で、周波数F_Blockerに2番目のLarge Signalトーンが指定されています。 ブロッカを含む解析周波数の指定 解析には変数P_Blockerの掃引もあります。 これはブロッキング信号のdBm単位のパワーです。 ブロッカが目的の信号周波数よりも15 MHz上にある場合は、そのパワーを−70∼−40 dBmの 範囲で掃引すると、雑音指数が8.0 dBから13.7 dBに増加し、変換利得が約70.2 dBから約56.3 dBに低下します。このシミュレーションには約8分かかります。(ブロッカがなければ、NF値 は前のシミュレーションのNF値と一致しません。これは、これらのNF値が、帯域幅全体で積 分されるのではなく、スポットノイズから計算されるからです)。 128 ブロッカ信号のパワーレベルの増加による雑音指数の増加と変換利得の低下 1つのブロッカパワーレベルを選択してオフセット周波数を掃引したり、ネストした掃引を実 行して、ブロッカパワーとオフセット周波数が変換利得と雑音指数に与える影響を調べること もできます。 7)変調信号の作成 場合によっては、正弦波信号(これまでのシミュレーションで使用したもの)の代わりに、実 際の変調された信号を使ってシミュレーションを実行した方がよい場合があります。変調され た信号によるシミュレーションでは、回路の動作に関するより正確な情報が得られます。 変調された信号をGoldenGateでシミュレートするには、いくつかの方法があります。 1) 他のシミュレータ(Agilent PtolemyやSignal Studioなど)で作成された、または測定 器から得られたベースバンドI/Qデータファイルを読み込む方法。これらの信号の作成 は、比較的単純な作業です。ただし、信号をGoldenGateで使用する場合、少数の信号 パラメータ(搬送波周波数と信号の振幅またはパワーなど)しか変更できない可能性 があります。 129 2) goldenGateLibの変調信号源を使用する方法。これは最も簡単な方法ですが、付属する 変調のタイプは、QPSK、AM、FM、パルス、三角波などに制限されます。 3) Virtual Test Benchを使用する方法。これは、3GPPFDD(W-CDMA)アップリンク/ ダ ウ ン リ ン ク 信 号 源 、 TDSCDMA ア ッ プ リ ン ク / ダ ウ ン リ ン ク 信 号 源 、 WLAN 802.11aまたはWLAN 802.11b信号源、WMANアップリンク/ダウンリンク信号源のシ ミュレーションに最適な方法です。これらのテストベンチには、各信号源に対応する シンクも付属しているので、測定結果の観察も容易です。これらのVirtual Test Bench を使用する場合、スケマティックを変更する必要はありません。 4) Agilent Ptolemyからカスタム信号源およびシンクをエクスポートする方法。この方法 は、上記のVirtual Test Bench以外の信号源とそれに対応する測定が必要な場合に使用 するもので、GoldenGate内部で信号源設定を変更できます。これらの信号源とシンク は、スケマティックに配置する必要があります。これらの信号源とシンクをエクスポ ートするには、Agilent Ptolemyに関する知識が必要です。手順は、ADSドキュメント のSimulation > Signal Processing > ADS Ptolemy Simulation > ADS Ptolemy GoldenGate Modelsに記載されています。 このセクションでは、Ptolemyでデータファイルを作成し、そのファイルをGoldenGateで使用 する方法を説明します。このような場合のために、GoldenGateにはUSRIQPWS(ユーザ定義 のIQパワー信号源)およびUSRIQVS(ユーザ定義のIQ電圧源)が用意されています。これら は、I/Qデータ(変調されたキャリアの発生に使用)またはIデータのみ(ベースバンド信号の 発生に使用)と時間との関係を示すファイルを読み込みます。このデータファイルは、実際の 信号発生器から得ることも、ADS Ptolemyなどの他のEDAアプリケーションから得ることもで きます。このADS Ptolemyスケマティックは、サンプルを変更して作成されています。この他 にも、WiMax、3GPP、EDGE、HSPAなどのさまざまな信号の作成に利用できるPtolemyサン プルがあります。 ADS PtolemyによるWLANのI/Qデータの発生 130 TimedDataWrite コ ン ポ ー ネ ン ト 経 由 で 、 変 調 波 形 が .ascsig フ ァ イ ル フ ォ ー マ ッ ト の WLAN_80211b_CCK_IQ_Data.ascsigファイルに記録されます(.sig、.tim、.bintimファイルも 作成できますが、GoldenGate信号源は.timファイルや.bintimファイルを直接読み込むことはで きません)(これらのPtolemyセットアップの中には、実際の変調されたデータが現れるまで に比較的長い「アイドル」時間が存在するものがあります。シミュレーション結果をADSのデ ータディスプレイで観察して、必要に応じてデータ記録の開始時間を変更するとよいでしょ う)。 .ascsigファイルは$FLOW/designディレクトリにコピーされています。 この信号を使って回路をシミュレートする前に、GoldenGateが正しく信号を取り込んだことを 確認する簡単なテストを行います。WLAN_SourceGGスケマティックを開きます。 無線LAN信号源のテスト(psinを仮想usriqpws信号源に置き換え) ここでは、analogLib psin信号源が50 Ω負荷をドライブしています。この信号源は、変調デー タファイルを読み込み、パワーを設定するバーチャル信号源に置き換えられます。有効信号源 パワーを段階的に変化させて、予想される信号波形とパワーが発生することを確認します。 Lab7_WLAN_Testステートをロードし、バーチャル信号源の設定を確認します(Analog Design EnvironmentのOutputsの下にあるVir Srcボタンをクリックします)。 131 pIQmodバーチャル信号源のパラメータの指定 このファイルでは、Filter flagが0に設定されていないと、バーチャル信号源は動作しません。 信号源の基本波周波数は、エンベロープ解析でのFundamental Frequencyの設定と、Virtual Sourceダイアログで指定するトーンインデックスで設定されます。 132 エンベロープトランジェント解析のセットアップ 133 Pavs_dBm変数を掃引して、有効信号源パワーを変化させます。Fast Envelope Level 1または Level 2を選択すると、回路のモデルが最初に作成され、その後モデルのシミュレーションが実 行されます。これにより、全体としてのシミュレーション時間が大幅に短縮されます。エンベ ロープ帯域幅内の周波数変動が大きい回路をシミュレートする場合は、レベル2の方が正確で すが、レベル1よりも時間がかかります。 パワーを掃引する場合は、最大パワーレベルが掃引の最初の値であれば、それより小さなパワ ーレベルに対してこのモデルを再利用できるので、シミュレーション時間が短縮されます。 Auto Step が 選 択 さ れ て い る の で 、 シ ミ ュ レ ー シ ョ ン の タ イ ム ス テ ッ プ は 、 WLAN_80211b_CCK_IQ_Data.ascsigファイルのデータのタイムステップ(1/(11M)/6)に 等しく設定されます。これにより最も正確な結果が得られます。Stop TimeがASCIIファイルの 最後の時間値よりも大きな値に設定されている場合は、ファイル内のデータが先頭から再利用 されます。周期の総数がm*2nになるようにStop Timeを設定するのが適切です。ここで、mとn は整数です。(ここでは、Stop Timeは8192*TimeStepに設定されています)。この条件が満 たされない場合、Stop Time Roundingが選択されていれば、シミュレータはストップ時間を 自動的に調整します。 Export I/Q Waveformオプションを使用すると、変調信号をシミュレーションからファイルに エクスポートできます。(ただし、パラメータ掃引を実行する場合、掃引パラメータの最初の 値による結果だけがエクスポートされます)。これにより、あるシミュレーションで作成した データを、別のシミュレーションで信号源として簡単に使用できます。また、このデータをそ の後のPtolemyシミュレーションで使用することもできます。 指定されているPerformanceはMainChannelPower 1つです。これは、1,0,0の基本波トーンを 中心として、−5.5 MHz∼+5.5 MHzの帯域幅内のパワーを測定します。このPerformanceは送 信機のシミュレーションに有効ですが、受信機のシミュレーションにはあまり意味がありませ ん。GoldenGateのUserGuide.pdfに、エンベロープトランジェント解析に関連するさまざまな Performance式の説明があります。 シミュレーションを実行します。qWaveを開始し、WLAN_SourceGG_ET.blkの結果を開くた めに、File Browserを使って.../simulation/WLAN_SourceGG/GoldenGate/schematic/psfに 移 動 し て 、 WLAN_SourceGG_ET.blk フ ァ イ ル を 開 き ま す 。 Results Browser を 使 っ て 、 MainChannelPower Performanceを表に表示します。供給されるパワーがPavs_dBm変数より もわずかに小さいのは、帯域幅が±5.5 MHzに制限されているからです。 probe/Pout/voltage/toneの下でreを探して、軌跡ダイアグラムを作成します。 Parametersフィールドで、m-n-pの値を1,0,0に設定し、re変数を左クリックしてSet as Xをク リックします。次に、im変数を左クリックしてDisplay (Linear) vs. reを選択します。バンド スペクトラムをプロットすることもできます。これらのデータから、GoldenGateが目的の信号 を作成していることがわかります。 Setup > Environment …の下でData Display File (*.ds)を選択してデータセットの作成を指定 した場合は、データセットが作成され、データディスプレイを使って結果を表示できます(た だし、データセットはかなり大きくなる場合があります)。 134 メインチャネルパワーと軌跡図の表示 135 8)トランスミッタのシミュレーション ベースバンドチェーンの周波数応答のシミュレーション 送信機のベースバンドチェーンには、可変利得アンプとチューニング可能なアクティブフィル タが含まれています。このセクションでは、小信号周波数応答対チューニング電圧(利得と帯 域幅を制御)のシミュレーション方法を説明します。sim_TxBB_Chainスケマティックを開き、 Lab8_Freq_Responseステートをロードします。 ベースバンドチェーンの周波数応答のシミュレーション このステートのAC解析では、周波数に加えて、VGAの利得を設定するVcvgaと、同調可能なフ ィルタの帯域幅を設定するVtを掃引して、ネストした掃引を実行します。このシミュレーショ ン に か か る 時 間 は 約 30 秒 で 、 結 果 は デ ー タ デ ィ ス プ レ イ を 使 用 し て 表 示 さ れ ま す 。 sim_TxBB_Chain_ACデータディスプレイファイルを開きます。 136 チューニング可能なフィルタのシミュレーション結果 プロットには、すべてのVcvga値とVt値のフィルタの周波数応答と、マーカで選択した値に対 応する1本の太いトレースが表示されます。帯域幅と低周波利得も示されます。 デジタルステートファイルを使用した、ベースバンドチェーンの制御電圧の設定 デジタルステートファイルを使用すると、RF回路をデジタル制御下でテストできます。これは、 RFとデジタルのデザイナが共通のインタフェースを設計し、RF回路がさまざまなデジタル制 御ステートの下で正しく動作することを検証するために使用できます。ステート電圧の設定に は2つのモードがあります。1つは静的な設定であり、もう1つは時間の区分線形関数として変 化する設定です。1つめのモードは回路の定常状態の観察に、2つめのモードは過渡応答の観察 に便利です。 これを説明するために、可変利得増幅器のバイアス電圧をさまざまなレベルに設定するための 6ビットD/Aコンバータを作成しました。最初に、増幅器の定常状態利得を、DAC出力によって 設定される利得制御バイアス電圧の関数としてシミュレートします。次に、デジタル制御電圧 を時間的に変化させたときの利得の変動を、タイムドメインでシミュレートします。 sim_TxBB_Chain_wDAC_DSFスケマティックを開きます。 137 6ビットDACで制御されるトランスミッタベースバンドチェーン 制御「ワード」は、6ビット・バス経由でDACに供給されます。DACはきわめて単純なラダー 型構造であり、抵抗セクションの数を変更することでビット数を増減できます。 138 単純な6ビットD/Aコンバータ StaticDigitalWordSweepステートをロードします。Setup > Simulation Files…により、State Vector Parametersを表示します。 ステートベクトルパラメータの定義 139 State Vector Fileには、DAC入力に供給されるデジタルワードのリストが記録されています。 DACに供給するデジタルワードを記録した、GainWord.dsfファイル ステート時間=0では、VGA_DWordは00_00_00に設定されます。これは、DACのすべてのバイ ナリ入力が0、すなわちローレベルの値であることを示します。このファイルでは、ハイレベ ルの値が3.3 V、ローレベルの値が0 Vと定義されています。 ACシミュレーションで、StateTime変数は0∼1.5 μsまで1 μsステップで変化します。 140 StateTime変数をステップ変化させるAC解析 StateTimeの値のそれぞれに対して、GainWord.dsfファイルに指定されている対応するバイナ リデジタルワードがDAC入力に供給され、AC解析が実行されます。DC解析も実行されるので、 可変利得増幅器の入力における制御電圧のStateTimeによる変化も観察できます。シミュレー ションを実行します。かかる時間は10秒以下です。sim_TxBB_Chain_wDAC_DSF_ACデータ ディスプレイを開きます。利得が線形に変化するのは、制御電圧が1.25∼1.5 Vの狭い範囲だけ であることがわかります。 141 利得変化対周波数およびStateTime(制御電圧を設定) GainWord.dsfファイルを変更して、デジタルワードの掃引範囲を狭めることもできます。 次に、TranDigitalWordSweepステートをロードします。 別のステートベクトルファイルおよび区分線形信号源の使用 これは、似ているが異なるステートベクトルファイルGainWordTran.dsfを使用します。 142 DACに供給するデジタルワードを記録したGainWordTran.dsfファイル このシミュレーションでは、増幅器の入力に正弦波が供給された状態で、DACに供給されるデ ジタルワードが時間の関数として掃引されます。増幅器の利得が時間とともに増加するにつれ て、トランジェントシミュレーションは予想通り増幅器の出力信号の振幅が増加することを示 します。シミュレーションを実行します。かかる時間は5秒以下です。 sim_TxBB_Chain_wDAC_DSF_TRデータディスプレイを開きます。可変利得増幅器の制御電 圧が時間とともに増加し、それに伴って増幅器の出力信号の振幅が増加することが示されます。 143 制御電圧が時間とともに増加するのに伴って増幅器の出力信号振幅が増加 正弦波を使った送信チェーンの利得圧縮と歪みのシミュレーション 送信機の各ブロックに対して、受信機のブロックに関してすでに示したようなシミュレーショ ンを実行した後で、送信チェーン全体のシミュレーションを実行するのが有効です。 このため に最初にベースバンド正弦波信号を使用します。この信号を使うと、システムのどこで歪みと 利得圧縮が生じているかがわかります。 sim_UpConvChainスケマティックを開きます。これには、I/Qベースバンドチャネル用のチュ ーニング可能なフィルタと可変利得アンプ、周波数ディバイダによりドライブされるアップコ ンバージョンミキサ、出力パワーアンプがあります。 144 Q データ ソース ベースバンド Q チャネル パワーアンプ I データ ソース 周波数 ディバイダ ベースバンド I チャネル 送信チェーンのスケマティック I/Qベースバンド入力信号は、位相が90°異なる1 MHz正弦波です。最初のシミュレーションは、 送信チェーンの利得圧縮です。ベースバンド信号の位相が90°異なる場合は、出力信号はLO周 波数の上または下の単側波帯信号として現れます。この場合、ベースバンド入力信号の振幅を 掃引して、出力スペクトラムの歪みと、送信チェーンのさまざまなポイントでの利得圧縮を観 察します。 Analog Design Environmentを開いて、Lab8_SSB_GainCompステートをロードします。これ には、ベースバンド信号V_BB_dBの振幅を掃引するCR解析が含まれています。 145 ベースバンド信号振幅を掃引するキャリア解析 解析セットアップには、送信チェーンのさまざまなポイントで定義された7個の電圧プローブ もあります。データディスプレイを使用して結果を表示するので、データセットファイル (.ds)が作成されていることを確認する必要があります(この方法については、Lab 1で説明 しました)。後で他のシミュレーションを実行すると、特定の名前を付けない限り、このシミ ュレーションのデータセットファイルが上書きされます。Setup > Environment …の下で、デ ータセットファイルの名前を指定できます。 結果ファイルの命名方法の指定 ここでは、データセット名をsim_UpConvChain_SSB_CR.dsとします。 シミュレーションの実行には約9分かかるので、すぐに見られるように結果が保存されていま す。Results > Start DDSを選択してデータディスプレイを開きます。Data Displayウィンドウ で File > Open を 選 択 し て 、 保 存 さ れ て い る DDS フ ァ イ ル を 開 き ま す 。 sim_UpConvChain_SSB_CR.ddsファイルを選択してOKをクリックします。 146 単側波帯出力スペクトラム、利得、利得圧縮プロット (破線はPA出力に対する利得と利得圧縮を示します) 出力スペクトラムは単側波帯特性を示します。出力のLOフィードスルーが非現実的なほどに小 さいのは、スケマティックで不整合が考慮されていないからです。練習として、Mismatchモン テカルロシミュレーションを実行するか、スケマティックに不整合回路を挿入して、LOフィー ドスルーがどのように変化するかを観察してみるとよいでしょう。“Gains to Various Points” プロットは、ベースバンドチェーンの1つにおける、ベースバンドチェーン入力からミキサ出 力まで、およびベースバンドチェーン入力からパワーアンプ出力までの電圧利得を示します。 これらの利得の基準信号は、I/Q入力から構成される複素電圧BB_Inputです。データディスプ レイではmix()関数を使って特定のスペクトラム成分を指定しています。利得圧縮は、各入力 信号振幅での利得を、[0]で示される最初の(最小の)入力信号振幅での利得から減算すること によって計算されます。これらのプロットより、ベースバンドチェーンは利得圧縮にほとんど 寄与しないこと、パワーアンプは利得圧縮に大きく寄与することがわかります。 ベースバンド入力信号の位相を等しくして、同じシミュレーションを再実行することもできま す。この場合、出力スペクトラムは両側波帯測定を示します。同じスケマティックを使用して、 Lab8_DSB_GainCompステートをロードします。このステートは、2つの変更点を除いて、前 のステートと同じです。スケマティックの左上コーナーにあるV0信号源の初期位相を定義する のに使用されるDesign Variable PhaseDeltaは、90から0に変更されています。また、User Nameフィールド(Simulator Optionsフォームの下部のOutput Optionsの下)がSSBから DSB に 変 更 さ れ て い ま す 。 シ ミ ュ レ ー シ ョ ン を 実 行 す る と 、 デ ー タ セ ッ ト 名 は sim_UpConvChain_DSB_CR.dsになります。 147 このシミュレーションには約10分かかるので、これも結果がすでに保存されています。データ ディスプレイを開き、保存されているDDSファイルsim_UpConvChain_DSB_CR.ddsをロード します。 両側波帯出力スペクトラム、利得、利得圧縮プロット これらの結果についていくつか注意すべきことがあります。同じ入力信号振幅に対して、利得 圧縮が大きくなっています。これは、入力信号の位相が結果に影響することを示します。歪み トーンの傾きは最初は3未満ですが、傾きが一定でないので、一般的な3次インターセプトポイ ントのグラフによる外挿は使用できません。 148 無線LAN入力信号を使った送信チェーンのシミュレーション このシミュレーションでは、正弦波を使って送信チェーンの利得圧縮と歪みを評価する代わり に、変調されたベースバンド無線LAN信号を使用します。 このシミュレーションは、前の2つのシミュレーションで使用したものと同じ sim_UpConvChainスケマティックを使用しています。違いは、ベースバンド入力信号源の変 調I/Q波形がバーチャル信号源から供給されることです。また、前のシミュレーションではベー スバンド入力信号の振幅が掃引されていたのとは異なり、可変利得増幅器の制御電圧Vcvgaを 掃引することによって利得を変化させています。Lab8_WLAN_GainCompステートをロードし ます。 バーチャル信号源によるベースバンド変調入力信号の指定 149 ベースバンドI/Qデータファイルは、図に示すPtolemyシミュレーションから作成されています。 無線LANベースバンドI/Qデータを生成するPtolemyシミュレーション シミュレーションセットアップにはFast Envelope Analysisが指定され、Time Stepがデータ ファイルのタイムステップと等しく設定されています。この値は1/(11 M)/6です。Stop Timeはタイムステップの8192倍に設定されています(このストップ時間をもっと長く設定し ても、シミュレーション時間はほとんど変化しません)。Stop TimeがタイムステップのM*2N 倍(MとNは整数)の場合は、シミュレータがシミュレーションタイムステップを保持します。 周波数ディバイダがあるので、Fast Envelope解析で回路を正しく計算するには、 Initial Transient解析を実行する必要があります。これはEnvelope Options、Run Initial Transient の下で指定されています。 回路の各ノードでのシミュレーション結果を保存するために、いくつかのV-meterプローブが Outputs > GoldenGate Probes...の下で定義されています。 また、出力電圧Voutが保存されます。 150 V-meterプローブ経由で保存されるデータの定義 シミュレーションの実行には約1時間31分かかるので、結果を見るだけにします。Analog Design EnvironmentウィンドウからResults > GoldenGate Results > sim_UpConvChain_WLAN_ETを選択します。 Vcvgaの異なる値に対してVoutのスペクトラムを表示するための設定 Vcvgaの最小値を選択し、filterパラメータ(上図には示されていません)をnoneに設定して、 スペクトラムをプロットします。必要に応じて、Vcvgaの異なる値に対して同じ手順を繰り返 します。 151 Vcvgaの2つの異なる値に対するパワーアンプの出力でのスペクトラム 変調出力パワーを表示するには、Envelope Analysis Resultsダイアログでパラメータを図のよ うに設定します。 152 変調バンドパワーを表示するための設定 153 パワーアンプの出力の変調バンドパワー 最大出力パワーは約21.2 dBmです。 送信チェーンのさまざまなポイントでのEVMもプロットできます。増幅器の出力でのEVMを表 示するための設定を次に示します。 154 ノードVoutでのEVMの計算と表示のための設定 ビットレート、フィルタタイプ、ロールオフファクタは、変調された入力信号データに対応し ます。これらの値は、変調波形の作成に使用された元のPtolemyスケマティックから得られま す。 ベースバンドフィルタチェーンとミキサの出力でのEVMも表示します。これより、すべての歪 みがアンプから生じるわけではないことがわかります。 155 Vout での EVM ミキサ出力での EVM ベースバンドフィルタ 出力での EVM PA出力、ミキサ出力、ベースバンドフィルタ出力のEVM Vcvgaの値が小さい場合は、EVMはベースバンドチェーンの影響が支配的です。値が大きい場 合は、EVMはパワーアンプの影響が支配的です。 OFDM信号をシミュレートしてEVMを計算する必要がある場合は、Ptolemyを代わりに使用す る必要があります。GoldenGateシミュレーションでファイルを作成し、そのファイルを Ptolemyに読み込んでシミュレーションを実行してEVMを計算することもできます。 上記の送信チェーンのシミュレーションを、アンプ、プリスケーラ、ミキサのExtracted View を使って再実行しました(ただしシミュレートしたVcvgaの値は3ポイント)。これには約2時 間15分かかり、92,000のネットリストエレメントが使用されました。configビューを開くこと により、結果を上と同じ方法でプロットできます。 156 9) パワーアンプのシミュレーション ロードプルシミュレーションの実行 ロードプルシミュレーションは、供給パワーまたは電力付加効率を最大化したり、相互変調歪 みなどを最小化するために、デバイスに対する最適負荷インピーダンスを決定するのに役立ち ます。このシミュレーションセットアップは、パワーアンプFETのロードプルを示しています。 sim_G6PA_FET_LoadSrcPullスケマティックを開きます。ドレインとゲートの間に安定化回 路が組み込まれています。 ロード/ソースプルの実行用のスケマティック LoadPullステートをロードします。これには、有効信号源パワーRF_Pow_dBmを掃引し、信 号源パワーの各値に対してLoadpull Taskを実行するハーモニックバランス解析が含まれてい ます。掃引変数rho_valsおよびphi_valsは、負荷反射係数の振幅と位相を定義します。1つの Performance ( 基 本 波 周 波 数 で 負 荷 に 供 給 さ れ る パ ワ ー ) が 定 義 さ れ て い ま す 。 goldenGateLib ZF(周波数依存インピーダンス)コンポーネントを使うと、2次および3次高調 波周波数でのインピーダンスを指定できます。これらのコンポーネントは、圧縮ポイントを大 幅に超えてデバイスをドライブしない限り、ほとんど影響はありません。必要な場合は、ZFコ ンポーネントをさらに追加することもできます。 157 ロードプルタスクの定義 Min Freqより下とMax Freqより上では、PORT1の負荷はショートに置き換えられます。この タイプの解析では、掃引負荷の反射係数またはインピーダンスの周波数範囲を制限する必要が あります。広帯域の複素インピーダンスを実現するのは物理的に不可能だからです。 シミュレーションを実行します。これにかかる時間は10秒以下です。完了したら、Results > GoldenGate Results > sim_G6PA_FET_LoadPull_CR Loadpull Resultsを選択します。これに より、ロードプル等高線をプロットすることができますが、掃引変数RF_Pow_dBmの最小値の 場合だけです。Load Pull Resultsウィンドウで、Contour Plotの下のFromフィールドとToフ ィールドに値を入力する必要があります。Rangeフィールド内に入力した2つの値の間にある入 力値によってのみ、等高線が作成されます。 158 Load Pull Resultsプロットウィンドウ 159 ロードプル等高線 データディスプレイを使用して、結果をプロットすることもできます。データディスプレイを 開き、sim_G6PA_FET_LoadPull.ddsファイルを開きます。ここには、シミュレートされた反 射係数、最大電力付加効率、最大供給パワーだけでなく、供給パワーおよび電力付加効率等高 線が示されています。Pindexマーカを移動して、入力パワーによる等高線の変化を確認するこ とができます。DC消費電力を計算するのに必要なデータを抽出するために、バーチャル・プロ ーブ電流/電圧プローブが定義されています。変換利得と利得圧縮も、特定の負荷反射係数を 仮定してプロットされます。この負荷反射係数は、有効信号源パワーがマーカ“Pindex”によ って選択された値の場合に、最大のパワーが負荷に伝達される値です。これらのプロットから、 デバイスの圧縮特性を観察できます。 160 ロードプルデータディスプレイ ソースプルシミュレーションの実行 上述のロードプルシミュレーションは、50 Ωの信号源インピーダンスで実行されました。これ は通常、最大パワー伝送に最適な信号源インピーダンスではありません。信号源インピーダン スが変更されるソースプルシミュレーションにより、供給パワーと電力付加効率に最適な信号 源インピーダンスが決定されます。同じsim_G6PA_FET_LoadSrcPullスケマティックを使用 して、SourcePullステートをロードします。入力ポートの反射係数の大きさと位相が掃引され、 有効信号源パワーも掃引されます。負荷反射係数は、上記のロードプル解析で求められた固定 値に設定されます。 SourcePullステートをロードします。これはLoadPullステートに似ていますが、ロードプルの 代わりにネストした掃引タスクが実行される点が異なります。 信号源反射係数の大きさと位相のネストした掃引 161 信号源反射係数の大きさと位相は、次のデザイン変数の式によってインピーダンスに変換され ます。 rho=rho_vals*complex(cos(phi_vals*M_PI/180),sin(phi_vals*M_PI/180)) Zsource=Z0*(1+rho)/(1-rho) この複素インピーダンスは、入力信号源をオーバーライドするpsinバーチャル信号源で使用さ れます。同様に、負荷反射係数は負荷ポートをオーバーライドする複素インピーダンスに変換 されます。 データディスプレイファイルsim_G6PA_FET_SourcePull.ddsは、ロードプルファイルと類似 していて、最適な信号源の反射係数が示されています。 ソースプルシミュレーションの結果 1 dB利得圧縮ポイントでのロードプルシミュレーションの実行 ロードプル内で利得圧縮シミュレーションを実行することができます。このシミュレーション では、入力パワーレベルをある範囲でステップ変化させるのではなく、負荷反射係数のそれぞ れの値に対して、トランスデューサのパワー利得が1 dB(または指定した値)だけ低下するま で、シミュレータが自動的に入力パワーを掃引します。 162 こ こ で は 、 同 じ sim_G6PA_GET_LoadSrcPull ス ケ マ テ ィ ッ ク を 使 用 し ま す 。 LoadPull_GainCompステートをロードします。これは上記のソースプルステートと似ていま すが、負荷インピーダンスが変化し、Carrier Analysisの代わりにGain Compression解析が実 行される点が異なります。シミュレーションを再実行しても、保存されているデータディスプ レイファイルsim_G6PA_FET_LoadPull_GCを単に開いてもかまいません。 1 dB利得圧縮ポイントでのロードプルシミュレーションの結果 これは、1 dB利得圧縮ポイントでのロードプルの等高線を示します。これはまた、この圧縮ポ イントで伝達される最大パワー、対応するトランスデューサパワー利得、および負荷反射係数 も示します。この負荷反射係数での利得および利得圧縮対出力パワーのプロットも表示されて います。 パワーアンプの1トーン利得圧縮と電力付加効率 ここでは、Momentumシミュレーションデータを再利用して、すべてのビアおよびインピーダ ンス整合スパイラルインダクタをモデル化するために、パワーアンプの利得圧縮と電力付加効 率をシミュレートします。sim_G6PA_wMomIndsスケマティックを開きます。 163 パワーアンプのシミュレーションセットアップ パワーアンプのサブ回路は、24ピンのサブ回路を使用して、パワーアンプの11個のスパイラル インダクタをモデル化しています。24ピンのサブ回路は、11個のスパイラルの同時Momentum シミュレーションによって作成されました。 パワーアンプのサブ回路の一部 Lab9_GainComp_PAE ス テ ー ト を ロ ー ド し ま す 。 こ れ に よ り 、 有 効 信 号 源 パ ワ ー RF_Pow_dBmが掃引されます。このステートはデータセットを作成します。データセットの名 前は、User Name として“Pswp”と追加することにより、次に行うIP3シミュレーションと区別 されます。 これを指定するには、Setup > Environment …を選択します。 164 データセットの名前の指定 sim_G6PA_wMomInds_PSwp_CRデータディスプレイには、負荷に供給されるパワーに対し て利得圧縮/電力付加効率がプロットされます。 利得圧縮と電力付加効率のプロット interp()関数は、シミュレートした入力パワーレベル間を補間して、実際のシミュレーション 掃引ステップ幅よりも高い分解能を得るために用いられます。 このステートで、CRステートを無効にし、GCシミュレーションを有効にして、利得圧縮ポイ ントを自動的に決定します。この図のように設定します。 利得圧縮シミュレーションの設定 シミュレーションを実行し、1 dBの利得圧縮ポイントを直接計算します。 165 パワーアンプの利得圧縮プロット 166 パワーアンプの2トーン、パワー掃引IP3、利得圧縮、電力付加効率 このシミュレーションでは、パワーアンプのIP3ポイント、利得、利得圧縮、電力付加効率を計 算します。同じsim_G6PA_wMomIndsスケマティックを使用して、Lab9_Swept_IP3ステート をロードします。 IP3の2トーン入力パワー掃引シミュレーション これは前のステートと類似していますが、psinバーチャル信号源によって2トーン解析と2トー ン入力信号源が実装されています。また、データセットのUser Nameが異なります。 シミュレーション結果を区別するために別の名前を指定 シミュレーションを実行します。これには約20秒かかります。 sim_G6PA_wMomInds_SweptIP3データディスプレイファイルを開きます。シミュレーション 結果からは、1トーン入力信号の場合よりも、利得圧縮が約2 dB低い出力パワーで発生してい ることがわかります。 167 2トーン掃引シミュレーションの結果 IP3 (TOI) のシミュレーション結果 今度は、Lab9_Fast_IP3ステートをロードしてシミュレートします。これにより、IP3ポイント が非常に短時間(2秒以下)で計算され、出力ログに結果が自動的に出力されます。2つの方法 で計算されたIP3ポイントとパワー利得は、非常によく一致します。 168 自動IP3シミュレーションの結果 無線LAN入力信号を使ったパワーアンプのシミュレーション 前の2つのセクションの1トーン/2トーン利得圧縮シミュレーションでは、増幅器の圧縮特性が シミュレーション対象の信号のタイプによって異なることがわかりました。正弦波をシミュレ ートして歪みの特性を評価する代わりに、変調信号を用いることで、より実際に近い状態をシ ミュレートすることが可能になります。このセクションでは、LNAのLab 1で説明したものと 同じタイプのVirtual Test Benchを使用します。 最初に、単一のパワーレベルのWLAN信号を使ってパワーアンプをシミュレートします。次に、 入力パワーレベルを掃引して、変調された帯域内出力パワーとEVMを入力パワーの関数として 観察します。 上と同じsim_G6PA_wMomIndsスケマティックを使用して、Lab9_WLAN_VirtualTestBench ステートをロードします。これにはFast Envelope Transientシミュレーションが設定されてい ます。信号源パワーは、デザイン変数RF_Pow_dBmで設定されます。この変数は、Virtual Test BenchのSource Parametersタブの下で使用されます。 169 WLAN Virtual Test BenchとSource Parametersタブ Lab 1と同様に、LNAの入力に接続された信号源を実効的に除去するため、信号源の50 Ωと Virtual Test Bench信号源の50 Ωの両方で入力に負荷を与えるのではなく、バーチャル信号源 に1 GΩの抵抗を使用して大きな負荷を与えます(実効的にはオープンになります)。 エンベロープトランジェント解析でAuto Stepを使用することにより、シミュレーションタイ ムステップがVirtual Test Bench信号源から自動的に決定されます。 エンベロープトランジェントシミュレーションのパラメータの指定 Stop Timeは、Virtual Test Benchに指定されたシンクが、指定された測定を実行するために 十分なデータを収集できる長さに設定する必要があります。この設定が短すぎると、シミュレ ーションは失敗しますが、必要な最小のStop Timeが出力ログに記されます。シンクが必要と するより長い時間に設定しても問題はありません。シンクが十分なデータを収集すると、シミ ュレーションは自動的に停止するからです。Time Roundingの設定が意味を持つのは、シンク による計算に加えて他のポストプロセッシングを実行しようとしている場合だけです。 170 シミュレーションを実行します。かかる時間は約20秒です。データディスプレイファイルが自 動的に開き、Virtual Test BenchのSink Parametersタブで選択した測定対象に応じて、シミ ュレーションの結果が各ページに表示されます。 コンスタレーションダイアグラム CCDF曲線と出力パワーデータ 171 出力スペクトラムとスペクトラムマスク仕様 EVMデータ 次 に 、 有 効 信 号 源 パ ワ ー を 掃 引 し 、 EVM の 悪 化 対 出 力 パ ワ ー を 観 察 し ま す 。 Envelope Analysisコントローラで、Specification Variableを選択し、Variable NameにRF_Pow_dBm と入力し、図に示すように値を掃引します。 172 有効信号源パワーの掃引の指定 パワーを掃引する場合は、最大パワーレベルが掃引の最初の値であれば、最初のパワーレベル に対してFast Envelope Transientが作成するモデルを、それより小さなパワーレベルに対して 再利用できるので、シミュレーション時間が短縮されます。 シミュレーションを実行します。 かかる時間は約2分10秒です。結果をプロットするためのテ ンプレートでは、追加の掃引変数の存在が仮定されていないため、一部の結果が正しく表示さ れません。平均EVMおよび平均出力パワー対有効信号源パワーを表示できます。また、EVM対 出力パワーをプロットすることもできます。 最初に、直交座標プロットを挿入します。 直交座標プロットの挿入アイコン EVM変数を選択します。 平均EVM変数の選択 >>Add Vs…>>をクリックし、独立変数を選択します。 173 独立変数の選択 EVM対出力パワー 174 スペクトラムの側波帯は、入力パワーの増加とともに急速に増加します。これはこのデザイン ではEVMよりも大きな問題です。 有効信号源パワーによる増幅器の出力スペクトラムの変動 パワーアンプのExtracted Viewのシミュレーション sim_G6PAセルは、パワーアンプのExtracted Viewのシミュレーション用セルです。Extracted Viewのシミュレーション用のこのセルのセットアップに関連するステートがいくつかあります。 av_extracted_sub View Nameは、もともとG6PAセル用に使用されていました。ここでは、 G6PAセルのav_extracted_subビューに対して、Parasitic Typesを以下のように設定して、 Jivaro for GoldenGateを実行しました。 パワーアンプExtracted Viewネットリストを削減するためのJivaroの設定 175 削減結果を見ると、寄生誘導結合(Ks)がきわめて大きく削減されていることがわかります。 パワーアンプのExtracted Viewに対するJivaroの実行による、寄生成分削減結果 その他の点では、シミュレーションステートは前のセクションと同じです。 Jivaroからのreduced_extractedビューの使用を指定 ネットリストに75,000を超えるエレメントがあるので、これらのシミュレーションの実行は長 時間かかります(1∼3.5分)。このうち最も高速なシミュレーションは、利得圧縮解析の Lab9_GC_ExtViewです。1 dBの利得圧縮出力パワーポイントが約21.26 dBmであることがわ かります。2つの異なるExtracted Viewのシミュレーションから計算された1 dB利得圧縮ポイン トは、かなりよく一致しています。 reduced_extractedビューを使った利得圧縮シミュレーションの結果 176 av_extracted_subビューを使った利得圧縮シミュレーションの結果 次のプロットは、Extracted ViewのVirtual Test BenchシミュレーションによるEVM結果を示 します。 reduced_extractedビューを使ったEVM対出力パワーの結果 ワークショップのまとめ こ の RFIC フ ロ ー ワ ー ク シ ョ ッ プ で は 、 Cadence Virtuoso RFIC デ ザ イ ン フ ロ ー の 中 で GoldenGateを使うことで次の作業を効率的に実行できることを示しました。 1) RFIC送信機/受信機の、VCO、プリスケーラ、送信/受信ミキサ、送信/受信ベース バンドチェーン、LNA、パワーアンプなどの各ブロックをシミュレートできます。 2) 重要なレイアウト構造(この例ではスパイラルインダクタ)の電磁界モデルを抽出し、 それを再利用してより正確な上位レベルのシミュレーションを実行できます。 3) 各ブロックの抽出ビューをシミュレートできます。 4) 送信機/受信機ブロック図全体を、トランジスタレベルで、Extracted Viewを含めてシ ミュレートできます。 177 5) Fast Envelope Transientを使って各ブロックを個別に、および送信チェーン全体を無 線LAN信号を使ってシミュレートできます。RFICデザイナは、1 dB利得圧縮やIP3など の仕様に頼って、回路が最終仕様を満たすかどうかを推測する必要がなくなります。 また、ワークショップ全体を通して、データディスプレイの機能と柔軟性についても示しまし た。 付録:ワークショップデータベース内のセルおよびステートとその 内容 LNA_NF_Investセル:入力/出力インピーダンス整合のない単純化されたLNAのバージョンで、 利得および雑音指数対信号源インピーダンスの関係を調査するために使用します。 • Lab1_LNA_Invest_DCステート:DCシミュレーション、スケマティックへのバイアス ポイントのバックアノテーション、詳細な動作点情報を表に表示。 • Lab1_LNA_Invest_SPステート:Sパラメータ解析、有能利得円、データディスプレイ の紹介、関数を使った帯域幅の計算、テンプレートを挿入する方法。 sim_G1LNA_wMomIndsセル:スパイラルインダクタのMomentumモデルを使用したLNAのさ まざまなシミュレーション用。 • Lab1_DCステート:上記のDCシミュレーションと結果を再現します。 • Lab1_Linear_Gain_NFステート:LNAのSパラメータと雑音指数、雑音寄与表。 • Lab1_GainCompステート:自動1 dBパワー利得圧縮シミュレーション、Performance Editorを使った出力の定義、電圧利得圧縮シミュレーション。 • Lab1_Swept_Input_Power_HBステート:入力パワーの搬送波解析掃引、パワー利得お よび電圧利得のdB単位での出力、ダイレクトプロットを使った定常状態出力波形のプ ロット。 • Lab1_WLAN_VTBステート:Virtual Test Benchを使った、WLAN入力信号のシミュレ ーションと、雑音の存在下で入力信号パワーを下げたときのEVMの悪化の測定。同じ データディスプレイに対する2つの異なるシミュレーションから、コンスタレーション をプロットする方法。 • Lab1_WLAN_VTB_wBlockerステート:Virtual Test Benchを使用した、正弦波ブロッ カが存在する状態でのWLAN入力信号のシミュレーションと、EVMの悪化の表示。 • Job Managerの使用法の概要。 • Skillスクリプトを使ってJob Managerを実行し、異なるコーナーをシミュレートします。 • Skillスクリプトを使ってJob Managerを使用せずに異なるステートを定義して実行し、 データディスプレイで結果を表示します。 sim_G2MixGGセル:ダウンコンバートミキサのさまざまなシミュレーション用。 178 Lab2_NF_Gainステート:SSNA(小信号雑音解析)を使った雑音指数と変換利得の計算、雑音 指数および変換利得対LO振幅のシミュレーションと表示。 • Lab2_IP3ステート:自動IP3ポイントシミュレーション。 • Lab2_IP3_Swept_CRステート:RF入力信号振幅の掃引による利得圧縮とIP3のシミュ レーション。データディスプレイを使ってマルチトーンシミュレーションから結果を 計算する方法の詳細。 • Lab2_IP2ステート:モンテカルロシミュレーションからの、ミキサの抽出ビューの2次 および3次インターセプトポイントシミュレーション。QMCCを使った並列コアでのモ ンテカルロシミュレーションの追跡。qWaveまたはデータディスプレイを使った統計 結果の表示。 G7VCO_indsMomセル:Momentumを使ったVCOのスパイラルインダクタのシミュレーション。 ビアの単純化、サブストレートスタックアップの定義、ポートの作成、結果からの回路シミュ レータビューの作成を含みます。 Inductor_LRQ_Calcセル:MomentumモデルのシミュレーションとL、R、Qの計算。 • Lab3_Inductor_LRQセル:データディスプレイ式を使ったMomentumモデルのシミュ レーションとL、R、Qの計算。 sim_G7VCO_w_indsMomGGセル:VCOのさまざまなシミュレーション。 • Lab3_VCO_Instabilityステート:予想される不安定周波数の確認。 • Lab3_Freq_vs_Vtステート:発振の定常状態周波数および波形対同調電圧、データディ スプレイでのdiff()関数を使った同調感度の計算。 • Lab3_VCO_PhNoise_vs_Vtステート:発振器位相雑音対同調電圧およびオフセット周波 数。 sim_G7VCO_wPrescaler_w_indsMomセル:VCOとプリスケーラ(周波数ディバイダ)を組み 合わせた、さまざまなシミュレーション。 • Lab4_OscFreq_vs_Vtuneステート:発振器と周波数ディバイダを同時にシミュレーシ ョン、周波数対同調電圧、Initial Transientシミュレーションのセットアップ、データ ディスプレイを使った発振器およびディバイダのトランジェント波形および周波数対 時間の表示、定常状態波形およびスペクトラムの表示。 • Lab4_PhaseNoiseステート:VCOおよび周波数ディバイダの出力での位相雑音のシミュ レーション。 • Lab4_Create_NoiseCorステート:VCO出力または周波数ディバイダ出力からの雑音相 関ファイルの作成。 sim_Div_wNoisecorセル:任意位相雑音プロファイルで周波数ディバイダをドライブした noisecor信号源のシミュレーション。 • Lab4_Using_a_Noisecorステート:noisecorファイルに雑音オフセット周波数および位 相雑音データを入力して使用します。このnoisecorファイルで周波数ディバイダをドラ イブして位相雑音をシミュレートします。 179 sim_LNA_Mix_wNoiseCorセル:上で作成したnoisecorファイルをLOに使用した場合の、LNA とミキサの組み合わせの雑音指数と変換利得。 • Lab5_NFステート:雑音指数と変換利得を計算するSSNAシミュレーション。 • Lab5_IP3_Swept_CRステート:Performance Expressionを使って計算した変換利得と IP3。 • Lab5_CG_IP3_Swept_CRステート:入力信号パワーを線形領域から圧縮まで掃引した ときのIP3および変換利得。 sim_LNA_Mix_wNoiseCorMCセル:このセル内のExtracted Viewに対してJivaroGGを実行す る方法を説明し、寄生成分削減の大きさを示します。次に、雑音指数と変換利得のモンテカル ロシミュレーションを実行します。 • Lab5_NF_MCステート:雑音指数と電圧利得のモンテカルロシミュレーションを実行 し、元のExtracted Viewと削減後のExtracted Viewのシミュレーション結果を比較しま す。qWaveを使って応答と統計変数の間の相関を観察する方法を示します。 sim_LNA_Mix_wVCOセル:VCOをLOに使用した場合の、LNAとミキサの組み合わせの雑音指 数と変換利得。 • Lab5_NF_wVCOステート:雑音指数および変換利得対RF入力周波数のSSNAシミュレ ーション。 sim_LNA_Mix_wBBセル:ダウンコンバートミキサとベースバンドチェーンの両方を含むレシ ーバのさまざまなシミュレーション。 • Lab6_NF_ConvGainステート:レシーバ全体の雑音指数と変換利得、最初はスケマテ ィックビュー、次はJivaroGGで削減されたExtracted Viewのシミュレーション。 • Lab6_NF_wBlockerステート:レシーバ全体の雑音指数と変換利得を、ブロッカ信号の 存在下で、パワーを掃引しながらシミュレートします。 WLAN_SourceGGセル:Ptolemyシミュレーションで作成されたファイルを使ったWLAN変調 RF信号の作成。 • Lab7_WLAN_Testステート:出力パワー変数を掃引したときに、IQデータファイルを 読み取るバーチャル信号源が、指定された出力パワーを持つ信号を発生することを示 します。Performance Expressionを使って特定の帯域幅内の変調出力パワーを計算し ます。 sim_TxBB_Chainセル:ベースバンドチェーンのフィルタと増幅器の周波数応答のシミュレー ション。 • Lab8_Freq_Responseステート:フィルタの同調電圧、可変利得増幅器の制御電圧、信 号源周波数を掃引するAC解析。結果はデータディスプレイに表示され、帯域幅計算が 含まれます。 sim_TxBB_Chain_wDAC_DSFセル:ベースバンドチェーンのフィルタと可変利得増幅器の周 波数およびトランジェント応答を、増幅器の制御電圧をDAC出力によって設定してシミュレー トします。 180 • • StaticDigitalWordSweepステート:DAC入力ワードがデジタルステートファイルによ って設定され、シミュレーション中にステップ変化します。シミュレーション結果を データディスプレイで表示します。 TranDigitalWordSweepステート:DAC入力ワードがデジタルステートファイルによっ て設定され、その制御ビットが時間の関数として変動します。制御電圧と増幅器の出 力信号の時間による増加をデータディスプレイで表示します。 sim_UpConvChainセル:さまざまな入力信号によってトランスミッタに発生する歪みのシミ ュレーション。 • Lab8_SSB_GainCompステート:ベースバンドI/Q入力への正弦波信号によってトラン スミッタをシミュレートします。信号の振幅を掃引し、送信チェーンの各ポイントで の利得および利得圧縮をデータディスプレイに表示します。 • Lab8_DSB_GainCompステート:ほぼ同じシミュレーションですが、ベースバンド入 力信号が同相である点が異なり、それによって結果の歪みが変化します。 • Lab8_WLAN_GainCompステート:ファイルからのベースバンドI/Q WLAN入力信号に よって送信チェーンをシミュレートします。可変利得増幅器の制御電圧をパラメータ として掃引してエンベロープトランジェントを実行します。GoldenGateのポストプロ セッシング機能を使ってEVMを計算します。 sim_G6PA_FET_LoadSrcPullセル:トランスミッタのパワーアンプのデバイスに対してソー ス/ロードプルシミュレーションを実行します。 • LoadPullステート:ロードプルタスクを使ってパワーアンプFETのロードプルシミュレ ーションを実行します。結果はAWDとデータディスプレイを使ってプロットされます。 • SourcePullステート:信号源反射係数の大きさと位相が、ネストした掃引タスクで掃引 されます。データディスプレイを使ってソースプル等高線がプロットされます。 • LoadPull_GainCompステート:ソースプルに似ていますが、今度は負荷反射係数と位 相が、ネストした掃引で掃引されます。各反射係数に対して、1 dB利得圧縮出力パワ ーでの出力パワーが求められます。データディスプレイを使って等高線がプロットさ れます。 sim_G6PA_wMomIndsセル:完成したパワーアンプの利得圧縮と電力付加効率のさまざまな シミュレーション。 • Lab9_GainComp_PAEステート:掃引入力パワー搬送波解析からの1トーン出力パワー、 利得、利得圧縮、PAE。結果はデータディスプレイで計算されます。GC(利得圧縮) シミュレーションが設定されています。 • Lab9_Swept_IP3ステート:掃引入力パワー搬送波解析からの2トーン出力パワー、利 得、利得圧縮、PAE、IP3。結果はデータディスプレイで計算されます。 • Lab9_Fast_IP3ステート:高速IP3シミュレーション。 • Lab9_WLAN_VirtualTestBenchステート:Virtual Test Benchを使って、Ptolemyから のWLAN信号によって増幅器をシミュレートし、Ptolemyシンクを使ってEVMなどの結 果を計算して、データディスプレイで表示します。入力パワーを掃引してEVM対出力 パワーをプロットする方法は、ワークショップドキュメントに記載されています。 181 sim_G6PAセル:パワーアンプのExtracted Viewに対してJivaroGGを実行します。 • Lab9_GainComp_PAE_ExtViewステート:掃引入力パワー搬送波解析からの1トーン出 力パワー、利得、利得圧縮、PAE。結果はデータディスプレイで計算されます。 • Lab9_GC_ExtViewステート:1 dB利得圧縮の自動シミュレーション。 • Lab9_WLAN_Pswp_ExtViewVTBステート:Virtual Test Benchを使って、Ptolemyから のWLAN信号で増幅器をシミュレートし、Ptolemyシンクを使ってEVMなどの結果を計 算して、データディスプレイで表示します。 182 Remove all doubt www.agilent.co.jp/find/emZailupdates-Japan Agilent からの最新情報を記載した電子メー ルを無料でお送りします。 www.agilent.co.jp/find/agilentdirect 測定器ソリューションを迅速に選択して、 使用できます。 アジレント・テクノロジーでは、柔軟性 の高い高品質な校正サービスと、お客様 のニーズに応じた修理サービスを提供す ることで、お使いの測定機器を最高標準 に保つお手伝いをしています。お預かり した機器をお約束どおりのパフォーマン スにすることはもちろん、そのサービス をお約束した期日までに確実にお届けし ます。熟練した技術者、最新の校正試験 プログラム、自動化された故障診断、純 正部品によるサポートなど、アジレン ト・テクノロジーの校正・修理サービス は、いつも安心で信頼できる測定結果を お客様に提供します。 また、お客様それぞれの技術的なご要望 やビジネスのご要望に応じて、 www.agilent.co.jp/find/open Agilent は、テスト・システムの接続とプロ グラミングのプロセスを簡素化することに より、電子製品の設計、検証、製造に携わ るエンジニアを支援します。Agilent の広範 囲のシステム対応測定器、オープン・イン ダストリ・ソフトウェア、PC 標準 I/O、ワ ールドワイドのサポートは、テスト・シス テムの開発を加速します。 アプリケーション・サポート システム・インテグレーション 導入時のスタート・アップ・サービス 教育サービス など、専門的なテストおよび測定サービ スも提供しております。 世界各地の経験豊富なアジレント・テク ノロジーのエンジニアが、お客様の生産 性の向上、設備投資の回収率の最大化、 測定器のメインテナンスをサポートいた します。詳しくは: www.agilent.co.jp/find/removealldoubt © Agilent Technologies, Inc.2009 Published in Japan, April 3, 2009 5989-3158JAJP 0000-00DEP 183