From ede831e038e8b2278f7d248a1f44af1252bc9fdc Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Fri, 28 Feb 2014 13:45:16 +1100 Subject: Constructed RMOS INC, DEC, inverting CONS gates --- RMOS/decrement.asc | 59 ++++++++++++++++++++++++++++++++++++++ RMOS/increment.asc | 60 +++++++++++++++++++++++++++++++++++++++ RMOS/inverting_consensus.asc | 67 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 186 insertions(+) create mode 100644 RMOS/decrement.asc create mode 100644 RMOS/increment.asc create mode 100644 RMOS/inverting_consensus.asc (limited to 'RMOS') diff --git a/RMOS/decrement.asc b/RMOS/decrement.asc new file mode 100644 index 0000000..9ff6525 --- /dev/null +++ b/RMOS/decrement.asc @@ -0,0 +1,59 @@ +Version 4 +SHEET 1 880 680 +WIRE -192 -192 -224 -192 +WIRE 16 -192 -112 -192 +WIRE -224 -160 -224 -192 +WIRE 16 -128 16 -192 +WIRE -32 -112 -80 -112 +WIRE -80 32 -80 -112 +WIRE -80 32 -192 32 +WIRE 16 32 16 -32 +WIRE 176 32 16 32 +WIRE 304 32 176 32 +WIRE 16 96 16 32 +WIRE 176 96 176 32 +WIRE 16 208 16 176 +WIRE 176 208 176 176 +WIRE -80 288 -80 32 +WIRE -32 288 -80 288 +WIRE 128 288 80 288 +WIRE -192 352 -224 352 +WIRE 176 352 176 304 +WIRE 176 352 -112 352 +WIRE -224 384 -224 352 +FLAG 16 208 0 +FLAG -224 -160 0 +FLAG -224 384 0 +FLAG -192 32 A +IOPIN -192 32 In +FLAG 304 32 Y +IOPIN 304 32 Out +SYMBOL pmos -32 -32 M180 +SYMATTR InstName M1 +SYMATTR Value P-ENH +SYMBOL nmos 128 208 R0 +SYMATTR InstName M2 +SYMATTR Value N-ENH +SYMBOL res 0 80 R0 +SYMATTR InstName R1 +SYMATTR Value 12k +SYMBOL voltage -96 -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 V2 +SYMATTR Value 1 +SYMBOL res 160 80 R0 +SYMATTR InstName R2 +SYMATTR Value 100 +SYMBOL voltage -96 352 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 -1 +SYMBOL .\\positive_threshold_inverter 16 240 R0 +SYMATTR InstName X1 +TEXT 160 -96 Left 0 !.inc ./custom.mos diff --git a/RMOS/increment.asc b/RMOS/increment.asc new file mode 100644 index 0000000..03d4d5e --- /dev/null +++ b/RMOS/increment.asc @@ -0,0 +1,60 @@ +Version 4 +SHEET 1 880 680 +WIRE -192 -192 -224 -192 +WIRE 16 -192 -112 -192 +WIRE -224 -160 -224 -192 +WIRE 16 -128 16 -192 +WIRE -32 -112 -80 -112 +WIRE -80 32 -80 -112 +WIRE -80 32 -192 32 +WIRE 16 32 16 -32 +WIRE 176 32 16 32 +WIRE 304 32 176 32 +WIRE 16 96 16 32 +WIRE 176 96 176 32 +WIRE 16 208 16 176 +WIRE 176 208 176 176 +WIRE -80 288 -80 32 +WIRE -32 288 -80 288 +WIRE 128 288 80 288 +WIRE -192 352 -224 352 +WIRE 176 352 176 304 +WIRE 176 352 -112 352 +WIRE -224 384 -224 352 +FLAG 16 208 0 +FLAG -224 -160 0 +FLAG -224 384 0 +FLAG -192 32 A +IOPIN -192 32 In +FLAG 304 32 Y +IOPIN 304 32 Out +SYMBOL pmos 128 208 R0 +SYMATTR InstName M1 +SYMATTR Value P-ENH +SYMBOL nmos -32 -32 M180 +SYMATTR InstName M2 +SYMATTR Value N-ENH +SYMBOL res 0 80 R0 +SYMATTR InstName R1 +SYMATTR Value 12k +SYMBOL voltage -96 352 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 1 +SYMBOL res 160 80 R0 +SYMATTR InstName R2 +SYMATTR Value 100 +SYMBOL voltage -96 -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 V4 +SYMATTR Value -1 +SYMBOL .\\negative_threshold_inverter 16 240 R0 +SYMATTR InstName X1 +TEXT 160 -96 Left 0 !.inc ./custom.mos +TEXT 72 -176 Left 0 ;Note the switched power rails. diff --git a/RMOS/inverting_consensus.asc b/RMOS/inverting_consensus.asc new file mode 100644 index 0000000..9f3005f --- /dev/null +++ b/RMOS/inverting_consensus.asc @@ -0,0 +1,67 @@ +Version 4 +SHEET 1 880 680 +WIRE -176 -192 -208 -192 +WIRE 48 -192 -96 -192 +WIRE -208 -160 -208 -192 +WIRE 48 -128 48 -192 +WIRE 0 -112 -112 -112 +WIRE 48 0 48 -32 +WIRE 0 16 -48 16 +WIRE -112 48 -112 -112 +WIRE -112 48 -208 48 +WIRE 48 144 48 96 +WIRE 208 144 48 144 +WIRE 368 144 208 144 +WIRE 48 192 48 144 +WIRE 208 192 208 144 +WIRE -48 240 -48 16 +WIRE -48 240 -208 240 +WIRE -48 272 -48 240 +WIRE 0 272 -48 272 +WIRE 48 320 48 288 +WIRE 208 320 208 272 +WIRE -112 400 -112 48 +WIRE 0 400 -112 400 +WIRE -176 480 -208 480 +WIRE 48 480 48 416 +WIRE 48 480 -96 480 +WIRE -208 512 -208 480 +FLAG 208 320 0 +FLAG -208 -160 0 +FLAG -208 512 0 +FLAG -208 48 A +IOPIN -208 48 In +FLAG -208 240 B +IOPIN -208 240 In +FLAG 368 144 Y +IOPIN 368 144 Out +SYMBOL nmos 0 192 R0 +SYMATTR InstName M1 +SYMATTR Value N-ENH +SYMBOL nmos 0 320 R0 +SYMATTR InstName M2 +SYMATTR Value N-ENH +SYMBOL pmos 0 96 M180 +SYMATTR InstName M3 +SYMATTR Value P-ENH +SYMBOL pmos 0 -32 M180 +SYMATTR InstName M4 +SYMATTR Value P-ENH +SYMBOL res 192 176 R0 +SYMATTR InstName R1 +SYMATTR Value 12k +SYMBOL voltage -80 -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 -80 480 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 -1 +TEXT 192 -24 Left 0 !.inc ./custom.mos -- cgit