2017年1月3日火曜日

LTSpiceでデジタル回路のシミュレーション(メモ)

LTSpiceのmodelにDigitalというくくりがあるが使い方がよくわからないので少しだけ調べてみた。トランジスタ技術の2016年1月号に「バーチャル電子工房 LTspice使いこなし事典」という付録がついているが、Digital Modelについては記述がないようだ。



LTSpiceのHelp([LTSpice(R)]-[Circuit Elements]-[A. Special Funcrions])に、

These are Linear Technology Corporation's proprietary special function/mixed mode simulation devices. Most of these and their behavior are undocumented as they frequently change with each new set of models available for LTspice. However, here we document some of them because of their general interest.

という記述があって、本来はLinear Tecnologyのデバイスのために内部的に使う目的のコンポーネントlなのかもしれない。


Dフリップフロップ



シミュレーション回路図


過渡解析


クロックは1kHzの矩形波、D入力は500Hzの矩形波でクロックから0.2ms遅延させた。Qが出力でCLKの立ち上がり時に評価されてDの値が出力されている。Dフリップフロップに想定されている動作だ。

Dフリップフロップの上に表示されている

Vhigh=4.5V Vlow=0V Trise=5ns Tfall=5ns

という値は、74HCシリーズのDフリップフロップの74HC74(日立)のDATASHEETから拾ってきた値で、コンポーネント上で右クリックして現れる「Component Attribute Editor」の「Value」で指定した。



Visibleのところを2回クリックしてXマークを表示させると、回路図上に定義した値が表示される。

LTSpiceのHelpには以下の様なパラメータが記載されている。


シュミットトリガ


シュミットトリガのヒステリシスの値の与え方は、LTSpiceのHelpには載っていない。「ねがてぃぶろぐ」さんの記事を参考にして「Vh」で指定した。



シミュレーション回路図


過渡解析


Vtがスレッショルド値でVP(L→H)とVN(H→N)の中間値を指定するようだ。VhはVPとVNの差。

DATASHEETによると、VCC:4.5Vのとき標準値で

VP(L→H) | 2.7V
VN(H→L) | 1.6V
VH(ヒステリシス) | 1.1V

となっているのでシミュレーションできていると思う。

コンポーネント左下の端子


Digital Componentは左下に端子がついていて、説明がないので何かわからないが、電圧を印加すると出力に対するバイアスとして働くようだ。(ということはGND的な端子なのかなあ?)

シミュレーション回路図


過渡解析(V2=0V)


過渡解析(V2=1V)


Netlist

A1 IN V2 V2 V2 V2 OUT V2 V2 BUF Vhigh=4.5V
V1 IN 0 SINE(2.25V 2.25V 1k)
V2 V2 0 0V
.tran 1m
.backanno
.end

Netlistは上記の通りとなっている。左下の端子はデフォルト値を与えるってことなのか(@@?