スライド 1

Similar documents
スライド 1

アナログ回路 I 参考資料 版 LTspice を用いたアナログ回路 I の再現 第 2 回目の内容 電通大 先進理工 坂本克好 [ 目的と内容について ] この文章の目的は 電気通信大学 先進理工学科におけるアナログ回路 I の第二回目の実験内容について LTspice を用

新しくシンボルを作成することもできるが ここでは シンボル :opamp2.asy ファイル を回路と同じフォルダにコピーする コピーしたシンボルファイルをダブルクリックで 開く Fig.4 opamp2 のシンボル 変更する前に 内容を確認する メニュー中の Edit の Attributes の

電子回路I_4.ppt

7-1 Digital IC のライブラリの準備について [ 目的 ] 実験では 74HC00 を使用するので SPICE モデルを入手する [ 方法 ] LTspice User site からライブラリとシンボルを Download します

第 11 回 R, C, L で構成される回路その 3 + SPICE 演習 目標 : SPICE シミュレーションを使ってみる LR 回路の特性 C と L の両方を含む回路 共振回路 今回は講義中に SPICE シミュレーションの演習を併せて行う これまでの RC,CR 回路に加え,L と R

TDK Equivalent Circuit Model Library

Microsoft PowerPoint pptx

Microsoft PowerPoint - 集積回路工学(5)_ pptm

Microsoft Word - SPICE_Easy_Manual.doc

スライド 1

電子回路I_6.ppt

Microsoft Word - LTSpice入門_V104.doc

NS-Draw Ver

レベルシフト回路の作成

Taro13-OrCADManual jtd

Microsoft PowerPoint - 4.CMOSLogic.ppt

Library for Cadence OrCAD Capture ユーザマニュアル 2018 年 7 月 株式会社村田製作所 Ver.1.0 Copyright Murata Manufacturing Co., Ltd. All rights reserved. 10 July

目次 ページ 1. 本マニュアルについて 3 2. 動作環境 4 3. ( 前準備 ) ライブラリの解凍と保存 5 4. モデルのインポート 6 5. インポートしたモデルのインピーダンス計算例 8 6. 補足 単シリーズ 単モデルのインポート お問い合わせ先 21 2

Microsoft PowerPoint - 集積デバイス工学7.ppt

(3) E-I 特性の傾きが出力コンダクタンス である 添え字 は utput( 出力 ) を意味する (4) E-BE 特性の傾きが電圧帰還率 r である 添え字 r は rrs( 逆 ) を表す 定数の値は, トランジスタの種類によって異なるばかりでなく, 同一のトランジスタでも,I, E, 周

等価回路モデルライブラリ TDK Corporation Passive Application Center July. 1, 2015

TDK Equivalent Circuit Model Library

等価回路モデルライブラリ TDK Corporation Passive Application Center July 15, 2016

Microsoft Word - T4_LTspice_1

CMOSアナログ/ディジタルIC設計の基礎

AI1608AYUSB手順V3

電子回路I_8.ppt

IBIS Quality Framework IBIS モデル品質向上のための枠組み

スクールCOBOL2002

ModelSim-Altera - RTL シミュレーションの方法

ディエンベディングとは冶具やケーブルによる観測信号の劣化を S パラメータデータを利用して計算により補正する TX 冶具ケーブル 被測定物の出力 De-Embedding 冶具 ケーブル等の影響を受けた波形 冶具 ケーブル等の S パラメータデータ TX 被測定物の出力 冶具 ケーブル等の影響のない

B1 Ver ( ), SPICE.,,,,. * : student : jikken. [ ] ( TarouOsaka). (, ) 1 SPICE ( SPICE. *1 OrCAD

LED特性の自動計測ver3.1改.pptx

Microsoft PowerPoint pptx

C#の基本

Microsoft PowerPoint - 9.Analog.ppt

回路シミュレーションに必要な電子部品の SPICE モデル 回路シミュレータでシミュレーションを行うためには 使用する部品に対応した SPICE モデル が必要です SPICE モデルは 回路のシミュレーションを行うために必要な電子部品の振る舞い が記述されており いわば 回路シミュレーション用の部

デジタル回路入門

周波数特性解析

Rational Roseモデルの移行 マニュアル

スライド 1

Microsoft PowerPoint - semi_ppt07.ppt

PowerPoint プレゼンテーション

名称 型名 SiC ゲートドライバー SDM1810 仕様書 適用 本仕様書は SiC-MOSFET 一体取付形 2 回路ゲートドライバー SDM1810 について適用いたします 2. 概要本ドライバーは ROHM 社製 2ch 入り 180A/1200V クラス SiC-MOSFET

NJM78L00S 3 端子正定電圧電源 概要 NJM78L00S は Io=100mA の 3 端子正定電圧電源です 既存の NJM78L00 と比較し 出力電圧精度の向上 動作温度範囲の拡大 セラミックコンデンサ対応および 3.3V の出力電圧もラインアップしました 外形図 特長 出力電流 10

部品ライブラリシステム

Microsoft PowerPoint - Borland C++ Compilerの使用方法(v1.1).ppt [互換モード]

PRONETA

Microsoft PowerPoint - 4.1I-V特性.pptx

IBIS

RMS(Root Mean Square value 実効値 ) 実効値は AC の電圧と電流両方の値を規定する 最も一般的で便利な値です AC 波形の実効値はその波形から得られる パワーのレベルを示すものであり AC 信号の最も重要な属性となります 実効値の計算は AC の電流波形と それによって

PowerPoint プレゼンテーション

ガイダンス

トランジスタ回路の解析 ( 直流電源 + 交流電源 ) 交流回路 ( 小 ) 信号 直流回路 ( バイアス計算 ) 動作点 ( 増幅度の計算 ) 直流等価回路 ダイオードモデル (pnp/npn) 交流 ( 小信号 ) 等価回路 T 形等価回路 トランジスタには直流等価回路と交流等価回路がある

1. はじめに 本書は スプリット演算器 MFS2 用コンフィギュレータソフトウェア の取扱方法 操作手順 注意事項などを説明したものです Windows の操作や用語を理解している方を前提にしています Windows の操作や用語については それぞれのマニュアルを参照してください 1.1. MFS

基本的な利用法

Microsoft PowerPoint - semi_ppt07.ppt [互換モード]

NJM78L00 3 端子正定電圧電源 概要高利得誤差増幅器, 温度補償回路, 定電圧ダイオードなどにより構成され, さらに内部に電流制限回路, 熱暴走に対する保護回路を有する, 高性能安定化電源用素子で, ツェナーダイオード / 抵抗の組合せ回路に比べ出力インピーダンスが改良され, 無効電流が小さ

Microsoft Word - 2_0421

絶対最大定格 (T a =25 ) 項目記号定格単位 入力電圧 V IN 消費電力 P D (7805~7810) 35 (7812~7815) 35 (7818~7824) 40 TO-220F 16(T C 70 ) TO (T C 25 ) 1(Ta=25 ) V W 接合部温度

Maser - User Operation Manual

Microsoft PowerPoint - 集積回路工学_ ppt[読み取り専用]

CMOS リニアイメージセンサ用駆動回路 C CMOS リニアイメージセンサ S 等用 C は当社製 CMOSリニアイメージセンサ S 等用に開発された駆動回路です USB 2.0インターフェースを用いて C と PCを接続

初めてのプログラミング

PowerPoint Presentation

NJM78M00 3 端子正定電圧電源 概要 NJM78M00 シリーズは,NJM78L00 シリーズを更に高性能化した安定化電源用 ICです 出力電流が 500mA と大きいので, 余裕ある回路設計が可能になります 用途はテレビ, ステレオ, 等の民生用機器から通信機, 測定器等の工業用電子機器迄

Microsoft PowerPoint - 6.PID制御.pptx

基本的なノイズ発生メカニズムとその対策 電源 GND バウンス CMOS デジタル回路におけるスイッチング動作に伴い 駆動 MOS トランジスタのソース / ドレインに過渡的な充放電電流 及び貫通電流が生じます これが電源 GND に流れ込む際 配線の抵抗成分 及びインダクタンス成分によって電源電圧

nLiteによるドライバの統合 - フロッピーディスク不要のXPインストールCDの作成方法 -

目次 専用アプリケーションをインストールする 1 アカウントを設定する 5 Windows クライアントから利用できる機能の紹介 7 1ファイル フォルダのアップロードとダウンロード 8 2ファイル更新履歴の管理 10 3 操作履歴の確認 12 4アクセスチケットの生成 ( フォルダ / ファイルの

A 既製のプロジェクトがある場合

Microsoft Word - VB.doc

PIC の書き込み解説 PICライターを使うときに間違った使い方を見受ける 書き込み失敗の原因は知識不足にある やってはいけないことをしている 単に失敗だけならまだしも部品を壊してしまう 正しい知識を身に着けよう 書き込みに必要なピンと意味 ICSPを意識した回路設計の必要性 ICSP:In Cir

Code_Aster / Salome-Meca 中級者への道 2015年5月31日

Microsoft Word - N-TM307取扱説明書.doc

CommCheckerManual_Ver.1.0_.doc

Microsoft Word - 操作マニュアル(PowerPoint2010).doc

Microsoft Word - 操作マニュアル(PowerPoint2013)

PowerPoint プレゼンテーション

RLC 共振回路 概要 RLC 回路は, ラジオや通信工学, 発信器などに広く使われる. この回路の目的は, 特定の周波数のときに大きな電流を得ることである. 使い方には, 周波数を設定し外へ発する, 外部からの周波数に合わせて同調する, がある. このように, 周波数を扱うことから, 交流を考える

Transcription:

集積回路工学特論 2017 年 6 月 21 日 集積回路とEDA SPICEの使い方 塩見準 *, 土谷亮 * shiomi-jun@vlsi.kuee.kyoto-u.ac.jp スライド サンプル等は以下から入手してください小野寺研 講義 集積回路工学特論 http://www-lab13.kuee.kyoto-u.ac.jp/modules/contents/lecture/spice.html 1

今日の内容 そもそも EDA とは なぜ必要なのか SPICE とは SPICE の使い方 解析の種類 回路 解析条件の与え方 操作手順 :LTspice 2

集積回路と EDA Electric Design Automation ( 設計自動化技術 ) 計算機による設計 製造支援ツール CAD (Computer Aided Design) CAE (Computer Aided Engineering) CAM (Computer Aided Manufacturing) 厳密な使い分けは存在しない 多数の会議が開催される集積回路の一大研究分野 市場規模は年間 66 億ドル程度 (2012 年 ) 年率 7~8% の成長市場 3

なぜ EDA が必要なのか EDA のなかった時代 ほとんどのロジックは一人 ~ 数人の技術者が設計 ちなみに 4004 の設計者は日本人 ( 嶋正利 ) 紙と鉛筆の世界 Intel 4004 (1971 年 ) 3mm x4mm, 10mm プロセス, 2300Tr 4bit, 動作周波数 741kHz 入出力 16 ピン世界初の商用マイクロプロセッサ このころはそれでよかったが Photo from Situation Publishing Ltd., http://www.reghardware.com/ 4

現在の集積回路 Renesas SH-Mobile G3 (2008) 9.3mm x 9.3mm, 65nm プロセス, 3 億 Tr 配線層 8 層, 電源ドメイン 21 個入出力 617 ピン Photo from ISSCC2008 手作業では無理 機能検証 配置 配線 タイミング検証 マスクデータ作成 etc. etc 開発期間は半年 ~1 年 最新 (2017 年 ) のプロセッサだとトランジスタ数は70 億以上 5

集積回路の複雑さ レポートで作成した NAND レイアウトは 4Tr, 配線層 1 最先端プロセス数億 Tr 配線層 10 前後 D-flipflop の立体イメージこれで 1 ビット 6

Moore の法則 7

集積回路の断面構造 10 層配線プロセスの立体イメージ最小の配線幅は 100nm 以下 8

Productivity (log) EDA の恩恵 : 生産性 ハードウェア規模 3 年で 2 倍 (Moore s law) Productivity gap Year? 生産性 4 年で 2 倍 (?) Productivity gap: ハードウェア規模の増大に生産性が追いつかない 設計, 評価, 検証 etc. 生産性を上げる のが大きな目的 試作して測って を計算機上で 回路シミュレータ (SPICE など ) レジスタのレベルから回路図を生成 ハードウェア記述言語 (Verilog,VHDL) 回路図からレイアウトを自動作成 自動配置配線 9

実測と EDA 実測試作に時間がかかる 測定自体が難しい擾乱なしの測定は不可能 EDA すぐに評価が可能 任意の点を評価可能擾乱なしに評価が可能 予期せぬ事態も捉えることができる モデル化されていない事象は評価できない 実測もシミュレーションも 何を評価しているのか を理解して使うことが重要 わけもわからず SPICE をまわし続ける人を貶める SPICE monkey という言葉も 10

EDA の出発点 SPICE とは Simulation Program with Integrated Circuit Emphasis UC Berkeley で 1973 年に開発 スパコンが 100MFLOPS ぐらいの時代ちなみに Intel Core i7 は 50GFLOPS ぐらい 入力はパンチカードだった 非線形素子を含む回路を解析できる SPICE は トランジスタレベルの回路シミュレータ の代名詞 11

SPICE の重要性 回路シミュレータの Golden simulator SPICE が精度の基準 集中定数で表せない高周波回路は除く シンプルで強力な非線形問題ソルバー 用途は集積回路だけではない 回路にマッピングできれば電気回路以外にも 熱抵抗と熱容量で熱の拡散を解く, など 問題をどう SPICE にマッピングするか という研究も行われている 12

今日の内容 そもそも EDA とは なぜ必要なのか SPICEとは SPICE の使い方 解析の種類 サンプルを動かす LTspiceの使い方 便利機能 13

SPICE でできる解析 直流解析 (DC analysis) 時間的に変化しない電圧 電流の関係 トランジスタの動作点解析など 小信号解析 (AC analysis) 特定バイアス下での周波数応答 過渡解析 (Transient analysis) 時間的に変化する信号に対する応答 14

直流解析 回路にある電圧 電流を与えた際に各部の電流 電圧がどうなるか? 例 : トランジスタの電流電圧特性 指定した電圧 (Vgs,Vds) を与えたときに電流 (Ids) はどのぐらい流れるか? を解析 回路の入出力特性, アナログ回路のバイアス確認などに使う 対応する測定器 : デジタルマルチメータ Vgs Ids Vds 15

小信号解析 回路の周波数応答を解析する 小信号 : 素子が線形素子とみなせる程度の大きさの信号 例 :RC フィルタの周波数応答 入力信号の周波数を上げていくとゲインはどうなるか? を解析 フィルタ, アンプなどの周波数特性の確認に使う 対応する測定器 : ネットワークアナライザ 16

過渡解析 時間的に変化する信号に対する応答を解析 小信号解析に対して大信号解析と言うことも = 非線形性が考慮される 例 : インバータの入出力波形 IN1 にパルスを入力したら各部の波形はどうなるか? を解析 遅延時間, 信号遷移時間, 遅延などの評価に使う 対応する測定器 : オシロスコープ 17

サンプルを動かす 18

サンプルを動かす とりあえず動かす ファイルは小野寺研からダウンロード 19

サンプルを動かす ファイルの読み込み 1. 小野寺研のページから inv_example.asc をダウンロード 2.LTSpice を起動し,File Open で inv_example.asc を選択 inv_example.asc が見つからない場合は ファイルの種類 が Schematics (*.asc) になっていることを確認すること 回路図が表示される 20

サンプルを動かす モデルの指定 1. 小野寺研のページから X.XX プロセストランジスタモデルパラメータ SPICE_param_X.XXum.txt をダウンロード 2..lib でダウンロードしたファイルを指定する 右クリック Browse を押してファイルを指定 モデルパラメータ が何なのかは後述 21

サンプルを動かす 解析実行 3.Simulate Run でシミュレーションを実行 正常終了すると波形ウィンドウが開く ( この時点では波形は何も表示されない ) エラーメッセージが出た場合はネットリストが間違っている. エラーメッセージを読んで対応すること. エラーメッセージの例 22

サンプルを動かす 波形の表示 4. 回路図上で見たいノードをクリックすると波形が表示される シミュレーションが正常に終わっていないと ( 当然 ) 波形は見られない波形が表示できるノードの上ではポインタの形が変わる 電圧波形 ( ポインタがプローブの形 ) 電流波形 ( ポインタがクランプの形 ) 23

サンプルを動かす 波形の表示例 24

サンプルを動かす データの書き出し 5. 波形ウィンドウを選択した状態で,File Export 出力したいノードを選択して OK を押すと指定したファイルに数値データが書き出される結果はテキストファイルなのでメモ帳等で表示可能 25

注意点 LTSpice は選択しているウィンドウの種類によってメニューの構成が変わることに注意 波形の操作や書き出しは波形ウィンドウを選択した状態でしか行なえない 26

回路図の作り方 27

SPICE の入力 SPICE が必要とする情報は大きく 3 つ 素子の接続関係 電気回路は素子と節点からなるグラフとして記述できる モデルパラメータ ( モデルカード ) 回路が非線形素子を含む場合, その特性は素子の種類に応じたパラメータで表現する 解析条件オプションなど 電圧や周波数の範囲何を出力するか etc. 昔はテキストで記述していた ( ネットリスト ) 現在はグラフィカルに記述 28

SPICE の入力 素子の接続関係 回路図を書く モデルパラメータ ( モデルカード ) 回路が非線形素子を含む場合, その特性は素子の種類に応じたパラメータで表現する 解析条件オプションなど 電圧や周波数の範囲何を出力するか etc. 29

GUI( 回路図エディタ ) による回路図入力 ツールバー, もしくはメニューの Edit から置きたい素子を選んで配置, 配線でつないで回路図を作る 電圧源, トランジスタなどはほとんど コンポーネント から選択 配線 グラウンド コンポーネント コンポーネント選択ウィンドウこの課題で使うのは - voltage ( 電圧源 ) - nmos4 (nmos) - pmos4 (pmos) - Ground nmos4,pmos4 はバックゲートの接続を忘れないように注意 Ground は必ず必要 30

素子の特性設定 素子を右クリックすると特性入力ウィンドウが開く 電圧源の設定 pmos の設定 適切なモデル名になっているか注意 負荷容量の設定 31

MOS トランジスタ MOS トランジスタは 4 端子素子であることに注意 Model Name: モデル名 ( 後述 ) Length (L): チャネル長 Width (W): チャネル幅 Drain Area (AD): ドレイン面積 Source Area (AS): ソース面積 Drain Perimeter (PD): ドレイン周囲長 Source Perimeter (PS): ソース周囲長 No. Parallel Devices (M): フィンガー数 s L g g d s W d b L,W,AD,PD,AS,PS はレイアウトに依存する 32

AD,PD,AS,PS の意味 L g s g W d s d ドレイン / ソース領域の PN 接合の容量を計算するのに使用 C C drain source C j C j AD AS C C jsw jsw PD PS 正しく設定しないと遅延時間が狂う桁の間違いに注意 Cj : 底面の容量 Cjsw: 側壁 (Sidewall) の容量 33

フィンガー数 (M) の意味 フィンガー数 (M) に応じてトランジスタの並列数を変更可能 g d b g g d d b b s s s M=1 M=2 M を用いることでインバータの並列数を変更可能 ( レポート課題最終問題に使用 ) 34

フィンガー数 (M) による並列数変更 レポートの課題 電源 M=6 M=6 M の変更によりインバータの並列数を変更可能 35

数値の書式 数値 + 接尾辞で記述が可能 1f = 1e-15 1p = 1e-12 1n = 1e-9 1u = 1e-6 1m = 1e-3 1k = 1e+3 1Meg = 1e+6 マイクロ (u, 1e-6) とメガ (Meg, 1e+6) に注意 1Meg のつもりで 1M と書くと 1e+6 ではなく 1e-3 になる 接尾辞以外の文字は無視される Rload 1 2 10k Rload 1 2 10kOhm Ohm は無視されるのでどちらも同じ 36

信号源の作り方 電圧源に時間的に変化する電圧を設定することができる 折れ線 (PWL; Piecewise Linear) ( 時刻, 電圧 ) の値を任意の個数列挙 (t3, v3) (t4, v4) (t6, v6) (t1, v1) (t2, v2) (t5, v5) (t7, v7) pulse を使ってもよい 37

入力波形の設定 電圧源で Advanced を押すと波形の設定が可能 PWL を選択 値を入力 38

SPICE の入力 素子の接続関係 回路図を書く モデルパラメータ ( モデルカード ) 回路が非線形素子を含む場合, その特性は素子の種類に応じたパラメータで表現する 解析条件オプションなど 電圧や周波数の範囲何を出力するか etc. 39

モデルパラメータ モデルパラメータ ( モデルカード ) とは : 非線形素子の特性を記述する方程式のパラメータ 例えば MOS 飽和領域の電流 I 1 mc 2 W L 2 V V V ds ox gs th 1 μ,cox,λ はデバイス依存のパラメータ モデルパラメータとして与える モデルパラメータ (MOS).MODEL modelname type LEVEL= modelname: モデルの名前.MOS の素子記述内で指定する type:mos の場合は NMOS / PMOS ds モデルパラメータは授業の Web ページからコピーして使うこと 40

モデルの読み込み (1) トランジスタのモデルパラメータの読み込みが必要 ツールバーの SPICE Directive.lib PATH filename を入力 ドット ( ピリオド ) を忘れないように注意 先頭のドットはネットリストをテキストで入力していた頃の名残 41

モデルの読み込み (2) ツールバーの SPICE Directive モデルファイルの中身をそのまま貼っても OK 42

間違えやすい点 読み込んだファイルのモデル名と回路図の Model Name が一致しているかどうか確認すること モデルパラメータの中身 :.MODEL CMOSN025 NMOS LEVEL = 3 + TOX = 5.7E-9 NSUB = 1E17 GAMMA = 0.4317311 + PHI = 0.7 VTO = 0.4238252 DELTA = 0....MODEL CMOSP025 PMOS LEVEL = 3 + TOX = 5.7E-9 NSUB = 1E17 GAMMA = 0.6348369 回路図の Model Name 43

SPICE の入力 素子の接続関係 回路図を書く モデルパラメータ ( モデルカード ) 回路が非線形素子を含む場合, その特性は素子の種類に応じたパラメータで表現する 解析条件オプションなど 電圧や周波数の範囲何を出力するか etc. 44

解析条件の設定 解析条件の設定 ( 過渡解析 ).tran step end 時刻 0 から step 刻みで end まで解析 どういう値に設定すればよいかは回路によって変わる自分の回路にとって適切な値がどの程度かよく考えること 45

解析条件の設定 Edit SPICE Analysis から解析条件を設定 なぜか timestep を設定する欄がないので, ここに直接.tran 文を入力 もしくは, ツールバーの SPICE Directive から直接入力も可能 SPICE Directive ボタン ここに直接.tran 文を入力 46

完成図 Simulation Run でシミュレーションを実行 47

便利機能 48

サブサーキット ( 今回は使用しない ) 自分の回路をコンポーネントのように使うことができる プログラミングで言う関数のようなもの NAND,INV をサブサーキット化すると楽 49

サブサーキットの作り方 (1/2) まず回路図を書く端子にしたいノードにピンを置く Label Net ピン名 Type を選ぶ Input/Output/Bidirectional Save as で.asc ファイルに保存 50

サブサーキットの作り方 (2/2) シンボル ( サブサーキットの回路記号 ) を作る 1.File New Symbol でシンボル編集画面を開く 2.Draw Line,Circle などを使って記号を書く ( 形は何でもよい ) 3.Edit Add Pin/Port でピンを作成ピンは全て回路図で配置したピンと同じ名前にすること シンボルの例 ピン名 4.Save as でシンボルを保存サブサーキット回路図と同じフォルダに同じ名前で保存すること例 ) 回路図 inv-sub.asc / シンボル inv-sub.asy 51

サブサーキットの使い方 通常の回路コンポーネントと同じように配置可能 Component Top Directory を回路図 シンボルを保存したフォルダに変える 作成したシンボル 保存したファイル名 配置した後は通常のコンポーネントと同じく右クリックで内容確認可能 52

.measure による自動計測 解析結果から指定した 2 点の距離を測定する.measure による測定.measure tran name + trig v(node1) val=v1 cross=m + targ v(node2) val=v2 cross=n node1 の電圧が m 回目に v1 になった時刻 ( トリガ ) から node2 の電圧が n 回目に v2 になった時刻 ( ターゲット ) までの時間を出力する cross を rise にすると m 回目に電圧が v1 を下から上に横切った時刻 fall にすると m 回目に電圧が v1 を上から下に横切った時刻 53

.measure の例.measure tran name +trig v(n1) val=v1 {cross rise fall}=1 +targ v(n1) val=v1 {cross rise fall}=2 V(n1) V=v1 0 cross rise 想定外のところでトリガがかかったりターゲットにひっかかったりするので使う場合はきちんと波形を確認してから使うこと fall 54 t

.measure による測定.measure 文で指定した条件の時間などを測定することができる書式は講義資料 SPICE の使い方 も参照 例えば入力が 2.5V になってから出力が 2.5V になるまでの時間を計測するには.measure tran delay trig v(2) val=2.5 rise=1 targ v(3) val=2.5 fall=1 ネットリストに.measure を書いてシミュレーションを実行するとログファイル (.log) に結果が表示される trig の条件を満したのは 2.025ns,targ の条件を満したのは 2.13655ns その間の時間は 0.11144ns 55

トラブルシューティング 1 エラーが出る場合 エラーメッセージをよく読みましょう モデル名の間違いに注意 エラーが出ないのに動作がおかしい場合 つなぎ忘れ ノードがフローティングになっても解析は終わる MOSのバックゲートのつなぎ忘れに注意 解析条件が正しいか確認 56

トラブルシューティング 2 動作はしているが何か変 ( 速すぎ / 遅すぎ ) MOS のボディの電位がおかしい / つなぎ忘れ 閾値電圧が変わって速さが変わる 数字の入力間違い 容量の桁を間違えやすい MOS の AD, AS, PD, PS の桁も間違えやすい PD/PS は 1mm オーダー,AD/AS は mm 2, つまり 1e-12 オーダー そもそも AD/AS/PD/PS を記述しない (=0) でもシミュレーションは動くが, 遅延時間が異常に小さくなる 57

おまけ : シミュレーションの落とし穴 シミュレーションでは 結果は出るがその結果に意味はない ことが起こる その 1. モデルの有効範囲に注意 例 ) MOS に電源電圧 100V かけてみる シミュレーション上は動く実際やると当然壊れる その 2. 現実には存在しない安定状態に注意 入力を Vdd/2 にすると出力は? シミュレーション : 出力も Vdd/2 で安定する ( ことがある ) 実際 : わずかなノイズや p/n のアンバランスで 0 か Vdd のどちらかで安定 シミュレーションの結果を盲信しないことが重要 58

LTspice の使い方 LTspice : Linear Technology が配布している SPICE http://www.linear-tech.co.jp/designtools/software/ spice3 に改良を加えたもの Windows で動く その他利用可能な SPICE ngspice (Next Generation SPICE) ngspice for windows で Vector からダウンロード可能 59

情報源 小野寺研集積回路工学特論のページ http://www-lab13.kuee.kyoto-u.ac.jp/modules/contents/lecture/spice.html Linear Technology (LTspice, マニュアルダウンロード ) http://www.linear-tech.co.jp/designtools/software/ UC Berkeley The Spice Page http://bwrc.eecs.berkeley.edu/classes/icbook/spice/ NGSPICE http://ngspice.sourceforge.net/ 60

おまけ : ネットリストの書き方 昔は当然グラフィカルなインターフェースはない 回路図をテキストで記述 実例はサンプルのネットリスト (inv_example.cir) を参照 61

element2 回路図の記述方法 電気回路は素子と節点で記述できる node1 node3 これをテキストで書くと element1 element3 node2 element4 node4 element1 node1 node3 element2 node1 node2 element3 node3 node4 element4 node2 node3 node4 注 1: 素子には方向があるものがある ( 電圧源, 電流源など ) 注 2: 素子は 3 個以上の端子をもつことがある ( トランジスタは D, G, S, B の 4 端子素子 ) 62

ネットリストの書式 : 基本構造 記述の基本構造 Xname node1 node2 noden value PARAMETERS 素子の種類を示すアルファベット 1 文字例 : R 抵抗 C キャパシタ V 電圧源 M トランジスタ 素子の名前英数字からなる文字列素子の種類が違えば重複可例 : Rin 1 2 50 NG Rin 2 3 50 OK Rin 1 2 50 Cin 2 3 100p 接続されたノード数は素子によって決まっているノード名は英数字文字列ただしノード 0 はグラウンド 素子の値抵抗なら抵抗値電圧源なら電圧値がないものもある ( 例 : トランジスタ ) 補助パラメータトランジスタのサイズなど必要に応じて指定 記述は 1 行に書く. 複数行にわたる場合は 2 行目以降の先頭に + をつける 63

ネットリストの書式 :2 端子素子 抵抗 Rname node+ node- value キャパシタ Cname node+ node- value 電圧源 Vname node+ node- value 電流源 Iname node+ node- value node+ node- 電圧源, 電流源には方向があることに注意電圧源は node- が電圧の基準点電流源は node- から node+ に向かって電流が流れる抵抗, 容量には方向はない 64

ネットリストの書式 : 解析条件, 出力 解析条件の設定 ( 過渡解析 ).tran step end 時刻 0 から step 刻みで end まで解析どういう値に設定すればよいかは回路によって変わる自分の回路にとって適切な値がどの程度かよく考えること 解析結果の出力 ( 過渡解析 ).print tran V(node1) V(node2) 指定したノードの各時刻における電圧が出力される ネットリストの記述終了.end 必ず書かなければならない. この行以降は無視される. 65

テキストのネットリストを使ったときの波形表示 波形ウィンドウを選択し,Plot Settings Add trace で見たい波形を選択 ここで選択できるのはネットリストの.print で指定したノードだけなので注意 波形を選択して OK を押すと波形ウィンドウに波形が表示される 66

ネットリストの書式 : 雑多な注意 回路中にはかならずグラウンド ( ノード 0 ) がなければならない かつノード 0 への直流のパスが必要 ネットリストの 1 行目はタイトル 行の先頭が * の行はコメント 大文字 小文字は区別されない.end を書き忘れないように注意 67

ネットリストの書式 : サブサーキット SPICE では素子を組み合わせて独自の素子を定義することができる サブサーキットの定義.subckt name node1 node2 * circuit description.ends サブサーキットを使う Xname node1 node2 noden name INV,NAND など同じ回路が何度も出てくるときに便利 68

サブサーキットの例 *inv.tran 0.05n 4n.print tran v(3) Vdd 1 0 5V Vin 2 0 pwl 0 5V Mxp 3 2 1 1 CMOSP L= Mxn 3 2 0 0 CMOSN L= Cout 3 0 0.2p.MODEL CMOSP PMOS.end *inv-subckt.tran 0.05n 4n.print tran v(3) Vdd 1 0 5V Vin 2 0 pwl 0 5V Xinv 2 3 1 0 INV Cout 3 0 0.2p.subckt inv in out vdd vss Mxp out in vdd vdd CMOSP L= Mxn out in vss vss CMOSN L=.ends.MODEL CMOSP PMOS 69