CADソフトウエアの初期設定 |
klayout -e &
cd ~/pdk/sky130A/libs.tech/klayout/tech/ mkdir sky130 ln -s sky130A.lyp sky130/sky130.lyp ln -s ~/pdk/sky130A/libs.tech/klayout/tech ~/.klayout/tech
mkdir ~/.klayout/libraries cp ~/pdk/sky130A/libs.ref/sky130_fd_pr/gds/sky130_fd_pr.gds ~/.klayout/libraries/ cp ~/pdk/sky130A/libs.ref/sky130_fd_sc_hd/gds/sky130_fd_sc_hd.gds ~/.klayout/libraries/
(修正前)lappend tcl_files XSCHEM_SHAREDIR}/ngspice_backannotate.tcl (修正後)lappend tcl_files ${XSCHEM_SHAREDIR}/ngspice_backannotate.tcl
cp ~/pdk/sky130A/libs.tech/xschem/xschemrc ~/.xschem/
回路図の作成と回路シミュレーション |
cd mkdir Custom // 作業ディレクトリ(好きな名称) cd ~/Custom xschem // &を付けないこと
ライブラリ | シンボル | 説明 |
---|---|---|
sky130A/sky130_fd_pr | nfet_01v8.sym | 1.8V n-ch MOSFET(標準閾値) |
sky130A/sky130_fd_pr | pfet_01v8.sym | 1.8V p-ch MOSFET(標準閾値) |
xschem_library/devices | vdd.sym | +電源 |
xschem_library/devices | gnd.sym | グランド |
xschem_library/devices | ipin.sym | 入力ピン |
xschem_library/devices | opin.sym | 出力ピン |
xschem_library/devices | code_shown.sym | シミュレータへのディレクティブを記入 |
シンボル | パラメータ | 値 | 説明 |
---|---|---|---|
nfet_01v8 | L | 0.15 | ゲート長(um) |
nfet_01v8 | W | 0.65 | ゲート幅(um) |
nfet_01v8 | nf | 1 | フィンガー数 |
nfet_01v8 | multi | 1 | 並列数 |
pfet_01v8 | L | 0.15 | ゲート長(um) |
pfet_01v8 | W | 1 | ゲート幅(um) |
pfet_01v8 | nf | 1 | フィンガー数 |
pfet_01v8 | multi | 1 | 並列数 |
name=ngspice only_toplevel=false value= "va a 0 pulse(0V 1.8V 50ps 1ps 1ps 50ps 100ps) dc 0V vvdd VDD 0 dc 1.8V .control save all tran 1p 200p *dc va 0V 1.8V 0.001V write test_inv.raw .endc"
レイアウトの作成 |
cd ~/Custom // 作業ディレクトリに移動 klayout &
レイヤー | 色 | 説明 |
---|---|---|
nwell.drawing | 緑網点 | nウエル |
diff.drawing | 緑半透明 | アクティブ(S, D) |
tap.drawing | 黄半透明 | アクティブ(B) |
psdm.drawing | 紫網点 | nイオン注入 |
nsdm.drawing | 赤網点 | pイオン注入 |
poly.drawing | 赤斜線 | ポリシリコン(G) |
licon.drawing | 白市松 | ローカル配線コンタクト |
npc.drawing | 赤枠(塗りなし) | ナイトライド-ポリカット(ポリシリコンのコンタクト部の窒化物を除去) |
li1.drawing | モカシン半透明 | ローカル配線 |
DRC(Design Rule Check) |
Skywater 130nm デザインルール(左上のメニューボタンで、Design Rules - Periphery Rules)をクリック)
LVS(Layout vs Schematic) |
cd ~/Custom // 全体の作業ディレクトリ mkdir LVS cd LVS // 作業ディレクトリに移動
magic &
gds read ../load <セル名> // レイアウトウインドウにレイアウトが表示される extract // 実行ディレクトリに.extファイルが作成される ext2spice cthresh infinite // 寄生抵抗を出力しない ext2spice rthresh infinite // 寄生容量を出力しない ext2spice // 実行ディレクトリに.spiceファイルが作成される quit // Magicの終了
.subckt .ends
cp ~/.xschem/simulation/ネットリストファイル名.spice ./
.lib /home/kitagawa/dependencies/pdks/sky130A/libs.tech/ngspice/sky130.lib.spice tt va a 0 pulse(0V 1.8V 50ps 1ps 1ps 50ps 100ps) dc 0V vvdd VDD 0 dc 1.8V
cp ~/pdk/sky130A/libs.tech/netgen/setup.tcl ./
netgen
lvs Xschemのネットリスト.spice Magicのネットリスト.spice quit // Netgenの終了