Inverter:: Schematic Diagram
Inverter:: Schematic Diagram
Inverter :
Schematic diagram :
Spice code :
* Main circuit: inv
M1 vo vi Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 vo vi Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
v1 vdd gnd 5.0
v2 vi gnd pulse(0 5 1n 1n 1n 10n 20n)
.tran 2n 100n
.print tran v(vo,gnd) v(vi,gnd)
.include "C:\Program Files\Tanner EDA\Demo\T-Spice\models\ml2_20.md"
* End of main circuit: inv
Output waveform :
DC Analysis :
Spice code :
********* Simulation Settings - Parameters and SPICE Options *********
MMOSFET_N_1 vo vi Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 vo vi Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
v1 vdd gnd 5.0
v2 vi 0 dc 5
.dc lin source v2 0 5 .1
.print dc v(vo)
.include "C:\Documents and Settings\bsk\My Documents\Tanner EDA\Tanner Tools
v12.1\T-Spice\models\ml2_20.md"
Output :
2.
a) NAND Gate :
Schematic diagram :
Spice code :
* Main circuit: NAND
M1 vo a N2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 N2 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M3 vo a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M4 vo b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
v1 vdd gnd 5.0
v2 a gnd pulse(0 5 1n 1n 1n 5n 10n)
v3 b gnd pulse(0 5 1n 1n 1n 20n 40n)
.tran 2n 100n
.print tran v(vo,gnd) v(b,gnd) v(a,gnd)
.include "C:\Program Files\Tanner EDA\Demo\T-Spice\models\ml2_20.md"
Output waveform :
b) NOR Gate :
Schematic diagram :
Spice Code :
* Main circuit: NOR
M1 vo a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 vo b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M3 N7 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M4 vo b N7 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
v1 vdd gnd 5.0
v2 a gnd pulse(0 5 1n 1n 1n 5n 10n)
v3 b gnd pulse(0 5 1n 1n 1n 20n 40n)
.tran 2n 100n
.print tran v(vo,gnd) v(b,gnd) v(a,gnd)
.include "C:\Program Files\Tanner EDA\Demo\T-Spice\models\ml2_20.md"
Output Waveform :
c) XOR Gate :
Schematic diagram :
Spice Code :
* Main circuit: XOR
M1 N24 N3 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 vo N4 N24 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M3 vo a N1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M4 N1 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M5 N4 a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M6 N3 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M7 N17 N4 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M8 vo a N17 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M9 vo b N17 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M10 N17 N3 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M11 N4 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M12 N3 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
Output Waveform :
d) Boolean expression :
Y=b(ac+ac)
For MOS transistor implementation :
Y= b+(a+c)(a+c)
Schematic diagram :
Spice Code :
* Main circuit: boolean
M1 Vo c1 N1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 Vo N7 N1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M3 N1 a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M4 N1 N5 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
Output Waveform :
3.
a) D Flip Flop :
Schematic Diagram :
Spice Code :
* Main circuit: D_FF
M1 Qb ck N5 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 N5 D Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M3 Q Qb Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M4 Qb ckb N1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M5 N1 Q Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M6 ckb ck Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M7 Qb ckb N3 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M8 N3 D Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M9 Q Qb Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M10 Qb ck N6 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M11 N6 Q Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M12 ckb ck Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
Output Waveform :
b) JK Flip Flop :
Schematic Diagram :
Spice Code :
* Main circuit: JK_FF
M1 Q K N5 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M2 Gnd Qb Q Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M3 Qb Q Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M4 N5 clk N3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M5 Gnd Q N3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M6 N1 J Qb Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M7 N2 clk N1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M8 N2 Qb Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
M9 N8 Qb Q Vdd PMOS L=2u W=44u AD=66p PD=24u AS=66p PS=24u
M10 N8 K Vdd Vdd PMOS L=2u W=44u AD=66p PD=24u AS=66p PS=24u
M11 N8 Q Vdd Vdd PMOS L=2u W=44u AD=66p PD=24u AS=66p PS=24u
M12 Vdd clk N8 Vdd PMOS L=2u W=44u AD=66p PD=24u AS=66p PS=24u
Output Waveform :
4.
a1) Serial Adder :
Schematic Diagram :
Spice code :
********* Simulation Settings - General section *********
*************** Subcircuits *****************
.subckt full_adder a b ci co sum Gnd Vdd
MMOSFET_N_1 N_1 ci N_2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 N_2 a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_3 N_2 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_4 N_1 a N_3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_5 N_3 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_6 N_4 N_1 N_6 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_7 N_6 a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_8 N_6 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_10 Gnd ci N_5 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_9 N_6 ci Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_11 N_5 a N_7 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_12 N_7 b N_4 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_13 sum N_4 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_14 co N_1 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_10 N_10 b N_4 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_11 N_12 a N_10 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_12 Vdd ci N_12 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_13 sum N_4 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_14 N_4 N_1 N_11 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 N_1 ci N_9 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 N_9 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_3 N_9 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_4 N_8 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_5 N_1 a N_8 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_6 co N_1 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_7 N_11 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_8 N_11 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_9 N_11 ci Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
.ends
.subckt inv vi vo Gnd Vdd
MMOSFET_N_1 vo vi Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 vo vi Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
.ends
.subckt NAND_3 a b c1 vo Gnd Vdd
MMOSFET_N_1 vo b N_2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 N_2 a N_1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 vo b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
MMOSFET_N_3 N_1 c1 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 vo a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
MMOSFET_P_3 vo c1 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
.ends
.subckt AND2 a b vo Gnd Vdd
MMOSFET_N_1 N_1 a N_2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 N_2 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 N_1 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 N_1 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
Xinv_1 N_1 vo Gnd Vdd inv
.ends
.subckt D_FF_pos_edg D Q Qb R S clk Gnd Vdd
XNAND_3_1 N_1 Qb S Q Gnd Vdd NAND_3
XNAND_3_2 N_4 R Q Qb Gnd Vdd NAND_3
XNAND_3_3 N_5 N_1 S N_6 Gnd Vdd NAND_3
XNAND_3_4 R clk N_6 N_1 Gnd Vdd NAND_3
XNAND_3_5 clk N_5 N_1 N_4 Gnd Vdd NAND_3
XNAND_3_6 R D N_4 N_5 Gnd Vdd NAND_3
.ends
********* Simulation Settings - Parameters and SPICE Options *********
XAND2_1 co N_5 N4 Gnd Vdd AND2
XD_FF_pos_edg_1 N1 co N_1 r1 set clk Gnd Vdd D_FF_pos_edg
Output Waveform :
Spice Code :
.subckt full_adder a b ci co sum Gnd Vdd
MMOSFET_N_1 N_1 ci N_2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 N_2 a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_3 N_2 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_4 N_1 a N_3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_5 N_3 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_6 N_4 N_1 N_6 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_7 N_6 a Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_8 N_6 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_10 Gnd ci N_5 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_9 N_6 ci Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_11 N_5 a N_7 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_12 N_7 b N_4 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_13 sum N_4 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_14 co N_1 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_10 N_10 b N_4 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_11 N_12 a N_10 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_12 Vdd ci N_12 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_13 sum N_4 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_14 N_4 N_1 N_11 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 N_1 ci N_9 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 N_9 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_3 N_9 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_4 N_8 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_5 N_1 a N_8 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_6 co N_1 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_7 N_11 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_8 N_11 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_9 N_11 ci Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
.ends
********* Simulation Settings - Parameters and SPICE Options *********
Xfull_adder_2 b2 a2 c2 co s2 Gnd Vdd full_adder
Xfull_adder_3 b1 a1 ci c2 s1 Gnd Vdd full_adder
********* Simulation Settings - Analysis section *********
v1 vdd gnd 5
v2 a1 gnd PULSE(5 0 0 0 0 10n 20n)
v3 b1 gnd PULSE(5 0 0 0 0 20n 40n)
Output waveform :
b) 4:1 Multiplexer :
Schematic Diagram :
Spice Code :
MMOSFET_N_5 y s1b N_12 Gnd NMOS L=2u W=22u AD=66p PD=24u
AS=66p PS=24u
MMOSFET_N_6 N_12 s0 N_4 Gnd NMOS L=2u W=22u AD=66p PD=24u
AS=66p PS=24u
MMOSFET_N_7 N_13 s0 i3 Gnd NMOS L=2u W=22u AD=66p PD=24u
AS=66p PS=24u
MMOSFET_N_8 y s1 N_13 Gnd NMOS L=2u W=22u AD=66p PD=24u
AS=66p PS=24u
MMOSFET_P_1 i3 s0b N_2 Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 N_2 s1b y Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_3 N_4 s0b N_5 Vdd PMOS L=2u W=22u AD=66p PD=24u
AS=66p PS=24u
MMOSFET_P_4 N_5 s1 y Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
Output Waveform :
c) Barrel Shifter :
Barrel shifter operation
Examples:
o
o
o
Schematic Diagram :
Spice Code :
********* Simulation Settings - General section *********
********* Simulation Settings - Parameters and SPICE Options *********
MMOSFET_N_14 In1 shift3 Out0 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_5 In0 shift2 Out2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_6 In1 shift1 Out2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_15 In2 shift2 Out0 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_7 In2 shift0 Out2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_16 In3 shift1 Out0 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_8 In3 shift3 Out2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_9 In0 shift1 Out1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_10 In1 shift0 Out1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_1 In0 shift3 Out3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_11 In2 shift3 Out1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 In1 shift2 Out3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_12 In3 shift2 Out1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_3 In2 shift1 Out3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_13 In0 shift0 Out0 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_4 In3 shift0 Out3 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
vSource_v_dc_1 Vdd Gnd 5.0
********* Simulation Settings - Analysis section *********
*v1 vdd gnd 5.0
*v2 In0 gnd PULSE(0 5 4n 1n 1n 5n 10n)v3 In0 gnd 5
v2 In0 gnd PULSE(0 5 4n 1n 1n 5n 10n)
v3 In1 gnd PULSE(0 5 4n 1n 1n 10n 20n)
v4 In2 gnd PULSE(0 5 4n 1n 1n 20n 40n)
v5 In3 gnd PULSE(0 5 4n 1n 1n 40n 80n)
v6 shift0 gnd 0
v7 shift1 gnd 0
v8 shift2 gnd 5
v9 shift3 gnd 0
.tran 2n 100n
Output Waveform :
5. Differential amplifier:
Schematic Diagram :
Spice Code :
MMOSFET_N_1 N_1 vgs1 N_2 Gnd NMOS L=1u W=2u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 vo vgs2 N_2 Gnd NMOS L=1u W=2u AD=66p PD=24u AS=66p
PS=24u
vSource_v_dc_1 N_4 Gnd 5.0
MMOSFET_P_1 Vdd N_1 N_1 Vdd PMOS L=1u W=2u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_3 N_2 N_4 Gnd Gnd NMOS L=1u W=2u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 Vdd N_1 vo Vdd PMOS L=1u W=2u AD=66p PD=24u AS=66p
PS=24u
v1 vgs1 gnd 5
v2 vgs2 gnd 3
v3 vdd gnd 5.0
.dc lin source v1 0 5 .1
.print dc v(vo)
.include "G:\model_1u.md"
********* Simulation Settings - Analysis section *********
********* Simulation Settings - Additional SPICE commands *********
.end
Output :
Symbol :
6. Schmitt trigger :
Scematic Diagram :
Spice code :
MMOSFET_N_1 vo vi N_1 Gnd NMOS L=2u W=5u AD=66p PD=24u AS=66p PS=24u
MMOSFET_N_2 N_1 vi Gnd Gnd NMOS L=2u W=2u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 N_2 vi Vdd Vdd PMOS L=2u W=2u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_3 Vdd vo N_1 Gnd NMOS L=2u W=6u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 vo vi N_2 Vdd PMOS L=2u W=5u AD=66p PD=24u AS=66p PS=24u
MMOSFET_P_3 Gnd vo N_2 Vdd PMOS L=2u W=6u AD=66p PD=24u AS=66p
PS=24u
vSource_v_sine_1 vi Gnd sin 0 5 1000 0.0 0.0 0.0
v2 vdd gnd 5.0
*v1 vi 0 5
Output Waveform :
7. Counters
Asynchronous up counter :
A counter is a very simple device. It usually counts from 0 to N. Some counters allow
you to hold the value or to increment one at a time. We're going to build a very simple
counter using D flip flops. This counter is called asynchronous because not all flip flops
are hooked to the same clock.
Each of the D flip flop used here is positive edge triggered and acts in always
toggle mode by its inverting output and connecting back to the input. The external clock
is applied to the first flip flop. So Q0 toggles with the positive edge of the clock. Q0 is
fed to the clkock input of the next D flipflop, so Q1 toggles with the positive edge of Q0 .
So Q3Q2Q1Q0 generates the desired sequence 0000, 0001, 0010, .... 1111 .
Spice Code :
.subckt inv vi vo Gnd Vdd
MMOSFET_N_1 vo vi Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 vo vi Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
.ends
Output Waveform :
Spice Code :
********* Simulation Settings - General section *********
*************** Subcircuits *****************
v5 S gnd 5
.tran 2n 100n
.print tran v(Q3,gnd) v(Q2,gnd) v(Q1,gnd) v(Q0,gnd) v(clk,gnd)
.include "C:\Documents and Settings\bsk\My Documents\Tanner EDA\Tanner Tools
v12.1\T-Spice\models\ml2_20.md"
********* Simulation Settings - Additional SPICE commands *********
.end
Output Waveform :
Synchronous up counter :
The clock frequency can be increased by using synchronous counter whose 4-bit
implementation using positive edge triggered D-FF is shown below. The LSB Q0 is
always toggling with the positive edge of the clock. The next bit Q1 toggles with the
active clock edge when Q0 is just before the active clock edge. Similarly Q2 toggles
with the active clock edge when both Q0 and Q1 are 1 just before the active clock edge.
Similar is the case for Q3.
So the first flipflop always acts in the toggle mode and the second D-FF acts in
controlled toggle mode. This is done by feeding the output of the flipflop to one input of
the XOR gate whose output is given to the input of that flipflop. The other input of the
XOR gate is the toggle input.
Schematic Diagram :
Spice Code :
Output Waveform :
Spice Code :
.subckt inv vi vo Gnd Vdd
MMOSFET_N_1 vo vi Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 vo vi Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
.ends
.subckt NAND_3 a b c1 vo Gnd Vdd
MMOSFET_N_1 vo b N_2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 N_2 a N_1 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 vo b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
MMOSFET_N_3 N_1 c1 Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 vo a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p PS=24u
MMOSFET_P_3 vo c1 Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
.ends
.subckt AND2 a b vo Gnd Vdd
MMOSFET_N_1 N_1 a N_2 Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_N_2 N_2 b Gnd Gnd NMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_1 N_1 a Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
MMOSFET_P_2 N_1 b Vdd Vdd PMOS L=2u W=22u AD=66p PD=24u AS=66p
PS=24u
Xinv_1 N_1 vo Gnd Vdd inv
.ends
.subckt D_FF_pos_edg D Q Qb R S clk Gnd Vdd
XNAND_3_1 N_1 Qb S Q Gnd Vdd NAND_3
XNAND_3_2 N_4 R Q Qb Gnd Vdd NAND_3
XNAND_3_3 N_5 N_1 S N_6 Gnd Vdd NAND_3
XNAND_3_4 R clk N_6 N_1 Gnd Vdd NAND_3
XNAND_3_5 clk N_5 N_1 N_4 Gnd Vdd NAND_3
XNAND_3_6 R D N_4 N_5 Gnd Vdd NAND_3
.ends
.subckt XOR2 a b vo Gnd Vdd
Xinv_2 b N_2 Gnd Vdd inv