Version 4 SHEET 1 1168 836 WIRE -288 -704 -320 -704 WIRE -176 -704 -208 -704 WIRE -128 -704 -176 -704 WIRE -80 -704 -128 -704 WIRE 64 -704 0 -704 WIRE 80 -704 64 -704 WIRE 128 -704 80 -704 WIRE 272 -704 208 -704 WIRE 416 -704 352 -704 WIRE 464 -704 416 -704 WIRE 480 -704 464 -704 WIRE 592 -704 480 -704 WIRE -176 -672 -176 -704 WIRE 64 -672 64 -704 WIRE 480 -672 480 -704 WIRE 592 -672 592 -704 WIRE 272 -592 240 -592 WIRE 384 -592 352 -592 WIRE -176 -560 -176 -608 WIRE -96 -560 -112 -560 WIRE 64 -560 64 -592 WIRE 480 -560 480 -608 WIRE 592 -560 592 -592 WIRE -112 -528 -112 -560 WIRE 416 -528 416 -704 WIRE 496 -528 464 -528 WIRE 240 -480 240 -592 WIRE 400 -480 240 -480 WIRE 512 -480 480 -480 WIRE 192 -416 176 -416 WIRE -64 -400 -64 -432 WIRE 112 -400 -64 -400 WIRE -112 -384 -112 -432 WIRE 240 -384 240 -480 WIRE 240 -384 176 -384 WIRE 240 -368 240 -384 WIRE 272 -368 240 -368 WIRE 384 -368 352 -368 WIRE -112 -352 -112 -384 WIRE 16 -352 0 -352 WIRE 0 -336 0 -352 WIRE 240 -336 240 -368 WIRE -112 -240 -112 -272 WIRE 0 -240 0 -256 WIRE 240 -240 240 -272 WIRE -288 -48 -304 -48 WIRE -272 -48 -288 -48 WIRE -160 -48 -192 -48 WIRE -128 -48 -160 -48 WIRE -80 -48 -128 -48 WIRE 64 -48 0 -48 WIRE 80 -48 64 -48 WIRE 128 -48 80 -48 WIRE 272 -48 208 -48 WIRE 416 -48 352 -48 WIRE 464 -48 416 -48 WIRE 480 -48 464 -48 WIRE 592 -48 480 -48 WIRE -304 -16 -304 -48 WIRE -160 -16 -160 -48 WIRE 64 -16 64 -48 WIRE 480 -16 480 -48 WIRE 592 -16 592 -48 WIRE 272 64 240 64 WIRE 384 64 352 64 WIRE -304 96 -304 64 WIRE -160 96 -160 48 WIRE 64 96 64 64 WIRE 480 96 480 48 WIRE 592 96 592 64 WIRE 416 128 416 -48 WIRE 528 128 464 128 WIRE 592 128 528 128 WIRE 592 144 592 128 WIRE -112 160 -128 160 WIRE -16 160 -32 160 WIRE -128 176 -128 160 WIRE -128 176 -160 176 WIRE -16 176 -16 160 WIRE 16 176 -16 176 WIRE 144 176 112 176 WIRE 240 176 240 64 WIRE 240 176 208 176 WIRE 400 176 240 176 WIRE 512 176 480 176 WIRE -160 192 -160 176 WIRE -128 208 -128 176 WIRE -112 208 -128 208 WIRE -16 208 -16 176 WIRE -16 208 -48 208 WIRE 592 240 592 224 WIRE -160 288 -160 272 WIRE -144 288 -160 288 WIRE -80 288 -144 288 WIRE 0 288 -80 288 WIRE 176 288 112 288 WIRE 240 288 176 288 WIRE 272 288 240 288 WIRE 384 288 352 288 WIRE -160 320 -160 288 WIRE -80 320 -80 288 WIRE 0 320 0 288 WIRE 112 320 112 288 WIRE 240 320 240 288 WIRE -160 416 -160 384 WIRE -80 416 -80 384 WIRE 0 416 0 400 WIRE 112 416 112 400 WIRE 240 416 240 384 FLAG -128 -48 i FLAG 464 -48 o FLAG 16 176 0 FLAG -160 176 d FLAG -304 96 0 FLAG 112 416 0 FLAG 240 416 0 FLAG 0 416 0 FLAG -160 416 0 FLAG 176 288 ramp FLAG 80 -48 x FLAG 64 96 0 FLAG 112 176 0 FLAG 384 288 0 FLAG -112 -240 0 FLAG 64 -560 0 FLAG -112 -560 pwm FLAG 192 -416 0 FLAG 384 -368 0 FLAG 0 -240 0 FLAG 0 -352 saw FLAG 384 -592 0 FLAG 240 -240 0 FLAG 240 -592 di` FLAG -320 -704 s IOPIN -320 -704 BiDir FLAG -112 -384 clk FLAG 80 -704 x` FLAG -176 -560 0 FLAG 480 -560 0 FLAG 592 -560 0 FLAG 512 -480 0 FLAG 384 64 0 FLAG 480 96 0 FLAG 592 96 0 FLAG 592 240 0 FLAG 512 176 0 FLAG -160 96 0 FLAG -128 -704 i` FLAG 464 -704 o` FLAG 496 -528 ref IOPIN 496 -528 BiDir FLAG 528 128 ref FLAG -288 -48 s FLAG -144 288 c FLAG -80 416 0 FLAG 240 64 di FLAG 592 -224 di FLAG 592 -288 di` SYMBOL bi -80 -48 M90 WINDOW 0 -32 40 VBottom 0 WINDOW 3 48 40 VCenter 0 WINDOW 123 72 40 VCenter 0 SYMATTR InstName Bi SYMATTR Value I=I(Vx)* SYMATTR Value2 limit(0,1,V(d)) SYMBOL bv 64 -32 M0 WINDOW 3 16 96 Left 0 WINDOW 0 16 16 Left 0 WINDOW 123 16 120 Left 0 SYMATTR Value V=V(i)* SYMATTR InstName Bx SYMATTR Value2 limit(0,1,V(d)) SYMBOL voltage 256 -48 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 -32 56 VBottom 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName Vx SYMATTR Value 0 SYMBOL voltage -304 -32 M0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 WINDOW 0 16 16 Left 0 WINDOW 3 16 96 Left 0 SYMATTR InstName Vi SYMATTR Value {Vi} SYMBOL bi 112 400 M180 WINDOW 0 16 80 Left 0 WINDOW 3 0 -48 Center 0 SYMATTR InstName BIramp SYMATTR Value I=max(1u,V(i,o)/{2*f*Lo}) SYMBOL cap 256 320 M0 WINDOW 39 24 56 Left 0 WINDOW 3 8 56 Right 0 SYMATTR SpiceLine Rpar=1 SYMATTR Value 1n SYMATTR InstName Cr SYMBOL bi 0 400 R180 WINDOW 0 -16 80 Right 0 WINDOW 3 -32 128 Center 0 SYMATTR InstName BFm SYMATTR Value I=limit(Ic,-Ic-1,V(di)/V(ramp)) SYMBOL cap -144 320 M0 WINDOW 39 24 32 Left 0 WINDOW 3 24 56 Left 0 SYMATTR Value {4/pi/pi/f} SYMATTR InstName Csp SYMBOL ind 112 -32 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 WINDOW 39 -17 56 VBottom 0 SYMATTR InstName Lo SYMATTR Value {Lo} SYMATTR SpiceLine Rser=1u SYMBOL f 272 64 M90 WINDOW 0 -32 40 VBottom 0 WINDOW 3 32 40 VTop 0 SYMATTR InstName Ffb SYMATTR Value Vx 1 SYMBOL cap 208 192 M270 WINDOW 39 56 32 VCenter 0 WINDOW 0 32 48 VRight 0 WINDOW 3 32 16 VLeft 0 SYMATTR SpiceLine Rpar=1 SYMATTR InstName Cdi SYMATTR Value 1n SYMBOL ind -144 176 M0 WINDOW 0 40 40 Left 0 WINDOW 3 40 64 Left 0 SYMATTR InstName Lsp SYMATTR Value {1/4/f} SYMBOL bi 352 288 M270 WINDOW 0 32 40 VTop 0 WINDOW 3 -34 16 VBottom 0 SYMATTR InstName BVramp SYMATTR Value I=Vo/{Lo*f}*n SYMBOL Digital\\srflop -160 -480 R270 WINDOW 3 16 136 VRight 0 WINDOW 0 40 136 VRight 0 WINDOW 123 -4 136 VRight 0 SYMATTR Value tripdt=5n SYMATTR InstName A2 SYMATTR Value2 td=5n SYMBOL voltage -112 -368 R0 WINDOW 0 16 16 Left 0 WINDOW 3 0 160 Center 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName Vclk SYMATTR Value PULSE(0 1 1u 10n 10n 10n {1/f}) SYMBOL bv 64 -688 M0 WINDOW 3 40 56 Left 0 WINDOW 0 16 16 Left 0 SYMATTR Value V=V(pwm)*V(i`) SYMATTR InstName Bx` SYMBOL Digital\\diffschmtbuf 176 -464 M0 WINDOW 3 64 -16 Right 0 WINDOW 0 64 32 Right 0 WINDOW 123 64 8 Right 0 SYMATTR Value Vt=0 Vh=0 SYMATTR InstName A1 SYMATTR Value2 tripdt=5n SYMBOL bi 272 -368 R270 WINDOW 0 32 40 VTop 0 WINDOW 3 -34 80 VBottom 0 SYMATTR InstName BVramp` SYMATTR Value I=V(saw)*Vo/{Lo*f}*n SYMBOL voltage 0 -352 M0 WINDOW 0 -16 16 Right 0 WINDOW 3 0 168 Center 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName Vsawtooth SYMATTR Value PULSE(0 1 {1u+25n} {1/f-20n} 20n 0 {1/f}) SYMBOL ind 112 -688 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 WINDOW 39 -17 56 VBottom 0 SYMATTR InstName Lo` SYMATTR Value {Lo} SYMATTR SpiceLine Rser=1u SYMBOL voltage 256 -704 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 -32 56 VBottom 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName Vx` SYMATTR Value 0 SYMBOL f 272 -592 M90 WINDOW 0 -32 40 VBottom 0 WINDOW 3 32 40 VTop 0 SYMATTR InstName Ffb` SYMATTR Value Vx` 1 SYMBOL cap 256 -336 M0 WINDOW 39 7 56 Right 0 WINDOW 3 24 56 Left 0 SYMATTR SpiceLine Rpar=1 SYMATTR Value 1n SYMATTR InstName Cdi` SYMBOL bi -80 -704 M90 WINDOW 0 -32 40 VBottom 0 WINDOW 3 48 16 VCenter 0 SYMATTR InstName Bi` SYMATTR Value I=V(pwm)*I(Vx`) SYMBOL ind -304 -688 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName Li` SYMATTR Value {Li} SYMBOL cap -160 -672 M0 SYMATTR InstName Ci` SYMATTR Value {Ci} SYMBOL cap 464 -672 R0 WINDOW 123 24 30 Left 0 SYMATTR InstName Co` SYMATTR Value {Co} SYMBOL res 576 -688 R0 SYMATTR InstName Ro` SYMATTR Value {Ro} SYMBOL g2 384 -480 M90 WINDOW 0 32 32 VLeft 0 WINDOW 3 32 80 VRight 0 SYMATTR InstName Ge` SYMATTR Value {Gain} SYMBOL cap 464 -16 R0 WINDOW 123 24 86 Left 0 SYMATTR InstName Co SYMATTR Value {Co} SYMBOL res 576 -32 R0 SYMATTR InstName Ro SYMATTR Value {Ro} SYMBOL g2 384 176 M90 WINDOW 0 32 32 VLeft 0 WINDOW 3 32 80 VRight 0 SYMATTR InstName Ge SYMATTR Value {Gain} SYMBOL voltage 592 128 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName Vr SYMATTR Value {Vo} SYMBOL ind -288 -32 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName Li SYMATTR Value {Li} SYMBOL cap -176 -16 R0 SYMATTR InstName Ci SYMATTR Value {Ci} SYMBOL zener -64 384 R180 WINDOW 0 24 72 Left 0 WINDOW 3 24 0 Left 0 SYMATTR InstName Dsp SYMATTR Value 1V SYMBOL Misc\\xvaristor -128 176 R270 WINDOW 0 8 56 VBottom 0 WINDOW 3 32 56 VTop 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName Id SYMATTR Value TBL(0 0 1 {Rd/(Rd-1)}) SYMATTR Prefix I SYMBOL cap 576 -288 R0 SYMATTR InstName Ctic SYMATTR Value 10p SYMATTR SpiceLine Rser=.1 SYMBOL cap -48 192 R90 WINDOW 0 30 48 VRight 0 WINDOW 3 30 16 VLeft 0 WINDOW 39 40 32 VTop 0 SYMATTR InstName Cd SYMATTR Value 1n SYMATTR SpiceLine Rpar={Rd} TEXT -352 -344 Left 0 ;.ac dec 501 10k 100k TEXT -352 -368 Left 0 !.tran 0 15m 100n uic TEXT -352 -320 Left 0 ;.step param Vo 0 9.9 .5 TEXT 368 416 Left 0 ;Slope Compensation Control\n0 is no compensation\n1 is compensation= Lo downslope TEXT -376 -128 Left 0 ;Current Mode Control (averaged model) TEXT -376 -784 Left 0 ;Current Mode Control (switched model) TEXT -344 -496 Left 0 ;To check match\nof models, plot\nI(Vx) and I(Vx`) TEXT 368 392 Left 0 !.param n=.5 Gain=380 TEXT -360 296 Left 0 !.model 1V d\n+ Ron={150m}\n+ Vrev=1 TEXT 456 288 Left 0 !.param f=100k\n+ Li=2u Ci=5m\n+ Lo=20u Co=5m\n+ Vi=10 Vo=6 Ro=5 TEXT -360 208 Left 0 !.param\n+ Rd=50\n+ Ic=50 LINE Normal -48 48 -96 96 2 LINE Normal -84 -613 -102 -586 2 LINE Normal 240 288 240 176 1 LINE Normal 0 288 112 288 1 LINE Normal 16 -352 208 -352 1 LINE Normal 336 -672 336 -624 2 LINE Normal 288 -672 288 -624 2 LINE Normal 288 -16 288 32 2 LINE Normal 336 -16 336 32 2 RECTANGLE Normal 720 480 -384 -144 RECTANGLE Normal 720 -160 -384 -800