CMOSアナログスイッチの外部モデルをLTspiceで使う (CD4066, 4053B)

published_with_changes 更新日: event_note 公開日:

labelelement labelLTspice

CMOSアナログスイッチの標準モデルは[Switches]のカテゴリに入っているので、そこから選び出して使ったりしています。


ところで。Web上に掲示されている回路では、4066とか4053のロジックICの並びのアナログスイッチがよく使われています。

4066は苦労せずに使えたのですが、4053を使うのにはWeb上に情報がなく手こずったので、これらの導入と使い方をまとめておきます。しばらくすると、確実に忘れてしまうのでその時を予想しての備忘録です。

外部モデルの導入(これは本ブログの序章)

これについては、他に詳しく説明しているブログを参照してください。例えば、次のブログ。

LTspiceで外部SPICEモデル(.subcktライブラリ)を使う方法

LTspiceで外部SPICEモデル(.subcktライブラリ)を使う方法

LTspiceの標準コンポーネントに含まれない部品はネット等にある外部SPICEモデルが利用出来る。LTSpiceのライブラリには大きく分けてコンポーネント定義のディレクティブが.modelの物と.subcktの物の2種類がある。.mode


シンボルファイル

私は、LTwikiにある Bordodynov's Electronics web page のライブラリを一括でダウンロードしており、そこから所望のものを探しています。今回、下記のものを取り込み所定のシンボルファイル用フォルダにコピーしました。


CD4066B デバイスは 4 つの双方向スイッチで構成され、それぞれ独立して制御できます。各スイッチの P と N の両方のデバイスが、制御信号によって同時にオンまたはオフにバイアスされます。引用元:CD4066B CMOS クワッド双方向スイッチ データシート

TC4051B、TC4052B、TC4053B は、アナログ信号、デジタル信号の選択・複合の可能なマルチプレクサで、TC4051B は 8 チャネル、TC4052B は 4 チャネル × 2、TC4053B は 2 チャネル × 3 の構成です。引用元:TC4051BP datasheet

ライブラリファイル

シンボルファイルを開くと該当するモデルファイルの記載があるので、それを所定のライブラリホルダにコピーします。4066 のモデルファイル(ModelFile)は SwitchAna.lib なので、これをBordodynov's のライブラリから持ってきます。他の4051、4052、4053 についても同じSwitchAna.lib を引用していました。

Version 4
SymbolType BLOCK
LINE Normal -16 -16 -32 -16
<<中略>>
SYMATTR SpiceModel 4066
SYMATTR Prefix X
SYMATTR Description Analog CMOS Switch
SYMATTR ModelFile SwitchAna.lib
<<以下省略>>

シンボルとライブラリの関係をBordodynov's と同じにするなら、コピーして取り込んだシンボルファイルはそのまま使えます。ライブラリーを(パスの通っていない)特別な場所に置いた場合には、上記のSYMATTR ModelFile にパスを書き込む必要があります。

4066 spice model の使い方

各社のものから、TIのCD4066B CMOS クワッド双方向スイッチを例にします。4066にはON/OFFスイッチが4回路組み込まれています。図はデーターシートを引用しました。

1/4 model

LTspiceのモデルは1回路のみ抽出したもので、±電源、入出端子(Y/Z)と制御端子(E)で表現されています。機能としてはLTspiceの電圧制御SWと同じです。

5msecごとに導通と遮断を繰り返すシミュレーションを行ってみたのが下記の図です。電圧制御SWのON抵抗をデータシートに記載されている条件でのON抵抗15Ωと同じにしてみたのですが、4066モデルの方が出力がやや小さくなりました。on抵抗が大きいのだと思います。





ON抵抗(Ron)

on抵抗を計算してみると、前述の事例の入力±1Vのケースでは300Ωを超える値となりました。(赤色)



4053 spice model の使い方(2つのパラメータが必須)

図はデーターシートを引用しました。

4051、4052、4053 はspiceモデルの使い方は基本的には同じなので、SPDT(1極2接点)形式の4053を事例にします。spice model は3回路構成なのですが、とりあえず1回路(Aチャンネル)を使います。

Pin設定

#16 VDD: Positive power supply input
#7   VEE: Negative power supply input
#8   VSS: Ground

#6 INHIBITの使い方が良くわかりません。"Channel select A See 表8-1." とあるので、それを見ます。


INHIBITはチャンネル選択の有効/無効を設定するキー入力のようで、0(GND)だと有効になります。


.param VCC=5 Vel =0.5

このパラメータを設定しないと、図のようなエラーメッセージが連発します。


SwitchAna.lib を見ると次のように書いてありましたが、これに気づくまで2,3日かかりました。電源電圧と何かの変化速度に関するパラメータのようですが、実際は不明です。また、値もたまたま表題の値にしたら動いたので、その値にしているだけです。

* The model needs two params: Vcc & Vel see the circuit example...

SPDT model

Aチャンネルの1入力2出力で使ってみました。1kHzのサイン波を5msecごとに2経路に振り分ける回路構成です。


 4053_tercio model(バージョンアップの影響なのかも知れない)

1回路のみ抜き出した1/3 モデルがあったので、設定してみました。
オリジナルのシンボル 4053b_tercio.asy 2005‎/04‎/‎22‎ ‏‎1:21:36 
では、モデルファイルの設定に拡張子(.lib)がありませんでした。SwitchAna がないといったエラーが出ます。

次のように拡張子を追加するとうまく動くようになりました。

SYMATTR ModelFile SwitchAna.lib

Powered by Blogger | Designed by QooQ

keyboard_double_arrow_down

keyboard_double_arrow_down