LTSpiceをデジタル回路のシミュレーションに使う時の注意点

LTSpiceにはデジタル回路のシミュレーションも出来るように標準コンポーネントとして論理ゲートなどが用意されている。これらのコンポーネントはHレベルの電圧や立ち上がり/立ち下がり時間など、パラメーター設定が必要だ。また、標準コンポーネントには論理ゲートとフリップフロップ位しか含まれないため、他は別途用意する必要がある。

今回は、LTSpiceでデジタル回路のシミュレーションを行う時の注意点をまとめた。

スポンサーリンク

デジタル部品を回路図に追加して使ってみる

例えば、LTSpiceで回路にインバータを追加する方法は以下の通り。

  • メニューバーから”Edit -> Component”を選択し、”Select Component Symbol”ダイアログを開く
  • 一覧から”Digital”フォルダを選択する
  • “inv”を選択する

このインバーターを使って、以下の簡単な回路を作ってみた。LTSpice標準のデジタル部品全般に言えることだが、入出力端子の他にcom端子がありGNDなどLowレベルの電圧に接続する必要がある。

過渡解析(.tran)を実行すると以下のような結果になる。インバータの出力波形が、Lowレベルは問題無いが、Highレベルが1Vになっており、どうもおかしい。

デジタル部品のパラメータを設定する

デジタル部品はcom端子をLowレベルに接続する以外にも、パラメータの設定が必要だ。LT Wikiにデジタル部品へ設定可能なパラメータがまとめられている。以下に転載しておく。

パラメータ名デフォルト説明
Vhigh1Hレベル電圧
Vlow0Lレベル電圧
Trise0立ち上がり時間
TfallTrise立ち下がり時間
Tau0出力RC時定数
Cout0出力容量
Rout1出力抵抗
RhighRoutHレベルインピーダンス
RlowRoutLレベルインピーダンス

これらパラメータは、デジタル部品を右クリックして”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モデル資産を上手に活用すると良いだろう。

コメント