原子核実験セミナー

1学期 第1回平成14年4月15日(月)

Spice入門
戻る 次へ

1-1 簡単な回路の記述とシミュレーション

抵抗分割回路の例

回路記述ファイル(例えばsimple.cir)は適当なエディター(muleやviなど)で作成する。
回路の記述は、

   Simple Devider Circuit
   Vs 1 0 5
   R1 1 2 2k
   R2 2 0 3k
   .END
   

となる。
要点は以下の通り。

  1. 第1行はタイトル行。最終行は.end文。 (必須!

  2. 第2行は直流電源Vs。ノード(結節点)#0(アース:0V)とノード#1(+5V)に接続。

    一般形
    Vname+node-nodevalue
    名前ノード番号(+端子)ノード番号(-端子)電圧値(絶対値)

  3. 第3行は抵抗R1。ノード(結節点)#1とノード#2に接続。

    一般形
    Vname+node-nodevalue
    名前ノード番号(+端子)ノード番号(-端子)抵抗値

  4. 第4行は抵抗R2。ノード(結節点)#2とノード#0に接続。

回路のシミュレーション

この回路のシミュレーションを行なうには
%spice < simple.cir ←Unixコマンド
とする。画面に各ノードの電圧や回路を流れる電圧などがシミュレーション 結果として、例えば

*******04/15/02 ***spice 2g.6    3/15/83 ********21:46:38*
simple devider circuit                                                         
****input listing              temperature =  27.000 deg c
**********************************************************
 vs 1 0 5
 r1 1 2 2k       
 r2 2 0 3k       
 .end    
*******04/15/02 ***spice 2g.6    3/15/83 ********21:46:38*
simple devider circuit                                                         
****small signal bias solution temperature =  27.000 deg c
**********************************************************
 node   voltage     node   voltage
(  1)    5.0000    (  2)    3.0000
    voltage source currents
    name       current
    vs       -1.000E-03
    total power dissipation   5.00E-03  watts
 node   voltage     node   voltage
(  1)    5.0000    (  2)    3.0000
    voltage source currents
    name       current
    vs       -1.000E-03
    total power dissipation   5.00E-03  watts
        job concluded
        total job time            0.00
のように表示される。
画面が早くスクロールして見にくい場合は、
%spice < simple.cir | more ←Unixコマンド
とすれはよいだろう。
**注意 spiceのバージョンが古い場合、上の記述 ファイルではエラーが出る場合がある。
古いバージョンでは、
    Simple Devider Circuit
    Vs 1 0 5
    R1 1 2 2k
    R2 2 0 3k
    .DC 5 5 0.1
    .PRINT DC V(1) V(2)
    .END
    
のように、解析/印刷の方法を具体的に指定する必要がある。


1-2 Spiceの基礎

記述ファイルの構造

記述ファイルは一種のプログラムになっている。プログラムの書式は

タイトル文回路の名称や機能を記述
データ文(複数)回路の構造を記述
制御文(複数)回路のシミュレーション/分析/出力を記述
.end文記述の終了

となる。

新しいバージョンでは、制御文を省略してもある程度の結果が出力される。


1-3 標準回路素子

電源と電流源

回路素子 データ文の書式
直流電源 Vname +node -node Value
直流電流源 Iname In_node Out_node Value
電圧制御直流電源 Ename +node -node +control_node -control_node gain
正弦波交流電源 Vname +node -node SIN offset amplitude frequency
矩形波/三角波交流電源 Vname +node -node PULSE init +peak delay rise_time fall_time width period
位相制御正弦波交流電源 Vname +node -node ac magnitude phase(in degrees)

受動素子

回路素子 データ文の書式
抵抗 Rname +node -node value
コンデンサ Cname +node -node value
インダクタンス Lname +node -node value


1-4 記述の仕方

基本ルール

  1. ファイル名: 拡張子 ".cir"を持つ。

  2. 文の順序タイトル文で始まり、.end文で終る。 データ文と制御文はある程度自由に配置してよいが、データ文-制御文というふうにまとめた方が分かり易い。

  3. コメント文: 文頭にアスタリスク(*)のある行はコメント文。また、命令文の後にセミコロン(;)を置いて注釈を自由に書くことができる。例えば、
          * define voltage sources
          Vs1 1 0 10  ; a voltage source #1 10V
          Vs2 1 2  5  ; a voltage source #2  5V
          

  4. 継続行: 第一桁がプラス(+)の文は先行文の継続行とみなされる。例えば、

          R1 1    0
          + 10k

  5. 大文字/小文字: 区別しない。

  6. 区切り文字: 空白、タブ、コンマはすべて区切り文字として使える。例えば、
          Vin 1,0,10 と Vin 1 0 10
          
    は同じもの。

  7. 設定値と単位MKSA単位系(V, A, Ω, F, H)を使い、設定値は小数形式(例えば0.1234) あるいは指数形式(例えば1.5e-3)で表す。 標準単位には以下の省略記号を用いる。
          pico =>p		Kilo=>k
          nano =>n		Mega=>meg (*not M)
          micro=>u 		Giga=>g
          milli=>m
          

  8. 符号の取り方: 電圧は第2ノードに対する第1ノードの値(相対値)。電流は第1ノードから 第2ノードへの流れの値。

  9. ノード番号: 第0ノードはアース。他は自由に指定してよい。

  10. 電位差: ノード#2に対するノード1の電位はV(node1,node2)。

  11. 浮動ノードの禁止: すべてのノードは2個以上の回路素子に接続していなければならない。