di2680a.txt ;************************************************************************************************ ; IsSpice4 LISTING ; ; "Delay line aids in one-shot simulations," EDN, April 26, 2001, pg 129 ; ; http://www.ednmag.com/ednmag/reg/2001/042601/designideas.htm#09di1 ;************************************************************************************************ ******** * Monostable generator library * Developed by Christophe BASSO (France) * INTUSOFT's IsSpice4 compatible * Last modified: January 15th 2001 ******** *SRC=ONESHOTNRET;ONESHOTNRET;!Generators;Monoflops;Non Retrigg. Monoflop *SYM=ONESHOTNRET .SUBCKT ONESHOTNRET In Out {DELAY=3u} R3 1 0 10k C3 1 2 10pF X2 Out 4 UTD PARAMS: TD=DELAY K=1 X9 4 5 INV X10 1 6 Out Qbb LATCH R4 0 6 10k C4 7 6 10pF X11 5 Out 7 NAND2 X12 In 8 2 AND2 R5 8 Qbb 100 C5 8 0 100p .ENDS *INCLUDE MNFLOPS.LIB ******* *SRC=ONESHOTRET;ONESHOTRET;!Generators;Monoflops;Retrigg. Monoflop *SYM=ONESHOTRET .SUBCKT ONESHOTRET In Out {DELAY=3u} R1 1 0 10k C1 1 In 10pF X1 Out 3 UTD PARAMS: TD=DELAY K=1 X3 3 4 INV X4 1 5 Out Qb LATCH R2 0 5 10k C2 6 5 10pF X7 4 Out 6 NAND2 .ENDS *INCLUDE MNFLOPS.LIB ******* *SRC=SMALLPULSE;SMALLPULSE;!Generators;Monoflops;Small Pulse Monoflop *SYM=SMALLPULSE .SUBCKT SMALLPULSE In Out {DELAY=3u} X5 In 2 UTD PARAMS: TD=DELAY K=1 X6 In 3 Out AND2 X8 2 3 INV .ENDS *INCLUDE MNFLOPS.LIB ******* ****** MODELS **** .SUBCKT UTD 1 2 {TD=??? K=???} * RIN 1 0 1E15 E1 3 0 1 0 {K} T1 3 0 2 0 Z0=1 TD={TD} R1 2 0 1 .ENDS ******* .SUBCKT INV 1 2 B1 4 0 V= V(1)>800M ? 0 : 5V RD 4 2 100 CD 2 0 10P .ENDS INV ******* .SUBCKT LATCH 6 8 2 1 {VHIGH=10 VLOW=100m} * S R Q Q\ BQB 10 0 V=(V(8)<800M) & (V(2)>800M) ? {VLOW} : {VHIGH} BQ 20 0 V=(V(6)<800M) & (V(1)>800M) ? {VLOW} : {VHIGH} RD1 10 1 100 CD1 1 0 10p IC={VHIGH} RD2 20 2 100 CD2 2 0 10p IC={VLOW} .ENDS LATCH ******* .SUBCKT NAND2 1 2 3 B1 4 0 V= (V(1)>800M) & (V(2)>800M) ? 100m : 5V RD 4 3 100 CD 3 0 10P .ENDS NAND2 ******* .SUBCKT AND2 1 2 3 B1 4 0 V= (V(1)>800M) & (V(2)>800M) ? 5V : 100m RD 4 3 100 CD 3 0 10P .ENDS AND2 *******