HSPICEの使い方

あなたは平成22年10月20日以来

人目のお客様です

もくじ


制御記述の書き方

制御記述の基本は下に示したとおりです

.命令項目 内容 (例 .tran 1ns 10ns 0 0.1ns )

制御記述はいろんな種類があって、いろんな操作ができます。下にいくつか挙げますが、そのほかにも色々あるので、本で調べてみましょう

☆直流解析
.dc 変化させたい電圧源名 初期値 終了値 計算間隔
(例 .dc vin 0 5 0.1)

例の場合は電源vinの電圧を0Vから5Vまで0.1Vおきに変化させよという意味です。


☆過渡解析
.tran 出力間隔 終了時間 開始時間 計算間隔
(例 .tran 1ns 10ns 0 0.01ns )

例の場合は0から10nsまで0.01nsおきに計算して1nsおきに出力させます。ちなみに

.tran 出力間隔 終了時間

というふうに開始時間と計算間隔を省略してもできます。このときは出力間隔が計算間隔になります。通常はこっちで充分事が足りますが、双安定回路のように細かい解析を必要とするときは最初の方の書き方で出力間隔を制御しないと結果(リスト)ファイルが大きくなりすぎてとても見られたものではなくなります。

なお、絶対に

.tran 1ns 10ns 0 0

というふうに計算間隔を0にしないでください。結果が永遠にでないだけでなく場合によってはコンピュータがパンクします。
サーバーダウンさせてシスオペの方に怒られたことあるっすorz

☆交流解析
.ac 周波数の変化の方法 分割数 開始周波数 終了周波数 
(例 .ac lin 100 1.85meg 1.90meg )

周波数の変化の方法は
lin(直線的変化) dec(10nの形で変化) oct(2nの形で変化)の3つがあります。

例の場合は1.85MHz〜1.90MHzで直線的に100分割して周波数特性を調べよと言う意味です
交流解析では周波数を変数とするいろいろな解析(電圧・電流の実数・虚数部だけでなく群遅延なるものも出る)ができますがその出力の指定はここではなくて.printのところで行います。



☆初期値設定
.ic v(端子)=電圧  (例 .ic v(a1)=1 v(a2)=0.2 ・・・)
(ここはいくつでも設定できます。)

初期値設定は、過渡解析において解析開始時(t=0)のときの端子の電圧を決めるための設定です。端子ごとに値を決められます。例の場合は端子a1の電圧の初期値を1Vにせよ・・・という意味になります。


☆結果出力
.print 解析の種類 v(端子) i(素子名) (1行あたり4つ以内にしましょう)
             ↑電圧 ↑電流

(例 .print dc v(a1) v(a2) i(vdd) )

解析の種類は、直流解析:dc 、過渡解析:tran 、他 
例の場合は端子a1とa2の電圧と電源vddに流れる電流を出力させます。 交流解析の場合はここで出力の種類を設定します。詳しくは交流解析のところで書きます。
ちなみに、

.print 解析の種類 v(端子A,端子B)

とすると、端子Aと端子Bの電位差を見ることができます。 さらに、各素子が消費する電力を見ることもできます。やったことはないのでよくわかりませんが、

.print 解析の種類 p(素子名) power
※解析の種類は直流解析か過渡解析

(例 .print dc p(r1) p(m1) power )

とすると、指定した素子が消費している電力を見ることができるそうです。

☆簡易グラフ描画
.plot 解析の種類 v(端子) i(素子名)
(例 .plot dc v(a1) v(a2) i(vdd) )

解析の種類は、直流解析:dc 、過渡解析:tran 、他
例の場合に出てくるのは、先の結果出力と同じです。ただし、アスキー文字を使ったグラフで出てきます。







累計 本日 昨日