summaryrefslogtreecommitdiff
path: root/verilog/alu/backup/alu3.dot
blob: bc9fed20871671dffb08ba1804900b321e4d35e6 (plain) (blame)
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
digraph "alu" {
label="alu";
rankdir="LR";
remincross=true;
n28 [ shape=diamond, label="result", color="black", fontcolor="black" ];
n29 [ shape=diamond, label="diff", color="black", fontcolor="black" ];
n30 [ shape=octagon, label="alu_output", color="black", fontcolor="black" ];
n31 [ shape=octagon, label="alu_op_i", color="black", fontcolor="black" ];
n32 [ shape=octagon, label="alu_in_2", color="black", fontcolor="black" ];
n33 [ shape=octagon, label="alu_in_1", color="black", fontcolor="black" ];
c37 [ shape=record, label="{{<p34> A|<p35> B}|$26\n$or|{<p36> Y}}" ];
v0 [ label="0" ];
c39 [ shape=record, label="{{<p34> A|<p35> B|<p38> S}|$25\n$mux|{<p36> Y}}" ];
v2 [ label="32'11111111111111111111111111111111" ];
c40 [ shape=record, label="{{<p34> A|<p35> B}|$24\n$shl|{<p36> Y}}" ];
x1 [ shape=record, style=rounded, label="<s4> 0:0 - 4:4 |<s3> 0:0 - 3:3 |<s2> 0:0 - 2:2 |<s1> 0:0 - 1:1 |<s0> 0:0 - 0:0 " ];
x1:e -> c40:p35:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", style="setlinewidth(3)", label=""];
c41 [ shape=record, label="{{<p34> A}|$23\n$not|{<p36> Y}}" ];
x3 [ shape=record, style=rounded, label="<s0> 4:4 - 0:0 " ];
x3:e -> c41:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
c42 [ shape=record, label="{{<p34> A}|$22\n$not|{<p36> Y}}" ];
x4 [ shape=record, style=rounded, label="<s0> 3:3 - 0:0 " ];
x4:e -> c42:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
c43 [ shape=record, label="{{<p34> A}|$21\n$not|{<p36> Y}}" ];
x5 [ shape=record, style=rounded, label="<s0> 2:2 - 0:0 " ];
x5:e -> c43:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
c44 [ shape=record, label="{{<p34> A}|$20\n$not|{<p36> Y}}" ];
x6 [ shape=record, style=rounded, label="<s0> 1:1 - 0:0 " ];
x6:e -> c44:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
c45 [ shape=record, label="{{<p34> A}|$19\n$not|{<p36> Y}}" ];
x7 [ shape=record, style=rounded, label="<s0> 0:0 - 0:0 " ];
x7:e -> c45:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
v8 [ label="1'0" ];
c46 [ shape=record, label="{{<p34> A|<p35> B}|$18\n$eq|{<p36> Y}}" ];
x9 [ shape=record, style=rounded, label="<s0> 31:31 - 0:0 " ];
x9:e -> c46:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
c47 [ shape=record, label="{{<p34> A|<p35> B}|$17\n$shr|{<p36> Y}}" ];
c48 [ shape=record, label="{{<p34> A|<p35> B|<p38> S}|$16\n$mux|{<p36> Y}}" ];
v10 [ label="1" ];
v11 [ label="0" ];
c49 [ shape=record, label="{{<p34> A|<p35> B|<p38> S}|$15\n$mux|{<p36> Y}}" ];
v12 [ label="1'1" ];
c50 [ shape=record, label="{{<p34> A|<p35> B}|$14\n$eq|{<p36> Y}}" ];
x13 [ shape=record, style=rounded, label="<s0> 31:31 - 0:0 " ];
x13:e -> c50:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
v14 [ label="0" ];
v15 [ label="1" ];
c51 [ shape=record, label="{{<p34> A|<p35> B|<p38> S}|$13\n$mux|{<p36> Y}}" ];
v16 [ label="1'0" ];
c52 [ shape=record, label="{{<p34> A|<p35> B}|$12\n$eq|{<p36> Y}}" ];
x17 [ shape=record, style=rounded, label="<s0> 31:31 - 0:0 " ];
x17:e -> c52:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
c53 [ shape=record, label="{{<p34> A|<p35> B}|$11\n$eq|{<p36> Y}}" ];
x18 [ shape=record, style=rounded, label="<s0> 31:31 - 0:0 " ];
x18:e -> c53:p35:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
x19 [ shape=record, style=rounded, label="<s0> 31:31 - 0:0 " ];
x19:e -> c53:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
v20 [ label="1" ];
v21 [ label="0" ];
c54 [ shape=record, label="{{<p34> A|<p35> B|<p38> S}|$10\n$mux|{<p36> Y}}" ];
c55 [ shape=record, label="{{<p34> A|<p35> B}|$9\n$lt|{<p36> Y}}" ];
c56 [ shape=record, label="{{<p34> A|<p35> B}|$8\n$shr|{<p36> Y}}" ];
c57 [ shape=record, label="{{<p34> A|<p35> B}|$7\n$shr|{<p36> Y}}" ];
c58 [ shape=record, label="{{<p34> A|<p35> B}|$6\n$and|{<p36> Y}}" ];
c59 [ shape=record, label="{{<p34> A|<p35> B}|$5\n$or|{<p36> Y}}" ];
c60 [ shape=record, label="{{<p34> A|<p35> B}|$4\n$sub|{<p36> Y}}" ];
c61 [ shape=record, label="{{<p34> A|<p35> B}|$3\n$add|{<p36> Y}}" ];
c62 [ shape=record, label="{{<p34> A|<p35> B}|$1\n$sub|{<p36> Y}}" ];
p22 [shape=box, style=rounded, label="PROC $2\nalu.v:18.1-37.4"];
x23 [shape=box, style=rounded, label="BUF"];
x24 [shape=box, style=rounded, label="BUF"];
c37:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c47:p36:e -> c37:p34:w [color="black", style="setlinewidth(3)", label=""];
c48:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c49:p36:e -> c48:p34:w [color="black", style="setlinewidth(3)", label=""];
c50:p36:e -> c49:p38:w [color="black", label=""];
c51:p36:e -> c48:p35:w [color="black", style="setlinewidth(3)", label=""];
c52:p36:e -> c51:p38:w [color="black", label=""];
c53:p36:e -> c48:p38:w [color="black", label=""];
c54:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c55:p36:e -> c54:p38:w [color="black", label=""];
c56:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c39:p36:e -> c37:p35:w [color="black", style="setlinewidth(3)", label=""];
c57:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c58:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c59:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c60:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c61:p36:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
c62:p36:e -> x23:w:w [color="black", style="setlinewidth(3)", label=""];
p22:e -> n28:w [color="black", style="setlinewidth(3)", label=""];
n28:e -> x24:w:w [color="black", style="setlinewidth(3)", label=""];
x23:e:e -> n29:w [color="black", style="setlinewidth(3)", label=""];
n29:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
n29:e -> x17:s0:w [color="black", style="setlinewidth(3)", label=""];
c40:p36:e -> c39:p34:w [color="black", style="setlinewidth(3)", label=""];
x24:e:e -> n30:w [color="black", style="setlinewidth(3)", label=""];
n31:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c47:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c55:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c56:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c57:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c58:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c59:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c60:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> c61:p35:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> x18:s0:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> x3:s0:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> x4:s0:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> x5:s0:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> x6:s0:w [color="black", style="setlinewidth(3)", label=""];
n32:e -> x7:s0:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c47:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c55:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c56:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c57:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c58:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c59:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c60:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c61:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c62:p34:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> c62:p35:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> p22:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> x13:s0:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> x19:s0:w [color="black", style="setlinewidth(3)", label=""];
n33:e -> x9:s0:w [color="black", style="setlinewidth(3)", label=""];
c41:p36:e -> x1:s4:w [color="black", label=""];
c42:p36:e -> x1:s3:w [color="black", label=""];
c43:p36:e -> x1:s2:w [color="black", label=""];
c44:p36:e -> x1:s1:w [color="black", label=""];
c45:p36:e -> x1:s0:w [color="black", label=""];
c46:p36:e -> c39:p38:w [color="black", label=""];
v0:e -> c39:p35:w [color="black", style="setlinewidth(3)", label=""];
v10:e -> c49:p35:w [color="black", style="setlinewidth(3)", label=""];
v11:e -> c49:p34:w [color="black", style="setlinewidth(3)", label=""];
v12:e -> c50:p35:w [color="black", label=""];
v14:e -> c51:p35:w [color="black", style="setlinewidth(3)", label=""];
v15:e -> c51:p34:w [color="black", style="setlinewidth(3)", label=""];
v16:e -> c52:p35:w [color="black", label=""];
v2:e -> c40:p34:w [color="black", style="setlinewidth(3)", label=""];
v20:e -> c54:p35:w [color="black", style="setlinewidth(3)", label=""];
v21:e -> c54:p34:w [color="black", style="setlinewidth(3)", label=""];
v8:e -> c46:p35:w [color="black", label=""];
}