From 5b732a0b34698a042cf9cf4c8a0a2138216e3434 Mon Sep 17 00:00:00 2001 From: Dennis Brentjes Date: Sat, 13 Jun 2026 19:02:58 +0200 Subject: [PATCH] Adds diagrams. --- .devcontainer/Dockerfile | 1 + diagrams/README.md | 26 + diagrams/bbatop_blocks.svg | 2845 ++++ diagrams/rx_frame_assembler.svg | 5379 +++++++ diagrams/spi_mode3_slave.svg | 2127 +++ diagrams/spram_arbiter.svg | 1368 ++ diagrams/status_panel.svg | 3602 +++++ diagrams/tx_frame_drain.svg | 2257 +++ diagrams/w5100_master.svg | 22686 ++++++++++++++++++++++++++++++ exi_bba/diagram.py | 96 + 10 files changed, 40387 insertions(+) create mode 100644 diagrams/README.md create mode 100644 diagrams/bbatop_blocks.svg create mode 100644 diagrams/rx_frame_assembler.svg create mode 100644 diagrams/spi_mode3_slave.svg create mode 100644 diagrams/spram_arbiter.svg create mode 100644 diagrams/status_panel.svg create mode 100644 diagrams/tx_frame_drain.svg create mode 100644 diagrams/w5100_master.svg create mode 100644 exi_bba/diagram.py diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 2f97a41..9e0001f 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -6,6 +6,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ nextpnr-ice40 \ fpga-icestorm \ nodejs npm \ + graphviz \ && rm -rf /var/lib/apt/lists/* RUN npm install -g @anthropic-ai/claude-code diff --git a/diagrams/README.md b/diagrams/README.md new file mode 100644 index 0000000..4c7c837 --- /dev/null +++ b/diagrams/README.md @@ -0,0 +1,26 @@ +# Schematics + +Synthesized (RTL-level) schematics of the BBA design, generated from the actual +Amaranth elaboration via yosys + graphviz. Regenerate with: + +```bash +python -m exi_bba.diagram # all of the below +python -m exi_bba.diagram w5100_master # just one +``` + +Open the `.svg` files in a browser or VS Code (they're vector — zoom freely). + +| File | What it shows | Size | +|---|---|---| +| `bbatop_blocks.svg` | **Top-level block diagram** — BBATop's submodules (ExiCapture, register file, SPRAM arbiter, RX/TX engines, W5100 master, status panel) as boxes with their interconnections. Start here. | 186 cells | +| `spi_mode3_slave.svg` | EXI Mode-3 SPI bit engine (the capture-domain front-end) — shift registers, bit counter, MISO/MOSI logic. | 109 cells | +| `spram_arbiter.svg` | SPRAM priority arbiter — ETH-write-vs-EXI-read mux + the SB_SPRAM read/write ports. | 80 cells | +| `tx_frame_drain.svg` | TX drain FSM — pulls frames from the FIFOs and streams them to the ethernet master with SOF/EOF. | 124 cells | +| `status_panel.svg` | Bring-up panel — heartbeat counter, activity-LED stretchers, button debounce. | 180 cells | +| `rx_frame_assembler.svg` | RX assembler — writes received frames into the SPRAM ring and advances RWP. | 284 cells | +| `w5100_master.svg` | **Full W5100 parallel master** (bus engine + transaction engine + init/TX/RX FSM). Poster-sized (~1100 cells) — zoom in. | 1129 cells | + +These are RTL views: real muxes (`$mux`), adders (`$add`), comparators (`$eq`), +and flip-flops (`$dff`/`$adff`) — *not* the post-place LUT soup. The whole +flattened-and-mapped `BBATop` would be ~2300 LUTs and illegible, which is why the +top level is shown as a block diagram and the leaves as per-module RTL. diff --git a/diagrams/bbatop_blocks.svg b/diagrams/bbatop_blocks.svg new file mode 100644 index 0000000..bd2ce67 --- /dev/null +++ b/diagrams/bbatop_blocks.svg @@ -0,0 +1,2845 @@ + + + + + + +bbatop_blocks + + + +n7 + +w5100_rst_n + + + +n8 + +w5100_wr_n + + + +x11 + +BUF + + + +n8:e->x11:w + + + + + +n9 + +w5100_rd_n + + + +x10 + +BUF + + + +n9:e->x10:w + + + + + +n10 + +w5100_cs_n + + + +x9 + +BUF + + + +n10:e->x9:w + + + + + +n11 + +w5100_data_oe + + + +x7 + +BUF + + + +n11:e->x7:w + + + + + +n12 + +w5100_data_o + + + +x6 + +BUF + + + +n12:e->x6:w + + + + + +n13 + +w5100_addr + + + +x5 + +BUF + + + +n13:e->x5:w + + + + + +n14 + +int_n + + + +x4 + +BUF + + + +n14:e->x4:w + + + + + +n15 + +exi_miso + + + +x3 + +BUF + + + +n15:e->x3:w + + + + + +n16 + +rst + + + +c128 + +bus_data_i + +clk + +init_req + +port$825$0 + +port$827$0 + +port$829$0 + +port$831$0 + +port$833$0 + +port$835$0 + +rst + +rx_ready + +tx_data + +tx_eof + +tx_sof + +tx_valid + +w5100_int_n + +eth +bbatop_blocks.eth + +bus_addr + +bus_data_o + +bus_data_oe + +cs_n + +rd_n + +rx_data + +rx_eof + +rx_sof + +rx_valid + +tx_ready + +wr_n + + + +n16:e->c128:w + + + + + +c133 + +clk + +rst + +tx_bytes_r_data + +tx_bytes_r_rdy + +tx_ctrl_r_data + +tx_ctrl_r_rdy + +tx_ready + +drain +bbatop_blocks.drain + +hold_data + +hold_eof + +hold_sof + +hold_valid + +tx_bytes_r_en + +tx_ctrl_r_en + +tx_irq + + + +n16:e->c133:w + + + + + +c134 + +clk + +eth_wr_ready + +rst + +rx_data + +rx_enabled + +rx_eof + +rx_sof + +rx_valid + +rx_wptr_w_rdy + +asm +bbatop_blocks.asm + +eth_wr_addr + +eth_wr_data + +eth_wr_valid + +rx_irq + +rx_ready + +rx_wptr_w_data + +rx_wptr_w_en + + + +n16:e->c134:w + + + + + +c135 + +clk + +eth_wr_addr + +eth_wr_data + +eth_wr_valid + +exi_req_addr + +exi_req_valid + +rst + +arb +bbatop_blocks.arb + +eth_wr_ready + +exi_req_ready + +exi_rsp_data + +exi_rsp_valid + + + +n16:e->c135:w + + + + + +c151 + +clk + +cs_active + +exi_clk + +exi_rst + +i + +i$40 + +r_en + +r_en$14 + +r_en$20 + +rst + +rx_data + +rx_rdy + +tx_rdy + +w_data + +w_data$24 + +w_en + +w_en$26 + +reg +bbatop_blocks.reg + +exi_int_n + +ncra_rst_o + +ncra_sr + +par0 + +par1 + +par2 + +par3 + +par4 + +par5 + +rx_en + +rx_wptr_w_rdy + +spram_req_r_data + +spram_req_r_rdy + +tx_bytes_r_data + +tx_bytes_r_rdy + +tx_ctrl_r_data + +tx_ctrl_r_rdy + +tx_data + +tx_en + + + +n16:e->c151:w + + + + + +n17 + +clk + + + +n17:e->c128:w + + + + + +n17:e->c133:w + + + + + +n17:e->c134:w + + + + + +n17:e->c135:w + + + + + +n17:e->c151:w + + + + + +n18 + +capture_rst + + + +c155 + +capture_clk + +capture_rst + +exi_clk + +exi_rst + +r_en + +spi_clk + +spi_cs_n + +spi_mosi + +w_data$18 + +w_en$20 + +cap +bbatop_blocks.cap + +cs_active$37 + +rx_data + +rx_rdy + +spi_miso + +tx_rdy + + + +n18:e->c155:w + + + + + +n19 + +capture_clk + + + +n19:e->c155:w + + + + + +n20 + +exi_rst + + + +n20:e->c151:w + + + + + +n20:e->c155:w + + + + + +n21 + +exi_clk$14 + + + +n21:e->c151:w + + + + + +n21:e->c155:w + + + + + +x56 + +BUF + + + +n21:e->x56:w + + + + + +n22 + +w5100_int_n + + + +n22:e->c128:w + + + + + +x12 + +BUF + + + +n22:e->x12:w + + + + + +n23 + +w5100_data_i + + + +n23:e->c128:w + + + + + +x8 + +BUF + + + +n23:e->x8:w + + + + + +n24 + +exi_cs_n + + + +n24:e->c155:w + + + + + +x2 + +BUF + + + +n24:e->x2:w + + + + + +n25 + +exi_mosi + + + +n25:e->c155:w + + + + + +x1 + +BUF + + + +n25:e->x1:w + + + + + +n26 + +exi_clk + + + +n26:e->c155:w + + + + + +x0 + +BUF + + + +n26:e->x0:w + + + + + +n27 + +exi_clk$114 + + + +n28 + +ncra_rst_o + + + +n29 + +init_req + + + +n29:e->c128:w + + + + + +x55 + +BUF + + + +n29:e->x55:w + + + + + +n30 + +ncra_sr + + + +n31 + +rx_enabled + + + +n31:e->c134:w + + + + + +x54 + +BUF + + + +n31:e->x54:w + + + + + +n32 + +par$109 + + + +n33 + +par + + + +n34 + +tx_irq + + + +n35 + +tx_irq_i + + + +n35:e->c151:w + + + + + +x51 + +BUF + + + +n35:e->x51:w + + + + + +n36 + +rx_irq + + + +n37 + +rx_irq_i + + + +n37:e->c151:w + + + + + +x50 + +BUF + + + +n37:e->x50:w + + + + + +n38 + +rx_wptr_w_rdy$103 + + + +n39 + +rx_wptr_w_rdy + + + +n39:e->c134:w + + + + + +x49 + +BUF + + + +n39:e->x49:w + + + + + +n40 + +rx_wptr_w_en$101 + + + +n41 + +rx_wptr_w_en + + + +n41:e->c151:w + + + + + +x48 + +BUF + + + +n41:e->x48:w + + + + + +n42 + +rx_wptr_w_data$99 + + + +n43 + +rx_wptr_w_data + + + +n43:e->c151:w + + + + + +x47 + +BUF + + + +n43:e->x47:w + + + + + +n44 + +eth_wr_ready$97 + + + +n45 + +eth_wr_ready + + + +n45:e->c134:w + + + + + +x46 + +BUF + + + +n45:e->x46:w + + + + + +n46 + +eth_wr_valid$95 + + + +n47 + +eth_wr_valid + + + +n47:e->c135:w + + + + + +x45 + +BUF + + + +n47:e->x45:w + + + + + +n48 + +eth_wr_data$93 + + + +n49 + +eth_wr_data + + + +n49:e->c135:w + + + + + +x44 + +BUF + + + +n49:e->x44:w + + + + + +n50 + +eth_wr_addr$91 + + + +n51 + +eth_wr_addr + + + +n51:e->c135:w + + + + + +x43 + +BUF + + + +n51:e->x43:w + + + + + +n52 + +rx_eof$89 + + + +n53 + +rx_eof + + + +n53:e->c134:w + + + + + +x42 + +BUF + + + +n53:e->x42:w + + + + + +n54 + +rx_sof$87 + + + +n55 + +rx_sof + + + +n55:e->c134:w + + + + + +x41 + +BUF + + + +n55:e->x41:w + + + + + +n56 + +rx_ready$85 + + + +n57 + +rx_ready + + + +n57:e->c128:w + + + + + +x40 + +BUF + + + +n57:e->x40:w + + + + + +n58 + +rx_valid$83 + + + +n59 + +rx_valid + + + +n59:e->c134:w + + + + + +x39 + +BUF + + + +n59:e->x39:w + + + + + +n60 + +rx_data$81 + + + +n61 + +rx_data$80 + + + +n61:e->c134:w + + + + + +x38 + +BUF + + + +n61:e->x38:w + + + + + +n62 + +tx_eof$79 + + + +n63 + +tx_eof + + + +n63:e->c128:w + + + + + +x37 + +BUF + + + +n63:e->x37:w + + + + + +n64 + +tx_sof$77 + + + +n65 + +tx_sof + + + +n65:e->c128:w + + + + + +x36 + +BUF + + + +n65:e->x36:w + + + + + +n66 + +tx_ready$75 + + + +n67 + +tx_ready + + + +n67:e->c133:w + + + + + +x35 + +BUF + + + +n67:e->x35:w + + + + + +n68 + +tx_valid$73 + + + +n69 + +tx_valid + + + +n69:e->c128:w + + + + + +x34 + +BUF + + + +n69:e->x34:w + + + + + +n70 + +tx_data$71 + + + +n71 + +tx_data$70 + + + +n71:e->c128:w + + + + + +x33 + +BUF + + + +n71:e->x33:w + + + + + +n72 + +tx_ctrl_r_en$69 + + + +n73 + +tx_ctrl_r_en + + + +n73:e->c151:w + + + + + +x32 + +BUF + + + +n73:e->x32:w + + + + + +n74 + +tx_ctrl_r_rdy$67 + + + +n75 + +tx_ctrl_r_rdy + + + +n75:e->c133:w + + + + + +x31 + +BUF + + + +n75:e->x31:w + + + + + +n76 + +tx_ctrl_r_data$65 + + + +n77 + +tx_ctrl_r_data + + + +n77:e->c133:w + + + + + +x30 + +BUF + + + +n77:e->x30:w + + + + + +n78 + +tx_bytes_r_en$63 + + + +n79 + +tx_bytes_r_en + + + +n79:e->c151:w + + + + + +x29 + +BUF + + + +n79:e->x29:w + + + + + +n80 + +tx_bytes_r_rdy$61 + + + +n81 + +tx_bytes_r_rdy + + + +n81:e->c133:w + + + + + +x28 + +BUF + + + +n81:e->x28:w + + + + + +n82 + +tx_bytes_r_data$59 + + + +n83 + +tx_bytes_r_data + + + +n83:e->c133:w + + + + + +x27 + +BUF + + + +n83:e->x27:w + + + + + +n84 + +exi_rsp_valid + + + +n85 + +spram_rsp_w_en + + + +n85:e->c151:w + + + + + +x26 + +BUF + + + +n85:e->x26:w + + + + + +n86 + +exi_rsp_data + + + +n87 + +spram_rsp_w_data + + + +n87:e->c151:w + + + + + +x25 + +BUF + + + +n87:e->x25:w + + + + + +n88 + +exi_req_ready + + + +n89 + +spram_req_r_en + + + +n89:e->c151:w + + + + + +x24 + +BUF + + + +n89:e->x24:w + + + + + +n90 + +spram_req_r_rdy + + + +n91 + +exi_req_valid + + + +n91:e->c135:w + + + + + +x23 + +BUF + + + +n91:e->x23:w + + + + + +n92 + +spram_req_r_data + + + +n93 + +exi_req_addr + + + +n93:e->c135:w + + + + + +x22 + +BUF + + + +n93:e->x22:w + + + + + +n94 + +cs_active$47 + + + +n95 + +cs_active + + + +n95:e->c151:w + + + + + +x21 + +BUF + + + +n95:e->x21:w + + + + + +n96 + +tx_rdy$45 + + + +n97 + +tx_rdy + + + +n97:e->c151:w + + + + + +x20 + +BUF + + + +n97:e->x20:w + + + + + +n98 + +tx_en$43 + + + +n99 + +tx_en + + + +n99:e->c155:w + + + + + +x19 + +BUF + + + +n99:e->x19:w + + + + + +n100 + +tx_data$41 + + + +n101 + +tx_data + + + +n101:e->c155:w + + + + + +x18 + +BUF + + + +n101:e->x18:w + + + + + +n102 + +rx_en$39 + + + +n103 + +rx_en + + + +n103:e->c155:w + + + + + +x17 + +BUF + + + +n103:e->x17:w + + + + + +n104 + +rx_rdy$37 + + + +n105 + +rx_rdy + + + +n105:e->c151:w + + + + + +x16 + +BUF + + + +n105:e->x16:w + + + + + +n106 + +rx_data$35 + + + +n107 + +rx_data + + + +n107:e->c151:w + + + + + +x15 + +BUF + + + +n107:e->x15:w + + + + + +n108 + +w5100_rst_n$33 + + + +n109 + +w5100_int_n$32 + + + +n110 + +wr_n + + + +n111 + +rd_n + + + +n112 + +cs_n + + + +n113 + +bus_data_i + + + +n114 + +bus_data_oe + + + +n115 + +bus_data_o + + + +n116 + +bus_addr + + + +n117 + +exi_int_n + + + +n118 + +spi_miso + + + +n119 + +spi_cs_n + + + +n120 + +spi_mosi + + + +n121 + +spi_clk + + + +c128:e->n8:w + + + + + +c128:e->n9:w + + + + + +c128:e->n10:w + + + + + +c128:e->n11:w + + + + + +c128:e->n12:w + + + + + +c128:e->n13:w + + + + + +c128:e->n53:w + + + + + +c128:e->n55:w + + + + + +c128:e->n59:w + + + + + +c128:e->n61:w + + + + + +c128:e->n67:w + + + + + +c133:e->n35:w + + + + + +c133:e->n63:w + + + + + +c133:e->n65:w + + + + + +c133:e->n69:w + + + + + +c133:e->n71:w + + + + + +c133:e->n73:w + + + + + +c133:e->n79:w + + + + + +c134:e->n37:w + + + + + +c134:e->n41:w + + + + + +c134:e->n43:w + + + + + +c134:e->n47:w + + + + + +c134:e->n49:w + + + + + +c134:e->n51:w + + + + + +c134:e->n57:w + + + + + +c135:e->n45:w + + + + + +c135:e->n85:w + + + + + +c135:e->n87:w + + + + + +c135:e->n89:w + + + + + +c151:e->n14:w + + + + + +c151:e->n29:w + + + + + +c151:e->n31:w + + + + + +c151:e->n39:w + + + + + +c151:e->n75:w + + + + + +c151:e->n77:w + + + + + +c151:e->n81:w + + + + + +c151:e->n83:w + + + + + +c151:e->n91:w + + + + + +c151:e->n93:w + + + + + +c151:e->n99:w + + + + + +c151:e->n101:w + + + + + +c151:e->n103:w + + + + + +n1 + + + + +c151:e->n1:w + + + + + +n2 + + + + +c151:e->n2:w + + + + + +n3 + + + + +c151:e->n3:w + + + + + +n4 + + + + +c151:e->n4:w + + + + + +n5 + + + + +c151:e->n5:w + + + + + +n6 + + + + +c151:e->n6:w + + + + + +c155:e->n15:w + + + + + +c155:e->n95:w + + + + + +c155:e->n97:w + + + + + +c155:e->n105:w + + + + + +c155:e->n107:w + + + + + +x0:e->n121:w + + + + + +x1:e->n120:w + + + + + +x2:e->n119:w + + + + + +x3:e->n118:w + + + + + +x4:e->n117:w + + + + + +x5:e->n116:w + + + + + +x6:e->n115:w + + + + + +x7:e->n114:w + + + + + +x8:e->n113:w + + + + + +x9:e->n112:w + + + + + +x10:e->n111:w + + + + + +x11:e->n110:w + + + + + +x12:e->n109:w + + + + + +v13 + +1'1 + + + +x14 + +BUF + + + +v13:e->x14:w + + + + + +x14:e->n108:w + + + + + +x15:e->n106:w + + + + + +x16:e->n104:w + + + + + +x17:e->n102:w + + + + + +x18:e->n100:w + + + + + +x19:e->n98:w + + + + + +x20:e->n96:w + + + + + +x21:e->n94:w + + + + + +x22:e->n92:w + + + + + +x23:e->n90:w + + + + + +x24:e->n88:w + + + + + +x25:e->n86:w + + + + + +x26:e->n84:w + + + + + +x27:e->n82:w + + + + + +x28:e->n80:w + + + + + +x29:e->n78:w + + + + + +x30:e->n76:w + + + + + +x31:e->n74:w + + + + + +x32:e->n72:w + + + + + +x33:e->n70:w + + + + + +x34:e->n68:w + + + + + +x35:e->n66:w + + + + + +x36:e->n64:w + + + + + +x37:e->n62:w + + + + + +x38:e->n60:w + + + + + +x39:e->n58:w + + + + + +x40:e->n56:w + + + + + +x41:e->n54:w + + + + + +x42:e->n52:w + + + + + +x43:e->n50:w + + + + + +x44:e->n48:w + + + + + +x45:e->n46:w + + + + + +x46:e->n44:w + + + + + +x47:e->n42:w + + + + + +x48:e->n40:w + + + + + +x49:e->n38:w + + + + + +x50:e->n36:w + + + + + +x51:e->n34:w + + + + + +x52 + +7:0 - 47:40 + +7:0 - 39:32 + +7:0 - 31:24 + +7:0 - 23:16 + +7:0 - 15:8 + +7:0 - 7:0 + + + +x52:e->n33:w + + + + + +x53 + +7:0 - 47:40 + +7:0 - 39:32 + +7:0 - 31:24 + +7:0 - 23:16 + +7:0 - 15:8 + +7:0 - 7:0 + + + +x53:e->n32:w + + + + + +x54:e->n30:w + + + + + +x55:e->n28:w + + + + + +x56:e->n27:w + + + + + +v57 + +1'1 + + + +x58 + +BUF + + + +v57:e->x58:w + + + + + +x58:e->n7:w + + + + + +n1:e->c128:w + + + + + +n1:e->x52:w + + + + + +n1:e->x53:w + + + + + +n2:e->c128:w + + + + + +n2:e->x52:w + + + + + +n2:e->x53:w + + + + + +n3:e->c128:w + + + + + +n3:e->x52:w + + + + + +n3:e->x53:w + + + + + +n4:e->c128:w + + + + + +n4:e->x52:w + + + + + +n4:e->x53:w + + + + + +n5:e->c128:w + + + + + +n5:e->x52:w + + + + + +n5:e->x53:w + + + + + +n6:e->c128:w + + + + + +n6:e->x52:w + + + + + +n6:e->x53:w + + + + + diff --git a/diagrams/rx_frame_assembler.svg b/diagrams/rx_frame_assembler.svg new file mode 100644 index 0000000..4297d58 --- /dev/null +++ b/diagrams/rx_frame_assembler.svg @@ -0,0 +1,5379 @@ + + + + + + +rx_frame_assembler + + + +n90 + +clk + + + +c141 + +CLK + +D + +EN + +SRST + +$152 +$sdffe + +Q + + + +n90:e->c141:w + + + + + +c142 + +CLK + +D + +EN + +SRST + +$160 +$sdffe + +Q + + + +n90:e->c142:w + + + + + +c143 + +CLK + +D + +EN + +SRST + +$168 +$sdffe + +Q + + + +n90:e->c143:w + + + + + +c144 + +CLK + +D + +EN + +SRST + +$192 +$sdffe + +Q + + + +n90:e->c144:w + + + + + +c145 + +CLK + +D + +EN + +SRST + +$204 +$sdffe + +Q + + + +n90:e->c145:w + + + + + +c146 + +CLK + +D + +EN + +SRST + +$214 +$sdffe + +Q + + + +n90:e->c146:w + + + + + +c147 + +CLK + +D + +EN + +SRST + +$230 +$sdffe + +Q + + + +n90:e->c147:w + + + + + +c148 + +CLK + +D + +SRST + +$239 +$sdff + +Q + + + +n90:e->c148:w + + + + + +c149 + +CLK + +D + +EN + +SRST + +$245 +$sdffe + +Q + + + +n90:e->c149:w + + + + + +c150 + +CLK + +D + +EN + +SRST + +$249 +$sdffe + +Q + + + +n90:e->c150:w + + + + + +c151 + +CLK + +D + +EN + +SRST + +$251 +$sdffe + +Q + + + +n90:e->c151:w + + + + + +c152 + +CLK + +D + +EN + +SRST + +$254 +$sdffe + +Q + + + +n90:e->c152:w + + + + + +n91 + +data_ctr + + + +c123 + +A + +B + +$57 +$add + +Y + + + +n91:e->c123:w + + + + + +c130 + +A + +B + +$66 +$add + +Y + + + +n91:e->c130:w + + + + + +n92 + +desc_base + + + +x6 + +15:8 - 15:8 + +0 -> 7:0 + + + +n92:e->x6:w + + + + + +x8 + +15:8 - 15:8 + +0 -> 7:0 + + + +n92:e->x8:w + + + + + +n93 + +desc_ctr + + + +c118 + +A + +B + +$50 +$eq + +Y + + + +n93:e->c118:w + + + + + +c119 + +A + +B + +$51 +$add + +Y + + + +n93:e->c119:w + + + + + +n94 + +eth_wr_addr + + + +n95 + +eth_wr_data + + + +n96 + +eth_wr_ready + + + +c121 + +A + +B + +$55 +$and + +Y + + + +n96:e->c121:w + + + + + +c134 + +A + +B + +$70 +$or + +Y + + + +n96:e->c134:w + + + + + +x20 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n96:e->x20:w + + + + + +x22 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n96:e->x22:w + + + + + +x24 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n96:e->x24:w + + + + + +x26 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n96:e->x26:w + + + + + +x35 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n96:e->x35:w + + + + + +c184 + +A + +B + +S + +$100 +$mux + +Y + + + +n96:e->c184:w + + + + + +c188 + +A + +B + +S + +$118 +$mux + +Y + + + +n96:e->c188:w + + + + + +c196 + +A + +B + +S + +$131 +$mux + +Y + + + +n96:e->c196:w + + + + + +c209 + +A + +B + +S + +$51 +$mux + +Y + + + +n96:e->c209:w + + + + + +c210 + +A + +B + +S + +$54 +$mux + +Y + + + +n96:e->c210:w + + + + + +c215 + +A + +B + +S + +$67 +$mux + +Y + + + +n96:e->c215:w + + + + + +c219 + +A + +B + +S + +$78 +$mux + +Y + + + +n96:e->c219:w + + + + + +n97 + +eth_wr_valid + + + +n97:e->c121:w + + + + + +c133 + +A + +$69 +$not + +Y + + + +n97:e->c133:w + + + + + +n98 + +next_rwp_raw + + + +c128 + +A + +B + +$64 +$gt + +Y + + + +n98:e->c128:w + + + + + +c129 + +A + +B + +$65 +$sub + +Y + + + +n98:e->c129:w + + + + + +c201 + +A + +B + +S + +$16 +$mux + +Y + + + +n98:e->c201:w + + + + + +n99 + +pages_used + + + +c135 + +A + +B + +$71 +$add + +Y + + + +n99:e->c135:w + + + + + +n100 + +rst + + + +n100:e->c141:w + + + + + +n100:e->c142:w + + + + + +n100:e->c143:w + + + + + +n100:e->c144:w + + + + + +n100:e->c145:w + + + + + +n100:e->c146:w + + + + + +n100:e->c147:w + + + + + +n100:e->c149:w + + + + + +n100:e->c150:w + + + + + +n100:e->c151:w + + + + + +n100:e->c152:w + + + + + +x52 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n100:e->x52:w + + + + + +n101 + +rwp + + + +n101:e->c135:w + + + + + +n101:e->c149:w + + + + + +n101:e->c152:w + + + + + +x59 + +7:0 - 15:8 + +0 -> 7:0 + + + +n101:e->x59:w + + + + + +n102 + +rx_data + + + +c203 + +A + +B + +S + +$31 +$mux + +Y + + + +n102:e->c203:w + + + + + +n103 + +rx_enabled + + + +c132 + +A + +B + +$68 +$and + +Y + + + +n103:e->c132:w + + + + + +n104 + +rx_eof + + + +x18 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n104:e->x18:w + + + + + +c212 + +A + +B + +S + +$60 +$mux + +Y + + + +n104:e->c212:w + + + + + +n105 + +rx_fsm_state + + + +c187 + +A + +B + +$117_CMP0 +$eq + +Y + + + +n105:e->c187:w + + + + + +c189 + +A + +B + +$120_CMP0 +$eq + +Y + + + +n105:e->c189:w + + + + + +c191 + +A + +B + +$123_CMP0 +$eq + +Y + + + +n105:e->c191:w + + + + + +c194 + +A + +B + +$128_CMP0 +$eq + +Y + + + +n105:e->c194:w + + + + + +c197 + +A + +B + +$133_CMP0 +$eq + +Y + + + +n105:e->c197:w + + + + + +c198 + +A + +$134_CMP0 +$logic_not + +Y + + + +n105:e->c198:w + + + + + +c200 + +A + +B + +$146_CMP0 +$eq + +Y + + + +n105:e->c200:w + + + + + +c208 + +A + +B + +$50_CMP0 +$eq + +Y + + + +n105:e->c208:w + + + + + +n106 + +rx_irq + + + +n107 + +rx_ready + + + +n108 + +rx_sof + + + +c131 + +A + +B + +$67 +$and + +Y + + + +n108:e->c131:w + + + + + +n109 + +rx_valid + + + +c120 + +A + +B + +$54 +$and + +Y + + + +n109:e->c120:w + + + + + +n109:e->c131:w + + + + + +n110 + +rx_wptr_w_data + + + +n111 + +rx_wptr_w_en + + + +x134 + +BUF + + + +n111:e->x134:w + + + + + +n112 + +rx_wptr_w_rdy + + + +x28 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n112:e->x28:w + + + + + +x50 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n112:e->x50:w + + + + + +c199 + +A + +B + +S + +$137 +$mux + +Y + + + +n112:e->c199:w + + + + + +c206 + +A + +B + +S + +$46 +$mux + +Y + + + +n112:e->c206:w + + + + + +n113 + +total_len + + + +x4 + +7:0 - 7:0 + + + +n113:e->x4:w + + + + + +x5 + +11:8 - 3:0 + + + +n113:e->x5:w + + + + + +x83 + +0 -> 31:24 + +7:0 - 23:16 + +0 -> 15:12 + +11:0 - 11:0 + + + +n113:e->x83:w + + + + + +x131 + +11:0 - 11:0 + + + +n113:e->x131:w + + + + + +n114 + +wr_addr + + + +c122 + +A + +B + +$56 +$add + +Y + + + +n114:e->c122:w + + + + + +x87 + +15:0 - 63:48 + +15:0 - 47:32 + +15:0 - 31:16 + +15:0 - 15:0 + + + +n114:e->x87:w + + + + + +c205 + +A + +B + +S + +$40 +$mux + +Y + + + +n114:e->c205:w + + + + + +v0 + +2'11 + + + +v0:e->c118:w + + + + + +n20 + + + + +c118:e->n20:w + + + + + +v1 + +1'1 + + + +v1:e->c119:w + + + + + +x111 + +1:0 - 1:0 + + + +c119:e->x111:w + + + + + +n22 + + + + +c120:e->n22:w + + + + + +n23 + + + + +c121:e->n23:w + + + + + +v2 + +1'1 + + + +v2:e->c122:w + + + + + +n2 + + + + +c122:e->n2:w + + + + + +v3 + +1'1 + + + +v3:e->c123:w + + + + + +x120 + +11:0 - 11:0 + + + +c123:e->x120:w + + + + + +c124 + +A + +$60 +$reduce_bool + +Y + + + +c125 + +A + +B + +$61 +$add + +Y + + + +c124:e->c125:w + + + + + +x4:e->c124:w + + + + + + +c125:e->c151:w + + + + + +x5:e->c125:w + + + + + + +v7 + +2'10 + + + +c126 + +A + +B + +$62 +$add + +Y + + + +v7:e->c126:w + + + + + +c126:e->x87:w + + + + + +x6:e->c126:w + + + + + + +v9 + +2'11 + + + +c127 + +A + +B + +$63 +$add + +Y + + + +v9:e->c127:w + + + + + +c127:e->x87:w + + + + + +x8:e->c127:w + + + + + + +v10 + +4'1111 + + + +v10:e->c128:w + + + + + +c128:e->c201:w + + + + + +v11 + +4'1111 + + + +v11:e->c129:w + + + + + +x81 + +7:0 - 7:0 + + + +c129:e->x81:w + + + + + +v12 + +3'100 + + + +v12:e->c130:w + + + + + +x13 + +12:12 - 12:12 + +11:0 - 11:0 + + + +c130:e->x13:w + + + + + + +x13:e->n113:w + + + + + +n13 + +$20 + + + +x13:e->n13:w + + + + + +c131:e->c132:w + + + + + +n12 + + + + +c132:e->n12:w + + + + + +c133:e->c134:w + + + + + +n5 + + + + +c134:e->n5:w + + + + + +x55 + +7:0 - 7:0 + + + +c135:e->x55:w + + + + + +c141:e->n95:w + + + + + +c142:e->n94:w + + + + + +c143:e->n105:w + + + + + +c144:e->n93:w + + + + + +c145:e->n91:w + + + + + +c146:e->n114:w + + + + + +c147:e->n97:w + + + + + +c148:e->n111:w + + + + + +c149:e->n110:w + + + + + +c150:e->n101:w + + + + + +c151:e->n99:w + + + + + +x14 + +7:0 - 15:8 + + + +c152:e->x14:w + + + + + + +x14:e->n92:w + + + + + +v16 + +2'10 + + + +c153 + +A + +B + +$154 +$ne + +Y + + + +v16:e->c153:w + + + + + +n24 + + + + +c153:e->n24:w + + + + + +x15 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x15:e->c153:w + + + + + + +c154 + +A + +$156 +$reduce_bool + +Y + + + +x43 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c154:e->x43:w + + + + + +x17 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x17:e->c154:w + + + + + + +v19 + +3'110 + + + +c155 + +A + +B + +$170 +$ne + +Y + + + +v19:e->c155:w + + + + + +x44 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c155:e->x44:w + + + + + +x18:e->c155:w + + + + + + +v21 + +2'10 + + + +c156 + +A + +B + +$172 +$ne + +Y + + + +v21:e->c156:w + + + + + +c156:e->x44:w + + + + + +x20:e->c156:w + + + + + + +v23 + +2'10 + + + +c157 + +A + +B + +$174 +$ne + +Y + + + +v23:e->c157:w + + + + + +c157:e->x44:w + + + + + +x22:e->c157:w + + + + + + +v25 + +2'10 + + + +c158 + +A + +B + +$176 +$ne + +Y + + + +v25:e->c158:w + + + + + +n29 + + + + +c158:e->n29:w + + + + + +x24:e->c158:w + + + + + + +v27 + +3'101 + + + +c159 + +A + +B + +$178 +$ne + +Y + + + +v27:e->c159:w + + + + + +c159:e->x44:w + + + + + +x26:e->c159:w + + + + + + +v29 + +2'10 + + + +c160 + +A + +B + +$180 +$ne + +Y + + + +v29:e->c160:w + + + + + +c160:e->x44:w + + + + + +x28:e->c160:w + + + + + + +v31 + +2'10 + + + +c161 + +A + +B + +$182 +$ne + +Y + + + +v31:e->c161:w + + + + + +n32 + + + + +c161:e->n32:w + + + + + +x30 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x30:e->c161:w + + + + + + +v33 + +2'10 + + + +c162 + +A + +B + +$186 +$ne + +Y + + + +v33:e->c162:w + + + + + +n33 + + + + +c162:e->n33:w + + + + + +x32 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x32:e->c162:w + + + + + + +c163 + +A + +$188 +$reduce_bool + +Y + + + +c163:e->x44:w + + + + + +x34 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x34:e->c163:w + + + + + + +v36 + +3'111 + + + +c164 + +A + +B + +$196 +$ne + +Y + + + +v36:e->c164:w + + + + + +x45 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c164:e->x45:w + + + + + +x35:e->c164:w + + + + + + +c165 + +A + +$200 +$reduce_bool + +Y + + + +c165:e->x45:w + + + + + +x37 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x37:e->c165:w + + + + + + +c166 + +A + +$210 +$reduce_bool + +Y + + + +x46 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c166:e->x46:w + + + + + +x38 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x38:e->c166:w + + + + + + +c167 + +A + +$222 +$reduce_bool + +Y + + + +x47 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c167:e->x47:w + + + + + +x39 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x39:e->c167:w + + + + + + +v41 + +3'100 + + + +c168 + +A + +B + +$232 +$ne + +Y + + + +v41:e->c168:w + + + + + +x49 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c168:e->x49:w + + + + + +x40 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x40:e->c168:w + + + + + + +c169 + +A + +$236 +$reduce_bool + +Y + + + +c169:e->x49:w + + + + + +x42 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x42:e->c169:w + + + + + + +c170 + +A + +$158 +$reduce_and + +Y + + + +n41 + + + + +c170:e->n41:w + + + + + +x43:e->c170:w + + + + + + +c171 + +A + +$190 +$reduce_and + +Y + + + +c171:e->c143:w + + + + + +x44:e->c171:w + + + + + + +c172 + +A + +$202 +$reduce_and + +Y + + + +c172:e->c144:w + + + + + +x45:e->c172:w + + + + + + +c173 + +A + +$212 +$reduce_and + +Y + + + +c173:e->c145:w + + + + + +x46:e->c173:w + + + + + + +c174 + +A + +$224 +$reduce_and + +Y + + + +c174:e->c146:w + + + + + +x47:e->c174:w + + + + + + +c175 + +A + +$228 +$reduce_and + +Y + + + +c175:e->c152:w + + + + + +x48 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x48:e->c175:w + + + + + + +c176 + +A + +$238 +$reduce_and + +Y + + + +c176:e->c147:w + + + + + +x49:e->c176:w + + + + + + +c177 + +A + +$247 +$reduce_and + +Y + + + +c177:e->c149:w + + + + + +x50:e->c177:w + + + + + + +c178 + +A + +$253 +$reduce_and + +Y + + + +c178:e->c151:w + + + + + +x51 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x51:e->c178:w + + + + + + +c179 + +A + +$240 +$not + +Y + + + +c179:e->x52:w + + + + + +c180 + +A + +$243 +$reduce_or + +Y + + + +c180:e->c148:w + + + + + +x52:e->c180:w + + + + + + +c181 + +A + +$149 +$reduce_or + +Y + + + +n51 + + + + +c181:e->n51:w + + + + + +x53 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x53:e->c181:w + + + + + + +v54 + +8'00000000 + + + +c183 + +A + +B + +S + +$1 +$mux + +Y + + + +v54:e->c183:w + + + + + +c183:e->n98:w + + + + + +x55:e->c183:w + + + + + + +v56 + +16'x + + + +v56:e->c184:w + + + + + +x129 + +15:0 - 47:32 + +15:0 - 31:16 + +15:0 - 15:0 + + + +c184:e->x129:w + + + + + +x57 + +15:0 - 15:0 + + + +x57:e->c184:w + + + + + + +v58 + +16'x + + + +c185 + +A + +B + +S + +$103 +$mux + +Y + + + +v58:e->c185:w + + + + + +c185:e->x129:w + + + + + +x59:e->c185:w + + + + + + +v60 + +1'x + + + +c186 + +A + +B + +S + +$116 +$pmux + +Y + + + +v60:e->c186:w + + + + + +c186:e->c147:w + + + + + +x61 + +0 -> 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x61:e->c186:w + + + + + + +x62 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x62:e->c186:w + + + + + + +v63 + +3'101 + + + +v63:e->c187:w + + + + + +n17 + + + + +c187:e->n17:w + + + + + +v64 + +1'1 + + + +v64:e->c188:w + + + + + +v65 + +1'0 + + + +v65:e->c188:w + + + + + +c188:e->x61:w + + + + + +v66 + +3'100 + + + +v66:e->c189:w + + + + + +n16 + + + + +c189:e->n16:w + + + + + +v67 + +1'x + + + +c190 + +A + +B + +S + +$121 +$mux + +Y + + + +v67:e->c190:w + + + + + +v68 + +1'0 + + + +v68:e->c190:w + + + + + +c190:e->x61:w + + + + + +v69 + +3'011 + + + +v69:e->c191:w + + + + + +n59 + + + + +c191:e->n59:w + + + + + +v70 + +1'x + + + +c192 + +A + +B + +S + +$124 +$mux + +Y + + + +v70:e->c192:w + + + + + +v71 + +1'0 + + + +v71:e->c192:w + + + + + +c193 + +A + +B + +S + +$126 +$mux + +Y + + + +c192:e->c193:w + + + + + +v72 + +1'1 + + + +v72:e->c193:w + + + + + +c193:e->x61:w + + + + + +v73 + +3'010 + + + +v73:e->c194:w + + + + + +n62 + + + + +c194:e->n62:w + + + + + +v74 + +1'1 + + + +c195 + +A + +B + +S + +$129 +$mux + +Y + + + +v74:e->c195:w + + + + + +v75 + +1'0 + + + +v75:e->c195:w + + + + + +c195:e->c196:w + + + + + +v76 + +1'1 + + + +v76:e->c196:w + + + + + +c196:e->x61:w + + + + + +v77 + +3'001 + + + +v77:e->c197:w + + + + + +n54 + + + + +c197:e->n54:w + + + + + +n15 + + + + +c198:e->n15:w + + + + + +v78 + +1'0 + + + +v78:e->c199:w + + + + + +v79 + +1'1 + + + +v79:e->c199:w + + + + + +c199:e->c148:w + + + + + +v80 + +3'111 + + + +v80:e->c200:w + + + + + +n19 + + + + +c200:e->n19:w + + + + + +c201:e->c150:w + + + + + +x81:e->c201:w + + + + + + +v82 + +8'x + + + +c202 + +A + +B + +S + +$28 +$pmux + +Y + + + +v82:e->c202:w + + + + + +c202:e->c141:w + + + + + +x83:e->c202:w + + + + + + +x84 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x84:e->c202:w + + + + + + +v85 + +8'x + + + +v85:e->c203:w + + + + + +c203:e->x83:w + + + + + +v86 + +16'x + + + +c204 + +A + +B + +S + +$37 +$pmux + +Y + + + +v86:e->c204:w + + + + + +c204:e->c142:w + + + + + +x87:e->c204:w + + + + + + +x88 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x88:e->c204:w + + + + + + +v89 + +16'x + + + +v89:e->c205:w + + + + + +c205:e->x87:w + + + + + +v90 + +3'x + + + +v90:e->c206:w + + + + + +v91 + +3'000 + + + +v91:e->c206:w + + + + + +x93 + +2:0 - 23:21 + +2:0 - 20:18 + +2:0 - 17:15 + +2:0 - 14:12 + +2:0 - 11:9 + +2:0 - 8:6 + +1 -> 5:3 + +2:0 - 2:0 + + + +c206:e->x93:w + + + + + +v92 + +3'x + + + +c207 + +A + +B + +S + +$48 +$pmux + +Y + + + +v92:e->c207:w + + + + + +c207:e->c143:w + + + + + +x93:e->c207:w + + + + + + +x94 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x94:e->c207:w + + + + + + +v95 + +3'110 + + + +v95:e->c208:w + + + + + +n18 + + + + +c208:e->n18:w + + + + + +v96 + +3'x + + + +v96:e->c209:w + + + + + +v97 + +3'110 + + + +v97:e->c209:w + + + + + +c209:e->x93:w + + + + + +v98 + +3'x + + + +v98:e->c210:w + + + + + +v99 + +3'101 + + + +v99:e->c210:w + + + + + +c210:e->x93:w + + + + + +v100 + +3'x + + + +c211 + +A + +B + +S + +$57 +$mux + +Y + + + +v100:e->c211:w + + + + + +v101 + +3'100 + + + +v101:e->c211:w + + + + + +c211:e->x93:w + + + + + +v102 + +3'x + + + +v102:e->c212:w + + + + + +v103 + +3'011 + + + +v103:e->c212:w + + + + + +c213 + +A + +B + +S + +$62 +$mux + +Y + + + +c212:e->c213:w + + + + + +v104 + +3'x + + + +v104:e->c213:w + + + + + +c213:e->x93:w + + + + + +v105 + +3'x + + + +c214 + +A + +B + +S + +$65 +$mux + +Y + + + +v105:e->c214:w + + + + + +v106 + +3'010 + + + +v106:e->c214:w + + + + + +c214:e->c215:w + + + + + +v107 + +3'x + + + +v107:e->c215:w + + + + + +c215:e->x93:w + + + + + +v108 + +1'0 + + + +c216 + +A + +B + +S + +$7 +$mux + +Y + + + +v108:e->c216:w + + + + + +c216:e->n107:w + + + + + +v109 + +3'x + + + +c217 + +A + +B + +S + +$70 +$mux + +Y + + + +v109:e->c217:w + + + + + +v110 + +3'001 + + + +v110:e->c217:w + + + + + +c217:e->x93:w + + + + + +v112 + +2'x + + + +c218 + +A + +B + +S + +$76 +$mux + +Y + + + +v112:e->c218:w + + + + + +c218:e->c219:w + + + + + +x111:e->c218:w + + + + + + +v113 + +2'x + + + +v113:e->c219:w + + + + + +x115 + +1:0 - 3:2 + +1:0 - 1:0 + + + +c219:e->x115:w + + + + + +v114 + +2'x + + + +c220 + +A + +B + +S + +$80 +$pmux + +Y + + + +v114:e->c220:w + + + + + +c220:e->c144:w + + + + + +x115:e->c220:w + + + + + + +x116 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x116:e->c220:w + + + + + + +v117 + +2'x + + + +c221 + +A + +B + +S + +$82 +$mux + +Y + + + +v117:e->c221:w + + + + + +v118 + +2'00 + + + +v118:e->c221:w + + + + + +c221:e->x115:w + + + + + +v119 + +12'x + + + +c222 + +A + +B + +S + +$87 +$mux + +Y + + + +v119:e->c222:w + + + + + +x122 + +11:0 - 23:12 + +11:0 - 11:0 + + + +c222:e->x122:w + + + + + +x120:e->c222:w + + + + + + +v121 + +12'x + + + +c223 + +A + +B + +S + +$89 +$pmux + +Y + + + +v121:e->c223:w + + + + + +c223:e->c145:w + + + + + +x122:e->c223:w + + + + + + +x123 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x123:e->c223:w + + + + + + +v124 + +12'x + + + +c224 + +A + +B + +S + +$91 +$mux + +Y + + + +v124:e->c224:w + + + + + +v125 + +12'000000000000 + + + +v125:e->c224:w + + + + + +c224:e->x122:w + + + + + +v126 + +16'x + + + +c225 + +A + +B + +S + +$96 +$mux + +Y + + + +v126:e->c225:w + + + + + +c225:e->x129:w + + + + + +x127 + +15:0 - 15:0 + + + +x127:e->c225:w + + + + + + +v128 + +16'x + + + +c226 + +A + +B + +S + +$98 +$pmux + +Y + + + +v128:e->c226:w + + + + + +c226:e->c146:w + + + + + +x129:e->c226:w + + + + + + +x130 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x130:e->c226:w + + + + + + +x131:e->n13:w + + + + + +v132 + +8'00000000 + + + +x133 + +7:0 - 7:0 + + + +v132:e->x133:w + + + + + +x133:e->n92:w + + + + + +x134:e->n106:w + + + + + +n12:e->x30:w + + + + + +n12:e->x48:w + + + + + +n12:e->c185:w + + + + + +n12:e->c217:w + + + + + +n12:e->c221:w + + + + + +n12:e->c224:w + + + + + +n15:e->x30:w + + + + + +n15:e->x34:w + + + + + +n15:e->x37:w + + + + + +n15:e->x38:w + + + + + +n15:e->x39:w + + + + + +n15:e->x42:w + + + + + +n15:e->x48:w + + + + + +n15:e->x62:w + + + + + +n15:e->x94:w + + + + + +n15:e->x116:w + + + + + +n15:e->x123:w + + + + + +n15:e->x130:w + + + + + +n16:e->x17:w + + + + + +n16:e->x20:w + + + + + +n16:e->x34:w + + + + + +n16:e->x53:w + + + + + +n16:e->x84:w + + + + + +n16:e->x88:w + + + + + +n16:e->x94:w + + + + + +n17:e->x17:w + + + + + +n17:e->x22:w + + + + + +n17:e->x34:w + + + + + +n17:e->x53:w + + + + + +n17:e->x84:w + + + + + +n17:e->x88:w + + + + + +n17:e->x94:w + + + + + +n18:e->c150:w + + + + + +n18:e->x34:w + + + + + +n18:e->c183:w + + + + + +n18:e->x94:w + + + + + +n19:e->x28:w + + + + + +n19:e->x34:w + + + + + +n19:e->x50:w + + + + + +n19:e->c179:w + + + + + +n19:e->x94:w + + + + + +n2:e->x57:w + + + + + +n2:e->x127:w + + + + + +n20:e->x26:w + + + + + +n20:e->x35:w + + + + + +n20:e->c195:w + + + + + +n20:e->c214:w + + + + + +n20:e->c218:w + + + + + +n22:e->x15:w + + + + + +n22:e->x18:w + + + + + +n22:e->x40:w + + + + + +n22:e->c193:w + + + + + +n22:e->c203:w + + + + + +n22:e->c205:w + + + + + +n22:e->c213:w + + + + + +n22:e->c222:w + + + + + +n22:e->c225:w + + + + + +n23:e->x40:w + + + + + +n23:e->c192:w + + + + + +n24:e->x43:w + + + + + +n24:e->x44:w + + + + + +n24:e->x46:w + + + + + +n24:e->x47:w + + + + + +n29:e->x44:w + + + + + +n29:e->x45:w + + + + + +n29:e->x47:w + + + + + +n32:e->x44:w + + + + + +n32:e->x45:w + + + + + +n32:e->x46:w + + + + + +n32:e->x47:w + + + + + +n33:e->x44:w + + + + + +n33:e->x49:w + + + + + +n41:e->c141:w + + + + + +n41:e->c142:w + + + + + +n5:e->c120:w + + + + + +n5:e->x32:w + + + + + +n5:e->x51:w + + + + + +n5:e->c190:w + + + + + +n5:e->c211:w + + + + + +n5:e->c216:w + + + + + +n51:e->x42:w + + + + + +n51:e->x62:w + + + + + +n54:e->x17:w + + + + + +n54:e->x24:w + + + + + +n54:e->x26:w + + + + + +n54:e->x34:w + + + + + +n54:e->x35:w + + + + + +n54:e->x37:w + + + + + +n54:e->x39:w + + + + + +n54:e->x42:w + + + + + +n54:e->x62:w + + + + + +n54:e->x84:w + + + + + +n54:e->x88:w + + + + + +n54:e->x94:w + + + + + +n54:e->x116:w + + + + + +n54:e->x130:w + + + + + +n59:e->x32:w + + + + + +n59:e->x34:w + + + + + +n59:e->x42:w + + + + + +n59:e->x51:w + + + + + +n59:e->x62:w + + + + + +n59:e->x94:w + + + + + +n62:e->x15:w + + + + + +n62:e->x17:w + + + + + +n62:e->x18:w + + + + + +n62:e->x34:w + + + + + +n62:e->x38:w + + + + + +n62:e->x39:w + + + + + +n62:e->x40:w + + + + + +n62:e->x42:w + + + + + +n62:e->x62:w + + + + + +n62:e->x84:w + + + + + +n62:e->x88:w + + + + + +n62:e->x94:w + + + + + +n62:e->c216:w + + + + + +n62:e->x123:w + + + + + +n62:e->x130:w + + + + + diff --git a/diagrams/spi_mode3_slave.svg b/diagrams/spi_mode3_slave.svg new file mode 100644 index 0000000..915458a --- /dev/null +++ b/diagrams/spi_mode3_slave.svg @@ -0,0 +1,2127 @@ + + + + + + +spi_mode3_slave + + + +n30 + +armed + + + +c73 + +A + +B + +S + +$33 +$mux + +Y + + + +n30:e->c73:w + + + + + +c104 + +A + +B + +S + +$27 +$mux + +Y + + + +n30:e->c104:w + + + + + +c107 + +A + +B + +S + +$31 +$mux + +Y + + + +n30:e->c107:w + + + + + +c111 + +A + +B + +S + +$55 +$mux + +Y + + + +n30:e->c111:w + + + + + +n31 + +bit_ctr + + + +c62 + +A + +B + +$21 +$eq + +Y + + + +n31:e->c62:w + + + + + +c63 + +A + +B + +$22 +$add + +Y + + + +n31:e->c63:w + + + + + +n32 + +clk + + + +c80 + +CLK + +D + +EN + +SRST + +$107 +$sdffe + +Q + + + +n32:e->c80:w + + + + + +c81 + +CLK + +D + +EN + +SRST + +$115 +$sdffe + +Q + + + +n32:e->c81:w + + + + + +c82 + +CLK + +D + +EN + +SRST + +$123 +$sdffe + +Q + + + +n32:e->c82:w + + + + + +c83 + +CLK + +D + +EN + +SRST + +$131 +$sdffe + +Q + + + +n32:e->c83:w + + + + + +c84 + +CLK + +D + +SRST + +$138 +$sdff + +Q + + + +n32:e->c84:w + + + + + +c85 + +CLK + +D + +EN + +SRST + +$144 +$sdffe + +Q + + + +n32:e->c85:w + + + + + +c86 + +CLK + +D + +SRST + +$145 +$sdff + +Q + + + +n32:e->c86:w + + + + + +c87 + +CLK + +D + +SRST + +$150 +$sdff + +Q + + + +n32:e->c87:w + + + + + +c88 + +CLK + +D + +SRST + +$151 +$sdff + +Q + + + +n32:e->c88:w + + + + + +c97 + +CLK + +D + +$1 +$dff + +Q + + + +n32:e->c97:w + + + + + +c98 + +CLK + +D + +$2 +$dff + +Q + + + +n32:e->c98:w + + + + + +c99 + +CLK + +D + +$1 +$dff + +Q + + + +n32:e->c99:w + + + + + +c100 + +CLK + +D + +$2 +$dff + +Q + + + +n32:e->c100:w + + + + + +c101 + +CLK + +D + +$1 +$dff + +Q + + + +n32:e->c101:w + + + + + +c102 + +CLK + +D + +$2 +$dff + +Q + + + +n32:e->c102:w + + + + + +n33 + +clk_prev + + + +c65 + +A + +B + +$25 +$and + +Y + + + +n33:e->c65:w + + + + + +c66 + +A + +$26 +$not + +Y + + + +n33:e->c66:w + + + + + +n34 + +cs_active + + + +c68 + +A + +B + +$29 +$and + +Y + + + +n34:e->c68:w + + + + + +n35 + +cs_prev + + + +n35:e->c68:w + + + + + +c69 + +A + +$30 +$not + +Y + + + +n35:e->c69:w + + + + + +n36 + +cs_rise + + + +c61 + +A + +B + +$20 +$or + +Y + + + +n36:e->c61:w + + + + + +n37 + +falling_clk + + + +n37:e->c85:w + + + + + +x8 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n37:e->x8:w + + + + + +x9 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n37:e->x9:w + + + + + +c94 + +A + +$146 +$not + +Y + + + +n37:e->c94:w + + + + + +c105 + +A + +B + +S + +$29 +$mux + +Y + + + +n37:e->c105:w + + + + + +c106 + +A + +B + +S + +$3 +$mux + +Y + + + +n37:e->c106:w + + + + + +n37:e->c111:w + + + + + +n38 + +frame_start + + + +c89 + +A + +$108 +$not + +Y + + + +n38:e->c89:w + + + + + +x10 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n38:e->x10:w + + + + + +x11 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n38:e->x11:w + + + + + +n39 + +rearm + + + +c103 + +A + +B + +S + +$1 +$mux + +Y + + + +n39:e->c103:w + + + + + +n39:e->c106:w + + + + + +c108 + +A + +B + +S + +$33 +$mux + +Y + + + +n39:e->c108:w + + + + + +c110 + +A + +B + +S + +$5 +$mux + +Y + + + +n39:e->c110:w + + + + + +c112 + +A + +B + +S + +$57 +$mux + +Y + + + +n39:e->c112:w + + + + + +n40 + +rising_clk + + + +c109 + +A + +B + +S + +$35 +$mux + +Y + + + +n40:e->c109:w + + + + + +c113 + +A + +B + +S + +$59 +$mux + +Y + + + +n40:e->c113:w + + + + + +c115 + +A + +B + +S + +$7 +$mux + +Y + + + +n40:e->c115:w + + + + + +n41 + +rst + + + +n41:e->c80:w + + + + + +n41:e->c81:w + + + + + +n41:e->c82:w + + + + + +n41:e->c83:w + + + + + +n41:e->c87:w + + + + + +n41:e->c88:w + + + + + +n41:e->x10:w + + + + + +n41:e->x11:w + + + + + +n42 + +rx_byte + + + +n43 + +rx_shift + + + +x5 + +6:0 - 7:1 + +0:0 - 0:0 + + + +n43:e->x5:w + + + + + +x6 + +6:0 - 7:1 + +0:0 - 0:0 + + + +n43:e->x6:w + + + + + +n44 + +rx_valid + + + +n45 + +spi_clk + + + +n45:e->c97:w + + + + + +n46 + +spi_cs_n + + + +n46:e->c99:w + + + + + +n47 + +spi_miso + + + +n48 + +spi_mosi + + + +n48:e->c101:w + + + + + +n49 + +sync_clk.clk_s + + + +c64 + +A + +$24 +$not + +Y + + + +n49:e->c64:w + + + + + +c67 + +A + +B + +$27 +$and + +Y + + + +n49:e->c67:w + + + + + +n49:e->c88:w + + + + + +n50 + +sync_clk.stage0 + + + +n50:e->c98:w + + + + + +n51 + +sync_cs.cs_s + + + +n51:e->c61:w + + + + + +c70 + +A + +B + +$31 +$and + +Y + + + +n51:e->c70:w + + + + + +c71 + +A + +$32 +$not + +Y + + + +n51:e->c71:w + + + + + +c74 + +A + +B + +S + +$34 +$mux + +Y + + + +n51:e->c74:w + + + + + +n51:e->c87:w + + + + + +n52 + +sync_cs.stage0 + + + +n52:e->c100:w + + + + + +n53 + +sync_mosi.mosi_s + + + +n53:e->x5:w + + + + + +n53:e->x6:w + + + + + +n54 + +sync_mosi.stage0 + + + +n54:e->c102:w + + + + + +n55 + +tx_byte + + + +x3 + +7:7 - 0:0 + + + +n55:e->x3:w + + + + + +n55:e->c104:w + + + + + +n56 + +tx_load + + + +x21 + +BUF + + + +n56:e->x21:w + + + + + +n57 + +tx_shift + + + +x2 + +7:7 - 0:0 + + + +n57:e->x2:w + + + + + +n57:e->c104:w + + + + + +n57:e->c105:w + + + + + +x13 + +6:0 - 7:1 + +0 -> 0:0 + + + +n57:e->x13:w + + + + + +n1 + + + + +c61:e->n1:w + + + + + +v0 + +3'111 + + + +v0:e->c62:w + + + + + +n2 + + + + +c62:e->n2:w + + + + + +v1 + +1'1 + + + +v1:e->c63:w + + + + + +x17 + +3:0 - 3:0 + + + +c63:e->x17:w + + + + + +c64:e->c65:w + + + + + +c65:e->n37:w + + + + + +c66:e->c67:w + + + + + +c67:e->n40:w + + + + + +c68:e->n38:w + + + + + +c69:e->c70:w + + + + + +c70:e->n36:w + + + + + +c71:e->n34:w + + + + + +c73:e->c74:w + + + + + +x2:e->c73:w + + + + + + +x3:e->c73:w + + + + + + +v4 + +1'1 + + + +v4:e->c74:w + + + + + +c74:e->n47:w + + + + + +c80:e->n39:w + + + + + +c81:e->n42:w + + + + + +x5:e->c81:w + + + + + + +c82:e->n57:w + + + + + +c83:e->n43:w + + + + + +x6:e->c83:w + + + + + + +c84:e->n30:w + + + + + +c85:e->n31:w + + + + + +c86:e->n56:w + + + + + +c87:e->n35:w + + + + + +c88:e->n33:w + + + + + +n13 + + + + +c89:e->n13:w + + + + + +c90 + +A + +$110 +$not + +Y + + + +n14 + + + + +c90:e->n14:w + + + + + +c91 + +A + +$113 +$reduce_and + +Y + + + +n8 + + + + +c91:e->n8:w + + + + + +x7 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x7:e->c91:w + + + + + + +c92 + +A + +$121 +$reduce_and + +Y + + + +c92:e->c81:w + + + + + +x8:e->c92:w + + + + + + +c93 + +A + +$137 +$reduce_and + +Y + + + +c93:e->c83:w + + + + + +x9:e->c93:w + + + + + + +c94:e->x11:w + + + + + +c95 + +A + +$140 +$reduce_or + +Y + + + +n11 + + + + +c95:e->n11:w + + + + + +x10:e->c95:w + + + + + + +c96 + +A + +$149 +$reduce_or + +Y + + + +c96:e->c86:w + + + + + +x11:e->c96:w + + + + + + +c97:e->n50:w + + + + + +c98:e->n49:w + + + + + +c99:e->n52:w + + + + + +c100:e->n51:w + + + + + +c101:e->n54:w + + + + + +c102:e->n53:w + + + + + +v12 + +1'1 + + + +v12:e->c103:w + + + + + +c103:e->c106:w + + + + + +c104:e->c105:w + + + + + +n18 + + + + +c105:e->n18:w + + + + + +n22 + + + + +c106:e->n22:w + + + + + +c107:e->c108:w + + + + + +x13:e->c107:w + + + + + + +c108:e->c109:w + + + + + +c109:e->c82:w + + + + + +v14 + +1'0 + + + +v14:e->c110:w + + + + + +c110:e->c115:w + + + + + +v15 + +1'0 + + + +v15:e->c111:w + + + + + +n23 + + + + +c111:e->n23:w + + + + + +v16 + +1'1 + + + +v16:e->c112:w + + + + + +c112:e->c113:w + + + + + +c113:e->c84:w + + + + + +v18 + +4'0000 + + + +c114 + +A + +B + +S + +$69 +$mux + +Y + + + +v18:e->c114:w + + + + + +c114:e->c85:w + + + + + +x17:e->c114:w + + + + + + +c115:e->c80:w + + + + + +v19 + +1'0 + + + +c116 + +A + +B + +S + +$91 +$mux + +Y + + + +v19:e->c116:w + + + + + +v20 + +1'1 + + + +v20:e->c116:w + + + + + +c116:e->c86:w + + + + + +x21:e->n44:w + + + + + +n1:e->c90:w + + + + + +n1:e->x10:w + + + + + +n1:e->x11:w + + + + + +n11:e->c84:w + + + + + +n11:e->c85:w + + + + + +n13:e->x7:w + + + + + +n13:e->x8:w + + + + + +n13:e->x9:w + + + + + +n14:e->x7:w + + + + + +n14:e->x8:w + + + + + +n14:e->x9:w + + + + + +n18:e->c107:w + + + + + +n18:e->c108:w + + + + + +n18:e->c109:w + + + + + +n2:e->x8:w + + + + + +n2:e->c103:w + + + + + +n2:e->c114:w + + + + + +n2:e->c116:w + + + + + +n22:e->c110:w + + + + + +n22:e->c115:w + + + + + +n23:e->c112:w + + + + + +n23:e->c113:w + + + + + +n8:e->c80:w + + + + + +n8:e->c82:w + + + + + diff --git a/diagrams/spram_arbiter.svg b/diagrams/spram_arbiter.svg new file mode 100644 index 0000000..fe73336 --- /dev/null +++ b/diagrams/spram_arbiter.svg @@ -0,0 +1,1368 @@ + + + + + + +spram_arbiter + + + +n12 + +byte0_en + + + +x1 + +8x 0:0 - 15:8 + +8x 0:0 - 7:0 + + + +n12:e->x1:w + + + + + +n13 + +byte1_en + + + +n13:e->x1:w + + + + + +n14 + +clk + + + +c39 + +ADDR + +CLK + +DATA + +EN + +$12 +$memwr_v2 + + + + + +n14:e->c39:w + + + + + +c42 + +ADDR + +ARST + +CLK + +EN + +SRST + +$13 +$memrd_v2 + +DATA + + + +n14:e->c42:w + + + + + +c48 + +CLK + +D + +EN + +SRST + +$52 +$sdffe + +Q + + + +n14:e->c48:w + + + + + +c49 + +CLK + +D + +EN + +SRST + +$54 +$sdffe + +Q + + + +n14:e->c49:w + + + + + +c50 + +CLK + +D + +SRST + +$59 +$sdff + +Q + + + +n14:e->c50:w + + + + + +c51 + +CLK + +D + +SRST + +$60 +$sdff + +Q + + + +n14:e->c51:w + + + + + +n15 + +eth_wr_addr + + + +x21 + +14:1 - 13:0 + + + +n15:e->x21:w + + + + + +x23 + +0:0 - 0:0 + + + +n15:e->x23:w + + + + + +x27 + +0:0 - 0:0 + + + +n15:e->x27:w + + + + + +x32 + +0:0 - 0:0 + + + +n15:e->x32:w + + + + + +n16 + +eth_wr_data + + + +c61 + +A + +B + +S + +$35 +$mux + +Y + + + +n16:e->c61:w + + + + + +c63 + +A + +B + +S + +$40 +$mux + +Y + + + +n16:e->c63:w + + + + + +n17 + +eth_wr_ready + + + +c34 + +A + +B + +$10 +$and + +Y + + + +n17:e->c34:w + + + + + +c44 + +A + +B + +$8 +$and + +Y + + + +n17:e->c44:w + + + + + +n18 + +eth_wr_valid + + + +c52 + +A + +$55 +$not + +Y + + + +n18:e->c52:w + + + + + +c58 + +A + +B + +S + +$28 +$mux + +Y + + + +n18:e->c58:w + + + + + +c60 + +A + +B + +S + +$32 +$mux + +Y + + + +n18:e->c60:w + + + + + +c62 + +A + +B + +S + +$37 +$mux + +Y + + + +n18:e->c62:w + + + + + +c64 + +A + +B + +S + +$42 +$mux + +Y + + + +n18:e->c64:w + + + + + +c66 + +A + +B + +S + +$47 +$mux + +Y + + + +n18:e->c66:w + + + + + +c67 + +A + +B + +S + +$49 +$mux + +Y + + + +n18:e->c67:w + + + + + +n19 + +exi_req_addr + + + +x10 + +0:0 - 0:0 + + + +n19:e->x10:w + + + + + +x20 + +14:1 - 13:0 + + + +n19:e->x20:w + + + + + +n20 + +exi_req_ready + + + +n20:e->c50:w + + + + + +n21 + +exi_req_valid + + + +x11 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n21:e->x11:w + + + + + +c57 + +A + +B + +S + +$26 +$mux + +Y + + + +n21:e->c57:w + + + + + +c59 + +A + +B + +S + +$30 +$mux + +Y + + + +n21:e->c59:w + + + + + +n22 + +exi_rsp_data + + + +n23 + +exi_rsp_valid + + + +n24 + +mem_rd__data + + + +x12 + +7:0 - 7:0 + + + +n24:e->x12:w + + + + + +x13 + +15:8 - 7:0 + + + +n24:e->x13:w + + + + + +n25 + +mem_wr__data + + + +n25:e->c39:w + + + + + +n26 + +read_pending + + + +n26:e->c48:w + + + + + +c56 + +A + +B + +S + +$20 +$mux + +Y + + + +n26:e->c56:w + + + + + +n27 + +read_was_odd + + + +c55 + +A + +B + +S + +$2 +$mux + +Y + + + +n27:e->c55:w + + + + + +n28 + +rst + + + +n28:e->c48:w + + + + + +n28:e->c49:w + + + + + +n28:e->c50:w + + + + + +n28:e->c51:w + + + + + +n29 + +spram_addr + + + +x0 + +0 -> 15:14 + +13:0 - 13:0 + + + +n29:e->x0:w + + + + + +x2 + +0 -> 15:14 + +13:0 - 13:0 + + + +n29:e->x2:w + + + + + +n30 + +spram_mask + + + +x6 + +0:0 - 0:0 + + + +n30:e->x6:w + + + + + +x7 + +1:1 - 0:0 + + + +n30:e->x7:w + + + + + +x8 + +2:2 - 0:0 + + + +n30:e->x8:w + + + + + +x9 + +3:3 - 0:0 + + + +n30:e->x9:w + + + + + +c34:e->n13:w + + + + + +x0:e->c39:w + + + + + + +x1:e->c39:w + + + + + + +v3 + +1'0 + + + +v3:e->c42:w + + + + + +v4 + +1'1 + + + +v4:e->c42:w + + + + + +v5 + +1'0 + + + +v5:e->c42:w + + + + + +c42:e->n24:w + + + + + +x2:e->c42:w + + + + + + +c43 + +A + +B + +$7 +$or + +Y + + + +c43:e->c44:w + + + + + +x6:e->c43:w + + + + + + +x7:e->c43:w + + + + + + +c44:e->n12:w + + + + + +c45 + +A + +B + +$9 +$or + +Y + + + +c45:e->c34:w + + + + + +x8:e->c45:w + + + + + + +x9:e->c45:w + + + + + + +c48:e->n22:w + + + + + +c49:e->n27:w + + + + + +x10:e->c49:w + + + + + + +c50:e->n26:w + + + + + +c51:e->n23:w + + + + + +c52:e->x11:w + + + + + +c53 + +A + +$58 +$reduce_and + +Y + + + +c53:e->c49:w + + + + + +x11:e->c53:w + + + + + + +c55:e->c48:w + + + + + +x12:e->c55:w + + + + + + +x13:e->c55:w + + + + + + +v14 + +1'0 + + + +v14:e->c56:w + + + + + +v15 + +1'1 + + + +v15:e->c56:w + + + + + +c56:e->c51:w + + + + + +v16 + +1'0 + + + +v16:e->c57:w + + + + + +v17 + +1'1 + + + +v17:e->c57:w + + + + + +c57:e->c58:w + + + + + +v18 + +1'0 + + + +v18:e->c58:w + + + + + +c58:e->n20:w + + + + + +v19 + +14'00000000000000 + + + +v19:e->c59:w + + + + + +c59:e->c60:w + + + + + +x20:e->c59:w + + + + + + +c60:e->n29:w + + + + + +x21:e->c60:w + + + + + + +v22 + +8'00000000 + + + +v22:e->c61:w + + + + + +c61:e->c62:w + + + + + +x23:e->c61:w + + + + + + +v24 + +8'00000000 + + + +v24:e->c62:w + + + + + +x25 + +7:0 - 15:8 + + + +c62:e->x25:w + + + + + + +x25:e->n25:w + + + + + +v26 + +8'00000000 + + + +v26:e->c63:w + + + + + +c63:e->c64:w + + + + + +x27:e->c63:w + + + + + + +v28 + +8'00000000 + + + +v28:e->c64:w + + + + + +x29 + +7:0 - 7:0 + + + +c64:e->x29:w + + + + + + +x29:e->n25:w + + + + + +v30 + +4'0011 + + + +c65 + +A + +B + +S + +$45 +$mux + +Y + + + +v30:e->c65:w + + + + + +v31 + +4'1100 + + + +v31:e->c65:w + + + + + +c65:e->c66:w + + + + + +x32:e->c65:w + + + + + + +v33 + +4'0000 + + + +v33:e->c66:w + + + + + +c66:e->n30:w + + + + + +v34 + +1'0 + + + +v34:e->c67:w + + + + + +v35 + +1'1 + + + +v35:e->c67:w + + + + + +c67:e->n17:w + + + + + diff --git a/diagrams/status_panel.svg b/diagrams/status_panel.svg new file mode 100644 index 0000000..ccce9d3 --- /dev/null +++ b/diagrams/status_panel.svg @@ -0,0 +1,3602 @@ + + + + + + +status_panel + + + +n42 + +b1_prev + + + +c87 + +A + +$64 +$not + +Y + + + +n42:e->c87:w + + + + + +n43 + +b2_prev + + + +c79 + +A + +$51 +$not + +Y + + + +n43:e->c79:w + + + + + +n44 + +bdeb + + + +x2 + +0:0 - 0:0 + + + +n44:e->x2:w + + + + + +x6 + +1:1 - 0:0 + + + +n44:e->x6:w + + + + + +x10 + +2:2 - 0:0 + + + +n44:e->x10:w + + + + + +x13 + +2:2 - 0:0 + + + +n44:e->x13:w + + + + + +x18 + +0:0 - 0:0 + + + +n44:e->x18:w + + + + + +x19 + +1:1 - 0:0 + + + +n44:e->x19:w + + + + + +x33 + +2:2 - 0:0 + + + +n44:e->x33:w + + + + + +x34 + +1:1 - 0:0 + + + +n44:e->x34:w + + + + + +n45 + +braw + + + +x1 + +0:0 - 0:0 + + + +n45:e->x1:w + + + + + +x5 + +1:1 - 0:0 + + + +n45:e->x5:w + + + + + +x9 + +2:2 - 0:0 + + + +n45:e->x9:w + + + + + +x37 + +0:0 - 0:0 + + + +n45:e->x37:w + + + + + +x39 + +1:1 - 0:0 + + + +n45:e->x39:w + + + + + +x41 + +2:2 - 0:0 + + + +n45:e->x41:w + + + + + +n46 + +btn + + + +c85 + +A + +B + +$62 +$xor + +Y + + + +n46:e->c85:w + + + + + +n47 + +clk + + + +c99 + +CLK + +D + +EN + +SRST + +$100 +$sdffe + +Q + + + +n47:e->c99:w + + + + + +c100 + +CLK + +D + +EN + +SRST + +$105 +$sdffe + +Q + + + +n47:e->c100:w + + + + + +c101 + +CLK + +D + +EN + +SRST + +$108 +$sdffe + +Q + + + +n47:e->c101:w + + + + + +c102 + +CLK + +D + +EN + +SRST + +$114 +$sdffe + +Q + + + +n47:e->c102:w + + + + + +c103 + +CLK + +D + +EN + +SRST + +$119 +$sdffe + +Q + + + +n47:e->c103:w + + + + + +c104 + +CLK + +D + +EN + +SRST + +$122 +$sdffe + +Q + + + +n47:e->c104:w + + + + + +c105 + +CLK + +D + +EN + +SRST + +$124 +$sdffe + +Q + + + +n47:e->c105:w + + + + + +c106 + +CLK + +D + +SRST + +$125 +$sdff + +Q + + + +n47:e->c106:w + + + + + +c107 + +CLK + +D + +SRST + +$126 +$sdff + +Q + + + +n47:e->c107:w + + + + + +c108 + +CLK + +D + +SRST + +$127 +$sdff + +Q + + + +n47:e->c108:w + + + + + +c109 + +CLK + +D + +SRST + +$130 +$sdff + +Q + + + +n47:e->c109:w + + + + + +c110 + +CLK + +D + +EN + +SRST + +$134 +$sdffe + +Q + + + +n47:e->c110:w + + + + + +c111 + +CLK + +D + +EN + +SRST + +$139 +$sdffe + +Q + + + +n47:e->c111:w + + + + + +c112 + +CLK + +D + +EN + +SRST + +$144 +$sdffe + +Q + + + +n47:e->c112:w + + + + + +c113 + +CLK + +D + +SRST + +$149 +$sdff + +Q + + + +n47:e->c113:w + + + + + +c114 + +CLK + +D + +SRST + +$152 +$sdff + +Q + + + +n47:e->c114:w + + + + + +c115 + +CLK + +D + +EN + +SRST + +$91 +$sdffe + +Q + + + +n47:e->c115:w + + + + + +c116 + +CLK + +D + +EN + +SRST + +$94 +$sdffe + +Q + + + +n47:e->c116:w + + + + + +n48 + +cs_active + + + +x52 + +1:1 - 1:1 + +0:0 - 0:0 + + + +n48:e->x52:w + + + + + +x62 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n48:e->x62:w + + + + + +c138 + +A + +B + +S + +$3 +$mux + +Y + + + +n48:e->c138:w + + + + + +n49 + +cs_cnt + + + +c84 + +A + +B + +$61 +$sub + +Y + + + +n49:e->c84:w + + + + + +c89 + +A + +$66 +$reduce_bool + +Y + + + +n49:e->c89:w + + + + + +x63 + +X -> 20:20 + +19:19 - 19:19 + +X -> 18:18 + +17:17 - 17:17 + +X -> 16:11 + +10:9 - 10:9 + +X -> 8:8 + +7:0 - 7:0 + + + +n49:e->x63:w + + + + + +n49:e->x63:w + + + + + +n49:e->x63:w + + + + + +n49:e->x63:w + + + + + +n50 + +deb_cnt0 + + + +c71 + +A + +B + +$43 +$add + +Y + + + +n50:e->c71:w + + + + + +c72 + +A + +B + +$44 +$eq + +Y + + + +n50:e->c72:w + + + + + +n51 + +deb_cnt1 + + + +c74 + +A + +B + +$46 +$add + +Y + + + +n51:e->c74:w + + + + + +c75 + +A + +B + +$47 +$eq + +Y + + + +n51:e->c75:w + + + + + +n52 + +deb_cnt2 + + + +c77 + +A + +B + +$49 +$add + +Y + + + +n52:e->c77:w + + + + + +c78 + +A + +B + +$50 +$eq + +Y + + + +n52:e->c78:w + + + + + +n53 + +eth_rst_n + + + +n54 + +freeze + + + +c83 + +A + +$59 +$not + +Y + + + +n54:e->c83:w + + + + + +n55 + +hb + + + +c69 + +A + +B + +$41 +$add + +Y + + + +n55:e->c69:w + + + + + +x73 + +0:0 - 1:1 + +23:23 - 0:0 + + + +n55:e->x73:w + + + + + +n56 + +led + + + +x48 + +1:1 - 0:0 + + + +n56:e->x48:w + + + + + +n56:e->x52:w + + + + + +x65 + +1:1 - 0:0 + + + +n56:e->x65:w + + + + + +n57 + +ready + + + +n57:e->x73:w + + + + + +n58 + +reinit + + + +n59 + +rst + + + +n59:e->c100:w + + + + + +n59:e->c103:w + + + + + +n59:e->c105:w + + + + + +n59:e->c106:w + + + + + +n59:e->c107:w + + + + + +n59:e->c110:w + + + + + +n59:e->c111:w + + + + + +n59:e->c112:w + + + + + +n59:e->c114:w + + + + + +n59:e->c115:w + + + + + +x56 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n59:e->x56:w + + + + + +x57 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n59:e->x57:w + + + + + +x58 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n59:e->x58:w + + + + + +x59 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n59:e->x59:w + + + + + +x60 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n59:e->x60:w + + + + + +x61 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n59:e->x61:w + + + + + +n59:e->x62:w + + + + + +n60 + +rx_cnt + + + +c81 + +A + +B + +$55 +$sub + +Y + + + +n60:e->c81:w + + + + + +c90 + +A + +$67 +$reduce_bool + +Y + + + +n60:e->c90:w + + + + + +x69 + +X -> 20:20 + +19:19 - 19:19 + +X -> 18:18 + +17:17 - 17:17 + +X -> 16:11 + +10:9 - 10:9 + +X -> 8:8 + +7:0 - 7:0 + + + +n60:e->x69:w + + + + + +n60:e->x69:w + + + + + +n60:e->x69:w + + + + + +n60:e->x69:w + + + + + +n61 + +rx_pulse + + + +n61:e->c102:w + + + + + +x51 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n61:e->x51:w + + + + + +n61:e->x58:w + + + + + +c139 + +A + +B + +S + +$31 +$mux + +Y + + + +n61:e->c139:w + + + + + +n62 + +rx_sticky + + + +c91 + +A + +B + +$68 +$or + +Y + + + +n62:e->c91:w + + + + + +n63 + +tx_cnt + + + +c82 + +A + +B + +$58 +$sub + +Y + + + +n63:e->c82:w + + + + + +c92 + +A + +$69 +$reduce_bool + +Y + + + +n63:e->c92:w + + + + + +x66 + +X -> 20:20 + +19:19 - 19:19 + +X -> 18:18 + +17:17 - 17:17 + +X -> 16:11 + +10:9 - 10:9 + +X -> 8:8 + +7:0 - 7:0 + + + +n63:e->x66:w + + + + + +n63:e->x66:w + + + + + +n63:e->x66:w + + + + + +n63:e->x66:w + + + + + +n64 + +tx_pulse + + + +n64:e->c99:w + + + + + +x50 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n64:e->x50:w + + + + + +n64:e->x56:w + + + + + +c136 + +A + +B + +S + +$17 +$mux + +Y + + + +n64:e->c136:w + + + + + +n65 + +tx_sticky + + + +c93 + +A + +B + +$70 +$or + +Y + + + +n65:e->c93:w + + + + + +v0 + +1'1 + + + +v0:e->c69:w + + + + + +x44 + +23:0 - 23:0 + + + +c69:e->x44:w + + + + + +c70 + +A + +B + +$42 +$eq + +Y + + + +n10 + + + + +c70:e->n10:w + + + + + +x1:e->c70:w + + + + + + +x2:e->c70:w + + + + + + +v3 + +1'1 + + + +v3:e->c71:w + + + + + +x43 + +17:0 - 17:0 + + + +c71:e->x43:w + + + + + +v4 + +18'111010100101111111 + + + +v4:e->c72:w + + + + + +n14 + + + + +c72:e->n14:w + + + + + +c73 + +A + +B + +$45 +$eq + +Y + + + +n15 + + + + +c73:e->n15:w + + + + + +x5:e->c73:w + + + + + + +x6:e->c73:w + + + + + + +v7 + +1'1 + + + +v7:e->c74:w + + + + + +x36 + +17:0 - 17:0 + + + +c74:e->x36:w + + + + + +v8 + +18'111010100101111111 + + + +v8:e->c75:w + + + + + +n17 + + + + +c75:e->n17:w + + + + + +c76 + +A + +B + +$48 +$eq + +Y + + + +n18 + + + + +c76:e->n18:w + + + + + +x9:e->c76:w + + + + + + +x10:e->c76:w + + + + + + +v11 + +1'1 + + + +v11:e->c77:w + + + + + +x35 + +17:0 - 17:0 + + + +c77:e->x35:w + + + + + +v12 + +18'111010100101111111 + + + +v12:e->c78:w + + + + + +n2 + + + + +c78:e->n2:w + + + + + +c80 + +A + +B + +$52 +$and + +Y + + + +c79:e->c80:w + + + + + +c80:e->c105:w + + + + + +x13:e->c80:w + + + + + + +v14 + +1'1 + + + +v14:e->c81:w + + + + + +n7 + + + + +c81:e->n7:w + + + + + +v15 + +1'1 + + + +v15:e->c82:w + + + + + +n9 + + + + +c82:e->n9:w + + + + + +n5 + + + + +c83:e->n5:w + + + + + +v16 + +1'1 + + + +v16:e->c84:w + + + + + +n11 + + + + +c84:e->n11:w + + + + + +v17 + +3'111 + + + +v17:e->c85:w + + + + + +c85:e->n45:w + + + + + +c86 + +A + +$63 +$not + +Y + + + +c86:e->n53:w + + + + + +x18:e->c86:w + + + + + + +c88 + +A + +B + +$65 +$and + +Y + + + +c87:e->c88:w + + + + + +c88:e->n58:w + + + + + +x19:e->c88:w + + + + + + +x20 + +0:0 - 1:1 + + + +c89:e->x20:w + + + + + + +x20:e->n56:w + + + + + +n6 + + + + +c90:e->n6:w + + + + + +x21 + +0:0 - 2:2 + + + +c91:e->x21:w + + + + + + +x21:e->n56:w + + + + + +n8 + + + + +c92:e->n8:w + + + + + +x22 + +0:0 - 3:3 + + + +c93:e->x22:w + + + + + + +x22:e->n56:w + + + + + +v23 + +1'1 + + + +v23:e->c99:w + + + + + +c99:e->n65:w + + + + + +x25 + +8:8 - 20:20 + +7:7 - 18:18 + +6:1 - 16:11 + +0:0 - 8:8 + + + +c100:e->x25:w + + + + + + +x24 + +20:20 - 8:8 + +18:18 - 7:7 + +16:11 - 6:1 + +8:8 - 0:0 + + + +x24:e->c100:w + + + + + + +x25:e->n63:w + + + + + +x25:e->n63:w + + + + + +x25:e->n63:w + + + + + +x25:e->n63:w + + + + + +x27 + +11:11 - 19:19 + +10:10 - 17:17 + +9:8 - 10:9 + +7:0 - 7:0 + + + +c101:e->x27:w + + + + + + +x26 + +19:19 - 11:11 + +17:17 - 10:10 + +10:9 - 9:8 + +7:0 - 7:0 + + + +x26:e->c101:w + + + + + + +x27:e->n63:w + + + + + +x27:e->n63:w + + + + + +x27:e->n63:w + + + + + +x27:e->n63:w + + + + + +v28 + +1'1 + + + +v28:e->c102:w + + + + + +c102:e->n62:w + + + + + +x30 + +8:8 - 20:20 + +7:7 - 18:18 + +6:1 - 16:11 + +0:0 - 8:8 + + + +c103:e->x30:w + + + + + + +x29 + +20:20 - 8:8 + +18:18 - 7:7 + +16:11 - 6:1 + +8:8 - 0:0 + + + +x29:e->c103:w + + + + + + +x30:e->n60:w + + + + + +x30:e->n60:w + + + + + +x30:e->n60:w + + + + + +x30:e->n60:w + + + + + +x32 + +11:11 - 19:19 + +10:10 - 17:17 + +9:8 - 10:9 + +7:0 - 7:0 + + + +c104:e->x32:w + + + + + + +x31 + +19:19 - 11:11 + +17:17 - 10:10 + +10:9 - 9:8 + +7:0 - 7:0 + + + +x31:e->c104:w + + + + + + +x32:e->n60:w + + + + + +x32:e->n60:w + + + + + +x32:e->n60:w + + + + + +x32:e->n60:w + + + + + +c105:e->n54:w + + + + + +c106:e->n43:w + + + + + +x33:e->c106:w + + + + + + +c107:e->n42:w + + + + + +x34:e->c107:w + + + + + + +c108:e->n52:w + + + + + +x35:e->c108:w + + + + + + +c109:e->n51:w + + + + + +x36:e->c109:w + + + + + + +x38 + +0:0 - 0:0 + + + +c110:e->x38:w + + + + + + +x37:e->c110:w + + + + + + +x38:e->n44:w + + + + + +x40 + +0:0 - 1:1 + + + +c111:e->x40:w + + + + + + +x39:e->c111:w + + + + + + +x40:e->n44:w + + + + + +x42 + +0:0 - 2:2 + + + +c112:e->x42:w + + + + + + +x41:e->c112:w + + + + + + +x42:e->n44:w + + + + + +c113:e->n50:w + + + + + +x43:e->c113:w + + + + + + +c114:e->n55:w + + + + + +x44:e->c114:w + + + + + + +x46 + +8:8 - 20:20 + +7:7 - 18:18 + +6:1 - 16:11 + +0:0 - 8:8 + + + +c115:e->x46:w + + + + + + +x45 + +20:20 - 8:8 + +18:18 - 7:7 + +16:11 - 6:1 + +8:8 - 0:0 + + + +x45:e->c115:w + + + + + + +x46:e->n49:w + + + + + +x46:e->n49:w + + + + + +x46:e->n49:w + + + + + +x46:e->n49:w + + + + + +x49 + +11:11 - 19:19 + +10:10 - 17:17 + +9:8 - 10:9 + +7:0 - 7:0 + + + +c116:e->x49:w + + + + + + +x47 + +19:19 - 11:11 + +17:17 - 10:10 + +10:9 - 9:8 + +7:0 - 7:0 + + + +x47:e->c116:w + + + + + + +x48:e->c116:w + + + + + + +x49:e->n49:w + + + + + +x49:e->n49:w + + + + + +x49:e->n49:w + + + + + +x49:e->n49:w + + + + + +c117 + +A + +$107 +$reduce_bool + +Y + + + +c117:e->c100:w + + + + + +x50:e->c117:w + + + + + + +c118 + +A + +$121 +$reduce_bool + +Y + + + +c118:e->c103:w + + + + + +x51:e->c118:w + + + + + + +c119 + +A + +$93 +$reduce_bool + +Y + + + +c119:e->c115:w + + + + + +x52:e->c119:w + + + + + + +c120 + +A + +$135 +$not + +Y + + + +x53 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c120:e->x53:w + + + + + +c121 + +A + +$140 +$not + +Y + + + +x54 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c121:e->x54:w + + + + + +c122 + +A + +$145 +$not + +Y + + + +x55 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c122:e->x55:w + + + + + +c123 + +A + +$138 +$reduce_and + +Y + + + +c123:e->c110:w + + + + + +x53:e->c123:w + + + + + + +c124 + +A + +$143 +$reduce_and + +Y + + + +c124:e->c111:w + + + + + +x54:e->c124:w + + + + + + +c125 + +A + +$148 +$reduce_and + +Y + + + +c125:e->c112:w + + + + + +x55:e->c125:w + + + + + + +c126 + +A + +$103 +$reduce_or + +Y + + + +c126:e->c101:w + + + + + +x56:e->c126:w + + + + + + +c127 + +A + +$113 +$reduce_or + +Y + + + +n27 + + + + +c127:e->n27:w + + + + + +x57:e->c127:w + + + + + + +c128 + +A + +$117 +$reduce_or + +Y + + + +c128:e->c104:w + + + + + +x58:e->c128:w + + + + + + +c129 + +A + +$129 +$reduce_or + +Y + + + +c129:e->c108:w + + + + + +x59:e->c129:w + + + + + + +c130 + +A + +$132 +$reduce_or + +Y + + + +c130:e->c109:w + + + + + +x60:e->c130:w + + + + + + +c131 + +A + +$151 +$reduce_or + +Y + + + +c131:e->c113:w + + + + + +x61:e->c131:w + + + + + + +c132 + +A + +$89 +$reduce_or + +Y + + + +c132:e->c116:w + + + + + +x62:e->c132:w + + + + + + +c134 + +A + +B + +S + +$1 +$mux + +Y + + + +c134:e->c138:w + + + + + +x63:e->c134:w + + + + + + +x64 + +20:0 - 20:0 + + + +x64:e->c134:w + + + + + + +x65:e->c134:w + + + + + + +c135 + +A + +B + +S + +$15 +$mux + +Y + + + +c135:e->c136:w + + + + + +x66:e->c135:w + + + + + + +x67 + +20:0 - 20:0 + + + +x67:e->c135:w + + + + + + +v68 + +21'101011111100100000000 + + + +v68:e->c136:w + + + + + +n37 + + + + +c136:e->n37:w + + + + + +c137 + +A + +B + +S + +$29 +$mux + +Y + + + +c137:e->c139:w + + + + + +x69:e->c137:w + + + + + + +x70 + +20:0 - 20:0 + + + +x70:e->c137:w + + + + + + +v71 + +21'101011111100100000000 + + + +v71:e->c138:w + + + + + +n41 + + + + +c138:e->n41:w + + + + + +v72 + +21'101011111100100000000 + + + +v72:e->c139:w + + + + + +n40 + + + + +c139:e->n40:w + + + + + +x74 + +1:1 - 4:4 + +0:0 - 0:0 + + + +x73:e->x74:w + + + + + + +x74:e->n56:w + + + + + +x74:e->n56:w + + + + + +n10:e->c120:w + + + + + +n10:e->x61:w + + + + + +n11:e->x47:w + + + + + +n11:e->x47:w + + + + + +n11:e->x47:w + + + + + +n11:e->x47:w + + + + + +n11:e->x64:w + + + + + +n14:e->x53:w + + + + + +n14:e->x61:w + + + + + +n15:e->c121:w + + + + + +n15:e->x60:w + + + + + +n17:e->x54:w + + + + + +n17:e->x60:w + + + + + +n18:e->c122:w + + + + + +n18:e->x59:w + + + + + +n2:e->x55:w + + + + + +n2:e->x59:w + + + + + +n27:e->c99:w + + + + + +n27:e->c102:w + + + + + +n37:e->x24:w + + + + + +n37:e->x24:w + + + + + +n37:e->x24:w + + + + + +n37:e->x24:w + + + + + +n40:e->x29:w + + + + + +n40:e->x29:w + + + + + +n40:e->x29:w + + + + + +n40:e->x29:w + + + + + +n41:e->x45:w + + + + + +n41:e->x45:w + + + + + +n41:e->x45:w + + + + + +n41:e->x45:w + + + + + +n5:e->c105:w + + + + + +n5:e->x57:w + + + + + +n6:e->c91:w + + + + + +n6:e->c104:w + + + + + +n6:e->x51:w + + + + + +n6:e->c137:w + + + + + +n7:e->x31:w + + + + + +n7:e->x31:w + + + + + +n7:e->x31:w + + + + + +n7:e->x31:w + + + + + +n7:e->x70:w + + + + + +n8:e->c93:w + + + + + +n8:e->c101:w + + + + + +n8:e->x50:w + + + + + +n8:e->c135:w + + + + + +n9:e->x26:w + + + + + +n9:e->x26:w + + + + + +n9:e->x26:w + + + + + +n9:e->x26:w + + + + + +n9:e->x67:w + + + + + diff --git a/diagrams/tx_frame_drain.svg b/diagrams/tx_frame_drain.svg new file mode 100644 index 0000000..33b6c06 --- /dev/null +++ b/diagrams/tx_frame_drain.svg @@ -0,0 +1,2257 @@ + + + + + + +tx_frame_drain + + + +n35 + +clk + + + +c69 + +CLK + +D + +SRST + +$101 +$sdff + +Q + + + +n35:e->c69:w + + + + + +c71 + +CLK + +D + +EN + +SRST + +$103 +$sdffe + +Q + + + +n35:e->c71:w + + + + + +c72 + +CLK + +D + +EN + +SRST + +$115 +$sdffe + +Q + + + +n35:e->c72:w + + + + + +c73 + +CLK + +D + +EN + +SRST + +$125 +$sdffe + +Q + + + +n35:e->c73:w + + + + + +c74 + +CLK + +D + +SRST + +$134 +$sdff + +Q + + + +n35:e->c74:w + + + + + +c75 + +CLK + +D + +EN + +SRST + +$84 +$sdffe + +Q + + + +n35:e->c75:w + + + + + +c76 + +CLK + +D + +EN + +SRST + +$88 +$sdffe + +Q + + + +n35:e->c76:w + + + + + +c77 + +CLK + +D + +EN + +SRST + +$92 +$sdffe + +Q + + + +n35:e->c77:w + + + + + +c78 + +CLK + +D + +EN + +SRST + +$96 +$sdffe + +Q + + + +n35:e->c78:w + + + + + +n36 + +do_load + + + +x2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n36:e->x2:w + + + + + +x4 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n36:e->x4:w + + + + + +x8 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n36:e->x8:w + + + + + +x12 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n36:e->x12:w + + + + + +c93 + +A + +B + +S + +$29 +$mux + +Y + + + +n36:e->c93:w + + + + + +c99 + +A + +B + +S + +$48 +$mux + +Y + + + +n36:e->c99:w + + + + + +c103 + +A + +B + +S + +$57 +$mux + +Y + + + +n36:e->c103:w + + + + + +c106 + +A + +B + +S + +$66 +$mux + +Y + + + +n36:e->c106:w + + + + + +c108 + +A + +B + +S + +$7 +$mux + +Y + + + +n36:e->c108:w + + + + + +n37 + +frame_len + + + +c59 + +A + +B + +$21 +$sub + +Y + + + +n37:e->c59:w + + + + + +c60 + +A + +B + +$22 +$eq + +Y + + + +n37:e->c60:w + + + + + +n38 + +hold_consumed + + + +n38:e->x8:w + + + + + +c88 + +A + +$137 +$not + +Y + + + +n38:e->c88:w + + + + + +c92 + +A + +B + +S + +$27 +$mux + +Y + + + +n38:e->c92:w + + + + + +c95 + +A + +B + +S + +$37 +$mux + +Y + + + +n38:e->c95:w + + + + + +n39 + +is_first + + + +n39:e->c76:w + + + + + +n40 + +load_pending + + + +c64 + +A + +B + +$26 +$and + +Y + + + +n40:e->c64:w + + + + + +n41 + +rst + + + +n41:e->c69:w + + + + + +n41:e->c71:w + + + + + +n41:e->c72:w + + + + + +n41:e->c73:w + + + + + +n41:e->c75:w + + + + + +n41:e->c76:w + + + + + +n41:e->c77:w + + + + + +n41:e->c78:w + + + + + +x13 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n41:e->x13:w + + + + + +n42 + +tx_bytes_r_data + + + +n42:e->c77:w + + + + + +n43 + +tx_bytes_r_en + + + +n44 + +tx_bytes_r_rdy + + + +c63 + +A + +B + +$25 +$and + +Y + + + +n44:e->c63:w + + + + + +n45 + +tx_ctrl_r_data + + + +c57 + +A + +$19 +$reduce_bool + +Y + + + +n45:e->c57:w + + + + + +c109 + +A + +B + +S + +$70 +$mux + +Y + + + +n45:e->c109:w + + + + + +n46 + +tx_ctrl_r_en + + + +n47 + +tx_ctrl_r_rdy + + + +x6 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n47:e->x6:w + + + + + +c97 + +A + +B + +S + +$41 +$mux + +Y + + + +n47:e->c97:w + + + + + +c102 + +A + +B + +S + +$52 +$mux + +Y + + + +n47:e->c102:w + + + + + +c105 + +A + +B + +S + +$61 +$mux + +Y + + + +n47:e->c105:w + + + + + +n47:e->c109:w + + + + + +n48 + +tx_data + + + +n49 + +tx_eof + + + +c94 + +A + +B + +S + +$35 +$mux + +Y + + + +n49:e->c94:w + + + + + +c110 + +A + +B + +S + +$75 +$mux + +Y + + + +n49:e->c110:w + + + + + +n50 + +tx_fsm_state + + + +n50:e->x2:w + + + + + +n50:e->x4:w + + + + + +x9 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n50:e->x9:w + + + + + +n50:e->x12:w + + + + + +c87 + +A + +$135 +$not + +Y + + + +n50:e->c87:w + + + + + +c91 + +A + +B + +S + +$1 +$mux + +Y + + + +n50:e->c91:w + + + + + +x23 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n50:e->x23:w + + + + + +c100 + +A + +B + +S + +$5 +$mux + +Y + + + +n50:e->c100:w + + + + + +x32 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n50:e->x32:w + + + + + +x38 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n50:e->x38:w + + + + + +x45 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n50:e->x45:w + + + + + +n50:e->c108:w + + + + + +n51 + +tx_irq + + + +n52 + +tx_ready + + + +c61 + +A + +B + +$23 +$and + +Y + + + +n52:e->c61:w + + + + + +n53 + +tx_sof + + + +n54 + +tx_valid + + + +n54:e->c61:w + + + + + +c62 + +A + +$24 +$not + +Y + + + +n54:e->c62:w + + + + + +c57:e->c102:w + + + + + +v0 + +1'1 + + + +v0:e->c59:w + + + + + +x42 + +15:0 - 15:0 + + + +c59:e->x42:w + + + + + +v1 + +1'1 + + + +v1:e->c60:w + + + + + +n2 + + + + +c60:e->n2:w + + + + + +c61:e->n38:w + + + + + +c62:e->c63:w + + + + + +c63:e->c64:w + + + + + +c64:e->c91:w + + + + + +c69:e->n50:w + + + + + +c71:e->n40:w + + + + + +c72:e->n39:w + + + + + +c73:e->n37:w + + + + + +c74:e->n51:w + + + + + +c75:e->n49:w + + + + + +c76:e->n53:w + + + + + +c77:e->n48:w + + + + + +c78:e->n54:w + + + + + +v3 + +2'01 + + + +c79 + +A + +B + +$107 +$ne + +Y + + + +v3:e->c79:w + + + + + +n7 + + + + +c79:e->n7:w + + + + + +x2:e->c79:w + + + + + + +v5 + +3'011 + + + +c80 + +A + +B + +$109 +$ne + +Y + + + +v5:e->c80:w + + + + + +x10 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c80:e->x10:w + + + + + +x4:e->c80:w + + + + + + +v7 + +2'10 + + + +c81 + +A + +B + +$111 +$ne + +Y + + + +v7:e->c81:w + + + + + +n9 + + + + +c81:e->n9:w + + + + + +x6:e->c81:w + + + + + + +c82 + +A + +$98 +$reduce_bool + +Y + + + +c82:e->x9:w + + + + + +x8:e->c82:w + + + + + + +c83 + +A + +$100 +$reduce_and + +Y + + + +c83:e->c78:w + + + + + +x9:e->c83:w + + + + + + +c84 + +A + +$113 +$reduce_and + +Y + + + +c84:e->c71:w + + + + + +x10:e->c84:w + + + + + + +c85 + +A + +$123 +$reduce_and + +Y + + + +n12 + + + + +c85:e->n12:w + + + + + +x11 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x11:e->c85:w + + + + + + +c86 + +A + +$86 +$reduce_and + +Y + + + +n13 + + + + +c86:e->n13:w + + + + + +x12:e->c86:w + + + + + + +n16 + + + + +c87:e->n16:w + + + + + +c88:e->x13:w + + + + + +c89 + +A + +$140 +$reduce_or + +Y + + + +c89:e->c74:w + + + + + +x13:e->c89:w + + + + + + +v14 + +1'0 + + + +v14:e->c91:w + + + + + +c91:e->n36:w + + + + + +v15 + +1'x + + + +v15:e->c92:w + + + + + +v16 + +1'0 + + + +v16:e->c92:w + + + + + +c92:e->c93:w + + + + + +v17 + +1'1 + + + +v17:e->c93:w + + + + + +c93:e->c78:w + + + + + +v18 + +1'1 + + + +v18:e->c94:w + + + + + +v19 + +1'0 + + + +v19:e->c94:w + + + + + +c94:e->c95:w + + + + + +v20 + +1'1 + + + +v20:e->c95:w + + + + + +x22 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c95:e->x22:w + + + + + +v21 + +1'0 + + + +c96 + +A + +B + +S + +$39 +$pmux + +Y + + + +v21:e->c96:w + + + + + +c96:e->c69:w + + + + + +x22:e->c96:w + + + + + + +x23:e->c96:w + + + + + + +v24 + +1'0 + + + +v24:e->c97:w + + + + + +v25 + +1'1 + + + +v25:e->c97:w + + + + + +n23 + + + + +c97:e->n23:w + + + + + +v26 + +1'x + + + +c98 + +A + +B + +S + +$46 +$mux + +Y + + + +v26:e->c98:w + + + + + +v27 + +1'0 + + + +v27:e->c98:w + + + + + +c98:e->c99:w + + + + + +v28 + +1'x + + + +v28:e->c99:w + + + + + +x31 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c99:e->x31:w + + + + + +v29 + +1'0 + + + +v29:e->c100:w + + + + + +c100:e->n46:w + + + + + +v30 + +1'x + + + +c101 + +A + +B + +S + +$50 +$pmux + +Y + + + +v30:e->c101:w + + + + + +c101:e->c71:w + + + + + +x31:e->c101:w + + + + + + +x32:e->c101:w + + + + + + +v33 + +1'x + + + +v33:e->c102:w + + + + + +c102:e->x31:w + + + + + +v34 + +1'x + + + +v34:e->c103:w + + + + + +v35 + +1'0 + + + +v35:e->c103:w + + + + + +x37 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c103:e->x37:w + + + + + +v36 + +1'x + + + +c104 + +A + +B + +S + +$59 +$pmux + +Y + + + +v36:e->c104:w + + + + + +c104:e->c72:w + + + + + +x37:e->c104:w + + + + + + +x38:e->c104:w + + + + + + +v39 + +1'x + + + +v39:e->c105:w + + + + + +v40 + +1'1 + + + +v40:e->c105:w + + + + + +c105:e->x37:w + + + + + +v41 + +16'x + + + +v41:e->c106:w + + + + + +x44 + +15:0 - 31:16 + +15:0 - 15:0 + + + +c106:e->x44:w + + + + + +x42:e->c106:w + + + + + + +v43 + +16'x + + + +c107 + +A + +B + +S + +$68 +$pmux + +Y + + + +v43:e->c107:w + + + + + +c107:e->c73:w + + + + + +x44:e->c107:w + + + + + + +x45:e->c107:w + + + + + + +v46 + +1'0 + + + +v46:e->c108:w + + + + + +c108:e->n43:w + + + + + +v47 + +16'x + + + +v47:e->c109:w + + + + + +c109:e->x44:w + + + + + +v48 + +1'0 + + + +v48:e->c110:w + + + + + +v49 + +1'1 + + + +v49:e->c110:w + + + + + +c110:e->c74:w + + + + + +n12:e->c72:w + + + + + +n12:e->c73:w + + + + + +n13:e->c75:w + + + + + +n13:e->c76:w + + + + + +n13:e->c77:w + + + + + +n16:e->x6:w + + + + + +n16:e->x13:w + + + + + +n16:e->x23:w + + + + + +n16:e->x32:w + + + + + +n16:e->x38:w + + + + + +n16:e->x45:w + + + + + +n2:e->c75:w + + + + + +n2:e->x4:w + + + + + +n2:e->c98:w + + + + + +n23:e->x22:w + + + + + +n23:e->c100:w + + + + + +n7:e->x10:w + + + + + +n7:e->x11:w + + + + + +n9:e->x10:w + + + + + +n9:e->x11:w + + + + + diff --git a/diagrams/w5100_master.svg b/diagrams/w5100_master.svg new file mode 100644 index 0000000..81746b5 --- /dev/null +++ b/diagrams/w5100_master.svg @@ -0,0 +1,22686 @@ + + + + + + +w5100_master + + + +n333 + +bus_a + + + +c459 + +CLK + +D + +EN + +SRST + +$1193 +$sdffe + +Q + + + +n333:e->c459:w + + + + + +n334 + +bus_addr + + + +n335 + +bus_ctr + + + +c409 + +A + +B + +$260 +$add + +Y + + + +n335:e->c409:w + + + + + +c410 + +A + +B + +$261 +$eq + +Y + + + +n335:e->c410:w + + + + + +n336 + +bus_data_i + + + +c454 + +CLK + +D + +EN + +SRST + +$1161 +$sdffe + +Q + + + +n336:e->c454:w + + + + + +n337 + +bus_data_o + + + +n338 + +bus_data_oe + + + +n339 + +bus_done + + + +x60 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x60:w + + + + + +x62 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x62:w + + + + + +x64 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x64:w + + + + + +x66 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x66:w + + + + + +x68 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x68:w + + + + + +x70 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x70:w + + + + + +x72 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x72:w + + + + + +x74 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x74:w + + + + + +x76 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x76:w + + + + + +x78 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x78:w + + + + + +x80 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x80:w + + + + + +x82 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x82:w + + + + + +x84 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x84:w + + + + + +x93 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x93:w + + + + + +x95 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x95:w + + + + + +x100 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x100:w + + + + + +x133 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x133:w + + + + + +x134 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n339:e->x134:w + + + + + +c684 + +A + +B + +S + +$489 +$mux + +Y + + + +n339:e->c684:w + + + + + +c685 + +A + +B + +S + +$493 +$mux + +Y + + + +n339:e->c685:w + + + + + +c688 + +A + +B + +S + +$500 +$mux + +Y + + + +n339:e->c688:w + + + + + +c692 + +A + +B + +S + +$509 +$mux + +Y + + + +n339:e->c692:w + + + + + +c693 + +A + +B + +S + +$513 +$mux + +Y + + + +n339:e->c693:w + + + + + +c696 + +A + +B + +S + +$520 +$mux + +Y + + + +n339:e->c696:w + + + + + +c699 + +A + +B + +S + +$528 +$mux + +Y + + + +n339:e->c699:w + + + + + +c700 + +A + +B + +S + +$532 +$mux + +Y + + + +n339:e->c700:w + + + + + +c703 + +A + +B + +S + +$539 +$mux + +Y + + + +n339:e->c703:w + + + + + +c706 + +A + +B + +S + +$549 +$mux + +Y + + + +n339:e->c706:w + + + + + +c710 + +A + +B + +S + +$560 +$mux + +Y + + + +n339:e->c710:w + + + + + +c712 + +A + +B + +S + +$564 +$mux + +Y + + + +n339:e->c712:w + + + + + +c714 + +A + +B + +S + +$568 +$mux + +Y + + + +n339:e->c714:w + + + + + +c722 + +A + +B + +S + +$593 +$mux + +Y + + + +n339:e->c722:w + + + + + +c724 + +A + +B + +S + +$596 +$mux + +Y + + + +n339:e->c724:w + + + + + +c730 + +A + +B + +S + +$613 +$mux + +Y + + + +n339:e->c730:w + + + + + +c734 + +A + +B + +S + +$626 +$mux + +Y + + + +n339:e->c734:w + + + + + +c766 + +A + +B + +S + +$734 +$mux + +Y + + + +n339:e->c766:w + + + + + +n340 + +bus_fsm_state + + + +c754 + +A + +B + +$706_CMP0 +$eq + +Y + + + +n340:e->c754:w + + + + + +c758 + +A + +$719_CMP0 +$logic_not + +Y + + + +n340:e->c758:w + + + + + +c760 + +A + +B + +$723_CMP0 +$eq + +Y + + + +n340:e->c760:w + + + + + +n341 + +bus_go + + + +x103 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n341:e->x103:w + + + + + +x142 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n341:e->x142:w + + + + + +x144 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n341:e->x144:w + + + + + +c742 + +A + +B + +S + +$651 +$mux + +Y + + + +n341:e->c742:w + + + + + +c744 + +A + +B + +S + +$666 +$mux + +Y + + + +n341:e->c744:w + + + + + +c748 + +A + +B + +S + +$687 +$mux + +Y + + + +n341:e->c748:w + + + + + +c752 + +A + +B + +S + +$698 +$mux + +Y + + + +n341:e->c752:w + + + + + +c755 + +A + +B + +S + +$710 +$mux + +Y + + + +n341:e->c755:w + + + + + +c757 + +A + +B + +S + +$717 +$mux + +Y + + + +n341:e->c757:w + + + + + +n342 + +bus_rdata + + + +c446 + +CLK + +D + +EN + +SRST + +$1070 +$sdffe + +Q + + + +n342:e->c446:w + + + + + +c447 + +CLK + +D + +EN + +SRST + +$1074 +$sdffe + +Q + + + +n342:e->c447:w + + + + + +c763 + +A + +B + +S + +$730 +$mux + +Y + + + +n342:e->c763:w + + + + + +n343 + +bus_rw + + + +c458 + +CLK + +D + +EN + +SRST + +$1189 +$sdffe + +Q + + + +n343:e->c458:w + + + + + +n343:e->x142:w + + + + + +c747 + +A + +B + +S + +$685 +$mux + +Y + + + +n343:e->c747:w + + + + + +c751 + +A + +B + +S + +$696 +$mux + +Y + + + +n343:e->c751:w + + + + + +n344 + +bus_wdata + + + +c456 + +CLK + +D + +EN + +SRST + +$1177 +$sdffe + +Q + + + +n344:e->c456:w + + + + + +n345 + +clk + + + +c438 + +CLK + +D + +EN + +SRST + +$1036 +$sdffe + +Q + + + +n345:e->c438:w + + + + + +c439 + +CLK + +D + +EN + +SRST + +$1040 +$sdffe + +Q + + + +n345:e->c439:w + + + + + +c440 + +CLK + +D + +EN + +SRST + +$1044 +$sdffe + +Q + + + +n345:e->c440:w + + + + + +c441 + +CLK + +D + +EN + +SRST + +$1048 +$sdffe + +Q + + + +n345:e->c441:w + + + + + +c442 + +CLK + +D + +EN + +SRST + +$1052 +$sdffe + +Q + + + +n345:e->c442:w + + + + + +c443 + +CLK + +D + +EN + +SRST + +$1056 +$sdffe + +Q + + + +n345:e->c443:w + + + + + +c444 + +CLK + +D + +EN + +SRST + +$1060 +$sdffe + +Q + + + +n345:e->c444:w + + + + + +c445 + +CLK + +D + +EN + +SRST + +$1064 +$sdffe + +Q + + + +n345:e->c445:w + + + + + +n345:e->c446:w + + + + + +n345:e->c447:w + + + + + +c448 + +CLK + +D + +EN + +SRST + +$1078 +$sdffe + +Q + + + +n345:e->c448:w + + + + + +c449 + +CLK + +D + +EN + +SRST + +$1116 +$sdffe + +Q + + + +n345:e->c449:w + + + + + +c450 + +CLK + +D + +EN + +SRST + +$1130 +$sdffe + +Q + + + +n345:e->c450:w + + + + + +c451 + +CLK + +D + +EN + +SRST + +$1140 +$sdffe + +Q + + + +n345:e->c451:w + + + + + +c452 + +CLK + +D + +EN + +SRST + +$1150 +$sdffe + +Q + + + +n345:e->c452:w + + + + + +c453 + +CLK + +D + +SRST + +$1159 +$sdff + +Q + + + +n345:e->c453:w + + + + + +n345:e->c454:w + + + + + +c455 + +CLK + +D + +EN + +SRST + +$1167 +$sdffe + +Q + + + +n345:e->c455:w + + + + + +n345:e->c456:w + + + + + +c457 + +CLK + +D + +EN + +SRST + +$1181 +$sdffe + +Q + + + +n345:e->c457:w + + + + + +n345:e->c458:w + + + + + +n345:e->c459:w + + + + + +c460 + +CLK + +D + +EN + +SRST + +$1197 +$sdffe + +Q + + + +n345:e->c460:w + + + + + +c461 + +CLK + +D + +EN + +SRST + +$1201 +$sdffe + +Q + + + +n345:e->c461:w + + + + + +c462 + +CLK + +D + +EN + +SRST + +$1209 +$sdffe + +Q + + + +n345:e->c462:w + + + + + +c463 + +CLK + +D + +EN + +SRST + +$1217 +$sdffe + +Q + + + +n345:e->c463:w + + + + + +c464 + +CLK + +D + +SRST + +$1220 +$sdff + +Q + + + +n345:e->c464:w + + + + + +c465 + +CLK + +D + +EN + +SRST + +$898 +$sdffe + +Q + + + +n345:e->c465:w + + + + + +c466 + +CLK + +D + +EN + +SRST + +$900 +$sdffe + +Q + + + +n345:e->c466:w + + + + + +c467 + +CLK + +D + +EN + +SRST + +$904 +$sdffe + +Q + + + +n345:e->c467:w + + + + + +c468 + +CLK + +D + +EN + +SRST + +$908 +$sdffe + +Q + + + +n345:e->c468:w + + + + + +c469 + +CLK + +D + +EN + +SRST + +$912 +$sdffe + +Q + + + +n345:e->c469:w + + + + + +c470 + +CLK + +D + +EN + +SRST + +$916 +$sdffe + +Q + + + +n345:e->c470:w + + + + + +c471 + +CLK + +D + +EN + +SRST + +$920 +$sdffe + +Q + + + +n345:e->c471:w + + + + + +c472 + +CLK + +D + +EN + +SRST + +$930 +$sdffe + +Q + + + +n345:e->c472:w + + + + + +c473 + +CLK + +D + +EN + +SRST + +$932 +$sdffe + +Q + + + +n345:e->c473:w + + + + + +c474 + +CLK + +D + +EN + +SRST + +$934 +$sdffe + +Q + + + +n345:e->c474:w + + + + + +c475 + +CLK + +D + +EN + +SRST + +$936 +$sdffe + +Q + + + +n345:e->c475:w + + + + + +c476 + +CLK + +D + +EN + +SRST + +$938 +$sdffe + +Q + + + +n345:e->c476:w + + + + + +c477 + +CLK + +D + +EN + +SRST + +$942 +$sdffe + +Q + + + +n345:e->c477:w + + + + + +c478 + +CLK + +D + +EN + +SRST + +$944 +$sdffe + +Q + + + +n345:e->c478:w + + + + + +c479 + +CLK + +D + +EN + +SRST + +$948 +$sdffe + +Q + + + +n345:e->c479:w + + + + + +c480 + +CLK + +D + +EN + +SRST + +$952 +$sdffe + +Q + + + +n345:e->c480:w + + + + + +c481 + +CLK + +D + +EN + +SRST + +$956 +$sdffe + +Q + + + +n345:e->c481:w + + + + + +c482 + +CLK + +D + +EN + +SRST + +$960 +$sdffe + +Q + + + +n345:e->c482:w + + + + + +c483 + +CLK + +D + +EN + +SRST + +$968 +$sdffe + +Q + + + +n345:e->c483:w + + + + + +c484 + +CLK + +D + +EN + +SRST + +$976 +$sdffe + +Q + + + +n345:e->c484:w + + + + + +c485 + +CLK + +D + +EN + +SRST + +$984 +$sdffe + +Q + + + +n345:e->c485:w + + + + + +c486 + +CLK + +D + +EN + +SRST + +$988 +$sdffe + +Q + + + +n345:e->c486:w + + + + + +c487 + +CLK + +D + +EN + +SRST + +$992 +$sdffe + +Q + + + +n345:e->c487:w + + + + + +n346 + +cs_n + + + +n347 + +cur_addr + + + +c415 + +A + +B + +$277 +$eq + +Y + + + +n347:e->c415:w + + + + + +c418 + +A + +B + +$280 +$add + +Y + + + +n347:e->c418:w + + + + + +n348 + +init_done + + + +n349 + +init_req + + + +x54 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n349:e->x54:w + + + + + +x131 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n349:e->x131:w + + + + + +c677 + +A + +B + +S + +$369 +$mux + +Y + + + +n349:e->c677:w + + + + + +n350 + +mac0 + + + +x182 + +15:0 - 79:64 + +7:0 - 63:56 + +15:0 - 55:40 + +15:8 - 39:32 + +7:0 - 31:24 + +15:8 - 23:16 + +15:0 - 15:0 + + + +n350:e->x182:w + + + + + +n351 + +mac1 + + + +x409 + +7:0 - 31:24 + +7:0 - 23:16 + +7:0 - 15:8 + +7:0 - 7:0 + + + +n351:e->x409:w + + + + + +n352 + +mac2 + + + +n352:e->c475:w + + + + + +n353 + +mac3 + + + +n353:e->c474:w + + + + + +n354 + +mac4 + + + +n354:e->c473:w + + + + + +n355 + +mac5 + + + +n355:e->c472:w + + + + + +n356 + +main_fsm_state + + + +c616 + +A + +B + +$287_CMP0 +$eq + +Y + + + +n356:e->c616:w + + + + + +c617 + +A + +B + +$288_CMP0 +$eq + +Y + + + +n356:e->c617:w + + + + + +c620 + +A + +B + +$291_CMP0 +$eq + +Y + + + +n356:e->c620:w + + + + + +c621 + +A + +B + +$292_CMP0 +$eq + +Y + + + +n356:e->c621:w + + + + + +c623 + +A + +B + +$295_CMP0 +$eq + +Y + + + +n356:e->c623:w + + + + + +c624 + +A + +B + +$296_CMP0 +$eq + +Y + + + +n356:e->c624:w + + + + + +c626 + +A + +B + +$299_CMP0 +$eq + +Y + + + +n356:e->c626:w + + + + + +c627 + +A + +B + +$300_CMP0 +$eq + +Y + + + +n356:e->c627:w + + + + + +c629 + +A + +B + +$303_CMP0 +$eq + +Y + + + +n356:e->c629:w + + + + + +c630 + +A + +B + +$304_CMP0 +$eq + +Y + + + +n356:e->c630:w + + + + + +c632 + +A + +B + +$307_CMP0 +$eq + +Y + + + +n356:e->c632:w + + + + + +c633 + +A + +B + +$308_CMP0 +$eq + +Y + + + +n356:e->c633:w + + + + + +c635 + +A + +B + +$312_CMP0 +$eq + +Y + + + +n356:e->c635:w + + + + + +c637 + +A + +B + +$315_CMP0 +$eq + +Y + + + +n356:e->c637:w + + + + + +c638 + +A + +B + +$316_CMP0 +$eq + +Y + + + +n356:e->c638:w + + + + + +c640 + +A + +B + +$319_CMP0 +$eq + +Y + + + +n356:e->c640:w + + + + + +c641 + +A + +B + +$320_CMP0 +$eq + +Y + + + +n356:e->c641:w + + + + + +c643 + +A + +B + +$323_CMP0 +$eq + +Y + + + +n356:e->c643:w + + + + + +c644 + +A + +B + +$324_CMP0 +$eq + +Y + + + +n356:e->c644:w + + + + + +c646 + +A + +B + +$327_CMP0 +$eq + +Y + + + +n356:e->c646:w + + + + + +c647 + +A + +B + +$328_CMP0 +$eq + +Y + + + +n356:e->c647:w + + + + + +c649 + +A + +B + +$331_CMP0 +$eq + +Y + + + +n356:e->c649:w + + + + + +c650 + +A + +B + +$332_CMP0 +$eq + +Y + + + +n356:e->c650:w + + + + + +c652 + +A + +B + +$336_CMP0 +$eq + +Y + + + +n356:e->c652:w + + + + + +c653 + +A + +B + +$337_CMP0 +$eq + +Y + + + +n356:e->c653:w + + + + + +c655 + +A + +B + +$340_CMP0 +$eq + +Y + + + +n356:e->c655:w + + + + + +c656 + +A + +B + +$341_CMP0 +$eq + +Y + + + +n356:e->c656:w + + + + + +c658 + +A + +B + +$344_CMP0 +$eq + +Y + + + +n356:e->c658:w + + + + + +c659 + +A + +B + +$345_CMP0 +$eq + +Y + + + +n356:e->c659:w + + + + + +c661 + +A + +B + +$348_CMP0 +$eq + +Y + + + +n356:e->c661:w + + + + + +c662 + +A + +B + +$349_CMP0 +$eq + +Y + + + +n356:e->c662:w + + + + + +c665 + +A + +B + +$352_CMP0 +$eq + +Y + + + +n356:e->c665:w + + + + + +c666 + +A + +B + +$353_CMP0 +$eq + +Y + + + +n356:e->c666:w + + + + + +c668 + +A + +B + +$356_CMP0 +$eq + +Y + + + +n356:e->c668:w + + + + + +c669 + +A + +B + +$357_CMP0 +$eq + +Y + + + +n356:e->c669:w + + + + + +c671 + +A + +B + +$360_CMP0 +$eq + +Y + + + +n356:e->c671:w + + + + + +c673 + +A + +B + +$363_CMP0 +$eq + +Y + + + +n356:e->c673:w + + + + + +c674 + +A + +B + +$364_CMP0 +$eq + +Y + + + +n356:e->c674:w + + + + + +c681 + +A + +B + +$411_CMP0 +$eq + +Y + + + +n356:e->c681:w + + + + + +c682 + +A + +$412_CMP0 +$logic_not + +Y + + + +n356:e->c682:w + + + + + +n357 + +par + + + +x16 + +47:40 - 7:0 + + + +n357:e->x16:w + + + + + +x17 + +39:32 - 7:0 + + + +n357:e->x17:w + + + + + +x18 + +31:24 - 7:0 + + + +n357:e->x18:w + + + + + +x19 + +23:16 - 7:0 + + + +n357:e->x19:w + + + + + +x20 + +15:8 - 7:0 + + + +n357:e->x20:w + + + + + +x21 + +7:0 - 7:0 + + + +n357:e->x21:w + + + + + +n358 + +pkt_len + + + +c431 + +A + +B + +$294 +$sub + +Y + + + +n358:e->c431:w + + + + + +c432 + +A + +B + +$296 +$add + +Y + + + +n358:e->c432:w + + + + + +n359 + +r_idx + + + +c406 + +A + +$185 +$logic_not + +Y + + + +n359:e->c406:w + + + + + +c414 + +A + +B + +$276 +$eq + +Y + + + +n359:e->c414:w + + + + + +c417 + +A + +B + +$279 +$add + +Y + + + +n359:e->c417:w + + + + + +n360 + +rbuf0 + + + +x23 + +7:0 - 15:8 + +7:0 - 7:0 + + + +n360:e->x23:w + + + + + +x24 + +7:0 - 15:8 + +7:0 - 7:0 + + + +n360:e->x24:w + + + + + +x25 + +7:0 - 15:8 + +7:0 - 7:0 + + + +n360:e->x25:w + + + + + +x326 + +7:0 - 15:8 + +7:0 - 7:0 + + + +n360:e->x326:w + + + + + +n361 + +rbuf1 + + + +n361:e->x23:w + + + + + +n361:e->x24:w + + + + + +n361:e->x25:w + + + + + +n361:e->x326:w + + + + + +n362 + +rd_n + + + +n363 + +rst + + + +n363:e->c438:w + + + + + +n363:e->c439:w + + + + + +n363:e->c440:w + + + + + +n363:e->c441:w + + + + + +n363:e->c442:w + + + + + +n363:e->c443:w + + + + + +n363:e->c444:w + + + + + +n363:e->c445:w + + + + + +n363:e->c446:w + + + + + +n363:e->c447:w + + + + + +n363:e->c448:w + + + + + +n363:e->c449:w + + + + + +n363:e->c450:w + + + + + +n363:e->c451:w + + + + + +n363:e->c452:w + + + + + +n363:e->c453:w + + + + + +n363:e->c454:w + + + + + +n363:e->c455:w + + + + + +n363:e->c456:w + + + + + +n363:e->c457:w + + + + + +n363:e->c458:w + + + + + +n363:e->c459:w + + + + + +n363:e->c460:w + + + + + +n363:e->c461:w + + + + + +n363:e->c462:w + + + + + +n363:e->c463:w + + + + + +n363:e->c464:w + + + + + +n363:e->c465:w + + + + + +n363:e->c466:w + + + + + +n363:e->c467:w + + + + + +n363:e->c468:w + + + + + +n363:e->c469:w + + + + + +n363:e->c470:w + + + + + +n363:e->c471:w + + + + + +n363:e->c472:w + + + + + +n363:e->c473:w + + + + + +n363:e->c474:w + + + + + +n363:e->c475:w + + + + + +n363:e->c476:w + + + + + +n363:e->c477:w + + + + + +n363:e->c478:w + + + + + +n363:e->c479:w + + + + + +n363:e->c480:w + + + + + +n363:e->c481:w + + + + + +n363:e->c482:w + + + + + +n363:e->c483:w + + + + + +n363:e->c484:w + + + + + +n363:e->c485:w + + + + + +n363:e->c486:w + + + + + +n363:e->c487:w + + + + + +n364 + +rw_r + + + +c552 + +A + +$1162 +$not + +Y + + + +n364:e->c552:w + + + + + +n365 + +rx_data + + + +n366 + +rx_eof + + + +n367 + +rx_rd + + + +c426 + +A + +B + +$289 +$and + +Y + + + +n367:e->c426:w + + + + + +c428 + +A + +B + +$291 +$add + +Y + + + +n367:e->c428:w + + + + + +n367:e->c432:w + + + + + +n368 + +rx_ready + + + +x90 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n368:e->x90:w + + + + + +c687 + +A + +B + +S + +$497 +$mux + +Y + + + +n368:e->c687:w + + + + + +c720 + +A + +B + +S + +$584 +$mux + +Y + + + +n368:e->c720:w + + + + + +c727 + +A + +B + +S + +$604 +$mux + +Y + + + +n368:e->c727:w + + + + + +n369 + +rx_rsr + + + +c425 + +A + +$288 +$logic_not + +Y + + + +n369:e->c425:w + + + + + +n370 + +rx_sof + + + +n371 + +rx_valid + + + +n372 + +s_count + + + +c413 + +A + +B + +$274 +$add + +Y + + + +n372:e->c413:w + + + + + +c424 + +A + +B + +$287 +$add + +Y + + + +n372:e->c424:w + + + + + +n373 + +s_last_r + + + +c695 + +A + +B + +S + +$518 +$mux + +Y + + + +n373:e->c695:w + + + + + +n374 + +tx_data + + + +c771 + +A + +B + +S + +$743 +$mux + +Y + + + +n374:e->c771:w + + + + + +n375 + +tx_eof + + + +n375:e->c445:w + + + + + +n376 + +tx_ready + + + +n377 + +tx_sof + + + +c419 + +A + +B + +$282 +$and + +Y + + + +n377:e->c419:w + + + + + +n378 + +tx_valid + + + +n378:e->c419:w + + + + + +x88 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n378:e->x88:w + + + + + +x132 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n378:e->x132:w + + + + + +c697 + +A + +B + +S + +$523 +$mux + +Y + + + +n378:e->c697:w + + + + + +n378:e->c771:w + + + + + +c775 + +A + +B + +S + +$765 +$mux + +Y + + + +n378:e->c775:w + + + + + +c786 + +A + +B + +S + +$811 +$mux + +Y + + + +n378:e->c786:w + + + + + +n379 + +tx_wr + + + +c422 + +A + +B + +$285 +$and + +Y + + + +n379:e->c422:w + + + + + +n379:e->c424:w + + + + + +n379:e->x182:w + + + + + +n379:e->x409:w + + + + + +n380 + +w5100_int_n + + + +n380:e->x54:w + + + + + +c676 + +A + +B + +S + +$367 +$mux + +Y + + + +n380:e->c676:w + + + + + +n381 + +w5100_rst_n + + + +n382 + +wait_ctr + + + +c420 + +A + +B + +$283 +$eq + +Y + + + +n382:e->c420:w + + + + + +c421 + +A + +B + +$284 +$add + +Y + + + +n382:e->c421:w + + + + + +n383 + +wbuf0 + + + +x488 + +7:0 - 55:48 + +15:0 - 47:32 + +7:0 - 31:24 + +7:0 - 23:16 + +15:0 - 15:0 + + + +n383:e->x488:w + + + + + +x531 + +7:0 - 47:40 + +7:0 - 39:32 + +7:0 - 31:24 + +7:0 - 23:16 + +7:0 - 15:8 + +7:0 - 7:0 + + + +n383:e->x531:w + + + + + +n384 + +wbuf1 + + + +n384:e->x531:w + + + + + +n385 + +wbuf2 + + + +n385:e->x531:w + + + + + +n386 + +wbuf3 + + + +n386:e->x531:w + + + + + +n387 + +wbuf4 + + + +n387:e->x531:w + + + + + +n388 + +wbuf5 + + + +n388:e->x531:w + + + + + +n389 + +wr_n + + + +n390 + +xfer_addr + + + +c725 + +A + +B + +S + +$599 +$mux + +Y + + + +n390:e->c725:w + + + + + +n390:e->x488:w + + + + + +n391 + +xfer_direct + + + +c716 + +A + +B + +S + +$573 +$mux + +Y + + + +n391:e->c716:w + + + + + +n392 + +xfer_done + + + +x26 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x26:w + + + + + +x28 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x28:w + + + + + +x30 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x30:w + + + + + +x32 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x32:w + + + + + +x34 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x34:w + + + + + +x36 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x36:w + + + + + +x38 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x38:w + + + + + +x40 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x40:w + + + + + +x42 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x42:w + + + + + +x44 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x44:w + + + + + +x46 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x46:w + + + + + +x48 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x48:w + + + + + +x50 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x50:w + + + + + +x52 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x52:w + + + + + +x117 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x117:w + + + + + +x120 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x120:w + + + + + +x126 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x126:w + + + + + +x128 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x128:w + + + + + +x146 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x146:w + + + + + +x147 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x147:w + + + + + +x148 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n392:e->x148:w + + + + + +c609 + +A + +B + +S + +$181 +$mux + +Y + + + +n392:e->c609:w + + + + + +c618 + +A + +B + +S + +$289 +$mux + +Y + + + +n392:e->c618:w + + + + + +c622 + +A + +B + +S + +$293 +$mux + +Y + + + +n392:e->c622:w + + + + + +c625 + +A + +B + +S + +$297 +$mux + +Y + + + +n392:e->c625:w + + + + + +c628 + +A + +B + +S + +$301 +$mux + +Y + + + +n392:e->c628:w + + + + + +c631 + +A + +B + +S + +$305 +$mux + +Y + + + +n392:e->c631:w + + + + + +c636 + +A + +B + +S + +$313 +$mux + +Y + + + +n392:e->c636:w + + + + + +c639 + +A + +B + +S + +$317 +$mux + +Y + + + +n392:e->c639:w + + + + + +c642 + +A + +B + +S + +$321 +$mux + +Y + + + +n392:e->c642:w + + + + + +c645 + +A + +B + +S + +$325 +$mux + +Y + + + +n392:e->c645:w + + + + + +c648 + +A + +B + +S + +$329 +$mux + +Y + + + +n392:e->c648:w + + + + + +c651 + +A + +B + +S + +$334 +$mux + +Y + + + +n392:e->c651:w + + + + + +c654 + +A + +B + +S + +$338 +$mux + +Y + + + +n392:e->c654:w + + + + + +c657 + +A + +B + +S + +$342 +$mux + +Y + + + +n392:e->c657:w + + + + + +c660 + +A + +B + +S + +$346 +$mux + +Y + + + +n392:e->c660:w + + + + + +c663 + +A + +B + +S + +$35 +$mux + +Y + + + +n392:e->c663:w + + + + + +c664 + +A + +B + +S + +$350 +$mux + +Y + + + +n392:e->c664:w + + + + + +c667 + +A + +B + +S + +$354 +$mux + +Y + + + +n392:e->c667:w + + + + + +c672 + +A + +B + +S + +$361 +$mux + +Y + + + +n392:e->c672:w + + + + + +c679 + +A + +B + +S + +$39 +$mux + +Y + + + +n392:e->c679:w + + + + + +n393 + +xfer_fsm_state + + + +c686 + +A + +B + +$495_CMP0 +$eq + +Y + + + +n393:e->c686:w + + + + + +c689 + +A + +B + +$502_CMP0 +$eq + +Y + + + +n393:e->c689:w + + + + + +c694 + +A + +B + +$515_CMP0 +$eq + +Y + + + +n393:e->c694:w + + + + + +c701 + +A + +B + +$534_CMP0 +$eq + +Y + + + +n393:e->c701:w + + + + + +c711 + +A + +B + +$562_CMP0 +$eq + +Y + + + +n393:e->c711:w + + + + + +c713 + +A + +B + +$566_CMP0 +$eq + +Y + + + +n393:e->c713:w + + + + + +c715 + +A + +B + +$570_CMP0 +$eq + +Y + + + +n393:e->c715:w + + + + + +c719 + +A + +B + +$583_CMP0 +$eq + +Y + + + +n393:e->c719:w + + + + + +c721 + +A + +B + +$589_CMP0 +$eq + +Y + + + +n393:e->c721:w + + + + + +c723 + +A + +B + +$595_CMP0 +$eq + +Y + + + +n393:e->c723:w + + + + + +c733 + +A + +B + +$625_CMP0 +$eq + +Y + + + +n393:e->c733:w + + + + + +c735 + +A + +B + +$628_CMP0 +$eq + +Y + + + +n393:e->c735:w + + + + + +c737 + +A + +$631_CMP0 +$logic_not + +Y + + + +n393:e->c737:w + + + + + +c739 + +A + +B + +$635_CMP0 +$eq + +Y + + + +n393:e->c739:w + + + + + +c765 + +A + +B + +$733_CMP0 +$eq + +Y + + + +n393:e->c765:w + + + + + +c768 + +A + +B + +$737_CMP0 +$eq + +Y + + + +n393:e->c768:w + + + + + +c780 + +A + +B + +$801_CMP0 +$eq + +Y + + + +n393:e->c780:w + + + + + +c781 + +A + +B + +$802_CMP0 +$eq + +Y + + + +n393:e->c781:w + + + + + +c783 + +A + +B + +$808_CMP0 +$eq + +Y + + + +n393:e->c783:w + + + + + +c784 + +A + +B + +$809_CMP0 +$eq + +Y + + + +n393:e->c784:w + + + + + +c785 + +A + +B + +$810_CMP0 +$eq + +Y + + + +n393:e->c785:w + + + + + +c788 + +A + +B + +$815_CMP0 +$eq + +Y + + + +n393:e->c788:w + + + + + +c789 + +A + +B + +$816_CMP0 +$eq + +Y + + + +n393:e->c789:w + + + + + +c790 + +A + +B + +$817_CMP0 +$eq + +Y + + + +n393:e->c790:w + + + + + +c792 + +A + +B + +$821_CMP0 +$eq + +Y + + + +n393:e->c792:w + + + + + +c793 + +A + +B + +$822_CMP0 +$eq + +Y + + + +n393:e->c793:w + + + + + +c794 + +A + +B + +$823_CMP0 +$eq + +Y + + + +n393:e->c794:w + + + + + +c795 + +A + +B + +$824_CMP0 +$eq + +Y + + + +n393:e->c795:w + + + + + +c796 + +A + +B + +$825_CMP0 +$eq + +Y + + + +n393:e->c796:w + + + + + +n394 + +xfer_idx + + + +c411 + +A + +B + +$270 +$add + +Y + + + +n394:e->c411:w + + + + + +c798 + +A + +B + +$829_CMP0 +$eq + +Y + + + +n394:e->c798:w + + + + + +c799 + +A + +B + +$830_CMP0 +$eq + +Y + + + +n394:e->c799:w + + + + + +c800 + +A + +B + +$831_CMP0 +$eq + +Y + + + +n394:e->c800:w + + + + + +c801 + +A + +B + +$832_CMP0 +$eq + +Y + + + +n394:e->c801:w + + + + + +c802 + +A + +B + +$833_CMP0 +$eq + +Y + + + +n394:e->c802:w + + + + + +c803 + +A + +$834_CMP0 +$logic_not + +Y + + + +n394:e->c803:w + + + + + +n395 + +xfer_len + + + +c412 + +A + +B + +$271 +$eq + +Y + + + +n395:e->c412:w + + + + + +n396 + +xfer_rcount + + + +c408 + +A + +B + +$187 +$eq + +Y + + + +n396:e->c408:w + + + + + +n396:e->c414:w + + + + + +n397 + +xfer_rw + + + +c707 + +A + +B + +S + +$554 +$mux + +Y + + + +n397:e->c707:w + + + + + +n398 + +xfer_sread + + + +c708 + +A + +B + +S + +$556 +$mux + +Y + + + +n398:e->c708:w + + + + + +n399 + +xfer_start + + + +x86 + +0:0 - 1:1 + +0:0 - 0:0 + + + +n399:e->x86:w + + + + + +c717 + +A + +B + +S + +$575 +$mux + +Y + + + +n399:e->c717:w + + + + + +n399:e->c725:w + + + + + +c729 + +A + +B + +S + +$608 +$mux + +Y + + + +n399:e->c729:w + + + + + +c736 + +A + +B + +S + +$629 +$mux + +Y + + + +n399:e->c736:w + + + + + +n400 + +xfer_stream + + + +c709 + +A + +B + +S + +$558 +$mux + +Y + + + +n400:e->c709:w + + + + + +n401 + +xfer_wbase + + + +n401:e->c722:w + + + + + +n401:e->x488:w + + + + + +n402 + +xfer_wend + + + +n402:e->c415:w + + + + + +n403 + +xfer_wrap + + + +c416 + +A + +B + +$278 +$and + +Y + + + +n403:e->c416:w + + + + + +c762 + +A + +B + +S + +$728 +$mux + +Y + + + +c406:e->c762:w + + + + + +c761 + +A + +B + +S + +$726 +$mux + +Y + + + +c408:e->c761:w + + + + + +v0 + +1'1 + + + +v0:e->c409:w + + + + + +x444 + +2:0 - 5:3 + +2:0 - 2:0 + + + +c409:e->x444:w + + + + + +v1 + +2'10 + + + +v1:e->c410:w + + + + + +n48 + + + + +c410:e->n48:w + + + + + +v2 + +1'1 + + + +v2:e->c411:w + + + + + +n49 + + + + +c411:e->n49:w + + + + + +n50 + + + + +c412:e->n50:w + + + + + +v3 + +1'1 + + + +v3:e->c413:w + + + + + +x420 + +15:0 - 15:0 + + + +c413:e->x420:w + + + + + +n3 + + + + +c414:e->n3:w + + + + + +c415:e->c416:w + + + + + +n5 + + + + +c416:e->n5:w + + + + + +v4 + +1'1 + + + +v4:e->c417:w + + + + + +n2 + + + + +c417:e->n2:w + + + + + +v5 + +1'1 + + + +v5:e->c418:w + + + + + +n6 + + + + +c418:e->n6:w + + + + + +n7 + + + + +c419:e->n7:w + + + + + +v6 + +15'101110111000000 + + + +v6:e->c420:w + + + + + +n8 + + + + +c420:e->n8:w + + + + + +v7 + +1'1 + + + +v7:e->c421:w + + + + + +x448 + +14:0 - 14:0 + + + +c421:e->x448:w + + + + + +v8 + +16'0000011111111111 + + + +v8:e->c422:w + + + + + +c423 + +A + +B + +$286 +$add + +Y + + + +c422:e->c423:w + + + + + +v9 + +15'100000000000000 + + + +v9:e->c423:w + + + + + +x212 + +79:0 - 207:128 + +15:0 - 127:112 + +31:0 - 111:80 + +15:0 - 79:64 + +15:0 - 63:48 + +47:0 - 47:0 + + + +c423:e->x212:w + + + + + +x302 + +15:0 - 15:0 + + + +c424:e->x302:w + + + + + +c634 + +A + +B + +S + +$310 +$mux + +Y + + + +c425:e->c634:w + + + + + +v10 + +16'0000011111111111 + + + +v10:e->c426:w + + + + + +c427 + +A + +B + +$290 +$add + +Y + + + +c426:e->c427:w + + + + + +v11 + +15'110000000000000 + + + +v11:e->c427:w + + + + + +c427:e->x212:w + + + + + +v12 + +2'10 + + + +v12:e->c428:w + + + + + +c429 + +A + +B + +$292 +$and + +Y + + + +c428:e->c429:w + + + + + +v13 + +17'00000011111111111 + + + +v13:e->c429:w + + + + + +c430 + +A + +B + +$293 +$add + +Y + + + +c429:e->c430:w + + + + + +v14 + +15'110000000000000 + + + +v14:e->c430:w + + + + + +c430:e->x212:w + + + + + +v15 + +2'10 + + + +v15:e->c431:w + + + + + +x22 + +15:0 - 15:0 + + + +c431:e->x22:w + + + + + +n21 + + + + +c432:e->n21:w + + + + + +c438:e->n355:w + + + + + +x16:e->c438:w + + + + + + +c439:e->n354:w + + + + + +x17:e->c439:w + + + + + + +c440:e->n353:w + + + + + +x18:e->c440:w + + + + + + +c441:e->n352:w + + + + + +x19:e->c441:w + + + + + + +c442:e->n351:w + + + + + +x20:e->c442:w + + + + + + +c443:e->n350:w + + + + + +x21:e->c443:w + + + + + + +c444:e->n348:w + + + + + +c445:e->n373:w + + + + + +c446:e->n361:w + + + + + +c447:e->n360:w + + + + + +c448:e->n393:w + + + + + +c449:e->n347:w + + + + + +c450:e->n359:w + + + + + +c451:e->n372:w + + + + + +c452:e->n394:w + + + + + +c453:e->n392:w + + + + + +c454:e->n342:w + + + + + +c455:e->n340:w + + + + + +c456:e->n337:w + + + + + +c457:e->n335:w + + + + + +c458:e->n364:w + + + + + +c459:e->n334:w + + + + + +c460:e->n338:w + + + + + +c461:e->n389:w + + + + + +c462:e->n362:w + + + + + +c463:e->n346:w + + + + + +c464:e->n339:w + + + + + +c465:e->n396:w + + + + + +x22:e->c465:w + + + + + + +c466:e->n358:w + + + + + +x23:e->c466:w + + + + + + +c467:e->n367:w + + + + + +x24:e->c467:w + + + + + + +c468:e->n369:w + + + + + +x25:e->c468:w + + + + + + +c469:e->n402:w + + + + + +c470:e->n401:w + + + + + +c471:e->n379:w + + + + + +c472:e->n388:w + + + + + +c473:e->n387:w + + + + + +c474:e->n386:w + + + + + +c475:e->n385:w + + + + + +c476:e->n384:w + + + + + +c477:e->n382:w + + + + + +c478:e->n399:w + + + + + +c479:e->n383:w + + + + + +c480:e->n395:w + + + + + +c481:e->n391:w + + + + + +c482:e->n403:w + + + + + +c483:e->n398:w + + + + + +c484:e->n400:w + + + + + +c485:e->n397:w + + + + + +c486:e->n390:w + + + + + +c487:e->n356:w + + + + + +v27 + +2'10 + + + +c488 + +A + +B + +$1000 +$ne + +Y + + + +v27:e->c488:w + + + + + +x130 + +0:0 - 19:19 + +0:0 - 18:18 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c488:e->x130:w + + + + + +x26:e->c488:w + + + + + + +v29 + +2'10 + + + +c489 + +A + +B + +$1002 +$ne + +Y + + + +v29:e->c489:w + + + + + +c489:e->x130:w + + + + + +x28:e->c489:w + + + + + + +v31 + +2'10 + + + +c490 + +A + +B + +$1004 +$ne + +Y + + + +v31:e->c490:w + + + + + +c490:e->x130:w + + + + + +x30:e->c490:w + + + + + + +v33 + +2'10 + + + +c491 + +A + +B + +$1006 +$ne + +Y + + + +v33:e->c491:w + + + + + +c491:e->x130:w + + + + + +x32:e->c491:w + + + + + + +v35 + +2'10 + + + +c492 + +A + +B + +$1008 +$ne + +Y + + + +v35:e->c492:w + + + + + +c492:e->x130:w + + + + + +x34:e->c492:w + + + + + + +v37 + +2'10 + + + +c493 + +A + +B + +$1010 +$ne + +Y + + + +v37:e->c493:w + + + + + +c493:e->x130:w + + + + + +x36:e->c493:w + + + + + + +v39 + +2'10 + + + +c494 + +A + +B + +$1012 +$ne + +Y + + + +v39:e->c494:w + + + + + +c494:e->x130:w + + + + + +x38:e->c494:w + + + + + + +v41 + +2'10 + + + +c495 + +A + +B + +$1014 +$ne + +Y + + + +v41:e->c495:w + + + + + +n59 + + + + +c495:e->n59:w + + + + + +x40:e->c495:w + + + + + + +v43 + +2'10 + + + +c496 + +A + +B + +$1016 +$ne + +Y + + + +v43:e->c496:w + + + + + +c496:e->x130:w + + + + + +x42:e->c496:w + + + + + + +v45 + +2'10 + + + +c497 + +A + +B + +$1018 +$ne + +Y + + + +v45:e->c497:w + + + + + +c497:e->x130:w + + + + + +x44:e->c497:w + + + + + + +v47 + +2'10 + + + +c498 + +A + +B + +$1020 +$ne + +Y + + + +v47:e->c498:w + + + + + +n62 + + + + +c498:e->n62:w + + + + + +x46:e->c498:w + + + + + + +v49 + +2'10 + + + +c499 + +A + +B + +$1022 +$ne + +Y + + + +v49:e->c499:w + + + + + +c499:e->x130:w + + + + + +x48:e->c499:w + + + + + + +v51 + +2'10 + + + +c500 + +A + +B + +$1024 +$ne + +Y + + + +v51:e->c500:w + + + + + +c500:e->x130:w + + + + + +x50:e->c500:w + + + + + + +v53 + +2'10 + + + +c501 + +A + +B + +$1026 +$ne + +Y + + + +v53:e->c501:w + + + + + +c501:e->x130:w + + + + + +x52:e->c501:w + + + + + + +v55 + +4'0101 + + + +c502 + +A + +B + +$1028 +$ne + +Y + + + +v55:e->c502:w + + + + + +c502:e->x130:w + + + + + +x54:e->c502:w + + + + + + +c503 + +A + +$1030 +$reduce_bool + +Y + + + +c503:e->x130:w + + + + + +x56 + +0:0 - 38:38 + +0:0 - 37:37 + +0:0 - 36:36 + +0:0 - 35:35 + +0:0 - 34:34 + +0:0 - 33:33 + +0:0 - 32:32 + +0:0 - 31:31 + +0:0 - 30:30 + +0:0 - 29:29 + +0:0 - 28:28 + +0:0 - 27:27 + +0:0 - 26:26 + +0:0 - 25:25 + +0:0 - 24:24 + +0:0 - 23:23 + +0:0 - 22:22 + +0:0 - 21:21 + +0:0 - 20:20 + +0:0 - 19:19 + +0:0 - 18:18 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x56:e->c503:w + + + + + + +v58 + +2'10 + + + +c504 + +A + +B + +$1032 +$ne + +Y + + + +v58:e->c504:w + + + + + +c504:e->x130:w + + + + + +x57 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x57:e->c504:w + + + + + + +c505 + +A + +$1062 +$reduce_bool + +Y + + + +c505:e->c444:w + + + + + +x59 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x59:e->c505:w + + + + + + +v61 + +2'10 + + + +c506 + +A + +B + +$1080 +$ne + +Y + + + +v61:e->c506:w + + + + + +x135 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c506:e->x135:w + + + + + +x60:e->c506:w + + + + + + +v63 + +2'10 + + + +c507 + +A + +B + +$1082 +$ne + +Y + + + +v63:e->c507:w + + + + + +n71 + + + + +c507:e->n71:w + + + + + +x62:e->c507:w + + + + + + +v65 + +2'10 + + + +c508 + +A + +B + +$1084 +$ne + +Y + + + +v65:e->c508:w + + + + + +c508:e->x135:w + + + + + +x64:e->c508:w + + + + + + +v67 + +2'10 + + + +c509 + +A + +B + +$1086 +$ne + +Y + + + +v67:e->c509:w + + + + + +c509:e->x135:w + + + + + +x66:e->c509:w + + + + + + +v69 + +2'10 + + + +c510 + +A + +B + +$1088 +$ne + +Y + + + +v69:e->c510:w + + + + + +c510:e->x135:w + + + + + +x68:e->c510:w + + + + + + +v71 + +2'10 + + + +c511 + +A + +B + +$1090 +$ne + +Y + + + +v71:e->c511:w + + + + + +c511:e->x135:w + + + + + +x70:e->c511:w + + + + + + +v73 + +2'10 + + + +c512 + +A + +B + +$1092 +$ne + +Y + + + +v73:e->c512:w + + + + + +c512:e->x135:w + + + + + +x72:e->c512:w + + + + + + +v75 + +2'10 + + + +c513 + +A + +B + +$1094 +$ne + +Y + + + +v75:e->c513:w + + + + + +c513:e->x135:w + + + + + +x74:e->c513:w + + + + + + +v77 + +2'10 + + + +c514 + +A + +B + +$1096 +$ne + +Y + + + +v77:e->c514:w + + + + + +c514:e->x135:w + + + + + +x76:e->c514:w + + + + + + +v79 + +2'10 + + + +c515 + +A + +B + +$1098 +$ne + +Y + + + +v79:e->c515:w + + + + + +c515:e->x135:w + + + + + +x78:e->c515:w + + + + + + +v81 + +2'10 + + + +c516 + +A + +B + +$1100 +$ne + +Y + + + +v81:e->c516:w + + + + + +c516:e->x135:w + + + + + +x80:e->c516:w + + + + + + +v83 + +2'10 + + + +c517 + +A + +B + +$1102 +$ne + +Y + + + +v83:e->c517:w + + + + + +c517:e->x135:w + + + + + +x82:e->c517:w + + + + + + +v85 + +2'10 + + + +c518 + +A + +B + +$1104 +$ne + +Y + + + +v85:e->c518:w + + + + + +c518:e->x135:w + + + + + +x84:e->c518:w + + + + + + +v87 + +2'10 + + + +c519 + +A + +B + +$1106 +$ne + +Y + + + +v87:e->c519:w + + + + + +n83 + + + + +c519:e->n83:w + + + + + +x86:e->c519:w + + + + + + +v89 + +3'100 + + + +c520 + +A + +B + +$1108 +$ne + +Y + + + +v89:e->c520:w + + + + + +c520:e->x135:w + + + + + +x88:e->c520:w + + + + + + +v91 + +2'10 + + + +c521 + +A + +B + +$1110 +$ne + +Y + + + +v91:e->c521:w + + + + + +n85 + + + + +c521:e->n85:w + + + + + +x90:e->c521:w + + + + + + +c522 + +A + +$1112 +$reduce_bool + +Y + + + +c522:e->x135:w + + + + + +x92 + +0:0 - 28:28 + +0:0 - 27:27 + +0:0 - 26:26 + +0:0 - 25:25 + +0:0 - 24:24 + +0:0 - 23:23 + +0:0 - 22:22 + +0:0 - 21:21 + +0:0 - 20:20 + +0:0 - 19:19 + +0:0 - 18:18 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x92:e->c522:w + + + + + + +v94 + +2'10 + + + +c523 + +A + +B + +$1118 +$ne + +Y + + + +v94:e->c523:w + + + + + +x136 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c523:e->x136:w + + + + + +x93:e->c523:w + + + + + + +v96 + +2'10 + + + +c524 + +A + +B + +$1120 +$ne + +Y + + + +v96:e->c524:w + + + + + +c524:e->x136:w + + + + + +x95:e->c524:w + + + + + + +c525 + +A + +$1126 +$reduce_bool + +Y + + + +c525:e->x136:w + + + + + +x97 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x97:e->c525:w + + + + + + +c526 + +A + +$1136 +$reduce_bool + +Y + + + +x137 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c526:e->x137:w + + + + + +x98 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x98:e->c526:w + + + + + + +c527 + +A + +$1146 +$reduce_bool + +Y + + + +x138 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c527:e->x138:w + + + + + +x99 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x99:e->c527:w + + + + + + +v101 + +2'10 + + + +c528 + +A + +B + +$1152 +$ne + +Y + + + +v101:e->c528:w + + + + + +x139 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c528:e->x139:w + + + + + +x100:e->c528:w + + + + + + +c529 + +A + +$1156 +$reduce_bool + +Y + + + +c529:e->x139:w + + + + + +x102 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x102:e->c529:w + + + + + + +v104 + +2'10 + + + +c530 + +A + +B + +$1169 +$ne + +Y + + + +v104:e->c530:w + + + + + +n94 + + + + +c530:e->n94:w + + + + + +x103:e->c530:w + + + + + + +c531 + +A + +$1171 +$reduce_bool + +Y + + + +x141 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c531:e->x141:w + + + + + +x105 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x105:e->c531:w + + + + + + +v107 + +2'10 + + + +c532 + +A + +B + +$1173 +$ne + +Y + + + +v107:e->c532:w + + + + + +n96 + + + + +c532:e->n96:w + + + + + +x106 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x106:e->c532:w + + + + + + +c533 + +A + +$1185 +$reduce_bool + +Y + + + +n97 + + + + +c533:e->n97:w + + + + + +x108 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x108:e->c533:w + + + + + + +c534 + +A + +$1199 +$reduce_bool + +Y + + + +n98 + + + + +c534:e->n98:w + + + + + +x109 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x109:e->c534:w + + + + + + +c535 + +A + +$914 +$reduce_bool + +Y + + + +n99 + + + + +c535:e->n99:w + + + + + +x110 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x110:e->c535:w + + + + + + +c536 + +A + +$926 +$reduce_bool + +Y + + + +x149 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c536:e->x149:w + + + + + +x111 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x111:e->c536:w + + + + + + +c537 + +A + +$940 +$reduce_bool + +Y + + + +c537:e->c476:w + + + + + +x112 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x112:e->c537:w + + + + + + +c538 + +A + +$946 +$reduce_bool + +Y + + + +c538:e->c478:w + + + + + +x113 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x113:e->c538:w + + + + + + +c539 + +A + +$950 +$reduce_bool + +Y + + + +c539:e->c479:w + + + + + +x114 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x114:e->c539:w + + + + + + +c540 + +A + +$954 +$reduce_bool + +Y + + + +c540:e->c480:w + + + + + +x115 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x115:e->c540:w + + + + + + +c541 + +A + +$958 +$reduce_bool + +Y + + + +c541:e->c481:w + + + + + +x116 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x116:e->c541:w + + + + + + +v118 + +2'10 + + + +c542 + +A + +B + +$962 +$ne + +Y + + + +v118:e->c542:w + + + + + +x150 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c542:e->x150:w + + + + + +x117:e->c542:w + + + + + + +c543 + +A + +$964 +$reduce_bool + +Y + + + +c543:e->x150:w + + + + + +x119 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x119:e->c543:w + + + + + + +v121 + +2'10 + + + +c544 + +A + +B + +$970 +$ne + +Y + + + +v121:e->c544:w + + + + + +n108 + + + + +c544:e->n108:w + + + + + +x120:e->c544:w + + + + + + +c545 + +A + +$972 +$reduce_bool + +Y + + + +x151 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c545:e->x151:w + + + + + +x122 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x122:e->c545:w + + + + + + +c546 + +A + +$980 +$reduce_bool + +Y + + + +x152 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c546:e->x152:w + + + + + +x123 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x123:e->c546:w + + + + + + +c547 + +A + +$986 +$reduce_bool + +Y + + + +c547:e->c485:w + + + + + +x124 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x124:e->c547:w + + + + + + +c548 + +A + +$990 +$reduce_bool + +Y + + + +c548:e->c486:w + + + + + +x125 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x125:e->c548:w + + + + + + +v127 + +2'10 + + + +c549 + +A + +B + +$996 +$ne + +Y + + + +v127:e->c549:w + + + + + +c549:e->x130:w + + + + + +x126:e->c549:w + + + + + + +v129 + +2'10 + + + +c550 + +A + +B + +$998 +$ne + +Y + + + +v129:e->c550:w + + + + + +c550:e->x130:w + + + + + +x128:e->c550:w + + + + + + +c551 + +A + +$1065 +$not + +Y + + + +c551:e->x132:w + + + + + +x140 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c552:e->x140:w + + + + + +c553 + +A + +$1034 +$reduce_and + +Y + + + +c553:e->c487:w + + + + + +x130:e->c553:w + + + + + + +c554 + +A + +$1038 +$reduce_and + +Y + + + +n117 + + + + +c554:e->n117:w + + + + + +x131:e->c554:w + + + + + + +c555 + +A + +$1068 +$reduce_and + +Y + + + +c555:e->c445:w + + + + + +x132:e->c555:w + + + + + + +c556 + +A + +$1072 +$reduce_and + +Y + + + +c556:e->c446:w + + + + + +x133:e->c556:w + + + + + + +c557 + +A + +$1076 +$reduce_and + +Y + + + +c557:e->c447:w + + + + + +x134:e->c557:w + + + + + + +c558 + +A + +$1114 +$reduce_and + +Y + + + +c558:e->c448:w + + + + + +x135:e->c558:w + + + + + + +c559 + +A + +$1128 +$reduce_and + +Y + + + +c559:e->c449:w + + + + + +x136:e->c559:w + + + + + + +c560 + +A + +$1138 +$reduce_and + +Y + + + +c560:e->c450:w + + + + + +x137:e->c560:w + + + + + + +c561 + +A + +$1148 +$reduce_and + +Y + + + +c561:e->c451:w + + + + + +x138:e->c561:w + + + + + + +c562 + +A + +$1158 +$reduce_and + +Y + + + +c562:e->c452:w + + + + + +x139:e->c562:w + + + + + + +c563 + +A + +$1165 +$reduce_and + +Y + + + +c563:e->c454:w + + + + + +x140:e->c563:w + + + + + + +c564 + +A + +$1175 +$reduce_and + +Y + + + +c564:e->c455:w + + + + + +x141:e->c564:w + + + + + + +c565 + +A + +$1179 +$reduce_and + +Y + + + +c565:e->c456:w + + + + + +x142:e->c565:w + + + + + + +c566 + +A + +$1187 +$reduce_and + +Y + + + +c566:e->c457:w + + + + + +x143 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x143:e->c566:w + + + + + + +c567 + +A + +$1191 +$reduce_and + +Y + + + +n130 + + + + +c567:e->n130:w + + + + + +x144:e->c567:w + + + + + + +c568 + +A + +$1207 +$reduce_and + +Y + + + +n131 + + + + +c568:e->n131:w + + + + + +x145 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x145:e->c568:w + + + + + + +c569 + +A + +$902 +$reduce_and + +Y + + + +c569:e->c466:w + + + + + +x146:e->c569:w + + + + + + +c570 + +A + +$906 +$reduce_and + +Y + + + +c570:e->c467:w + + + + + +x147:e->c570:w + + + + + + +c571 + +A + +$910 +$reduce_and + +Y + + + +c571:e->c468:w + + + + + +x148:e->c571:w + + + + + + +c572 + +A + +$928 +$reduce_and + +Y + + + +c572:e->c471:w + + + + + +x149:e->c572:w + + + + + + +c573 + +A + +$966 +$reduce_and + +Y + + + +c573:e->c482:w + + + + + +x150:e->c573:w + + + + + + +c574 + +A + +$974 +$reduce_and + +Y + + + +c574:e->c483:w + + + + + +x151:e->c574:w + + + + + + +c575 + +A + +$982 +$reduce_and + +Y + + + +c575:e->c484:w + + + + + +x152:e->c575:w + + + + + + +c576 + +A + +$835 +$reduce_or + +Y + + + +n139 + + + + +c576:e->n139:w + + + + + +x153 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x153:e->c576:w + + + + + + +c577 + +A + +$837 +$reduce_or + +Y + + + +n140 + + + + +c577:e->n140:w + + + + + +x154 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x154:e->c577:w + + + + + + +c578 + +A + +$839 +$reduce_or + +Y + + + +n141 + + + + +c578:e->n141:w + + + + + +x155 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x155:e->c578:w + + + + + + +c579 + +A + +$843 +$reduce_or + +Y + + + +n143 + + + + +c579:e->n143:w + + + + + +x156 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x156:e->c579:w + + + + + + +c580 + +A + +$845 +$reduce_or + +Y + + + +n144 + + + + +c580:e->n144:w + + + + + +x157 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x157:e->c580:w + + + + + + +c581 + +A + +$847 +$reduce_or + +Y + + + +n145 + + + + +c581:e->n145:w + + + + + +x158 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x158:e->c581:w + + + + + + +c582 + +A + +$849 +$reduce_or + +Y + + + +x498 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c582:e->x498:w + + + + + +x159 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x159:e->c582:w + + + + + + +c583 + +A + +$851 +$reduce_or + +Y + + + +c583:e->x498:w + + + + + +x160 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x160:e->c583:w + + + + + + +c584 + +A + +$855 +$reduce_or + +Y + + + +n149 + + + + +c584:e->n149:w + + + + + +x161 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x161:e->c584:w + + + + + + +c585 + +A + +$857 +$reduce_or + +Y + + + +n150 + + + + +c585:e->n150:w + + + + + +x162 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x162:e->c585:w + + + + + + +c586 + +A + +$859 +$reduce_or + +Y + + + +n151 + + + + +c586:e->n151:w + + + + + +x163 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x163:e->c586:w + + + + + + +c587 + +A + +$861 +$reduce_or + +Y + + + +x489 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +c587:e->x489:w + + + + + +x164 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x164:e->c587:w + + + + + + +c588 + +A + +$863 +$reduce_or + +Y + + + +c588:e->x489:w + + + + + +x165 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x165:e->c588:w + + + + + + +c589 + +A + +$865 +$reduce_or + +Y + + + +n154 + + + + +c589:e->n154:w + + + + + +x166 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x166:e->c589:w + + + + + + +c590 + +A + +$867 +$reduce_or + +Y + + + +n142 + + + + +c590:e->n142:w + + + + + +x167 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x167:e->c590:w + + + + + + +c591 + +A + +$869 +$reduce_or + +Y + + + +n155 + + + + +c591:e->n155:w + + + + + +x168 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x168:e->c591:w + + + + + + +c592 + +A + +$871 +$reduce_or + +Y + + + +n156 + + + + +c592:e->n156:w + + + + + +x169 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x169:e->c592:w + + + + + + +c593 + +A + +$873 +$reduce_or + +Y + + + +n157 + + + + +c593:e->n157:w + + + + + +x170 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x170:e->c593:w + + + + + + +c594 + +A + +$875 +$reduce_or + +Y + + + +n158 + + + + +c594:e->n158:w + + + + + +x171 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x171:e->c594:w + + + + + + +c595 + +A + +$877 +$reduce_or + +Y + + + +n148 + + + + +c595:e->n148:w + + + + + +x172 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x172:e->c595:w + + + + + + +c596 + +A + +$879 +$reduce_or + +Y + + + +n159 + + + + +c596:e->n159:w + + + + + +x173 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x173:e->c596:w + + + + + + +c597 + +A + +$881 +$reduce_or + +Y + + + +n160 + + + + +c597:e->n160:w + + + + + +x174 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x174:e->c597:w + + + + + + +c598 + +A + +$885 +$reduce_or + +Y + + + +n161 + + + + +c598:e->n161:w + + + + + +x175 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x175:e->c598:w + + + + + + +c599 + +A + +$887 +$reduce_or + +Y + + + +n162 + + + + +c599:e->n162:w + + + + + +x176 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x176:e->c599:w + + + + + + +c600 + +A + +$889 +$reduce_or + +Y + + + +n163 + + + + +c600:e->n163:w + + + + + +x177 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x177:e->c600:w + + + + + + +c601 + +A + +$891 +$reduce_or + +Y + + + +n164 + + + + +c601:e->n164:w + + + + + +x178 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x178:e->c601:w + + + + + + +c602 + +A + +$893 +$reduce_or + +Y + + + +n165 + + + + +c602:e->n165:w + + + + + +x179 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x179:e->c602:w + + + + + + +c603 + +A + +$895 +$reduce_or + +Y + + + +n166 + + + + +c603:e->n166:w + + + + + +x180 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x180:e->c603:w + + + + + + +v181 + +8'x + + + +c605 + +A + +B + +S + +$113 +$pmux + +Y + + + +v181:e->c605:w + + + + + +v183 + +16'1000000000000011 + + + +v183:e->x182:w + + + + + +v184 + +16'0101010100000001 + + + +v184:e->x182:w + + + + + +v185 + +8'00100000 + + + +v185:e->x182:w + + + + + +v186 + +16'0100000000000100 + + + +v186:e->x182:w + + + + + +c605:e->c479:w + + + + + +x182:e->c605:w + + + + + + +x187 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x187:e->c605:w + + + + + + +v188 + +4'x + + + +c606 + +A + +B + +S + +$128 +$pmux + +Y + + + +v188:e->c606:w + + + + + +v189 + +12'011000100001 + + + +v189:e->c606:w + + + + + +c606:e->c480:w + + + + + +x190 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x190:e->c606:w + + + + + + +v191 + +1'x + + + +c607 + +A + +B + +S + +$147 +$pmux + +Y + + + +v191:e->c607:w + + + + + +v192 + +2'10 + + + +v192:e->c607:w + + + + + +c607:e->c481:w + + + + + +x193 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x193:e->c607:w + + + + + + +v194 + +1'x + + + +c608 + +A + +B + +S + +$168 +$pmux + +Y + + + +v194:e->c608:w + + + + + +c608:e->c482:w + + + + + +x195 + +1 -> 2:2 + +0:0 - 1:1 + +0 -> 0:0 + + + +x195:e->c608:w + + + + + + +x196 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x196:e->c608:w + + + + + + +v197 + +1'x + + + +v197:e->c609:w + + + + + +v198 + +1'0 + + + +v198:e->c609:w + + + + + +n193 + + + + +c609:e->n193:w + + + + + +v199 + +1'x + + + +c610 + +A + +B + +S + +$194 +$pmux + +Y + + + +v199:e->c610:w + + + + + +c610:e->c483:w + + + + + +x200 + +1 -> 2:2 + +0:0 - 1:1 + +0 -> 0:0 + + + +x200:e->c610:w + + + + + + +x201 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x201:e->c610:w + + + + + + +v202 + +1'x + + + +c611 + +A + +B + +S + +$218 +$pmux + +Y + + + +v202:e->c611:w + + + + + +c611:e->c484:w + + + + + +x203 + +1 -> 2:2 + +0:0 - 1:1 + +0 -> 0:0 + + + +x203:e->c611:w + + + + + + +x204 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x204:e->c611:w + + + + + + +v205 + +16'x + + + +c612 + +A + +B + +S + +$23 +$pmux + +Y + + + +v205:e->c612:w + + + + + +v206 + +1207986176 + + + +v206:e->c612:w + + + + + +c612:e->c469:w + + + + + +x207 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x207:e->c612:w + + + + + + +v208 + +1'x + + + +c613 + +A + +B + +S + +$242 +$pmux + +Y + + + +v208:e->c613:w + + + + + +v209 + +2'01 + + + +v209:e->c613:w + + + + + +c613:e->c485:w + + + + + +x210 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x210:e->c613:w + + + + + + +v211 + +16'x + + + +c614 + +A + +B + +S + +$263 +$pmux + +Y + + + +v211:e->c614:w + + + + + +v213 + +80'00000000000000000000000000001001000000000001101000000100000000000000000000010110 + + + +v213:e->x212:w + + + + + +v214 + +69469222 + + + +v214:e->x212:w + + + + + +v215 + +48'000001000010100000000100000000010000010000000010 + + + +v215:e->x212:w + + + + + +c614:e->c486:w + + + + + +x212:e->c614:w + + + + + + +x216 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x216:e->c614:w + + + + + + +v217 + +6'x + + + +c615 + +A + +B + +S + +$286 +$pmux + +Y + + + +v217:e->c615:w + + + + + +v219 + +6'000100 + + + +x218 + +5:0 - 233:228 + +5:0 - 227:222 + +5:0 - 221:216 + +5:0 - 215:210 + +5:0 - 209:204 + +5:0 - 203:198 + +5:0 - 197:192 + +5:0 - 191:186 + +5:0 - 185:180 + +5:0 - 179:174 + +5:0 - 173:168 + +5:0 - 167:162 + +5:0 - 161:156 + +5:0 - 155:150 + +5:0 - 149:144 + +5:0 - 143:138 + +11:0 - 137:126 + +5:0 - 125:120 + +5:0 - 119:114 + +5:0 - 113:108 + +5:0 - 107:102 + +5:0 - 101:96 + +11:0 - 95:84 + +5:0 - 83:78 + +5:0 - 77:72 + +5:0 - 71:66 + +5:0 - 65:60 + +5:0 - 59:54 + +5:0 - 53:48 + +5:0 - 47:42 + +5:0 - 41:36 + +5:0 - 35:30 + +5:0 - 29:24 + +5:0 - 23:18 + +5:0 - 17:12 + +5:0 - 11:6 + +5:0 - 5:0 + + + +v219:e->x218:w + + + + + +v220 + +6'000111 + + + +v220:e->x218:w + + + + + +v221 + +6'001001 + + + +v221:e->x218:w + + + + + +v222 + +6'001011 + + + +v222:e->x218:w + + + + + +v223 + +6'001101 + + + +v223:e->x218:w + + + + + +v224 + +6'001111 + + + +v224:e->x218:w + + + + + +v225 + +6'010001 + + + +v225:e->x218:w + + + + + +v226 + +12'000000010011 + + + +v226:e->x218:w + + + + + +v227 + +6'010101 + + + +v227:e->x218:w + + + + + +v228 + +6'010111 + + + +v228:e->x218:w + + + + + +v229 + +12'011001011010 + + + +v229:e->x218:w + + + + + +v230 + +6'011101 + + + +v230:e->x218:w + + + + + +v231 + +6'011111 + + + +v231:e->x218:w + + + + + +v232 + +6'100001 + + + +v232:e->x218:w + + + + + +v233 + +6'100011 + + + +v233:e->x218:w + + + + + +v234 + +6'100101 + + + +v234:e->x218:w + + + + + +v235 + +6'100111 + + + +v235:e->x218:w + + + + + +c615:e->c487:w + + + + + +x218:e->c615:w + + + + + + +x236 + +0:0 - 38:38 + +0:0 - 37:37 + +0:0 - 36:36 + +0:0 - 35:35 + +0:0 - 34:34 + +0:0 - 33:33 + +0:0 - 32:32 + +0:0 - 31:31 + +0:0 - 30:30 + +0:0 - 29:29 + +0:0 - 28:28 + +0:0 - 27:27 + +0:0 - 26:26 + +0:0 - 25:25 + +0:0 - 24:24 + +0:0 - 23:23 + +0:0 - 22:22 + +0:0 - 21:21 + +0:0 - 20:20 + +0:0 - 19:19 + +0:0 - 18:18 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x236:e->c615:w + + + + + + +v237 + +6'100111 + + + +v237:e->c616:w + + + + + +n46 + + + + +c616:e->n46:w + + + + + +v238 + +6'100110 + + + +v238:e->c617:w + + + + + +n45 + + + + +c617:e->n45:w + + + + + +v239 + +6'x + + + +v239:e->c618:w + + + + + +v240 + +6'100110 + + + +v240:e->c618:w + + + + + +c618:e->x218:w + + + + + +v241 + +16'x + + + +c619 + +A + +B + +S + +$29 +$pmux + +Y + + + +v241:e->c619:w + + + + + +v242 + +1073766400 + + + +v242:e->c619:w + + + + + +c619:e->c470:w + + + + + +x243 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x243:e->c619:w + + + + + + +v244 + +6'100101 + + + +v244:e->c620:w + + + + + +n44 + + + + +c620:e->n44:w + + + + + +v245 + +6'100100 + + + +v245:e->c621:w + + + + + +n43 + + + + +c621:e->n43:w + + + + + +v246 + +6'x + + + +v246:e->c622:w + + + + + +v247 + +6'100100 + + + +v247:e->c622:w + + + + + +c622:e->x218:w + + + + + +v248 + +6'100011 + + + +v248:e->c623:w + + + + + +n42 + + + + +c623:e->n42:w + + + + + +v249 + +6'100010 + + + +v249:e->c624:w + + + + + +n41 + + + + +c624:e->n41:w + + + + + +v250 + +6'x + + + +v250:e->c625:w + + + + + +v251 + +6'100010 + + + +v251:e->c625:w + + + + + +c625:e->x218:w + + + + + +v252 + +6'100001 + + + +v252:e->c626:w + + + + + +n40 + + + + +c626:e->n40:w + + + + + +v253 + +6'100000 + + + +v253:e->c627:w + + + + + +n39 + + + + +c627:e->n39:w + + + + + +v254 + +6'x + + + +v254:e->c628:w + + + + + +v255 + +6'100000 + + + +v255:e->c628:w + + + + + +c628:e->x218:w + + + + + +v256 + +6'011111 + + + +v256:e->c629:w + + + + + +n208 + + + + +c629:e->n208:w + + + + + +v257 + +6'011110 + + + +v257:e->c630:w + + + + + +n185 + + + + +c630:e->n185:w + + + + + +v258 + +6'x + + + +v258:e->c631:w + + + + + +v259 + +6'011110 + + + +v259:e->c631:w + + + + + +c631:e->x218:w + + + + + +v260 + +6'011101 + + + +v260:e->c632:w + + + + + +n190 + + + + +c632:e->n190:w + + + + + +v261 + +6'011100 + + + +v261:e->c633:w + + + + + +n186 + + + + +c633:e->n186:w + + + + + +v262 + +6'011100 + + + +v262:e->c634:w + + + + + +v263 + +6'000000 + + + +v263:e->c634:w + + + + + +c634:e->x218:w + + + + + +v264 + +6'011011 + + + +v264:e->c635:w + + + + + +n211 + + + + +c635:e->n211:w + + + + + +v265 + +6'x + + + +v265:e->c636:w + + + + + +v266 + +6'011011 + + + +v266:e->c636:w + + + + + +c636:e->x218:w + + + + + +v267 + +6'011010 + + + +v267:e->c637:w + + + + + +n196 + + + + +c637:e->n196:w + + + + + +v268 + +6'000010 + + + +v268:e->c638:w + + + + + +n187 + + + + +c638:e->n187:w + + + + + +v269 + +6'x + + + +v269:e->c639:w + + + + + +v270 + +6'000000 + + + +v270:e->c639:w + + + + + +c639:e->x218:w + + + + + +v271 + +6'011001 + + + +v271:e->c640:w + + + + + +n213 + + + + +c640:e->n213:w + + + + + +v272 + +6'011000 + + + +v272:e->c641:w + + + + + +n181 + + + + +c641:e->n181:w + + + + + +v273 + +6'x + + + +v273:e->c642:w + + + + + +v274 + +6'011000 + + + +v274:e->c642:w + + + + + +c642:e->x218:w + + + + + +v275 + +6'010111 + + + +v275:e->c643:w + + + + + +n215 + + + + +c643:e->n215:w + + + + + +v276 + +6'010110 + + + +v276:e->c644:w + + + + + +n182 + + + + +c644:e->n182:w + + + + + +v277 + +6'x + + + +v277:e->c645:w + + + + + +v278 + +6'010110 + + + +v278:e->c645:w + + + + + +c645:e->x218:w + + + + + +v279 + +6'010101 + + + +v279:e->c646:w + + + + + +n194 + + + + +c646:e->n194:w + + + + + +v280 + +6'010100 + + + +v280:e->c647:w + + + + + +n191 + + + + +c647:e->n191:w + + + + + +v281 + +6'x + + + +v281:e->c648:w + + + + + +v282 + +6'010100 + + + +v282:e->c648:w + + + + + +c648:e->x218:w + + + + + +v283 + +6'010011 + + + +v283:e->c649:w + + + + + +n218 + + + + +c649:e->n218:w + + + + + +v284 + +6'000011 + + + +v284:e->c650:w + + + + + +n188 + + + + +c650:e->n188:w + + + + + +v285 + +6'x + + + +v285:e->c651:w + + + + + +v286 + +6'010010 + + + +v286:e->c651:w + + + + + +c651:e->x218:w + + + + + +v287 + +6'010001 + + + +v287:e->c652:w + + + + + +n221 + + + + +c652:e->n221:w + + + + + +v288 + +6'010000 + + + +v288:e->c653:w + + + + + +n183 + + + + +c653:e->n183:w + + + + + +v289 + +6'x + + + +v289:e->c654:w + + + + + +v290 + +6'010000 + + + +v290:e->c654:w + + + + + +c654:e->x218:w + + + + + +v291 + +6'001111 + + + +v291:e->c655:w + + + + + +n223 + + + + +c655:e->n223:w + + + + + +v292 + +6'001110 + + + +v292:e->c656:w + + + + + +n169 + + + + +c656:e->n169:w + + + + + +v293 + +6'x + + + +v293:e->c657:w + + + + + +v294 + +6'001110 + + + +v294:e->c657:w + + + + + +c657:e->x218:w + + + + + +v295 + +6'001101 + + + +v295:e->c658:w + + + + + +n170 + + + + +c658:e->n170:w + + + + + +v296 + +6'001100 + + + +v296:e->c659:w + + + + + +n171 + + + + +c659:e->n171:w + + + + + +v297 + +6'x + + + +v297:e->c660:w + + + + + +v298 + +6'001100 + + + +v298:e->c660:w + + + + + +c660:e->x218:w + + + + + +v299 + +6'001011 + + + +v299:e->c661:w + + + + + +n172 + + + + +c661:e->n172:w + + + + + +v300 + +6'001010 + + + +v300:e->c662:w + + + + + +n173 + + + + +c662:e->n173:w + + + + + +v301 + +16'x + + + +v301:e->c663:w + + + + + +x323 + +15:0 - 31:16 + +15:0 - 15:0 + + + +c663:e->x323:w + + + + + +x302:e->c663:w + + + + + + +v303 + +6'x + + + +v303:e->c664:w + + + + + +v304 + +6'001010 + + + +v304:e->c664:w + + + + + +c664:e->x218:w + + + + + +v305 + +6'001001 + + + +v305:e->c665:w + + + + + +n174 + + + + +c665:e->n174:w + + + + + +v306 + +6'001000 + + + +v306:e->c666:w + + + + + +n175 + + + + +c666:e->n175:w + + + + + +v307 + +6'x + + + +v307:e->c667:w + + + + + +v308 + +6'001000 + + + +v308:e->c667:w + + + + + +c667:e->x218:w + + + + + +v309 + +6'000111 + + + +v309:e->c668:w + + + + + +n176 + + + + +c668:e->n176:w + + + + + +v310 + +6'000110 + + + +v310:e->c669:w + + + + + +n177 + + + + +c669:e->n177:w + + + + + +v311 + +6'x + + + +c670 + +A + +B + +S + +$358 +$mux + +Y + + + +v311:e->c670:w + + + + + +v312 + +6'000110 + + + +v312:e->c670:w + + + + + +c670:e->x218:w + + + + + +v313 + +6'000101 + + + +v313:e->c671:w + + + + + +n230 + + + + +c671:e->n230:w + + + + + +v314 + +6'x + + + +v314:e->c672:w + + + + + +v315 + +6'000101 + + + +v315:e->c672:w + + + + + +c672:e->x218:w + + + + + +v316 + +6'000100 + + + +v316:e->c673:w + + + + + +n178 + + + + +c673:e->n178:w + + + + + +v317 + +6'000001 + + + +v317:e->c674:w + + + + + +n179 + + + + +c674:e->n179:w + + + + + +v318 + +6'x + + + +c675 + +A + +B + +S + +$365 +$mux + +Y + + + +v318:e->c675:w + + + + + +v319 + +6'000011 + + + +v319:e->c675:w + + + + + +c675:e->c676:w + + + + + +v320 + +6'000010 + + + +v320:e->c676:w + + + + + +c676:e->c677:w + + + + + +v321 + +6'000001 + + + +v321:e->c677:w + + + + + +c677:e->x218:w + + + + + +v322 + +16'x + + + +c678 + +A + +B + +S + +$37 +$pmux + +Y + + + +v322:e->c678:w + + + + + +c678:e->c471:w + + + + + +x323:e->c678:w + + + + + + +x324 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x324:e->c678:w + + + + + + +v325 + +16'x + + + +v325:e->c679:w + + + + + +c679:e->x323:w + + + + + +x326:e->c679:w + + + + + + +v327 + +1'x + + + +c680 + +A + +B + +S + +$410 +$pmux + +Y + + + +v327:e->c680:w + + + + + +v328 + +2'01 + + + +v328:e->c680:w + + + + + +c680:e->c444:w + + + + + +x329 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x329:e->c680:w + + + + + + +v330 + +6'010010 + + + +v330:e->c681:w + + + + + +n219 + + + + +c681:e->n219:w + + + + + +n38 + + + + +c682:e->n38:w + + + + + +v331 + +5'x + + + +c683 + +A + +B + +S + +$487 +$pmux + +Y + + + +v331:e->c683:w + + + + + +v333 + +5'00011 + + + +x332 + +4:0 - 144:140 + +4:0 - 139:135 + +4:0 - 134:130 + +4:0 - 129:125 + +4:0 - 124:120 + +4:0 - 119:115 + +4:0 - 114:110 + +4:0 - 109:105 + +4:0 - 104:100 + +4:0 - 99:95 + +4:0 - 94:90 + +4:0 - 89:85 + +4:0 - 84:80 + +4:0 - 79:75 + +4:0 - 74:70 + +4:0 - 69:65 + +4:0 - 64:60 + +4:0 - 59:55 + +4:0 - 54:50 + +4:0 - 49:45 + +4:0 - 44:40 + +4:0 - 39:35 + +4:0 - 34:30 + +4:0 - 29:25 + +4:0 - 24:20 + +4:0 - 19:15 + +4:0 - 14:10 + +4:0 - 9:5 + +0 -> 4:0 + + + +v333:e->x332:w + + + + + +v334 + +5'00101 + + + +v334:e->x332:w + + + + + +v335 + +5'00111 + + + +v335:e->x332:w + + + + + +v336 + +5'01100 + + + +v336:e->x332:w + + + + + +v337 + +5'01111 + + + +v337:e->x332:w + + + + + +v338 + +5'10001 + + + +v338:e->x332:w + + + + + +v339 + +5'10100 + + + +v339:e->x332:w + + + + + +v340 + +5'10110 + + + +v340:e->x332:w + + + + + +v341 + +5'11010 + + + +v341:e->x332:w + + + + + +v342 + +5'11100 + + + +v342:e->x332:w + + + + + +c683:e->c448:w + + + + + +x332:e->c683:w + + + + + + +x343 + +0:0 - 28:28 + +0:0 - 27:27 + +0:0 - 26:26 + +0:0 - 25:25 + +0:0 - 24:24 + +0:0 - 23:23 + +0:0 - 22:22 + +0:0 - 21:21 + +0:0 - 20:20 + +0:0 - 19:19 + +0:0 - 18:18 + +0:0 - 17:17 + +0:0 - 16:16 + +0:0 - 15:15 + +0:0 - 14:14 + +0:0 - 13:13 + +0:0 - 12:12 + +0:0 - 11:11 + +0:0 - 10:10 + +0:0 - 9:9 + +0:0 - 8:8 + +0:0 - 7:7 + +0:0 - 6:6 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x343:e->c683:w + + + + + + +v344 + +5'x + + + +v344:e->c684:w + + + + + +v345 + +5'01001 + + + +v345:e->c684:w + + + + + +c684:e->x332:w + + + + + +v346 + +5'x + + + +v346:e->c685:w + + + + + +v347 + +5'11011 + + + +v347:e->c685:w + + + + + +c685:e->x332:w + + + + + +v348 + +5'11010 + + + +v348:e->c686:w + + + + + +n35 + + + + +c686:e->n35:w + + + + + +v349 + +5'x + + + +v349:e->c687:w + + + + + +v350 + +5'01001 + + + +v350:e->c687:w + + + + + +c687:e->x332:w + + + + + +v351 + +5'x + + + +v351:e->c688:w + + + + + +v352 + +5'11001 + + + +v352:e->c688:w + + + + + +c688:e->x332:w + + + + + +v353 + +5'11000 + + + +v353:e->c689:w + + + + + +n33 + + + + +c689:e->n33:w + + + + + +v354 + +5'11000 + + + +c690 + +A + +B + +S + +$504 +$mux + +Y + + + +v354:e->c690:w + + + + + +v355 + +5'10111 + + + +v355:e->c690:w + + + + + +c691 + +A + +B + +S + +$506 +$mux + +Y + + + +c690:e->c691:w + + + + + +v356 + +5'00100 + + + +v356:e->c691:w + + + + + +c691:e->x332:w + + + + + +v357 + +5'x + + + +v357:e->c692:w + + + + + +v358 + +5'01000 + + + +v358:e->c692:w + + + + + +c692:e->x332:w + + + + + +v359 + +5'x + + + +v359:e->c693:w + + + + + +v360 + +5'10101 + + + +v360:e->c693:w + + + + + +c693:e->x332:w + + + + + +v361 + +5'10100 + + + +v361:e->c694:w + + + + + +n29 + + + + +c694:e->n29:w + + + + + +v362 + +5'01000 + + + +v362:e->c695:w + + + + + +v363 + +5'00100 + + + +v363:e->c695:w + + + + + +c695:e->c696:w + + + + + +v364 + +5'x + + + +v364:e->c696:w + + + + + +c696:e->x332:w + + + + + +v365 + +5'x + + + +v365:e->c697:w + + + + + +v366 + +5'10011 + + + +v366:e->c697:w + + + + + +c698 + +A + +B + +S + +$525 +$mux + +Y + + + +c697:e->c698:w + + + + + +v367 + +5'10010 + + + +v367:e->c698:w + + + + + +c698:e->x332:w + + + + + +v368 + +5'x + + + +v368:e->c699:w + + + + + +v369 + +5'01011 + + + +v369:e->c699:w + + + + + +c699:e->x332:w + + + + + +v370 + +5'x + + + +v370:e->c700:w + + + + + +v371 + +5'10000 + + + +v371:e->c700:w + + + + + +c700:e->x332:w + + + + + +v372 + +5'01111 + + + +v372:e->c701:w + + + + + +n263 + + + + +c701:e->n263:w + + + + + +v373 + +5'01011 + + + +c702 + +A + +B + +S + +$537 +$mux + +Y + + + +v373:e->c702:w + + + + + +v374 + +5'00100 + + + +v374:e->c702:w + + + + + +c702:e->c703:w + + + + + +v375 + +5'x + + + +v375:e->c703:w + + + + + +c703:e->x332:w + + + + + +v376 + +5'01110 + + + +c704 + +A + +B + +S + +$543 +$mux + +Y + + + +v376:e->c704:w + + + + + +v377 + +5'01101 + + + +v377:e->c704:w + + + + + +c704:e->x332:w + + + + + +v378 + +5'01010 + + + +c705 + +A + +B + +S + +$547 +$mux + +Y + + + +v378:e->c705:w + + + + + +v379 + +5'00100 + + + +v379:e->c705:w + + + + + +c705:e->c706:w + + + + + +v380 + +5'x + + + +v380:e->c706:w + + + + + +c706:e->x332:w + + + + + +v381 + +5'01011 + + + +v381:e->c707:w + + + + + +v382 + +5'01010 + + + +v382:e->c707:w + + + + + +c707:e->c708:w + + + + + +v383 + +5'01001 + + + +v383:e->c708:w + + + + + +c708:e->c709:w + + + + + +v384 + +5'01000 + + + +v384:e->c709:w + + + + + +c709:e->c710:w + + + + + +v385 + +5'x + + + +v385:e->c710:w + + + + + +c710:e->x332:w + + + + + +v386 + +5'00111 + + + +v386:e->c711:w + + + + + +n277 + + + + +c711:e->n277:w + + + + + +v387 + +5'x + + + +v387:e->c712:w + + + + + +v388 + +5'00110 + + + +v388:e->c712:w + + + + + +c712:e->x332:w + + + + + +v389 + +5'00101 + + + +v389:e->c713:w + + + + + +n280 + + + + +c713:e->n280:w + + + + + +v390 + +5'x + + + +v390:e->c714:w + + + + + +v391 + +5'00100 + + + +v391:e->c714:w + + + + + +c714:e->x332:w + + + + + +v392 + +5'00011 + + + +v392:e->c715:w + + + + + +n283 + + + + +c715:e->n283:w + + + + + +v393 + +5'00010 + + + +v393:e->c716:w + + + + + +v394 + +5'00001 + + + +v394:e->c716:w + + + + + +c716:e->c717:w + + + + + +v395 + +5'x + + + +v395:e->c717:w + + + + + +c717:e->x332:w + + + + + +v396 + +16'x + + + +c718 + +A + +B + +S + +$582 +$pmux + +Y + + + +v396:e->c718:w + + + + + +c718:e->c449:w + + + + + +x397 + +15:0 - 63:48 + +15:0 - 47:32 + +15:0 - 31:16 + +15:0 - 15:0 + + + +x397:e->c718:w + + + + + + +x398 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x398:e->c718:w + + + + + + +v399 + +5'11100 + + + +v399:e->c719:w + + + + + +n37 + + + + +c719:e->n37:w + + + + + +v400 + +16'x + + + +v400:e->c720:w + + + + + +c720:e->x397:w + + + + + +x401 + +15:0 - 15:0 + + + +x401:e->c720:w + + + + + + +v402 + +5'10110 + + + +v402:e->c721:w + + + + + +n31 + + + + +c721:e->n31:w + + + + + +v403 + +16'x + + + +v403:e->c722:w + + + + + +c722:e->x397:w + + + + + +v404 + +5'10001 + + + +v404:e->c723:w + + + + + +n26 + + + + +c723:e->n26:w + + + + + +v405 + +16'x + + + +v405:e->c724:w + + + + + +c724:e->x397:w + + + + + +x406 + +15:0 - 15:0 + + + +x406:e->c724:w + + + + + + +v407 + +16'x + + + +v407:e->c725:w + + + + + +c725:e->x397:w + + + + + +v408 + +8'x + + + +c726 + +A + +B + +S + +$60 +$pmux + +Y + + + +v408:e->c726:w + + + + + +v410 + +8'01010101 + + + +v410:e->x409:w + + + + + +c726:e->c476:w + + + + + +x409:e->c726:w + + + + + + +x411 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x411:e->c726:w + + + + + + +v412 + +16'x + + + +v412:e->c727:w + + + + + +x415 + +15:0 - 31:16 + +15:0 - 15:0 + + + +c727:e->x415:w + + + + + +x413 + +15:0 - 15:0 + + + +x413:e->c727:w + + + + + + +v414 + +16'x + + + +c728 + +A + +B + +S + +$606 +$pmux + +Y + + + +v414:e->c728:w + + + + + +c728:e->c450:w + + + + + +x415:e->c728:w + + + + + + +x416 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x416:e->c728:w + + + + + + +v417 + +16'x + + + +v417:e->c729:w + + + + + +v418 + +16'0000000000000000 + + + +v418:e->c729:w + + + + + +n294 + + + + +c729:e->n294:w + + + + + +v419 + +16'x + + + +v419:e->c730:w + + + + + +x422 + +15:0 - 31:16 + +15:0 - 15:0 + + + +c730:e->x422:w + + + + + +x420:e->c730:w + + + + + + +v421 + +16'x + + + +c731 + +A + +B + +S + +$615 +$pmux + +Y + + + +v421:e->c731:w + + + + + +c731:e->c451:w + + + + + +x422:e->c731:w + + + + + + +x423 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x423:e->c731:w + + + + + + +v424 + +4'x + + + +c732 + +A + +B + +S + +$624 +$pmux + +Y + + + +v424:e->c732:w + + + + + +c732:e->c452:w + + + + + +x425 + +3:0 - 7:4 + +3:0 - 3:0 + + + +x425:e->c732:w + + + + + + +x426 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x426:e->c732:w + + + + + + +v427 + +5'01110 + + + +v427:e->c733:w + + + + + +n239 + + + + +c733:e->n239:w + + + + + +v428 + +4'x + + + +v428:e->c734:w + + + + + +c734:e->x425:w + + + + + +x429 + +3:0 - 3:0 + + + +x429:e->c734:w + + + + + + +v430 + +5'01100 + + + +v430:e->c735:w + + + + + +n271 + + + + +c735:e->n271:w + + + + + +v431 + +4'x + + + +v431:e->c736:w + + + + + +v432 + +4'0000 + + + +v432:e->c736:w + + + + + +c736:e->x425:w + + + + + +n24 + + + + +c737:e->n24:w + + + + + +v433 + +1'0 + + + +c738 + +A + +B + +S + +$634 +$mux + +Y + + + +v433:e->c738:w + + + + + +v434 + +1'1 + + + +v434:e->c738:w + + + + + +c738:e->c453:w + + + + + +v435 + +5'00100 + + + +v435:e->c739:w + + + + + +n247 + + + + +c739:e->n247:w + + + + + +v436 + +2'x + + + +c740 + +A + +B + +S + +$646 +$pmux + +Y + + + +v436:e->c740:w + + + + + +c740:e->c455:w + + + + + +x437 + +1:0 - 5:4 + +1:0 - 3:2 + +0 -> 1:0 + + + +x437:e->c740:w + + + + + + +x438 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x438:e->c740:w + + + + + + +v439 + +2'x + + + +c741 + +A + +B + +S + +$648 +$mux + +Y + + + +v439:e->c741:w + + + + + +v440 + +2'10 + + + +v440:e->c741:w + + + + + +c741:e->x437:w + + + + + +v441 + +2'x + + + +v441:e->c742:w + + + + + +v442 + +2'01 + + + +v442:e->c742:w + + + + + +c742:e->x437:w + + + + + +v443 + +3'x + + + +c743 + +A + +B + +S + +$664 +$pmux + +Y + + + +v443:e->c743:w + + + + + +c743:e->c457:w + + + + + +x444:e->c743:w + + + + + + +x445 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x445:e->c743:w + + + + + + +v446 + +3'x + + + +v446:e->c744:w + + + + + +v447 + +3'000 + + + +v447:e->c744:w + + + + + +c744:e->x444:w + + + + + +v449 + +15'000000000000000 + + + +c745 + +A + +B + +S + +$68 +$mux + +Y + + + +v449:e->c745:w + + + + + +c745:e->c477:w + + + + + +x448:e->c745:w + + + + + + +v450 + +1'x + + + +c746 + +A + +B + +S + +$683 +$pmux + +Y + + + +v450:e->c746:w + + + + + +c746:e->c460:w + + + + + +x451 + +0:0 - 1:1 + +0 -> 0:0 + + + +x451:e->c746:w + + + + + + +x452 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x452:e->c746:w + + + + + + +v453 + +1'0 + + + +v453:e->c747:w + + + + + +v454 + +1'1 + + + +v454:e->c747:w + + + + + +n309 + + + + +c747:e->n309:w + + + + + +v455 + +1'0 + + + +v455:e->c748:w + + + + + +c748:e->x451:w + + + + + +v456 + +1'x + + + +c749 + +A + +B + +S + +$692 +$mux + +Y + + + +v456:e->c749:w + + + + + +v457 + +1'1 + + + +v457:e->c749:w + + + + + +n312 + + + + +c749:e->n312:w + + + + + +v458 + +1'x + + + +c750 + +A + +B + +S + +$694 +$pmux + +Y + + + +v458:e->c750:w + + + + + +c750:e->c461:w + + + + + +x459 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x459:e->c750:w + + + + + + +x460 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x460:e->c750:w + + + + + + +v461 + +1'1 + + + +v461:e->c751:w + + + + + +v462 + +1'0 + + + +v462:e->c751:w + + + + + +c751:e->c752:w + + + + + +v463 + +1'1 + + + +v463:e->c752:w + + + + + +c752:e->x459:w + + + + + +v464 + +1'x + + + +c753 + +A + +B + +S + +$705 +$pmux + +Y + + + +v464:e->c753:w + + + + + +c753:e->c462:w + + + + + +x465 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x465:e->c753:w + + + + + + +x466 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x466:e->c753:w + + + + + + +v467 + +2'01 + + + +v467:e->c754:w + + + + + +n302 + + + + +c754:e->n302:w + + + + + +v468 + +1'1 + + + +v468:e->c755:w + + + + + +c755:e->x465:w + + + + + +v469 + +1'x + + + +c756 + +A + +B + +S + +$715 +$pmux + +Y + + + +v469:e->c756:w + + + + + +c756:e->c463:w + + + + + +x470 + +0:0 - 1:1 + +1 -> 0:0 + + + +x470:e->c756:w + + + + + + +x471 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x471:e->c756:w + + + + + + +v472 + +1'1 + + + +v472:e->c757:w + + + + + +v473 + +1'0 + + + +v473:e->c757:w + + + + + +c757:e->x470:w + + + + + +n22 + + + + +c758:e->n22:w + + + + + +v474 + +1'0 + + + +c759 + +A + +B + +S + +$722 +$mux + +Y + + + +v474:e->c759:w + + + + + +v475 + +1'1 + + + +v475:e->c759:w + + + + + +c759:e->c464:w + + + + + +v476 + +2'10 + + + +v476:e->c760:w + + + + + +n23 + + + + +c760:e->n23:w + + + + + +v477 + +1'0 + + + +v477:e->c761:w + + + + + +c761:e->n366:w + + + + + +v478 + +1'0 + + + +v478:e->c762:w + + + + + +c762:e->n370:w + + + + + +v479 + +8'00000000 + + + +v479:e->c763:w + + + + + +c763:e->n365:w + + + + + +v480 + +1'0 + + + +c764 + +A + +B + +S + +$732 +$mux + +Y + + + +v480:e->c764:w + + + + + +v481 + +1'1 + + + +v481:e->c764:w + + + + + +c764:e->n371:w + + + + + +v482 + +5'11001 + + + +v482:e->c765:w + + + + + +n34 + + + + +c765:e->n34:w + + + + + +v483 + +1'0 + + + +v483:e->c766:w + + + + + +v484 + +1'1 + + + +v484:e->c766:w + + + + + +c767 + +A + +B + +S + +$736 +$mux + +Y + + + +c766:e->c767:w + + + + + +v485 + +1'0 + + + +v485:e->c767:w + + + + + +c767:e->n376:w + + + + + +v486 + +5'10011 + + + +v486:e->c768:w + + + + + +n28 + + + + +c768:e->n28:w + + + + + +v487 + +8'00000000 + + + +c769 + +A + +B + +S + +$738 +$pmux + +Y + + + +v487:e->c769:w + + + + + +c769:e->n344:w + + + + + +x488:e->c769:w + + + + + + +x489:e->c769:w + + + + + + +v490 + +1'x + + + +c770 + +A + +B + +S + +$74 +$pmux + +Y + + + +v490:e->c770:w + + + + + +v491 + +2'10 + + + +v491:e->c770:w + + + + + +c770:e->c478:w + + + + + +x492 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x492:e->c770:w + + + + + + +v493 + +8'00000000 + + + +v493:e->c771:w + + + + + +c772 + +A + +B + +S + +$745 +$mux + +Y + + + +c771:e->c772:w + + + + + +v494 + +8'00000000 + + + +v494:e->c772:w + + + + + +c772:e->x488:w + + + + + +v495 + +2'00 + + + +c773 + +A + +B + +S + +$754 +$pmux + +Y + + + +v495:e->c773:w + + + + + +v497 + +4'0110 + + + +x496 + +1 -> 11:10 + +1:0 - 9:8 + +1:0 - 7:6 + +1:0 - 5:4 + +3:0 - 3:0 + + + +v497:e->x496:w + + + + + +c773:e->n333:w + + + + + +x496:e->c773:w + + + + + + +x498:e->c773:w + + + + + + +v499 + +2'00 + + + +c774 + +A + +B + +S + +$760 +$mux + +Y + + + +v499:e->c774:w + + + + + +c774:e->x496:w + + + + + +v500 + +2'00 + + + +v500:e->c775:w + + + + + +v501 + +2'11 + + + +v501:e->c775:w + + + + + +c776 + +A + +B + +S + +$767 +$mux + +Y + + + +c775:e->c776:w + + + + + +v502 + +2'00 + + + +v502:e->c776:w + + + + + +c776:e->x496:w + + + + + +v503 + +2'11 + + + +c777 + +A + +B + +S + +$773 +$mux + +Y + + + +v503:e->c777:w + + + + + +v504 + +2'00 + + + +v504:e->c777:w + + + + + +n325 + + + + +c777:e->n325:w + + + + + +v505 + +1'0 + + + +c778 + +A + +B + +S + +$779 +$pmux + +Y + + + +v505:e->c778:w + + + + + +c778:e->n343:w + + + + + +x506 + +0:0 - 1:1 + +1 -> 0:0 + + + +x506:e->c778:w + + + + + + +x507 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x507:e->c778:w + + + + + + +v508 + +1'0 + + + +c779 + +A + +B + +S + +$800 +$pmux + +Y + + + +v508:e->c779:w + + + + + +c779:e->n341:w + + + + + +x509 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +1 -> 0:0 + + + +x509:e->c779:w + + + + + + +x510 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x510:e->c779:w + + + + + + +v511 + +5'11011 + + + +v511:e->c780:w + + + + + +n36 + + + + +c780:e->n36:w + + + + + +v512 + +5'10111 + + + +v512:e->c781:w + + + + + +n32 + + + + +c781:e->n32:w + + + + + +v513 + +1'0 + + + +c782 + +A + +B + +S + +$806 +$mux + +Y + + + +v513:e->c782:w + + + + + +c782:e->x509:w + + + + + +v514 + +5'01001 + + + +v514:e->c783:w + + + + + +n254 + + + + +c783:e->n254:w + + + + + +v515 + +5'10101 + + + +v515:e->c784:w + + + + + +n30 + + + + +c784:e->n30:w + + + + + +v516 + +5'10010 + + + +v516:e->c785:w + + + + + +n27 + + + + +c785:e->n27:w + + + + + +v517 + +1'0 + + + +v517:e->c786:w + + + + + +v518 + +1'1 + + + +v518:e->c786:w + + + + + +c787 + +A + +B + +S + +$813 +$mux + +Y + + + +c786:e->c787:w + + + + + +v519 + +1'0 + + + +v519:e->c787:w + + + + + +n330 + + + + +c787:e->n330:w + + + + + +v520 + +5'01000 + + + +v520:e->c788:w + + + + + +n238 + + + + +c788:e->n238:w + + + + + +v521 + +5'10000 + + + +v521:e->c789:w + + + + + +n25 + + + + +c789:e->n25:w + + + + + +v522 + +5'01101 + + + +v522:e->c790:w + + + + + +n264 + + + + +c790:e->n264:w + + + + + +v523 + +1'1 + + + +c791 + +A + +B + +S + +$819 +$mux + +Y + + + +v523:e->c791:w + + + + + +v524 + +1'0 + + + +v524:e->c791:w + + + + + +n331 + + + + +c791:e->n331:w + + + + + +v525 + +5'01011 + + + +v525:e->c792:w + + + + + +n268 + + + + +c792:e->n268:w + + + + + +v526 + +5'01010 + + + +v526:e->c793:w + + + + + +n272 + + + + +c793:e->n272:w + + + + + +v527 + +5'00110 + + + +v527:e->c794:w + + + + + +n278 + + + + +c794:e->n278:w + + + + + +v528 + +5'00010 + + + +v528:e->c795:w + + + + + +n281 + + + + +c795:e->n281:w + + + + + +v529 + +5'00001 + + + +v529:e->c796:w + + + + + +n284 + + + + +c796:e->n284:w + + + + + +v530 + +8'00000000 + + + +c797 + +A + +B + +S + +$828 +$pmux + +Y + + + +v530:e->c797:w + + + + + +c797:e->x488:w + + + + + +x531:e->c797:w + + + + + + +x532 + +0:0 - 5:5 + +0:0 - 4:4 + +0:0 - 3:3 + +0:0 - 2:2 + +0:0 - 1:1 + +0:0 - 0:0 + + + +x532:e->c797:w + + + + + + +v533 + +4'0101 + + + +v533:e->c798:w + + + + + +c798:e->x532:w + + + + + +v534 + +4'0100 + + + +v534:e->c799:w + + + + + +c799:e->x532:w + + + + + +v535 + +4'0011 + + + +v535:e->c800:w + + + + + +c800:e->x532:w + + + + + +v536 + +4'0010 + + + +v536:e->c801:w + + + + + +c801:e->x532:w + + + + + +v537 + +4'0001 + + + +v537:e->c802:w + + + + + +n244 + + + + +c802:e->n244:w + + + + + +n245 + + + + +c803:e->n245:w + + + + + +n108:e->x130:w + + + + + +n108:e->x151:w + + + + + +n117:e->c438:w + + + + + +n117:e->c439:w + + + + + +n117:e->c440:w + + + + + +n117:e->c441:w + + + + + +n117:e->c442:w + + + + + +n117:e->c443:w + + + + + +n130:e->c458:w + + + + + +n130:e->c459:w + + + + + +n131:e->c461:w + + + + + +n131:e->c462:w + + + + + +n139:e->x125:w + + + + + +n139:e->x216:w + + + + + +n140:e->x125:w + + + + + +n140:e->x216:w + + + + + +n141:e->x125:w + + + + + +n141:e->x216:w + + + + + +n142:e->x116:w + + + + + +n142:e->x125:w + + + + + +n142:e->x193:w + + + + + +n142:e->x216:w + + + + + +n143:e->x124:w + + + + + +n143:e->x210:w + + + + + +n144:e->x124:w + + + + + +n144:e->x210:w + + + + + +n145:e->x123:w + + + + + +n145:e->x204:w + + + + + +n148:e->x507:w + + + + + +n148:e->x510:w + + + + + +n149:e->x122:w + + + + + +n149:e->x201:w + + + + + +n150:e->x119:w + + + + + +n150:e->x196:w + + + + + +n151:e->x119:w + + + + + +n151:e->x196:w + + + + + +n154:e->x116:w + + + + + +n154:e->x193:w + + + + + +n155:e->x115:w + + + + + +n155:e->x190:w + + + + + +n156:e->x115:w + + + + + +n156:e->x190:w + + + + + +n157:e->x114:w + + + + + +n157:e->x187:w + + + + + +n158:e->x114:w + + + + + +n158:e->x187:w + + + + + +n159:e->x113:w + + + + + +n159:e->x492:w + + + + + +n160:e->x113:w + + + + + +n160:e->x492:w + + + + + +n161:e->x110:w + + + + + +n161:e->x207:w + + + + + +n161:e->x243:w + + + + + +n162:e->x117:w + + + + + +n162:e->x119:w + + + + + +n162:e->x196:w + + + + + +n163:e->x52:w + + + + + +n163:e->x56:w + + + + + +n163:e->x236:w + + + + + +n164:e->x95:w + + + + + +n164:e->x97:w + + + + + +n164:e->x398:w + + + + + +n165:e->x93:w + + + + + +n165:e->x97:w + + + + + +n165:e->x398:w + + + + + +n166:e->x100:w + + + + + +n166:e->x102:w + + + + + +n166:e->x426:w + + + + + +n169:e->x56:w + + + + + +n169:e->x153:w + + + + + +n169:e->x156:w + + + + + +n169:e->x158:w + + + + + +n169:e->x161:w + + + + + +n169:e->x162:w + + + + + +n169:e->x166:w + + + + + +n169:e->x168:w + + + + + +n169:e->x171:w + + + + + +n169:e->x174:w + + + + + +n169:e->x236:w + + + + + +n170:e->x30:w + + + + + +n170:e->x56:w + + + + + +n170:e->x173:w + + + + + +n170:e->x236:w + + + + + +n171:e->x56:w + + + + + +n171:e->x125:w + + + + + +n171:e->x156:w + + + + + +n171:e->x158:w + + + + + +n171:e->x161:w + + + + + +n171:e->x162:w + + + + + +n171:e->x166:w + + + + + +n171:e->x168:w + + + + + +n171:e->x170:w + + + + + +n171:e->x174:w + + + + + +n171:e->x216:w + + + + + +n171:e->x236:w + + + + + +n172:e->x32:w + + + + + +n172:e->x56:w + + + + + +n172:e->x173:w + + + + + +n172:e->x236:w + + + + + +n173:e->x56:w + + + + + +n173:e->x112:w + + + + + +n173:e->x114:w + + + + + +n173:e->x125:w + + + + + +n173:e->x156:w + + + + + +n173:e->x158:w + + + + + +n173:e->x161:w + + + + + +n173:e->x162:w + + + + + +n173:e->x166:w + + + + + +n173:e->x169:w + + + + + +n173:e->x174:w + + + + + +n173:e->x187:w + + + + + +n173:e->x216:w + + + + + +n173:e->x236:w + + + + + +n173:e->x411:w + + + + + +n174:e->x34:w + + + + + +n174:e->x56:w + + + + + +n174:e->x173:w + + + + + +n174:e->x236:w + + + + + +n175:e->c472:w + + + + + +n175:e->c473:w + + + + + +n175:e->c474:w + + + + + +n175:e->c475:w + + + + + +n175:e->x56:w + + + + + +n175:e->x112:w + + + + + +n175:e->x114:w + + + + + +n175:e->x115:w + + + + + +n175:e->x125:w + + + + + +n175:e->x156:w + + + + + +n175:e->x158:w + + + + + +n175:e->x161:w + + + + + +n175:e->x166:w + + + + + +n175:e->x174:w + + + + + +n175:e->x187:w + + + + + +n175:e->x190:w + + + + + +n175:e->x216:w + + + + + +n175:e->x236:w + + + + + +n175:e->x411:w + + + + + +n176:e->x36:w + + + + + +n176:e->x56:w + + + + + +n176:e->x173:w + + + + + +n176:e->x236:w + + + + + +n177:e->x56:w + + + + + +n177:e->x114:w + + + + + +n177:e->x156:w + + + + + +n177:e->x158:w + + + + + +n177:e->x161:w + + + + + +n177:e->x162:w + + + + + +n177:e->x167:w + + + + + +n177:e->x168:w + + + + + +n177:e->x174:w + + + + + +n177:e->x187:w + + + + + +n177:e->x236:w + + + + + +n178:e->x38:w + + + + + +n178:e->x56:w + + + + + +n178:e->x173:w + + + + + +n178:e->x236:w + + + + + +n179:e->x56:w + + + + + +n179:e->x114:w + + + + + +n179:e->x156:w + + + + + +n179:e->x158:w + + + + + +n179:e->x161:w + + + + + +n179:e->x162:w + + + + + +n179:e->x167:w + + + + + +n179:e->x168:w + + + + + +n179:e->x174:w + + + + + +n179:e->x187:w + + + + + +n179:e->x236:w + + + + + +n181:e->x56:w + + + + + +n181:e->x114:w + + + + + +n181:e->x153:w + + + + + +n181:e->x156:w + + + + + +n181:e->x158:w + + + + + +n181:e->x161:w + + + + + +n181:e->x162:w + + + + + +n181:e->x166:w + + + + + +n181:e->x168:w + + + + + +n181:e->x174:w + + + + + +n181:e->x187:w + + + + + +n181:e->x236:w + + + + + +n182:e->x56:w + + + + + +n182:e->x112:w + + + + + +n182:e->x114:w + + + + + +n182:e->x155:w + + + + + +n182:e->x156:w + + + + + +n182:e->x158:w + + + + + +n182:e->x161:w + + + + + +n182:e->x162:w + + + + + +n182:e->x166:w + + + + + +n182:e->x169:w + + + + + +n182:e->x174:w + + + + + +n182:e->x187:w + + + + + +n182:e->x236:w + + + + + +n182:e->x411:w + + + + + +n183:e->x56:w + + + + + +n183:e->x125:w + + + + + +n183:e->x156:w + + + + + +n183:e->x158:w + + + + + +n183:e->x161:w + + + + + +n183:e->x162:w + + + + + +n183:e->x166:w + + + + + +n183:e->x168:w + + + + + +n183:e->x171:w + + + + + +n183:e->x174:w + + + + + +n183:e->x216:w + + + + + +n183:e->x236:w + + + + + +n185:e->x56:w + + + + + +n185:e->x125:w + + + + + +n185:e->x157:w + + + + + +n185:e->x158:w + + + + + +n185:e->x161:w + + + + + +n185:e->x163:w + + + + + +n185:e->x166:w + + + + + +n185:e->x169:w + + + + + +n185:e->x174:w + + + + + +n185:e->x175:w + + + + + +n185:e->x216:w + + + + + +n185:e->x236:w + + + + + +n186:e->x56:w + + + + + +n186:e->x154:w + + + + + +n186:e->x157:w + + + + + +n186:e->x158:w + + + + + +n186:e->x161:w + + + + + +n186:e->x162:w + + + + + +n186:e->x166:w + + + + + +n186:e->x169:w + + + + + +n186:e->x174:w + + + + + +n186:e->x236:w + + + + + +n187:e->x56:w + + + + + +n187:e->x125:w + + + + + +n187:e->x157:w + + + + + +n187:e->x158:w + + + + + +n187:e->x161:w + + + + + +n187:e->x162:w + + + + + +n187:e->x166:w + + + + + +n187:e->x169:w + + + + + +n187:e->x174:w + + + + + +n187:e->x216:w + + + + + +n187:e->x236:w + + + + + +n188:e->x56:w + + + + + +n188:e->x155:w + + + + + +n188:e->x157:w + + + + + +n188:e->x158:w + + + + + +n188:e->x161:w + + + + + +n188:e->x162:w + + + + + +n188:e->x166:w + + + + + +n188:e->x169:w + + + + + +n188:e->x174:w + + + + + +n188:e->x236:w + + + + + +n190:e->x26:w + + + + + +n190:e->x56:w + + + + + +n190:e->x147:w + + + + + +n190:e->x173:w + + + + + +n190:e->x236:w + + + + + +n191:e->x56:w + + + + + +n191:e->x110:w + + + + + +n191:e->x123:w + + + + + +n191:e->x125:w + + + + + +n191:e->x156:w + + + + + +n191:e->x161:w + + + + + +n191:e->x163:w + + + + + +n191:e->x166:w + + + + + +n191:e->x174:w + + + + + +n191:e->x204:w + + + + + +n191:e->x207:w + + + + + +n191:e->x216:w + + + + + +n191:e->x236:w + + + + + +n191:e->x243:w + + + + + +n193:e->x195:w + + + + + +n193:e->x200:w + + + + + +n193:e->x203:w + + + + + +n194:e->x40:w + + + + + +n194:e->x56:w + + + + + +n194:e->x111:w + + + + + +n194:e->x123:w + + + + + +n194:e->x173:w + + + + + +n194:e->x176:w + + + + + +n194:e->x204:w + + + + + +n194:e->x236:w + + + + + +n194:e->x324:w + + + + + +n196:e->x28:w + + + + + +n196:e->x56:w + + + + + +n196:e->x148:w + + + + + +n196:e->x173:w + + + + + +n196:e->x236:w + + + + + +n2:e->c408:w + + + + + +n2:e->x413:w + + + + + +n208:e->x42:w + + + + + +n208:e->x56:w + + + + + +n208:e->x146:w + + + + + +n208:e->x173:w + + + + + +n208:e->x236:w + + + + + +n21:e->x182:w + + + + + +n21:e->x409:w + + + + + +n211:e->x56:w + + + + + +n211:e->x236:w + + + + + +n213:e->x173:w + + + + + +n213:e->x177:w + + + + + +n215:e->x44:w + + + + + +n215:e->x56:w + + + + + +n215:e->x173:w + + + + + +n215:e->x236:w + + + + + +n218:e->x46:w + + + + + +n218:e->x56:w + + + + + +n218:e->x111:w + + + + + +n218:e->x173:w + + + + + +n218:e->x236:w + + + + + +n218:e->x324:w + + + + + +n219:e->x56:w + + + + + +n219:e->x59:w + + + + + +n219:e->x236:w + + + + + +n219:e->x329:w + + + + + +n22:e->x103:w + + + + + +n22:e->x105:w + + + + + +n22:e->x108:w + + + + + +n22:e->x109:w + + + + + +n22:e->x142:w + + + + + +n22:e->x144:w + + + + + +n22:e->x438:w + + + + + +n22:e->x445:w + + + + + +n22:e->x452:w + + + + + +n22:e->x460:w + + + + + +n22:e->x466:w + + + + + +n22:e->x471:w + + + + + +n221:e->x48:w + + + + + +n221:e->x56:w + + + + + +n221:e->x173:w + + + + + +n221:e->x236:w + + + + + +n223:e->x50:w + + + + + +n223:e->x56:w + + + + + +n223:e->x173:w + + + + + +n223:e->x236:w + + + + + +n23:e->x105:w + + + + + +n23:e->x109:w + + + + + +n23:e->x438:w + + + + + +n23:e->x452:w + + + + + +n23:e->x471:w + + + + + +n23:e->c759:w + + + + + +n230:e->c477:w + + + + + +n230:e->x56:w + + + + + +n230:e->x57:w + + + + + +n230:e->x236:w + + + + + +n238:e->x88:w + + + + + +n238:e->x92:w + + + + + +n238:e->x132:w + + + + + +n238:e->x343:w + + + + + +n238:e->x489:w + + + + + +n238:e->x498:w + + + + + +n238:e->x507:w + + + + + +n238:e->x510:w + + + + + +n239:e->x74:w + + + + + +n239:e->x92:w + + + + + +n239:e->x133:w + + + + + +n239:e->x134:w + + + + + +n239:e->x179:w + + + + + +n239:e->x180:w + + + + + +n239:e->x343:w + + + + + +n24:e->x86:w + + + + + +n24:e->x92:w + + + + + +n24:e->x97:w + + + + + +n24:e->x98:w + + + + + +n24:e->x99:w + + + + + +n24:e->x102:w + + + + + +n24:e->x343:w + + + + + +n24:e->x398:w + + + + + +n24:e->x416:w + + + + + +n24:e->x423:w + + + + + +n24:e->x426:w + + + + + +n244:e->x133:w + + + + + +n244:e->x532:w + + + + + +n245:e->x134:w + + + + + +n245:e->x532:w + + + + + +n247:e->x92:w + + + + + +n247:e->x343:w + + + + + +n247:e->c738:w + + + + + +n25:e->x92:w + + + + + +n25:e->x159:w + + + + + +n25:e->x164:w + + + + + +n25:e->x172:w + + + + + +n25:e->x343:w + + + + + +n254:e->x92:w + + + + + +n254:e->x343:w + + + + + +n254:e->x498:w + + + + + +n254:e->x510:w + + + + + +n26:e->x60:w + + + + + +n26:e->x92:w + + + + + +n26:e->x178:w + + + + + +n26:e->x343:w + + + + + +n263:e->x76:w + + + + + +n263:e->x92:w + + + + + +n263:e->x343:w + + + + + +n264:e->x92:w + + + + + +n264:e->x160:w + + + + + +n264:e->x165:w + + + + + +n264:e->x172:w + + + + + +n264:e->x343:w + + + + + +n268:e->x92:w + + + + + +n268:e->x343:w + + + + + +n268:e->x498:w + + + + + +n268:e->x510:w + + + + + +n27:e->x92:w + + + + + +n27:e->x160:w + + + + + +n27:e->x165:w + + + + + +n27:e->x172:w + + + + + +n27:e->x343:w + + + + + +n271:e->x78:w + + + + + +n271:e->x92:w + + + + + +n271:e->x180:w + + + + + +n271:e->x343:w + + + + + +n272:e->x92:w + + + + + +n272:e->x172:w + + + + + +n272:e->x343:w + + + + + +n272:e->x489:w + + + + + +n272:e->x498:w + + + + + +n277:e->x80:w + + + + + +n277:e->x92:w + + + + + +n277:e->x343:w + + + + + +n278:e->x92:w + + + + + +n278:e->x159:w + + + + + +n278:e->x172:w + + + + + +n278:e->x343:w + + + + + +n278:e->x489:w + + + + + +n28:e->x62:w + + + + + +n28:e->x92:w + + + + + +n28:e->x99:w + + + + + +n28:e->x179:w + + + + + +n28:e->x343:w + + + + + +n28:e->x423:w + + + + + +n28:e->c767:w + + + + + +n280:e->x82:w + + + + + +n280:e->x92:w + + + + + +n280:e->x343:w + + + + + +n281:e->x92:w + + + + + +n281:e->x160:w + + + + + +n281:e->x172:w + + + + + +n281:e->x343:w + + + + + +n281:e->x489:w + + + + + +n283:e->x84:w + + + + + +n283:e->x92:w + + + + + +n283:e->x343:w + + + + + +n284:e->x92:w + + + + + +n284:e->x172:w + + + + + +n284:e->x343:w + + + + + +n284:e->x489:w + + + + + +n29:e->x64:w + + + + + +n29:e->x92:w + + + + + +n29:e->x343:w + + + + + +n294:e->x415:w + + + + + +n294:e->x422:w + + + + + +n3:e->c691:w + + + + + +n3:e->c774:w + + + + + +n3:e->c782:w + + + + + +n30:e->x92:w + + + + + +n30:e->x159:w + + + + + +n30:e->x164:w + + + + + +n30:e->x172:w + + + + + +n30:e->x343:w + + + + + +n302:e->x105:w + + + + + +n302:e->x106:w + + + + + +n302:e->x108:w + + + + + +n302:e->x140:w + + + + + +n302:e->x438:w + + + + + +n302:e->x445:w + + + + + +n302:e->x460:w + + + + + +n302:e->x466:w + + + + + +n309:e->c748:w + + + + + +n309:e->c755:w + + + + + +n31:e->x66:w + + + + + +n31:e->x92:w + + + + + +n31:e->x178:w + + + + + +n31:e->x343:w + + + + + +n312:e->x459:w + + + + + +n312:e->x465:w + + + + + +n32:e->x92:w + + + + + +n32:e->x160:w + + + + + +n32:e->x165:w + + + + + +n32:e->x172:w + + + + + +n32:e->x343:w + + + + + +n325:e->x496:w + + + + + +n325:e->c774:w + + + + + +n33:e->x68:w + + + + + +n33:e->x92:w + + + + + +n33:e->x343:w + + + + + +n330:e->x506:w + + + + + +n330:e->x509:w + + + + + +n331:e->x509:w + + + + + +n331:e->c782:w + + + + + +n34:e->x90:w + + + + + +n34:e->x92:w + + + + + +n34:e->x97:w + + + + + +n34:e->x98:w + + + + + +n34:e->x343:w + + + + + +n34:e->x398:w + + + + + +n34:e->x416:w + + + + + +n34:e->c761:w + + + + + +n34:e->c762:w + + + + + +n34:e->c763:w + + + + + +n34:e->c764:w + + + + + +n35:e->x70:w + + + + + +n35:e->x92:w + + + + + +n35:e->x343:w + + + + + +n36:e->x92:w + + + + + +n36:e->x159:w + + + + + +n36:e->x164:w + + + + + +n36:e->x172:w + + + + + +n36:e->x343:w + + + + + +n37:e->x72:w + + + + + +n37:e->x92:w + + + + + +n37:e->x178:w + + + + + +n37:e->x343:w + + + + + +n38:e->x54:w + + + + + +n38:e->x56:w + + + + + +n38:e->x59:w + + + + + +n38:e->x131:w + + + + + +n38:e->x236:w + + + + + +n38:e->x329:w + + + + + +n39:e->c465:w + + + + + +n39:e->x56:w + + + + + +n39:e->x122:w + + + + + +n39:e->x125:w + + + + + +n39:e->x157:w + + + + + +n39:e->x158:w + + + + + +n39:e->x163:w + + + + + +n39:e->x166:w + + + + + +n39:e->x174:w + + + + + +n39:e->x175:w + + + + + +n39:e->x201:w + + + + + +n39:e->x216:w + + + + + +n39:e->x236:w + + + + + +n40:e->x56:w + + + + + +n40:e->x120:w + + + + + +n40:e->x122:w + + + + + +n40:e->x173:w + + + + + +n40:e->x176:w + + + + + +n40:e->x201:w + + + + + +n40:e->x236:w + + + + + +n41:e->x56:w + + + + + +n41:e->x112:w + + + + + +n41:e->x114:w + + + + + +n41:e->x154:w + + + + + +n41:e->x156:w + + + + + +n41:e->x158:w + + + + + +n41:e->x161:w + + + + + +n41:e->x162:w + + + + + +n41:e->x166:w + + + + + +n41:e->x169:w + + + + + +n41:e->x174:w + + + + + +n41:e->x187:w + + + + + +n41:e->x236:w + + + + + +n41:e->x411:w + + + + + +n42:e->x56:w + + + + + +n42:e->x126:w + + + + + +n42:e->x173:w + + + + + +n42:e->x236:w + + + + + +n43:e->x56:w + + + + + +n43:e->x114:w + + + + + +n43:e->x153:w + + + + + +n43:e->x156:w + + + + + +n43:e->x158:w + + + + + +n43:e->x161:w + + + + + +n43:e->x162:w + + + + + +n43:e->x166:w + + + + + +n43:e->x168:w + + + + + +n43:e->x174:w + + + + + +n43:e->x187:w + + + + + +n43:e->x236:w + + + + + +n44:e->x56:w + + + + + +n44:e->x128:w + + + + + +n44:e->x173:w + + + + + +n44:e->x236:w + + + + + +n45:e->x56:w + + + + + +n45:e->x125:w + + + + + +n45:e->x156:w + + + + + +n45:e->x158:w + + + + + +n45:e->x161:w + + + + + +n45:e->x162:w + + + + + +n45:e->x166:w + + + + + +n45:e->x168:w + + + + + +n45:e->x170:w + + + + + +n45:e->x174:w + + + + + +n45:e->x216:w + + + + + +n45:e->x236:w + + + + + +n46:e->x173:w + + + + + +n46:e->x177:w + + + + + +n48:e->x106:w + + + + + +n48:e->x140:w + + + + + +n48:e->c741:w + + + + + +n48:e->c749:w + + + + + +n49:e->c412:w + + + + + +n49:e->x429:w + + + + + +n5:e->x88:w + + + + + +n5:e->c551:w + + + + + +n5:e->c690:w + + + + + +n5:e->c698:w + + + + + +n5:e->c704:w + + + + + +n5:e->c772:w + + + + + +n5:e->c776:w + + + + + +n5:e->c777:w + + + + + +n5:e->c787:w + + + + + +n5:e->c791:w + + + + + +n50:e->c702:w + + + + + +n50:e->c705:w + + + + + +n59:e->x130:w + + + + + +n59:e->x149:w + + + + + +n59:e->x152:w + + + + + +n6:e->x401:w + + + + + +n6:e->x406:w + + + + + +n62:e->x130:w + + + + + +n62:e->x149:w + + + + + +n7:e->x54:w + + + + + +n7:e->c675:w + + + + + +n71:e->x135:w + + + + + +n71:e->x138:w + + + + + +n8:e->x57:w + + + + + +n8:e->c670:w + + + + + +n8:e->c745:w + + + + + +n83:e->x135:w + + + + + +n83:e->x136:w + + + + + +n83:e->x137:w + + + + + +n83:e->x138:w + + + + + +n83:e->x139:w + + + + + +n85:e->x135:w + + + + + +n85:e->x136:w + + + + + +n85:e->x137:w + + + + + +n94:e->x141:w + + + + + +n94:e->x143:w + + + + + +n96:e->x141:w + + + + + +n96:e->x145:w + + + + + +n97:e->x143:w + + + + + +n97:e->x145:w + + + + + +n98:e->c460:w + + + + + +n98:e->c463:w + + + + + +n99:e->c469:w + + + + + +n99:e->c470:w + + + + + diff --git a/exi_bba/diagram.py b/exi_bba/diagram.py new file mode 100644 index 0000000..f5d81d5 --- /dev/null +++ b/exi_bba/diagram.py @@ -0,0 +1,96 @@ +"""Generate synthesized schematics (SVG) for the BBA design via yosys + graphviz. + +Run from the workspace root: + python -m exi_bba.diagram # render the standard set into diagrams/ + python -m exi_bba.diagram ... # render only the named module(s) + +For each module we emit RTLIL (`amaranth.back.rtlil`), run yosys to elaborate +RTL processes (`proc`/`opt`), and `show` it to SVG through graphviz `dot`. + +A schematic of the *whole* synthesised BBATop is a ~2300-LUT hairball, so we +render readable **per-module RTL** views (real muxes/adders/FFs, not anonymous +LUTs), plus a top-level **block diagram** (BBATop's submodules as boxes). +""" + +import os +import shutil +import subprocess +import sys + +from amaranth import Signal +from amaranth.back import rtlil + +from exi_bba.spi_mode3_slave import SPIMode3Slave +from exi_bba.tx_frame_drain import TXFrameDrain +from exi_bba.status_panel import StatusPanel +from exi_bba.spram_arbiter import SPRAMArbiter +from exi_bba.rx_frame_assembler import RXFrameAssembler +from exi_bba.w5100_parallel_master import W5100ParallelMaster +from exi_bba.bba_top import BBATop + +OUT = "diagrams" +_YOSYS = shutil.which("yosys") + + +def _ports(obj): + """Top-level interface = all Signal attributes of the instance.""" + return [v for v in vars(obj).values() if isinstance(v, Signal)] + + +def render(name, obj, *, block=False): + """Emit RTLIL for `obj` and render an SVG schematic into diagrams/. + + block=True → keep the hierarchy and show submodules as boxes (top-level + block diagram). block=False → flatten one module to RTL cells. + """ + if _YOSYS is None: + sys.exit("yosys not found on PATH (install it, or use amaranth_yosys).") + os.makedirs(OUT, exist_ok=True) + il_path = os.path.join(OUT, f"{name}.il") + with open(il_path, "w") as f: + f.write(rtlil.convert(obj, name=name, ports=_ports(obj))) + + prefix = os.path.join(OUT, name) + if block: + # Keep the hierarchy; show only the top module (submodules → boxes). + script = (f"read_rtlil {il_path}; hierarchy -top {name}; proc; " + f"show -format svg -prefix {prefix} -notitle {name}") + else: + # Flatten tiny CDC sub-cells in, convert processes, render RTL cells. + # `delete t:$meminit_v2` drops the (cosmetic) memory-init constant — a + # 64K-word all-zero vector that overflows graphviz's string limit. + script = (f"read_rtlil {il_path}; hierarchy -top {name}; " + f"delete t:$meminit_v2; proc; flatten; opt -purge; " + f"show -format svg -prefix {prefix} -notitle -colors 1") + subprocess.run([_YOSYS, "-q", "-p", script], check=True) + for junk in (il_path, f"{prefix}.dot"): # keep only the .svg + if os.path.exists(junk): + os.remove(junk) + print(f" ✓ {prefix}.svg") + + +# name → (factory, block?) +TARGETS = { + "spi_mode3_slave": (lambda: SPIMode3Slave(domain="sync"), False), + "tx_frame_drain": (lambda: TXFrameDrain(), False), + "status_panel": (lambda: StatusPanel(), False), + "spram_arbiter": (lambda: SPRAMArbiter(), False), + "rx_frame_assembler": (lambda: RXFrameAssembler(), False), + "w5100_master": (lambda: W5100ParallelMaster(), False), + "bbatop_blocks": (lambda: BBATop(eth="w5100"), True), +} + + +if __name__ == "__main__": + want = sys.argv[1:] or list(TARGETS) + for name in want: + if name not in TARGETS: + print(f" ? unknown target '{name}' (have: {', '.join(TARGETS)})") + continue + factory, block = TARGETS[name] + print(f"rendering {name} …") + try: + render(name, factory(), block=block) + except Exception as exc: + print(f" ✗ {name} failed: {exc}") + print(f"\nDone → {OUT}/")