□回路シミュレータ
◎SPICE共通
◆文法
_◇文字
大文字、小文字は区別されない
※デリミタ
スペース、コンマ、タブ、丸カッコ
※丸カッコ()は無視されるので見易さを向上させるために使える
….._◇コメント
_◇コメント
第1行目はつねにタイトル
第2行目以下に先頭に”*”を置くとコメント
“;”を置くと以降文末までコメント
_◇プログラム構造
コメント行以外は
_ コマンド
_ 部品リスト
で構成される
※継続行
行頭の+記号
_◇部品
DEVICE
<名称> <ノード>… <値>
※名称
最初の1文字は部品を示すアルファベット
その後は任意の数字またはアルファベット
⇒部品記号には方言がある
B
_ LTspice ビヘイビアソース
_ PSpice GaAs-FET
基本論理回路
_ A LTspice
_ U PSpice
LTspiceではUはRC損失を持つ伝送戦
※ノード
任意の数字またはアルファベット
ただし、0は常にグラウンド
※値
値の部分には、モデル名などが入ることもある
値は
_ 数値、スケール記号
と書くが、スケール記号以降デリミタまで読み飛ばされるので「単位」などを記して読みやすさを向上させてもよい。
_◇サブサーキット
.subckt サブサーキット名 n1 n2 n3 …
ネット名
.ends
※必要であればサブサーキットに、デバイスのモデル定義も含めると使いやすい
_◇コマンド
COMMAND
“.”で始まる。
_◇回路記述
※すべてのノードはグラウンドに「直流的」に接続されていなけらばならない
⇒浮いているノードには解析上問題にならない程度の大きな抵抗を接続する
※放置されているノードが無いこと
※値が0の部品が無いこと
※インダクタンスの電源直列、インダクタンスの並列はともに抵抗0のループが発生するので小さな抵抗を挿入すればよい
※電源並列も同様
※面積
デフォルト値に対する相対値
_◇位取り記号
10^12 T
10^9 G
10^6 Meg meg
10^3 K
10^-3 m
10^-6 u
10^-9 n
10^-12 p
10^-15 f
25.4*10^-6 mil
◆コマンド
_◇.PARAM
例)
.PARAM CX 100p
.STEP PARAM CX LIST 100p 150p 200p
◆部品
_◇GaAs FET
B<名称> <ドレイン> <ゲート> <ソース> <モデル名> [面積]
_◇Capacitor
C<名称> <+ノード> <-ノード> [<モデル名>] <静電容量値> [IC=<初期電圧>]
正の電流が+ノードから-ノードに流れるとする
初期電圧は解析開始時のノード間の電圧値
_◇Diode
D<名称> <アノード> <カソード> <モデル名> [面積]
_◇Voltage-Controlled Voltage Source
E<名称> <+ノード> <-ノード> <+制御ノード> <-制御ノード> <増幅度>
E<名称> <+ノード> <-ノード> POLY <次数> [<+制御ノード> <-制御ノード> <係数>]…
※次数は多項式の次数。
_◇Current-Controlled Current Source
E<名称> <+ノード> <-ノード> <制御用電源> <増幅度>
E<名称> <+ノード> <-ノード> POLY <次数> [<制御用電源> <係数>]…
※次数は多項式の次数。
_◇Voltage-Controlled Current Source
G<名称> <+ノード> <-ノード> <+制御ノード> <-制御ノード> <相互コンダクタンス>
G<名称> <+ノード> <-ノード> POLY <次数> [<+制御ノード> <-制御ノード> <相互コンダクタンス>]…
※次数は多項式の次数。
_◇Current-Controlled Voltage Source
H<名称> <+ノード> <-ノード> <制御用電圧源> <相互抵抗>
H<名称> <+ノード> <-ノード> POLY <次数> [<制御用電圧源> <係数>]…
※次数は多項式の次数。
_◇Independent Current Source
I<名称> <+ノード> <-ノード> [[DC] <電流値>] [AC<電流振幅> [位相]] [トランジェント仕様]
※正の電流は+ノードから-ノードに流れるので、-ノードを基準の0Vとすれば、+ノードは負電圧となる
※トランジェント解析の波形はEXP, PULSE, PWL, SFFM, SINが指定できる
_◇Junction FET
_◇非線形電源の表現
◆TIPS
_◇ヒステリシスをもった回路のDC解析
ハングアップを起こしやすい
_◇絶対到達しないDC解析の組み合わせ
_◇オペアンプの入出力の順番
各社オペアンプのサブサーキットの入出力の順番は以下の2タイプのどちからが多い
│ ○Vcc
│IN+┌┴┐
│○──┤ │ Out
│ │ >──○
│○──┤ │
│IN-└┬┘
│ ○Vee
IN+ IN- VCC VEE OUT
IN+ IN- OUT VCC VEE
◎LTSpice
◆シミュレータ
_◇仕様
①ノード数制限なし
②直流的にフロートになっているノードを許容
一般のSPICE。フロートノードを高抵抗でGNDに接続する必要がある。
│ │
│─┴─
│─┬─ ┌───┐
│ ├──┤高抵抗├┐
│─┴─ └───┘│
│─┬─ │
│ │ │
│ ▽ ▽
LT-SPICE。DCフロートノードを許容。
│ │
│ │
│─┴─
│─┬─
│ │
│─┴─
│─┬─
│ │
│ ▽
③LTspice Ⅳ以降ではマルチスレッド対応
コントロールパネル、SPICEタブ
④回路図記号はMILだけでなくJIS(ヨーロッパ式)も利用可能
Component>misc>EuropeanResistor
⑤回路中に少なくとも一つのGND(ノード名=0)が必要
⇒GNDしかない回路はシミュレーション不可
⑥電圧源の並列接続、電流源の直列接続は不可
⇒電圧や電流が同じ値でも不可。
_◇初期設定
※Control Panel>Netlist Options
Convert ‘μ’ to ‘u’
※Control Panel>Operation
Automatically delete files
*.raw シミュレーション・グラフ・データ
*.net ネットリスト
*.log シミュレーションログ
*.fft FFT返還後データ
_◇JIGを使ったシミュレーション
①New Schematicシンボルをクリック
②Componentシンボルから、使用するマクロモデルを選択
③Open this macromodel’s test fixtureをクリック
⇒JIGが開く
_◇シミュレーションのタイプ
①Transient analysis
時間波形をグラフ表示する
_ Stop Time 解析時間の幅
_ Time to Start Saving Data 表示開始までの遅延時間
_ Maximum Timestep 指定しなければオマカセ
_ Start external DC supply voltages at 0V
_ コンデンサの充電時間を考慮するか否か
②Small signal AC
周波数特性、位相特性
_ Type of Sweep スイープのタイプ
_ Decade 対数軸(周波数10倍ごとに解析点数を置く)3.16オクターブ
_ Octave 対数軸(周波数2倍ごとに解析点数を置く)
_ Linear 線形目盛<周波数範囲が狭いとき>
_ List 周波数リスト
_ Number of points per decade
_ 解析点数
_ Start-Stop Frequency 周波数範囲
⇒Gainは実線、左軸
⇒位相は点線、右軸(単位は度)
③DC sweep
直流電源の値を変えながら各部の電流電圧を表示する
④Noise
⑤DC transfer function
⑥DC operating point
※シミュレーションのコマンドは回路図上に「ドットコマンド」として配置される
⇒シミュレーションメニューよりコマンド設定できる
Simulation>Edit Simulation Cmd>
各モードのタブがある
例)Transientタブ
最低Stop Timeを設定する
⇒オプション、チェックボックス
Stop simulating if steady state is detected.
_ チェックすると steady オプションが追加される
_ 定常状態になってから10波形分のシミュレーションを行って終了する。
_ STEADYを検出できない回路ではErrorとなる
※デモ回路や、JIGは事前設定のシミュレーションコマンドを内蔵している
_◇シミュレーションの実行
Runボタンによる
Runした後で、Pick Visible Tracesボタンを押すと、グラフ表示する信号の選択ダイアログが開く
(複数選択する場合はCtrlキーを押しながら選択する)
グラフ画面で目盛り軸を左クリックすることで、目盛りの変更ができる
_◇プロービング
①電圧プローブ
ワイヤを左クリック
※電圧の差分(2点間電圧)
あるノードで左クリック後、ドラッグしたまま他ノードへ移動する。
_ 赤プローブが最初のノード
_ 黒プローブがドラッグ先(電圧基準ノード)
差分が示される
⇒実オシロスコープで、アースクリップをGNDでない信号に接続すると、他プローブのアースクリップがGNDにつながっている場合、オシロのGNDを介してショートするので注意。実オシロスコープでは2つのプローブを使って、電圧波形の差を表示させる。
②電流プローブ
2端子のコンポーネントならコンポーネントそのものを左クリック
コンポーネントのピンを左クリック
※デモ回路やJIGにはIN, OUTポイントが明示されている
③消費電力
ALT + カソール
※部品シンボルをALT-左クリックすると、温度計カーソルが現れ、(瞬時値)消費電力がプロットされる。
⇒消費電力の変数ラベル上でCTRLキー+クリックで平均値と積分値が得られる
(区間も表示される)
_◇グラフ表示の操作
※軸の設定
軸にカーソルをおいてクリック
※dB表示(dBV)
※複数プロット面
プロット面で右クリックすることでプロット面を加えることができる(スケールが異なる信号を並べるときに便利)
⇒新プロット面作成後、信号ラベルをドラッグして移す
※ズーム
箱型にドラックすることでズーム可能
ズームボタン
_ Zoom In
_ Pan
_ Zoom Out
_ Autoscale
⇒Auto RangeボタンでY軸一杯に拡大される。
⇒複数の信号を表示しているときは、複数のすべてが収まる範囲を拡大する
(電圧、電流、電力は別々に扱われる)
⇒複数の波形表示ペインに分け、それぞれに信号一つとするとよい
※箱型に選択すると、ステータスバーにその領域の大きさが表示される。
dx, dy
※トレースラベルをCtrl-左クリックすると、平均電流、RMSを知ることができる
※アタッチド・カーソル
信号ラベルを右クリックすることで信号にアタッチされた点線の十字カーソルを表示することができる。このカーソルはグラフ曲線上を移動するので正確に座標が読み取れる
⇒Expression EditorでAttached Cursorを指定する
⇒CTRL+Gでグリッドを表示/非表示トグルできるので、グリッドと十字カーソルが重なって見にくい場合は操作する
⇒測定表示窓はESCキーで終了する
※電圧、電流ラベルを右クリックするとExpression Editorが開く。
波形の色など変更できる。また、波形表示を削除できる。
※Spice Directive
.OPTIONS protwinsize=0
_◇プログラムとデータ更新
Toolsメニューより Sync Release
※編集中はできないので、起動直後ウインドウを開く前に行う
⇒要管理者権限
_◇スイッチング電源の効率のレポート
※負荷抵抗はReloadという名にしておくか、アクティブロード宣言付きの電流源とする
※定常状態でのシミュレーション10波形を行わせる
⇒Stop simulating if steady state is detectedシミュレーションオプション
あるいはEfficiency CalculationでStart, Endを実行途中で手動指定する
View>Efficiency Reportで効率レポートを得ることができる。
(回路図に表示するか、クリップボードにペースト)
_◇負荷応答特性の測定
※固定の負荷抵抗では、負荷変動に対する応答特性などが調べられない。
⇒実機では電子負荷による変動試験
※「負荷」オプション付きの電流源
⇒所定の電流を流すことができない間は、純抵抗と類似の振る舞いをする
Current Source属性>Advanced>This is an active load
_◇パラメータ掃引
①コンデンサの並列接続
対象のAttributeに x{N}
Spice Directiveに
.STEP PARAM N List 1 2 4
⇒個数を1,2,4個並列指定
②ダイオードの直列接続
N=n
③FETの並列接続
M=n
_◇定格を超えた場合の警告
※シミュレーションはICなどの動作保証範囲を超えた領域での動作の推定に使ってはいけない。
⇒最大定格を超えても異常動作はしないことが多い。
⇒動作推奨最低電圧以下では、まったく機能しないこともある。
※.tran steadyによるシミュレーションの場合のみ定格を超えた部品について警告する機能がある。(10波分を保存して計算するため)
⇒通常の.tran解析では有効ではない。
⇒部品に警告マークがつくので、右クリックすると状況が分かる。
⇒適切な部品を選択し、再シミュレーションすると警告マークが消える
⇒すべての部品に定格値が含まれているわけでないので、警告がでない部品もある。
_◇温度パラメータ
※シミュレーションモデルには温度パラメータが入っていないのが一般的
⇒データシートの全温度範囲での保障値とは異なるので注意
nominal温度は27℃デフォルト
⇒変更するためにはスパイスディレクティブを与える
.OPTIONS tnom=…
⇒すべての回路のnominalが変更されるので注意
◆回路図キャプチャ
_◇開始
①New Schematicシンボルをクリック
②Componentシンボルから、使用するマクロモデルを選択
③部品を配置する
※Ctrl-right clickで開くメニューから、該当部品のデータシートをダウンロードすることもできる
※スケマティック画面へのグリッド点の表示
Ctrl-G
※「μ」の文字化けの回避
Control PanelよりNetlist Option
_◇部品の配置
※Componentから部品を選択する
部品を左クリックで選択してから、ローテート、ミラーボタンを押すことでオリエンテーションを変更できる
_ Ctrl-R
_ Ctrl-M
シートカット。
※左クリックで配置、右クリックでキャンセル
_◇編集
Delete(Cut) ハサミICON>対象をクリック F5
Duplicate(Copy) F6
_ 部品や回路図の特定の範囲をコピー
_ コピー先に十分なスペースがないとプレースできない
Move 部品移動 F7
Drag 配置の修正に向く F8
Undo F9
Redo
※ラバーバンド F8
※回転
CTRL+R
※ミラー
CTRL+E
※ビジブル・アトリビュート編集
抵抗値などの回路図上に表示されているアトリビュート値はその値を右クリックすることで編集できる
※部品パラメータの編集
表示されていない詳細な部品パラメータ(パラメータは部品によって異なる)は部品を右クリックすることで編集または、データベースから選択できる。
⇒steadyオプションでシミュレーションを実行した後では、部品に流れる電流と消費電力値も表示される。
※汎用アトリビュート編集
シンボルに対して CTRL+右クリックで アトリビュートエディタが開く。
該当パラメータを表示するか否かのチェックを含め、各種アトリビュート名とその値を編集できる。
….._◇配線とグラウンド
_◇配線とグラウンド
Draw wireシンボルを左クリックで開始
brue boxを左クリックで終端
中間点を左クリックでパス追加
⇒配線作業終了は右クリックかESCキー
Place Groundシンボルを左クリック後、プレースの左クリック。
⇒グラウンドは必須
Lavel Nodeシンボルによりラベルを追加
⇒Edit>Label Net または Label Netボタンによる
⇒Port Typeは通常None、配線の終端に名前をつけるときに入力、出力、入出力シンボルを表示したいときには設定。
⇒回路図上で接続されていなくても同じラベルは結線されているものとみなされる。
⇒配線上で右クリックし、Highlight Nodeとすると同じネットが色付けされる。
⇒ESCで元に戻る
※並んだ部品を直列接続する場合には、串刺し配線すると自動的に直列接続される。
※バス配線
⇒ラベルをつけるときに
_ ラベル名[LSB:MSB]
のように名前を付ける。>確認ウインドウが出るのでYes
⇒バスから1本のタップを取り出す
Edit>Place BUS Tap
でタップをBUS上に配置する。個別信号はラベル名[index]のようになる
_◇コメント
コメントボタンによる
回路図上にコメントを書き込めるが日本語は化ける。
マウス右クリックで再編集可能
_◇SPICE directive
.opボタンによる
ホットキーsによる
回路図上にSPICEコマンドを書き込める
マウス右クリックにより再編集が可能
コマンド行の先頭に「;」を付加することで1時的にコマンドを無効にすることができる
※スパイスディレクティブ入力時の改行
CTRL+M
または
CTRL+Enter
_◇コンポーネントの属性
※Property
コンポーネントを右クリックすることで該当コンポーネントのPropertyを変更するウインドウが開く。
⇒コンポーネントに隣接するテキストを右クリックすると可読の属性もしくはラベルのみ変更できる
⇒シミュレーション実行前であれば指差しカーソル、シミュレーション実行後であれば電流プローブが現れる。
※Voltage Source
_ DC voltage value
_ オプショナルなシリーズ抵抗
※電流ロード
_ DC電流
※Component Attribute Editor
CTRL+右クリック
⇒パラメータを変化させながらシミュレーションを行う(パラメータ掃引)の指定やSymbolの変更などもできる。
Spice Lineアトリビュートで直接Spiceソースを入力することもできる。
_◇単位
大文字小文字は無視される
k = 10^3
meg = 10^6 (mとするとmilliになる)
g = 10^9
t = 10^12
m = 10^-3
u = 10^-6
n = 10^-9
p = 10^-12
f = 10^-15 (fはfemtoの意味、容量のFaradではない)
_◇部品表
View>Bill of Materials
で部品表を作成できる
_◇マクロとシンボルの関連づけ
既存のシンボルに異なるサブサーキットを割り当てて使用することができる
①シンボルを読み込む
ファイル名.asy
②Pin/Port PropertiesのNet List Orderに
subcktのノードの順をあわせる
③Edit>Attributes>Attributes Editor
_ Prefixは X (マクロを示す)
_ マクロモデル名
_ マクロモデルの入っているファイル名
を記述する。不要な部分は削除する。
※ファイルにマクロを複数含むならば、アトリビュートEditでselectすることもできる
④シンボルを .asy ファイルとして保存する
_◇階層化
_◇シンボルモード
任意のシンボルの編集
_◇ライブラリの参照
※ライブラリファイル .LIB
「.op」アイコンによりオプション入力
_ .include文
で.LIBファイルを読み込む
※モデルを記述したファイルをIncludeしてもよいが、スパイスディレクティブを回路図中に直接貼り付けてもよい。
_◇ネットリストの参照
view>NetListでネットリスト表示
※回路図からsubcktにいれるネットを作ることもできる。
_◇BOMのレポート
View>Bill of Materials
でBOMを回路図挿入もしくはクリップボードに送ることができる。
_◇カラー表示設定
※Color Patette Editor
複数の起動方法あり
Tools>Color Preferences
他にControl Panelの中からも起動できる。
_◇ホットキーの設定、編集
Control Panel>drafting Options>Hot Keys
ホットキー一部)
Space ズーム・フィット
CTRL+G グリッドの表示、非表示トグル
CTRL+R ローテート
CTRL+E 反転
CTRL+H シミュレーション中断
0 Reset T=0(現在位置をT=0として表示)
CTRL+L エラーログ表示
※部品の表示されていないアトリビュートの表示
SHIFT+CTRL+ALT+H
⇒ESCを押すと非表示に戻る
※部品の連番付け直し
SHFT+CTRL+ALT+R
_◇スクリーンショット
Tools>Copy bitmap to Clipboard
⇒アクティブペインのショット
◆LTspice素子
_◇V 独立電圧源
①(none)
Vxxx n+ n- <電圧> [AC=<振幅>] [Rser=<値>] [Cpar=<値>]
⇒単純な直流電源
⇒.AC解析時の交流電源
Rser=直列内部抵抗
Cpar=並列容量
②PULSE
Vxxx n+ n- PULSE(off時電圧 on時電圧 ディレイ 立ち上がり
+ 立下がり on時間 周期の時間 [サイクル数])
⇒.tran解析でstartupを選択しても機能しない
⇒t=0でoff時電圧が直ちに出力される。
⇒立ち上がり、立下がりを0にするとデフォルト値となる
TonあるいはTperiod-Tonのどちらか短い方の10%
③SINE
Vxxx n+ n- SINE(DC_offset Vamp Freq Tdelay Theta Phi [Ncycles])
Vamp 片側振幅(p-pではない)
Theta ダンピング係数(1/s)。指数関数で減衰させるときの時定数
Phi 位相(度)
Ncycle 設定しないと、制限なく継続出力
⇒.tran解析でstartupを選択しても機能しない
④EXP
Vxxx n+ n- EXP(V1 V2 Td1 Tau1 Td2 Tau2)
⇒.tran解析でstartupを選択しても機能しない
Rise_Delay Td1後
_ V1+(V2-V1)*(1-exp(-(time-Td1)/Tau1))
Fall_Delay Td2後は略
⇒timeは時間を表す予約変数
⑤SFFM
Vxxx n+ n- SFFM(Voff Vamp Fcar MDI Fsig)
V=Voff + Vamp*sin( (2π*Fcar*t)+MDI*sin(2π*Fsig*t) )
Fcar キャリア周波数(Hz)
Fsig 変調周波数(Hz)
⇒.tran解析でstartupを選択しても機能しない
⑥PWL
Vxxx n+ n- PWL(t1 v1 t2 v2 t3 v3 …)
t1, v1以下、時間と電圧を組みにして設定する。
⇒点と点を直線で結んだ変化をする
⇒.tran解析でstartupを選択しても機能しない
⇒repeat for N ( … ) endrepeat で繰り返しを指定できる
⇒TIPS: repeatの最初をt=0で始めると最後のポイントに次の初回が重なって表示できなくなる。最初のポイントにごく小さい値を入れておくと回避できる
⇒PWLは1行指定なので、あまり長くなるようならファイル形式を使用するか、直接SPICE derectivesの編集画面から+記法で継続行として記入する。
⇒(+time, value)のように表現することで時間の相対表現が可能
⇒またパラメータにより変化させる場合は
_ {N}
のようにパラメータを記す。パラメータを変化させる場合は
.STEP PARAM N list 0.2 0.4 0.6
のように指定する。
⑦PWL FILE:
Vxxx n+ n- PWL file=ファイル名 + [chan=]
テキストファイルから折れ線を読み込む。
回路図と同じフォルダに置くか、フルパスで書く。
⇒PWL(repeat for 5 file=ファイル名 endrepeat)
のように書くことで繰り返しも指定できる。
⇒*.WV形式のファイルの取り込みも可能
⇒チャネル番号は0から65535
⇒スケールファクタにより時間軸、電圧(電流)軸に係数をかけることができる
例)
time_scale_factor=1e-3 value_scale_factor=5
⇒.tran解析でstartupを選択しても機能しない
※TRIGGER
ある信号源からの電圧条件が成立したときにPWL定義などの信号を出力し、条件が成立しなくなったところで出力を停止することができる。
⇒単なるゲート信号では、もともと定義されていた波形をON/OFFできるがトリガに合わせて別な波形を生成することはできない
⇒TRIGGERは独立電圧源にみ適用できるので、電流源が欲しい場合は、独立電圧源をまず作り、それで制御される電圧制御電流源 Voltage Dependent Current Sourceを使用
TRIGGER 条件式 PULSE|SINE|EXP|PWL …
例)他の信号線 trigger の電圧を監視
TRIGGER V(trigger)>0.5 SIN(…
_◇I 独立電流源
電流源を含む回路網は閉じた回路の系になっていなければならない。
①(none)
Ixxx n+ n- 値 [AC=] [load]
⇒単純な直流電流源
⇒.AC解析時のインピーダンスの周波数特性を調べるための交流電源
⇒電流負荷(This is an active loadにチェック)
_ 電源側に所定の電流を流す能力がないときは抵抗
_ 十分な出力電流を流し出せる場合には定電流負荷
②PULSE
Ixxx n+ n- PULSE(I1 I2 Tdelay Trise Tfall Ton Period Ncycles)
⇒パルス波形電流源
③SINE
Ixxx n+ n- SINE(Ioffset Iamp Freq Td Theta Phi Ncycles)
⇒正弦波波形電流源
④EXP
Ixxx n+ n- EXP(I1 I2 Td1 Tau1 Td2 Tau2)
⇒指数関数波形電流源
⑤SFFM
Ixxx n+ n- SFFM(Ioff Iamp Fcar MDI Fsig)
⇒単一周波数FM波形電流源
⑥PWL
Ixxx n+ n- PWL(t1 i1 t2 i2 …)
⇒折れ線波形電流源
⑦PWL FILE
Ixxx n+ n- PWL file=ファイル名 [chan==]
⇒折れ線波形をファイルから読み込む電流源
⑧TABLE
Ixxx n+ n- TABLE(v1 i1 v2 i2 …)
⇒電圧依存電流負荷
⇒ICの入力負荷特性などをテキスト・ドリブン形式で取り込んで用いる
(データシート、IBISモデルなどから)
(複数行記述には 行頭に + )
※電流負荷をステップで変化させる設定
Ixxx n+ n- 値 step(値1, …) [load]
⇒ .tran 設定で Step the load current source にチェックを入れる
⇒ Stop Timeは十分に大きくする(定常状態検出でシミュレーションは終了)
⇒ stepの前の値は、Step the load current source をチェックしない場合の値
⇒ stepにチェックをさせると、電源が定常状態になると自動で次の設定に進む
注)Stop simulating if steady state is detected にチェックを入れてはならない
※抵抗負荷
Ixxx n+ n- R=値
⇒電流源の記号を抵抗負荷として定義
部品リスト上は、
_ load
_ load2
_ current
の3種のシンボルがあるが、動作は同じ
_◇BV BIビヘイビア電圧源、電流源
※電圧や電流を関数として組み合わせ、複雑な振る舞いをする電源を作る
⇒関数の中で回路図中のノードの電圧、部品の電流を算術演算できる
⇒BRはマニュアルには出てこないが、BV、BIのどちらの回路図記号でも値をR=と書くことで実現される。
注)関数内に現れる数値はすべて単なる数値として扱われ、元の物理量とは無関係。
⇒V*I計算してもWにはならない!
⇒出力はBVならボルト、BIならアンペア、BRならΩとなる
※時間予約変数 time により時間を変数として取り扱える。
※ .tran のstartupオプションは無効
※素子そのものはBVでもBIでもBRでもB
値として書く式の左辺で決定される
_ V=関数式
_ I=
_ R=
例)
_ V=V(SIN)*V(ENV)
⇒別に定義されたSINノードとENVノードの電圧を掛け算したものを出力電圧とする
_◇E 電圧制御電圧源
※E sourceよりも G source(電圧制御電流源)に並列抵抗をつないで使った方が良いことがある。
⇒収束の問題を生じにくいのでシミュレーションが速くなることがある。
⇒出力インピーダンスは0でなくなるので、より実際的
①一定利得の電圧源
Exxx n+ n- nc+ nc-
⇒部品シンボル e と e2 はコントロール入力の極性の上下
⇒gainはシミュレーション時には一定値であること。
②テーブルによる利得設定の電圧源
Exxx n+ n- nc+ nc- table(, …)
⇒これも部品シンボルは e と e2
⇒は伝達関数に相当する入力電圧と出力電圧の組
⇒ポイントの中間は直線内挿補間、外れる場合は外挿
③Laplace関数で定義された電圧源
⇒必ずしも数学的なLaplace関数を解いているわけではない。
⇒一部の簡単な関数についてはタイムドメインのグラフを表示可能
⇒周波数応答解析をすることで与えたラプラス関数が伝達関数としてどのような周波数応答を示すか調べることができる。
Exxx n+ n- nc+ nc- Laplace=<func<s)>
+ [window=
例)指数関数応答
e^(-at) ⇒ ラプラス変換すれば s/(s+a)
_ Laplace=s/(s+1) mtol=1e-8
1秒で立ち上がるステップ関数電源
_ V=U(time-1)
で制御すると、スタップ応答波形が得られる。
例)デルタ関数
δ(t-a)⇒ラプラス変換 e^(-as)
⇒a=0のときのδ関数のラプラス変換は1
⇒タイムドメインのシミュレーションはできない(δの時間軸の幅は無限小)
⇒指定周波数範囲でゲイン一定、位相も0度
例)三角関数
cosωt ラプラス変換 s/(s^2+ω^2)
※予約変数PIを使用できる。
※Lapace式中のみ、べき乗に^記号をつかえる(通常は**)
④数式表現による電圧源
Exxx n+ n- value={数式}
⇒数式はビヘイビア電源と同じ
⇒シンボルはEpolyと同じ(コンポーネントリストのMisc)
⇒Epolyは電圧制御であるが、制御端子は表にでず2端子素子にみえる。
※多項式関数2つで定義された電圧源(係数は式展開後の各項を次数の低いものから拾う)
Exx n+ n- POLY(2) (N1+, N1-) (N2+, N1-) (C1 C2 …)
⇒N個の場合に拡張できる。
⇒ICのビヘイビアモデルを記述する場合などで使われる
_◇F 電流制御電流源
部品配置から fを使用
Fxxx n+ n- <電圧源名称> <倍率>
または
Fxxx n+ n- value={数式}
⇒ビヘイビア電源BIと同じ
_◇G 電圧制御電流源
部品配置から gまたはg2を使用
Gxxx n+ n- POLY(n) (N1+, N1-)
+ (N2+, N2-) … c0 c1 …
⇒電圧制御電圧源と同じ
⇒並列に抵抗器を接続すれば電圧源として機能させられる
※多項式関数で表示するときには Gpoly シンボルを使用する
⇒Miscの中にある2端子素子
_◇H 電流制御電圧源
部品配置から hを使用
Hxxx n+ n- 電圧源名称 伝達抵抗値
Hxxx n+ n- value={数式}
⇒ビヘイビア電源 BVと同じ
Hxxx n+ n- POLY(n) V1 … c0 …
多項式電源
⇒制御電流源の要素にはノード名でなくその電流が流れる電源名称を書く
_◇R 抵抗
resistor
Rxxx n1 n2 値 [tc=tc1, tc2, …] [temp=値]
※シンボルは3種
res (ホットキーR)
res2
Misc>EuropianResister
※温度係数 tc=k
R=Ro*(1. + td*tc1 + td^2*tc2 + td^3*tc3 + …)
のtc1…の系列を与える。ここで
td=temp-tnom
⇒tdはシミュレーション温度tempと既定(nominal)温度tnomとの差
tnomはデフォルトで27℃
Roはtnomでの値
_◇C キャパシタ
capacitor
Cnnn n1 n2 容量:値 [ic=値] [Rser=値] [Lser=値]
+ [Rpar=値] [Cpar=値] [m=値] [RLshunt=値] [temp=値]
※シンボルは4種
cap
polcap
Misc>EuropianCap
Misc>EuropianPolcap
ic シミュレーション初期状態
m 同じコンデンサのm個並列接続
等価回路
│ ○
│ ┌────┴─┬─────────┐
│ │ │ │
│ │ ┌──┴─┐ESR │
│ │ │Rser│ │
│ │ └──┬─┘ │
│┌┴───┐ │ ┌───┴┐
││Rpar│ ─┴─ │Cpar│
│└┬───┘ ─┬─ └───┬┘
│ │ │ │
│ │ ┌─┴───┐ │
│ │┌───┴┐ ┌──┴────┐│
│ ││Lser│ │RLshunt││
│ │└───┬┘ └──┬────┘│
│ │ ESL│ │ │
│ │ │ │ │
│ └────┼─────┴─────┘
│ ○
※パラメータウインドウ
以下は注釈的意味のみで、シミュレーションには影響しない。
Voltage Rating
RMS Current Rating
※キャパシタンス複数ケースについて比較する場合
キャパシタンスに m={N} のように並列数をパラメータで与え
.STEP PARM N list 1 5
などとパラメータを振ると、複数ケースについてシミュレーションされる。
※マクロモデルの中には、1個のコンデンサの中に個別部品のRser, Cparまで含んだものがあるので注意。
⇒計算精度があがり、収束が早くなる効果がある
※容量の表示にQ、キャパシタンス両端電圧xを使用できる。
変数xによる容量定義例)
Q=x*if(x<0,1u 2u) _◇L インダクタ Lxxx n+ n- 値 [ic=値] [Rser=値] [Lser=値] + [Rpar=値] [Cpar=値] [m=値] [RLshunt=値] [temp=値] ic シミュレーション初期状態 m 同じインダクタのm個並列接続 ※シンボルは2種 ind ind2 ⇒巻き始め記号がついているか否か (後から表示したり消したりすることもプロパティで可能) ※Misc>fixedind
LT1533、LT1534のデモ回路専用のパラメータ固定のもの
│ ○
│ ┌────┴─┬─────────┐
│ │ │ │
│ │ ┌──┴─┐ESR │
│ │ │Rser│ │
│ │ └──┬─┘ │
│┌┴───┐ ┌┴────┐┌───┴┐
││Rpar│ │Inductance││Cpar│
│└┬───┘ └┬────┘└───┬┘
│ │ │ │
│ └────┬─┴─────────┘
│ ○
※DCRはデフォルト1mΩ
DCR:DC抵抗
⇒スイッチング電源において電圧リップルや効率について重要
※パラメータウインドウ
以下は注釈的意味のみで、シミュレーションには影響しない。
Peak Current
※マクロモデルの中には、1個のインダクタの中に個別部品のRparまで含んだものがあるので注意。
⇒計算精度があがり、収束が早くなる効果がある
※デフォルトでRparとRserが設定される
Rparを無しにしたい場合、コントロールパネル>Hacks!タブからチェックを外す
Rserを積極的に0にしたい場合は明示的に0にする
※フェライトビーズ
シンボル
FerriteBead 立体図
FerriteBead2 記号
※線形インダクタンス
⇒コイル電流がどれだけながれてもインダクタンスが変化しない
⇒空芯コイル
※フェライトコアなどの磁性体に電線材料を巻き付けた場合
⇒コイル電流が増加しても飽和領域に入ると磁束密度が一様に増加しなくなる
※非線形コイルのtanh近似
⇒tanhは簡単だが飽和の近似値として良い
⇒B-Hカーブをヒステリシスがないと近似する場合に適す
⇒インダクタンスを表す変数名 Fluxを電流変数xで表現する
※B-Hカーブ(ヒステリシス曲線、磁化曲線)
横軸H:加えた磁界の強さ
縦軸B:磁性体自体が磁化された強さ(磁束密度)
_ Bの上限は飽和磁束密度
_ BがH=0のY軸を横切る点が残留磁束密度
_ 逆向きの磁界を加え磁性体の磁化がB=0になったときの外部磁界の強さを保磁力
※ヒステリシス曲線に囲まれた面積に比例してエネルギーの損失が起こる
⇒ヒステリシス損
※非線形コイル:近似的B-Hカーブ設定
hysteretic core modelが組み込まれている。
初期磁化曲線、上昇時の曲線Bup, 下降時の曲線Bdnは、
3パラメータ+コイル形状4パラメータで近似される。
_ Hc 抗磁力 AT/m BupがB=0なるH軸を横切る点
_ Br 残留磁束密度 Tesla BdnがH=0なるB軸を横切る点
_ Bs 飽和磁束密度 Tesla H無限大のときの漸近線のB軸交点
コイル形状
_ Lm 磁路長(ギャップ無) m
_ Lg ギャップ m
_ A 断面積 m2
_ N 巻き数
⇒インダクタンスの値は設定できない。
⇒実際のデータになるべく近くなるようなパラメータを探索して設定する
_◇K 相互インダクタンス
Mutual Inductance
2つ以上のコイルを結合し、トランスにできる
※作成手順
①回路図中にインダクタンスLを2つ配置する
_ 例)L1とL2
②ホットキーsを入力し、スパイスディレクティブウインドウを開いて入力
_ 例)K1 L1 L2 1
⇒最後の数値は結合係数 1以下の数値(1で理想トランス)
⇒コイルを結合させると自動的に巻き始め記号が付く
⇒逆向きにしたければドラックアイコン状態で選択し、回転、反転させる
※巻き数比
1:2の巻き数比ならばインダクタンスは1:4(2乗となる)
_◇D ダイオード
Diode
※シンボル
diode
zener
shottoky
varactor(バラクタ、バリキャップ)
_ 端子に加える電圧によって静電容量が変化するダイオード
◆SMPS
Fast simulation of switching mode power supplies
_◇Steady Stateの解析
Simulate>Edit SImulation Cmd
のTransientタブより
_ Stop simulating if steady state is detected
を選び、再シミュレーションする
※必ずしもうまくいくわけではない。
_◇Efficiency Report
Simulate>Efficiency Report
電源の効率が計算されるとともに、各コンポーネントにながれる電流と消費電力が計算される
_◇負荷
通常のDC負荷をパルス負荷に変更できる
_◇変圧器(相互インダクタンス)
①個別のインダクタンスとしてまず各コイルを描く
②Edit>Spice Directive
より、相互インダクタンス「K」を定義する
※結合効率は1が初期値となっている
◆Demo Circuits, ライブラリ
_◇www.linear.com
リニア社のデバイスにはSIMULATEページがあり、そこからデモ回路をダウンロードできる
※runすれば動作する
_◇ライブラリの読み込みと参照
※ライブラリの読み込み
.include ppp\xxx.lib
既定のパス Program files\LTC\SwCADIII\lib\ppp
※.subckt
既存のシンボルのValueをインクルードしたファイル中の
.SUBCKT デバイス名
のデバイス名とあわせる
※.model
Libファイル内の.Model
既存のシンボル名を.Modelのデバイス名とあわせる
※回路図上で直接指定し、参照してもよい
.model
◆JIG
Pre-Drafted Test Fixture
開発用のジグ
_◇オペアンプ
1001 Precision Absolute Value Circuit
入力:振幅10V、100Hzのサインカーブ
出力:+側に折り返した曲線
電源:±15V
トランジェント
1002 Two Op Amp Instrumentation Amplifier
入力:振幅1V、10Hzの信号およびに振幅1V、10Hzの信号に振幅1mV, 100Hzの信号を重ねたもの
出力:振幅1mVの信号の方だけを100倍に増幅して取り出す
電源:±15V
トランジェント
1006 Gain 100 Amplifier
入力:オフセット5mV,振幅1mV, 1KHzのサインカーブ
出力:100倍に増幅した信号
電源:5V単一
トランジェント
1007 Gain 1000 Amplifier with .01% Accuracy
入力:振幅1mV, .01Hzのサインカーブ
出力:1000倍に増幅した信号
電源:±15V
トランジェント
1012 Instrumentation Amplifier with 100V Common Mode Range
入力:振幅100V、1Hzの信号およびに振幅100V、1Hzの信号に振幅100mV, 10Hzの信号を重ねたもの
出力:振幅100mVの信号だけを100倍に増幅した信号
電源:±15V
トランジェント
1013 Low Power 9V to 5V Converter
入力:9V電源
出力:5V電源
LT1013は9V単一電源で動作
トランジェント
1014 Triple Op Amp Instrumentation Amplifier with Bias Current Cancellation
入力:振幅1V、10Hzの信号およびに振幅1V、10Hzの信号に振幅10mV, 100Hzの信号を重ねたもの
出力:振幅10mVの信号だけを2000倍に増幅した信号
電源:±15V
トランジェント
1022 JFET
_ Wide Bandwidth Absolute value Circuit
入力:振幅1V、10KHzのサインカーブ
出力:+側に折り返した曲線
電源:±15V
トランジェント
1024 Two Op Amp Instrumentation Amplifier
入力:振幅1V、10Hzの信号およびに振幅1V、10Hzの信号に振幅1mV, 100Hzの信号を重ねたもの
出力:振幅1mVの信号の方だけを100倍に増幅して取り出す
電源:±15V
トランジェント
1028 Phono Preamplifier
AC解析 10Hzから20KHzまで
電源:±15V
1037 Gain 1000 Amplifier with .01% Accuracy
入力:振幅1mV, 1Hzのサインカーブ
出力:1000倍に増幅した信号
電源:±15V
トランジェント
1055 1Hz to 10KHz Voltage-to-Frequency Converter
入力:1Vから9Vまで50mSで立ち上がるパルス
出力:振幅12Vで電圧に応じてスパイク状の信号が時間間隔(周波数)を変えて出力される
電源:±15V
トランジェント
1056 JFET
1056 1Hz to 10KHz Voltage-to-Frequency Converter
入力:1Vから9Vまで50mSで立ち上がるパルス
出力:振幅12Vで電圧に応じてスパイク状の信号が時間間隔(周波数)を変えて出力される
電源:±15V
トランジェント
_◇Power
1026 Switched Capacitor Voltage Converter
4,5,6V電源から±電源を生成する
1054 Switched Capacitor Voltage Converter with Regulator
+10V電源から、-8V電源を生成する
1070 5A High Efficiency Switching Regulator
5V電源から12V電源生成
_◇Special Functions
5505 RF Power Detector
◎CircuitMaker
※ファイル
.CKT Schematic
.DAT ホットキー他のデータ
.LIB デバイスライブラリ
.SRP スクリプト
.MOD モデル
.SUB サブサーキット
.RAW シミュレーションデータ
◆基本タスク
1)デバイスの選択と配置
デバイスブラウザか、ホットキーを使って選択し、配置する。(オートリピートオプションをオンにすると、同じものを複数次々と配置できる。配置したらスペースキーなどで脱出できるのでオプションを外す。)配置のとき、右クリックすることでローテイトできる。
2)デバイスの移動
選択して移動することでワイヤもついてくる。
3)デバイスのパラメータの編集
左クリックしてパラメータを編集する。Visibleチェックボックスをチェックすることで表示される内容を制御できる。
_ Label-Valueフィールドが読み取られる値
_ Designationフィールドがデバイスの名
※モデル選択の場合は、ネットリストを選択することで、個別パーツのフィールドを編集できる。
※各パラメータの表示位置はマウスで調整できる。
4)デバイスの削除
5)ワイアリング
Show Pin Dotsオプションにより接続点を確認できる。
6)シミュレーション
①デジタルシミュレーション
プローブツールにより、特定ノードを操作したり、観測することが可能。トレースツールにより、回路全体の状況を色で表示することが可能
②アナログシミュレーション
◆ツールバー
Arrow Tool
_ 選択、移動、デバイス、ワイヤ、テキストの移動。
Wire Tool
_ 配線。(シフトを押しながら使うとバス配線)
Text Tool
_ テキストの付加
Delete Tool
_ デバイス、ワイヤ、テキストの削除。(シフトを押しながら使うと配線の切断)
Zoom Tool
_ 拡大。(シフトを押すと縮小)
Rotate 90
_ 選択デバイスをローテイト
Mirror
_ 選択デバイスをミラー反転
Digital/Analog
_ シミュレーションモードをデジタル、アナログ切替
Reset
_ シミュレーションを初期化
Step
_ デジタルシミュレーションのシングルステップ
Run/Stop
_ シミュレーションの実行、停止。
Probe Tool
_ 回路要素に依存するプロービング
Trace
_ デジタルシミュレーションモードでのトレース
Waveforms
_ デジタル波形表示
Parts
_ 部品ブラウザによるデバイスの表示と選択
Search
_ 名前か番号によるライブラリ内デバイスのサーチ
macro
_ 新たなマクロの作成、選択されたマクロの拡張
Help Tool
_ デバイス、ワイヤ情報の表示
※右クリックポップアップ(場所依存)
※Hotキー
_ デフォルト以外に60個までユーザ定義可能
_ デバイスの配置など。
※shortcutキー
_ メニューコマンドの短縮化
※Preferences
_ 設定の変更と保存
※回路図の作成、保存.
_ ファイルメニューより
_ ※Revertにより1つ前のファイルに戻れる。
◆回路図編集
_◇接続検証
Simulation > Check Pin Connection
で電気的接続の点検ができる
_◇デバイスの編集
変更する部品を右クリックし、Edit Device Dataを使う。
_◇端子マークの表示、非表示
Option > Show Pin Dots
◆設定等
_◇回路図
File>Preferencesにより回路図の設定(ボーダ、グリッドなど)を変更できる。
_◇シミュレーション
Analyses Setupで何をどのようなスケールでシミュレーションするのか解析方法の設定ができる。
①Analog Options…メニューの中で、シミュレーションの結果のうち何をファイルにセーブするか(後でプロービングできる)を制御できる。
②Always set defaults for transient and operating point analysesのチェックボックス
_ on : 過渡解析の条件は常にデフォルト
_ off : 過渡解析の条件を変更できる
③過渡解析(Transient)
Setupウインドウ内で、開始、終了、ステップ等を設定できる。
④DC解析
Setupウインドウ内で、電源ソースの開始、終了、ステップ等を設定できる。
⑤AC解析
Setupウインドウ内で、開始、終了の周波数、スイープを設定できる。
◆アナログ解析
※解析対象のアナログ回路には必ずグランドがあり、かつ、すべてのノードはグランドへのDCパスがなければならない。
※解析完了後、STOPボタンを押すとEDITモードへ戻る
※Probe Toolを使って、RunTime Test Pointを指定しておかないとならない。解析を行う項目とスケールを指定する。
_◇マルチメータ解析
Digital/Analog Simulationトグルボタンでアナログ選択
(トランジスタアイコンならアナログ)
RunAnalysesかRunボタンでSPICEが実行され、実行が終わるとマルチメータウインドウが現れる。
この状態で、各ノードをプロービングできる。
位置により、電圧、電流、電力が自動的に切り替わる。
※マルチメータウインドウ内ダブルクリックで、
_ operation point
_ DC avg
_ AC rms
の切り替えができる。
_◇過渡解析(Transient解析)
Transient Analysisウインドウをアクティブにしてプロービングすることでノードの電位などを波形ウインドウに表示することができる。
Transient解析をする期間を指定することで解析対象の期間が変わる。
※set defaultsオプションをクリックすると解析対象はもっとも低い周波数の発信源基準の固定期間となる。
※左クリックで第1のノードをプローブ、波形を重ねる場合はシフトキーを押しながらプローブ。
※Probeする場合、単純左クリックは
_ 端子は電圧、
_ ノードは電流
_ デバイスはパワー
※ドラッグすることで、波形ウインドウを拡大できる。
※リセットボタンを押すと元の波形に戻る。
_◇DC解析
カーブトレーサ
_ ①DC解析をイネーブルとする
_ ②パラメータとして振る電圧元を選ぶ
_ プライマリ
_ ※振られるのでLabel-Value関係なし、
_ ※選択のためDesignation記入
_ ③第2のパラメータとして振る電流元などを選ぶ
_ セカンダリ
_ ④測定点に0Vの電圧元を入れておく。
_◇AC解析
①シグナルジェネレータを使ってAC解析する場合、シグナルジェネレータの属性(wave…)を編集し、Source属性にチェックを入れておく。
_ magnitude は0dBにとる電圧を入力する。
_ (1Vとすれば、1V=0dBでボード線図作成される)
_ 位相は通常0基準。
AC解析時には、シグナルジェネレータがAC解析用の小信号のサイン波ジェネレータになり、各周波数での電圧、位相が表示される。
_
※AC Analysis Setup
Sweepとテストポイント
_ Linear
_ Test Points欄が総テストポイントとなる
_ Decade
_ ログスイープ、10倍あたりのテストポイント
_ Octave
_ ログスイープ、2倍あたりのテストポイント
②ボーデ線図を作成できる。
③グラフボタンにより表示方法を選択できる。
_◇Analog計測器デバイス
①シグナルジェネレータ
②マルチメータ
マルチメータウインドウとは別にデバイスとしてのマルチメータがある。抵抗、電圧、電流測定可能。
_◇Spiceシミュレーション制御デバイス
①.ICデバイス。。。ノードの初期値を特定の電圧(デフォルト初期値0V)にする。
◆デジタル解析
_◇デジタルシミュレーションのオプション
※cylceとticks
①1 cycleは、10 ticksを含む
②1 ticks が最小の遅延単位
※X Magnification
波形ウインドウの表示単位
※Simulation Speed
シミュレーション実行時の表示速度を制御するためのシミュレーション速度の調整パラメータ。画面上で表示が速すぎるときなどに調整。
※ブレークポイントをかけるときの
_ エッジ、レベル
_ AND,OR
を設定することもできる
_◇プローブ
シミュレーション後にプローブツールで各ノードの論理値を確認することができる
_◇トレースモード
トレースモードをイネーブルにすると、シミュレーション時に各ノードを色づけすることができる
_ 通常設定
_ 赤:1
_ 青:0
_ 緑:ZまたはX
_◇波形ウインドウ
必要なノードにDigital InstrumentsのSCOPEをとりつけ、Waveformウインドウを開いておくと、ロジアナ的な波形を得ることができる。
◆要素部品
_◇Digital Instruments
①Data Seq
②Pulser
パルス・ジェネレータ
※External Triggerがオフのとき
CP1, CP2は Z のままでも良い。
③SCOPE
波形ウインドウに波形を表示するノードに取り付ける。
_◇Toggle Switches
①SPDT Switch
②SPST Switch
いずれもシミュレーション中に変更可能なスイッチ
◆TIPS
_◇フォルダ属性
cktは、書き込み可能なフォルダに入れておかないとシミュレーションできない。
_◇数値の間にスペースをいれてはいけない
1.0uF “1.0 uF”のようにスペース入れるとエラー
_◇SPICEシミュレーションの収束問題
◆回路サンプル
SIM.CKT
_ ロジックシミュレーションサンプル
_◇トランジェント解析(アナログ)
※555.ckt
_ タイマIC555を使ったトランジェント解析。
※555mono.ckt
タイマIC555によるモノステーブル回路のトランジェント解析
※Ammode.ckt
_ MC1496によるAMモジュレータ
_
※Anreley.ckt
_ リレー動作のアナログトランジェント解析
※Cbamp.ckt
_ 2N3904によるベース接地増幅回路
※Ceamp.ckt
_ 2N2222Aによるエミッタ接地増幅回路
※Fcvs.ckt
_ 周波数制御電圧源
※Fuse.ckt
_ フィーズに対する三角波の印加
※Lltran.ckt
_ ロスレス線路での信号の伝送
※LProbe.ckt
_ ロジックプローブ
_
※Math1.ckt
_ 演算回路
※Monostab.ckt
_ モノステーブルマルチバイブレータ
※Osc1.ckt
_ RCオシレータ
_◇トランジェント解析(アナデジ混在
※Adc8.ckt
_ 8ビットA/Dのアナデジ混在トランジェント解析
※Adc0800.ckt
NSのADC0800 8ビットA/Dについてのアナデジ混在トランジェント解析
※Dac8.ckt
_ 8ビットDAのトランジェント解析
※Mixed93.ckt
_ バイナリリップルカウンタ
※Mixed555.ckt
_ 555をつかったバイナリリップルカウンタ
_
※Mixedmod.ckt
_ NANDゲートとトランジスタ
_◇動的論理シミュレーション
※4×4.ckt
74シリーズTTLと4x4のキーマトリックスを使って16進ディスプレイに数値を表示。キーを押すことで変化する動的論理シミュレーション。
※Alarm1.ckt
_ 警備用アラーム、音付き.
※Alarm2.ckt
_ 警備用アラーム、音付き.タイマつき
※Alarm3.ckt
_ 警備用アラーム、音付き.タイマつき
※Alarm.ckt
_ 警備用アラーム、音付き. もっとも単純
※Buswire.ckt
_ データシーケンサとアスキーキーを使ったデータバス動作の動的論理シミュレーション。
※Cars.ckt
_ 3台の車の競争。
※Counter.ckt
_ カウンタと表示(動作?)
※Db9.ckt
_ 9ピンのコネクタ(連動)
※Delay.ckt
_ ディレイ回路
※Relay.ckt
リレーとランプ2個を使った動的論理シミュレーション。動的にリレーの入力を変えることで出力が変化する。
※Digfault.ckt
_ LED出力、スイッチ入力論理回路
※Display.ckt
_ ディスプレイ出力
※Ladder.ckt
_ コイル、スイッチ、ソレノイドなど
※Led.ckt
_ データシーケンサによるLEDの点滅
※Lock.ckt
_ 電子錠
※Mux7seg.ckt
_ データシーケンサによる7セグ表示
※Opto.ckt
_ フォトカプラの論理動作
_◇動的論理シミュレーション(波形有)
※Inoutput.ckt
_ シンプルステートマシン
_
_◇DC解析
※Npncurve.ckt
_ NPNトランジスタ(2N3904)のカーブトレーサ
※Diffamp.ckt
_ トランジスタによる差動アンプ
※Nmoscurv.ckt
_ NMOSトランジスタ(Si3454DV)のカーブトレーサ
….._◇AC解析
_◇AC解析
※Lpfilter.ckt
_ アクティブフィルタ。ボード線図がプロットされる。
※Bandpass.ckt
_ バンドパスフィルタ。ボード線図+トランジェント
※Csjfamp.ckt
_ 2N4393による増幅回路。
_ ボード線図+トランジェント
_◇アナログ複合
※analog.ckt
_ uA741の反転増幅回路による
_ トランジェント
_ AC解析
_ DC解析
※Opamp.ckt
_ analog.cktと似ているが、SIMの設定異なる。
_◇静的マルチメータ解析
※Ohm.ckt
_ オームの法則。合成抵抗の測定。
_◇SPICE設定サンプル
※Astable.ckt
_ コレクタカップルドAステイブルマルチバイブレータ。.ICにより内部条件を設定するサンプル。
_
※Bistable.ckt
_ バイステーブルのマルチバイブレータ。.NSによりノードを定義
※Caps.ckt
_ キャパシタンスへのチャージ。.ICにより初期値設定。
_◇参照専用回路図
※741.ckt
741の等価回路と思われるもの
※Audioamp.ckt
_ 2チャンネルオーディオアンプ
◆演習
_◇DC解析
※EmitterF.CKT
エミッタフォロワ回路。
Vs1を0から5Vまでスイープすると、出力(エミッタ)に入力より約600mV低い電圧が現れる。
※OpampAdd.CKT
反転加算回路。
_◇トランジェント解析(アナログ)
※A2TTL_IF.CKT
アナログ→LOGIC(TTL)インタフェース。抵抗で与えた電圧を超えると出力がアクティブとなる(コンパレータ)
_ LM324 NS製 低消費電力クワッド汎用オペアンプ
_ 単一電源で動作。GNDレベルほぼ検知。GNDまでスイング
_ ただしフルスイングはしない
_ LM111 NS製コンパレータ
※Integration.CKT
uA741を使った積分回路。
_ R2-Cで決まるカットオフ周波数以上で積分動作。
※DiffOpamp.CKT
LF356を使った微分回路。
_◇AC解析+トランジェント解析(アナログ)
※E_AMP.CKT
NPNトランジスタ、エミッタ接地回路による5倍のアンプ。
_ 1Vpp入力が5Vpp出力となる
_ 20*log10(5/1) = 14 dB
◎PSpice
OrCAD Family Release 9.2 Lite Edition
◆Capture Lite Edition
回路図エディタ
_◇プロジェクトファイル
回路図、シミュレーション、波形観測などのファイルと設定を一括管理するファイル
File>New>Project
_ spiceシミュレーションの場合はAnalog or Mixed-A/D
_ 新規のプロジェクトならCreate a blank project
_◇部品のプレース
※ライブラリ
Place>Part
でPlace Partダイアログから、使用するライブラリをAdd Libraryする。
※プレース
左クリックで配置。右クリックで回転などの設定。ESCキーでプレースのエンド。
※グラウンドのプレース
Place>Ground
⇒spice用にはPSpiceフォルダにあるsource.olbを Add Libraryし、「0」のシンボルを使う
※デバイス名
素子種別のアルファベット名+文字、数字
大文字、小文字の区別なし
R 抵抗
C コンデンサ
L コイル
T 伝送線路
D ダイオード
Q バイポーラTR/FET
J JFET
M MOSFET
B GaAsFET
V 固定電圧源
I 固定電流源
E 電圧制御電圧源
F 電流制御電流源
G 電圧制御電流源
H 電流制御電圧源
S 電圧制御スイッチ
W 電流制御スイッチ
※部品の属性は、属性部分をダブルクリックで編集できる
※パーツシンボルをダブルクリックすると Property Editor が開く
※スケール記号
大文字、小文字の区別なし
F femto (1Fは1ファラドでなく、1フェムトファラド)
P pico
N nano
U micro
M milli
K kilo
MEG mega
G giga
T tera
_◇配線
Place>Wire
※ネットエイリアス
ノードにつける名前。大文字、小文字を区別しない。
エイリアスの左下端がノードの上にくるようにする
Place>Net Alias
◆PSpice Lite Edition
_◇Simulation Profile
CaptureのPSpice>New SImulation Profile
解析の種類と設定を選ぶ
①DCスイープ
直流電圧、電流を変化させた場合の出力の変化
②ACスイープ
信号源の周波数の変化に対する変化
③トランジェント解析
時間に対する変化
※ログ・スイープ
Decade 10倍
Octave 2倍
_◇マーカ
観測点。各種あり。
①dB Magnitude of Voltage
電圧振幅をデシベル表示(1V=0dB)
信号源をAC=1Vと設定してマーカを配置する
②Phase of Voltage
電圧の位相表示
③Voltage Level
電圧振幅
_◇シミュレーション実行
PSpice>RUN
※シミュレーション結果を表示
グラフ・フォーマットは、シミュレーション毎にデフォルトに戻るので、設定したフォーマットは
_ Window>Display Control
からセーブできる。(同じメニューからロードもできる
※結果をBMPで貼り付けることもできる。
※EditからSelect Allすることで全データをスペース区切りの数値として貼り付けることも可能
_◇過渡解析
Time Domain(Transient)設定
_ Run to time 過渡解析を終了する時間
_ Start saving data after 開始からこの時間まではデータをセーブしない
_ Maximum step size 解析の最大時間ステップ
_ 例)1u
※過渡解析では、AC解析でみれない非線形な動作をみることができる
_◇DC解析
直流電圧や直流電流を変化(スイープ)させてそのときの出力の様子を調べる
DC Sweep
_ スイープさせる電源のタイプと名前を指定する
_ スイープのタイプとレンジを指定する
※DC解析ではコンデンサをオープン、コイルをショートして計算し、過渡現象(時間の概念)がない
⇒DC電源を加えてから無限時間後の状態
⇒大容量のコンデンサ、大きなインダクタンス、抵抗を使っている場合にはDC解析の結果と実際の測定値が異なることがある。
_◇AC解析
交流電源の信号周波数を変化させて周波数応答をみる
※電源電圧の制限や、高調波ひずみなどの非線形な要素は考慮されない
⇒電源電圧よりも高いVppの信号がでてくることもある
⇒微小信号レベルにおける周波数特性を観測するための解析
_◇温度による回路動作の変化
※PSpice 温度27℃で解析
※DC Sweepの場合
OptionでTemperature Sweepを選択
Repeat the simulation for each of the temperatures
に、スペース区切りで温度のリストを与える
⇒解析後、Available Sectionsが表示されるので、その全てを選択してOKすると全てを重ねてみることができる
_◇パラメトリック解析
回路定数を自動的に変化させながら解析する
※AC解析、過渡解析、DC解析に適用できる
※PARAM PARAMシンボルを任意の場所に配置する
※属性を変化させるデバイスのVALUE属性を{cval}
※PARAMシンボルをダブルクリックし、Property Editorからcval行を追加、代表値を記入
※シミュレーションプロファイルからParametric Sweep選択
Grobal parameterかにParameter nameとしてcval入力
(Sweep typeと開始、終了、変化幅を設定)
_◇モンテカルロ解析
素子のばらつきが特性に与える影響を調べる
※誤差の入力
シンボルを選択し、Edit Propertiesより
_ TOLERANCE欄に「1%」のように入力
_ なおDisplayボタンによりDisplay Propertiesを操作しないと誤差は表示されない
※Simulation Profile
OptionからMonte Carloを選択
誤差分布を
_ Uniform…一様分布
_ Gaussian…ガウス分布(誤差をσとして3σまで)
から選ぶ
※Worst-case/Sensitivity
ワーストケース解析。。。ワーストケースのみ
※ヒストグラム表示
Trace>Performance Analysisよりヒストグラム表示ウインドウを追加
Trace>Add TraceのFunctions or Macros欄からLPBW(1, db_level)のように選択
_ 例)LPBW(VDB(C1:2), 3)
_ 3が3dB(カットオフ周波数)のこと
_◇FFT表示機能
過渡解析結果の時間軸上の始点と終点をつなげてFFTを計算する
⇒解析時間幅を信号周期の整数倍に設定
(そうしないと、本来存在しない筈の周波数成分が現れ、意味をなさない)
⇒最大時間ステップを分解能の高い細かい数字に指定する
⇒Y軸は対数目盛りに設定し、1uV程度まで表示するように
波形ウインドウでFFTボタンを押せばFFT表示となる
_◇演算機能
Trace>Add Trace で、ノードを指定するのではなく
演算式を追加することで各種の演算を行った結果を表示させることができる。
例)コレクタ損失(=コレクタ電流*コレクタ-エミッタ間電圧)
(V(COLLECTOR)-V(EMITTER))*IC(Q1)
_◇PSpice Model Editor
LE版ではダイオードのみ編集可能
_◇PSpice Stimulus Editor
信号源波形を編集可能
LE版では正弦波とクロックのみ
_◇PSpice Optimizer
LE版では目標は一つ、Constraintもひとつ
_◇PSPICE.INI
各種の設定
◆ライブラリ
_◇abm
加算器や積分岐などの機能ボックス
_◇analog.olb
R, C, Lなどの受動素子
各種制御電源 E, F, G, Hなど
_◇source.olb
電圧源など
※電圧源
①VAC/SOURCE
交流信号源、AC解析用
②VDC/SOURCE
直流電圧源、DC解析や各種電源として
③VPULSE/SOURCE
パルス信号
_ V1: 初期電圧
_ V2: パルス電圧
_ TD: 遅延時間
_ TR: 立ち上がり時間
_ TF: 立ち下がり時間
_ PW: パルス幅
_ PER: 周期
④VSIN
正弦波電圧源、オフセット、位相設定可能。過渡解析など
⑤VSRC
万能型電圧源、DC, AC, TRANの各解析で使用可能
※DC解析で設定した値は他の解析でも有効になる
※AC解析では、ACで値を与えられた全ての万能型電圧源の信号周波数を可変させる(交流信号を発生させたくない信号源は0Vにする)
※TRANでの波形設定例:正弦波
TRAN=sin(0V 1V 1kHz 0s 0 0)
sin …正弦波の設定
0V … 直流オフセット
1V … ピーク値(2Vppとなる)
1kHz … 周波数
0s … 遅延時間
0 … ダンピングファクタ
0 … 位相
※TRANでの波形設定例:方形波
TRAN=pulse(-0.1V 0.1V 0s 0.1u 0.1us 4.9us 10us)
pulse … パルス波の指定
-0.1V … 初期値
0.1V … パルス値
0s 遅延時間
0.1u 立ち上がり時間
0.1us 立ち下がり時間
4.9us パルス幅(立ち上がり除く)
10us 周期
⇒立ち上がり、立ち下がりを小さくしすぎると、シミュレーションが収束しなかったり、膨大なシミュレーション時間を要する
⑥ISRC
万能型電流源、DC, AC, TRANの各解析で使用可能
_◇breakout.olb
トランジスタ、ダイオード、電圧制御スイッチなど
_◇special.olb
パラメトリック解析用のPARAMシンボルなど
_◇eval
ロジックやOPアンプなど、ただし、回路規模大きい
_◇tragi
国産の汎用デバイス、理想OPアンプなど
◆TIPS
_◇LE版機能制限
64ノード以内、10トランジスタ、2オペアンプ、65デジタルプリミティブ
_◇Spiceシミュレーションの制限
※受動素子は理想部品であるが、実際の部品はそうではない。
⇒理想部品を使って実際の回路と等価な回路モデルをシミュレータ上に構成するように考えること
※実際の部品には誤差がある
⇒部品のばらつきを設定し、シミュレーションすることもできる(モンテカルロ解析)
_◇回路の不備によるエラー
Session Logウインドウから確認
_ ⇒メッセージ上にカーソルを移動してF1でHELP
_◇PSpice解析エラー
①ERROR — Node XXX is floating
その上にネットリスト出力が表示されているのでNodeの場所はネットリストから調べられる
※PSpiceは、各ノードにグラウンドへの直流経路が必要
⇒回路の特性に影響を及ぼさないような大きい値の抵抗(例100MEGΩ)などを介してグラウンドを接続することで回避
②ERROR — Voltage source and/or inductor loop involving L_L1
※抵抗0のループはシミュレーションできない。インダクタンスなどループの構成要素に影響を及ぼさないような小さな値の抵抗(例1mΩ)を挿入することで回避
_◇パスコン
パスコン(デカップリング・コンデンサ)は不要。
シミュレータ電源では、グラウンドに対するインピーダンスが全ての周波数で0という理想特性
_◇実測でのプローブ
実測ではプローブを使用するが、この付加が特性に影響を与えることもある
例)低容量プローブ
2pF-10MΩ
出力インピーダンスとローパスフィルタを形成して高域減衰
※低周波領域では抵抗成分、高周波領域ではコンデンサ成分とコイル成分に注意