2021-09-16 18:07:12 +02:00
|
|
|
v {xschem version=3.0.0 file_version=1.2 }
|
2020-08-08 15:47:34 +02:00
|
|
|
G {}
|
2020-09-30 00:30:48 +02:00
|
|
|
K {}
|
2020-08-08 15:47:34 +02:00
|
|
|
V {}
|
|
|
|
|
S {}
|
|
|
|
|
E {}
|
2022-01-20 18:28:29 +01:00
|
|
|
B 2 1210 -510 1840 -30 {flags=graph
|
2021-12-27 05:22:19 +01:00
|
|
|
y1=1.16665
|
|
|
|
|
y2=5.05705
|
|
|
|
|
divy=4
|
|
|
|
|
subdivy=1
|
2022-01-21 02:16:51 +01:00
|
|
|
x1=2.3
|
|
|
|
|
x2=2.7
|
2021-12-27 05:22:19 +01:00
|
|
|
divx=6
|
|
|
|
|
subdivx=1
|
|
|
|
|
node="v(diffout) v(plus) v(minus)"
|
|
|
|
|
color="7 8 10 11 12 13 14 15 16 17"
|
|
|
|
|
dataset=0
|
|
|
|
|
}
|
2022-01-21 02:16:51 +01:00
|
|
|
B 2 1230 -1050 1807 -523 {flags=image,unscaled
|
2022-01-20 18:28:29 +01:00
|
|
|
image_data=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
|
2020-08-08 15:47:34 +02:00
|
|
|
T {CMOS DIFFERENTIAL AMPLIFIER
|
2020-12-28 02:52:44 +01:00
|
|
|
EXAMPLE} 250 -650 0 0 0.4 0.4 {}
|
2021-09-02 10:24:30 +02:00
|
|
|
T {This is an example of a code block that will
|
|
|
|
|
be placed as a header in the netlist.
|
|
|
|
|
use 'place=header' attribute and set the
|
|
|
|
|
header text as a 'value' attribute} 720 -720 0 0 0.4 0.4 {}
|
2021-12-27 05:22:19 +01:00
|
|
|
T {Select one or more graphs (and no other objects)
|
|
|
|
|
and use arrow keys to zoom / pan waveforms} 740 -800 0 0 0.3 0.3 {}
|
2022-01-20 18:28:29 +01:00
|
|
|
T {gain AC plot at 1uA, 10uA, 100uA bias current} 1250 -1090 0 0 0.4 0.4 {layer=5}
|
2020-12-28 02:52:44 +01: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=#net1}
|
|
|
|
|
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=PLUS}
|
|
|
|
|
N 30 -440 60 -440 {lab=PLUS}
|
|
|
|
|
N 30 -590 30 -560 {lab=MINUS}
|
|
|
|
|
N 30 -590 60 -590 {lab=MINUS}
|
|
|
|
|
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 -380 { lab=DIFFOUT}
|
|
|
|
|
N 500 -460 500 -380 { lab=G}
|
|
|
|
|
N 570 -260 570 -250 { lab=#net1}
|
|
|
|
|
N 690 -380 690 -320 { lab=DIFFOUT}
|
|
|
|
|
N 500 -380 500 -320 { lab=G}
|
|
|
|
|
N 570 -250 570 -190 { lab=#net1}
|
|
|
|
|
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}
|
2020-12-28 02:52:44 +01:00
|
|
|
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=5 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=100u 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 -210 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 pwl 0 2.4 10n 2.4 10.1n 2.6" net_name=true}
|
|
|
|
|
C {lab_pin.sym} 60 -440 0 1 {name=p15 lab=PLUS 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=MINUS net_name=true}
|
|
|
|
|
C {capa.sym} 750 -390 0 0 {name=CL
|
2020-09-30 01:34:18 +02:00
|
|
|
m=1
|
|
|
|
|
value=2p
|
|
|
|
|
footprint=1206
|
|
|
|
|
device="ceramic capacitor" net_name=true}
|
2020-12-28 02:52:44 +01:00
|
|
|
C {code.sym} 900 -190 0 0 {name=STIMULI
|
2020-08-08 15:47:34 +02:00
|
|
|
only_toplevel=true
|
2020-12-28 02:52:44 +01:00
|
|
|
value=".temp 30
|
2020-08-08 15:47:34 +02:00
|
|
|
** models are generally not free: you must download
|
2020-12-28 02:52:44 +01:00
|
|
|
** SPICE models for active devices and put them into the below
|
2020-08-08 15:47:34 +02:00
|
|
|
** referenced file in netlist/simulation directory.
|
|
|
|
|
.include \\"models_cmos_example.txt\\"
|
2020-12-28 02:52:44 +01:00
|
|
|
.option savecurrents
|
|
|
|
|
.save all @m4[gm] @m5[gm] @m1[gm]
|
2020-08-08 15:47:34 +02:00
|
|
|
.control
|
2021-09-16 18:07:12 +02:00
|
|
|
save all
|
2021-12-27 05:22:19 +01:00
|
|
|
set appendwrite
|
2020-12-28 02:52:44 +01:00
|
|
|
op
|
2021-12-27 05:22:19 +01:00
|
|
|
write cmos_example.raw
|
2021-09-16 18:07:12 +02:00
|
|
|
* tran 1n 300n
|
2021-12-27 05:22:19 +01:00
|
|
|
dc vplus 2.3 2.7 0.001
|
2020-10-20 01:05:40 +02:00
|
|
|
write cmos_example.raw
|
2020-08-08 15:47:34 +02:00
|
|
|
.endc
|
|
|
|
|
|
2021-09-16 18:07:12 +02:00
|
|
|
"}
|
2020-12-28 02:52:44 +01:00
|
|
|
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="ngspice::annotate"}
|
|
|
|
|
C {launcher.sym} 700 -110 0 0 {name=h2
|
|
|
|
|
descr="View raw file"
|
|
|
|
|
tclcommand="textwindow $netlist_dir/cmos_example.raw"}
|
2021-01-01 04:24:57 +01:00
|
|
|
C {ngspice_probe.sym} 500 -390 0 0 {name=r1}
|
|
|
|
|
C {ngspice_probe.sym} 420 -160 0 0 {name=r2}
|
|
|
|
|
C {ngspice_probe.sym} 600 -260 0 0 {name=r3}
|
|
|
|
|
C {ngspice_probe.sym} 770 -420 0 0 {name=r4}
|
2021-01-03 17:34:08 +01:00
|
|
|
C {ngspice_get_value.sym} 620 -160 0 0 {name=r5 node=i(@$\{path\}m1[id])
|
2021-01-01 04:24:57 +01:00
|
|
|
descr="I="}
|
2021-09-02 10:24:30 +02:00
|
|
|
C {code.sym} 920 -580 0 0 {name=HEADER
|
|
|
|
|
place=header
|
|
|
|
|
only_toplevel=true
|
|
|
|
|
value="** ======================== **
|
|
|
|
|
** This is a netlist header **
|
|
|
|
|
** ======================== **"}
|
2021-12-27 05:22:19 +01:00
|
|
|
C {launcher.sym} 755 -835 0 0 {name=h3
|
|
|
|
|
descr="Select arrow and
|
|
|
|
|
Ctrl-Left-Click to load/unload waveforms"
|
|
|
|
|
tclcommand="
|
|
|
|
|
xschem raw_read $netlist_dir/[file tail [file rootname [xschem get current_name]]].raw
|
|
|
|
|
"
|
|
|
|
|
}
|