summaryrefslogtreecommitdiff
path: root/digital ciruits/cmos_nand/cmos_nand.bak
blob: 23bc2a27707dd3c0fa934462a2ebeb8f2f38a69e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
EESchema Schematic File Version 4
LIBS:cmos_nand-cache
EELAYER 26 0
EELAYER END
$Descr A4 11693 8268
encoding utf-8
Sheet 1 1
Title ""
Date ""
Rev ""
Comp ""
Comment1 ""
Comment2 ""
Comment3 ""
Comment4 ""
$EndDescr
$Comp
L pspice:0 #GND01
U 1 1 5B1AEE1C
P 1400 3800
F 0 "#GND01" H 1400 3700 50  0001 C CNN
F 1 "0" H 1400 3887 50  0000 C CNN
F 2 "" H 1400 3800 50  0001 C CNN
F 3 "" H 1400 3800 50  0001 C CNN
	1    1400 3800
	1    0    0    -1  
$EndComp
$Comp
L pspice:VSOURCE V1
U 1 1 5B1AEF25
P 1400 3050
F 0 "V1" H 1828 3096 50  0000 L CNN
F 1 "dc 0 pulse(0 3.3 0 0 0 100m 200m)" H 1828 3005 50  0000 L CNN
F 2 "" H 1400 3050 50  0001 C CNN
F 3 "" H 1400 3050 50  0001 C CNN
F 4 "V" H 1400 3050 50  0001 C CNN "Spice_Primitive"
F 5 "dc 0 pulse(0 3.3 0 0 0 100m 200m)" H 1400 3050 50  0001 C CNN "Spice_Model"
F 6 "Y" H 1400 3050 50  0001 C CNN "Spice_Netlist_Enabled"
	1    1400 3050
	1    0    0    -1  
$EndComp
Wire Wire Line
	1400 3800 1400 3750
Text GLabel 4550 2700 0    50   Input ~ 0
A
Text GLabel 7250 3100 2    50   Output ~ 0
Out
$Comp
L pspice:VSOURCE V2
U 1 1 5B1B81D1
P 10200 3800
F 0 "V2" H 10628 3846 50  0000 L CNN
F 1 "3.3" H 10628 3755 50  0000 L CNN
F 2 "" H 10200 3800 50  0001 C CNN
F 3 "" H 10200 3800 50  0001 C CNN
	1    10200 3800
	1    0    0    -1  
$EndComp
$Comp
L power:VDD #PWR01
U 1 1 5B1B83AE
P 10200 3100
F 0 "#PWR01" H 10200 2950 50  0001 C CNN
F 1 "VDD" H 10217 3273 50  0000 C CNN
F 2 "" H 10200 3100 50  0001 C CNN
F 3 "" H 10200 3100 50  0001 C CNN
	1    10200 3100
	1    0    0    -1  
$EndComp
$Comp
L power:VDD #PWR02
U 1 1 5B1B83E5
P 5000 2250
F 0 "#PWR02" H 5000 2100 50  0001 C CNN
F 1 "VDD" H 5017 2423 50  0000 C CNN
F 2 "" H 5000 2250 50  0001 C CNN
F 3 "" H 5000 2250 50  0001 C CNN
	1    5000 2250
	1    0    0    -1  
$EndComp
Wire Wire Line
	5000 3700 5000 3850
Wire Wire Line
	4700 3500 4550 3500
Wire Wire Line
	5000 2500 5000 2450
Wire Notes Line
	4650 2400 4650 5150
Wire Notes Line
	7100 5150 7100 2400
Wire Notes Line
	7100 2400 4650 2400
Wire Notes Line
	4650 5150 7100 5150
Text Notes 1000 1100 0    80   ~ 0
A NAND gate implemented using MOSFETs\n\nfrom https://en.wikipedia.org/wiki/CMOS
Wire Wire Line
	4700 2700 4550 2700
Wire Wire Line
	1400 2250 1400 2350
Text Notes 4950 6000 0    50   ~ 0
.tran 1m 400m
Text Notes 4950 5750 0    50   ~ 0
.model mnmos nmos level=8 version=3.3.0\n.model mpmos pmos level=8 version=3.3.0\n
$Comp
L pspice:MPMOS M1
U 1 1 5B2448E1
P 4900 2700
F 0 "M1" H 5187 2746 50  0000 L CNN
F 1 "MPMOS" H 5187 2655 50  0000 L CNN
F 2 "" H 4900 2700 50  0001 C CNN
F 3 "" H 4900 2700 50  0001 C CNN
	1    4900 2700
	1    0    0    -1  
$EndComp
$Comp
L pspice:MNMOS M2
U 1 1 5B244930
P 4900 3500
F 0 "M2" H 5188 3546 50  0000 L CNN
F 1 "MNMOS" H 5188 3455 50  0000 L CNN
F 2 "" H 4875 3500 50  0001 C CNN
F 3 "" H 4875 3500 50  0001 C CNN
	1    4900 3500
	1    0    0    -1  
$EndComp
Wire Wire Line
	5100 2500 5100 2450
Wire Wire Line
	5100 2450 5000 2450
Connection ~ 5000 2450
Wire Wire Line
	5000 2450 5000 2250
Wire Wire Line
	5100 3700 5100 3850
Wire Wire Line
	5100 3850 5000 3850
Text Notes 9900 4850 0    50   ~ 0
Supply voltage
Text Notes 1000 1600 0    50   ~ 0
Notes:\n\n1. the dotted section implements a 2-input NAND gate using PMOS/NMOS\n2. Run the simulation and plot V(A), V(B) and V(out)
$Comp
L pspice:MPMOS M4
U 1 1 5B249F5D
P 6350 2700
F 0 "M4" H 6637 2746 50  0000 L CNN
F 1 "MPMOS" H 6637 2655 50  0000 L CNN
F 2 "" H 6350 2700 50  0001 C CNN
F 3 "" H 6350 2700 50  0001 C CNN
	1    6350 2700
	1    0    0    -1  
$EndComp
$Comp
L power:VDD #PWR03
U 1 1 5B249FBF
P 6450 2250
F 0 "#PWR03" H 6450 2100 50  0001 C CNN
F 1 "VDD" H 6467 2423 50  0000 C CNN
F 2 "" H 6450 2250 50  0001 C CNN
F 3 "" H 6450 2250 50  0001 C CNN
	1    6450 2250
	1    0    0    -1  
$EndComp
Wire Wire Line
	6450 2500 6450 2450
Wire Wire Line
	6450 2450 6550 2450
Wire Wire Line
	6550 2450 6550 2500
Connection ~ 6450 2450
Wire Wire Line
	6450 2450 6450 2250
Text GLabel 5950 2700 0    50   Input ~ 0
B
Wire Wire Line
	5950 2700 6150 2700
Wire Wire Line
	5000 2900 5000 3100
Wire Wire Line
	5000 4650 5000 4800
Wire Wire Line
	4700 4450 4550 4450
$Comp
L pspice:MNMOS M3
U 1 1 5B24A6A3
P 4900 4450
F 0 "M3" H 5188 4496 50  0000 L CNN
F 1 "MNMOS" H 5188 4405 50  0000 L CNN
F 2 "" H 4875 4450 50  0001 C CNN
F 3 "" H 4875 4450 50  0001 C CNN
	1    4900 4450
	1    0    0    -1  
$EndComp
Wire Wire Line
	5100 4650 5100 4800
Wire Wire Line
	5100 4800 5000 4800
Wire Wire Line
	5000 3850 5000 4250
Text GLabel 1500 2250 2    50   Output ~ 0
A
Text GLabel 1500 4200 2    50   Output ~ 0
B
Wire Wire Line
	5000 3100 6450 3100
Wire Wire Line
	6450 3100 6450 2900
Connection ~ 5000 3100
Wire Wire Line
	5000 3100 5000 3300
Wire Wire Line
	7250 3100 6450 3100
Connection ~ 6450 3100
Connection ~ 5000 3850
Text GLabel 4550 3500 0    50   Input ~ 0
A
Text GLabel 4550 4450 0    50   Input ~ 0
B
$Comp
L pspice:0 #GND04
U 1 1 5B24BFD8
P 10200 4500
F 0 "#GND04" H 10200 4400 50  0001 C CNN
F 1 "0" H 10200 4587 50  0000 C CNN
F 2 "" H 10200 4500 50  0001 C CNN
F 3 "" H 10200 4500 50  0001 C CNN
	1    10200 4500
	1    0    0    -1  
$EndComp
$Comp
L pspice:0 #GND03
U 1 1 5B24C547
P 5000 5300
F 0 "#GND03" H 5000 5200 50  0001 C CNN
F 1 "0" H 5000 5387 50  0000 C CNN
F 2 "" H 5000 5300 50  0001 C CNN
F 3 "" H 5000 5300 50  0001 C CNN
	1    5000 5300
	1    0    0    -1  
$EndComp
Wire Wire Line
	5000 4800 5000 5300
Connection ~ 5000 4800
Wire Wire Line
	1400 2250 1500 2250
$Comp
L pspice:0 #GND02
U 1 1 5B24F37F
P 1400 5750
F 0 "#GND02" H 1400 5650 50  0001 C CNN
F 1 "0" H 1400 5837 50  0000 C CNN
F 2 "" H 1400 5750 50  0001 C CNN
F 3 "" H 1400 5750 50  0001 C CNN
	1    1400 5750
	1    0    0    -1  
$EndComp
$Comp
L pspice:VSOURCE V3
U 1 1 5B24F388
P 1400 5000
F 0 "V3" H 1828 5046 50  0000 L CNN
F 1 "dc 0 pulse(0 3.3 0 0 0 50m 100m)" H 1828 4955 50  0000 L CNN
F 2 "" H 1400 5000 50  0001 C CNN
F 3 "" H 1400 5000 50  0001 C CNN
F 4 "V" H 1400 5000 50  0001 C CNN "Spice_Primitive"
F 5 "dc 0 pulse(0 3.3 0 0 0 50m 100m)" H 1400 5000 50  0001 C CNN "Spice_Model"
F 6 "Y" H 1400 5000 50  0001 C CNN "Spice_Netlist_Enabled"
	1    1400 5000
	1    0    0    -1  
$EndComp
Wire Wire Line
	1400 5750 1400 5700
Wire Wire Line
	1400 4200 1400 4300
Wire Wire Line
	1400 4200 1500 4200
Text Notes 1150 6050 0    50   ~ 0
Test input signals
Text Notes 4950 6550 0    50   ~ 0
.control\nrun\nplot v(a)+5 v(b)+10 v(out)\n.endc
Text GLabel 5000 4100 0    50   BiDi ~ 0
1
$EndSCHEMATC