Add PRGA top and tile_clb Verilog and configuration files
diff --git a/openlane/prga/config.tcl b/openlane/prga/config.tcl new file mode 100644 index 0000000..e2635b0 --- /dev/null +++ b/openlane/prga/config.tcl
@@ -0,0 +1,85 @@ +# SPDX-FileCopyrightText: 2020 Efabless Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# SPDX-License-Identifier: Apache-2.0 + +set ::env(PDK) "sky130A" +set ::env(STD_CELL_LIBRARY) "sky130_fd_sc_hd" + +set script_dir [file dirname [file normalize [info script]]] + +set ::env(DESIGN_NAME) "top" + +set ::env(VERILOG_FILES) "\ + $::env(CARAVEL_ROOT)/verilog/rtl/defines.v \ + $script_dir/../../verilog/rtl/top.pickled.v" + +set ::env(VERILOG_FILES_BLACKBOX) "\ + $::env(CARAVEL_ROOT)/verilog/rtl/defines.v \ + $script_dir/../../verilog/rtl/tile_clb.bb.v" + +set ::env(EXTRA_LEFS) "\ + $script_dir/../../lef/tile_clb.lef" + +set ::env(EXTRA_GDS_FILES) "\ + $script_dir/../../gds/tile_clb.gds" + +# Specifies the base sdc file to source before running Static Timing Analysis. (Default: $::env(OPENLANE_ROOT)/scripts/base.sdc) +set ::env(BASE_SDC_FILE) $::env(DESIGN_DIR)/constraint.sdc + +set ::env(DESIGN_IS_CORE) 0 +# set ::env(FP_PDN_CORE_RING) 0 + +set ::env(CLOCK_PORT) "prog_clk ipin_x0y1_0" +set ::env(CLOCK_NET) "prog_clk ipin_x0y1_0" +set ::env(CLOCK_PERIOD) "1500" + +set ::env(FP_SIZING) absolute +set ::env(DIE_AREA) "0 0 2600 3200" + +set ::env(FP_PIN_ORDER_CFG) $script_dir/pin_order.cfg +set ::env(MACRO_PLACEMENT_CFG) $script_dir/macro_placement.cfg + +set ::env(PL_TARGET_DENSITY) 0.125 +set ::env(PL_RESIZER_MAX_WIRE_LENGTH) 250 +set ::env(CTS_CLK_MAX_WIRE_LENGTH) 250 + +# Maximum layer used for routing is metal 4. +# This is because this macro will be inserted in a top level (user_project_wrapper) +# where the PDN is planned on metal 5. So, to avoid having shorts between routes +# in this macro and the top level metal 5 stripes, we have to restrict routes to metal4. +set ::env(RT_MIN_LAYER) met1 +set ::env(RT_MAX_LAYER) met4 +set ::env(DRT_MIN_LAYER) li1 +set ::env(DRT_MAX_LAYER) met4 + +# You can draw more power domains if you need to +set ::env(VDD_NETS) [list {vccd1}] +set ::env(GND_NETS) [list {vssd1}] + +# custom PDN +set ::env(FP_PDN_ENABLE_MACROS_GRID) 1 +set ::env(PDN_CFG) $script_dir/pdn_cfg.tcl + +# Specifies the number of threads to be used in TritonRoute. Can be overriden via environment variable. (Default: 2) +set ::env(ROUTING_CORES) 8 + +# Specifies the maximum number of optimization iterations during Detailed Routing in TritonRoute. (Default: 64) +# set ::env(DRT_OPT_ITERS) 20 + +set ::env(DIODE_INSERTION_STRATEGY) 3 +set ::env(GLB_RT_MAX_DIODE_INS_ITERS) 10 +set ::env(GLB_RT_ANT_ITERS) 10 + +# If you're going to use multiple power domains, then disable cvc run. +set ::env(RUN_CVC) 1
diff --git a/openlane/prga/constraint.sdc b/openlane/prga/constraint.sdc new file mode 100755 index 0000000..dff8ab3 --- /dev/null +++ b/openlane/prga/constraint.sdc
@@ -0,0 +1,12 @@ +set_units -time ns +create_clock [get_ports ipin_x0y1_0] -name CLK -period 500 -waveform {0 250} +create_clock [get_ports prog_clk] -name PROG_CLK -period 1500 -waveform {0 750} + +set_clock_groups -asynchronous -group PROG_CLK -group CLK +set_false_path -from CLK -to PROG_CLK +set_false_path -from PROG_CLK -to CLK + +#set_case_analysis 0 tile_clb/i_blk/cluster_i0/i_prog_data_i_sw_o/prog_data_reg[0]/Q +#set_case_analysis 0 tile_clb/i_blk/cluster_i1/i_prog_data_i_sw_o/prog_data_reg[0]/Q +#set_case_analysis 0 tile_clb/i_blk/cluster_i2/i_prog_data_i_sw_o/prog_data_reg[0]/Q +#set_case_analysis 0 tile_clb/i_blk/cluster_i3/i_prog_data_i_sw_o/prog_data_reg[0]/Q
diff --git a/openlane/prga/gen_placement.py b/openlane/prga/gen_placement.py new file mode 100644 index 0000000..4425a62 --- /dev/null +++ b/openlane/prga/gen_placement.py
@@ -0,0 +1,119 @@ +import os +import math +import sys +from itertools import product + +script_dir = os.path.dirname (os.path.abspath(__file__)) + +site_width = 0.46 +site_height = 2.72 + +top_left_margin_mult = 12 +top_right_margin_mult = 12 +top_top_margin_mult = 4 +top_bottom_margin_mult = 4 + +top_voffset = 16.32 # horizontal offset of vertical strips +top_vpitch = 153.60 # horizontal pitch of vertical strips + # this is VDD-to-VDD, i.e. there's a GND at half top_vpitch +top_vwidth = 1.60 # width of the vertical strips +top_vspace = 1.70 # min spacing between any vertical PDN +top_hoffset = 16.65 # vertical offset of horizontal strips +top_hpitch = 153.18 # vertical pitch of horizontal strips +top_hwidth = 1.60 # width of the horizontal strips +top_hspace = 1.70 # min spacing between any horizontal PDN + +# Vertical multiplier +vmult = 2.5 + +# the goal is to place one CLB every (2*top_vpitch, vmult*top_hpitch) +num_clb_x = 8 +num_clb_y = 8 + +# Get PDN shapes in tile_clb +def get_clb_pdn_met4 (): + pdn = [] + found_met4 = False + + for lineno, line in enumerate( + open(os.path.join(script_dir, "..", "..", "lef", "tile_clb.lef")), + 1): + tokens = line.split() + + if found_met4: + found_met4 = False + try: + pdn.append (tuple(map(float, tokens[1:5]))) + except (IndexError, ValueError): + raise RuntimeError ("[LINE {:>06d}] Expecting 'RECT %f %f %f %f ;'".format(lineno)) + + else: + if len(tokens) >= 2 and tokens[0] == "LAYER" and tokens[1] == "met4": + found_met4 = True + + return list(sorted(pdn, key = lambda x: x[0])) + +# Analyze PDN shapes: reverse-engineer the horizontal offset, pitch and width of the vertical strips of PDN +def analyze_pdn (pdn): + if len(pdn) < 2: + raise RuntimeError("At least 2 PDN shapes are required for analysis") + + strips = [ ((shape[0] + shape[2])/2., (shape[2] - shape[0])/2.) + for shape in pdn ] + strips = sorted(strips, key = lambda x: x[0]) + + offset = strips[0][0] + pitch = strips[1][0] - offset + width = strips[0][1] + for i, strip in enumerate(strips): + if i < len(strip) - 1: + if abs(strips[i+1][0] - strip[0] - pitch) > 1e-10: + raise RuntimeError("Inconsistent pitch") + if abs(strip[1] - width) > 1e-10: + raise RuntimeError("Inconsistent width") + + return offset, pitch, width + +# Validate horizontal placement +def validate_hplace ( macro_hoffset, macro_pdn ): + # top grid: + # + # for any integer __k__: + # top_left_margin_mult * site_width + # + top_voffset + # + __k__ * top_vpitch / 2 + x_top_pdn_met4 = top_left_margin_mult * site_width + top_voffset + + for x in range(num_clb_x): + for x0, _0, x1, _1 in macro_pdn: + x0 += macro_hoffset + x * top_vpitch * 2 + x1 += macro_hoffset + x * top_vpitch * 2 + + left_space = (x0 - x_top_pdn_met4) + left_space -= math.floor(2 * left_space / top_vpitch) * top_vpitch / 2 + if left_space < top_vwidth / 2 + top_vspace: + raise RuntimeError("[Error] PDN conflict at {:g}".format(x0)) + + right_space = (x1 - x_top_pdn_met4) + right_space -= math.floor(2 * right_space / top_vpitch) * top_vpitch / 2 + right_space = top_vpitch / 2 - right_space + if right_space < top_vwidth / 2 + top_vspace: + raise RuntimeError("[Error] PDN conflict at {:g}".format(x0)) + +if __name__ == '__main__': + if len(sys.argv) < 4: + raise RuntimeError("Three arguments required (x and y offset of macros, output file name)") + + macro_hoffset = math.floor(float(sys.argv[1]) / site_width) * site_width + macro_voffset = math.floor(float(sys.argv[2]) / site_height) * site_height + print ("x offset legalized to {:>4.2f}".format(macro_hoffset)) + print ("y offset legalized to {:>4.2f}".format(macro_voffset)) + + validate_hplace (macro_hoffset, get_clb_pdn_met4()) + + with open(sys.argv[3], 'w') as f: + for x, y in product(range(num_clb_x), range(num_clb_y)): + f.write ("i_tile_x{}y{} {:>4.2f} {:>4.2f} R0\n" + .format(x + 1, y + 1, + macro_hoffset + x * top_vpitch * 2, + macro_voffset + y * top_hpitch * vmult))
diff --git a/openlane/prga/macro_placement.cfg b/openlane/prga/macro_placement.cfg new file mode 100644 index 0000000..bf09664 --- /dev/null +++ b/openlane/prga/macro_placement.cfg
@@ -0,0 +1,64 @@ +i_tile_x1y1 124.66 149.60 R0 +i_tile_x1y2 124.66 532.55 R0 +i_tile_x1y3 124.66 915.50 R0 +i_tile_x1y4 124.66 1298.45 R0 +i_tile_x1y5 124.66 1681.40 R0 +i_tile_x1y6 124.66 2064.35 R0 +i_tile_x1y7 124.66 2447.30 R0 +i_tile_x1y8 124.66 2830.25 R0 +i_tile_x2y1 431.86 149.60 R0 +i_tile_x2y2 431.86 532.55 R0 +i_tile_x2y3 431.86 915.50 R0 +i_tile_x2y4 431.86 1298.45 R0 +i_tile_x2y5 431.86 1681.40 R0 +i_tile_x2y6 431.86 2064.35 R0 +i_tile_x2y7 431.86 2447.30 R0 +i_tile_x2y8 431.86 2830.25 R0 +i_tile_x3y1 739.06 149.60 R0 +i_tile_x3y2 739.06 532.55 R0 +i_tile_x3y3 739.06 915.50 R0 +i_tile_x3y4 739.06 1298.45 R0 +i_tile_x3y5 739.06 1681.40 R0 +i_tile_x3y6 739.06 2064.35 R0 +i_tile_x3y7 739.06 2447.30 R0 +i_tile_x3y8 739.06 2830.25 R0 +i_tile_x4y1 1046.26 149.60 R0 +i_tile_x4y2 1046.26 532.55 R0 +i_tile_x4y3 1046.26 915.50 R0 +i_tile_x4y4 1046.26 1298.45 R0 +i_tile_x4y5 1046.26 1681.40 R0 +i_tile_x4y6 1046.26 2064.35 R0 +i_tile_x4y7 1046.26 2447.30 R0 +i_tile_x4y8 1046.26 2830.25 R0 +i_tile_x5y1 1353.46 149.60 R0 +i_tile_x5y2 1353.46 532.55 R0 +i_tile_x5y3 1353.46 915.50 R0 +i_tile_x5y4 1353.46 1298.45 R0 +i_tile_x5y5 1353.46 1681.40 R0 +i_tile_x5y6 1353.46 2064.35 R0 +i_tile_x5y7 1353.46 2447.30 R0 +i_tile_x5y8 1353.46 2830.25 R0 +i_tile_x6y1 1660.66 149.60 R0 +i_tile_x6y2 1660.66 532.55 R0 +i_tile_x6y3 1660.66 915.50 R0 +i_tile_x6y4 1660.66 1298.45 R0 +i_tile_x6y5 1660.66 1681.40 R0 +i_tile_x6y6 1660.66 2064.35 R0 +i_tile_x6y7 1660.66 2447.30 R0 +i_tile_x6y8 1660.66 2830.25 R0 +i_tile_x7y1 1967.86 149.60 R0 +i_tile_x7y2 1967.86 532.55 R0 +i_tile_x7y3 1967.86 915.50 R0 +i_tile_x7y4 1967.86 1298.45 R0 +i_tile_x7y5 1967.86 1681.40 R0 +i_tile_x7y6 1967.86 2064.35 R0 +i_tile_x7y7 1967.86 2447.30 R0 +i_tile_x7y8 1967.86 2830.25 R0 +i_tile_x8y1 2275.06 149.60 R0 +i_tile_x8y2 2275.06 532.55 R0 +i_tile_x8y3 2275.06 915.50 R0 +i_tile_x8y4 2275.06 1298.45 R0 +i_tile_x8y5 2275.06 1681.40 R0 +i_tile_x8y6 2275.06 2064.35 R0 +i_tile_x8y7 2275.06 2447.30 R0 +i_tile_x8y8 2275.06 2830.25 R0
diff --git a/openlane/prga/pdn_cfg.tcl b/openlane/prga/pdn_cfg.tcl new file mode 100644 index 0000000..0a04e4c --- /dev/null +++ b/openlane/prga/pdn_cfg.tcl
@@ -0,0 +1,52 @@ +# Power nets + +if { ! [info exists ::env(VDD_NET)] } { + set ::env(VDD_NET) $::env(VDD_PIN) +} + +if { ! [info exists ::env(GND_NET)] } { + set ::env(GND_NET) $::env(GND_PIN) +} + +set ::power_nets $::env(VDD_NET) +set ::ground_nets $::env(GND_NET) + +if { [info exists ::env(FP_PDN_ENABLE_GLOBAL_CONNECTIONS)] } { + if { $::env(FP_PDN_ENABLE_GLOBAL_CONNECTIONS) == 1 } { + foreach power_pin $::env(STD_CELL_POWER_PINS) { + add_global_connection -net $::env(VDD_NET) -inst_pattern .* -pin_pattern $power_pin -power + } + foreach ground_pin $::env(STD_CELL_GROUND_PINS) { + add_global_connection -net $::env(GND_NET) -inst_pattern .* -pin_pattern $ground_pin -ground + } + } +} + +set_voltage_domain -name CORE -power $::env(VDD_NET) -ground $::env(GND_NET) + +# stdcell grid +define_pdn_grid -name stdcell_grid -starts_with POWER -voltage_domain CORE -pins $::env(FP_PDN_LOWER_LAYER) +add_pdn_stripe -grid stdcell_grid -layer $::env(FP_PDN_LOWER_LAYER) -width $::env(FP_PDN_VWIDTH) -pitch $::env(FP_PDN_VPITCH) -offset $::env(FP_PDN_VOFFSET) -starts_with POWER +add_pdn_stripe -grid stdcell_grid -layer $::env(FP_PDN_RAILS_LAYER) -width $::env(FP_PDN_RAIL_WIDTH) -followpins -starts_with POWER +add_pdn_connect -grid stdcell_grid -layers [subst {$::env(FP_PDN_RAILS_LAYER) $::env(FP_PDN_LOWER_LAYER)}] + +# macro grid +set macro { + orient {R0 R180 MX MY R90 R270 MXR90 MYR90} + power_pins $::env(VDD_NET) + ground_pins $::env(GND_NET) + blockages {"li1" "met1" "met2" "met3"} + straps { + met3 {width 0.6 pitch 65.28 offset 5.78} + } + connect { {met2_PIN_ver met3} {met3 $::env(FP_PDN_LOWER_LAYER)} } +} + +set ::halo [list $::env(FP_PDN_HORIZONTAL_HALO) $::env(FP_PDN_VERTICAL_HALO)] +pdngen::specify_grid macro [subst $macro] + +# POWER or GROUND #Std. cell rails starting with power or ground rails at the bottom of the core area +set ::rails_start_with "POWER" ; + +# POWER or GROUND #Upper metal stripes starting with power or ground rails at the left/bottom of the core area +set ::stripes_start_with "POWER" ;
diff --git a/openlane/prga/pin_order.cfg b/openlane/prga/pin_order.cfg new file mode 100644 index 0000000..3978857 --- /dev/null +++ b/openlane/prga/pin_order.cfg
@@ -0,0 +1,19 @@ +#BUS_SORT + +#W +ipin_x0y.* +opin_x0y.* +oe_x0y.* + +#E +ipin_x9y.* +opin_x9y.* +oe_x9y.* + +#S +prog.* + +#N +ipin_x.*y9_.* +opin_x.*y9_.* +oe_x.*y9_.*
diff --git a/openlane/tile_clb/config.tcl b/openlane/tile_clb/config.tcl new file mode 100755 index 0000000..759434a --- /dev/null +++ b/openlane/tile_clb/config.tcl
@@ -0,0 +1,70 @@ +# SPDX-FileCopyrightText: 2020 Efabless Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# SPDX-License-Identifier: Apache-2.0 + +set ::env(PDK) "sky130A" +set ::env(STD_CELL_LIBRARY) "sky130_fd_sc_hd" + +set script_dir [file dirname [file normalize [info script]]] + +set ::env(DESIGN_NAME) "tile_clb" + +set ::env(VERILOG_FILES) "\ + $::env(CARAVEL_ROOT)/verilog/rtl/defines.v \ + $script_dir/../../verilog/rtl/tile_clb.pickled.v" + +# Specifies the base sdc file to source before running Static Timing Analysis. (Default: $::env(OPENLANE_ROOT)/scripts/base.sdc) +set ::env(BASE_SDC_FILE) $::env(DESIGN_DIR)/constraint.sdc + +set ::env(DESIGN_IS_CORE) 0 +# [Ang]: We don't need to create PDN ring for each CLB +# set ::env(FP_PDN_CORE_RING) 0 + +set ::env(CLOCK_PORT) "prog_clk clk" +set ::env(CLOCK_NET) "prog_clk clk" +set ::env(CLOCK_PERIOD) "1000" + +set ::env(FP_SIZING) absolute +set ::env(DIE_AREA) "0 0 165.60 217.60" + +set ::env(FP_PIN_ORDER_CFG) $script_dir/pin_order.cfg +set ::env(FP_IO_HLAYER) met1 +set ::env(FP_IO_VLAYER) met2 + +set ::env(BOTTOM_MARGIN_MULT) 2 +set ::env(TOP_MARGIN_MULT) 2 +set ::env(LEFT_MARGIN_MULT) 12 +set ::env(RIGHT_MARGIN_MULT) 12 + +set ::env(PDN_CFG) $script_dir/pdn_cfg.tcl + +# set ::env(PL_BASIC_PLACEMENT) 1 +set ::env(PL_TARGET_DENSITY) 0.57 + +# Maximum layer used for routing is metal 4. +# This is because this macro will be inserted in a top level (user_project_wrapper) +# where the PDN is planned on metal 5. So, to avoid having shorts between routes +# in this macro and the top level metal 5 stripes, we have to restrict routes to metal4. +set ::env(RT_MIN_LAYER) met1 +set ::env(RT_MAX_LAYER) met2 +set ::env(DRT_MIN_LAYER) li1 +set ::env(DRT_MAX_LAYER) met2 + +# You can draw more power domains if you need to +set ::env(VDD_NETS) [list {vccd1}] +set ::env(GND_NETS) [list {vssd1}] + +set ::env(DIODE_INSERTION_STRATEGY) 4 +# If you're going to use multiple power domains, then disable cvc run. +set ::env(RUN_CVC) 0
diff --git a/openlane/tile_clb/constraint.sdc b/openlane/tile_clb/constraint.sdc new file mode 100755 index 0000000..d7ed9f3 --- /dev/null +++ b/openlane/tile_clb/constraint.sdc
@@ -0,0 +1,16 @@ +set_units -time ns +create_clock [get_ports clk] -name CLK -period 100 -waveform {0 50} +create_clock [get_ports prog_clk] -name PROG_CLK -period 1000 -waveform {0 500} + +set_case_analysis 0 _2659_/Q +set_case_analysis 0 _2680_/Q +set_case_analysis 0 _2701_/Q +set_case_analysis 0 _2722_/Q +set_case_analysis 0 _2743_/Q +set_case_analysis 0 _2764_/Q +set_case_analysis 0 _2785_/Q +set_case_analysis 0 _2805_/Q + +set_clock_groups -asynchronous -group PROG_CLK -group CLK +set_false_path -from CLK -to PROG_CLK +set_false_path -from PROG_CLK -to CLK
diff --git a/openlane/tile_clb/pdn_cfg.tcl b/openlane/tile_clb/pdn_cfg.tcl new file mode 100644 index 0000000..f64abc0 --- /dev/null +++ b/openlane/tile_clb/pdn_cfg.tcl
@@ -0,0 +1,41 @@ +# Power nets + +if { ! [info exists ::env(VDD_NET)] } { + set ::env(VDD_NET) $::env(VDD_PIN) +} + +if { ! [info exists ::env(GND_NET)] } { + set ::env(GND_NET) $::env(GND_PIN) +} + +set ::power_nets $::env(VDD_NET) +set ::ground_nets $::env(GND_NET) + +if { [info exists ::env(FP_PDN_ENABLE_GLOBAL_CONNECTIONS)] } { + if { $::env(FP_PDN_ENABLE_GLOBAL_CONNECTIONS) == 1 } { + foreach power_pin $::env(STD_CELL_POWER_PINS) { + add_global_connection -net $::env(VDD_NET) -inst_pattern .* -pin_pattern $power_pin -power + } + foreach ground_pin $::env(STD_CELL_GROUND_PINS) { + add_global_connection -net $::env(GND_NET) -inst_pattern .* -pin_pattern $ground_pin -ground + } + } +} + +set_voltage_domain -name CORE -power $::env(VDD_NET) -ground $::env(GND_NET) + +# Assesses whether the deisgn is the core of the chip or not based on the +# value of $::env(DESIGN_IS_CORE) and uses the appropriate stdcell section +define_pdn_grid -name stdcell_grid -starts_with POWER -voltage_domain CORE -pins {"met2"} +add_pdn_stripe -grid stdcell_grid -layer "met2" -width 0.28 -pitch 51.52 -offset 5.29 -starts_with POWER + +# Adds the standard cell rails +add_pdn_stripe -grid stdcell_grid -layer $::env(FP_PDN_RAILS_LAYER) -width $::env(FP_PDN_RAIL_WIDTH) -followpins -starts_with POWER +add_pdn_connect -grid stdcell_grid -layers [subst {$::env(FP_PDN_RAILS_LAYER) "met2"}] + + +# POWER or GROUND #Std. cell rails starting with power or ground rails at the bottom of the core area +set ::rails_start_with "POWER" ; + +# POWER or GROUND #Upper metal stripes starting with power or ground rails at the left/bottom of the core area +set ::stripes_start_with "POWER" ;
diff --git a/openlane/tile_clb/pin_order.cfg b/openlane/tile_clb/pin_order.cfg new file mode 100644 index 0000000..ec891d7 --- /dev/null +++ b/openlane/tile_clb/pin_order.cfg
@@ -0,0 +1,19 @@ +#BUS_SORT + +#W +bi_.* + +#E +cu_.* + +#S +clk +prog_din +prog_rst +prog_done +prog_we +prog_clk + +#N +prog_dout +prog_we_o
diff --git a/verilog/rtl/tile_clb.bb.v b/verilog/rtl/tile_clb.bb.v new file mode 100644 index 0000000..7b24aaf --- /dev/null +++ b/verilog/rtl/tile_clb.bb.v
@@ -0,0 +1,49 @@ +// SPDX-FileCopyrightText: (c) 2022 Princeton University +// SPDX-License-Identifier: BSD-3-Clause +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are met: +// +// 1. Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// 2. Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// 3. Neither the name of the copyright holder nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +module tile_clb ( +`ifdef USE_POWER_PINS + inout vccd1, // User area 1 1.8V supply + inout vssd1, // User area 1 digital ground +`endif + output wire [11:0] cu_x0y0n_L1 + , output wire [11:0] cu_x0y0s_L1 + , input wire [11:0] bi_u1y0n_L1 + , input wire [11:0] bi_u1y0s_L1 + , input wire [0:0] clk + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + +endmodule
diff --git a/verilog/rtl/tile_clb.pickled.v b/verilog/rtl/tile_clb.pickled.v new file mode 100644 index 0000000..5b7d3e2 --- /dev/null +++ b/verilog/rtl/tile_clb.pickled.v
@@ -0,0 +1,1997 @@ +// SPDX-FileCopyrightText: (c) 2022 Princeton University +// SPDX-License-Identifier: BSD-3-Clause +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are met: +// +// 1. Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// 2. Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// 3. Neither the name of the copyright holder nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Automatically generated by PRGA's RTL generator +module tile_clb ( +`ifdef USE_POWER_PINS + inout vccd1, // User area 1 1.8V supply + inout vssd1, // User area 1 digital ground +`endif + output wire [11:0] cu_x0y0n_L1 + , output wire [11:0] cu_x0y0s_L1 + , input wire [11:0] bi_u1y0n_L1 + , input wire [11:0] bi_u1y0s_L1 + , input wire [0:0] clk + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [7:0] _i_blk__out; + wire [0:0] _i_blk__prog_dout; + wire [0:0] _i_blk__prog_we_o; + wire [11:0] _i_cbox_e0__cu_x0y0n_L1; + wire [11:0] _i_cbox_e0__cu_x0y0s_L1; + wire [0:0] _i_cbox_e0__prog_dout; + wire [0:0] _i_cbox_e0__prog_we_o; + wire [15:0] _i_cbox_w0__bp_x0y0i0_in; + wire [0:0] _i_cbox_w0__prog_dout; + wire [0:0] _i_cbox_w0__prog_we_o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_buf_prog_rst_l1__Q; + wire [0:0] _i_buf_prog_done_l1__Q; + + clb i_blk ( + .clk(clk) + ,.in(_i_cbox_w0__bp_x0y0i0_in) + ,.out(_i_blk__out) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_blk__prog_dout) + ,.prog_we_o(_i_blk__prog_we_o) + ); + cbox_tile_clb_e0 i_cbox_e0 ( + .bp_x0y0i0_out(_i_blk__out) + ,.cu_x0y0n_L1(_i_cbox_e0__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_cbox_e0__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk__prog_we_o) + ,.prog_din(_i_blk__prog_dout) + ,.prog_dout(_i_cbox_e0__prog_dout) + ,.prog_we_o(_i_cbox_e0__prog_we_o) + ); + cbox_tile_clb_w0 i_cbox_w0 ( + .bp_x0y0i0_in(_i_cbox_w0__bp_x0y0i0_in) + ,.bi_u1y0n_L1(bi_u1y0n_L1) + ,.bi_u1y0s_L1(bi_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_cbox_e0__prog_we_o) + ,.prog_din(_i_cbox_e0__prog_dout) + ,.prog_dout(_i_cbox_w0__prog_dout) + ,.prog_we_o(_i_cbox_w0__prog_we_o) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(_i_buf_prog_rst_l1__Q) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(_i_buf_prog_done_l1__Q) + ,.Q(_i_buf_prog_done_l0__Q) + ); + prga_simple_buf i_buf_prog_rst_l1 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l1__Q) + ); + prga_simple_bufr i_buf_prog_done_l1 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l1__Q) + ); + + assign cu_x0y0n_L1 = _i_cbox_e0__cu_x0y0n_L1; + assign cu_x0y0s_L1 = _i_cbox_e0__cu_x0y0s_L1; + assign prog_dout = _i_cbox_w0__prog_dout; + assign prog_we_o = _i_cbox_w0__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module clb ( + input wire [0:0] clk + , input wire [15:0] in + , output wire [7:0] out + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _cluster_i0__o; + wire [0:0] _cluster_i0__prog_dout; + wire [0:0] _cluster_i1__o; + wire [0:0] _cluster_i1__prog_dout; + wire [0:0] _cluster_i2__o; + wire [0:0] _cluster_i2__prog_dout; + wire [0:0] _cluster_i3__o; + wire [0:0] _cluster_i3__prog_dout; + wire [0:0] _cluster_i4__o; + wire [0:0] _cluster_i4__prog_dout; + wire [0:0] _cluster_i5__o; + wire [0:0] _cluster_i5__prog_dout; + wire [0:0] _cluster_i6__o; + wire [0:0] _cluster_i6__prog_dout; + wire [0:0] _cluster_i7__o; + wire [0:0] _cluster_i7__prog_dout; + wire [0:0] _i_sw_cluster_i0_i_0__o; + wire [0:0] _i_sw_cluster_i0_i_1__o; + wire [0:0] _i_sw_cluster_i0_i_2__o; + wire [0:0] _i_sw_cluster_i0_i_3__o; + wire [0:0] _i_sw_cluster_i1_i_0__o; + wire [0:0] _i_sw_cluster_i1_i_1__o; + wire [0:0] _i_sw_cluster_i1_i_2__o; + wire [0:0] _i_sw_cluster_i1_i_3__o; + wire [0:0] _i_sw_cluster_i2_i_0__o; + wire [0:0] _i_sw_cluster_i2_i_1__o; + wire [0:0] _i_sw_cluster_i2_i_2__o; + wire [0:0] _i_sw_cluster_i2_i_3__o; + wire [0:0] _i_sw_cluster_i3_i_0__o; + wire [0:0] _i_sw_cluster_i3_i_1__o; + wire [0:0] _i_sw_cluster_i3_i_2__o; + wire [0:0] _i_sw_cluster_i3_i_3__o; + wire [0:0] _i_sw_cluster_i4_i_0__o; + wire [0:0] _i_sw_cluster_i4_i_1__o; + wire [0:0] _i_sw_cluster_i4_i_2__o; + wire [0:0] _i_sw_cluster_i4_i_3__o; + wire [0:0] _i_sw_cluster_i5_i_0__o; + wire [0:0] _i_sw_cluster_i5_i_1__o; + wire [0:0] _i_sw_cluster_i5_i_2__o; + wire [0:0] _i_sw_cluster_i5_i_3__o; + wire [0:0] _i_sw_cluster_i6_i_0__o; + wire [0:0] _i_sw_cluster_i6_i_1__o; + wire [0:0] _i_sw_cluster_i6_i_2__o; + wire [0:0] _i_sw_cluster_i6_i_3__o; + wire [0:0] _i_sw_cluster_i7_i_0__o; + wire [0:0] _i_sw_cluster_i7_i_1__o; + wire [0:0] _i_sw_cluster_i7_i_2__o; + wire [0:0] _i_sw_cluster_i7_i_3__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_cluster_i0_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i0_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i0_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i0_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i0_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i0_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i0_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i0_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i1_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i1_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i1_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i1_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i1_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i1_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i1_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i1_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i2_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i2_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i2_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i2_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i2_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i2_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i2_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i2_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i3_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i3_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i3_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i3_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i3_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i3_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i3_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i3_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i4_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i4_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i4_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i4_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i4_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i4_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i4_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i4_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i5_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i5_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i5_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i5_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i5_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i5_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i5_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i5_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i6_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i6_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i6_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i6_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i6_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i6_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i6_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i6_i_3__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i7_i_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i7_i_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i7_i_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i7_i_1__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i7_i_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i7_i_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cluster_i7_i_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_cluster_i7_i_3__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + slice cluster_i0 ( + .clk(clk) + ,.i({_i_sw_cluster_i0_i_3__o, + _i_sw_cluster_i0_i_2__o, + _i_sw_cluster_i0_i_1__o, + _i_sw_cluster_i0_i_0__o}) + ,.o(_cluster_i0__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_cluster_i0__prog_dout) + ); + slice cluster_i1 ( + .clk(clk) + ,.i({_i_sw_cluster_i1_i_3__o, + _i_sw_cluster_i1_i_2__o, + _i_sw_cluster_i1_i_1__o, + _i_sw_cluster_i1_i_0__o}) + ,.o(_cluster_i1__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i0__prog_dout) + ,.prog_dout(_cluster_i1__prog_dout) + ); + slice cluster_i2 ( + .clk(clk) + ,.i({_i_sw_cluster_i2_i_3__o, + _i_sw_cluster_i2_i_2__o, + _i_sw_cluster_i2_i_1__o, + _i_sw_cluster_i2_i_0__o}) + ,.o(_cluster_i2__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i1__prog_dout) + ,.prog_dout(_cluster_i2__prog_dout) + ); + slice cluster_i3 ( + .clk(clk) + ,.i({_i_sw_cluster_i3_i_3__o, + _i_sw_cluster_i3_i_2__o, + _i_sw_cluster_i3_i_1__o, + _i_sw_cluster_i3_i_0__o}) + ,.o(_cluster_i3__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i2__prog_dout) + ,.prog_dout(_cluster_i3__prog_dout) + ); + slice cluster_i4 ( + .clk(clk) + ,.i({_i_sw_cluster_i4_i_3__o, + _i_sw_cluster_i4_i_2__o, + _i_sw_cluster_i4_i_1__o, + _i_sw_cluster_i4_i_0__o}) + ,.o(_cluster_i4__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i3__prog_dout) + ,.prog_dout(_cluster_i4__prog_dout) + ); + slice cluster_i5 ( + .clk(clk) + ,.i({_i_sw_cluster_i5_i_3__o, + _i_sw_cluster_i5_i_2__o, + _i_sw_cluster_i5_i_1__o, + _i_sw_cluster_i5_i_0__o}) + ,.o(_cluster_i5__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i4__prog_dout) + ,.prog_dout(_cluster_i5__prog_dout) + ); + slice cluster_i6 ( + .clk(clk) + ,.i({_i_sw_cluster_i6_i_3__o, + _i_sw_cluster_i6_i_2__o, + _i_sw_cluster_i6_i_1__o, + _i_sw_cluster_i6_i_0__o}) + ,.o(_cluster_i6__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i5__prog_dout) + ,.prog_dout(_cluster_i6__prog_dout) + ); + slice cluster_i7 ( + .clk(clk) + ,.i({_i_sw_cluster_i7_i_3__o, + _i_sw_cluster_i7_i_2__o, + _i_sw_cluster_i7_i_1__o, + _i_sw_cluster_i7_i_0__o}) + ,.o(_cluster_i7__o) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i6__prog_dout) + ,.prog_dout(_cluster_i7__prog_dout) + ); + sw3 i_sw_cluster_i0_i_0 ( + .i({_cluster_i0__o, + in[8], + in[0]}) + ,.o(_i_sw_cluster_i0_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_0__prog_data) + ); + sw3 i_sw_cluster_i0_i_1 ( + .i({_cluster_i2__o, + in[10], + in[2]}) + ,.o(_i_sw_cluster_i0_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_1__prog_data) + ); + sw3 i_sw_cluster_i0_i_2 ( + .i({_cluster_i4__o, + in[12], + in[4]}) + ,.o(_i_sw_cluster_i0_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_2__prog_data) + ); + sw3 i_sw_cluster_i0_i_3 ( + .i({_cluster_i6__o, + in[14], + in[6]}) + ,.o(_i_sw_cluster_i0_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_3__prog_data) + ); + sw3 i_sw_cluster_i1_i_0 ( + .i({_cluster_i1__o, + in[9], + in[1]}) + ,.o(_i_sw_cluster_i1_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_0__prog_data) + ); + sw3 i_sw_cluster_i1_i_1 ( + .i({_cluster_i4__o, + in[11], + in[3]}) + ,.o(_i_sw_cluster_i1_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_1__prog_data) + ); + sw3 i_sw_cluster_i1_i_2 ( + .i({_cluster_i5__o, + in[13], + in[5]}) + ,.o(_i_sw_cluster_i1_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_2__prog_data) + ); + sw3 i_sw_cluster_i1_i_3 ( + .i({_cluster_i7__o, + in[15], + in[8]}) + ,.o(_i_sw_cluster_i1_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_3__prog_data) + ); + sw3 i_sw_cluster_i2_i_0 ( + .i({_cluster_i0__o, + in[7], + in[0]}) + ,.o(_i_sw_cluster_i2_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_0__prog_data) + ); + sw3 i_sw_cluster_i2_i_1 ( + .i({_cluster_i2__o, + in[10], + in[2]}) + ,.o(_i_sw_cluster_i2_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_1__prog_data) + ); + sw3 i_sw_cluster_i2_i_2 ( + .i({_cluster_i3__o, + in[12], + in[4]}) + ,.o(_i_sw_cluster_i2_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_2__prog_data) + ); + sw3 i_sw_cluster_i2_i_3 ( + .i({_cluster_i4__o, + in[14], + in[6]}) + ,.o(_i_sw_cluster_i2_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_3__prog_data) + ); + sw3 i_sw_cluster_i3_i_0 ( + .i({_cluster_i0__o, + in[9], + in[1]}) + ,.o(_i_sw_cluster_i3_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_0__prog_data) + ); + sw3 i_sw_cluster_i3_i_1 ( + .i({_cluster_i1__o, + in[11], + in[3]}) + ,.o(_i_sw_cluster_i3_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_1__prog_data) + ); + sw3 i_sw_cluster_i3_i_2 ( + .i({_cluster_i5__o, + in[13], + in[5]}) + ,.o(_i_sw_cluster_i3_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_2__prog_data) + ); + sw3 i_sw_cluster_i3_i_3 ( + .i({_cluster_i6__o, + in[15], + in[8]}) + ,.o(_i_sw_cluster_i3_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_3__prog_data) + ); + sw3 i_sw_cluster_i4_i_0 ( + .i({_cluster_i2__o, + in[7], + in[0]}) + ,.o(_i_sw_cluster_i4_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_0__prog_data) + ); + sw3 i_sw_cluster_i4_i_1 ( + .i({_cluster_i3__o, + in[9], + in[2]}) + ,.o(_i_sw_cluster_i4_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_1__prog_data) + ); + sw3 i_sw_cluster_i4_i_2 ( + .i({_cluster_i4__o, + in[12], + in[4]}) + ,.o(_i_sw_cluster_i4_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_2__prog_data) + ); + sw3 i_sw_cluster_i4_i_3 ( + .i({_cluster_i6__o, + in[14], + in[6]}) + ,.o(_i_sw_cluster_i4_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_3__prog_data) + ); + sw3 i_sw_cluster_i5_i_0 ( + .i({_cluster_i2__o, + in[10], + in[3]}) + ,.o(_i_sw_cluster_i5_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_0__prog_data) + ); + sw3 i_sw_cluster_i5_i_1 ( + .i({_cluster_i4__o, + in[11], + in[5]}) + ,.o(_i_sw_cluster_i5_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_1__prog_data) + ); + sw3 i_sw_cluster_i5_i_2 ( + .i({_cluster_i6__o, + in[13], + in[6]}) + ,.o(_i_sw_cluster_i5_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_2__prog_data) + ); + sw3 i_sw_cluster_i5_i_3 ( + .i({_cluster_i7__o, + in[15], + in[8]}) + ,.o(_i_sw_cluster_i5_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_3__prog_data) + ); + sw3 i_sw_cluster_i6_i_0 ( + .i({_cluster_i1__o, + in[8], + in[0]}) + ,.o(_i_sw_cluster_i6_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_0__prog_data) + ); + sw3 i_sw_cluster_i6_i_1 ( + .i({_cluster_i4__o, + in[10], + in[1]}) + ,.o(_i_sw_cluster_i6_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_1__prog_data) + ); + sw3 i_sw_cluster_i6_i_2 ( + .i({_cluster_i5__o, + in[12], + in[5]}) + ,.o(_i_sw_cluster_i6_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_2__prog_data) + ); + sw3 i_sw_cluster_i6_i_3 ( + .i({_cluster_i7__o, + in[14], + in[7]}) + ,.o(_i_sw_cluster_i6_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_3__prog_data) + ); + sw3 i_sw_cluster_i7_i_0 ( + .i({_cluster_i0__o, + in[7], + in[0]}) + ,.o(_i_sw_cluster_i7_i_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_0__prog_data) + ); + sw3 i_sw_cluster_i7_i_1 ( + .i({_cluster_i1__o, + in[11], + in[2]}) + ,.o(_i_sw_cluster_i7_i_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_1__prog_data) + ); + sw3 i_sw_cluster_i7_i_2 ( + .i({_cluster_i2__o, + in[13], + in[4]}) + ,.o(_i_sw_cluster_i7_i_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_2__prog_data) + ); + sw3 i_sw_cluster_i7_i_3 ( + .i({_cluster_i3__o, + in[15], + in[5]}) + ,.o(_i_sw_cluster_i7_i_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_3__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i0_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_cluster_i7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i0_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i0_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i0_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i0_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i0_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i0_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i0_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i0_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i0_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i0_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i0_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i1_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i0_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i1_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i1_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i1_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i1_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i1_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i1_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i1_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i1_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i1_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i1_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i1_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i2_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i1_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i2_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i2_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i2_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i2_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i2_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i2_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i2_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i2_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i2_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i2_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i2_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i3_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i2_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i3_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i3_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i3_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i3_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i3_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i3_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i3_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i3_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i3_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i3_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i3_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i4_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i3_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i4_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i4_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i4_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i4_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i4_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i4_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i4_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i4_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i4_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i4_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i4_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i5_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i4_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i5_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i5_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i5_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i5_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i5_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i5_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i5_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i5_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i5_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i5_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i5_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i6_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i5_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i6_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i6_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i6_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i6_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i6_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i6_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i6_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i6_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i6_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i6_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i6_i_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i7_i_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i6_i_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i7_i_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i7_i_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i7_i_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i7_i_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i7_i_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i7_i_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i7_i_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cluster_i7_i_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i7_i_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cluster_i7_i_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cluster_i7_i_3__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cluster_i7_i_3__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign out = {_cluster_i7__o, + _cluster_i6__o, + _cluster_i5__o, + _cluster_i4__o, + _cluster_i3__o, + _cluster_i2__o, + _cluster_i1__o, + _cluster_i0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module cbox_tile_clb_e0 ( + input wire [7:0] bp_x0y0i0_out + , output wire [11:0] cu_x0y0n_L1 + , output wire [11:0] cu_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_cu_x0y0n_L1_0__o; + wire [0:0] _i_sw_cu_x0y0n_L1_2__o; + wire [0:0] _i_sw_cu_x0y0n_L1_7__o; + wire [0:0] _i_sw_cu_x0y0n_L1_8__o; + wire [0:0] _i_sw_cu_x0y0s_L1_0__o; + wire [0:0] _i_sw_cu_x0y0s_L1_2__o; + wire [0:0] _i_sw_cu_x0y0s_L1_7__o; + wire [0:0] _i_sw_cu_x0y0s_L1_8__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_cu_x0y0n_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0n_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0n_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0n_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0s_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0s_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0s_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0s_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0s_L1_8__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_cu_x0y0n_L1_0 ( + .i({bp_x0y0i0_out[7], + bp_x0y0i0_out[0]}) + ,.o(_i_sw_cu_x0y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_0__prog_data) + ); + sw2 i_sw_cu_x0y0n_L1_2 ( + .i({bp_x0y0i0_out[6], + bp_x0y0i0_out[2]}) + ,.o(_i_sw_cu_x0y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_2__prog_data) + ); + sw2 i_sw_cu_x0y0n_L1_7 ( + .i(bp_x0y0i0_out[7:6]) + ,.o(_i_sw_cu_x0y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_7__prog_data) + ); + sw2 i_sw_cu_x0y0n_L1_8 ( + .i(bp_x0y0i0_out[5:4]) + ,.o(_i_sw_cu_x0y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_8__prog_data) + ); + sw2 i_sw_cu_x0y0s_L1_0 ( + .i({bp_x0y0i0_out[7], + bp_x0y0i0_out[0]}) + ,.o(_i_sw_cu_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_0__prog_data) + ); + sw2 i_sw_cu_x0y0s_L1_2 ( + .i({bp_x0y0i0_out[6], + bp_x0y0i0_out[2]}) + ,.o(_i_sw_cu_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_2__prog_data) + ); + sw2 i_sw_cu_x0y0s_L1_7 ( + .i(bp_x0y0i0_out[7:6]) + ,.o(_i_sw_cu_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_7__prog_data) + ); + sw2 i_sw_cu_x0y0s_L1_8 ( + .i(bp_x0y0i0_out[5:4]) + ,.o(_i_sw_cu_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_8__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_8__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign cu_x0y0n_L1 = {bp_x0y0i0_out[1], + bp_x0y0i0_out[3:2], + _i_sw_cu_x0y0n_L1_8__o, + _i_sw_cu_x0y0n_L1_7__o, + bp_x0y0i0_out[0], + bp_x0y0i0_out[3], + bp_x0y0i0_out[1], + bp_x0y0i0_out[4], + _i_sw_cu_x0y0n_L1_2__o, + bp_x0y0i0_out[5], + _i_sw_cu_x0y0n_L1_0__o}; + assign cu_x0y0s_L1 = {bp_x0y0i0_out[1], + bp_x0y0i0_out[3:2], + _i_sw_cu_x0y0s_L1_8__o, + _i_sw_cu_x0y0s_L1_7__o, + bp_x0y0i0_out[0], + bp_x0y0i0_out[3], + bp_x0y0i0_out[1], + bp_x0y0i0_out[4], + _i_sw_cu_x0y0s_L1_2__o, + bp_x0y0i0_out[5], + _i_sw_cu_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module cbox_tile_clb_w0 ( + output wire [15:0] bp_x0y0i0_in + , input wire [11:0] bi_u1y0n_L1 + , input wire [11:0] bi_u1y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_bp_x0y0i0_in_0__o; + wire [0:0] _i_sw_bp_x0y0i0_in_1__o; + wire [0:0] _i_sw_bp_x0y0i0_in_2__o; + wire [0:0] _i_sw_bp_x0y0i0_in_3__o; + wire [0:0] _i_sw_bp_x0y0i0_in_4__o; + wire [0:0] _i_sw_bp_x0y0i0_in_5__o; + wire [0:0] _i_sw_bp_x0y0i0_in_6__o; + wire [0:0] _i_sw_bp_x0y0i0_in_7__o; + wire [0:0] _i_sw_bp_x0y0i0_in_8__o; + wire [0:0] _i_sw_bp_x0y0i0_in_9__o; + wire [0:0] _i_sw_bp_x0y0i0_in_10__o; + wire [0:0] _i_sw_bp_x0y0i0_in_11__o; + wire [0:0] _i_sw_bp_x0y0i0_in_12__o; + wire [0:0] _i_sw_bp_x0y0i0_in_13__o; + wire [0:0] _i_sw_bp_x0y0i0_in_14__o; + wire [0:0] _i_sw_bp_x0y0i0_in_15__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_0__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_0__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_1__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_1__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_2__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_2__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_3__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_3__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_4__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_4__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_5__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_5__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_6__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_6__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_7__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_7__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_8__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_8__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_9__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_9__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_10__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_10__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_11__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_11__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_12__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_12__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_13__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_13__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_14__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_14__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_in_15__prog_dout; + wire [2:0] _i_prog_data_i_sw_bp_x0y0i0_in_15__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw6 i_sw_bp_x0y0i0_in_0 ( + .i({bi_u1y0s_L1[8], + bi_u1y0n_L1[8], + bi_u1y0s_L1[4], + bi_u1y0n_L1[4], + bi_u1y0s_L1[0], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_in_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_0__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_1 ( + .i({bi_u1y0s_L1[11], + bi_u1y0n_L1[11], + bi_u1y0s_L1[7], + bi_u1y0n_L1[7], + bi_u1y0s_L1[3], + bi_u1y0n_L1[3]}) + ,.o(_i_sw_bp_x0y0i0_in_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_1__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_2 ( + .i({bi_u1y0s_L1[10], + bi_u1y0n_L1[10], + bi_u1y0s_L1[6], + bi_u1y0n_L1[6], + bi_u1y0s_L1[2], + bi_u1y0n_L1[2]}) + ,.o(_i_sw_bp_x0y0i0_in_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_2__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_3 ( + .i({bi_u1y0s_L1[9], + bi_u1y0n_L1[9], + bi_u1y0s_L1[5], + bi_u1y0n_L1[5], + bi_u1y0s_L1[1], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_bp_x0y0i0_in_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_3__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_4 ( + .i({bi_u1y0s_L1[9], + bi_u1y0n_L1[9], + bi_u1y0s_L1[4], + bi_u1y0n_L1[4], + bi_u1y0s_L1[1], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_bp_x0y0i0_in_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_4__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_5 ( + .i({bi_u1y0s_L1[7], + bi_u1y0n_L1[7], + bi_u1y0s_L1[3], + bi_u1y0n_L1[3], + bi_u1y0s_L1[0], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_in_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_5__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_6 ( + .i({bi_u1y0s_L1[11], + bi_u1y0n_L1[11], + bi_u1y0s_L1[8], + bi_u1y0n_L1[8], + bi_u1y0s_L1[5], + bi_u1y0n_L1[5]}) + ,.o(_i_sw_bp_x0y0i0_in_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_6__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_7 ( + .i({bi_u1y0s_L1[10], + bi_u1y0n_L1[10], + bi_u1y0s_L1[6], + bi_u1y0n_L1[6], + bi_u1y0s_L1[2], + bi_u1y0n_L1[2]}) + ,.o(_i_sw_bp_x0y0i0_in_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_7__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_8 ( + .i({bi_u1y0s_L1[10], + bi_u1y0n_L1[10], + bi_u1y0s_L1[5], + bi_u1y0n_L1[5], + bi_u1y0s_L1[2], + bi_u1y0n_L1[2]}) + ,.o(_i_sw_bp_x0y0i0_in_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_8__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_9 ( + .i({bi_u1y0s_L1[9], + bi_u1y0n_L1[9], + bi_u1y0s_L1[4], + bi_u1y0n_L1[4], + bi_u1y0s_L1[1], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_bp_x0y0i0_in_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_9__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_10 ( + .i({bi_u1y0s_L1[7], + bi_u1y0n_L1[7], + bi_u1y0s_L1[3], + bi_u1y0n_L1[3], + bi_u1y0s_L1[0], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_in_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_10__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_11 ( + .i({bi_u1y0s_L1[11], + bi_u1y0n_L1[11], + bi_u1y0s_L1[8], + bi_u1y0n_L1[8], + bi_u1y0s_L1[5], + bi_u1y0n_L1[5]}) + ,.o(_i_sw_bp_x0y0i0_in_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_11__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_12 ( + .i({bi_u1y0s_L1[11], + bi_u1y0n_L1[11], + bi_u1y0s_L1[6], + bi_u1y0n_L1[6], + bi_u1y0s_L1[3], + bi_u1y0n_L1[3]}) + ,.o(_i_sw_bp_x0y0i0_in_12__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_12__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_13 ( + .i({bi_u1y0s_L1[9], + bi_u1y0n_L1[9], + bi_u1y0s_L1[6], + bi_u1y0n_L1[6], + bi_u1y0s_L1[1], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_bp_x0y0i0_in_13__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_13__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_14 ( + .i({bi_u1y0s_L1[4], + bi_u1y0n_L1[4], + bi_u1y0s_L1[2], + bi_u1y0n_L1[2], + bi_u1y0s_L1[0], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_in_14__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_14__prog_data) + ); + sw6 i_sw_bp_x0y0i0_in_15 ( + .i({bi_u1y0s_L1[10], + bi_u1y0n_L1[10], + bi_u1y0s_L1[8], + bi_u1y0n_L1[8], + bi_u1y0s_L1[7], + bi_u1y0n_L1[7]}) + ,.o(_i_sw_bp_x0y0i0_in_15__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_15__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_0__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_1__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_2__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_3__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_4__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_5__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_6__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_7__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_8__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_9__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_10__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_11__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_12 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_11__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_12__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_12__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_13 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_12__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_13__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_13__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_14 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_13__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_14__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_14__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_bp_x0y0i0_in_15 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_14__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_in_15__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_in_15__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_in_15__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign bp_x0y0i0_in = {_i_sw_bp_x0y0i0_in_15__o, + _i_sw_bp_x0y0i0_in_14__o, + _i_sw_bp_x0y0i0_in_13__o, + _i_sw_bp_x0y0i0_in_12__o, + _i_sw_bp_x0y0i0_in_11__o, + _i_sw_bp_x0y0i0_in_10__o, + _i_sw_bp_x0y0i0_in_9__o, + _i_sw_bp_x0y0i0_in_8__o, + _i_sw_bp_x0y0i0_in_7__o, + _i_sw_bp_x0y0i0_in_6__o, + _i_sw_bp_x0y0i0_in_5__o, + _i_sw_bp_x0y0i0_in_4__o, + _i_sw_bp_x0y0i0_in_3__o, + _i_sw_bp_x0y0i0_in_2__o, + _i_sw_bp_x0y0i0_in_1__o, + _i_sw_bp_x0y0i0_in_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module prga_simple_buf ( + input wire [0:0] C, + input wire [0:0] D, + output reg [0:0] Q + ); + + always @(posedge C) begin + Q <= D; + end + +endmodule// Automatically generated by PRGA's RTL generator +module prga_simple_bufr ( + input wire [0:0] C, + input wire [0:0] R, + input wire [0:0] D, + output reg [0:0] Q + ); + + always @(posedge C) begin + if (R) begin + Q <= 1'b0; + end else begin + Q <= D; + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module slice ( + input wire [0:0] clk + , input wire [3:0] i + , output wire [0:0] o + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + ); + + + wire [0:0] _lut__out; + wire [0:0] _ff__Q; + wire [0:0] _i_sw_o__o; + wire [0:0] _i_prog_data_lut__prog_dout; + wire [16:0] _i_prog_data_lut__prog_data; + wire [0:0] _i_prog_data_ff__prog_dout; + wire [0:0] _i_prog_data_ff__prog_data; + wire [0:0] _i_prog_data_i_sw_o__prog_dout; + wire [1:0] _i_prog_data_i_sw_o__prog_data; + + lut4 lut ( + .in(i) + ,.out(_lut__out) + ,.prog_done(prog_done) + ,.prog_data(_i_prog_data_lut__prog_data) + ); + flipflop ff ( + .clk(clk) + ,.D(_lut__out) + ,.Q(_ff__Q) + ,.prog_done(prog_done) + ,.prog_data(_i_prog_data_ff__prog_data) + ); + sw2 i_sw_o ( + .i({_ff__Q, + _lut__out}) + ,.o(_i_sw_o__o) + ,.prog_done(prog_done) + ,.prog_data(_i_prog_data_i_sw_o__prog_data) + ); + scanchain_data_d17 i_prog_data_lut ( + .prog_clk(prog_clk) + ,.prog_rst(prog_rst) + ,.prog_done(prog_done) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_prog_data_lut__prog_dout) + ,.prog_data(_i_prog_data_lut__prog_data) + ); + scanchain_data_d1 i_prog_data_ff ( + .prog_clk(prog_clk) + ,.prog_rst(prog_rst) + ,.prog_done(prog_done) + ,.prog_we(prog_we) + ,.prog_din(_i_prog_data_lut__prog_dout) + ,.prog_dout(_i_prog_data_ff__prog_dout) + ,.prog_data(_i_prog_data_ff__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_o ( + .prog_clk(prog_clk) + ,.prog_rst(prog_rst) + ,.prog_done(prog_done) + ,.prog_we(prog_we) + ,.prog_din(_i_prog_data_ff__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_o__prog_dout) + ,.prog_data(_i_prog_data_i_sw_o__prog_data) + ); + + assign o = _i_sw_o__o; + assign prog_dout = _i_prog_data_i_sw_o__prog_dout; + +endmodule +// Automatically generated by PRGA's RTL generator +module sw3 ( + input wire [2:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [1:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 2'd1: o = i[0]; + 2'd2: o = i[1]; + 2'd3: o = i[2]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_delim ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [0:0] prog_we_o + , output reg [1 - 1:0] prog_dout + ); + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_we_o <= 1'b0; + prog_dout <= 1'b0; + end else if (~prog_done && prog_we) begin + prog_we_o <= 1'b1; + prog_dout <= prog_din; + end else begin + prog_we_o <= 1'b0; + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d2 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [2 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 2; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule// Automatically generated by PRGA's RTL generator +module sw2 ( + input wire [1:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [1:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 2'd1: o = i[0]; + 2'd2: o = i[1]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module sw6 ( + input wire [5:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [2:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 3'd1: o = i[0]; + 3'd2: o = i[1]; + 3'd3: o = i[2]; + 3'd4: o = i[3]; + 3'd5: o = i[4]; + 3'd6: o = i[5]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d3 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [3 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 3; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule// Automatically generated by PRGA's RTL generator +module lut4 ( + input wire [3:0] in + , output reg [0:0] out + + , input wire [0:0] prog_done + , input wire [16:0] prog_data + // prog_data[ 0 +: 15]: LUT content + // prog_data[16]: LUT enabled (not disabled) + ); + + localparam IDX_LUT_ENABLE = 16; + + always @* begin + if (~prog_done || ~prog_data[IDX_LUT_ENABLE]) begin + out = 1'b0; + end else begin + case (in) + 4'd0: out = prog_data[0]; + 4'd1: out = prog_data[1]; + 4'd2: out = prog_data[2]; + 4'd3: out = prog_data[3]; + 4'd4: out = prog_data[4]; + 4'd5: out = prog_data[5]; + 4'd6: out = prog_data[6]; + 4'd7: out = prog_data[7]; + 4'd8: out = prog_data[8]; + 4'd9: out = prog_data[9]; + 4'd10: out = prog_data[10]; + 4'd11: out = prog_data[11]; + 4'd12: out = prog_data[12]; + 4'd13: out = prog_data[13]; + 4'd14: out = prog_data[14]; + 4'd15: out = prog_data[15]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module flipflop ( + input wire [0:0] clk + , input wire [0:0] D + , output reg [0:0] Q + + , input wire [0:0] prog_done // programming finished + , input wire [0:0] prog_data // mode: enabled (not disabled) + ); + + always @(posedge clk) begin + if (~prog_done || ~prog_data) begin + Q <= 1'b0; + end else begin + Q <= D; + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d17 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [17 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 17; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d1 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [1 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 1; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule
diff --git a/verilog/rtl/top.bb.v b/verilog/rtl/top.bb.v new file mode 100644 index 0000000..8920b01 --- /dev/null +++ b/verilog/rtl/top.bb.v
@@ -0,0 +1,189 @@ +// SPDX-FileCopyrightText: (c) 2022 Princeton University +// SPDX-License-Identifier: BSD-3-Clause +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are met: +// +// 1. Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// 2. Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// 3. Neither the name of the copyright holder nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Automatically generated by PRGA's RTL generator +module top ( +`ifdef USE_POWER_PINS + inout vccd1, // User area 1 1.8V supply + inout vssd1, // User area 1 digital ground +`endif + input wire [0:0] ipin_x0y1_0 + , output wire [0:0] opin_x0y1_0 + , output wire [0:0] oe_x0y1_0 + , input wire [0:0] ipin_x0y1_1 + , output wire [0:0] opin_x0y1_1 + , output wire [0:0] oe_x0y1_1 + , input wire [0:0] ipin_x0y2_0 + , output wire [0:0] opin_x0y2_0 + , output wire [0:0] oe_x0y2_0 + , input wire [0:0] ipin_x0y2_1 + , output wire [0:0] opin_x0y2_1 + , output wire [0:0] oe_x0y2_1 + , input wire [0:0] ipin_x0y3_0 + , output wire [0:0] opin_x0y3_0 + , output wire [0:0] oe_x0y3_0 + , input wire [0:0] ipin_x0y3_1 + , output wire [0:0] opin_x0y3_1 + , output wire [0:0] oe_x0y3_1 + , input wire [0:0] ipin_x0y4_0 + , output wire [0:0] opin_x0y4_0 + , output wire [0:0] oe_x0y4_0 + , input wire [0:0] ipin_x0y4_1 + , output wire [0:0] opin_x0y4_1 + , output wire [0:0] oe_x0y4_1 + , input wire [0:0] ipin_x0y5_0 + , output wire [0:0] opin_x0y5_0 + , output wire [0:0] oe_x0y5_0 + , input wire [0:0] ipin_x0y5_1 + , output wire [0:0] opin_x0y5_1 + , output wire [0:0] oe_x0y5_1 + , input wire [0:0] ipin_x0y6_0 + , output wire [0:0] opin_x0y6_0 + , output wire [0:0] oe_x0y6_0 + , input wire [0:0] ipin_x0y6_1 + , output wire [0:0] opin_x0y6_1 + , output wire [0:0] oe_x0y6_1 + , input wire [0:0] ipin_x0y7_0 + , output wire [0:0] opin_x0y7_0 + , output wire [0:0] oe_x0y7_0 + , input wire [0:0] ipin_x0y7_1 + , output wire [0:0] opin_x0y7_1 + , output wire [0:0] oe_x0y7_1 + , input wire [0:0] ipin_x0y8_0 + , output wire [0:0] opin_x0y8_0 + , output wire [0:0] oe_x0y8_0 + , input wire [0:0] ipin_x0y8_1 + , output wire [0:0] opin_x0y8_1 + , output wire [0:0] oe_x0y8_1 + , input wire [0:0] ipin_x1y9_0 + , output wire [0:0] opin_x1y9_0 + , output wire [0:0] oe_x1y9_0 + , input wire [0:0] ipin_x1y9_1 + , output wire [0:0] opin_x1y9_1 + , output wire [0:0] oe_x1y9_1 + , input wire [0:0] ipin_x2y9_0 + , output wire [0:0] opin_x2y9_0 + , output wire [0:0] oe_x2y9_0 + , input wire [0:0] ipin_x2y9_1 + , output wire [0:0] opin_x2y9_1 + , output wire [0:0] oe_x2y9_1 + , input wire [0:0] ipin_x3y9_0 + , output wire [0:0] opin_x3y9_0 + , output wire [0:0] oe_x3y9_0 + , input wire [0:0] ipin_x3y9_1 + , output wire [0:0] opin_x3y9_1 + , output wire [0:0] oe_x3y9_1 + , input wire [0:0] ipin_x4y9_0 + , output wire [0:0] opin_x4y9_0 + , output wire [0:0] oe_x4y9_0 + , input wire [0:0] ipin_x4y9_1 + , output wire [0:0] opin_x4y9_1 + , output wire [0:0] oe_x4y9_1 + , input wire [0:0] ipin_x5y9_0 + , output wire [0:0] opin_x5y9_0 + , output wire [0:0] oe_x5y9_0 + , input wire [0:0] ipin_x5y9_1 + , output wire [0:0] opin_x5y9_1 + , output wire [0:0] oe_x5y9_1 + , input wire [0:0] ipin_x6y9_0 + , output wire [0:0] opin_x6y9_0 + , output wire [0:0] oe_x6y9_0 + , input wire [0:0] ipin_x6y9_1 + , output wire [0:0] opin_x6y9_1 + , output wire [0:0] oe_x6y9_1 + , input wire [0:0] ipin_x7y9_0 + , output wire [0:0] opin_x7y9_0 + , output wire [0:0] oe_x7y9_0 + , input wire [0:0] ipin_x7y9_1 + , output wire [0:0] opin_x7y9_1 + , output wire [0:0] oe_x7y9_1 + , input wire [0:0] ipin_x8y9_0 + , output wire [0:0] opin_x8y9_0 + , output wire [0:0] oe_x8y9_0 + , input wire [0:0] ipin_x8y9_1 + , output wire [0:0] opin_x8y9_1 + , output wire [0:0] oe_x8y9_1 + , input wire [0:0] ipin_x9y1_0 + , output wire [0:0] opin_x9y1_0 + , output wire [0:0] oe_x9y1_0 + , input wire [0:0] ipin_x9y1_1 + , output wire [0:0] opin_x9y1_1 + , output wire [0:0] oe_x9y1_1 + , input wire [0:0] ipin_x9y2_0 + , output wire [0:0] opin_x9y2_0 + , output wire [0:0] oe_x9y2_0 + , input wire [0:0] ipin_x9y2_1 + , output wire [0:0] opin_x9y2_1 + , output wire [0:0] oe_x9y2_1 + , input wire [0:0] ipin_x9y3_0 + , output wire [0:0] opin_x9y3_0 + , output wire [0:0] oe_x9y3_0 + , input wire [0:0] ipin_x9y3_1 + , output wire [0:0] opin_x9y3_1 + , output wire [0:0] oe_x9y3_1 + , input wire [0:0] ipin_x9y4_0 + , output wire [0:0] opin_x9y4_0 + , output wire [0:0] oe_x9y4_0 + , input wire [0:0] ipin_x9y4_1 + , output wire [0:0] opin_x9y4_1 + , output wire [0:0] oe_x9y4_1 + , input wire [0:0] ipin_x9y5_0 + , output wire [0:0] opin_x9y5_0 + , output wire [0:0] oe_x9y5_0 + , input wire [0:0] ipin_x9y5_1 + , output wire [0:0] opin_x9y5_1 + , output wire [0:0] oe_x9y5_1 + , input wire [0:0] ipin_x9y6_0 + , output wire [0:0] opin_x9y6_0 + , output wire [0:0] oe_x9y6_0 + , input wire [0:0] ipin_x9y6_1 + , output wire [0:0] opin_x9y6_1 + , output wire [0:0] oe_x9y6_1 + , input wire [0:0] ipin_x9y7_0 + , output wire [0:0] opin_x9y7_0 + , output wire [0:0] oe_x9y7_0 + , input wire [0:0] ipin_x9y7_1 + , output wire [0:0] opin_x9y7_1 + , output wire [0:0] oe_x9y7_1 + , input wire [0:0] ipin_x9y8_0 + , output wire [0:0] opin_x9y8_0 + , output wire [0:0] oe_x9y8_0 + , input wire [0:0] ipin_x9y8_1 + , output wire [0:0] opin_x9y8_1 + , output wire [0:0] oe_x9y8_1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + +endmodule
diff --git a/verilog/rtl/top.pickled.v b/verilog/rtl/top.pickled.v new file mode 100644 index 0000000..70b1ad8 --- /dev/null +++ b/verilog/rtl/top.pickled.v
@@ -0,0 +1,16253 @@ +// SPDX-FileCopyrightText: (c) 2022 Princeton University +// SPDX-License-Identifier: BSD-3-Clause +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are met: +// +// 1. Redistributions of source code must retain the above copyright notice, this +// list of conditions and the following disclaimer. +// +// 2. Redistributions in binary form must reproduce the above copyright notice, +// this list of conditions and the following disclaimer in the documentation +// and/or other materials provided with the distribution. +// +// 3. Neither the name of the copyright holder nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Automatically generated by PRGA's RTL generator +module top ( +`ifdef USE_POWER_PINS + inout vccd1, // User area 1 1.8V supply + inout vssd1, // User area 1 digital ground +`endif + input wire [0:0] ipin_x0y1_0 + , output wire [0:0] opin_x0y1_0 + , output wire [0:0] oe_x0y1_0 + , input wire [0:0] ipin_x0y1_1 + , output wire [0:0] opin_x0y1_1 + , output wire [0:0] oe_x0y1_1 + , input wire [0:0] ipin_x0y2_0 + , output wire [0:0] opin_x0y2_0 + , output wire [0:0] oe_x0y2_0 + , input wire [0:0] ipin_x0y2_1 + , output wire [0:0] opin_x0y2_1 + , output wire [0:0] oe_x0y2_1 + , input wire [0:0] ipin_x0y3_0 + , output wire [0:0] opin_x0y3_0 + , output wire [0:0] oe_x0y3_0 + , input wire [0:0] ipin_x0y3_1 + , output wire [0:0] opin_x0y3_1 + , output wire [0:0] oe_x0y3_1 + , input wire [0:0] ipin_x0y4_0 + , output wire [0:0] opin_x0y4_0 + , output wire [0:0] oe_x0y4_0 + , input wire [0:0] ipin_x0y4_1 + , output wire [0:0] opin_x0y4_1 + , output wire [0:0] oe_x0y4_1 + , input wire [0:0] ipin_x0y5_0 + , output wire [0:0] opin_x0y5_0 + , output wire [0:0] oe_x0y5_0 + , input wire [0:0] ipin_x0y5_1 + , output wire [0:0] opin_x0y5_1 + , output wire [0:0] oe_x0y5_1 + , input wire [0:0] ipin_x0y6_0 + , output wire [0:0] opin_x0y6_0 + , output wire [0:0] oe_x0y6_0 + , input wire [0:0] ipin_x0y6_1 + , output wire [0:0] opin_x0y6_1 + , output wire [0:0] oe_x0y6_1 + , input wire [0:0] ipin_x0y7_0 + , output wire [0:0] opin_x0y7_0 + , output wire [0:0] oe_x0y7_0 + , input wire [0:0] ipin_x0y7_1 + , output wire [0:0] opin_x0y7_1 + , output wire [0:0] oe_x0y7_1 + , input wire [0:0] ipin_x0y8_0 + , output wire [0:0] opin_x0y8_0 + , output wire [0:0] oe_x0y8_0 + , input wire [0:0] ipin_x0y8_1 + , output wire [0:0] opin_x0y8_1 + , output wire [0:0] oe_x0y8_1 + , input wire [0:0] ipin_x1y9_0 + , output wire [0:0] opin_x1y9_0 + , output wire [0:0] oe_x1y9_0 + , input wire [0:0] ipin_x1y9_1 + , output wire [0:0] opin_x1y9_1 + , output wire [0:0] oe_x1y9_1 + , input wire [0:0] ipin_x2y9_0 + , output wire [0:0] opin_x2y9_0 + , output wire [0:0] oe_x2y9_0 + , input wire [0:0] ipin_x2y9_1 + , output wire [0:0] opin_x2y9_1 + , output wire [0:0] oe_x2y9_1 + , input wire [0:0] ipin_x3y9_0 + , output wire [0:0] opin_x3y9_0 + , output wire [0:0] oe_x3y9_0 + , input wire [0:0] ipin_x3y9_1 + , output wire [0:0] opin_x3y9_1 + , output wire [0:0] oe_x3y9_1 + , input wire [0:0] ipin_x4y9_0 + , output wire [0:0] opin_x4y9_0 + , output wire [0:0] oe_x4y9_0 + , input wire [0:0] ipin_x4y9_1 + , output wire [0:0] opin_x4y9_1 + , output wire [0:0] oe_x4y9_1 + , input wire [0:0] ipin_x5y9_0 + , output wire [0:0] opin_x5y9_0 + , output wire [0:0] oe_x5y9_0 + , input wire [0:0] ipin_x5y9_1 + , output wire [0:0] opin_x5y9_1 + , output wire [0:0] oe_x5y9_1 + , input wire [0:0] ipin_x6y9_0 + , output wire [0:0] opin_x6y9_0 + , output wire [0:0] oe_x6y9_0 + , input wire [0:0] ipin_x6y9_1 + , output wire [0:0] opin_x6y9_1 + , output wire [0:0] oe_x6y9_1 + , input wire [0:0] ipin_x7y9_0 + , output wire [0:0] opin_x7y9_0 + , output wire [0:0] oe_x7y9_0 + , input wire [0:0] ipin_x7y9_1 + , output wire [0:0] opin_x7y9_1 + , output wire [0:0] oe_x7y9_1 + , input wire [0:0] ipin_x8y9_0 + , output wire [0:0] opin_x8y9_0 + , output wire [0:0] oe_x8y9_0 + , input wire [0:0] ipin_x8y9_1 + , output wire [0:0] opin_x8y9_1 + , output wire [0:0] oe_x8y9_1 + , input wire [0:0] ipin_x9y1_0 + , output wire [0:0] opin_x9y1_0 + , output wire [0:0] oe_x9y1_0 + , input wire [0:0] ipin_x9y1_1 + , output wire [0:0] opin_x9y1_1 + , output wire [0:0] oe_x9y1_1 + , input wire [0:0] ipin_x9y2_0 + , output wire [0:0] opin_x9y2_0 + , output wire [0:0] oe_x9y2_0 + , input wire [0:0] ipin_x9y2_1 + , output wire [0:0] opin_x9y2_1 + , output wire [0:0] oe_x9y2_1 + , input wire [0:0] ipin_x9y3_0 + , output wire [0:0] opin_x9y3_0 + , output wire [0:0] oe_x9y3_0 + , input wire [0:0] ipin_x9y3_1 + , output wire [0:0] opin_x9y3_1 + , output wire [0:0] oe_x9y3_1 + , input wire [0:0] ipin_x9y4_0 + , output wire [0:0] opin_x9y4_0 + , output wire [0:0] oe_x9y4_0 + , input wire [0:0] ipin_x9y4_1 + , output wire [0:0] opin_x9y4_1 + , output wire [0:0] oe_x9y4_1 + , input wire [0:0] ipin_x9y5_0 + , output wire [0:0] opin_x9y5_0 + , output wire [0:0] oe_x9y5_0 + , input wire [0:0] ipin_x9y5_1 + , output wire [0:0] opin_x9y5_1 + , output wire [0:0] oe_x9y5_1 + , input wire [0:0] ipin_x9y6_0 + , output wire [0:0] opin_x9y6_0 + , output wire [0:0] oe_x9y6_0 + , input wire [0:0] ipin_x9y6_1 + , output wire [0:0] opin_x9y6_1 + , output wire [0:0] oe_x9y6_1 + , input wire [0:0] ipin_x9y7_0 + , output wire [0:0] opin_x9y7_0 + , output wire [0:0] oe_x9y7_0 + , input wire [0:0] ipin_x9y7_1 + , output wire [0:0] opin_x9y7_1 + , output wire [0:0] oe_x9y7_1 + , input wire [0:0] ipin_x9y8_0 + , output wire [0:0] opin_x9y8_0 + , output wire [0:0] oe_x9y8_0 + , input wire [0:0] ipin_x9y8_1 + , output wire [0:0] opin_x9y8_1 + , output wire [0:0] oe_x9y8_1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [11:0] _i_tile_x0y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y1__opin_x0y0_0; + wire [0:0] _i_tile_x0y1__oe_x0y0_0; + wire [0:0] _i_tile_x0y1__opin_x0y0_1; + wire [0:0] _i_tile_x0y1__oe_x0y0_1; + wire [0:0] _i_tile_x0y1__prog_dout; + wire [0:0] _i_tile_x0y1__prog_we_o; + wire [11:0] _i_sbox_x0y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y1ne__prog_dout; + wire [0:0] _i_sbox_x0y1ne__prog_we_o; + wire [11:0] _i_tile_x0y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y2__opin_x0y0_0; + wire [0:0] _i_tile_x0y2__oe_x0y0_0; + wire [0:0] _i_tile_x0y2__opin_x0y0_1; + wire [0:0] _i_tile_x0y2__oe_x0y0_1; + wire [0:0] _i_tile_x0y2__prog_dout; + wire [0:0] _i_tile_x0y2__prog_we_o; + wire [11:0] _i_sbox_x0y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y2ne__prog_dout; + wire [0:0] _i_sbox_x0y2ne__prog_we_o; + wire [11:0] _i_tile_x0y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y3__opin_x0y0_0; + wire [0:0] _i_tile_x0y3__oe_x0y0_0; + wire [0:0] _i_tile_x0y3__opin_x0y0_1; + wire [0:0] _i_tile_x0y3__oe_x0y0_1; + wire [0:0] _i_tile_x0y3__prog_dout; + wire [0:0] _i_tile_x0y3__prog_we_o; + wire [11:0] _i_sbox_x0y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y3ne__prog_dout; + wire [0:0] _i_sbox_x0y3ne__prog_we_o; + wire [11:0] _i_tile_x0y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y4__opin_x0y0_0; + wire [0:0] _i_tile_x0y4__oe_x0y0_0; + wire [0:0] _i_tile_x0y4__opin_x0y0_1; + wire [0:0] _i_tile_x0y4__oe_x0y0_1; + wire [0:0] _i_tile_x0y4__prog_dout; + wire [0:0] _i_tile_x0y4__prog_we_o; + wire [11:0] _i_sbox_x0y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y4ne__prog_dout; + wire [0:0] _i_sbox_x0y4ne__prog_we_o; + wire [11:0] _i_tile_x0y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y5__opin_x0y0_0; + wire [0:0] _i_tile_x0y5__oe_x0y0_0; + wire [0:0] _i_tile_x0y5__opin_x0y0_1; + wire [0:0] _i_tile_x0y5__oe_x0y0_1; + wire [0:0] _i_tile_x0y5__prog_dout; + wire [0:0] _i_tile_x0y5__prog_we_o; + wire [11:0] _i_sbox_x0y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y5ne__prog_dout; + wire [0:0] _i_sbox_x0y5ne__prog_we_o; + wire [11:0] _i_tile_x0y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y6__opin_x0y0_0; + wire [0:0] _i_tile_x0y6__oe_x0y0_0; + wire [0:0] _i_tile_x0y6__opin_x0y0_1; + wire [0:0] _i_tile_x0y6__oe_x0y0_1; + wire [0:0] _i_tile_x0y6__prog_dout; + wire [0:0] _i_tile_x0y6__prog_we_o; + wire [11:0] _i_sbox_x0y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y6ne__prog_dout; + wire [0:0] _i_sbox_x0y6ne__prog_we_o; + wire [11:0] _i_tile_x0y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y7__opin_x0y0_0; + wire [0:0] _i_tile_x0y7__oe_x0y0_0; + wire [0:0] _i_tile_x0y7__opin_x0y0_1; + wire [0:0] _i_tile_x0y7__oe_x0y0_1; + wire [0:0] _i_tile_x0y7__prog_dout; + wire [0:0] _i_tile_x0y7__prog_we_o; + wire [11:0] _i_sbox_x0y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y7ne__prog_dout; + wire [0:0] _i_sbox_x0y7ne__prog_we_o; + wire [11:0] _i_tile_x0y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x0y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x0y8__opin_x0y0_0; + wire [0:0] _i_tile_x0y8__oe_x0y0_0; + wire [0:0] _i_tile_x0y8__opin_x0y0_1; + wire [0:0] _i_tile_x0y8__oe_x0y0_1; + wire [0:0] _i_tile_x0y8__prog_dout; + wire [0:0] _i_tile_x0y8__prog_we_o; + wire [11:0] _i_sbox_x0y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x0y8ne__prog_dout; + wire [0:0] _i_sbox_x0y8ne__prog_we_o; + wire [11:0] _i_sbox_x1y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y0nw__prog_dout; + wire [0:0] _i_sbox_x1y0nw__prog_we_o; + wire [11:0] _i_tile_x1y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y1__prog_dout; + wire [0:0] _i_tile_x1y1__prog_we_o; + wire [11:0] _i_sbox_x1y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y1ne__prog_dout; + wire [0:0] _i_sbox_x1y1ne__prog_we_o; + wire [11:0] _i_sbox_x1y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y1nw__prog_dout; + wire [0:0] _i_sbox_x1y1nw__prog_we_o; + wire [11:0] _i_sbox_x1y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y1se__prog_dout; + wire [0:0] _i_sbox_x1y1se__prog_we_o; + wire [11:0] _i_sbox_x1y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y1sw__prog_dout; + wire [0:0] _i_sbox_x1y1sw__prog_we_o; + wire [11:0] _i_tile_x1y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y2__prog_dout; + wire [0:0] _i_tile_x1y2__prog_we_o; + wire [11:0] _i_sbox_x1y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y2ne__prog_dout; + wire [0:0] _i_sbox_x1y2ne__prog_we_o; + wire [11:0] _i_sbox_x1y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y2nw__prog_dout; + wire [0:0] _i_sbox_x1y2nw__prog_we_o; + wire [11:0] _i_sbox_x1y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y2se__prog_dout; + wire [0:0] _i_sbox_x1y2se__prog_we_o; + wire [11:0] _i_sbox_x1y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y2sw__prog_dout; + wire [0:0] _i_sbox_x1y2sw__prog_we_o; + wire [11:0] _i_tile_x1y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y3__prog_dout; + wire [0:0] _i_tile_x1y3__prog_we_o; + wire [11:0] _i_sbox_x1y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y3ne__prog_dout; + wire [0:0] _i_sbox_x1y3ne__prog_we_o; + wire [11:0] _i_sbox_x1y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y3nw__prog_dout; + wire [0:0] _i_sbox_x1y3nw__prog_we_o; + wire [11:0] _i_sbox_x1y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y3se__prog_dout; + wire [0:0] _i_sbox_x1y3se__prog_we_o; + wire [11:0] _i_sbox_x1y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y3sw__prog_dout; + wire [0:0] _i_sbox_x1y3sw__prog_we_o; + wire [11:0] _i_tile_x1y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y4__prog_dout; + wire [0:0] _i_tile_x1y4__prog_we_o; + wire [11:0] _i_sbox_x1y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y4ne__prog_dout; + wire [0:0] _i_sbox_x1y4ne__prog_we_o; + wire [11:0] _i_sbox_x1y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y4nw__prog_dout; + wire [0:0] _i_sbox_x1y4nw__prog_we_o; + wire [11:0] _i_sbox_x1y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y4se__prog_dout; + wire [0:0] _i_sbox_x1y4se__prog_we_o; + wire [11:0] _i_sbox_x1y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y4sw__prog_dout; + wire [0:0] _i_sbox_x1y4sw__prog_we_o; + wire [11:0] _i_tile_x1y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y5__prog_dout; + wire [0:0] _i_tile_x1y5__prog_we_o; + wire [11:0] _i_sbox_x1y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y5ne__prog_dout; + wire [0:0] _i_sbox_x1y5ne__prog_we_o; + wire [11:0] _i_sbox_x1y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y5nw__prog_dout; + wire [0:0] _i_sbox_x1y5nw__prog_we_o; + wire [11:0] _i_sbox_x1y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y5se__prog_dout; + wire [0:0] _i_sbox_x1y5se__prog_we_o; + wire [11:0] _i_sbox_x1y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y5sw__prog_dout; + wire [0:0] _i_sbox_x1y5sw__prog_we_o; + wire [11:0] _i_tile_x1y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y6__prog_dout; + wire [0:0] _i_tile_x1y6__prog_we_o; + wire [11:0] _i_sbox_x1y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y6ne__prog_dout; + wire [0:0] _i_sbox_x1y6ne__prog_we_o; + wire [11:0] _i_sbox_x1y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y6nw__prog_dout; + wire [0:0] _i_sbox_x1y6nw__prog_we_o; + wire [11:0] _i_sbox_x1y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y6se__prog_dout; + wire [0:0] _i_sbox_x1y6se__prog_we_o; + wire [11:0] _i_sbox_x1y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y6sw__prog_dout; + wire [0:0] _i_sbox_x1y6sw__prog_we_o; + wire [11:0] _i_tile_x1y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y7__prog_dout; + wire [0:0] _i_tile_x1y7__prog_we_o; + wire [11:0] _i_sbox_x1y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y7ne__prog_dout; + wire [0:0] _i_sbox_x1y7ne__prog_we_o; + wire [11:0] _i_sbox_x1y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y7nw__prog_dout; + wire [0:0] _i_sbox_x1y7nw__prog_we_o; + wire [11:0] _i_sbox_x1y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y7se__prog_dout; + wire [0:0] _i_sbox_x1y7se__prog_we_o; + wire [11:0] _i_sbox_x1y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y7sw__prog_dout; + wire [0:0] _i_sbox_x1y7sw__prog_we_o; + wire [11:0] _i_tile_x1y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x1y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x1y8__prog_dout; + wire [0:0] _i_tile_x1y8__prog_we_o; + wire [11:0] _i_sbox_x1y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x1y8ne__prog_dout; + wire [0:0] _i_sbox_x1y8ne__prog_we_o; + wire [11:0] _i_sbox_x1y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x1y8nw__prog_dout; + wire [0:0] _i_sbox_x1y8nw__prog_we_o; + wire [11:0] _i_sbox_x1y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y8se__prog_dout; + wire [0:0] _i_sbox_x1y8se__prog_we_o; + wire [11:0] _i_sbox_x1y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x1y8sw__prog_dout; + wire [0:0] _i_sbox_x1y8sw__prog_we_o; + wire [11:0] _i_tile_x1y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x1y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x1y9__opin_x0y0_0; + wire [0:0] _i_tile_x1y9__oe_x0y0_0; + wire [0:0] _i_tile_x1y9__opin_x0y0_1; + wire [0:0] _i_tile_x1y9__oe_x0y0_1; + wire [0:0] _i_tile_x1y9__prog_dout; + wire [0:0] _i_tile_x1y9__prog_we_o; + wire [11:0] _i_sbox_x1y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x1y9se__prog_dout; + wire [0:0] _i_sbox_x1y9se__prog_we_o; + wire [11:0] _i_sbox_x2y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y0nw__prog_dout; + wire [0:0] _i_sbox_x2y0nw__prog_we_o; + wire [11:0] _i_tile_x2y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y1__prog_dout; + wire [0:0] _i_tile_x2y1__prog_we_o; + wire [11:0] _i_sbox_x2y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y1ne__prog_dout; + wire [0:0] _i_sbox_x2y1ne__prog_we_o; + wire [11:0] _i_sbox_x2y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y1nw__prog_dout; + wire [0:0] _i_sbox_x2y1nw__prog_we_o; + wire [11:0] _i_sbox_x2y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y1se__prog_dout; + wire [0:0] _i_sbox_x2y1se__prog_we_o; + wire [11:0] _i_sbox_x2y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y1sw__prog_dout; + wire [0:0] _i_sbox_x2y1sw__prog_we_o; + wire [11:0] _i_tile_x2y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y2__prog_dout; + wire [0:0] _i_tile_x2y2__prog_we_o; + wire [11:0] _i_sbox_x2y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y2ne__prog_dout; + wire [0:0] _i_sbox_x2y2ne__prog_we_o; + wire [11:0] _i_sbox_x2y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y2nw__prog_dout; + wire [0:0] _i_sbox_x2y2nw__prog_we_o; + wire [11:0] _i_sbox_x2y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y2se__prog_dout; + wire [0:0] _i_sbox_x2y2se__prog_we_o; + wire [11:0] _i_sbox_x2y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y2sw__prog_dout; + wire [0:0] _i_sbox_x2y2sw__prog_we_o; + wire [11:0] _i_tile_x2y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y3__prog_dout; + wire [0:0] _i_tile_x2y3__prog_we_o; + wire [11:0] _i_sbox_x2y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y3ne__prog_dout; + wire [0:0] _i_sbox_x2y3ne__prog_we_o; + wire [11:0] _i_sbox_x2y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y3nw__prog_dout; + wire [0:0] _i_sbox_x2y3nw__prog_we_o; + wire [11:0] _i_sbox_x2y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y3se__prog_dout; + wire [0:0] _i_sbox_x2y3se__prog_we_o; + wire [11:0] _i_sbox_x2y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y3sw__prog_dout; + wire [0:0] _i_sbox_x2y3sw__prog_we_o; + wire [11:0] _i_tile_x2y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y4__prog_dout; + wire [0:0] _i_tile_x2y4__prog_we_o; + wire [11:0] _i_sbox_x2y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y4ne__prog_dout; + wire [0:0] _i_sbox_x2y4ne__prog_we_o; + wire [11:0] _i_sbox_x2y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y4nw__prog_dout; + wire [0:0] _i_sbox_x2y4nw__prog_we_o; + wire [11:0] _i_sbox_x2y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y4se__prog_dout; + wire [0:0] _i_sbox_x2y4se__prog_we_o; + wire [11:0] _i_sbox_x2y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y4sw__prog_dout; + wire [0:0] _i_sbox_x2y4sw__prog_we_o; + wire [11:0] _i_tile_x2y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y5__prog_dout; + wire [0:0] _i_tile_x2y5__prog_we_o; + wire [11:0] _i_sbox_x2y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y5ne__prog_dout; + wire [0:0] _i_sbox_x2y5ne__prog_we_o; + wire [11:0] _i_sbox_x2y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y5nw__prog_dout; + wire [0:0] _i_sbox_x2y5nw__prog_we_o; + wire [11:0] _i_sbox_x2y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y5se__prog_dout; + wire [0:0] _i_sbox_x2y5se__prog_we_o; + wire [11:0] _i_sbox_x2y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y5sw__prog_dout; + wire [0:0] _i_sbox_x2y5sw__prog_we_o; + wire [11:0] _i_tile_x2y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y6__prog_dout; + wire [0:0] _i_tile_x2y6__prog_we_o; + wire [11:0] _i_sbox_x2y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y6ne__prog_dout; + wire [0:0] _i_sbox_x2y6ne__prog_we_o; + wire [11:0] _i_sbox_x2y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y6nw__prog_dout; + wire [0:0] _i_sbox_x2y6nw__prog_we_o; + wire [11:0] _i_sbox_x2y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y6se__prog_dout; + wire [0:0] _i_sbox_x2y6se__prog_we_o; + wire [11:0] _i_sbox_x2y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y6sw__prog_dout; + wire [0:0] _i_sbox_x2y6sw__prog_we_o; + wire [11:0] _i_tile_x2y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y7__prog_dout; + wire [0:0] _i_tile_x2y7__prog_we_o; + wire [11:0] _i_sbox_x2y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y7ne__prog_dout; + wire [0:0] _i_sbox_x2y7ne__prog_we_o; + wire [11:0] _i_sbox_x2y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y7nw__prog_dout; + wire [0:0] _i_sbox_x2y7nw__prog_we_o; + wire [11:0] _i_sbox_x2y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y7se__prog_dout; + wire [0:0] _i_sbox_x2y7se__prog_we_o; + wire [11:0] _i_sbox_x2y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y7sw__prog_dout; + wire [0:0] _i_sbox_x2y7sw__prog_we_o; + wire [11:0] _i_tile_x2y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x2y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x2y8__prog_dout; + wire [0:0] _i_tile_x2y8__prog_we_o; + wire [11:0] _i_sbox_x2y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x2y8ne__prog_dout; + wire [0:0] _i_sbox_x2y8ne__prog_we_o; + wire [11:0] _i_sbox_x2y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x2y8nw__prog_dout; + wire [0:0] _i_sbox_x2y8nw__prog_we_o; + wire [11:0] _i_sbox_x2y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y8se__prog_dout; + wire [0:0] _i_sbox_x2y8se__prog_we_o; + wire [11:0] _i_sbox_x2y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x2y8sw__prog_dout; + wire [0:0] _i_sbox_x2y8sw__prog_we_o; + wire [11:0] _i_tile_x2y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x2y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x2y9__opin_x0y0_0; + wire [0:0] _i_tile_x2y9__oe_x0y0_0; + wire [0:0] _i_tile_x2y9__opin_x0y0_1; + wire [0:0] _i_tile_x2y9__oe_x0y0_1; + wire [0:0] _i_tile_x2y9__prog_dout; + wire [0:0] _i_tile_x2y9__prog_we_o; + wire [11:0] _i_sbox_x2y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x2y9se__prog_dout; + wire [0:0] _i_sbox_x2y9se__prog_we_o; + wire [11:0] _i_sbox_x3y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y0nw__prog_dout; + wire [0:0] _i_sbox_x3y0nw__prog_we_o; + wire [11:0] _i_tile_x3y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y1__prog_dout; + wire [0:0] _i_tile_x3y1__prog_we_o; + wire [11:0] _i_sbox_x3y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y1ne__prog_dout; + wire [0:0] _i_sbox_x3y1ne__prog_we_o; + wire [11:0] _i_sbox_x3y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y1nw__prog_dout; + wire [0:0] _i_sbox_x3y1nw__prog_we_o; + wire [11:0] _i_sbox_x3y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y1se__prog_dout; + wire [0:0] _i_sbox_x3y1se__prog_we_o; + wire [11:0] _i_sbox_x3y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y1sw__prog_dout; + wire [0:0] _i_sbox_x3y1sw__prog_we_o; + wire [11:0] _i_tile_x3y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y2__prog_dout; + wire [0:0] _i_tile_x3y2__prog_we_o; + wire [11:0] _i_sbox_x3y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y2ne__prog_dout; + wire [0:0] _i_sbox_x3y2ne__prog_we_o; + wire [11:0] _i_sbox_x3y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y2nw__prog_dout; + wire [0:0] _i_sbox_x3y2nw__prog_we_o; + wire [11:0] _i_sbox_x3y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y2se__prog_dout; + wire [0:0] _i_sbox_x3y2se__prog_we_o; + wire [11:0] _i_sbox_x3y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y2sw__prog_dout; + wire [0:0] _i_sbox_x3y2sw__prog_we_o; + wire [11:0] _i_tile_x3y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y3__prog_dout; + wire [0:0] _i_tile_x3y3__prog_we_o; + wire [11:0] _i_sbox_x3y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y3ne__prog_dout; + wire [0:0] _i_sbox_x3y3ne__prog_we_o; + wire [11:0] _i_sbox_x3y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y3nw__prog_dout; + wire [0:0] _i_sbox_x3y3nw__prog_we_o; + wire [11:0] _i_sbox_x3y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y3se__prog_dout; + wire [0:0] _i_sbox_x3y3se__prog_we_o; + wire [11:0] _i_sbox_x3y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y3sw__prog_dout; + wire [0:0] _i_sbox_x3y3sw__prog_we_o; + wire [11:0] _i_tile_x3y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y4__prog_dout; + wire [0:0] _i_tile_x3y4__prog_we_o; + wire [11:0] _i_sbox_x3y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y4ne__prog_dout; + wire [0:0] _i_sbox_x3y4ne__prog_we_o; + wire [11:0] _i_sbox_x3y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y4nw__prog_dout; + wire [0:0] _i_sbox_x3y4nw__prog_we_o; + wire [11:0] _i_sbox_x3y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y4se__prog_dout; + wire [0:0] _i_sbox_x3y4se__prog_we_o; + wire [11:0] _i_sbox_x3y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y4sw__prog_dout; + wire [0:0] _i_sbox_x3y4sw__prog_we_o; + wire [11:0] _i_tile_x3y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y5__prog_dout; + wire [0:0] _i_tile_x3y5__prog_we_o; + wire [11:0] _i_sbox_x3y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y5ne__prog_dout; + wire [0:0] _i_sbox_x3y5ne__prog_we_o; + wire [11:0] _i_sbox_x3y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y5nw__prog_dout; + wire [0:0] _i_sbox_x3y5nw__prog_we_o; + wire [11:0] _i_sbox_x3y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y5se__prog_dout; + wire [0:0] _i_sbox_x3y5se__prog_we_o; + wire [11:0] _i_sbox_x3y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y5sw__prog_dout; + wire [0:0] _i_sbox_x3y5sw__prog_we_o; + wire [11:0] _i_tile_x3y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y6__prog_dout; + wire [0:0] _i_tile_x3y6__prog_we_o; + wire [11:0] _i_sbox_x3y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y6ne__prog_dout; + wire [0:0] _i_sbox_x3y6ne__prog_we_o; + wire [11:0] _i_sbox_x3y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y6nw__prog_dout; + wire [0:0] _i_sbox_x3y6nw__prog_we_o; + wire [11:0] _i_sbox_x3y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y6se__prog_dout; + wire [0:0] _i_sbox_x3y6se__prog_we_o; + wire [11:0] _i_sbox_x3y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y6sw__prog_dout; + wire [0:0] _i_sbox_x3y6sw__prog_we_o; + wire [11:0] _i_tile_x3y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y7__prog_dout; + wire [0:0] _i_tile_x3y7__prog_we_o; + wire [11:0] _i_sbox_x3y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y7ne__prog_dout; + wire [0:0] _i_sbox_x3y7ne__prog_we_o; + wire [11:0] _i_sbox_x3y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y7nw__prog_dout; + wire [0:0] _i_sbox_x3y7nw__prog_we_o; + wire [11:0] _i_sbox_x3y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y7se__prog_dout; + wire [0:0] _i_sbox_x3y7se__prog_we_o; + wire [11:0] _i_sbox_x3y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y7sw__prog_dout; + wire [0:0] _i_sbox_x3y7sw__prog_we_o; + wire [11:0] _i_tile_x3y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x3y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x3y8__prog_dout; + wire [0:0] _i_tile_x3y8__prog_we_o; + wire [11:0] _i_sbox_x3y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x3y8ne__prog_dout; + wire [0:0] _i_sbox_x3y8ne__prog_we_o; + wire [11:0] _i_sbox_x3y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x3y8nw__prog_dout; + wire [0:0] _i_sbox_x3y8nw__prog_we_o; + wire [11:0] _i_sbox_x3y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y8se__prog_dout; + wire [0:0] _i_sbox_x3y8se__prog_we_o; + wire [11:0] _i_sbox_x3y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x3y8sw__prog_dout; + wire [0:0] _i_sbox_x3y8sw__prog_we_o; + wire [11:0] _i_tile_x3y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x3y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x3y9__opin_x0y0_0; + wire [0:0] _i_tile_x3y9__oe_x0y0_0; + wire [0:0] _i_tile_x3y9__opin_x0y0_1; + wire [0:0] _i_tile_x3y9__oe_x0y0_1; + wire [0:0] _i_tile_x3y9__prog_dout; + wire [0:0] _i_tile_x3y9__prog_we_o; + wire [11:0] _i_sbox_x3y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x3y9se__prog_dout; + wire [0:0] _i_sbox_x3y9se__prog_we_o; + wire [11:0] _i_sbox_x4y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y0nw__prog_dout; + wire [0:0] _i_sbox_x4y0nw__prog_we_o; + wire [11:0] _i_tile_x4y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y1__prog_dout; + wire [0:0] _i_tile_x4y1__prog_we_o; + wire [11:0] _i_sbox_x4y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y1ne__prog_dout; + wire [0:0] _i_sbox_x4y1ne__prog_we_o; + wire [11:0] _i_sbox_x4y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y1nw__prog_dout; + wire [0:0] _i_sbox_x4y1nw__prog_we_o; + wire [11:0] _i_sbox_x4y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y1se__prog_dout; + wire [0:0] _i_sbox_x4y1se__prog_we_o; + wire [11:0] _i_sbox_x4y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y1sw__prog_dout; + wire [0:0] _i_sbox_x4y1sw__prog_we_o; + wire [11:0] _i_tile_x4y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y2__prog_dout; + wire [0:0] _i_tile_x4y2__prog_we_o; + wire [11:0] _i_sbox_x4y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y2ne__prog_dout; + wire [0:0] _i_sbox_x4y2ne__prog_we_o; + wire [11:0] _i_sbox_x4y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y2nw__prog_dout; + wire [0:0] _i_sbox_x4y2nw__prog_we_o; + wire [11:0] _i_sbox_x4y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y2se__prog_dout; + wire [0:0] _i_sbox_x4y2se__prog_we_o; + wire [11:0] _i_sbox_x4y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y2sw__prog_dout; + wire [0:0] _i_sbox_x4y2sw__prog_we_o; + wire [11:0] _i_tile_x4y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y3__prog_dout; + wire [0:0] _i_tile_x4y3__prog_we_o; + wire [11:0] _i_sbox_x4y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y3ne__prog_dout; + wire [0:0] _i_sbox_x4y3ne__prog_we_o; + wire [11:0] _i_sbox_x4y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y3nw__prog_dout; + wire [0:0] _i_sbox_x4y3nw__prog_we_o; + wire [11:0] _i_sbox_x4y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y3se__prog_dout; + wire [0:0] _i_sbox_x4y3se__prog_we_o; + wire [11:0] _i_sbox_x4y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y3sw__prog_dout; + wire [0:0] _i_sbox_x4y3sw__prog_we_o; + wire [11:0] _i_tile_x4y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y4__prog_dout; + wire [0:0] _i_tile_x4y4__prog_we_o; + wire [11:0] _i_sbox_x4y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y4ne__prog_dout; + wire [0:0] _i_sbox_x4y4ne__prog_we_o; + wire [11:0] _i_sbox_x4y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y4nw__prog_dout; + wire [0:0] _i_sbox_x4y4nw__prog_we_o; + wire [11:0] _i_sbox_x4y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y4se__prog_dout; + wire [0:0] _i_sbox_x4y4se__prog_we_o; + wire [11:0] _i_sbox_x4y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y4sw__prog_dout; + wire [0:0] _i_sbox_x4y4sw__prog_we_o; + wire [11:0] _i_tile_x4y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y5__prog_dout; + wire [0:0] _i_tile_x4y5__prog_we_o; + wire [11:0] _i_sbox_x4y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y5ne__prog_dout; + wire [0:0] _i_sbox_x4y5ne__prog_we_o; + wire [11:0] _i_sbox_x4y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y5nw__prog_dout; + wire [0:0] _i_sbox_x4y5nw__prog_we_o; + wire [11:0] _i_sbox_x4y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y5se__prog_dout; + wire [0:0] _i_sbox_x4y5se__prog_we_o; + wire [11:0] _i_sbox_x4y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y5sw__prog_dout; + wire [0:0] _i_sbox_x4y5sw__prog_we_o; + wire [11:0] _i_tile_x4y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y6__prog_dout; + wire [0:0] _i_tile_x4y6__prog_we_o; + wire [11:0] _i_sbox_x4y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y6ne__prog_dout; + wire [0:0] _i_sbox_x4y6ne__prog_we_o; + wire [11:0] _i_sbox_x4y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y6nw__prog_dout; + wire [0:0] _i_sbox_x4y6nw__prog_we_o; + wire [11:0] _i_sbox_x4y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y6se__prog_dout; + wire [0:0] _i_sbox_x4y6se__prog_we_o; + wire [11:0] _i_sbox_x4y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y6sw__prog_dout; + wire [0:0] _i_sbox_x4y6sw__prog_we_o; + wire [11:0] _i_tile_x4y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y7__prog_dout; + wire [0:0] _i_tile_x4y7__prog_we_o; + wire [11:0] _i_sbox_x4y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y7ne__prog_dout; + wire [0:0] _i_sbox_x4y7ne__prog_we_o; + wire [11:0] _i_sbox_x4y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y7nw__prog_dout; + wire [0:0] _i_sbox_x4y7nw__prog_we_o; + wire [11:0] _i_sbox_x4y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y7se__prog_dout; + wire [0:0] _i_sbox_x4y7se__prog_we_o; + wire [11:0] _i_sbox_x4y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y7sw__prog_dout; + wire [0:0] _i_sbox_x4y7sw__prog_we_o; + wire [11:0] _i_tile_x4y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x4y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x4y8__prog_dout; + wire [0:0] _i_tile_x4y8__prog_we_o; + wire [11:0] _i_sbox_x4y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x4y8ne__prog_dout; + wire [0:0] _i_sbox_x4y8ne__prog_we_o; + wire [11:0] _i_sbox_x4y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x4y8nw__prog_dout; + wire [0:0] _i_sbox_x4y8nw__prog_we_o; + wire [11:0] _i_sbox_x4y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y8se__prog_dout; + wire [0:0] _i_sbox_x4y8se__prog_we_o; + wire [11:0] _i_sbox_x4y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x4y8sw__prog_dout; + wire [0:0] _i_sbox_x4y8sw__prog_we_o; + wire [11:0] _i_tile_x4y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x4y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x4y9__opin_x0y0_0; + wire [0:0] _i_tile_x4y9__oe_x0y0_0; + wire [0:0] _i_tile_x4y9__opin_x0y0_1; + wire [0:0] _i_tile_x4y9__oe_x0y0_1; + wire [0:0] _i_tile_x4y9__prog_dout; + wire [0:0] _i_tile_x4y9__prog_we_o; + wire [11:0] _i_sbox_x4y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x4y9se__prog_dout; + wire [0:0] _i_sbox_x4y9se__prog_we_o; + wire [11:0] _i_sbox_x5y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y0nw__prog_dout; + wire [0:0] _i_sbox_x5y0nw__prog_we_o; + wire [11:0] _i_tile_x5y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y1__prog_dout; + wire [0:0] _i_tile_x5y1__prog_we_o; + wire [11:0] _i_sbox_x5y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y1ne__prog_dout; + wire [0:0] _i_sbox_x5y1ne__prog_we_o; + wire [11:0] _i_sbox_x5y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y1nw__prog_dout; + wire [0:0] _i_sbox_x5y1nw__prog_we_o; + wire [11:0] _i_sbox_x5y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y1se__prog_dout; + wire [0:0] _i_sbox_x5y1se__prog_we_o; + wire [11:0] _i_sbox_x5y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y1sw__prog_dout; + wire [0:0] _i_sbox_x5y1sw__prog_we_o; + wire [11:0] _i_tile_x5y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y2__prog_dout; + wire [0:0] _i_tile_x5y2__prog_we_o; + wire [11:0] _i_sbox_x5y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y2ne__prog_dout; + wire [0:0] _i_sbox_x5y2ne__prog_we_o; + wire [11:0] _i_sbox_x5y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y2nw__prog_dout; + wire [0:0] _i_sbox_x5y2nw__prog_we_o; + wire [11:0] _i_sbox_x5y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y2se__prog_dout; + wire [0:0] _i_sbox_x5y2se__prog_we_o; + wire [11:0] _i_sbox_x5y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y2sw__prog_dout; + wire [0:0] _i_sbox_x5y2sw__prog_we_o; + wire [11:0] _i_tile_x5y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y3__prog_dout; + wire [0:0] _i_tile_x5y3__prog_we_o; + wire [11:0] _i_sbox_x5y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y3ne__prog_dout; + wire [0:0] _i_sbox_x5y3ne__prog_we_o; + wire [11:0] _i_sbox_x5y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y3nw__prog_dout; + wire [0:0] _i_sbox_x5y3nw__prog_we_o; + wire [11:0] _i_sbox_x5y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y3se__prog_dout; + wire [0:0] _i_sbox_x5y3se__prog_we_o; + wire [11:0] _i_sbox_x5y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y3sw__prog_dout; + wire [0:0] _i_sbox_x5y3sw__prog_we_o; + wire [11:0] _i_tile_x5y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y4__prog_dout; + wire [0:0] _i_tile_x5y4__prog_we_o; + wire [11:0] _i_sbox_x5y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y4ne__prog_dout; + wire [0:0] _i_sbox_x5y4ne__prog_we_o; + wire [11:0] _i_sbox_x5y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y4nw__prog_dout; + wire [0:0] _i_sbox_x5y4nw__prog_we_o; + wire [11:0] _i_sbox_x5y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y4se__prog_dout; + wire [0:0] _i_sbox_x5y4se__prog_we_o; + wire [11:0] _i_sbox_x5y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y4sw__prog_dout; + wire [0:0] _i_sbox_x5y4sw__prog_we_o; + wire [11:0] _i_tile_x5y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y5__prog_dout; + wire [0:0] _i_tile_x5y5__prog_we_o; + wire [11:0] _i_sbox_x5y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y5ne__prog_dout; + wire [0:0] _i_sbox_x5y5ne__prog_we_o; + wire [11:0] _i_sbox_x5y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y5nw__prog_dout; + wire [0:0] _i_sbox_x5y5nw__prog_we_o; + wire [11:0] _i_sbox_x5y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y5se__prog_dout; + wire [0:0] _i_sbox_x5y5se__prog_we_o; + wire [11:0] _i_sbox_x5y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y5sw__prog_dout; + wire [0:0] _i_sbox_x5y5sw__prog_we_o; + wire [11:0] _i_tile_x5y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y6__prog_dout; + wire [0:0] _i_tile_x5y6__prog_we_o; + wire [11:0] _i_sbox_x5y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y6ne__prog_dout; + wire [0:0] _i_sbox_x5y6ne__prog_we_o; + wire [11:0] _i_sbox_x5y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y6nw__prog_dout; + wire [0:0] _i_sbox_x5y6nw__prog_we_o; + wire [11:0] _i_sbox_x5y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y6se__prog_dout; + wire [0:0] _i_sbox_x5y6se__prog_we_o; + wire [11:0] _i_sbox_x5y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y6sw__prog_dout; + wire [0:0] _i_sbox_x5y6sw__prog_we_o; + wire [11:0] _i_tile_x5y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y7__prog_dout; + wire [0:0] _i_tile_x5y7__prog_we_o; + wire [11:0] _i_sbox_x5y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y7ne__prog_dout; + wire [0:0] _i_sbox_x5y7ne__prog_we_o; + wire [11:0] _i_sbox_x5y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y7nw__prog_dout; + wire [0:0] _i_sbox_x5y7nw__prog_we_o; + wire [11:0] _i_sbox_x5y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y7se__prog_dout; + wire [0:0] _i_sbox_x5y7se__prog_we_o; + wire [11:0] _i_sbox_x5y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y7sw__prog_dout; + wire [0:0] _i_sbox_x5y7sw__prog_we_o; + wire [11:0] _i_tile_x5y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x5y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x5y8__prog_dout; + wire [0:0] _i_tile_x5y8__prog_we_o; + wire [11:0] _i_sbox_x5y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x5y8ne__prog_dout; + wire [0:0] _i_sbox_x5y8ne__prog_we_o; + wire [11:0] _i_sbox_x5y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x5y8nw__prog_dout; + wire [0:0] _i_sbox_x5y8nw__prog_we_o; + wire [11:0] _i_sbox_x5y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y8se__prog_dout; + wire [0:0] _i_sbox_x5y8se__prog_we_o; + wire [11:0] _i_sbox_x5y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x5y8sw__prog_dout; + wire [0:0] _i_sbox_x5y8sw__prog_we_o; + wire [11:0] _i_tile_x5y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x5y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x5y9__opin_x0y0_0; + wire [0:0] _i_tile_x5y9__oe_x0y0_0; + wire [0:0] _i_tile_x5y9__opin_x0y0_1; + wire [0:0] _i_tile_x5y9__oe_x0y0_1; + wire [0:0] _i_tile_x5y9__prog_dout; + wire [0:0] _i_tile_x5y9__prog_we_o; + wire [11:0] _i_sbox_x5y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x5y9se__prog_dout; + wire [0:0] _i_sbox_x5y9se__prog_we_o; + wire [11:0] _i_sbox_x6y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y0nw__prog_dout; + wire [0:0] _i_sbox_x6y0nw__prog_we_o; + wire [11:0] _i_tile_x6y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y1__prog_dout; + wire [0:0] _i_tile_x6y1__prog_we_o; + wire [11:0] _i_sbox_x6y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y1ne__prog_dout; + wire [0:0] _i_sbox_x6y1ne__prog_we_o; + wire [11:0] _i_sbox_x6y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y1nw__prog_dout; + wire [0:0] _i_sbox_x6y1nw__prog_we_o; + wire [11:0] _i_sbox_x6y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y1se__prog_dout; + wire [0:0] _i_sbox_x6y1se__prog_we_o; + wire [11:0] _i_sbox_x6y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y1sw__prog_dout; + wire [0:0] _i_sbox_x6y1sw__prog_we_o; + wire [11:0] _i_tile_x6y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y2__prog_dout; + wire [0:0] _i_tile_x6y2__prog_we_o; + wire [11:0] _i_sbox_x6y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y2ne__prog_dout; + wire [0:0] _i_sbox_x6y2ne__prog_we_o; + wire [11:0] _i_sbox_x6y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y2nw__prog_dout; + wire [0:0] _i_sbox_x6y2nw__prog_we_o; + wire [11:0] _i_sbox_x6y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y2se__prog_dout; + wire [0:0] _i_sbox_x6y2se__prog_we_o; + wire [11:0] _i_sbox_x6y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y2sw__prog_dout; + wire [0:0] _i_sbox_x6y2sw__prog_we_o; + wire [11:0] _i_tile_x6y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y3__prog_dout; + wire [0:0] _i_tile_x6y3__prog_we_o; + wire [11:0] _i_sbox_x6y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y3ne__prog_dout; + wire [0:0] _i_sbox_x6y3ne__prog_we_o; + wire [11:0] _i_sbox_x6y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y3nw__prog_dout; + wire [0:0] _i_sbox_x6y3nw__prog_we_o; + wire [11:0] _i_sbox_x6y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y3se__prog_dout; + wire [0:0] _i_sbox_x6y3se__prog_we_o; + wire [11:0] _i_sbox_x6y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y3sw__prog_dout; + wire [0:0] _i_sbox_x6y3sw__prog_we_o; + wire [11:0] _i_tile_x6y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y4__prog_dout; + wire [0:0] _i_tile_x6y4__prog_we_o; + wire [11:0] _i_sbox_x6y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y4ne__prog_dout; + wire [0:0] _i_sbox_x6y4ne__prog_we_o; + wire [11:0] _i_sbox_x6y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y4nw__prog_dout; + wire [0:0] _i_sbox_x6y4nw__prog_we_o; + wire [11:0] _i_sbox_x6y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y4se__prog_dout; + wire [0:0] _i_sbox_x6y4se__prog_we_o; + wire [11:0] _i_sbox_x6y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y4sw__prog_dout; + wire [0:0] _i_sbox_x6y4sw__prog_we_o; + wire [11:0] _i_tile_x6y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y5__prog_dout; + wire [0:0] _i_tile_x6y5__prog_we_o; + wire [11:0] _i_sbox_x6y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y5ne__prog_dout; + wire [0:0] _i_sbox_x6y5ne__prog_we_o; + wire [11:0] _i_sbox_x6y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y5nw__prog_dout; + wire [0:0] _i_sbox_x6y5nw__prog_we_o; + wire [11:0] _i_sbox_x6y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y5se__prog_dout; + wire [0:0] _i_sbox_x6y5se__prog_we_o; + wire [11:0] _i_sbox_x6y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y5sw__prog_dout; + wire [0:0] _i_sbox_x6y5sw__prog_we_o; + wire [11:0] _i_tile_x6y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y6__prog_dout; + wire [0:0] _i_tile_x6y6__prog_we_o; + wire [11:0] _i_sbox_x6y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y6ne__prog_dout; + wire [0:0] _i_sbox_x6y6ne__prog_we_o; + wire [11:0] _i_sbox_x6y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y6nw__prog_dout; + wire [0:0] _i_sbox_x6y6nw__prog_we_o; + wire [11:0] _i_sbox_x6y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y6se__prog_dout; + wire [0:0] _i_sbox_x6y6se__prog_we_o; + wire [11:0] _i_sbox_x6y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y6sw__prog_dout; + wire [0:0] _i_sbox_x6y6sw__prog_we_o; + wire [11:0] _i_tile_x6y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y7__prog_dout; + wire [0:0] _i_tile_x6y7__prog_we_o; + wire [11:0] _i_sbox_x6y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y7ne__prog_dout; + wire [0:0] _i_sbox_x6y7ne__prog_we_o; + wire [11:0] _i_sbox_x6y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y7nw__prog_dout; + wire [0:0] _i_sbox_x6y7nw__prog_we_o; + wire [11:0] _i_sbox_x6y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y7se__prog_dout; + wire [0:0] _i_sbox_x6y7se__prog_we_o; + wire [11:0] _i_sbox_x6y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y7sw__prog_dout; + wire [0:0] _i_sbox_x6y7sw__prog_we_o; + wire [11:0] _i_tile_x6y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x6y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x6y8__prog_dout; + wire [0:0] _i_tile_x6y8__prog_we_o; + wire [11:0] _i_sbox_x6y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x6y8ne__prog_dout; + wire [0:0] _i_sbox_x6y8ne__prog_we_o; + wire [11:0] _i_sbox_x6y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x6y8nw__prog_dout; + wire [0:0] _i_sbox_x6y8nw__prog_we_o; + wire [11:0] _i_sbox_x6y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y8se__prog_dout; + wire [0:0] _i_sbox_x6y8se__prog_we_o; + wire [11:0] _i_sbox_x6y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x6y8sw__prog_dout; + wire [0:0] _i_sbox_x6y8sw__prog_we_o; + wire [11:0] _i_tile_x6y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x6y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x6y9__opin_x0y0_0; + wire [0:0] _i_tile_x6y9__oe_x0y0_0; + wire [0:0] _i_tile_x6y9__opin_x0y0_1; + wire [0:0] _i_tile_x6y9__oe_x0y0_1; + wire [0:0] _i_tile_x6y9__prog_dout; + wire [0:0] _i_tile_x6y9__prog_we_o; + wire [11:0] _i_sbox_x6y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x6y9se__prog_dout; + wire [0:0] _i_sbox_x6y9se__prog_we_o; + wire [11:0] _i_sbox_x7y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y0nw__prog_dout; + wire [0:0] _i_sbox_x7y0nw__prog_we_o; + wire [11:0] _i_tile_x7y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y1__prog_dout; + wire [0:0] _i_tile_x7y1__prog_we_o; + wire [11:0] _i_sbox_x7y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y1ne__prog_dout; + wire [0:0] _i_sbox_x7y1ne__prog_we_o; + wire [11:0] _i_sbox_x7y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y1nw__prog_dout; + wire [0:0] _i_sbox_x7y1nw__prog_we_o; + wire [11:0] _i_sbox_x7y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y1se__prog_dout; + wire [0:0] _i_sbox_x7y1se__prog_we_o; + wire [11:0] _i_sbox_x7y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y1sw__prog_dout; + wire [0:0] _i_sbox_x7y1sw__prog_we_o; + wire [11:0] _i_tile_x7y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y2__prog_dout; + wire [0:0] _i_tile_x7y2__prog_we_o; + wire [11:0] _i_sbox_x7y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y2ne__prog_dout; + wire [0:0] _i_sbox_x7y2ne__prog_we_o; + wire [11:0] _i_sbox_x7y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y2nw__prog_dout; + wire [0:0] _i_sbox_x7y2nw__prog_we_o; + wire [11:0] _i_sbox_x7y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y2se__prog_dout; + wire [0:0] _i_sbox_x7y2se__prog_we_o; + wire [11:0] _i_sbox_x7y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y2sw__prog_dout; + wire [0:0] _i_sbox_x7y2sw__prog_we_o; + wire [11:0] _i_tile_x7y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y3__prog_dout; + wire [0:0] _i_tile_x7y3__prog_we_o; + wire [11:0] _i_sbox_x7y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y3ne__prog_dout; + wire [0:0] _i_sbox_x7y3ne__prog_we_o; + wire [11:0] _i_sbox_x7y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y3nw__prog_dout; + wire [0:0] _i_sbox_x7y3nw__prog_we_o; + wire [11:0] _i_sbox_x7y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y3se__prog_dout; + wire [0:0] _i_sbox_x7y3se__prog_we_o; + wire [11:0] _i_sbox_x7y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y3sw__prog_dout; + wire [0:0] _i_sbox_x7y3sw__prog_we_o; + wire [11:0] _i_tile_x7y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y4__prog_dout; + wire [0:0] _i_tile_x7y4__prog_we_o; + wire [11:0] _i_sbox_x7y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y4ne__prog_dout; + wire [0:0] _i_sbox_x7y4ne__prog_we_o; + wire [11:0] _i_sbox_x7y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y4nw__prog_dout; + wire [0:0] _i_sbox_x7y4nw__prog_we_o; + wire [11:0] _i_sbox_x7y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y4se__prog_dout; + wire [0:0] _i_sbox_x7y4se__prog_we_o; + wire [11:0] _i_sbox_x7y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y4sw__prog_dout; + wire [0:0] _i_sbox_x7y4sw__prog_we_o; + wire [11:0] _i_tile_x7y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y5__prog_dout; + wire [0:0] _i_tile_x7y5__prog_we_o; + wire [11:0] _i_sbox_x7y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y5ne__prog_dout; + wire [0:0] _i_sbox_x7y5ne__prog_we_o; + wire [11:0] _i_sbox_x7y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y5nw__prog_dout; + wire [0:0] _i_sbox_x7y5nw__prog_we_o; + wire [11:0] _i_sbox_x7y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y5se__prog_dout; + wire [0:0] _i_sbox_x7y5se__prog_we_o; + wire [11:0] _i_sbox_x7y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y5sw__prog_dout; + wire [0:0] _i_sbox_x7y5sw__prog_we_o; + wire [11:0] _i_tile_x7y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y6__prog_dout; + wire [0:0] _i_tile_x7y6__prog_we_o; + wire [11:0] _i_sbox_x7y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y6ne__prog_dout; + wire [0:0] _i_sbox_x7y6ne__prog_we_o; + wire [11:0] _i_sbox_x7y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y6nw__prog_dout; + wire [0:0] _i_sbox_x7y6nw__prog_we_o; + wire [11:0] _i_sbox_x7y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y6se__prog_dout; + wire [0:0] _i_sbox_x7y6se__prog_we_o; + wire [11:0] _i_sbox_x7y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y6sw__prog_dout; + wire [0:0] _i_sbox_x7y6sw__prog_we_o; + wire [11:0] _i_tile_x7y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y7__prog_dout; + wire [0:0] _i_tile_x7y7__prog_we_o; + wire [11:0] _i_sbox_x7y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y7ne__prog_dout; + wire [0:0] _i_sbox_x7y7ne__prog_we_o; + wire [11:0] _i_sbox_x7y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y7nw__prog_dout; + wire [0:0] _i_sbox_x7y7nw__prog_we_o; + wire [11:0] _i_sbox_x7y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y7se__prog_dout; + wire [0:0] _i_sbox_x7y7se__prog_we_o; + wire [11:0] _i_sbox_x7y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y7sw__prog_dout; + wire [0:0] _i_sbox_x7y7sw__prog_we_o; + wire [11:0] _i_tile_x7y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x7y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x7y8__prog_dout; + wire [0:0] _i_tile_x7y8__prog_we_o; + wire [11:0] _i_sbox_x7y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x7y8ne__prog_dout; + wire [0:0] _i_sbox_x7y8ne__prog_we_o; + wire [11:0] _i_sbox_x7y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x7y8nw__prog_dout; + wire [0:0] _i_sbox_x7y8nw__prog_we_o; + wire [11:0] _i_sbox_x7y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y8se__prog_dout; + wire [0:0] _i_sbox_x7y8se__prog_we_o; + wire [11:0] _i_sbox_x7y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x7y8sw__prog_dout; + wire [0:0] _i_sbox_x7y8sw__prog_we_o; + wire [11:0] _i_tile_x7y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x7y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x7y9__opin_x0y0_0; + wire [0:0] _i_tile_x7y9__oe_x0y0_0; + wire [0:0] _i_tile_x7y9__opin_x0y0_1; + wire [0:0] _i_tile_x7y9__oe_x0y0_1; + wire [0:0] _i_tile_x7y9__prog_dout; + wire [0:0] _i_tile_x7y9__prog_we_o; + wire [11:0] _i_sbox_x7y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x7y9se__prog_dout; + wire [0:0] _i_sbox_x7y9se__prog_we_o; + wire [11:0] _i_sbox_x8y0nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y0nw__prog_dout; + wire [0:0] _i_sbox_x8y0nw__prog_we_o; + wire [11:0] _i_tile_x8y1__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y1__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y1__prog_dout; + wire [0:0] _i_tile_x8y1__prog_we_o; + wire [11:0] _i_sbox_x8y1ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y1ne__prog_dout; + wire [0:0] _i_sbox_x8y1ne__prog_we_o; + wire [11:0] _i_sbox_x8y1nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y1nw__prog_dout; + wire [0:0] _i_sbox_x8y1nw__prog_we_o; + wire [11:0] _i_sbox_x8y1se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y1se__prog_dout; + wire [0:0] _i_sbox_x8y1se__prog_we_o; + wire [11:0] _i_sbox_x8y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y1sw__prog_dout; + wire [0:0] _i_sbox_x8y1sw__prog_we_o; + wire [11:0] _i_tile_x8y2__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y2__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y2__prog_dout; + wire [0:0] _i_tile_x8y2__prog_we_o; + wire [11:0] _i_sbox_x8y2ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y2ne__prog_dout; + wire [0:0] _i_sbox_x8y2ne__prog_we_o; + wire [11:0] _i_sbox_x8y2nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y2nw__prog_dout; + wire [0:0] _i_sbox_x8y2nw__prog_we_o; + wire [11:0] _i_sbox_x8y2se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y2se__prog_dout; + wire [0:0] _i_sbox_x8y2se__prog_we_o; + wire [11:0] _i_sbox_x8y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y2sw__prog_dout; + wire [0:0] _i_sbox_x8y2sw__prog_we_o; + wire [11:0] _i_tile_x8y3__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y3__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y3__prog_dout; + wire [0:0] _i_tile_x8y3__prog_we_o; + wire [11:0] _i_sbox_x8y3ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y3ne__prog_dout; + wire [0:0] _i_sbox_x8y3ne__prog_we_o; + wire [11:0] _i_sbox_x8y3nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y3nw__prog_dout; + wire [0:0] _i_sbox_x8y3nw__prog_we_o; + wire [11:0] _i_sbox_x8y3se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y3se__prog_dout; + wire [0:0] _i_sbox_x8y3se__prog_we_o; + wire [11:0] _i_sbox_x8y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y3sw__prog_dout; + wire [0:0] _i_sbox_x8y3sw__prog_we_o; + wire [11:0] _i_tile_x8y4__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y4__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y4__prog_dout; + wire [0:0] _i_tile_x8y4__prog_we_o; + wire [11:0] _i_sbox_x8y4ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y4ne__prog_dout; + wire [0:0] _i_sbox_x8y4ne__prog_we_o; + wire [11:0] _i_sbox_x8y4nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y4nw__prog_dout; + wire [0:0] _i_sbox_x8y4nw__prog_we_o; + wire [11:0] _i_sbox_x8y4se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y4se__prog_dout; + wire [0:0] _i_sbox_x8y4se__prog_we_o; + wire [11:0] _i_sbox_x8y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y4sw__prog_dout; + wire [0:0] _i_sbox_x8y4sw__prog_we_o; + wire [11:0] _i_tile_x8y5__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y5__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y5__prog_dout; + wire [0:0] _i_tile_x8y5__prog_we_o; + wire [11:0] _i_sbox_x8y5ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y5ne__prog_dout; + wire [0:0] _i_sbox_x8y5ne__prog_we_o; + wire [11:0] _i_sbox_x8y5nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y5nw__prog_dout; + wire [0:0] _i_sbox_x8y5nw__prog_we_o; + wire [11:0] _i_sbox_x8y5se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y5se__prog_dout; + wire [0:0] _i_sbox_x8y5se__prog_we_o; + wire [11:0] _i_sbox_x8y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y5sw__prog_dout; + wire [0:0] _i_sbox_x8y5sw__prog_we_o; + wire [11:0] _i_tile_x8y6__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y6__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y6__prog_dout; + wire [0:0] _i_tile_x8y6__prog_we_o; + wire [11:0] _i_sbox_x8y6ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y6ne__prog_dout; + wire [0:0] _i_sbox_x8y6ne__prog_we_o; + wire [11:0] _i_sbox_x8y6nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y6nw__prog_dout; + wire [0:0] _i_sbox_x8y6nw__prog_we_o; + wire [11:0] _i_sbox_x8y6se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y6se__prog_dout; + wire [0:0] _i_sbox_x8y6se__prog_we_o; + wire [11:0] _i_sbox_x8y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y6sw__prog_dout; + wire [0:0] _i_sbox_x8y6sw__prog_we_o; + wire [11:0] _i_tile_x8y7__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y7__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y7__prog_dout; + wire [0:0] _i_tile_x8y7__prog_we_o; + wire [11:0] _i_sbox_x8y7ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y7ne__prog_dout; + wire [0:0] _i_sbox_x8y7ne__prog_we_o; + wire [11:0] _i_sbox_x8y7nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y7nw__prog_dout; + wire [0:0] _i_sbox_x8y7nw__prog_we_o; + wire [11:0] _i_sbox_x8y7se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y7se__prog_dout; + wire [0:0] _i_sbox_x8y7se__prog_we_o; + wire [11:0] _i_sbox_x8y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y7sw__prog_dout; + wire [0:0] _i_sbox_x8y7sw__prog_we_o; + wire [11:0] _i_tile_x8y8__cu_x0y0n_L1; + wire [11:0] _i_tile_x8y8__cu_x0y0s_L1; + wire [0:0] _i_tile_x8y8__prog_dout; + wire [0:0] _i_tile_x8y8__prog_we_o; + wire [11:0] _i_sbox_x8y8ne__so_x0y0s_L1; + wire [0:0] _i_sbox_x8y8ne__prog_dout; + wire [0:0] _i_sbox_x8y8ne__prog_we_o; + wire [11:0] _i_sbox_x8y8nw__so_x0y0e_L1; + wire [0:0] _i_sbox_x8y8nw__prog_dout; + wire [0:0] _i_sbox_x8y8nw__prog_we_o; + wire [11:0] _i_sbox_x8y8se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y8se__prog_dout; + wire [0:0] _i_sbox_x8y8se__prog_we_o; + wire [11:0] _i_sbox_x8y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x8y8sw__prog_dout; + wire [0:0] _i_sbox_x8y8sw__prog_we_o; + wire [11:0] _i_tile_x8y9__cu_x0v1e_L1; + wire [11:0] _i_tile_x8y9__cu_x0v1w_L1; + wire [0:0] _i_tile_x8y9__opin_x0y0_0; + wire [0:0] _i_tile_x8y9__oe_x0y0_0; + wire [0:0] _i_tile_x8y9__opin_x0y0_1; + wire [0:0] _i_tile_x8y9__oe_x0y0_1; + wire [0:0] _i_tile_x8y9__prog_dout; + wire [0:0] _i_tile_x8y9__prog_we_o; + wire [11:0] _i_sbox_x8y9se__so_x0v1w_L1; + wire [0:0] _i_sbox_x8y9se__prog_dout; + wire [0:0] _i_sbox_x8y9se__prog_we_o; + wire [11:0] _i_tile_x9y1__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y1__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y1__opin_x0y0_0; + wire [0:0] _i_tile_x9y1__oe_x0y0_0; + wire [0:0] _i_tile_x9y1__opin_x0y0_1; + wire [0:0] _i_tile_x9y1__oe_x0y0_1; + wire [0:0] _i_tile_x9y1__prog_dout; + wire [0:0] _i_tile_x9y1__prog_we_o; + wire [11:0] _i_sbox_x9y1sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y1sw__prog_dout; + wire [0:0] _i_sbox_x9y1sw__prog_we_o; + wire [11:0] _i_tile_x9y2__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y2__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y2__opin_x0y0_0; + wire [0:0] _i_tile_x9y2__oe_x0y0_0; + wire [0:0] _i_tile_x9y2__opin_x0y0_1; + wire [0:0] _i_tile_x9y2__oe_x0y0_1; + wire [0:0] _i_tile_x9y2__prog_dout; + wire [0:0] _i_tile_x9y2__prog_we_o; + wire [11:0] _i_sbox_x9y2sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y2sw__prog_dout; + wire [0:0] _i_sbox_x9y2sw__prog_we_o; + wire [11:0] _i_tile_x9y3__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y3__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y3__opin_x0y0_0; + wire [0:0] _i_tile_x9y3__oe_x0y0_0; + wire [0:0] _i_tile_x9y3__opin_x0y0_1; + wire [0:0] _i_tile_x9y3__oe_x0y0_1; + wire [0:0] _i_tile_x9y3__prog_dout; + wire [0:0] _i_tile_x9y3__prog_we_o; + wire [11:0] _i_sbox_x9y3sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y3sw__prog_dout; + wire [0:0] _i_sbox_x9y3sw__prog_we_o; + wire [11:0] _i_tile_x9y4__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y4__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y4__opin_x0y0_0; + wire [0:0] _i_tile_x9y4__oe_x0y0_0; + wire [0:0] _i_tile_x9y4__opin_x0y0_1; + wire [0:0] _i_tile_x9y4__oe_x0y0_1; + wire [0:0] _i_tile_x9y4__prog_dout; + wire [0:0] _i_tile_x9y4__prog_we_o; + wire [11:0] _i_sbox_x9y4sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y4sw__prog_dout; + wire [0:0] _i_sbox_x9y4sw__prog_we_o; + wire [11:0] _i_tile_x9y5__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y5__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y5__opin_x0y0_0; + wire [0:0] _i_tile_x9y5__oe_x0y0_0; + wire [0:0] _i_tile_x9y5__opin_x0y0_1; + wire [0:0] _i_tile_x9y5__oe_x0y0_1; + wire [0:0] _i_tile_x9y5__prog_dout; + wire [0:0] _i_tile_x9y5__prog_we_o; + wire [11:0] _i_sbox_x9y5sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y5sw__prog_dout; + wire [0:0] _i_sbox_x9y5sw__prog_we_o; + wire [11:0] _i_tile_x9y6__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y6__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y6__opin_x0y0_0; + wire [0:0] _i_tile_x9y6__oe_x0y0_0; + wire [0:0] _i_tile_x9y6__opin_x0y0_1; + wire [0:0] _i_tile_x9y6__oe_x0y0_1; + wire [0:0] _i_tile_x9y6__prog_dout; + wire [0:0] _i_tile_x9y6__prog_we_o; + wire [11:0] _i_sbox_x9y6sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y6sw__prog_dout; + wire [0:0] _i_sbox_x9y6sw__prog_we_o; + wire [11:0] _i_tile_x9y7__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y7__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y7__opin_x0y0_0; + wire [0:0] _i_tile_x9y7__oe_x0y0_0; + wire [0:0] _i_tile_x9y7__opin_x0y0_1; + wire [0:0] _i_tile_x9y7__oe_x0y0_1; + wire [0:0] _i_tile_x9y7__prog_dout; + wire [0:0] _i_tile_x9y7__prog_we_o; + wire [11:0] _i_sbox_x9y7sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y7sw__prog_dout; + wire [0:0] _i_sbox_x9y7sw__prog_we_o; + wire [11:0] _i_tile_x9y8__cu_u1y0n_L1; + wire [11:0] _i_tile_x9y8__cu_u1y0s_L1; + wire [0:0] _i_tile_x9y8__opin_x0y0_0; + wire [0:0] _i_tile_x9y8__oe_x0y0_0; + wire [0:0] _i_tile_x9y8__opin_x0y0_1; + wire [0:0] _i_tile_x9y8__oe_x0y0_1; + wire [0:0] _i_tile_x9y8__prog_dout; + wire [0:0] _i_tile_x9y8__prog_we_o; + wire [11:0] _i_sbox_x9y8sw__so_u1y0n_L1; + wire [0:0] _i_sbox_x9y8sw__prog_dout; + wire [0:0] _i_sbox_x9y8sw__prog_we_o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_buf_prog_rst_l1__Q; + wire [0:0] _i_buf_prog_done_l1__Q; + wire [0:0] _i_buf_prog_rst_l2__Q; + wire [0:0] _i_buf_prog_done_l2__Q; + + sbox_ne_n_ex_ne i_sbox_x0y0ne ( + .bi_x1y0w_L1(_i_sbox_x1y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y1 ( + .bi_x0y0n_L1(_i_sbox_x1y1sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y1ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y1__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y1_0) + ,.opin_x0y0_0(_i_tile_x0y1__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y1__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y1_1) + ,.opin_x0y0_1(_i_tile_x0y1__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y1__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_tile_x0y1__prog_dout) + ,.prog_we_o(_i_tile_x0y1__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y1ne ( + .bi_x0y1s_L1(_i_sbox_x0y2ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y1ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y2ne__prog_we_o) + ,.prog_din(_i_sbox_x0y2ne__prog_dout) + ,.prog_dout(_i_sbox_x0y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y1ne__prog_we_o) + ); + sbox_se_e_ex_ne i_sbox_x0y1se ( + .bi_x0y0s_L1(_i_sbox_x0y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y2 ( + .bi_x0y0n_L1(_i_sbox_x1y2sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y2ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y2__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y2_0) + ,.opin_x0y0_0(_i_tile_x0y2__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y2__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y2_1) + ,.opin_x0y0_1(_i_tile_x0y2__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y2__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y1__prog_we_o) + ,.prog_din(_i_tile_x0y1__prog_dout) + ,.prog_dout(_i_tile_x0y2__prog_dout) + ,.prog_we_o(_i_tile_x0y2__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y2ne ( + .bi_x0y1s_L1(_i_sbox_x0y3ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y3ne__prog_we_o) + ,.prog_din(_i_sbox_x0y3ne__prog_dout) + ,.prog_dout(_i_sbox_x0y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y2ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y2se ( + .bi_x0v1n_L1(_i_sbox_x1y1sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y3 ( + .bi_x0y0n_L1(_i_sbox_x1y3sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y3ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y3__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y3_0) + ,.opin_x0y0_0(_i_tile_x0y3__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y3__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y3_1) + ,.opin_x0y0_1(_i_tile_x0y3__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y3__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y2__prog_we_o) + ,.prog_din(_i_tile_x0y2__prog_dout) + ,.prog_dout(_i_tile_x0y3__prog_dout) + ,.prog_we_o(_i_tile_x0y3__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y3ne ( + .bi_x0y1s_L1(_i_sbox_x0y4ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y4ne__prog_we_o) + ,.prog_din(_i_sbox_x0y4ne__prog_dout) + ,.prog_dout(_i_sbox_x0y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y3ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y3se ( + .bi_x0v1n_L1(_i_sbox_x1y2sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y4 ( + .bi_x0y0n_L1(_i_sbox_x1y4sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y4ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y4__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y4_0) + ,.opin_x0y0_0(_i_tile_x0y4__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y4__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y4_1) + ,.opin_x0y0_1(_i_tile_x0y4__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y4__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y3__prog_we_o) + ,.prog_din(_i_tile_x0y3__prog_dout) + ,.prog_dout(_i_tile_x0y4__prog_dout) + ,.prog_we_o(_i_tile_x0y4__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y4ne ( + .bi_x0y1s_L1(_i_sbox_x0y5ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y5ne__prog_we_o) + ,.prog_din(_i_sbox_x0y5ne__prog_dout) + ,.prog_dout(_i_sbox_x0y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y4ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y4se ( + .bi_x0v1n_L1(_i_sbox_x1y3sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y5 ( + .bi_x0y0n_L1(_i_sbox_x1y5sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y5ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y5__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y5_0) + ,.opin_x0y0_0(_i_tile_x0y5__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y5__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y5_1) + ,.opin_x0y0_1(_i_tile_x0y5__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y5__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y4__prog_we_o) + ,.prog_din(_i_tile_x0y4__prog_dout) + ,.prog_dout(_i_tile_x0y5__prog_dout) + ,.prog_we_o(_i_tile_x0y5__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y5ne ( + .bi_x0y1s_L1(_i_sbox_x0y6ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y6ne__prog_we_o) + ,.prog_din(_i_sbox_x0y6ne__prog_dout) + ,.prog_dout(_i_sbox_x0y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y5ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y5se ( + .bi_x0v1n_L1(_i_sbox_x1y4sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y6 ( + .bi_x0y0n_L1(_i_sbox_x1y6sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y6ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y6__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y6_0) + ,.opin_x0y0_0(_i_tile_x0y6__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y6__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y6_1) + ,.opin_x0y0_1(_i_tile_x0y6__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y6__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y5__prog_we_o) + ,.prog_din(_i_tile_x0y5__prog_dout) + ,.prog_dout(_i_tile_x0y6__prog_dout) + ,.prog_we_o(_i_tile_x0y6__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y6ne ( + .bi_x0y1s_L1(_i_sbox_x0y7ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y7ne__prog_we_o) + ,.prog_din(_i_sbox_x0y7ne__prog_dout) + ,.prog_dout(_i_sbox_x0y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y6ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y6se ( + .bi_x0v1n_L1(_i_sbox_x1y5sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y7 ( + .bi_x0y0n_L1(_i_sbox_x1y7sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y7ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y7__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y7_0) + ,.opin_x0y0_0(_i_tile_x0y7__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y7__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y7_1) + ,.opin_x0y0_1(_i_tile_x0y7__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y7__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y6__prog_we_o) + ,.prog_din(_i_tile_x0y6__prog_dout) + ,.prog_dout(_i_tile_x0y7__prog_dout) + ,.prog_we_o(_i_tile_x0y7__prog_we_o) + ); + sbox_ne_S_ex_e i_sbox_x0y7ne ( + .bi_x0y1s_L1(_i_sbox_x0y8ne__so_x0y0s_L1) + ,.so_x0y0s_L1(_i_sbox_x0y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x1y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x0y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y8ne__prog_we_o) + ,.prog_din(_i_sbox_x0y8ne__prog_dout) + ,.prog_dout(_i_sbox_x0y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y7ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y7se ( + .bi_x0v1n_L1(_i_sbox_x1y6sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_w i_tile_x0y8 ( + .bi_x0y0n_L1(_i_sbox_x1y8sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y8ne__so_x0y0s_L1) + ,.cu_x0y0n_L1(_i_tile_x0y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x0y8__cu_x0y0s_L1) + ,.ipin_x0y0_0(ipin_x0y8_0) + ,.opin_x0y0_0(_i_tile_x0y8__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x0y8__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x0y8_1) + ,.opin_x0y0_1(_i_tile_x0y8__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x0y8__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_tile_x0y7__prog_we_o) + ,.prog_din(_i_tile_x0y7__prog_dout) + ,.prog_dout(_i_tile_x0y8__prog_dout) + ,.prog_we_o(_i_tile_x0y8__prog_we_o) + ); + sbox_ne_S_ex_es i_sbox_x0y8ne ( + .bi_x1y0w_L1(_i_sbox_x1y9se__so_x0v1w_L1) + ,.so_x0y0s_L1(_i_sbox_x0y8ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x0y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x0y8__prog_we_o) + ,.prog_din(_i_tile_x0y8__prog_dout) + ,.prog_dout(_i_sbox_x0y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x0y8ne__prog_we_o) + ); + sbox_se_e_ex_e i_sbox_x0y8se ( + .bi_x0v1n_L1(_i_sbox_x1y7sw__so_u1y0n_L1) + ,.bi_x0y0s_L1(_i_sbox_x0y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_se_e_ex_es i_sbox_x0y9se ( + .bi_x0v1n_L1(_i_sbox_x1y8sw__so_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x1y0ne ( + .bi_x0y0e_L1(_i_sbox_x1y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_ne i_sbox_x1y0nw ( + .bi_u1y1s_L1(_i_sbox_x0y1ne__so_x0y0s_L1) + ,.so_x0y0e_L1(_i_sbox_x1y0nw__so_x0y0e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x0y1ne__prog_we_o) + ,.prog_din(_i_sbox_x0y1ne__prog_dout) + ,.prog_dout(_i_sbox_x1y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y0nw__prog_we_o) + ); + tile_clb i_tile_x1y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y1sw__prog_we_o) + ,.prog_din(_i_sbox_x1y1sw__prog_dout) + ,.prog_dout(_i_tile_x1y1__prog_dout) + ,.prog_we_o(_i_tile_x1y1__prog_we_o) + ); + sbox_ne_S i_sbox_x1y1ne ( + .bi_x0y0e_L1(_i_sbox_x1y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y2se__prog_we_o) + ,.prog_din(_i_sbox_x1y2se__prog_dout) + ,.prog_dout(_i_sbox_x1y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y1ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y1nw ( + .bi_u1y0n_L1(_i_sbox_x1y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y1__prog_we_o) + ,.prog_din(_i_tile_x1y1__prog_dout) + ,.prog_dout(_i_sbox_x1y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x1y1se ( + .bi_x0y0s_L1(_i_sbox_x1y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x1y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y1ne__prog_we_o) + ,.prog_din(_i_sbox_x1y1ne__prog_dout) + ,.prog_dout(_i_sbox_x1y1se__prog_dout) + ,.prog_we_o(_i_sbox_x1y1se__prog_we_o) + ); + sbox_sw_N_ex_ne i_sbox_x1y1sw ( + .bi_x0v1w_L1(_i_sbox_x1y1se__so_x0v1w_L1) + ,.so_u1y0n_L1(_i_sbox_x1y1sw__so_u1y0n_L1) + ,.cu_u1y0n_L1(_i_tile_x0y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y0nw__prog_we_o) + ,.prog_din(_i_sbox_x1y0nw__prog_dout) + ,.prog_dout(_i_sbox_x1y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y1sw__prog_we_o) + ); + tile_clb i_tile_x1y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y2sw__prog_we_o) + ,.prog_din(_i_sbox_x1y2sw__prog_dout) + ,.prog_dout(_i_tile_x1y2__prog_dout) + ,.prog_we_o(_i_tile_x1y2__prog_we_o) + ); + sbox_ne_S i_sbox_x1y2ne ( + .bi_x0y0e_L1(_i_sbox_x1y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y3se__prog_we_o) + ,.prog_din(_i_sbox_x1y3se__prog_dout) + ,.prog_dout(_i_sbox_x1y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y2ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y2nw ( + .bi_u1y0n_L1(_i_sbox_x1y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y2__prog_we_o) + ,.prog_din(_i_tile_x1y2__prog_dout) + ,.prog_dout(_i_sbox_x1y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y2se ( + .bi_x0v1n_L1(_i_sbox_x2y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y2ne__prog_we_o) + ,.prog_din(_i_sbox_x1y2ne__prog_dout) + ,.prog_dout(_i_sbox_x1y2se__prog_dout) + ,.prog_we_o(_i_sbox_x1y2se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y2sw ( + .bi_u1v1n_L1(_i_sbox_x1y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y2sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y1nw__prog_we_o) + ,.prog_din(_i_sbox_x1y1nw__prog_dout) + ,.prog_dout(_i_sbox_x1y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y2sw__prog_we_o) + ); + tile_clb i_tile_x1y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y3sw__prog_we_o) + ,.prog_din(_i_sbox_x1y3sw__prog_dout) + ,.prog_dout(_i_tile_x1y3__prog_dout) + ,.prog_we_o(_i_tile_x1y3__prog_we_o) + ); + sbox_ne_S i_sbox_x1y3ne ( + .bi_x0y0e_L1(_i_sbox_x1y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y4se__prog_we_o) + ,.prog_din(_i_sbox_x1y4se__prog_dout) + ,.prog_dout(_i_sbox_x1y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y3ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y3nw ( + .bi_u1y0n_L1(_i_sbox_x1y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y3__prog_we_o) + ,.prog_din(_i_tile_x1y3__prog_dout) + ,.prog_dout(_i_sbox_x1y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y3se ( + .bi_x0v1n_L1(_i_sbox_x2y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y3ne__prog_we_o) + ,.prog_din(_i_sbox_x1y3ne__prog_dout) + ,.prog_dout(_i_sbox_x1y3se__prog_dout) + ,.prog_we_o(_i_sbox_x1y3se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y3sw ( + .bi_u1v1n_L1(_i_sbox_x1y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y3sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y2nw__prog_we_o) + ,.prog_din(_i_sbox_x1y2nw__prog_dout) + ,.prog_dout(_i_sbox_x1y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y3sw__prog_we_o) + ); + tile_clb i_tile_x1y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y4sw__prog_we_o) + ,.prog_din(_i_sbox_x1y4sw__prog_dout) + ,.prog_dout(_i_tile_x1y4__prog_dout) + ,.prog_we_o(_i_tile_x1y4__prog_we_o) + ); + sbox_ne_S i_sbox_x1y4ne ( + .bi_x0y0e_L1(_i_sbox_x1y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y5se__prog_we_o) + ,.prog_din(_i_sbox_x1y5se__prog_dout) + ,.prog_dout(_i_sbox_x1y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y4ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y4nw ( + .bi_u1y0n_L1(_i_sbox_x1y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y4__prog_we_o) + ,.prog_din(_i_tile_x1y4__prog_dout) + ,.prog_dout(_i_sbox_x1y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y4se ( + .bi_x0v1n_L1(_i_sbox_x2y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y4ne__prog_we_o) + ,.prog_din(_i_sbox_x1y4ne__prog_dout) + ,.prog_dout(_i_sbox_x1y4se__prog_dout) + ,.prog_we_o(_i_sbox_x1y4se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y4sw ( + .bi_u1v1n_L1(_i_sbox_x1y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y4sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y3nw__prog_we_o) + ,.prog_din(_i_sbox_x1y3nw__prog_dout) + ,.prog_dout(_i_sbox_x1y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y4sw__prog_we_o) + ); + tile_clb i_tile_x1y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y5sw__prog_we_o) + ,.prog_din(_i_sbox_x1y5sw__prog_dout) + ,.prog_dout(_i_tile_x1y5__prog_dout) + ,.prog_we_o(_i_tile_x1y5__prog_we_o) + ); + sbox_ne_S i_sbox_x1y5ne ( + .bi_x0y0e_L1(_i_sbox_x1y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y6se__prog_we_o) + ,.prog_din(_i_sbox_x1y6se__prog_dout) + ,.prog_dout(_i_sbox_x1y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y5ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y5nw ( + .bi_u1y0n_L1(_i_sbox_x1y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y5__prog_we_o) + ,.prog_din(_i_tile_x1y5__prog_dout) + ,.prog_dout(_i_sbox_x1y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y5se ( + .bi_x0v1n_L1(_i_sbox_x2y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y5ne__prog_we_o) + ,.prog_din(_i_sbox_x1y5ne__prog_dout) + ,.prog_dout(_i_sbox_x1y5se__prog_dout) + ,.prog_we_o(_i_sbox_x1y5se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y5sw ( + .bi_u1v1n_L1(_i_sbox_x1y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y5sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y4nw__prog_we_o) + ,.prog_din(_i_sbox_x1y4nw__prog_dout) + ,.prog_dout(_i_sbox_x1y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y5sw__prog_we_o) + ); + tile_clb i_tile_x1y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y6sw__prog_we_o) + ,.prog_din(_i_sbox_x1y6sw__prog_dout) + ,.prog_dout(_i_tile_x1y6__prog_dout) + ,.prog_we_o(_i_tile_x1y6__prog_we_o) + ); + sbox_ne_S i_sbox_x1y6ne ( + .bi_x0y0e_L1(_i_sbox_x1y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y7se__prog_we_o) + ,.prog_din(_i_sbox_x1y7se__prog_dout) + ,.prog_dout(_i_sbox_x1y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y6ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y6nw ( + .bi_u1y0n_L1(_i_sbox_x1y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y6__prog_we_o) + ,.prog_din(_i_tile_x1y6__prog_dout) + ,.prog_dout(_i_sbox_x1y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y6se ( + .bi_x0v1n_L1(_i_sbox_x2y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y6ne__prog_we_o) + ,.prog_din(_i_sbox_x1y6ne__prog_dout) + ,.prog_dout(_i_sbox_x1y6se__prog_dout) + ,.prog_we_o(_i_sbox_x1y6se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y6sw ( + .bi_u1v1n_L1(_i_sbox_x1y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y6sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y5nw__prog_we_o) + ,.prog_din(_i_sbox_x1y5nw__prog_dout) + ,.prog_dout(_i_sbox_x1y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y6sw__prog_we_o) + ); + tile_clb i_tile_x1y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y7sw__prog_we_o) + ,.prog_din(_i_sbox_x1y7sw__prog_dout) + ,.prog_dout(_i_tile_x1y7__prog_dout) + ,.prog_we_o(_i_tile_x1y7__prog_we_o) + ); + sbox_ne_S i_sbox_x1y7ne ( + .bi_x0y0e_L1(_i_sbox_x1y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x1y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y8se__prog_we_o) + ,.prog_din(_i_sbox_x1y8se__prog_dout) + ,.prog_dout(_i_sbox_x1y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y7ne__prog_we_o) + ); + sbox_nw_E_ex_e i_sbox_x1y7nw ( + .bi_u1y0n_L1(_i_sbox_x1y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x0y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y7__prog_we_o) + ,.prog_din(_i_tile_x1y7__prog_dout) + ,.prog_dout(_i_sbox_x1y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y7se ( + .bi_x0v1n_L1(_i_sbox_x2y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y7ne__prog_we_o) + ,.prog_din(_i_sbox_x1y7ne__prog_dout) + ,.prog_dout(_i_sbox_x1y7se__prog_dout) + ,.prog_we_o(_i_sbox_x1y7se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y7sw ( + .bi_u1v1n_L1(_i_sbox_x1y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y7sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y6nw__prog_we_o) + ,.prog_din(_i_sbox_x1y6nw__prog_dout) + ,.prog_dout(_i_sbox_x1y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y7sw__prog_we_o) + ); + tile_clb i_tile_x1y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x1y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x1y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x1y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x0y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y8sw__prog_we_o) + ,.prog_din(_i_sbox_x1y8sw__prog_dout) + ,.prog_dout(_i_tile_x1y8__prog_dout) + ,.prog_we_o(_i_tile_x1y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x1y8ne ( + .bi_x0y0e_L1(_i_sbox_x1y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x1y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x2y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x1y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y9se__prog_we_o) + ,.prog_din(_i_sbox_x1y9se__prog_dout) + ,.prog_dout(_i_sbox_x1y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x1y8ne__prog_we_o) + ); + sbox_nw_E_ex_es i_sbox_x1y8nw ( + .bi_u1y0n_L1(_i_sbox_x1y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x1y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x1y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y8__prog_we_o) + ,.prog_din(_i_tile_x1y8__prog_dout) + ,.prog_dout(_i_sbox_x1y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x1y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x1y8se ( + .bi_x0v1n_L1(_i_sbox_x2y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x1y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y8ne__prog_we_o) + ,.prog_din(_i_sbox_x1y8ne__prog_dout) + ,.prog_dout(_i_sbox_x1y8se__prog_dout) + ,.prog_we_o(_i_sbox_x1y8se__prog_we_o) + ); + sbox_sw_N_ex_e i_sbox_x1y8sw ( + .bi_u1v1n_L1(_i_sbox_x1y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x1y8sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x0y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y7nw__prog_we_o) + ,.prog_din(_i_sbox_x1y7nw__prog_dout) + ,.prog_dout(_i_sbox_x1y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x1y8sw__prog_we_o) + ); + t_io_n i_tile_x1y9 ( + .bi_x0v1e_L1(_i_sbox_x1y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x1y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x1y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x1y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x1y9_0) + ,.opin_x0y0_0(_i_tile_x1y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x1y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x1y9_1) + ,.opin_x0y0_1(_i_tile_x1y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x1y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x1y8nw__prog_we_o) + ,.prog_din(_i_sbox_x1y8nw__prog_dout) + ,.prog_dout(_i_tile_x1y9__prog_dout) + ,.prog_we_o(_i_tile_x1y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x1y9se ( + .bi_x0v1n_L1(_i_sbox_x2y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x1y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x2y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x1y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x1y9__prog_we_o) + ,.prog_din(_i_tile_x1y9__prog_dout) + ,.prog_dout(_i_sbox_x1y9se__prog_dout) + ,.prog_we_o(_i_sbox_x1y9se__prog_we_o) + ); + sbox_sw_s_ex_es i_sbox_x1y9sw ( + .bi_x0v1w_L1(_i_sbox_x1y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x2y0ne ( + .bi_x0y0e_L1(_i_sbox_x2y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x2y0nw ( + .bi_u1y0e_L1(_i_sbox_x1y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x2y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x1y1se__prog_we_o) + ,.prog_din(_i_sbox_x1y1se__prog_dout) + ,.prog_dout(_i_sbox_x2y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y0nw__prog_we_o) + ); + tile_clb i_tile_x2y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y1sw__prog_we_o) + ,.prog_din(_i_sbox_x2y1sw__prog_dout) + ,.prog_dout(_i_tile_x2y1__prog_dout) + ,.prog_we_o(_i_tile_x2y1__prog_we_o) + ); + sbox_ne_S i_sbox_x2y1ne ( + .bi_x0y0e_L1(_i_sbox_x2y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y2se__prog_we_o) + ,.prog_din(_i_sbox_x2y2se__prog_dout) + ,.prog_dout(_i_sbox_x2y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y1nw ( + .bi_u1y0n_L1(_i_sbox_x2y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y1__prog_we_o) + ,.prog_din(_i_tile_x2y1__prog_dout) + ,.prog_dout(_i_sbox_x2y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x2y1se ( + .bi_x0y0s_L1(_i_sbox_x2y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x2y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y1ne__prog_we_o) + ,.prog_din(_i_sbox_x2y1ne__prog_dout) + ,.prog_dout(_i_sbox_x2y1se__prog_dout) + ,.prog_we_o(_i_sbox_x2y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x2y1sw ( + .bi_u1v1e_L1(_i_sbox_x1y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x2y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y0nw__prog_we_o) + ,.prog_din(_i_sbox_x2y0nw__prog_dout) + ,.prog_dout(_i_sbox_x2y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y1sw__prog_we_o) + ); + tile_clb i_tile_x2y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y2sw__prog_we_o) + ,.prog_din(_i_sbox_x2y2sw__prog_dout) + ,.prog_dout(_i_tile_x2y2__prog_dout) + ,.prog_we_o(_i_tile_x2y2__prog_we_o) + ); + sbox_ne_S i_sbox_x2y2ne ( + .bi_x0y0e_L1(_i_sbox_x2y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y3se__prog_we_o) + ,.prog_din(_i_sbox_x2y3se__prog_dout) + ,.prog_dout(_i_sbox_x2y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y2nw ( + .bi_u1y0n_L1(_i_sbox_x2y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y2__prog_we_o) + ,.prog_din(_i_tile_x2y2__prog_dout) + ,.prog_dout(_i_sbox_x2y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y2se ( + .bi_x0v1n_L1(_i_sbox_x3y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y2ne__prog_we_o) + ,.prog_din(_i_sbox_x2y2ne__prog_dout) + ,.prog_dout(_i_sbox_x2y2se__prog_dout) + ,.prog_we_o(_i_sbox_x2y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y2sw ( + .bi_u1v1n_L1(_i_sbox_x2y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y1nw__prog_we_o) + ,.prog_din(_i_sbox_x2y1nw__prog_dout) + ,.prog_dout(_i_sbox_x2y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y2sw__prog_we_o) + ); + tile_clb i_tile_x2y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y3sw__prog_we_o) + ,.prog_din(_i_sbox_x2y3sw__prog_dout) + ,.prog_dout(_i_tile_x2y3__prog_dout) + ,.prog_we_o(_i_tile_x2y3__prog_we_o) + ); + sbox_ne_S i_sbox_x2y3ne ( + .bi_x0y0e_L1(_i_sbox_x2y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y4se__prog_we_o) + ,.prog_din(_i_sbox_x2y4se__prog_dout) + ,.prog_dout(_i_sbox_x2y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y3nw ( + .bi_u1y0n_L1(_i_sbox_x2y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y3__prog_we_o) + ,.prog_din(_i_tile_x2y3__prog_dout) + ,.prog_dout(_i_sbox_x2y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y3se ( + .bi_x0v1n_L1(_i_sbox_x3y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y3ne__prog_we_o) + ,.prog_din(_i_sbox_x2y3ne__prog_dout) + ,.prog_dout(_i_sbox_x2y3se__prog_dout) + ,.prog_we_o(_i_sbox_x2y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y3sw ( + .bi_u1v1n_L1(_i_sbox_x2y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y2nw__prog_we_o) + ,.prog_din(_i_sbox_x2y2nw__prog_dout) + ,.prog_dout(_i_sbox_x2y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y3sw__prog_we_o) + ); + tile_clb i_tile_x2y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y4sw__prog_we_o) + ,.prog_din(_i_sbox_x2y4sw__prog_dout) + ,.prog_dout(_i_tile_x2y4__prog_dout) + ,.prog_we_o(_i_tile_x2y4__prog_we_o) + ); + sbox_ne_S i_sbox_x2y4ne ( + .bi_x0y0e_L1(_i_sbox_x2y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y5se__prog_we_o) + ,.prog_din(_i_sbox_x2y5se__prog_dout) + ,.prog_dout(_i_sbox_x2y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y4nw ( + .bi_u1y0n_L1(_i_sbox_x2y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y4__prog_we_o) + ,.prog_din(_i_tile_x2y4__prog_dout) + ,.prog_dout(_i_sbox_x2y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y4se ( + .bi_x0v1n_L1(_i_sbox_x3y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y4ne__prog_we_o) + ,.prog_din(_i_sbox_x2y4ne__prog_dout) + ,.prog_dout(_i_sbox_x2y4se__prog_dout) + ,.prog_we_o(_i_sbox_x2y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y4sw ( + .bi_u1v1n_L1(_i_sbox_x2y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y3nw__prog_we_o) + ,.prog_din(_i_sbox_x2y3nw__prog_dout) + ,.prog_dout(_i_sbox_x2y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y4sw__prog_we_o) + ); + tile_clb i_tile_x2y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y5sw__prog_we_o) + ,.prog_din(_i_sbox_x2y5sw__prog_dout) + ,.prog_dout(_i_tile_x2y5__prog_dout) + ,.prog_we_o(_i_tile_x2y5__prog_we_o) + ); + sbox_ne_S i_sbox_x2y5ne ( + .bi_x0y0e_L1(_i_sbox_x2y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y6se__prog_we_o) + ,.prog_din(_i_sbox_x2y6se__prog_dout) + ,.prog_dout(_i_sbox_x2y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y5nw ( + .bi_u1y0n_L1(_i_sbox_x2y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y5__prog_we_o) + ,.prog_din(_i_tile_x2y5__prog_dout) + ,.prog_dout(_i_sbox_x2y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y5se ( + .bi_x0v1n_L1(_i_sbox_x3y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y5ne__prog_we_o) + ,.prog_din(_i_sbox_x2y5ne__prog_dout) + ,.prog_dout(_i_sbox_x2y5se__prog_dout) + ,.prog_we_o(_i_sbox_x2y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y5sw ( + .bi_u1v1n_L1(_i_sbox_x2y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y4nw__prog_we_o) + ,.prog_din(_i_sbox_x2y4nw__prog_dout) + ,.prog_dout(_i_sbox_x2y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y5sw__prog_we_o) + ); + tile_clb i_tile_x2y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y6sw__prog_we_o) + ,.prog_din(_i_sbox_x2y6sw__prog_dout) + ,.prog_dout(_i_tile_x2y6__prog_dout) + ,.prog_we_o(_i_tile_x2y6__prog_we_o) + ); + sbox_ne_S i_sbox_x2y6ne ( + .bi_x0y0e_L1(_i_sbox_x2y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y7se__prog_we_o) + ,.prog_din(_i_sbox_x2y7se__prog_dout) + ,.prog_dout(_i_sbox_x2y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y6nw ( + .bi_u1y0n_L1(_i_sbox_x2y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y6__prog_we_o) + ,.prog_din(_i_tile_x2y6__prog_dout) + ,.prog_dout(_i_sbox_x2y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y6se ( + .bi_x0v1n_L1(_i_sbox_x3y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y6ne__prog_we_o) + ,.prog_din(_i_sbox_x2y6ne__prog_dout) + ,.prog_dout(_i_sbox_x2y6se__prog_dout) + ,.prog_we_o(_i_sbox_x2y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y6sw ( + .bi_u1v1n_L1(_i_sbox_x2y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y5nw__prog_we_o) + ,.prog_din(_i_sbox_x2y5nw__prog_dout) + ,.prog_dout(_i_sbox_x2y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y6sw__prog_we_o) + ); + tile_clb i_tile_x2y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y7sw__prog_we_o) + ,.prog_din(_i_sbox_x2y7sw__prog_dout) + ,.prog_dout(_i_tile_x2y7__prog_dout) + ,.prog_we_o(_i_tile_x2y7__prog_we_o) + ); + sbox_ne_S i_sbox_x2y7ne ( + .bi_x0y0e_L1(_i_sbox_x2y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x2y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y8se__prog_we_o) + ,.prog_din(_i_sbox_x2y8se__prog_dout) + ,.prog_dout(_i_sbox_x2y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x2y7nw ( + .bi_u1y0n_L1(_i_sbox_x2y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x1y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y7__prog_we_o) + ,.prog_din(_i_tile_x2y7__prog_dout) + ,.prog_dout(_i_sbox_x2y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y7se ( + .bi_x0v1n_L1(_i_sbox_x3y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y7ne__prog_we_o) + ,.prog_din(_i_sbox_x2y7ne__prog_dout) + ,.prog_dout(_i_sbox_x2y7se__prog_dout) + ,.prog_we_o(_i_sbox_x2y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y7sw ( + .bi_u1v1n_L1(_i_sbox_x2y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y6nw__prog_we_o) + ,.prog_din(_i_sbox_x2y6nw__prog_dout) + ,.prog_dout(_i_sbox_x2y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y7sw__prog_we_o) + ); + tile_clb i_tile_x2y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x2y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x2y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x2y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x1y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y8sw__prog_we_o) + ,.prog_din(_i_sbox_x2y8sw__prog_dout) + ,.prog_dout(_i_tile_x2y8__prog_dout) + ,.prog_we_o(_i_tile_x2y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x2y8ne ( + .bi_x0y0e_L1(_i_sbox_x2y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x2y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x3y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x2y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y9se__prog_we_o) + ,.prog_din(_i_sbox_x2y9se__prog_dout) + ,.prog_dout(_i_sbox_x2y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x2y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x2y8nw ( + .bi_u1y0n_L1(_i_sbox_x2y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x2y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x1y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x2y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y8__prog_we_o) + ,.prog_din(_i_tile_x2y8__prog_dout) + ,.prog_dout(_i_sbox_x2y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x2y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x2y8se ( + .bi_x0v1n_L1(_i_sbox_x3y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x2y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y8ne__prog_we_o) + ,.prog_din(_i_sbox_x2y8ne__prog_dout) + ,.prog_dout(_i_sbox_x2y8se__prog_dout) + ,.prog_we_o(_i_sbox_x2y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x2y8sw ( + .bi_u1v1n_L1(_i_sbox_x2y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x2y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x1y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x1y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y7nw__prog_we_o) + ,.prog_din(_i_sbox_x2y7nw__prog_dout) + ,.prog_dout(_i_sbox_x2y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x2y8sw__prog_we_o) + ); + t_io_n i_tile_x2y9 ( + .bi_x0v1e_L1(_i_sbox_x2y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x2y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x2y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x2y9_0) + ,.opin_x0y0_0(_i_tile_x2y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x2y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x2y9_1) + ,.opin_x0y0_1(_i_tile_x2y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x2y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x2y8nw__prog_we_o) + ,.prog_din(_i_sbox_x2y8nw__prog_dout) + ,.prog_dout(_i_tile_x2y9__prog_dout) + ,.prog_we_o(_i_tile_x2y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x2y9se ( + .bi_x0v1n_L1(_i_sbox_x3y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x2y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x3y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x2y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x2y9__prog_we_o) + ,.prog_din(_i_tile_x2y9__prog_dout) + ,.prog_dout(_i_sbox_x2y9se__prog_dout) + ,.prog_we_o(_i_sbox_x2y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x2y9sw ( + .bi_u1v1e_L1(_i_sbox_x1y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x2y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x3y0ne ( + .bi_x0y0e_L1(_i_sbox_x3y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x3y0nw ( + .bi_u1y0e_L1(_i_sbox_x2y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x3y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x2y1se__prog_we_o) + ,.prog_din(_i_sbox_x2y1se__prog_dout) + ,.prog_dout(_i_sbox_x3y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y0nw__prog_we_o) + ); + tile_clb i_tile_x3y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y1sw__prog_we_o) + ,.prog_din(_i_sbox_x3y1sw__prog_dout) + ,.prog_dout(_i_tile_x3y1__prog_dout) + ,.prog_we_o(_i_tile_x3y1__prog_we_o) + ); + sbox_ne_S i_sbox_x3y1ne ( + .bi_x0y0e_L1(_i_sbox_x3y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y2se__prog_we_o) + ,.prog_din(_i_sbox_x3y2se__prog_dout) + ,.prog_dout(_i_sbox_x3y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y1nw ( + .bi_u1y0n_L1(_i_sbox_x3y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y1__prog_we_o) + ,.prog_din(_i_tile_x3y1__prog_dout) + ,.prog_dout(_i_sbox_x3y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x3y1se ( + .bi_x0y0s_L1(_i_sbox_x3y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x3y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y1ne__prog_we_o) + ,.prog_din(_i_sbox_x3y1ne__prog_dout) + ,.prog_dout(_i_sbox_x3y1se__prog_dout) + ,.prog_we_o(_i_sbox_x3y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x3y1sw ( + .bi_u1v1e_L1(_i_sbox_x2y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x3y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y0nw__prog_we_o) + ,.prog_din(_i_sbox_x3y0nw__prog_dout) + ,.prog_dout(_i_sbox_x3y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y1sw__prog_we_o) + ); + tile_clb i_tile_x3y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y2sw__prog_we_o) + ,.prog_din(_i_sbox_x3y2sw__prog_dout) + ,.prog_dout(_i_tile_x3y2__prog_dout) + ,.prog_we_o(_i_tile_x3y2__prog_we_o) + ); + sbox_ne_S i_sbox_x3y2ne ( + .bi_x0y0e_L1(_i_sbox_x3y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y3se__prog_we_o) + ,.prog_din(_i_sbox_x3y3se__prog_dout) + ,.prog_dout(_i_sbox_x3y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y2nw ( + .bi_u1y0n_L1(_i_sbox_x3y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y2__prog_we_o) + ,.prog_din(_i_tile_x3y2__prog_dout) + ,.prog_dout(_i_sbox_x3y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y2se ( + .bi_x0v1n_L1(_i_sbox_x4y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y2ne__prog_we_o) + ,.prog_din(_i_sbox_x3y2ne__prog_dout) + ,.prog_dout(_i_sbox_x3y2se__prog_dout) + ,.prog_we_o(_i_sbox_x3y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y2sw ( + .bi_u1v1n_L1(_i_sbox_x3y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y1nw__prog_we_o) + ,.prog_din(_i_sbox_x3y1nw__prog_dout) + ,.prog_dout(_i_sbox_x3y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y2sw__prog_we_o) + ); + tile_clb i_tile_x3y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y3sw__prog_we_o) + ,.prog_din(_i_sbox_x3y3sw__prog_dout) + ,.prog_dout(_i_tile_x3y3__prog_dout) + ,.prog_we_o(_i_tile_x3y3__prog_we_o) + ); + sbox_ne_S i_sbox_x3y3ne ( + .bi_x0y0e_L1(_i_sbox_x3y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y4se__prog_we_o) + ,.prog_din(_i_sbox_x3y4se__prog_dout) + ,.prog_dout(_i_sbox_x3y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y3nw ( + .bi_u1y0n_L1(_i_sbox_x3y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y3__prog_we_o) + ,.prog_din(_i_tile_x3y3__prog_dout) + ,.prog_dout(_i_sbox_x3y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y3se ( + .bi_x0v1n_L1(_i_sbox_x4y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y3ne__prog_we_o) + ,.prog_din(_i_sbox_x3y3ne__prog_dout) + ,.prog_dout(_i_sbox_x3y3se__prog_dout) + ,.prog_we_o(_i_sbox_x3y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y3sw ( + .bi_u1v1n_L1(_i_sbox_x3y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y2nw__prog_we_o) + ,.prog_din(_i_sbox_x3y2nw__prog_dout) + ,.prog_dout(_i_sbox_x3y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y3sw__prog_we_o) + ); + tile_clb i_tile_x3y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y4sw__prog_we_o) + ,.prog_din(_i_sbox_x3y4sw__prog_dout) + ,.prog_dout(_i_tile_x3y4__prog_dout) + ,.prog_we_o(_i_tile_x3y4__prog_we_o) + ); + sbox_ne_S i_sbox_x3y4ne ( + .bi_x0y0e_L1(_i_sbox_x3y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y5se__prog_we_o) + ,.prog_din(_i_sbox_x3y5se__prog_dout) + ,.prog_dout(_i_sbox_x3y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y4nw ( + .bi_u1y0n_L1(_i_sbox_x3y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y4__prog_we_o) + ,.prog_din(_i_tile_x3y4__prog_dout) + ,.prog_dout(_i_sbox_x3y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y4se ( + .bi_x0v1n_L1(_i_sbox_x4y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y4ne__prog_we_o) + ,.prog_din(_i_sbox_x3y4ne__prog_dout) + ,.prog_dout(_i_sbox_x3y4se__prog_dout) + ,.prog_we_o(_i_sbox_x3y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y4sw ( + .bi_u1v1n_L1(_i_sbox_x3y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y3nw__prog_we_o) + ,.prog_din(_i_sbox_x3y3nw__prog_dout) + ,.prog_dout(_i_sbox_x3y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y4sw__prog_we_o) + ); + tile_clb i_tile_x3y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y5sw__prog_we_o) + ,.prog_din(_i_sbox_x3y5sw__prog_dout) + ,.prog_dout(_i_tile_x3y5__prog_dout) + ,.prog_we_o(_i_tile_x3y5__prog_we_o) + ); + sbox_ne_S i_sbox_x3y5ne ( + .bi_x0y0e_L1(_i_sbox_x3y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y6se__prog_we_o) + ,.prog_din(_i_sbox_x3y6se__prog_dout) + ,.prog_dout(_i_sbox_x3y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y5nw ( + .bi_u1y0n_L1(_i_sbox_x3y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y5__prog_we_o) + ,.prog_din(_i_tile_x3y5__prog_dout) + ,.prog_dout(_i_sbox_x3y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y5se ( + .bi_x0v1n_L1(_i_sbox_x4y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y5ne__prog_we_o) + ,.prog_din(_i_sbox_x3y5ne__prog_dout) + ,.prog_dout(_i_sbox_x3y5se__prog_dout) + ,.prog_we_o(_i_sbox_x3y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y5sw ( + .bi_u1v1n_L1(_i_sbox_x3y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y4nw__prog_we_o) + ,.prog_din(_i_sbox_x3y4nw__prog_dout) + ,.prog_dout(_i_sbox_x3y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y5sw__prog_we_o) + ); + tile_clb i_tile_x3y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y6sw__prog_we_o) + ,.prog_din(_i_sbox_x3y6sw__prog_dout) + ,.prog_dout(_i_tile_x3y6__prog_dout) + ,.prog_we_o(_i_tile_x3y6__prog_we_o) + ); + sbox_ne_S i_sbox_x3y6ne ( + .bi_x0y0e_L1(_i_sbox_x3y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y7se__prog_we_o) + ,.prog_din(_i_sbox_x3y7se__prog_dout) + ,.prog_dout(_i_sbox_x3y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y6nw ( + .bi_u1y0n_L1(_i_sbox_x3y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y6__prog_we_o) + ,.prog_din(_i_tile_x3y6__prog_dout) + ,.prog_dout(_i_sbox_x3y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y6se ( + .bi_x0v1n_L1(_i_sbox_x4y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y6ne__prog_we_o) + ,.prog_din(_i_sbox_x3y6ne__prog_dout) + ,.prog_dout(_i_sbox_x3y6se__prog_dout) + ,.prog_we_o(_i_sbox_x3y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y6sw ( + .bi_u1v1n_L1(_i_sbox_x3y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y5nw__prog_we_o) + ,.prog_din(_i_sbox_x3y5nw__prog_dout) + ,.prog_dout(_i_sbox_x3y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y6sw__prog_we_o) + ); + tile_clb i_tile_x3y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y7sw__prog_we_o) + ,.prog_din(_i_sbox_x3y7sw__prog_dout) + ,.prog_dout(_i_tile_x3y7__prog_dout) + ,.prog_we_o(_i_tile_x3y7__prog_we_o) + ); + sbox_ne_S i_sbox_x3y7ne ( + .bi_x0y0e_L1(_i_sbox_x3y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x3y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y8se__prog_we_o) + ,.prog_din(_i_sbox_x3y8se__prog_dout) + ,.prog_dout(_i_sbox_x3y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x3y7nw ( + .bi_u1y0n_L1(_i_sbox_x3y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x2y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y7__prog_we_o) + ,.prog_din(_i_tile_x3y7__prog_dout) + ,.prog_dout(_i_sbox_x3y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y7se ( + .bi_x0v1n_L1(_i_sbox_x4y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y7ne__prog_we_o) + ,.prog_din(_i_sbox_x3y7ne__prog_dout) + ,.prog_dout(_i_sbox_x3y7se__prog_dout) + ,.prog_we_o(_i_sbox_x3y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y7sw ( + .bi_u1v1n_L1(_i_sbox_x3y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y6nw__prog_we_o) + ,.prog_din(_i_sbox_x3y6nw__prog_dout) + ,.prog_dout(_i_sbox_x3y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y7sw__prog_we_o) + ); + tile_clb i_tile_x3y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x3y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x3y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x3y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x2y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y8sw__prog_we_o) + ,.prog_din(_i_sbox_x3y8sw__prog_dout) + ,.prog_dout(_i_tile_x3y8__prog_dout) + ,.prog_we_o(_i_tile_x3y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x3y8ne ( + .bi_x0y0e_L1(_i_sbox_x3y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x3y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x4y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x3y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y9se__prog_we_o) + ,.prog_din(_i_sbox_x3y9se__prog_dout) + ,.prog_dout(_i_sbox_x3y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x3y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x3y8nw ( + .bi_u1y0n_L1(_i_sbox_x3y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x3y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x2y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x3y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y8__prog_we_o) + ,.prog_din(_i_tile_x3y8__prog_dout) + ,.prog_dout(_i_sbox_x3y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x3y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x3y8se ( + .bi_x0v1n_L1(_i_sbox_x4y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x3y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y8ne__prog_we_o) + ,.prog_din(_i_sbox_x3y8ne__prog_dout) + ,.prog_dout(_i_sbox_x3y8se__prog_dout) + ,.prog_we_o(_i_sbox_x3y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x3y8sw ( + .bi_u1v1n_L1(_i_sbox_x3y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x3y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x2y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x2y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y7nw__prog_we_o) + ,.prog_din(_i_sbox_x3y7nw__prog_dout) + ,.prog_dout(_i_sbox_x3y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x3y8sw__prog_we_o) + ); + t_io_n i_tile_x3y9 ( + .bi_x0v1e_L1(_i_sbox_x3y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x3y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x3y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x3y9_0) + ,.opin_x0y0_0(_i_tile_x3y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x3y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x3y9_1) + ,.opin_x0y0_1(_i_tile_x3y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x3y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x3y8nw__prog_we_o) + ,.prog_din(_i_sbox_x3y8nw__prog_dout) + ,.prog_dout(_i_tile_x3y9__prog_dout) + ,.prog_we_o(_i_tile_x3y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x3y9se ( + .bi_x0v1n_L1(_i_sbox_x4y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x3y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x4y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x3y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x3y9__prog_we_o) + ,.prog_din(_i_tile_x3y9__prog_dout) + ,.prog_dout(_i_sbox_x3y9se__prog_dout) + ,.prog_we_o(_i_sbox_x3y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x3y9sw ( + .bi_u1v1e_L1(_i_sbox_x2y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x3y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x4y0ne ( + .bi_x0y0e_L1(_i_sbox_x4y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x4y0nw ( + .bi_u1y0e_L1(_i_sbox_x3y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x4y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x3y1se__prog_we_o) + ,.prog_din(_i_sbox_x3y1se__prog_dout) + ,.prog_dout(_i_sbox_x4y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y0nw__prog_we_o) + ); + tile_clb i_tile_x4y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y1sw__prog_we_o) + ,.prog_din(_i_sbox_x4y1sw__prog_dout) + ,.prog_dout(_i_tile_x4y1__prog_dout) + ,.prog_we_o(_i_tile_x4y1__prog_we_o) + ); + sbox_ne_S i_sbox_x4y1ne ( + .bi_x0y0e_L1(_i_sbox_x4y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y2se__prog_we_o) + ,.prog_din(_i_sbox_x4y2se__prog_dout) + ,.prog_dout(_i_sbox_x4y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y1nw ( + .bi_u1y0n_L1(_i_sbox_x4y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y1__prog_we_o) + ,.prog_din(_i_tile_x4y1__prog_dout) + ,.prog_dout(_i_sbox_x4y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x4y1se ( + .bi_x0y0s_L1(_i_sbox_x4y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x4y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y1ne__prog_we_o) + ,.prog_din(_i_sbox_x4y1ne__prog_dout) + ,.prog_dout(_i_sbox_x4y1se__prog_dout) + ,.prog_we_o(_i_sbox_x4y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x4y1sw ( + .bi_u1v1e_L1(_i_sbox_x3y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x4y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y0nw__prog_we_o) + ,.prog_din(_i_sbox_x4y0nw__prog_dout) + ,.prog_dout(_i_sbox_x4y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y1sw__prog_we_o) + ); + tile_clb i_tile_x4y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y2sw__prog_we_o) + ,.prog_din(_i_sbox_x4y2sw__prog_dout) + ,.prog_dout(_i_tile_x4y2__prog_dout) + ,.prog_we_o(_i_tile_x4y2__prog_we_o) + ); + sbox_ne_S i_sbox_x4y2ne ( + .bi_x0y0e_L1(_i_sbox_x4y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y3se__prog_we_o) + ,.prog_din(_i_sbox_x4y3se__prog_dout) + ,.prog_dout(_i_sbox_x4y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y2nw ( + .bi_u1y0n_L1(_i_sbox_x4y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y2__prog_we_o) + ,.prog_din(_i_tile_x4y2__prog_dout) + ,.prog_dout(_i_sbox_x4y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y2se ( + .bi_x0v1n_L1(_i_sbox_x5y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y2ne__prog_we_o) + ,.prog_din(_i_sbox_x4y2ne__prog_dout) + ,.prog_dout(_i_sbox_x4y2se__prog_dout) + ,.prog_we_o(_i_sbox_x4y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y2sw ( + .bi_u1v1n_L1(_i_sbox_x4y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y1nw__prog_we_o) + ,.prog_din(_i_sbox_x4y1nw__prog_dout) + ,.prog_dout(_i_sbox_x4y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y2sw__prog_we_o) + ); + tile_clb i_tile_x4y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y3sw__prog_we_o) + ,.prog_din(_i_sbox_x4y3sw__prog_dout) + ,.prog_dout(_i_tile_x4y3__prog_dout) + ,.prog_we_o(_i_tile_x4y3__prog_we_o) + ); + sbox_ne_S i_sbox_x4y3ne ( + .bi_x0y0e_L1(_i_sbox_x4y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y4se__prog_we_o) + ,.prog_din(_i_sbox_x4y4se__prog_dout) + ,.prog_dout(_i_sbox_x4y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y3nw ( + .bi_u1y0n_L1(_i_sbox_x4y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y3__prog_we_o) + ,.prog_din(_i_tile_x4y3__prog_dout) + ,.prog_dout(_i_sbox_x4y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y3se ( + .bi_x0v1n_L1(_i_sbox_x5y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y3ne__prog_we_o) + ,.prog_din(_i_sbox_x4y3ne__prog_dout) + ,.prog_dout(_i_sbox_x4y3se__prog_dout) + ,.prog_we_o(_i_sbox_x4y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y3sw ( + .bi_u1v1n_L1(_i_sbox_x4y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y2nw__prog_we_o) + ,.prog_din(_i_sbox_x4y2nw__prog_dout) + ,.prog_dout(_i_sbox_x4y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y3sw__prog_we_o) + ); + tile_clb i_tile_x4y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y4sw__prog_we_o) + ,.prog_din(_i_sbox_x4y4sw__prog_dout) + ,.prog_dout(_i_tile_x4y4__prog_dout) + ,.prog_we_o(_i_tile_x4y4__prog_we_o) + ); + sbox_ne_S i_sbox_x4y4ne ( + .bi_x0y0e_L1(_i_sbox_x4y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y5se__prog_we_o) + ,.prog_din(_i_sbox_x4y5se__prog_dout) + ,.prog_dout(_i_sbox_x4y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y4nw ( + .bi_u1y0n_L1(_i_sbox_x4y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y4__prog_we_o) + ,.prog_din(_i_tile_x4y4__prog_dout) + ,.prog_dout(_i_sbox_x4y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y4se ( + .bi_x0v1n_L1(_i_sbox_x5y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y4ne__prog_we_o) + ,.prog_din(_i_sbox_x4y4ne__prog_dout) + ,.prog_dout(_i_sbox_x4y4se__prog_dout) + ,.prog_we_o(_i_sbox_x4y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y4sw ( + .bi_u1v1n_L1(_i_sbox_x4y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y3nw__prog_we_o) + ,.prog_din(_i_sbox_x4y3nw__prog_dout) + ,.prog_dout(_i_sbox_x4y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y4sw__prog_we_o) + ); + tile_clb i_tile_x4y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y5sw__prog_we_o) + ,.prog_din(_i_sbox_x4y5sw__prog_dout) + ,.prog_dout(_i_tile_x4y5__prog_dout) + ,.prog_we_o(_i_tile_x4y5__prog_we_o) + ); + sbox_ne_S i_sbox_x4y5ne ( + .bi_x0y0e_L1(_i_sbox_x4y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y6se__prog_we_o) + ,.prog_din(_i_sbox_x4y6se__prog_dout) + ,.prog_dout(_i_sbox_x4y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y5nw ( + .bi_u1y0n_L1(_i_sbox_x4y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y5__prog_we_o) + ,.prog_din(_i_tile_x4y5__prog_dout) + ,.prog_dout(_i_sbox_x4y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y5se ( + .bi_x0v1n_L1(_i_sbox_x5y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y5ne__prog_we_o) + ,.prog_din(_i_sbox_x4y5ne__prog_dout) + ,.prog_dout(_i_sbox_x4y5se__prog_dout) + ,.prog_we_o(_i_sbox_x4y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y5sw ( + .bi_u1v1n_L1(_i_sbox_x4y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y4nw__prog_we_o) + ,.prog_din(_i_sbox_x4y4nw__prog_dout) + ,.prog_dout(_i_sbox_x4y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y5sw__prog_we_o) + ); + tile_clb i_tile_x4y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y6sw__prog_we_o) + ,.prog_din(_i_sbox_x4y6sw__prog_dout) + ,.prog_dout(_i_tile_x4y6__prog_dout) + ,.prog_we_o(_i_tile_x4y6__prog_we_o) + ); + sbox_ne_S i_sbox_x4y6ne ( + .bi_x0y0e_L1(_i_sbox_x4y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y7se__prog_we_o) + ,.prog_din(_i_sbox_x4y7se__prog_dout) + ,.prog_dout(_i_sbox_x4y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y6nw ( + .bi_u1y0n_L1(_i_sbox_x4y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y6__prog_we_o) + ,.prog_din(_i_tile_x4y6__prog_dout) + ,.prog_dout(_i_sbox_x4y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y6se ( + .bi_x0v1n_L1(_i_sbox_x5y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y6ne__prog_we_o) + ,.prog_din(_i_sbox_x4y6ne__prog_dout) + ,.prog_dout(_i_sbox_x4y6se__prog_dout) + ,.prog_we_o(_i_sbox_x4y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y6sw ( + .bi_u1v1n_L1(_i_sbox_x4y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y5nw__prog_we_o) + ,.prog_din(_i_sbox_x4y5nw__prog_dout) + ,.prog_dout(_i_sbox_x4y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y6sw__prog_we_o) + ); + tile_clb i_tile_x4y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y7sw__prog_we_o) + ,.prog_din(_i_sbox_x4y7sw__prog_dout) + ,.prog_dout(_i_tile_x4y7__prog_dout) + ,.prog_we_o(_i_tile_x4y7__prog_we_o) + ); + sbox_ne_S i_sbox_x4y7ne ( + .bi_x0y0e_L1(_i_sbox_x4y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x4y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y8se__prog_we_o) + ,.prog_din(_i_sbox_x4y8se__prog_dout) + ,.prog_dout(_i_sbox_x4y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x4y7nw ( + .bi_u1y0n_L1(_i_sbox_x4y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x3y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y7__prog_we_o) + ,.prog_din(_i_tile_x4y7__prog_dout) + ,.prog_dout(_i_sbox_x4y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y7se ( + .bi_x0v1n_L1(_i_sbox_x5y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y7ne__prog_we_o) + ,.prog_din(_i_sbox_x4y7ne__prog_dout) + ,.prog_dout(_i_sbox_x4y7se__prog_dout) + ,.prog_we_o(_i_sbox_x4y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y7sw ( + .bi_u1v1n_L1(_i_sbox_x4y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y6nw__prog_we_o) + ,.prog_din(_i_sbox_x4y6nw__prog_dout) + ,.prog_dout(_i_sbox_x4y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y7sw__prog_we_o) + ); + tile_clb i_tile_x4y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x4y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x4y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x4y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x3y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y8sw__prog_we_o) + ,.prog_din(_i_sbox_x4y8sw__prog_dout) + ,.prog_dout(_i_tile_x4y8__prog_dout) + ,.prog_we_o(_i_tile_x4y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x4y8ne ( + .bi_x0y0e_L1(_i_sbox_x4y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x4y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x5y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x4y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y9se__prog_we_o) + ,.prog_din(_i_sbox_x4y9se__prog_dout) + ,.prog_dout(_i_sbox_x4y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x4y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x4y8nw ( + .bi_u1y0n_L1(_i_sbox_x4y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x4y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x3y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x4y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y8__prog_we_o) + ,.prog_din(_i_tile_x4y8__prog_dout) + ,.prog_dout(_i_sbox_x4y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x4y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x4y8se ( + .bi_x0v1n_L1(_i_sbox_x5y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x4y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y8ne__prog_we_o) + ,.prog_din(_i_sbox_x4y8ne__prog_dout) + ,.prog_dout(_i_sbox_x4y8se__prog_dout) + ,.prog_we_o(_i_sbox_x4y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x4y8sw ( + .bi_u1v1n_L1(_i_sbox_x4y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x4y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x3y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x3y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y7nw__prog_we_o) + ,.prog_din(_i_sbox_x4y7nw__prog_dout) + ,.prog_dout(_i_sbox_x4y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x4y8sw__prog_we_o) + ); + t_io_n i_tile_x4y9 ( + .bi_x0v1e_L1(_i_sbox_x4y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x4y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x4y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x4y9_0) + ,.opin_x0y0_0(_i_tile_x4y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x4y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x4y9_1) + ,.opin_x0y0_1(_i_tile_x4y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x4y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x4y8nw__prog_we_o) + ,.prog_din(_i_sbox_x4y8nw__prog_dout) + ,.prog_dout(_i_tile_x4y9__prog_dout) + ,.prog_we_o(_i_tile_x4y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x4y9se ( + .bi_x0v1n_L1(_i_sbox_x5y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x4y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x5y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x4y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x4y9__prog_we_o) + ,.prog_din(_i_tile_x4y9__prog_dout) + ,.prog_dout(_i_sbox_x4y9se__prog_dout) + ,.prog_we_o(_i_sbox_x4y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x4y9sw ( + .bi_u1v1e_L1(_i_sbox_x3y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x4y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x5y0ne ( + .bi_x0y0e_L1(_i_sbox_x5y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x5y0nw ( + .bi_u1y0e_L1(_i_sbox_x4y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x5y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x4y1se__prog_we_o) + ,.prog_din(_i_sbox_x4y1se__prog_dout) + ,.prog_dout(_i_sbox_x5y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y0nw__prog_we_o) + ); + tile_clb i_tile_x5y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y1sw__prog_we_o) + ,.prog_din(_i_sbox_x5y1sw__prog_dout) + ,.prog_dout(_i_tile_x5y1__prog_dout) + ,.prog_we_o(_i_tile_x5y1__prog_we_o) + ); + sbox_ne_S i_sbox_x5y1ne ( + .bi_x0y0e_L1(_i_sbox_x5y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y2se__prog_we_o) + ,.prog_din(_i_sbox_x5y2se__prog_dout) + ,.prog_dout(_i_sbox_x5y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y1nw ( + .bi_u1y0n_L1(_i_sbox_x5y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y1__prog_we_o) + ,.prog_din(_i_tile_x5y1__prog_dout) + ,.prog_dout(_i_sbox_x5y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x5y1se ( + .bi_x0y0s_L1(_i_sbox_x5y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x5y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y1ne__prog_we_o) + ,.prog_din(_i_sbox_x5y1ne__prog_dout) + ,.prog_dout(_i_sbox_x5y1se__prog_dout) + ,.prog_we_o(_i_sbox_x5y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x5y1sw ( + .bi_u1v1e_L1(_i_sbox_x4y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x5y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y0nw__prog_we_o) + ,.prog_din(_i_sbox_x5y0nw__prog_dout) + ,.prog_dout(_i_sbox_x5y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y1sw__prog_we_o) + ); + tile_clb i_tile_x5y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y2sw__prog_we_o) + ,.prog_din(_i_sbox_x5y2sw__prog_dout) + ,.prog_dout(_i_tile_x5y2__prog_dout) + ,.prog_we_o(_i_tile_x5y2__prog_we_o) + ); + sbox_ne_S i_sbox_x5y2ne ( + .bi_x0y0e_L1(_i_sbox_x5y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y3se__prog_we_o) + ,.prog_din(_i_sbox_x5y3se__prog_dout) + ,.prog_dout(_i_sbox_x5y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y2nw ( + .bi_u1y0n_L1(_i_sbox_x5y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y2__prog_we_o) + ,.prog_din(_i_tile_x5y2__prog_dout) + ,.prog_dout(_i_sbox_x5y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y2se ( + .bi_x0v1n_L1(_i_sbox_x6y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y2ne__prog_we_o) + ,.prog_din(_i_sbox_x5y2ne__prog_dout) + ,.prog_dout(_i_sbox_x5y2se__prog_dout) + ,.prog_we_o(_i_sbox_x5y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y2sw ( + .bi_u1v1n_L1(_i_sbox_x5y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y1nw__prog_we_o) + ,.prog_din(_i_sbox_x5y1nw__prog_dout) + ,.prog_dout(_i_sbox_x5y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y2sw__prog_we_o) + ); + tile_clb i_tile_x5y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y3sw__prog_we_o) + ,.prog_din(_i_sbox_x5y3sw__prog_dout) + ,.prog_dout(_i_tile_x5y3__prog_dout) + ,.prog_we_o(_i_tile_x5y3__prog_we_o) + ); + sbox_ne_S i_sbox_x5y3ne ( + .bi_x0y0e_L1(_i_sbox_x5y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y4se__prog_we_o) + ,.prog_din(_i_sbox_x5y4se__prog_dout) + ,.prog_dout(_i_sbox_x5y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y3nw ( + .bi_u1y0n_L1(_i_sbox_x5y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y3__prog_we_o) + ,.prog_din(_i_tile_x5y3__prog_dout) + ,.prog_dout(_i_sbox_x5y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y3se ( + .bi_x0v1n_L1(_i_sbox_x6y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y3ne__prog_we_o) + ,.prog_din(_i_sbox_x5y3ne__prog_dout) + ,.prog_dout(_i_sbox_x5y3se__prog_dout) + ,.prog_we_o(_i_sbox_x5y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y3sw ( + .bi_u1v1n_L1(_i_sbox_x5y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y2nw__prog_we_o) + ,.prog_din(_i_sbox_x5y2nw__prog_dout) + ,.prog_dout(_i_sbox_x5y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y3sw__prog_we_o) + ); + tile_clb i_tile_x5y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y4sw__prog_we_o) + ,.prog_din(_i_sbox_x5y4sw__prog_dout) + ,.prog_dout(_i_tile_x5y4__prog_dout) + ,.prog_we_o(_i_tile_x5y4__prog_we_o) + ); + sbox_ne_S i_sbox_x5y4ne ( + .bi_x0y0e_L1(_i_sbox_x5y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y5se__prog_we_o) + ,.prog_din(_i_sbox_x5y5se__prog_dout) + ,.prog_dout(_i_sbox_x5y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y4nw ( + .bi_u1y0n_L1(_i_sbox_x5y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y4__prog_we_o) + ,.prog_din(_i_tile_x5y4__prog_dout) + ,.prog_dout(_i_sbox_x5y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y4se ( + .bi_x0v1n_L1(_i_sbox_x6y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y4ne__prog_we_o) + ,.prog_din(_i_sbox_x5y4ne__prog_dout) + ,.prog_dout(_i_sbox_x5y4se__prog_dout) + ,.prog_we_o(_i_sbox_x5y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y4sw ( + .bi_u1v1n_L1(_i_sbox_x5y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y3nw__prog_we_o) + ,.prog_din(_i_sbox_x5y3nw__prog_dout) + ,.prog_dout(_i_sbox_x5y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y4sw__prog_we_o) + ); + tile_clb i_tile_x5y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y5sw__prog_we_o) + ,.prog_din(_i_sbox_x5y5sw__prog_dout) + ,.prog_dout(_i_tile_x5y5__prog_dout) + ,.prog_we_o(_i_tile_x5y5__prog_we_o) + ); + sbox_ne_S i_sbox_x5y5ne ( + .bi_x0y0e_L1(_i_sbox_x5y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y6se__prog_we_o) + ,.prog_din(_i_sbox_x5y6se__prog_dout) + ,.prog_dout(_i_sbox_x5y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y5nw ( + .bi_u1y0n_L1(_i_sbox_x5y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y5__prog_we_o) + ,.prog_din(_i_tile_x5y5__prog_dout) + ,.prog_dout(_i_sbox_x5y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y5se ( + .bi_x0v1n_L1(_i_sbox_x6y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y5ne__prog_we_o) + ,.prog_din(_i_sbox_x5y5ne__prog_dout) + ,.prog_dout(_i_sbox_x5y5se__prog_dout) + ,.prog_we_o(_i_sbox_x5y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y5sw ( + .bi_u1v1n_L1(_i_sbox_x5y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y4nw__prog_we_o) + ,.prog_din(_i_sbox_x5y4nw__prog_dout) + ,.prog_dout(_i_sbox_x5y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y5sw__prog_we_o) + ); + tile_clb i_tile_x5y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y6sw__prog_we_o) + ,.prog_din(_i_sbox_x5y6sw__prog_dout) + ,.prog_dout(_i_tile_x5y6__prog_dout) + ,.prog_we_o(_i_tile_x5y6__prog_we_o) + ); + sbox_ne_S i_sbox_x5y6ne ( + .bi_x0y0e_L1(_i_sbox_x5y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y7se__prog_we_o) + ,.prog_din(_i_sbox_x5y7se__prog_dout) + ,.prog_dout(_i_sbox_x5y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y6nw ( + .bi_u1y0n_L1(_i_sbox_x5y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y6__prog_we_o) + ,.prog_din(_i_tile_x5y6__prog_dout) + ,.prog_dout(_i_sbox_x5y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y6se ( + .bi_x0v1n_L1(_i_sbox_x6y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y6ne__prog_we_o) + ,.prog_din(_i_sbox_x5y6ne__prog_dout) + ,.prog_dout(_i_sbox_x5y6se__prog_dout) + ,.prog_we_o(_i_sbox_x5y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y6sw ( + .bi_u1v1n_L1(_i_sbox_x5y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y5nw__prog_we_o) + ,.prog_din(_i_sbox_x5y5nw__prog_dout) + ,.prog_dout(_i_sbox_x5y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y6sw__prog_we_o) + ); + tile_clb i_tile_x5y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y7sw__prog_we_o) + ,.prog_din(_i_sbox_x5y7sw__prog_dout) + ,.prog_dout(_i_tile_x5y7__prog_dout) + ,.prog_we_o(_i_tile_x5y7__prog_we_o) + ); + sbox_ne_S i_sbox_x5y7ne ( + .bi_x0y0e_L1(_i_sbox_x5y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x5y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y8se__prog_we_o) + ,.prog_din(_i_sbox_x5y8se__prog_dout) + ,.prog_dout(_i_sbox_x5y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x5y7nw ( + .bi_u1y0n_L1(_i_sbox_x5y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x4y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y7__prog_we_o) + ,.prog_din(_i_tile_x5y7__prog_dout) + ,.prog_dout(_i_sbox_x5y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y7se ( + .bi_x0v1n_L1(_i_sbox_x6y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y7ne__prog_we_o) + ,.prog_din(_i_sbox_x5y7ne__prog_dout) + ,.prog_dout(_i_sbox_x5y7se__prog_dout) + ,.prog_we_o(_i_sbox_x5y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y7sw ( + .bi_u1v1n_L1(_i_sbox_x5y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y6nw__prog_we_o) + ,.prog_din(_i_sbox_x5y6nw__prog_dout) + ,.prog_dout(_i_sbox_x5y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y7sw__prog_we_o) + ); + tile_clb i_tile_x5y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x5y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x5y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x5y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x4y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y8sw__prog_we_o) + ,.prog_din(_i_sbox_x5y8sw__prog_dout) + ,.prog_dout(_i_tile_x5y8__prog_dout) + ,.prog_we_o(_i_tile_x5y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x5y8ne ( + .bi_x0y0e_L1(_i_sbox_x5y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x5y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x6y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x5y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y9se__prog_we_o) + ,.prog_din(_i_sbox_x5y9se__prog_dout) + ,.prog_dout(_i_sbox_x5y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x5y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x5y8nw ( + .bi_u1y0n_L1(_i_sbox_x5y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x5y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x4y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x5y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y8__prog_we_o) + ,.prog_din(_i_tile_x5y8__prog_dout) + ,.prog_dout(_i_sbox_x5y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x5y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x5y8se ( + .bi_x0v1n_L1(_i_sbox_x6y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x5y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y8ne__prog_we_o) + ,.prog_din(_i_sbox_x5y8ne__prog_dout) + ,.prog_dout(_i_sbox_x5y8se__prog_dout) + ,.prog_we_o(_i_sbox_x5y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x5y8sw ( + .bi_u1v1n_L1(_i_sbox_x5y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x5y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x4y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x4y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y7nw__prog_we_o) + ,.prog_din(_i_sbox_x5y7nw__prog_dout) + ,.prog_dout(_i_sbox_x5y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x5y8sw__prog_we_o) + ); + t_io_n i_tile_x5y9 ( + .bi_x0v1e_L1(_i_sbox_x5y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x5y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x5y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x5y9_0) + ,.opin_x0y0_0(_i_tile_x5y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x5y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x5y9_1) + ,.opin_x0y0_1(_i_tile_x5y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x5y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x5y8nw__prog_we_o) + ,.prog_din(_i_sbox_x5y8nw__prog_dout) + ,.prog_dout(_i_tile_x5y9__prog_dout) + ,.prog_we_o(_i_tile_x5y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x5y9se ( + .bi_x0v1n_L1(_i_sbox_x6y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x5y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x6y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x5y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x5y9__prog_we_o) + ,.prog_din(_i_tile_x5y9__prog_dout) + ,.prog_dout(_i_sbox_x5y9se__prog_dout) + ,.prog_we_o(_i_sbox_x5y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x5y9sw ( + .bi_u1v1e_L1(_i_sbox_x4y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x5y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x6y0ne ( + .bi_x0y0e_L1(_i_sbox_x6y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x6y0nw ( + .bi_u1y0e_L1(_i_sbox_x5y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x6y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x5y1se__prog_we_o) + ,.prog_din(_i_sbox_x5y1se__prog_dout) + ,.prog_dout(_i_sbox_x6y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y0nw__prog_we_o) + ); + tile_clb i_tile_x6y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y1sw__prog_we_o) + ,.prog_din(_i_sbox_x6y1sw__prog_dout) + ,.prog_dout(_i_tile_x6y1__prog_dout) + ,.prog_we_o(_i_tile_x6y1__prog_we_o) + ); + sbox_ne_S i_sbox_x6y1ne ( + .bi_x0y0e_L1(_i_sbox_x6y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y2se__prog_we_o) + ,.prog_din(_i_sbox_x6y2se__prog_dout) + ,.prog_dout(_i_sbox_x6y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y1nw ( + .bi_u1y0n_L1(_i_sbox_x6y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y1__prog_we_o) + ,.prog_din(_i_tile_x6y1__prog_dout) + ,.prog_dout(_i_sbox_x6y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x6y1se ( + .bi_x0y0s_L1(_i_sbox_x6y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x6y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y1ne__prog_we_o) + ,.prog_din(_i_sbox_x6y1ne__prog_dout) + ,.prog_dout(_i_sbox_x6y1se__prog_dout) + ,.prog_we_o(_i_sbox_x6y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x6y1sw ( + .bi_u1v1e_L1(_i_sbox_x5y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x6y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y0nw__prog_we_o) + ,.prog_din(_i_sbox_x6y0nw__prog_dout) + ,.prog_dout(_i_sbox_x6y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y1sw__prog_we_o) + ); + tile_clb i_tile_x6y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y2sw__prog_we_o) + ,.prog_din(_i_sbox_x6y2sw__prog_dout) + ,.prog_dout(_i_tile_x6y2__prog_dout) + ,.prog_we_o(_i_tile_x6y2__prog_we_o) + ); + sbox_ne_S i_sbox_x6y2ne ( + .bi_x0y0e_L1(_i_sbox_x6y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y3se__prog_we_o) + ,.prog_din(_i_sbox_x6y3se__prog_dout) + ,.prog_dout(_i_sbox_x6y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y2nw ( + .bi_u1y0n_L1(_i_sbox_x6y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y2__prog_we_o) + ,.prog_din(_i_tile_x6y2__prog_dout) + ,.prog_dout(_i_sbox_x6y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y2se ( + .bi_x0v1n_L1(_i_sbox_x7y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y2ne__prog_we_o) + ,.prog_din(_i_sbox_x6y2ne__prog_dout) + ,.prog_dout(_i_sbox_x6y2se__prog_dout) + ,.prog_we_o(_i_sbox_x6y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y2sw ( + .bi_u1v1n_L1(_i_sbox_x6y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y1nw__prog_we_o) + ,.prog_din(_i_sbox_x6y1nw__prog_dout) + ,.prog_dout(_i_sbox_x6y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y2sw__prog_we_o) + ); + tile_clb i_tile_x6y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y3sw__prog_we_o) + ,.prog_din(_i_sbox_x6y3sw__prog_dout) + ,.prog_dout(_i_tile_x6y3__prog_dout) + ,.prog_we_o(_i_tile_x6y3__prog_we_o) + ); + sbox_ne_S i_sbox_x6y3ne ( + .bi_x0y0e_L1(_i_sbox_x6y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y4se__prog_we_o) + ,.prog_din(_i_sbox_x6y4se__prog_dout) + ,.prog_dout(_i_sbox_x6y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y3nw ( + .bi_u1y0n_L1(_i_sbox_x6y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y3__prog_we_o) + ,.prog_din(_i_tile_x6y3__prog_dout) + ,.prog_dout(_i_sbox_x6y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y3se ( + .bi_x0v1n_L1(_i_sbox_x7y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y3ne__prog_we_o) + ,.prog_din(_i_sbox_x6y3ne__prog_dout) + ,.prog_dout(_i_sbox_x6y3se__prog_dout) + ,.prog_we_o(_i_sbox_x6y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y3sw ( + .bi_u1v1n_L1(_i_sbox_x6y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y2nw__prog_we_o) + ,.prog_din(_i_sbox_x6y2nw__prog_dout) + ,.prog_dout(_i_sbox_x6y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y3sw__prog_we_o) + ); + tile_clb i_tile_x6y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y4sw__prog_we_o) + ,.prog_din(_i_sbox_x6y4sw__prog_dout) + ,.prog_dout(_i_tile_x6y4__prog_dout) + ,.prog_we_o(_i_tile_x6y4__prog_we_o) + ); + sbox_ne_S i_sbox_x6y4ne ( + .bi_x0y0e_L1(_i_sbox_x6y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y5se__prog_we_o) + ,.prog_din(_i_sbox_x6y5se__prog_dout) + ,.prog_dout(_i_sbox_x6y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y4nw ( + .bi_u1y0n_L1(_i_sbox_x6y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y4__prog_we_o) + ,.prog_din(_i_tile_x6y4__prog_dout) + ,.prog_dout(_i_sbox_x6y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y4se ( + .bi_x0v1n_L1(_i_sbox_x7y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y4ne__prog_we_o) + ,.prog_din(_i_sbox_x6y4ne__prog_dout) + ,.prog_dout(_i_sbox_x6y4se__prog_dout) + ,.prog_we_o(_i_sbox_x6y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y4sw ( + .bi_u1v1n_L1(_i_sbox_x6y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y3nw__prog_we_o) + ,.prog_din(_i_sbox_x6y3nw__prog_dout) + ,.prog_dout(_i_sbox_x6y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y4sw__prog_we_o) + ); + tile_clb i_tile_x6y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y5sw__prog_we_o) + ,.prog_din(_i_sbox_x6y5sw__prog_dout) + ,.prog_dout(_i_tile_x6y5__prog_dout) + ,.prog_we_o(_i_tile_x6y5__prog_we_o) + ); + sbox_ne_S i_sbox_x6y5ne ( + .bi_x0y0e_L1(_i_sbox_x6y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y6se__prog_we_o) + ,.prog_din(_i_sbox_x6y6se__prog_dout) + ,.prog_dout(_i_sbox_x6y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y5nw ( + .bi_u1y0n_L1(_i_sbox_x6y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y5__prog_we_o) + ,.prog_din(_i_tile_x6y5__prog_dout) + ,.prog_dout(_i_sbox_x6y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y5se ( + .bi_x0v1n_L1(_i_sbox_x7y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y5ne__prog_we_o) + ,.prog_din(_i_sbox_x6y5ne__prog_dout) + ,.prog_dout(_i_sbox_x6y5se__prog_dout) + ,.prog_we_o(_i_sbox_x6y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y5sw ( + .bi_u1v1n_L1(_i_sbox_x6y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y4nw__prog_we_o) + ,.prog_din(_i_sbox_x6y4nw__prog_dout) + ,.prog_dout(_i_sbox_x6y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y5sw__prog_we_o) + ); + tile_clb i_tile_x6y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y6sw__prog_we_o) + ,.prog_din(_i_sbox_x6y6sw__prog_dout) + ,.prog_dout(_i_tile_x6y6__prog_dout) + ,.prog_we_o(_i_tile_x6y6__prog_we_o) + ); + sbox_ne_S i_sbox_x6y6ne ( + .bi_x0y0e_L1(_i_sbox_x6y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y7se__prog_we_o) + ,.prog_din(_i_sbox_x6y7se__prog_dout) + ,.prog_dout(_i_sbox_x6y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y6nw ( + .bi_u1y0n_L1(_i_sbox_x6y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y6__prog_we_o) + ,.prog_din(_i_tile_x6y6__prog_dout) + ,.prog_dout(_i_sbox_x6y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y6se ( + .bi_x0v1n_L1(_i_sbox_x7y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y6ne__prog_we_o) + ,.prog_din(_i_sbox_x6y6ne__prog_dout) + ,.prog_dout(_i_sbox_x6y6se__prog_dout) + ,.prog_we_o(_i_sbox_x6y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y6sw ( + .bi_u1v1n_L1(_i_sbox_x6y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y5nw__prog_we_o) + ,.prog_din(_i_sbox_x6y5nw__prog_dout) + ,.prog_dout(_i_sbox_x6y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y6sw__prog_we_o) + ); + tile_clb i_tile_x6y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y7sw__prog_we_o) + ,.prog_din(_i_sbox_x6y7sw__prog_dout) + ,.prog_dout(_i_tile_x6y7__prog_dout) + ,.prog_we_o(_i_tile_x6y7__prog_we_o) + ); + sbox_ne_S i_sbox_x6y7ne ( + .bi_x0y0e_L1(_i_sbox_x6y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x6y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y8se__prog_we_o) + ,.prog_din(_i_sbox_x6y8se__prog_dout) + ,.prog_dout(_i_sbox_x6y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x6y7nw ( + .bi_u1y0n_L1(_i_sbox_x6y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x5y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y7__prog_we_o) + ,.prog_din(_i_tile_x6y7__prog_dout) + ,.prog_dout(_i_sbox_x6y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y7se ( + .bi_x0v1n_L1(_i_sbox_x7y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y7ne__prog_we_o) + ,.prog_din(_i_sbox_x6y7ne__prog_dout) + ,.prog_dout(_i_sbox_x6y7se__prog_dout) + ,.prog_we_o(_i_sbox_x6y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y7sw ( + .bi_u1v1n_L1(_i_sbox_x6y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y6nw__prog_we_o) + ,.prog_din(_i_sbox_x6y6nw__prog_dout) + ,.prog_dout(_i_sbox_x6y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y7sw__prog_we_o) + ); + tile_clb i_tile_x6y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x6y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x6y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x6y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x5y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y8sw__prog_we_o) + ,.prog_din(_i_sbox_x6y8sw__prog_dout) + ,.prog_dout(_i_tile_x6y8__prog_dout) + ,.prog_we_o(_i_tile_x6y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x6y8ne ( + .bi_x0y0e_L1(_i_sbox_x6y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x6y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x7y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x6y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y9se__prog_we_o) + ,.prog_din(_i_sbox_x6y9se__prog_dout) + ,.prog_dout(_i_sbox_x6y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x6y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x6y8nw ( + .bi_u1y0n_L1(_i_sbox_x6y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x6y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x5y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x6y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y8__prog_we_o) + ,.prog_din(_i_tile_x6y8__prog_dout) + ,.prog_dout(_i_sbox_x6y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x6y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x6y8se ( + .bi_x0v1n_L1(_i_sbox_x7y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x6y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y8ne__prog_we_o) + ,.prog_din(_i_sbox_x6y8ne__prog_dout) + ,.prog_dout(_i_sbox_x6y8se__prog_dout) + ,.prog_we_o(_i_sbox_x6y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x6y8sw ( + .bi_u1v1n_L1(_i_sbox_x6y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x6y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x5y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x5y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y7nw__prog_we_o) + ,.prog_din(_i_sbox_x6y7nw__prog_dout) + ,.prog_dout(_i_sbox_x6y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x6y8sw__prog_we_o) + ); + t_io_n i_tile_x6y9 ( + .bi_x0v1e_L1(_i_sbox_x6y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x6y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x6y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x6y9_0) + ,.opin_x0y0_0(_i_tile_x6y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x6y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x6y9_1) + ,.opin_x0y0_1(_i_tile_x6y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x6y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x6y8nw__prog_we_o) + ,.prog_din(_i_sbox_x6y8nw__prog_dout) + ,.prog_dout(_i_tile_x6y9__prog_dout) + ,.prog_we_o(_i_tile_x6y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x6y9se ( + .bi_x0v1n_L1(_i_sbox_x7y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x6y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x7y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x6y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x6y9__prog_we_o) + ,.prog_din(_i_tile_x6y9__prog_dout) + ,.prog_dout(_i_sbox_x6y9se__prog_dout) + ,.prog_we_o(_i_sbox_x6y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x6y9sw ( + .bi_u1v1e_L1(_i_sbox_x5y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x6y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_n i_sbox_x7y0ne ( + .bi_x0y0e_L1(_i_sbox_x7y0nw__so_x0y0e_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x7y0nw ( + .bi_u1y0e_L1(_i_sbox_x6y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x7y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x6y1se__prog_we_o) + ,.prog_din(_i_sbox_x6y1se__prog_dout) + ,.prog_dout(_i_sbox_x7y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y0nw__prog_we_o) + ); + tile_clb i_tile_x7y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y1sw__prog_we_o) + ,.prog_din(_i_sbox_x7y1sw__prog_dout) + ,.prog_dout(_i_tile_x7y1__prog_dout) + ,.prog_we_o(_i_tile_x7y1__prog_we_o) + ); + sbox_ne_S i_sbox_x7y1ne ( + .bi_x0y0e_L1(_i_sbox_x7y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y2ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y2se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y1__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y2se__prog_we_o) + ,.prog_din(_i_sbox_x7y2se__prog_dout) + ,.prog_dout(_i_sbox_x7y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y1nw ( + .bi_u1y0n_L1(_i_sbox_x7y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y1__prog_we_o) + ,.prog_din(_i_tile_x7y1__prog_dout) + ,.prog_dout(_i_sbox_x7y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y1nw__prog_we_o) + ); + sbox_se_W_ex_n i_sbox_x7y1se ( + .bi_x0y0s_L1(_i_sbox_x7y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x7y1se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y1ne__prog_we_o) + ,.prog_din(_i_sbox_x7y1ne__prog_dout) + ,.prog_dout(_i_sbox_x7y1se__prog_dout) + ,.prog_we_o(_i_sbox_x7y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x7y1sw ( + .bi_u1v1e_L1(_i_sbox_x6y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x7y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y0nw__prog_we_o) + ,.prog_din(_i_sbox_x7y0nw__prog_dout) + ,.prog_dout(_i_sbox_x7y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y1sw__prog_we_o) + ); + tile_clb i_tile_x7y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y2sw__prog_we_o) + ,.prog_din(_i_sbox_x7y2sw__prog_dout) + ,.prog_dout(_i_tile_x7y2__prog_dout) + ,.prog_we_o(_i_tile_x7y2__prog_we_o) + ); + sbox_ne_S i_sbox_x7y2ne ( + .bi_x0y0e_L1(_i_sbox_x7y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y3ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y3se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y2__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y3se__prog_we_o) + ,.prog_din(_i_sbox_x7y3se__prog_dout) + ,.prog_dout(_i_sbox_x7y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y2nw ( + .bi_u1y0n_L1(_i_sbox_x7y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y2__prog_we_o) + ,.prog_din(_i_tile_x7y2__prog_dout) + ,.prog_dout(_i_sbox_x7y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y2nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y2se ( + .bi_x0v1n_L1(_i_sbox_x8y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y2ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y2se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y2ne__prog_we_o) + ,.prog_din(_i_sbox_x7y2ne__prog_dout) + ,.prog_dout(_i_sbox_x7y2se__prog_dout) + ,.prog_we_o(_i_sbox_x7y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y2sw ( + .bi_u1v1n_L1(_i_sbox_x7y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y1nw__prog_we_o) + ,.prog_din(_i_sbox_x7y1nw__prog_dout) + ,.prog_dout(_i_sbox_x7y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y2sw__prog_we_o) + ); + tile_clb i_tile_x7y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y3sw__prog_we_o) + ,.prog_din(_i_sbox_x7y3sw__prog_dout) + ,.prog_dout(_i_tile_x7y3__prog_dout) + ,.prog_we_o(_i_tile_x7y3__prog_we_o) + ); + sbox_ne_S i_sbox_x7y3ne ( + .bi_x0y0e_L1(_i_sbox_x7y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y4ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y4se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y3__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y4se__prog_we_o) + ,.prog_din(_i_sbox_x7y4se__prog_dout) + ,.prog_dout(_i_sbox_x7y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y3nw ( + .bi_u1y0n_L1(_i_sbox_x7y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y3__prog_we_o) + ,.prog_din(_i_tile_x7y3__prog_dout) + ,.prog_dout(_i_sbox_x7y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y3nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y3se ( + .bi_x0v1n_L1(_i_sbox_x8y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y3ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y3se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y3ne__prog_we_o) + ,.prog_din(_i_sbox_x7y3ne__prog_dout) + ,.prog_dout(_i_sbox_x7y3se__prog_dout) + ,.prog_we_o(_i_sbox_x7y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y3sw ( + .bi_u1v1n_L1(_i_sbox_x7y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y2nw__prog_we_o) + ,.prog_din(_i_sbox_x7y2nw__prog_dout) + ,.prog_dout(_i_sbox_x7y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y3sw__prog_we_o) + ); + tile_clb i_tile_x7y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y4sw__prog_we_o) + ,.prog_din(_i_sbox_x7y4sw__prog_dout) + ,.prog_dout(_i_tile_x7y4__prog_dout) + ,.prog_we_o(_i_tile_x7y4__prog_we_o) + ); + sbox_ne_S i_sbox_x7y4ne ( + .bi_x0y0e_L1(_i_sbox_x7y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y5ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y5se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y4__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y5se__prog_we_o) + ,.prog_din(_i_sbox_x7y5se__prog_dout) + ,.prog_dout(_i_sbox_x7y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y4nw ( + .bi_u1y0n_L1(_i_sbox_x7y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y4__prog_we_o) + ,.prog_din(_i_tile_x7y4__prog_dout) + ,.prog_dout(_i_sbox_x7y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y4nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y4se ( + .bi_x0v1n_L1(_i_sbox_x8y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y4ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y4se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y4ne__prog_we_o) + ,.prog_din(_i_sbox_x7y4ne__prog_dout) + ,.prog_dout(_i_sbox_x7y4se__prog_dout) + ,.prog_we_o(_i_sbox_x7y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y4sw ( + .bi_u1v1n_L1(_i_sbox_x7y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y3nw__prog_we_o) + ,.prog_din(_i_sbox_x7y3nw__prog_dout) + ,.prog_dout(_i_sbox_x7y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y4sw__prog_we_o) + ); + tile_clb i_tile_x7y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y5sw__prog_we_o) + ,.prog_din(_i_sbox_x7y5sw__prog_dout) + ,.prog_dout(_i_tile_x7y5__prog_dout) + ,.prog_we_o(_i_tile_x7y5__prog_we_o) + ); + sbox_ne_S i_sbox_x7y5ne ( + .bi_x0y0e_L1(_i_sbox_x7y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y6ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y6se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y5__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y6se__prog_we_o) + ,.prog_din(_i_sbox_x7y6se__prog_dout) + ,.prog_dout(_i_sbox_x7y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y5nw ( + .bi_u1y0n_L1(_i_sbox_x7y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y5__prog_we_o) + ,.prog_din(_i_tile_x7y5__prog_dout) + ,.prog_dout(_i_sbox_x7y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y5nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y5se ( + .bi_x0v1n_L1(_i_sbox_x8y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y5ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y5se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y5ne__prog_we_o) + ,.prog_din(_i_sbox_x7y5ne__prog_dout) + ,.prog_dout(_i_sbox_x7y5se__prog_dout) + ,.prog_we_o(_i_sbox_x7y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y5sw ( + .bi_u1v1n_L1(_i_sbox_x7y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y4nw__prog_we_o) + ,.prog_din(_i_sbox_x7y4nw__prog_dout) + ,.prog_dout(_i_sbox_x7y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y5sw__prog_we_o) + ); + tile_clb i_tile_x7y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y6sw__prog_we_o) + ,.prog_din(_i_sbox_x7y6sw__prog_dout) + ,.prog_dout(_i_tile_x7y6__prog_dout) + ,.prog_we_o(_i_tile_x7y6__prog_we_o) + ); + sbox_ne_S i_sbox_x7y6ne ( + .bi_x0y0e_L1(_i_sbox_x7y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y7ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y7se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y6__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y7se__prog_we_o) + ,.prog_din(_i_sbox_x7y7se__prog_dout) + ,.prog_dout(_i_sbox_x7y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y6nw ( + .bi_u1y0n_L1(_i_sbox_x7y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y6__prog_we_o) + ,.prog_din(_i_tile_x7y6__prog_dout) + ,.prog_dout(_i_sbox_x7y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y6nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y6se ( + .bi_x0v1n_L1(_i_sbox_x8y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y6ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y6se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y6ne__prog_we_o) + ,.prog_din(_i_sbox_x7y6ne__prog_dout) + ,.prog_dout(_i_sbox_x7y6se__prog_dout) + ,.prog_we_o(_i_sbox_x7y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y6sw ( + .bi_u1v1n_L1(_i_sbox_x7y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y5nw__prog_we_o) + ,.prog_din(_i_sbox_x7y5nw__prog_dout) + ,.prog_dout(_i_sbox_x7y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y6sw__prog_we_o) + ); + tile_clb i_tile_x7y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y7sw__prog_we_o) + ,.prog_din(_i_sbox_x7y7sw__prog_dout) + ,.prog_dout(_i_tile_x7y7__prog_dout) + ,.prog_we_o(_i_tile_x7y7__prog_we_o) + ); + sbox_ne_S i_sbox_x7y7ne ( + .bi_x0y0e_L1(_i_sbox_x7y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x7y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y8se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y7__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y8se__prog_we_o) + ,.prog_din(_i_sbox_x7y8se__prog_dout) + ,.prog_dout(_i_sbox_x7y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x7y7nw ( + .bi_u1y0n_L1(_i_sbox_x7y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x6y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y7__prog_we_o) + ,.prog_din(_i_tile_x7y7__prog_dout) + ,.prog_dout(_i_sbox_x7y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y7nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y7se ( + .bi_x0v1n_L1(_i_sbox_x8y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y7ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y7se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y7ne__prog_we_o) + ,.prog_din(_i_sbox_x7y7ne__prog_dout) + ,.prog_dout(_i_sbox_x7y7se__prog_dout) + ,.prog_we_o(_i_sbox_x7y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y7sw ( + .bi_u1v1n_L1(_i_sbox_x7y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y6nw__prog_we_o) + ,.prog_din(_i_sbox_x7y6nw__prog_dout) + ,.prog_dout(_i_sbox_x7y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y7sw__prog_we_o) + ); + tile_clb i_tile_x7y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x7y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x7y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x7y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x6y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y8sw__prog_we_o) + ,.prog_din(_i_sbox_x7y8sw__prog_dout) + ,.prog_dout(_i_tile_x7y8__prog_dout) + ,.prog_we_o(_i_tile_x7y8__prog_we_o) + ); + sbox_ne_S_ex_s i_sbox_x7y8ne ( + .bi_x0y0e_L1(_i_sbox_x7y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x7y8ne__so_x0y0s_L1) + ,.bi_x1y0w_L1(_i_sbox_x8y9se__so_x0v1w_L1) + ,.cu_x0y0s_L1(_i_tile_x7y8__cu_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y9se__prog_we_o) + ,.prog_din(_i_sbox_x7y9se__prog_dout) + ,.prog_dout(_i_sbox_x7y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x7y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x7y8nw ( + .bi_u1y0n_L1(_i_sbox_x7y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x7y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x6y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x7y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y8__prog_we_o) + ,.prog_din(_i_tile_x7y8__prog_dout) + ,.prog_dout(_i_sbox_x7y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x7y8nw__prog_we_o) + ); + sbox_se_W i_sbox_x7y8se ( + .bi_x0v1n_L1(_i_sbox_x8y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x7y8ne__so_x0y0s_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y8se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y8ne__prog_we_o) + ,.prog_din(_i_sbox_x7y8ne__prog_dout) + ,.prog_dout(_i_sbox_x7y8se__prog_dout) + ,.prog_we_o(_i_sbox_x7y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x7y8sw ( + .bi_u1v1n_L1(_i_sbox_x7y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x7y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x6y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x6y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y7nw__prog_we_o) + ,.prog_din(_i_sbox_x7y7nw__prog_dout) + ,.prog_dout(_i_sbox_x7y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x7y8sw__prog_we_o) + ); + t_io_n i_tile_x7y9 ( + .bi_x0v1e_L1(_i_sbox_x7y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x7y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x7y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x7y9_0) + ,.opin_x0y0_0(_i_tile_x7y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x7y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x7y9_1) + ,.opin_x0y0_1(_i_tile_x7y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x7y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x7y8nw__prog_we_o) + ,.prog_din(_i_sbox_x7y8nw__prog_dout) + ,.prog_dout(_i_tile_x7y9__prog_dout) + ,.prog_we_o(_i_tile_x7y9__prog_we_o) + ); + sbox_se_W_ex_s i_sbox_x7y9se ( + .bi_x0v1n_L1(_i_sbox_x8y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x7y9se__so_x0v1w_L1) + ,.bi_x1v1w_L1(_i_sbox_x8y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x7y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x7y9__prog_we_o) + ,.prog_din(_i_tile_x7y9__prog_dout) + ,.prog_dout(_i_sbox_x7y9se__prog_dout) + ,.prog_we_o(_i_sbox_x7y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x7y9sw ( + .bi_u1v1e_L1(_i_sbox_x6y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x7y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_ne_n_ex_nw i_sbox_x8y0ne ( + .bi_x0y0e_L1(_i_sbox_x8y0nw__so_x0y0e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_E_ex_n i_sbox_x8y0nw ( + .bi_u1y0e_L1(_i_sbox_x7y0nw__so_x0y0e_L1) + ,.so_x0y0e_L1(_i_sbox_x8y0nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x7y1se__prog_we_o) + ,.prog_din(_i_sbox_x7y1se__prog_dout) + ,.prog_dout(_i_sbox_x8y0nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y0nw__prog_we_o) + ); + tile_clb i_tile_x8y1 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y1__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y1__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y1ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y1sw__prog_we_o) + ,.prog_din(_i_sbox_x8y1sw__prog_dout) + ,.prog_dout(_i_tile_x8y1__prog_dout) + ,.prog_we_o(_i_tile_x8y1__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y1ne ( + .bi_x0y0e_L1(_i_sbox_x8y1nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y1ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y2ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y1__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y1__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y2se__prog_we_o) + ,.prog_din(_i_sbox_x8y2se__prog_dout) + ,.prog_dout(_i_sbox_x8y1ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y1ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y1nw ( + .bi_u1y0n_L1(_i_sbox_x8y1sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y1nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y1nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y1__prog_we_o) + ,.prog_din(_i_tile_x8y1__prog_dout) + ,.prog_dout(_i_sbox_x8y1nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y1nw__prog_we_o) + ); + sbox_se_W_ex_nw i_sbox_x8y1se ( + .bi_x0y0s_L1(_i_sbox_x8y1ne__so_x0y0s_L1) + ,.so_x0v1w_L1(_i_sbox_x8y1se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y1ne__prog_we_o) + ,.prog_din(_i_sbox_x8y1ne__prog_dout) + ,.prog_dout(_i_sbox_x8y1se__prog_dout) + ,.prog_we_o(_i_sbox_x8y1se__prog_we_o) + ); + sbox_sw_N_ex_n i_sbox_x8y1sw ( + .bi_u1v1e_L1(_i_sbox_x7y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x8y1sw__so_u1y0n_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y1se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y1__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y0nw__prog_we_o) + ,.prog_din(_i_sbox_x8y0nw__prog_dout) + ,.prog_dout(_i_sbox_x8y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y1sw__prog_we_o) + ); + tile_clb i_tile_x8y2 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y2__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y2__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y2ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y2sw__prog_we_o) + ,.prog_din(_i_sbox_x8y2sw__prog_dout) + ,.prog_dout(_i_tile_x8y2__prog_dout) + ,.prog_we_o(_i_tile_x8y2__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y2ne ( + .bi_x0y0e_L1(_i_sbox_x8y2nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y2ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y3ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y2__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y2__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y3se__prog_we_o) + ,.prog_din(_i_sbox_x8y3se__prog_dout) + ,.prog_dout(_i_sbox_x8y2ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y2ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y2nw ( + .bi_u1y0n_L1(_i_sbox_x8y2sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y2nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y2nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y2__prog_we_o) + ,.prog_din(_i_tile_x8y2__prog_dout) + ,.prog_dout(_i_sbox_x8y2nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y2nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y2se ( + .bi_x0v1n_L1(_i_sbox_x9y1sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y2se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y2ne__prog_we_o) + ,.prog_din(_i_sbox_x8y2ne__prog_dout) + ,.prog_dout(_i_sbox_x8y2se__prog_dout) + ,.prog_we_o(_i_sbox_x8y2se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y2sw ( + .bi_u1v1n_L1(_i_sbox_x8y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y1nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y2se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y2__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y1nw__prog_we_o) + ,.prog_din(_i_sbox_x8y1nw__prog_dout) + ,.prog_dout(_i_sbox_x8y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y2sw__prog_we_o) + ); + tile_clb i_tile_x8y3 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y3__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y3__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y3ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y3sw__prog_we_o) + ,.prog_din(_i_sbox_x8y3sw__prog_dout) + ,.prog_dout(_i_tile_x8y3__prog_dout) + ,.prog_we_o(_i_tile_x8y3__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y3ne ( + .bi_x0y0e_L1(_i_sbox_x8y3nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y3ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y4ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y3__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y3__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y4se__prog_we_o) + ,.prog_din(_i_sbox_x8y4se__prog_dout) + ,.prog_dout(_i_sbox_x8y3ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y3ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y3nw ( + .bi_u1y0n_L1(_i_sbox_x8y3sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y3nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y3nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y3__prog_we_o) + ,.prog_din(_i_tile_x8y3__prog_dout) + ,.prog_dout(_i_sbox_x8y3nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y3nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y3se ( + .bi_x0v1n_L1(_i_sbox_x9y2sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y3se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y3ne__prog_we_o) + ,.prog_din(_i_sbox_x8y3ne__prog_dout) + ,.prog_dout(_i_sbox_x8y3se__prog_dout) + ,.prog_we_o(_i_sbox_x8y3se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y3sw ( + .bi_u1v1n_L1(_i_sbox_x8y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y2nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y3se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y3__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y2nw__prog_we_o) + ,.prog_din(_i_sbox_x8y2nw__prog_dout) + ,.prog_dout(_i_sbox_x8y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y3sw__prog_we_o) + ); + tile_clb i_tile_x8y4 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y4__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y4__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y4ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y4sw__prog_we_o) + ,.prog_din(_i_sbox_x8y4sw__prog_dout) + ,.prog_dout(_i_tile_x8y4__prog_dout) + ,.prog_we_o(_i_tile_x8y4__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y4ne ( + .bi_x0y0e_L1(_i_sbox_x8y4nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y4ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y5ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y4__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y4__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y5se__prog_we_o) + ,.prog_din(_i_sbox_x8y5se__prog_dout) + ,.prog_dout(_i_sbox_x8y4ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y4ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y4nw ( + .bi_u1y0n_L1(_i_sbox_x8y4sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y4nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y4nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y4__prog_we_o) + ,.prog_din(_i_tile_x8y4__prog_dout) + ,.prog_dout(_i_sbox_x8y4nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y4nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y4se ( + .bi_x0v1n_L1(_i_sbox_x9y3sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y4se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y4ne__prog_we_o) + ,.prog_din(_i_sbox_x8y4ne__prog_dout) + ,.prog_dout(_i_sbox_x8y4se__prog_dout) + ,.prog_we_o(_i_sbox_x8y4se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y4sw ( + .bi_u1v1n_L1(_i_sbox_x8y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y3nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y4se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y4__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y3nw__prog_we_o) + ,.prog_din(_i_sbox_x8y3nw__prog_dout) + ,.prog_dout(_i_sbox_x8y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y4sw__prog_we_o) + ); + tile_clb i_tile_x8y5 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y5__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y5__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y5ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y5sw__prog_we_o) + ,.prog_din(_i_sbox_x8y5sw__prog_dout) + ,.prog_dout(_i_tile_x8y5__prog_dout) + ,.prog_we_o(_i_tile_x8y5__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y5ne ( + .bi_x0y0e_L1(_i_sbox_x8y5nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y5ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y6ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y5__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y5__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y6se__prog_we_o) + ,.prog_din(_i_sbox_x8y6se__prog_dout) + ,.prog_dout(_i_sbox_x8y5ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y5ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y5nw ( + .bi_u1y0n_L1(_i_sbox_x8y5sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y5nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y5nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y5__prog_we_o) + ,.prog_din(_i_tile_x8y5__prog_dout) + ,.prog_dout(_i_sbox_x8y5nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y5nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y5se ( + .bi_x0v1n_L1(_i_sbox_x9y4sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y5se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y5ne__prog_we_o) + ,.prog_din(_i_sbox_x8y5ne__prog_dout) + ,.prog_dout(_i_sbox_x8y5se__prog_dout) + ,.prog_we_o(_i_sbox_x8y5se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y5sw ( + .bi_u1v1n_L1(_i_sbox_x8y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y4nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y5se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y5__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y4nw__prog_we_o) + ,.prog_din(_i_sbox_x8y4nw__prog_dout) + ,.prog_dout(_i_sbox_x8y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y5sw__prog_we_o) + ); + tile_clb i_tile_x8y6 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y6__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y6__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y6ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y6sw__prog_we_o) + ,.prog_din(_i_sbox_x8y6sw__prog_dout) + ,.prog_dout(_i_tile_x8y6__prog_dout) + ,.prog_we_o(_i_tile_x8y6__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y6ne ( + .bi_x0y0e_L1(_i_sbox_x8y6nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y6ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y7ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y6__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y6__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y7se__prog_we_o) + ,.prog_din(_i_sbox_x8y7se__prog_dout) + ,.prog_dout(_i_sbox_x8y6ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y6ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y6nw ( + .bi_u1y0n_L1(_i_sbox_x8y6sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y6nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y6nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y6__prog_we_o) + ,.prog_din(_i_tile_x8y6__prog_dout) + ,.prog_dout(_i_sbox_x8y6nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y6nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y6se ( + .bi_x0v1n_L1(_i_sbox_x9y5sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y6se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y6ne__prog_we_o) + ,.prog_din(_i_sbox_x8y6ne__prog_dout) + ,.prog_dout(_i_sbox_x8y6se__prog_dout) + ,.prog_we_o(_i_sbox_x8y6se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y6sw ( + .bi_u1v1n_L1(_i_sbox_x8y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y5nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y6se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y6__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y5nw__prog_we_o) + ,.prog_din(_i_sbox_x8y5nw__prog_dout) + ,.prog_dout(_i_sbox_x8y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y6sw__prog_we_o) + ); + tile_clb i_tile_x8y7 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y7__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y7__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y7ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y7sw__prog_we_o) + ,.prog_din(_i_sbox_x8y7sw__prog_dout) + ,.prog_dout(_i_tile_x8y7__prog_dout) + ,.prog_we_o(_i_tile_x8y7__prog_we_o) + ); + sbox_ne_S_ex_w i_sbox_x8y7ne ( + .bi_x0y0e_L1(_i_sbox_x8y7nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y7ne__so_x0y0s_L1) + ,.bi_x0y1s_L1(_i_sbox_x8y8ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y7__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y7__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y8se__prog_we_o) + ,.prog_din(_i_sbox_x8y8se__prog_dout) + ,.prog_dout(_i_sbox_x8y7ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y7ne__prog_we_o) + ); + sbox_nw_E i_sbox_x8y7nw ( + .bi_u1y0n_L1(_i_sbox_x8y7sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y7nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y7nw__so_x0y0e_L1) + ,.bi_u1y1s_L1(_i_sbox_x7y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y7__prog_we_o) + ,.prog_din(_i_tile_x8y7__prog_dout) + ,.prog_dout(_i_sbox_x8y7nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y7nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y7se ( + .bi_x0v1n_L1(_i_sbox_x9y6sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y7se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y7ne__prog_we_o) + ,.prog_din(_i_sbox_x8y7ne__prog_dout) + ,.prog_dout(_i_sbox_x8y7se__prog_dout) + ,.prog_we_o(_i_sbox_x8y7se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y7sw ( + .bi_u1v1n_L1(_i_sbox_x8y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y6nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y7se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y7__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y6nw__prog_we_o) + ,.prog_din(_i_sbox_x8y6nw__prog_dout) + ,.prog_dout(_i_sbox_x8y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y7sw__prog_we_o) + ); + tile_clb i_tile_x8y8 ( +`ifdef USE_POWER_PINS + .vssd1(vssd1), + .vccd1(vccd1), +`endif + .cu_x0y0n_L1(_i_tile_x8y8__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_tile_x8y8__cu_x0y0s_L1) + ,.bi_u1y0n_L1(_i_sbox_x8y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x7y8ne__so_x0y0s_L1) + ,.clk(ipin_x0y1_0) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y8sw__prog_we_o) + ,.prog_din(_i_sbox_x8y8sw__prog_dout) + ,.prog_dout(_i_tile_x8y8__prog_dout) + ,.prog_we_o(_i_tile_x8y8__prog_we_o) + ); + sbox_ne_S_ex_sw i_sbox_x8y8ne ( + .bi_x0y0e_L1(_i_sbox_x8y8nw__so_x0y0e_L1) + ,.so_x0y0s_L1(_i_sbox_x8y8ne__so_x0y0s_L1) + ,.cu_x0y0s_L1(_i_tile_x8y8__cu_x0y0s_L1) + ,.cv_x0y0s_L1(_i_tile_x9y8__cu_u1y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y9se__prog_we_o) + ,.prog_din(_i_sbox_x8y9se__prog_dout) + ,.prog_dout(_i_sbox_x8y8ne__prog_dout) + ,.prog_we_o(_i_sbox_x8y8ne__prog_we_o) + ); + sbox_nw_E_ex_s i_sbox_x8y8nw ( + .bi_u1y0n_L1(_i_sbox_x8y8sw__so_u1y0n_L1) + ,.so_x0y0e_L1(_i_sbox_x8y8nw__so_x0y0e_L1) + ,.bi_u1y0e_L1(_i_sbox_x7y8nw__so_x0y0e_L1) + ,.cu_x0y0e_L1(_i_tile_x8y9__cu_x0v1e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y8__prog_we_o) + ,.prog_din(_i_tile_x8y8__prog_dout) + ,.prog_dout(_i_sbox_x8y8nw__prog_dout) + ,.prog_we_o(_i_sbox_x8y8nw__prog_we_o) + ); + sbox_se_W_ex_w i_sbox_x8y8se ( + .bi_x0v1n_L1(_i_sbox_x9y7sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y8se__so_x0v1w_L1) + ,.bi_x0y0s_L1(_i_sbox_x8y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y8ne__prog_we_o) + ,.prog_din(_i_sbox_x8y8ne__prog_dout) + ,.prog_dout(_i_sbox_x8y8se__prog_dout) + ,.prog_we_o(_i_sbox_x8y8se__prog_we_o) + ); + sbox_sw_N i_sbox_x8y8sw ( + .bi_u1v1n_L1(_i_sbox_x8y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x8y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x7y7nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y8se__so_x0v1w_L1) + ,.cu_u1y0n_L1(_i_tile_x7y8__cu_x0y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y7nw__prog_we_o) + ,.prog_din(_i_sbox_x8y7nw__prog_dout) + ,.prog_dout(_i_sbox_x8y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x8y8sw__prog_we_o) + ); + t_io_n i_tile_x8y9 ( + .bi_x0v1e_L1(_i_sbox_x8y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y9se__so_x0v1w_L1) + ,.cu_x0v1e_L1(_i_tile_x8y9__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_tile_x8y9__cu_x0v1w_L1) + ,.ipin_x0y0_0(ipin_x8y9_0) + ,.opin_x0y0_0(_i_tile_x8y9__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x8y9__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x8y9_1) + ,.opin_x0y0_1(_i_tile_x8y9__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x8y9__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x8y8nw__prog_we_o) + ,.prog_din(_i_sbox_x8y8nw__prog_dout) + ,.prog_dout(_i_tile_x8y9__prog_dout) + ,.prog_we_o(_i_tile_x8y9__prog_we_o) + ); + sbox_se_W_ex_sw i_sbox_x8y9se ( + .bi_x0v1n_L1(_i_sbox_x9y8sw__so_u1y0n_L1) + ,.so_x0v1w_L1(_i_sbox_x8y9se__so_x0v1w_L1) + ,.cu_x0v1w_L1(_i_tile_x8y9__cu_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x8y9__prog_we_o) + ,.prog_din(_i_tile_x8y9__prog_dout) + ,.prog_dout(_i_sbox_x8y9se__prog_dout) + ,.prog_we_o(_i_sbox_x8y9se__prog_we_o) + ); + sbox_sw_s_ex_s i_sbox_x8y9sw ( + .bi_u1v1e_L1(_i_sbox_x7y8nw__so_x0y0e_L1) + ,.bi_x0v1w_L1(_i_sbox_x8y9se__so_x0v1w_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_nw_w_ex_nw i_sbox_x9y0nw ( + .bi_u1y1s_L1(_i_sbox_x8y1ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + t_io_e i_tile_x9y1 ( + .bi_u1y0n_L1(_i_sbox_x9y1sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y1ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y1__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y1__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y1_0) + ,.opin_x0y0_0(_i_tile_x9y1__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y1__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y1_1) + ,.opin_x0y0_1(_i_tile_x9y1__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y1__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y1sw__prog_we_o) + ,.prog_din(_i_sbox_x9y1sw__prog_dout) + ,.prog_dout(_i_tile_x9y1__prog_dout) + ,.prog_we_o(_i_tile_x9y1__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y1nw ( + .bi_u1y0n_L1(_i_sbox_x9y1sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y2ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_nw i_sbox_x9y1sw ( + .bi_u1v1e_L1(_i_sbox_x8y0nw__so_x0y0e_L1) + ,.so_u1y0n_L1(_i_sbox_x9y1sw__so_u1y0n_L1) + ,.cu_u1y0n_L1(_i_tile_x8y1__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y1__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_sbox_x8y1se__prog_we_o) + ,.prog_din(_i_sbox_x8y1se__prog_dout) + ,.prog_dout(_i_sbox_x9y1sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y1sw__prog_we_o) + ); + t_io_e i_tile_x9y2 ( + .bi_u1y0n_L1(_i_sbox_x9y2sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y2ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y2__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y2__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y2_0) + ,.opin_x0y0_0(_i_tile_x9y2__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y2__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y2_1) + ,.opin_x0y0_1(_i_tile_x9y2__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y2__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y2sw__prog_we_o) + ,.prog_din(_i_sbox_x9y2sw__prog_dout) + ,.prog_dout(_i_tile_x9y2__prog_dout) + ,.prog_we_o(_i_tile_x9y2__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y2nw ( + .bi_u1y0n_L1(_i_sbox_x9y2sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y3ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y2sw ( + .bi_u1v1n_L1(_i_sbox_x9y1sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y2sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y1nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y2__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y2__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y1__prog_we_o) + ,.prog_din(_i_tile_x9y1__prog_dout) + ,.prog_dout(_i_sbox_x9y2sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y2sw__prog_we_o) + ); + t_io_e i_tile_x9y3 ( + .bi_u1y0n_L1(_i_sbox_x9y3sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y3ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y3__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y3__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y3_0) + ,.opin_x0y0_0(_i_tile_x9y3__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y3__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y3_1) + ,.opin_x0y0_1(_i_tile_x9y3__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y3__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y3sw__prog_we_o) + ,.prog_din(_i_sbox_x9y3sw__prog_dout) + ,.prog_dout(_i_tile_x9y3__prog_dout) + ,.prog_we_o(_i_tile_x9y3__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y3nw ( + .bi_u1y0n_L1(_i_sbox_x9y3sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y4ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y3sw ( + .bi_u1v1n_L1(_i_sbox_x9y2sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y3sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y2nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y3__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y3__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y2__prog_we_o) + ,.prog_din(_i_tile_x9y2__prog_dout) + ,.prog_dout(_i_sbox_x9y3sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y3sw__prog_we_o) + ); + t_io_e i_tile_x9y4 ( + .bi_u1y0n_L1(_i_sbox_x9y4sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y4ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y4__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y4__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y4_0) + ,.opin_x0y0_0(_i_tile_x9y4__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y4__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y4_1) + ,.opin_x0y0_1(_i_tile_x9y4__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y4__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y4sw__prog_we_o) + ,.prog_din(_i_sbox_x9y4sw__prog_dout) + ,.prog_dout(_i_tile_x9y4__prog_dout) + ,.prog_we_o(_i_tile_x9y4__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y4nw ( + .bi_u1y0n_L1(_i_sbox_x9y4sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y5ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y4sw ( + .bi_u1v1n_L1(_i_sbox_x9y3sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y4sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y3nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y4__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y4__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y3__prog_we_o) + ,.prog_din(_i_tile_x9y3__prog_dout) + ,.prog_dout(_i_sbox_x9y4sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y4sw__prog_we_o) + ); + t_io_e i_tile_x9y5 ( + .bi_u1y0n_L1(_i_sbox_x9y5sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y5ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y5__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y5__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y5_0) + ,.opin_x0y0_0(_i_tile_x9y5__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y5__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y5_1) + ,.opin_x0y0_1(_i_tile_x9y5__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y5__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y5sw__prog_we_o) + ,.prog_din(_i_sbox_x9y5sw__prog_dout) + ,.prog_dout(_i_tile_x9y5__prog_dout) + ,.prog_we_o(_i_tile_x9y5__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y5nw ( + .bi_u1y0n_L1(_i_sbox_x9y5sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y6ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y5sw ( + .bi_u1v1n_L1(_i_sbox_x9y4sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y5sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y4nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y5__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y5__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y4__prog_we_o) + ,.prog_din(_i_tile_x9y4__prog_dout) + ,.prog_dout(_i_sbox_x9y5sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y5sw__prog_we_o) + ); + t_io_e i_tile_x9y6 ( + .bi_u1y0n_L1(_i_sbox_x9y6sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y6ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y6__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y6__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y6_0) + ,.opin_x0y0_0(_i_tile_x9y6__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y6__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y6_1) + ,.opin_x0y0_1(_i_tile_x9y6__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y6__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y6sw__prog_we_o) + ,.prog_din(_i_sbox_x9y6sw__prog_dout) + ,.prog_dout(_i_tile_x9y6__prog_dout) + ,.prog_we_o(_i_tile_x9y6__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y6nw ( + .bi_u1y0n_L1(_i_sbox_x9y6sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y7ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y6sw ( + .bi_u1v1n_L1(_i_sbox_x9y5sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y6sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y5nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y6__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y6__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y5__prog_we_o) + ,.prog_din(_i_tile_x9y5__prog_dout) + ,.prog_dout(_i_sbox_x9y6sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y6sw__prog_we_o) + ); + t_io_e i_tile_x9y7 ( + .bi_u1y0n_L1(_i_sbox_x9y7sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y7ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y7__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y7__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y7_0) + ,.opin_x0y0_0(_i_tile_x9y7__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y7__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y7_1) + ,.opin_x0y0_1(_i_tile_x9y7__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y7__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y7sw__prog_we_o) + ,.prog_din(_i_sbox_x9y7sw__prog_dout) + ,.prog_dout(_i_tile_x9y7__prog_dout) + ,.prog_we_o(_i_tile_x9y7__prog_we_o) + ); + sbox_nw_w_ex_w i_sbox_x9y7nw ( + .bi_u1y0n_L1(_i_sbox_x9y7sw__so_u1y0n_L1) + ,.bi_u1y1s_L1(_i_sbox_x8y8ne__so_x0y0s_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y7sw ( + .bi_u1v1n_L1(_i_sbox_x9y6sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y7sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y6nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y7__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y7__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y6__prog_we_o) + ,.prog_din(_i_tile_x9y6__prog_dout) + ,.prog_dout(_i_sbox_x9y7sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y7sw__prog_we_o) + ); + t_io_e i_tile_x9y8 ( + .bi_u1y0n_L1(_i_sbox_x9y8sw__so_u1y0n_L1) + ,.bi_u1y0s_L1(_i_sbox_x8y8ne__so_x0y0s_L1) + ,.cu_u1y0n_L1(_i_tile_x9y8__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_tile_x9y8__cu_u1y0s_L1) + ,.ipin_x0y0_0(ipin_x9y8_0) + ,.opin_x0y0_0(_i_tile_x9y8__opin_x0y0_0) + ,.oe_x0y0_0(_i_tile_x9y8__oe_x0y0_0) + ,.ipin_x0y0_1(ipin_x9y8_1) + ,.opin_x0y0_1(_i_tile_x9y8__opin_x0y0_1) + ,.oe_x0y0_1(_i_tile_x9y8__oe_x0y0_1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l2__Q) + ,.prog_done(_i_buf_prog_done_l2__Q) + ,.prog_we(_i_sbox_x9y8sw__prog_we_o) + ,.prog_din(_i_sbox_x9y8sw__prog_dout) + ,.prog_dout(_i_tile_x9y8__prog_dout) + ,.prog_we_o(_i_tile_x9y8__prog_we_o) + ); + sbox_nw_w_ex_sw i_sbox_x9y8nw ( + .bi_u1y0n_L1(_i_sbox_x9y8sw__so_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + sbox_sw_N_ex_w i_sbox_x9y8sw ( + .bi_u1v1n_L1(_i_sbox_x9y7sw__so_u1y0n_L1) + ,.so_u1y0n_L1(_i_sbox_x9y8sw__so_u1y0n_L1) + ,.bi_u1v1e_L1(_i_sbox_x8y7nw__so_x0y0e_L1) + ,.cu_u1y0n_L1(_i_tile_x8y8__cu_x0y0n_L1) + ,.cv_u1y0n_L1(_i_tile_x9y8__cu_u1y0n_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_tile_x9y7__prog_we_o) + ,.prog_din(_i_tile_x9y7__prog_dout) + ,.prog_dout(_i_sbox_x9y8sw__prog_dout) + ,.prog_we_o(_i_sbox_x9y8sw__prog_we_o) + ); + sbox_sw_s_ex_sw i_sbox_x9y9sw ( + .bi_u1v1e_L1(_i_sbox_x8y8nw__so_x0y0e_L1) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(_i_buf_prog_rst_l1__Q) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(_i_buf_prog_done_l1__Q) + ,.Q(_i_buf_prog_done_l0__Q) + ); + prga_simple_buf i_buf_prog_rst_l1 ( + .C(prog_clk) + ,.D(_i_buf_prog_rst_l2__Q) + ,.Q(_i_buf_prog_rst_l1__Q) + ); + prga_simple_bufr i_buf_prog_done_l1 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(_i_buf_prog_done_l2__Q) + ,.Q(_i_buf_prog_done_l1__Q) + ); + prga_simple_buf i_buf_prog_rst_l2 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l2__Q) + ); + prga_simple_bufr i_buf_prog_done_l2 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l2__Q) + ); + + assign opin_x0y1_0 = _i_tile_x0y1__opin_x0y0_0; + assign oe_x0y1_0 = _i_tile_x0y1__oe_x0y0_0; + assign opin_x0y1_1 = _i_tile_x0y1__opin_x0y0_1; + assign oe_x0y1_1 = _i_tile_x0y1__oe_x0y0_1; + assign opin_x0y2_0 = _i_tile_x0y2__opin_x0y0_0; + assign oe_x0y2_0 = _i_tile_x0y2__oe_x0y0_0; + assign opin_x0y2_1 = _i_tile_x0y2__opin_x0y0_1; + assign oe_x0y2_1 = _i_tile_x0y2__oe_x0y0_1; + assign opin_x0y3_0 = _i_tile_x0y3__opin_x0y0_0; + assign oe_x0y3_0 = _i_tile_x0y3__oe_x0y0_0; + assign opin_x0y3_1 = _i_tile_x0y3__opin_x0y0_1; + assign oe_x0y3_1 = _i_tile_x0y3__oe_x0y0_1; + assign opin_x0y4_0 = _i_tile_x0y4__opin_x0y0_0; + assign oe_x0y4_0 = _i_tile_x0y4__oe_x0y0_0; + assign opin_x0y4_1 = _i_tile_x0y4__opin_x0y0_1; + assign oe_x0y4_1 = _i_tile_x0y4__oe_x0y0_1; + assign opin_x0y5_0 = _i_tile_x0y5__opin_x0y0_0; + assign oe_x0y5_0 = _i_tile_x0y5__oe_x0y0_0; + assign opin_x0y5_1 = _i_tile_x0y5__opin_x0y0_1; + assign oe_x0y5_1 = _i_tile_x0y5__oe_x0y0_1; + assign opin_x0y6_0 = _i_tile_x0y6__opin_x0y0_0; + assign oe_x0y6_0 = _i_tile_x0y6__oe_x0y0_0; + assign opin_x0y6_1 = _i_tile_x0y6__opin_x0y0_1; + assign oe_x0y6_1 = _i_tile_x0y6__oe_x0y0_1; + assign opin_x0y7_0 = _i_tile_x0y7__opin_x0y0_0; + assign oe_x0y7_0 = _i_tile_x0y7__oe_x0y0_0; + assign opin_x0y7_1 = _i_tile_x0y7__opin_x0y0_1; + assign oe_x0y7_1 = _i_tile_x0y7__oe_x0y0_1; + assign opin_x0y8_0 = _i_tile_x0y8__opin_x0y0_0; + assign oe_x0y8_0 = _i_tile_x0y8__oe_x0y0_0; + assign opin_x0y8_1 = _i_tile_x0y8__opin_x0y0_1; + assign oe_x0y8_1 = _i_tile_x0y8__oe_x0y0_1; + assign opin_x1y9_0 = _i_tile_x1y9__opin_x0y0_0; + assign oe_x1y9_0 = _i_tile_x1y9__oe_x0y0_0; + assign opin_x1y9_1 = _i_tile_x1y9__opin_x0y0_1; + assign oe_x1y9_1 = _i_tile_x1y9__oe_x0y0_1; + assign opin_x2y9_0 = _i_tile_x2y9__opin_x0y0_0; + assign oe_x2y9_0 = _i_tile_x2y9__oe_x0y0_0; + assign opin_x2y9_1 = _i_tile_x2y9__opin_x0y0_1; + assign oe_x2y9_1 = _i_tile_x2y9__oe_x0y0_1; + assign opin_x3y9_0 = _i_tile_x3y9__opin_x0y0_0; + assign oe_x3y9_0 = _i_tile_x3y9__oe_x0y0_0; + assign opin_x3y9_1 = _i_tile_x3y9__opin_x0y0_1; + assign oe_x3y9_1 = _i_tile_x3y9__oe_x0y0_1; + assign opin_x4y9_0 = _i_tile_x4y9__opin_x0y0_0; + assign oe_x4y9_0 = _i_tile_x4y9__oe_x0y0_0; + assign opin_x4y9_1 = _i_tile_x4y9__opin_x0y0_1; + assign oe_x4y9_1 = _i_tile_x4y9__oe_x0y0_1; + assign opin_x5y9_0 = _i_tile_x5y9__opin_x0y0_0; + assign oe_x5y9_0 = _i_tile_x5y9__oe_x0y0_0; + assign opin_x5y9_1 = _i_tile_x5y9__opin_x0y0_1; + assign oe_x5y9_1 = _i_tile_x5y9__oe_x0y0_1; + assign opin_x6y9_0 = _i_tile_x6y9__opin_x0y0_0; + assign oe_x6y9_0 = _i_tile_x6y9__oe_x0y0_0; + assign opin_x6y9_1 = _i_tile_x6y9__opin_x0y0_1; + assign oe_x6y9_1 = _i_tile_x6y9__oe_x0y0_1; + assign opin_x7y9_0 = _i_tile_x7y9__opin_x0y0_0; + assign oe_x7y9_0 = _i_tile_x7y9__oe_x0y0_0; + assign opin_x7y9_1 = _i_tile_x7y9__opin_x0y0_1; + assign oe_x7y9_1 = _i_tile_x7y9__oe_x0y0_1; + assign opin_x8y9_0 = _i_tile_x8y9__opin_x0y0_0; + assign oe_x8y9_0 = _i_tile_x8y9__oe_x0y0_0; + assign opin_x8y9_1 = _i_tile_x8y9__opin_x0y0_1; + assign oe_x8y9_1 = _i_tile_x8y9__oe_x0y0_1; + assign opin_x9y1_0 = _i_tile_x9y1__opin_x0y0_0; + assign oe_x9y1_0 = _i_tile_x9y1__oe_x0y0_0; + assign opin_x9y1_1 = _i_tile_x9y1__opin_x0y0_1; + assign oe_x9y1_1 = _i_tile_x9y1__oe_x0y0_1; + assign opin_x9y2_0 = _i_tile_x9y2__opin_x0y0_0; + assign oe_x9y2_0 = _i_tile_x9y2__oe_x0y0_0; + assign opin_x9y2_1 = _i_tile_x9y2__opin_x0y0_1; + assign oe_x9y2_1 = _i_tile_x9y2__oe_x0y0_1; + assign opin_x9y3_0 = _i_tile_x9y3__opin_x0y0_0; + assign oe_x9y3_0 = _i_tile_x9y3__oe_x0y0_0; + assign opin_x9y3_1 = _i_tile_x9y3__opin_x0y0_1; + assign oe_x9y3_1 = _i_tile_x9y3__oe_x0y0_1; + assign opin_x9y4_0 = _i_tile_x9y4__opin_x0y0_0; + assign oe_x9y4_0 = _i_tile_x9y4__oe_x0y0_0; + assign opin_x9y4_1 = _i_tile_x9y4__opin_x0y0_1; + assign oe_x9y4_1 = _i_tile_x9y4__oe_x0y0_1; + assign opin_x9y5_0 = _i_tile_x9y5__opin_x0y0_0; + assign oe_x9y5_0 = _i_tile_x9y5__oe_x0y0_0; + assign opin_x9y5_1 = _i_tile_x9y5__opin_x0y0_1; + assign oe_x9y5_1 = _i_tile_x9y5__oe_x0y0_1; + assign opin_x9y6_0 = _i_tile_x9y6__opin_x0y0_0; + assign oe_x9y6_0 = _i_tile_x9y6__oe_x0y0_0; + assign opin_x9y6_1 = _i_tile_x9y6__opin_x0y0_1; + assign oe_x9y6_1 = _i_tile_x9y6__oe_x0y0_1; + assign opin_x9y7_0 = _i_tile_x9y7__opin_x0y0_0; + assign oe_x9y7_0 = _i_tile_x9y7__oe_x0y0_0; + assign opin_x9y7_1 = _i_tile_x9y7__opin_x0y0_1; + assign oe_x9y7_1 = _i_tile_x9y7__oe_x0y0_1; + assign opin_x9y8_0 = _i_tile_x9y8__opin_x0y0_0; + assign oe_x9y8_0 = _i_tile_x9y8__oe_x0y0_0; + assign opin_x9y8_1 = _i_tile_x9y8__opin_x0y0_1; + assign oe_x9y8_1 = _i_tile_x9y8__oe_x0y0_1; + assign prog_dout = _i_tile_x9y8__prog_dout; + assign prog_we_o = _i_tile_x9y8__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_n_ex_ne ( + input wire [11:0] bi_x1y0w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module t_io_w ( + input wire [11:0] bi_x0y0n_L1 + , input wire [11:0] bi_x0y0s_L1 + , output wire [11:0] cu_x0y0n_L1 + , output wire [11:0] cu_x0y0s_L1 + , input wire [0:0] ipin_x0y0_0 + , output wire [0:0] opin_x0y0_0 + , output wire [0:0] oe_x0y0_0 + , input wire [0:0] ipin_x0y0_1 + , output wire [0:0] opin_x0y0_1 + , output wire [0:0] oe_x0y0_1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_blk_i0__inpad; + wire [0:0] _i_blk_i0__opin; + wire [0:0] _i_blk_i0__oe; + wire [0:0] _i_blk_i0__prog_dout; + wire [0:0] _i_blk_i0__prog_we_o; + wire [0:0] _i_blk_i1__inpad; + wire [0:0] _i_blk_i1__opin; + wire [0:0] _i_blk_i1__oe; + wire [0:0] _i_blk_i1__prog_dout; + wire [0:0] _i_blk_i1__prog_we_o; + wire [0:0] _i_cbox_e0__bp_x0y0i0_outpad; + wire [11:0] _i_cbox_e0__cu_x0y0n_L1; + wire [11:0] _i_cbox_e0__cu_x0y0s_L1; + wire [0:0] _i_cbox_e0__bp_x0y0i1_outpad; + wire [0:0] _i_cbox_e0__prog_dout; + wire [0:0] _i_cbox_e0__prog_we_o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_buf_prog_rst_l1__Q; + wire [0:0] _i_buf_prog_done_l1__Q; + + iob i_blk_i0 ( + .outpad(_i_cbox_e0__bp_x0y0i0_outpad) + ,.inpad(_i_blk_i0__inpad) + ,.ipin(ipin_x0y0_0) + ,.opin(_i_blk_i0__opin) + ,.oe(_i_blk_i0__oe) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_blk_i0__prog_dout) + ,.prog_we_o(_i_blk_i0__prog_we_o) + ); + iob i_blk_i1 ( + .outpad(_i_cbox_e0__bp_x0y0i1_outpad) + ,.inpad(_i_blk_i1__inpad) + ,.ipin(ipin_x0y0_1) + ,.opin(_i_blk_i1__opin) + ,.oe(_i_blk_i1__oe) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk_i0__prog_we_o) + ,.prog_din(_i_blk_i0__prog_dout) + ,.prog_dout(_i_blk_i1__prog_dout) + ,.prog_we_o(_i_blk_i1__prog_we_o) + ); + cbox_t_io_w_e0 i_cbox_e0 ( + .bp_x0y0i0_outpad(_i_cbox_e0__bp_x0y0i0_outpad) + ,.bi_x0y0n_L1(bi_x0y0n_L1) + ,.bi_x0y0s_L1(bi_x0y0s_L1) + ,.bp_x0y0i0_inpad(_i_blk_i0__inpad) + ,.cu_x0y0n_L1(_i_cbox_e0__cu_x0y0n_L1) + ,.cu_x0y0s_L1(_i_cbox_e0__cu_x0y0s_L1) + ,.bp_x0y0i1_outpad(_i_cbox_e0__bp_x0y0i1_outpad) + ,.bp_x0y0i1_inpad(_i_blk_i1__inpad) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk_i1__prog_we_o) + ,.prog_din(_i_blk_i1__prog_dout) + ,.prog_dout(_i_cbox_e0__prog_dout) + ,.prog_we_o(_i_cbox_e0__prog_we_o) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(_i_buf_prog_rst_l1__Q) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(_i_buf_prog_done_l1__Q) + ,.Q(_i_buf_prog_done_l0__Q) + ); + prga_simple_buf i_buf_prog_rst_l1 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l1__Q) + ); + prga_simple_bufr i_buf_prog_done_l1 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l1__Q) + ); + + assign cu_x0y0n_L1 = _i_cbox_e0__cu_x0y0n_L1; + assign cu_x0y0s_L1 = _i_cbox_e0__cu_x0y0s_L1; + assign opin_x0y0_0 = _i_blk_i0__opin; + assign oe_x0y0_0 = _i_blk_i0__oe; + assign opin_x0y0_1 = _i_blk_i1__opin; + assign oe_x0y0_1 = _i_blk_i1__oe; + assign prog_dout = _i_cbox_e0__prog_dout; + assign prog_we_o = _i_cbox_e0__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_S_ex_e ( + input wire [11:0] bi_x0y1s_L1 + , output wire [11:0] so_x0y0s_L1 + , input wire [11:0] bi_x1y0w_L1 + , input wire [11:0] cu_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0s_L1_0__o; + wire [0:0] _i_sw_so_x0y0s_L1_1__o; + wire [0:0] _i_sw_so_x0y0s_L1_2__o; + wire [0:0] _i_sw_so_x0y0s_L1_3__o; + wire [0:0] _i_sw_so_x0y0s_L1_4__o; + wire [0:0] _i_sw_so_x0y0s_L1_5__o; + wire [0:0] _i_sw_so_x0y0s_L1_6__o; + wire [0:0] _i_sw_so_x0y0s_L1_7__o; + wire [0:0] _i_sw_so_x0y0s_L1_8__o; + wire [0:0] _i_sw_so_x0y0s_L1_9__o; + wire [0:0] _i_sw_so_x0y0s_L1_10__o; + wire [0:0] _i_sw_so_x0y0s_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_x0y0s_L1_0 ( + .i({cu_x0y0s_L1[0], + bi_x1y0w_L1[0], + bi_x0y1s_L1[0]}) + ,.o(_i_sw_so_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_1 ( + .i({cu_x0y0s_L1[1], + bi_x0y1s_L1[1]}) + ,.o(_i_sw_so_x0y0s_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_2 ( + .i({cu_x0y0s_L1[2], + bi_x1y0w_L1[2], + bi_x0y1s_L1[2]}) + ,.o(_i_sw_so_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_3 ( + .i({cu_x0y0s_L1[3], + bi_x1y0w_L1[3], + bi_x0y1s_L1[3]}) + ,.o(_i_sw_so_x0y0s_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_4 ( + .i({cu_x0y0s_L1[4], + bi_x1y0w_L1[4], + bi_x0y1s_L1[4]}) + ,.o(_i_sw_so_x0y0s_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_5 ( + .i({cu_x0y0s_L1[5], + bi_x1y0w_L1[5], + bi_x0y1s_L1[5]}) + ,.o(_i_sw_so_x0y0s_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_6 ( + .i({cu_x0y0s_L1[6], + bi_x1y0w_L1[6], + bi_x0y1s_L1[6]}) + ,.o(_i_sw_so_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_7 ( + .i({cu_x0y0s_L1[7], + bi_x1y0w_L1[7], + bi_x0y1s_L1[7]}) + ,.o(_i_sw_so_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_8 ( + .i({cu_x0y0s_L1[8], + bi_x1y0w_L1[8], + bi_x0y1s_L1[8]}) + ,.o(_i_sw_so_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_9 ( + .i({cu_x0y0s_L1[9], + bi_x1y0w_L1[9], + bi_x0y1s_L1[9]}) + ,.o(_i_sw_so_x0y0s_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_10 ( + .i({cu_x0y0s_L1[10], + bi_x1y0w_L1[10], + bi_x0y1s_L1[10]}) + ,.o(_i_sw_so_x0y0s_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_11 ( + .i({cu_x0y0s_L1[11], + bi_x1y0w_L1[11], + bi_x0y1s_L1[11]}) + ,.o(_i_sw_so_x0y0s_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0s_L1 = {_i_sw_so_x0y0s_L1_11__o, + _i_sw_so_x0y0s_L1_10__o, + _i_sw_so_x0y0s_L1_9__o, + _i_sw_so_x0y0s_L1_8__o, + _i_sw_so_x0y0s_L1_7__o, + _i_sw_so_x0y0s_L1_6__o, + _i_sw_so_x0y0s_L1_5__o, + _i_sw_so_x0y0s_L1_4__o, + _i_sw_so_x0y0s_L1_3__o, + _i_sw_so_x0y0s_L1_2__o, + _i_sw_so_x0y0s_L1_1__o, + _i_sw_so_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_e_ex_ne ( + input wire [11:0] bi_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_e_ex_e ( + input wire [11:0] bi_x0v1n_L1 + , input wire [11:0] bi_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_S_ex_es ( + input wire [11:0] bi_x1y0w_L1 + , output wire [11:0] so_x0y0s_L1 + , input wire [11:0] cu_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0s_L1_0__o; + wire [0:0] _i_sw_so_x0y0s_L1_1__o; + wire [0:0] _i_sw_so_x0y0s_L1_2__o; + wire [0:0] _i_sw_so_x0y0s_L1_3__o; + wire [0:0] _i_sw_so_x0y0s_L1_4__o; + wire [0:0] _i_sw_so_x0y0s_L1_5__o; + wire [0:0] _i_sw_so_x0y0s_L1_6__o; + wire [0:0] _i_sw_so_x0y0s_L1_7__o; + wire [0:0] _i_sw_so_x0y0s_L1_8__o; + wire [0:0] _i_sw_so_x0y0s_L1_9__o; + wire [0:0] _i_sw_so_x0y0s_L1_10__o; + wire [0:0] _i_sw_so_x0y0s_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0y0s_L1_0 ( + .i({cu_x0y0s_L1[0], + bi_x1y0w_L1[0]}) + ,.o(_i_sw_so_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + sw1 i_sw_so_x0y0s_L1_1 ( + .i(cu_x0y0s_L1[1]) + ,.o(_i_sw_so_x0y0s_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_2 ( + .i({cu_x0y0s_L1[2], + bi_x1y0w_L1[2]}) + ,.o(_i_sw_so_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_3 ( + .i({cu_x0y0s_L1[3], + bi_x1y0w_L1[3]}) + ,.o(_i_sw_so_x0y0s_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_4 ( + .i({cu_x0y0s_L1[4], + bi_x1y0w_L1[4]}) + ,.o(_i_sw_so_x0y0s_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_5 ( + .i({cu_x0y0s_L1[5], + bi_x1y0w_L1[5]}) + ,.o(_i_sw_so_x0y0s_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_6 ( + .i({cu_x0y0s_L1[6], + bi_x1y0w_L1[6]}) + ,.o(_i_sw_so_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_7 ( + .i({cu_x0y0s_L1[7], + bi_x1y0w_L1[7]}) + ,.o(_i_sw_so_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_8 ( + .i({cu_x0y0s_L1[8], + bi_x1y0w_L1[8]}) + ,.o(_i_sw_so_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_9 ( + .i({cu_x0y0s_L1[9], + bi_x1y0w_L1[9]}) + ,.o(_i_sw_so_x0y0s_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_10 ( + .i({cu_x0y0s_L1[10], + bi_x1y0w_L1[10]}) + ,.o(_i_sw_so_x0y0s_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_11 ( + .i({cu_x0y0s_L1[11], + bi_x1y0w_L1[11]}) + ,.o(_i_sw_so_x0y0s_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0s_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0s_L1 = {_i_sw_so_x0y0s_L1_11__o, + _i_sw_so_x0y0s_L1_10__o, + _i_sw_so_x0y0s_L1_9__o, + _i_sw_so_x0y0s_L1_8__o, + _i_sw_so_x0y0s_L1_7__o, + _i_sw_so_x0y0s_L1_6__o, + _i_sw_so_x0y0s_L1_5__o, + _i_sw_so_x0y0s_L1_4__o, + _i_sw_so_x0y0s_L1_3__o, + _i_sw_so_x0y0s_L1_2__o, + _i_sw_so_x0y0s_L1_1__o, + _i_sw_so_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_e_ex_es ( + input wire [11:0] bi_x0v1n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_n_ex_n ( + input wire [11:0] bi_x0y0e_L1 + , input wire [11:0] bi_x1y0w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_E_ex_ne ( + input wire [11:0] bi_u1y1s_L1 + , output wire [11:0] so_x0y0e_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0e_L1_0__o; + wire [0:0] _i_sw_so_x0y0e_L1_1__o; + wire [0:0] _i_sw_so_x0y0e_L1_2__o; + wire [0:0] _i_sw_so_x0y0e_L1_3__o; + wire [0:0] _i_sw_so_x0y0e_L1_4__o; + wire [0:0] _i_sw_so_x0y0e_L1_5__o; + wire [0:0] _i_sw_so_x0y0e_L1_6__o; + wire [0:0] _i_sw_so_x0y0e_L1_7__o; + wire [0:0] _i_sw_so_x0y0e_L1_8__o; + wire [0:0] _i_sw_so_x0y0e_L1_9__o; + wire [0:0] _i_sw_so_x0y0e_L1_10__o; + wire [0:0] _i_sw_so_x0y0e_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw1 i_sw_so_x0y0e_L1_0 ( + .i(bi_u1y1s_L1[1]) + ,.o(_i_sw_so_x0y0e_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_1 ( + .i(bi_u1y1s_L1[2]) + ,.o(_i_sw_so_x0y0e_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_2 ( + .i(bi_u1y1s_L1[3]) + ,.o(_i_sw_so_x0y0e_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_3 ( + .i(bi_u1y1s_L1[4]) + ,.o(_i_sw_so_x0y0e_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_4 ( + .i(bi_u1y1s_L1[5]) + ,.o(_i_sw_so_x0y0e_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_5 ( + .i(bi_u1y1s_L1[6]) + ,.o(_i_sw_so_x0y0e_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_6 ( + .i(bi_u1y1s_L1[7]) + ,.o(_i_sw_so_x0y0e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_7 ( + .i(bi_u1y1s_L1[8]) + ,.o(_i_sw_so_x0y0e_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_8 ( + .i(bi_u1y1s_L1[9]) + ,.o(_i_sw_so_x0y0e_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_9 ( + .i(bi_u1y1s_L1[10]) + ,.o(_i_sw_so_x0y0e_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_10 ( + .i(bi_u1y1s_L1[11]) + ,.o(_i_sw_so_x0y0e_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + sw1 i_sw_so_x0y0e_L1_11 ( + .i(bi_u1y1s_L1[0]) + ,.o(_i_sw_so_x0y0e_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0e_L1 = {_i_sw_so_x0y0e_L1_11__o, + _i_sw_so_x0y0e_L1_10__o, + _i_sw_so_x0y0e_L1_9__o, + _i_sw_so_x0y0e_L1_8__o, + _i_sw_so_x0y0e_L1_7__o, + _i_sw_so_x0y0e_L1_6__o, + _i_sw_so_x0y0e_L1_5__o, + _i_sw_so_x0y0e_L1_4__o, + _i_sw_so_x0y0e_L1_3__o, + _i_sw_so_x0y0e_L1_2__o, + _i_sw_so_x0y0e_L1_1__o, + _i_sw_so_x0y0e_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_S ( + input wire [11:0] bi_x0y0e_L1 + , output wire [11:0] so_x0y0s_L1 + , input wire [11:0] bi_x0y1s_L1 + , input wire [11:0] bi_x1y0w_L1 + , input wire [11:0] cu_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0s_L1_0__o; + wire [0:0] _i_sw_so_x0y0s_L1_1__o; + wire [0:0] _i_sw_so_x0y0s_L1_2__o; + wire [0:0] _i_sw_so_x0y0s_L1_3__o; + wire [0:0] _i_sw_so_x0y0s_L1_4__o; + wire [0:0] _i_sw_so_x0y0s_L1_5__o; + wire [0:0] _i_sw_so_x0y0s_L1_6__o; + wire [0:0] _i_sw_so_x0y0s_L1_7__o; + wire [0:0] _i_sw_so_x0y0s_L1_8__o; + wire [0:0] _i_sw_so_x0y0s_L1_9__o; + wire [0:0] _i_sw_so_x0y0s_L1_10__o; + wire [0:0] _i_sw_so_x0y0s_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw4 i_sw_so_x0y0s_L1_0 ( + .i({cu_x0y0s_L1[0], + bi_x1y0w_L1[0], + bi_x0y1s_L1[0], + bi_x0y0e_L1[11]}) + ,.o(_i_sw_so_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_1 ( + .i({cu_x0y0s_L1[1], + bi_x0y1s_L1[1], + bi_x0y0e_L1[0]}) + ,.o(_i_sw_so_x0y0s_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_2 ( + .i({cu_x0y0s_L1[2], + bi_x1y0w_L1[2], + bi_x0y1s_L1[2], + bi_x0y0e_L1[1]}) + ,.o(_i_sw_so_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_3 ( + .i({cu_x0y0s_L1[3], + bi_x1y0w_L1[3], + bi_x0y1s_L1[3], + bi_x0y0e_L1[2]}) + ,.o(_i_sw_so_x0y0s_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_4 ( + .i({cu_x0y0s_L1[4], + bi_x1y0w_L1[4], + bi_x0y1s_L1[4], + bi_x0y0e_L1[3]}) + ,.o(_i_sw_so_x0y0s_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_5 ( + .i({cu_x0y0s_L1[5], + bi_x1y0w_L1[5], + bi_x0y1s_L1[5], + bi_x0y0e_L1[4]}) + ,.o(_i_sw_so_x0y0s_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_6 ( + .i({cu_x0y0s_L1[6], + bi_x1y0w_L1[6], + bi_x0y1s_L1[6], + bi_x0y0e_L1[5]}) + ,.o(_i_sw_so_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_7 ( + .i({cu_x0y0s_L1[7], + bi_x1y0w_L1[7], + bi_x0y1s_L1[7], + bi_x0y0e_L1[6]}) + ,.o(_i_sw_so_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_8 ( + .i({cu_x0y0s_L1[8], + bi_x1y0w_L1[8], + bi_x0y1s_L1[8], + bi_x0y0e_L1[7]}) + ,.o(_i_sw_so_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_9 ( + .i({cu_x0y0s_L1[9], + bi_x1y0w_L1[9], + bi_x0y1s_L1[9], + bi_x0y0e_L1[8]}) + ,.o(_i_sw_so_x0y0s_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_10 ( + .i({cu_x0y0s_L1[10], + bi_x1y0w_L1[10], + bi_x0y1s_L1[10], + bi_x0y0e_L1[9]}) + ,.o(_i_sw_so_x0y0s_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_11 ( + .i({cu_x0y0s_L1[11], + bi_x1y0w_L1[11], + bi_x0y1s_L1[11], + bi_x0y0e_L1[10]}) + ,.o(_i_sw_so_x0y0s_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0s_L1 = {_i_sw_so_x0y0s_L1_11__o, + _i_sw_so_x0y0s_L1_10__o, + _i_sw_so_x0y0s_L1_9__o, + _i_sw_so_x0y0s_L1_8__o, + _i_sw_so_x0y0s_L1_7__o, + _i_sw_so_x0y0s_L1_6__o, + _i_sw_so_x0y0s_L1_5__o, + _i_sw_so_x0y0s_L1_4__o, + _i_sw_so_x0y0s_L1_3__o, + _i_sw_so_x0y0s_L1_2__o, + _i_sw_so_x0y0s_L1_1__o, + _i_sw_so_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_E_ex_e ( + input wire [11:0] bi_u1y0n_L1 + , output wire [11:0] so_x0y0e_L1 + , input wire [11:0] bi_u1y1s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0e_L1_0__o; + wire [0:0] _i_sw_so_x0y0e_L1_1__o; + wire [0:0] _i_sw_so_x0y0e_L1_2__o; + wire [0:0] _i_sw_so_x0y0e_L1_3__o; + wire [0:0] _i_sw_so_x0y0e_L1_4__o; + wire [0:0] _i_sw_so_x0y0e_L1_5__o; + wire [0:0] _i_sw_so_x0y0e_L1_6__o; + wire [0:0] _i_sw_so_x0y0e_L1_7__o; + wire [0:0] _i_sw_so_x0y0e_L1_8__o; + wire [0:0] _i_sw_so_x0y0e_L1_9__o; + wire [0:0] _i_sw_so_x0y0e_L1_10__o; + wire [0:0] _i_sw_so_x0y0e_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw1 i_sw_so_x0y0e_L1_0 ( + .i(bi_u1y1s_L1[1]) + ,.o(_i_sw_so_x0y0e_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_1 ( + .i({bi_u1y1s_L1[2], + bi_u1y0n_L1[3]}) + ,.o(_i_sw_so_x0y0e_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_2 ( + .i({bi_u1y1s_L1[3], + bi_u1y0n_L1[4]}) + ,.o(_i_sw_so_x0y0e_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_3 ( + .i({bi_u1y1s_L1[4], + bi_u1y0n_L1[5]}) + ,.o(_i_sw_so_x0y0e_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_4 ( + .i({bi_u1y1s_L1[5], + bi_u1y0n_L1[6]}) + ,.o(_i_sw_so_x0y0e_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_5 ( + .i({bi_u1y1s_L1[6], + bi_u1y0n_L1[7]}) + ,.o(_i_sw_so_x0y0e_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_6 ( + .i({bi_u1y1s_L1[7], + bi_u1y0n_L1[8]}) + ,.o(_i_sw_so_x0y0e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_7 ( + .i({bi_u1y1s_L1[8], + bi_u1y0n_L1[9]}) + ,.o(_i_sw_so_x0y0e_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_8 ( + .i({bi_u1y1s_L1[9], + bi_u1y0n_L1[10]}) + ,.o(_i_sw_so_x0y0e_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_9 ( + .i({bi_u1y1s_L1[10], + bi_u1y0n_L1[11]}) + ,.o(_i_sw_so_x0y0e_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_10 ( + .i({bi_u1y1s_L1[11], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_11 ( + .i({bi_u1y1s_L1[0], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_so_x0y0e_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0e_L1 = {_i_sw_so_x0y0e_L1_11__o, + _i_sw_so_x0y0e_L1_10__o, + _i_sw_so_x0y0e_L1_9__o, + _i_sw_so_x0y0e_L1_8__o, + _i_sw_so_x0y0e_L1_7__o, + _i_sw_so_x0y0e_L1_6__o, + _i_sw_so_x0y0e_L1_5__o, + _i_sw_so_x0y0e_L1_4__o, + _i_sw_so_x0y0e_L1_3__o, + _i_sw_so_x0y0e_L1_2__o, + _i_sw_so_x0y0e_L1_1__o, + _i_sw_so_x0y0e_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_W_ex_n ( + input wire [11:0] bi_x0y0s_L1 + , output wire [11:0] so_x0v1w_L1 + , input wire [11:0] bi_x1v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0v1w_L1_0__o; + wire [0:0] _i_sw_so_x0v1w_L1_1__o; + wire [0:0] _i_sw_so_x0v1w_L1_2__o; + wire [0:0] _i_sw_so_x0v1w_L1_3__o; + wire [0:0] _i_sw_so_x0v1w_L1_4__o; + wire [0:0] _i_sw_so_x0v1w_L1_5__o; + wire [0:0] _i_sw_so_x0v1w_L1_6__o; + wire [0:0] _i_sw_so_x0v1w_L1_7__o; + wire [0:0] _i_sw_so_x0v1w_L1_8__o; + wire [0:0] _i_sw_so_x0v1w_L1_9__o; + wire [0:0] _i_sw_so_x0v1w_L1_10__o; + wire [0:0] _i_sw_so_x0v1w_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0v1w_L1_0 ( + .i({bi_x1v1w_L1[0], + bi_x0y0s_L1[11]}) + ,.o(_i_sw_so_x0v1w_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_1 ( + .i({bi_x1v1w_L1[1], + bi_x0y0s_L1[0]}) + ,.o(_i_sw_so_x0v1w_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_2 ( + .i({bi_x1v1w_L1[2], + bi_x0y0s_L1[1]}) + ,.o(_i_sw_so_x0v1w_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_3 ( + .i({bi_x1v1w_L1[3], + bi_x0y0s_L1[2]}) + ,.o(_i_sw_so_x0v1w_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_4 ( + .i({bi_x1v1w_L1[4], + bi_x0y0s_L1[3]}) + ,.o(_i_sw_so_x0v1w_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_5 ( + .i({bi_x1v1w_L1[5], + bi_x0y0s_L1[4]}) + ,.o(_i_sw_so_x0v1w_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_6 ( + .i({bi_x1v1w_L1[6], + bi_x0y0s_L1[5]}) + ,.o(_i_sw_so_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_7 ( + .i({bi_x1v1w_L1[7], + bi_x0y0s_L1[6]}) + ,.o(_i_sw_so_x0v1w_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_8 ( + .i({bi_x1v1w_L1[8], + bi_x0y0s_L1[7]}) + ,.o(_i_sw_so_x0v1w_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_9 ( + .i({bi_x1v1w_L1[9], + bi_x0y0s_L1[8]}) + ,.o(_i_sw_so_x0v1w_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_10 ( + .i({bi_x1v1w_L1[10], + bi_x0y0s_L1[9]}) + ,.o(_i_sw_so_x0v1w_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_11 ( + .i({bi_x1v1w_L1[11], + bi_x0y0s_L1[10]}) + ,.o(_i_sw_so_x0v1w_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0v1w_L1 = {_i_sw_so_x0v1w_L1_11__o, + _i_sw_so_x0v1w_L1_10__o, + _i_sw_so_x0v1w_L1_9__o, + _i_sw_so_x0v1w_L1_8__o, + _i_sw_so_x0v1w_L1_7__o, + _i_sw_so_x0v1w_L1_6__o, + _i_sw_so_x0v1w_L1_5__o, + _i_sw_so_x0v1w_L1_4__o, + _i_sw_so_x0v1w_L1_3__o, + _i_sw_so_x0v1w_L1_2__o, + _i_sw_so_x0v1w_L1_1__o, + _i_sw_so_x0v1w_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_N_ex_ne ( + input wire [11:0] bi_x0v1w_L1 + , output wire [11:0] so_u1y0n_L1 + , input wire [11:0] cu_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_u1y0n_L1_0__o; + wire [0:0] _i_sw_so_u1y0n_L1_1__o; + wire [0:0] _i_sw_so_u1y0n_L1_2__o; + wire [0:0] _i_sw_so_u1y0n_L1_3__o; + wire [0:0] _i_sw_so_u1y0n_L1_4__o; + wire [0:0] _i_sw_so_u1y0n_L1_5__o; + wire [0:0] _i_sw_so_u1y0n_L1_6__o; + wire [0:0] _i_sw_so_u1y0n_L1_7__o; + wire [0:0] _i_sw_so_u1y0n_L1_8__o; + wire [0:0] _i_sw_so_u1y0n_L1_9__o; + wire [0:0] _i_sw_so_u1y0n_L1_10__o; + wire [0:0] _i_sw_so_u1y0n_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_u1y0n_L1_0 ( + .i({cu_u1y0n_L1[0], + bi_x0v1w_L1[11]}) + ,.o(_i_sw_so_u1y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_1 ( + .i({cu_u1y0n_L1[1], + bi_x0v1w_L1[0]}) + ,.o(_i_sw_so_u1y0n_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_2 ( + .i({cu_u1y0n_L1[2], + bi_x0v1w_L1[1]}) + ,.o(_i_sw_so_u1y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_3 ( + .i({cu_u1y0n_L1[3], + bi_x0v1w_L1[2]}) + ,.o(_i_sw_so_u1y0n_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_4 ( + .i({cu_u1y0n_L1[4], + bi_x0v1w_L1[3]}) + ,.o(_i_sw_so_u1y0n_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_5 ( + .i({cu_u1y0n_L1[5], + bi_x0v1w_L1[4]}) + ,.o(_i_sw_so_u1y0n_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_6 ( + .i({cu_u1y0n_L1[6], + bi_x0v1w_L1[5]}) + ,.o(_i_sw_so_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_7 ( + .i({cu_u1y0n_L1[7], + bi_x0v1w_L1[6]}) + ,.o(_i_sw_so_u1y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_8 ( + .i({cu_u1y0n_L1[8], + bi_x0v1w_L1[7]}) + ,.o(_i_sw_so_u1y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_9 ( + .i({cu_u1y0n_L1[9], + bi_x0v1w_L1[8]}) + ,.o(_i_sw_so_u1y0n_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_10 ( + .i({cu_u1y0n_L1[10], + bi_x0v1w_L1[9]}) + ,.o(_i_sw_so_u1y0n_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + sw2 i_sw_so_u1y0n_L1_11 ( + .i({cu_u1y0n_L1[11], + bi_x0v1w_L1[10]}) + ,.o(_i_sw_so_u1y0n_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_u1y0n_L1 = {_i_sw_so_u1y0n_L1_11__o, + _i_sw_so_u1y0n_L1_10__o, + _i_sw_so_u1y0n_L1_9__o, + _i_sw_so_u1y0n_L1_8__o, + _i_sw_so_u1y0n_L1_7__o, + _i_sw_so_u1y0n_L1_6__o, + _i_sw_so_u1y0n_L1_5__o, + _i_sw_so_u1y0n_L1_4__o, + _i_sw_so_u1y0n_L1_3__o, + _i_sw_so_u1y0n_L1_2__o, + _i_sw_so_u1y0n_L1_1__o, + _i_sw_so_u1y0n_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_W ( + input wire [11:0] bi_x0v1n_L1 + , output wire [11:0] so_x0v1w_L1 + , input wire [11:0] bi_x0y0s_L1 + , input wire [11:0] bi_x1v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0v1w_L1_0__o; + wire [0:0] _i_sw_so_x0v1w_L1_1__o; + wire [0:0] _i_sw_so_x0v1w_L1_2__o; + wire [0:0] _i_sw_so_x0v1w_L1_3__o; + wire [0:0] _i_sw_so_x0v1w_L1_4__o; + wire [0:0] _i_sw_so_x0v1w_L1_5__o; + wire [0:0] _i_sw_so_x0v1w_L1_6__o; + wire [0:0] _i_sw_so_x0v1w_L1_7__o; + wire [0:0] _i_sw_so_x0v1w_L1_8__o; + wire [0:0] _i_sw_so_x0v1w_L1_9__o; + wire [0:0] _i_sw_so_x0v1w_L1_10__o; + wire [0:0] _i_sw_so_x0v1w_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_x0v1w_L1_0 ( + .i({bi_x1v1w_L1[0], + bi_x0y0s_L1[11], + bi_x0v1n_L1[1]}) + ,.o(_i_sw_so_x0v1w_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_1 ( + .i({bi_x1v1w_L1[1], + bi_x0y0s_L1[0], + bi_x0v1n_L1[2]}) + ,.o(_i_sw_so_x0v1w_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_2 ( + .i({bi_x1v1w_L1[2], + bi_x0y0s_L1[1], + bi_x0v1n_L1[3]}) + ,.o(_i_sw_so_x0v1w_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_3 ( + .i({bi_x1v1w_L1[3], + bi_x0y0s_L1[2], + bi_x0v1n_L1[4]}) + ,.o(_i_sw_so_x0v1w_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_4 ( + .i({bi_x1v1w_L1[4], + bi_x0y0s_L1[3], + bi_x0v1n_L1[5]}) + ,.o(_i_sw_so_x0v1w_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_5 ( + .i({bi_x1v1w_L1[5], + bi_x0y0s_L1[4], + bi_x0v1n_L1[6]}) + ,.o(_i_sw_so_x0v1w_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_6 ( + .i({bi_x1v1w_L1[6], + bi_x0y0s_L1[5], + bi_x0v1n_L1[7]}) + ,.o(_i_sw_so_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_7 ( + .i({bi_x1v1w_L1[7], + bi_x0y0s_L1[6], + bi_x0v1n_L1[8]}) + ,.o(_i_sw_so_x0v1w_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_8 ( + .i({bi_x1v1w_L1[8], + bi_x0y0s_L1[7], + bi_x0v1n_L1[9]}) + ,.o(_i_sw_so_x0v1w_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_9 ( + .i({bi_x1v1w_L1[9], + bi_x0y0s_L1[8], + bi_x0v1n_L1[10]}) + ,.o(_i_sw_so_x0v1w_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_10 ( + .i({bi_x1v1w_L1[10], + bi_x0y0s_L1[9], + bi_x0v1n_L1[11]}) + ,.o(_i_sw_so_x0v1w_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_11 ( + .i({bi_x1v1w_L1[11], + bi_x0y0s_L1[10], + bi_x0v1n_L1[0]}) + ,.o(_i_sw_so_x0v1w_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0v1w_L1 = {_i_sw_so_x0v1w_L1_11__o, + _i_sw_so_x0v1w_L1_10__o, + _i_sw_so_x0v1w_L1_9__o, + _i_sw_so_x0v1w_L1_8__o, + _i_sw_so_x0v1w_L1_7__o, + _i_sw_so_x0v1w_L1_6__o, + _i_sw_so_x0v1w_L1_5__o, + _i_sw_so_x0v1w_L1_4__o, + _i_sw_so_x0v1w_L1_3__o, + _i_sw_so_x0v1w_L1_2__o, + _i_sw_so_x0v1w_L1_1__o, + _i_sw_so_x0v1w_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_N_ex_e ( + input wire [11:0] bi_u1v1n_L1 + , output wire [11:0] so_u1y0n_L1 + , input wire [11:0] bi_x0v1w_L1 + , input wire [11:0] cu_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_u1y0n_L1_0__o; + wire [0:0] _i_sw_so_u1y0n_L1_1__o; + wire [0:0] _i_sw_so_u1y0n_L1_2__o; + wire [0:0] _i_sw_so_u1y0n_L1_3__o; + wire [0:0] _i_sw_so_u1y0n_L1_4__o; + wire [0:0] _i_sw_so_u1y0n_L1_5__o; + wire [0:0] _i_sw_so_u1y0n_L1_6__o; + wire [0:0] _i_sw_so_u1y0n_L1_7__o; + wire [0:0] _i_sw_so_u1y0n_L1_8__o; + wire [0:0] _i_sw_so_u1y0n_L1_9__o; + wire [0:0] _i_sw_so_u1y0n_L1_10__o; + wire [0:0] _i_sw_so_u1y0n_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_u1y0n_L1_0 ( + .i({cu_u1y0n_L1[0], + bi_x0v1w_L1[11], + bi_u1v1n_L1[0]}) + ,.o(_i_sw_so_u1y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_1 ( + .i({cu_u1y0n_L1[1], + bi_x0v1w_L1[0], + bi_u1v1n_L1[1]}) + ,.o(_i_sw_so_u1y0n_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_2 ( + .i({cu_u1y0n_L1[2], + bi_x0v1w_L1[1], + bi_u1v1n_L1[2]}) + ,.o(_i_sw_so_u1y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_3 ( + .i({cu_u1y0n_L1[3], + bi_x0v1w_L1[2], + bi_u1v1n_L1[3]}) + ,.o(_i_sw_so_u1y0n_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_4 ( + .i({cu_u1y0n_L1[4], + bi_x0v1w_L1[3], + bi_u1v1n_L1[4]}) + ,.o(_i_sw_so_u1y0n_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_5 ( + .i({cu_u1y0n_L1[5], + bi_x0v1w_L1[4], + bi_u1v1n_L1[5]}) + ,.o(_i_sw_so_u1y0n_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_6 ( + .i({cu_u1y0n_L1[6], + bi_x0v1w_L1[5], + bi_u1v1n_L1[6]}) + ,.o(_i_sw_so_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_7 ( + .i({cu_u1y0n_L1[7], + bi_x0v1w_L1[6], + bi_u1v1n_L1[7]}) + ,.o(_i_sw_so_u1y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_8 ( + .i({cu_u1y0n_L1[8], + bi_x0v1w_L1[7], + bi_u1v1n_L1[8]}) + ,.o(_i_sw_so_u1y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_9 ( + .i({cu_u1y0n_L1[9], + bi_x0v1w_L1[8], + bi_u1v1n_L1[9]}) + ,.o(_i_sw_so_u1y0n_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_10 ( + .i({cu_u1y0n_L1[10], + bi_x0v1w_L1[9], + bi_u1v1n_L1[10]}) + ,.o(_i_sw_so_u1y0n_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_11 ( + .i({cu_u1y0n_L1[11], + bi_x0v1w_L1[10], + bi_u1v1n_L1[11]}) + ,.o(_i_sw_so_u1y0n_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_u1y0n_L1 = {_i_sw_so_u1y0n_L1_11__o, + _i_sw_so_u1y0n_L1_10__o, + _i_sw_so_u1y0n_L1_9__o, + _i_sw_so_u1y0n_L1_8__o, + _i_sw_so_u1y0n_L1_7__o, + _i_sw_so_u1y0n_L1_6__o, + _i_sw_so_u1y0n_L1_5__o, + _i_sw_so_u1y0n_L1_4__o, + _i_sw_so_u1y0n_L1_3__o, + _i_sw_so_u1y0n_L1_2__o, + _i_sw_so_u1y0n_L1_1__o, + _i_sw_so_u1y0n_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_S_ex_s ( + input wire [11:0] bi_x0y0e_L1 + , output wire [11:0] so_x0y0s_L1 + , input wire [11:0] bi_x1y0w_L1 + , input wire [11:0] cu_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0s_L1_0__o; + wire [0:0] _i_sw_so_x0y0s_L1_1__o; + wire [0:0] _i_sw_so_x0y0s_L1_2__o; + wire [0:0] _i_sw_so_x0y0s_L1_3__o; + wire [0:0] _i_sw_so_x0y0s_L1_4__o; + wire [0:0] _i_sw_so_x0y0s_L1_5__o; + wire [0:0] _i_sw_so_x0y0s_L1_6__o; + wire [0:0] _i_sw_so_x0y0s_L1_7__o; + wire [0:0] _i_sw_so_x0y0s_L1_8__o; + wire [0:0] _i_sw_so_x0y0s_L1_9__o; + wire [0:0] _i_sw_so_x0y0s_L1_10__o; + wire [0:0] _i_sw_so_x0y0s_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_x0y0s_L1_0 ( + .i({cu_x0y0s_L1[0], + bi_x1y0w_L1[0], + bi_x0y0e_L1[11]}) + ,.o(_i_sw_so_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + sw2 i_sw_so_x0y0s_L1_1 ( + .i({cu_x0y0s_L1[1], + bi_x0y0e_L1[0]}) + ,.o(_i_sw_so_x0y0s_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_2 ( + .i({cu_x0y0s_L1[2], + bi_x1y0w_L1[2], + bi_x0y0e_L1[1]}) + ,.o(_i_sw_so_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_3 ( + .i({cu_x0y0s_L1[3], + bi_x1y0w_L1[3], + bi_x0y0e_L1[2]}) + ,.o(_i_sw_so_x0y0s_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_4 ( + .i({cu_x0y0s_L1[4], + bi_x1y0w_L1[4], + bi_x0y0e_L1[3]}) + ,.o(_i_sw_so_x0y0s_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_5 ( + .i({cu_x0y0s_L1[5], + bi_x1y0w_L1[5], + bi_x0y0e_L1[4]}) + ,.o(_i_sw_so_x0y0s_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_6 ( + .i({cu_x0y0s_L1[6], + bi_x1y0w_L1[6], + bi_x0y0e_L1[5]}) + ,.o(_i_sw_so_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_7 ( + .i({cu_x0y0s_L1[7], + bi_x1y0w_L1[7], + bi_x0y0e_L1[6]}) + ,.o(_i_sw_so_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_8 ( + .i({cu_x0y0s_L1[8], + bi_x1y0w_L1[8], + bi_x0y0e_L1[7]}) + ,.o(_i_sw_so_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_9 ( + .i({cu_x0y0s_L1[9], + bi_x1y0w_L1[9], + bi_x0y0e_L1[8]}) + ,.o(_i_sw_so_x0y0s_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_10 ( + .i({cu_x0y0s_L1[10], + bi_x1y0w_L1[10], + bi_x0y0e_L1[9]}) + ,.o(_i_sw_so_x0y0s_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_11 ( + .i({cu_x0y0s_L1[11], + bi_x1y0w_L1[11], + bi_x0y0e_L1[10]}) + ,.o(_i_sw_so_x0y0s_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0s_L1 = {_i_sw_so_x0y0s_L1_11__o, + _i_sw_so_x0y0s_L1_10__o, + _i_sw_so_x0y0s_L1_9__o, + _i_sw_so_x0y0s_L1_8__o, + _i_sw_so_x0y0s_L1_7__o, + _i_sw_so_x0y0s_L1_6__o, + _i_sw_so_x0y0s_L1_5__o, + _i_sw_so_x0y0s_L1_4__o, + _i_sw_so_x0y0s_L1_3__o, + _i_sw_so_x0y0s_L1_2__o, + _i_sw_so_x0y0s_L1_1__o, + _i_sw_so_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_E_ex_es ( + input wire [11:0] bi_u1y0n_L1 + , output wire [11:0] so_x0y0e_L1 + , input wire [11:0] cu_x0y0e_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0e_L1_0__o; + wire [0:0] _i_sw_so_x0y0e_L1_1__o; + wire [0:0] _i_sw_so_x0y0e_L1_2__o; + wire [0:0] _i_sw_so_x0y0e_L1_3__o; + wire [0:0] _i_sw_so_x0y0e_L1_4__o; + wire [0:0] _i_sw_so_x0y0e_L1_5__o; + wire [0:0] _i_sw_so_x0y0e_L1_6__o; + wire [0:0] _i_sw_so_x0y0e_L1_7__o; + wire [0:0] _i_sw_so_x0y0e_L1_8__o; + wire [0:0] _i_sw_so_x0y0e_L1_9__o; + wire [0:0] _i_sw_so_x0y0e_L1_10__o; + wire [0:0] _i_sw_so_x0y0e_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw1 i_sw_so_x0y0e_L1_0 ( + .i(cu_x0y0e_L1[0]) + ,.o(_i_sw_so_x0y0e_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_1 ( + .i({cu_x0y0e_L1[1], + bi_u1y0n_L1[3]}) + ,.o(_i_sw_so_x0y0e_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_2 ( + .i({cu_x0y0e_L1[2], + bi_u1y0n_L1[4]}) + ,.o(_i_sw_so_x0y0e_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_3 ( + .i({cu_x0y0e_L1[3], + bi_u1y0n_L1[5]}) + ,.o(_i_sw_so_x0y0e_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_4 ( + .i({cu_x0y0e_L1[4], + bi_u1y0n_L1[6]}) + ,.o(_i_sw_so_x0y0e_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_5 ( + .i({cu_x0y0e_L1[5], + bi_u1y0n_L1[7]}) + ,.o(_i_sw_so_x0y0e_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_6 ( + .i({cu_x0y0e_L1[6], + bi_u1y0n_L1[8]}) + ,.o(_i_sw_so_x0y0e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_7 ( + .i({cu_x0y0e_L1[7], + bi_u1y0n_L1[9]}) + ,.o(_i_sw_so_x0y0e_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_8 ( + .i({cu_x0y0e_L1[8], + bi_u1y0n_L1[10]}) + ,.o(_i_sw_so_x0y0e_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_9 ( + .i({cu_x0y0e_L1[9], + bi_u1y0n_L1[11]}) + ,.o(_i_sw_so_x0y0e_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_10 ( + .i({cu_x0y0e_L1[10], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_11 ( + .i({cu_x0y0e_L1[11], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_so_x0y0e_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0y0e_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0e_L1 = {_i_sw_so_x0y0e_L1_11__o, + _i_sw_so_x0y0e_L1_10__o, + _i_sw_so_x0y0e_L1_9__o, + _i_sw_so_x0y0e_L1_8__o, + _i_sw_so_x0y0e_L1_7__o, + _i_sw_so_x0y0e_L1_6__o, + _i_sw_so_x0y0e_L1_5__o, + _i_sw_so_x0y0e_L1_4__o, + _i_sw_so_x0y0e_L1_3__o, + _i_sw_so_x0y0e_L1_2__o, + _i_sw_so_x0y0e_L1_1__o, + _i_sw_so_x0y0e_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module t_io_n ( + input wire [11:0] bi_x0v1e_L1 + , input wire [11:0] bi_x0v1w_L1 + , output wire [11:0] cu_x0v1e_L1 + , output wire [11:0] cu_x0v1w_L1 + , input wire [0:0] ipin_x0y0_0 + , output wire [0:0] opin_x0y0_0 + , output wire [0:0] oe_x0y0_0 + , input wire [0:0] ipin_x0y0_1 + , output wire [0:0] opin_x0y0_1 + , output wire [0:0] oe_x0y0_1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_blk_i0__inpad; + wire [0:0] _i_blk_i0__opin; + wire [0:0] _i_blk_i0__oe; + wire [0:0] _i_blk_i0__prog_dout; + wire [0:0] _i_blk_i0__prog_we_o; + wire [0:0] _i_blk_i1__inpad; + wire [0:0] _i_blk_i1__opin; + wire [0:0] _i_blk_i1__oe; + wire [0:0] _i_blk_i1__prog_dout; + wire [0:0] _i_blk_i1__prog_we_o; + wire [0:0] _i_cbox_s0__bp_x0y0i0_outpad; + wire [11:0] _i_cbox_s0__cu_x0v1e_L1; + wire [11:0] _i_cbox_s0__cu_x0v1w_L1; + wire [0:0] _i_cbox_s0__bp_x0y0i1_outpad; + wire [0:0] _i_cbox_s0__prog_dout; + wire [0:0] _i_cbox_s0__prog_we_o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_buf_prog_rst_l1__Q; + wire [0:0] _i_buf_prog_done_l1__Q; + + iob i_blk_i0 ( + .outpad(_i_cbox_s0__bp_x0y0i0_outpad) + ,.inpad(_i_blk_i0__inpad) + ,.ipin(ipin_x0y0_0) + ,.opin(_i_blk_i0__opin) + ,.oe(_i_blk_i0__oe) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_blk_i0__prog_dout) + ,.prog_we_o(_i_blk_i0__prog_we_o) + ); + iob i_blk_i1 ( + .outpad(_i_cbox_s0__bp_x0y0i1_outpad) + ,.inpad(_i_blk_i1__inpad) + ,.ipin(ipin_x0y0_1) + ,.opin(_i_blk_i1__opin) + ,.oe(_i_blk_i1__oe) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk_i0__prog_we_o) + ,.prog_din(_i_blk_i0__prog_dout) + ,.prog_dout(_i_blk_i1__prog_dout) + ,.prog_we_o(_i_blk_i1__prog_we_o) + ); + cbox_t_io_n_s0 i_cbox_s0 ( + .bp_x0y0i0_outpad(_i_cbox_s0__bp_x0y0i0_outpad) + ,.bi_x0v1e_L1(bi_x0v1e_L1) + ,.bi_x0v1w_L1(bi_x0v1w_L1) + ,.bp_x0y0i0_inpad(_i_blk_i0__inpad) + ,.cu_x0v1e_L1(_i_cbox_s0__cu_x0v1e_L1) + ,.cu_x0v1w_L1(_i_cbox_s0__cu_x0v1w_L1) + ,.bp_x0y0i1_outpad(_i_cbox_s0__bp_x0y0i1_outpad) + ,.bp_x0y0i1_inpad(_i_blk_i1__inpad) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk_i1__prog_we_o) + ,.prog_din(_i_blk_i1__prog_dout) + ,.prog_dout(_i_cbox_s0__prog_dout) + ,.prog_we_o(_i_cbox_s0__prog_we_o) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(_i_buf_prog_rst_l1__Q) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(_i_buf_prog_done_l1__Q) + ,.Q(_i_buf_prog_done_l0__Q) + ); + prga_simple_buf i_buf_prog_rst_l1 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l1__Q) + ); + prga_simple_bufr i_buf_prog_done_l1 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l1__Q) + ); + + assign cu_x0v1e_L1 = _i_cbox_s0__cu_x0v1e_L1; + assign cu_x0v1w_L1 = _i_cbox_s0__cu_x0v1w_L1; + assign opin_x0y0_0 = _i_blk_i0__opin; + assign oe_x0y0_0 = _i_blk_i0__oe; + assign opin_x0y0_1 = _i_blk_i1__opin; + assign oe_x0y0_1 = _i_blk_i1__oe; + assign prog_dout = _i_cbox_s0__prog_dout; + assign prog_we_o = _i_cbox_s0__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_W_ex_s ( + input wire [11:0] bi_x0v1n_L1 + , output wire [11:0] so_x0v1w_L1 + , input wire [11:0] bi_x1v1w_L1 + , input wire [11:0] cu_x0v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0v1w_L1_0__o; + wire [0:0] _i_sw_so_x0v1w_L1_1__o; + wire [0:0] _i_sw_so_x0v1w_L1_2__o; + wire [0:0] _i_sw_so_x0v1w_L1_3__o; + wire [0:0] _i_sw_so_x0v1w_L1_4__o; + wire [0:0] _i_sw_so_x0v1w_L1_5__o; + wire [0:0] _i_sw_so_x0v1w_L1_6__o; + wire [0:0] _i_sw_so_x0v1w_L1_7__o; + wire [0:0] _i_sw_so_x0v1w_L1_8__o; + wire [0:0] _i_sw_so_x0v1w_L1_9__o; + wire [0:0] _i_sw_so_x0v1w_L1_10__o; + wire [0:0] _i_sw_so_x0v1w_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_x0v1w_L1_0 ( + .i({cu_x0v1w_L1[0], + bi_x1v1w_L1[0], + bi_x0v1n_L1[1]}) + ,.o(_i_sw_so_x0v1w_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_1 ( + .i({cu_x0v1w_L1[1], + bi_x1v1w_L1[1], + bi_x0v1n_L1[2]}) + ,.o(_i_sw_so_x0v1w_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_2 ( + .i({cu_x0v1w_L1[2], + bi_x1v1w_L1[2], + bi_x0v1n_L1[3]}) + ,.o(_i_sw_so_x0v1w_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_3 ( + .i({cu_x0v1w_L1[3], + bi_x1v1w_L1[3], + bi_x0v1n_L1[4]}) + ,.o(_i_sw_so_x0v1w_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_4 ( + .i({cu_x0v1w_L1[4], + bi_x1v1w_L1[4], + bi_x0v1n_L1[5]}) + ,.o(_i_sw_so_x0v1w_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_5 ( + .i({cu_x0v1w_L1[5], + bi_x1v1w_L1[5], + bi_x0v1n_L1[6]}) + ,.o(_i_sw_so_x0v1w_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_6 ( + .i({cu_x0v1w_L1[6], + bi_x1v1w_L1[6], + bi_x0v1n_L1[7]}) + ,.o(_i_sw_so_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_7 ( + .i({cu_x0v1w_L1[7], + bi_x1v1w_L1[7], + bi_x0v1n_L1[8]}) + ,.o(_i_sw_so_x0v1w_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_8 ( + .i({cu_x0v1w_L1[8], + bi_x1v1w_L1[8], + bi_x0v1n_L1[9]}) + ,.o(_i_sw_so_x0v1w_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_9 ( + .i({cu_x0v1w_L1[9], + bi_x1v1w_L1[9], + bi_x0v1n_L1[10]}) + ,.o(_i_sw_so_x0v1w_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_10 ( + .i({cu_x0v1w_L1[10], + bi_x1v1w_L1[10], + bi_x0v1n_L1[11]}) + ,.o(_i_sw_so_x0v1w_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + sw3 i_sw_so_x0v1w_L1_11 ( + .i({cu_x0v1w_L1[11], + bi_x1v1w_L1[11], + bi_x0v1n_L1[0]}) + ,.o(_i_sw_so_x0v1w_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0v1w_L1 = {_i_sw_so_x0v1w_L1_11__o, + _i_sw_so_x0v1w_L1_10__o, + _i_sw_so_x0v1w_L1_9__o, + _i_sw_so_x0v1w_L1_8__o, + _i_sw_so_x0v1w_L1_7__o, + _i_sw_so_x0v1w_L1_6__o, + _i_sw_so_x0v1w_L1_5__o, + _i_sw_so_x0v1w_L1_4__o, + _i_sw_so_x0v1w_L1_3__o, + _i_sw_so_x0v1w_L1_2__o, + _i_sw_so_x0v1w_L1_1__o, + _i_sw_so_x0v1w_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_s_ex_es ( + input wire [11:0] bi_x0v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_E_ex_n ( + input wire [11:0] bi_u1y0e_L1 + , output wire [11:0] so_x0y0e_L1 + , input wire [11:0] bi_u1y1s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0e_L1_0__o; + wire [0:0] _i_sw_so_x0y0e_L1_1__o; + wire [0:0] _i_sw_so_x0y0e_L1_2__o; + wire [0:0] _i_sw_so_x0y0e_L1_3__o; + wire [0:0] _i_sw_so_x0y0e_L1_4__o; + wire [0:0] _i_sw_so_x0y0e_L1_5__o; + wire [0:0] _i_sw_so_x0y0e_L1_6__o; + wire [0:0] _i_sw_so_x0y0e_L1_7__o; + wire [0:0] _i_sw_so_x0y0e_L1_8__o; + wire [0:0] _i_sw_so_x0y0e_L1_9__o; + wire [0:0] _i_sw_so_x0y0e_L1_10__o; + wire [0:0] _i_sw_so_x0y0e_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0y0e_L1_0 ( + .i({bi_u1y1s_L1[1], + bi_u1y0e_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_1 ( + .i({bi_u1y1s_L1[2], + bi_u1y0e_L1[1]}) + ,.o(_i_sw_so_x0y0e_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_2 ( + .i({bi_u1y1s_L1[3], + bi_u1y0e_L1[2]}) + ,.o(_i_sw_so_x0y0e_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_3 ( + .i({bi_u1y1s_L1[4], + bi_u1y0e_L1[3]}) + ,.o(_i_sw_so_x0y0e_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_4 ( + .i({bi_u1y1s_L1[5], + bi_u1y0e_L1[4]}) + ,.o(_i_sw_so_x0y0e_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_5 ( + .i({bi_u1y1s_L1[6], + bi_u1y0e_L1[5]}) + ,.o(_i_sw_so_x0y0e_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_6 ( + .i({bi_u1y1s_L1[7], + bi_u1y0e_L1[6]}) + ,.o(_i_sw_so_x0y0e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_7 ( + .i({bi_u1y1s_L1[8], + bi_u1y0e_L1[7]}) + ,.o(_i_sw_so_x0y0e_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_8 ( + .i({bi_u1y1s_L1[9], + bi_u1y0e_L1[8]}) + ,.o(_i_sw_so_x0y0e_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_9 ( + .i({bi_u1y1s_L1[10], + bi_u1y0e_L1[9]}) + ,.o(_i_sw_so_x0y0e_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_10 ( + .i({bi_u1y1s_L1[11], + bi_u1y0e_L1[10]}) + ,.o(_i_sw_so_x0y0e_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + sw2 i_sw_so_x0y0e_L1_11 ( + .i({bi_u1y1s_L1[0], + bi_u1y0e_L1[11]}) + ,.o(_i_sw_so_x0y0e_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0e_L1 = {_i_sw_so_x0y0e_L1_11__o, + _i_sw_so_x0y0e_L1_10__o, + _i_sw_so_x0y0e_L1_9__o, + _i_sw_so_x0y0e_L1_8__o, + _i_sw_so_x0y0e_L1_7__o, + _i_sw_so_x0y0e_L1_6__o, + _i_sw_so_x0y0e_L1_5__o, + _i_sw_so_x0y0e_L1_4__o, + _i_sw_so_x0y0e_L1_3__o, + _i_sw_so_x0y0e_L1_2__o, + _i_sw_so_x0y0e_L1_1__o, + _i_sw_so_x0y0e_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_E ( + input wire [11:0] bi_u1y0n_L1 + , output wire [11:0] so_x0y0e_L1 + , input wire [11:0] bi_u1y0e_L1 + , input wire [11:0] bi_u1y1s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0e_L1_0__o; + wire [0:0] _i_sw_so_x0y0e_L1_1__o; + wire [0:0] _i_sw_so_x0y0e_L1_2__o; + wire [0:0] _i_sw_so_x0y0e_L1_3__o; + wire [0:0] _i_sw_so_x0y0e_L1_4__o; + wire [0:0] _i_sw_so_x0y0e_L1_5__o; + wire [0:0] _i_sw_so_x0y0e_L1_6__o; + wire [0:0] _i_sw_so_x0y0e_L1_7__o; + wire [0:0] _i_sw_so_x0y0e_L1_8__o; + wire [0:0] _i_sw_so_x0y0e_L1_9__o; + wire [0:0] _i_sw_so_x0y0e_L1_10__o; + wire [0:0] _i_sw_so_x0y0e_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0y0e_L1_0 ( + .i({bi_u1y1s_L1[1], + bi_u1y0e_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_1 ( + .i({bi_u1y1s_L1[2], + bi_u1y0e_L1[1], + bi_u1y0n_L1[3]}) + ,.o(_i_sw_so_x0y0e_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_2 ( + .i({bi_u1y1s_L1[3], + bi_u1y0e_L1[2], + bi_u1y0n_L1[4]}) + ,.o(_i_sw_so_x0y0e_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_3 ( + .i({bi_u1y1s_L1[4], + bi_u1y0e_L1[3], + bi_u1y0n_L1[5]}) + ,.o(_i_sw_so_x0y0e_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_4 ( + .i({bi_u1y1s_L1[5], + bi_u1y0e_L1[4], + bi_u1y0n_L1[6]}) + ,.o(_i_sw_so_x0y0e_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_5 ( + .i({bi_u1y1s_L1[6], + bi_u1y0e_L1[5], + bi_u1y0n_L1[7]}) + ,.o(_i_sw_so_x0y0e_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_6 ( + .i({bi_u1y1s_L1[7], + bi_u1y0e_L1[6], + bi_u1y0n_L1[8]}) + ,.o(_i_sw_so_x0y0e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_7 ( + .i({bi_u1y1s_L1[8], + bi_u1y0e_L1[7], + bi_u1y0n_L1[9]}) + ,.o(_i_sw_so_x0y0e_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_8 ( + .i({bi_u1y1s_L1[9], + bi_u1y0e_L1[8], + bi_u1y0n_L1[10]}) + ,.o(_i_sw_so_x0y0e_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_9 ( + .i({bi_u1y1s_L1[10], + bi_u1y0e_L1[9], + bi_u1y0n_L1[11]}) + ,.o(_i_sw_so_x0y0e_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_10 ( + .i({bi_u1y1s_L1[11], + bi_u1y0e_L1[10], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_11 ( + .i({bi_u1y1s_L1[0], + bi_u1y0e_L1[11], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_so_x0y0e_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0e_L1 = {_i_sw_so_x0y0e_L1_11__o, + _i_sw_so_x0y0e_L1_10__o, + _i_sw_so_x0y0e_L1_9__o, + _i_sw_so_x0y0e_L1_8__o, + _i_sw_so_x0y0e_L1_7__o, + _i_sw_so_x0y0e_L1_6__o, + _i_sw_so_x0y0e_L1_5__o, + _i_sw_so_x0y0e_L1_4__o, + _i_sw_so_x0y0e_L1_3__o, + _i_sw_so_x0y0e_L1_2__o, + _i_sw_so_x0y0e_L1_1__o, + _i_sw_so_x0y0e_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_N_ex_n ( + input wire [11:0] bi_u1v1e_L1 + , output wire [11:0] so_u1y0n_L1 + , input wire [11:0] bi_x0v1w_L1 + , input wire [11:0] cu_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_u1y0n_L1_0__o; + wire [0:0] _i_sw_so_u1y0n_L1_1__o; + wire [0:0] _i_sw_so_u1y0n_L1_2__o; + wire [0:0] _i_sw_so_u1y0n_L1_3__o; + wire [0:0] _i_sw_so_u1y0n_L1_4__o; + wire [0:0] _i_sw_so_u1y0n_L1_5__o; + wire [0:0] _i_sw_so_u1y0n_L1_6__o; + wire [0:0] _i_sw_so_u1y0n_L1_7__o; + wire [0:0] _i_sw_so_u1y0n_L1_8__o; + wire [0:0] _i_sw_so_u1y0n_L1_9__o; + wire [0:0] _i_sw_so_u1y0n_L1_10__o; + wire [0:0] _i_sw_so_u1y0n_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_u1y0n_L1_0 ( + .i({cu_u1y0n_L1[0], + bi_x0v1w_L1[11], + bi_u1v1e_L1[9]}) + ,.o(_i_sw_so_u1y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_1 ( + .i({cu_u1y0n_L1[1], + bi_x0v1w_L1[0], + bi_u1v1e_L1[10]}) + ,.o(_i_sw_so_u1y0n_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_2 ( + .i({cu_u1y0n_L1[2], + bi_x0v1w_L1[1], + bi_u1v1e_L1[11]}) + ,.o(_i_sw_so_u1y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_3 ( + .i({cu_u1y0n_L1[3], + bi_x0v1w_L1[2], + bi_u1v1e_L1[0]}) + ,.o(_i_sw_so_u1y0n_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_4 ( + .i({cu_u1y0n_L1[4], + bi_x0v1w_L1[3], + bi_u1v1e_L1[1]}) + ,.o(_i_sw_so_u1y0n_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_5 ( + .i({cu_u1y0n_L1[5], + bi_x0v1w_L1[4], + bi_u1v1e_L1[2]}) + ,.o(_i_sw_so_u1y0n_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_6 ( + .i({cu_u1y0n_L1[6], + bi_x0v1w_L1[5], + bi_u1v1e_L1[3]}) + ,.o(_i_sw_so_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_7 ( + .i({cu_u1y0n_L1[7], + bi_x0v1w_L1[6], + bi_u1v1e_L1[4]}) + ,.o(_i_sw_so_u1y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_8 ( + .i({cu_u1y0n_L1[8], + bi_x0v1w_L1[7], + bi_u1v1e_L1[5]}) + ,.o(_i_sw_so_u1y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_9 ( + .i({cu_u1y0n_L1[9], + bi_x0v1w_L1[8], + bi_u1v1e_L1[6]}) + ,.o(_i_sw_so_u1y0n_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_10 ( + .i({cu_u1y0n_L1[10], + bi_x0v1w_L1[9], + bi_u1v1e_L1[7]}) + ,.o(_i_sw_so_u1y0n_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_11 ( + .i({cu_u1y0n_L1[11], + bi_x0v1w_L1[10], + bi_u1v1e_L1[8]}) + ,.o(_i_sw_so_u1y0n_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_u1y0n_L1 = {_i_sw_so_u1y0n_L1_11__o, + _i_sw_so_u1y0n_L1_10__o, + _i_sw_so_u1y0n_L1_9__o, + _i_sw_so_u1y0n_L1_8__o, + _i_sw_so_u1y0n_L1_7__o, + _i_sw_so_u1y0n_L1_6__o, + _i_sw_so_u1y0n_L1_5__o, + _i_sw_so_u1y0n_L1_4__o, + _i_sw_so_u1y0n_L1_3__o, + _i_sw_so_u1y0n_L1_2__o, + _i_sw_so_u1y0n_L1_1__o, + _i_sw_so_u1y0n_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_N ( + input wire [11:0] bi_u1v1n_L1 + , output wire [11:0] so_u1y0n_L1 + , input wire [11:0] bi_u1v1e_L1 + , input wire [11:0] bi_x0v1w_L1 + , input wire [11:0] cu_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_u1y0n_L1_0__o; + wire [0:0] _i_sw_so_u1y0n_L1_1__o; + wire [0:0] _i_sw_so_u1y0n_L1_2__o; + wire [0:0] _i_sw_so_u1y0n_L1_3__o; + wire [0:0] _i_sw_so_u1y0n_L1_4__o; + wire [0:0] _i_sw_so_u1y0n_L1_5__o; + wire [0:0] _i_sw_so_u1y0n_L1_6__o; + wire [0:0] _i_sw_so_u1y0n_L1_7__o; + wire [0:0] _i_sw_so_u1y0n_L1_8__o; + wire [0:0] _i_sw_so_u1y0n_L1_9__o; + wire [0:0] _i_sw_so_u1y0n_L1_10__o; + wire [0:0] _i_sw_so_u1y0n_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw4 i_sw_so_u1y0n_L1_0 ( + .i({cu_u1y0n_L1[0], + bi_x0v1w_L1[11], + bi_u1v1e_L1[9], + bi_u1v1n_L1[0]}) + ,.o(_i_sw_so_u1y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_1 ( + .i({cu_u1y0n_L1[1], + bi_x0v1w_L1[0], + bi_u1v1e_L1[10], + bi_u1v1n_L1[1]}) + ,.o(_i_sw_so_u1y0n_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_2 ( + .i({cu_u1y0n_L1[2], + bi_x0v1w_L1[1], + bi_u1v1e_L1[11], + bi_u1v1n_L1[2]}) + ,.o(_i_sw_so_u1y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_3 ( + .i({cu_u1y0n_L1[3], + bi_x0v1w_L1[2], + bi_u1v1e_L1[0], + bi_u1v1n_L1[3]}) + ,.o(_i_sw_so_u1y0n_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_4 ( + .i({cu_u1y0n_L1[4], + bi_x0v1w_L1[3], + bi_u1v1e_L1[1], + bi_u1v1n_L1[4]}) + ,.o(_i_sw_so_u1y0n_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_5 ( + .i({cu_u1y0n_L1[5], + bi_x0v1w_L1[4], + bi_u1v1e_L1[2], + bi_u1v1n_L1[5]}) + ,.o(_i_sw_so_u1y0n_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_6 ( + .i({cu_u1y0n_L1[6], + bi_x0v1w_L1[5], + bi_u1v1e_L1[3], + bi_u1v1n_L1[6]}) + ,.o(_i_sw_so_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_7 ( + .i({cu_u1y0n_L1[7], + bi_x0v1w_L1[6], + bi_u1v1e_L1[4], + bi_u1v1n_L1[7]}) + ,.o(_i_sw_so_u1y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_8 ( + .i({cu_u1y0n_L1[8], + bi_x0v1w_L1[7], + bi_u1v1e_L1[5], + bi_u1v1n_L1[8]}) + ,.o(_i_sw_so_u1y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_9 ( + .i({cu_u1y0n_L1[9], + bi_x0v1w_L1[8], + bi_u1v1e_L1[6], + bi_u1v1n_L1[9]}) + ,.o(_i_sw_so_u1y0n_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_10 ( + .i({cu_u1y0n_L1[10], + bi_x0v1w_L1[9], + bi_u1v1e_L1[7], + bi_u1v1n_L1[10]}) + ,.o(_i_sw_so_u1y0n_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_11 ( + .i({cu_u1y0n_L1[11], + bi_x0v1w_L1[10], + bi_u1v1e_L1[8], + bi_u1v1n_L1[11]}) + ,.o(_i_sw_so_u1y0n_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_u1y0n_L1 = {_i_sw_so_u1y0n_L1_11__o, + _i_sw_so_u1y0n_L1_10__o, + _i_sw_so_u1y0n_L1_9__o, + _i_sw_so_u1y0n_L1_8__o, + _i_sw_so_u1y0n_L1_7__o, + _i_sw_so_u1y0n_L1_6__o, + _i_sw_so_u1y0n_L1_5__o, + _i_sw_so_u1y0n_L1_4__o, + _i_sw_so_u1y0n_L1_3__o, + _i_sw_so_u1y0n_L1_2__o, + _i_sw_so_u1y0n_L1_1__o, + _i_sw_so_u1y0n_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_E_ex_s ( + input wire [11:0] bi_u1y0n_L1 + , output wire [11:0] so_x0y0e_L1 + , input wire [11:0] bi_u1y0e_L1 + , input wire [11:0] cu_x0y0e_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0e_L1_0__o; + wire [0:0] _i_sw_so_x0y0e_L1_1__o; + wire [0:0] _i_sw_so_x0y0e_L1_2__o; + wire [0:0] _i_sw_so_x0y0e_L1_3__o; + wire [0:0] _i_sw_so_x0y0e_L1_4__o; + wire [0:0] _i_sw_so_x0y0e_L1_5__o; + wire [0:0] _i_sw_so_x0y0e_L1_6__o; + wire [0:0] _i_sw_so_x0y0e_L1_7__o; + wire [0:0] _i_sw_so_x0y0e_L1_8__o; + wire [0:0] _i_sw_so_x0y0e_L1_9__o; + wire [0:0] _i_sw_so_x0y0e_L1_10__o; + wire [0:0] _i_sw_so_x0y0e_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0e_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0y0e_L1_0 ( + .i({cu_x0y0e_L1[0], + bi_u1y0e_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_1 ( + .i({cu_x0y0e_L1[1], + bi_u1y0e_L1[1], + bi_u1y0n_L1[3]}) + ,.o(_i_sw_so_x0y0e_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_2 ( + .i({cu_x0y0e_L1[2], + bi_u1y0e_L1[2], + bi_u1y0n_L1[4]}) + ,.o(_i_sw_so_x0y0e_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_3 ( + .i({cu_x0y0e_L1[3], + bi_u1y0e_L1[3], + bi_u1y0n_L1[5]}) + ,.o(_i_sw_so_x0y0e_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_4 ( + .i({cu_x0y0e_L1[4], + bi_u1y0e_L1[4], + bi_u1y0n_L1[6]}) + ,.o(_i_sw_so_x0y0e_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_5 ( + .i({cu_x0y0e_L1[5], + bi_u1y0e_L1[5], + bi_u1y0n_L1[7]}) + ,.o(_i_sw_so_x0y0e_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_6 ( + .i({cu_x0y0e_L1[6], + bi_u1y0e_L1[6], + bi_u1y0n_L1[8]}) + ,.o(_i_sw_so_x0y0e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_7 ( + .i({cu_x0y0e_L1[7], + bi_u1y0e_L1[7], + bi_u1y0n_L1[9]}) + ,.o(_i_sw_so_x0y0e_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_8 ( + .i({cu_x0y0e_L1[8], + bi_u1y0e_L1[8], + bi_u1y0n_L1[10]}) + ,.o(_i_sw_so_x0y0e_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_9 ( + .i({cu_x0y0e_L1[9], + bi_u1y0e_L1[9], + bi_u1y0n_L1[11]}) + ,.o(_i_sw_so_x0y0e_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_10 ( + .i({cu_x0y0e_L1[10], + bi_u1y0e_L1[10], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_so_x0y0e_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + sw3 i_sw_so_x0y0e_L1_11 ( + .i({cu_x0y0e_L1[11], + bi_u1y0e_L1[11], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_so_x0y0e_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0e_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0e_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0e_L1 = {_i_sw_so_x0y0e_L1_11__o, + _i_sw_so_x0y0e_L1_10__o, + _i_sw_so_x0y0e_L1_9__o, + _i_sw_so_x0y0e_L1_8__o, + _i_sw_so_x0y0e_L1_7__o, + _i_sw_so_x0y0e_L1_6__o, + _i_sw_so_x0y0e_L1_5__o, + _i_sw_so_x0y0e_L1_4__o, + _i_sw_so_x0y0e_L1_3__o, + _i_sw_so_x0y0e_L1_2__o, + _i_sw_so_x0y0e_L1_1__o, + _i_sw_so_x0y0e_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_s_ex_s ( + input wire [11:0] bi_u1v1e_L1 + , input wire [11:0] bi_x0v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_n_ex_nw ( + input wire [11:0] bi_x0y0e_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_S_ex_w ( + input wire [11:0] bi_x0y0e_L1 + , output wire [11:0] so_x0y0s_L1 + , input wire [11:0] bi_x0y1s_L1 + , input wire [11:0] cu_x0y0s_L1 + , input wire [11:0] cv_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0s_L1_0__o; + wire [0:0] _i_sw_so_x0y0s_L1_1__o; + wire [0:0] _i_sw_so_x0y0s_L1_2__o; + wire [0:0] _i_sw_so_x0y0s_L1_3__o; + wire [0:0] _i_sw_so_x0y0s_L1_4__o; + wire [0:0] _i_sw_so_x0y0s_L1_5__o; + wire [0:0] _i_sw_so_x0y0s_L1_6__o; + wire [0:0] _i_sw_so_x0y0s_L1_7__o; + wire [0:0] _i_sw_so_x0y0s_L1_8__o; + wire [0:0] _i_sw_so_x0y0s_L1_9__o; + wire [0:0] _i_sw_so_x0y0s_L1_10__o; + wire [0:0] _i_sw_so_x0y0s_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw4 i_sw_so_x0y0s_L1_0 ( + .i({cv_x0y0s_L1[0], + cu_x0y0s_L1[0], + bi_x0y1s_L1[0], + bi_x0y0e_L1[11]}) + ,.o(_i_sw_so_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_1 ( + .i({cv_x0y0s_L1[1], + cu_x0y0s_L1[1], + bi_x0y1s_L1[1], + bi_x0y0e_L1[0]}) + ,.o(_i_sw_so_x0y0s_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_2 ( + .i({cv_x0y0s_L1[2], + cu_x0y0s_L1[2], + bi_x0y1s_L1[2], + bi_x0y0e_L1[1]}) + ,.o(_i_sw_so_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_3 ( + .i({cv_x0y0s_L1[3], + cu_x0y0s_L1[3], + bi_x0y1s_L1[3], + bi_x0y0e_L1[2]}) + ,.o(_i_sw_so_x0y0s_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_4 ( + .i({cv_x0y0s_L1[4], + cu_x0y0s_L1[4], + bi_x0y1s_L1[4], + bi_x0y0e_L1[3]}) + ,.o(_i_sw_so_x0y0s_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_5 ( + .i({cv_x0y0s_L1[5], + cu_x0y0s_L1[5], + bi_x0y1s_L1[5], + bi_x0y0e_L1[4]}) + ,.o(_i_sw_so_x0y0s_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_6 ( + .i({cv_x0y0s_L1[6], + cu_x0y0s_L1[6], + bi_x0y1s_L1[6], + bi_x0y0e_L1[5]}) + ,.o(_i_sw_so_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_7 ( + .i({cv_x0y0s_L1[7], + cu_x0y0s_L1[7], + bi_x0y1s_L1[7], + bi_x0y0e_L1[6]}) + ,.o(_i_sw_so_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_8 ( + .i({cv_x0y0s_L1[8], + cu_x0y0s_L1[8], + bi_x0y1s_L1[8], + bi_x0y0e_L1[7]}) + ,.o(_i_sw_so_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_9 ( + .i({cv_x0y0s_L1[9], + cu_x0y0s_L1[9], + bi_x0y1s_L1[9], + bi_x0y0e_L1[8]}) + ,.o(_i_sw_so_x0y0s_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_10 ( + .i({cv_x0y0s_L1[10], + cu_x0y0s_L1[10], + bi_x0y1s_L1[10], + bi_x0y0e_L1[9]}) + ,.o(_i_sw_so_x0y0s_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + sw4 i_sw_so_x0y0s_L1_11 ( + .i({cv_x0y0s_L1[11], + cu_x0y0s_L1[11], + bi_x0y1s_L1[11], + bi_x0y0e_L1[10]}) + ,.o(_i_sw_so_x0y0s_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_x0y0s_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0s_L1 = {_i_sw_so_x0y0s_L1_11__o, + _i_sw_so_x0y0s_L1_10__o, + _i_sw_so_x0y0s_L1_9__o, + _i_sw_so_x0y0s_L1_8__o, + _i_sw_so_x0y0s_L1_7__o, + _i_sw_so_x0y0s_L1_6__o, + _i_sw_so_x0y0s_L1_5__o, + _i_sw_so_x0y0s_L1_4__o, + _i_sw_so_x0y0s_L1_3__o, + _i_sw_so_x0y0s_L1_2__o, + _i_sw_so_x0y0s_L1_1__o, + _i_sw_so_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_W_ex_nw ( + input wire [11:0] bi_x0y0s_L1 + , output wire [11:0] so_x0v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0v1w_L1_0__o; + wire [0:0] _i_sw_so_x0v1w_L1_1__o; + wire [0:0] _i_sw_so_x0v1w_L1_2__o; + wire [0:0] _i_sw_so_x0v1w_L1_3__o; + wire [0:0] _i_sw_so_x0v1w_L1_4__o; + wire [0:0] _i_sw_so_x0v1w_L1_5__o; + wire [0:0] _i_sw_so_x0v1w_L1_6__o; + wire [0:0] _i_sw_so_x0v1w_L1_7__o; + wire [0:0] _i_sw_so_x0v1w_L1_8__o; + wire [0:0] _i_sw_so_x0v1w_L1_9__o; + wire [0:0] _i_sw_so_x0v1w_L1_10__o; + wire [0:0] _i_sw_so_x0v1w_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw1 i_sw_so_x0v1w_L1_0 ( + .i(bi_x0y0s_L1[11]) + ,.o(_i_sw_so_x0v1w_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_1 ( + .i(bi_x0y0s_L1[0]) + ,.o(_i_sw_so_x0v1w_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_2 ( + .i(bi_x0y0s_L1[1]) + ,.o(_i_sw_so_x0v1w_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_3 ( + .i(bi_x0y0s_L1[2]) + ,.o(_i_sw_so_x0v1w_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_4 ( + .i(bi_x0y0s_L1[3]) + ,.o(_i_sw_so_x0v1w_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_5 ( + .i(bi_x0y0s_L1[4]) + ,.o(_i_sw_so_x0v1w_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_6 ( + .i(bi_x0y0s_L1[5]) + ,.o(_i_sw_so_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_7 ( + .i(bi_x0y0s_L1[6]) + ,.o(_i_sw_so_x0v1w_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_8 ( + .i(bi_x0y0s_L1[7]) + ,.o(_i_sw_so_x0v1w_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_9 ( + .i(bi_x0y0s_L1[8]) + ,.o(_i_sw_so_x0v1w_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_10 ( + .i(bi_x0y0s_L1[9]) + ,.o(_i_sw_so_x0v1w_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + sw1 i_sw_so_x0v1w_L1_11 ( + .i(bi_x0y0s_L1[10]) + ,.o(_i_sw_so_x0v1w_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + scanchain_data_d1 i_prog_data_i_sw_so_x0v1w_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0v1w_L1 = {_i_sw_so_x0v1w_L1_11__o, + _i_sw_so_x0v1w_L1_10__o, + _i_sw_so_x0v1w_L1_9__o, + _i_sw_so_x0v1w_L1_8__o, + _i_sw_so_x0v1w_L1_7__o, + _i_sw_so_x0v1w_L1_6__o, + _i_sw_so_x0v1w_L1_5__o, + _i_sw_so_x0v1w_L1_4__o, + _i_sw_so_x0v1w_L1_3__o, + _i_sw_so_x0v1w_L1_2__o, + _i_sw_so_x0v1w_L1_1__o, + _i_sw_so_x0v1w_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_W_ex_w ( + input wire [11:0] bi_x0v1n_L1 + , output wire [11:0] so_x0v1w_L1 + , input wire [11:0] bi_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0v1w_L1_0__o; + wire [0:0] _i_sw_so_x0v1w_L1_1__o; + wire [0:0] _i_sw_so_x0v1w_L1_2__o; + wire [0:0] _i_sw_so_x0v1w_L1_3__o; + wire [0:0] _i_sw_so_x0v1w_L1_4__o; + wire [0:0] _i_sw_so_x0v1w_L1_5__o; + wire [0:0] _i_sw_so_x0v1w_L1_6__o; + wire [0:0] _i_sw_so_x0v1w_L1_7__o; + wire [0:0] _i_sw_so_x0v1w_L1_8__o; + wire [0:0] _i_sw_so_x0v1w_L1_9__o; + wire [0:0] _i_sw_so_x0v1w_L1_10__o; + wire [0:0] _i_sw_so_x0v1w_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0v1w_L1_0 ( + .i({bi_x0y0s_L1[11], + bi_x0v1n_L1[1]}) + ,.o(_i_sw_so_x0v1w_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_1 ( + .i({bi_x0y0s_L1[0], + bi_x0v1n_L1[2]}) + ,.o(_i_sw_so_x0v1w_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_2 ( + .i({bi_x0y0s_L1[1], + bi_x0v1n_L1[3]}) + ,.o(_i_sw_so_x0v1w_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_3 ( + .i({bi_x0y0s_L1[2], + bi_x0v1n_L1[4]}) + ,.o(_i_sw_so_x0v1w_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_4 ( + .i({bi_x0y0s_L1[3], + bi_x0v1n_L1[5]}) + ,.o(_i_sw_so_x0v1w_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_5 ( + .i({bi_x0y0s_L1[4], + bi_x0v1n_L1[6]}) + ,.o(_i_sw_so_x0v1w_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_6 ( + .i({bi_x0y0s_L1[5], + bi_x0v1n_L1[7]}) + ,.o(_i_sw_so_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_7 ( + .i({bi_x0y0s_L1[6], + bi_x0v1n_L1[8]}) + ,.o(_i_sw_so_x0v1w_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_8 ( + .i({bi_x0y0s_L1[7], + bi_x0v1n_L1[9]}) + ,.o(_i_sw_so_x0v1w_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_9 ( + .i({bi_x0y0s_L1[8], + bi_x0v1n_L1[10]}) + ,.o(_i_sw_so_x0v1w_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_10 ( + .i({bi_x0y0s_L1[9], + bi_x0v1n_L1[11]}) + ,.o(_i_sw_so_x0v1w_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_11 ( + .i({bi_x0y0s_L1[10], + bi_x0v1n_L1[0]}) + ,.o(_i_sw_so_x0v1w_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0v1w_L1 = {_i_sw_so_x0v1w_L1_11__o, + _i_sw_so_x0v1w_L1_10__o, + _i_sw_so_x0v1w_L1_9__o, + _i_sw_so_x0v1w_L1_8__o, + _i_sw_so_x0v1w_L1_7__o, + _i_sw_so_x0v1w_L1_6__o, + _i_sw_so_x0v1w_L1_5__o, + _i_sw_so_x0v1w_L1_4__o, + _i_sw_so_x0v1w_L1_3__o, + _i_sw_so_x0v1w_L1_2__o, + _i_sw_so_x0v1w_L1_1__o, + _i_sw_so_x0v1w_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_ne_S_ex_sw ( + input wire [11:0] bi_x0y0e_L1 + , output wire [11:0] so_x0y0s_L1 + , input wire [11:0] cu_x0y0s_L1 + , input wire [11:0] cv_x0y0s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0y0s_L1_0__o; + wire [0:0] _i_sw_so_x0y0s_L1_1__o; + wire [0:0] _i_sw_so_x0y0s_L1_2__o; + wire [0:0] _i_sw_so_x0y0s_L1_3__o; + wire [0:0] _i_sw_so_x0y0s_L1_4__o; + wire [0:0] _i_sw_so_x0y0s_L1_5__o; + wire [0:0] _i_sw_so_x0y0s_L1_6__o; + wire [0:0] _i_sw_so_x0y0s_L1_7__o; + wire [0:0] _i_sw_so_x0y0s_L1_8__o; + wire [0:0] _i_sw_so_x0y0s_L1_9__o; + wire [0:0] _i_sw_so_x0y0s_L1_10__o; + wire [0:0] _i_sw_so_x0y0s_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0y0s_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_x0y0s_L1_0 ( + .i({cv_x0y0s_L1[0], + cu_x0y0s_L1[0], + bi_x0y0e_L1[11]}) + ,.o(_i_sw_so_x0y0s_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_1 ( + .i({cv_x0y0s_L1[1], + cu_x0y0s_L1[1], + bi_x0y0e_L1[0]}) + ,.o(_i_sw_so_x0y0s_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_2 ( + .i({cv_x0y0s_L1[2], + cu_x0y0s_L1[2], + bi_x0y0e_L1[1]}) + ,.o(_i_sw_so_x0y0s_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_3 ( + .i({cv_x0y0s_L1[3], + cu_x0y0s_L1[3], + bi_x0y0e_L1[2]}) + ,.o(_i_sw_so_x0y0s_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_4 ( + .i({cv_x0y0s_L1[4], + cu_x0y0s_L1[4], + bi_x0y0e_L1[3]}) + ,.o(_i_sw_so_x0y0s_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_5 ( + .i({cv_x0y0s_L1[5], + cu_x0y0s_L1[5], + bi_x0y0e_L1[4]}) + ,.o(_i_sw_so_x0y0s_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_6 ( + .i({cv_x0y0s_L1[6], + cu_x0y0s_L1[6], + bi_x0y0e_L1[5]}) + ,.o(_i_sw_so_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_7 ( + .i({cv_x0y0s_L1[7], + cu_x0y0s_L1[7], + bi_x0y0e_L1[6]}) + ,.o(_i_sw_so_x0y0s_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_8 ( + .i({cv_x0y0s_L1[8], + cu_x0y0s_L1[8], + bi_x0y0e_L1[7]}) + ,.o(_i_sw_so_x0y0s_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_9 ( + .i({cv_x0y0s_L1[9], + cu_x0y0s_L1[9], + bi_x0y0e_L1[8]}) + ,.o(_i_sw_so_x0y0s_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_10 ( + .i({cv_x0y0s_L1[10], + cu_x0y0s_L1[10], + bi_x0y0e_L1[9]}) + ,.o(_i_sw_so_x0y0s_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + sw3 i_sw_so_x0y0s_L1_11 ( + .i({cv_x0y0s_L1[11], + cu_x0y0s_L1[11], + bi_x0y0e_L1[10]}) + ,.o(_i_sw_so_x0y0s_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0y0s_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0y0s_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0y0s_L1 = {_i_sw_so_x0y0s_L1_11__o, + _i_sw_so_x0y0s_L1_10__o, + _i_sw_so_x0y0s_L1_9__o, + _i_sw_so_x0y0s_L1_8__o, + _i_sw_so_x0y0s_L1_7__o, + _i_sw_so_x0y0s_L1_6__o, + _i_sw_so_x0y0s_L1_5__o, + _i_sw_so_x0y0s_L1_4__o, + _i_sw_so_x0y0s_L1_3__o, + _i_sw_so_x0y0s_L1_2__o, + _i_sw_so_x0y0s_L1_1__o, + _i_sw_so_x0y0s_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_se_W_ex_sw ( + input wire [11:0] bi_x0v1n_L1 + , output wire [11:0] so_x0v1w_L1 + , input wire [11:0] cu_x0v1w_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_x0v1w_L1_0__o; + wire [0:0] _i_sw_so_x0v1w_L1_1__o; + wire [0:0] _i_sw_so_x0v1w_L1_2__o; + wire [0:0] _i_sw_so_x0v1w_L1_3__o; + wire [0:0] _i_sw_so_x0v1w_L1_4__o; + wire [0:0] _i_sw_so_x0v1w_L1_5__o; + wire [0:0] _i_sw_so_x0v1w_L1_6__o; + wire [0:0] _i_sw_so_x0v1w_L1_7__o; + wire [0:0] _i_sw_so_x0v1w_L1_8__o; + wire [0:0] _i_sw_so_x0v1w_L1_9__o; + wire [0:0] _i_sw_so_x0v1w_L1_10__o; + wire [0:0] _i_sw_so_x0v1w_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_x0v1w_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw2 i_sw_so_x0v1w_L1_0 ( + .i({cu_x0v1w_L1[0], + bi_x0v1n_L1[1]}) + ,.o(_i_sw_so_x0v1w_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_1 ( + .i({cu_x0v1w_L1[1], + bi_x0v1n_L1[2]}) + ,.o(_i_sw_so_x0v1w_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_2 ( + .i({cu_x0v1w_L1[2], + bi_x0v1n_L1[3]}) + ,.o(_i_sw_so_x0v1w_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_3 ( + .i({cu_x0v1w_L1[3], + bi_x0v1n_L1[4]}) + ,.o(_i_sw_so_x0v1w_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_4 ( + .i({cu_x0v1w_L1[4], + bi_x0v1n_L1[5]}) + ,.o(_i_sw_so_x0v1w_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_5 ( + .i({cu_x0v1w_L1[5], + bi_x0v1n_L1[6]}) + ,.o(_i_sw_so_x0v1w_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_6 ( + .i({cu_x0v1w_L1[6], + bi_x0v1n_L1[7]}) + ,.o(_i_sw_so_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_7 ( + .i({cu_x0v1w_L1[7], + bi_x0v1n_L1[8]}) + ,.o(_i_sw_so_x0v1w_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_8 ( + .i({cu_x0v1w_L1[8], + bi_x0v1n_L1[9]}) + ,.o(_i_sw_so_x0v1w_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_9 ( + .i({cu_x0v1w_L1[9], + bi_x0v1n_L1[10]}) + ,.o(_i_sw_so_x0v1w_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_10 ( + .i({cu_x0v1w_L1[10], + bi_x0v1n_L1[11]}) + ,.o(_i_sw_so_x0v1w_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + sw2 i_sw_so_x0v1w_L1_11 ( + .i({cu_x0v1w_L1[11], + bi_x0v1n_L1[0]}) + ,.o(_i_sw_so_x0v1w_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_x0v1w_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_x0v1w_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_x0v1w_L1 = {_i_sw_so_x0v1w_L1_11__o, + _i_sw_so_x0v1w_L1_10__o, + _i_sw_so_x0v1w_L1_9__o, + _i_sw_so_x0v1w_L1_8__o, + _i_sw_so_x0v1w_L1_7__o, + _i_sw_so_x0v1w_L1_6__o, + _i_sw_so_x0v1w_L1_5__o, + _i_sw_so_x0v1w_L1_4__o, + _i_sw_so_x0v1w_L1_3__o, + _i_sw_so_x0v1w_L1_2__o, + _i_sw_so_x0v1w_L1_1__o, + _i_sw_so_x0v1w_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_w_ex_nw ( + input wire [11:0] bi_u1y1s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module t_io_e ( + input wire [11:0] bi_u1y0n_L1 + , input wire [11:0] bi_u1y0s_L1 + , output wire [11:0] cu_u1y0n_L1 + , output wire [11:0] cu_u1y0s_L1 + , input wire [0:0] ipin_x0y0_0 + , output wire [0:0] opin_x0y0_0 + , output wire [0:0] oe_x0y0_0 + , input wire [0:0] ipin_x0y0_1 + , output wire [0:0] opin_x0y0_1 + , output wire [0:0] oe_x0y0_1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_blk_i0__inpad; + wire [0:0] _i_blk_i0__opin; + wire [0:0] _i_blk_i0__oe; + wire [0:0] _i_blk_i0__prog_dout; + wire [0:0] _i_blk_i0__prog_we_o; + wire [0:0] _i_blk_i1__inpad; + wire [0:0] _i_blk_i1__opin; + wire [0:0] _i_blk_i1__oe; + wire [0:0] _i_blk_i1__prog_dout; + wire [0:0] _i_blk_i1__prog_we_o; + wire [0:0] _i_cbox_w0__bp_x0y0i0_outpad; + wire [11:0] _i_cbox_w0__cu_u1y0n_L1; + wire [11:0] _i_cbox_w0__cu_u1y0s_L1; + wire [0:0] _i_cbox_w0__bp_x0y0i1_outpad; + wire [0:0] _i_cbox_w0__prog_dout; + wire [0:0] _i_cbox_w0__prog_we_o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_buf_prog_rst_l1__Q; + wire [0:0] _i_buf_prog_done_l1__Q; + + iob i_blk_i0 ( + .outpad(_i_cbox_w0__bp_x0y0i0_outpad) + ,.inpad(_i_blk_i0__inpad) + ,.ipin(ipin_x0y0_0) + ,.opin(_i_blk_i0__opin) + ,.oe(_i_blk_i0__oe) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_blk_i0__prog_dout) + ,.prog_we_o(_i_blk_i0__prog_we_o) + ); + iob i_blk_i1 ( + .outpad(_i_cbox_w0__bp_x0y0i1_outpad) + ,.inpad(_i_blk_i1__inpad) + ,.ipin(ipin_x0y0_1) + ,.opin(_i_blk_i1__opin) + ,.oe(_i_blk_i1__oe) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk_i0__prog_we_o) + ,.prog_din(_i_blk_i0__prog_dout) + ,.prog_dout(_i_blk_i1__prog_dout) + ,.prog_we_o(_i_blk_i1__prog_we_o) + ); + cbox_t_io_e_w0 i_cbox_w0 ( + .bp_x0y0i0_outpad(_i_cbox_w0__bp_x0y0i0_outpad) + ,.bi_u1y0n_L1(bi_u1y0n_L1) + ,.bi_u1y0s_L1(bi_u1y0s_L1) + ,.bp_x0y0i0_inpad(_i_blk_i0__inpad) + ,.cu_u1y0n_L1(_i_cbox_w0__cu_u1y0n_L1) + ,.cu_u1y0s_L1(_i_cbox_w0__cu_u1y0s_L1) + ,.bp_x0y0i1_outpad(_i_cbox_w0__bp_x0y0i1_outpad) + ,.bp_x0y0i1_inpad(_i_blk_i1__inpad) + ,.prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l1__Q) + ,.prog_done(_i_buf_prog_done_l1__Q) + ,.prog_we(_i_blk_i1__prog_we_o) + ,.prog_din(_i_blk_i1__prog_dout) + ,.prog_dout(_i_cbox_w0__prog_dout) + ,.prog_we_o(_i_cbox_w0__prog_we_o) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(_i_buf_prog_rst_l1__Q) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(_i_buf_prog_done_l1__Q) + ,.Q(_i_buf_prog_done_l0__Q) + ); + prga_simple_buf i_buf_prog_rst_l1 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l1__Q) + ); + prga_simple_bufr i_buf_prog_done_l1 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l1__Q) + ); + + assign cu_u1y0n_L1 = _i_cbox_w0__cu_u1y0n_L1; + assign cu_u1y0s_L1 = _i_cbox_w0__cu_u1y0s_L1; + assign opin_x0y0_0 = _i_blk_i0__opin; + assign oe_x0y0_0 = _i_blk_i0__oe; + assign opin_x0y0_1 = _i_blk_i1__opin; + assign oe_x0y0_1 = _i_blk_i1__oe; + assign prog_dout = _i_cbox_w0__prog_dout; + assign prog_we_o = _i_cbox_w0__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_w_ex_w ( + input wire [11:0] bi_u1y0n_L1 + , input wire [11:0] bi_u1y1s_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_N_ex_nw ( + input wire [11:0] bi_u1v1e_L1 + , output wire [11:0] so_u1y0n_L1 + , input wire [11:0] cu_u1y0n_L1 + , input wire [11:0] cv_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_u1y0n_L1_0__o; + wire [0:0] _i_sw_so_u1y0n_L1_1__o; + wire [0:0] _i_sw_so_u1y0n_L1_2__o; + wire [0:0] _i_sw_so_u1y0n_L1_3__o; + wire [0:0] _i_sw_so_u1y0n_L1_4__o; + wire [0:0] _i_sw_so_u1y0n_L1_5__o; + wire [0:0] _i_sw_so_u1y0n_L1_6__o; + wire [0:0] _i_sw_so_u1y0n_L1_7__o; + wire [0:0] _i_sw_so_u1y0n_L1_8__o; + wire [0:0] _i_sw_so_u1y0n_L1_9__o; + wire [0:0] _i_sw_so_u1y0n_L1_10__o; + wire [0:0] _i_sw_so_u1y0n_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout; + wire [1:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw3 i_sw_so_u1y0n_L1_0 ( + .i({cv_u1y0n_L1[0], + cu_u1y0n_L1[0], + bi_u1v1e_L1[9]}) + ,.o(_i_sw_so_u1y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_1 ( + .i({cv_u1y0n_L1[1], + cu_u1y0n_L1[1], + bi_u1v1e_L1[10]}) + ,.o(_i_sw_so_u1y0n_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_2 ( + .i({cv_u1y0n_L1[2], + cu_u1y0n_L1[2], + bi_u1v1e_L1[11]}) + ,.o(_i_sw_so_u1y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_3 ( + .i({cv_u1y0n_L1[3], + cu_u1y0n_L1[3], + bi_u1v1e_L1[0]}) + ,.o(_i_sw_so_u1y0n_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_4 ( + .i({cv_u1y0n_L1[4], + cu_u1y0n_L1[4], + bi_u1v1e_L1[1]}) + ,.o(_i_sw_so_u1y0n_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_5 ( + .i({cv_u1y0n_L1[5], + cu_u1y0n_L1[5], + bi_u1v1e_L1[2]}) + ,.o(_i_sw_so_u1y0n_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_6 ( + .i({cv_u1y0n_L1[6], + cu_u1y0n_L1[6], + bi_u1v1e_L1[3]}) + ,.o(_i_sw_so_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_7 ( + .i({cv_u1y0n_L1[7], + cu_u1y0n_L1[7], + bi_u1v1e_L1[4]}) + ,.o(_i_sw_so_u1y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_8 ( + .i({cv_u1y0n_L1[8], + cu_u1y0n_L1[8], + bi_u1v1e_L1[5]}) + ,.o(_i_sw_so_u1y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_9 ( + .i({cv_u1y0n_L1[9], + cu_u1y0n_L1[9], + bi_u1v1e_L1[6]}) + ,.o(_i_sw_so_u1y0n_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_10 ( + .i({cv_u1y0n_L1[10], + cu_u1y0n_L1[10], + bi_u1v1e_L1[7]}) + ,.o(_i_sw_so_u1y0n_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + sw3 i_sw_so_u1y0n_L1_11 ( + .i({cv_u1y0n_L1[11], + cu_u1y0n_L1[11], + bi_u1v1e_L1[8]}) + ,.o(_i_sw_so_u1y0n_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_so_u1y0n_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_u1y0n_L1 = {_i_sw_so_u1y0n_L1_11__o, + _i_sw_so_u1y0n_L1_10__o, + _i_sw_so_u1y0n_L1_9__o, + _i_sw_so_u1y0n_L1_8__o, + _i_sw_so_u1y0n_L1_7__o, + _i_sw_so_u1y0n_L1_6__o, + _i_sw_so_u1y0n_L1_5__o, + _i_sw_so_u1y0n_L1_4__o, + _i_sw_so_u1y0n_L1_3__o, + _i_sw_so_u1y0n_L1_2__o, + _i_sw_so_u1y0n_L1_1__o, + _i_sw_so_u1y0n_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_N_ex_w ( + input wire [11:0] bi_u1v1n_L1 + , output wire [11:0] so_u1y0n_L1 + , input wire [11:0] bi_u1v1e_L1 + , input wire [11:0] cu_u1y0n_L1 + , input wire [11:0] cv_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_so_u1y0n_L1_0__o; + wire [0:0] _i_sw_so_u1y0n_L1_1__o; + wire [0:0] _i_sw_so_u1y0n_L1_2__o; + wire [0:0] _i_sw_so_u1y0n_L1_3__o; + wire [0:0] _i_sw_so_u1y0n_L1_4__o; + wire [0:0] _i_sw_so_u1y0n_L1_5__o; + wire [0:0] _i_sw_so_u1y0n_L1_6__o; + wire [0:0] _i_sw_so_u1y0n_L1_7__o; + wire [0:0] _i_sw_so_u1y0n_L1_8__o; + wire [0:0] _i_sw_so_u1y0n_L1_9__o; + wire [0:0] _i_sw_so_u1y0n_L1_10__o; + wire [0:0] _i_sw_so_u1y0n_L1_11__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_0__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_1__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_2__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_3__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_4__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_5__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_7__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_8__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_9__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_10__prog_data; + wire [0:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout; + wire [2:0] _i_prog_data_i_sw_so_u1y0n_L1_11__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw4 i_sw_so_u1y0n_L1_0 ( + .i({cv_u1y0n_L1[0], + cu_u1y0n_L1[0], + bi_u1v1e_L1[9], + bi_u1v1n_L1[0]}) + ,.o(_i_sw_so_u1y0n_L1_0__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_1 ( + .i({cv_u1y0n_L1[1], + cu_u1y0n_L1[1], + bi_u1v1e_L1[10], + bi_u1v1n_L1[1]}) + ,.o(_i_sw_so_u1y0n_L1_1__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_2 ( + .i({cv_u1y0n_L1[2], + cu_u1y0n_L1[2], + bi_u1v1e_L1[11], + bi_u1v1n_L1[2]}) + ,.o(_i_sw_so_u1y0n_L1_2__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_3 ( + .i({cv_u1y0n_L1[3], + cu_u1y0n_L1[3], + bi_u1v1e_L1[0], + bi_u1v1n_L1[3]}) + ,.o(_i_sw_so_u1y0n_L1_3__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_4 ( + .i({cv_u1y0n_L1[4], + cu_u1y0n_L1[4], + bi_u1v1e_L1[1], + bi_u1v1n_L1[4]}) + ,.o(_i_sw_so_u1y0n_L1_4__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_5 ( + .i({cv_u1y0n_L1[5], + cu_u1y0n_L1[5], + bi_u1v1e_L1[2], + bi_u1v1n_L1[5]}) + ,.o(_i_sw_so_u1y0n_L1_5__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_6 ( + .i({cv_u1y0n_L1[6], + cu_u1y0n_L1[6], + bi_u1v1e_L1[3], + bi_u1v1n_L1[6]}) + ,.o(_i_sw_so_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_7 ( + .i({cv_u1y0n_L1[7], + cu_u1y0n_L1[7], + bi_u1v1e_L1[4], + bi_u1v1n_L1[7]}) + ,.o(_i_sw_so_u1y0n_L1_7__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_8 ( + .i({cv_u1y0n_L1[8], + cu_u1y0n_L1[8], + bi_u1v1e_L1[5], + bi_u1v1n_L1[8]}) + ,.o(_i_sw_so_u1y0n_L1_8__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_9 ( + .i({cv_u1y0n_L1[9], + cu_u1y0n_L1[9], + bi_u1v1e_L1[6], + bi_u1v1n_L1[9]}) + ,.o(_i_sw_so_u1y0n_L1_9__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_10 ( + .i({cv_u1y0n_L1[10], + cu_u1y0n_L1[10], + bi_u1v1e_L1[7], + bi_u1v1n_L1[10]}) + ,.o(_i_sw_so_u1y0n_L1_10__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + sw4 i_sw_so_u1y0n_L1_11 ( + .i({cv_u1y0n_L1[11], + cu_u1y0n_L1[11], + bi_u1v1e_L1[8], + bi_u1v1n_L1[11]}) + ,.o(_i_sw_so_u1y0n_L1_11__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_0 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_1 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_0__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_2 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_1__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_3 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_2__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_4 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_3__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_5 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_4__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_5__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_7 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_8 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_7__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_9 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_8__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_10 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_9__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_data) + ); + scanchain_data_d3 i_prog_data_i_sw_so_u1y0n_L1_11 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_10__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_data(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_so_u1y0n_L1_11__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign so_u1y0n_L1 = {_i_sw_so_u1y0n_L1_11__o, + _i_sw_so_u1y0n_L1_10__o, + _i_sw_so_u1y0n_L1_9__o, + _i_sw_so_u1y0n_L1_8__o, + _i_sw_so_u1y0n_L1_7__o, + _i_sw_so_u1y0n_L1_6__o, + _i_sw_so_u1y0n_L1_5__o, + _i_sw_so_u1y0n_L1_4__o, + _i_sw_so_u1y0n_L1_3__o, + _i_sw_so_u1y0n_L1_2__o, + _i_sw_so_u1y0n_L1_1__o, + _i_sw_so_u1y0n_L1_0__o}; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_nw_w_ex_sw ( + input wire [11:0] bi_u1y0n_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module sbox_sw_s_ex_sw ( + input wire [11:0] bi_u1v1e_L1 + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + ); + + + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + + +endmodule +// Automatically generated by PRGA's RTL generator +module prga_simple_buf ( + input wire [0:0] C, + input wire [0:0] D, + output reg [0:0] Q + ); + + always @(posedge C) begin + Q <= D; + end + +endmodule// Automatically generated by PRGA's RTL generator +module prga_simple_bufr ( + input wire [0:0] C, + input wire [0:0] R, + input wire [0:0] D, + output reg [0:0] Q + ); + + always @(posedge C) begin + if (R) begin + Q <= 1'b0; + end else begin + Q <= D; + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module iob ( + input wire [0:0] outpad + , output wire [0:0] inpad + , input wire [0:0] ipin + , output wire [0:0] opin + , output wire [0:0] oe + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _io__inpad; + wire [0:0] _io__opin; + wire [0:0] _io__oe; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_io__prog_dout; + wire [1:0] _i_prog_data_io__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + iopad io ( + .outpad(outpad) + ,.inpad(_io__inpad) + ,.ipin(ipin) + ,.opin(_io__opin) + ,.oe(_io__oe) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_io__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d2 i_prog_data_io ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_io__prog_dout) + ,.prog_data(_i_prog_data_io__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_io__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign inpad = _io__inpad; + assign opin = _io__opin; + assign oe = _io__oe; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module cbox_t_io_w_e0 ( + output wire [0:0] bp_x0y0i0_outpad + , input wire [11:0] bi_x0y0n_L1 + , input wire [11:0] bi_x0y0s_L1 + , input wire [0:0] bp_x0y0i0_inpad + , output wire [11:0] cu_x0y0n_L1 + , output wire [11:0] cu_x0y0s_L1 + , output wire [0:0] bp_x0y0i1_outpad + , input wire [0:0] bp_x0y0i1_inpad + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_bp_x0y0i0_outpad__o; + wire [0:0] _i_sw_cu_x0y0n_L1_6__o; + wire [0:0] _i_sw_cu_x0y0s_L1_6__o; + wire [0:0] _i_sw_bp_x0y0i1_outpad__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout; + wire [3:0] _i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0n_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0y0s_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout; + wire [3:0] _i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw12 i_sw_bp_x0y0i0_outpad ( + .i({bi_x0y0s_L1[10], + bi_x0y0n_L1[10], + bi_x0y0s_L1[8], + bi_x0y0n_L1[8], + bi_x0y0s_L1[6], + bi_x0y0n_L1[6], + bi_x0y0s_L1[4], + bi_x0y0n_L1[4], + bi_x0y0s_L1[2], + bi_x0y0n_L1[2], + bi_x0y0s_L1[0], + bi_x0y0n_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_outpad__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data) + ); + sw2 i_sw_cu_x0y0n_L1_6 ( + .i({bp_x0y0i1_inpad, + bp_x0y0i0_inpad}) + ,.o(_i_sw_cu_x0y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_6__prog_data) + ); + sw2 i_sw_cu_x0y0s_L1_6 ( + .i({bp_x0y0i1_inpad, + bp_x0y0i0_inpad}) + ,.o(_i_sw_cu_x0y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_6__prog_data) + ); + sw12 i_sw_bp_x0y0i1_outpad ( + .i({bi_x0y0s_L1[11], + bi_x0y0n_L1[11], + bi_x0y0s_L1[9], + bi_x0y0n_L1[9], + bi_x0y0s_L1[7], + bi_x0y0n_L1[7], + bi_x0y0s_L1[6], + bi_x0y0n_L1[6], + bi_x0y0s_L1[3], + bi_x0y0n_L1[3], + bi_x0y0s_L1[1], + bi_x0y0n_L1[1]}) + ,.o(_i_sw_bp_x0y0i1_outpad__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d4 i_prog_data_i_sw_bp_x0y0i0_outpad ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0n_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0y0s_L1_6__prog_data) + ); + scanchain_data_d4 i_prog_data_i_sw_bp_x0y0i1_outpad ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign bp_x0y0i0_outpad = _i_sw_bp_x0y0i0_outpad__o; + assign cu_x0y0n_L1 = {bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + _i_sw_cu_x0y0n_L1_6__o, + 1'bx, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad}; + assign cu_x0y0s_L1 = {bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + _i_sw_cu_x0y0s_L1_6__o, + 1'bx, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad}; + assign bp_x0y0i1_outpad = _i_sw_bp_x0y0i1_outpad__o; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module sw3 ( + input wire [2:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [1:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 2'd1: o = i[0]; + 2'd2: o = i[1]; + 2'd3: o = i[2]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module sw2 ( + input wire [1:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [1:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 2'd1: o = i[0]; + 2'd2: o = i[1]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_delim ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [0:0] prog_we_o + , output reg [1 - 1:0] prog_dout + ); + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_we_o <= 1'b0; + prog_dout <= 1'b0; + end else if (~prog_done && prog_we) begin + prog_we_o <= 1'b1; + prog_dout <= prog_din; + end else begin + prog_we_o <= 1'b0; + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d2 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [2 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 2; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule// Automatically generated by PRGA's RTL generator +module sw1 ( + input wire [0:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [0:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 1'd1: o = i[0]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d1 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [1 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 1; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule// Automatically generated by PRGA's RTL generator +module sw4 ( + input wire [3:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [2:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 3'd1: o = i[0]; + 3'd2: o = i[1]; + 3'd3: o = i[2]; + 3'd4: o = i[3]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d3 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [3 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 3; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule// Automatically generated by PRGA's RTL generator +module cbox_t_io_n_s0 ( + output wire [0:0] bp_x0y0i0_outpad + , input wire [11:0] bi_x0v1e_L1 + , input wire [11:0] bi_x0v1w_L1 + , input wire [0:0] bp_x0y0i0_inpad + , output wire [11:0] cu_x0v1e_L1 + , output wire [11:0] cu_x0v1w_L1 + , output wire [0:0] bp_x0y0i1_outpad + , input wire [0:0] bp_x0y0i1_inpad + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_bp_x0y0i0_outpad__o; + wire [0:0] _i_sw_cu_x0v1e_L1_6__o; + wire [0:0] _i_sw_cu_x0v1w_L1_6__o; + wire [0:0] _i_sw_bp_x0y0i1_outpad__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout; + wire [3:0] _i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0v1e_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0v1e_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_x0v1w_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_x0v1w_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout; + wire [3:0] _i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw12 i_sw_bp_x0y0i0_outpad ( + .i({bi_x0v1w_L1[10], + bi_x0v1e_L1[10], + bi_x0v1w_L1[8], + bi_x0v1e_L1[8], + bi_x0v1w_L1[6], + bi_x0v1e_L1[6], + bi_x0v1w_L1[4], + bi_x0v1e_L1[4], + bi_x0v1w_L1[2], + bi_x0v1e_L1[2], + bi_x0v1w_L1[0], + bi_x0v1e_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_outpad__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data) + ); + sw2 i_sw_cu_x0v1e_L1_6 ( + .i({bp_x0y0i1_inpad, + bp_x0y0i0_inpad}) + ,.o(_i_sw_cu_x0v1e_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0v1e_L1_6__prog_data) + ); + sw2 i_sw_cu_x0v1w_L1_6 ( + .i({bp_x0y0i1_inpad, + bp_x0y0i0_inpad}) + ,.o(_i_sw_cu_x0v1w_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_x0v1w_L1_6__prog_data) + ); + sw12 i_sw_bp_x0y0i1_outpad ( + .i({bi_x0v1w_L1[11], + bi_x0v1e_L1[11], + bi_x0v1w_L1[9], + bi_x0v1e_L1[9], + bi_x0v1w_L1[7], + bi_x0v1e_L1[7], + bi_x0v1w_L1[6], + bi_x0v1e_L1[6], + bi_x0v1w_L1[3], + bi_x0v1e_L1[3], + bi_x0v1w_L1[1], + bi_x0v1e_L1[1]}) + ,.o(_i_sw_bp_x0y0i1_outpad__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d4 i_prog_data_i_sw_bp_x0y0i0_outpad ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0v1e_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0v1e_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0v1e_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_x0v1w_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0v1e_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_x0v1w_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_x0v1w_L1_6__prog_data) + ); + scanchain_data_d4 i_prog_data_i_sw_bp_x0y0i1_outpad ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_x0v1w_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign bp_x0y0i0_outpad = _i_sw_bp_x0y0i0_outpad__o; + assign cu_x0v1e_L1 = {bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + _i_sw_cu_x0v1e_L1_6__o, + 1'bx, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad}; + assign cu_x0v1w_L1 = {bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + _i_sw_cu_x0v1w_L1_6__o, + 1'bx, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad}; + assign bp_x0y0i1_outpad = _i_sw_bp_x0y0i1_outpad__o; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module cbox_t_io_e_w0 ( + output wire [0:0] bp_x0y0i0_outpad + , input wire [11:0] bi_u1y0n_L1 + , input wire [11:0] bi_u1y0s_L1 + , input wire [0:0] bp_x0y0i0_inpad + , output wire [11:0] cu_u1y0n_L1 + , output wire [11:0] cu_u1y0s_L1 + , output wire [0:0] bp_x0y0i1_outpad + , input wire [0:0] bp_x0y0i1_inpad + , input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + , input wire [0:0] prog_we + , input wire [0:0] prog_din + , output wire [0:0] prog_dout + , output wire [0:0] prog_we_o + ); + + + wire [0:0] _i_sw_bp_x0y0i0_outpad__o; + wire [0:0] _i_sw_cu_u1y0n_L1_6__o; + wire [0:0] _i_sw_cu_u1y0s_L1_6__o; + wire [0:0] _i_sw_bp_x0y0i1_outpad__o; + wire [0:0] _i_buf_prog_rst_l0__Q; + wire [0:0] _i_buf_prog_done_l0__Q; + wire [0:0] _i_scanchain_head__prog_dout; + wire [0:0] _i_scanchain_head__prog_we_o; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout; + wire [3:0] _i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_u1y0n_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_u1y0n_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_cu_u1y0s_L1_6__prog_dout; + wire [1:0] _i_prog_data_i_sw_cu_u1y0s_L1_6__prog_data; + wire [0:0] _i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout; + wire [3:0] _i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data; + wire [0:0] _i_scanchain_tail__prog_dout; + wire [0:0] _i_scanchain_tail__prog_we_o; + + sw12 i_sw_bp_x0y0i0_outpad ( + .i({bi_u1y0s_L1[10], + bi_u1y0n_L1[10], + bi_u1y0s_L1[8], + bi_u1y0n_L1[8], + bi_u1y0s_L1[6], + bi_u1y0n_L1[6], + bi_u1y0s_L1[4], + bi_u1y0n_L1[4], + bi_u1y0s_L1[2], + bi_u1y0n_L1[2], + bi_u1y0s_L1[0], + bi_u1y0n_L1[0]}) + ,.o(_i_sw_bp_x0y0i0_outpad__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data) + ); + sw2 i_sw_cu_u1y0n_L1_6 ( + .i({bp_x0y0i1_inpad, + bp_x0y0i0_inpad}) + ,.o(_i_sw_cu_u1y0n_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_u1y0n_L1_6__prog_data) + ); + sw2 i_sw_cu_u1y0s_L1_6 ( + .i({bp_x0y0i1_inpad, + bp_x0y0i0_inpad}) + ,.o(_i_sw_cu_u1y0s_L1_6__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_cu_u1y0s_L1_6__prog_data) + ); + sw12 i_sw_bp_x0y0i1_outpad ( + .i({bi_u1y0s_L1[11], + bi_u1y0n_L1[11], + bi_u1y0s_L1[9], + bi_u1y0n_L1[9], + bi_u1y0s_L1[7], + bi_u1y0n_L1[7], + bi_u1y0s_L1[6], + bi_u1y0n_L1[6], + bi_u1y0s_L1[3], + bi_u1y0n_L1[3], + bi_u1y0s_L1[1], + bi_u1y0n_L1[1]}) + ,.o(_i_sw_bp_x0y0i1_outpad__o) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data) + ); + prga_simple_buf i_buf_prog_rst_l0 ( + .C(prog_clk) + ,.D(prog_rst) + ,.Q(_i_buf_prog_rst_l0__Q) + ); + prga_simple_bufr i_buf_prog_done_l0 ( + .C(prog_clk) + ,.R(_i_buf_prog_rst_l0__Q) + ,.D(prog_done) + ,.Q(_i_buf_prog_done_l0__Q) + ); + scanchain_delim i_scanchain_head ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(prog_we) + ,.prog_din(prog_din) + ,.prog_dout(_i_scanchain_head__prog_dout) + ,.prog_we_o(_i_scanchain_head__prog_we_o) + ); + scanchain_data_d4 i_prog_data_i_sw_bp_x0y0i0_outpad ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_scanchain_head__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_u1y0n_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i0_outpad__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_u1y0n_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_u1y0n_L1_6__prog_data) + ); + scanchain_data_d2 i_prog_data_i_sw_cu_u1y0s_L1_6 ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_u1y0n_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_cu_u1y0s_L1_6__prog_dout) + ,.prog_data(_i_prog_data_i_sw_cu_u1y0s_L1_6__prog_data) + ); + scanchain_data_d4 i_prog_data_i_sw_bp_x0y0i1_outpad ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_cu_u1y0s_L1_6__prog_dout) + ,.prog_dout(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout) + ,.prog_data(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_data) + ); + scanchain_delim i_scanchain_tail ( + .prog_clk(prog_clk) + ,.prog_rst(_i_buf_prog_rst_l0__Q) + ,.prog_done(_i_buf_prog_done_l0__Q) + ,.prog_we(_i_scanchain_head__prog_we_o) + ,.prog_din(_i_prog_data_i_sw_bp_x0y0i1_outpad__prog_dout) + ,.prog_dout(_i_scanchain_tail__prog_dout) + ,.prog_we_o(_i_scanchain_tail__prog_we_o) + ); + + assign bp_x0y0i0_outpad = _i_sw_bp_x0y0i0_outpad__o; + assign cu_u1y0n_L1 = {bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + _i_sw_cu_u1y0n_L1_6__o, + 1'bx, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad}; + assign cu_u1y0s_L1 = {bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + _i_sw_cu_u1y0s_L1_6__o, + 1'bx, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad, + bp_x0y0i1_inpad, + bp_x0y0i0_inpad}; + assign bp_x0y0i1_outpad = _i_sw_bp_x0y0i1_outpad__o; + assign prog_dout = _i_scanchain_tail__prog_dout; + assign prog_we_o = _i_scanchain_tail__prog_we_o; + +endmodule +// Automatically generated by PRGA's RTL generator +module iopad ( + input wire [0:0] outpad + , output reg [0:0] inpad + + , input wire [0:0] ipin + , output reg [0:0] opin + , output reg [0:0] oe + + , input wire [0:0] prog_done // programming + , input wire [1:0] prog_data // mode: + // - 00: disabled + // - 01: input mode + // - 10: output mode + ); + + localparam MODE_INPUT = 2'h1, + MODE_OUTPUT = 2'h2; + + always @* begin + inpad = 1'b0; + opin = 1'b0; + oe = 1'b0; + + if (prog_done) begin + case (prog_data) + MODE_INPUT: begin + inpad = ipin; + end + MODE_OUTPUT: begin + opin = outpad; + oe = 1'b1; + end + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module sw12 ( + input wire [11:0] i + , output reg [0:0] o + + , input wire [0:0] prog_done + , input wire [3:0] prog_data + ); + + always @* begin + if (~prog_done) begin + o = 1'b0; + end else begin + o = 1'b0; // if ``prog_data == 0`` or ``prog_data`` out of bound, output 0 + case (prog_data) + 4'd1: o = i[0]; + 4'd2: o = i[1]; + 4'd3: o = i[2]; + 4'd4: o = i[3]; + 4'd5: o = i[4]; + 4'd6: o = i[5]; + 4'd7: o = i[6]; + 4'd8: o = i[7]; + 4'd9: o = i[8]; + 4'd10: o = i[9]; + 4'd11: o = i[10]; + 4'd12: o = i[11]; + endcase + end + end + +endmodule// Automatically generated by PRGA's RTL generator +module scanchain_data_d4 ( + input wire [0:0] prog_clk + , input wire [0:0] prog_rst + , input wire [0:0] prog_done + + , input wire [0:0] prog_we + , input wire [1 - 1:0] prog_din + + , output reg [4 - 1:0] prog_data + , output wire [1 - 1:0] prog_dout + ); + + localparam CHAIN_BITCOUNT = 4; + localparam CHAIN_WIDTH = 1; + + wire [CHAIN_BITCOUNT + CHAIN_WIDTH - 1:0] prog_data_next; + assign prog_data_next = {prog_data, prog_din}; + + always @(posedge prog_clk) begin + if (prog_rst) begin + prog_data <= {CHAIN_BITCOUNT{1'b0}}; + end else if (~prog_done && prog_we) begin + prog_data <= prog_data_next[0 +: CHAIN_BITCOUNT]; + end + end + + assign prog_dout = prog_data_next[CHAIN_BITCOUNT +: CHAIN_WIDTH]; + +endmodule