diff options
-rw-r--r-- | CMOS/buffer.asc | 115 | ||||
-rw-r--r-- | CMOS/clamp_down.asc | 54 | ||||
-rw-r--r-- | CMOS/clamp_up.asc | 56 | ||||
-rw-r--r-- | CMOS/decrement.asc | 58 | ||||
-rw-r--r-- | CMOS/increment.asc | 48 | ||||
-rw-r--r-- | CMOS/inverting_consensus.asc | 34 | ||||
-rw-r--r-- | CMOS/is_false.asc | 57 | ||||
-rw-r--r-- | CMOS/is_true.asc | 76 | ||||
-rw-r--r-- | CMOS/is_unknown.asc | 52 |
9 files changed, 114 insertions, 436 deletions
diff --git a/CMOS/buffer.asc b/CMOS/buffer.asc index 19ef3f2..6f0dc49 100644 --- a/CMOS/buffer.asc +++ b/CMOS/buffer.asc @@ -1,105 +1,12 @@ Version 4 -SHEET 1 924 680 -WIRE -288 -160 -336 -160 -WIRE 96 -160 -208 -160 -WIRE 560 -160 96 -160 -WIRE 96 -96 96 -160 -WIRE 560 -96 560 -160 -WIRE 48 -80 0 -80 -WIRE 512 -80 464 -80 -WIRE -336 96 -336 -160 -WIRE -336 96 -416 96 -WIRE -288 96 -336 96 -WIRE -80 96 -208 96 -WIRE 0 96 0 -80 -WIRE 0 96 -80 96 -WIRE 96 96 96 0 -WIRE 288 96 96 96 -WIRE 384 96 288 96 -WIRE 464 96 464 -80 -WIRE 464 96 384 96 -WIRE 560 96 560 0 -WIRE 752 96 560 96 -WIRE 864 96 752 96 -WIRE -416 144 -416 96 -WIRE 288 144 288 96 -WIRE 752 144 752 96 -WIRE -80 176 -80 96 -WIRE 208 176 -80 176 -WIRE 384 176 384 96 -WIRE 672 176 384 176 -WIRE 208 224 208 176 -WIRE 240 224 208 224 -WIRE 672 224 672 176 -WIRE 704 224 672 224 -WIRE 96 240 96 96 -WIRE 560 240 560 96 -WIRE 288 272 288 240 -WIRE 752 272 752 240 -WIRE 0 320 0 96 -WIRE 48 320 0 320 -WIRE 464 320 464 96 -WIRE 512 320 464 320 -WIRE 208 352 208 224 -WIRE 240 352 208 352 -WIRE 672 352 672 224 -WIRE 704 352 672 352 -WIRE -336 400 -336 96 -WIRE -288 400 -336 400 -WIRE 96 400 96 336 -WIRE 96 400 -208 400 -WIRE 288 400 288 368 -WIRE 752 400 752 368 -WIRE 96 448 96 400 -WIRE 560 448 560 336 -WIRE 560 448 96 448 -FLAG 288 400 0 -FLAG -416 144 0 -FLAG 752 400 0 -SYMBOL pmos 48 0 M180 -SYMATTR InstName M1 -SYMATTR Value P-ENH -SYMBOL nmos 48 240 R0 -SYMATTR InstName M2 -SYMATTR Value N-ENH -SYMBOL nmos 240 272 R0 -SYMATTR InstName M3 -SYMATTR Value N-DLOW -SYMBOL pmos 240 144 R0 -SYMATTR InstName M4 -SYMATTR Value P-DLOW -SYMBOL voltage -192 -160 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V1 -SYMATTR Value 1 -SYMBOL voltage -192 96 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) -SYMBOL voltage -192 400 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V3 -SYMATTR Value -1 -SYMBOL nmos 512 240 R0 -SYMATTR InstName M5 -SYMATTR Value N-ENH -SYMBOL pmos 512 0 M180 -SYMATTR InstName M6 -SYMATTR Value P-ENH -SYMBOL pmos 704 144 R0 -SYMATTR InstName M7 -SYMATTR Value P-DLOW -SYMBOL nmos 704 272 R0 -SYMATTR InstName M8 -SYMATTR Value N-DLOW -TEXT 40 -192 Left 0 !.inc ./custom.mos -TEXT -440 472 Left 0 !.tran 1 +SHEET 1 944 680 +WIRE 0 80 -16 80 +WIRE 240 80 224 80 +FLAG -16 80 A +IOPIN -16 80 In +FLAG 240 80 Y +IOPIN 240 80 Out +SYMBOL ternary-logic\\CMOS\\standard_inverter 48 32 R0 +SYMATTR InstName U1 +SYMBOL ternary-logic\\CMOS\\standard_inverter 160 32 R0 +SYMATTR InstName U2 diff --git a/CMOS/clamp_down.asc b/CMOS/clamp_down.asc index 8fb04ea..0902256 100644 --- a/CMOS/clamp_down.asc +++ b/CMOS/clamp_down.asc @@ -1,59 +1,28 @@ Version 4 SHEET 1 940 680 -WIRE -384 -128 -448 -128 -WIRE 16 -128 -304 -128 WIRE 304 -128 208 -128 WIRE 208 -112 208 -128 -WIRE 16 -64 16 -128 WIRE 304 -64 304 -128 -WIRE -32 -48 -96 -48 WIRE 256 -48 192 -48 -WIRE -448 144 -448 -128 -WIRE -448 144 -512 144 -WIRE -384 144 -448 144 -WIRE -96 144 -96 -48 -WIRE -96 144 -304 144 -WIRE 16 144 16 32 +WIRE -96 144 -160 144 WIRE 192 144 192 -48 WIRE 192 144 16 144 WIRE 304 144 304 32 WIRE 448 144 304 144 -WIRE -512 192 -512 144 -WIRE 16 272 16 144 WIRE 304 272 304 144 -WIRE -96 352 -96 144 -WIRE -32 352 -96 352 WIRE 192 352 192 144 WIRE 256 352 192 352 -WIRE -448 432 -448 144 -WIRE -384 432 -448 432 -WIRE 16 432 16 368 -WIRE 16 432 -304 432 +WIRE 16 432 -32 432 WIRE 304 432 304 368 -WIRE 304 432 16 432 -FLAG -512 192 0 +WIRE 304 432 96 432 +WIRE -32 464 -32 432 +FLAG -32 464 0 FLAG 208 -112 0 -SYMBOL nmos -32 272 R0 -SYMATTR InstName M1 -SYMATTR Value N-ELOW -SYMBOL pmos -32 32 M180 -SYMATTR InstName M2 -SYMATTR Value P-ENH -SYMBOL voltage -288 -128 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V1 -SYMATTR Value 1 -SYMBOL voltage -288 144 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) -SYMBOL voltage -288 432 R90 +FLAG -160 144 A +IOPIN -160 144 In +FLAG 448 144 Y +IOPIN 448 144 Out +SYMBOL voltage 112 432 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 WINDOW 123 0 0 Left 0 @@ -66,5 +35,6 @@ SYMATTR Value P-DLOW SYMBOL nmos 256 272 R0 SYMATTR InstName M4 SYMATTR Value N-ENH +SYMBOL ternary-logic\\CMOS\\negative_threshold_inverter -48 96 R0 +SYMATTR InstName U1 TEXT 424 -136 Left 0 !.inc ./custom.mos -TEXT -536 496 Left 0 !.tran 1 diff --git a/CMOS/clamp_up.asc b/CMOS/clamp_up.asc index c155df2..1d8f0a5 100644 --- a/CMOS/clamp_up.asc +++ b/CMOS/clamp_up.asc @@ -1,68 +1,38 @@ Version 4 SHEET 1 924 680 -WIRE -288 -160 -336 -160 -WIRE 96 -160 -208 -160 -WIRE 352 -160 96 -160 -WIRE 96 -96 96 -160 +WIRE 80 -160 32 -160 +WIRE 352 -160 160 -160 +WIRE 32 -128 32 -160 WIRE 352 -96 352 -160 -WIRE 48 -80 0 -80 WIRE 304 -80 256 -80 -WIRE -336 96 -336 -160 -WIRE -336 96 -416 96 -WIRE -288 96 -336 96 -WIRE 0 96 0 -80 -WIRE 0 96 -208 96 -WIRE 96 96 96 0 +WIRE -16 96 -96 96 WIRE 256 96 256 -80 WIRE 256 96 96 96 WIRE 352 96 352 0 WIRE 480 96 352 96 -WIRE -416 144 -416 96 -WIRE 96 240 96 96 WIRE 352 240 352 96 -WIRE 0 320 0 96 -WIRE 48 320 0 320 WIRE 256 320 256 96 WIRE 304 320 256 320 -WIRE -336 400 -336 96 -WIRE -288 400 -336 400 -WIRE 96 400 96 336 -WIRE 96 400 -208 400 WIRE 352 400 352 336 -FLAG -416 144 0 +FLAG 32 -128 0 FLAG 352 400 0 -SYMBOL pmos 48 0 M180 -SYMATTR InstName M1 -SYMATTR Value P-ELOW -SYMBOL nmos 48 240 R0 -SYMATTR InstName M2 -SYMATTR Value N-ENH -SYMBOL voltage -192 -160 R90 +FLAG -96 96 A +IOPIN -96 96 In +FLAG 480 96 Y +IOPIN 480 96 Out +SYMBOL voltage 176 -160 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 1 -SYMBOL voltage -192 96 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) -SYMBOL voltage -192 400 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V3 -SYMATTR Value -1 SYMBOL pmos 304 0 M180 SYMATTR InstName M3 SYMATTR Value P-ENH SYMBOL nmos 304 240 R0 SYMATTR InstName M4 SYMATTR Value N-DLOW -TEXT 408 -160 Left 0 !.inc ./custom.mos -TEXT -440 472 Left 0 !.tran 1 +SYMBOL ternary-logic\\CMOS\\positive_threshold_inverter 32 48 R0 +SYMATTR InstName U1 +TEXT -136 296 Left 0 !.inc ./custom.mos diff --git a/CMOS/decrement.asc b/CMOS/decrement.asc index b90fa26..0c9932c 100644 --- a/CMOS/decrement.asc +++ b/CMOS/decrement.asc @@ -2,51 +2,43 @@ Version 4 SHEET 1 880 680 WIRE -336 -192 -400 -192 WIRE 144 -192 -256 -192 -WIRE 400 -192 144 -192 +WIRE -400 -160 -400 -192 WIRE 144 -144 144 -192 WIRE 96 -128 16 -128 WIRE 144 -16 144 -48 WIRE 672 -16 144 -16 WIRE 768 -16 672 -16 WIRE 144 32 144 -16 -WIRE -400 48 -400 -192 -WIRE -400 48 -464 48 -WIRE -336 48 -400 48 WIRE 16 48 16 -128 WIRE 16 48 -256 48 -WIRE -464 96 -464 48 WIRE 16 112 16 48 WIRE 96 112 16 112 WIRE 144 160 144 128 -WIRE 400 208 400 -192 WIRE 672 208 672 -16 -WIRE 352 224 304 224 -WIRE 224 240 192 240 +WIRE 480 240 192 240 WIRE 144 288 144 256 WIRE 624 288 560 288 -WIRE 224 320 224 240 -WIRE 400 320 400 304 -WIRE 400 320 224 320 -WIRE 592 320 400 320 WIRE 16 352 16 112 -WIRE 304 352 304 224 -WIRE 304 352 16 352 +WIRE 272 352 16 352 WIRE 560 352 560 288 -WIRE 560 352 304 352 -WIRE 400 368 400 320 +WIRE 560 352 272 352 WIRE 672 368 672 304 -WIRE 304 448 304 352 -WIRE 352 448 304 448 -WIRE 592 448 592 320 -WIRE 624 448 592 448 -WIRE -400 512 -400 48 +WIRE 272 448 272 352 +WIRE 320 448 272 448 +WIRE 480 448 480 240 +WIRE 480 448 432 448 +WIRE 624 448 480 448 WIRE -336 512 -400 512 -WIRE 400 512 400 464 -WIRE 400 512 -256 512 WIRE 672 512 672 464 -WIRE 672 512 400 512 -FLAG -464 96 0 +WIRE 672 512 -256 512 +WIRE -400 544 -400 512 +FLAG -400 -160 0 FLAG 144 288 0 +FLAG -400 544 0 +FLAG -256 48 A +IOPIN -256 48 In +FLAG 768 -16 Y +IOPIN 768 -16 Out SYMBOL nmos 96 32 R0 SYMATTR InstName M1 SYMATTR Value N-ELOW @@ -56,9 +48,6 @@ SYMATTR Value P-DLOW SYMBOL pmos 96 -48 M180 SYMATTR InstName M3 SYMATTR Value P-ENH -SYMBOL nmos 352 368 R0 -SYMATTR InstName M4 -SYMATTR Value N-ENH SYMBOL voltage -240 -192 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 @@ -66,13 +55,6 @@ WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 1 -SYMBOL voltage -240 48 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) SYMBOL voltage -240 512 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 @@ -80,14 +62,12 @@ WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value -1 -SYMBOL pmos 352 304 M180 -SYMATTR InstName M5 -SYMATTR Value P-ELOW SYMBOL nmos 624 208 R0 SYMATTR InstName M6 SYMATTR Value N-ELOW SYMBOL nmos 624 368 R0 SYMATTR InstName M7 SYMATTR Value N-ENH +SYMBOL ternary-logic\\CMOS\\positive_threshold_inverter 368 400 R0 +SYMATTR InstName U1 TEXT 536 -184 Left 0 !.inc ./custom.mos -TEXT -484 578 Left 0 !.tran 1 diff --git a/CMOS/increment.asc b/CMOS/increment.asc index 3d9f05b..a874e40 100644 --- a/CMOS/increment.asc +++ b/CMOS/increment.asc @@ -1,35 +1,26 @@ Version 4 SHEET 1 880 680 WIRE -416 -192 -480 -192 -WIRE 176 -192 -336 -192 -WIRE 416 -192 176 -192 -WIRE 176 -112 176 -192 +WIRE 416 -192 -336 -192 +WIRE -480 -160 -480 -192 WIRE 416 -112 416 -192 WIRE 64 -96 -240 -96 WIRE 128 -96 64 -96 -WIRE 368 -96 320 -96 +WIRE 304 -96 240 -96 +WIRE 368 -96 304 -96 WIRE -64 -64 -160 -64 WIRE -160 -32 -160 -64 WIRE -64 0 -64 -64 -WIRE 176 16 176 -16 -WIRE 176 16 -16 16 -WIRE 320 16 320 -96 -WIRE 320 16 176 16 +WIRE 304 16 304 -96 +WIRE 304 16 -16 16 WIRE 416 64 416 -16 WIRE 64 80 64 -96 WIRE 368 80 64 80 -WIRE 176 112 176 16 WIRE -64 144 -64 96 -WIRE -480 160 -480 -192 -WIRE -480 160 -544 160 -WIRE -416 160 -480 160 WIRE -240 160 -240 -96 WIRE -240 160 -336 160 WIRE -160 160 -240 160 WIRE -112 160 -160 160 -WIRE 64 192 64 80 -WIRE 128 192 64 192 -WIRE -544 208 -544 160 WIRE -64 304 -64 240 WIRE 416 304 416 160 WIRE 416 304 -64 304 @@ -37,14 +28,17 @@ WIRE 544 304 416 304 WIRE -64 368 -64 304 WIRE -160 448 -160 160 WIRE -112 448 -160 448 -WIRE -480 496 -480 160 WIRE -416 496 -480 496 WIRE -64 496 -64 464 WIRE -64 496 -336 496 -WIRE 176 496 176 208 -WIRE 176 496 -64 496 -FLAG -544 208 0 +WIRE -480 528 -480 496 +FLAG -480 528 0 FLAG -160 -32 0 +FLAG -480 -160 0 +FLAG -336 160 A +IOPIN -336 160 In +FLAG 544 304 Y +IOPIN 544 304 Out SYMBOL nmos -112 368 R0 SYMATTR InstName M1 SYMATTR Value N-ENH @@ -55,13 +49,6 @@ WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 1 -SYMBOL voltage -320 160 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) SYMBOL voltage -320 496 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 @@ -72,12 +59,6 @@ SYMATTR Value -1 SYMBOL pmos -112 240 M180 SYMATTR InstName M2 SYMATTR Value P-ELOW -SYMBOL nmos 128 112 R0 -SYMATTR InstName M3 -SYMATTR Value N-ELOW -SYMBOL pmos 128 -16 M180 -SYMATTR InstName M4 -SYMATTR Value P-ENH SYMBOL pmos 368 -16 M180 SYMATTR InstName M5 SYMATTR Value P-ENH @@ -87,5 +68,6 @@ SYMATTR Value P-ELOW SYMBOL nmos -16 96 R180 SYMATTR InstName M7 SYMATTR Value N-DLOW +SYMBOL ternary-logic\\CMOS\\negative_threshold_inverter 176 -144 R0 +SYMATTR InstName U1 TEXT 296 472 Left 0 !.inc ./custom.mos -TEXT -568 560 Left 0 !.tran 1 diff --git a/CMOS/inverting_consensus.asc b/CMOS/inverting_consensus.asc index aa8de86..ef326e8 100644 --- a/CMOS/inverting_consensus.asc +++ b/CMOS/inverting_consensus.asc @@ -2,23 +2,17 @@ Version 4 SHEET 1 880 680 WIRE -368 -224 -448 -224 WIRE -16 -224 -288 -224 +WIRE -448 -192 -448 -224 WIRE -16 -144 -16 -224 WIRE -64 -128 -192 -128 WIRE -16 -16 -16 -48 WIRE -64 0 -128 0 -WIRE -448 64 -448 -224 -WIRE -368 64 -448 64 WIRE -192 64 -192 -128 WIRE -192 64 -288 64 -WIRE -448 128 -448 64 -WIRE -448 128 -512 128 WIRE -16 144 -16 80 WIRE 304 144 -16 144 WIRE 544 144 304 144 WIRE 640 144 544 144 -WIRE -512 160 -512 128 -WIRE -448 208 -448 128 -WIRE -368 208 -448 208 WIRE -128 208 -128 0 WIRE -128 208 -288 208 WIRE -16 208 -16 144 @@ -47,7 +41,6 @@ WIRE 192 448 192 416 WIRE 192 448 -96 448 WIRE 448 448 448 416 WIRE 448 448 192 448 -WIRE -448 512 -448 208 WIRE -368 512 -448 512 WIRE -16 512 -16 432 WIRE -16 512 -288 512 @@ -55,9 +48,17 @@ WIRE 304 512 304 432 WIRE 432 512 304 512 WIRE 544 512 544 432 WIRE 544 512 432 512 +WIRE -448 544 -448 512 WIRE 432 544 432 512 -FLAG -512 160 0 +FLAG -448 -192 0 FLAG 432 544 0 +FLAG -448 544 0 +FLAG -288 64 A +IOPIN -288 64 In +FLAG -288 208 B +IOPIN -288 208 In +FLAG 640 144 Y +IOPIN 640 144 Out SYMBOL pmos -64 -48 M180 SYMATTR InstName M1 SYMATTR Value P-ENH @@ -84,20 +85,6 @@ WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value -1 -SYMBOL voltage -272 64 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V3 -SYMATTR Value SINE(0 1 2 0.125) -SYMBOL voltage -272 208 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V4 -SYMATTR Value SINE(0 1 2) SYMBOL pmos 256 208 R0 SYMATTR InstName M5 SYMATTR Value P-DLOW @@ -110,5 +97,4 @@ SYMATTR Value N-DLOW SYMBOL pmos 496 336 R0 SYMATTR InstName M8 SYMATTR Value P-DLOW -TEXT -532 578 Left 0 !.tran 1 TEXT 464 -240 Left 0 !.inc ./custom.mos diff --git a/CMOS/is_false.asc b/CMOS/is_false.asc index 30899c4..04b091f 100644 --- a/CMOS/is_false.asc +++ b/CMOS/is_false.asc @@ -1,51 +1,10 @@ Version 4 SHEET 1 924 680 -WIRE -288 -160 -336 -160 -WIRE 96 -160 -208 -160 -WIRE 96 -96 96 -160 -WIRE 48 -80 0 -80 -WIRE -336 96 -336 -160 -WIRE -336 96 -416 96 -WIRE -288 96 -336 96 -WIRE 0 96 0 -80 -WIRE 0 96 -208 96 -WIRE 96 96 96 0 -WIRE 256 96 96 96 -WIRE -416 144 -416 96 -WIRE 96 240 96 96 -WIRE 0 320 0 96 -WIRE 48 320 0 320 -WIRE -336 400 -336 96 -WIRE -288 400 -336 400 -WIRE 96 400 96 336 -WIRE 96 400 -208 400 -FLAG -416 144 0 -SYMBOL pmos 48 0 M180 -SYMATTR InstName M1 -SYMATTR Value P-ENH -SYMBOL nmos 48 240 R0 -SYMATTR InstName M2 -SYMATTR Value N-ELOW -SYMBOL voltage -192 -160 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V1 -SYMATTR Value 1 -SYMBOL voltage -192 96 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) -SYMBOL voltage -192 400 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V3 -SYMATTR Value -1 -TEXT 408 -160 Left 0 !.inc ./custom.mos -TEXT -440 472 Left 0 !.tran 1 +WIRE -112 128 -128 128 +WIRE 16 128 0 128 +FLAG -128 128 A +IOPIN -128 128 In +FLAG 16 128 Y +IOPIN 16 128 Out +SYMBOL ternary-logic\\CMOS\\negative_threshold_inverter -64 80 R0 +SYMATTR InstName U1 diff --git a/CMOS/is_true.asc b/CMOS/is_true.asc index 0977aa2..9bdc020 100644 --- a/CMOS/is_true.asc +++ b/CMOS/is_true.asc @@ -1,68 +1,12 @@ Version 4 SHEET 1 924 680 -WIRE -288 -160 -336 -160 -WIRE 96 -160 -208 -160 -WIRE 352 -160 96 -160 -WIRE 96 -96 96 -160 -WIRE 352 -96 352 -160 -WIRE 48 -80 0 -80 -WIRE 304 -80 256 -80 -WIRE -336 96 -336 -160 -WIRE -336 96 -416 96 -WIRE -288 96 -336 96 -WIRE 0 96 0 -80 -WIRE 0 96 -208 96 -WIRE 96 96 96 0 -WIRE 256 96 256 -80 -WIRE 256 96 96 96 -WIRE 352 96 352 0 -WIRE 512 96 352 96 -WIRE -416 144 -416 96 -WIRE 96 240 96 96 -WIRE 352 240 352 96 -WIRE 0 320 0 96 -WIRE 48 320 0 320 -WIRE 256 320 256 96 -WIRE 304 320 256 320 -WIRE -336 400 -336 96 -WIRE -288 400 -336 400 -WIRE 96 400 96 336 -WIRE 96 400 -208 400 -WIRE 352 400 352 336 -WIRE 352 400 96 400 -FLAG -416 144 0 -SYMBOL pmos 48 0 M180 -SYMATTR InstName M1 -SYMATTR Value P-ELOW -SYMBOL nmos 48 240 R0 -SYMATTR InstName M2 -SYMATTR Value N-ENH -SYMBOL voltage -192 -160 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V1 -SYMATTR Value 1 -SYMBOL voltage -192 96 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) -SYMBOL voltage -192 400 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V3 -SYMATTR Value -1 -SYMBOL pmos 304 0 M180 -SYMATTR InstName M3 -SYMATTR Value P-ENH -SYMBOL nmos 304 240 R0 -SYMATTR InstName M4 -SYMATTR Value N-ELOW -TEXT 408 -160 Left 0 !.inc ./custom.mos -TEXT -440 472 Left 0 !.tran 1 +WIRE -16 96 -32 96 +WIRE 224 96 208 96 +FLAG -32 96 A +IOPIN -32 96 In +FLAG 224 96 Y +IOPIN 224 96 Out +SYMBOL ternary-logic\\CMOS\\positive_threshold_inverter 32 48 R0 +SYMATTR InstName U1 +SYMBOL ternary-logic\\CMOS\\negative_threshold_inverter 144 48 R0 +SYMATTR InstName U2 diff --git a/CMOS/is_unknown.asc b/CMOS/is_unknown.asc index b1d16c9..7261e77 100644 --- a/CMOS/is_unknown.asc +++ b/CMOS/is_unknown.asc @@ -1,63 +1,48 @@ Version 4 SHEET 1 956 680 -WIRE 304 -192 0 -192 -WIRE -288 -160 -336 -160 -WIRE 0 -160 0 -192 -WIRE 0 -160 -208 -160 +WIRE -288 -192 -336 -192 +WIRE 304 -192 -208 -192 +WIRE -336 -160 -336 -192 WIRE 304 -160 304 -192 WIRE 256 -144 112 -144 -WIRE 0 -96 0 -160 -WIRE -48 -80 -112 -80 WIRE 304 -32 304 -64 WIRE 256 -16 192 -16 -WIRE -336 96 -336 -160 -WIRE -336 96 -416 96 -WIRE -288 96 -336 96 -WIRE -112 96 -112 -80 WIRE -112 96 -208 96 -WIRE 0 96 0 0 +WIRE -48 96 -112 96 WIRE 192 96 192 -16 -WIRE 192 96 0 96 +WIRE 192 96 64 96 WIRE 304 96 304 64 WIRE 544 96 304 96 WIRE 656 96 544 96 -WIRE -416 144 -416 96 WIRE -112 176 -112 96 WIRE 112 176 112 -144 WIRE 112 176 -112 176 WIRE 432 176 112 176 -WIRE 0 240 0 96 WIRE 304 240 304 96 WIRE 544 240 544 96 -WIRE -112 320 -112 176 -WIRE -48 320 -112 320 WIRE 192 320 192 96 WIRE 256 320 192 320 WIRE 432 320 432 176 WIRE 496 320 432 320 -WIRE -336 400 -336 96 WIRE -288 400 -336 400 -WIRE 0 400 0 336 -WIRE 0 400 -208 400 WIRE 304 400 304 336 -WIRE 304 400 0 400 +WIRE 304 400 -208 400 WIRE 544 400 544 336 WIRE 544 400 304 400 -FLAG -416 144 0 -SYMBOL voltage -192 -160 R90 +WIRE -336 432 -336 400 +FLAG -336 -160 0 +FLAG -336 432 0 +FLAG -208 96 A +IOPIN -208 96 In +FLAG 656 96 Y +IOPIN 656 96 Out +SYMBOL voltage -192 -192 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 1 -SYMBOL voltage -192 96 R90 -WINDOW 0 -32 56 VBottom 0 -WINDOW 3 32 56 VTop 0 -WINDOW 123 0 0 Left 0 -WINDOW 39 0 0 Left 0 -SYMATTR InstName V2 -SYMATTR Value SINE(0 1 2) SYMBOL voltage -192 400 R90 WINDOW 0 -32 56 VBottom 0 WINDOW 3 32 56 VTop 0 @@ -65,12 +50,6 @@ WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value -1 -SYMBOL nmos -48 240 R0 -SYMATTR InstName M1 -SYMATTR Value N-ELOW -SYMBOL pmos -48 0 M180 -SYMATTR InstName M2 -SYMATTR Value P-ENH SYMBOL nmos 256 240 R0 SYMATTR InstName M3 SYMATTR Value N-ELOW @@ -83,5 +62,6 @@ SYMATTR Value P-ENH SYMBOL pmos 256 -64 M180 SYMATTR InstName M6 SYMATTR Value P-ELOW +SYMBOL ternary-logic\\CMOS\\negative_threshold_inverter 0 48 R0 +SYMATTR InstName U1 TEXT 360 -208 Left 0 !.inc ./custom.mos -TEXT -440 472 Left 0 !.tran 1 |