ミックスドシグナル回路シミュレーション
電子機器の機能をシミュレーションする主な目的は、設計の性能を表現し、解析することです。最も単純なデバイスであっても、シミュレーションが提供する機能なしでは設計を想像することは不可能です。シミュレーション・ソフトウェアを使用することで、設計中のデバイスの全モードを損傷することなく解析したり、実際の条件では測定が困難なパラメータや特性を決定したり、高価な測定装置を使用しなければならないような測定を実行したりすることが可能になります。
SPICE(Simulation Program with Integrated Circuit Emphasis)は、オープンソースのソフトウェアパッケージとして開発され、幅広い人気と継続的な発展につながっています。Altium DesignerのMixed Simulation(MixedSim)テクノロジは、SPICEアルゴリズムをベースに改良されたコアを使用し、アナログ、デジタル、またはアナログとデジタルの混合デバイスの電気回路をシミュレートするように設計されています。真のミックスド・シグナル・シミュレータであり、アナログ・デバイスとデジタル・デバイスの両方を含む回路を解析することができます。SPICE3f5と完全に互換性があり、PSpice®およびLTspice®のデバイス・モデルもサポートしています。
シミュレータはインストールされていますか?
デフォルトで Altium Designer にインストールされている Altium Designer Mixed Simulationシステム拡張機能により、Mixed Simulation 機能を利用できます。この拡張機能は、Altium Designer のExtensions and Updatesページから手動でインストール/削除または更新することができます(Current User control menu -
からExtensions and Updatesオプションを選択してください)。
Altium Designer でシミュレーションをクイックスタートするには、Shared Documents フォルダ(C:˶UsersPublicDocuments˶AltiumAD˶Examples ˶SimulationQuick Startfor default installation)にあるシミュレーション例のセットを参照してください。各例は、シミュレータのセットアップと結果の解釈に関する情報とともに、シミュレー ションの実際の使用例を示しています。
Altium Designerでは、OrCAD®、LTSpice、KiCad®など様々なフォーマットの回路図をインポートできます。これらはImport Wizardを使用してインポートされ、各ファイルタイプはAltium Designerにインストールされた拡張機能によって処理されます。他の設計ツールとの連携についてはこちらをご覧ください。
Altium Designerでのシミュレーションプロセスは、次の段階に分けることができます:
-
シミュレーションのためのプロジェクトの確認と準備- 適切なシミュレーション結果を得るために、シミュレーションするデザインを確認し、十分に準備する必要があります。これには、シミュレーション・モデルによるコンポーネントの配置、信号源の設定、プローブを使用した回路の注目点の定義などが含まれます。検証プロセスでは、解析対象の回路図に何か問題がある場合にフィードバックが得られます。
-
シミュレーションの設定と実行- シミュレーションは回路図から直接実行でき、シミュレーション波形を解析しながら再実行することもできます。必要な解析タイプとプロットする出力式を素早く設定し、シミュレーションを実行します。
-
シミュレーション結果の操作- シミュレーション結果はSimDataエディタに表示されます。これは、シミュレーション結果を迅速かつ効率的に解析できる豊富な機能を備えた環境であり、設計の評価、デバッグ、そして最終的な動作確認を可能にします。
混合シミュレーション - ガイド例
以下の折りたたみ可能なセクションでは、シミュレーション可能なフィルター回路の回路図を作成し、回路シミュレーション解析を実行する手順を説明します。
新しいデザインプロジェクトの作成
-
メインメニューからFile » New » Projectコマンドを選択します。
-
プロジェクトの作成ダイアログが開きます:
新しいプロジェクトが作成され、プロジェクトパネルにプロジェクトエントリが表示されます。
-
Locationsリストで、ワークスペースのエントリーを選択します(ワークスペースを使用していない場合は、Local Projectsエントリーを選択します)。
-
Project Typeリストで エントリを選択。
-
Project Name欄にFilterを入力。
-
ダイアログの右側にあるその他のオプション(保存フォルダなど)を必要に応じて設定し、Createボタンをクリックします。
-
Projectsパネルでプロジェクトエントリを右クリックし、コンテキストメニューからAdd New to Project » Schematicコマンドを選択します。
-
新しい回路図ドキュメントのブランクシートが表示されます。Projectsパネルのエントリを右クリックし、コンテキストメニューからSave Asコマンドを選択してハードドライブに保存します。Save Asダイアログが開き、プロジェクトファイルと同じ場所にドキュメントを保存できます。File nameフィールドにFilterと入力し、Saveをクリックします(拡張子は自動的に追加されるので、入力する必要はありません)。
-
プロジェクトに新しいドキュメントを追加したので、プロジェクトファイルが変更されました。プロジェクトパネルのプロジェクトエントリを右クリックし、Saveを選択してプロジェクトの変更を保存します。
回路をキャプチャする
シミュレートするフィルター回路を以下に示します。このセクションでは、必要なコンポーネントを見つけ、コンポーネントのプロパティを設定し、回路図を配線します。

フィルター回路の概略図
シミュレーション準備部品の配置
-
回路図のコンポーネントは、Altium Designer のインストール時にデフォルトで提供されるSimulation Generic Componentsライブラリから取得します:
-
デザインスペースの右下にあるPanelsボタンをクリックし、表示されるメニューからComponentsを選択してComponentsパネルを開きます。
-
パネル上部のドロップダウンからSimulation Generic Componentsライブラリを選択するか(パネルがコンパクトモードの場合)、パネル左上の
ボタンをクリックしてCategoriesペインにアクセスします(パネルが通常モードの場合)。ライブラリが提供するコンポーネントのリストがパネルに表示されます。
-
オペアンプを配置します:
-
コンポーネントリストでOpAmp with power terminalsコンポーネントを見つけ、そのエントリを右クリックして、メインメニューからPlaceコマンドを選択します。コンポーネントはデザインスペースのカーソルにくっついて表示されますが、まだコンポーネントを配置しないでください。
ComponentパネルのSearchフィールドを使って、必要なコンポーネントを素早く見つけることができます。
-
オペアンプがカーソル上に浮いている状態でTabキーを押してPropertiesパネルを開き、回路図にコンポーネントを配置する前にプロパティを編集することができます。
-
PropertiesパネルのGeneral領域で、DesignatorをU1 に変更します。
-
デザインスペースの Pause ボタン (
) をクリックして、コンポーネントの配置に戻ります。
-
デザインスペースでクリックして、オペアンプのインスタンスを配置します。
-
さらにコンポーネントを配置するには、コンポーネント配置モードを維持します。この回路で必要なオペアンプコンポーネントは1インスタンスだけなので、右クリックしてコンポーネント配置モードを終了します。
-
抵抗を配置します:
-
Componentsパネルで、Resistorコンポーネントを見つけ、そのエントリを右クリックして、メインメニューからPlaceコマンドを選択します。
-
抵抗がカーソル上に浮いている状態で、Tabキーを押します。
-
開いたPropertiesパネルで、コンポーネントのプロパティを以下のように変更します:
-
General領域で、Designatorを
R1 に変更する。
-
Parameters領域で、
ValueパラメータのValueを100K に変更する。
-
デザインスペースで一時停止ボタン(
)をクリックし、コンポーネントの配置に戻ります。
-
デザインスペースでクリックして、抵抗のインスタンスを配置します。
-
カーソルを移動してデザインスペースでクリックすると、同じ値の抵抗の別のインスタンスが配置されます。新しいインスタンスのデジグネータは、自動的にインクリメントされます(R2)。
-
右クリックで部品配置モードを終了します。
-
コンデンサを配置します:
-
Componentsパネルで、Capacitorコンポーネントを見つけ、そのエントリを右クリックし、メインメニューからPlaceコマンドを選択します。
-
コンデンサがカーソル上に浮いている状態で、Tabキーを押す。
-
開いたPropertiesパネルで、コンポーネントのプロパティを以下のように変更する:
-
General領域で、Designatorを
C1 に変更する。
-
Parameters領域で、
ValueパラメータのValueを112p に変更する。
-
デザインスペースで一時停止ボタン(
)をクリックし、コンポーネントの配置に戻ります。
-
デザインスペースでコンデンサのインスタンスをクリックして配置します。
-
コンデンサがカーソルの上に浮いた状態で、Tabキーを押してコンデンサの別のインスタンスを配置します。
-
PropertiesパネルのParameters領域で、ValueパラメータのValueを56p に変更する。
-
デザインスペースで一時停止ボタン(
)をクリックして、コンポーネントの配置に戻ります。
-
Spacebarを押して、正しい向きになるまでコンポーネントを90°ずつ回転させます。
-
カーソルを移動し、デザインスペースでクリックしてコンデンサの別のインスタンスを配置します。新しいインスタンスのデジグネータは自動的にインクリメントされます(C2)。
-
右クリックしてコンポーネント配置モードを終了します。
電圧ソースの追加
シミュレーション時に回路に電力を供給するには、電圧源が必要です。
-
VDD電圧源を配置する:
-
メインメニューからSimulate » Place Sources » Voltage Sourceコマンドを選択します。
-
電圧源がカーソル上に浮いている状態で、Tabキーを押します。
-
開いたPropertiesパネルでソース・プロパティを以下のように変更する:
-
General領域でDesignatorをVDDに変更し、ソースのStimulus Type としてDC Sourceを選択します。
-
Parameters領域で、パラメータ値を以下のように変更する:
DC Magnitude = 5
AC Magnitude = 0
AC Phase = 0
-
デザインスペースで一時停止ボタン(
)をクリックして、電圧源の配置に戻ります。
-
デザインスペースでクリックして、電圧源のインスタンスを配置します。
-
VSS 電圧源を配置し ます:
-
電圧源がカーソル上に浮いたまま、別のインスタンスを配置する準備ができたら、Tabキーを押します。
-
開いたPropertiesパネルで、ソース・プロパティを以下のように変更する:
-
General領域でDesignatorをVSSに変更し、ソースのStimulus Type としてDC Sourceを選択します。
-
Parameters領域で、パラメータ値を以下のように変更する:
DC Magnitude = -5
AC Magnitude = 0
AC Phase = 0
-
デザインスペースで一時停止ボタン(
)をクリックして、電圧源の配置に戻ります。
-
カーソルを移動してデザインスペース内でクリックすると、電圧源の別のインスタンスが配置されます。
-
正弦波電圧源を配置します:
-
電圧源がまだカーソル上に浮かんでいる状態で、電圧源の別のインスタンスを配置する準備ができたら、Tabキーを押します。
-
開いたPropertiesパネルで、ソース・プロパティを以下のように変更する:
-
PropertiesパネルのGeneral領域で、DesignatorをVINに変更し、SinusoidalをソースのStimulus Type として選択する。
-
PropertiesパネルのParameters領域で、パラメータ値を以下のように変更します:
DC Magnitude = 0
AC Magnitude = 1
AC Phase = 0
Offset = 0
Amplitude = 5
Frequency = 50K
Delay = 0
Dampling Factor = 0
Phase = 0
-
デザインスペースで一時停止ボタン(
)をクリックして、電圧源の配置に戻ります。
-
カーソルを移動してデザインスペース内でクリックすると、電圧源の別のインスタンスが配置されます。
-
右クリックしてコンポーネント配置モードを終了します。
回路の配線
配線は、回路のさまざまなコンポーネント間の接続を作成するプロセスです。このセクションでは、回路を下のイメージに従って配線します。
-
メインメニューからPlace » Wireコマンドを選択する。
-
カーソルをオペアンプの"+"ピンのホットスポットに合わせると、カーソルの位置に赤い接続マーカー(赤い十字)が表示されます。これは、カーソルがコンポーネントの有効な電気接続ポイント上にあることを示す。
-
クリックして、ワイヤの開始点を固定する。
-
カーソルが赤い接続マーカーに変わるのを確認するまで、カーソルを
R2の最も近いピンのホットスポットに合わせます。
-
クリックして、ワイヤーをピンに接続します。カーソルはそのワイヤーから離れます。
-
下のビデオに示すように、残りの回路を配線してください。
-
すべての配線を配置し終わったら、右クリックして配置モードを終了します。
-
デザインスペースでクリックし、ワイヤーの形状を定義する一連の頂点点を固定する。
-
ワイヤーが間違った方向にコーナーを形成している場合は、スペースバーを押してコーナーの方向を切り替えます。
電源ポートの追加
-
GND電源ポートを配置する:
-
メインメニューからPlace » Power Portコマンドを選択する。
-
パワーポートがカーソル上に浮いている状態で、Tabキーを押す。
-
PropertiesパネルのProperties領域で、Name=GNDとStyle=Power Ground を設定します。
-
デザインスペースの一時停止ボタン(
)をクリックして、電源ポートの配置に戻ります。
-
下図のように、電圧源コンポーネントの"-"ピンに1つずつ、合計3つのパワーポートを配置します。
必要であれば、Spacebarを押して、フローティング電源ポートを回転させます。
-
VDDパワーポートを配置します:
-
パワーポートがカーソル上に浮いている状態でTabキーを押し、プロパティパネルで Name=
VDDと Style=Barを設定する。
-
デザインスペースで一時停止ボタン(
)をクリックして、電源ポートの配置に戻ります。
-
下図のように、パワーポートを2つ配置します。
-
VSS パワーポートを配置します:
-
パワーポートがカーソル上に浮いている状態でTabキーを押し、プロパティパネルで Name=
VSS、Style=Barを設定する。
-
デザインスペースの一時停止ボタン(
)をクリックして、電源ポートの配置に戻ります。
-
下の画像のように、3つの電源ポートを配置します。
-
右クリックして配置モードを終了します。
ネットラベルの追加
-
入力ネットにネットラベルを貼る:
-
メインメニューからPlace » Net Labelコマンドを選択する。
-
電源ポートのカーソルが浮いている状態でTabキーを押し、Net Name=IN に設定する。
-
デザインスペースで一時停止ボタン(
)をクリックし、ネットラベルの配置に戻ります。
-
VINと R1の間の配線にネットラベルを配置します。ネット・ラベルの左下がホットスポットになっていることに注意してください。
-
出力ネットのネット・ラベルを配置します:
-
電源ポートがカーソル上に浮いた状態でTabキーを押し、Net Name=OUTに設定する。
-
クリックして、オペアンプの出力ピンから出るワイヤにネット・ラベルを配置します。
-
右クリックして配置モードを終了します。
-
Projectsパネルでエントリを右クリックし、コンテキストメニューからSave を選択して回路図ドキュメントを保存します。
シミュレーションのためのプロジェクトの準備
Altium Designerでは、回路図から直接回路シミュレーションを実行することができます。
Altium Designer では回路図から直接回路シミュレーションを実行できます。シミュレーションはSimulation Dashboardパネルから設定、実行されます。
-
デザインスペースの右下にあるPanelsボタンをクリックし、表示されるメニューからSimulation Dashboardを選択してSimulation Dashboardパネルを開きます。
-
パネルの折りたたみ可能なVerification領域を展開し、Start Verificationボタンをクリックします。領域のElectrical Rule CheckとSimulation Modelsの両方の項目に緑のチェックが表示されます。
-
違反が検出された場合は、違反条件を見つけて修正して続行します。
-
パネルのPreparationの折りたたみ可能な領域を展開し、回路図に追加された3つの電圧源がすべてSimulation Sourcesリストに表示され、有効になっていることを確認します。
分析結果を設定する
過渡解析の設定
過渡解析は、通常オシロスコープに表示されるような出力を生成し、過渡出力変数(電圧、電流、または電力)をユーザー指定の時間間隔にわたって時間の関数として計算します。
-
Simulation DashboardパネルのAnalysis Setup & Runの折りたたみ可能な領域と、その中のTransient領域を展開します。
-
Intervalオプションが選択されていることを確認し(
)、以下の値を入力します:
-
入力信号に新しい式を追加します。この式はシミュレーション結果のドキュメントに波形として出力されます:
-
Output ExpressionsヘッダのAddコントロールをクリックして、シミュレーション結果ドキュメントに波形として出力する新しい式のフィールドを追加します。
-
追加されたフィールドの右にある
ボタンをクリックすると、Add Output Expressionダイアログが表示され、出力式を設定することができます。
-
Add Output Expressionダイアログで、Waveform領域のドロップダウンからNode Voltagesを選択し、下のリストのv(IN)エントリをクリックします。ダイアログのExpression Yフィールドにv(IN)式が追加されます。
-
Add Output ExpressionダイアログでCreateをクリックします。式がシミュレーションダッシュボードパネルに表示されます。
-
出力信号の出力式を追加します:
-
シミュレーションダッシュボードパネルの Addコントロールをクリックして別の出力式用のフィールドを追加し、追加したフィールドの右にある
ボタンをクリックします。
-
Add Output Expressionダイアログで、Waveform領域のドロップダウンからNode Voltagesを選択し、下のリストのv(OUT)エントリをクリックします。
-
Plot NumberドロップダウンでNew Plotを選択すると、この式の波形をシミュレーション結果ドキュメントの別のプロットに描画します。選択後、ドロップダウンに2 が表示されます。
-
Add Output ExpressionダイアログのCreateをクリックして、式をシミュレーションダッシュボードパネルに追加します。
-
この時点で、過渡解析が設定されます。オプションはシミュレーションダッシュボードパネルで下図のように表示されます。
ACスイープ解析のセットアップ
ACスイープ解析は、回路の周波数応答を示す出力を生成し、小信号AC出力変数を周波数の関数として計算します。AC小信号解析の出力は、通常、伝達関数(電圧利得など)です。
-
シミュレーションダッシュボードパネルで、Analysis Setup & Runの折りたたみ領域内のAC Sweep領域を展開します。
-
スイープTypeとして Decadeを選択し、以下の値を入力します:
-
Start Frequency=100m
-
End Frequency=1meg
-
Points/Dec=100
-
入力信号のデシベル単位の大きさを表す出力式を追加する:
-
Output Expressionsヘッダーの下のAddコントロールをクリックして新しい式のフィールドを追加し、追加されたフィールドの右にある
ボタンをクリックする。
-
Add Output Expressionダイアログで、Waveform領域のドロップダウンからNode Voltages を選択し、下のリストでv(IN)エントリをクリックします。
-
Add Output ExpressionダイアログのComplex FunctionsドロップダウンからMagnitude (dB)を選択し、Create をクリックします。
-
出力信号のデシベル単位のマグニチュードの出力式を追加します:
-
Output Expressionsヘッダの下のAddコントロールをクリックして新しい式のフィールドを追加し、追加されたフィールドの右にある
ボタンをクリックします。
-
Add Output Expressionダイアログで、Waveform領域のドロップダウンからNode Voltagesを選択し、下のリストでv(OUT)エントリをクリックします。
-
Add Output ExpressionダイアログのComplex FunctionsドロップダウンからMagnitude (dB)を選択し、Createをクリックします。
-
入力信号の位相を度単位で表す出力式を追加する:
-
シミュレーションダッシュボードパネルの Addコントロールをクリックして、別の出力式のフィールドを追加し、追加したフィールドの右にある
ボタンをクリックします。
-
Add Output Expressionダイアログで、Waveform領域のドロップダウンからNode Voltagesを選択し、下のリストのv(IN)エントリをクリックします。
-
Add Output ExpressionダイアログのComplex FunctionsドロップダウンからPhase (Deg) を選択します。
-
Add Output ExpressionダイアログのPlot NumberドロップダウンでNew Plotを選択し、Createをクリックします。
-
出力信号の位相(度)の出力式を追加します:
-
シミュレーションダッシュボードパネルの Addコントロールをクリックして、別の出力式のフィールドを追加し、追加されたフィールドの右にある
ボタンをクリックします。
-
Add Output Expressionダイアログで、Waveform領域のドロップダウンからNode Voltagesを選択し、下のリストのv(OUT)エントリをクリックします。
-
Add Output ExpressionダイアログのComplex FunctionsドロップダウンからPhase (Deg) を選択します。
-
この時点で、AC スイープ解析が設定されます。そのオプションは、下図のようにシミュレーションダッシュボードパネルに表示されます。
-
シミュレーション設定ファイル(project_sim_config.simcfg)は、Projectsパネルのプロジェクト構造のSettingsSimulation Documentsフォルダに表示されます。Projectsパネルのエントリを右クリックし、コンテキストメニューからSave Asコマンドを選択してドキュメントを保存します。
Save Asダイアログが開き、ハードドライブ上のプロジェクトフォルダにドキュメントを保存する準備ができます。Saveクリックすると、ドキュメントがこのデフォルトの場所にデフォルトの名前で保存されます。
-
プロジェクトパネルでプロジェクトファイルを右クリックし、コンテキストメニューからSaveコマンドを選択して保存します。
分析の実行と結果の探求
-
Simulation DashboardパネルのTransient領域ヘッダーの右にあるRunボタンをクリックして、過渡解析を実行します。
-
シミュレーションが成功すると、メッセージパネルにシミュレーションが成功したことが表示されます。閉じることもできます。
-
Filter.sdfという名前の新しいシミュレーション結果ドキュメントが、自動的にドキュメントタブとしてSimDataエディターに開きます。このドキュメントには、1つのTransient Analysisチャート(ドキュメント下部のタブで表示)と2つのプロット(それぞれ1つの波形、v(IN)とv(OUT))が含まれます。
-
デザインスペースの上部にあるタブをクリックして、回路図ドキュメントに切り替えます。
-
Simulation DashboardパネルのAC Sweep領域のヘッダの右側にあるRunボタンをクリックして、ACスイープ解析を実行します。
-
メッセージパネルを閉じます。
-
AC Analysisチャートを含むシミュレーション結果ドキュメントが開きます。チャートには 2 つのプロットが含まれ、それぞれに 2 つの波形が表示されます。
-
測定カーソルを使用して、3dB ポイントを決定します:
-
dB(v(OUT))波を右クリックして、Cursor Aを選択する。
-
マーカをドラッグして、カーソル A をローパスセクションに位置づける(位置は、ローパ ス領域であれば重要ではない)。
-
dB(v(OUT))波をもう一度右クリックし、Cursor Bを選択する。
-
Sim Dataパネルは、カーソルの位置を特定するために使用されます(パネルが表示されていない場合は、デザインスペースの右下にあるPanelsボタンをクリックし、表示されるメニューからSim Dataを選択して表示します)。
-
Sim DataパネルのMeasurement Cursors領域でB-A Measurement値を見ながら、カーソルBをクリックしてドラッグし、Y(ゲイン)値を-3にします。
-
Wave NameBのX結果は約20kHzであり、フィルター回路の3dBポイントが20kHzであることがわかります。
-
カーソルを消去するには、各カーソルマーカーを右クリックし、Cursor Offを選択します。
-
ドキュメント内のフィルタリングをクリアするには、デザインスペースの右下にあるClearボタンをクリックします。
-
シミュレーション結果のドキュメント(Filter.sdf)は、Projectsパネルのプロジェクト構造のGeneratedSimulation Documentsフォルダに表示されます。Projectsパネルのエントリを右クリックし、コンテキストメニューからSave Asコマンドを選択してドキュメントを保存します。
Save As(名前を付けて保存)ダイアログが開き、ハードドライブ上のプロジェクトフォルダのSimulationサブフォルダにドキュメントを保存する準備が整います。Saveをクリックすると、ドキュメントがデフォルトの場所にデフォルトの名前で保存されます。
-
デザインスペースの上部にあるタブをクリックして、回路図ドキュメントに切り替えます。
-
Simulation Dashboardパネルで、Resultsを展開します。この領域には、実行されたシミュレーションのリスト(この例ではTransient AnalysisとAC Analysis)が表示されます。
-
以前に実行した過渡解析の結果を表示するには、Transient Analysisエントリの右側にある
ボタンをクリックし、Show Results を選択します。
シミュレーション結果のドキュメントが開き、過渡解析の結果が表示されます。
-
Projectsパネルで右クリックし、コンテキストメニューからSaveコマンドを選択して、変更したプロジェクトドキュメントとプロジェクト自体を保存します。
-
接続されているワークスペースでプロジェクトを作成した場合は、Projectsパネルのプロジェクト エントリを右クリックし、コンテキスト メニューからSave to Serverコマンドを選択して、表示されるSave to Serverダイアログ ボックスで OKをクリックします。