xschem/xschem_library/examples/cmos_example.sch

406 lines
119 KiB
Plaintext
Raw Normal View History

v {xschem version=3.4.5 file_version=1.2
*
* This file is part of XSCHEM,
* a schematic capture and Spice/Vhdl/Verilog netlisting tool for circuit
* simulation.
* Copyright (C) 1998-2023 Stefan Frederik Schippers
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
}
2020-08-08 15:47:34 +02:00
G {}
K {}
2020-08-08 15:47:34 +02:00
V {}
S {}
E {}
B 2 1690 -960 2250 -630 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_dc.raw)
sim_type=dc
y1=-160
y2=-0.78
divy=4
subdivy=1
x1=2.3
x2=2.7
divx=6
subdivx=1
node="\\"GAIN @ 2uA;diffout deriv() % 0\\"
\\"GAIN @ 10uA;diffout deriv() % 1\\"
\\"GAIN @ 100uA;diffout deriv() % 2\\""
color="10 12 6"
dataset=-1}
B 2 190 -760 327 -700 {flags=image
alpha=0.6
InvertOnExport=true
image_data=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
B 2 20 -757.5 158 -695 {flags=image
alpha=0.6
InvertOnExport=true
image=/home/schippes/x/xyce.png
image_data=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
B 2 1690 -620 2250 -300 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_dc.raw)
sim_type=dc
y1=0.875402
y2=5.6754
divy=4
subdivy=1
x1=2.3
x2=2.7
divx=6
subdivx=1
node="diffout@2uA;v(diffout)%0
diffout@10uA;v(diffout)%1
diffout@100uA;v(diffout)%2"
color="10 12 6"
dataset=-1
}
B 2 1050 -470 1680 -190 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_tran.raw)
sim_type=tran
y1=0.578703
y2=5.5787
divy=5
subdivy=1
x1=0
x2=5e-06
divx=6
subdivx=1
dataset=-1
color="10 12 6"
node="\\"diffout 2uA; diffout%0\\"
\\"diffout 10uA; diffout%1\\"
\\"diffout 100uA; diffout%2\\""
hilight_wave=-1
xlabmag=1.4}
B 2 1050 -740 1680 -530 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_ac.raw)
sim_type=ac
y1=-53
y2=43
subdivy=1
x1=0.295931
x2=9.29594
divx=6
subdivx=8
dataset=-1
color="10 12 6"
node="\\"gain 2uA; diffout db20()%0\\"
\\"gain 10uA; diffout db20()%1\\"
\\"gain 10uA; diffout db20()%2\\""
hilight_wave=-1
logx=1
xlabmag=1.4
divy=5
ylabmag=1.2}
B 2 1050 -960 1680 -750 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_ac.raw)
sim_type=ac
y1=37
y2=180
divy=4
subdivy=1
x1=0.295931
x2=9.29594
divx=6
subdivx=8
dataset=-1
color="10 12 6"
node="\\"phase 2uA; ph(diffout)%0\\"
\\"phase 10uA; ph(diffout)%1\\"
\\"phase 100uA; ph(diffout)%2\\""
hilight_wave=-1
logx=1
xlabmag=1.4}
B 2 1690 -290 2250 -20 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_dc.raw)
sim_type=dc
y1=2.3
y2=2.7
divy=4
subdivy=1
x1=2.3
x2=2.7
divx=6
subdivx=1
node="minus;minus%0
plus;plus%0"
color="7 8"
dataset=-1
}
B 2 1050 -180 1680 -60 {flags=graph,unlocked
rawfile=tcleval($netlist_dir/cmos_example_ngspice_tran.raw)
sim_type=tran
y1=2.4
y2=2.6
divy=2
subdivy=1
x1=0
x2=5e-06
divx=6
subdivx=1
dataset=-1
color="7 8"
node="minus;minus%0
plus;plus%0"
hilight_wave=-1
ylabmag=1.4
xlabmag=1.4}
2020-08-08 15:47:34 +02:00
T {CMOS DIFFERENTIAL AMPLIFIER
EXAMPLE. DC simulation} 30 -680 0 0 0.4 0.4 {}
T {tcleval([xschem raw info])} 20 -960 0 0 0.5 0.5 {floater=true layer=16}
T {AC Analysis} 1060 -1010 0 0 0.6 0.6 { layer=6}
T {Transient Analysis} 1060 -510 0 0 0.6 0.6 { layer=6}
T {DC Analysis} 1690 -1000 0 0 0.6 0.6 { layer=6}
T {Loaded Raw files:} 20 -1010 0 0 0.6 0.6 {}
2022-10-22 10:39:44 +02:00
N 30 -310 30 -280 {
lab=VCC}
N 30 -310 60 -310 {
lab=VCC}
N 260 -240 260 -190 {
lab=GN}
N 260 -190 300 -190 {
lab=GN}
N 300 -190 300 -160 {
lab=GN}
N 300 -160 530 -160 {
lab=GN}
N 500 -290 520 -290 {
lab=0}
N 670 -290 690 -290 {
lab=0}
N 500 -260 690 -260 {
lab=S}
2022-10-22 10:39:44 +02:00
N 440 -290 460 -290 {
lab=PLUS}
N 730 -290 750 -290 {
lab=MINUS}
N 690 -490 740 -490 {
lab=VCC}
N 450 -490 500 -490 {
lab=VCC}
N 540 -490 650 -490 {
lab=G}
N 540 -490 540 -460 {
lab=G}
N 500 -460 540 -460 {
lab=G}
N 690 -560 690 -520 {
lab=VCC}
N 500 -560 690 -560 {
lab=VCC}
N 500 -560 500 -520 {
lab=VCC}
N 570 -580 570 -560 {
lab=VCC}
N 690 -420 830 -420 {
lab=DIFFOUT}
N 30 -440 30 -410 {
lab=MINUS}
2022-10-22 10:39:44 +02:00
N 30 -440 60 -440 {
lab=MINUS}
N 30 -590 30 -560 {
lab=PLUS}
2022-10-22 10:39:44 +02:00
N 30 -590 60 -590 {
lab=PLUS}
2022-10-22 10:39:44 +02:00
N 570 -130 570 -100 {
lab=0}
N 570 -130 590 -130 {
lab=0}
N 590 -160 590 -130 {
lab=0}
N 570 -160 590 -160 {
lab=0}
N 260 -130 260 -100 {
lab=0}
N 240 -130 260 -130 {
lab=0}
N 240 -160 240 -130 {
lab=0}
N 240 -160 260 -160 {
lab=0}
N 690 -460 690 -400 {
lab=DIFFOUT}
N 570 -260 570 -250 {
lab=S}
N 500 -340 500 -320 {
2022-10-22 10:39:44 +02:00
lab=#net1}
N 570 -250 570 -190 {
lab=S}
2022-10-22 10:39:44 +02:00
N 690 -340 690 -320 {
lab=#net2}
N 500 -460 500 -400 {
lab=G}
C {lab_pin.sym} 750 -360 0 0 {name=p20 lab=0 net_name=true}
C {lab_pin.sym} 30 -220 0 0 {name=p17 lab=0 net_name=true}
2020-09-30 01:34:18 +02:00
C {title.sym} 160 -30 0 0 {name=l1 author="Stefan Schippers" net_name=true}
C {nmos4.sym} 550 -160 0 0 {name=m1 model=cmosn w=5u l=2u m=1 net_name=true}
C {pmos4.sym} 670 -490 0 0 {name=m2 model=cmosp w=5u l=2u m=1 net_name=true}
C {vsource.sym} 30 -250 0 0 {name=VVCC value='VCC' net_name=true
}
C {lab_pin.sym} 570 -100 0 0 {name=p1 lab=0 net_name=true}
C {lab_pin.sym} 60 -310 0 1 {name=p2 lab=VCC net_name=true}
C {nmos4.sym} 280 -160 0 1 {name=m3 model=cmosn w=5u l=2u m=1 net_name=true}
C {lab_pin.sym} 260 -100 0 0 {name=p3 lab=0 net_name=true}
C {isource.sym} 260 -270 0 0 {name=IBIAS value='IB' net_name=true
}
C {lab_pin.sym} 260 -300 0 0 {name=p4 lab=0 net_name=true}
C {nmos4.sym} 480 -290 0 0 {name=m4 model=cmosn w=10u l=1u m=1 net_name=true}
C {lab_pin.sym} 520 -290 0 1 {name=p5 lab=0 net_name=true}
C {nmos4.sym} 710 -290 0 1 {name=m5 model=cmosn w=10u l=1u m=1 net_name=true}
C {lab_pin.sym} 670 -290 0 0 {name=p0 lab=0 net_name=true}
C {lab_pin.sym} 740 -490 0 1 {name=p6 lab=VCC net_name=true}
C {pmos4.sym} 520 -490 0 1 {name=m6 model=cmosp w=5u l=2u m=1 net_name=true}
C {lab_pin.sym} 450 -490 0 0 {name=p7 lab=VCC net_name=true}
C {lab_pin.sym} 570 -580 0 0 {name=p8 lab=VCC net_name=true}
C {lab_pin.sym} 440 -290 0 0 {name=p9 lab=PLUS net_name=true}
C {lab_pin.sym} 750 -290 0 1 {name=p10 lab=MINUS net_name=true}
C {lab_pin.sym} 830 -420 0 1 {name=p11 lab=DIFFOUT net_name=true}
C {lab_pin.sym} 260 -220 0 0 {name=p13 lab=GN net_name=true}
C {lab_pin.sym} 30 -350 0 0 {name=p14 lab=0 net_name=true}
C {vsource.sym} 30 -380 0 0 {name=VPLUS
value="2.5 pulse 2.4 2.6 10n 1n 1n 0.999u 2u ac 1 0"
net_name=true
}
C {lab_pin.sym} 60 -440 0 1 {name=p15 lab=MINUS net_name=true}
C {lab_pin.sym} 30 -500 0 0 {name=p16 lab=0 net_name=true}
C {vsource.sym} 30 -530 0 0 {name=V1 value=2.5 net_name=true}
C {lab_pin.sym} 60 -590 0 1 {name=p18 lab=PLUS net_name=true}
C {capa.sym} 750 -390 0 0 {name=CL
2020-09-30 01:34:18 +02:00
m=1
value=0.2p
2020-09-30 01:34:18 +02:00
footprint=1206
device="ceramic capacitor" net_name=true}
C {lab_pin.sym} 500 -430 0 0 {name=p12 lab=G net_name=true}
C {launcher.sym} 700 -60 0 0 {name=h1
descr=Backannotate
tclcommand="xschem annotate_op $\{netlist_dir\}/cmos_example_ngspice_op.raw"
}
C {launcher.sym} 700 -110 0 0 {name=h2
descr="View raw file"
tclcommand="textwindow $netlist_dir/cmos_example_ngspice.raw"}
C {ngspice_get_value.sym} 620 -160 0 0 {name=r5 node=i(@$\{path\}m1[id])
descr="I="}
C {launcher.sym} 475 -695 0 0 {name=h3
descr="Load NGSPICE waveforms (ctrl-left-click)"
tclcommand="
xschem raw_read $netlist_dir/cmos_example_ngspice.raw dc
"
}
C {launcher.sym} 1310 -30 0 0 {name=h4
descr="Graph Manual page"
url="https://xschem.sourceforge.io/stefan/xschem_man/graphs.html"}
C {ammeter.sym} 690 -370 0 1 {name=Vmeasr}
C {simulator_commands.sym} 920 -360 0 0 {name=COMMANDS
simulator=ngspice
only_toplevel=true
value=".temp 30
.param IB=2u
.param VCC = 5
** models are generally not free: you must download
** SPICE models for active devices and put them into the below
** referenced file in netlist/simulation directory.
** http://bwrcs.eecs.berkeley.edu/Classes/icdesign/ee241_s00/ASSIGNMENTS/TSMC035-n96g-params.txt
.include \\"models_cmos_example.txt\\"
.option savecurrents
.save all @m4[gm] @m5[gm] @m1[gm]
.control
save all
op
write cmos_example_ngspice_op.raw
dc vplus 2.3 2.7 0.001
write cmos_example_ngspice_dc.raw
tran 0.5n 5u
write cmos_example_ngspice_tran.raw
ac dec 10 1 1G
remzerovec
write cmos_example_ngspice_ac.raw
set appendwrite
alterparam IB=10u
reset
save all
dc vplus 2.4 2.6 0.001
write cmos_example_ngspice_dc.raw
tran 0.5n 5u
write cmos_example_ngspice_tran.raw
ac dec 10 1 1G
remzerovec
write cmos_example_ngspice_ac.raw
alterparam IB=100u
reset
save all
dc vplus 2.3 2.7 0.001
write cmos_example_ngspice_dc.raw
tran 0.5n 5u
write cmos_example_ngspice_tran.raw
ac dec 10 1 1G
remzerovec
write cmos_example_ngspice_ac.raw
.endc
"}
C {launcher.sym} 475 -655 0 0 {name=h6
descr="Load XYCE waveforms (ctrl-left-click)"
tclcommand="
xschem raw_read $netlist_dir/cmos_example_xyce.raw
"
}
C {simulator_commands.sym} 920 -180 0 0 {name=COMMANDS1
simulator=xyce
only_toplevel=true
value="* .temp 30
.param IB=100u
.param VCC = 5
** models are generally not free: you must download
** SPICE models for active devices and put them into the below
** referenced file in netlist/simulation directory.
** http://bwrcs.eecs.berkeley.edu/Classes/icdesign/ee241_s00/ASSIGNMENTS/TSMC035-n96g-params.txt
.include \\"models_cmos_example.txt\\"
.print dc format=raw file=cmos_example_xyce.raw
+ v(*) i(*)
.op
.dc vplus 2.3 2.7 0.001
"}
2022-10-22 10:39:44 +02:00
C {ngspice_get_value.sym} 520 -310 0 0 {name=r6 node=i(@$\{path\}m4[id])
descr="I="}
C {ngspice_get_value.sym} 670 -310 0 1 {name=r7 node=i(@$\{path\}m5[id])
descr="I="}
2022-10-22 11:05:30 +02:00
C {ngspice_get_expr.sym} 160 -150 0 0 {name=r8 node="[to_eng [expr \{[ngspice::get_voltage gn] * [ngspice::get_current \{m3[id]\}]\}]]"
2022-10-22 11:03:40 +02:00
descr="Power="
}
C {ammeter.sym} 500 -370 0 1 {name=Vmeasl}
C {lab_pin.sym} 570 -230 0 0 {name=p19 lab=S net_name=true}
C {launcher.sym} 475 -735 0 0 {name=h5
descr="Switch rawfile"
tclcommand="
xschem raw switch; xschem redraw"
}