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
|
// license:GPL-2.0+
// copyright-holders:Couriersud
/*
* nld_7483.h
*
* DM7483: 4-Bit Binary Adder with Fast Carry
*
* +--------------+
* A4 |1 ++ 16| B4
* Ʃ3 |2 15| Ʃ3
* A3 |3 14| C4
* B3 |4 7483 13| C0
* VCC |5 12| GND
* Ʃ3 |6 11| B1
* B2 |7 10| A1
* A2 |8 9| Ʃ3
* +--------------+
*
* Ʃ = (A + B + C) & 0x0f
*
* C4 = (A + B + C) > 15 ? 1 : 0
*
* Naming conventions follow Fairchild Semiconductor datasheet
*
*/
#ifndef NLD_7483_H_
#define NLD_7483_H_
#include "../nl_base.h"
#define TTL_7483(_name, _A1, _A2, _A3, _A4, _B1, _B2, _B3, _B4, _CI) \
NET_REGISTER_DEV(7483, _name) \
NET_CONNECT(_name, A1, _A1) \
NET_CONNECT(_name, A2, _A2) \
NET_CONNECT(_name, A3, _A3) \
NET_CONNECT(_name, A4, _A4) \
NET_CONNECT(_name, B1, _B1) \
NET_CONNECT(_name, B2, _B2) \
NET_CONNECT(_name, B3, _B3) \
NET_CONNECT(_name, B4, _B4) \
NET_CONNECT(_name, C0, _CI)
NETLIB_DEVICE(7483,
netlist_ttl_input_t m_C0;
netlist_ttl_input_t m_A1;
netlist_ttl_input_t m_A2;
netlist_ttl_input_t m_A3;
netlist_ttl_input_t m_A4;
netlist_ttl_input_t m_B1;
netlist_ttl_input_t m_B2;
netlist_ttl_input_t m_B3;
netlist_ttl_input_t m_B4;
UINT8 m_lastr;
netlist_ttl_output_t m_SA;
netlist_ttl_output_t m_SB;
netlist_ttl_output_t m_SC;
netlist_ttl_output_t m_SD;
netlist_ttl_output_t m_C4;
);
#endif /* NLD_7483_H_ */
|