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="{{ A| B}|$26\n$or|{ Y}}" ]; v0 [ label="0" ]; c39 [ shape=record, label="{{ A| B| S}|$25\n$mux|{ Y}}" ]; v2 [ label="32'11111111111111111111111111111111" ]; c40 [ shape=record, label="{{ A| B}|$24\n$shl|{ Y}}" ]; x1 [ shape=record, style=rounded, label=" 0:0 - 4:4 | 0:0 - 3:3 | 0:0 - 2:2 | 0:0 - 1:1 | 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="{{ A}|$23\n$not|{ Y}}" ]; x3 [ shape=record, style=rounded, label=" 4:4 - 0:0 " ]; x3:e -> c41:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; c42 [ shape=record, label="{{ A}|$22\n$not|{ Y}}" ]; x4 [ shape=record, style=rounded, label=" 3:3 - 0:0 " ]; x4:e -> c42:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; c43 [ shape=record, label="{{ A}|$21\n$not|{ Y}}" ]; x5 [ shape=record, style=rounded, label=" 2:2 - 0:0 " ]; x5:e -> c43:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; c44 [ shape=record, label="{{ A}|$20\n$not|{ Y}}" ]; x6 [ shape=record, style=rounded, label=" 1:1 - 0:0 " ]; x6:e -> c44:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; c45 [ shape=record, label="{{ A}|$19\n$not|{ Y}}" ]; x7 [ shape=record, style=rounded, label=" 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="{{ A| B}|$18\n$eq|{ Y}}" ]; x9 [ shape=record, style=rounded, label=" 31:31 - 0:0 " ]; x9:e -> c46:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; c47 [ shape=record, label="{{ A| B}|$17\n$shr|{ Y}}" ]; c48 [ shape=record, label="{{ A| B| S}|$16\n$mux|{ Y}}" ]; v10 [ label="1" ]; v11 [ label="0" ]; c49 [ shape=record, label="{{ A| B| S}|$15\n$mux|{ Y}}" ]; v12 [ label="1'1" ]; c50 [ shape=record, label="{{ A| B}|$14\n$eq|{ Y}}" ]; x13 [ shape=record, style=rounded, label=" 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="{{ A| B| S}|$13\n$mux|{ Y}}" ]; v16 [ label="1'0" ]; c52 [ shape=record, label="{{ A| B}|$12\n$eq|{ Y}}" ]; x17 [ shape=record, style=rounded, label=" 31:31 - 0:0 " ]; x17:e -> c52:p34:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; c53 [ shape=record, label="{{ A| B}|$11\n$eq|{ Y}}" ]; x18 [ shape=record, style=rounded, label=" 31:31 - 0:0 " ]; x18:e -> c53:p35:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""]; x19 [ shape=record, style=rounded, label=" 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="{{ A| B| S}|$10\n$mux|{ Y}}" ]; c55 [ shape=record, label="{{ A| B}|$9\n$lt|{ Y}}" ]; c56 [ shape=record, label="{{ A| B}|$8\n$shr|{ Y}}" ]; c57 [ shape=record, label="{{ A| B}|$7\n$shr|{ Y}}" ]; c58 [ shape=record, label="{{ A| B}|$6\n$and|{ Y}}" ]; c59 [ shape=record, label="{{ A| B}|$5\n$or|{ Y}}" ]; c60 [ shape=record, label="{{ A| B}|$4\n$sub|{ Y}}" ]; c61 [ shape=record, label="{{ A| B}|$3\n$add|{ Y}}" ]; c62 [ shape=record, label="{{ A| B}|$1\n$sub|{ 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=""]; }