blob: 47d69e59621d9fe165a64b0c7c3186ac866e2899 [file] [log] [blame]
digraph "gpio_control_block" {
label="gpio_control_block";
rankdir="LR";
remincross=true;
n34 [ shape=diamond, label="gpio_logic1", color="black", fontcolor="black" ];
n35 [ shape=diamond, label="int_reset", color="black", fontcolor="black" ];
n36 [ shape=diamond, label="load_data", color="black", fontcolor="black" ];
n37 [ shape=diamond, label="shift_register", color="black", fontcolor="black" ];
n38 [ shape=diamond, label="gpio_in_unbuf", color="black", fontcolor="black" ];
n39 [ shape=diamond, label="gpio_ana_pol", color="black", fontcolor="black" ];
n40 [ shape=diamond, label="gpio_ana_sel", color="black", fontcolor="black" ];
n41 [ shape=diamond, label="gpio_ana_en", color="black", fontcolor="black" ];
n42 [ shape=diamond, label="gpio_dm", color="black", fontcolor="black" ];
n43 [ shape=diamond, label="gpio_outenb", color="black", fontcolor="black" ];
n44 [ shape=diamond, label="gpio_ib_mode_sel", color="black", fontcolor="black" ];
n45 [ shape=diamond, label="gpio_inenb", color="black", fontcolor="black" ];
n46 [ shape=diamond, label="gpio_vtrip_sel", color="black", fontcolor="black" ];
n47 [ shape=diamond, label="gpio_slow_sel", color="black", fontcolor="black" ];
n48 [ shape=diamond, label="gpio_holdover", color="black", fontcolor="black" ];
n49 [ shape=diamond, label="mgmt_ena", color="black", fontcolor="black" ];
n50 [ shape=octagon, label="pad_gpio_in", color="black", fontcolor="black" ];
n51 [ shape=octagon, label="pad_gpio_out", color="black", fontcolor="black" ];
n52 [ shape=octagon, label="pad_gpio_outenb", color="black", fontcolor="black" ];
n53 [ shape=octagon, label="pad_gpio_dm", color="black", fontcolor="black" ];
n54 [ shape=octagon, label="pad_gpio_ana_pol", color="black", fontcolor="black" ];
n55 [ shape=octagon, label="pad_gpio_ana_sel", color="black", fontcolor="black" ];
n56 [ shape=octagon, label="pad_gpio_ana_en", color="black", fontcolor="black" ];
n57 [ shape=octagon, label="pad_gpio_ib_mode_sel", color="black", fontcolor="black" ];
n58 [ shape=octagon, label="pad_gpio_inenb", color="black", fontcolor="black" ];
n59 [ shape=octagon, label="pad_gpio_vtrip_sel", color="black", fontcolor="black" ];
n60 [ shape=octagon, label="pad_gpio_slow_sel", color="black", fontcolor="black" ];
n61 [ shape=octagon, label="pad_gpio_holdover", color="black", fontcolor="black" ];
n62 [ shape=octagon, label="user_gpio_in", color="black", fontcolor="black" ];
n63 [ shape=octagon, label="user_gpio_oeb", color="black", fontcolor="black" ];
n64 [ shape=octagon, label="user_gpio_out", color="black", fontcolor="black" ];
n65 [ shape=octagon, label="serial_data_out", color="black", fontcolor="black" ];
n66 [ shape=octagon, label="serial_data_in", color="black", fontcolor="black" ];
n67 [ shape=octagon, label="mgmt_gpio_oeb", color="black", fontcolor="black" ];
n68 [ shape=octagon, label="mgmt_gpio_out", color="black", fontcolor="black" ];
n69 [ shape=octagon, label="mgmt_gpio_in", color="black", fontcolor="black" ];
n70 [ shape=octagon, label="serial_clock", color="black", fontcolor="black" ];
n71 [ shape=octagon, label="resetn", color="black", fontcolor="black" ];
c74 [ shape=record, label="{{<p72> A}|$23\n$not|{<p73> Y}}" ];
c77 [ shape=record, label="{{<p72> A|<p75> TE}|gpio_in_buf\nsky130_fd_sc_hd__einvp_8|{<p76> Z}}" ];
v0 [ label="" ];
c80 [ shape=record, label="{{}|gpio_logic_high\nsky130_fd_sc_hd__conb_1|{<p78> HI|<p79> LO}}" ];
c83 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$22\n$mux|{<p73> Y}}" ];
c84 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$21\n$mux|{<p73> Y}}" ];
c85 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$20\n$mux|{<p73> Y}}" ];
c86 [ shape=record, label="{{<p72> A}|$19\n$not|{<p73> Y}}" ];
x1 [ shape=record, style=rounded, label="<s0> 0:0 - 0:0 " ];
x1:e -> c86:p72:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", label=""];
v2 [ label="2'01" ];
c87 [ shape=record, label="{{<p72> A|<p81> B}|$18\n$eq|{<p73> Y}}" ];
x3 [ shape=record, style=rounded, label="<s0> 2:1 - 1:0 " ];
x3:e -> c87:p72:w [arrowhead=odiamond, arrowtail=odiamond, dir=both, color="black", style="setlinewidth(3)", label=""];
v4 [ label="1'1" ];
c88 [ shape=record, label="{{<p72> A|<p81> B}|$17\n$eq|{<p73> Y}}" ];
c89 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$16\n$mux|{<p73> Y}}" ];
v5 [ label="1'0" ];
c90 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$15\n$mux|{<p73> Y}}" ];
v6 [ label="1'1" ];
c91 [ shape=record, label="{{<p72> A|<p81> B}|$14\n$eq|{<p73> Y}}" ];
v7 [ label="1'0" ];
c92 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$13\n$mux|{<p73> Y}}" ];
v8 [ label="1'z" ];
c93 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$12\n$mux|{<p73> Y}}" ];
v9 [ label="1'0" ];
c94 [ shape=record, label="{{<p72> A|<p81> B}|$11\n$eq|{<p73> Y}}" ];
v10 [ label="1'0" ];
c95 [ shape=record, label="{{<p72> A|<p81> B|<p82> S}|$10\n$mux|{<p73> Y}}" ];
v11 [ label="1'1" ];
c96 [ shape=record, label="{{<p72> A|<p81> B}|$9\n$eq|{<p73> Y}}" ];
v12 [ label="1'1" ];
c97 [ shape=record, label="{{<p72> A|<p81> B}|$7\n$eq|{<p73> Y}}" ];
c98 [ shape=record, label="{{<p72> A|<p81> B}|$5\n$and|{<p73> Y}}" ];
c99 [ shape=record, label="{{<p72> A}|$4\n$not|{<p73> Y}}" ];
c100 [ shape=record, label="{{<p72> A|<p81> B}|$3\n$and|{<p73> Y}}" ];
c101 [ shape=record, label="{{<p72> A}|$2\n$not|{<p73> Y}}" ];
c102 [ shape=record, label="{{<p72> A}|$1\n$not|{<p73> Y}}" ];
x14 [ shape=record, style=rounded, label="<s0> 0:0 - 0:0 " ];
x15 [ shape=record, style=rounded, label="<s0> 1:1 - 0:0 " ];
x16 [ shape=record, style=rounded, label="<s0> 2:2 - 0:0 " ];
x17 [ shape=record, style=rounded, label="<s0> 3:3 - 0:0 " ];
x18 [ shape=record, style=rounded, label="<s0> 4:4 - 0:0 " ];
x19 [ shape=record, style=rounded, label="<s0> 5:5 - 0:0 " ];
x20 [ shape=record, style=rounded, label="<s0> 6:6 - 0:0 " ];
x21 [ shape=record, style=rounded, label="<s0> 7:7 - 0:0 " ];
x22 [ shape=record, style=rounded, label="<s0> 8:8 - 0:0 " ];
x23 [ shape=record, style=rounded, label="<s0> 9:9 - 0:0 " ];
x24 [ shape=record, style=rounded, label="<s0> 12:10 - 2:0 " ];
p13 [shape=box, style=rounded, label="PROC $8\n/project/openlane/gpio_control_block/../../verilog/rtl/gpio_control_block.v:151.5-180.8"];
x26 [ shape=record, style=rounded, label="<s1> 11:0 - 12:1 |<s0> 0:0 - 0:0 " ];
p25 [shape=box, style=rounded, label="PROC $6\n/project/openlane/gpio_control_block/../../verilog/rtl/gpio_control_block.v:141.5-149.8"];
x27 [ shape=record, style=rounded, label="<s0> 12:12 - 0:0 " ];
x28 [shape=box, style=rounded, label="BUF"];
x29 [shape=box, style=rounded, label="BUF"];
x30 [shape=box, style=rounded, label="BUF"];
x31 [shape=box, style=rounded, label="BUF"];
x32 [shape=box, style=rounded, label="BUF"];
x33 [shape=box, style=rounded, label="BUF"];
x34 [shape=box, style=rounded, label="BUF"];
x35 [shape=box, style=rounded, label="BUF"];
x36 [shape=box, style=rounded, label="BUF"];
x37 [shape=box, style=rounded, label="BUF"];
x38 [shape=box, style=rounded, label="BUF"];
x39 [shape=box, style=rounded, label="BUF"];
x40 [shape=box, style=rounded, label="BUF"];
x41 [shape=box, style=rounded, label="BUF"];
x42 [shape=box, style=rounded, label="BUF"];
c74:p73:e -> c77:p72:w [color="black", label=""];
c91:p73:e -> c90:p82:w [color="black", label=""];
c92:p73:e -> x40:w:w [color="black", label=""];
c93:p73:e -> c92:p81:w [color="black", label=""];
c94:p73:e -> c93:p82:w [color="black", label=""];
c95:p73:e -> x39:w:w [color="black", label=""];
c96:p73:e -> p13:w [color="black", label=""];
c83:p73:e -> x42:w:w [color="black", label=""];
c97:p73:e -> p25:w [color="black", label=""];
c98:p73:e -> x29:w:w [color="black", label=""];
c84:p73:e -> c83:p81:w [color="black", label=""];
c99:p73:e -> c98:p72:w [color="black", label=""];
c100:p73:e -> x28:w:w [color="black", label=""];
c101:p73:e -> c100:p81:w [color="black", label=""];
c102:p73:e -> c100:p72:w [color="black", label=""];
c80:p78:e -> n34:w [color="black", label=""];
n34:e -> c77:p75:w [color="black", label=""];
x28:e:e -> n35:w [color="black", label=""];
n35:e -> c96:p72:w [color="black", label=""];
n35:e -> c97:p72:w [color="black", label=""];
n35:e -> p13:w [color="black", label=""];
n35:e -> p25:w [color="black", label=""];
x29:e:e -> n36:w [color="black", label=""];
n36:e -> p13:w [color="black", label=""];
p25:e -> n37:w [color="black", label=""];
n37:e -> p25:w [color="black", label=""];
n37:e -> x14:s0:w [color="black", label=""];
n37:e -> x15:s0:w [color="black", label=""];
n37:e -> x16:s0:w [color="black", label=""];
n37:e -> x17:s0:w [color="black", label=""];
n37:e -> x18:s0:w [color="black", label=""];
n37:e -> x19:s0:w [color="black", label=""];
n37:e -> x20:s0:w [color="black", label=""];
n37:e -> x21:s0:w [color="black", label=""];
n37:e -> x22:s0:w [color="black", label=""];
n37:e -> x23:s0:w [color="black", label=""];
n37:e -> x24:s0:w [color="black", label=""];
n37:e -> x26:s1:w [color="black", label=""];
n37:e -> x27:s0:w [color="black", label=""];
x39:e:e -> n38:w [color="black", label=""];
n38:e -> c74:p72:w [color="black", label=""];
p13:e -> n39:w [color="black", label=""];
n39:e -> p13:w [color="black", label=""];
n39:e -> x36:w:w [color="black", label=""];
c85:p73:e -> c84:p81:w [color="black", label=""];
p13:e -> n40:w [color="black", label=""];
n40:e -> p13:w [color="black", label=""];
n40:e -> x35:w:w [color="black", label=""];
p13:e -> n41:w [color="black", label=""];
n41:e -> p13:w [color="black", label=""];
n41:e -> x34:w:w [color="black", label=""];
p13:e -> n42:w [color="black", style="setlinewidth(3)", label=""];
n42:e -> p13:w [color="black", style="setlinewidth(3)", label=""];
n42:e -> x1:s0:w [color="black", style="setlinewidth(3)", label=""];
n42:e -> x37:w:w [color="black", style="setlinewidth(3)", label=""];
n42:e -> x3:s0:w [color="black", style="setlinewidth(3)", label=""];
p13:e -> n43:w [color="black", label=""];
n43:e -> c90:p81:w [color="black", label=""];
n43:e -> p13:w [color="black", label=""];
p13:e -> n44:w [color="black", label=""];
n44:e -> p13:w [color="black", label=""];
n44:e -> x33:w:w [color="black", label=""];
p13:e -> n45:w [color="black", label=""];
n45:e -> c94:p72:w [color="black", label=""];
n45:e -> p13:w [color="black", label=""];
n45:e -> x38:w:w [color="black", label=""];
p13:e -> n46:w [color="black", label=""];
n46:e -> p13:w [color="black", label=""];
n46:e -> x32:w:w [color="black", label=""];
p13:e -> n47:w [color="black", label=""];
n47:e -> p13:w [color="black", label=""];
n47:e -> x31:w:w [color="black", label=""];
p13:e -> n48:w [color="black", label=""];
n48:e -> p13:w [color="black", label=""];
n48:e -> x30:w:w [color="black", label=""];
p13:e -> n49:w [color="black", label=""];
n49:e -> c83:p82:w [color="black", label=""];
n49:e -> c89:p82:w [color="black", label=""];
n49:e -> c92:p82:w [color="black", label=""];
n49:e -> c95:p82:w [color="black", label=""];
n49:e -> p13:w [color="black", label=""];
c86:p73:e -> c85:p81:w [color="black", label=""];
n50:e -> c93:p81:w [color="black", label=""];
n50:e -> c95:p72:w [color="black", label=""];
x42:e:e -> n51:w [color="black", label=""];
x41:e:e -> n52:w [color="black", label=""];
x37:e:e -> n53:w [color="black", style="setlinewidth(3)", label=""];
x36:e:e -> n54:w [color="black", label=""];
x35:e:e -> n55:w [color="black", label=""];
x34:e:e -> n56:w [color="black", label=""];
x33:e:e -> n57:w [color="black", label=""];
x38:e:e -> n58:w [color="black", label=""];
x32:e:e -> n59:w [color="black", label=""];
c87:p73:e -> c85:p82:w [color="black", label=""];
x31:e:e -> n60:w [color="black", label=""];
x30:e:e -> n61:w [color="black", label=""];
c77:p76:e -> n62:w [color="black", label=""];
n63:e -> c89:p72:w [color="black", label=""];
n64:e -> c83:p72:w [color="black", label=""];
x27:e -> n65:w [color="black", label=""];
n66:e -> x26:s0:w [color="black", label=""];
n67:e -> c88:p72:w [color="black", label=""];
n67:e -> c91:p72:w [color="black", label=""];
n68:e -> c84:p72:w [color="black", label=""];
n68:e -> c85:p72:w [color="black", label=""];
x40:e:e -> n69:w [color="black", label=""];
c88:p73:e -> c84:p82:w [color="black", label=""];
n70:e -> c101:p72:w [color="black", label=""];
n70:e -> c98:p81:w [color="black", label=""];
n70:e -> p25:w [color="black", label=""];
n71:e -> c102:p72:w [color="black", label=""];
n71:e -> c99:p72:w [color="black", label=""];
c89:p73:e -> x41:w:w [color="black", label=""];
c90:p73:e -> c89:p81:w [color="black", label=""];
c80:p79:e -> v0:w [color="black", label=""];
v10:e -> c95:p81:w [color="black", label=""];
v11:e -> c96:p81:w [color="black", label=""];
v12:e -> c97:p81:w [color="black", label=""];
v2:e -> c87:p81:w [color="black", style="setlinewidth(3)", label=""];
v4:e -> c88:p81:w [color="black", label=""];
v5:e -> c90:p72:w [color="black", label=""];
v6:e -> c91:p81:w [color="black", label=""];
v7:e -> c92:p72:w [color="black", label=""];
v8:e -> c93:p72:w [color="black", label=""];
v9:e -> c94:p81:w [color="black", label=""];
x14:e -> p13:w [color="black", label=""];
x15:e -> p13:w [color="black", label=""];
x16:e -> p13:w [color="black", label=""];
x17:e -> p13:w [color="black", label=""];
x18:e -> p13:w [color="black", label=""];
x19:e -> p13:w [color="black", label=""];
x20:e -> p13:w [color="black", label=""];
x21:e -> p13:w [color="black", label=""];
x22:e -> p13:w [color="black", label=""];
x23:e -> p13:w [color="black", label=""];
x24:e -> p13:w [color="black", style="setlinewidth(3)", label=""];
x26:e -> p25:w [color="black", style="setlinewidth(3)", label=""];
}