v {xschem version=3.0.0 file_version=1.2 } G {} K {} V {} S {} E {} L 3 50 -1350 390 -1350 {} L 3 920 -1350 1360 -1350 {} L 4 475 -210 480 -250 {} L 4 480 -250 485 -210 {} L 4 290 -230 292.5 -242.5 {} L 4 292.5 -242.5 297.5 -250 {} L 4 297.5 -250 302.5 -250 {} L 4 302.5 -250 307.5 -242.5 {} L 4 307.5 -242.5 310 -230 {} L 4 327.5 -217.5 330 -230 {} L 4 322.5 -210 327.5 -217.5 {} L 4 317.5 -210 322.5 -210 {} L 4 312.5 -217.5 317.5 -210 {} L 4 310 -230 312.5 -217.5 {} L 4 330 -230 332.5 -242.5 {} L 4 332.5 -242.5 337.5 -250 {} L 4 337.5 -250 342.5 -250 {} L 4 342.5 -250 347.5 -242.5 {} L 4 347.5 -242.5 350 -230 {} L 4 20 -860 20 -760 {dash=1} L 4 10 -770 140 -770 {dash=1} L 4 80 -860 80 -770 {dash=2} L 4 20 -840 110 -840 {dash=2} L 4 20 -1180 20 -1080 {dash=1} L 4 10 -1090 140 -1090 {dash=1} L 4 80 -1180 80 -1090 {dash=2} L 4 20 -1160 110 -1160 {dash=2} L 4 485 -210 490 -250 {} L 4 490 -250 495 -210 {} L 4 495 -210 500 -250 {} L 4 500 -250 505 -210 {} L 4 505 -210 510 -250 {} L 4 510 -250 515 -210 {} L 4 515 -210 520 -250 {} L 4 520 -250 525 -210 {} L 4 525 -210 530 -250 {} L 4 530 -250 535 -210 {} L 4 535 -210 540 -250 {} L 4 540 -250 545 -210 {} L 4 545 -210 550 -250 {} L 4 550 -250 555 -210 {} L 7 20 -1090 60 -1090 {} L 7 60 -1090 70 -1095 {} L 7 70 -1095 90 -1155 {} L 7 100 -1160 140 -1160 {} L 7 90 -1155 100 -1160 {} L 7 20 -840 60 -840 {} L 7 60 -840 70 -835 {} L 7 70 -835 90 -775 {} L 7 100 -770 140 -770 {} L 7 90 -775 100 -770 {} B 2 1060 -660 2040 -350 {flags=graph y1=-94.5342 y2=77.5746 ypos1=2.19058 ypos2=36.4765 divy=5 subdivy=1 unity=1 x1=0.000421769 x2=0.0019873 divx=5 subdivx=1 node="out out_lpf \\"Expected;in 5 - 9 *\\"" color="7 8 6" dataset=0 unitx=u digital=0} B 2 1060 -340 2040 -150 {flags=graph y1=0 y2=12 ypos1=0.540742 ypos2=10.5249 divy=5 subdivy=1 unity=1 x1=0.000421769 x2=0.0019873 divx=5 subdivx=1 dataset=0 unitx=u digital=1 color="7 4 4 7 6 4" node="\\"out;out 8 / 5 +\\" \\"Gate Up;gu out -\\" \\"Gate Down;gd vnn -\\" driveu drived ref"} B 2 1060 -990 2040 -680 {flags=graph y1=0.0016 y2=10 ypos1=-3.90706 ypos2=14.7089 divy=5 subdivy=1 unity=1 x1=0.000421769 x2=0.0019873 divx=5 subdivx=1 dataset=0 unitx=u digital=0 color="6 8 7" node="refu refd in"} B 2 600 -780 996 -635 {flags=image,unscaled alpha=0.6 image_data=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} B 2 1060 -1310 2040 -1000 {flags=graph y1=-21.5085 y2=139.735 ypos1=2.19058 ypos2=36.4765 divy=5 subdivy=1 unity=1 x1=0.000421769 x2=0.0019873 divx=5 subdivx=1 dataset=0 unitx=u digital=0 color="4 7 8" node="\\"xm1 power;vpp out - i(vu) * avg()\\" \\"xm2 power;out vnn - i(vd) * avg()\\" \\"Load power;out_lpf 2 ** 8 / avg()\\""} T {PWM Modulator} 480 -610 0 0 0.6 0.6 {} T {Driver} 230 -930 0 0 0.6 0.6 {} T {LP Filter} 700 -1040 0 0 0.6 0.6 {} T {Load} 860 -1010 0 0 0.6 0.6 {} T {VREF} 65 -765 0 0 0.2 0.2 {layer=4} T {10} 5 -845 0 0 0.2 0.2 {} T {VREF} 65 -1085 0 0 0.2 0.2 {layer=4} T {10} 5 -1165 0 0 0.2 0.2 {} T {DRIVE} 125 -765 0 0 0.2 0.2 {} T {DRIVE} 125 -1085 0 0 0.2 0.2 {} T {Class D amplifier } 430 -1380 0 0 1 1 {} N 460 -1020 460 -1000 {lab=#net1} N 460 -920 460 -900 {lab=OUT} N 460 -840 460 -800 {lab=#net2} N 460 -1060 460 -1020 {lab=#net1} N 460 -700 460 -640 {lab=VNN} N 460 -940 460 -920 {lab=OUT} N 460 -1160 460 -1120 { lab=VPP} N 570 -920 680 -920 { lab=OUT} N 220 -1020 460 -1020 { lab=#net1} N 340 -1090 420 -1090 { lab=GU_I} N 220 -700 460 -700 { lab=VNN} N 340 -770 420 -770 { lab=GD_I} N 220 -770 220 -760 { lab=GD} N 610 -370 710 -370 { lab=DRIVED} N 220 -1090 220 -1080 { lab=GU} N 70 -510 70 -490 { lab=VSS} N 70 -590 70 -570 { lab=VPP} N 190 -510 190 -490 { lab=VSS} N 190 -590 190 -570 { lab=VNN} N 70 -370 70 -350 { lab=0} N 70 -450 70 -430 { lab=VSS} N 220 -1090 280 -1090 { lab=GU} N 220 -770 280 -770 { lab=GD} N 440 -150 440 -130 { lab=VSS} N 260 -150 260 -130 { lab=VSS} N 780 -920 780 -890 { lab=OUT_LPF} N 740 -920 780 -920 { lab=OUT_LPF} N 460 -740 460 -700 {lab=VNN} N 460 -920 570 -920 { lab=OUT} N 780 -830 780 -810 { lab=VSS} N 900 -830 900 -810 { lab=VSS} N 900 -920 900 -890 { lab=OUT_LPF} N 900 -920 940 -920 { lab=OUT_LPF} N 780 -920 900 -920 { lab=OUT_LPF} N 260 -400 490 -400 { lab=IN} N 260 -400 260 -210 { lab=IN} N 610 -520 710 -520 { lab=DRIVEU} N 440 -490 490 -490 { lab=REFU} N 440 -340 490 -340 { lab=REFD} N 260 -550 490 -550 { lab=IN} N 260 -550 260 -400 { lab=IN} N 440 -230 440 -210 { lab=REF} C {nmos3.sym} 440 -770 0 0 {name=xm2 model=irf540 m=1 program=evince url="https://www.vishay.com/docs/91021/irf540.pdf" net_name=true device_model=".SUBCKT irf540 1 2 3 M1 9 7 8 8 MM L=100u W=100u * Default values used in MM: * The voltage-dependent capacitances are * not included. Other default values are: * RS=0 RD=0 LD=0 CBD=0 CBS=0 CGBO=0 .MODEL MM NMOS LEVEL=1 IS=1e-32 +VTO=3.56362 LAMBDA=0.00291031 KP=25.0081 +CGSO=1.60584e-05 CGDO=4.25919e-07 RS 8 3 0.0317085 D1 3 1 MD .MODEL MD D IS=1.02194e-10 RS=0.00968022 N=1.21527 BV=100 +IBV=0.00025 EG=1.2 XTI=3.03885 TT=1e-07 +CJO=1.81859e-09 VJ=1.1279 M=0.449161 FC=0.5 RDS 3 1 4e+06 RD 9 1 0.0135649 RG 2 7 5.11362 D2 4 5 MD1 * Default values used in MD1: * RS=0 EG=1.11 XTI=3.0 TT=0 * BV=infinite IBV=1mA .MODEL MD1 D IS=1e-32 N=50 +CJO=2.49697e-09 VJ=0.5 M=0.9 FC=1e-08 D3 0 5 MD2 * Default values used in MD2: * EG=1.11 XTI=3.0 TT=0 CJO=0 * BV=infinite IBV=1mA .MODEL MD2 D IS=1e-10 N=0.4 RS=3e-06 RL 5 10 1 FI2 7 9 VFI2 -1 VFI2 4 0 0 EV16 10 0 9 7 1 CAP 11 10 2.49697e-09 FI1 7 9 VFI1 -1 VFI1 11 6 0 RCAP 6 10 1 D4 0 6 MD3 * Default values used in MD3: * EG=1.11 XTI=3.0 TT=0 CJO=0 * RS=0 BV=infinite IBV=1mA .MODEL MD3 D IS=1e-10 N=0.4 .ENDS "} C {nmos3.sym} 440 -1090 0 0 {name=xm1 model=irf540 m=1 program=evince url="https://www.vishay.com/docs/91021/irf540.pdf" net_name=true device_model=".SUBCKT irf540 1 2 3 M1 9 7 8 8 MM L=100u W=100u * Default values used in MM: * The voltage-dependent capacitances are * not included. Other default values are: * RS=0 RD=0 LD=0 CBD=0 CBS=0 CGBO=0 .MODEL MM NMOS LEVEL=1 IS=1e-32 +VTO=3.56362 LAMBDA=0.00291031 KP=25.0081 +CGSO=1.60584e-05 CGDO=4.25919e-07 RS 8 3 0.0317085 D1 3 1 MD .MODEL MD D IS=1.02194e-10 RS=0.00968022 N=1.21527 BV=100 +IBV=0.00025 EG=1.2 XTI=3.03885 TT=1e-07 +CJO=1.81859e-09 VJ=1.1279 M=0.449161 FC=0.5 RDS 3 1 4e+06 RD 9 1 0.0135649 RG 2 7 5.11362 D2 4 5 MD1 * Default values used in MD1: * RS=0 EG=1.11 XTI=3.0 TT=0 * BV=infinite IBV=1mA .MODEL MD1 D IS=1e-32 N=50 +CJO=2.49697e-09 VJ=0.5 M=0.9 FC=1e-08 D3 0 5 MD2 * Default values used in MD2: * EG=1.11 XTI=3.0 TT=0 CJO=0 * BV=infinite IBV=1mA .MODEL MD2 D IS=1e-10 N=0.4 RS=3e-06 RL 5 10 1 FI2 7 9 VFI2 -1 VFI2 4 0 0 EV16 10 0 9 7 1 CAP 11 10 2.49697e-09 FI1 7 9 VFI1 -1 VFI1 11 6 0 RCAP 6 10 1 D4 0 6 MD3 * Default values used in MD3: * EG=1.11 XTI=3.0 TT=0 CJO=0 * RS=0 BV=infinite IBV=1mA .MODEL MD3 D IS=1e-10 N=0.4 .ENDS "} C {lab_pin.sym} 460 -640 0 0 {name=p18 lab=VNN} C {ammeter.sym} 460 -870 0 0 {name=vd net_name=true current=0.2069} C {ammeter.sym} 460 -970 0 0 {name=vu net_name=true current=0.2005} C {lab_pin.sym} 460 -1160 0 0 {name=p27 lab=VPP} C {lab_pin.sym} 460 -910 0 0 {name=p3 lab=OUT} C {comp_ngspice.sym} 550 -370 2 1 {name=x1 OFFSET=0 AMPLITUDE=10} C {bsource.sym} 220 -730 0 1 {name=B1 VAR=V FUNC="'6/2*(1+tanh(V(DRIVED)*20))'" } C {lab_pin.sym} 710 -370 0 1 {name=p6 lab=DRIVED} C {bsource.sym} 220 -1050 0 1 {name=B2 VAR=V FUNC="'6/2*(1+tanh(V(DRIVEU)*20))'" } C {code_shown.sym} 0 -290 0 0 {name=CONTROL value=" .param VCC=10 .control save all tran 100n 2000u uic write classD_amp.raw .endc " net_name=true} C {title.sym} 160 -40 0 0 {name=l1 author="Stefan Schippers" net_name=true} C {vsource.sym} 70 -540 0 0 {name=VVPP value=40} C {lab_pin.sym} 70 -490 0 0 {name=p9 lab=VSS} C {lab_pin.sym} 70 -590 0 0 {name=p10 lab=VPP} C {vsource.sym} 190 -540 0 0 {name=VVNN value=-40} C {lab_pin.sym} 190 -490 0 0 {name=p11 lab=VSS} C {lab_pin.sym} 190 -590 0 0 {name=p12 lab=VNN} C {vsource.sym} 70 -400 0 0 {name=VVSS value=0} C {lab_pin.sym} 70 -350 0 0 {name=p13 lab=0} C {lab_pin.sym} 70 -450 0 0 {name=p14 lab=VSS} C {lab_pin.sym} 220 -1090 0 0 {name=p15 lab=GU} C {lab_pin.sym} 220 -770 0 0 {name=p16 lab=GD} C {launcher.sym} 1290 -50 0 0 {name=h5 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 " } C {res.sym} 310 -1090 1 1 {name=R2 m=1 value=2} C {res.sym} 310 -770 1 1 {name=R3 m=1 value=2} C {parax_cap.sym} 370 -1080 0 0 {name=C3 gnd=0 value=20f m=1} C {parax_cap.sym} 370 -760 0 0 {name=C1 gnd=0 value=20f m=1} C {parax_cap.sym} 610 -910 0 0 {name=C2 gnd=0 value=10n m=1} C {lab_wire.sym} 410 -1090 0 0 {name=l19 lab=GU_I} C {lab_wire.sym} 410 -770 0 0 {name=l2 lab=GD_I} C {vsource.sym} 440 -180 0 0 {name=V6 value="pulse 0 VCC 0 5u 5u 5p 10u"} C {lab_pin.sym} 440 -130 0 0 {name=p19 lab=VSS} C {lab_pin.sym} 440 -230 0 0 {name=p20 lab=REF} C {vsource.sym} 260 -180 0 0 {name=V7 value="SIN ( 5 4 2000 0 0 0 )" } C {lab_pin.sym} 260 -130 0 0 {name=p21 lab=VSS} C {lab_pin.sym} 260 -230 0 0 {name=p22 lab=IN} C {parax_cap.sym} 670 -360 0 0 {name=C4 gnd=0 value=200f m=1} C {ind.sym} 710 -920 1 0 {name=L1 m=1 value=0.03m footprint=1206 device=inductor} C {capa.sym} 780 -860 0 0 {name=C5 m=1 value=20u footprint=1206 device="ceramic capacitor"} C {lab_pin.sym} 940 -920 0 1 {name=p4 lab=OUT_LPF} C {lab_pin.sym} 780 -810 0 0 {name=p7 lab=VSS} C {res.sym} 900 -860 0 1 {name=R4 m=1 value=8} C {lab_pin.sym} 900 -810 0 0 {name=p8 lab=VSS} C {launcher.sym} 1290 -110 0 0 {name=h1 descr="Netlist + Simulate Ctrl-Left-Click" tclcommand="xschem netlist; xschem simulate" } C {comp_ngspice.sym} 550 -520 0 0 {name=x2 OFFSET=0 AMPLITUDE=10} C {lab_pin.sym} 710 -520 0 1 {name=p1 lab=DRIVEU} C {parax_cap.sym} 670 -510 0 0 {name=C6 gnd=0 value=200f m=1} C {vsource.sym} 440 -460 0 1 {name=Voffs value=0.1} C {lab_pin.sym} 440 -490 0 0 {name=p2 lab=REFU} C {vsource.sym} 440 -310 2 1 {name=Voffs1 value=-0.1} C {lab_pin.sym} 440 -340 0 0 {name=p5 lab=REFD} C {lab_pin.sym} 440 -280 0 0 {name=p17 lab=REF} C {lab_pin.sym} 440 -430 0 0 {name=p23 lab=REF}