LTSpiceにはデジタル回路のシミュレーションも出来るように標準コンポーネントとして論理ゲートなどが用意されている。これらのコンポーネントはHレベルの電圧や立ち上がり/立ち下がり時間など、パラメーター設定が必要だ。また、標準コンポーネントには論理ゲートとフリップフロップ位しか含まれないため、他は別途用意する必要がある。
今回は、LTSpiceでデジタル回路のシミュレーションを行う時の注意点をまとめた。
デジタル部品を回路図に追加して使ってみる
例えば、LTSpiceで回路にインバータを追加する方法は以下の通り。
- メニューバーから”Edit -> Component”を選択し、”Select Component Symbol”ダイアログを開く
- 一覧から”Digital”フォルダを選択する
- “inv”を選択する
このインバーターを使って、以下の簡単な回路を作ってみた。LTSpice標準のデジタル部品全般に言えることだが、入出力端子の他にcom端子がありGNDなどLowレベルの電圧に接続する必要がある。
過渡解析(.tran)を実行すると以下のような結果になる。インバータの出力波形が、Lowレベルは問題無いが、Highレベルが1Vになっており、どうもおかしい。
デジタル部品のパラメータを設定する
デジタル部品はcom端子をLowレベルに接続する以外にも、パラメータの設定が必要だ。LT Wikiにデジタル部品へ設定可能なパラメータがまとめられている。以下に転載しておく。
パラメータ名 | デフォルト | 説明 |
---|---|---|
Vhigh | 1 | Hレベル電圧 |
Vlow | 0 | Lレベル電圧 |
Trise | 0 | 立ち上がり時間 |
Tfall | Trise | 立ち下がり時間 |
Tau | 0 | 出力RC時定数 |
Cout | 0 | 出力容量 |
Rout | 1 | 出力抵抗 |
Rhigh | Rout | Hレベルインピーダンス |
Rlow | Rout | Lレベルインピーダンス |
これらパラメータは、デジタル部品を右クリックして”Component Attribute Editor”を開き、SpecLine属性に設定する。SpecLineにはスペースで区切って複数パラメータを設定出来る。
例えば、上記キャプチャのようにインバータのSpecLine属性に”Vhigh=5 Trise=15n Tfall=10n”を設定し再度解析を実行した結果は以下。出力波形がだいぶ現実に近くなった。
ICのSPICEモデルを取り込むには?
ロジックIC等のSPICEモデルは自分はまずLT Wikiサイトでhttp://ltwiki.org/files/LTspiceIV/lib/sub/ 探している。ネットで見つけたSPICE等価回路モデルは回路図シンボル(.asyファイル)と関連づけられていない場合も多く、ちょっとした作業が必要だ。方法は別記事でまとめてある。
まとめ
マイコンの周辺回路など、デジタルとアナログが混在した回路をシミュレーションしたい時はけっこうあると思う。そんな時にLTspiceは非常に重宝するが、上記のように独特なお作法があるため注意したいところ。またインバータやフリップフロップだけで済むならLTspice組み込みの物で事足りるが、そうでない場合はネット上のSPICEモデル資産を上手に活用すると良いだろう。
コメント