付録1: MOSFETからの回路設計 |
Library Managerのメニューから、[File] → [New] → [Cell View...]で、下記のセルを作成し、回路図エディタで2入力NANDの回路を入力する。MOSFETのプロパティ値のうち、先ずは設計規則の最小値である L(Gate Length) = 180n を入力する。L は小さいほどMOSFETの性能は高いが、製造ばらつきが発生しやすくなる。CMOS論理回路は、ノイズマージンが大きいため(即ち、製造ばらつきに対するマージンも大きいため)、L として設計規則の最小値を使用するのが普通である。W (Width) は、まだ決まっていないので、適当に W(Width) = 8u としておく。通常はn-ch MOSFET で、WはLの10倍程度あればよいが、Wを大きくすると大きいファンアウト数(後章で説明)に対応できるため、少し大きめにWの値を設定してみよう。
セルの作成情報
Library | ic1 |
Cell | NAND2 |
View | schematic |
Type | schematic |
Open with | Schematics XL |
Always use this application for this type of file | Checkを入れる |
2入力NAND回路
使用するインスタンス
Library | Cell | View | Property |
---|---|---|---|
vdecRO180PDK | nmos18 | hspiceD |
Gate Length = 180n Width = 8u |
vdecRO180PDK | pmos18 | hspiceD |
Gate Length = 180n Width = 8u |
analogLib | vdd | symbol | |
analogLib | vss | symbol |
インスタンスとして使用できるようにsymbol viewも作成しておく。回路図エディタのメニューより、[Create] → [Cellview] → [From Cellview...] を選び、Cellview From Cellviewフォームで、Library = ic1, Cell Name = NAND2, From View Name = schematic, To View Name = symbol となっていることを確認して、OKをクリック。Symbol Generation Options フォームが起動するので、Left Pins = A B, Right Pins = X となっていることを確認して、OKをクリックすると、シンボルエディタに四角いシンボルが表示される。形が気に入らなければ編集する。保存してシンボルエディタと回路図エディタを終了する。
Library Managerにより、テストベンチ tb_NAND2 のセルを作成する。配線が完了したら、NAND2の入力と出力に配線に、それぞれ IN, OUT の配線名(ラベル)を付けておくこと。
Library | ic1 |
Cell | tb_NAND2 |
View | schematic |
Type | schematic |
Open with | Schematics XL |
Always use this application for this type of file | Checkを入れる |
2入力NAND回路のテストベンチ
使用するインスタンス
Library | Cell | View | Property |
---|---|---|---|
ic1 | NAND2 | symbol | なし |
analogLib | cap | symbol | Capacitance = 10f |
analogLib | vdd | symbol | なし |
analogLib | vss | symbol | なし |
analogLib | gnd | symbol | なし |
kanazawa | SUPPLY | symbol | VDD = 1.8 VSS = 0 |
analogLib | vdc | symbol | DC voltage = 0 |
テストベンチの回路図エディタのメニューより、[Launch] → [ADE XL]を選ぶ。Launch ADE XLフォームが表示されるので、Create New View にチェックを入れて、OKボタンをクリック。Create new ADE XL viewフォームが起動するので、View 欄が adexl となっていることを確認してOKボタンをクリックすると、ADE XL (Analog Design Environment XL)が起動し、Library Managerにadexl viewが作成される。
ツールバーより、Create Test(歯車アイコン)または adexlタブの中に記載された、click hereの文字をクリックする。Choosing Designフォームが表示されたら、tb_NAND2の文字色が反転しているのを確認して、OKボタンをクリック。ADE XL Test Editor が起動するので、下記のように設定を行う。
Analysis | dc |
Sweep Variable | Select Componentボタンをクリック 回路図エディタがフォーカスされるので、入力に接続された電圧源(V0)をクリック |
Sweep Range | Start = 0, Stop = 1.8, Step Size = 0.01 |
Enabled | Checkを入れる |
vlsi> cd ~/i/sim vlsi> hspice nand2.sp (&なし) vlsi> cscope &
まだ、MOSFETのゲート幅は最適化されていない。ここでは、MOSFETのゲート幅Wを W = 4um に固定して、最適な並列接続数Mを求める。W = 2um または W = 1um にしてもよい。
MOSFET type | Gate Length | Width | Multiplier |
---|---|---|---|
p-ch MOSFET | 180n | 4u | Mp |
n-ch MOSFET | 180n | 4u | 2 |
*.PARAM mp .DC v0 0.0 1.8 10e-3 .TEMP 25 .OPTION *+ ARTIST=2 + INGOLD=2 + PARHIER=LOCAL + POST=2 *+ PSF=2
.ALTER .PARAM Mp=1 .ALTER .PARAM Mp=2 .ALTER .PARAM Mp=3 .ALTER .PARAM Mp=4 .END
.ALTERは、シミュレーションの繰り返しディレクティブである。各.ALTERに対して、.PARAMで、p-ch MOSFETの並列接続数に設定した変数 Mp の値を変更している。以上で、p-ch MOSFET のMultiplierを1〜4まで変更してシミュレーションが行われる。
vlsi> cd ~/i/sim vlsi> hspice nand2.dc (&なし) vlsi> cscope &
パラメータ・スイープの結果から、入力電圧 = 出力電圧 = VDD/2 の条件に最も近い p-ch MOSFET のMpは、2または3となるはずである。この時、論理ゲートのノイズマージンが最大となる。NANDゲートの回路図を開き、各p-ch MOSFETについて Multiplier = 2 に設定し、保存しておく。
[解説] Multiplier = 2 というプロパティは、2個のMOSFETを並列接続することを意味している。従って、W = 8um の MOSFET 1個と等価である。ゲート電極が、L = 180nm に対して、W = 8um とするとゲート電極が細長い形状となるため、ゲートのpoly-Siの抵抗が無視できなくなる。ゲートpoly-Siの抵抗は回路の性能に影響するため、ゲート電極があまり細長くならないように W の小さなMOSFETを複数使用して等価的に W の大きいMOSFETを実現する(分割されたMOSFETはフィンガーと呼ばれる)。経験的にW/L > 60 とならないようにMOSFETを分割する。また、Drain diffusion area, Source diffusion area は、それぞれMOSFETの上から見たドレインの面積とソースの面積を表す。ドレインやソースの面積が大きいと、ドレインやソース領域底面と側面のpn接合容量が大きくなり、回路の動作速度に影響するため、できるだけドレインとソースの面積が小さくなるようにレイアウトを行う。また、Drain diffusion periphery, Source diffusion periphery はドレインとソースの周辺長を表す。pn接合は辺(側面)にもあるので、この値も小さい方がよい。
下記に同じNAND機能を持つ等価なCMOS回路の形式を示す。Multiplier = 2 とした場合、レイアウトエディタは、2番目の2-finger NANDの形式と理解するようだ。Balanced NANDも、2-finger NANDの一種と考えられるが、M1とM0の対称性がよいため、より高性能であり、レイアウトの対称性も良い。本実習では、2番目の2-finger NANDの形式を採用する。
1-finger NAND (Multiplier = 1)
2-finger NAND (Multiplier = 2)
Balanced NAND
Copyright (C) 2009- Akio Kitagawa, Kanazawa Univ.