-
Notifications
You must be signed in to change notification settings - Fork 1
/
gates-delay.h
90 lines (79 loc) · 1.41 KB
/
gates-delay.h
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
/*
* gates.h -- Bilbioteca de puertas l'ogicas.
*
* Este software de simulaci'on digital simula los circuitos como redes de
* puertas l'ogicas. La precisi'on del modelo y el tiempo de simulaci'on va
* a depender de la simulaci'on de las puertas y por lo tanto, existen
* distintos niveles de aproximaci'on.
*
* Considera los tiempos de propagaci'on de las puertas l'ogicas.
*
* gse. 1999.
*/
class NOT {
WIRE delay;
public:
NOT();
void run(WIRE &i, WIRE &o);
};
class AND {
WIRE delay;
public:
AND();
void run(WIRE &i0, WIRE &i1, WIRE &o);
};
class NAND {
WIRE delay;
public:
NAND();
void run(WIRE &i0, WIRE &i1, WIRE &o);
};
class NAND3 {
WIRE delay;
public:
NAND3();
void run (WIRE &i0, WIRE &i1, WIRE &i2, WIRE &o);
};
class NAND4 {
WIRE delay;
public:
NAND4();
void run (WIRE &i0, WIRE &i1, WIRE &i2, WIRE &i3, WIRE &o);
};
class OR {
WIRE delay;
public:
OR();
void run(WIRE &i0, WIRE &i1, WIRE &o);
};
class NOR {
WIRE delay;
public:
NOR();
void run(WIRE &i0, WIRE &i1, WIRE &o);
};
class XOR {
WIRE delay;
public:
XOR();
void run(WIRE &i0, WIRE &i1, WIRE &o);
};
class BUFFER_Z {
WIRE delay;
public:
BUFFER_Z();
void run(WIRE &i, WIRE &e, WIRE &o);
};
class AND3 {
AND a0,a1;
WIRE x;
public:
void run(WIRE &i0, WIRE &i1, WIRE &i2, WIRE &o);
};
class AND4 {
AND3 a0;
AND a1;
WIRE x;
public:
void run(WIRE &i0, WIRE &i1, WIRE &i2, WIRE &i3, WIRE &o);
};