summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/macro/nlm_ttl74xx.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/netlist/macro/nlm_ttl74xx.cpp')
-rw-r--r--src/lib/netlist/macro/nlm_ttl74xx.cpp62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/lib/netlist/macro/nlm_ttl74xx.cpp b/src/lib/netlist/macro/nlm_ttl74xx.cpp
index c72e6ee9ce2..f06320504f0 100644
--- a/src/lib/netlist/macro/nlm_ttl74xx.cpp
+++ b/src/lib/netlist/macro/nlm_ttl74xx.cpp
@@ -301,6 +301,47 @@ NETLIST_START(TTL_7427_DIP)
)
NETLIST_END()
+/*
+ * DM7400: Quad 2-Input NAND Gates
+ *
+ * __
+ * Y = AB
+ * +---+---++---+
+ * | A | B || Y |
+ * +===+===++===+
+ * | 0 | 0 || 1 |
+ * | 0 | 1 || 1 |
+ * | 1 | 0 || 1 |
+ * | 1 | 1 || 0 |
+ * +---+---++---+
+ *
+ * Naming conventions follow National Semiconductor datasheet
+ *
+ * FIXME: Same as 7400, but drains higher output currents.
+ * Netlist currently does not model over currents (should it ever?)
+ */
+
+NETLIST_START(TTL_7437_DIP)
+ TTL_7437_GATE(s1)
+ TTL_7437_GATE(s2)
+ TTL_7437_GATE(s3)
+ TTL_7437_GATE(s4)
+
+ DUMMY_INPUT(GND)
+ DUMMY_INPUT(VCC)
+
+ DIPPINS( /* +--------------+ */
+ s1.A, /* A1 |1 ++ 14| VCC */ VCC.I,
+ s1.B, /* B1 |2 13| B4 */ s4.B,
+ s1.Q, /* Y1 |3 12| A4 */ s4.A,
+ s2.A, /* A2 |4 7400 11| Y4 */ s4.Q,
+ s2.B, /* B2 |5 10| B3 */ s3.B,
+ s2.Q, /* Y2 |6 9| A3 */ s3.A,
+ GND.I, /* GND |7 8| Y3 */ s3.Q
+ /* +--------------+ */
+ )
+NETLIST_END()
+
NETLIST_START(TTL74XX_lib)
@@ -428,6 +469,26 @@ NETLIST_START(TTL74XX_lib)
TT_FAMILY("74XX")
TRUTHTABLE_END()
+ /* FIXME: Same as 7400, but drains higher output currents.
+ * Netlist currently does not model over currents (should it ever?)
+ */
+
+ TRUTHTABLE_START(TTL_7437_GATE, 2, 1, 0, "")
+ TT_HEAD("A,B|Q ")
+ TT_LINE("0,X|1|22")
+ TT_LINE("X,0|1|22")
+ TT_LINE("1,1|0|15")
+ TT_FAMILY("74XX")
+ TRUTHTABLE_END()
+
+ TRUTHTABLE_START(TTL_7437_NAND, 2, 1, 0, "A,B")
+ TT_HEAD("A,B|Q ")
+ TT_LINE("0,X|1|22")
+ TT_LINE("X,0|1|22")
+ TT_LINE("1,1|0|15")
+ TT_FAMILY("74XX")
+ TRUTHTABLE_END()
+
LOCAL_LIB_ENTRY(TTL_7400_DIP)
LOCAL_LIB_ENTRY(TTL_7402_DIP)
LOCAL_LIB_ENTRY(TTL_7404_DIP)
@@ -436,4 +497,5 @@ NETLIST_START(TTL74XX_lib)
LOCAL_LIB_ENTRY(TTL_7411_DIP)
LOCAL_LIB_ENTRY(TTL_7416_DIP)
LOCAL_LIB_ENTRY(TTL_7427_DIP)
+ LOCAL_LIB_ENTRY(TTL_7437_DIP)
NETLIST_END()