From e26e27cf92a95d0f91e51e250c69d4df57814480 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Gendre?= <sebastien.gendre@etu.hesge.ch> Date: Fri, 21 Mar 2025 22:11:55 +0100 Subject: [PATCH] Vivado update lot of files after a new bitstream gen --- .../mb_design_1/hdl/mb_design_1_wrapper.vhd | 2 +- .../bd/mb_design_1/hw_handoff/mb_design_1.hwh | 1134 ++++- .../mb_design_1_axi4lite_hog_build_i_0_0.dcp | Bin 0 -> 48437 bytes .../mb_design_1_axi4lite_hog_build_i_0_0.xml | 218 +- ...n_1_axi4lite_hog_build_i_0_0_sim_netlist.v | 2225 ++++++++ ..._axi4lite_hog_build_i_0_0_sim_netlist.vhdl | 2627 ++++++++++ ...b_design_1_axi4lite_hog_build_i_0_0_stub.v | 48 + ...esign_1_axi4lite_hog_build_i_0_0_stub.vhdl | 53 + .../mb_design_1_axi4lite_hog_build_i_0_0.vhd | 172 + .../mb_design_1_axi4lite_hog_build_i_0_0.vhd | 180 + .../mb_design_1_lmb_bram_if_cntlr_0_0.dcp | Bin 31869 -> 31844 bytes .../mb_design_1_lmb_bram_if_cntlr_0_0.xml | 18 +- ...sign_1_lmb_bram_if_cntlr_0_0_sim_netlist.v | 1081 ++-- ...n_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl | 69 +- .../mb_design_1_lmb_bram_if_cntlr_0_0_stub.v | 6 +- ...b_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl | 6 +- .../sim/mb_design_1_lmb_bram_if_cntlr_0_0.vhd | 2 +- .../mb_design_1_lmb_bram_if_cntlr_0_0.vhd | 4 +- .../mb_design_1_xbar_0/mb_design_1_xbar_0.dcp | Bin 107351 -> 119195 bytes .../mb_design_1_xbar_0/mb_design_1_xbar_0.xml | 206 +- .../mb_design_1_xbar_0_sim_netlist.v | 4522 ++++++++++------- .../mb_design_1_xbar_0_sim_netlist.vhdl | 4227 ++++++++------- .../mb_design_1_xbar_0_stub.v | 46 +- .../mb_design_1_xbar_0_stub.vhdl | 46 +- .../sim/mb_design_1_xbar_0.cpp | 1986 ++++++-- .../sim/mb_design_1_xbar_0.h | 2474 +++++---- .../sim/mb_design_1_xbar_0.v | 105 +- .../sim/mb_design_1_xbar_0_sc.cpp | 18 +- .../sim/mb_design_1_xbar_0_sc.h | 2 + .../sim/mb_design_1_xbar_0_stub.sv | 76 +- .../synth/mb_design_1_xbar_0.v | 111 +- .../sources_1/bd/mb_design_1/mb_design_1.bmm | 6 +- .../sources_1/bd/mb_design_1/mb_design_1.bxml | 8 +- .../bd/mb_design_1/sim/mb_design_1.protoinst | 234 +- .../bd/mb_design_1/sim/mb_design_1.vhd | 2 +- .../bd/mb_design_1/synth/mb_design_1.hwdef | Bin 37686 -> 42452 bytes .../bd/mb_design_1/synth/mb_design_1.vhd | 2 +- .../mb_design_1_axi4lite_hog_build_i_0_0.xci | 38 +- .../sources_1/new/mb_top.vhd | 2 +- 39 files changed, 15564 insertions(+), 6392 deletions(-) create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.dcp create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.v create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.vhdl create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.v create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.vhdl create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/sim/mb_design_1_axi4lite_hog_build_i_0_0.vhd create mode 100644 microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/synth/mb_design_1_axi4lite_hog_build_i_0_0.vhd diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hdl/mb_design_1_wrapper.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hdl/mb_design_1_wrapper.vhd index 918c957..138254d 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hdl/mb_design_1_wrapper.vhd +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hdl/mb_design_1_wrapper.vhd @@ -2,7 +2,7 @@ --Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. ---------------------------------------------------------------------------------- --Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 ---Date : Thu Mar 20 16:44:45 2025 +--Date : Thu Mar 20 18:24:28 2025 --Host : hogtest running 64-bit unknown --Command : generate_target mb_design_1_wrapper.bd --Design : mb_design_1_wrapper diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hw_handoff/mb_design_1.hwh b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hw_handoff/mb_design_1.hwh index 5fe8cfc..c9d2042 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hw_handoff/mb_design_1.hwh +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/hw_handoff/mb_design_1.hwh @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" standalone="no" ?> -<EDKSYSTEM EDWVERSION="1.2" TIMESTAMP="Tue Mar 4 22:34:16 2025" VIVADOVERSION="2024.1.2"> +<EDKSYSTEM EDWVERSION="1.2" TIMESTAMP="Thu Mar 20 18:24:29 2025" VIVADOVERSION="2024.1.2"> <SYSTEMINFO ARCH="artix7" BOARD="digilentinc.com:nexys_video:part0:1.2" DEVICE="7a200t" NAME="mb_design_1" PACKAGE="sbg484" SPEEDGRADE="-1"/> @@ -14,6 +14,26 @@ <CONNECTION INSTANCE="clk_wiz_0" PORT="clk_in1"/> </CONNECTIONS> </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_date_i_0" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_date_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="hog_global_date_i"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_sha_i_0" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_sha_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="hog_global_sha_i"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_time_i_0" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_time_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="hog_global_time_i"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_ver_i_0" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_ver_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="hog_global_ver_i"/> + </CONNECTIONS> + </PORT> <PORT DIR="I" NAME="reset" POLARITY="ACTIVE_HIGH" SIGIS="rst" SIGNAME="External_Ports_reset"> <CONNECTIONS> <CONNECTION INSTANCE="clk_wiz_0" PORT="reset"/> @@ -31,6 +51,190 @@ </EXTERNALINTERFACES> <MODULES> + <MODULE COREREVISION="1" FULLNAME="/axi4lite_hog_build_i_0" HWVERSION="1.0" INSTANCE="axi4lite_hog_build_i_0" IPTYPE="PERIPHERAL" IS_ENABLE="1" MODCLASS="PERIPHERAL" MODTYPE="axi4lite_hog_build_info" VLNV="xilinx.com:module_ref:axi4lite_hog_build_info:1.0"> + <DOCUMENTS/> + <ADDRESSBLOCKS> + <ADDRESSBLOCK ACCESS="" INTERFACE="s_axi" NAME="reg0" RANGE="0x100000000" USAGE="register"/> + </ADDRESSBLOCKS> + <PARAMETERS> + <PARAMETER NAME="C_ADDR_WIDTH" VALUE="32"/> + <PARAMETER NAME="Component_Name" VALUE="mb_design_1_axi4lite_hog_build_i_0_0"/> + <PARAMETER NAME="EDK_IPTYPE" VALUE="PERIPHERAL"/> + <PARAMETER NAME="C_BASEADDR" VALUE="0x80000000"/> + <PARAMETER NAME="C_HIGHADDR" VALUE="0x8000007F"/> + </PARAMETERS> + <PORTS> + <PORT DIR="I" LEFT="31" NAME="hog_global_date_i" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_date_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="External_Ports" PORT="hog_global_date_i_0"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_sha_i" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_sha_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="External_Ports" PORT="hog_global_sha_i_0"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_time_i" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_time_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="External_Ports" PORT="hog_global_time_i_0"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="hog_global_ver_i" RIGHT="0" SIGIS="undef" SIGNAME="External_Ports_hog_global_ver_i_0"> + <CONNECTIONS> + <CONNECTION INSTANCE="External_Ports" PORT="hog_global_ver_i_0"/> + </CONNECTIONS> + </PORT> + <PORT CLKFREQUENCY="100000000" DIR="I" NAME="s_axi_aclk" SIGIS="clk" SIGNAME="clk_wiz_0_clk_100mhz"> + <CONNECTIONS> + <CONNECTION INSTANCE="clk_wiz_0" PORT="clk_100mhz"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="s_axi_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_araddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_araddr"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_aresetn" POLARITY="ACTIVE_LOW" SIGIS="rst" SIGNAME="proc_sys_reset_0_peripheral_aresetn"> + <CONNECTIONS> + <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_arready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_arready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_arready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_arvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_arvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_arvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="s_axi_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_awaddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_awaddr"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_awready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_awready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_awready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_awvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_awvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_awvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_bready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_bready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_bready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="1" NAME="s_axi_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_bresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_bresp"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_bvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_bvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_bvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="31" NAME="s_axi_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_rdata"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_rready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_rready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="1" NAME="s_axi_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_rresp"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_rvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_rvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="s_axi_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_wdata"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_wready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_wready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="3" NAME="s_axi_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wstrb"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_wstrb"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_wvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_AXI_wvalid"/> + </CONNECTIONS> + </PORT> + </PORTS> + <BUSINTERFACES> + <BUSINTERFACE BUSNAME="axi_interconnect_0_M04_AXI" DATAWIDTH="32" NAME="s_axi" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> + <PARAMETER NAME="ADDR_WIDTH" VALUE="32"/> + <PARAMETER NAME="ARUSER_WIDTH" VALUE="0"/> + <PARAMETER NAME="AWUSER_WIDTH" VALUE="0"/> + <PARAMETER NAME="BUSER_WIDTH" VALUE="0"/> + <PARAMETER NAME="CLK_DOMAIN" VALUE="/clk_wiz_0_clk_out1"/> + <PARAMETER NAME="DATA_WIDTH" VALUE="32"/> + <PARAMETER NAME="FREQ_HZ" VALUE="100000000"/> + <PARAMETER NAME="HAS_BRESP" VALUE="1"/> + <PARAMETER NAME="HAS_BURST" VALUE="0"/> + <PARAMETER NAME="HAS_CACHE" VALUE="0"/> + <PARAMETER NAME="HAS_LOCK" VALUE="0"/> + <PARAMETER NAME="HAS_PROT" VALUE="0"/> + <PARAMETER NAME="HAS_QOS" VALUE="0"/> + <PARAMETER NAME="HAS_REGION" VALUE="0"/> + <PARAMETER NAME="HAS_RRESP" VALUE="1"/> + <PARAMETER NAME="HAS_WSTRB" VALUE="1"/> + <PARAMETER NAME="ID_WIDTH" VALUE="0"/> + <PARAMETER NAME="INSERT_VIP" VALUE="0"/> + <PARAMETER NAME="MAX_BURST_LENGTH" VALUE="1"/> + <PARAMETER NAME="NUM_READ_OUTSTANDING" VALUE="1"/> + <PARAMETER NAME="NUM_READ_THREADS" VALUE="1"/> + <PARAMETER NAME="NUM_WRITE_OUTSTANDING" VALUE="1"/> + <PARAMETER NAME="NUM_WRITE_THREADS" VALUE="1"/> + <PARAMETER NAME="PHASE" VALUE="0.0"/> + <PARAMETER NAME="PROTOCOL" VALUE="AXI4LITE"/> + <PARAMETER NAME="READ_WRITE_MODE" VALUE="READ_WRITE"/> + <PARAMETER NAME="RUSER_BITS_PER_BYTE" VALUE="0"/> + <PARAMETER NAME="RUSER_WIDTH" VALUE="0"/> + <PARAMETER NAME="SUPPORTS_NARROW_BURST" VALUE="0"/> + <PARAMETER NAME="WUSER_BITS_PER_BYTE" VALUE="0"/> + <PARAMETER NAME="WUSER_WIDTH" VALUE="0"/> + <PORTMAPS> + <PORTMAP LOGICAL="ARADDR" PHYSICAL="s_axi_araddr"/> + <PORTMAP LOGICAL="ARREADY" PHYSICAL="s_axi_arready"/> + <PORTMAP LOGICAL="ARVALID" PHYSICAL="s_axi_arvalid"/> + <PORTMAP LOGICAL="AWADDR" PHYSICAL="s_axi_awaddr"/> + <PORTMAP LOGICAL="AWREADY" PHYSICAL="s_axi_awready"/> + <PORTMAP LOGICAL="AWVALID" PHYSICAL="s_axi_awvalid"/> + <PORTMAP LOGICAL="BREADY" PHYSICAL="s_axi_bready"/> + <PORTMAP LOGICAL="BRESP" PHYSICAL="s_axi_bresp"/> + <PORTMAP LOGICAL="BVALID" PHYSICAL="s_axi_bvalid"/> + <PORTMAP LOGICAL="RDATA" PHYSICAL="s_axi_rdata"/> + <PORTMAP LOGICAL="RREADY" PHYSICAL="s_axi_rready"/> + <PORTMAP LOGICAL="RRESP" PHYSICAL="s_axi_rresp"/> + <PORTMAP LOGICAL="RVALID" PHYSICAL="s_axi_rvalid"/> + <PORTMAP LOGICAL="WDATA" PHYSICAL="s_axi_wdata"/> + <PORTMAP LOGICAL="WREADY" PHYSICAL="s_axi_wready"/> + <PORTMAP LOGICAL="WSTRB" PHYSICAL="s_axi_wstrb"/> + <PORTMAP LOGICAL="WVALID" PHYSICAL="s_axi_wvalid"/> + </PORTMAPS> + </BUSINTERFACE> + </BUSINTERFACES> + </MODULE> <MODULE COREREVISION="34" FULLNAME="/axi_gpio_0" HWVERSION="2.0" INSTANCE="axi_gpio_0" IPTYPE="PERIPHERAL" IS_ENABLE="1" MODCLASS="PERIPHERAL" MODTYPE="axi_gpio" VLNV="xilinx.com:ip:axi_gpio:2.0"> <DOCUMENTS> <DOCUMENT SOURCE="http://www.xilinx.com/cgi-bin/docs/ipdoc?c=axi_gpio;v=v2_0;d=pg144-axi-gpio.pdf"/> @@ -1943,7 +2147,7 @@ </PORT> <PORT DIR="I" LEFT="8" NAME="s_axi_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_araddr"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_araddr"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_araddr"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="s_axi_aresetn" POLARITY="ACTIVE_LOW" SIGIS="rst" SIGNAME="proc_sys_reset_0_peripheral_aresetn"> @@ -1953,87 +2157,87 @@ </PORT> <PORT DIR="O" NAME="s_axi_arready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_arready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_arready"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_arready"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="s_axi_arvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_arvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_arvalid"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_arvalid"/> </CONNECTIONS> </PORT> <PORT DIR="I" LEFT="8" NAME="s_axi_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awaddr"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_awaddr"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_awaddr"/> </CONNECTIONS> </PORT> <PORT DIR="O" NAME="s_axi_awready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_awready"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_awready"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="s_axi_awvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_awvalid"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_awvalid"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="s_axi_bready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_bready"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_bready"/> </CONNECTIONS> </PORT> <PORT DIR="O" LEFT="1" NAME="s_axi_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bresp"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_bresp"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_bresp"/> </CONNECTIONS> </PORT> <PORT DIR="O" NAME="s_axi_bvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_bvalid"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_bvalid"/> </CONNECTIONS> </PORT> <PORT DIR="O" LEFT="31" NAME="s_axi_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rdata"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rdata"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_rdata"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="s_axi_rready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rready"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_rready"/> </CONNECTIONS> </PORT> <PORT DIR="O" LEFT="1" NAME="s_axi_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rresp"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rresp"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_rresp"/> </CONNECTIONS> </PORT> <PORT DIR="O" NAME="s_axi_rvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rvalid"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_rvalid"/> </CONNECTIONS> </PORT> <PORT DIR="I" LEFT="31" NAME="s_axi_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wdata"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wdata"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_wdata"/> </CONNECTIONS> </PORT> <PORT DIR="O" NAME="s_axi_wready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wready"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_wready"/> </CONNECTIONS> </PORT> <PORT DIR="I" LEFT="3" NAME="s_axi_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wstrb"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wstrb"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_wstrb"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="s_axi_wvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wvalid"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M03_AXI_wvalid"/> </CONNECTIONS> </PORT> </PORTS> <BUSINTERFACES> - <BUSINTERFACE BUSNAME="axi_interconnect_0_M02_AXI" DATAWIDTH="32" NAME="s_axi" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> + <BUSINTERFACE BUSNAME="axi_interconnect_0_M03_AXI" DATAWIDTH="32" NAME="s_axi" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> <PARAMETER NAME="ADDR_WIDTH" VALUE="9"/> <PARAMETER NAME="ARUSER_WIDTH" VALUE="0"/> <PARAMETER NAME="AWUSER_WIDTH" VALUE="0"/> @@ -2358,7 +2562,7 @@ <PARAMETER NAME="M63_HAS_REGSLICE" VALUE="0"/> <PARAMETER NAME="M63_ISSUANCE" VALUE="0"/> <PARAMETER NAME="M63_SECURE" VALUE="0"/> - <PARAMETER NAME="NUM_MI" VALUE="4"/> + <PARAMETER NAME="NUM_MI" VALUE="5"/> <PARAMETER NAME="NUM_SI" VALUE="1"/> <PARAMETER NAME="PCHK_MAX_RD_BURSTS" VALUE="2"/> <PARAMETER NAME="PCHK_MAX_WR_BURSTS" VALUE="2"/> @@ -2627,89 +2831,89 @@ <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="31" NAME="M02_AXI_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_araddr"> + <PORT DIR="O" LEFT="31" NAME="M02_AXI_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_araddr"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_araddr"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_araddr"/> </CONNECTIONS> </PORT> - <PORT DIR="I" NAME="M02_AXI_arready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_arready"> + <PORT DIR="I" NAME="M02_AXI_arready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_arready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_arready"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_arready"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="M02_AXI_arvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_arvalid"> + <PORT DIR="O" NAME="M02_AXI_arvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_arvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_arvalid"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_arvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="31" NAME="M02_AXI_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awaddr"> + <PORT DIR="O" LEFT="31" NAME="M02_AXI_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_awaddr"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_awaddr"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_awaddr"/> </CONNECTIONS> </PORT> - <PORT DIR="I" NAME="M02_AXI_awready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awready"> + <PORT DIR="I" NAME="M02_AXI_awready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_awready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_awready"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_awready"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="M02_AXI_awvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awvalid"> + <PORT DIR="O" NAME="M02_AXI_awvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_awvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_awvalid"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_awvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="M02_AXI_bready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bready"> + <PORT DIR="O" NAME="M02_AXI_bready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_bready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_bready"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_bready"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="1" NAME="M02_AXI_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bresp"> + <PORT DIR="I" LEFT="1" NAME="M02_AXI_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_bresp"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_bresp"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_bresp"/> </CONNECTIONS> </PORT> - <PORT DIR="I" NAME="M02_AXI_bvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bvalid"> + <PORT DIR="I" NAME="M02_AXI_bvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_bvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_bvalid"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_bvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="31" NAME="M02_AXI_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rdata"> + <PORT DIR="I" LEFT="31" NAME="M02_AXI_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rdata"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rdata"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_rdata"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="M02_AXI_rready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rready"> + <PORT DIR="O" NAME="M02_AXI_rready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rready"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_rready"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="1" NAME="M02_AXI_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rresp"> + <PORT DIR="I" LEFT="1" NAME="M02_AXI_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rresp"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rresp"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_rresp"/> </CONNECTIONS> </PORT> - <PORT DIR="I" NAME="M02_AXI_rvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rvalid"> + <PORT DIR="I" NAME="M02_AXI_rvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rvalid"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_rvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="31" NAME="M02_AXI_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wdata"> + <PORT DIR="O" LEFT="31" NAME="M02_AXI_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wdata"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wdata"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_wdata"/> </CONNECTIONS> </PORT> - <PORT DIR="I" NAME="M02_AXI_wready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wready"> + <PORT DIR="I" NAME="M02_AXI_wready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wready"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wready"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_wready"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="3" NAME="M02_AXI_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wstrb"> + <PORT DIR="O" LEFT="3" NAME="M02_AXI_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wstrb"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wstrb"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_wstrb"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="M02_AXI_wvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wvalid"> + <PORT DIR="O" NAME="M02_AXI_wvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wvalid"/> + <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_wvalid"/> </CONNECTIONS> </PORT> <PORT DIR="I" NAME="M03_ACLK" SIGIS="clk" SIGNAME="clk_wiz_0_clk_100mhz"> @@ -2722,159 +2926,304 @@ <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="M03_AXI_araddr" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arburst" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arcache" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arlen" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arlock" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arprot" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arqos" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_arready" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arregion" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arsize" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_arvalid" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awaddr" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awburst" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awcache" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awlen" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awlock" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awprot" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awqos" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_awready" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awregion" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awsize" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_awvalid" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_bready" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_bresp" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_bvalid" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_rdata" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_rlast" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_rready" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_rresp" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_rvalid" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_wdata" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_wlast" SIGIS="undef"/> - <PORT DIR="I" NAME="M03_AXI_wready" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_wstrb" SIGIS="undef"/> - <PORT DIR="O" NAME="M03_AXI_wvalid" SIGIS="undef"/> - <PORT DIR="I" NAME="S00_ACLK" SIGIS="clk" SIGNAME="clk_wiz_0_clk_100mhz"> + <PORT DIR="O" LEFT="31" NAME="M03_AXI_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_araddr"> <CONNECTIONS> - <CONNECTION INSTANCE="clk_wiz_0" PORT="clk_100mhz"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_araddr"/> </CONNECTIONS> </PORT> - <PORT DIR="I" NAME="S00_ARESETN" SIGIS="rst" SIGNAME="proc_sys_reset_0_peripheral_aresetn"> + <PORT DIR="I" NAME="M03_AXI_arready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_arready"> <CONNECTIONS> - <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_arready"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="31" NAME="S00_AXI_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_araddr"> + <PORT DIR="O" NAME="M03_AXI_arvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_arvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARADDR"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_arvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="2" NAME="S00_AXI_arprot" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_arprot"> + <PORT DIR="O" LEFT="31" NAME="M03_AXI_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awaddr"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARPROT"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_awaddr"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="0" NAME="S00_AXI_arready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_arready"> + <PORT DIR="I" NAME="M03_AXI_awready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awready"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARREADY"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_awready"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="0" NAME="S00_AXI_arvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_arvalid"> + <PORT DIR="O" NAME="M03_AXI_awvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_awvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARVALID"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_awvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="31" NAME="S00_AXI_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awaddr"> + <PORT DIR="O" NAME="M03_AXI_bready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bready"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWADDR"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_bready"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="2" NAME="S00_AXI_awprot" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awprot"> + <PORT DIR="I" LEFT="1" NAME="M03_AXI_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bresp"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWPROT"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_bresp"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="0" NAME="S00_AXI_awready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awready"> + <PORT DIR="I" NAME="M03_AXI_bvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_bvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWREADY"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_bvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="0" NAME="S00_AXI_awvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awvalid"> + <PORT DIR="I" LEFT="31" NAME="M03_AXI_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rdata"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWVALID"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rdata"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="0" NAME="S00_AXI_bready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_bready"> + <PORT DIR="O" NAME="M03_AXI_rready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rready"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_BREADY"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rready"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="1" NAME="S00_AXI_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_bresp"> + <PORT DIR="I" LEFT="1" NAME="M03_AXI_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rresp"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_BRESP"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rresp"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="0" NAME="S00_AXI_bvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_bvalid"> + <PORT DIR="I" NAME="M03_AXI_rvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_rvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_BVALID"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_rvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="31" NAME="S00_AXI_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rdata"> + <PORT DIR="O" LEFT="31" NAME="M03_AXI_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wdata"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RDATA"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wdata"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="0" NAME="S00_AXI_rready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rready"> + <PORT DIR="I" NAME="M03_AXI_wready" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wready"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RREADY"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wready"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="1" NAME="S00_AXI_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rresp"> + <PORT DIR="O" LEFT="3" NAME="M03_AXI_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wstrb"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RRESP"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wstrb"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="0" NAME="S00_AXI_rvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rvalid"> + <PORT DIR="O" NAME="M03_AXI_wvalid" SIGIS="undef" SIGNAME="axi_intc_0_s_axi_wvalid"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RVALID"/> + <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_wvalid"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="31" NAME="S00_AXI_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wdata"> + <PORT DIR="I" NAME="M04_ACLK" SIGIS="clk" SIGNAME="clk_wiz_0_clk_100mhz"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WDATA"/> + <CONNECTION INSTANCE="clk_wiz_0" PORT="clk_100mhz"/> </CONNECTIONS> </PORT> - <PORT DIR="O" LEFT="0" NAME="S00_AXI_wready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wready"> + <PORT DIR="I" NAME="M04_ARESETN" SIGIS="rst" SIGNAME="proc_sys_reset_0_peripheral_aresetn"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WREADY"/> + <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="3" NAME="S00_AXI_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wstrb"> + <PORT DIR="O" LEFT="31" NAME="M04_AXI_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_araddr"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WSTRB"/> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_araddr"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="0" NAME="S00_AXI_wvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wvalid"> + <PORT DIR="I" NAME="M04_AXI_arready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_arready"> <CONNECTIONS> - <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WVALID"/> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_arready"/> </CONNECTIONS> </PORT> - </PORTS> - <BUSINTERFACES> - <BUSINTERFACE BUSNAME="microblaze_0_M_AXI_DP" DATAWIDTH="32" NAME="S00_AXI" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> - <PORTMAPS> - <PORTMAP LOGICAL="ARADDR" PHYSICAL="S00_AXI_araddr"/> - <PORTMAP LOGICAL="ARPROT" PHYSICAL="S00_AXI_arprot"/> - <PORTMAP LOGICAL="ARREADY" PHYSICAL="S00_AXI_arready"/> - <PORTMAP LOGICAL="ARVALID" PHYSICAL="S00_AXI_arvalid"/> - <PORTMAP LOGICAL="AWADDR" PHYSICAL="S00_AXI_awaddr"/> - <PORTMAP LOGICAL="AWPROT" PHYSICAL="S00_AXI_awprot"/> - <PORTMAP LOGICAL="AWREADY" PHYSICAL="S00_AXI_awready"/> - <PORTMAP LOGICAL="AWVALID" PHYSICAL="S00_AXI_awvalid"/> - <PORTMAP LOGICAL="BREADY" PHYSICAL="S00_AXI_bready"/> + <PORT DIR="O" NAME="M04_AXI_arvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_arvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_arvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="31" NAME="M04_AXI_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_awaddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_awaddr"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="M04_AXI_awready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_awready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_awready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="M04_AXI_awvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_awvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_awvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="M04_AXI_bready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_bready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_bready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="1" NAME="M04_AXI_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_bresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_bresp"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="M04_AXI_bvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_bvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_bvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="M04_AXI_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_rdata"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="M04_AXI_rready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_rready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="1" NAME="M04_AXI_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_rresp"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="M04_AXI_rvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_rvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_rvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="31" NAME="M04_AXI_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_wdata"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="M04_AXI_wready" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_wready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="3" NAME="M04_AXI_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wstrb"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_wstrb"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="M04_AXI_wvalid" SIGIS="undef" SIGNAME="axi4lite_hog_build_i_0_s_axi_wvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_wvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="S00_ACLK" SIGIS="clk" SIGNAME="clk_wiz_0_clk_100mhz"> + <CONNECTIONS> + <CONNECTION INSTANCE="clk_wiz_0" PORT="clk_100mhz"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="S00_ARESETN" SIGIS="rst" SIGNAME="proc_sys_reset_0_peripheral_aresetn"> + <CONNECTIONS> + <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="S00_AXI_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_araddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARADDR"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="2" NAME="S00_AXI_arprot" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_arprot"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARPROT"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="0" NAME="S00_AXI_arready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_arready"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARREADY"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="0" NAME="S00_AXI_arvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_arvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_ARVALID"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="S00_AXI_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awaddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWADDR"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="2" NAME="S00_AXI_awprot" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awprot"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWPROT"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="0" NAME="S00_AXI_awready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awready"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWREADY"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="0" NAME="S00_AXI_awvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_awvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_AWVALID"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="0" NAME="S00_AXI_bready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_bready"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_BREADY"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="1" NAME="S00_AXI_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_bresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_BRESP"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="0" NAME="S00_AXI_bvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_bvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_BVALID"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="31" NAME="S00_AXI_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RDATA"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="0" NAME="S00_AXI_rready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rready"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RREADY"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="1" NAME="S00_AXI_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RRESP"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="0" NAME="S00_AXI_rvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_rvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_RVALID"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="S00_AXI_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WDATA"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="0" NAME="S00_AXI_wready" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wready"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WREADY"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="3" NAME="S00_AXI_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wstrb"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WSTRB"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="0" NAME="S00_AXI_wvalid" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_S00_AXI_wvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="microblaze_0" PORT="M_AXI_DP_WVALID"/> + </CONNECTIONS> + </PORT> + </PORTS> + <BUSINTERFACES> + <BUSINTERFACE BUSNAME="microblaze_0_M_AXI_DP" DATAWIDTH="32" NAME="S00_AXI" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> + <PORTMAPS> + <PORTMAP LOGICAL="ARADDR" PHYSICAL="S00_AXI_araddr"/> + <PORTMAP LOGICAL="ARPROT" PHYSICAL="S00_AXI_arprot"/> + <PORTMAP LOGICAL="ARREADY" PHYSICAL="S00_AXI_arready"/> + <PORTMAP LOGICAL="ARVALID" PHYSICAL="S00_AXI_arvalid"/> + <PORTMAP LOGICAL="AWADDR" PHYSICAL="S00_AXI_awaddr"/> + <PORTMAP LOGICAL="AWPROT" PHYSICAL="S00_AXI_awprot"/> + <PORTMAP LOGICAL="AWREADY" PHYSICAL="S00_AXI_awready"/> + <PORTMAP LOGICAL="AWVALID" PHYSICAL="S00_AXI_awvalid"/> + <PORTMAP LOGICAL="BREADY" PHYSICAL="S00_AXI_bready"/> <PORTMAP LOGICAL="BRESP" PHYSICAL="S00_AXI_bresp"/> <PORTMAP LOGICAL="BVALID" PHYSICAL="S00_AXI_bvalid"/> <PORTMAP LOGICAL="RDATA" PHYSICAL="S00_AXI_rdata"/> @@ -2950,51 +3299,390 @@ <PORTMAP LOGICAL="WVALID" PHYSICAL="M02_AXI_wvalid"/> </PORTMAPS> </BUSINTERFACE> - <BUSINTERFACE BUSNAME="__NOC__" NAME="M03_AXI" TYPE="MASTER" VLNV="xilinx.com:interface:aximm:1.0"> + <BUSINTERFACE BUSNAME="axi_interconnect_0_M03_AXI" DATAWIDTH="32" NAME="M03_AXI" TYPE="MASTER" VLNV="xilinx.com:interface:aximm:1.0"> <PORTMAPS> <PORTMAP LOGICAL="ARADDR" PHYSICAL="M03_AXI_araddr"/> - <PORTMAP LOGICAL="ARBURST" PHYSICAL="M03_AXI_arburst"/> - <PORTMAP LOGICAL="ARCACHE" PHYSICAL="M03_AXI_arcache"/> - <PORTMAP LOGICAL="ARLEN" PHYSICAL="M03_AXI_arlen"/> - <PORTMAP LOGICAL="ARLOCK" PHYSICAL="M03_AXI_arlock"/> - <PORTMAP LOGICAL="ARPROT" PHYSICAL="M03_AXI_arprot"/> - <PORTMAP LOGICAL="ARQOS" PHYSICAL="M03_AXI_arqos"/> <PORTMAP LOGICAL="ARREADY" PHYSICAL="M03_AXI_arready"/> - <PORTMAP LOGICAL="ARREGION" PHYSICAL="M03_AXI_arregion"/> - <PORTMAP LOGICAL="ARSIZE" PHYSICAL="M03_AXI_arsize"/> <PORTMAP LOGICAL="ARVALID" PHYSICAL="M03_AXI_arvalid"/> <PORTMAP LOGICAL="AWADDR" PHYSICAL="M03_AXI_awaddr"/> - <PORTMAP LOGICAL="AWBURST" PHYSICAL="M03_AXI_awburst"/> - <PORTMAP LOGICAL="AWCACHE" PHYSICAL="M03_AXI_awcache"/> - <PORTMAP LOGICAL="AWLEN" PHYSICAL="M03_AXI_awlen"/> - <PORTMAP LOGICAL="AWLOCK" PHYSICAL="M03_AXI_awlock"/> - <PORTMAP LOGICAL="AWPROT" PHYSICAL="M03_AXI_awprot"/> - <PORTMAP LOGICAL="AWQOS" PHYSICAL="M03_AXI_awqos"/> <PORTMAP LOGICAL="AWREADY" PHYSICAL="M03_AXI_awready"/> - <PORTMAP LOGICAL="AWREGION" PHYSICAL="M03_AXI_awregion"/> - <PORTMAP LOGICAL="AWSIZE" PHYSICAL="M03_AXI_awsize"/> <PORTMAP LOGICAL="AWVALID" PHYSICAL="M03_AXI_awvalid"/> <PORTMAP LOGICAL="BREADY" PHYSICAL="M03_AXI_bready"/> <PORTMAP LOGICAL="BRESP" PHYSICAL="M03_AXI_bresp"/> <PORTMAP LOGICAL="BVALID" PHYSICAL="M03_AXI_bvalid"/> <PORTMAP LOGICAL="RDATA" PHYSICAL="M03_AXI_rdata"/> - <PORTMAP LOGICAL="RLAST" PHYSICAL="M03_AXI_rlast"/> <PORTMAP LOGICAL="RREADY" PHYSICAL="M03_AXI_rready"/> <PORTMAP LOGICAL="RRESP" PHYSICAL="M03_AXI_rresp"/> <PORTMAP LOGICAL="RVALID" PHYSICAL="M03_AXI_rvalid"/> <PORTMAP LOGICAL="WDATA" PHYSICAL="M03_AXI_wdata"/> - <PORTMAP LOGICAL="WLAST" PHYSICAL="M03_AXI_wlast"/> <PORTMAP LOGICAL="WREADY" PHYSICAL="M03_AXI_wready"/> <PORTMAP LOGICAL="WSTRB" PHYSICAL="M03_AXI_wstrb"/> <PORTMAP LOGICAL="WVALID" PHYSICAL="M03_AXI_wvalid"/> </PORTMAPS> </BUSINTERFACE> + <BUSINTERFACE BUSNAME="axi_interconnect_0_M04_AXI" DATAWIDTH="32" NAME="M04_AXI" TYPE="MASTER" VLNV="xilinx.com:interface:aximm:1.0"> + <PORTMAPS> + <PORTMAP LOGICAL="ARADDR" PHYSICAL="M04_AXI_araddr"/> + <PORTMAP LOGICAL="ARREADY" PHYSICAL="M04_AXI_arready"/> + <PORTMAP LOGICAL="ARVALID" PHYSICAL="M04_AXI_arvalid"/> + <PORTMAP LOGICAL="AWADDR" PHYSICAL="M04_AXI_awaddr"/> + <PORTMAP LOGICAL="AWREADY" PHYSICAL="M04_AXI_awready"/> + <PORTMAP LOGICAL="AWVALID" PHYSICAL="M04_AXI_awvalid"/> + <PORTMAP LOGICAL="BREADY" PHYSICAL="M04_AXI_bready"/> + <PORTMAP LOGICAL="BRESP" PHYSICAL="M04_AXI_bresp"/> + <PORTMAP LOGICAL="BVALID" PHYSICAL="M04_AXI_bvalid"/> + <PORTMAP LOGICAL="RDATA" PHYSICAL="M04_AXI_rdata"/> + <PORTMAP LOGICAL="RREADY" PHYSICAL="M04_AXI_rready"/> + <PORTMAP LOGICAL="RRESP" PHYSICAL="M04_AXI_rresp"/> + <PORTMAP LOGICAL="RVALID" PHYSICAL="M04_AXI_rvalid"/> + <PORTMAP LOGICAL="WDATA" PHYSICAL="M04_AXI_wdata"/> + <PORTMAP LOGICAL="WREADY" PHYSICAL="M04_AXI_wready"/> + <PORTMAP LOGICAL="WSTRB" PHYSICAL="M04_AXI_wstrb"/> + <PORTMAP LOGICAL="WVALID" PHYSICAL="M04_AXI_wvalid"/> + </PORTMAPS> + </BUSINTERFACE> </BUSINTERFACES> </MODULE> <MODULE COREREVISION="34" FULLNAME="/axi_timer_0" HWVERSION="2.0" INSTANCE="axi_timer_0" IPTYPE="PERIPHERAL" IS_ENABLE="1" MODCLASS="PERIPHERAL" MODTYPE="axi_timer" VLNV="xilinx.com:ip:axi_timer:2.0"> <DOCUMENTS> <DOCUMENT SOURCE="http://www.xilinx.com/cgi-bin/docs/ipdoc?c=axi_timer;v=v2_0;d=pg079-axi-timer.pdf"/> </DOCUMENTS> + <ADDRESSBLOCKS> + <ADDRESSBLOCK ACCESS="read-write" INTERFACE="S_AXI" NAME="Reg" RANGE="512" USAGE="register"> + <REGISTERS> + <REGISTER NAME="TCSR0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 0 Control and Status Register"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x0"/> + <PROPERTY NAME="SIZE" VALUE="32"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="IS_ENABLED" VALUE="true"/> + <PROPERTY NAME="RESET_VALUE" VALUE="0x0"/> + <FIELDS> + <FIELD NAME="MDT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 0 Mode
0 - Timer mode is generate
1 - Timer mode is capture
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="0"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="UDT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Up/Down Count Timer 0
 0 - Timer functions as up counter
 1 - Timer functions as down counter
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="1"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="1"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="GENT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable External Generate Signal Timer 0
 0 - Disables external generate signal
 1 - Enables external generate signal
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="2"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="2"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="CAPT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable External Capture Trigger Timer 0
 0 - Disables external capture trigger
 1 - Enables external capture trigger
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="3"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="3"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ARHT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Auto Reload/Hold Timer 0.
When the timer is in Generate mode, this bit determines whether the counter reloads the generate value and continues running or holds at the termination value. 
In Capture mode, this bit determines whether a new capture trigger overwrites the previous captured value or if the previous value is held. 0 = Hold counter or capture value. The TLR must be read before providing the external capture. 1 = Reload generate value or overwrite capture value
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="4"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="4"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="LOAD0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Load Timer 0 0 = No load 1 = Loads timer with value in TLR0 Setting this bit loads timer/counter register (TCR0) with a specified value in the timer/counter load register (TLR0). This bit prevents the running of the timer/counter; hence, this should be cleared alongside setting Enable Timer/ Counter (ENT0) bit in TCSR0.
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="5"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="5"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ENIT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable Interrupt for Timer 0
Enables the assertion of the interrupt signal for this timer. Has no effect on the interrupt flag (T0INT) in TCSR0. 0 - Disable interrupt signal 1 - Enable interrupt signal
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="6"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="6"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ENT0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable Timer 0
 0 - Disable timer (counter halts)
 1 - Enable timer (counter runs)
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="7"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="7"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="T0INT"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 0 Interrupt
Indicates that the condition for an interrupt on this timer has occurred. If the timer mode is capture and the timer is enabled, this bit indicates a capture has occurred. If the mode is generate, this bit indicates the counter has rolled over. Must be cleared by writing a 1.
Read: 0 - No interrupt has occurred 1 - Interrupt has occurred Write: 0 - No change in state of T0INT 1 - Clear T0INT (clear to 0)
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="8"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="8"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="PWMA0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable Pulse Width Modulation for Timer 0 0 - Disable pulse width modulation 1 - Enable pulse width modulation PWM requires using Timer 0 and Timer 1 together as a pair. Timer 0 sets the period of the PWM output, and Timer 1 sets the high time for the PWM output. For PWM mode, MDT0 and MDT1 must be 0 and C_GEN0_ASSERT and C_GEN1_ASSERT must be 1.
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="9"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="9"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ENALL"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable All Timers 0 - No effect on timers 1 - Enable all timers (counters run) This bit is mirrored in all control/status registers and is used to enable all counters simultaneously. Writing a 1 to this bit sets ENALL, ENT0, and ENT1. 
Writing a 0 to this register clears ENALL but has no effect on ENT0 and ENT1. 
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="10"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="10"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="CASC"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable cascade mode of timers 0 - Disable cascaded operation 1 - Enable cascaded operation Cascaded operation requires using Timer 0 and Timer 1 together as a pair. The counting event for the Timer 1 is when the Timer 0 rolls over from all 1s to all 0s or vice-versa when counting down.
TLR0 and TLR1 are used for lower 32-bit and higher 32-bit respectively. Similarly, TCR0 contains lower 32-bits for the 64-bit counter and TCR1 contains the higher 32-bits.
Only TCSR0 is valid for both the timer/counters in this mode.
This CASC bit must be set before enabling the timer/counter.
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="11"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="11"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + </FIELDS> + </REGISTER> + <REGISTER NAME="TLR0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 0 Load Register"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x4"/> + <PROPERTY NAME="SIZE" VALUE="32"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="IS_ENABLED" VALUE="true"/> + <PROPERTY NAME="RESET_VALUE" VALUE="0x0"/> + <FIELDS> + <FIELD NAME="TCLR0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer/Counter Load Register
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="0"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="32"/> + </FIELD> + </FIELDS> + </REGISTER> + <REGISTER NAME="TCR0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 0 Counter Register"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x8"/> + <PROPERTY NAME="SIZE" VALUE="32"/> + <PROPERTY NAME="ACCESS" VALUE="read-only"/> + <PROPERTY NAME="IS_ENABLED" VALUE="true"/> + <PROPERTY NAME="RESET_VALUE" VALUE="0x0"/> + <FIELDS> + <FIELD NAME="TCR0"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer/Counter Register
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/> + <PROPERTY NAME="ACCESS" VALUE="read-only"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="0"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="32"/> + </FIELD> + </FIELDS> + </REGISTER> + <REGISTER NAME="TCSR1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 1 Control and Status Register"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x10"/> + <PROPERTY NAME="SIZE" VALUE="32"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="IS_ENABLED" VALUE="true"/> + <PROPERTY NAME="RESET_VALUE" VALUE="0x0"/> + <FIELDS> + <FIELD NAME="MDT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 1 Mode
 0 - Timer mode is generate
 1 - Timer mode is capture
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="0"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="UDT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Up/Down Count Timer 1
 0 - Timer functions as up counter
 1 - Timer functions as down counter
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="1"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="1"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="GENT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable External Generate Signal Timer 1
 0 - Disables external generate signal
 1 - Enables external generate signal
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="2"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="2"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="CAPT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable External Capture Trigger Timer 1
 0 - Disables external capture trigger
 1 - Enables external capture trigger
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="3"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="3"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ARHT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Auto Reload/Hold Timer 1.
When the timer is in Generate mode, this bit determines whether the counter reloads the generate value and continues running or holds at the termination value. 
In Capture mode, this bit determines whether a new capture trigger overwrites the previous captured value or if the previous value is held.
0 = Hold counter or capture value. The TLR must be read before providing the external capture. 
1 = Reload generate value or overwrite capture value
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="4"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="4"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="LOAD1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Load Timer 1 0 = No load 1 = Loads timer with value in TLR1 Setting this bit loads timer/counter register (TCR1) with a specified value in the timer/counter load register (TLR1). This bit prevents the running of the timer/counter; hence, this should be cleared alongside setting Enable Timer/ Counter (ENT1) bit in TCSR1.
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="5"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="5"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ENIT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable Interrupt for Timer 1
Enables the assertion of the interrupt signal for this timer. Has no effect on the interrupt flag (T1INT) in TCSR1. 0 - Disable interrupt signal 1 - Enable interrupt signal
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="6"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="6"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ENT1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable Timer 1
 0 - Disable timer (counter halts)
 1 - Enable timer (counter runs)
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="7"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="7"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="T1INT"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 1 Interrupt
Indicates that the condition for an interrupt on this timer has occurred. If the timer mode is capture and the timer is enabled, this bit indicates a capture has occurred. If the mode is generate, this bit indicates the counter has rolled over. Must be cleared by writing a 1.
Read: 0 - No interrupt has occurred 1 - Interrupt has occurred Write: 0 - No change in state of T0INT 1 - Clear T1INT (clear to 0)
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="8"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="8"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="PWMA1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable Pulse Width Modulation for Timer 1 0 - Disable pulse width modulation 1 - Enable pulse width modulation PWM requires using Timer 0 and Timer 1 together as a pair. Timer 0 sets the period of the PWM output, and Timer 1 sets the high time for the PWM output. For PWM mode, MDT0 and MDT1 must be 0.
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="9"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="9"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + <FIELD NAME="ENALL"> + <PROPERTY NAME="DESCRIPTION" VALUE="Enable All Timers 0 - No effect on timers 1 - Enable all timers (counters run) This bit is mirrored in all control/status registers and is used to enable all counters simultaneously. Writing a 1 to this bit sets ENALL, ENT0, and ENT1. Writing a 0 to this register clears ENALL but has no effect on ENT0 and ENT1. 
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="10"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="10"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="1"/> + </FIELD> + </FIELDS> + </REGISTER> + <REGISTER NAME="TLR1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 1 Load Register"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x14"/> + <PROPERTY NAME="SIZE" VALUE="32"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="IS_ENABLED" VALUE="true"/> + <PROPERTY NAME="RESET_VALUE" VALUE="0x0"/> + <FIELDS> + <FIELD NAME="TCLR1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer/Counter Load Register
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/> + <PROPERTY NAME="ACCESS" VALUE="read-write"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="0"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="32"/> + </FIELD> + </FIELDS> + </REGISTER> + <REGISTER NAME="TCR1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer 1 Counter Register"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0x18"/> + <PROPERTY NAME="SIZE" VALUE="32"/> + <PROPERTY NAME="ACCESS" VALUE="read-only"/> + <PROPERTY NAME="IS_ENABLED" VALUE="true"/> + <PROPERTY NAME="RESET_VALUE" VALUE="0x0"/> + <FIELDS> + <FIELD NAME="TCR1"> + <PROPERTY NAME="DESCRIPTION" VALUE="Timer/Counter Register
"/> + <PROPERTY NAME="ADDRESS_OFFSET" VALUE="0"/> + <PROPERTY NAME="ACCESS" VALUE="read-only"/> + <PROPERTY NAME="MODIFIED_READ_VALUES" VALUE=""/> + <PROPERTY NAME="WRITE_CONSTRAINT" VALUE="0"/> + <PROPERTY NAME="READ_ACTION" VALUE=""/> + <PROPERTY NAME="BIT_OFFSET" VALUE="0"/> + <PROPERTY NAME="BIT_WIDTH" VALUE="32"/> + </FIELD> + </FIELDS> + </REGISTER> + </REGISTERS> + </ADDRESSBLOCK> + </ADDRESSBLOCKS> <PARAMETERS> <PARAMETER NAME="C_COUNT_WIDTH" VALUE="32"/> <PARAMETER NAME="C_FAMILY" VALUE="artix7"/> @@ -3014,6 +3702,8 @@ <PARAMETER NAME="enable_timer2" VALUE="0"/> <PARAMETER NAME="mode_64bit" VALUE="0"/> <PARAMETER NAME="EDK_IPTYPE" VALUE="PERIPHERAL"/> + <PARAMETER NAME="C_BASEADDR" VALUE="0x41C00000"/> + <PARAMETER NAME="C_HIGHADDR" VALUE="0x41C0FFFF"/> </PARAMETERS> <PORTS> <PORT DIR="I" NAME="capturetrig0" SIGIS="undef"/> @@ -3032,31 +3722,99 @@ <CONNECTION INSTANCE="clk_wiz_0" PORT="clk_100mhz"/> </CONNECTIONS> </PORT> - <PORT DIR="I" LEFT="4" NAME="s_axi_araddr" RIGHT="0" SIGIS="undef"/> + <PORT DIR="I" LEFT="4" NAME="s_axi_araddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_araddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_araddr"/> + </CONNECTIONS> + </PORT> <PORT DIR="I" NAME="s_axi_aresetn" POLARITY="ACTIVE_LOW" SIGIS="rst" SIGNAME="proc_sys_reset_0_peripheral_aresetn"> <CONNECTIONS> <CONNECTION INSTANCE="proc_sys_reset_0" PORT="peripheral_aresetn"/> </CONNECTIONS> </PORT> - <PORT DIR="O" NAME="s_axi_arready" SIGIS="undef"/> - <PORT DIR="I" NAME="s_axi_arvalid" SIGIS="undef"/> - <PORT DIR="I" LEFT="4" NAME="s_axi_awaddr" RIGHT="0" SIGIS="undef"/> - <PORT DIR="O" NAME="s_axi_awready" SIGIS="undef"/> - <PORT DIR="I" NAME="s_axi_awvalid" SIGIS="undef"/> - <PORT DIR="I" NAME="s_axi_bready" SIGIS="undef"/> - <PORT DIR="O" LEFT="1" NAME="s_axi_bresp" RIGHT="0" SIGIS="undef"/> - <PORT DIR="O" NAME="s_axi_bvalid" SIGIS="undef"/> - <PORT DIR="O" LEFT="31" NAME="s_axi_rdata" RIGHT="0" SIGIS="undef"/> - <PORT DIR="I" NAME="s_axi_rready" SIGIS="undef"/> - <PORT DIR="O" LEFT="1" NAME="s_axi_rresp" RIGHT="0" SIGIS="undef"/> - <PORT DIR="O" NAME="s_axi_rvalid" SIGIS="undef"/> - <PORT DIR="I" LEFT="31" NAME="s_axi_wdata" RIGHT="0" SIGIS="undef"/> - <PORT DIR="O" NAME="s_axi_wready" SIGIS="undef"/> - <PORT DIR="I" LEFT="3" NAME="s_axi_wstrb" RIGHT="0" SIGIS="undef"/> - <PORT DIR="I" NAME="s_axi_wvalid" SIGIS="undef"/> + <PORT DIR="O" NAME="s_axi_arready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_arready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_arready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_arvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_arvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_arvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="4" NAME="s_axi_awaddr" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_awaddr"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_awaddr"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_awready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_awready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_awready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_awvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_awvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_awvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_bready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_bready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_bready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="1" NAME="s_axi_bresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_bresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_bresp"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_bvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_bvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_bvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="31" NAME="s_axi_rdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rdata"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_rready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" LEFT="1" NAME="s_axi_rresp" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rresp"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rresp"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_rvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_rvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_rvalid"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="31" NAME="s_axi_wdata" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wdata"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wdata"/> + </CONNECTIONS> + </PORT> + <PORT DIR="O" NAME="s_axi_wready" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wready"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wready"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" LEFT="3" NAME="s_axi_wstrb" RIGHT="0" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wstrb"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wstrb"/> + </CONNECTIONS> + </PORT> + <PORT DIR="I" NAME="s_axi_wvalid" SIGIS="undef" SIGNAME="axi_interconnect_0_M02_AXI_wvalid"> + <CONNECTIONS> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M02_AXI_wvalid"/> + </CONNECTIONS> + </PORT> </PORTS> <BUSINTERFACES> - <BUSINTERFACE BUSNAME="__NOC__" DATAWIDTH="32" NAME="S_AXI" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> + <BUSINTERFACE BUSNAME="axi_interconnect_0_M02_AXI" DATAWIDTH="32" NAME="S_AXI" TYPE="SLAVE" VLNV="xilinx.com:interface:aximm:1.0"> <PARAMETER NAME="ADDR_WIDTH" VALUE="5"/> <PARAMETER NAME="ARUSER_WIDTH" VALUE="0"/> <PARAMETER NAME="AWUSER_WIDTH" VALUE="0"/> @@ -3076,9 +3834,9 @@ <PARAMETER NAME="ID_WIDTH" VALUE="0"/> <PARAMETER NAME="INSERT_VIP" VALUE="0"/> <PARAMETER NAME="MAX_BURST_LENGTH" VALUE="1"/> - <PARAMETER NAME="NUM_READ_OUTSTANDING" VALUE="1"/> + <PARAMETER NAME="NUM_READ_OUTSTANDING" VALUE="2"/> <PARAMETER NAME="NUM_READ_THREADS" VALUE="1"/> - <PARAMETER NAME="NUM_WRITE_OUTSTANDING" VALUE="1"/> + <PARAMETER NAME="NUM_WRITE_OUTSTANDING" VALUE="2"/> <PARAMETER NAME="NUM_WRITE_THREADS" VALUE="1"/> <PARAMETER NAME="PHASE" VALUE="0.0"/> <PARAMETER NAME="PROTOCOL" VALUE="AXI4LITE"/> @@ -3975,6 +4733,8 @@ <CONNECTION INSTANCE="axi_gpio_0" PORT="s_axi_aclk"/> <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_aclk"/> <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_aclk"/> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_aclk"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_ACLK"/> </CONNECTIONS> </PORT> <PORT CLKFREQUENCY="100000000" DIR="I" NAME="clk_in1" SIGIS="clk" SIGNAME="External_Ports_clk_in1"> @@ -4017,7 +4777,7 @@ <PARAMETER NAME="C_LMB_AWIDTH" VALUE="32"/> <PARAMETER NAME="C_LMB_DWIDTH" VALUE="32"/> <PARAMETER NAME="C_LMB_PROTOCOL" VALUE="0"/> - <PARAMETER NAME="C_MASK" VALUE="0x0000000040000000"/> + <PARAMETER NAME="C_MASK" VALUE="0x00000000c0000000"/> <PARAMETER NAME="C_MASK1" VALUE="0x0000000000800000"/> <PARAMETER NAME="C_MASK2" VALUE="0x0000000000800000"/> <PARAMETER NAME="C_MASK3" VALUE="0x0000000000800000"/> @@ -6331,6 +7091,8 @@ <MEMRANGE ADDRESSBLOCK="Reg" BASENAME="C_BASEADDR" BASEVALUE="0x40000000" HIGHNAME="C_HIGHADDR" HIGHVALUE="0x4000FFFF" INSTANCE="axi_gpio_0" IS_DATA="TRUE" IS_INSTRUCTION="FALSE" MASTERBUSINTERFACE="M_AXI_DP" MEMTYPE="REGISTER" SLAVEBUSINTERFACE="S_AXI"/> <MEMRANGE ADDRESSBLOCK="Reg" BASENAME="C_BASEADDR" BASEVALUE="0x41200000" HIGHNAME="C_HIGHADDR" HIGHVALUE="0x4120FFFF" INSTANCE="axi_intc_0" IS_DATA="TRUE" IS_INSTRUCTION="FALSE" MASTERBUSINTERFACE="M_AXI_DP" MEMTYPE="REGISTER" SLAVEBUSINTERFACE="s_axi"/> <MEMRANGE ADDRESSBLOCK="Reg" BASENAME="C_BASEADDR" BASEVALUE="0x41400000" HIGHNAME="C_HIGHADDR" HIGHVALUE="0x41400FFF" INSTANCE="mdm_0" IS_DATA="TRUE" IS_INSTRUCTION="FALSE" MASTERBUSINTERFACE="M_AXI_DP" MEMTYPE="REGISTER" SLAVEBUSINTERFACE="S_AXI"/> + <MEMRANGE ADDRESSBLOCK="Reg" BASENAME="C_BASEADDR" BASEVALUE="0x41C00000" HIGHNAME="C_HIGHADDR" HIGHVALUE="0x41C0FFFF" INSTANCE="axi_timer_0" IS_DATA="TRUE" IS_INSTRUCTION="FALSE" MASTERBUSINTERFACE="M_AXI_DP" MEMTYPE="REGISTER" SLAVEBUSINTERFACE="S_AXI"/> + <MEMRANGE ADDRESSBLOCK="reg0" BASENAME="C_BASEADDR" BASEVALUE="0x80000000" HIGHNAME="C_HIGHADDR" HIGHVALUE="0x8000007F" INSTANCE="axi4lite_hog_build_i_0" IS_DATA="TRUE" IS_INSTRUCTION="FALSE" MASTERBUSINTERFACE="M_AXI_DP" MEMTYPE="REGISTER" SLAVEBUSINTERFACE="s_axi"/> </MEMORYMAP> <PERIPHERALS> <PERIPHERAL INSTANCE="dlmb_bram_if_cntlr_0"/> @@ -6338,6 +7100,8 @@ <PERIPHERAL INSTANCE="axi_gpio_0"/> <PERIPHERAL INSTANCE="axi_intc_0"/> <PERIPHERAL INSTANCE="mdm_0"/> + <PERIPHERAL INSTANCE="axi_timer_0"/> + <PERIPHERAL INSTANCE="axi4lite_hog_build_i_0"/> </PERIPHERALS> </MODULE> <MODULE COREREVISION="15" FULLNAME="/proc_sys_reset_0" HWVERSION="5.0" INSTANCE="proc_sys_reset_0" IPTYPE="PERIPHERAL" IS_ENABLE="1" MODCLASS="PERIPHERAL" MODTYPE="proc_sys_reset" VLNV="xilinx.com:ip:proc_sys_reset:5.0"> @@ -6405,6 +7169,8 @@ <CONNECTION INSTANCE="axi_gpio_0" PORT="s_axi_aresetn"/> <CONNECTION INSTANCE="axi_intc_0" PORT="s_axi_aresetn"/> <CONNECTION INSTANCE="axi_timer_0" PORT="s_axi_aresetn"/> + <CONNECTION INSTANCE="axi4lite_hog_build_i_0" PORT="s_axi_aresetn"/> + <CONNECTION INSTANCE="axi_interconnect_0" PORT="M04_ARESETN"/> </CONNECTIONS> </PORT> <PORT DIR="O" LEFT="0" NAME="peripheral_reset" POLARITY="ACTIVE_HIGH" RIGHT="0" SIGIS="rst"/> diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.dcp b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.dcp new file mode 100644 index 0000000000000000000000000000000000000000..ddc6d963be77a4e8bc180cc53757e88ee9854196 GIT binary patch literal 48437 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 literal 0 HcmV?d00001 diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xml b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xml index aa0b815..86e2c7b 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xml +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xml @@ -559,6 +559,101 @@ </spirit:memoryMap> </spirit:memoryMaps> <spirit:model> + <spirit:views> + <spirit:view> + <spirit:name>xilinx_anylanguagebehavioralsimulation</spirit:name> + <spirit:displayName>Simulation</spirit:displayName> + <spirit:envIdentifier>:vivado.xilinx.com:simulation</spirit:envIdentifier> + <spirit:modelName>axi4lite_hog_build_info</spirit:modelName> + <spirit:parameters> + <spirit:parameter> + <spirit:name>outputProductCRC</spirit:name> + <spirit:value>9:216bf9af</spirit:value> + </spirit:parameter> + </spirit:parameters> + </spirit:view> + <spirit:view> + <spirit:name>xilinx_anylanguagesynthesis</spirit:name> + <spirit:displayName>Synthesis</spirit:displayName> + <spirit:envIdentifier>:vivado.xilinx.com:synthesis</spirit:envIdentifier> + <spirit:modelName>axi4lite_hog_build_info</spirit:modelName> + <spirit:parameters> + <spirit:parameter> + <spirit:name>outputProductCRC</spirit:name> + <spirit:value>9:12918eb6</spirit:value> + </spirit:parameter> + </spirit:parameters> + </spirit:view> + <spirit:view> + <spirit:name>xilinx_externalfiles</spirit:name> + <spirit:displayName>External Files</spirit:displayName> + <spirit:envIdentifier>:vivado.xilinx.com:external.files</spirit:envIdentifier> + <spirit:fileSetRef> + <spirit:localName>xilinx_externalfiles_view_fileset</spirit:localName> + </spirit:fileSetRef> + <spirit:parameters> + <spirit:parameter> + <spirit:name>GENtimestamp</spirit:name> + <spirit:value>Thu Mar 20 16:31:20 UTC 2025</spirit:value> + </spirit:parameter> + <spirit:parameter> + <spirit:name>outputProductCRC</spirit:name> + <spirit:value>9:12918eb6</spirit:value> + </spirit:parameter> + </spirit:parameters> + </spirit:view> + <spirit:view> + <spirit:name>xilinx_synthesisconstraints</spirit:name> + <spirit:displayName>Synthesis Constraints</spirit:displayName> + <spirit:envIdentifier>:vivado.xilinx.com:synthesis.constraints</spirit:envIdentifier> + <spirit:parameters> + <spirit:parameter> + <spirit:name>outputProductCRC</spirit:name> + <spirit:value>9:12918eb6</spirit:value> + </spirit:parameter> + </spirit:parameters> + </spirit:view> + <spirit:view> + <spirit:name>xilinx_vhdlsimulationwrapper</spirit:name> + <spirit:displayName>VHDL Simulation Wrapper</spirit:displayName> + <spirit:envIdentifier>vhdlSource:vivado.xilinx.com:simulation.wrapper</spirit:envIdentifier> + <spirit:language>vhdl</spirit:language> + <spirit:modelName>mb_design_1_axi4lite_hog_build_i_0_0</spirit:modelName> + <spirit:fileSetRef> + <spirit:localName>xilinx_vhdlsimulationwrapper_view_fileset</spirit:localName> + </spirit:fileSetRef> + <spirit:parameters> + <spirit:parameter> + <spirit:name>GENtimestamp</spirit:name> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> + </spirit:parameter> + <spirit:parameter> + <spirit:name>outputProductCRC</spirit:name> + <spirit:value>9:216bf9af</spirit:value> + </spirit:parameter> + </spirit:parameters> + </spirit:view> + <spirit:view> + <spirit:name>xilinx_vhdlsynthesiswrapper</spirit:name> + <spirit:displayName>VHDL Synthesis Wrapper</spirit:displayName> + <spirit:envIdentifier>vhdlSource:vivado.xilinx.com:synthesis.wrapper</spirit:envIdentifier> + <spirit:language>vhdl</spirit:language> + <spirit:modelName>mb_design_1_axi4lite_hog_build_i_0_0</spirit:modelName> + <spirit:fileSetRef> + <spirit:localName>xilinx_vhdlsynthesiswrapper_view_fileset</spirit:localName> + </spirit:fileSetRef> + <spirit:parameters> + <spirit:parameter> + <spirit:name>GENtimestamp</spirit:name> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> + </spirit:parameter> + <spirit:parameter> + <spirit:name>outputProductCRC</spirit:name> + <spirit:value>9:12918eb6</spirit:value> + </spirit:parameter> + </spirit:parameters> + </spirit:view> + </spirit:views> <spirit:ports> <spirit:port> <spirit:name>s_axi_aclk</spirit:name> @@ -567,7 +662,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -579,7 +675,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -595,7 +692,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -610,7 +708,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -625,7 +724,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -641,7 +741,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -660,7 +761,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -675,7 +777,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -690,7 +793,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -706,7 +810,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -718,7 +823,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -730,7 +836,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -749,7 +856,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -764,7 +872,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -779,7 +888,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -795,7 +905,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -811,7 +922,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -823,7 +935,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -835,7 +948,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -854,7 +968,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -870,7 +985,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -886,7 +1002,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -902,7 +1019,8 @@ <spirit:wireTypeDefs> <spirit:wireTypeDef> <spirit:typeName>std_logic_vector</spirit:typeName> - <spirit:viewNameRef>dummy_view</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagesynthesis</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_anylanguagebehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -923,6 +1041,60 @@ <spirit:enumeration>ACTIVE_LOW</spirit:enumeration> </spirit:choice> </spirit:choices> + <spirit:fileSets> + <spirit:fileSet> + <spirit:name>xilinx_externalfiles_view_fileset</spirit:name> + <spirit:file> + <spirit:name>mb_design_1_axi4lite_hog_build_i_0_0.dcp</spirit:name> + <spirit:userFileType>dcp</spirit:userFileType> + <spirit:userFileType>USED_IN_implementation</spirit:userFileType> + <spirit:userFileType>USED_IN_synthesis</spirit:userFileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + <spirit:file> + <spirit:name>mb_design_1_axi4lite_hog_build_i_0_0_stub.v</spirit:name> + <spirit:fileType>verilogSource</spirit:fileType> + <spirit:userFileType>USED_IN_synth_blackbox_stub</spirit:userFileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + <spirit:file> + <spirit:name>mb_design_1_axi4lite_hog_build_i_0_0_stub.vhdl</spirit:name> + <spirit:fileType>vhdlSource</spirit:fileType> + <spirit:userFileType>USED_IN_synth_blackbox_stub</spirit:userFileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + <spirit:file> + <spirit:name>mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.v</spirit:name> + <spirit:fileType>verilogSource</spirit:fileType> + <spirit:userFileType>USED_IN_simulation</spirit:userFileType> + <spirit:userFileType>USED_IN_single_language</spirit:userFileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + <spirit:file> + <spirit:name>mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.vhdl</spirit:name> + <spirit:fileType>vhdlSource</spirit:fileType> + <spirit:userFileType>USED_IN_simulation</spirit:userFileType> + <spirit:userFileType>USED_IN_single_language</spirit:userFileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + </spirit:fileSet> + <spirit:fileSet> + <spirit:name>xilinx_vhdlsimulationwrapper_view_fileset</spirit:name> + <spirit:file> + <spirit:name>sim/mb_design_1_axi4lite_hog_build_i_0_0.vhd</spirit:name> + <spirit:fileType>vhdlSource</spirit:fileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + </spirit:fileSet> + <spirit:fileSet> + <spirit:name>xilinx_vhdlsynthesiswrapper_view_fileset</spirit:name> + <spirit:file> + <spirit:name>synth/mb_design_1_axi4lite_hog_build_i_0_0.vhd</spirit:name> + <spirit:fileType>vhdlSource</spirit:fileType> + <spirit:logicalName>xil_defaultlib</spirit:logicalName> + </spirit:file> + </spirit:fileSet> + </spirit:fileSets> <spirit:description>xilinx.com:module_ref:axi4lite_hog_build_info:1.0</spirit:description> <spirit:parameters> <spirit:parameter> diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.v new file mode 100644 index 0000000..80b954e --- /dev/null +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.v @@ -0,0 +1,2225 @@ +// Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. +// Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. +// -------------------------------------------------------------------------------- +// Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 +// Date : Thu Mar 20 18:25:04 2025 +// Host : hogtest running 64-bit unknown +// Command : write_verilog -force -mode funcsim +// /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.v +// Design : mb_design_1_axi4lite_hog_build_i_0_0 +// Purpose : This verilog netlist is a functional simulation representation of the design and should not be modified +// or synthesized. This netlist cannot be used for SDF annotated simulation. +// Device : xc7a200tsbg484-1 +// -------------------------------------------------------------------------------- +`timescale 1 ps / 1 ps + +(* CHECK_LICENSE_TYPE = "mb_design_1_axi4lite_hog_build_i_0_0,axi4lite_hog_build_info,{}" *) (* downgradeipidentifiedwarnings = "yes" *) (* ip_definition_source = "module_ref" *) +(* x_core_info = "axi4lite_hog_build_info,Vivado 2024.1.2" *) +(* NotValidForBitStream *) +module mb_design_1_axi4lite_hog_build_i_0_0 + (s_axi_aclk, + s_axi_aresetn, + s_axi_awaddr, + s_axi_awvalid, + s_axi_awready, + s_axi_wdata, + s_axi_wstrb, + s_axi_wvalid, + s_axi_wready, + s_axi_bresp, + s_axi_bvalid, + s_axi_bready, + s_axi_araddr, + s_axi_arvalid, + s_axi_arready, + s_axi_rdata, + s_axi_rresp, + s_axi_rvalid, + s_axi_rready, + hog_global_date_i, + hog_global_time_i, + hog_global_ver_i, + hog_global_sha_i); + (* x_interface_info = "xilinx.com:signal:clock:1.0 s_axi_aclk CLK" *) (* x_interface_parameter = "XIL_INTERFACENAME s_axi_aclk, ASSOCIATED_BUSIF s_axi, ASSOCIATED_RESET s_axi_aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0" *) input s_axi_aclk; + (* x_interface_info = "xilinx.com:signal:reset:1.0 s_axi_aresetn RST" *) (* x_interface_parameter = "XIL_INTERFACENAME s_axi_aresetn, POLARITY ACTIVE_LOW, INSERT_VIP 0" *) input s_axi_aresetn; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi AWADDR" *) (* x_interface_parameter = "XIL_INTERFACENAME s_axi, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 0, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) input [31:0]s_axi_awaddr; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi AWVALID" *) input s_axi_awvalid; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi AWREADY" *) output s_axi_awready; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi WDATA" *) input [31:0]s_axi_wdata; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi WSTRB" *) input [3:0]s_axi_wstrb; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi WVALID" *) input s_axi_wvalid; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi WREADY" *) output s_axi_wready; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi BRESP" *) output [1:0]s_axi_bresp; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi BVALID" *) output s_axi_bvalid; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi BREADY" *) input s_axi_bready; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi ARADDR" *) input [31:0]s_axi_araddr; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi ARVALID" *) input s_axi_arvalid; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi ARREADY" *) output s_axi_arready; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi RDATA" *) output [31:0]s_axi_rdata; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi RRESP" *) output [1:0]s_axi_rresp; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi RVALID" *) output s_axi_rvalid; + (* x_interface_info = "xilinx.com:interface:aximm:1.0 s_axi RREADY" *) input s_axi_rready; + input [31:0]hog_global_date_i; + input [31:0]hog_global_time_i; + input [31:0]hog_global_ver_i; + input [31:0]hog_global_sha_i; + + wire \<const0> ; + wire [31:0]hog_global_date_i; + wire [31:0]hog_global_sha_i; + wire [31:0]hog_global_time_i; + wire [31:0]hog_global_ver_i; + wire s_axi_aclk; + wire [31:0]s_axi_araddr; + wire s_axi_aresetn; + wire s_axi_arready; + wire s_axi_arvalid; + wire s_axi_awready; + wire s_axi_awvalid; + wire s_axi_bready; + wire s_axi_bvalid; + wire [31:0]s_axi_rdata; + wire s_axi_rready; + wire s_axi_rvalid; + wire s_axi_wready; + wire s_axi_wvalid; + + assign s_axi_bresp[1] = \<const0> ; + assign s_axi_bresp[0] = \<const0> ; + assign s_axi_rresp[1] = \<const0> ; + assign s_axi_rresp[0] = \<const0> ; + GND GND + (.G(\<const0> )); + mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info U0 + (.hog_global_date_i(hog_global_date_i), + .hog_global_sha_i(hog_global_sha_i), + .hog_global_time_i(hog_global_time_i), + .hog_global_ver_i(hog_global_ver_i), + .s_axi_aclk(s_axi_aclk), + .s_axi_araddr(s_axi_araddr), + .s_axi_aresetn(s_axi_aresetn), + .s_axi_arready_s_reg(s_axi_arready), + .s_axi_arvalid(s_axi_arvalid), + .s_axi_awready(s_axi_awready), + .s_axi_awvalid(s_axi_awvalid), + .s_axi_bready(s_axi_bready), + .s_axi_bvalid(s_axi_bvalid), + .s_axi_rdata(s_axi_rdata), + .s_axi_rready(s_axi_rready), + .s_axi_rvalid(s_axi_rvalid), + .s_axi_wready(s_axi_wready), + .s_axi_wvalid(s_axi_wvalid)); +endmodule + +(* ORIG_REF_NAME = "axi4lite_hog_build_info" *) +module mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info + (s_axi_wready, + s_axi_awready, + s_axi_rdata, + s_axi_arready_s_reg, + s_axi_bvalid, + s_axi_rvalid, + s_axi_aclk, + s_axi_awvalid, + s_axi_wvalid, + s_axi_rready, + s_axi_aresetn, + s_axi_arvalid, + s_axi_araddr, + hog_global_ver_i, + hog_global_sha_i, + hog_global_date_i, + hog_global_time_i, + s_axi_bready); + output s_axi_wready; + output s_axi_awready; + output [31:0]s_axi_rdata; + output s_axi_arready_s_reg; + output s_axi_bvalid; + output s_axi_rvalid; + input s_axi_aclk; + input s_axi_awvalid; + input s_axi_wvalid; + input s_axi_rready; + input s_axi_aresetn; + input s_axi_arvalid; + input [31:0]s_axi_araddr; + input [31:0]hog_global_ver_i; + input [31:0]hog_global_sha_i; + input [31:0]hog_global_date_i; + input [31:0]hog_global_time_i; + input s_axi_bready; + + wire [31:0]hog_global_date_i; + wire [31:0]hog_global_sha_i; + wire [31:0]hog_global_time_i; + wire [31:0]hog_global_ver_i; + wire p_0_in; + wire [31:0]p_1_in; + wire rd_valid_s; + wire s_axi_aclk; + wire [31:0]s_axi_araddr; + wire s_axi_aresetn; + wire s_axi_arready_s_reg; + wire s_axi_arvalid; + wire s_axi_awready; + wire s_axi_awvalid; + wire s_axi_bready; + wire s_axi_bvalid; + wire [31:0]s_axi_rdata; + wire s_axi_rready; + wire s_axi_rvalid; + wire s_axi_wready; + wire s_axi_wvalid; + + mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if axi4lite_if_inst + (.D(p_1_in), + .E(rd_valid_s), + .SR(p_0_in), + .hog_global_date_i(hog_global_date_i), + .hog_global_sha_i(hog_global_sha_i), + .hog_global_time_i(hog_global_time_i), + .hog_global_ver_i(hog_global_ver_i), + .s_axi_aclk(s_axi_aclk), + .s_axi_araddr(s_axi_araddr), + .s_axi_aresetn(s_axi_aresetn), + .s_axi_arready_s_reg(s_axi_arready_s_reg), + .s_axi_arvalid(s_axi_arvalid), + .s_axi_awready(s_axi_awready), + .s_axi_awvalid(s_axi_awvalid), + .s_axi_bready(s_axi_bready), + .s_axi_bvalid(s_axi_bvalid), + .s_axi_rready(s_axi_rready), + .s_axi_rvalid(s_axi_rvalid), + .s_axi_wready(s_axi_wready), + .s_axi_wvalid(s_axi_wvalid)); + mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs hog_build_info_regs_inst + (.D(p_1_in), + .E(rd_valid_s), + .SR(p_0_in), + .s_axi_aclk(s_axi_aclk), + .s_axi_rdata(s_axi_rdata)); +endmodule + +(* ORIG_REF_NAME = "axi4lite_if" *) +module mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if + (s_axi_wready, + SR, + s_axi_awready, + s_axi_bvalid, + s_axi_arready_s_reg, + s_axi_rvalid, + D, + E, + s_axi_aclk, + s_axi_wvalid, + s_axi_bready, + s_axi_awvalid, + s_axi_arvalid, + s_axi_rready, + s_axi_aresetn, + s_axi_araddr, + hog_global_ver_i, + hog_global_sha_i, + hog_global_date_i, + hog_global_time_i); + output s_axi_wready; + output [0:0]SR; + output s_axi_awready; + output s_axi_bvalid; + output s_axi_arready_s_reg; + output s_axi_rvalid; + output [31:0]D; + output [0:0]E; + input s_axi_aclk; + input s_axi_wvalid; + input s_axi_bready; + input s_axi_awvalid; + input s_axi_arvalid; + input s_axi_rready; + input s_axi_aresetn; + input [31:0]s_axi_araddr; + input [31:0]hog_global_ver_i; + input [31:0]hog_global_sha_i; + input [31:0]hog_global_date_i; + input [31:0]hog_global_time_i; + + wire [31:0]D; + wire [0:0]E; + wire [0:0]SR; + wire [31:0]hog_global_date_i; + wire [31:0]hog_global_sha_i; + wire [31:0]hog_global_time_i; + wire [31:0]hog_global_ver_i; + wire s_axi_aclk; + wire [31:0]s_axi_araddr; + wire s_axi_aresetn; + wire s_axi_arready_s_reg; + wire s_axi_arvalid; + wire s_axi_awready; + wire s_axi_awvalid; + wire s_axi_bready; + wire s_axi_bvalid; + wire s_axi_rready; + wire s_axi_rvalid; + wire s_axi_wready; + wire s_axi_wvalid; + + mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if axi4lite_rd_channel_if_i + (.D(D), + .E(E), + .hog_global_date_i(hog_global_date_i), + .hog_global_sha_i(hog_global_sha_i), + .hog_global_time_i(hog_global_time_i), + .hog_global_ver_i(hog_global_ver_i), + .s_axi_aclk(s_axi_aclk), + .s_axi_araddr(s_axi_araddr), + .s_axi_aresetn(s_axi_aresetn), + .s_axi_aresetn_0(SR), + .s_axi_arready_s_reg_0(s_axi_arready_s_reg), + .s_axi_arvalid(s_axi_arvalid), + .s_axi_rready(s_axi_rready), + .s_axi_rvalid(s_axi_rvalid)); + mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if axi4lite_wr_channel_if_i + (.s_axi_aclk(s_axi_aclk), + .s_axi_awready(s_axi_awready), + .s_axi_awready_s_reg_0(SR), + .s_axi_awvalid(s_axi_awvalid), + .s_axi_bready(s_axi_bready), + .s_axi_bvalid(s_axi_bvalid), + .s_axi_wready(s_axi_wready), + .s_axi_wvalid(s_axi_wvalid)); +endmodule + +(* ORIG_REF_NAME = "axi4lite_rd_channel_if" *) +module mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if + (s_axi_aresetn_0, + s_axi_arready_s_reg_0, + s_axi_rvalid, + D, + E, + s_axi_aclk, + s_axi_arvalid, + s_axi_rready, + s_axi_aresetn, + s_axi_araddr, + hog_global_ver_i, + hog_global_sha_i, + hog_global_date_i, + hog_global_time_i); + output s_axi_aresetn_0; + output s_axi_arready_s_reg_0; + output s_axi_rvalid; + output [31:0]D; + output [0:0]E; + input s_axi_aclk; + input s_axi_arvalid; + input s_axi_rready; + input s_axi_aresetn; + input [31:0]s_axi_araddr; + input [31:0]hog_global_ver_i; + input [31:0]hog_global_sha_i; + input [31:0]hog_global_date_i; + input [31:0]hog_global_time_i; + + wire [31:0]D; + wire [0:0]E; + wire [31:0]addr_s; + wire \addr_s[0]_i_1_n_0 ; + wire \addr_s[10]_i_1_n_0 ; + wire \addr_s[11]_i_1_n_0 ; + wire \addr_s[12]_i_1_n_0 ; + wire \addr_s[13]_i_1_n_0 ; + wire \addr_s[14]_i_1_n_0 ; + wire \addr_s[15]_i_1_n_0 ; + wire \addr_s[16]_i_1_n_0 ; + wire \addr_s[17]_i_1_n_0 ; + wire \addr_s[18]_i_1_n_0 ; + wire \addr_s[19]_i_1_n_0 ; + wire \addr_s[1]_i_1_n_0 ; + wire \addr_s[20]_i_1_n_0 ; + wire \addr_s[21]_i_1_n_0 ; + wire \addr_s[22]_i_1_n_0 ; + wire \addr_s[23]_i_1_n_0 ; + wire \addr_s[24]_i_1_n_0 ; + wire \addr_s[25]_i_1_n_0 ; + wire \addr_s[26]_i_1_n_0 ; + wire \addr_s[27]_i_1_n_0 ; + wire \addr_s[28]_i_1_n_0 ; + wire \addr_s[29]_i_1_n_0 ; + wire \addr_s[2]_i_1_n_0 ; + wire \addr_s[30]_i_1_n_0 ; + wire \addr_s[31]_i_1_n_0 ; + wire \addr_s[3]_i_1_n_0 ; + wire \addr_s[4]_i_1_n_0 ; + wire \addr_s[5]_i_1_n_0 ; + wire \addr_s[6]_i_1_n_0 ; + wire \addr_s[7]_i_1_n_0 ; + wire \addr_s[8]_i_1_n_0 ; + wire \addr_s[9]_i_1_n_0 ; + wire [31:0]hog_global_date_i; + wire [31:0]hog_global_sha_i; + wire [31:0]hog_global_time_i; + wire [31:0]hog_global_ver_i; + wire rd_addr_latched; + wire rd_addr_latched_i_1_n_0; + wire \rd_data_s[0]_i_2_n_0 ; + wire \rd_data_s[10]_i_2_n_0 ; + wire \rd_data_s[11]_i_2_n_0 ; + wire \rd_data_s[12]_i_2_n_0 ; + wire \rd_data_s[13]_i_2_n_0 ; + wire \rd_data_s[14]_i_2_n_0 ; + wire \rd_data_s[15]_i_2_n_0 ; + wire \rd_data_s[16]_i_2_n_0 ; + wire \rd_data_s[17]_i_2_n_0 ; + wire \rd_data_s[18]_i_2_n_0 ; + wire \rd_data_s[19]_i_2_n_0 ; + wire \rd_data_s[1]_i_2_n_0 ; + wire \rd_data_s[20]_i_2_n_0 ; + wire \rd_data_s[21]_i_2_n_0 ; + wire \rd_data_s[22]_i_2_n_0 ; + wire \rd_data_s[23]_i_2_n_0 ; + wire \rd_data_s[24]_i_2_n_0 ; + wire \rd_data_s[25]_i_2_n_0 ; + wire \rd_data_s[26]_i_2_n_0 ; + wire \rd_data_s[27]_i_2_n_0 ; + wire \rd_data_s[28]_i_2_n_0 ; + wire \rd_data_s[29]_i_2_n_0 ; + wire \rd_data_s[2]_i_2_n_0 ; + wire \rd_data_s[30]_i_2_n_0 ; + wire \rd_data_s[31]_i_10_n_0 ; + wire \rd_data_s[31]_i_11_n_0 ; + wire \rd_data_s[31]_i_12_n_0 ; + wire \rd_data_s[31]_i_13_n_0 ; + wire \rd_data_s[31]_i_14_n_0 ; + wire \rd_data_s[31]_i_15_n_0 ; + wire \rd_data_s[31]_i_16_n_0 ; + wire \rd_data_s[31]_i_17_n_0 ; + wire \rd_data_s[31]_i_18_n_0 ; + wire \rd_data_s[31]_i_19_n_0 ; + wire \rd_data_s[31]_i_20_n_0 ; + wire \rd_data_s[31]_i_21_n_0 ; + wire \rd_data_s[31]_i_22_n_0 ; + wire \rd_data_s[31]_i_3_n_0 ; + wire \rd_data_s[31]_i_4_n_0 ; + wire \rd_data_s[31]_i_5_n_0 ; + wire \rd_data_s[31]_i_6_n_0 ; + wire \rd_data_s[31]_i_7_n_0 ; + wire \rd_data_s[31]_i_8_n_0 ; + wire \rd_data_s[31]_i_9_n_0 ; + wire \rd_data_s[3]_i_2_n_0 ; + wire \rd_data_s[4]_i_2_n_0 ; + wire \rd_data_s[5]_i_2_n_0 ; + wire \rd_data_s[6]_i_2_n_0 ; + wire \rd_data_s[7]_i_2_n_0 ; + wire \rd_data_s[8]_i_2_n_0 ; + wire \rd_data_s[9]_i_2_n_0 ; + wire s_axi_aclk; + wire [31:0]s_axi_araddr; + wire s_axi_aresetn; + wire s_axi_aresetn_0; + wire s_axi_arready_s_i_1_n_0; + wire s_axi_arready_s_reg_0; + wire s_axi_arvalid; + wire s_axi_rready; + wire s_axi_rvalid; + wire s_axi_rvalid_s_i_1_n_0; + + (* SOFT_HLUTNM = "soft_lutpair2" *) + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[0]_i_1 + (.I0(addr_s[0]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[0]), + .O(\addr_s[0]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[10]_i_1 + (.I0(addr_s[10]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[10]), + .O(\addr_s[10]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[11]_i_1 + (.I0(addr_s[11]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[11]), + .O(\addr_s[11]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[12]_i_1 + (.I0(addr_s[12]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[12]), + .O(\addr_s[12]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[13]_i_1 + (.I0(addr_s[13]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[13]), + .O(\addr_s[13]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[14]_i_1 + (.I0(addr_s[14]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[14]), + .O(\addr_s[14]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[15]_i_1 + (.I0(addr_s[15]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[15]), + .O(\addr_s[15]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[16]_i_1 + (.I0(addr_s[16]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[16]), + .O(\addr_s[16]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[17]_i_1 + (.I0(addr_s[17]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[17]), + .O(\addr_s[17]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[18]_i_1 + (.I0(addr_s[18]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[18]), + .O(\addr_s[18]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[19]_i_1 + (.I0(addr_s[19]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[19]), + .O(\addr_s[19]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[1]_i_1 + (.I0(addr_s[1]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[1]), + .O(\addr_s[1]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[20]_i_1 + (.I0(addr_s[20]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[20]), + .O(\addr_s[20]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[21]_i_1 + (.I0(addr_s[21]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[21]), + .O(\addr_s[21]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[22]_i_1 + (.I0(addr_s[22]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[22]), + .O(\addr_s[22]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[23]_i_1 + (.I0(addr_s[23]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[23]), + .O(\addr_s[23]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[24]_i_1 + (.I0(addr_s[24]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[24]), + .O(\addr_s[24]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[25]_i_1 + (.I0(addr_s[25]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[25]), + .O(\addr_s[25]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[26]_i_1 + (.I0(addr_s[26]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[26]), + .O(\addr_s[26]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[27]_i_1 + (.I0(addr_s[27]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[27]), + .O(\addr_s[27]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[28]_i_1 + (.I0(addr_s[28]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[28]), + .O(\addr_s[28]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[29]_i_1 + (.I0(addr_s[29]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[29]), + .O(\addr_s[29]_i_1_n_0 )); + LUT4 #( + .INIT(16'hBF80)) + \addr_s[2]_i_1 + (.I0(s_axi_araddr[2]), + .I1(s_axi_arvalid), + .I2(s_axi_arready_s_reg_0), + .I3(addr_s[2]), + .O(\addr_s[2]_i_1_n_0 )); + LUT4 #( + .INIT(16'hBF80)) + \addr_s[30]_i_1 + (.I0(s_axi_araddr[30]), + .I1(s_axi_arvalid), + .I2(s_axi_arready_s_reg_0), + .I3(addr_s[30]), + .O(\addr_s[30]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[31]_i_1 + (.I0(addr_s[31]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[31]), + .O(\addr_s[31]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[3]_i_1 + (.I0(addr_s[3]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[3]), + .O(\addr_s[3]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[4]_i_1 + (.I0(addr_s[4]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[4]), + .O(\addr_s[4]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[5]_i_1 + (.I0(addr_s[5]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[5]), + .O(\addr_s[5]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[6]_i_1 + (.I0(addr_s[6]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[6]), + .O(\addr_s[6]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[7]_i_1 + (.I0(addr_s[7]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[7]), + .O(\addr_s[7]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[8]_i_1 + (.I0(addr_s[8]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[8]), + .O(\addr_s[8]_i_1_n_0 )); + LUT4 #( + .INIT(16'hEA2A)) + \addr_s[9]_i_1 + (.I0(addr_s[9]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[9]), + .O(\addr_s[9]_i_1_n_0 )); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[0] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[0]_i_1_n_0 ), + .Q(addr_s[0]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[10] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[10]_i_1_n_0 ), + .Q(addr_s[10]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[11] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[11]_i_1_n_0 ), + .Q(addr_s[11]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[12] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[12]_i_1_n_0 ), + .Q(addr_s[12]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[13] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[13]_i_1_n_0 ), + .Q(addr_s[13]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[14] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[14]_i_1_n_0 ), + .Q(addr_s[14]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[15] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[15]_i_1_n_0 ), + .Q(addr_s[15]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[16] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[16]_i_1_n_0 ), + .Q(addr_s[16]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[17] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[17]_i_1_n_0 ), + .Q(addr_s[17]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[18] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[18]_i_1_n_0 ), + .Q(addr_s[18]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[19] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[19]_i_1_n_0 ), + .Q(addr_s[19]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[1] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[1]_i_1_n_0 ), + .Q(addr_s[1]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[20] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[20]_i_1_n_0 ), + .Q(addr_s[20]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[21] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[21]_i_1_n_0 ), + .Q(addr_s[21]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[22] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[22]_i_1_n_0 ), + .Q(addr_s[22]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[23] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[23]_i_1_n_0 ), + .Q(addr_s[23]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[24] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[24]_i_1_n_0 ), + .Q(addr_s[24]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[25] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[25]_i_1_n_0 ), + .Q(addr_s[25]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[26] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[26]_i_1_n_0 ), + .Q(addr_s[26]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[27] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[27]_i_1_n_0 ), + .Q(addr_s[27]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[28] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[28]_i_1_n_0 ), + .Q(addr_s[28]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[29] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[29]_i_1_n_0 ), + .Q(addr_s[29]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[2] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[2]_i_1_n_0 ), + .Q(addr_s[2]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[30] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[30]_i_1_n_0 ), + .Q(addr_s[30]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[31] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[31]_i_1_n_0 ), + .Q(addr_s[31]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[3] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[3]_i_1_n_0 ), + .Q(addr_s[3]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[4] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[4]_i_1_n_0 ), + .Q(addr_s[4]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[5] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[5]_i_1_n_0 ), + .Q(addr_s[5]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[6] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[6]_i_1_n_0 ), + .Q(addr_s[6]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[7] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[7]_i_1_n_0 ), + .Q(addr_s[7]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[8] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[8]_i_1_n_0 ), + .Q(addr_s[8]), + .R(s_axi_aresetn_0)); + FDRE #( + .INIT(1'b0)) + \addr_s_reg[9] + (.C(s_axi_aclk), + .CE(1'b1), + .D(\addr_s[9]_i_1_n_0 ), + .Q(addr_s[9]), + .R(s_axi_aresetn_0)); + (* SOFT_HLUTNM = "soft_lutpair1" *) + LUT4 #( + .INIT(16'hEFAA)) + rd_addr_latched_i_1 + (.I0(s_axi_arvalid), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_rready), + .I3(rd_addr_latched), + .O(rd_addr_latched_i_1_n_0)); + FDRE #( + .INIT(1'b0)) + rd_addr_latched_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(rd_addr_latched_i_1_n_0), + .Q(rd_addr_latched), + .R(s_axi_aresetn_0)); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[0]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[0]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[0])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[0]_i_2 + (.I0(hog_global_ver_i[0]), + .I1(hog_global_sha_i[0]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[0]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[0]), + .O(\rd_data_s[0]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[10]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[10]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[10])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[10]_i_2 + (.I0(hog_global_ver_i[10]), + .I1(hog_global_sha_i[10]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[10]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[10]), + .O(\rd_data_s[10]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[11]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[11]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[11])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[11]_i_2 + (.I0(hog_global_ver_i[11]), + .I1(hog_global_sha_i[11]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[11]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[11]), + .O(\rd_data_s[11]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[12]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[12]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[12])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[12]_i_2 + (.I0(hog_global_ver_i[12]), + .I1(hog_global_sha_i[12]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[12]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[12]), + .O(\rd_data_s[12]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[13]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[13]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[13])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[13]_i_2 + (.I0(hog_global_ver_i[13]), + .I1(hog_global_sha_i[13]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[13]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[13]), + .O(\rd_data_s[13]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[14]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[14]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[14])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[14]_i_2 + (.I0(hog_global_ver_i[14]), + .I1(hog_global_sha_i[14]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[14]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[14]), + .O(\rd_data_s[14]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[15]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[15]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[15])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[15]_i_2 + (.I0(hog_global_ver_i[15]), + .I1(hog_global_sha_i[15]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[15]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[15]), + .O(\rd_data_s[15]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[16]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[16]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[16])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[16]_i_2 + (.I0(hog_global_ver_i[16]), + .I1(hog_global_sha_i[16]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[16]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[16]), + .O(\rd_data_s[16]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[17]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[17]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[17])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[17]_i_2 + (.I0(hog_global_ver_i[17]), + .I1(hog_global_sha_i[17]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[17]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[17]), + .O(\rd_data_s[17]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[18]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[18]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[18])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[18]_i_2 + (.I0(hog_global_ver_i[18]), + .I1(hog_global_sha_i[18]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[18]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[18]), + .O(\rd_data_s[18]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[19]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[19]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[19])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[19]_i_2 + (.I0(hog_global_ver_i[19]), + .I1(hog_global_sha_i[19]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[19]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[19]), + .O(\rd_data_s[19]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[1]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[1]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[1])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[1]_i_2 + (.I0(hog_global_ver_i[1]), + .I1(hog_global_sha_i[1]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[1]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[1]), + .O(\rd_data_s[1]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[20]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[20]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[20])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[20]_i_2 + (.I0(hog_global_ver_i[20]), + .I1(hog_global_sha_i[20]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[20]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[20]), + .O(\rd_data_s[20]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[21]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[21]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[21])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[21]_i_2 + (.I0(hog_global_ver_i[21]), + .I1(hog_global_sha_i[21]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[21]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[21]), + .O(\rd_data_s[21]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[22]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[22]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[22])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[22]_i_2 + (.I0(hog_global_ver_i[22]), + .I1(hog_global_sha_i[22]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[22]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[22]), + .O(\rd_data_s[22]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[23]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[23]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[23])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[23]_i_2 + (.I0(hog_global_ver_i[23]), + .I1(hog_global_sha_i[23]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[23]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[23]), + .O(\rd_data_s[23]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[24]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[24]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[24])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[24]_i_2 + (.I0(hog_global_ver_i[24]), + .I1(hog_global_sha_i[24]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[24]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[24]), + .O(\rd_data_s[24]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[25]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[25]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[25])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[25]_i_2 + (.I0(hog_global_ver_i[25]), + .I1(hog_global_sha_i[25]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[25]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[25]), + .O(\rd_data_s[25]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[26]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[26]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[26])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[26]_i_2 + (.I0(hog_global_ver_i[26]), + .I1(hog_global_sha_i[26]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[26]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[26]), + .O(\rd_data_s[26]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[27]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[27]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[27])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[27]_i_2 + (.I0(hog_global_ver_i[27]), + .I1(hog_global_sha_i[27]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[27]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[27]), + .O(\rd_data_s[27]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[28]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[28]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[28])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[28]_i_2 + (.I0(hog_global_ver_i[28]), + .I1(hog_global_sha_i[28]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[28]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[28]), + .O(\rd_data_s[28]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[29]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[29]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[29])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[29]_i_2 + (.I0(hog_global_ver_i[29]), + .I1(hog_global_sha_i[29]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[29]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[29]), + .O(\rd_data_s[29]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[2]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[2]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[2])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[2]_i_2 + (.I0(hog_global_ver_i[2]), + .I1(hog_global_sha_i[2]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[2]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[2]), + .O(\rd_data_s[2]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[30]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[30]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[30])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[30]_i_2 + (.I0(hog_global_ver_i[30]), + .I1(hog_global_sha_i[30]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[30]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[30]), + .O(\rd_data_s[30]_i_2_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair0" *) + LUT2 #( + .INIT(4'h8)) + \rd_data_s[31]_i_1 + (.I0(s_axi_arvalid), + .I1(s_axi_arready_s_reg_0), + .O(E)); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_10 + (.I0(s_axi_araddr[18]), + .I1(addr_s[18]), + .I2(s_axi_araddr[17]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[17]), + .O(\rd_data_s[31]_i_10_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_11 + (.I0(s_axi_araddr[14]), + .I1(addr_s[14]), + .I2(s_axi_araddr[13]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[13]), + .O(\rd_data_s[31]_i_11_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_12 + (.I0(s_axi_araddr[27]), + .I1(addr_s[27]), + .I2(s_axi_araddr[24]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[24]), + .O(\rd_data_s[31]_i_12_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_13 + (.I0(s_axi_araddr[7]), + .I1(addr_s[7]), + .I2(s_axi_araddr[6]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[6]), + .O(\rd_data_s[31]_i_13_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_14 + (.I0(s_axi_araddr[23]), + .I1(addr_s[23]), + .I2(s_axi_araddr[5]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[5]), + .O(\rd_data_s[31]_i_14_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_15 + (.I0(s_axi_araddr[22]), + .I1(addr_s[22]), + .I2(s_axi_araddr[4]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[4]), + .O(\rd_data_s[31]_i_15_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_16 + (.I0(s_axi_araddr[31]), + .I1(addr_s[31]), + .I2(s_axi_araddr[20]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[20]), + .O(\rd_data_s[31]_i_16_n_0 )); + LUT6 #( + .INIT(64'h0500000005333333)) + \rd_data_s[31]_i_17 + (.I0(s_axi_araddr[30]), + .I1(addr_s[30]), + .I2(s_axi_araddr[21]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[21]), + .O(\rd_data_s[31]_i_17_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_18 + (.I0(s_axi_araddr[26]), + .I1(addr_s[26]), + .I2(s_axi_araddr[25]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[25]), + .O(\rd_data_s[31]_i_18_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_19 + (.I0(s_axi_araddr[11]), + .I1(addr_s[11]), + .I2(s_axi_araddr[8]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[8]), + .O(\rd_data_s[31]_i_19_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[31]_i_2 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[31]_i_7_n_0 ), + .I5(\rd_data_s[31]_i_8_n_0 ), + .O(D[31])); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_20 + (.I0(s_axi_araddr[10]), + .I1(addr_s[10]), + .I2(s_axi_araddr[9]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[9]), + .O(\rd_data_s[31]_i_20_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_21 + (.I0(s_axi_araddr[29]), + .I1(addr_s[29]), + .I2(s_axi_araddr[28]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[28]), + .O(\rd_data_s[31]_i_21_n_0 )); + LUT4 #( + .INIT(16'h15D5)) + \rd_data_s[31]_i_22 + (.I0(addr_s[2]), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_arvalid), + .I3(s_axi_araddr[2]), + .O(\rd_data_s[31]_i_22_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBBFCB8)) + \rd_data_s[31]_i_3 + (.I0(addr_s[16]), + .I1(\rd_data_s[31]_i_9_n_0 ), + .I2(s_axi_araddr[16]), + .I3(addr_s[19]), + .I4(s_axi_araddr[19]), + .I5(\rd_data_s[31]_i_10_n_0 ), + .O(\rd_data_s[31]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBBFCB8)) + \rd_data_s[31]_i_4 + (.I0(addr_s[12]), + .I1(\rd_data_s[31]_i_9_n_0 ), + .I2(s_axi_araddr[12]), + .I3(addr_s[15]), + .I4(s_axi_araddr[15]), + .I5(\rd_data_s[31]_i_11_n_0 ), + .O(\rd_data_s[31]_i_4_n_0 )); + LUT4 #( + .INIT(16'hFFFE)) + \rd_data_s[31]_i_5 + (.I0(\rd_data_s[31]_i_12_n_0 ), + .I1(\rd_data_s[31]_i_13_n_0 ), + .I2(\rd_data_s[31]_i_14_n_0 ), + .I3(\rd_data_s[31]_i_15_n_0 ), + .O(\rd_data_s[31]_i_5_n_0 )); + LUT6 #( + .INIT(64'h0000000000000004)) + \rd_data_s[31]_i_6 + (.I0(\rd_data_s[31]_i_16_n_0 ), + .I1(\rd_data_s[31]_i_17_n_0 ), + .I2(\rd_data_s[31]_i_18_n_0 ), + .I3(\rd_data_s[31]_i_19_n_0 ), + .I4(\rd_data_s[31]_i_20_n_0 ), + .I5(\rd_data_s[31]_i_21_n_0 ), + .O(\rd_data_s[31]_i_6_n_0 )); + LUT6 #( + .INIT(64'hFAFFFFFFFACCCCCC)) + \rd_data_s[31]_i_7 + (.I0(s_axi_araddr[1]), + .I1(addr_s[1]), + .I2(s_axi_araddr[0]), + .I3(s_axi_arvalid), + .I4(s_axi_arready_s_reg_0), + .I5(addr_s[0]), + .O(\rd_data_s[31]_i_7_n_0 )); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[31]_i_8 + (.I0(hog_global_ver_i[31]), + .I1(hog_global_sha_i[31]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[31]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[31]), + .O(\rd_data_s[31]_i_8_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair2" *) + LUT2 #( + .INIT(4'h7)) + \rd_data_s[31]_i_9 + (.I0(s_axi_arready_s_reg_0), + .I1(s_axi_arvalid), + .O(\rd_data_s[31]_i_9_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[3]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[3]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[3])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[3]_i_2 + (.I0(hog_global_ver_i[3]), + .I1(hog_global_sha_i[3]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[3]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[3]), + .O(\rd_data_s[3]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[4]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[4]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[4])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[4]_i_2 + (.I0(hog_global_ver_i[4]), + .I1(hog_global_sha_i[4]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[4]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[4]), + .O(\rd_data_s[4]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[5]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[5]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[5])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[5]_i_2 + (.I0(hog_global_ver_i[5]), + .I1(hog_global_sha_i[5]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[5]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[5]), + .O(\rd_data_s[5]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[6]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[6]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[6])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[6]_i_2 + (.I0(hog_global_ver_i[6]), + .I1(hog_global_sha_i[6]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[6]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[6]), + .O(\rd_data_s[6]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[7]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[7]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[7])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[7]_i_2 + (.I0(hog_global_ver_i[7]), + .I1(hog_global_sha_i[7]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[7]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[7]), + .O(\rd_data_s[7]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[8]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[8]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[8])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[8]_i_2 + (.I0(hog_global_ver_i[8]), + .I1(hog_global_sha_i[8]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[8]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[8]), + .O(\rd_data_s[8]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0000000000000100)) + \rd_data_s[9]_i_1 + (.I0(\rd_data_s[31]_i_3_n_0 ), + .I1(\rd_data_s[31]_i_4_n_0 ), + .I2(\rd_data_s[31]_i_5_n_0 ), + .I3(\rd_data_s[31]_i_6_n_0 ), + .I4(\rd_data_s[9]_i_2_n_0 ), + .I5(\rd_data_s[31]_i_7_n_0 ), + .O(D[9])); + LUT6 #( + .INIT(64'h505F3030505F3F3F)) + \rd_data_s[9]_i_2 + (.I0(hog_global_ver_i[9]), + .I1(hog_global_sha_i[9]), + .I2(\addr_s[3]_i_1_n_0 ), + .I3(hog_global_date_i[9]), + .I4(\rd_data_s[31]_i_22_n_0 ), + .I5(hog_global_time_i[9]), + .O(\rd_data_s[9]_i_2_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair0" *) + LUT5 #( + .INIT(32'h00004F00)) + s_axi_arready_s_i_1 + (.I0(s_axi_arready_s_reg_0), + .I1(s_axi_rready), + .I2(rd_addr_latched), + .I3(s_axi_aresetn), + .I4(s_axi_arvalid), + .O(s_axi_arready_s_i_1_n_0)); + FDRE #( + .INIT(1'b0)) + s_axi_arready_s_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(s_axi_arready_s_i_1_n_0), + .Q(s_axi_arready_s_reg_0), + .R(1'b0)); + LUT1 #( + .INIT(2'h1)) + s_axi_awready_s_i_1 + (.I0(s_axi_aresetn), + .O(s_axi_aresetn_0)); + (* SOFT_HLUTNM = "soft_lutpair1" *) + LUT4 #( + .INIT(16'h88F8)) + s_axi_rvalid_s_i_1 + (.I0(s_axi_arvalid), + .I1(s_axi_arready_s_reg_0), + .I2(s_axi_rvalid), + .I3(s_axi_rready), + .O(s_axi_rvalid_s_i_1_n_0)); + FDRE #( + .INIT(1'b0)) + s_axi_rvalid_s_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(s_axi_rvalid_s_i_1_n_0), + .Q(s_axi_rvalid), + .R(s_axi_aresetn_0)); +endmodule + +(* ORIG_REF_NAME = "axi4lite_wr_channel_if" *) +module mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if + (s_axi_wready, + s_axi_awready, + s_axi_bvalid, + s_axi_awready_s_reg_0, + s_axi_aclk, + s_axi_wvalid, + s_axi_bready, + s_axi_awvalid); + output s_axi_wready; + output s_axi_awready; + output s_axi_bvalid; + input s_axi_awready_s_reg_0; + input s_axi_aclk; + input s_axi_wvalid; + input s_axi_bready; + input s_axi_awvalid; + + wire aw_en_i_1_n_0; + wire aw_en_reg_n_0; + wire s_axi_aclk; + wire s_axi_awready; + wire s_axi_awready_s0__0; + wire s_axi_awready_s_reg_0; + wire s_axi_awvalid; + wire s_axi_bready; + wire s_axi_bvalid; + wire s_axi_bvalid_s_i_1_n_0; + wire s_axi_wready; + wire s_axi_wready_s0; + wire s_axi_wvalid; + + LUT5 #( + .INIT(32'h7F2A2A2A)) + aw_en_i_1 + (.I0(aw_en_reg_n_0), + .I1(s_axi_wvalid), + .I2(s_axi_awvalid), + .I3(s_axi_bready), + .I4(s_axi_bvalid), + .O(aw_en_i_1_n_0)); + FDSE #( + .INIT(1'b0)) + aw_en_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(aw_en_i_1_n_0), + .Q(aw_en_reg_n_0), + .S(s_axi_awready_s_reg_0)); + (* SOFT_HLUTNM = "soft_lutpair3" *) + LUT3 #( + .INIT(8'h80)) + s_axi_awready_s0 + (.I0(s_axi_awvalid), + .I1(s_axi_wvalid), + .I2(aw_en_reg_n_0), + .O(s_axi_awready_s0__0)); + FDRE #( + .INIT(1'b0)) + s_axi_awready_s_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(s_axi_awready_s0__0), + .Q(s_axi_awready), + .R(s_axi_awready_s_reg_0)); + LUT4 #( + .INIT(16'h8F88)) + s_axi_bvalid_s_i_1 + (.I0(s_axi_wready), + .I1(s_axi_wvalid), + .I2(s_axi_bready), + .I3(s_axi_bvalid), + .O(s_axi_bvalid_s_i_1_n_0)); + FDRE #( + .INIT(1'b0)) + s_axi_bvalid_s_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(s_axi_bvalid_s_i_1_n_0), + .Q(s_axi_bvalid), + .R(s_axi_awready_s_reg_0)); + (* SOFT_HLUTNM = "soft_lutpair3" *) + LUT4 #( + .INIT(16'h0080)) + s_axi_wready_s_i_1 + (.I0(aw_en_reg_n_0), + .I1(s_axi_wvalid), + .I2(s_axi_awvalid), + .I3(s_axi_wready), + .O(s_axi_wready_s0)); + FDRE #( + .INIT(1'b0)) + s_axi_wready_s_reg + (.C(s_axi_aclk), + .CE(1'b1), + .D(s_axi_wready_s0), + .Q(s_axi_wready), + .R(s_axi_awready_s_reg_0)); +endmodule + +(* ORIG_REF_NAME = "hog_build_info_regs" *) +module mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs + (s_axi_rdata, + SR, + E, + D, + s_axi_aclk); + output [31:0]s_axi_rdata; + input [0:0]SR; + input [0:0]E; + input [31:0]D; + input s_axi_aclk; + + wire [31:0]D; + wire [0:0]E; + wire [0:0]SR; + wire s_axi_aclk; + wire [31:0]s_axi_rdata; + + FDRE \rd_data_s_reg[0] + (.C(s_axi_aclk), + .CE(E), + .D(D[0]), + .Q(s_axi_rdata[0]), + .R(SR)); + FDRE \rd_data_s_reg[10] + (.C(s_axi_aclk), + .CE(E), + .D(D[10]), + .Q(s_axi_rdata[10]), + .R(SR)); + FDRE \rd_data_s_reg[11] + (.C(s_axi_aclk), + .CE(E), + .D(D[11]), + .Q(s_axi_rdata[11]), + .R(SR)); + FDRE \rd_data_s_reg[12] + (.C(s_axi_aclk), + .CE(E), + .D(D[12]), + .Q(s_axi_rdata[12]), + .R(SR)); + FDRE \rd_data_s_reg[13] + (.C(s_axi_aclk), + .CE(E), + .D(D[13]), + .Q(s_axi_rdata[13]), + .R(SR)); + FDRE \rd_data_s_reg[14] + (.C(s_axi_aclk), + .CE(E), + .D(D[14]), + .Q(s_axi_rdata[14]), + .R(SR)); + FDRE \rd_data_s_reg[15] + (.C(s_axi_aclk), + .CE(E), + .D(D[15]), + .Q(s_axi_rdata[15]), + .R(SR)); + FDRE \rd_data_s_reg[16] + (.C(s_axi_aclk), + .CE(E), + .D(D[16]), + .Q(s_axi_rdata[16]), + .R(SR)); + FDRE \rd_data_s_reg[17] + (.C(s_axi_aclk), + .CE(E), + .D(D[17]), + .Q(s_axi_rdata[17]), + .R(SR)); + FDRE \rd_data_s_reg[18] + (.C(s_axi_aclk), + .CE(E), + .D(D[18]), + .Q(s_axi_rdata[18]), + .R(SR)); + FDRE \rd_data_s_reg[19] + (.C(s_axi_aclk), + .CE(E), + .D(D[19]), + .Q(s_axi_rdata[19]), + .R(SR)); + FDRE \rd_data_s_reg[1] + (.C(s_axi_aclk), + .CE(E), + .D(D[1]), + .Q(s_axi_rdata[1]), + .R(SR)); + FDRE \rd_data_s_reg[20] + (.C(s_axi_aclk), + .CE(E), + .D(D[20]), + .Q(s_axi_rdata[20]), + .R(SR)); + FDRE \rd_data_s_reg[21] + (.C(s_axi_aclk), + .CE(E), + .D(D[21]), + .Q(s_axi_rdata[21]), + .R(SR)); + FDRE \rd_data_s_reg[22] + (.C(s_axi_aclk), + .CE(E), + .D(D[22]), + .Q(s_axi_rdata[22]), + .R(SR)); + FDRE \rd_data_s_reg[23] + (.C(s_axi_aclk), + .CE(E), + .D(D[23]), + .Q(s_axi_rdata[23]), + .R(SR)); + FDRE \rd_data_s_reg[24] + (.C(s_axi_aclk), + .CE(E), + .D(D[24]), + .Q(s_axi_rdata[24]), + .R(SR)); + FDRE \rd_data_s_reg[25] + (.C(s_axi_aclk), + .CE(E), + .D(D[25]), + .Q(s_axi_rdata[25]), + .R(SR)); + FDRE \rd_data_s_reg[26] + (.C(s_axi_aclk), + .CE(E), + .D(D[26]), + .Q(s_axi_rdata[26]), + .R(SR)); + FDRE \rd_data_s_reg[27] + (.C(s_axi_aclk), + .CE(E), + .D(D[27]), + .Q(s_axi_rdata[27]), + .R(SR)); + FDRE \rd_data_s_reg[28] + (.C(s_axi_aclk), + .CE(E), + .D(D[28]), + .Q(s_axi_rdata[28]), + .R(SR)); + FDRE \rd_data_s_reg[29] + (.C(s_axi_aclk), + .CE(E), + .D(D[29]), + .Q(s_axi_rdata[29]), + .R(SR)); + FDRE \rd_data_s_reg[2] + (.C(s_axi_aclk), + .CE(E), + .D(D[2]), + .Q(s_axi_rdata[2]), + .R(SR)); + FDRE \rd_data_s_reg[30] + (.C(s_axi_aclk), + .CE(E), + .D(D[30]), + .Q(s_axi_rdata[30]), + .R(SR)); + FDRE \rd_data_s_reg[31] + (.C(s_axi_aclk), + .CE(E), + .D(D[31]), + .Q(s_axi_rdata[31]), + .R(SR)); + FDRE \rd_data_s_reg[3] + (.C(s_axi_aclk), + .CE(E), + .D(D[3]), + .Q(s_axi_rdata[3]), + .R(SR)); + FDRE \rd_data_s_reg[4] + (.C(s_axi_aclk), + .CE(E), + .D(D[4]), + .Q(s_axi_rdata[4]), + .R(SR)); + FDRE \rd_data_s_reg[5] + (.C(s_axi_aclk), + .CE(E), + .D(D[5]), + .Q(s_axi_rdata[5]), + .R(SR)); + FDRE \rd_data_s_reg[6] + (.C(s_axi_aclk), + .CE(E), + .D(D[6]), + .Q(s_axi_rdata[6]), + .R(SR)); + FDRE \rd_data_s_reg[7] + (.C(s_axi_aclk), + .CE(E), + .D(D[7]), + .Q(s_axi_rdata[7]), + .R(SR)); + FDRE \rd_data_s_reg[8] + (.C(s_axi_aclk), + .CE(E), + .D(D[8]), + .Q(s_axi_rdata[8]), + .R(SR)); + FDRE \rd_data_s_reg[9] + (.C(s_axi_aclk), + .CE(E), + .D(D[9]), + .Q(s_axi_rdata[9]), + .R(SR)); +endmodule +`ifndef GLBL +`define GLBL +`timescale 1 ps / 1 ps + +module glbl (); + + parameter ROC_WIDTH = 100000; + parameter TOC_WIDTH = 0; + parameter GRES_WIDTH = 10000; + parameter GRES_START = 10000; + +//-------- STARTUP Globals -------------- + wire GSR; + wire GTS; + wire GWE; + wire PRLD; + wire GRESTORE; + tri1 p_up_tmp; + tri (weak1, strong0) PLL_LOCKG = p_up_tmp; + + wire PROGB_GLBL; + wire CCLKO_GLBL; + wire FCSBO_GLBL; + wire [3:0] DO_GLBL; + wire [3:0] DI_GLBL; + + reg GSR_int; + reg GTS_int; + reg PRLD_int; + reg GRESTORE_int; + +//-------- JTAG Globals -------------- + wire JTAG_TDO_GLBL; + wire JTAG_TCK_GLBL; + wire JTAG_TDI_GLBL; + wire JTAG_TMS_GLBL; + wire JTAG_TRST_GLBL; + + reg JTAG_CAPTURE_GLBL; + reg JTAG_RESET_GLBL; + reg JTAG_SHIFT_GLBL; + reg JTAG_UPDATE_GLBL; + reg JTAG_RUNTEST_GLBL; + + reg JTAG_SEL1_GLBL = 0; + reg JTAG_SEL2_GLBL = 0 ; + reg JTAG_SEL3_GLBL = 0; + reg JTAG_SEL4_GLBL = 0; + + reg JTAG_USER_TDO1_GLBL = 1'bz; + reg JTAG_USER_TDO2_GLBL = 1'bz; + reg JTAG_USER_TDO3_GLBL = 1'bz; + reg JTAG_USER_TDO4_GLBL = 1'bz; + + assign (strong1, weak0) GSR = GSR_int; + assign (strong1, weak0) GTS = GTS_int; + assign (weak1, weak0) PRLD = PRLD_int; + assign (strong1, weak0) GRESTORE = GRESTORE_int; + + initial begin + GSR_int = 1'b1; + PRLD_int = 1'b1; + #(ROC_WIDTH) + GSR_int = 1'b0; + PRLD_int = 1'b0; + end + + initial begin + GTS_int = 1'b1; + #(TOC_WIDTH) + GTS_int = 1'b0; + end + + initial begin + GRESTORE_int = 1'b0; + #(GRES_START); + GRESTORE_int = 1'b1; + #(GRES_WIDTH); + GRESTORE_int = 1'b0; + end + +endmodule +`endif diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.vhdl b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.vhdl new file mode 100644 index 0000000..7783afc --- /dev/null +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.vhdl @@ -0,0 +1,2627 @@ +-- Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. +-- Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. +-- -------------------------------------------------------------------------------- +-- Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 +-- Date : Thu Mar 20 18:25:04 2025 +-- Host : hogtest running 64-bit unknown +-- Command : write_vhdl -force -mode funcsim +-- /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_sim_netlist.vhdl +-- Design : mb_design_1_axi4lite_hog_build_i_0_0 +-- Purpose : This VHDL netlist is a functional simulation representation of the design and should not be modified or +-- synthesized. This netlist cannot be used for SDF annotated simulation. +-- Device : xc7a200tsbg484-1 +-- -------------------------------------------------------------------------------- +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +library UNISIM; +use UNISIM.VCOMPONENTS.ALL; +entity mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if is + port ( + s_axi_aresetn_0 : out STD_LOGIC; + s_axi_arready_s_reg_0 : out STD_LOGIC; + s_axi_rvalid : out STD_LOGIC; + D : out STD_LOGIC_VECTOR ( 31 downto 0 ); + E : out STD_LOGIC_VECTOR ( 0 to 0 ); + s_axi_aclk : in STD_LOGIC; + s_axi_arvalid : in STD_LOGIC; + s_axi_rready : in STD_LOGIC; + s_axi_aresetn : in STD_LOGIC; + s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_ver_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_sha_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_date_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_time_i : in STD_LOGIC_VECTOR ( 31 downto 0 ) + ); + attribute ORIG_REF_NAME : string; + attribute ORIG_REF_NAME of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if : entity is "axi4lite_rd_channel_if"; +end mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if; + +architecture STRUCTURE of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if is + signal addr_s : STD_LOGIC_VECTOR ( 31 downto 0 ); + signal \addr_s[0]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[10]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[11]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[12]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[13]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[14]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[15]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[16]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[17]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[18]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[19]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[1]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[20]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[21]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[22]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[23]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[24]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[25]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[26]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[27]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[28]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[29]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[2]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[30]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[31]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[3]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[4]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[5]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[6]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[7]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[8]_i_1_n_0\ : STD_LOGIC; + signal \addr_s[9]_i_1_n_0\ : STD_LOGIC; + signal rd_addr_latched : STD_LOGIC; + signal rd_addr_latched_i_1_n_0 : STD_LOGIC; + signal \rd_data_s[0]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[10]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[11]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[12]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[13]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[14]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[15]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[16]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[17]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[18]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[19]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[1]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[20]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[21]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[22]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[23]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[24]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[25]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[26]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[27]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[28]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[29]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[2]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[30]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_10_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_11_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_12_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_13_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_14_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_15_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_16_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_17_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_18_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_19_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_20_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_21_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_22_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_3_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_4_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_5_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_6_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_7_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_8_n_0\ : STD_LOGIC; + signal \rd_data_s[31]_i_9_n_0\ : STD_LOGIC; + signal \rd_data_s[3]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[4]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[5]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[6]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[7]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[8]_i_2_n_0\ : STD_LOGIC; + signal \rd_data_s[9]_i_2_n_0\ : STD_LOGIC; + signal \^s_axi_aresetn_0\ : STD_LOGIC; + signal s_axi_arready_s_i_1_n_0 : STD_LOGIC; + signal \^s_axi_arready_s_reg_0\ : STD_LOGIC; + signal \^s_axi_rvalid\ : STD_LOGIC; + signal s_axi_rvalid_s_i_1_n_0 : STD_LOGIC; + attribute SOFT_HLUTNM : string; + attribute SOFT_HLUTNM of \addr_s[0]_i_1\ : label is "soft_lutpair2"; + attribute SOFT_HLUTNM of rd_addr_latched_i_1 : label is "soft_lutpair1"; + attribute SOFT_HLUTNM of \rd_data_s[31]_i_1\ : label is "soft_lutpair0"; + attribute SOFT_HLUTNM of \rd_data_s[31]_i_9\ : label is "soft_lutpair2"; + attribute SOFT_HLUTNM of s_axi_arready_s_i_1 : label is "soft_lutpair0"; + attribute SOFT_HLUTNM of s_axi_rvalid_s_i_1 : label is "soft_lutpair1"; +begin + s_axi_aresetn_0 <= \^s_axi_aresetn_0\; + s_axi_arready_s_reg_0 <= \^s_axi_arready_s_reg_0\; + s_axi_rvalid <= \^s_axi_rvalid\; +\addr_s[0]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(0), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(0), + O => \addr_s[0]_i_1_n_0\ + ); +\addr_s[10]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(10), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(10), + O => \addr_s[10]_i_1_n_0\ + ); +\addr_s[11]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(11), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(11), + O => \addr_s[11]_i_1_n_0\ + ); +\addr_s[12]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(12), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(12), + O => \addr_s[12]_i_1_n_0\ + ); +\addr_s[13]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(13), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(13), + O => \addr_s[13]_i_1_n_0\ + ); +\addr_s[14]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(14), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(14), + O => \addr_s[14]_i_1_n_0\ + ); +\addr_s[15]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(15), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(15), + O => \addr_s[15]_i_1_n_0\ + ); +\addr_s[16]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(16), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(16), + O => \addr_s[16]_i_1_n_0\ + ); +\addr_s[17]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(17), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(17), + O => \addr_s[17]_i_1_n_0\ + ); +\addr_s[18]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(18), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(18), + O => \addr_s[18]_i_1_n_0\ + ); +\addr_s[19]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(19), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(19), + O => \addr_s[19]_i_1_n_0\ + ); +\addr_s[1]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(1), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(1), + O => \addr_s[1]_i_1_n_0\ + ); +\addr_s[20]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(20), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(20), + O => \addr_s[20]_i_1_n_0\ + ); +\addr_s[21]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(21), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(21), + O => \addr_s[21]_i_1_n_0\ + ); +\addr_s[22]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(22), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(22), + O => \addr_s[22]_i_1_n_0\ + ); +\addr_s[23]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(23), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(23), + O => \addr_s[23]_i_1_n_0\ + ); +\addr_s[24]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(24), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(24), + O => \addr_s[24]_i_1_n_0\ + ); +\addr_s[25]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(25), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(25), + O => \addr_s[25]_i_1_n_0\ + ); +\addr_s[26]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(26), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(26), + O => \addr_s[26]_i_1_n_0\ + ); +\addr_s[27]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(27), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(27), + O => \addr_s[27]_i_1_n_0\ + ); +\addr_s[28]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(28), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(28), + O => \addr_s[28]_i_1_n_0\ + ); +\addr_s[29]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(29), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(29), + O => \addr_s[29]_i_1_n_0\ + ); +\addr_s[2]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"BF80" + ) + port map ( + I0 => s_axi_araddr(2), + I1 => s_axi_arvalid, + I2 => \^s_axi_arready_s_reg_0\, + I3 => addr_s(2), + O => \addr_s[2]_i_1_n_0\ + ); +\addr_s[30]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"BF80" + ) + port map ( + I0 => s_axi_araddr(30), + I1 => s_axi_arvalid, + I2 => \^s_axi_arready_s_reg_0\, + I3 => addr_s(30), + O => \addr_s[30]_i_1_n_0\ + ); +\addr_s[31]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(31), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(31), + O => \addr_s[31]_i_1_n_0\ + ); +\addr_s[3]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(3), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(3), + O => \addr_s[3]_i_1_n_0\ + ); +\addr_s[4]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(4), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(4), + O => \addr_s[4]_i_1_n_0\ + ); +\addr_s[5]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(5), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(5), + O => \addr_s[5]_i_1_n_0\ + ); +\addr_s[6]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(6), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(6), + O => \addr_s[6]_i_1_n_0\ + ); +\addr_s[7]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(7), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(7), + O => \addr_s[7]_i_1_n_0\ + ); +\addr_s[8]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(8), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(8), + O => \addr_s[8]_i_1_n_0\ + ); +\addr_s[9]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"EA2A" + ) + port map ( + I0 => addr_s(9), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(9), + O => \addr_s[9]_i_1_n_0\ + ); +\addr_s_reg[0]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[0]_i_1_n_0\, + Q => addr_s(0), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[10]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[10]_i_1_n_0\, + Q => addr_s(10), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[11]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[11]_i_1_n_0\, + Q => addr_s(11), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[12]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[12]_i_1_n_0\, + Q => addr_s(12), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[13]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[13]_i_1_n_0\, + Q => addr_s(13), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[14]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[14]_i_1_n_0\, + Q => addr_s(14), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[15]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[15]_i_1_n_0\, + Q => addr_s(15), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[16]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[16]_i_1_n_0\, + Q => addr_s(16), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[17]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[17]_i_1_n_0\, + Q => addr_s(17), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[18]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[18]_i_1_n_0\, + Q => addr_s(18), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[19]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[19]_i_1_n_0\, + Q => addr_s(19), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[1]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[1]_i_1_n_0\, + Q => addr_s(1), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[20]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[20]_i_1_n_0\, + Q => addr_s(20), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[21]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[21]_i_1_n_0\, + Q => addr_s(21), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[22]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[22]_i_1_n_0\, + Q => addr_s(22), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[23]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[23]_i_1_n_0\, + Q => addr_s(23), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[24]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[24]_i_1_n_0\, + Q => addr_s(24), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[25]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[25]_i_1_n_0\, + Q => addr_s(25), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[26]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[26]_i_1_n_0\, + Q => addr_s(26), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[27]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[27]_i_1_n_0\, + Q => addr_s(27), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[28]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[28]_i_1_n_0\, + Q => addr_s(28), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[29]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[29]_i_1_n_0\, + Q => addr_s(29), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[2]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[2]_i_1_n_0\, + Q => addr_s(2), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[30]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[30]_i_1_n_0\, + Q => addr_s(30), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[31]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[31]_i_1_n_0\, + Q => addr_s(31), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[3]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[3]_i_1_n_0\, + Q => addr_s(3), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[4]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[4]_i_1_n_0\, + Q => addr_s(4), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[5]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[5]_i_1_n_0\, + Q => addr_s(5), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[6]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[6]_i_1_n_0\, + Q => addr_s(6), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[7]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[7]_i_1_n_0\, + Q => addr_s(7), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[8]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[8]_i_1_n_0\, + Q => addr_s(8), + R => \^s_axi_aresetn_0\ + ); +\addr_s_reg[9]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \addr_s[9]_i_1_n_0\, + Q => addr_s(9), + R => \^s_axi_aresetn_0\ + ); +rd_addr_latched_i_1: unisim.vcomponents.LUT4 + generic map( + INIT => X"EFAA" + ) + port map ( + I0 => s_axi_arvalid, + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_rready, + I3 => rd_addr_latched, + O => rd_addr_latched_i_1_n_0 + ); +rd_addr_latched_reg: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => rd_addr_latched_i_1_n_0, + Q => rd_addr_latched, + R => \^s_axi_aresetn_0\ + ); +\rd_data_s[0]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[0]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(0) + ); +\rd_data_s[0]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(0), + I1 => hog_global_sha_i(0), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(0), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(0), + O => \rd_data_s[0]_i_2_n_0\ + ); +\rd_data_s[10]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[10]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(10) + ); +\rd_data_s[10]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(10), + I1 => hog_global_sha_i(10), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(10), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(10), + O => \rd_data_s[10]_i_2_n_0\ + ); +\rd_data_s[11]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[11]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(11) + ); +\rd_data_s[11]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(11), + I1 => hog_global_sha_i(11), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(11), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(11), + O => \rd_data_s[11]_i_2_n_0\ + ); +\rd_data_s[12]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[12]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(12) + ); +\rd_data_s[12]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(12), + I1 => hog_global_sha_i(12), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(12), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(12), + O => \rd_data_s[12]_i_2_n_0\ + ); +\rd_data_s[13]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[13]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(13) + ); +\rd_data_s[13]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(13), + I1 => hog_global_sha_i(13), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(13), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(13), + O => \rd_data_s[13]_i_2_n_0\ + ); +\rd_data_s[14]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[14]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(14) + ); +\rd_data_s[14]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(14), + I1 => hog_global_sha_i(14), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(14), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(14), + O => \rd_data_s[14]_i_2_n_0\ + ); +\rd_data_s[15]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[15]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(15) + ); +\rd_data_s[15]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(15), + I1 => hog_global_sha_i(15), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(15), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(15), + O => \rd_data_s[15]_i_2_n_0\ + ); +\rd_data_s[16]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[16]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(16) + ); +\rd_data_s[16]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(16), + I1 => hog_global_sha_i(16), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(16), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(16), + O => \rd_data_s[16]_i_2_n_0\ + ); +\rd_data_s[17]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[17]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(17) + ); +\rd_data_s[17]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(17), + I1 => hog_global_sha_i(17), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(17), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(17), + O => \rd_data_s[17]_i_2_n_0\ + ); +\rd_data_s[18]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[18]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(18) + ); +\rd_data_s[18]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(18), + I1 => hog_global_sha_i(18), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(18), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(18), + O => \rd_data_s[18]_i_2_n_0\ + ); +\rd_data_s[19]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[19]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(19) + ); +\rd_data_s[19]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(19), + I1 => hog_global_sha_i(19), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(19), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(19), + O => \rd_data_s[19]_i_2_n_0\ + ); +\rd_data_s[1]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[1]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(1) + ); +\rd_data_s[1]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(1), + I1 => hog_global_sha_i(1), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(1), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(1), + O => \rd_data_s[1]_i_2_n_0\ + ); +\rd_data_s[20]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[20]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(20) + ); +\rd_data_s[20]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(20), + I1 => hog_global_sha_i(20), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(20), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(20), + O => \rd_data_s[20]_i_2_n_0\ + ); +\rd_data_s[21]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[21]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(21) + ); +\rd_data_s[21]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(21), + I1 => hog_global_sha_i(21), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(21), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(21), + O => \rd_data_s[21]_i_2_n_0\ + ); +\rd_data_s[22]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[22]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(22) + ); +\rd_data_s[22]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(22), + I1 => hog_global_sha_i(22), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(22), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(22), + O => \rd_data_s[22]_i_2_n_0\ + ); +\rd_data_s[23]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[23]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(23) + ); +\rd_data_s[23]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(23), + I1 => hog_global_sha_i(23), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(23), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(23), + O => \rd_data_s[23]_i_2_n_0\ + ); +\rd_data_s[24]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[24]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(24) + ); +\rd_data_s[24]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(24), + I1 => hog_global_sha_i(24), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(24), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(24), + O => \rd_data_s[24]_i_2_n_0\ + ); +\rd_data_s[25]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[25]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(25) + ); +\rd_data_s[25]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(25), + I1 => hog_global_sha_i(25), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(25), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(25), + O => \rd_data_s[25]_i_2_n_0\ + ); +\rd_data_s[26]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[26]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(26) + ); +\rd_data_s[26]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(26), + I1 => hog_global_sha_i(26), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(26), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(26), + O => \rd_data_s[26]_i_2_n_0\ + ); +\rd_data_s[27]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[27]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(27) + ); +\rd_data_s[27]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(27), + I1 => hog_global_sha_i(27), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(27), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(27), + O => \rd_data_s[27]_i_2_n_0\ + ); +\rd_data_s[28]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[28]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(28) + ); +\rd_data_s[28]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(28), + I1 => hog_global_sha_i(28), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(28), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(28), + O => \rd_data_s[28]_i_2_n_0\ + ); +\rd_data_s[29]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[29]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(29) + ); +\rd_data_s[29]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(29), + I1 => hog_global_sha_i(29), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(29), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(29), + O => \rd_data_s[29]_i_2_n_0\ + ); +\rd_data_s[2]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[2]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(2) + ); +\rd_data_s[2]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(2), + I1 => hog_global_sha_i(2), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(2), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(2), + O => \rd_data_s[2]_i_2_n_0\ + ); +\rd_data_s[30]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[30]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(30) + ); +\rd_data_s[30]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(30), + I1 => hog_global_sha_i(30), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(30), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(30), + O => \rd_data_s[30]_i_2_n_0\ + ); +\rd_data_s[31]_i_1\: unisim.vcomponents.LUT2 + generic map( + INIT => X"8" + ) + port map ( + I0 => s_axi_arvalid, + I1 => \^s_axi_arready_s_reg_0\, + O => E(0) + ); +\rd_data_s[31]_i_10\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(18), + I1 => addr_s(18), + I2 => s_axi_araddr(17), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(17), + O => \rd_data_s[31]_i_10_n_0\ + ); +\rd_data_s[31]_i_11\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(14), + I1 => addr_s(14), + I2 => s_axi_araddr(13), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(13), + O => \rd_data_s[31]_i_11_n_0\ + ); +\rd_data_s[31]_i_12\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(27), + I1 => addr_s(27), + I2 => s_axi_araddr(24), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(24), + O => \rd_data_s[31]_i_12_n_0\ + ); +\rd_data_s[31]_i_13\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(7), + I1 => addr_s(7), + I2 => s_axi_araddr(6), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(6), + O => \rd_data_s[31]_i_13_n_0\ + ); +\rd_data_s[31]_i_14\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(23), + I1 => addr_s(23), + I2 => s_axi_araddr(5), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(5), + O => \rd_data_s[31]_i_14_n_0\ + ); +\rd_data_s[31]_i_15\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(22), + I1 => addr_s(22), + I2 => s_axi_araddr(4), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(4), + O => \rd_data_s[31]_i_15_n_0\ + ); +\rd_data_s[31]_i_16\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(31), + I1 => addr_s(31), + I2 => s_axi_araddr(20), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(20), + O => \rd_data_s[31]_i_16_n_0\ + ); +\rd_data_s[31]_i_17\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0500000005333333" + ) + port map ( + I0 => s_axi_araddr(30), + I1 => addr_s(30), + I2 => s_axi_araddr(21), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(21), + O => \rd_data_s[31]_i_17_n_0\ + ); +\rd_data_s[31]_i_18\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(26), + I1 => addr_s(26), + I2 => s_axi_araddr(25), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(25), + O => \rd_data_s[31]_i_18_n_0\ + ); +\rd_data_s[31]_i_19\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(11), + I1 => addr_s(11), + I2 => s_axi_araddr(8), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(8), + O => \rd_data_s[31]_i_19_n_0\ + ); +\rd_data_s[31]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[31]_i_7_n_0\, + I5 => \rd_data_s[31]_i_8_n_0\, + O => D(31) + ); +\rd_data_s[31]_i_20\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(10), + I1 => addr_s(10), + I2 => s_axi_araddr(9), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(9), + O => \rd_data_s[31]_i_20_n_0\ + ); +\rd_data_s[31]_i_21\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(29), + I1 => addr_s(29), + I2 => s_axi_araddr(28), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(28), + O => \rd_data_s[31]_i_21_n_0\ + ); +\rd_data_s[31]_i_22\: unisim.vcomponents.LUT4 + generic map( + INIT => X"15D5" + ) + port map ( + I0 => addr_s(2), + I1 => \^s_axi_arready_s_reg_0\, + I2 => s_axi_arvalid, + I3 => s_axi_araddr(2), + O => \rd_data_s[31]_i_22_n_0\ + ); +\rd_data_s[31]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFFFFBBFCB8" + ) + port map ( + I0 => addr_s(16), + I1 => \rd_data_s[31]_i_9_n_0\, + I2 => s_axi_araddr(16), + I3 => addr_s(19), + I4 => s_axi_araddr(19), + I5 => \rd_data_s[31]_i_10_n_0\, + O => \rd_data_s[31]_i_3_n_0\ + ); +\rd_data_s[31]_i_4\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFFFFBBFCB8" + ) + port map ( + I0 => addr_s(12), + I1 => \rd_data_s[31]_i_9_n_0\, + I2 => s_axi_araddr(12), + I3 => addr_s(15), + I4 => s_axi_araddr(15), + I5 => \rd_data_s[31]_i_11_n_0\, + O => \rd_data_s[31]_i_4_n_0\ + ); +\rd_data_s[31]_i_5\: unisim.vcomponents.LUT4 + generic map( + INIT => X"FFFE" + ) + port map ( + I0 => \rd_data_s[31]_i_12_n_0\, + I1 => \rd_data_s[31]_i_13_n_0\, + I2 => \rd_data_s[31]_i_14_n_0\, + I3 => \rd_data_s[31]_i_15_n_0\, + O => \rd_data_s[31]_i_5_n_0\ + ); +\rd_data_s[31]_i_6\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000004" + ) + port map ( + I0 => \rd_data_s[31]_i_16_n_0\, + I1 => \rd_data_s[31]_i_17_n_0\, + I2 => \rd_data_s[31]_i_18_n_0\, + I3 => \rd_data_s[31]_i_19_n_0\, + I4 => \rd_data_s[31]_i_20_n_0\, + I5 => \rd_data_s[31]_i_21_n_0\, + O => \rd_data_s[31]_i_6_n_0\ + ); +\rd_data_s[31]_i_7\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FAFFFFFFFACCCCCC" + ) + port map ( + I0 => s_axi_araddr(1), + I1 => addr_s(1), + I2 => s_axi_araddr(0), + I3 => s_axi_arvalid, + I4 => \^s_axi_arready_s_reg_0\, + I5 => addr_s(0), + O => \rd_data_s[31]_i_7_n_0\ + ); +\rd_data_s[31]_i_8\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(31), + I1 => hog_global_sha_i(31), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(31), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(31), + O => \rd_data_s[31]_i_8_n_0\ + ); +\rd_data_s[31]_i_9\: unisim.vcomponents.LUT2 + generic map( + INIT => X"7" + ) + port map ( + I0 => \^s_axi_arready_s_reg_0\, + I1 => s_axi_arvalid, + O => \rd_data_s[31]_i_9_n_0\ + ); +\rd_data_s[3]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[3]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(3) + ); +\rd_data_s[3]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(3), + I1 => hog_global_sha_i(3), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(3), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(3), + O => \rd_data_s[3]_i_2_n_0\ + ); +\rd_data_s[4]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[4]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(4) + ); +\rd_data_s[4]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(4), + I1 => hog_global_sha_i(4), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(4), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(4), + O => \rd_data_s[4]_i_2_n_0\ + ); +\rd_data_s[5]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[5]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(5) + ); +\rd_data_s[5]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(5), + I1 => hog_global_sha_i(5), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(5), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(5), + O => \rd_data_s[5]_i_2_n_0\ + ); +\rd_data_s[6]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[6]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(6) + ); +\rd_data_s[6]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(6), + I1 => hog_global_sha_i(6), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(6), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(6), + O => \rd_data_s[6]_i_2_n_0\ + ); +\rd_data_s[7]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[7]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(7) + ); +\rd_data_s[7]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(7), + I1 => hog_global_sha_i(7), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(7), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(7), + O => \rd_data_s[7]_i_2_n_0\ + ); +\rd_data_s[8]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[8]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(8) + ); +\rd_data_s[8]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(8), + I1 => hog_global_sha_i(8), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(8), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(8), + O => \rd_data_s[8]_i_2_n_0\ + ); +\rd_data_s[9]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"0000000000000100" + ) + port map ( + I0 => \rd_data_s[31]_i_3_n_0\, + I1 => \rd_data_s[31]_i_4_n_0\, + I2 => \rd_data_s[31]_i_5_n_0\, + I3 => \rd_data_s[31]_i_6_n_0\, + I4 => \rd_data_s[9]_i_2_n_0\, + I5 => \rd_data_s[31]_i_7_n_0\, + O => D(9) + ); +\rd_data_s[9]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"505F3030505F3F3F" + ) + port map ( + I0 => hog_global_ver_i(9), + I1 => hog_global_sha_i(9), + I2 => \addr_s[3]_i_1_n_0\, + I3 => hog_global_date_i(9), + I4 => \rd_data_s[31]_i_22_n_0\, + I5 => hog_global_time_i(9), + O => \rd_data_s[9]_i_2_n_0\ + ); +s_axi_arready_s_i_1: unisim.vcomponents.LUT5 + generic map( + INIT => X"00004F00" + ) + port map ( + I0 => \^s_axi_arready_s_reg_0\, + I1 => s_axi_rready, + I2 => rd_addr_latched, + I3 => s_axi_aresetn, + I4 => s_axi_arvalid, + O => s_axi_arready_s_i_1_n_0 + ); +s_axi_arready_s_reg: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => s_axi_arready_s_i_1_n_0, + Q => \^s_axi_arready_s_reg_0\, + R => '0' + ); +s_axi_awready_s_i_1: unisim.vcomponents.LUT1 + generic map( + INIT => X"1" + ) + port map ( + I0 => s_axi_aresetn, + O => \^s_axi_aresetn_0\ + ); +s_axi_rvalid_s_i_1: unisim.vcomponents.LUT4 + generic map( + INIT => X"88F8" + ) + port map ( + I0 => s_axi_arvalid, + I1 => \^s_axi_arready_s_reg_0\, + I2 => \^s_axi_rvalid\, + I3 => s_axi_rready, + O => s_axi_rvalid_s_i_1_n_0 + ); +s_axi_rvalid_s_reg: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => s_axi_rvalid_s_i_1_n_0, + Q => \^s_axi_rvalid\, + R => \^s_axi_aresetn_0\ + ); +end STRUCTURE; +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +library UNISIM; +use UNISIM.VCOMPONENTS.ALL; +entity mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if is + port ( + s_axi_wready : out STD_LOGIC; + s_axi_awready : out STD_LOGIC; + s_axi_bvalid : out STD_LOGIC; + s_axi_awready_s_reg_0 : in STD_LOGIC; + s_axi_aclk : in STD_LOGIC; + s_axi_wvalid : in STD_LOGIC; + s_axi_bready : in STD_LOGIC; + s_axi_awvalid : in STD_LOGIC + ); + attribute ORIG_REF_NAME : string; + attribute ORIG_REF_NAME of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if : entity is "axi4lite_wr_channel_if"; +end mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if; + +architecture STRUCTURE of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if is + signal aw_en_i_1_n_0 : STD_LOGIC; + signal aw_en_reg_n_0 : STD_LOGIC; + signal \s_axi_awready_s0__0\ : STD_LOGIC; + signal \^s_axi_bvalid\ : STD_LOGIC; + signal s_axi_bvalid_s_i_1_n_0 : STD_LOGIC; + signal \^s_axi_wready\ : STD_LOGIC; + signal s_axi_wready_s0 : STD_LOGIC; + attribute SOFT_HLUTNM : string; + attribute SOFT_HLUTNM of s_axi_awready_s0 : label is "soft_lutpair3"; + attribute SOFT_HLUTNM of s_axi_wready_s_i_1 : label is "soft_lutpair3"; +begin + s_axi_bvalid <= \^s_axi_bvalid\; + s_axi_wready <= \^s_axi_wready\; +aw_en_i_1: unisim.vcomponents.LUT5 + generic map( + INIT => X"7F2A2A2A" + ) + port map ( + I0 => aw_en_reg_n_0, + I1 => s_axi_wvalid, + I2 => s_axi_awvalid, + I3 => s_axi_bready, + I4 => \^s_axi_bvalid\, + O => aw_en_i_1_n_0 + ); +aw_en_reg: unisim.vcomponents.FDSE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => aw_en_i_1_n_0, + Q => aw_en_reg_n_0, + S => s_axi_awready_s_reg_0 + ); +s_axi_awready_s0: unisim.vcomponents.LUT3 + generic map( + INIT => X"80" + ) + port map ( + I0 => s_axi_awvalid, + I1 => s_axi_wvalid, + I2 => aw_en_reg_n_0, + O => \s_axi_awready_s0__0\ + ); +s_axi_awready_s_reg: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => \s_axi_awready_s0__0\, + Q => s_axi_awready, + R => s_axi_awready_s_reg_0 + ); +s_axi_bvalid_s_i_1: unisim.vcomponents.LUT4 + generic map( + INIT => X"8F88" + ) + port map ( + I0 => \^s_axi_wready\, + I1 => s_axi_wvalid, + I2 => s_axi_bready, + I3 => \^s_axi_bvalid\, + O => s_axi_bvalid_s_i_1_n_0 + ); +s_axi_bvalid_s_reg: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => s_axi_bvalid_s_i_1_n_0, + Q => \^s_axi_bvalid\, + R => s_axi_awready_s_reg_0 + ); +s_axi_wready_s_i_1: unisim.vcomponents.LUT4 + generic map( + INIT => X"0080" + ) + port map ( + I0 => aw_en_reg_n_0, + I1 => s_axi_wvalid, + I2 => s_axi_awvalid, + I3 => \^s_axi_wready\, + O => s_axi_wready_s0 + ); +s_axi_wready_s_reg: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => s_axi_aclk, + CE => '1', + D => s_axi_wready_s0, + Q => \^s_axi_wready\, + R => s_axi_awready_s_reg_0 + ); +end STRUCTURE; +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +library UNISIM; +use UNISIM.VCOMPONENTS.ALL; +entity mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs is + port ( + s_axi_rdata : out STD_LOGIC_VECTOR ( 31 downto 0 ); + SR : in STD_LOGIC_VECTOR ( 0 to 0 ); + E : in STD_LOGIC_VECTOR ( 0 to 0 ); + D : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_aclk : in STD_LOGIC + ); + attribute ORIG_REF_NAME : string; + attribute ORIG_REF_NAME of mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs : entity is "hog_build_info_regs"; +end mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs; + +architecture STRUCTURE of mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs is +begin +\rd_data_s_reg[0]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(0), + Q => s_axi_rdata(0), + R => SR(0) + ); +\rd_data_s_reg[10]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(10), + Q => s_axi_rdata(10), + R => SR(0) + ); +\rd_data_s_reg[11]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(11), + Q => s_axi_rdata(11), + R => SR(0) + ); +\rd_data_s_reg[12]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(12), + Q => s_axi_rdata(12), + R => SR(0) + ); +\rd_data_s_reg[13]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(13), + Q => s_axi_rdata(13), + R => SR(0) + ); +\rd_data_s_reg[14]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(14), + Q => s_axi_rdata(14), + R => SR(0) + ); +\rd_data_s_reg[15]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(15), + Q => s_axi_rdata(15), + R => SR(0) + ); +\rd_data_s_reg[16]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(16), + Q => s_axi_rdata(16), + R => SR(0) + ); +\rd_data_s_reg[17]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(17), + Q => s_axi_rdata(17), + R => SR(0) + ); +\rd_data_s_reg[18]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(18), + Q => s_axi_rdata(18), + R => SR(0) + ); +\rd_data_s_reg[19]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(19), + Q => s_axi_rdata(19), + R => SR(0) + ); +\rd_data_s_reg[1]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(1), + Q => s_axi_rdata(1), + R => SR(0) + ); +\rd_data_s_reg[20]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(20), + Q => s_axi_rdata(20), + R => SR(0) + ); +\rd_data_s_reg[21]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(21), + Q => s_axi_rdata(21), + R => SR(0) + ); +\rd_data_s_reg[22]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(22), + Q => s_axi_rdata(22), + R => SR(0) + ); +\rd_data_s_reg[23]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(23), + Q => s_axi_rdata(23), + R => SR(0) + ); +\rd_data_s_reg[24]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(24), + Q => s_axi_rdata(24), + R => SR(0) + ); +\rd_data_s_reg[25]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(25), + Q => s_axi_rdata(25), + R => SR(0) + ); +\rd_data_s_reg[26]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(26), + Q => s_axi_rdata(26), + R => SR(0) + ); +\rd_data_s_reg[27]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(27), + Q => s_axi_rdata(27), + R => SR(0) + ); +\rd_data_s_reg[28]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(28), + Q => s_axi_rdata(28), + R => SR(0) + ); +\rd_data_s_reg[29]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(29), + Q => s_axi_rdata(29), + R => SR(0) + ); +\rd_data_s_reg[2]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(2), + Q => s_axi_rdata(2), + R => SR(0) + ); +\rd_data_s_reg[30]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(30), + Q => s_axi_rdata(30), + R => SR(0) + ); +\rd_data_s_reg[31]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(31), + Q => s_axi_rdata(31), + R => SR(0) + ); +\rd_data_s_reg[3]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(3), + Q => s_axi_rdata(3), + R => SR(0) + ); +\rd_data_s_reg[4]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(4), + Q => s_axi_rdata(4), + R => SR(0) + ); +\rd_data_s_reg[5]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(5), + Q => s_axi_rdata(5), + R => SR(0) + ); +\rd_data_s_reg[6]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(6), + Q => s_axi_rdata(6), + R => SR(0) + ); +\rd_data_s_reg[7]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(7), + Q => s_axi_rdata(7), + R => SR(0) + ); +\rd_data_s_reg[8]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(8), + Q => s_axi_rdata(8), + R => SR(0) + ); +\rd_data_s_reg[9]\: unisim.vcomponents.FDRE + port map ( + C => s_axi_aclk, + CE => E(0), + D => D(9), + Q => s_axi_rdata(9), + R => SR(0) + ); +end STRUCTURE; +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +library UNISIM; +use UNISIM.VCOMPONENTS.ALL; +entity mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if is + port ( + s_axi_wready : out STD_LOGIC; + SR : out STD_LOGIC_VECTOR ( 0 to 0 ); + s_axi_awready : out STD_LOGIC; + s_axi_bvalid : out STD_LOGIC; + s_axi_arready_s_reg : out STD_LOGIC; + s_axi_rvalid : out STD_LOGIC; + D : out STD_LOGIC_VECTOR ( 31 downto 0 ); + E : out STD_LOGIC_VECTOR ( 0 to 0 ); + s_axi_aclk : in STD_LOGIC; + s_axi_wvalid : in STD_LOGIC; + s_axi_bready : in STD_LOGIC; + s_axi_awvalid : in STD_LOGIC; + s_axi_arvalid : in STD_LOGIC; + s_axi_rready : in STD_LOGIC; + s_axi_aresetn : in STD_LOGIC; + s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_ver_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_sha_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_date_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_time_i : in STD_LOGIC_VECTOR ( 31 downto 0 ) + ); + attribute ORIG_REF_NAME : string; + attribute ORIG_REF_NAME of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if : entity is "axi4lite_if"; +end mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if; + +architecture STRUCTURE of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if is + signal \^sr\ : STD_LOGIC_VECTOR ( 0 to 0 ); +begin + SR(0) <= \^sr\(0); +axi4lite_rd_channel_if_i: entity work.mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_rd_channel_if + port map ( + D(31 downto 0) => D(31 downto 0), + E(0) => E(0), + hog_global_date_i(31 downto 0) => hog_global_date_i(31 downto 0), + hog_global_sha_i(31 downto 0) => hog_global_sha_i(31 downto 0), + hog_global_time_i(31 downto 0) => hog_global_time_i(31 downto 0), + hog_global_ver_i(31 downto 0) => hog_global_ver_i(31 downto 0), + s_axi_aclk => s_axi_aclk, + s_axi_araddr(31 downto 0) => s_axi_araddr(31 downto 0), + s_axi_aresetn => s_axi_aresetn, + s_axi_aresetn_0 => \^sr\(0), + s_axi_arready_s_reg_0 => s_axi_arready_s_reg, + s_axi_arvalid => s_axi_arvalid, + s_axi_rready => s_axi_rready, + s_axi_rvalid => s_axi_rvalid + ); +axi4lite_wr_channel_if_i: entity work.mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_wr_channel_if + port map ( + s_axi_aclk => s_axi_aclk, + s_axi_awready => s_axi_awready, + s_axi_awready_s_reg_0 => \^sr\(0), + s_axi_awvalid => s_axi_awvalid, + s_axi_bready => s_axi_bready, + s_axi_bvalid => s_axi_bvalid, + s_axi_wready => s_axi_wready, + s_axi_wvalid => s_axi_wvalid + ); +end STRUCTURE; +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +library UNISIM; +use UNISIM.VCOMPONENTS.ALL; +entity mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info is + port ( + s_axi_wready : out STD_LOGIC; + s_axi_awready : out STD_LOGIC; + s_axi_rdata : out STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_arready_s_reg : out STD_LOGIC; + s_axi_bvalid : out STD_LOGIC; + s_axi_rvalid : out STD_LOGIC; + s_axi_aclk : in STD_LOGIC; + s_axi_awvalid : in STD_LOGIC; + s_axi_wvalid : in STD_LOGIC; + s_axi_rready : in STD_LOGIC; + s_axi_aresetn : in STD_LOGIC; + s_axi_arvalid : in STD_LOGIC; + s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_ver_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_sha_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_date_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_time_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_bready : in STD_LOGIC + ); + attribute ORIG_REF_NAME : string; + attribute ORIG_REF_NAME of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info : entity is "axi4lite_hog_build_info"; +end mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info; + +architecture STRUCTURE of mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info is + signal p_0_in : STD_LOGIC; + signal p_1_in : STD_LOGIC_VECTOR ( 31 downto 0 ); + signal rd_valid_s : STD_LOGIC; +begin +axi4lite_if_inst: entity work.mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_if + port map ( + D(31 downto 0) => p_1_in(31 downto 0), + E(0) => rd_valid_s, + SR(0) => p_0_in, + hog_global_date_i(31 downto 0) => hog_global_date_i(31 downto 0), + hog_global_sha_i(31 downto 0) => hog_global_sha_i(31 downto 0), + hog_global_time_i(31 downto 0) => hog_global_time_i(31 downto 0), + hog_global_ver_i(31 downto 0) => hog_global_ver_i(31 downto 0), + s_axi_aclk => s_axi_aclk, + s_axi_araddr(31 downto 0) => s_axi_araddr(31 downto 0), + s_axi_aresetn => s_axi_aresetn, + s_axi_arready_s_reg => s_axi_arready_s_reg, + s_axi_arvalid => s_axi_arvalid, + s_axi_awready => s_axi_awready, + s_axi_awvalid => s_axi_awvalid, + s_axi_bready => s_axi_bready, + s_axi_bvalid => s_axi_bvalid, + s_axi_rready => s_axi_rready, + s_axi_rvalid => s_axi_rvalid, + s_axi_wready => s_axi_wready, + s_axi_wvalid => s_axi_wvalid + ); +hog_build_info_regs_inst: entity work.mb_design_1_axi4lite_hog_build_i_0_0_hog_build_info_regs + port map ( + D(31 downto 0) => p_1_in(31 downto 0), + E(0) => rd_valid_s, + SR(0) => p_0_in, + s_axi_aclk => s_axi_aclk, + s_axi_rdata(31 downto 0) => s_axi_rdata(31 downto 0) + ); +end STRUCTURE; +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; +library UNISIM; +use UNISIM.VCOMPONENTS.ALL; +entity mb_design_1_axi4lite_hog_build_i_0_0 is + port ( + s_axi_aclk : in STD_LOGIC; + s_axi_aresetn : in STD_LOGIC; + s_axi_awaddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_awvalid : in STD_LOGIC; + s_axi_awready : out STD_LOGIC; + s_axi_wdata : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_wstrb : in STD_LOGIC_VECTOR ( 3 downto 0 ); + s_axi_wvalid : in STD_LOGIC; + s_axi_wready : out STD_LOGIC; + s_axi_bresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); + s_axi_bvalid : out STD_LOGIC; + s_axi_bready : in STD_LOGIC; + s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_arvalid : in STD_LOGIC; + s_axi_arready : out STD_LOGIC; + s_axi_rdata : out STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_rresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); + s_axi_rvalid : out STD_LOGIC; + s_axi_rready : in STD_LOGIC; + hog_global_date_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_time_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_ver_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_sha_i : in STD_LOGIC_VECTOR ( 31 downto 0 ) + ); + attribute NotValidForBitStream : boolean; + attribute NotValidForBitStream of mb_design_1_axi4lite_hog_build_i_0_0 : entity is true; + attribute CHECK_LICENSE_TYPE : string; + attribute CHECK_LICENSE_TYPE of mb_design_1_axi4lite_hog_build_i_0_0 : entity is "mb_design_1_axi4lite_hog_build_i_0_0,axi4lite_hog_build_info,{}"; + attribute downgradeipidentifiedwarnings : string; + attribute downgradeipidentifiedwarnings of mb_design_1_axi4lite_hog_build_i_0_0 : entity is "yes"; + attribute ip_definition_source : string; + attribute ip_definition_source of mb_design_1_axi4lite_hog_build_i_0_0 : entity is "module_ref"; + attribute x_core_info : string; + attribute x_core_info of mb_design_1_axi4lite_hog_build_i_0_0 : entity is "axi4lite_hog_build_info,Vivado 2024.1.2"; +end mb_design_1_axi4lite_hog_build_i_0_0; + +architecture STRUCTURE of mb_design_1_axi4lite_hog_build_i_0_0 is + signal \<const0>\ : STD_LOGIC; + attribute x_interface_info : string; + attribute x_interface_info of s_axi_aclk : signal is "xilinx.com:signal:clock:1.0 s_axi_aclk CLK"; + attribute x_interface_parameter : string; + attribute x_interface_parameter of s_axi_aclk : signal is "XIL_INTERFACENAME s_axi_aclk, ASSOCIATED_BUSIF s_axi, ASSOCIATED_RESET s_axi_aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0"; + attribute x_interface_info of s_axi_aresetn : signal is "xilinx.com:signal:reset:1.0 s_axi_aresetn RST"; + attribute x_interface_parameter of s_axi_aresetn : signal is "XIL_INTERFACENAME s_axi_aresetn, POLARITY ACTIVE_LOW, INSERT_VIP 0"; + attribute x_interface_info of s_axi_arready : signal is "xilinx.com:interface:aximm:1.0 s_axi ARREADY"; + attribute x_interface_info of s_axi_arvalid : signal is "xilinx.com:interface:aximm:1.0 s_axi ARVALID"; + attribute x_interface_info of s_axi_awready : signal is "xilinx.com:interface:aximm:1.0 s_axi AWREADY"; + attribute x_interface_info of s_axi_awvalid : signal is "xilinx.com:interface:aximm:1.0 s_axi AWVALID"; + attribute x_interface_info of s_axi_bready : signal is "xilinx.com:interface:aximm:1.0 s_axi BREADY"; + attribute x_interface_info of s_axi_bvalid : signal is "xilinx.com:interface:aximm:1.0 s_axi BVALID"; + attribute x_interface_info of s_axi_rready : signal is "xilinx.com:interface:aximm:1.0 s_axi RREADY"; + attribute x_interface_info of s_axi_rvalid : signal is "xilinx.com:interface:aximm:1.0 s_axi RVALID"; + attribute x_interface_info of s_axi_wready : signal is "xilinx.com:interface:aximm:1.0 s_axi WREADY"; + attribute x_interface_info of s_axi_wvalid : signal is "xilinx.com:interface:aximm:1.0 s_axi WVALID"; + attribute x_interface_info of s_axi_araddr : signal is "xilinx.com:interface:aximm:1.0 s_axi ARADDR"; + attribute x_interface_info of s_axi_awaddr : signal is "xilinx.com:interface:aximm:1.0 s_axi AWADDR"; + attribute x_interface_parameter of s_axi_awaddr : signal is "XIL_INTERFACENAME s_axi, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 0, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0"; + attribute x_interface_info of s_axi_bresp : signal is "xilinx.com:interface:aximm:1.0 s_axi BRESP"; + attribute x_interface_info of s_axi_rdata : signal is "xilinx.com:interface:aximm:1.0 s_axi RDATA"; + attribute x_interface_info of s_axi_rresp : signal is "xilinx.com:interface:aximm:1.0 s_axi RRESP"; + attribute x_interface_info of s_axi_wdata : signal is "xilinx.com:interface:aximm:1.0 s_axi WDATA"; + attribute x_interface_info of s_axi_wstrb : signal is "xilinx.com:interface:aximm:1.0 s_axi WSTRB"; +begin + s_axi_bresp(1) <= \<const0>\; + s_axi_bresp(0) <= \<const0>\; + s_axi_rresp(1) <= \<const0>\; + s_axi_rresp(0) <= \<const0>\; +GND: unisim.vcomponents.GND + port map ( + G => \<const0>\ + ); +U0: entity work.mb_design_1_axi4lite_hog_build_i_0_0_axi4lite_hog_build_info + port map ( + hog_global_date_i(31 downto 0) => hog_global_date_i(31 downto 0), + hog_global_sha_i(31 downto 0) => hog_global_sha_i(31 downto 0), + hog_global_time_i(31 downto 0) => hog_global_time_i(31 downto 0), + hog_global_ver_i(31 downto 0) => hog_global_ver_i(31 downto 0), + s_axi_aclk => s_axi_aclk, + s_axi_araddr(31 downto 0) => s_axi_araddr(31 downto 0), + s_axi_aresetn => s_axi_aresetn, + s_axi_arready_s_reg => s_axi_arready, + s_axi_arvalid => s_axi_arvalid, + s_axi_awready => s_axi_awready, + s_axi_awvalid => s_axi_awvalid, + s_axi_bready => s_axi_bready, + s_axi_bvalid => s_axi_bvalid, + s_axi_rdata(31 downto 0) => s_axi_rdata(31 downto 0), + s_axi_rready => s_axi_rready, + s_axi_rvalid => s_axi_rvalid, + s_axi_wready => s_axi_wready, + s_axi_wvalid => s_axi_wvalid + ); +end STRUCTURE; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.v new file mode 100644 index 0000000..7d313d6 --- /dev/null +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.v @@ -0,0 +1,48 @@ +// Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. +// Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. +// -------------------------------------------------------------------------------- +// Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 +// Date : Thu Mar 20 18:25:04 2025 +// Host : hogtest running 64-bit unknown +// Command : write_verilog -force -mode synth_stub +// /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.v +// Design : mb_design_1_axi4lite_hog_build_i_0_0 +// Purpose : Stub declaration of top-level module interface +// Device : xc7a200tsbg484-1 +// -------------------------------------------------------------------------------- + +// This empty module with port declaration file causes synthesis tools to infer a black box for IP. +// The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion. +// Please paste the declaration into a Verilog source file or add the file as an additional source. +(* x_core_info = "axi4lite_hog_build_info,Vivado 2024.1.2" *) +module mb_design_1_axi4lite_hog_build_i_0_0(s_axi_aclk, s_axi_aresetn, s_axi_awaddr, + s_axi_awvalid, s_axi_awready, s_axi_wdata, s_axi_wstrb, s_axi_wvalid, s_axi_wready, + s_axi_bresp, s_axi_bvalid, s_axi_bready, s_axi_araddr, s_axi_arvalid, s_axi_arready, + s_axi_rdata, s_axi_rresp, s_axi_rvalid, s_axi_rready, hog_global_date_i, hog_global_time_i, + hog_global_ver_i, hog_global_sha_i) +/* synthesis syn_black_box black_box_pad_pin="s_axi_aresetn,s_axi_awaddr[31:0],s_axi_awvalid,s_axi_awready,s_axi_wdata[31:0],s_axi_wstrb[3:0],s_axi_wvalid,s_axi_wready,s_axi_bresp[1:0],s_axi_bvalid,s_axi_bready,s_axi_araddr[31:0],s_axi_arvalid,s_axi_arready,s_axi_rdata[31:0],s_axi_rresp[1:0],s_axi_rvalid,s_axi_rready,hog_global_date_i[31:0],hog_global_time_i[31:0],hog_global_ver_i[31:0],hog_global_sha_i[31:0]" */ +/* synthesis syn_force_seq_prim="s_axi_aclk" */; + input s_axi_aclk /* synthesis syn_isclock = 1 */; + input s_axi_aresetn; + input [31:0]s_axi_awaddr; + input s_axi_awvalid; + output s_axi_awready; + input [31:0]s_axi_wdata; + input [3:0]s_axi_wstrb; + input s_axi_wvalid; + output s_axi_wready; + output [1:0]s_axi_bresp; + output s_axi_bvalid; + input s_axi_bready; + input [31:0]s_axi_araddr; + input s_axi_arvalid; + output s_axi_arready; + output [31:0]s_axi_rdata; + output [1:0]s_axi_rresp; + output s_axi_rvalid; + input s_axi_rready; + input [31:0]hog_global_date_i; + input [31:0]hog_global_time_i; + input [31:0]hog_global_ver_i; + input [31:0]hog_global_sha_i; +endmodule diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.vhdl b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.vhdl new file mode 100644 index 0000000..2a42350 --- /dev/null +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.vhdl @@ -0,0 +1,53 @@ +-- Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. +-- Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. +-- -------------------------------------------------------------------------------- +-- Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 +-- Date : Thu Mar 20 18:25:04 2025 +-- Host : hogtest running 64-bit unknown +-- Command : write_vhdl -force -mode synth_stub +-- /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0_stub.vhdl +-- Design : mb_design_1_axi4lite_hog_build_i_0_0 +-- Purpose : Stub declaration of top-level module interface +-- Device : xc7a200tsbg484-1 +-- -------------------------------------------------------------------------------- +library IEEE; +use IEEE.STD_LOGIC_1164.ALL; + +entity mb_design_1_axi4lite_hog_build_i_0_0 is + Port ( + s_axi_aclk : in STD_LOGIC; + s_axi_aresetn : in STD_LOGIC; + s_axi_awaddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_awvalid : in STD_LOGIC; + s_axi_awready : out STD_LOGIC; + s_axi_wdata : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_wstrb : in STD_LOGIC_VECTOR ( 3 downto 0 ); + s_axi_wvalid : in STD_LOGIC; + s_axi_wready : out STD_LOGIC; + s_axi_bresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); + s_axi_bvalid : out STD_LOGIC; + s_axi_bready : in STD_LOGIC; + s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_arvalid : in STD_LOGIC; + s_axi_arready : out STD_LOGIC; + s_axi_rdata : out STD_LOGIC_VECTOR ( 31 downto 0 ); + s_axi_rresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); + s_axi_rvalid : out STD_LOGIC; + s_axi_rready : in STD_LOGIC; + hog_global_date_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_time_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_ver_i : in STD_LOGIC_VECTOR ( 31 downto 0 ); + hog_global_sha_i : in STD_LOGIC_VECTOR ( 31 downto 0 ) + ); + +end mb_design_1_axi4lite_hog_build_i_0_0; + +architecture stub of mb_design_1_axi4lite_hog_build_i_0_0 is +attribute syn_black_box : boolean; +attribute black_box_pad_pin : string; +attribute syn_black_box of stub : architecture is true; +attribute black_box_pad_pin of stub : architecture is "s_axi_aclk,s_axi_aresetn,s_axi_awaddr[31:0],s_axi_awvalid,s_axi_awready,s_axi_wdata[31:0],s_axi_wstrb[3:0],s_axi_wvalid,s_axi_wready,s_axi_bresp[1:0],s_axi_bvalid,s_axi_bready,s_axi_araddr[31:0],s_axi_arvalid,s_axi_arready,s_axi_rdata[31:0],s_axi_rresp[1:0],s_axi_rvalid,s_axi_rready,hog_global_date_i[31:0],hog_global_time_i[31:0],hog_global_ver_i[31:0],hog_global_sha_i[31:0]"; +attribute x_core_info : string; +attribute x_core_info of stub : architecture is "axi4lite_hog_build_info,Vivado 2024.1.2"; +begin +end; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/sim/mb_design_1_axi4lite_hog_build_i_0_0.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/sim/mb_design_1_axi4lite_hog_build_i_0_0.vhd new file mode 100644 index 0000000..b785979 --- /dev/null +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/sim/mb_design_1_axi4lite_hog_build_i_0_0.vhd @@ -0,0 +1,172 @@ +-- (c) Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. +-- (c) Copyright 2022-2025 Advanced Micro Devices, Inc. All rights reserved. +-- +-- This file contains confidential and proprietary information +-- of AMD and is protected under U.S. and international copyright +-- and other intellectual property laws. +-- +-- DISCLAIMER +-- This disclaimer is not a license and does not grant any +-- rights to the materials distributed herewith. Except as +-- otherwise provided in a valid license issued to you by +-- AMD, and to the maximum extent permitted by applicable +-- law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND +-- WITH ALL FAULTS, AND AMD HEREBY DISCLAIMS ALL WARRANTIES +-- AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING +-- BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON- +-- INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and +-- (2) AMD shall not be liable (whether in contract or tort, +-- including negligence, or under any other theory of +-- liability) for any loss or damage of any kind or nature +-- related to, arising under or in connection with these +-- materials, including for any direct, or any indirect, +-- special, incidental, or consequential loss or damage +-- (including loss of data, profits, goodwill, or any type of +-- loss or damage suffered as a result of any action brought +-- by a third party) even if such damage or loss was +-- reasonably foreseeable or AMD had been advised of the +-- possibility of the same. +-- +-- CRITICAL APPLICATIONS +-- AMD products are not designed or intended to be fail- +-- safe, or for use in any application requiring fail-safe +-- performance, such as life-support or safety devices or +-- systems, Class III medical devices, nuclear facilities, +-- applications related to the deployment of airbags, or any +-- other applications that could lead to death, personal +-- injury, or severe property or environmental damage +-- (individually and collectively, "Critical +-- Applications"). Customer assumes the sole risk and +-- liability of any use of AMD products in Critical +-- Applications, subject only to applicable laws and +-- regulations governing limitations on product liability. +-- +-- THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS +-- PART OF THIS FILE AT ALL TIMES. +-- +-- DO NOT MODIFY THIS FILE. + +-- IP VLNV: xilinx.com:module_ref:axi4lite_hog_build_info:1.0 +-- IP Revision: 1 + +LIBRARY ieee; +USE ieee.std_logic_1164.ALL; +USE ieee.numeric_std.ALL; + +ENTITY mb_design_1_axi4lite_hog_build_i_0_0 IS + PORT ( + s_axi_aclk : IN STD_LOGIC; + s_axi_aresetn : IN STD_LOGIC; + s_axi_awaddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_awvalid : IN STD_LOGIC; + s_axi_awready : OUT STD_LOGIC; + s_axi_wdata : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_wstrb : IN STD_LOGIC_VECTOR(3 DOWNTO 0); + s_axi_wvalid : IN STD_LOGIC; + s_axi_wready : OUT STD_LOGIC; + s_axi_bresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_bvalid : OUT STD_LOGIC; + s_axi_bready : IN STD_LOGIC; + s_axi_araddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_arvalid : IN STD_LOGIC; + s_axi_arready : OUT STD_LOGIC; + s_axi_rdata : OUT STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_rresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_rvalid : OUT STD_LOGIC; + s_axi_rready : IN STD_LOGIC; + hog_global_date_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_time_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_ver_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_sha_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0) + ); +END mb_design_1_axi4lite_hog_build_i_0_0; + +ARCHITECTURE mb_design_1_axi4lite_hog_build_i_0_0_arch OF mb_design_1_axi4lite_hog_build_i_0_0 IS + ATTRIBUTE DowngradeIPIdentifiedWarnings : STRING; + ATTRIBUTE DowngradeIPIdentifiedWarnings OF mb_design_1_axi4lite_hog_build_i_0_0_arch: ARCHITECTURE IS "yes"; + COMPONENT axi4lite_hog_build_info IS + GENERIC ( + C_ADDR_WIDTH : INTEGER + ); + PORT ( + s_axi_aclk : IN STD_LOGIC; + s_axi_aresetn : IN STD_LOGIC; + s_axi_awaddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_awvalid : IN STD_LOGIC; + s_axi_awready : OUT STD_LOGIC; + s_axi_wdata : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_wstrb : IN STD_LOGIC_VECTOR(3 DOWNTO 0); + s_axi_wvalid : IN STD_LOGIC; + s_axi_wready : OUT STD_LOGIC; + s_axi_bresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_bvalid : OUT STD_LOGIC; + s_axi_bready : IN STD_LOGIC; + s_axi_araddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_arvalid : IN STD_LOGIC; + s_axi_arready : OUT STD_LOGIC; + s_axi_rdata : OUT STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_rresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_rvalid : OUT STD_LOGIC; + s_axi_rready : IN STD_LOGIC; + hog_global_date_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_time_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_ver_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_sha_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0) + ); + END COMPONENT axi4lite_hog_build_info; + ATTRIBUTE X_INTERFACE_INFO : STRING; + ATTRIBUTE X_INTERFACE_PARAMETER : STRING; + ATTRIBUTE X_INTERFACE_PARAMETER OF s_axi_aclk: SIGNAL IS "XIL_INTERFACENAME s_axi_aclk, ASSOCIATED_BUSIF s_axi, ASSOCIATED_RESET s_axi_aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_aclk: SIGNAL IS "xilinx.com:signal:clock:1.0 s_axi_aclk CLK"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_araddr: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi ARADDR"; + ATTRIBUTE X_INTERFACE_PARAMETER OF s_axi_aresetn: SIGNAL IS "XIL_INTERFACENAME s_axi_aresetn, POLARITY ACTIVE_LOW, INSERT_VIP 0"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_aresetn: SIGNAL IS "xilinx.com:signal:reset:1.0 s_axi_aresetn RST"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_arready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi ARREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_arvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi ARVALID"; + ATTRIBUTE X_INTERFACE_PARAMETER OF s_axi_awaddr: SIGNAL IS "XIL_INTERFACENAME s_axi, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 0, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1" & +", RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_awaddr: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi AWADDR"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_awready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi AWREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_awvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi AWVALID"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_bready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi BREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_bresp: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi BRESP"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_bvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi BVALID"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rdata: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RDATA"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rresp: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RRESP"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RVALID"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wdata: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WDATA"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wstrb: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WSTRB"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WVALID"; +BEGIN + U0 : axi4lite_hog_build_info + GENERIC MAP ( + C_ADDR_WIDTH => 32 + ) + PORT MAP ( + s_axi_aclk => s_axi_aclk, + s_axi_aresetn => s_axi_aresetn, + s_axi_awaddr => s_axi_awaddr, + s_axi_awvalid => s_axi_awvalid, + s_axi_awready => s_axi_awready, + s_axi_wdata => s_axi_wdata, + s_axi_wstrb => s_axi_wstrb, + s_axi_wvalid => s_axi_wvalid, + s_axi_wready => s_axi_wready, + s_axi_bresp => s_axi_bresp, + s_axi_bvalid => s_axi_bvalid, + s_axi_bready => s_axi_bready, + s_axi_araddr => s_axi_araddr, + s_axi_arvalid => s_axi_arvalid, + s_axi_arready => s_axi_arready, + s_axi_rdata => s_axi_rdata, + s_axi_rresp => s_axi_rresp, + s_axi_rvalid => s_axi_rvalid, + s_axi_rready => s_axi_rready, + hog_global_date_i => hog_global_date_i, + hog_global_time_i => hog_global_time_i, + hog_global_ver_i => hog_global_ver_i, + hog_global_sha_i => hog_global_sha_i + ); +END mb_design_1_axi4lite_hog_build_i_0_0_arch; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/synth/mb_design_1_axi4lite_hog_build_i_0_0.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/synth/mb_design_1_axi4lite_hog_build_i_0_0.vhd new file mode 100644 index 0000000..1ba8a04 --- /dev/null +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/synth/mb_design_1_axi4lite_hog_build_i_0_0.vhd @@ -0,0 +1,180 @@ +-- (c) Copyright 1986-2022 Xilinx, Inc. All Rights Reserved. +-- (c) Copyright 2022-2025 Advanced Micro Devices, Inc. All rights reserved. +-- +-- This file contains confidential and proprietary information +-- of AMD and is protected under U.S. and international copyright +-- and other intellectual property laws. +-- +-- DISCLAIMER +-- This disclaimer is not a license and does not grant any +-- rights to the materials distributed herewith. Except as +-- otherwise provided in a valid license issued to you by +-- AMD, and to the maximum extent permitted by applicable +-- law: (1) THESE MATERIALS ARE MADE AVAILABLE "AS IS" AND +-- WITH ALL FAULTS, AND AMD HEREBY DISCLAIMS ALL WARRANTIES +-- AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING +-- BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON- +-- INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and +-- (2) AMD shall not be liable (whether in contract or tort, +-- including negligence, or under any other theory of +-- liability) for any loss or damage of any kind or nature +-- related to, arising under or in connection with these +-- materials, including for any direct, or any indirect, +-- special, incidental, or consequential loss or damage +-- (including loss of data, profits, goodwill, or any type of +-- loss or damage suffered as a result of any action brought +-- by a third party) even if such damage or loss was +-- reasonably foreseeable or AMD had been advised of the +-- possibility of the same. +-- +-- CRITICAL APPLICATIONS +-- AMD products are not designed or intended to be fail- +-- safe, or for use in any application requiring fail-safe +-- performance, such as life-support or safety devices or +-- systems, Class III medical devices, nuclear facilities, +-- applications related to the deployment of airbags, or any +-- other applications that could lead to death, personal +-- injury, or severe property or environmental damage +-- (individually and collectively, "Critical +-- Applications"). Customer assumes the sole risk and +-- liability of any use of AMD products in Critical +-- Applications, subject only to applicable laws and +-- regulations governing limitations on product liability. +-- +-- THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS +-- PART OF THIS FILE AT ALL TIMES. +-- +-- DO NOT MODIFY THIS FILE. + +-- IP VLNV: xilinx.com:module_ref:axi4lite_hog_build_info:1.0 +-- IP Revision: 1 + +LIBRARY ieee; +USE ieee.std_logic_1164.ALL; +USE ieee.numeric_std.ALL; + +ENTITY mb_design_1_axi4lite_hog_build_i_0_0 IS + PORT ( + s_axi_aclk : IN STD_LOGIC; + s_axi_aresetn : IN STD_LOGIC; + s_axi_awaddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_awvalid : IN STD_LOGIC; + s_axi_awready : OUT STD_LOGIC; + s_axi_wdata : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_wstrb : IN STD_LOGIC_VECTOR(3 DOWNTO 0); + s_axi_wvalid : IN STD_LOGIC; + s_axi_wready : OUT STD_LOGIC; + s_axi_bresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_bvalid : OUT STD_LOGIC; + s_axi_bready : IN STD_LOGIC; + s_axi_araddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_arvalid : IN STD_LOGIC; + s_axi_arready : OUT STD_LOGIC; + s_axi_rdata : OUT STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_rresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_rvalid : OUT STD_LOGIC; + s_axi_rready : IN STD_LOGIC; + hog_global_date_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_time_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_ver_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_sha_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0) + ); +END mb_design_1_axi4lite_hog_build_i_0_0; + +ARCHITECTURE mb_design_1_axi4lite_hog_build_i_0_0_arch OF mb_design_1_axi4lite_hog_build_i_0_0 IS + ATTRIBUTE DowngradeIPIdentifiedWarnings : STRING; + ATTRIBUTE DowngradeIPIdentifiedWarnings OF mb_design_1_axi4lite_hog_build_i_0_0_arch: ARCHITECTURE IS "yes"; + COMPONENT axi4lite_hog_build_info IS + GENERIC ( + C_ADDR_WIDTH : INTEGER + ); + PORT ( + s_axi_aclk : IN STD_LOGIC; + s_axi_aresetn : IN STD_LOGIC; + s_axi_awaddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_awvalid : IN STD_LOGIC; + s_axi_awready : OUT STD_LOGIC; + s_axi_wdata : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_wstrb : IN STD_LOGIC_VECTOR(3 DOWNTO 0); + s_axi_wvalid : IN STD_LOGIC; + s_axi_wready : OUT STD_LOGIC; + s_axi_bresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_bvalid : OUT STD_LOGIC; + s_axi_bready : IN STD_LOGIC; + s_axi_araddr : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_arvalid : IN STD_LOGIC; + s_axi_arready : OUT STD_LOGIC; + s_axi_rdata : OUT STD_LOGIC_VECTOR(31 DOWNTO 0); + s_axi_rresp : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); + s_axi_rvalid : OUT STD_LOGIC; + s_axi_rready : IN STD_LOGIC; + hog_global_date_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_time_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_ver_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0); + hog_global_sha_i : IN STD_LOGIC_VECTOR(31 DOWNTO 0) + ); + END COMPONENT axi4lite_hog_build_info; + ATTRIBUTE X_CORE_INFO : STRING; + ATTRIBUTE X_CORE_INFO OF mb_design_1_axi4lite_hog_build_i_0_0_arch: ARCHITECTURE IS "axi4lite_hog_build_info,Vivado 2024.1.2"; + ATTRIBUTE CHECK_LICENSE_TYPE : STRING; + ATTRIBUTE CHECK_LICENSE_TYPE OF mb_design_1_axi4lite_hog_build_i_0_0_arch : ARCHITECTURE IS "mb_design_1_axi4lite_hog_build_i_0_0,axi4lite_hog_build_info,{}"; + ATTRIBUTE CORE_GENERATION_INFO : STRING; + ATTRIBUTE CORE_GENERATION_INFO OF mb_design_1_axi4lite_hog_build_i_0_0_arch: ARCHITECTURE IS "mb_design_1_axi4lite_hog_build_i_0_0,axi4lite_hog_build_info,{x_ipProduct=Vivado 2024.1.2,x_ipVendor=xilinx.com,x_ipLibrary=module_ref,x_ipName=axi4lite_hog_build_info,x_ipVersion=1.0,x_ipCoreRevision=1,x_ipLanguage=VHDL,x_ipSimLanguage=MIXED,C_ADDR_WIDTH=32}"; + ATTRIBUTE IP_DEFINITION_SOURCE : STRING; + ATTRIBUTE IP_DEFINITION_SOURCE OF mb_design_1_axi4lite_hog_build_i_0_0_arch: ARCHITECTURE IS "module_ref"; + ATTRIBUTE X_INTERFACE_INFO : STRING; + ATTRIBUTE X_INTERFACE_PARAMETER : STRING; + ATTRIBUTE X_INTERFACE_PARAMETER OF s_axi_aclk: SIGNAL IS "XIL_INTERFACENAME s_axi_aclk, ASSOCIATED_BUSIF s_axi, ASSOCIATED_RESET s_axi_aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_aclk: SIGNAL IS "xilinx.com:signal:clock:1.0 s_axi_aclk CLK"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_araddr: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi ARADDR"; + ATTRIBUTE X_INTERFACE_PARAMETER OF s_axi_aresetn: SIGNAL IS "XIL_INTERFACENAME s_axi_aresetn, POLARITY ACTIVE_LOW, INSERT_VIP 0"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_aresetn: SIGNAL IS "xilinx.com:signal:reset:1.0 s_axi_aresetn RST"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_arready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi ARREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_arvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi ARVALID"; + ATTRIBUTE X_INTERFACE_PARAMETER OF s_axi_awaddr: SIGNAL IS "XIL_INTERFACENAME s_axi, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 0, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1" & +", RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_awaddr: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi AWADDR"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_awready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi AWREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_awvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi AWVALID"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_bready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi BREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_bresp: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi BRESP"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_bvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi BVALID"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rdata: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RDATA"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rresp: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RRESP"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_rvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi RVALID"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wdata: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WDATA"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wready: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WREADY"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wstrb: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WSTRB"; + ATTRIBUTE X_INTERFACE_INFO OF s_axi_wvalid: SIGNAL IS "xilinx.com:interface:aximm:1.0 s_axi WVALID"; +BEGIN + U0 : axi4lite_hog_build_info + GENERIC MAP ( + C_ADDR_WIDTH => 32 + ) + PORT MAP ( + s_axi_aclk => s_axi_aclk, + s_axi_aresetn => s_axi_aresetn, + s_axi_awaddr => s_axi_awaddr, + s_axi_awvalid => s_axi_awvalid, + s_axi_awready => s_axi_awready, + s_axi_wdata => s_axi_wdata, + s_axi_wstrb => s_axi_wstrb, + s_axi_wvalid => s_axi_wvalid, + s_axi_wready => s_axi_wready, + s_axi_bresp => s_axi_bresp, + s_axi_bvalid => s_axi_bvalid, + s_axi_bready => s_axi_bready, + s_axi_araddr => s_axi_araddr, + s_axi_arvalid => s_axi_arvalid, + s_axi_arready => s_axi_arready, + s_axi_rdata => s_axi_rdata, + s_axi_rresp => s_axi_rresp, + s_axi_rvalid => s_axi_rvalid, + s_axi_rready => s_axi_rready, + hog_global_date_i => hog_global_date_i, + hog_global_time_i => hog_global_time_i, + hog_global_ver_i => hog_global_ver_i, + hog_global_sha_i => hog_global_sha_i + ); +END mb_design_1_axi4lite_hog_build_i_0_0_arch; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0.dcp b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0.dcp index b5ba35c713b25f4de222401dca2873080886b8e7..cecaabf140d08998f6be5d2df95097ed7e5dd1fd 100644 GIT binary patch delta 29205 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 delta 29139 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 diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0.xml b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0.xml index e6405df..8624f8d 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0.xml +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0.xml @@ -2638,7 +2638,7 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:37:17 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:30 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> @@ -2656,11 +2656,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:d418c950</spirit:value> + <spirit:value>9:8ca2308d</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -2680,7 +2680,7 @@ </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:f2268312</spirit:value> + <spirit:value>9:732b1e1c</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -2696,11 +2696,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:f2268312</spirit:value> + <spirit:value>9:732b1e1c</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -2720,7 +2720,7 @@ </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:d418c950</spirit:value> + <spirit:value>9:8ca2308d</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -2736,11 +2736,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:d418c950</spirit:value> + <spirit:value>9:8ca2308d</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.v index c54c810..bf7508e 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.v +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.v @@ -2,10 +2,10 @@ // Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. // -------------------------------------------------------------------------------- // Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 -// Date : Tue Mar 4 22:37:17 2025 +// Date : Thu Mar 20 17:31:20 2025 // Host : hogtest running 64-bit unknown -// Command : write_verilog -force -mode funcsim -// /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.v +// Command : write_verilog -force -mode funcsim -rename_top mb_design_1_lmb_bram_if_cntlr_0_0 -prefix +// mb_design_1_lmb_bram_if_cntlr_0_0_ mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.v // Design : mb_design_1_lmb_bram_if_cntlr_0_0 // Purpose : This verilog netlist is a functional simulation representation of the design and should not be modified // or synthesized. This netlist cannot be used for SDF annotated simulation. @@ -13,9 +13,18 @@ // -------------------------------------------------------------------------------- `timescale 1 ps / 1 ps -(* CHECK_LICENSE_TYPE = "mb_design_1_lmb_bram_if_cntlr_0_0,lmb_bram_if_cntlr,{}" *) (* downgradeipidentifiedwarnings = "yes" *) (* x_core_info = "lmb_bram_if_cntlr,Vivado 2024.1.2" *) -(* NotValidForBitStream *) -module mb_design_1_lmb_bram_if_cntlr_0_0 +(* C_ARBITRATION = "0" *) (* C_BASEADDR = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) (* C_BRAM_AWIDTH = "32" *) +(* C_CE_COUNTER_WIDTH = "0" *) (* C_CE_FAILING_REGISTERS = "0" *) (* C_ECC = "0" *) +(* C_ECC_ONOFF_REGISTER = "0" *) (* C_ECC_ONOFF_RESET_VALUE = "1" *) (* C_ECC_STATUS_REGISTERS = "0" *) +(* C_FAMILY = "artix7" *) (* C_FAULT_INJECT = "0" *) (* C_HIGHADDR = "64'b0000000000000000000000000000000000000000000000000111111111111111" *) +(* C_INTERCONNECT = "0" *) (* C_LMB_AWIDTH = "32" *) (* C_LMB_DWIDTH = "32" *) +(* C_LMB_PROTOCOL = "0" *) (* C_MASK = "64'b0000000000000000000000000000000011000000000000000000000000000000" *) (* C_MASK1 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) +(* C_MASK2 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK3 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK4 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) +(* C_MASK5 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK6 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK7 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) +(* C_NUM_LMB = "1" *) (* C_S_AXI_CTRL_ADDR_WIDTH = "32" *) (* C_S_AXI_CTRL_BASEADDR = "32'b11111111111111111111111111111111" *) +(* C_S_AXI_CTRL_DATA_WIDTH = "32" *) (* C_S_AXI_CTRL_HIGHADDR = "32'b00000000000000000000000000000000" *) (* C_UE_FAILING_REGISTERS = "0" *) +(* C_WRITE_ACCESS = "2" *) +module mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr (LMB_Clk, LMB_Rst, LMB_ABus, @@ -29,40 +38,234 @@ module mb_design_1_lmb_bram_if_cntlr_0_0 Sl_Wait, Sl_UE, Sl_CE, + LMB1_ABus, + LMB1_WriteDBus, + LMB1_AddrStrobe, + LMB1_ReadStrobe, + LMB1_WriteStrobe, + LMB1_BE, + Sl1_DBus, + Sl1_Ready, + Sl1_Wait, + Sl1_UE, + Sl1_CE, + LMB2_ABus, + LMB2_WriteDBus, + LMB2_AddrStrobe, + LMB2_ReadStrobe, + LMB2_WriteStrobe, + LMB2_BE, + Sl2_DBus, + Sl2_Ready, + Sl2_Wait, + Sl2_UE, + Sl2_CE, + LMB3_ABus, + LMB3_WriteDBus, + LMB3_AddrStrobe, + LMB3_ReadStrobe, + LMB3_WriteStrobe, + LMB3_BE, + Sl3_DBus, + Sl3_Ready, + Sl3_Wait, + Sl3_UE, + Sl3_CE, + LMB4_ABus, + LMB4_WriteDBus, + LMB4_AddrStrobe, + LMB4_ReadStrobe, + LMB4_WriteStrobe, + LMB4_BE, + Sl4_DBus, + Sl4_Ready, + Sl4_Wait, + Sl4_UE, + Sl4_CE, + LMB5_ABus, + LMB5_WriteDBus, + LMB5_AddrStrobe, + LMB5_ReadStrobe, + LMB5_WriteStrobe, + LMB5_BE, + Sl5_DBus, + Sl5_Ready, + Sl5_Wait, + Sl5_UE, + Sl5_CE, + LMB6_ABus, + LMB6_WriteDBus, + LMB6_AddrStrobe, + LMB6_ReadStrobe, + LMB6_WriteStrobe, + LMB6_BE, + Sl6_DBus, + Sl6_Ready, + Sl6_Wait, + Sl6_UE, + Sl6_CE, + LMB7_ABus, + LMB7_WriteDBus, + LMB7_AddrStrobe, + LMB7_ReadStrobe, + LMB7_WriteStrobe, + LMB7_BE, + Sl7_DBus, + Sl7_Ready, + Sl7_Wait, + Sl7_UE, + Sl7_CE, BRAM_Rst_A, BRAM_Clk_A, BRAM_Addr_A, BRAM_EN_A, BRAM_WEN_A, BRAM_Dout_A, - BRAM_Din_A); - (* x_interface_info = "xilinx.com:signal:clock:1.0 CLK.LMB_Clk CLK" *) (* x_interface_parameter = "XIL_INTERFACENAME CLK.LMB_Clk, ASSOCIATED_BUSIF SLMB:SLMB1:SLMB2:SLMB3:SLMB4:SLMB5:SLMB6:SLMB7, ASSOCIATED_RESET LMB_Rst, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0" *) input LMB_Clk; - (* x_interface_info = "xilinx.com:signal:reset:1.0 RST.LMB_Rst RST" *) (* x_interface_parameter = "XIL_INTERFACENAME RST.LMB_Rst, POLARITY ACTIVE_HIGH, TYPE INTERCONNECT, INSERT_VIP 0" *) input LMB_Rst; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB ABUS" *) (* x_interface_parameter = "XIL_INTERFACENAME SLMB, ADDR_WIDTH 32, DATA_WIDTH 32, READ_WRITE_MODE READ_WRITE, PROTOCOL STANDARD" *) input [0:31]LMB_ABus; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB WRITEDBUS" *) input [0:31]LMB_WriteDBus; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB ADDRSTROBE" *) input LMB_AddrStrobe; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB READSTROBE" *) input LMB_ReadStrobe; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB WRITESTROBE" *) input LMB_WriteStrobe; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB BE" *) input [0:3]LMB_BE; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB READDBUS" *) output [0:31]Sl_DBus; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB READY" *) output Sl_Ready; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB WAIT" *) output Sl_Wait; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB UE" *) output Sl_UE; - (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB CE" *) output Sl_CE; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT RST" *) (* x_interface_parameter = "XIL_INTERFACENAME BRAM_PORT, MEM_SIZE 32768, MASTER_TYPE BRAM_CTRL, MEM_WIDTH 32, MEM_ECC NONE, READ_LATENCY 1" *) output BRAM_Rst_A; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT CLK" *) output BRAM_Clk_A; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT ADDR" *) output [0:31]BRAM_Addr_A; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT EN" *) output BRAM_EN_A; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT WE" *) output [0:3]BRAM_WEN_A; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT DIN" *) output [0:31]BRAM_Dout_A; - (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT DOUT" *) input [0:31]BRAM_Din_A; + BRAM_Din_A, + S_AXI_CTRL_ACLK, + S_AXI_CTRL_ARESETN, + S_AXI_CTRL_AWADDR, + S_AXI_CTRL_AWVALID, + S_AXI_CTRL_AWREADY, + S_AXI_CTRL_WDATA, + S_AXI_CTRL_WSTRB, + S_AXI_CTRL_WVALID, + S_AXI_CTRL_WREADY, + S_AXI_CTRL_BRESP, + S_AXI_CTRL_BVALID, + S_AXI_CTRL_BREADY, + S_AXI_CTRL_ARADDR, + S_AXI_CTRL_ARVALID, + S_AXI_CTRL_ARREADY, + S_AXI_CTRL_RDATA, + S_AXI_CTRL_RRESP, + S_AXI_CTRL_RVALID, + S_AXI_CTRL_RREADY, + UE, + CE, + Interrupt); + input LMB_Clk; + input LMB_Rst; + input [0:31]LMB_ABus; + input [0:31]LMB_WriteDBus; + input LMB_AddrStrobe; + input LMB_ReadStrobe; + input LMB_WriteStrobe; + input [0:3]LMB_BE; + output [0:31]Sl_DBus; + output Sl_Ready; + output Sl_Wait; + output Sl_UE; + output Sl_CE; + input [0:31]LMB1_ABus; + input [0:31]LMB1_WriteDBus; + input LMB1_AddrStrobe; + input LMB1_ReadStrobe; + input LMB1_WriteStrobe; + input [0:3]LMB1_BE; + output [0:31]Sl1_DBus; + output Sl1_Ready; + output Sl1_Wait; + output Sl1_UE; + output Sl1_CE; + input [0:31]LMB2_ABus; + input [0:31]LMB2_WriteDBus; + input LMB2_AddrStrobe; + input LMB2_ReadStrobe; + input LMB2_WriteStrobe; + input [0:3]LMB2_BE; + output [0:31]Sl2_DBus; + output Sl2_Ready; + output Sl2_Wait; + output Sl2_UE; + output Sl2_CE; + input [0:31]LMB3_ABus; + input [0:31]LMB3_WriteDBus; + input LMB3_AddrStrobe; + input LMB3_ReadStrobe; + input LMB3_WriteStrobe; + input [0:3]LMB3_BE; + output [0:31]Sl3_DBus; + output Sl3_Ready; + output Sl3_Wait; + output Sl3_UE; + output Sl3_CE; + input [0:31]LMB4_ABus; + input [0:31]LMB4_WriteDBus; + input LMB4_AddrStrobe; + input LMB4_ReadStrobe; + input LMB4_WriteStrobe; + input [0:3]LMB4_BE; + output [0:31]Sl4_DBus; + output Sl4_Ready; + output Sl4_Wait; + output Sl4_UE; + output Sl4_CE; + input [0:31]LMB5_ABus; + input [0:31]LMB5_WriteDBus; + input LMB5_AddrStrobe; + input LMB5_ReadStrobe; + input LMB5_WriteStrobe; + input [0:3]LMB5_BE; + output [0:31]Sl5_DBus; + output Sl5_Ready; + output Sl5_Wait; + output Sl5_UE; + output Sl5_CE; + input [0:31]LMB6_ABus; + input [0:31]LMB6_WriteDBus; + input LMB6_AddrStrobe; + input LMB6_ReadStrobe; + input LMB6_WriteStrobe; + input [0:3]LMB6_BE; + output [0:31]Sl6_DBus; + output Sl6_Ready; + output Sl6_Wait; + output Sl6_UE; + output Sl6_CE; + input [0:31]LMB7_ABus; + input [0:31]LMB7_WriteDBus; + input LMB7_AddrStrobe; + input LMB7_ReadStrobe; + input LMB7_WriteStrobe; + input [0:3]LMB7_BE; + output [0:31]Sl7_DBus; + output Sl7_Ready; + output Sl7_Wait; + output Sl7_UE; + output Sl7_CE; + output BRAM_Rst_A; + output BRAM_Clk_A; + output [0:31]BRAM_Addr_A; + output BRAM_EN_A; + output [0:3]BRAM_WEN_A; + output [0:31]BRAM_Dout_A; + input [0:31]BRAM_Din_A; + input S_AXI_CTRL_ACLK; + input S_AXI_CTRL_ARESETN; + input [31:0]S_AXI_CTRL_AWADDR; + input S_AXI_CTRL_AWVALID; + output S_AXI_CTRL_AWREADY; + input [31:0]S_AXI_CTRL_WDATA; + input [3:0]S_AXI_CTRL_WSTRB; + input S_AXI_CTRL_WVALID; + output S_AXI_CTRL_WREADY; + output [1:0]S_AXI_CTRL_BRESP; + output S_AXI_CTRL_BVALID; + input S_AXI_CTRL_BREADY; + input [31:0]S_AXI_CTRL_ARADDR; + input S_AXI_CTRL_ARVALID; + output S_AXI_CTRL_ARREADY; + output [31:0]S_AXI_CTRL_RDATA; + output [1:0]S_AXI_CTRL_RRESP; + output S_AXI_CTRL_RVALID; + input S_AXI_CTRL_RREADY; + output UE; + output CE; + output Interrupt; wire \<const0> ; - wire [0:31]BRAM_Addr_A; - wire BRAM_Clk_A; wire [0:31]BRAM_Din_A; - wire [0:31]BRAM_Dout_A; - wire BRAM_EN_A; wire [0:3]BRAM_WEN_A; wire [0:31]LMB_ABus; wire LMB_AddrStrobe; @@ -71,489 +274,16 @@ module mb_design_1_lmb_bram_if_cntlr_0_0 wire LMB_Rst; wire [0:31]LMB_WriteDBus; wire LMB_WriteStrobe; - wire [0:31]Sl_DBus; + wire \No_ECC.Sl_Rdy_i_1_n_0 ; + wire \No_ECC.lmb_as_i_1_n_0 ; + wire Sl_Rdy; wire Sl_Ready; - wire NLW_U0_BRAM_Rst_A_UNCONNECTED; - wire NLW_U0_CE_UNCONNECTED; - wire NLW_U0_Interrupt_UNCONNECTED; - wire NLW_U0_S_AXI_CTRL_ARREADY_UNCONNECTED; - wire NLW_U0_S_AXI_CTRL_AWREADY_UNCONNECTED; - wire NLW_U0_S_AXI_CTRL_BVALID_UNCONNECTED; - wire NLW_U0_S_AXI_CTRL_RVALID_UNCONNECTED; - wire NLW_U0_S_AXI_CTRL_WREADY_UNCONNECTED; - wire NLW_U0_Sl1_CE_UNCONNECTED; - wire NLW_U0_Sl1_Ready_UNCONNECTED; - wire NLW_U0_Sl1_UE_UNCONNECTED; - wire NLW_U0_Sl1_Wait_UNCONNECTED; - wire NLW_U0_Sl2_CE_UNCONNECTED; - wire NLW_U0_Sl2_Ready_UNCONNECTED; - wire NLW_U0_Sl2_UE_UNCONNECTED; - wire NLW_U0_Sl2_Wait_UNCONNECTED; - wire NLW_U0_Sl3_CE_UNCONNECTED; - wire NLW_U0_Sl3_Ready_UNCONNECTED; - wire NLW_U0_Sl3_UE_UNCONNECTED; - wire NLW_U0_Sl3_Wait_UNCONNECTED; - wire NLW_U0_Sl4_CE_UNCONNECTED; - wire NLW_U0_Sl4_Ready_UNCONNECTED; - wire NLW_U0_Sl4_UE_UNCONNECTED; - wire NLW_U0_Sl4_Wait_UNCONNECTED; - wire NLW_U0_Sl5_CE_UNCONNECTED; - wire NLW_U0_Sl5_Ready_UNCONNECTED; - wire NLW_U0_Sl5_UE_UNCONNECTED; - wire NLW_U0_Sl5_Wait_UNCONNECTED; - wire NLW_U0_Sl6_CE_UNCONNECTED; - wire NLW_U0_Sl6_Ready_UNCONNECTED; - wire NLW_U0_Sl6_UE_UNCONNECTED; - wire NLW_U0_Sl6_Wait_UNCONNECTED; - wire NLW_U0_Sl7_CE_UNCONNECTED; - wire NLW_U0_Sl7_Ready_UNCONNECTED; - wire NLW_U0_Sl7_UE_UNCONNECTED; - wire NLW_U0_Sl7_Wait_UNCONNECTED; - wire NLW_U0_Sl_CE_UNCONNECTED; - wire NLW_U0_Sl_UE_UNCONNECTED; - wire NLW_U0_Sl_Wait_UNCONNECTED; - wire NLW_U0_UE_UNCONNECTED; - wire [1:0]NLW_U0_S_AXI_CTRL_BRESP_UNCONNECTED; - wire [31:0]NLW_U0_S_AXI_CTRL_RDATA_UNCONNECTED; - wire [1:0]NLW_U0_S_AXI_CTRL_RRESP_UNCONNECTED; - wire [0:31]NLW_U0_Sl1_DBus_UNCONNECTED; - wire [0:31]NLW_U0_Sl2_DBus_UNCONNECTED; - wire [0:31]NLW_U0_Sl3_DBus_UNCONNECTED; - wire [0:31]NLW_U0_Sl4_DBus_UNCONNECTED; - wire [0:31]NLW_U0_Sl5_DBus_UNCONNECTED; - wire [0:31]NLW_U0_Sl6_DBus_UNCONNECTED; - wire [0:31]NLW_U0_Sl7_DBus_UNCONNECTED; + wire lmb_as; - assign BRAM_Rst_A = \<const0> ; - assign Sl_CE = \<const0> ; - assign Sl_UE = \<const0> ; - assign Sl_Wait = \<const0> ; - GND GND - (.G(\<const0> )); - (* C_ARBITRATION = "0" *) - (* C_BASEADDR = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) - (* C_BRAM_AWIDTH = "32" *) - (* C_CE_COUNTER_WIDTH = "0" *) - (* C_CE_FAILING_REGISTERS = "0" *) - (* C_ECC = "0" *) - (* C_ECC_ONOFF_REGISTER = "0" *) - (* C_ECC_ONOFF_RESET_VALUE = "1" *) - (* C_ECC_STATUS_REGISTERS = "0" *) - (* C_FAMILY = "artix7" *) - (* C_FAULT_INJECT = "0" *) - (* C_HIGHADDR = "64'b0000000000000000000000000000000000000000000000000111111111111111" *) - (* C_INTERCONNECT = "0" *) - (* C_LMB_AWIDTH = "32" *) - (* C_LMB_DWIDTH = "32" *) - (* C_LMB_PROTOCOL = "0" *) - (* C_MASK = "64'b0000000000000000000000000000000001000000000000000000000000000000" *) - (* C_MASK1 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_MASK2 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_MASK3 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_MASK4 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_MASK5 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_MASK6 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_MASK7 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) - (* C_NUM_LMB = "1" *) - (* C_S_AXI_CTRL_ADDR_WIDTH = "32" *) - (* C_S_AXI_CTRL_BASEADDR = "32'b11111111111111111111111111111111" *) - (* C_S_AXI_CTRL_DATA_WIDTH = "32" *) - (* C_S_AXI_CTRL_HIGHADDR = "32'b00000000000000000000000000000000" *) - (* C_UE_FAILING_REGISTERS = "0" *) - (* C_WRITE_ACCESS = "2" *) - mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr U0 - (.BRAM_Addr_A(BRAM_Addr_A), - .BRAM_Clk_A(BRAM_Clk_A), - .BRAM_Din_A(BRAM_Din_A), - .BRAM_Dout_A(BRAM_Dout_A), - .BRAM_EN_A(BRAM_EN_A), - .BRAM_Rst_A(NLW_U0_BRAM_Rst_A_UNCONNECTED), - .BRAM_WEN_A(BRAM_WEN_A), - .CE(NLW_U0_CE_UNCONNECTED), - .Interrupt(NLW_U0_Interrupt_UNCONNECTED), - .LMB1_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB1_AddrStrobe(1'b0), - .LMB1_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB1_ReadStrobe(1'b0), - .LMB1_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB1_WriteStrobe(1'b0), - .LMB2_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB2_AddrStrobe(1'b0), - .LMB2_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB2_ReadStrobe(1'b0), - .LMB2_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB2_WriteStrobe(1'b0), - .LMB3_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB3_AddrStrobe(1'b0), - .LMB3_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB3_ReadStrobe(1'b0), - .LMB3_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB3_WriteStrobe(1'b0), - .LMB4_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB4_AddrStrobe(1'b0), - .LMB4_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB4_ReadStrobe(1'b0), - .LMB4_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB4_WriteStrobe(1'b0), - .LMB5_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB5_AddrStrobe(1'b0), - .LMB5_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB5_ReadStrobe(1'b0), - .LMB5_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB5_WriteStrobe(1'b0), - .LMB6_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB6_AddrStrobe(1'b0), - .LMB6_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB6_ReadStrobe(1'b0), - .LMB6_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB6_WriteStrobe(1'b0), - .LMB7_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB7_AddrStrobe(1'b0), - .LMB7_BE({1'b0,1'b0,1'b0,1'b0}), - .LMB7_ReadStrobe(1'b0), - .LMB7_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .LMB7_WriteStrobe(1'b0), - .LMB_ABus(LMB_ABus), - .LMB_AddrStrobe(LMB_AddrStrobe), - .LMB_BE(LMB_BE), - .LMB_Clk(LMB_Clk), - .LMB_ReadStrobe(1'b0), - .LMB_Rst(LMB_Rst), - .LMB_WriteDBus(LMB_WriteDBus), - .LMB_WriteStrobe(LMB_WriteStrobe), - .S_AXI_CTRL_ACLK(1'b0), - .S_AXI_CTRL_ARADDR({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .S_AXI_CTRL_ARESETN(1'b0), - .S_AXI_CTRL_ARREADY(NLW_U0_S_AXI_CTRL_ARREADY_UNCONNECTED), - .S_AXI_CTRL_ARVALID(1'b0), - .S_AXI_CTRL_AWADDR({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .S_AXI_CTRL_AWREADY(NLW_U0_S_AXI_CTRL_AWREADY_UNCONNECTED), - .S_AXI_CTRL_AWVALID(1'b0), - .S_AXI_CTRL_BREADY(1'b0), - .S_AXI_CTRL_BRESP(NLW_U0_S_AXI_CTRL_BRESP_UNCONNECTED[1:0]), - .S_AXI_CTRL_BVALID(NLW_U0_S_AXI_CTRL_BVALID_UNCONNECTED), - .S_AXI_CTRL_RDATA(NLW_U0_S_AXI_CTRL_RDATA_UNCONNECTED[31:0]), - .S_AXI_CTRL_RREADY(1'b0), - .S_AXI_CTRL_RRESP(NLW_U0_S_AXI_CTRL_RRESP_UNCONNECTED[1:0]), - .S_AXI_CTRL_RVALID(NLW_U0_S_AXI_CTRL_RVALID_UNCONNECTED), - .S_AXI_CTRL_WDATA({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .S_AXI_CTRL_WREADY(NLW_U0_S_AXI_CTRL_WREADY_UNCONNECTED), - .S_AXI_CTRL_WSTRB({1'b0,1'b0,1'b0,1'b0}), - .S_AXI_CTRL_WVALID(1'b0), - .Sl1_CE(NLW_U0_Sl1_CE_UNCONNECTED), - .Sl1_DBus(NLW_U0_Sl1_DBus_UNCONNECTED[0:31]), - .Sl1_Ready(NLW_U0_Sl1_Ready_UNCONNECTED), - .Sl1_UE(NLW_U0_Sl1_UE_UNCONNECTED), - .Sl1_Wait(NLW_U0_Sl1_Wait_UNCONNECTED), - .Sl2_CE(NLW_U0_Sl2_CE_UNCONNECTED), - .Sl2_DBus(NLW_U0_Sl2_DBus_UNCONNECTED[0:31]), - .Sl2_Ready(NLW_U0_Sl2_Ready_UNCONNECTED), - .Sl2_UE(NLW_U0_Sl2_UE_UNCONNECTED), - .Sl2_Wait(NLW_U0_Sl2_Wait_UNCONNECTED), - .Sl3_CE(NLW_U0_Sl3_CE_UNCONNECTED), - .Sl3_DBus(NLW_U0_Sl3_DBus_UNCONNECTED[0:31]), - .Sl3_Ready(NLW_U0_Sl3_Ready_UNCONNECTED), - .Sl3_UE(NLW_U0_Sl3_UE_UNCONNECTED), - .Sl3_Wait(NLW_U0_Sl3_Wait_UNCONNECTED), - .Sl4_CE(NLW_U0_Sl4_CE_UNCONNECTED), - .Sl4_DBus(NLW_U0_Sl4_DBus_UNCONNECTED[0:31]), - .Sl4_Ready(NLW_U0_Sl4_Ready_UNCONNECTED), - .Sl4_UE(NLW_U0_Sl4_UE_UNCONNECTED), - .Sl4_Wait(NLW_U0_Sl4_Wait_UNCONNECTED), - .Sl5_CE(NLW_U0_Sl5_CE_UNCONNECTED), - .Sl5_DBus(NLW_U0_Sl5_DBus_UNCONNECTED[0:31]), - .Sl5_Ready(NLW_U0_Sl5_Ready_UNCONNECTED), - .Sl5_UE(NLW_U0_Sl5_UE_UNCONNECTED), - .Sl5_Wait(NLW_U0_Sl5_Wait_UNCONNECTED), - .Sl6_CE(NLW_U0_Sl6_CE_UNCONNECTED), - .Sl6_DBus(NLW_U0_Sl6_DBus_UNCONNECTED[0:31]), - .Sl6_Ready(NLW_U0_Sl6_Ready_UNCONNECTED), - .Sl6_UE(NLW_U0_Sl6_UE_UNCONNECTED), - .Sl6_Wait(NLW_U0_Sl6_Wait_UNCONNECTED), - .Sl7_CE(NLW_U0_Sl7_CE_UNCONNECTED), - .Sl7_DBus(NLW_U0_Sl7_DBus_UNCONNECTED[0:31]), - .Sl7_Ready(NLW_U0_Sl7_Ready_UNCONNECTED), - .Sl7_UE(NLW_U0_Sl7_UE_UNCONNECTED), - .Sl7_Wait(NLW_U0_Sl7_Wait_UNCONNECTED), - .Sl_CE(NLW_U0_Sl_CE_UNCONNECTED), - .Sl_DBus(Sl_DBus), - .Sl_Ready(Sl_Ready), - .Sl_UE(NLW_U0_Sl_UE_UNCONNECTED), - .Sl_Wait(NLW_U0_Sl_Wait_UNCONNECTED), - .UE(NLW_U0_UE_UNCONNECTED)); -endmodule - -(* C_ARBITRATION = "0" *) (* C_BASEADDR = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) (* C_BRAM_AWIDTH = "32" *) -(* C_CE_COUNTER_WIDTH = "0" *) (* C_CE_FAILING_REGISTERS = "0" *) (* C_ECC = "0" *) -(* C_ECC_ONOFF_REGISTER = "0" *) (* C_ECC_ONOFF_RESET_VALUE = "1" *) (* C_ECC_STATUS_REGISTERS = "0" *) -(* C_FAMILY = "artix7" *) (* C_FAULT_INJECT = "0" *) (* C_HIGHADDR = "64'b0000000000000000000000000000000000000000000000000111111111111111" *) -(* C_INTERCONNECT = "0" *) (* C_LMB_AWIDTH = "32" *) (* C_LMB_DWIDTH = "32" *) -(* C_LMB_PROTOCOL = "0" *) (* C_MASK = "64'b0000000000000000000000000000000001000000000000000000000000000000" *) (* C_MASK1 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) -(* C_MASK2 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK3 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK4 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) -(* C_MASK5 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK6 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) (* C_MASK7 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) -(* C_NUM_LMB = "1" *) (* C_S_AXI_CTRL_ADDR_WIDTH = "32" *) (* C_S_AXI_CTRL_BASEADDR = "32'b11111111111111111111111111111111" *) -(* C_S_AXI_CTRL_DATA_WIDTH = "32" *) (* C_S_AXI_CTRL_HIGHADDR = "32'b00000000000000000000000000000000" *) (* C_UE_FAILING_REGISTERS = "0" *) -(* C_WRITE_ACCESS = "2" *) (* ORIG_REF_NAME = "lmb_bram_if_cntlr" *) -module mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr - (LMB_Clk, - LMB_Rst, - LMB_ABus, - LMB_WriteDBus, - LMB_AddrStrobe, - LMB_ReadStrobe, - LMB_WriteStrobe, - LMB_BE, - Sl_DBus, - Sl_Ready, - Sl_Wait, - Sl_UE, - Sl_CE, - LMB1_ABus, - LMB1_WriteDBus, - LMB1_AddrStrobe, - LMB1_ReadStrobe, - LMB1_WriteStrobe, - LMB1_BE, - Sl1_DBus, - Sl1_Ready, - Sl1_Wait, - Sl1_UE, - Sl1_CE, - LMB2_ABus, - LMB2_WriteDBus, - LMB2_AddrStrobe, - LMB2_ReadStrobe, - LMB2_WriteStrobe, - LMB2_BE, - Sl2_DBus, - Sl2_Ready, - Sl2_Wait, - Sl2_UE, - Sl2_CE, - LMB3_ABus, - LMB3_WriteDBus, - LMB3_AddrStrobe, - LMB3_ReadStrobe, - LMB3_WriteStrobe, - LMB3_BE, - Sl3_DBus, - Sl3_Ready, - Sl3_Wait, - Sl3_UE, - Sl3_CE, - LMB4_ABus, - LMB4_WriteDBus, - LMB4_AddrStrobe, - LMB4_ReadStrobe, - LMB4_WriteStrobe, - LMB4_BE, - Sl4_DBus, - Sl4_Ready, - Sl4_Wait, - Sl4_UE, - Sl4_CE, - LMB5_ABus, - LMB5_WriteDBus, - LMB5_AddrStrobe, - LMB5_ReadStrobe, - LMB5_WriteStrobe, - LMB5_BE, - Sl5_DBus, - Sl5_Ready, - Sl5_Wait, - Sl5_UE, - Sl5_CE, - LMB6_ABus, - LMB6_WriteDBus, - LMB6_AddrStrobe, - LMB6_ReadStrobe, - LMB6_WriteStrobe, - LMB6_BE, - Sl6_DBus, - Sl6_Ready, - Sl6_Wait, - Sl6_UE, - Sl6_CE, - LMB7_ABus, - LMB7_WriteDBus, - LMB7_AddrStrobe, - LMB7_ReadStrobe, - LMB7_WriteStrobe, - LMB7_BE, - Sl7_DBus, - Sl7_Ready, - Sl7_Wait, - Sl7_UE, - Sl7_CE, - BRAM_Rst_A, - BRAM_Clk_A, - BRAM_Addr_A, - BRAM_EN_A, - BRAM_WEN_A, - BRAM_Dout_A, - BRAM_Din_A, - S_AXI_CTRL_ACLK, - S_AXI_CTRL_ARESETN, - S_AXI_CTRL_AWADDR, - S_AXI_CTRL_AWVALID, - S_AXI_CTRL_AWREADY, - S_AXI_CTRL_WDATA, - S_AXI_CTRL_WSTRB, - S_AXI_CTRL_WVALID, - S_AXI_CTRL_WREADY, - S_AXI_CTRL_BRESP, - S_AXI_CTRL_BVALID, - S_AXI_CTRL_BREADY, - S_AXI_CTRL_ARADDR, - S_AXI_CTRL_ARVALID, - S_AXI_CTRL_ARREADY, - S_AXI_CTRL_RDATA, - S_AXI_CTRL_RRESP, - S_AXI_CTRL_RVALID, - S_AXI_CTRL_RREADY, - UE, - CE, - Interrupt); - input LMB_Clk; - input LMB_Rst; - input [0:31]LMB_ABus; - input [0:31]LMB_WriteDBus; - input LMB_AddrStrobe; - input LMB_ReadStrobe; - input LMB_WriteStrobe; - input [0:3]LMB_BE; - output [0:31]Sl_DBus; - output Sl_Ready; - output Sl_Wait; - output Sl_UE; - output Sl_CE; - input [0:31]LMB1_ABus; - input [0:31]LMB1_WriteDBus; - input LMB1_AddrStrobe; - input LMB1_ReadStrobe; - input LMB1_WriteStrobe; - input [0:3]LMB1_BE; - output [0:31]Sl1_DBus; - output Sl1_Ready; - output Sl1_Wait; - output Sl1_UE; - output Sl1_CE; - input [0:31]LMB2_ABus; - input [0:31]LMB2_WriteDBus; - input LMB2_AddrStrobe; - input LMB2_ReadStrobe; - input LMB2_WriteStrobe; - input [0:3]LMB2_BE; - output [0:31]Sl2_DBus; - output Sl2_Ready; - output Sl2_Wait; - output Sl2_UE; - output Sl2_CE; - input [0:31]LMB3_ABus; - input [0:31]LMB3_WriteDBus; - input LMB3_AddrStrobe; - input LMB3_ReadStrobe; - input LMB3_WriteStrobe; - input [0:3]LMB3_BE; - output [0:31]Sl3_DBus; - output Sl3_Ready; - output Sl3_Wait; - output Sl3_UE; - output Sl3_CE; - input [0:31]LMB4_ABus; - input [0:31]LMB4_WriteDBus; - input LMB4_AddrStrobe; - input LMB4_ReadStrobe; - input LMB4_WriteStrobe; - input [0:3]LMB4_BE; - output [0:31]Sl4_DBus; - output Sl4_Ready; - output Sl4_Wait; - output Sl4_UE; - output Sl4_CE; - input [0:31]LMB5_ABus; - input [0:31]LMB5_WriteDBus; - input LMB5_AddrStrobe; - input LMB5_ReadStrobe; - input LMB5_WriteStrobe; - input [0:3]LMB5_BE; - output [0:31]Sl5_DBus; - output Sl5_Ready; - output Sl5_Wait; - output Sl5_UE; - output Sl5_CE; - input [0:31]LMB6_ABus; - input [0:31]LMB6_WriteDBus; - input LMB6_AddrStrobe; - input LMB6_ReadStrobe; - input LMB6_WriteStrobe; - input [0:3]LMB6_BE; - output [0:31]Sl6_DBus; - output Sl6_Ready; - output Sl6_Wait; - output Sl6_UE; - output Sl6_CE; - input [0:31]LMB7_ABus; - input [0:31]LMB7_WriteDBus; - input LMB7_AddrStrobe; - input LMB7_ReadStrobe; - input LMB7_WriteStrobe; - input [0:3]LMB7_BE; - output [0:31]Sl7_DBus; - output Sl7_Ready; - output Sl7_Wait; - output Sl7_UE; - output Sl7_CE; - output BRAM_Rst_A; - output BRAM_Clk_A; - output [0:31]BRAM_Addr_A; - output BRAM_EN_A; - output [0:3]BRAM_WEN_A; - output [0:31]BRAM_Dout_A; - input [0:31]BRAM_Din_A; - input S_AXI_CTRL_ACLK; - input S_AXI_CTRL_ARESETN; - input [31:0]S_AXI_CTRL_AWADDR; - input S_AXI_CTRL_AWVALID; - output S_AXI_CTRL_AWREADY; - input [31:0]S_AXI_CTRL_WDATA; - input [3:0]S_AXI_CTRL_WSTRB; - input S_AXI_CTRL_WVALID; - output S_AXI_CTRL_WREADY; - output [1:0]S_AXI_CTRL_BRESP; - output S_AXI_CTRL_BVALID; - input S_AXI_CTRL_BREADY; - input [31:0]S_AXI_CTRL_ARADDR; - input S_AXI_CTRL_ARVALID; - output S_AXI_CTRL_ARREADY; - output [31:0]S_AXI_CTRL_RDATA; - output [1:0]S_AXI_CTRL_RRESP; - output S_AXI_CTRL_RVALID; - input S_AXI_CTRL_RREADY; - output UE; - output CE; - output Interrupt; - - wire \<const0> ; - wire [0:31]BRAM_Din_A; - wire [0:3]BRAM_WEN_A; - wire [0:31]LMB_ABus; - wire LMB_AddrStrobe; - wire [0:3]LMB_BE; - wire LMB_Clk; - wire LMB_Rst; - wire [0:31]LMB_WriteDBus; - wire LMB_WriteStrobe; - wire \No_ECC.Sl_Rdy_i_1_n_0 ; - wire \No_ECC.lmb_as_i_1_n_0 ; - wire Sl_Rdy; - wire Sl_Ready; - wire lmb_as; - - assign BRAM_Addr_A[0:31] = LMB_ABus; - assign BRAM_Clk_A = LMB_Clk; - assign BRAM_Dout_A[0:31] = LMB_WriteDBus; - assign BRAM_EN_A = LMB_AddrStrobe; + assign BRAM_Addr_A[0:31] = LMB_ABus; + assign BRAM_Clk_A = LMB_Clk; + assign BRAM_Dout_A[0:31] = LMB_WriteDBus; + assign BRAM_EN_A = LMB_AddrStrobe; assign BRAM_Rst_A = \<const0> ; assign CE = \<const0> ; assign Interrupt = \<const0> ; @@ -856,45 +586,50 @@ module mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr assign Sl_Wait = \<const0> ; assign UE = \<const0> ; (* SOFT_HLUTNM = "soft_lutpair1" *) - LUT3 #( - .INIT(8'h40)) + LUT4 #( + .INIT(16'h0200)) \BRAM_WEN_A[0]_INST_0 - (.I0(LMB_ABus[1]), - .I1(LMB_WriteStrobe), - .I2(LMB_BE[0]), + (.I0(LMB_WriteStrobe), + .I1(LMB_ABus[1]), + .I2(LMB_ABus[0]), + .I3(LMB_BE[0]), .O(BRAM_WEN_A[0])); - (* SOFT_HLUTNM = "soft_lutpair1" *) - LUT3 #( - .INIT(8'h40)) + (* SOFT_HLUTNM = "soft_lutpair0" *) + LUT4 #( + .INIT(16'h0200)) \BRAM_WEN_A[1]_INST_0 - (.I0(LMB_ABus[1]), - .I1(LMB_WriteStrobe), - .I2(LMB_BE[1]), + (.I0(LMB_WriteStrobe), + .I1(LMB_ABus[1]), + .I2(LMB_ABus[0]), + .I3(LMB_BE[1]), .O(BRAM_WEN_A[1])); - (* SOFT_HLUTNM = "soft_lutpair0" *) - LUT3 #( - .INIT(8'h40)) + (* SOFT_HLUTNM = "soft_lutpair1" *) + LUT4 #( + .INIT(16'h0200)) \BRAM_WEN_A[2]_INST_0 - (.I0(LMB_ABus[1]), - .I1(LMB_WriteStrobe), - .I2(LMB_BE[2]), + (.I0(LMB_WriteStrobe), + .I1(LMB_ABus[1]), + .I2(LMB_ABus[0]), + .I3(LMB_BE[2]), .O(BRAM_WEN_A[2])); (* SOFT_HLUTNM = "soft_lutpair0" *) - LUT3 #( - .INIT(8'h40)) + LUT4 #( + .INIT(16'h0200)) \BRAM_WEN_A[3]_INST_0 - (.I0(LMB_ABus[1]), - .I1(LMB_WriteStrobe), - .I2(LMB_BE[3]), + (.I0(LMB_WriteStrobe), + .I1(LMB_ABus[1]), + .I2(LMB_ABus[0]), + .I3(LMB_BE[3]), .O(BRAM_WEN_A[3])); GND GND (.G(\<const0> )); (* SOFT_HLUTNM = "soft_lutpair2" *) - LUT2 #( - .INIT(4'h1)) + LUT3 #( + .INIT(8'h01)) \No_ECC.Sl_Rdy_i_1 - (.I0(LMB_ABus[1]), - .I1(LMB_Rst), + (.I0(LMB_ABus[0]), + .I1(LMB_ABus[1]), + .I2(LMB_Rst), .O(\No_ECC.Sl_Rdy_i_1_n_0 )); FDRE \No_ECC.Sl_Rdy_reg (.C(LMB_Clk), @@ -922,6 +657,276 @@ module mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr .I1(Sl_Rdy), .O(Sl_Ready)); endmodule + +(* CHECK_LICENSE_TYPE = "mb_design_1_lmb_bram_if_cntlr_0_0,lmb_bram_if_cntlr,{}" *) (* downgradeipidentifiedwarnings = "yes" *) (* x_core_info = "lmb_bram_if_cntlr,Vivado 2024.1.2" *) +(* NotValidForBitStream *) +module mb_design_1_lmb_bram_if_cntlr_0_0 + (LMB_Clk, + LMB_Rst, + LMB_ABus, + LMB_WriteDBus, + LMB_AddrStrobe, + LMB_ReadStrobe, + LMB_WriteStrobe, + LMB_BE, + Sl_DBus, + Sl_Ready, + Sl_Wait, + Sl_UE, + Sl_CE, + BRAM_Rst_A, + BRAM_Clk_A, + BRAM_Addr_A, + BRAM_EN_A, + BRAM_WEN_A, + BRAM_Dout_A, + BRAM_Din_A); + (* x_interface_info = "xilinx.com:signal:clock:1.0 CLK.LMB_Clk CLK" *) (* x_interface_parameter = "XIL_INTERFACENAME CLK.LMB_Clk, ASSOCIATED_BUSIF SLMB:SLMB1:SLMB2:SLMB3:SLMB4:SLMB5:SLMB6:SLMB7, ASSOCIATED_RESET LMB_Rst, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0" *) input LMB_Clk; + (* x_interface_info = "xilinx.com:signal:reset:1.0 RST.LMB_Rst RST" *) (* x_interface_parameter = "XIL_INTERFACENAME RST.LMB_Rst, POLARITY ACTIVE_HIGH, TYPE INTERCONNECT, INSERT_VIP 0" *) input LMB_Rst; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB ABUS" *) (* x_interface_parameter = "XIL_INTERFACENAME SLMB, ADDR_WIDTH 32, DATA_WIDTH 32, READ_WRITE_MODE READ_WRITE, PROTOCOL STANDARD" *) input [0:31]LMB_ABus; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB WRITEDBUS" *) input [0:31]LMB_WriteDBus; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB ADDRSTROBE" *) input LMB_AddrStrobe; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB READSTROBE" *) input LMB_ReadStrobe; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB WRITESTROBE" *) input LMB_WriteStrobe; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB BE" *) input [0:3]LMB_BE; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB READDBUS" *) output [0:31]Sl_DBus; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB READY" *) output Sl_Ready; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB WAIT" *) output Sl_Wait; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB UE" *) output Sl_UE; + (* x_interface_info = "xilinx.com:interface:lmb:1.0 SLMB CE" *) output Sl_CE; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT RST" *) (* x_interface_parameter = "XIL_INTERFACENAME BRAM_PORT, MEM_SIZE 32768, MASTER_TYPE BRAM_CTRL, MEM_WIDTH 32, MEM_ECC NONE, READ_LATENCY 1" *) output BRAM_Rst_A; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT CLK" *) output BRAM_Clk_A; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT ADDR" *) output [0:31]BRAM_Addr_A; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT EN" *) output BRAM_EN_A; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT WE" *) output [0:3]BRAM_WEN_A; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT DIN" *) output [0:31]BRAM_Dout_A; + (* x_interface_info = "xilinx.com:interface:bram:1.0 BRAM_PORT DOUT" *) input [0:31]BRAM_Din_A; + + wire \<const0> ; + wire [0:31]BRAM_Addr_A; + wire BRAM_Clk_A; + wire [0:31]BRAM_Din_A; + wire [0:31]BRAM_Dout_A; + wire BRAM_EN_A; + wire [0:3]BRAM_WEN_A; + wire [0:31]LMB_ABus; + wire LMB_AddrStrobe; + wire [0:3]LMB_BE; + wire LMB_Clk; + wire LMB_Rst; + wire [0:31]LMB_WriteDBus; + wire LMB_WriteStrobe; + wire [0:31]Sl_DBus; + wire Sl_Ready; + wire NLW_U0_BRAM_Rst_A_UNCONNECTED; + wire NLW_U0_CE_UNCONNECTED; + wire NLW_U0_Interrupt_UNCONNECTED; + wire NLW_U0_S_AXI_CTRL_ARREADY_UNCONNECTED; + wire NLW_U0_S_AXI_CTRL_AWREADY_UNCONNECTED; + wire NLW_U0_S_AXI_CTRL_BVALID_UNCONNECTED; + wire NLW_U0_S_AXI_CTRL_RVALID_UNCONNECTED; + wire NLW_U0_S_AXI_CTRL_WREADY_UNCONNECTED; + wire NLW_U0_Sl1_CE_UNCONNECTED; + wire NLW_U0_Sl1_Ready_UNCONNECTED; + wire NLW_U0_Sl1_UE_UNCONNECTED; + wire NLW_U0_Sl1_Wait_UNCONNECTED; + wire NLW_U0_Sl2_CE_UNCONNECTED; + wire NLW_U0_Sl2_Ready_UNCONNECTED; + wire NLW_U0_Sl2_UE_UNCONNECTED; + wire NLW_U0_Sl2_Wait_UNCONNECTED; + wire NLW_U0_Sl3_CE_UNCONNECTED; + wire NLW_U0_Sl3_Ready_UNCONNECTED; + wire NLW_U0_Sl3_UE_UNCONNECTED; + wire NLW_U0_Sl3_Wait_UNCONNECTED; + wire NLW_U0_Sl4_CE_UNCONNECTED; + wire NLW_U0_Sl4_Ready_UNCONNECTED; + wire NLW_U0_Sl4_UE_UNCONNECTED; + wire NLW_U0_Sl4_Wait_UNCONNECTED; + wire NLW_U0_Sl5_CE_UNCONNECTED; + wire NLW_U0_Sl5_Ready_UNCONNECTED; + wire NLW_U0_Sl5_UE_UNCONNECTED; + wire NLW_U0_Sl5_Wait_UNCONNECTED; + wire NLW_U0_Sl6_CE_UNCONNECTED; + wire NLW_U0_Sl6_Ready_UNCONNECTED; + wire NLW_U0_Sl6_UE_UNCONNECTED; + wire NLW_U0_Sl6_Wait_UNCONNECTED; + wire NLW_U0_Sl7_CE_UNCONNECTED; + wire NLW_U0_Sl7_Ready_UNCONNECTED; + wire NLW_U0_Sl7_UE_UNCONNECTED; + wire NLW_U0_Sl7_Wait_UNCONNECTED; + wire NLW_U0_Sl_CE_UNCONNECTED; + wire NLW_U0_Sl_UE_UNCONNECTED; + wire NLW_U0_Sl_Wait_UNCONNECTED; + wire NLW_U0_UE_UNCONNECTED; + wire [1:0]NLW_U0_S_AXI_CTRL_BRESP_UNCONNECTED; + wire [31:0]NLW_U0_S_AXI_CTRL_RDATA_UNCONNECTED; + wire [1:0]NLW_U0_S_AXI_CTRL_RRESP_UNCONNECTED; + wire [0:31]NLW_U0_Sl1_DBus_UNCONNECTED; + wire [0:31]NLW_U0_Sl2_DBus_UNCONNECTED; + wire [0:31]NLW_U0_Sl3_DBus_UNCONNECTED; + wire [0:31]NLW_U0_Sl4_DBus_UNCONNECTED; + wire [0:31]NLW_U0_Sl5_DBus_UNCONNECTED; + wire [0:31]NLW_U0_Sl6_DBus_UNCONNECTED; + wire [0:31]NLW_U0_Sl7_DBus_UNCONNECTED; + + assign BRAM_Rst_A = \<const0> ; + assign Sl_CE = \<const0> ; + assign Sl_UE = \<const0> ; + assign Sl_Wait = \<const0> ; + GND GND + (.G(\<const0> )); + (* C_ARBITRATION = "0" *) + (* C_BASEADDR = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) + (* C_BRAM_AWIDTH = "32" *) + (* C_CE_COUNTER_WIDTH = "0" *) + (* C_CE_FAILING_REGISTERS = "0" *) + (* C_ECC = "0" *) + (* C_ECC_ONOFF_REGISTER = "0" *) + (* C_ECC_ONOFF_RESET_VALUE = "1" *) + (* C_ECC_STATUS_REGISTERS = "0" *) + (* C_FAMILY = "artix7" *) + (* C_FAULT_INJECT = "0" *) + (* C_HIGHADDR = "64'b0000000000000000000000000000000000000000000000000111111111111111" *) + (* C_INTERCONNECT = "0" *) + (* C_LMB_AWIDTH = "32" *) + (* C_LMB_DWIDTH = "32" *) + (* C_LMB_PROTOCOL = "0" *) + (* C_MASK = "64'b0000000000000000000000000000000011000000000000000000000000000000" *) + (* C_MASK1 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_MASK2 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_MASK3 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_MASK4 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_MASK5 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_MASK6 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_MASK7 = "64'b0000000000000000000000000000000000000000100000000000000000000000" *) + (* C_NUM_LMB = "1" *) + (* C_S_AXI_CTRL_ADDR_WIDTH = "32" *) + (* C_S_AXI_CTRL_BASEADDR = "32'b11111111111111111111111111111111" *) + (* C_S_AXI_CTRL_DATA_WIDTH = "32" *) + (* C_S_AXI_CTRL_HIGHADDR = "32'b00000000000000000000000000000000" *) + (* C_UE_FAILING_REGISTERS = "0" *) + (* C_WRITE_ACCESS = "2" *) + mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr U0 + (.BRAM_Addr_A(BRAM_Addr_A), + .BRAM_Clk_A(BRAM_Clk_A), + .BRAM_Din_A(BRAM_Din_A), + .BRAM_Dout_A(BRAM_Dout_A), + .BRAM_EN_A(BRAM_EN_A), + .BRAM_Rst_A(NLW_U0_BRAM_Rst_A_UNCONNECTED), + .BRAM_WEN_A(BRAM_WEN_A), + .CE(NLW_U0_CE_UNCONNECTED), + .Interrupt(NLW_U0_Interrupt_UNCONNECTED), + .LMB1_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB1_AddrStrobe(1'b0), + .LMB1_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB1_ReadStrobe(1'b0), + .LMB1_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB1_WriteStrobe(1'b0), + .LMB2_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB2_AddrStrobe(1'b0), + .LMB2_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB2_ReadStrobe(1'b0), + .LMB2_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB2_WriteStrobe(1'b0), + .LMB3_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB3_AddrStrobe(1'b0), + .LMB3_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB3_ReadStrobe(1'b0), + .LMB3_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB3_WriteStrobe(1'b0), + .LMB4_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB4_AddrStrobe(1'b0), + .LMB4_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB4_ReadStrobe(1'b0), + .LMB4_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB4_WriteStrobe(1'b0), + .LMB5_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB5_AddrStrobe(1'b0), + .LMB5_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB5_ReadStrobe(1'b0), + .LMB5_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB5_WriteStrobe(1'b0), + .LMB6_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB6_AddrStrobe(1'b0), + .LMB6_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB6_ReadStrobe(1'b0), + .LMB6_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB6_WriteStrobe(1'b0), + .LMB7_ABus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB7_AddrStrobe(1'b0), + .LMB7_BE({1'b0,1'b0,1'b0,1'b0}), + .LMB7_ReadStrobe(1'b0), + .LMB7_WriteDBus({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .LMB7_WriteStrobe(1'b0), + .LMB_ABus(LMB_ABus), + .LMB_AddrStrobe(LMB_AddrStrobe), + .LMB_BE(LMB_BE), + .LMB_Clk(LMB_Clk), + .LMB_ReadStrobe(1'b0), + .LMB_Rst(LMB_Rst), + .LMB_WriteDBus(LMB_WriteDBus), + .LMB_WriteStrobe(LMB_WriteStrobe), + .S_AXI_CTRL_ACLK(1'b0), + .S_AXI_CTRL_ARADDR({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .S_AXI_CTRL_ARESETN(1'b0), + .S_AXI_CTRL_ARREADY(NLW_U0_S_AXI_CTRL_ARREADY_UNCONNECTED), + .S_AXI_CTRL_ARVALID(1'b0), + .S_AXI_CTRL_AWADDR({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .S_AXI_CTRL_AWREADY(NLW_U0_S_AXI_CTRL_AWREADY_UNCONNECTED), + .S_AXI_CTRL_AWVALID(1'b0), + .S_AXI_CTRL_BREADY(1'b0), + .S_AXI_CTRL_BRESP(NLW_U0_S_AXI_CTRL_BRESP_UNCONNECTED[1:0]), + .S_AXI_CTRL_BVALID(NLW_U0_S_AXI_CTRL_BVALID_UNCONNECTED), + .S_AXI_CTRL_RDATA(NLW_U0_S_AXI_CTRL_RDATA_UNCONNECTED[31:0]), + .S_AXI_CTRL_RREADY(1'b0), + .S_AXI_CTRL_RRESP(NLW_U0_S_AXI_CTRL_RRESP_UNCONNECTED[1:0]), + .S_AXI_CTRL_RVALID(NLW_U0_S_AXI_CTRL_RVALID_UNCONNECTED), + .S_AXI_CTRL_WDATA({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .S_AXI_CTRL_WREADY(NLW_U0_S_AXI_CTRL_WREADY_UNCONNECTED), + .S_AXI_CTRL_WSTRB({1'b0,1'b0,1'b0,1'b0}), + .S_AXI_CTRL_WVALID(1'b0), + .Sl1_CE(NLW_U0_Sl1_CE_UNCONNECTED), + .Sl1_DBus(NLW_U0_Sl1_DBus_UNCONNECTED[0:31]), + .Sl1_Ready(NLW_U0_Sl1_Ready_UNCONNECTED), + .Sl1_UE(NLW_U0_Sl1_UE_UNCONNECTED), + .Sl1_Wait(NLW_U0_Sl1_Wait_UNCONNECTED), + .Sl2_CE(NLW_U0_Sl2_CE_UNCONNECTED), + .Sl2_DBus(NLW_U0_Sl2_DBus_UNCONNECTED[0:31]), + .Sl2_Ready(NLW_U0_Sl2_Ready_UNCONNECTED), + .Sl2_UE(NLW_U0_Sl2_UE_UNCONNECTED), + .Sl2_Wait(NLW_U0_Sl2_Wait_UNCONNECTED), + .Sl3_CE(NLW_U0_Sl3_CE_UNCONNECTED), + .Sl3_DBus(NLW_U0_Sl3_DBus_UNCONNECTED[0:31]), + .Sl3_Ready(NLW_U0_Sl3_Ready_UNCONNECTED), + .Sl3_UE(NLW_U0_Sl3_UE_UNCONNECTED), + .Sl3_Wait(NLW_U0_Sl3_Wait_UNCONNECTED), + .Sl4_CE(NLW_U0_Sl4_CE_UNCONNECTED), + .Sl4_DBus(NLW_U0_Sl4_DBus_UNCONNECTED[0:31]), + .Sl4_Ready(NLW_U0_Sl4_Ready_UNCONNECTED), + .Sl4_UE(NLW_U0_Sl4_UE_UNCONNECTED), + .Sl4_Wait(NLW_U0_Sl4_Wait_UNCONNECTED), + .Sl5_CE(NLW_U0_Sl5_CE_UNCONNECTED), + .Sl5_DBus(NLW_U0_Sl5_DBus_UNCONNECTED[0:31]), + .Sl5_Ready(NLW_U0_Sl5_Ready_UNCONNECTED), + .Sl5_UE(NLW_U0_Sl5_UE_UNCONNECTED), + .Sl5_Wait(NLW_U0_Sl5_Wait_UNCONNECTED), + .Sl6_CE(NLW_U0_Sl6_CE_UNCONNECTED), + .Sl6_DBus(NLW_U0_Sl6_DBus_UNCONNECTED[0:31]), + .Sl6_Ready(NLW_U0_Sl6_Ready_UNCONNECTED), + .Sl6_UE(NLW_U0_Sl6_UE_UNCONNECTED), + .Sl6_Wait(NLW_U0_Sl6_Wait_UNCONNECTED), + .Sl7_CE(NLW_U0_Sl7_CE_UNCONNECTED), + .Sl7_DBus(NLW_U0_Sl7_DBus_UNCONNECTED[0:31]), + .Sl7_Ready(NLW_U0_Sl7_Ready_UNCONNECTED), + .Sl7_UE(NLW_U0_Sl7_UE_UNCONNECTED), + .Sl7_Wait(NLW_U0_Sl7_Wait_UNCONNECTED), + .Sl_CE(NLW_U0_Sl_CE_UNCONNECTED), + .Sl_DBus(Sl_DBus), + .Sl_Ready(Sl_Ready), + .Sl_UE(NLW_U0_Sl_UE_UNCONNECTED), + .Sl_Wait(NLW_U0_Sl_Wait_UNCONNECTED), + .UE(NLW_U0_UE_UNCONNECTED)); +endmodule `ifndef GLBL `define GLBL `timescale 1 ps / 1 ps diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl index 51b7299..136d81d 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl @@ -2,10 +2,10 @@ -- Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. -- -------------------------------------------------------------------------------- -- Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 --- Date : Tue Mar 4 22:37:17 2025 +-- Date : Thu Mar 20 17:31:20 2025 -- Host : hogtest running 64-bit unknown --- Command : write_vhdl -force -mode funcsim --- /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl +-- Command : write_vhdl -force -mode funcsim -rename_top mb_design_1_lmb_bram_if_cntlr_0_0 -prefix +-- mb_design_1_lmb_bram_if_cntlr_0_0_ mb_design_1_lmb_bram_if_cntlr_0_0_sim_netlist.vhdl -- Design : mb_design_1_lmb_bram_if_cntlr_0_0 -- Purpose : This VHDL netlist is a functional simulation representation of the design and should not be modified or -- synthesized. This netlist cannot be used for SDF annotated simulation. @@ -170,7 +170,7 @@ entity mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr is attribute C_LMB_PROTOCOL : integer; attribute C_LMB_PROTOCOL of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is 0; attribute C_MASK : string; - attribute C_MASK of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is "64'b0000000000000000000000000000000001000000000000000000000000000000"; + attribute C_MASK of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is "64'b0000000000000000000000000000000011000000000000000000000000000000"; attribute C_MASK1 : string; attribute C_MASK1 of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is "64'b0000000000000000000000000000000000000000100000000000000000000000"; attribute C_MASK2 : string; @@ -199,8 +199,6 @@ entity mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr is attribute C_UE_FAILING_REGISTERS of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is 0; attribute C_WRITE_ACCESS : integer; attribute C_WRITE_ACCESS of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is 2; - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr : entity is "lmb_bram_if_cntlr"; end mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr; architecture STRUCTURE of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr is @@ -216,8 +214,8 @@ architecture STRUCTURE of mb_design_1_lmb_bram_if_cntlr_0_0_lmb_bram_if_cntlr is signal lmb_as : STD_LOGIC; attribute SOFT_HLUTNM : string; attribute SOFT_HLUTNM of \BRAM_WEN_A[0]_INST_0\ : label is "soft_lutpair1"; - attribute SOFT_HLUTNM of \BRAM_WEN_A[1]_INST_0\ : label is "soft_lutpair1"; - attribute SOFT_HLUTNM of \BRAM_WEN_A[2]_INST_0\ : label is "soft_lutpair0"; + attribute SOFT_HLUTNM of \BRAM_WEN_A[1]_INST_0\ : label is "soft_lutpair0"; + attribute SOFT_HLUTNM of \BRAM_WEN_A[2]_INST_0\ : label is "soft_lutpair1"; attribute SOFT_HLUTNM of \BRAM_WEN_A[3]_INST_0\ : label is "soft_lutpair0"; attribute SOFT_HLUTNM of \No_ECC.Sl_Rdy_i_1\ : label is "soft_lutpair2"; attribute SOFT_HLUTNM of \No_ECC.lmb_as_i_1\ : label is "soft_lutpair2"; @@ -532,57 +530,62 @@ begin \^lmb_addrstrobe\ <= LMB_AddrStrobe; \^lmb_clk\ <= LMB_Clk; \^lmb_writedbus\(0 to 31) <= LMB_WriteDBus(0 to 31); -\BRAM_WEN_A[0]_INST_0\: unisim.vcomponents.LUT3 +\BRAM_WEN_A[0]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"40" + INIT => X"0200" ) port map ( - I0 => \^lmb_abus\(1), - I1 => LMB_WriteStrobe, - I2 => LMB_BE(0), + I0 => LMB_WriteStrobe, + I1 => \^lmb_abus\(1), + I2 => \^lmb_abus\(0), + I3 => LMB_BE(0), O => BRAM_WEN_A(0) ); -\BRAM_WEN_A[1]_INST_0\: unisim.vcomponents.LUT3 +\BRAM_WEN_A[1]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"40" + INIT => X"0200" ) port map ( - I0 => \^lmb_abus\(1), - I1 => LMB_WriteStrobe, - I2 => LMB_BE(1), + I0 => LMB_WriteStrobe, + I1 => \^lmb_abus\(1), + I2 => \^lmb_abus\(0), + I3 => LMB_BE(1), O => BRAM_WEN_A(1) ); -\BRAM_WEN_A[2]_INST_0\: unisim.vcomponents.LUT3 +\BRAM_WEN_A[2]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"40" + INIT => X"0200" ) port map ( - I0 => \^lmb_abus\(1), - I1 => LMB_WriteStrobe, - I2 => LMB_BE(2), + I0 => LMB_WriteStrobe, + I1 => \^lmb_abus\(1), + I2 => \^lmb_abus\(0), + I3 => LMB_BE(2), O => BRAM_WEN_A(2) ); -\BRAM_WEN_A[3]_INST_0\: unisim.vcomponents.LUT3 +\BRAM_WEN_A[3]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"40" + INIT => X"0200" ) port map ( - I0 => \^lmb_abus\(1), - I1 => LMB_WriteStrobe, - I2 => LMB_BE(3), + I0 => LMB_WriteStrobe, + I1 => \^lmb_abus\(1), + I2 => \^lmb_abus\(0), + I3 => LMB_BE(3), O => BRAM_WEN_A(3) ); GND: unisim.vcomponents.GND port map ( G => \<const0>\ ); -\No_ECC.Sl_Rdy_i_1\: unisim.vcomponents.LUT2 +\No_ECC.Sl_Rdy_i_1\: unisim.vcomponents.LUT3 generic map( - INIT => X"1" + INIT => X"01" ) port map ( - I0 => \^lmb_abus\(1), - I1 => LMB_Rst, + I0 => \^lmb_abus\(0), + I1 => \^lmb_abus\(1), + I2 => LMB_Rst, O => \No_ECC.Sl_Rdy_i_1_n_0\ ); \No_ECC.Sl_Rdy_reg\: unisim.vcomponents.FDRE @@ -742,7 +745,7 @@ architecture STRUCTURE of mb_design_1_lmb_bram_if_cntlr_0_0 is attribute C_LMB_PROTOCOL : integer; attribute C_LMB_PROTOCOL of U0 : label is 0; attribute C_MASK : string; - attribute C_MASK of U0 : label is "64'b0000000000000000000000000000000001000000000000000000000000000000"; + attribute C_MASK of U0 : label is "64'b0000000000000000000000000000000011000000000000000000000000000000"; attribute C_MASK1 : string; attribute C_MASK1 of U0 : label is "64'b0000000000000000000000000000000000000000100000000000000000000000"; attribute C_MASK2 : string; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.v index 71df21c..1a3d833 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.v +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.v @@ -2,10 +2,10 @@ // Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. // -------------------------------------------------------------------------------- // Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 -// Date : Tue Mar 4 22:37:17 2025 +// Date : Thu Mar 20 17:31:20 2025 // Host : hogtest running 64-bit unknown -// Command : write_verilog -force -mode synth_stub -// /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.v +// Command : write_verilog -force -mode synth_stub -rename_top mb_design_1_lmb_bram_if_cntlr_0_0 -prefix +// mb_design_1_lmb_bram_if_cntlr_0_0_ mb_design_1_lmb_bram_if_cntlr_0_0_stub.v // Design : mb_design_1_lmb_bram_if_cntlr_0_0 // Purpose : Stub declaration of top-level module interface // Device : xc7a200tsbg484-1 diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl index 2c27220..9eef112 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl @@ -2,10 +2,10 @@ -- Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. -- -------------------------------------------------------------------------------- -- Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 --- Date : Tue Mar 4 22:37:17 2025 +-- Date : Thu Mar 20 17:31:20 2025 -- Host : hogtest running 64-bit unknown --- Command : write_vhdl -force -mode synth_stub --- /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/mb_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl +-- Command : write_vhdl -force -mode synth_stub -rename_top mb_design_1_lmb_bram_if_cntlr_0_0 -prefix +-- mb_design_1_lmb_bram_if_cntlr_0_0_ mb_design_1_lmb_bram_if_cntlr_0_0_stub.vhdl -- Design : mb_design_1_lmb_bram_if_cntlr_0_0 -- Purpose : Stub declaration of top-level module interface -- Device : xc7a200tsbg484-1 diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/sim/mb_design_1_lmb_bram_if_cntlr_0_0.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/sim/mb_design_1_lmb_bram_if_cntlr_0_0.vhd index 4801360..bd9c3bb 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/sim/mb_design_1_lmb_bram_if_cntlr_0_0.vhd +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/sim/mb_design_1_lmb_bram_if_cntlr_0_0.vhd @@ -271,7 +271,7 @@ BEGIN C_HIGHADDR => X"0000000000007FFF", C_BASEADDR => X"0000000000000000", C_NUM_LMB => 1, - C_MASK => X"0000000040000000", + C_MASK => X"00000000c0000000", C_MASK1 => X"0000000000800000", C_MASK2 => X"0000000000800000", C_MASK3 => X"0000000000800000", diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/synth/mb_design_1_lmb_bram_if_cntlr_0_0.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/synth/mb_design_1_lmb_bram_if_cntlr_0_0.vhd index 9fed3b0..055f32e 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/synth/mb_design_1_lmb_bram_if_cntlr_0_0.vhd +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_lmb_bram_if_cntlr_0_0/synth/mb_design_1_lmb_bram_if_cntlr_0_0.vhd @@ -243,7 +243,7 @@ ARCHITECTURE mb_design_1_lmb_bram_if_cntlr_0_0_arch OF mb_design_1_lmb_bram_if_c ATTRIBUTE CHECK_LICENSE_TYPE : STRING; ATTRIBUTE CHECK_LICENSE_TYPE OF mb_design_1_lmb_bram_if_cntlr_0_0_arch : ARCHITECTURE IS "mb_design_1_lmb_bram_if_cntlr_0_0,lmb_bram_if_cntlr,{}"; ATTRIBUTE CORE_GENERATION_INFO : STRING; - ATTRIBUTE CORE_GENERATION_INFO OF mb_design_1_lmb_bram_if_cntlr_0_0_arch: ARCHITECTURE IS "mb_design_1_lmb_bram_if_cntlr_0_0,lmb_bram_if_cntlr,{x_ipProduct=Vivado 2024.1.2,x_ipVendor=xilinx.com,x_ipLibrary=ip,x_ipName=lmb_bram_if_cntlr,x_ipVersion=4.0,x_ipCoreRevision=24,x_ipLanguage=VHDL,x_ipSimLanguage=MIXED,C_FAMILY=artix7,C_HIGHADDR=0x0000000000007FFF,C_BASEADDR=0x0000000000000000,C_NUM_LMB=1,C_MASK=0x0000000040000000,C_MASK1=0x0000000000800000,C_MASK2=0x0000000000800000,C_MASK3=0x0000000000800000,C_MASK4=0x0000000000800000,C_MASK5=0x0000000000800000,C_MASK6=0x0000000000800000,C_M" & + ATTRIBUTE CORE_GENERATION_INFO OF mb_design_1_lmb_bram_if_cntlr_0_0_arch: ARCHITECTURE IS "mb_design_1_lmb_bram_if_cntlr_0_0,lmb_bram_if_cntlr,{x_ipProduct=Vivado 2024.1.2,x_ipVendor=xilinx.com,x_ipLibrary=ip,x_ipName=lmb_bram_if_cntlr,x_ipVersion=4.0,x_ipCoreRevision=24,x_ipLanguage=VHDL,x_ipSimLanguage=MIXED,C_FAMILY=artix7,C_HIGHADDR=0x0000000000007FFF,C_BASEADDR=0x0000000000000000,C_NUM_LMB=1,C_MASK=0x00000000c0000000,C_MASK1=0x0000000000800000,C_MASK2=0x0000000000800000,C_MASK3=0x0000000000800000,C_MASK4=0x0000000000800000,C_MASK5=0x0000000000800000,C_MASK6=0x0000000000800000,C_M" & "ASK7=0x0000000000800000,C_LMB_AWIDTH=32,C_LMB_DWIDTH=32,C_LMB_PROTOCOL=0,C_ARBITRATION=0,C_ECC=0,C_INTERCONNECT=0,C_FAULT_INJECT=0,C_CE_FAILING_REGISTERS=0,C_UE_FAILING_REGISTERS=0,C_ECC_STATUS_REGISTERS=0,C_ECC_ONOFF_REGISTER=0,C_ECC_ONOFF_RESET_VALUE=1,C_CE_COUNTER_WIDTH=0,C_WRITE_ACCESS=2,C_BRAM_AWIDTH=32,C_S_AXI_CTRL_ADDR_WIDTH=32,C_S_AXI_CTRL_DATA_WIDTH=32}"; ATTRIBUTE X_INTERFACE_INFO : STRING; ATTRIBUTE X_INTERFACE_PARAMETER : STRING; @@ -278,7 +278,7 @@ BEGIN C_HIGHADDR => X"0000000000007FFF", C_BASEADDR => X"0000000000000000", C_NUM_LMB => 1, - C_MASK => X"0000000040000000", + C_MASK => X"00000000c0000000", C_MASK1 => X"0000000000800000", C_MASK2 => X"0000000000800000", C_MASK3 => X"0000000000800000", diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0.dcp b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0.dcp index 4178a91a1ece933cd94f40915329a5a51ad9d39d..29f0b36cfad3f1c7433934c1e37c1c58430d8ec8 100644 GIT binary patch literal 119195 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�ye-|85JIzz$Ev=vGerV_Wz)iWAy#JkbXz5Tp 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 Y3GikG9rek;%fQQ^!NR~0dlsYw03Ti!*8l(j literal 107351 zcmWIWW@Zs#U|`^2xVj}J%0qys(2$9NA%%^Bft`VqAtkv$uOc@mG=!Cb`BBmF^rKU~ z^A{V4v|gVapSW>W<P@f*nWCy|D@+$Y5|o^@O#3wB@{c?lCpPl@{q8L7o-6M9CawDX zPWkK4ZzWaTm*Xl>S+r=*S&`VQQ-1Hhc;)8gH~uFzS0DVfMzW2`>C}!HnzM?`e;IBK zuY0g4L-dv$i=f?vnMG^+&))vHwdm(E`!!7rduK11Wy838p)21K-U7Buwah|6Oa;6p z#YLv`B(^J*1Se#)RUXnwe6wy&h|#q#9mRZo`MXxFX8U1jroU~=Kh?7lS1#R5Grw_R z%dT7dW^8}fs@JZxBag-N#LaJk4t|ZRyVBH?pX6TJDZX$kyRi0zw6{xc%5?v^yu9d_ z6ZfI4Q%0tb+c}lrX1Dg4sMiFQndM&ct;+JP)SS&1J!Nv&K7%ET%eq-76-*DSh!$AA za;N<5vw7Eb9k!h?KH@9;UgliZrFrTTygG~zG8d^Fy}m2{m`yY9Y+*N+b)Nr1<93{8 zx^At<7k_?dWLsmtGq>I8s&I$C*I!mF6hHPMGVN|F)1~X5a&zUrG*|RZDoNG8&(^SN z*UeSO-_84Iv-Caly&1dmW`rNBteroB+g#$<?dL}go?L1Q+ril^m$colCSbSw=lvbh z*B$Fx=2&>`mcDg(DNpKh>qXlt&3NYNtXcZqHhAr~9V&+dX0K?!yeU!O{8#xZ1C{%{ zkAF;LuC}<lTlBEQg{@T<O2-cy^n1!Ij1zkm@#=jSKhLX^Z%@B`e__so=|{9@RCx0H zOz1LKQog$V#LK70|3A(%`NfV%URSoHMEy-Tex`$ofx(A^fkBdilOZ=LJ|(p{Gd(Zf zFuo!wu_)dkzPO|`Nv{l?;2stoPp=J)&Ax3QQhR>=jxQ^DBZaK*n%8RFWvjdqbx5Pt zuqQ{ebA^(mXW`^}`;*tEr%#@KY4zgb^E<<jr)+Fs51g-h_pNEleEZsp>H42#;xrcj zF=;kk|E%D=M9v#lR_R3@IUMu+#WXJ#>3kG>SJ+(PYVc>tRFMz8CR>zV1u5Tt`F)<2 zLVMKwhYBAi3RWzx;@>(!%3!6$B#+>OiQc>+3l}SKU77jXHn43)Yr;4EfPJb$0#kTG z*9UY7=d`wb4SxNtQ*a5#6^~4&wwu{LI~OWfs7*53$gJA8Nonq!mkkDalDWMi3VHo2 zQk9<RomameT%jo^XMVr?>w5YA0`~A1F5H`0mwKsmtLbk_+NyQw@J-`f0kN|B?Voez z#UK2V_Q<S2gFENg?Luekn{21ELpENQRLCq_{*x!<HuqjheWS3gB2{d{9PGSFBJMFl zE$8>u9QIfoprLy@;7i6l(Oc7wxxBr&seJnz%^AGQzon#~5ATz>drB^H*|!v}mopi& zBH7K8)iZbfYWBMt-uL>n+|Ar0qIcb51kdhjmb;jHMAVjZzo7aHvq!5xB>Y>DzutcK z?GEjrlXh#9@79>+YOe2>$|*}Q^tF@z9Pb!<wB={mJB8+#N;~hS>d5_xOpTvbU)%PE zfpePrgt=;s(>Sk4ZJA;5it)xT+3VT!Ra%vj?x%;mofL89Q^b|5_`*5Y_P$&Z_5Hx( zce|g<-4FZyZLw@D*Ri=fe3m3A-Ed2(*=1(%*mm)~1E&LYPuojfskg7&*AV5%|BJKv zBFpc1qoaCRZ7wVyYLC>YwRMTJu>b5%QWRni@;MTq?Ut0&AknpPX=?<}ZMB^eH$0Ob zZU`|tl4OwJadg3BgBH$bM>vk()xY*c9yJ{^MEPtsWny4x<6>Zt!IzFRQXpj~C@IgK z7MOp_K;ZcO&zgR<QA>p;9@w?D(rJpXM~=^$Rlm}1ZggL}%xu$KhWmAVs(~7o8kOCT ze&4<O|D0XydiLbKx1@H~6bjs}-T(IJUyHW%nVwsBHm>w?mPnP<@nYuYPHfd=;ct!; z)|n|JbErc+WNFi3{h3m{{EH^6+^}3Gb&_P(HiNl7YMv9KH~!}OZ)Z2*=AY*!K8s$I zN%W;{R^ezVx|I8{S5R+FjF!+u-o<TS9B(l^=r`lr*YKZdLFPBE?+T(<=1uy}{Mgz0 zYE>HNT@R=0Q;I(yY_Rb?*8jP++`gmX_0}S(Uj?-%*7lTXh%b(CG(H))jz70Ya7w=I z;^Oa-8E026&X5SXcFXE;0ncJR@vE-FpYO&z<XF}jdQ(wG=#}l>^V*A+J@z%an>T6a zo)=e2R_wZYUxmf7bY|Y&RjG<G*<I61Ug!Q_@$IhDA(xNa7qe&=-PiB22@7jXUm|P2 zp37z}|KnAX4K0UN!-5%@_b0`;H_Cnu{k&lAp(9rxFOanseDmb;!5vjP3NrUvs|*rU zsxF?}t7vmQuXlx;i*>8^8aEf~_Mp2`6?xxGE&F5NhY8%<RR4oH>yr3Omsdr~2X@VA z{C7PmGEeJ@rE=uEJ$J(dr(OIq)nM<(N`tk=j-i(fR`#FlD%v#Z>9a@o7loW&c6Fh$ zeC70mwlXQIx)zhW)xP^2`+T&;r~dzp?Z0y8J&s#{D(P44`CCEBg4J7_53W0O_55u0 z$bfaHeG4Vr5^JWi_~<OvdOefnKO<_o+cIanzAPgHg9IbabXSmAl$Z;zvq9;OQG)UL zzlfZQFhdJhCj}5NOf~{h3Wf#-|5vEVB+QzpcO-n<iD_c<|B89u>($MfujD$tuxY7Y zN5g}j{gPc*+kP(nk-JbOf5N<+pB|dJ!kQ}5xmrg`oBkiXkhlAmUrx1nX6;0?C7VT7 zG6#A~Pt(lh?Yy6JUQ+9#LwcgK?Tc*ToThnJ8~>Tj+O4lrp2BePVf4dUhKC+Kd69BF zNwLGBcmC?$cZ*+^1%|zS(9~WN>&sELQ+fST@4sHHw^!dgr{_}`;uHPU@%4}UH+1g$ zx!wFzT{p{r<%V}ZViu<}%}<ow{`%Ulmf17gB)3n0Xu4M0)p4I{vFn+D%!i-P*&S=W zH`#i%n`?F3y4Z}P`>jG|?`wN+ox!`iLpGx6;(pZdy*%MgS_uOK!&U|c21V@oIx{am zIX|x?wW36?A|)AKPigz<cIs=K()ZBSS{ZUdSLdvcZeYQ;kLBO`_zQSHeJSt!{=K}9 zzmTV>oHx+G<btt*K|qHe`^%I1TAE=O&Yteq*Ywiy*46TBed*_O?quIntz${+(hK&a zGu&`U50{s3ov<Jvyd&}CN=r+J!=Em97+Fu_W<YiOBePd08n_u4?kF%YNMLolUU5cZ zK`PwIYa?oNqOXd6FBW?K<LB$2R-XA@(M($oux;5mdD@1Lf%V6h{o~knS?%qO*^_6O zDQ`K-H|3pi>!Dp6dqp*(%}p}@Z0^jQe1VHKP@>)-)A@~ahiA?$``KIg%{bM31AH&r zo!j}{&fZ?!)XT{0ZFSxEJNK=>-zl#9ezlxEW?gxFnz{d3{WJ1=@>fLI8--W~SjWhF zT@}kV-kSFJ*1{(X54%f${>`t$ceHKsV&{*ot%`|e?NVRU_7>*X=Dj|qH~sWh*8jWK zy*}9gV!N_Q+0ML*4e@-B_DfG{Uh}N+^ZPv|_qH?s%l^B3V}Mp%@9dRDdF8t@)Gj?{ zEHKQsj5A2*zw(S<YJuVZB?j4NZ{CWrWypKx8>;rCgk#qX{cx`tJA<_5_WQFhoc;2U zSQ<ywl@irhzopuW9}MC>`wBgknD**i+4QuWrJ?o8jbnSZ&HvTc&{y|q<1~3@dG1s0 zw<pLep4N?*I<I<IAc66;w}K$Yt(dO)jvcIX16X>t6+D$`HrN%pP_si(r9*eUflGvg zqfjJ&ZH|KEdX>j3OT3n@Hobb^EVWf{pOQgCqu-H2*CeCKt9rsW2iHX$cSv{~YGT3s z$IP2U!r;W8EVb&}DvYmZ#`m_mOXwX8S@B|`VK~<Twr5L~g~KGw9_`_BRA9?-@?$U1 z{Jg!IC9&h>+PCUX1(H`AZn<g-wwx~9b#{+aXivn!1Y_CoLw9EDJ`Fz9eOT<8dV29p zpW7}h>$YgK%ExM`Usl}V6*gy+WX#=F9IUPnoVD5?U)}pMLNl`Wx$=iZu}!`cXEVe& z&r~?xdFpFzfv)izi{OnxNmWU*F~^nqye9o%$Vol(aL!2u8;;u%^~-n9h-5#kll1<~ zmJf9un>GlGe=%HAE-+(;6r1vn>q>dSA?}-^&ha16NY<QFd`R(z-lh<Pr!gF59J?3g zFt0oAyzQCy<WS~gEDEv$9}e-ZVQ)Nn#_9)0_k{&nVvnX~?OJ2O_F!?3=blOZ@BOqb zc+8VrS3Z(mc8KS&ubI%)6K8cA?yKpF*Cp;a+UcUaVX~i2w%X>8NrrRHKh9AS*#0}1 z^_0TJtYg>GCM6lCDTS|nQhag?qvo^iJX)vhJd78!u1Iw}k?`<Y*KSvVs|G#R=1soy zO7mDI%Cy?v-8V6ME=OL9cy7wBTIJ>m>3`owoW9+_^f^7ateSP<i7%&0mIi2DI;AjW z#=Nyhf-N-9a2f>{p5AlTXyrQPfMxFDXNs&QpLs8&C%D4GV5M^CB;GY`CwFw5=bx-$ z8FF7@x_p^;a}&=&xiu=Hy2}(;g3q)oXEWQ)NZY$}lBMayqo<SfFQ1mQzE+!ZYh&FR zBTY8hymUDgp+#Q{)1Mh98qA&P{zQ1nbD!#G*?ug>_K)}cy>xVncv_@?-KJS5D-!*B zx>%WCozZtoTN-svwJ^BcAl@iWubcUl=-v(Uzxqr)buv?5Cc(D#<jONM#GgHVQKerK z)R*_7)jBeK>74HenO^%oQ(qa)v%`DBWzpFura!tGXK`ZJho-NG71=u6%6(k5>n!dV z8T>AfcH>Exnr7JLcG>9Ig$R*j9zFthE*njF5O-RkNqL$h%lF7*5w7iv&nWja$=fY0 zc=GM=^45*XAp-TwQWZX?>ngXMwpX9_UPAZBgU@Ti`HnYjSkfuplaa%7o&90N?9SzN z`%RK>XWn<LSa9~p&BvGS$Sw6{ec;GDKYUU)^M?srTGlhhUzp)<R-iaf=kd`pr^QxN z!{loO<7-niPi#82kbmD2!~PsKHva4~-&D_O*A7oNy^?>mI(16RmdLY@zE?~;9BvZg z_*(DO^hvv4gz2lYJy<Qpefs#8gR>t9_VO;O=9^#hP)onYH~DTV%b^0H_ya;aQiDZ% z`1-Tfs5j=bALX!FwlQIkQLN9j%a1?xp5g9)e5o@<Pqro4D6&E-d8%#mhn8c%yo5uI z!;h$kee{ed3pAc=_~7*nt;$yyWmkTRu&;4WcC(porv54IV2}S(tr-vNEOHl%a+^Mw zy+dNA&(~v@`0rnOv8+Vx1iydQn(|FMR!7_lE-60CdxlwkzE%0X=WM!c-s|Vo97^Vq zI&S(nv)AtbQpx`8W6OJuXMK!4dn04c<(}ES4IgKu*({edFPhHoH>YN%*lxy{w(i|+ zF+~e_ckU|P{+ikT&Vxhl)eo-w?|1PwY+7pk{M@&S2VeRpc(;fDD|<Cj@6myW(fof; zC1*&yxGJ^o<<+GkJ9yWg7dUuHc>T4utsCFXeW%m5`Ad%V<xBY)I}@U+ax2x&9{e(= z`Q^*^_7~UAICts8BcHo`%Qo{Z+rIC5(l7JeFOPik*e`$PTbBNI#=LmDWqRzFx%+zl zUp#l2e_HyhLW8|8I$nnUeseF@?y(&EWlQ$Uv&}ABpEmw#H6yOb;P0lRTfQ9o<nth* z>gK^O-(IFyh4|DjeRy={9=>Jr*4cN?{kVPl_!8?G)Bb%*lfFDZciH#p>(%Eszl^ZH zeCht%p8v^}YWtgC*0EoHA8(x+x=dqjw=t`X55L6>xw`-2*WT6rc(?MYmhp=Ot9J>% zoVESecRV~g(}`~xyR47D-0zh~znmAJ7uk2Rz`*uN!mo4E|2MvR`P|-mbBt|kuG$gX z4_8(@?J%!ilCr3!ddZZo$c1xdX9&1-P7LtsnX*w>dEz9A&gn-y)>;`(Qs|s$;@Puh zg|PC^DH11F9r19tHc)gCQf{17x5Q(v#L1o`9(7NmF3sli>F7A(5wk>or6;?Zic^w` ztdR2B7e_o8RNM|J{Pf_oGR(^F47|O1t9a6)N>w*s-M=fktqrq$I|EOj+InTN?2HVX z&Om3cGv`+J21a}K-11Gj5<gd>wCl)<nNN!C8H9Be4YNdFy6?T%*x58)!nEnj;#1`b zU+g=svmBWA^YZIQri{J1KVD8xKfn9sz3-=+AKRW<aQT^BX2-M#doy<YHL91n@Z!_y zBZcctT(<38cW1?so&IM7^mfLd4JfK$=*`>zhEFbpZK@f+runMSycGp2EGr^*25v20 zc4viag^OfJ@E-r8Zby&&zAC0+T;tH{yz=pDmDwkBpLaD(I?q1UQT_Dw)$KvqpS`Cz zem!HZktM{wFEDVj)(78Hy?xW;wQe4X{H*Be+j>MlnB~xpm{#Z1GwTC#LY~)bE?VsN zAo@wq3!A#7vlf;;4WIZ>?%3h_uPk!LnYU(sXEJ{o_%%CclUenG$Lu$5d|>~_aJxT$ z+PdB^%&Xbs>}$X6ZP1t}e%{`F@mbc|ntut!g}49xa@-u5eJ*!yu1uC$dKPcu%)_^{ zii>$SUz;&AevP@$!>Z|#yYuB1R%dg6F8<w?zg+y=D$AUb&v&!ay0_k_`f+8}%|*Iq z{P&GlP7gcfw(i9Ch7;G8rPy6sas64}tj|Bx)4qHP^7CIe<*VN3g10XYExa|ya({lx zm$H;Y^}L_Fg7#-V^+}qqC8fW9otD&2<-$oG$w}Kv_T~HfTojw!@1Oo<?&@?Q!(NHH zy0coBE{B**nYTjlfpF;F9YKBE-VWEMovNJhes8G%+9@KdOEzA+5g%{znms*r+ak9P z_v<dD4=y~i3-x8&pEvbt-G>RSxw)zSa!yw`K4)K-N$?3W+?RVcL@QTtpXvJaFvnJR zOXac~YKgUfu5F#3edfjUqf6=@AI+5d`ZujOv2I(Q**4SnN1A5seBNjMidXw4^PlZe zSvx1?Ki?4$>ef^GNB!21qThv+I=H51ZrnQKv-{oE&o_ovOt60z=PJMbbj+2A^ZBb^ z{G3`;BC>t*C!xBS=)bAOOFqB4b>Mh-;H03~Cx0)6O_Khp`(OO#tjy_aeQly+e%4(T zUD0=y?_*Hi{%uvexXWyg^k?o4TgT_Ie2Jv?#jM4re{kmddO0(#b$MN6x2Y?6s_UYx zBYCab6*azI%IhPNjs4e}s#$-G{&CK<ym9Yg?aH*XIb}KFAGgG}b6JJ;%dL~1wXXU| z|8rJn?w9*of6h#)O?31rZN4{m{+eSv+huwpPOMmX@?hEG*Y$|zJ80xJe-&%G%M}I& zgDVUSqS%}76?x#cJ7^r1f#2c7exyE~k%57M0jN)BVQ6WfdBuJDL_0r$?A%(0JL1;@ zKGlf4Z|vN(pi1EV$63{TL^gyZChHy9WOIF;e|vJ)1Bay!e5JeH=UbF$bA>B>Efih+ zhxO;Pn$54jAD#Pt=Dg~&&C#l*8oU7s%?2_CnOnH)E}dwfsI`UFNv!Sol#=@&SPw1v zxag~*mkcvkx7bbQiFVCfePi|~Z!Kf<KXK*f?Dke8XRj6J+g{&$KJkiM;6KlqjA9Ah zuk|dHm~8AsdHr>E<Z`__wIjk{_dhZ2)pD&)6YDZB^oRsVe>yg`cEaI4-?l908NK_8 z`IsW=ofEf~e!AN><*cK9>w)|0YO)WUHj12~(ieIo;jz-8Tg^Xjma#~DP&;>9aJT$^ z^E*G;?pZHal6}T*tovlU`R%MUr~d6(ImboIf*Q`9ufA&h&2OSzkj9C5)7Br^QpLGK z(0{|VKBW-;N%tFSS!|;Z-u5<ha5#Ca*YM-w4NF3=+TYvBYn0A*T>j0+&jJrTw`OUd zUAzD7@;GhbHJh7We0TBttlzb;?8j|phM%Q}e0L}Nr!RR@8Sk*p^7btKj)N875BmO| zasKwfQ|AhcK245to$zU%;Ni<6M*VUwdwox~YEHWoz3$nilF5N*;+>Q^Rn<=`e#|=_ z&EMi|^or+Ks$c2iM^`80Fvj(*k_uN%l5J;~je8`P*zwFl(|Y}9yFWeRO<6OGIiJ>O zG#_7dXY+}KI1v?|=%xHmon><Uc$)ez{Mudjpt;1e+aW$s@%Otq>}6bx!m8iWN>&*b zIc4&0U*7cl-2ci)>naKrgD<(++6hO;y%4ixw7mYJ`p7h^m_KWlMO(hSw>>$Ine%1T z^oI>9&lwo^&sT`pmD<Bt%`*4x;s0|#_k{m{7N)Nu|6V}EOx*0sq_Y{*e0MG0%Xdnt zaNhL4O#5#<6aE|iw&;jkb7<3@$6up$tK9`R*XPCASW4O6KYeI*LZ$ldeU}-edhh2> zS-+x&iJiH&)g$QBxqg$+XMMew@H9>c*tz`QJ_*%rMRN>trslLf|FY%$<eTLu)9-HZ zs{7gb-Arr4HMXa7LuVbYs+!WOH2YfHfte!fch#O_em#HXwj-0iruweF^R;gCBE9m> zUw%~=aNL?xYr8o4YvjUvOiNg=^k=-`KB3$mW)uCu#JO+bLS=!k3W~GlG&Fe2eXdw@ zCn3*RbBm$GoVRty4_rU~_!s94se3V-7#{l^4-m{!eX;BD;;K2DrgxYIzWk-BwqUVc z<<b(S-xhN|l+6p_tv&Q=PWPufD|D;#XZhHaD_zK&UcX$6*Rg~nNYQJf+7%5>#@#nM zW;TVt`>-cDTlMa)35M%9lde7$iH}Wd%38VVqXu(~Ol}>k<DM;9XIYKEgdMz>pJ?lS z*g5cguvwF$u&(@+*E)Z<iEI8-cig>k%|BzlS4C}13ze@-=Kda#`LFo*+5aYA7wgNh zH#%EB=lzyhX}UX>bG1l;s7TKFJA#kyzRKGA`uy$Xx7{D#%KSTPg{Sg+=OvddmHm5} z=GD*13s|{YY0j$Ee~J&Pn|d+K$}Q1+>g@R{W@F+i4$ei6v!<6_&a6sll+R-<DLE?i zZjVw9!wF5fS>Gpnv=q$RxAx+Xb*6ryhwqrV+lVe%zd^z3w^aJmtSWyt$?wVzn;PZ# zx5kyHEYg>pU0=81RQjUzalDz&H&6MoV%@U`#|?j|#;-qn;`N30qRe&Hlexd|E#F#x zv_I*aP@rbp7u`w6cZ&&X-@c@EaMrr)-8XjZQJb}3D$Bate9R>lUv1U5e3-TG*GE~` zU;AYkBP>HKTP4G02#8ed{~0gyLfKAY4da|XkMN-FFB%SuKYVEOZ-?tt-dVf9a&&KV znKk!5%c&jWA1W3m2Fq`8kgYA;wqaVM#RnEsoz|2CmkQ&=FTXi@-Ol>Y=lY8!Too@L zw}e^cO?*@s_E2->SubS=&YfqBS6y16wLeaKU(1A?$gO6Uw&i&oo}Ovfd=G1UcRIPe z?{a>rwC(}t16lt98?NSfsC4ewW1*b<$B0F4vS1;jXWT<Q7Rmg>A9uABwkvR^CRa|5 zHf4CBCS1gA>havT%2oSPq3?pc`SP=Wt%}~7|Hb5w#MKF_r^NjhWzc?>`L?I@y-3J~ z-@6rD-KT%kl_@?S$fcBTyPi8a{e*DV%pEWG?=@xOt<vl;|MceRwXjA1LJzJp;x=|~ zk-jtkq2u+CjpFCnZnxzf?)zfe^<@DYmvP3V;*C~cu1$Clc{6TL#%%uE){_dOMH#Q@ z{{7clCH#8B#H{7kOaDx(Tyi`6`W~YRTuI{QEB<%hIDBBrgtA|2zlF@Vwx5yn=<C6A zaiQ5?m!EQUOE|gK`dvpM_m|xg(J#Jm*WO@BY)x6|u%@TQ=u%Z_?|$|6lB3PB4^94@ z5zFe9S^h)uC7T_K*p$RMjs+3bA0GaECZXMbP5yC~25<11TbInfKiBx3tfzSXAeYr8 z*~Qfk7yryt_4)g84&%?O#}*jO_f=uC)br;I3wriR=ZW)0`R#QdY7SXSC3P@lIm}w7 zeB1o-!jRk|ZMni_>|Fo<$tJp7V5@)ezPx&&$2>)??7eQ+o6}x=Q`i{4dzvS&)(oCo z4tBHWzCV>+{rNJZX-;1xQ;Lk5zuqz1o9}PUI2{&x)o1zk!j8{9Zo4k<yjrwxiFo>_ zmj{I|@2U!RT&?l@vZHdw(M*+ZTAvO1tb|f7xyb#}7Iu<+AM-I^SEG@2vCx^f6Yh$b z9<c1%`j+kP+w><Vz9rf>F#KO(rX#Ybj!#z6<YZZ-wOZ7F{e58@mF{L2*Hk7YERfv2 zxK5C@&Uf+J3|Cdl%7ThjChsq-kA3~p++TZ6@S;Dp=T=@>I^lHL6#f}`%XTYQcxdkq zk99K2I@Q29-I8IWregN?LwYCPE^c~rnrU|N&nGNm8z&3<YPT(E{i<VYIsd8JDvQ8J zNg4c)?k0N9iD1{=G2z>V4;^<OPqbrkx~9mtzBKP>nZfaWcfHe32OXW<ulMm%?w9?V z3$rYX8`8b5OmqvLT`9ESu4c{rC7QZL+-Lrt;h)U-hw1-X&hK4c7QdPlr9S!Cf*9Rd zlTMa9U%V;%ew)YgBmDQgug-S7bpO+@&d}Ze*$l5fTJ^j9PP~Qs^ArCy7k}t#5Dqq( z!Z2S)`EO-y*KO~lIpz(E`lR@EcP_~lds+BZ*JoeAJ=RZ;rwA%4us7IoPS~GO5GUom z=D5_9E5WDTU8CkcJS`SKDSSs@Nb?phTREu-JC_&qS^d~7vFB)|lIb6Vu9A+`_g*dt zxGH`4xHQv_tNInQQe)e5YOc#_dR{Bt)nmiE^m^rk@c&j{mcE<)Up91^p`B|3U+W$9 z`&0F%73({{iJ#Bvb)8{J-TPlgAAbkPFi&_njeqA(CxaZh8h))MOCGvR6q=&;e@eIi z`xVng0(|qNH9{m7IGdRST>lwirf+?sz~AxQ$ICO_U%Lq2c(Si&-@#qSKK=X<esW)! z*|AMrhm`!d{~xOE_rI$j{n|*}XG`{`p5*K^U8^iJe*JY$;hp1B_u}%}0^M@4NxtQu z-)xziXR_)4`YUHLmZlyG{_%J7rW*Ac$r9d<9a;}=PG7L3V&=i)+u2;V^Z)FV-S=l# z-oichEUtUvAN4tR%nMbP^_;fpP(bDfhRf3(-hXqt$Mrs{ake49!=k1yvjb`-2<K$4 zoTbq6Ci?W2o~LpV0#BH3mzx(Q&bwo*Q5@UbH_JEXsDJy%Lxow{0o{iRO;_A3Yk4h_ zzxCas=Y7xTt~~Noy5a$cw|>e^r@r91FBuqHZAwynyz9hsSbeYm`o|{rV9#0Y=~iDm zXP)QHPZXPQmEGLP|6^hKg3_P2o*s{P5WBtg;D-cvWyMm*d?h=N^pzGG$|v3$-u9or z)9O#LgV&7H-yM14XDs#VeD<Zuy(wU3*XES0!kgJQR~284e-N_teBFLOzJ`@&Z|!jv zd29OA)!j|qr|>EN%}<*D_X^#AD6`fz`1g((tRLdHYAUCfXMVUS_rj<7=6c6Ng1`S9 z5jlTQe{WCcfn}DgD!+Mi*2#0Ne&Sm&_m19Hm5UEpUry5zitd;le&>zdllAfYo_7>o z+p>qR(Qx)mvjcBVFW`wekRo!rG5_q;{G2F`?KXy=WV@JH*SY<&JI!In<NC+3;3Kb6 zzt4(yYMMo|N3N~CXsr3QdyB@_j<DFjMHgm$?KE;_`G0k3A$N4z%?U<4k_#9L0z=v+ z^crOU6a4+{;5FtqJdu^V?}qQpwm2#Bdz<NdPyQ1kGb6WGNO^RXE4sYRe)j&m|GKrG zf~I>5-a8v~lW}=d^7FRMiJ=DGE2qo52~WNMrhh{8`G2kFnLi#cO?*-u@-FJJ?ylp} z`mblaWmvo9=#G>c7jHwBDQwfiUYbg8IQT$*R_Z}TndaWOE#*%b%Wv}-HGk;(bj|#= z;x4nTDf92IOyXzson2?pxMbH{24!pED!#6m)l6r*RI;vk9sd-t*6LG+p^Q+n5=Yp^ zi+#+@d-d1ET#fz~@Jo&_VNQawSJgiLh1c&{h;COkx^w6FuI9pS*>W*;mYE0sUyE3z zda%-=y>e4$cTKg-YrZwlzVBQozVqq*!-9WwnXlhuKc2eZQ7ba#iu#ZB{Y&}sPwAev zh;CB5C03TF^Rt}w?Vs}s3oiWq!Oj25pnS#Fc?wHwDwEn4&3*p5q;c7<SoI%P+wU99 z_$U+f*R=O>`lkuAN|nm)D`vGFO-*<Ete>IsW5X`_z(p_ShcnKS=AI|`nvr#@gYA;u zE9VbA-SF+Y*4a>=tg|k?>K<DIOTTZb4_B=y^PRjR^1FnmxxMJs3fcR++f&O6zPoky z*Hjiy%5@Q`p5c+t;&Gg9a)*{#%BIWutM3_!rT$7;_WSn<1@Uh|C3i2a&oj#T6fXK* zcDw(t7>z~ef6VpQIj+t7J?Z~-9kythu+GG@9CMq^*Yl;%|IS(z*Rtuyisrw2n}b&z z`2F|U`Yv_BJNermytxuEZ)3CL+O~kVM+1&NsjpX1HeuW_>uE~+ja*Z!q}*QN0=IwR z)t~lkI$`lTbb_Py{j=$ty&2Zr$_`lFA$O5&&f<S7P8~ATKDkqP#U_hc$3@hm?%d83 zage|ID8#U4^T{&lcXa`?B3W%#{EK%;$-A&y*Z0eh{(pD=Z0BSwmo+;3K_mH`AmhV; zh7TL$(|5C&zx?vpG2v}jkn@a^DCb4hjwwGTw3r>SUG_E0cCPu=HJj_F3YJJO{~xm3 z<<Gu#95G9G9Mk?d{nYVR=jlPKHaQ)i9WTZ5y|g)D7yrK_S67rwJGH~;vCNZ)l_^t2 z9ae=H9kfg9_T44&;`*+~n<sC%{_xF-O#Awa3%$}B=1E#Q)cg!+IT(FiQf}v!C&EXM zR_b5Nz4T&vbsn45kxQ9eU298fm%Ml>(fF$Wz{=dD51C6m?=^W%%6PSK(`VI<qQ4%= z7lowBv|FsXe8iw5uZ7|I$GmL&SG>X#emC0eU3}_WAWKfLOVb_4C#p?9#Dt?|I(9sE zY~l;uKg+OO>hPKy(U#ITwye6Y^K|0gTYUU?Ws??V-TZsQ(LpvO=Eh;+K$~iVi4&T_ z%(}97b4vYis99is{NTs<jxRgZdX|{wY(H#XeN3%TBF%T_>Z_A{oh3g%S@U7-F3FW5 z&sZH(O0MMbmECx;A-n7UE7>{@xz`;t9fUW@-nzT9(BsF%)giCv)?L=0vuF()&lZ2? zgBBBNE4Nv!VVF3{&iRQ7k9SsbwTsxR^`-juyMMQz7D))(ap%y~>_!unb%_V1lmAsY zPwP;>GsX1sUY^`fcixtX_Z~cu<8$%#(_3spUt-UyKMiuo+{67LeSJnn;0ax=>kmt+ z>-#c1@6E}2ukO75JCpR;LyG*4k1oF~&{+J=gCTd$B$wpHPABiVIO!aZJvik=;1quO zmK#h_hp(CaVR*OK<?-LnNjxm(92|CQC0A7QNBevg_{+UYQM^O^|HG-SKfKO=GbldQ zbg!=}FM&NVeQIOHkw$H!sfCKiDzbki|7IvpusylWHAg|Cb35bSYnuPxb!}VRry{uT zLQW9dw~|xLTLmX@8eMsOD{;TJw)6U&2`+~pT+v`WwOvGyGjD29{fsNeVwZTI*M5BQ z)D#EC_7LNk-;VWDx1NfdchjEz+2xCG@0Rv_4CKmeW8HY*E^EZ6o+Hhj3}>4z9a<;( zKgHtjbkX%UzP!C|oh%?W{fdQRo$bQn=o{s=q3Y|`@3s$AZ2W&~NoPgYhc~U#1~El{ zT0S!xzmvUQe;}*R@_T;L&uUe7M}^bx7(MO^m{0dRW}Fdw=D_I_mlu1auocd6cR230 zIXxxaaIg2JD%B6m;`T&?X3y0T$+KGUbvn;+)3==9p&k~$+|$!hZLnWaXp+tYmu zG_pP<cW9n_^zQx6E6T@auM%F+CAixB#QWoEO%k(&Or_=TL|$<ET$Q@Z%>TK;!S)K4 zE7J3980W0={h72*>OM!!;v*l6+3fzXl|26=qpQ8{Y|q~Bk-OvhpYq*2Cwb<}&wq@! z`dg+<QakB>lkdu|tLr=@Z#By=UBPompy!uo6~D!tT?=l0V7z%pVQ#n1fp)15dHs^} zoAn>}rC0fCu&|eY@?O1qM^MSR$d2+Q^*?4>^sIYz?)mcW*7qG7V|CB>E=tWQ(LJoT zKk;{oa$3VI$CzG^)h?_Dn@_y$eek7-B`E5r<f^6<4bs(<&UuOWKD4;8?pLL4u=`ab z@A+Kao*$iE9zJR{H*-3(*7i?P*s{(IQb%Q1*b1C~bem<uO|_jWtF}E{eey|5%)7Nr zys~Q1?Q2ArNXV2c9}TgHy_2}hvx=qU?G>(M_BB0<_P@ns%a*fz<*e275)<>=zl9;U z%J=hmNlAW5ue1HfgQf)=KI+<I^Yz1vNosnrtd^TUo2Xn$(|A1p;2X2KVTI-m$Mg69 z<_-QB<7xMoee++}&71cqoH%k^>+`lfdJYy<#})Sn<*m~>vC6=EA;YT|K^BK}lv%`A z)~OmP9ZS*fj*EOER<`x^%A9tCEuIq@n_Lzv3*61l4C21xpTK*~m_fVzUTAglso<hl zj#eAZuBO&KPJVrTq57(C8~MKJ^-t2_6G_||)1rUhVfo2NMFH}?Igzh-?fibR^2_f( zF3;D0)YMISZV;3uTL+it(qs^20^n!Fcv<@yYSm}6JmpByRrJ1=+o$GOpR+l=N* z-Fv<CMt9zw{9BHuEfQ-?&)Tik^4}Ypy+(a5_xHT7G21PFH(A)e5IDMJ%YrRWeHGqw zE~v;qEXN|t+|l^LT0QX1!GM#CzwZ2CqBr{r&u*>l%!2mERu#>S>v>sWA$x1>_se(t zC3bDDjOd@1^U2LgMtQfM*zD&j%25+oKCo=b`G2G9RBij?&V_zGy#LRqL>;!tTI+o8 zt<<yEuML+zQ@*)j2V-}{!oIKf4I<hW**Ps_pS>mbNWk_>{j+boCq=6&X{&9`y)Yq; zCv;!NvBi5u72ocU?`z!76(7VYQ+eRJK>vxEJI=3KyVY^2zVW`b|1Yp=YM)U1QIWVK z%<Y))vb@r4Cb7^@J+~PC2L0O>T;u2bUZPDsgLQAvw=?Rzj^U?_^FAfrN!irndw}r^ zx7FH!ZK~D#!aV|a^7=l0WPNwK+_Xp9QtR>-<t5iM|BU|f{%c~!qn-*jev8!4>3hFk zzQyOp$99TuscnT~9Pi7v_WiTZ=pU3i_0Q({(Y$-^w`Z>GNa0f6B)8d6!Ylqzp%`m} z4yVhh`Ii%3oGI^6*k;_YPCxp@mst&tDxSh320fZy(m^USB~<oboa($X-_Gawt^b$n zGPnM1QBAK2Is1^O>iyasmU*QSdA(oqjo*jsZ@lvGO}tq8p3dv)X894Jw@)s1+p1er zb2Z&S<nubtqvE0)Ugb;`ZeDG_)4(h*cTST3xAkRLPdu>HXWFs)X?)$2i???Q3$Ofj zWP_i^-|t1WTy8f-!+#l+o^eem?Y+9}h;?lbqm!5Hfz3VT5+N&17PwAW*d=eBR`==q zyvns-y`z$U26@=!%$dSGQ!>vc^ZY?;5v@G)%Ren=rYUhooO(GeLGFBN&F**(`(O^Y z*kyrt@{Y`{loZo{#1?ila@v!tp&_#lPJFZY$eLJ{8+SM!JCsW2>^;TCBKzudK)}&6 zHm8oQ)NKBicWng^+t%lYEne)?65(jmVmtHb{9pFj5=%O&A80Plny^mrzz2?ucYU#K z7dMLpD{KEb|5lp4v*$#^MV02<$Dw{<pPQ70^!@vN<Cjz>vqh=DKC*SOm)oArTs(Kb zzue9Cx@qQ#<GefGzqNm@_UF(arG(v1Tz6Q^KTfo8)ePEQvP`q@)6vZ9JEn0TzUUDU ze|H+A_O*yR3EP$k*ZhCD`1Xp^vwz9RT)JY%Di+{&e6oXC0>hC*2W|c`<is#8e|Gu8 zBPnl#8#gyHK2tm6Ig4v!;jHP#&lX*J(DGj>t*HG5i%4DC_F4I=V%7R}I&P(t@3Geu zmmJMK(zAcb?N56aPpt}I`q6v;VUdV}&Ut~28b5#kD*s>5Ak5~rQRCU6tV(}|UIVr) zO}FU0@BD8k$)>9G)#^SqcDZ8YZ1nK=BGs<_FF(9e(<}aaT;F2N)2OX2PkHa(GG_e! zfo*~HGhWq=+(|O#H)j}pIw;3g%3iAe+**8gkMCsm4U<y#w>TV*xm>NgW3uL+g5NpX zEAR9?QSGnnGq}Z9|DET9*Yb01xlf}~Cj5D$c>Lkn!oI&&i|s7!YJ_e6IjFk3bL>6# z{=Z^d&V{Orp9J0+G5177?a@g!T(>T0_nqb69GUii=Dyh+!<s7intk5AnT^+@3>Uli z^`)$SxU{d%C+bC&_msWUXK$Wv=a9Sl4QstXgv8qkl8Zxk+D@IGq>yE6;GC|!H*}%F zzfUK7RDPzcd&6gM+ID`?hAj2iZ8PI#reEE?OY6=L)wkPnuH>d}ndWGgc&#U(*yXz3 zx|(OF;}7Nuc7JO=W!$jr``lyOOKR3k=QcRDGkQ^t+lG>Dx~)(C7<!mGM9=B9zRADn z`RVfW5z-4^-*5YSt$ulTpQ&nS+2^CJ79W{b9ljBm=4yPlt)XPsrw^{}+x<iiW$euk zw`n-HvZ~q5g*%CTI`eV~xnC*#SC5ERaJ2nUs*t!7FI4U<wkvzzvZ;p(OhOGV1{%FA ziHV=4bNA@Ay*i?myEB51YSrf*4*YRtNt^bn$H%s>v{)5-^#I4Zj#IL)4R%&^XDaNd zUKxF2`;%4nZ?{Y~a9kYqkWb=L+t0PB_0k`lrrrKu{7?7GM}yc~W$oc5Q8!HvnL6C# zS#`H>hq-g~%Q|I)op#3`1gO_426(=I82@wf;>|2NA1gAacv{Eg*L6-63|PEk@t+Tx z9?RI2H{Rd4{OJq5SxNgM?6U(*V{cl{TIMf#T57>Y_YHj7<yV(1eqtfWzPLZ==gNuI z)@g_5K5+0%<P|ErBD^Z3o8{LPp4Cxlj_*`&y$w74PK{-+b3^%!obR1mir%xA9M|Ds zQWihJ*#39ViQH+Mr-vEI6fvJ`S?{ny{_>MW|KoRUJozhU7F*JpBlG(1Zc&rf4|e?Y zIP9s;;uZZ7PXnhUPO^?;dwP1==`$DSPG20!%(lJI;c2t%g0yzgzK0iL`*oDKq?w$( z9cSLW(VDx^M%~jxv-nhoPP*c{+Hy`46{cLK8}1jU7o1@2^GKA9n`yM~W9sDpXLj%1 z-F$C`@~x*Gs}FyBQ4_y-j&JO=B16%(HQz+mT-eO>Z{~TW?^$t2j@Uok#_zIIw#9^b z^27a$%(naf;!ze{)OaV+;rz`0C2Iv1Zxec8n(Eskq8M5f>(O#bF-&pmYF4k)+rCY; zSYdNEHX-NOGV8gI&EAN&zbd}B&~sDHg|DCX{y)BxRgJA{MYXeU@z#Vp)_>)`ge9oe z9Lv15FVgcwSKaY7@2ANpZ9e^e;=W|AV{ytBFN{v7v>eo&Xkfq@X?4Yp_o&=)m)Xae zR9kB#Gki`a^?yG!ZU1zho2_wkBfZpaMO<F`-k<;86yG@6ZOQNJbov5}USG3ID`@<C z<J~j6YTp`@&EMr5RXo^F)O?M1IT*Y1(EjkVoU>w&-21<!d|uK*{!`CQ^tHWP&VG{0 z-tE0(Qq~b$zdvsrW2f?e`p|4x^!J{J*t`B)-EU&G4gKr{&bKa?Rf%6Q?dk&FxmPbe ziQ9khA=iV9YwQQA{_)K3=6oRBnzpXUqT^3^{z4D$8NJc3sy;VI2S4%nZC3hf3GdRT z8_i{RHwLcr-8Jv3-TCL!l3VY(x7f^E_||00(hlFLo!`BFPyKKE;9={XzQB2UwT4W7 z{}Ur~rIjC9_V{EjO?l9GChT<UPN5yqb44CYFTa*^pkdlXPCdKza~*CLYo@5J4=NN_ zv20rryX+pjozT2Lhu$PKKGJ-_)1N9M<bT7lS>nx-BxTL`t1n_ARX*n5WjquU_oOlT z<j*?yn@e)d4!9-0JNbz#k&{7Z3TIDypn=SZ=EPb_?U~*hJAFQL9{3!%NJp4)*45hw z-<xtuXbAMrZV5hEu{6o^L7T>*0v=C=!|9*nrut|zstcbqJE3*X?$bV5JLN(}+gArw z?;o7v5prTWtI%=3in}q4v(y#->ioJBa<cmT_vY8XHU9f5FR;FNxM|Avc^BvI+aPr6 zcZE&ay(qJnlf<VNFD#k&|Mc5Q<?~$i4<7dRv^~tiksy#U_2c$X=9cHK(aB}CBCpRm zI*E5>B+j|P7`#q*t>tWaja`g?ww*N<-TGQz=*XkHdh;&S7QPm{?l|=otIMkgId{{u z&#&vr6jE`v6;Q9WXPvY9qvei``}c33YIC`G;w^LaRZ~M$iuY}{>5ASkF~V$0jDAna zy37B(_lre}X*7rituEZx#$o6br+MXD;?_)8|C@(jPhWH(-i5nG_*c22*qz^&`wBDs z|B9Vzc6q$*=<1(+epc3HA+k@(-=sS51y7i07r1oWzqQQ=7#+e_%-R0evfVY*%Qv_p zaf7pcr|Y*DJ1ks(%$ep;5qxg?x<e+PmtI&IXmXAr=}63}m-<VSJs93SVcNgubf&i- ze}i7_D&<wS^Ll)En$A|XNyy|2l-%)YZr}bU<IH2(4@SmvU(OauJ+ogU+BdhNE5+vg z^vM>z|KBE_O`8>E+_|h#(7NS>Z1$?hA{W~{`o)6UUocqnD3nR$KbsdQm>D<YHV2cK z6W7ES>|BPYXFae9xpB6$FmP=m=gG5GZA{li%Qya&>DjYpwqpcS>boOS9ov>Y<zGDe zZoFs$UsIQyOY(#pv+M-B4tEQ2m(H2=$wZ;1GdF4h=c1JMitl@jg<dLs&i_7d!Nr-C z$~mcLZ&tP}sN{|)Wj*jTB<4=ijB^S(YBkr5)||1gSKI7S>bxc8$&TKq{yo>e2|2m1 z{_*way27pBbRGOBe4iY;@znB?P11^!em0125$ZU6CsaM-`<JjsdOe%7w>;FW%wNlt z>%!Q<b%90s)1~E}^Jb@ZysK6|aQ8z*lYDG<e&sdcvg+K)anhDSi?>xY<rlHsV9z+a zK_hpT!>)G0L&iEYJ}5@7a{Rr0<ut2oZxd&}B)O$M+NukG`TSdxX12FT{jAa5R0eZt zZ8N5;i>+?+yq0=m`!K6ta863@tLY7jp55PbM5Zk$f5^LT^0#P)1<BjRKfm{K6llF* zTDa;e_p&oDezsndY1*2<YTCYit4rTqJLaUi;nw!=x61!7sJZT%Cd++PW})t?P2RH| zF6O`B{knW<e%!q1qaXKwl`N|l7SC4VNYg*v9P+6BLP~#$?hJhkvvu~-f3N)IP<Xua zklcZ`OSvn37L;zwbFWCa{d)Z_e!(Mb6~g6Nj$3Ee{1(4a?sAT&KFKJ1#R-F3QJ>fI zHW~BZx~<i!dr17+H|{U%TFc_UO#3*yVsoIZPqD?BWuIF^?i`-+EbpPv%EtN9>n>Dq zS}y$3cy7M<>bVE)e}wt%kX-mrS(RV@aG>H{<EF*a+?YhT6jOiyDrSnk)-fe(-mAkA z?HB%qB)I%I(QVDHZMjdH!~Un`l}m@y8qabr-gRu%<xPgV;mh}w9Lk-YE~z`kOlZo^ zN6s~e!~bN>YJVcUhV8-4{uPf-m`uO-NMp^e#QD24l(u}(op+0~>DJY?Tdwb7*`Lhh z&wbE!*N;*L(T4Z8d!}rB61A!7$=Bt1vB%j>7QJTwq0aF*szdTh`2CeibuS}$%E}g$ zn>;!cx>?5O@HfLH-bxF+MB1my+Wb2#+$gy5!sPVggmSyBs#cN7_E&8qrrh&wN_%us z!6ARf{-}8h^LO+HpL-X;WfgGJpta$~nQ5!Ui;bVn`ZY0N72`uolSz&8H^X+csc$Jg za%rcz=qCHZzMmUH`q#F8*mnHH$``5J^3MW1?cRz%|F-|&hb0>r>-}ZSri4UBgm}2j zV49q=&SRqLy10oh)m3`C${%mBdAx`xXWg>>TQlCaIUhMG%zEOh<$>GVZpUm3+`B4N zZ`;i)n+@4`?=Hx_cP9Sg;@?-Ui*87j+O|h1cB|=iR<Wf|`W4x`$~)HRUJB(5zwKCa zuqjM()Bh(o%#WPqUiMmc<JBL*&2#$Ml>YemrMAg@EV~gA^UBJ8`hP1Q#=j@LT8?MR zS)MCB$l+oZr)!b9phKX4lIp4z)9-W@etGi8C0;^c@&&1CZYKS0Hsb4IR(c$r64dl= z>W7(if;Ec+wUUHbTv8|cct@Mw7F+YZPozQrfN*Wm<|jhs=Pf&o?i$T|J~wh-wU>mS z?~fU=e)nsfpYY{85c@xI?bWK47ZTp|-PP=0;_9KbWZp8>q-W>jRo|<=y}bAKvX%L% z-~V^m?CVOaubqBZwWI0Ge4~QO3`yVTvPr#b=JQOPR`29?@kNh&;tSKSNtVSi^L{A{ zs9&;4pPtV@)vWlc@UK`i-H^)%=iSx2IDhuiKiiiSO1)rTzsrB??y0}b3N{~~^k9Dr zzwV<Ay?fR@38{T~_uA`E)9N?z^v_^Z>$K?!nzYU~d<FL{g*?gaOlDq*zgO($2#K4_ z(4OKFajV-Y<XFl1=ml}>KA--pbl3M!#w$)I9qF`b0sgMSMn(?JEB-jk?ViPR#V5zu zhWXT8hAnCz4{-%P6P74c=e`i=wWwfMdX0^R<YG~~(lhDu4e9-18kx(sGT7XSxO~Q6 zhQDFOy3bdpYE1rj?DX9q7A-Dc1DC{X?J_WB5}EPwfOerU*Y|e?y?sodH3aXKwPY^U zR`1<+n>$tX+K0Cb8XYaP4Y%!SZ}h%?gj=QHdyjj4k6YB~&e!&-v2W&n(%pC9uJ|3b zRE;Y#*N!@F<+8dM_9T;OyRK4w(a&u$H={#NJZlzfjtO;K(W=}u@viNv8H?<$FSOJ< ze_ws_w}#?|^xyNs`PXeIoWIpscB@*u(Z)q*7cM`h8Fr-W?E(I$+;cDRNXp;6v}U_Y z{2xZ)fYW`<$2)?Q<;wF;&wPC@IdXUJk3QGt^v{>hE<G!-PLAiqvfcv@b6>}B?NC1R z<HV8M5z>`QmUGv8x_y(^uQdIb^CXv}!pnTi)tZgpo=CDkHM2k7c;*Uo82@snqTjp2 z=M{S~TJ_AA+`ykKUgwox`{jlCUJsqi`jyShqW9v?om}itdL)!JpXpQ+_wn-{`-QSD zteq|W$tg18?S(&#_P;{c7Ek7!+q%3cW5aJXqugyWDzp1`HnaZv?y`#SUY7ldsspi4 zkA2~5T2^&!YC`!H@yb1SUvl~!nWc1+?Y*b(yO&{mwRDcigvuxgJ$SDj6zFqD*<j8G z%Y%1Irm+U~i~P9HAUe&T<@2Rm%TpO99QwRyYqVv{j`iaAcN~e?FiZZdadGl7PCq+i zZGr6{&RMo3pZIyT>-b!D6|q15zhjMhkJbO!@sV4^e~sD8v*m)Vo6;|z4k}o;W>?`- z&;I=0VqW{-RzJLN-p^hU!*)o`q@hWZvw7K_BHoI`!-@A7P0OD2;g!r235#pWrRI@+ z(dpjduD##8mt3FF@Zwl8^DXvOA-mK>)fhJIcll^0q|qFiW3%_l-*4uPJbWpkmFH{^ zZ@aPP@9tlzJk<vdo=Z8IxvY1IOcYCa;nj;B6FS`)>`xpxc}uUQHKn+yuz6X=i}^~4 zK@Rc-GGF&@worTgiFqx{!T=`OjP)CSe|Fx-@yp)XT*Up;%sErv+5Fj+9dTR9^J1kt z<Dz1fY=ucX8n<1YzlHU5%gb9SR~KIJy>lUE^U_SmpSK<gefqHKtiy!UhAm0#&y=5h zkbm{4eUr8JBU|-3|Mb1i@3fkCZ*FXm&18kx=+%?_P0e!T=kG}p3yljq&HwC{t9jGC zhkrUQ-qik4bLrNXKV12BJ@b`48Kk~1NSUI-%5-qfk&^0Xz6W3J+^zl5W#uup-X(2& zCVjQPQZo6`yJ_~7mv^sT$9`I%+Wl{-ws{DL3Uh*xhBn{jhjO7elrFJ$U3h<S+x1v$ zpJrFy6E3Y^n@q(Gj^)+%OL{xLh@Gc?*-Y#AAGgrV*3R2qxtEn<cWEe<yE#sCobme3 z%04!u6Aup<Ma`7*z9iUp=8q@i?rk^L<zLg2uQe#kY3|9;oPLRyzq!6<^Wn0K&P)?s z?x-B8n|LBb@xK4jY0MjTv}x*}oU-P}TcKl>Ii)=_opPpnHLtz&`N)DZEgLRn>}7AS z{}eY*Zn^Uto{;XvXE)x9+H*xdU^0VM3;&<3(TvgY$I7-|*juuAYntthoCBR5hcEtF zlQG+%zkB8F14m^q{@lOw_{$?_HutUP|2@sSX|nWB=}n@1IynJT6jf9=SALqlbR~;O z-#1yaaz3$x!Cuaa?+>l~`s>{%Dd%c!+kYQ+AGx#XLru=dF8-g>zhp=oxL&)$JbQ1$ zN3Tr#JJOx39XqRn+XVVoeNb!C^Nz238?w&l?u@`I^Hl!ae_~+gt@gO?jaC2aPX|`H z?GP*d!|o=`nHsyh{e)R}(kF@4`?EE|E4~-nF4-&MVOyu4^!%ab>B7LJ3$|r)&B}hd z_o&NG*Uk4V-99Cmb9~O?<bJ>VZrZcc7hPk_Gk5mdohdL1mOh%!q_abMuj}@2f~%Xi zEO*;`uR-rp?Eh+pzVpU44;~)T?5euzWT0!JeY4U~(QfUn6YW?2#&fQ#5E6;y5#x&& za62ORxKN-^KGykp;GB%;Yn2w$mrYckBo%k(>zCz=QkkA?`5ZBEpJCqOkAm$<w*I@8 zY1?sJj(%a2*;`y>lo{^1`TP<C*;~^W7f9bf5HHi2E#Fi<!8KrF>bj{}C%kW{7Zk=$ zmTPJZJpaLQR>Og_Hcyr_{8r@)E=knn5qtA=GE2#67o&;q-c6m>$!4f(;&F1?vc_pa zkE})IeE3@C`xwqwh>F`(^}kP(v*VsXtNV{5N=hOU_Vac#UaC7jKPw^g+NNJK*Ru1* zu)m+VjIUhH$n$H2#I3UDtFNCEeO7Vkj`{3^3mmt5Eo{k9u3_prVn2V*li<dxBY7<{ z4V}y`rm7wy^|Q{Hip_uWG2G<lv}G!PUO)No7})+lccPJB{eri)Ir;1T4or1fSn<JP z`<9c{>`FgRRn{t6JkXSHOAlfx4M?x+(%*jV@$!i-95wSc-`yl$xzwtW*|L2{*M~_f zuWptuz5jcO<yOhY)WTO@dn_`W<+$E>)+!!SyW+;tH1EQrDSlQbANt7!)JziB4PleH z_w0s`NyYh7KA&z>B=RkP`6(<u|EBp`(J;$j+y^+C1DZM6r?xLvd-~@8$unXzwm7X6 zu$b$;?A>qc;#H5nuD$zi<^AcNMQS2@kLMWr9Q99Re`7rJhssmugqrv}t1PQkRCqE( z9`8Qkb$oSU$jYqE|7JW{eC{)c9GjWF;i|oc*5{uHZ)8`V^!!ip!Nd>m{>=Pw_stFA z9|62!#Yb}Mp1oQ7=F_|N29hye@?S&WADNIQCK)sLr~a<S4S%dUvi|x!vU|#qo-wuf z*JjyU+y}RcPjwV~GyQJ#!O+K-6b%Y>>X?^s#Ppine(`bnRw>RsTMsiXxvy#5D|%?> z`cEQH=ZMs9G2L}~os#62Ov!EBbu;#FPwC27HeJ2?OT*dcopS`3>@A|cyJfukQ*~&@ zLA|=-dDrL2IZH7g6P{hC&28_YVQNt`N26BA<E7;G?+SC)rR>{d_4haT#rVyNpKrwH zZf<3GB3%-BLaL>|Xr<w#Rr$wHe0?vu@WrnWPuCi4vkZ&BHe-*;<Y{~EZ(Y$*_%K{C zr#>$1^t+jLo6hf3oj>ix-QAJrFKyVTqqlkCvf1occABkTEzIyfK(>O7=hWwoQ&*Yo zSGzACys$c~;J_Ru?M&5G^DfB6yuWxX#%c3`yy*YGc1>f6Iivq2UfteLu1@x{krA)6 zu=gF~%Dlj&SiSwlH`l6I-*9=ht)W^%_v2fw=m3GtfTvBVj3=J%==@{X@+^{7`^xm? zc2`}m7ApIcifm$aD%4aL?{U7j@+-r?aEU$n#z#av{G_|*#qx0_)HXQ(ncVq^E896U z*>ieyf*n)FjW>4n+Jd`Q^jBs6&|dw2T9TecKV$eA{`&$~8(3ai$-cNR&sBHuL(@}P zoqMsnqTNqkmw3Rppws*E(yxl<6P>+1gN_)lJGP;9lHG;QfV#VDu5EiU@w<Y_^A(Lw z5n5VeM_886D&2d<b5pt2?JsVdt1O%koV}$wll!vIu|SSlw%Jou!jD*dv2$A*s61nR zLB(G&m-^>McdrDft=-W6V)^aA9h*+HMjv&}O30Z~8&T!tu+7G=U)I)!r?lPe#>L&z zvNL+Rgfw@=1wDVhyl{SH_@Cf&Gvs&A&)Sz6Sj3|cdxBH-WliR~`TDVZc_x=9$4lw` z+qmS+oPw63`%7w#wh3L_>h?-uuH9c<&CHXtFRe&2n{)H>I;Ag8|JNK@7E)1JZY00! z!0#5>TP<5R<UNd;*7@gXUWdi`ikm;9nM0>b&OCAW*1qyTLWiHtTxb?9qfmS;Q&HXO z-W&hxo?=@kHXqI_ThzhG{M6X;tW#jqUInM+7rrN2XR^+yKFKw|sQt*NoM&x$J<TRv zPcD1>Xi5|j5sqqg)zc}rK6vCfTbQm9dvKa^g>U$rcpt|93LBnW-M??<%sV$3qHDe` z$k}z;edizEMnU7mpfX;4iIo=Z`%|w(#&T;;{ko*7wWYmV=uE5U^AHX%YY)DsDsjx` zeO<)%&t3O0;6`*JWBr?8ak;(v$3+jVms>SWbH#h#c{LN3v=r?+%%yAdV6NDujWTmn z_5F?%vTe~ld|vSSrHht<Z^d`Xu`F8Wt`RR|ZlZSi`<Bi3bQdv~e7vy9)a60r+0z;- zx&^HBYde*WYb<J<o4@4y+v!zr81-U}I2*nQJV=V4QoLgQ+YaaDd08hJtsds}Zh!XS z`u4XEmWV8!+%8w!&AFs3<mP7MsSR=og)`naaQ<R$+P|r(I3mfG$$inJ?N?K#y}f0u z6u{$pTzk#;p2n}wySxvb&sZPNQl6@rwWue^PVeO^i5n)|%QPnPFFmEQ=#bl^<XIDo z5+jTqmvZWHPsj|}ZKxA?aKnsmX+33vwWgu^dKKB7p%3*1iq3CbKe=h&h2+%MJ*>UT z55g;!do1`Hv-0gk?(dCnwtWhUVO)Rx??3*Z3xa&QvnE_Cc(OKjlM-XW#M-vd&u6<r z9aMrZy3H_IVEcdl1EK%RHr;u*aNjDHf=>Q^hcbh?ySQ&HnsjF3m)6JbldGSImR;j2 zP<m^|euyc?Hs?)LOY4%$FVuJCugJ`s^!#JoS)-<x9et9|`p>*%<n~MRnytl>=V@## zt5-U|m$A(3yuxGk8$B$IoR_m5_A_4dxb@dQ-ui{S`;B7T-s4uk-rMSED#iXUh`IiY z@vphGij>&S3(PD2w}=NEoH66rzd(mD)1dAk0}k=e(k!;pXFS~(DfGP)R4%eyJ>B3K z2Y2_jp88wjA9Ci&DJF-k=sM!kvVqw>ZvS@Ut}`WHK5V<ibM0th#O-ILn^MJZ`m0s; zzH4sN`>UwTHYxGwVfFs4s%L8Xm3aQ7ACd7%Kgf6|GOux?t$`)aA(l^PJ?_Nq(#dNV zOHrLu!JXEAXbMM=_v)S9-@k2A<z;J?%#gm>A{f<v?ndzy{d=F9p2n|w`qui#T1%^c zncP0km-BM({MlE%!pDE#`>e$(oX3~mpI&~cJp9J5=RTpuHy(HYd!WN3J0;%fM!A2c z(!r^0ZdY2r|2I9~tAB9Y<P)~f8+@6W-mP9gyIpVEgE@b{dY(V?y<*DZ73;rfcirtX zFtlX6UL<xzX*QSn-6dD2EjZbgvDtcQp=+Lcg^$l;+ii<|Yvsa1o3^kWj>{|c-?KWj za{GfxFI0nG1*XcpKV7`6lI_B#2*D)R@70q}nCxQ8{N@sVwf?N?f9{Xc#>-?ZrW&}p z)Kr|&3RpU4k<RWFKh7?SUf#FYB<<XVl^a9a_FmfPbbsxshLbi15oxNox&{1?Kio2T zPHDu$&}Ze+bzU#b_f{lttT4G<*tu2g<(3^Of0BaqL-N*sm?~!S`p9A)0lBqIVj<70 zJ-F}Mw5lclc#^bdlCYV@^bY-_QOn+^+BHZWI#T`7g8TZC;P9}>HGX{+#~GFUZA~N0 zjh1}9``iEj_4PK1&*OK`Xm*^(JF&Lb>d&c#dkylm6Ki$mc6i)-VKF(tfU&0j`al1O zbFvF{a#!owH7%W;rCj+-mgh3>g7=$prhkyUedJZj8IhYCXO(YwShn==@9S|ayJHhw zxM!p){LDT&?OoWs$byHGEL<mK0@+&K`6{b?Ywv#IlQphwx;go`+X*+3xHFqeFBKXy z<XkLu*Itz}Lx_9lTsg1coJgIn5WSaQS4_4k3btn`Zn$OlCVSQKgqNG!z28XBzZq^E zcgK0bi-p&g1bzDZW^1j2&$9Esrt5gUeda4wCDyiMP3-i|>#`%8CxyiOC~SIN628&a zZRfUCmWe_h^Y18W{o1FQr^QjuWxsj7>h#vs(>oqsd%US_SxNt|v&QGwd=(Kf-Kmlh zFa6S))w=v~RkkQc$HmjJ>h>QDyJyUQ?YpUBrRvHR=YO7Ro0u<Yc5=r(jWo9VpZvZ_ z9zW>zg!gM!s^$SsyPHS&w9FTWM@%>w+ZFmZQ8|C}#_}cq`J$yvQr>T|tX4Zep_wPH z+}rfT%^OBv{nb0qiGDoWZD%6+qEfOm(@L68yfo-?>si|^ceD?^b_umEomH~sp&q-0 z#oLbu6DGZPykz<ExV+5K)EBlt?&p*q5%<|K_3xef1xL<2KX@>RdA>w-+IzD#)#a1< zCfLq>EcH~%>eKCKIbnMnyn@#oNLMT^JNja^qyHB>rA5E)+~!_1S?-HcfTvN{<>v0W zIW@-?X)Zo<fBJ>@UpM${)3fy66YajyzM<%Vy5TypZLx>l?<vprNcw-~?XlOJ?;P9G zkf7wSS>$^AwAo=z@4}wX<zbFBv(8v^-*V^4og(ow7pqx#alD;=Gv}|5&CNR5_2*nZ zdGB$K4qmJ0Qp!`*wxvLuZ{E+s(7z4;r*-K{REw&*6kZFtb26Cq=e=3`XI-4@Eqw7t zZ{G6*TPzqCXF3|OKj}~JY<#ru@VCoP9qZY?=a?+N6UMr&<ZQ!*`~{ajaolYFurBES z<*+3?cu!4V*1WE1Yt5d2E>$m^(iilsoT9wMYAt(R<DBZ)f?bivD=PkcS=PzT^~7p^ z$*Qh>d^&TE**{>=s-AJe^ULlXmyQ@5R+isA<C3P3T~@KilBs-)?}>l89(*(`s^g~1 z3+uYee{$Z>PtE=G%Bw|G{;E)D<|NL?+Hr?ORYWe%s?^Q;o%cF@e&Tnvy<39>Ie$6* zyQgOnZ^T}26WqJcI!edI`daMfseAS3%J{w2b+l?%eXsxd>C(fA8EyW~@>UbNTlMW_ zW6nxHdA)Jr8hP$%4tdoRkLm?k{`a0Qd$jC9)DO#$JzrP*Wr{?+I=ADSz>RyI_owN& zPF&1==3T~_)LBz5*4LMs=I&q?>R+`&P&)pCihsfD9TWRkcbR6#h9)h4AiUZ5LD5Wh z|2<RA|61%>^|+s#tzMc*uc*4f<84mV=l6GCFf4SM7i4j;a%aAGzC=R0+`n%VUe9t2 zH{?F9(Kz+-FVS#s-im;kldnA1JfO$*>d~Y}y~|u{*BuOSi!^5pICttqdC`&AK5z5> zP0w5X*^qz!udHd0znzo0`k>{ONc!3Uha2DfJJk}d^>TJI%LMs&Y_-+6aX>Ws^5o>~ z>cz3X=X(EGzOE@0`)oa**}iDGy|&-+09HBO39qvMY*;U(rqH{=sk`n(qmAFhDTbe` z#eXIDl-I^hclmRzZ}~fhb@^}AW!1P?j-4;R{&+?GOrD#%%|F{W9hSQkB=l_WgN_aV z7cQL^@_7ECDc82msadPB(CdT8qh+^!O-=VVs8~HHx{zdS@+D)I!qlYW>$>yba;G{8 zc{7#nFPiX&$El5R!diiz`eReYk5se&pE9>9$4qKpU}T?jxbQ*w?Q4DKD~mc_jn8y0 zUFDp-@BBTME8(Wyh4KkI5}Uq;t2ABP_j60roV4>%>1}$u_6M)x<Cil#_~zc`$)66^ zbT_HmJUqK*&2zp!HvR1dlLaz8MD_UWgI<3+o88zPZuuiq(E3ULgha!r4gV6?YbqD6 zbP9V^TO+{Qpl)@Kf32cn;aTxF;?)Q5&eA<NRVwhr|2L6oZyRLV=JfnJ_Rei_!oI(K zY#-#V{hqe+wv)Z$yO6+^d!HFDpWW4v>3Mm^yTWsAU;ENudORv&ce=(Ux?iE=pYXFY zA6r^?Z2dMXd)54jid9Zxvh8ZOqL#l-m>nnH#LMv}dHwxP%au2d9_uc2KIrN7?df!d z*ZelQ7lM>8$ntnjSYp`aEy>b%=ktyKlcIM0=!@ai<C(*J;n%f0GxbB3`W;%hU-QFf zOAeX+XCfK5_EfM(9_3N+IPU8mQnCGtip$U7Tim{{ExzBbS2_QPf%DjfC&$(;dZ_2< zl{|0r!nX(XZfKp8*+0XFvr%42uZU?`+`8NSHrH1yajoTcY`W@dVLI)=q4&1C_E@R^ zv=tVA+xF|T&0+h9-ZPwud72g_i`|w?@tk~GXWtafg{xz#za5C-3$#9V`NlgoYr{#V zi(kxqW@mBTnYW(Lig(^yG1i)p6~@;$bZx%U@MvQCVwHL3m8XqcZXcU4xqmm0k=0Ql zUSHJ)zt^m7Za&w|4o@&`{9Wsrd@OSX^R#<r`sFK*v&jg!Xit;2em;p~&#t-_&m~W9 zO5D-<^L*CbiMzk(Ew<458vP=w((~2!<`kAgYjRx<C{?UG|5)#0s;;S5MkL4MZC10c ziN!^zZjTAGe;eL7Y0gUVx8~mRajiR&GV{yN&U=&Czh*&e;#2d0mlp~oj?ewseYorE z`uY;FfHiB%4hP(fc8y4$P-q?Wg6~?Vy;;M(59v{Rk{A-Vrg#3|c);pc=NymBrwaoW zR(5wy_jNgxS75W%%W#kACx)HJvi?@KE4%SUCcX)85;z~B@%wfCT-G$znU)iMXWu?H z&GoQ_`-Qht5-%(-7clVoQ72OT;N6)c(+%4%m+oB1C;sHh=9t5RE9D+FvwnY*<NZVZ zl$PPmBR+DHrnj!|-fw-Mr!iG_lJNb80Nou<*(-L79c+9b|MW=JW_#b91=sdufB!yZ zcYfBx(9I`xyP6i9`_r`G`zcmii-(T;-cF6ab>vv2Sn-ei>GLY%DrOvJjXJb^GP7Tp zn&0=+hv$aBdlURxY|q(=)kj(G7X0%y39jE~FI!%7bNZ&kH<~xz=IFo4u--2F7E?Bh zj!^!&X)!vd-&ux*Zj04s64p0*ep~){7xx^!AYa#RH3xzFi~n=oWtizy^g>P}@Z04l z40W$m?q<((UCBPjZqmkp>!B@q_AV@Gd#2oGNu6w9aVAVw&g=R5<tu(|l+Ow;TjzUi z^1^RMOBA-H{aU_{ZH9Q~lU?Qgk55G}n^P`uDJ?Mn{Hs*KpRYgMzWU={qh#x!-!cVz z-Y(m#EHvYuYjuYobK~uJwm)kdI~-g;Nfb}!>(%&q<=OH_K>_a%rhNbR_ehbIhSc*4 z@2aZ`*LPq3b$TxEt9SbrHom{7ojCo3T;?6~8ehFDcYCI;ICjNI?R5F#S@Xmm|KFL) zmE~HcoAhDRR1WVc&ZpUUcWew+4{ka(&5Ffx4u9Qghg&OZrz=dZN^4Ux*54(%`u9hH z++>~u<`4Hb?F^6E<0!w_PS7KG`>W?(8>Z^UyIlV<_vf?&4-YgjXs?+jJ<-YZKF^6$ z=bY^FEdw9iO<g9)yoobIH0E;Tp~vzQj&FMSdb7g!^-KGf&;0zqc+=Yb8#fkAJgVw= z@LF!(_N#41rz;D-yCu5LXKLr2#xcFsBR|LY)V@!1U6dY$|Ng>}zIA(b$WErm8b&Ra z6+*dI>kXZ^r9G~cR~2KqHg9k8bg?F7VfVP)U+LxoO$!sOe@^iaS@XGi?K06xNB+nz z)sp?RR{6Vh<b*x@YI8r@D3#1!+Oa5cP05)%S9!Mg*l*AgP*1(K)s=zW;m3Z>Sr4|% z({vRo{j>Af!~=294mTzT{@YZs@b{tvSJqxS_v7WEk44`m>4+@4dS;3485{YdUb}W0 z?Z0(<Ti%?V0;_DRe!mY&TV7jX;B#ZS;qP2U$qFsuU1#l>mK~1>O`hGPxoq~oW;ahh zrm)l61#e@DM3Q8C{gT_PQ~VD9`nI1z@>SK%pbraUC3gsO74>(nIiLUgQpma2%{$)* zx-m~T^?&Kt*>tF4+0HK<VY_!8brt)tDOZ;9_-&_E=aw!xWqf_Z>=l9{|K5BFUHZ0c zvRw7av#Ohwds8ajeVp;`ZQ8ppjmKCYMtt^U{nN74bXR<)U{bQluJghCY=uQN?m>1R zRp-bS#aFd3)zld5KD$=gY1(h~X|qN0F72QEY7&cUCx^zf4yBVP6;}G5S?UlWx&6M- zsoP(Fzp}n2k)t~=X?ORR-710qz8+g=@OAtCKPzIYCNi{mO*TGJ_Ii)olo#iuymUh( zik$5x=NlVxb>;EDywWjaQfpe_f3cI+=N_-q+JEY;iJ?tSif~3i^HJt$N_#h*`mE~n z%zUSz!#~Dpk*gP4%?#I7>Hl7IprXz3@AV0*PTFO%UO%)d&e$tJetyiO`F5=P&i|OW z%hcw_gI^1i)X(*`oq4XW6#sGYG<MOVqLjwa5~EiZW@<N-1^2Ul{`bmLOQ!te{R2Ty zL>XR-?ENPB-GzmveODoa?CXQA8zNM49Cvc;xltH&yo6zQ<LudIjwb%^I;iB&HnHQ4 z+uXYspC<<Na;{H&bLaQ7C%o=*E7J-#@w0_mFAU&woT9&X&SbXqB0u&SE6Pt5>4x*# z<UF!EZleCScKP>XZ<oAa)!Bb$!_qw=lbyHz+V<@_C+C6e5_{W2t_xc;>eV}w0*j8Q zO<KL=?zLH^rqklH?k{)i)BD@>EN8`@0ELMun%bV9-`4y#JY%_`<;$iUGka&UFxjpD z{Ndz#UBwF<w{5xH_~?eqzAc~9f<HYDW4&THvnJ8g$zL_R`^QG!mx=lJDqRyUy;y3} z(AQQTIdw_<RNmYi6TvjOL!p|!s`p|lgf3`>rb_jnTv%$(B(HY&kZ$R*vyLvOxYsJQ zCUcuCdhz<gCwbFkZef?F&OiJQnp7*URk+A^M<r&?FFAvgMLug|U7PRd{++-jtaCwq zVT89AOLt(zrtULGbMikwIlH6SfFb+1q@{}lYe@9PgG~D-T)t=QtGxIt$F#a_?>>sF zv1*2HOkn8c7ZZt^d~lz<lw;Kl=NpBd#}+sH{l6IhyZ!KP|2mcx&lz^HW^uaK@%;O} zyYk=dwJBm7O=|28&sH#<Go{0S6VIl-Rk_oH8D4J^KVY1=E`8ku?=CAb&L(N!FSRoc z7#zD=VeofWSpT2SQ1=NJ55G3-I$V{Kv1wK@|FpvrFC<P!?T$FLPinGj#n;2JLA8JK z);g7|{_dU`v72ub2Xk58)LA!9wWI|<2su*WmHSBX>^${#1>YwsH1%?n-phOP_|4*k zbg#7V#S8~+8kb$&bUAW`KCj%Jzk=(x@P1XB=dr_W*E)^E-5%A;zwhzMUF6#1*tuWz z3WxKzuK7n=WDfR*RNlNcVV-$D!+O(+ozHyVocgQD6Or~uZ~LLCsaLmNT>jVV++P`^ zf33?s4o)bJvoWyv^jFne^?%y_Ai38URj++=-df{rJmZK|6WhC&hjnz6WouXrH*C9* zTe*G7WXG$Pvv|U7i=<4<;yAL}a}p0<zy17&-~2n;{Z-*Vgua{0Up$nV@2Y7(dsU0V zw9nEpzpp<D5Y0B+Q1$oa-H@$2Bt-S*{CHG+Ey$?i%i_I{ml*9k7Jie{u>GZ+r>^r1 zCO1wsgL(T6t?k6_uCtpPu`|L#%eh&JrRj^H&h<$XUxqEaeNJqx%{Ju=`z%=4ROW7b zFnNFA)7vV!tj}cEZTT%=nR9*RO1s84kDaH*-!)%%?W2-b*zHxfxQeE}GUfR9_`B9S zmL{fo#|=B<B!XY84VUFAxOMIK<{2F)yq(f`f<Nr_$PH>f_&xC73*RW#im!6z{w0$t zxVm4Mr$q5{G@prh9QbJVb4>@Om!6llo9^D(dgtbm2M51jy`FzX{L0Y@InT=lKdj>R zXWMMuq1koqkpJ2Fs{V=&hTA9j9+|&;bM!phR>^%60xoE{tl$&8%Tsm!-v00#|2nfn za+rI#-rYNuDX6B_t0;I`a9ZbuiFaRGar1L-*DC&=8Co4&!o9C3bNzi&ZacvoG2iVI zPwbdn9~!^&Vsg=b!zr@Wx2{>8f1zV?eP7j#B^!R$)Gs+Da!2J`9e04}kLf!zca%(2 zORroKxaHQQ$Z+-zH>xh)_DPs9iN8|lj#aM6@8Aono&4GczG{g~9xaCIr!KPX4tKMx zdg!-v`WC|+v#aN<?gZQjG`)ZAcS$QpcgJde53i45H-7Pd{@|t>9JMq3mT^DRy=k{R z*Ik+aws^9{>bI@VQgzA9tGwlm^sH_5maP@G5!k%!GS5|gK8rIu_jg+uPl{oUu<bP~ zZ2oYjHu~w)|8JipO*!_1<v`$NlV?%Cjl0?V-oFTs+A?G2?ll#E>QmZ&Sf6_yJ*%SK zMSphc(_J@Jf2~^c?%vMVUl#0curcf25w05Zr>*U$VB6NrC!gbXo$fV0FVX%W;Pn56 z1vxP{BJ9pgzg!S}ZddP)hXri~(=u3h{9`rPD|q_$eYqm<jZ0LRuPnKidgb16)3pZW z?pkJRKCRvJRKewjUN*;dVKtGWlizrye^f13{%~&A(w0Wqbpk85R~!@PapdfO^6_U< zw6f#9iu=np>CCID<J9Zv%sRAOChUFP(no=TV#)s7gZ4b0uFabBdcp5{miyMfoW!3# z(_MDv_C2MYk~`Js=OpW$shew48JVs1>y@76;qDb5<6h*Z+VxlMRql~dP`kBg%H7Td zDO{}!mRcJL*r{`A>NC9dZCE%ddmX!r2;;`j>XpjY?5h`_dr@WJ-+QHVqF6{^j!$<T zH}6-!xr`5U)A$vx#`+$Ox^TPXzt_4RexoHGlg>1*emi^roPS>#j9*zxT23=KW47|? zg%Zv3)6pKAZn!g7SP2LOe2r*&t@d;e^Rl|=Np@zhn)+jIESf28^+ocd<&E58N6}m7 zHr{>vQrLTq(nnEeUD?b(CC<u!Hpc(Ad8|Fbl5t5v_D0Q>hhAp*Z(hV8f9cz+Mc<|f zPj6xVIQ`iYrJiTs%4R=2l9u}O<BpHtyq10b<#^U6E!v|n<5?H)VIDEI$j7=>ns4XE zDzn)(9=5DLQ21UYRYX%Mywzjhfu6k~KegR;TpVnb4!-o99eu_zM0}p24A-X#sT=y| zbROW%ws>E>OP!f_?Xu(-8|v#q-`~9xETP0*c2tv5?`-hj!v9MvXB={y#la%^>FW=h z!%Y%f`deS!3h0om*xy{Na635f{;I?qJo4MyXXsrm{P*1=cB9ZKk@o`mNoC=I|4)0Z znQQg^uvZ{U`u3mBft%mF5q??teOlCxhzlGaH?T^seflo^r<0b{A&btn%=uzUE7vJr zbr(9Wdw%lt#tPfO#KVcXj5Ch2+i6sB$cPCB?^)~L81qs5`b(jNne%V#y4d|DRKC=8 zQ<pk3kJ;@Vx$P%hbg!kXo8dDz^~TcrL$d>mEj}{3D+_jp$shWe_c{LP7J2<$eHlkn zMJm_*^q<1^Z(ec-L*c3`ovYkf*}OW!HKs^3a5WwJ<hZ<LF_&<%4zIUz=faKBu__k= zbnGK*XH5&zt*U#L^fyg=PsRDC4HI@5?b-Wj-VsOUL$8%OpS@(AwQkC8hp>-X+YbDh z`=Y_Yj5W$ScW30K<W%pkTdyaF`pzmhdbIEz4~O5WYHdM})}Ph|+w|PEcbLC<n-!}r zt2y%zUwvBJ{m}D&*Ow^><;VIj)i_;io#r_A_?e{3bJqNxG56&ar=zKv@vHhS-dpnF z7Pr7BsW0~rtzGi`^`lPn)z5xAov&|_vF%=1q3P_y|F^(u^{ySqa;n%%Ij@Ly7$4`_ zJp1tGzZpl?gk7C2zfgXE^t3j!=}+&j$@|9nX6xnKOSYVtT7Q3?YTQvl=}hZ=bvLeg z-@as=BzNyhcH!;U^^;C3X}+56G&iOEV&x7+{>WEe7Z@2QW^D}eQa+fk-Z{;-$YPVA zYmCs24M!|D-QRz=Q!x9>`@Ykkh4g3CUro5m_2Gh8%O~mEjmIx(S#mDZzF_^z%<y{X z^u_nTZ&;?1|EMjwwQAGFnKceyUZ$3Lt1(~wW%#N@an>B0m0?``%hF5>fAh?_e`=YS zC0iUrP<mwOZk0ue@daE4W?3u(k>wFbjYDU@a(Ogmep$hmh5j1~WM<?YSz)y2zJn=O z*cnwFF;<5dKhF8gb_I2(6`sakjxKAOaG(Fz<D$!qsj+<%^1?*;KW$)Gc>hvJYW`tS zalZRD2M>vf?tGS<c*5s^y~c;6-fRA^S}Ocn*BRE`+GH*n{d@ZRcX4doV(9@(wzg=P zCeApgE3=AYU*hS1k9MtF8K|VPsP5v_pJMGyA0Pew)Hu<r-a%#ge^KG`#1qqZi|p9# zGcRT3(eH-NGLsd39!FQ?2uQ5-cu?}!@|*MhoqrT`JJ-(i&K3IY(USdbckJc$FFe1! z=~$!a`sj2}LeI>;?>!R=%<c;6K8>`Vu_WVHeWNUgpOy4cC&@#1R?XOB&zGWomcxd( z(J0$#!Xl@QT86Ik7OV``FY1}9(6#t=`Tp$Z8%mG#y!w5vG$E>a&YnFjZyi*+oEM*d zdqmN5_ZL6@OUD!rKHOZD@j7$T<e$dV7&|rNdNlu6uluXO<?XY<r<(T?AM3lfiph=( zO&BbA{rpqXypH_#S+(}8E7LZq|Nlx}GV8y&)yK@Y`Bj};P+5JK=kyz1)xRtFc3l#i z&AaNRI-k@%-PHEyzs&Vx^IzQOmhJF*bH$yX-9Tvbsf;rBGdIp<>Yl#k(SAWZp7&P- z^W8?lEvs#1^|>WvX5F^1*SY1iEl9rpRKk?#>y|GVw6^3uTlH>5bxYHKzom06MY09A zrA*)RclU+>W+$n*s#EV~#;Hz=b5)GGaGWJAL*4P`(Su4aloy&c&E?^FdCkCAbIys0 zZ7ZkbDdnq67agrRV#58;O;IT8>LNh{p3NZ+Ow9G&uUANgxyJENwW<mUdY`#K`NRJ% z<I4)0KOFyWdLr5PmxiXZQRmLLZ#KpG{3-Z;iM!rl|K*==3_joZX)TZ=%yf_Y@us>v zE~@WEq*ARM&KzIWJlRrNE8WUs;`TkVmjo7Ww|rUBr+IS1581nhTV4pwF1PYYd*ilC zZ~f={*OCiG&c|}CUM9C~`Lqn18cu_aZh}AWSs#rya4KN=y2vF-<eYf1*!{D5p=`T; zyYMq9&o8%o@A+iSo|-FtT>96<_wz56V$FZIrNFSc^INHw#j%#aX$RdNcU1T&8Wl;0 zUI;iT_e@6Wb>z2GZ>5)?v^&YXjyK%qxgDo*1;_pVuy6k>H;48;R<2Qe{%y*o-`5|? z#Y8=@Shd~E<-YYj4&MG}tPbuOXRb14y|}qeqE4e+<?V}rSK4V7`R<;4@^$(Ly8g17 zs(H_v$n)kx=QHizES`O{Y93@5^zs%fbLnng`R`4H#rHj%7kFhlPW}}q*tAKgq_anw zp|p3+iaoraKQPswdU!INoB6;2R`FMJC#kc!#x%=sDmSV>H??eo`1Otyu7Cu#y)(|| zmhcpXxgD+jc9Qv~*|YeVc9RnINk<$^{Fb#Ud^tb$cgB)E+^lL3Kg`-(cq6eY?!md; z(Z817J@t~Q##wHc_M!?t-StZ{SN}XXXCmYAzcZqvWZa$!`EFABBs1qvgonqc?ba$W zT<fY9O>juvSr?V*Ei<Xk<8oi9di=AGJt`d?47)dWq>Imd{bk2LL1XKe6<5VBC{8y0 z*TX6DX?pLB(y-O63%k#rnWJWM<Zf*GnwL*ru<qNJCBN>u`6@}Xq>b~7wqD%ou<qop zdD>It_Y|&8v)v>1B}Lfz)~vL%d=ge)r>1lse~`WQ-0VpY=f3N2Iacthq<`Co7^6+| zJhrw@d0y{twqVwA-Py9!Rjx-Zx?9RnbvY%uH^$ScFzWRr(|En3ty@2-F@0!JjtRY( zI8Vv{$dYgO#gp6)&*V^Kj8<s-I!CL^v7nvj!TDdNUme!H4tw8hw&e5&X_>H8V>^L; zD__r>{D95HReRo&nLOza4<^h%GWk@h?dtY`sjJLg4Q|P~ygFILtn|ZYt&7NMo3<h= zRRdSa2g_4z%^aVJJ+57M^U-?FiS{DevgR)5f8JX9B3HJ}ZO-BOFPM4OsKl`zdtG8A zG<)?v@1<)$TNw2Fwuf!XxZN@5&_b<e*`A+HiKHm+;S!GY>AxYl|JkKDvn>ytpS@l$ z_c&+D1wqS+dT(;$jRn@u&=g5yHcjZ;W_eV46WiX99qbD~IBit>S}1n&(B|UUTQ$A4 zE0<ngklSq|E_h;%xmT4cpA1WNp=ob?@M}}C{h#6`C9e7Lvwdf5aQL#wwrJv)C_mfH zbHDQJk(zPPzD8&L@^%TmnX6-@EKROSC3!jB&(Y_1`urf}$<(*K2j!Rk*yhh(r{VeM zv8~2IkDi@(ls%JVm}VDc&pfCdIWMnxj<?C@sS~dV>0JoyJ;UGIkysRASzfQhFnzAd z)mEVkoC>P^);rcnSTE`OpRU5trnyRd`JN!xXt5_79_1Roy{)j*_2QD<N8B~msrx*d zqiXM`x~g+S^PaA)a_0oU7i>A56|%PMXZ=I&D<ah^Z*-(iRN0u@r#I#3^g~lK!b~*` z!)#VniGAqZae#y4Rit_Np@skEACKRXnZKaD&d5|(HDBYvGnbxKTUg)SQhI)?Z_mCf zC;3-e-dF8VwpPjH*6h*tTQKd}2bn)dkNDgviN8`b-|zP|uS1>c0Y!O?5*(&J3(n;o z+cTZ_h@YSCGM%QPMDKdOb!TL1wwYHynW)fh-FK_b^-%N^vp%)6+{TGpe%U{pE_RCf znDP0~GKu~#r4~G|Pfj~l_QvA)xsz>LYYH;?|0EnrcQ3s<$$j?p9ZRKaKPbwa^k!GI z+`VbZQzggF%AkGy`);ZzJ>Rxln)MGuv*iD>?Wt!4)&4fk+B-GLvf|{!<2P)4H!ObH zxqp(}39aK_TqoS=Pm{PTd;g}SG}}zhsJCVxejhA#UD}kN6Ej=iFUq^YqwopqKf8y) zZ28&e<ZC`IJaEsx&MLLlX`O5_|D4bym8C9Lryd_${5@$|*~F?;=J&cB;rFMWIvTU^ z?Kyryoy&JWtvBxqa*LU*dZ+N<lUliFPJeG5WeU|idBeQ<p3(N{vqA)Je4Ov3x&PSY z?F!CwShjWiEMn)jtvNec{mK6`4oYh*H~zHwJ>|S+<cov@(;qmfaCKZ^e0E(v?bG3; z;8->7=U#zdQh#gii&WF%KH9lGTWpg-(Sx@A^Un&-$`pEJJO5tc?i05bFU$4qs6XP} zmLmJSBV+e9kL)id&1DW{X*2nZ4~ms5#5DeCzIeYZ<;7&-uIIdtneWpik2WUOnEiLI z<M|V`K4ZSJ=a!`^yA$tivh6mIN#J)AiaIG{YtnY*pRf$8lzt)WW2V0Q5j9K7R|@x> zG7UIgV0?Z->#7Nog0oMEeu)ojJgfOrnk$U)fZF573!7~0Oj|$BvyXmy;AQLW;`Rd{ z<<I)Dg-l<x#J40_??N?G|I>*3Q6{VYcPw%+s0^@_E2?RhuW6bs!yr@DmH4w_Tj!QX zRw2I@*T!xRxp0jmYl~f#?G$Na-MbyaZ@F}5cklaZ7$x%I-mb$P%0|Yf3opO9^q^$E ztD}eLH^YxNtvkgXL_5ALzFW_@Kh@s(OjNU2r{-opqyH-9-Ww0do<H{fqDi)t@zv}8 z2TbPtT)bi{d%t$vtXU$LMH0A{t+?HtpZPL;|7HCp4+6#i*lsC1wq>`S{@Du`AN+GU z`JaVn!<$|5)9d9A?s|D}=bB2j%Z+j}4||Sn{&|gC_4yWl{}a!7s$V|WHheZIKWssu z=jHtmT}0mQNn_*O-KgZe_vq&<-jn8CvsC?h<$*HShdFv@`re=RY(A@hk$1|X6N;4; zpP~!q1$OTGyKCWuxwae2|NOXW`oZ-?fa9mSwwR)lTQj$_HAmJp-1fO1StWG+%CX%m ztR*U{9w<JZ7WM1nmmO1k7QM*Zv4HntKzwF_cWq+fM&Sbs0%B^iPn<9dnZQz;?Xz_E z<H;w#rCn%KsQ(ZXu6T*R=lcimw@y;5mntR(?&{-Ov;E{#UzR^VOCPnh{_1-*-SE85 zwCGyHL#$mNgWLHceok}I<WKFN<oPXqy3Ry{GQAf~=VR|l%-O#<YlX5@<^FXQHO!CC zd#$mrdc)FacdoG3<u8ZnHksA&n_hQ(k()7n*S#A1q%CGl{L^YLnlj(8x*@ERn6y>& zQXc<PZ7((dXX^@HzpY)mVCB;r3Y&I)&U>jU_ESaRfU9k$M7=Iw=MyK_IeF_=zI;_B zHgA<-sMY0jI^5DPBCq_b{!_B~#;=O|l{;Vfsmpc8N7U#1s1^}jUaum(abtsbZ^)wP z#IG#Bb{w@}{U%a+%povvrci=I_S4J=4gJj72d3y3r!=$gZ~FK6vA0z6bF%{pk8M5) zlxROZn04V!d%}-eL-Pwg3x7<{j(p*v*)wlN%g+y+e#JC8f8WV;`UksS`mRR@8<p3X zw^-jSnfNnEWI?HXYWsTYd2>x%mwepI-JSgKboBc!?W1*l{CAk@Lf>#-E4*>%8prp~ z(aqPoL!wd@r51Egy!KRXcH@-A`?d&Hzu(EU?sGcN%$mbR59aviN%7kK@%ombaVGY| zt;MyU?7w#^9ZnKGdGP3&P?d8Tn-<hg7APs4KJl>Zxv0%5v&yv=hSvC9{6BwT)v24= zX`8o9KM<G1bmG0H*`ryv{wyq%YB_#RU?v0i%EZ6R=H2vqxAM{bZgt(M>(u_dcx<_; zz;{yWEKAQqM}}?lMf>@#TDLEGCseWGI`_)?ALT_;u5NyypOvp4#kJs>NWjdtStYFs z3atX?cOCJZK6&pq2kuF~K1WYo^eT+kXp8DMh68seb-z%yW7V43G3lnR>;$0@(W*y` zy~VF*hS+;2Ok7wg>V0_f#Z#gV#U+*(Cw0f){8i*E^nL!%P7TK-_YQaG*%@;ud+m|c zdBbs*`?B7P@@$opCTUgtOA|}p#NNof|Ndf9vd=Ypra&&%Y}S{dS(#0(HqNs-B5d`S zF1__nf6cST-{w<Ql^K{-u54+Q&Axgw>(A;O?YA|L&-;lwlxSz^uG=tcr_MYX?FPr& ze$Df@%kDihFYkfz0q)ygC%-FyiJE%6Og4~j(Ug;?Ydd!aZrUL(aHsTZK*z#7@AMz$ z*JeJ}GQ9ll_UgMnZ(7^`&0BI~YG^D&&}_eL9Lx*d&W0^@vYi=x^4Tg6;S7$oB`X=y zZ%JAnSi8dJ`}JpYK5x}1USWUD_|DB=*V>GiNQa!R=J6_C;Pb6JVxG^*Phl+{p%w9) z_U#N5_?)D&bU||8+r_a;<tw{0HKV=SHwXR*lUsSYhv`jJBWJ;!dl|mjf)(?B?c6u_ zUYeVPh0(uc4vVnhf6OA&wF4Ssw$^_BdUmR@NT^$3VPdMcg`b4=9?_1t1FXF3K1x(g zjqaU$xL!$r&KJwv$KTyjB`b}WFW7SKiJ8iCrgIB-nTB{SyRb0A+3@qX1HD?Un_nCK zy(-dvO>w7BcDbY4PmZQ<&MyUn{(HGA3tvs0xPQ51cvj2gOVUg>uXGQxGHht8s65j3 zZ01pm2PgM#eiC4n61Hrv&}`Z7%RbKb<hr%oTb@fK=<qkTU6RsIa~?8B=(ycD5gspZ z{Ajh$k%iae3ri9oXzXoR<D~C2$5hZE;$+h6t0LXIP9M3hmQi<PMth+dfBeS}oGTOD zCr#UOX<fzk1Pj5_RSPHS*X3_?UVZywUFhCDZl=%cO}ES3j&Ceqv{!sTf7$wdR=&Hk z)n=&$Kb`ID(#hE1_2&bJy_Wl?3C9eta4s{8yS~;zJ!Iy-xq{jo9PDI2zEQ3CCf>e5 z%1li5*3PP#Rt#x24twTpmt~Z%G=F{Rr|=4=#&_pVsYPATuKZ)S$jW(Rr)am}RmC9g zlH@zi=il%>Oyp>{kxk((z4kzP^B+Frt_w557+iL*$=_r#FZB#>>(kk)n~wTiS;Vqi zR>uFfP}94kqTXjN&Xj5RwlOrda(A8oSqGUVyT4s5a*cj-;rrPQA0F;dot^lm(0tKx z9<BoiYgcZbUr>E>x|!MZS=#43>sPuaB(iPY`CZccj$=vklhQh_Uo4_iLQKyK>xY+` z3mSI6%>KRJeE#Cax8pa=id~v~s``wvi4M!l7yI6@ztjo)Jo(1{?JrX=t^amq;i`Ee zkL~_EVErvr&zHBobN<}<+S&&a46Krsm#Lk~{2=inEurEz2e;3xH(8D9PMllbY0c8r zK62s&)9&^!AJn)WY4xYhp1s^nZQ9b;S9fwfWmr^`FBH7yPC}5x=YQf?7tD%gO6NPY zc*<(ly3Gs1&%AWh`DmXs+vUTZH#aiYO15>sNV8q+@~>Wd_Z{v7&mLFB2=DDE>E+*Y zf3ng;c6C)Jo98mItx47Mj_$ej{z|^dyWJ}n6|}!$W*1+)t(Z}tb85?U7ypaZSN5-# zF4M6%<o@{mThG%K#S7aTt*={bEh&DytJ89qLD&g{^9PzZuf=PumGx+22y6;_zBo*Y zNpYgtwu^gv_byDDlDVqpk@?HSXWy=_m2bQ8`K{K1S6@QIf)6yVICD3eQTd^5x}liS z^YF#`iz+Y9G5lCvaW}8wZ0aScs4cU^Qv0XR(rjwI#N-}qd12o1mUR+4)RiKVFA7#& zcu~AA!~c8C0|Cuj0*dtwuipG$x9_0Vse>iW48|uWxQ3|RQWt+%_}FdlU)y(;96UKz z2Lr@XA2LKd3Ekv<z~nsFG=o{oyDr@CZ@zTw&iYulqSIfirt$y%QgG<!wkWBUt($kR zKKP+y`NO*hns@lSgyvnCtdS6Q#Q6o&7B5b{6(;|lJMP*MH09FY>;j=sgE@(lZ{`I3 zy<r)%EpFjdYw?n2uj+S%pRm*awA4y(f78adn|@APzv|7Gy2TMuwrn5O?>xSJApb>< zw@9S>w;hc=%E`CIwrzTRTu$fI9FaYSmn?5pdEb7d;$iFD-#owa$r>Yl!^C%ivHOei z9&g{WJIh9OMwMq)o7Qughrv8ge2VvId>4Eu{om}No#w}XSq0_d-y|R2`ZLXEm#)^P zWBMMfFCG8gb?WW*H4}5@z8d~xW>)i^V73_7>m5a^R>kwbX$vP>f7n#9t26t$0_W3b zY_FC*%ZdnoXS{0LqSX(c?+CsZU}dRs`qKY%2Nx*piMg+wz2^8w)`>o4{FQTScFy$f z<Z}=GDb{dwV%`UpFW!gbmR~;X7jNu-wR&?+nyHCMM91SNF&CoGr>rP6JX5FMFSKY~ z;69$%)e8?TXV~l3mp4^IO+K~q@3!*y@vKe~rkoe|Z97zQWNlVZXXwQM=h=ZWGZyl{ z3QSwCu*FX|N}vD6tS>j`{poq@{XqB6OdIAK%oCcH$M-az-|{xLkpI3{(mm_qCC%O+ zc_QcN&f9b5LhsMpK4%Xk&#LTSWw$Tm(T$GxUI)+d&zibdO?g`5-iNo<^|yp<3VC!m z`1d4>xNFffU2At=Oq%)g<gUozh508uU$0$xXU_HX{1(IO`&Wte`klGztJ3i=i0fzH zq?@xA7+otr|E)br#P4#{39(x(i96>vXRQpmwqv=*d}Fqxdo!Zn+dOVm<q%x6rZKZ? zXS%!dPrD+c>dfFv-TYg+WoyD-3ooj7cG&WKLg?Qdmse#nlNke+W=e}K%a*@db@$P} zuWQd%fBELKn}KP<g|!Ww+oxomSoqqy?RZp9va<A>ttK7U_6j~*KB2BBV}cm-xxVbF z6V@)edX)dv`-$t-UOBWRKT-2&tTy?f`|9uczuV^=bWzCJ?soEP?B4F8W{0S#^2xIW z3ueAA%>EkD&Od9FSD26XO`-o^6c4$T<%cYI%;6y9IJ?uUIyC0qj)1)n?qA~C{jo?! zy*6*XY0xaMyIP)NM`jkfUCvUBU+`!CDPt|08N4$y&*btgxN1ImW`N+UppQ3peknX9 zs>>yGS!Lz_%LgXvJWUBc9ptUFH$QXFc?}&NI~7OI@aDOXYNj83)N`{y{0aL}fvJDO zwyE}T+pK6|UU75&FAG;~Z>N>Ps(mrqf0y^zEq<>O?P1rlk?qOz4>}27-oO1J|KjbU z!`@#Mvlkz9?LY9eR_o-4kNbu0UhWiL`=&Pb+)=^zGyOl5oKkPk*m>grJO7uqZM97f z?bDndyF^aq^l6@Q=);03^?NuNWPBgLSW>L=RI$|f|D)NHKJ5S5=~f!IgOT~qroFb` z?#&L<m0QpGciEbAwg*ep0{1RZZM~$gpI0JvQ`kYFz0p1Q<N}6|Mk$Bd_QlRATUhha zRF8XSK)hwZBbx*J60EA`yD^ldrLF47yzh|DZNO^%N&nm-)`@QfRaZ@aXRmBs`u+3S zV-;*m7F4FMd2{5;{-|BI+C+>GvaeL~>zGsP9I;Ny?^XH(w<_oC%SYVSq>Fll$h_v6 zFLX|3>!aWN*SBiSXTGMt+~wLbe)g3X`yB6lUUmCw$~n(pqBin|>XP1X3VcgUe?-im zGV|1x(;wf7w^Z)hcp^dM+-@E>`Mcs~rxfo7s*5iFGPULVu}zOp&0xBmxI5y{nt$@Y z7X<TW^e+cCkCav-6r*_%Y2U^Dot>ckRiun&fdwL{Un|xqYtQx#N4{&Do!{SN)#h zc6*Y(r%V95nMp<2L6%(t=T>wEZ_cRu%hGXpbLq~x_C~QQetG`OUu*k(6F2uyt4kiI z&o4U5!97XD<zQS@i;LoWhsk+$r=xc@bmeUOaQXf0z~xGs%x7J=d(O_NXgR&*dVc5z z7w%Tk(&VPbxNJTd$2r?B=jN4dD0;SQ<AVnpi){NQ`YG`n#PBegUi)+FmDL+21>GiB zotZYfE_yN>Ej`-YD9aV5HFL^~7p^k*^X(_zP3vO%enID_$%KOWTeP&#-eHMV)?L=a z_pf<L)wUaZ%Gm_NnQbo2Ide*3>(gVQwPDvIVqdD+E;w-G!d8EoW82-L+Sb2|f9kc6 zm*rm7Hl1xZ%ddQ}z4T|k>SgAu-Ms8~wE9jRJ6;&%%+cv7_V%*&VYz*Z>~W3fXYf8@ zRWb0qq4?5PcKhen+uo}V?q2u3=hv#VHQQrCQsRsv+j^d7N#$IvcFt3KI(G@jztk7K zOwV5`O)*rz>F=(s`RUYklRI(`k3C#?=BVqXdcS)Qnagi_PHWzA^!LX#%1tU~KHQmn zX2%u&=c1=FY=u}87asai!qT&_;Jazu@#ek0!M9jW)SKPh_l40XLnUP1;*D#JW^QU> z>$tmXOWDu7H$D4iG`?CiH#=r&nx4^>1=iCh#$JkAVr1{sC+l#~{abiPpQh@wBWeN< zix$+gXB|Ac<=1uJt&B|^vFm1E{1>|C{l%|KCM@ZBd#dV8v1rJOMAptszTaDxOEE0% z(iL8^R((NY`Yf>!7QG6Nm9CF;<d4mH!4*2)`Oc-+9nCsLg)9HRJ2A)g*ZGFcy9E5^ zTlxsC_*SleJ42~v^1W4QrYD5OPOEUgi)(o?e~MpU!lO5wn-=FDw-(#a`#$?e=rM6t zPVYH=>e|`u%_|>1UR7w6&~}q&a-cZxd9^9UpX=B@)Hw1VRandv^ycnr-MP~PqgHfz zSn@?>bRD$`{$+in#lX1Js4eR7W|0h@-{IFk8tpx~R{D`(&xU7;D_h>Nov(;~=iXTQ zKTiLbqWIbtzH_H;|LIoV^>AWjhV~p|@vo1R_dD%PPVY><{zzl`kCNd2GY9osd3U{D zkpD$^-IYmVt)?5guH=|GlrLlbaJ{|!Ip60~S0s5jLMv7~=ueCiKXvO1gI3P=x5n?6 z{g`z0mhq*s)c-0;{{J7`4S4+LaPs$ll~0={KVK#)dDch$)#4CIsW;pQUO8F(mD@ir zMltS<-KKK)DY+8iG0h8E(_)NNUvFOU)S=w5Iaz1A+cJfD2J8{N-|yb|lC(jx>5ruU znpfMIP5rG7)*TbwFTF5NKy_!bZ@@C=U*E;{eX?>?vH$C_^Onf<>8v54bDwk_(#tMm zp1*!wsKJ4S%bf2|`ummldO_D)#iw3n63ZVa&hui<E0}V1@7if?RuVzkMOPoq6-<;d zVYsOn`B5Ms{rtT<|5jTZkr2*k^YXQ2JEm)+^?2XKoEr=}8Qo_eS8n;{_Q5M@r|jlk zCn78jqK{sfoE}=IaY1QowqN|W2kHr*;urYl*`_9bomG4O)=q~16PFgL&wVhntm|Ib zUi&wqKi)ifD!W#0-JBjLog7Y`UHs`bC56YW1DWbfjp9ztQ;5DQIs4$t7wn7MKE<lE z)Fej632{#nO4*|K=C19En>RW3eBU<5x2XQGy~6V8=T$mX_{`(@K5w%8bUF0ruYEuK zt<KL~)4bM+>C-{8zx?|W6NJ}$>T>4$CFETRUy)m_Q{vm2yI9Pl%DwoDVAPC|oXcAT zUae~X6#mci`KDZZ)%aVp1)YEHv0LA$dH!GMfhGI6=Px<Fq+dYIxqS13{i|b5=c!oB zNAUS+1pg2=u1!=@SU<b@W1d1t_p$aLp_<(9H+8<9e>*;UUqj*<dry(CX)F1~xBqSQ z;^eRCm*IHkEq<U>y;8X2tLyZRbDu6q`4vX3F5b1|5<}8mX$yvBiP~THc1ydhxubnx zap1wKtP5Ry`)5xM{CLSavj2mVO6oQ5;(|!VuGwq$M$hExZqoffN$`97&5X?tR|iDw zNRne%y;0|bX?|qMEQ9Y`(>A_)9Ureci&IV{$@ad1<(G`;PKLyD$)`1b?q%X#Isbgs zyF*)-v=~h+?^>`e<Lsl&Z>nZjJ1jgC>GpkN=={8eZpMO+X<pOf=e+ItvO7&lX75o` zkx!Y2VjDL<^=?@HpGWwqtCGyKkV7Xw9pZ?%`*7N}c~=(QzMv)YLRNgua?2%L8efC5 zIh~E}Utee7S@Kc+_R6c44zmy4-d1xXabm<z*L&>!cdgjm(gURI8{V{kE;Zk$wrgTo z=8fm=2M-@|_NbrZW^f{3F80jh-P;!Y3l3C2lXFhY?BwlU7Of?-1(-`rY#f$qwMj91 zTdZs2WcIjor;FJ)b;s81<Jn8zEXmLRzD(+Sd*#u*r*WF6>grt>&xu6&HXL^TcZgN7 zT)WA<)BTg6d)_v24G*86Rm;A7+LgbBd)Ka)3v*Sr^16H0y%LhX`MjmvVYcH&rW?Qc zo`$eLztEM!))@Mvihcc;I=l1wl5wWbTR*J3^sm!*{+^<xQJM~?e|}B>I)$Mz!gx#H zE!8t@-uKNXZ0(OKpIM(}cP(;;#-X?OBAa%eW6%4X%eMM$?SlL_f%`va%wt?~;Bn>0 z=jJOi*(z&Zf0DD=y#Cj>Y4ch>$}?sC4V(FFqu;W;Cnd{XAO51)>%aY$)r>EB?zRtA zJk=h)_In=3<ifr7qd>ZPR_*<SR&mAo#j3)!XV*VUJ$&q&RAYGix{{;rS(Xlkhw8W9 zv)>}mrT)QI@#|*I;J%%Ft9T!3y>9%KRke)!zTC#sPvb7np7yMcFCv0VdiV41k7x8d zhR&{Rwc9-B9W#smTC42`MEC+$I+<+u=wiKk?)LAFpvPJUvHszYHVSmyxzzkA?cNu! zvc(!Nwp!m2P*2(FnE%6)YcH?elb;VKzMS#xh>S2};-Y|Rwf@qh8z+A=eC)zD<E8qm z*|~RbSoa!SxuRZKa!^(AgjFPK!~5C;x9)xYu)EFrmjRQFlKk0)UKjnH^Eo)<XC5!U z>?TuOw6$k#==6(=G_CKy{<)2>@1O>oW$f&7p_Sr}2RrP}AK+ivx%gj;>Aoq7V*TmD zVfS*k|7h5FSk!wjw^;fYqYu;HHNACFeXq4=-V&Gno_i!#x1YKe+P812&9&_9?7l~< z=d&LFAh~@@jP1(b%Az9cwiZ6RW|yMA_o;M<;l6TijiVn{O?By7dwLeTmVfcJg{+Ha zN(o+6?OV8|f40@s%QlZvZ`p>dI2OZS*wZWde2dODnN#@_U+V>JcXCzWdm+1h^_=iY z{A_Yobx&@5>C{$ze8TO=&J_=KUK2J8PLJ-2`nvD@^M6r{jiHS<90X@F8r~O7P_LWI zxmEJB57+&-${&JuSMe1-4O#njdWGw%DPj-BL;k$Ab3HI=`C;t^cTYY1R=-TXs?AOP z{T`7&V!qNJtTb$RHqLx1u)LASE01sO<(CEbL$9rPV6Hdm>+xk;+isZ8f9LOfU{mXF z<>`*1t`e?KJ{nbK?5^SXymN~Gm$$!GpSbR2%f#^g%p~D==NI;gu1?D|%H3nUGh?>z z9d60nKi+a{F8lR9uyw!Wk6fP{%#P|0zaJK4+LGX2C9B`m`MpSf^K|9N*x!Z+PNiCN z8K=5lo;7)G<MLo5(WyssY#o|5IR*IqIq~S?q?7Kej7yzbc!DB@)vxC(t<y|jyJBJ8 z-sMjJL;oLnES5DhAtgHS^0uvSq!)faQ2r?Q&qbrAe~yU{rmwKGGu}D#*o~U(U19P; zMM2Yb9{o1zt5@%x!&qHdz5j8}hrfQ;n-^Sa`gitllIS5njo2(Pft`=7p7u@c{lvf& z`%Q4AidBrN(lt}R1hLql;sdEiyA3RvFV*QCX!>(@^I6ez>tuIN4LmkQOZ#O!<MLB) zg+x@H+IT$W!s4B;IUellmDcdSKE=%7wc7mC-+Rvpb!R#(YC1CgOia4N5%J&m-`3;^ ze+gEfxpJT9&9!>1o3BpKWw6_5FyZp2@0$BBC_I%ft&GnU(wU+stE`mrH*4l=yWZQ^ zKU?fxBimzqmP>7){EO`q^KYJx*cb1+WZzLW37xI_2abgmJAV$&-V*YlYZw1Pjis9; zem}V0^2XfH_WO2+wVST4v;P#85Yizyt!w(sdKW+Yp5x5-WIy~~f0{wA_e_V&oEZ1| ze}7lGO+EipDmHD&%hMBzU&u%pefLnA8hc3Pf8*>n@#}u)!~*{`1qSc?*kT=-E3`=N zuPZ}bRHr2KrQPo=^~CQyVEJ!%rbBAlhpUEmE@$`GKAYb0DgK0SYp6T3>W5XTard7b zV#}0QY=~Q;_<knKOqZ2EJM!vgbIWvH*J*ckTN#t(cHeCFUze@s;;*+qZw^|JXx#2O zCvMvw%>&z)ZT(WcWXAlEWiJjr|My@?i~E{1xi6b%9%0{mE$En3(%O8h*q#GbY>!<p zwp1-uH_%-2>Fo>_g_(kTRnK2veYhpz-?bIKc2db^^Sp0A*WS&TW5mqrXOS7$cH6FU zMu$b-3HL`=mEYfEI<$I&n1#bS8$C0%1Am)NzO<3lJH)glgROgefz$R?f2F+NuWFNu zUa<Mq2^SajJMVf0mV{q;<tQrpbdQeKrFV+0PhxhwRq9T-<u+fRweS}=+t&q8oj40p zOrJ`NUCQi?-1%{X#Iz>X&6zjN56Mqmef{+!tIzkgt(@xjVvD2=qtVh2GA?T#%~+qf z;aF7Ot(?4%DGB>@+;XGr(k~WC)wA~fFY2EDdeg%0LKfDvkfraV4D*tADRIOVRh*DK zo3b*%Jg4+>$!`$`OB-Y5fa{t4He3&;hi1Ni)4f&hv10z7`X@JL)VIX5t-p4L<FfZu zG53a!OKbQ4^ImOpy6({%CI>5tz5Q{8mrJLg-Q?Z>B)&s;!_AKgRW?Ft9Df)U%#;7u zf8MGjE%4j#%KW#V_*bpIzw7(I)k`Lcaa~I}+guv*V%?(Sk2q!aF*L5fe^(|&HbLvD z%oWvD7Owqy&%b_=;ymfpeD?pT!n_N5HH}5(6EC}VJ_wS#7qZ~_zUEy@bFNs;;gBrr zpZPmnSE=pe%%D%(qOTYTp5#0I$@ASx>z8qp=KptS=oa(~UVZU-$U{-ati>13wytoj zOOU^;6gg=^m%8cUCzsL|_HK^v5O9?4>HBsk(a`C9#@AMr>HB^p|LjWo<?-&vjS2R? zGt4&_FFJi^+s8Ru4(>c(ykPy=r=IupnPe`m63GY^`luc?TS0c)ZT)AmZ%)qIEzMy! zx9g(%xtxtloSyzX*|F`dQTgp<+ZSnB>fX+LZhr74)6x$+{gX33yId{U*tMj0WA&-v zeL-i=*IbdFT{Pv*nkUZlPV+m><+}1J&F&bpzoE_j811`KJX=cdG`)Yg>12plW6#Oh z^={XXwaYM{ljLVF3V6pFDUo-PJ7w~%hVb_jV}$;0Pzrda{;1O3&8&CUo&TPeM@-zg zrglFqWZ5D6o;j$Q_r)K+CoBmMnM!V+D}LK;UwtfL+o7`W&NI2s|GF&tx_HUN#e4EI zV!p&TtT&QTwr^-EJ9XNBuU9K4`zuK{hS_W_{ACl>EUi|(GI=!Rx6<1U%rE4tLW@tG zQJB}Iu$b4|yUo^3=vL^<RZ~KP?q7Obo#`ymmaW*|tN8cu1vBxFJ4D{}&3LeKb^5Ar zE#m#|ENdDpSy{hp^s#)Ibat7i!M%*7lTIidnQDLN$vwt3dcJ8(PZS;sGb;XA#`>Xr zL4<|e+qjq0{+>K8ZFfvj^+A)k`?t_4nPvC?Ubf$waqsl{kZsa`8G9xLOV3$dx76pa zaN3sG&TDgL`ER@)bpPS{LM=rN-@6L`MGJncf1Gf3o%HQTv%fBIFFwBX*@Fau+Kr78 z*AFQyEX{RUleg!Z?zA80mdl@+_v}_lvBF&K<#ijZ=14E!R&DUb>A}wYWj`!ABvS$c z{bpUeHv7x=&|UH`Y&#+%*VT$_PCIrWXz`Kq7OUCU*0&aM_n(?{G?a1f-N-B7xD0Bw zWfcV$H*cO6#u#1}am6&xd0l{zS;?Qr`CI|q5smvRth&B@PO7!Ou$ss4>H5X{b*4C7 zIJR<HcUPuzkmHk&Ij=ANTC_0Ga$CwL?+PWC-jmj;zYj>-xH|LK?`@f>a_#gz?(N+3 zv<?N<2JDHH+Wp<N=hEAyo=pa9C91*cmzo5U!uwj!<$Zqe(_QN`V=X_gCRenO+IJtP z9UaNxdL1r8Uz)V@HneTpXnFp7|Cd8zE01)aosh-Wx`@+AbL#P5O>XJlSshAKS8#aT zN#=bNWO4qddR`a%g7c9Ek29|GRo#8JsO$4=ZM6(Rk?2*PT@tT0Wj46JN?Oxox<gGk zEqmH7zpvL5ewHljI^Xi-alZ%m<f3Ua?(R~4P%HL<GtTA6l>*)V8JE^vf4$=VE%mGK z^(-!$DtWX1w_bgJ#VJSKRR$-g-s<WLEy_`@R!rFNSnUtP3twTsi3g01ojZT}b%t2& z-R=vk_)mWgOep)l-6ksf+}Y(74QFGLojX5dA8e4Gx5PHy(dg`gT{RQbL*=hF-I^>= z%TsWxc3tU}OFx<ngEs|SdC418m;Cpt(BTNbTl39dho`2nbS3dSq`TbsE>^;&<*9Tm zFLmEqdDeF=e_7_#rI%jQ36y#ILvzyXl>D^ae%ETfUo!f$Y_`4rr9-j$&YgejRo@p% zZ~N@IX|{}!J-^({Wd)|XQrFx>J}&R5zjSiR^Dvp++duHn&)Br~vibV_GjrXPyX&@y zURka^oqO*i3t=I*n@huHT-<%jG^$W{Rw0|<mtU6RJvru2%FfL6(!aHGzTkGVJokUy zy6@WN-Adz`6J{xFxASb(`<?Fb@mtRa_?`H9<e~C%x#@8;xidOG|GskX6jSk)%)>{2 zE^_ovQkQak#uDmw;m5(kI}cZ_iJVdSK5EIYZzX~PyVuq>aM*AqJW)^#&ikyUTBcet z^Izt}mwRLnI4${SeCf5=z1^&LSA8k}dH&`OMU5+xI&TaF+=V1P#QRO8)smXOtnf9P zGetG^*HI>IXXpDGSLg1O+G6p0#Rjj7VSP)U>!zM$XMNwvrNsMU)=d7tvtPb2H(ryj zIYETUpm(!1gSXB)&&LaSAH2%<+*#x(8~9|=<A;k69Y55>eNHTReF1~X4u$63PZvbL zm-t=(W!Li4KYs5&e|<yIb4SK~0(Y<JZ`AUO_}D6*8g-nNpJj%|W1D#)=a=6wVzuL1 z$bM^nUhN`RGoQN~V;r}=kaWNDXzusTGtSDDvO6j5eysfNg~*rxXJ%-u;1~54x~lb- zU2(3WgsyUz`MZP0wQ3t~1_aJH&GFiLMuF50?s<1N{WFS7?ueFCo3Ul$`ctg`tZY_u zgr_L1KUjOF{eR1)V4d3?-I=RbrK>*jEN0%~U$oTl+6$Q}{}?=Kb!V%x8Ez5Ges9gw zZ?$0V66V4J*<6MXiJJ|$9b7n4)ZLvJdT#G2oKh)cw&6^l(P^`gLT2wR&Yxf0Zxm<l zI4Y;U)NEQ{c*c_CoQ`>7iyCb2+j^CiJ~Z#x%JV^TN3wD}_cGIix43+cX!M9SURFC* z6SwZuTC3a3C%9bxa+T4;J@<2|Ki|aJTf}x=$f;TAXrJ}{tGUm1%ZDE}eL48!$NAE* z3oa+SL+&j9GK)dt;Ov`MbS{3Yemo&po2Qjwk7`Ry-GOZjz6my|A1l8ab;POo&acKP z83!cSFibvFrqQ|MqVVGT`Z=3*pYtC%(k1-&0;lP!CoH*_1hY2s?7X+A|547BPcx6) zy-{^;vgVv%&1skXdIW<WUaw&as#~Za=o}W+Yp9!$II%4;a)QXFhwE*wg|G5h>rmpg zeS!2{&XaR2&PA<FVGnk@K5J&YjmPXgLi2kUf3NH`kg*Cf^$1sdD}LG}W9mNXP9@Ip z0@GDrKh5m)D4HNtfB)M?VMnJ($DpK7jzt?UZ*o-Od)M}NLbcH9S=|yG)d4(7e}#5# zb@yTY=N+j!Up22|u^-zW!8s3d)H(%3*=-K`zF5+<MNipMEZiZ|eiP^F%RZ%LGTy&0 z>7TcKJ#XE0j+FabO_j5%o8NUR{BjXu<+>_0`>KV}-;#@pnOknpXTQFH*RlARrITd- zdckz3b!L+Ki!VJsrg}r;IfqXIrw{)c`M2}GIY{)}&UpPluKwfvl^5jWH$I6d`TS+N z>V<8Or#>^t7L*Qhoo(>$_j>a^T>DLqO}hACq43pUu7xjVOSG_6w5js7TKB|<q(73c zGwChlKE`(1k#n)<k-(p?>e@Hns(W}kNpR|c7Zde%{p&1SV!CPDpFZu`TCb$8`o5^; z3*6LJEwb48;_bCQttqlP8=iiuDxKwb`+|fXm-7=dp`xG5vfPXrGiJQWslMQPss5js z`EJ&K2Ct8X26!KQbpNWu@8}oz4x3E9!}>(|$h#NoYStae*Pd0A{%-R!)~}M94zrH> z?>M{fwo=}rkFpv6UwfpkKhyfY%ub&(i~AFMpZ)HGxgtfY#7v@t&D@F<!}YSJRxZD8 zV|8TVg4dF=m4(G6D%WQ(n}2rY>|ISiwwCGGuilaIk8$GpuW^T*{clHI3|qZ_rl0Z+ zC$~v!*Xy_QetUHOv&4#RdswcQem`RNOjY4V(`&tzd!H@1$XH>0{I5d)k~%*R`-c_P zJR*&+W=uBJ`M4-M(JpTH6UXIq*m<1Nm5<k7jrpC=l)b&bWPx;GQUPPr?5&2Mvo*Gs zJt%EXI<<J}tek&$<s*7O^D4?MyFF1pcTQH-3ggF*w9G?mb_hMwl~t;Ynm;l5@X=il zez-`~EIyXZGA~j=+-d((zx1=#_g@Pv-}ON6{{wXk$^TY8a-s7MM=0KscP^IPa^)`9 zWV!EtOAa55nf)U1Qo3l^t4+s#IqlN9+JE9zlkw-{s~=^5Gr4S@|I5mzc=magG~WWv z<i{VHxcWHHvOi)>U$4?(v2gmPi?1(*icR-U-nz%?_@qat74`S>O|4q1d&w@MRqSr{ zf~BUW?=LTZ-K;&A!7aJs@~4^?A_>=m&o|xq)f>0{*Pl8L)&B+8cbgWapFOlwG|RAW z;(i}FkEsfKgr9zzkaD{8OT)#YTWt?6Z<F4q7q5PpO>9MOeAdF)h?_RCNtYz=C?3n@ zXq+Wx{z1&5GV897{DZZwCGJJr)vEXIzsm4gA}@2+^eg|jFn+plXMWh_cK+9^LZ<IJ z$g@@L;o|LEwlJz4`tvyW(aR5eI}#_|d=OM!{Y#5iI;ed9@+a#IulzOF5jhfmZ|?S4 zyQgG&&0Xr8Q&#%n^Y1gJYOmLqrU}QsROtUcEn2+Z#dl@4^0PVzu|@lioj4jR-OjLi z@4WR9u}m|w1a@Dx&EiSxNI17={m0Dcg*PU9*Pk_gpt1AX{fCmj=A4>)O#FJ{J?qJ9 z*i{ZMyUOtD^fSp<0c9Jr-#^ZbPCXYm^YA`h8TXj)d%K+PRP&!)KK)frjCF~;px$oj z$tLlSE(ZE)^L$klo?arLuOP$X=3sfmWZ}^n?+)zzqd(_J?R{pGx&^$;D~`z>zw>(Y zzbiqK=VGPBCYr{@Cq4~LTE1n@)`$y&rw=G!snyKb&A$7O))J#$i^O?TCy1Tw+0W(X z!JKt&qMX6h-<HpBwbd<~`BtW58dFc=x@C*_#Gmv<voW8L@(UCEd-JKRP2-9qEbfiG zH)>}xsNG5o<|$H|^?X&q_oHGfJ-+BPty(@y{QYYNPKR&%WfpAzFq`>}@z;mf&dPsg z2@a4t{_DNqt;O#P=T9t1@ecn#TPw8q`#CqMi!E-+$ILb;-@CKt#AE-G&ieje)2%u8 z3ixq!TnyH&$*l^XzTx75?ShwEo@`Qk`7?jhQf1ArDXtmnCpFJ&vL%|WV_k4LN$^X{ zO4S8f@~s}`lk_SdE)KZfF`s4ShlkDiEQeNb#QfI&9(IY>we5>ub2{5oj_IF--nYKl zfBosH%NtAiSGC({FrK~3eTS`+`IEGTV6<$)?dHj?`%cxh9l87b%`D}8o4P(amD<&A zy?!OQ_+)*ck-+nHDgD=?XPxbzlrQw1_3_=cjOA*wx$>41lppDu@t?`7+j{ce+;8SL zQ)e#RV{_m_W%cD6!B&3hpkI$Rcsi*}y!fH`_tc~Ob)D0u85`P#&GqW+U#)Zgw4+q1 z*OwDg&rkWs|Epak{!2@)PO<k9o5#NO>#_=D;#y}g2yXs1bGGHDt4+1tscX(Wo-Adn zf9}SfRnPzbduOH4|06`{3?JK4p{HrmDfd6GJt4Tz=7vtpnUHH)ZarOZ??>cRgc(}6 zIw>e97#SEC7$_(xD43Y08oW~6x_fC*dH;0Jof6uQK4eYrNthQHzdB+2%MHvG%;rUl zRxHVJ4rZt{f5PxZ-+f|tTZ%2iQeOUvviq)af7ebk{Sn?g_t@<fDf6=Yf*VBj1ya|a zY!qgh)EjDhW{LXEDWzH8xft`LBNU@@H|49ON!Bb9-+zAJk`G6;PQMmXVf?=7a8q<q zBcozZTiPVAY4snZK1k~ydi?vyWbV?%r>1W->MWbb&^-ULnTzE=zs!w!oh*i%ZfN_3 zNW^eF(Ms$5_;=!=R9nUSn_KsCE^mCjUhUk%Wx;Pv?)NP6)MiTRXbXL~>*J{>R^E57 zU-MyKJnhjP+mlSsqqiQvebBVw0n0OuYE#v^j~}I9`rYlYe)Du=_o;s+?@F?G-Bf(m z<Xo+paKdbg-%@P_&bJ#@<uk9@v1Qtim${Zb3%S&SLihd4&KLE6eD9l3Da)3nuBqQI zzY$v~E1K;&-@QfQr9{cQ0^g9=^M5_u^m|*c?D6%F7I<yn?o`LV!T9);!#@=&vsTFO z;0jb<GSejKXK`5fJpK=J<JRPg_cz+7UJLo3%glV>^d3EP^Zoy)R4`vS7`2YiywBE% zQ|*S(ttFqP>Fp@q60v#a|8s>LA0kbTNL||h{fS!kwbwQ~CYG+^kXx|%_@knemCfbh z9V|!I&ebtlC?fyD!J*vfOYDwt^(LpX^2_mjc`UB%TV{BQaHo2FzVQG3S^YJq{>x3@ z$G_3#Yr?yS@7MM6JnC5ZX7BtTA3a*VTW0<(Z2lmv8XkDWZcEzXdu}p9JdZf4lclu! zqU}w%%=1Lwb^hiuxR59|;lbtv_L)MCUvpCr%oCCK-aUWXnH)o=B|8<aPd_!uE4+J; z%b%T}<NI&zI}oSYs(h#`*(`JK%VXZv{F_SkR&QRg<<)10!<Xl9UJsD`zryC#>NDyO z)|DUK%w?IdQ?7j5o_7`UPq(KYe|<ukWpzz-WLu5ds^{*N7dZ|1*;jLym%lo&$Vyk0 zZ6Wt>Io{LPa(H*CEG>=QZNKrzwQ$#zd8{|(mqgcItf{cD<=<a@(uF1d$u_p#%{^xM zpDudlwLQGF)tFVM%6m26yJs)I@=Kq3QZDk!SFh^FdG~YMQ>s@R_em~VS=xSGGU592 zYbV~@-ZElrs^8(bdiK|r*VA^3<yOz?X#V|Q!D-@6SuPPB*#Nyw8dusLPAE+mn)@zV znZf9h@T#3R7J4#GlIImEl{nKd>+peDD$gRHi&aEC;|;MD;#-w|At6BcxJ}wb9RZ!^ zZ7CTO;&gxg63uiJn6{v5PWdH<jogagAIraeXB3?JAoN>`QbwH6p1sDcAzV&7e_vS` z{Nn1}z#X3sUT7<Lvusk@zM{)r8A2bID6f%xQ?<@_`K<r<rl!99$@+hRmT37i^GRPW zeYX33VnyNSWd}Xg!h}Cg+x1|QkkCa<y($k?Pc!BEeP*$48s>4T^NPQTU24p>>TqDu zo7=<fw#?TjVyT+e?xXTkxAFd!&1kr#*gR=_wCeX`w(Zs``rMK1JmDI=vH_m05|en& zOuQQ6duZ9(4X1MCoL79juP3_Q;d-A@>m}<Jrgu$Ec5?l@A2}5Jha^Q6KfED+zGOW^ zl4n5REcTX7hJo&^e;U-b)vi=5_&wvRKpD@x?ob!5R{rx&j{>H?HSDQQY4+=@T%Ew? zT6J2-;MR<wfR@{O+1D&p91e1|G8@datK4*><i`nXzIB`SGX=L#ujJU-d;f{@vqvXq zdE0bJ&%0!}%Rkq*`C<Kvg&%fstc(nqGkw#CObbP+?0**{i#FWOitX|ZelshYPqL<J zdYYl_|6P|i3I=dY-N;%hA9zzk<7iC1zd;&T)o(ue6-7U^jjF=cmwE)*e_r+V$m8po z<+ZUZo<+3;Tz0rn_DWCl9RGd3Ozl~(zpe8~j9cF~NA$&&OZJt;VM<4r?>TX1+qn$_ zs(yD9nf)}~8yEL;A5~hpbpP)!yS5j6=&Ibdk%cAAo#%*F<>TkCW51`?C?9M#l(0Q6 znI_e8^%#TdiYG_w3LZv=WJH%_hF;n093eMdwDaQj&%e&EF<m?BeG5m#Ro{Y)RKAzK z-WxC5u&s4J@%!4h;=40X70cd{<=I-fI;`@bkk{$&TOS6Pw#3A5lA0UI<*;GGJne5j z^DaK@i@P@U%&~X3bBg)bBpqriI=Vq_$Kuqp3B0=&W?$d^a`~oU)%>u1M<RX7XKV2* z3wHG9S6;XDR`@LGm#OCb>(}46CA?eT?s^)gC~|@Ie|_>%UFkEwllJ+|dMvHC`_ZrU z92GAfyt<vy;mUApYQpbV`l@U{?LU^3%RiF5{6=x!#J^q!V!Froar<fc9&E~7#PGOk z-K7~1IK^~h8>QwsJ4f^XQT(nawfIux#%E{Py&D_Da<y-M`IT&D_dn}r-MbIzmv}FB zJf5b}{IJSM+c16ddd9gtFB`&=wt56lUtFs4{m8K^%tr-uY^1rL&s|~EX>MEJAjHX( zby?`<PPf%pY<~zxJP2Q?v+Vly^O;<FEo*On&UxxH@us7;)P>-MQBkjizt-QGd+GDh zK*<gEKA$Tm+&*z{)z@Pk$E3fpTz+vWM}md-$bIqh50jMVc5<wbdVJ{MHw9^yUlz{l zlajA|2z<aZ^YCrcg*((&@5(P0jOLs5|B(Pk^nT}G`;&I0pV2>%9wxIkMvCJ&%gZFr zlkZdx$k%vTM0cpiT`Ipd>G+z~9b$L(CW%b{xpCqH=KiDh+}E{aBVQM6uThw!p_Qe} zf3Z&a#`Ht24|{cHL?)D6TC)9g?WA3muND?8PrZEm%8LBchve*Rxg%O`*kAHs+OY8d z&O50-k}HdU^LmLi_*zOCZtT|i@I&8^TPN|tFROK7wwhfFx%Iqfo1H&@=E+x`2>Y!c zF7ER5{7|z+sUl=)QSl@DEn0i{R%-<teDyFm8DkXpr|d=Sj+<-mH$R=n8h<N_cj=Et zJvPImKkwXS*Ip{f^X1zw>F+J2J5_4=UibXGvFmold*N#DLPb&GX*^=;oJzCzIaM58 zdicHmj>4CJ3v0F<Uu@IyV(O8z>lbkx{J(CIN_Ov}{_Q1U3*YHox~{g1>rniD^PImT zm!^Jha+<L0$*Ew&&m9sO#*;tX6tsD;Uijp^r)QEwWBM7sS~>|T3m!k)smmN%mb6NF zhw15$JlS8jIw|h++;(llm(CAHk=M_<e%RF5aduJz|1pJW+MOSKS4{4!*xv0L^tkEF zg}^nN&v11vKk}#a0M~w#4cjyrlb5QNP4w9Hu76`%fH3cx>(l<#t2Z%L)g58@`N=Vq z?Pze#`x!euk0|t+o%ycfA)ojD*VXV79cK(Km<qRf9A2{C_;ZhW{-G~zY?6~?esObL zzV3Ep7qh)f`r+WkIbGZTPL#>~dPBhfuHWuD)lEOVp4zzdCDt0L*Jxa`x$x8In)$&$ zJMJ$ux$$0%?eypWihoo^BGspA&E2^3-wxAtTlH>67Vlj2PwCc65r2)%t3;BtlG)26 z8p4kDiGJ*SS2e@5=){Fvk=y4KKV5%$!se3>8%zrJr{~xn->($$@I!b-dw7D(wFu?C zst>z5KQ5FnT9Ixyw^-+n;Lc93IlNsq6K%Io4)HhlW0397OgUrC9-6o|vtHa(k44sh zCQq6Et|OjZQ@(usZGGZOoYganq&tsFxDN{Xh`U~}e8#qX-tS);Tuzb6YebgTUd#47 zv4LR)Ltcx&BVTEXZ_D8|oYFR&>`FgldLQ#A-?>^=wCr)m*<XiLgY2LAFxkFQGnmW0 z$@k8bS?Au|XTE+XG1hGDv%N>Njx7w?#?a3A+vR6;j8A~g<xb8Smlk}CH$8bivSi71 z3qw}L%bPAnbIp)Y-~F@d)|}Yys-G-HzxwvR*XC@T$@uD0OGgfW#;xaSRt&p8XJ6KC zm0e&QpVHd=CsLSIAZ2^Z!TtoZ`t6&0_iBY{6>jU2SXlbt&(-AW#IK$^7~6lp?y0SK z%<@zGaf0KQul>S%#OHL}DK}sJn$1;gO;eQMah-<PhK={G&3Y0ycj*%CCCcmD>`NS) zg-ZCCGAd3vr>+P&cE{`8#%C7R8|&1{cobhpoilwSx6eO9U7~&81m4+yj~I3H`2>CK zdA-&pDqi4a={)1vMs9{b7!%*WD|+*x(D;1ULg^#>)0^a4PIiB5Rd(uAShZ>Hd$DJ2 z=8v{~T6Ba({!UxK?Q)$I-R<^u{?op4Z@KI7SY(~1$I>UC0yVzAtkD*}cwXgF?z^~y zmD5VZjaRw(D^98C+w(4j!<+f!%e}@wH`%iNIq-PN-%Cg5IcX`29_9ODyj{}Lv1tC+ zXMdv%Kd9+A=6_fER8VlS`<C42nL^h#ajG($*0axE`?B`rvWKS|g?_sTFzUumJN}pd zpMv(wb5XskqAHT6&2*Fvd|RmXbH&6I`wfX_IP=bm&h2@u=djsp>g@+tPBQM?zxJZC zw8y_Md+sOP`gD@_w1|_ETE}<2^6whzVGM>BC#)?$eNaQ^;R78<qbjwn**<gM1aPZ! zO6t~5Db&zz6Ij?{Y-6Vw@olyv%e(Xb{f8e03N5ofSm{*~CGz(~ZpJM3WaS;tnOr|{ zn)O;NedTW^qj^;G@+0$us+@}d+%0!DESQidx^ks^c=zd+tNw1MwojM1U7PNI-BESH z?&x>cO_P7bpF6s6eZ0;!ONW}p7i1b73tIg}4=sM(t0C)Q)h)5xdEL8T?ng5nuIo$k z-I>N;H=WxpT)Sx+WBWgzb0$AzzFq$q8)+<j{+~;1-n%J6UAp#X)vL2I?h5}FYP8GL zKH$4!W3b;`#SNCuUGDAtmd>nP4<#ixB>$hX@%1lb_cb%F&DoIcI8#FPVM@~^UvaG? zhOHMH=B!p}*3WH?bw7}0am7Xdt(|Q5o0qkPewDKmC$|Rh+S?mR+~0Q3E^S}m4a<@h ziwxBS@}GoM2UI=bpWrGvdD#{z#%T@`X4lo&Ry`9x(i`(XVDIwDW*7dI#TXr(kSq0A zw|XhB<lW;l<^7*2JZ@Nf!0uI8B){gAN8a^HC(D0}#5cbvjO)y??~<KSyX~l1(f-<q ztFxE1c15e{Cv=^jm$Y)i(c1x=RGNcwe@52qxNzxkWs=OB()!<N47D0bZ7Fp^C%oCi zri6Ey9ldxpYn}VsqB+q4hR*BzSeIQAx;l|xGIhg6pJZmfmnCYYjqjtatB#5vwGOWF zu5wck`!9Cr&h@j)^Y6S6wyAe$3<`a(|7$1Py@&Y{iHkDi1=2sUS6*7)#5hrZ%})`( zvK-Uu60LU^jyXt)ge^0joVopg*z}e)Do(F+FHVn+G2vF7_FQyHTK|q|a(z#Ad>1EM zYo%^q{%-ld{**tNHsK32G<cMJk95CZZ&P}=<=@BL-$!|UzA;C8cXXaCy5du5`jXw% z`StPwEe^l1d3G_`zy6mWNLjT%&&?{Jg;!_2^G|IJRq3;mJm=rFc3MvQa_QaV7YD2R zE?a(9O|fD;^+$AXY>g&QrrwNoo*!?h=KU5dyRo0YW(kwC)TEqg!mAy)tY=*9|8#VJ z>g~hVB~`Ebp3S<;_U~lS!}DDnw+?G2d-XV#%qd&HL0axNPi5|*{i1AdW~5%;c4pta z*vP|o4b|*!$~@emIrl5`bE6sa6;3Cu$+M{J6z;p=^v!<v2HV=kjoAUOwpn^lc;@^r zoVUEEesgy9Udby9x_PgqbVXc}XgA#*c`q>VrSy{L1=qx7B|E;iN<Vn`X_aj1oZ`bb z)J$&uTYGqSGV|T18>KakrX16EdSVgUQjvM8d);yU?Dop{EEn{@*w23Hd$!HPM(T9m z;w<lT;*2lU-8UcYTe<v&eDwaArSbfBy{hrs0+vqP-oJXUt-si7FFTh>Mm)MF9<TUw zsYFYzWa4eJ+k39`AKZWA9A8!0UrlYhqWwA^6)UI4^IzuJ_U~B3z0?D8w^v_gn(1+Z zT~14K<*a@Iqb<**FaCM!dfd->FQ>Pedt8EQ@tH*oALca4b-hk#NllmDaq5BWR@a<E z>|YNWq?S#(bKiK8$HcrdE7I?$t^7W>aZ~4!#eWJq?wpx(Zat53W%{?L$EBNfb?t*% z)Xf8V_P$M0RnU8rAfndp!~5!mrtOKVd-nZSxTE(n-f~&(>5pswC@)v4y5_P?tzuzm zPIA1Vj9}6Rxu%UmF8@ncuFT$^UM#hOqa#8!QtxBki@2#LrB}%%mszquE4gcanIZIT zXun#*gA@Ks4)fOwsvZ5&ZSNw*BoTIW7wf(SN2EiF=L)X&Ot1Uo5b$lwDVg}kpI0|q zIh5ZobglcE{lPou9P_<-5kX#C=9kEByCI+XsGw`c<)jAP1uN!l-ud*$POis)cy<LI zY+7yJ_@?tva?S4MpAMW|b0Z87ub%7q-NNI%QHoRas-nq;X^Xkyqy$t>efuu-b<5F& z8&%8pMG7+J{!x3{HrxBdZO+KTH5>J}x-%)YbWUDd8TR;+-L1*0Cw}sO`240@_?ClB z4ac6Y7tFzpOZ*StZ?rHyJlP=8S^C3?I^%H5Ll^)4UJ)t$CXeZ!)+ARJ!>^g!%-Bvw z?TMcBTc6{|)x5x3!LIIEM;9OQw}`PR{bLYbZ0!9ep(Og)xqU4Y1p_;$F4$(-rfNF1 z{QkNf?#Ev3smxtBb?5!S^Wm(=wypWC<1^<<o4f`4c>|Tg$Qg6q9ylGc&L`io^858! zp_)-I(zWWgy0rchGh^0%sNeE^Pxr^fwchnQEW14<0uA>ayUX5Vb+Wu9@iG6~y+)F? z7ZNYVsz(2s?E2h}ams`wcU%5?>D9TXbk$~u%)aqg`$7%3SEjd&a?AZA;`10gR?e&X zylKg<ABwNdgS?iw-&ta2bgb#mRtw(T`7XT-SJF+rF0Om<G|q8f{Z_l82dg<A8vQvf z$IojfeOW|U=kbFqaWB&k3O$W#8$X}Y^A^b6*Tlb9uq(3d>gBo(40|%q2S1N<QDc5m z@bx5z+UNXrvC4BEihS_Pi@M*(5>}#L#9>>I{%mg7mdVwEA140^I;mp5J7#^7_kxT~ zGhdpvv1@DndjDYWtCex9x4d9V6JB-kyI|bpIce-2g0aeLO_MUeRX1Nawbi!c`ID6l zOV>C4ai3#2|GJ!zkwACuHW|UtjdNpjAL|$#-ZSwT!}&{+Y0`fke2p)gK0TwiK00du zmBULHAKJd#@b(lYP1So5ORcI;HuBu?ySZuOvm5`5r?lFyJ#cVkS;WbS8G=j053YMV zA+e3~mWo5;agP7y&D-C_)fZ}gX}tfShv~ij>F3t(3zZeUPE=Q%a-62rscdzd*E1qU zV=J?R9^>_+k7fwn7RlMIE$eD=YUiYx3t#?fxnQ!7H>`fg;|1bpt4<g-K6~c8!Nb?6 zYn9KBuX|7YZTHP<xx{8Co|LqpAhPK~L`TA(=~G`#+RFXU%Hx1<^N)oOy=Lu_NPT>D zBVYdWn|-@(w0G^hoR@zyxS4a}+UN(5f9K>l9@sSbW9<JzuH@Y6=Z{XEZtB#{{N=>M zvoqsu<@|7V@5B#Rf0}0=Ir7TVbkXZ_h674G57X55-+Fn#>~g!;$}c<jR@NA~Hf&&Y zs}EWsG<|bGWkIfL*OKe=XCKk=dS!F_-rADBb1C~Cg?evv;@Nn0qtboD?#?vN?(De= z>#X)vm2~^wxuIL|A$`Gf*%qd|Io|B$Q<rQ#!|}9T&P{@sah=NAha7$4C-{8VcIC8P z&~QtSTM<*GP<n4meS52<;D*>#E$gP=-u}iH^W?QS>Ku9=IEnden`!;zpvnFyrZOKn z{k=`LUJuP$90ImI-IVcVs!QhO{4}TQoE598%;zSmIEQ#^b~t=Z_{?xERXsSz%RkIw z3s2aWw^})~KkrsBUh;+`cfFsVm9w8I!>1G3`PYBOby@CtapTiFPWOPsJNtdv&c0f_ zTBExn=EoW#jZ0@6RaVXsu4lF6*<Di}XXtaFN-wWod#fdHl!}Q+nf}rK4~m6R5hs^! zYufVOC@Hk4$orO#z=nn;E2MYux_U1bYP!AknMX-Q(wqMQ2bFJp+E^LrH%-M}?97WU zx&E$g$M&1@q_#Twxc<*-S(lalK~G~^;FbLw_L$47JgDy3YdZCi@r*|=c^@4<S+v(( z?AX48d{@{L%arVwCq=2u-{Pj(Fi|h8OysWpuYg0{*2VdTclLdBpQqT){{7BD7p1a8 zLh~wDNZ0tPr566leD~dvX?yY9+J1wrrdy6iDduzfRc!XLUvZ;>YkK<osedfiIa?g~ zTk`dY{|W)Nt=ldbhnB?fuD)xg94IM0VTSDi?%ee*1>e%GqykT~SReX*)7RR6I_udB zkta9kggVz4GOe7%Cmf@vRCwX(bvEn%UH{IXlHaxC=E3b;L2Mcqjqd9NMlg%S%@AAo zHlOK~p1`ZrtuJ;JEfV+Kb9TL~@>#vf;=-qQS^d`yZJj(L+t_#!!>Pa9-=^==j?>Uf z*eU-jIO$B8<mYFJJ0}aT=s0pCe6_|-PUE`i8cQGEYh&|r{b?(=uzvUbhZ41?fA)F2 zxyOESZ<TS}&zsYop2>5coqImu$$HfZJA7{E?700|H0{&Q<@ObOyz^Z&m4c&+?54c! zO53)>oa5@u>$ZxP|J;&vWR!3JcYiAVRMqLn(sZ_?Q&0UC^Qg$&^7rYVk~iIalP(GP zZ9T%4_PTY;u8BF4la>a3(NFoxwp{L#`7Om|8~;rR&M#YX|A_0I4{2_DcD3);5?ysV zi__xT)2BC<hIhvAwhFrZ<W$Cu^>Ovr*yJa=Jp7mW?99e2{zIJ!b$<>qY+^q>Js>X4 z`SSl&rFj}F|7Ly`k#JqfS)LTWWLaK~SEqIL$1{t~X6~K)z3|=Ao2$Gpzt_6!8=LR5 zY~AIfI}~-hT90)2T@Q%*`8%7t#q9sLukW{;9MwFLXBy<6bwBB<$M3YdtQC9vzfIBJ z!!~E#60S4xmDMNSUl5E9eyW{SWVTt#y7Q})L5bMP1$BSSSuzhvu&A9p{pe832JX6T zrdf7t*331Zqn<wd)`Qofim!S#{Y$tm|L5M6Qn8%Ny+^<Q{QuQ+HP^rVdH#!3%_|nG zXTiJvvZuV`{p1w<=$w_pmeeaV3Mcn{5>p6IIvQfe#mO@3=!JLgO8jQ+0_Rg$LwYVA zddK-+b@FDO2R_r&UcKN_Klh(+?cWKG4^9Uxo-yYk(}i=FCd_HFDB^Ea(cFGh(z{JC z_{fU9{s)CK)q)%^2N~40N$O3@Kc_N%c72=AZx{VPCR~@6U%4QX^u2YO@Nvzj@m&sk z5BltRZ60K?eE#--Gd()Dv{p~s*MGZYLi<tgDE<{YyFXfS{n=If`bcEn%&g6eE*xQX zOkK5Z_UA>{WXj&2eYWrJni;dTf3As1ai3;0^-GWB)bh|W!H&Ht_I(E`&3H3h<%;v% zi+y&PUX65>|IEG4{NrhtQ}S;PUzpFNSKV8zBs+Vu`4<H-E?Z`{?S85k>bIsW+RH6< z=-|qz7o}%1e(h;g-@|zI=8EkFQyL;a&x-tWFIDQ^`fC>Z8h3585mc#fW1h0@U(l^$ zhg+#v3tzE(p3Y`BD|Q=a-?vw9_wPwf|IPPf*ZC7i{{{$5lq?9dIS~B$cF`No?XoFG zbGm1<ZQG){)LB0@(Kb{=^Kj+^8STq^FLSj=tu{<3PPbALmt(H%ZNJfSVT)8N`@X}D z_CgZpf9sgD+_s&g+qOMM;`c-S?X#<;7i3Ik?w|Oka^=Cg$^HvEId<-uIIZ1j#^Zx~ z_)fjLS12QD(5EZ-p>g4}>0!$Iw>1XJsa>BkPwLP0vM;8gosVAX|IFD@ckt<+>Q{bC zcGa8LICn`dOFrzge$$59M=u}rvgu~Wy;>8oCG)DawBngvm-c9{%_^4Cdip9SVse?a z)bSO)EzH&qt7`KPH>Ws+<i}>!P2KxXc9rLf539~cZ5KLo=l=am+l!YfoLx4v%uQZC z?BKc0e)oQOaSB-9I(<dWe_{99w-YAmTzZ|e<(bYGv2MlAe4ajue<3O93WtSng)Y6V z{4?V}@7~a7-(**?ui)K&<@Lb^{zYH7XKoRTzTLlVSu}s=h318)pRb%3vR6i?)b`W& zyv;|BYh2u|V^MS9=>mp%8rJ%vmnZ8i=Ju1jU#~v*@JIjClTu_=ryI-MDEq6X^0Tt* z?gZ-@ZtLyd+qa&1F~i5M|7oD(nKxFY4|m)97Jk{xo+xLonH+Dy_$)Qda@Nz58$TbJ z>^fpE^=eO)Pf>@@W1VSN9QFoHTv=EdE}OenPhBkH0kcSD<eaiL;Rh#*4Z=8|`X+px ztu%@Mq=96CpzP&_+gDd{2Fi5u#cVNfSi7ov?_Z@k+)R$8sT?0UHg6P4t!cPk<<@NQ zIfF~)$BB5G&HKB3#qOW({p7q-SyeLrw87ds$93!aGRg)19(XqK!sS+n8u!3Oo$gb4 zm@X?V5obR)b+2bcFYDx^)1RAZHDoxoSlRu|;?Q_#_U_h`JkLem0@tD@AO2W6{r1w9 zuhM@aZ&>v$kuNYaO>dUAVw|@9gPX)Pw~BiIi_@=u_AT4&&5`k_BWLFallJwe7M{73 zv12v67q^IH&iivOi!wS^JC{~H*ck8YC9*`XV$$cI=Xtht&Y9*DzRKJz`Gi{Jf?Gue za}Q*yC9!Z#I;Zw~2lJN2#@1V`xXP{_xN?=nrorxDQeIi@1O7(>6MRx;-S>L%rJ`c) zQRAakO17S{8y@a{ReH~M-i?zJ?lMlkJN0$x*+sU0|LI>Wy|htjnVtE*aF^7WZ>9g; zo^1?jK5&1ke(9#qA39t2-#BKy?s#kDPOtuty&THi7Fvqa&l??ZING*<;~u#+E$RZ% zF~3`wU-|JQ=}&UHtE%D~AnCrBO}RSBZ*Lw`w2me-@4Wwy4IWr++R1u(*Z1#VHgwd4 zc37n@xi#Zb)~kTr8SL$UwjN)wTF7x%PG_xeeysKO>K%Gk{?W>79hv4@N1dBH?aA!e z88uwVS(5)8mbgfq%anehbfoX){G_if`eu)0Pfo~Omem#gX_8gS@m#y6l%rBDUq9Ve zmp#zdTj{?oMB|D0HI4T>CNv(IF-5R#qvE?a%BNmMS`|sm??_G!6@1&hBvsF)P~NU7 z(M{p$?K#|k%AEXb(vQkdS2-=LG4*`&zfwW##%1|)ZM?g8+_~Au>9=wH2gN%ZnysvZ zt=g{s_Ha2myZ6x&ub|NTQ-3{f2@{uid3egIqh495+&n-1dw)DTG%5a!yq8N<P02L= z8lPAC{Hmp|nr_dSB73ZOZ-vHz3kl{A7v4JkY>mB>S7DpM7ygr{nuTwgy<uOqKCjiP z?U1H|-Zja|)|WgB_D^*A!h5=J`H3sXCUs4I-0o_r@wCW9Vzpggv6JZjxhs>_F)`2m zKIz^4qh+lezUA3!y+79IJ_%3vsf*jAD_-+to$*P3`!~|(j2~QcKXcu^yh>qvnta`p zGcRVJ@Y$lXV%h(GmgiH`r%P68mb<&n%AemUb=5uJZ@yu$!<C8FOAmee<8+6^+-jP{ zd$Aa|x+wl9Turhp-o6bS;f^_cbNntJFyC8j!fxrxeCWgS=NaGjCG6OC=5$?aWPSBr z1`VsDvr8}KyLrs7x*_|gMtg$T?Q*Vrjp_E{*>B_QIsXed^t``wROx+c`u$0Ev&)kE zIEvmb)c0J$zNf|UP;{##zq6@?)mdMY_uZn|nxRU|y)Q`F%k2EN^4{_}yU$*A5wHln z&#K?j=bEsTtEl^_#5{5F<^FbtQI9!3@&5nld+1*z_o05laEYk@FWf4WS2CS^V0X)R zdNOnFf$811j`g^n;m+7O^<RO{qG@e5?ibTC|4kFR$LPM~p84uU32uiz-;-Y-wPDug zIjf^;tz^0`p80x`_u`posS_Eiy5bz<j64pU-pP0Ja7FtnmDQO{dAlzqFF2r5_&K5e zx`fqiy;KF|1$Eh4!7=5M{}g2oteErv?(Nr?%Jk-L|Mqvyw26Be9$(}<Rr%xXruNXj zu-U8gCUI~7qV2cEg_(VMPo2!KDJim#uP_~!%J#gm`|xbNTc3{jEjl`V&K34Qjpa+$ z@rY;lrY<+1<GIYjq%&TPTVnsUwTua8{#E_66PgkI^zu75CM(&AChy;|hBKG6tu^9m zzSA;6{@|ptp89Z}JulLhq!p;jy`FRGu<vHJ@DmFPw<)ao{YLuz+1hnKOaJ}i)_nT& zR@ecN0&|@=T$goj>6Ppktd==+*j)J9nTvrU4=-<#Imj9zu}WIof9twqQQBW8Y`Z^Y z#+OVHU-`w7@;By)Tx1oG{c#}p-?b^rBeEtsvSvlQ%~EJRDsnnM@9MXZHtR1eYnLT8 z_5Dg%*-@0awXpMc+^+js>Y}OwCln@E+zI)9Nqy^w<S#nmN00CC{Mo-Dtf(Vd+5O(+ zv!@S!FI*7cVt4)j1VKi#`!^QYM@;bjYg>{X@WAYr;ru7^{udu5?^E^ER8rY6LvWtg zlJ<%3*{v<x)o0bOH+i0^ZE#}7j5!9|4(w`_JnXgO#>I<P0g*iwv*n}$7npl1Nwey# z7voweEf?OfHBxw+v(bgcD?N8T$!*%FA*R2&yLb0V`%I3j>-O$G-yfwcmLwnl`O=4V z-M_x+)CPyHV)8G_-ulBu@m}V}+Z-p}n#CPp*}mrc<0`Gi2SsMzwr@;$b}dm*UwwYv zBF0k7;3FTjf*!ISnrC-1;_%dEi+rSJFX8xhHnw{rWAuY$p4i7GT^|46&;7b?@rJ}? z-k(Q~d)IFG@WgKIu@&xr-bJyn&650k!>V>^$3CHB&jNX*UuwR3vwhb;;e(Qq4jhYQ zZr{C}v;XS%9kus3-fa2l?0V+ZnXs3Mi+1U36<B}z(&ae42i{j6ZuzsbJ>$)y|Ezr{ z${8lg244Q2b|i4UTWc0$hxDaaS-;Cg<#!8i$n{;YhTXdMm_q5v1rMy&2?oTeyxV?v z!^sVQyBU5Kp6Oe&c#%|QhGwOB)uF|kQ%)80E)2bQ<-KZPz@LEPBK}H+b!+!d4qf_i zj$pu{^HsLBI^VKmWS#DBUb6G2*~I!5cl*MKQ??BA^K>=z@2IA%-?Fsjc)aN5o%Y+z zG}dMCZaOoyVgZMdScR{~#gM<s1`kY^Yvgz7mnoE3#LN|*BYv^*_8ULbj7+hKf9(8h z-L=0IZrRoLV4vCY@0a#X-@H{e{R_Y9e!b04w<pV$y>hp1dSP)dcV&ZCp3n?`VH1<> zzt)E&^&I^iCHzm%iQ&GuZ$8JhjW>!q73*Wzdl&+*K9m&va-(cbUar|i&1Da>>KlE; ze#zyeGpoLLi7HpD>*7#K{&87XU;-!4g@wEa^{*yB7QQ6B+>A+2=w4Hi)6zxacPc)f zyTZD1vE*SpHD^H+Ujv2jWgd;MPS`DInm6U{TeHP68YV5i<<c9EiWt^6KKb~$^{LaO z+|H|F$yZ{RX8KGyaIs6U=yV5*llfx5Bc;B#zo_->nsKot{=fGY+dIrv2LHMLNT;2= z^e5&1B<2PC_?M@>S@60u{?>N2bPeI`-SIz~wVsML$UXVx*0|#E_V~5lC(l|49bpf; z#Wlmhv-qF+HFYIL`vVtw4^8JVTd`~#yYuf|it)2l6q>)N`>$TTs4~)XnwD(b^w_H9 zFRpSm|MbXr*(s({so@uwDSyweVt%06dd3p7FNQ3=7U^%+n!YL7p62sfc~$V*JkG~2 z_WxotKPHiG6)5?Ke-i(OIoogN+|h7a^K_efdjBW6(=K5%k5BsOHc@zz*sq&wwyG9R za-QqRxQstZ^V$~0M~og^OP?8cU0WY(pl~Q$L1|a{HW#hlza8h_2>LBeURa`hbc605 z`8v@sMz!@}cgm6vCxk9Y6gUto&*3*?mM;GpUAcnmV$<fa_WszQTE6dk*Edh;D^rTZ z@4o(i<<=vsQyZ7FYro9Dw5=z7vDMnchy6~ycfHDFd-jK=mBzCm(f_NScM1z>XRH7H z@ZUnVag%mWG)IYbOHod-{>96m)=vqk%z0;cxGMJd{>bk&?~0xKsva7<R`J_91}<z_ z&(QJjw)qKLv4tD9tXL&~x=>Efck!b6H)9^_*z`O5N3(6&{_5%JCw+6D{GWBURAA$Z zLV@b@Pl}V3e`UqJvk6sHOyE7<GhzDC;8_akqQ0Vxi7h{8Tx&YM)2iW1>Vg8+E+13R z%$qx}o|U+>+O+=X&b7RHEc0YzntMeL?D!h<we8Ae@jnOdIelrcyXN#oA&g&7NVTlP zD~%<0g_e+n*3&0G6IVFdc6@ut#PIWjc!Z;Ue+$RC#rZ5UM*XtfdRvuNwfWEaE@rDg z{cO}^-womqWjAd6^`W^{cHXbF@5Zskw^pYmhE$wymeHtVpS;wrLpHVS*iqk<583_v zlB_HTWL&ISHukKM%j?qSFy`ztj#=^j)6A|Y7u}1db5bU}@>qLyZh|F;d12hg-!Go* zT>Gj@XTsG9ysO{bUEspE`=9r`Ba;0ANja^{B>#JT-{JFyYs<xhqW3hF_8v>OJ@oq7 zrdoxIVcYv=1o<(gwFhTk*>!i3QNp<r(dWE-O~q@>6)#11A3iAabIL|9#hm|6@3$`4 zbor0ETjMPi|NXg!d2<ZkPTVnR+QLtd&2o?P*s94*dF-z7U%eo6gW>UivAes@R=-F+ z?~oS}{=H@CJd0^&LNixoKQ|2Br`)fXefekgrG0n1*f-c-IT*CZ?6k<mRv)&=i@YLx zx$O@<ICkS-_|yJ>m%@`X+iG_I+!tG|wkwgV=qSJI>}fjB|M4$KnYAG`ELdnljLLhR zJL;zAxDOqeb9w4r<)d+nRyrh^Z8Vd}vYTZ$^~{8yd&8`zoy{yewy^0=&Dt(jS0&lE z>rFl1%BtKCwPz0a5~=q;v|7u$#C6x5gUT!anO?l|{*!x_clN^_|KmAWC3i%<SL9*) z`y}eDla<fWIns-AJ}K6ui0|N(5T3)mHg`#Ym7gK=_xdQ#NtaeW6pHsfbYk`E77jh5 z4OjDu(xqjqLMJ4rl(O->d3!lj?a$Qgvsp(hf6o-HT9Pw2gN5l)=Ef=QcG;_i8tyK& zI-4G+v%p?FLMG=&L(wOf%KFGjR<j>RmanonE_ZTajl-UI=9;z-e*az*RJX0d-rwZ7 zh(=c1w!-I2QWp5EyDHq?Gey+q-HjuM6qda&-#G1gqiWlZ7e|}_U7faS&P<+rX{kNZ zMVp@(Ogh_cu<ZB4wbAZV+g;xGT@UR%yk*yN9jCGhjOX4zmdkolW9f0|h?82-vXi^c zW*m5PtM*)NzpJKf>hzCZjnh1vIC$!9r{=Fv>tTN*6Z8I6e_YjU)*80eA&;9+?N9f) zZL7IRv8coN<mD>Kue_|EgnT#!y<)^?cP;pmd*j_s74I7l?l~6BTlR8g*z7t{m6y|H zyHD>AUvbyT(t7V%W^ElA(U1?k%^$B^S~GdkfxLx*>(pn3uizD%bu{K!i}k*P+)G^L zPKaE}|FY;*%yF%~ET2B-YMT{y)a<;!yXQkD+usGjSMIf&SQI@ymU%T^f0dc$53N}| zD-Dm@J5O_cdU<(jg+aXLhtAurvDcY=SLI!OeR<A`WxnSPk`K7glVx19>hppNo0_tE zi%TMOq8L(^1hKoBRleZta@%Obm$CkV)*Z1A(?tbc&j~h&uaPUgugb72mRb9td`_Qx zVbsGc&H6_glDu&~3_Ksjw6EN_t`e~Di20>^ujRIuGzgSEw2PZ8KE-i63(L-3b8Sn_ zibQR5->E1?e^0;dq-G$m_2$IQvsr6St_%|Ed9u3hLtgMqmKj`^_6SGMYngdXZQJFi z3y-jD)v1zF3+tM5Vd}n;;<pXm-tj-39U`AN?!8oGd+hmC*Mx$pb4~yB9&>vCbYa&0 zm~XE?D;x~(O!Vw~v}97H@mtL!)2GH~T$wTDvN>CvM%ou`C-1XN(uTa&zdAD8wjEL4 zc9qK{k~7HVts&>-?=pM8Ub~X$a_qx#vG~&+cV?|KZc6!XwJfQ!aOXeAVy0z=hkR6Y zbiVR#3!3m!TW9~bmt}@YuePjx7<BUPlbqD4%Z)ai*&)0p*P@Z7?w#)cbGEZmEUOn3 zSDbytoz?Nh>0A*1#_Xpr?aGt<w#zO!F{e~|sVPgrou~eV!Lj9Ou~YWfi8!4tb6DNA zxV`-0-RstmlDP!*=Ficd^fIry;jdnkp6K<hcbC@->sEbRdx+ur7G8~;W!q~`tSTti zTqegKJJEhZ{v_jB9Y)F#hU{wMh7l!~i-fi%SqSW1Tr<IBk51fyyGM&3)#Xk;^Dd<S z!dpwD)P<&MEt3B4JpY{A9%1wQ|C8X7+0x<91$VP;T$-EbH>b(rjI#8iuD|Eh*Mymb zw_RRuzV`RpxUi%{CpS0FUBC0G$2GY^`KHc`A{Do9-BYPy5bc%|kv+zH_uOx#%TbO` zZaKsi{+@TViFZk1=acU<9mBR?(*O0Ldy-w$dD~z9qHB-lFLM8IxiC6<8sG2t@{iSa zf6z%!>6OamF_hYAy}fv&{@IOtvc5DbwFq7feDJB>R!edV!}ih(_HEr}d^s^WF4D8~ zbBZHpyz*@mE|6{NcUYMc{843^sD-($n5rAc5)=Q6%#+G>jkhQFNj-U5S?+Z)-beM7 zxpMITUNxzdhfix=ziyn9?Vt9a@yZRR1*$=@$;#`N$xjL2;qzE*vB~1!Uvqa)+Hzph z`o#E0Ve(JDay^vW^yJ=`^b<Yjj2#_Q59<1H+d8mknB}cFklN|JOu6mObDoe(v2pVn zW9I5E$h;oR&%N`E%{;w=B!N)1ayHecA>a9|_I=fT>T7)evNz|1Q}0e(T=gr>=9}Av z;4N-bvnMo)eTvPBF}w5V!|ShQF&>fi?HjsszM5!TUi+5Nw)dH+pK!hWslw0BUslHS zgj;+*#}eoEqu@}}ov_vo|J!7)D*jxqR+LaRgY)nGqrL|YR2-YK&+O9Et&#>xv-)CR zoto`CVRxOkCDZX%Wl7l;pDY7}MHO>?F0_d#Z(Oz4d9%`o8)b`6x87{3&=vgtZN1X! zw=QfY8t+)%nq2fd^mtvv%$Qx-x3Bf&>7Th)9OMw9vuC;7mqixSKQPt2KM`KiB%gji z`?)Fe{lnIU+l@}vE^OCZz{M$=#_wY`w{23fSyt4OKg+NF5moFgm?PWm)nN8KUAA^Z zW&>NqmQ?QpISNWTJC5bP+BiQv`xx8F%~vlpeiFWDa901*@7CJrDR*CKpK4qY(!kUt zpSjW7ZrVY^^I=o8u1+Y|?O7a}$$O?Y%DBscc@4v#K;eQtk)bSGvL|#LIHu+p(iW23 zD)zc4Q}n?!!T*P+_cJb-_G<Czh%L=}S{tsa+BZG8|4NnpbEnFCUmhR9T`x~c>+(o` z3G_G~Fz=L;ZSxCO`@cV0XJ6oW;G{W^vGee`U99StEgDQ8-aMkLS;3m$(I1oZ_5IdN z3yr1EH8{2uO_;>%EqT20NoZWLrQxowO}`@}S5LjWeWA{i8Izt*%ADfTWqsT&Q{2Jh zobmLUmc!1mmnKiXa#W+`@tLCqSN1R9)YsKc4J<x8!Hz-ZfoH$-$|bokKL*wKKRv{- z+L7%_MMBc?rLpRw%zQ5#1P@HxS0#OJPS80o#~K#j;GdO3?Dx}a3>xRITkgrN!{#d< zZO=Y~sakg@@3Htw`Drqhp`piJH$<Mzxudw_|4i1n<iw=7y8K;Im1jLYmN#zsx@4<* zkj-Sq#azbv5q&m)v|r3&_i5+}Ur@Sv^$qU!#+F=trmEusN%}4S|7`6p3Yc<H@V$Wb z-#5iKlu!QJw(A4uUz=sw>tw4Og<Aal|Nm>=sbiBN)_-Sf-X_N5p6`{7OIBa6PLZk# zJ>yy~w(6n3X1kbg;idm4j(k3B6mTkC?`>1{zes_V-I~2?!|(N<Sh30X`>VN(CDOB} zm999ga>zQq`paYO+G&?W%GT@cakqNr{@iG>Ol^q$(qpxkrRBH8e*Su7e}9yOzXRt) zcTv}68Hv}DLWTHceyCKxSQGmGccr{P+r=Y{1>vuS`5A9$9q#e0J0IL)D!TT>_d8Xb z)`Ch&%$3naRg&8-lupnOQm<q+cAe`lDp#L)(ugU^dtZKn^U{c8!tU;(5hgk*i#TSw z6yIC=)Ar(74$C7AlAf+@i#KdlPjVHyx^lmVjEVBu_*3ajN=^GE<3&#yU0Il(**n20 ze$B6tRS#}5tlum8)$8nnN#}z0-B|qi%=K;0U9z<rWSkDW#73oFo`2R+dD^*C&RO0I zM0waGG~f7Zy6A<9^PPHmU*zfP*i|>*fA!eQb#L(@Iq#jPW70RMI@}FNu*mc|aO}y7 zn#0dbn3BYTJZ2otI<FJ{wDv30;l%SP%L*T`zjdhjzd)_!-w{paNfzusG`IgMo^3d3 zmUGLuXF6xSZ}PWaoqb-gaQgynP3JSgf(y9L&e^;=vQM;bmfus2@`B4OI_o?$CoFZ} zw0m~BHv8KPj92^>t14c1M*X)8yB<GdM)(Z=IfZhK;X+Iu_SN%r;^yAgjZauv7kBUq z&(i2K)8BFb4dd63iR(SRG{8h?&Lrobzl=h+hBa8<*dno_adAGY8%O0*ou3Og2>xog z_fqQPy%{qWP2L^#Gwb|R*|~L&rc)Uo%2g+wSeo1$mvOb{@zIAF#V^ZEEvM;hYu@#G ztt@M+D&Oq9NQvJ|K5VI5J^5SRicg<YMXuc07V$J+uH3}q%SA=4J~pRYzaON$I%#It z%ouXu^TPZ8Lli<%Id@yCf94eD(OR~kW8SH*Mn*TKO*YGteay@D6xt_F&nR8ja`0W8 zKA+Uafb6U{kF3o0mtHMVIX%rnHSz5Nu4VhL&E&ak^!!7}&gl2)HbE^HW2g6VJl4I) zy6JPSqkH(nC&$*NstTVK*}1<Vwc(}AixNlQKa5N#10PD4nBCFZ8yI!6W(x=ZAN!{! zA-RWEFJn3y_GkKv)g7%{cd~NLacYyFQ*3$iCF|v<TQcGg|45Htx$zL&1yf)C_2yAl z##74v^r<&Sn8_G!kCf}o_>s5SNK?wTwB7W|Q#CdDnac$2<Es)HzluH8UH!1^%)*)T zvJ>TH*><pM)}MPN{*yl^WV1N8dzDF7P}ZuLF9Flfu4(x(OTvoRdU@l*;KOS!mnLk? z>kwizIehTJ`oIEN-qkzqrJM@PU=+9+8#ehY+qwJgavdqB3#NRpnKkEcupwu--{jNL zld2k*1Q;BfT)8sWu+zx$dD92gYfqEIyC2lej+hc*e<9P{MK^w;+d2^w=EKJg8RJU~ z-FGmE3SNJ2dT@c@_rAdQJ;Ievx*zYon&WCUamJ#bEB$}vJnh{&sU_1zukX{o#a}h= zWb9~-64lgoU#7%5FGXSJ=gf5mB9k}0>Qr9Nyu-U>%a!`R0~02GSiNA4G=Kl|yUx{R z+tL}^_i@xL$YErdU8kAE9=da~x390F{PwyKjz>a;PStx$w(;%AH~G5!)C1>_A8lQB zug>~@A(qEPn043ncf3<ddbph$Ou2M-olE%gYv;Bn**Dm#+9%)D3|5=dJ)z9&&b{qr z8CJ^K+t=weH~c)Y^Njw5WU~eT4y~H`{Os1S_{cBwcC0bgOMJ_0f5Mmj@2)KV(71@U zW_!c!J69R(lPEs6yXSFvSJmP;j|e^eKgXXu>5;#5cTLmMBg^c>dFGr{x>{bcDB<4+ z_D>!b!O{t3%PWs>z4*}a;FUFP|9<VAuly(Rdvc~)^yak_&bP)_FckOhdNVPuO>(nN z|3VeHAZE{M`C~U%=gyw281(7q6l2#JtK!y9nDa;RpwfvKM@#ZGrC9xr{hZv)Gr8aa zhX#+CiD|M{Vo=9|2Lcb$X0PdGouGC+(Y8UQWxnU%tPhX%lm7*_m(@KD+;R7VUqH01 z`Gpt1-8OC9Y_sx++uVz%ji0);9)7<d?%Lg?=nnHs%tGOkTDP;mo;|_HkTvVv5?iea z)9oi7PrQ@3#B8=8%T3O7RiWA|!mWoY@;~~Xc=jQG?);+@tiy9P)7w5?yLpUZy;Aw4 zJ?}qFN`7`bJ*4aO?M11It(-^SMW6aUZQi2n!Yx9NHqAN1TDmh}pFo}%$Fw(7YGh7K zXxPbO6CmRM@RKIfw!cn)=M*zPfA!yqx#jXCPCkRUm8?gaJ=DS{G!;H6G{_GrEWG+H zriOU~^8}5S%Xfbk&kWbBn;a1}<DACMuunGD^>qmsSBA5^*b&3-U+Q$q>@T~(<2UZj z_VEqhjudHmZ!nmyEt`BN=RnzsWp#1a4Xu0v-z>fN&QOE3f@`ny)}JP)=f!lDN1c(V zebu#FAbgS#mrQctlvBEAj1w<fIhUxhIK5vXykzt2pnaZuY`vnj&O7zbD{cNabKQ!V zSF0+Urft3Ov$kcct!TZ)e(!ZVC+mm)xXZ9-eVT_<Quj^4lMj7#*SqLhv}djil9+Ub z!LlcjGk(&9lMZLkhnd`UiIVpyIPl&?z~RvYyVicb;=PI8OK+XIR`G_{Pq$p^!i7B* z-qR<CO7~gS%Kf=3zxw0pdKJe$zRU4T6Zx-9%6-q9@HD-5dsM`kWyLeEUvPHT<yZYM z_w7UWc-<I9ji%TQ*K>u^Zftm2$(pQF=%mwDdS>3bR}nvD+}7}w&lciUoY&M^FEB?e zDW`R@fur?iC*FdvxMdnY&MdY)zu~cCKU<mnsv}%>eIY&aM`k^@`gv@_!@`+Sss|_d zWF5V=WLC_&{(?OZt%|hn$)z;z;N5X&oAt@8D?i0om$`TKteBzC=JnwF412?^znaeU zrM|ZK%EuAEaLuntQ}5oYi`0tQ_*8AbLh1W0H(gB+8F3cIR4`uh(9sOw+b4PN=ptjO zp1#x{r(V_RT}o&_b;&z#lV+8@58uHRPi&@XoZKd|$n8k3$WC_gb(cK47SwJ!{`*V7 zwh49TnD_6<V_AJAc+S;_Qj!lBubr{vT*}FvJf|*ikuGig*3kT7|5F1-v)st6(@%GN ze9Tm~{NFAm`Ja9v`xVXE_`8@g3_2{Ql!Y9bBx$*JolWqqms|EOsNqh?P*Xnec2|&6 zq4>6|i3gKX<(;}0?Aftot*%RqO|ACN7oA@hOxHgm#+iMBtHx_PQ}f+7z1^lfVX^gc zll5*-v7KyZ_mPz~>h#Y(wz$QQ_q>owH|Lb}xKQDJbo#!+BS8vpFHd4)yZkkO*5jnd z&rd|hH0nJG&%b^lmV@P>tYo3-FOOL~VnLiYFE4z$!a6wVot<XQWM*ey)`p1ht-oKd z%9D}nO*#9dLhoV3U%R@0&ksL(x{X(`#$dn0<r5jpu1||Letu&z&;1X3H%sxR8ELBq z6wQcl$atJ`PBb9o{*GxE{GO*Um7F~NP9=nYP8{dnr6ON;W<^|CedOajj@0)`>K9)9 ztNXQ%xjk3aV$P9=CsGd|ifYT%d77YH|EpX7!1whlmJ4}#l>2OcrEvX2>BC8(cO4`& z?ruFPF#Ug)rNEQ^)VALeM|MuXoO9uAh-$^OgiD-t|5kOWzkZeYW8#6$|8u8on9^03 zU&1fzsq*Mv{58W1eCyeiIpajw>ZdeKQSGsR#s0)t|JdH+j1N7YGP*5Euao(`G3vsa z*ZY%KKEE9HrM*)*UGBcy#8!pc%C%BjHwvqzb?>nEUZ2_Tl6U*z<{N@HGw$CgznFX0 zt3l`Mr45Y<!J(^8=fo~GY0b|3(0Xu%`?f7zd!O%m<#qhoY~2s*{Fsj2<y_<P&!<#j zWym(giPLxP+U<VSc5_^6tcTI3FHU`328we3cRqI)Jomcd7gK%0ibPrW$8KDk0vf|M zyJWlWo|$zzX43TZmO0&1<_M(+EuPODJeN!O^Be`<lSUbjH!c5~^mFgB6)77|DD%o( z`k>xX64l#f{!{C%+O?Sf&bmhwKK&~<-TCE-p~ORhDce;w#QkSpKIF2TC;a~9CuJAq z&%0Gu=%s)2ef*%OWP;t_)vA8pwx(Adx~|6rH^q6KmrJ!dI8*k?kADZ!&gmSzF_%$L z<lXB>!ADe6+POFG5ftQIY;Gak+V=dxn%fO0^?v%7^>IB&wqM3JUDGUu!?1eY<b#q~ zrg@tbKB!jTex}hN|2}S$E5qWQlUH%AYy4t--O6UlyAP|*7ED}qM!lO+=Ek+6w)!)> z=V$zQGfhgpNPf}T!fC!MO+QE!*l$0y`&r?27g6rpFVz#xV^hQ>wZ-Nyp2jkfKYsC% zjlX_>+xzI)?5k{nZ_GM;TN|FNy>|Y~zllctTYmpCTwStW*lzMOw*6m?_H=AMHoto( zvymYG+)eM#ZiuV>67pj6+3e`G6*I0J%e#FuU-Ivg))!)P0(Z^IJ<BE5eYhq-!u+nb zFR%DkXWMD+_O=a9wQ?sm@#o6Ku^ig6sIcPYzrChvuL^q}yK`*{6turxaWpKreDU6= zpF5Yl@#tK)@ben+>Gi4+7ZYo>Qmo`ptNh&jWexxS-|v!_h%uGseN$QWDvz~C&vEaZ z8T!mD<xGa(cbJ^nv?qOsQ`O6rE+=mpJdC*QqLovio+!@ddS$WvJ!P?U4kqn?Ox&!I zbN<Ob>Qp}!l+e^EY&h+R-Qu-;uKV|XO4)8<Ri)FbdHjl_!NrvBe}W=&KW{#J^q264 z$gL^+Zbt{+IdZ^eedLmGW7n!Q!{YrV=KsFlUvjxDL0azj$xkxdkIp!{YJPZ!h#X&@ z$-CgX^3A)=N@Op@f3+^?+5f7!Ii3ID!j>$_8osXIH<#X=e@MXKL+GAo-zP*GJ8ti4 zE{haRNX~h7`hD8Je6_`$(y^ud4DrIj;tM3$En-V|r&uMuH@tVp&M?^c;lVWKsfUY? z?r-LvwNA5H-EdCQ((_YYM6OPLT-bU3{KAm6tecrk!YwvMw$9sp>De)}Kj&I6YJToK zz2~8#*8CeXp^jH(c)ZD-=Ai%n(wSE-^Vsh3eB`oek<xTdX5rYRpe($IO*j0G)Vezj zkB<wO)tN<ZkN9zN%l`sPw}*TMr>@94Z``@l`c_cK!{;~F+sG#Ja0a`xDJ<5~xny&G zk9$qxTjhff%L5xC^xn2jdh+$uQl?ppJ1>4y*iw|@%I%%ay@1Qax^}Pd$yeD09T#3- zofG+X7F*ba%D;<JR;gWfi+dOC{?#;J;$M&0?A!6ZY6ZI<pKx8B?Eh`$hQkK$mFC`2 ziuutfrxRe+AKxXu{=)aiZQpL@lvuhY{ykZ5pzy<g%G0bx{&zR<=C8jPP*i#5`CHZ2 zF41e1JHA&k#4hGZT(k1X?G69fC-*Whp7nCY5}Oj`b)vkdcCNnFZFf#kSS2j0f5+N2 zO#Vut7bbPOpBKH~tC;Qj!RMmgk|i(HubMZ{{=od;=Xn{k6PM!TBs4e6Cpkn1MT#9_ z=zfv7d~fL9SNF68x9cxjKCgej#IK^M26bk_(nkw_@nyNH+M3ONQ|Ni!VM<Ss%=5Q( zIzfR~j`956|1{FsN`A-EAlBP;-y*Iv*OpIhoqWq;X8xv^KLVW-0=DoS{-GMG>{`6A zX}@}K@4gQ|d`i32-F$z3(Kxx`!ZLBUYrKuc6?cD4xM{szP5#M_N4%?@{v1!8XuFE{ zQ=H>kQ-6Lt?ZzV)8m{yF60Ixzbjta$>1Vq?bw@s5IeKlT%DD|;9lS0Vt9*~;?G7l; zsFAh)@%KdJ?5vj+I$IlB791%tw!OvqqVm(t$3geLO*#@hRdbEt+m73AQ`c48JII}u ze94CUQ$gwc)&3Xu9Qvj`<3A6B{@1U8m%UCEO*t<0c1HCi!>u<>4(;50<(o8zq&`QX z#U^GQCTFGB4}Uy5`D|g)&r?}H?rfj2H@B=OX>R9H)!5U^^gc75-u^7K>%iqEQTfIF z#r~N$O#ENiJBxW;+ppyO>~=EeuL<J+?YyE=%-77!koorRsCAKilA$hdr9g7RGu6Ak zT2j?hCKS9sY%QE(-R-gBa<}Xr4%tsJE50tj^lcYElaOHw6Wgl&NwM?v81~KE8>q5Y zqBc!D+IjM+OD&hA1#6c{uK8+lLDjW3=!`>`cFNnSDva_H$|pQeyFNO$rLkw`t9wi3 zlZ^Miiq%-0nCxi0ZKGzCjnb5<yrzG?M>N0pJt}(Td>yZDb=R(oW-l#zrfV41DzCHr zU~72UPh-c#69>&X9VV~YrFm-0qYQ3!+su`|sj_MA4|>BVEa!dQ^5<`P3qzurZA5wC zOutv}k~1zVuj|t}cjMWtk71ogY0W>wj?W63@G0ncM&l~MiWk0O;w8N{Q31B~QL=`< z`pZ`uFIsb~YlBSXl#L~gZtW@(+X{pGH9v*TT&De^wq;Yl@h6jzitZ)nL|vm-22DTO zS>T{om{=L)v))VBqjy`WJ{uo<>s5=VPfhtZ2G1<Hr2eGsU6bnP{G-{=?ks+~l<Dyj zUbdiJ-_o|(ACFw}EHL%*!^9^|Op{6@Q+~0z+;d#q|LA??^?GK*XR8Ev?YQC1aASt7 zjZkG+QB#e`>(@u(PHFA<oO;T4`}c2q{AKys`}V%xvTz=^+|&yfL?&%^PtdO~uK6pg zad+wlhr3~yX6c^XRPTGXx}t9}gD8W9=Ut8a8E<P2*9bn2*Na^B##$zL_Nv?8T69&! z?VMNCyG_}5=D|hPzKJETbD0||+cwU=c>UsJgFl6i*Iz2!bDAP}<c~xCy2=uXYqK9H zIAJ^dMZwa@;6jSW`m(HU2HE@f<{vya`BhR#cM1Qz<%c3|Z~a?Y8#U8|?WM5`+ldcS z-y%*Lf8d*-bll9}zEj>LzlZmV_`}bOE%cKftk9X!m^1U?^HU;QIl2rOLQ^Jah(6Wc zvT40;oy~EP3CrIueYl_dXv)kj6@qi}@5|n4Yx#LF@qM-MnSbVe6OY#4U%`^peZ+2_ z!TyR_d_ia9q64mK*zd2@%RBqOJ;KO2T=js{_Y=l9SQ#R8Obu^rzWRAZ{C(5B59hqq z@3AVkEj2#vaH+R1;dfDxfPgaNsvB!loIe+Hy7oDro@97xTgf~QuYi8G-N&CkIC<2G zrOaO|_-RJv$H||c+;(lLuq}vR!SvY2H#+}o$>l%GZ%yJV_ngNwH(R>&YI&4?zKu=t z#*!U;`E?nOQ-yjQrtq5ZyJ-hiZMYxa`QcW=<(z|?k4)Slur1~BJwe5gZFW+8uS8}V zze<(pdK0zw_VSe`0r?jD)hcf?9e%swMU=z*5C1rBGL;?>|Em;mC`Z~jX}V<9|NIXZ zjVCUDZ08d?xlVCszxrgGRf}FkUN2oyD{Cq||BgxW>sZHv*Uy)6r$0?OyQBG!o`<NW zXv_}v=*w;q!3Eo{1l?bi@;GtkvCpZcS@T!@?FqTlo^`S4J+o7d)xXV6o1Wg>b~9=_ z!&y$P_=YQ|Jj{xZ&U-fRO^u(f?6klOmh+0$l@_l`YB2b}MrK~&<wI#(Y>f3zEL!*W ze!@@H1*-XnIZpjMb@3)&$qs$xx9U%`H7BOa*ZoS6`El>jW9`f}>u>nJvR9vZBv4;% z%FfG7Giub#13v%ec1zHf4c+0#n#J|=#izLWUQ4fTH064Jf2HErgN<AVY=7$dP79j6 zpK;5p8PAX0UDW2|a&mp>qfFs=iKd5~uP&cqo}o2a!)oJ7r>xV`Z*=Zj>G1>=rF?s{ z_n!D|3m4t@rxeZY9nXCUFqiUMQz#*@W8Po&qhYV(rx&!{jt#o>Nlw0)|ETf0A{E68 z&TP)S>2<3mos|9LifWdAxLLYm)!qlukF(ACHCY7?Z+5zV_tqwE(eJnWYV!JpTb~zC z$`oh!NG*E8C(!ocU)JR(`-;MR_xqIoD)jG6%3%C>X9@dE-Xx2h4CYMrPYLXqzij7D z%69yq!x|~<*jagyJ4H0G&|<IDy%)T5_NP9+b9Tb(XNwbEl9vU@_}VUheZb6vr)Cvv z|B7w>B0hGn_%HtbJ&$wEd%48Jp%?Dm{Fb-j-HguHg43QA%H;-WNCzD#x;Aa4=DjxF zdJa8#{pD{z&FOBFwwNF^S>|Boa=Sar7`}8|DlzZc)!BODQOpMA<C7jRrgcR>EYPx# z?dMIaGGpg5V&=(r{v02)Qlogj3ZvJSLeI$Sc8P(83va~hXcaWoKg?l0yUgsp;?$pC zo-xXo-&{E<bW(7-O_V|Cg72Eb{a2&K0$jiUU-_k9ULj_6J?q|E%MW(lUGe$$t7pnL z1URA(yj8UQ@bT3D9S%i;-<P)dZF)3E|7y(j_)9t7ZxiR8IP&yx&!%G!>-K-pI{b5! zxmH8>zBrbZtChBS%QdrIT;%a|zkN>OqPo+|5;gnYAM4{%KCbYzS%<xDqGZaUzGH$1 z@^t2N)hFtoIrR2zWc-5tCjCbj^XM0BGo6xKHv7ln*#_FhTFl)H@25Atu$0kN_`NlC zePH{!#;04BXUr1+mHFszw(F(2zM^NJIe3;EZ(@%!xZHKA`jp*s?ak}H3BM}Q;B1aw zuDC>Z|H{2Aq9rG;%{r2$Ha}J6ap`8aD34e!ckkfR5W$1j_iT>(@^qm@sMzkAJlAf& zKD^=39XH$8nNu2#-HIg=88UcS7@~SV)m*Uq>1o!secqLA|GSJC?;SFp^s=;Ln`Ga% zYr3f?R*G6L?cCI%Uu|b`>R74tdH##l)-#J&E#dlGul4VjlfZlazHRK6W;x6L5EuF% ze#*+jCp~?>kZ?$YjCn+pQ=!ZHsLggP?*!zgc-bC$I*VO_O{v#E_=f10Dwmbshh|yc zynZKc)waL8^R1kI{w%kcmUnrR__vvtj@K1tq;IUBV^y_S&N}Kx+mi|63$4wL-!wWM z*uHrm@7XDb|B9K;Tz*uVYgKWOj24I3-0Z3PyZ+WZ)3`F_Q@&5st@T2lDwA9vo|^Z2 zf&R72X64V5gx|S+Ec-Q6V3Aafyo_c)+l^-v7?$jO{o`qBR@sK`h+BV>^d=siv24Pj zTjwv`Sm$7%r(~C@GheR#@9Wc-FIrCD*R#`S#;QLH7Ww+FQC;!iq1w?$wz3DaDlA!k z)G^#JQLZfR)tF^?JH<G!M_>1w!?SH(SI#w9{@ZzJX3k=F0mbFcS|y9mRC<?8^S(4e zw|ZvDq=|)|b!7)m?iZEa$kpSMGTl;KY}?5tAHQ<{F}bYOBcpp*jroqg=H82!mzXuG zRCdZ29aIp$t7+M5^KN7AyxR&PAJ~Q8>lnNU^wSf(nDTMn#XXH-B@T-G5x16z%v0R4 zY{JtSbG|P+7P-aAX2lx84(ZL={0@b6F2ebuGZ%1gT7O1mQst8Fxl8wK=4#7){3pb* zPG`1{cfMVA*@7D!Q%*!x97ry4U6xxHyXAoKlG3Hm=ZS_~F<m%W@9?Wb{a1G-m<1Wy zo@mvvTQVtn$}E9<Di7bRnDlPXLgpCxO^d>%gy(QCW|-J;I9J}0d$*j^MU`saJoQE2 z_|)_wYD{HiOFqaM-9C5rO~(oYr~E@xzCYl|RBrE>aK81@$GN8^U4FlNc92>2#vREY zrxq^E35c+@W^|jL=ysl6bw*1;U$LvkW=18wsmFR1W31y#LxT1kopa1zV&cKiZM+LO z|I`<4^L^47$>z0p`ReMPX2y`47x$i6#&af?nI~<}jn>z3LWbu1t9LalH=Pm4H+zoK z-RrAEt5yXh^+hB<{CB<2rD8h6^dAZQEeEDpe+;i|xtKcJ*=|{%@~!v6?ls9L46hw} zmHh0z>GK6fwmUc57p6pYAL*ZY*v!~9j$xnB!!4yp%a3);5kAT^&&sQRQRlmrk94O# zzu)u0<hPr0N`=y+!pA2b7Cl>dFKtEOyo#zxxA(oNpXSAuH_`OOs?e2x6q;V$)ss?Z zPYlz1@F>Nsxyzo-CUv>`yonm0!#id$E%e(u(;&^_!Ohu$6{#~fhE5i_`blGv-(+Q_ z$KRH>tvq-4XFqp}?Dl&aOM;?bZb|r?_#k=T1EhA7f^nL8vH}Pgn;6t;)Ci~Z_IYi{ z(=Ounn<;;J?fm<PcTNk_v~l8&JN8`U=cnf-@_U>sYfVCAqMGgWqpJ;TmRCLa+xtY| zo3%&(R3@pu!Uwa{R_jXou9!aS&fC@P!H)NDxt!{4z4pU+?(?+_b9DZ*u3ug0u3R|z z^M`FqzxSHI+P2bV_vtR4&!4Bnt9+Z-UM-Voa(BxLO*w;xC)*U?8LW9O@ynF)aaU{b zlBv~e<lK@A9dCa&C~ee^l|1_MghoWr??X*365m6gnDpyhvX}eF)A-*<Yv;s$%Y4>f zGs~Z8!>jjs5<_+qqwh@1^UK%em#y8x*!aB5G*-EFHVd0DQ~#`+GZPvsYq`W~k4EdJ zUkokWxwr7BjN4=<8O_W0SxXBn^nWI{X>X8VN&3winql7%zTLhfw{_3Vk3SRrw?$Zg zV~!|yN|6Xl@89;nrMHpI+-dHUiTh%vZ<_S<#!arxl3H131pXdN%@=S^l>X3Dmg642 zT*{#4)B%oPZ)Fa!6!FI$=vgVnm%m9dO^DaBZt2pWH*MB$Voq2(=hVT;LI3r(S+80- zlW##=;w_V|v&K&?eyQA)>Y2PX?>mF=?j`Q~I)7-GXRhD>wA*<pZ{c4Xg;PJi<*qvW zsA+9=!utB%uT}@9m?>v*PJiL#t*NtgTZ)lS^S6&)FOBEx+UTCoxX_%pW1lwDueo+B zW=Lti`f>X1>I3zs{aVWo^d{Yx^qzIh$4KJh=11@LNM01<%&WO&VvrYWVcj0S_7In= zwRo21C+kJUI``+ghl!-$mU6xty7E*N<9F@DeTRN{rmcT?YBsY-@V#}e>RsncQcWCh zFw8I#PEGo+U|zy(pAv6BE3HfHU!rzcx77BA3(-wp{XFYW|K84N^RsAy*2S;9v2ACo zRldboPh0t{F=MUFQ?C==Q%?x(^f|?__{{H~ZF%R-rtMwPygNENR{BN#mcxIdqPjmA zyLx3_HDwCDR~aO7-%);FZ%g*mZQK{v+Uz+Lo%?;p=4%HSkCj?EUT|fwxD>c@s)#XP zx@YP=$BW?-%I?4O8F#508^^p1DX=nPl35{QyZ29hq579U^(XgEzHsfe^7KT-%=INl z=B0>BKl`s9DOJ{L`{vS(TMNPs_Z@5w7yLV=E#YylX@EB~iwFY<T-}lqWv2A=(z2xt z3?MAVz{!xC6rYk>oSB{%Zx~;ZlvosRpqHAG78=6J!2GD_c)G?`{l5#cw(&9aNHOl( z)FG>XA#0Tx`-Gm;4ySo$39RjUY2F_>vmx>5xvE7<DFHvTm7JFN1SPk$IP9rtc%LA! z-;C)r;}XV=i+?P8(K+?IjpxRQ1&xV~tz8DMe4H)C1RWe2B__ytJWx%}WS8OY?5T*@ z5TJkmFcYhxKT9%mmB@=v0X9B|UtSAs5#>1C^jU$In<u}Kt&KJ0sK`SX7Tewh)AO5@ zY$vGL=?7_?zg^3B#7AG_!iEFYv9AsY@JPtX39z<uJbC!AhW}tg;>S2?v7&>Gjs^)H z4vvnDOQ$p?OkiMPZs+U~Sh|oWAoz@r$&{wa%N<*SSxl!iMQk|0z?eBh<%Q8f57QP6 zsZ$F#d|=3IkXZ1*<>;3T1BY0>f=dBfryPVu9C;roJ8>R!yb>Tf^^B@;q*_6i#?lZb z&L9Wjmc~a%nl;2i1?OutN(fnq%yAHZ>1yE_z<P|`wnA;q#;GzhQuKs0Y$usFD)l5B zt(`Po>PY#*ieG*oA1O~<;xotQ#lgu13nPSXNFQL~>gjh4I^M)|(8yIZ=n%`42@Vrg zUQB+VVs*lUQ*e!fN{Yb*A%>a<J3WjFnG%^+r08&7Vv#;^ghfb=({E~zDr1t-w3gOY zE&+3vw0UtHZdxp7BYea}$U=<g6l;+}<$(avNvzHD!v*+RrtD_g#uafjD2quifKNw& zM>O?HNu!L&hJaue!x?9eY_w=n`tZ5CEh<HWpLNLrr^I;?Cy#KZJ`MZZ6`Z^3>z-K$ zY%Vi(G%jlk;#9Km4S3V$rC>Q@o@bUyL5!Llk80X3CaZ!*kqHMUYF!PT(zt{}Q_4Z) zMu3*%z8@ZPHnoAQlN6qM8mwY;Y3$`o-Xmsw?93hkyZLi{&TTQ6VPyP2{HkX1Oe3*r zVr{qQ-?vEXi<J0t_1H@{gIM3qS&2J(D}sWLuVQ_(DSMsJngs_mow_(KarK-nobzl= za$=46=HlZw&;F4;9=Uq$)>+3kK0ekfX?*YQ-M{ta-@lcWefwH!SHJ&%{a(BI`BKlL zl5=#Q-Hrdc>y+=~8-<UL^+<lsPmC!qFaLl4?%us~=hoKFJ%9iG|M>OipU*zF^O{6- zcjfo%%YV%~%_PI!?775kPY9>8;Jjz0<*DzAWZD+wB<`rK2`Sa#*?v}h_2U$)zSBO_ zvQ_P!&L4U5;L|cTNzO(#4mKWk8;;|Nj*Mb#|MPe2NM@&{Wi5Mb(Z^gU!`&=-#OW{- zi|q?b8Qz3FCJi5p8Yi<En6+p;P^nV$oTX&pI@5D;xw2C0rz7)>3X_BmnjiG4S(d$e z)jo06tIOZpo;OvxZ}-CUP4m6qlRZ+7$bZpLda<|W!fYe4lhuY+1v72_J69Am>0M}k z?z%zf@#0@`J^U<-v;;Q>=&K5yG*;YOb4gi@Yjc2p^rAgnr<flfUh}lKLnlOKzRO}k zj-PRh--oJnRLZFd@8t-)m&_{tF=B=LQQ^mzR~-1Ep+9Q@3$ylhvomY%#FX#nt^Qa2 ztheCviAUzV+4Ihs9^bviba`*NZgQ_ttoC&y?ae(g((dc7m*z@cv$!6Uz0UC1wNppe z?D_ro`$UhFP#5Ki9m+}*xh$9p9aMrG-E^ijsl0#n|FyGiNQ)595tC03D|Dt*eYl?G zw94k=6^|;-(sJX^<=_AR|6l)DDtb@&*_xk=!W#=K%h#{E`R3jK|Ns9VGu>9Per0y$ z_g{OBUcdYQf4|-T*Ps9YUwv%<>Y`Q4j{SXh{%qFe9iKlfD}KAyFg2%k?eaL;b$ibI zzWe|Gb;tRKs})`}%k9l(bqfs*^(eY<^!##ASgyTbk$0w|y#9OHx6*(Au0NN)e&f+z zEe)4xpWbbYU%&g(<FB)7k7_)x{uvVx5TMYw?f^$%KyKHIhZh|h1*c>#SSZuY$TDMz zhH)jsffsW$C*FJAf5rE*#OsvfQk(5g8Ya(XvEY8ZdmW1f_u;j6FAm<iZ92E)Ql-w- zr?0PCp7T6z*|W2Dx-QSZ=;!vA*Y@6Ew>>p^XNZlk{rbPxf0gh3efRzTi_6b1P44Vz zh`6xfL)<?1%PWfeuPHEU1$w?aTobLQy`)0#Qn#R=0&5ckBk%b}8yjXZIT;~~X<z-H zwitw;`)j&;x4gVT@$btEZ`}of+jl__On?~V;<fdk&DU)_T7A~%dv<WIaN!}t)JHD= zR_)#mil_ho|L?Dl3;pW5xwrUDRCKT5v1?h~H$T4nR~ec+D|b%v^;=mzhTFoT&-9gl zKfk}kh3jdgMj8k_d;bmu{y`0aQs%ywEuP0@gN%vlo>^J`J-jraeOac|^EugTO^-=L zXX~atyL<P4xyK5o<AU5vms~q@=kDv^+TFjtyuAEJw({=(U8`>G3wQq)e)Y<=cV#+L zUj13WijPy~?%lgT<4yl-zjs>M{=nhH_gNv=-oN_)KRop6n;H&L3F+_P<kr{D%Flht zF#Go1zx(T3!cz(_Z*ZHNtrwlGcW9k&cyH;7Egvk6Qqve%SQr=t7@Wl!3N%zidS7%d zT6#rJq=8vbPDo9|z(`3!MM6P}kB5g#K!8hxkBhZs;eiSno{pAA!G%3(nYDZOeF&V{ z>fL?C{jI|ZmEf#PN?PGBrPXG7Z82m{ylTQG$8$HUPAc~C#VJ{-?uPk1>GBJ?7pmQm ztIN|8HB;7zJ$m?#_siC)Pl8`B(U_w4+$8<AwuV`*RrrGHwq+6bW|%JhFk{)I3v-v4 z7OYc>oEfcri)n$R6K^lm<Y&+J{c74~@aNU)xq+2wMqyD4KRa07{&8tTV%J;k3&r-k zR7*2f??|$2`1*6}$?b3MOqlxc_PZt0iXp$HwnXmwDSp69V%L_tQ?nY=?`0Zn+rhk4 z<~`T!ir-W8w=Y|H((})p@1-}cb_vXlKj!)Tx(-`?ukN$yHOJ1hDoxy3^7G94TMP<i zl6QBs2VP-{_`S3K99#B#VUc(tRonIIt>$NI6?SCIT>pOK(&hRa<QM+<o1AaLaxMSQ zk^176k8e~8pXa>F*xO_rsQ1kG=%yf}ety%*fdbQ$6$27#FW&xpP+Cem!l3*A`R!%8 zb8}xwvDewJyxw8)dCCPRB_<uqt*fuB*?OS-SbV*<*$$=qF&BNqJ1129s$|yP-1mFF zz@ql+=6=#EKmV49_!c*<^xMYBXAeau|0=gC3*%T4kiY-d(;Ef{Vs>jdMXvb&)^-E? zgILp_iZ735tubo&y8O;_)1c4iG^SnJrB`&RQ|tQ@5wAk2=I2q`(eoF?e~SB7eP~8d zK-bq>TmI=PTmCD^c;(0_zV3U~^-Sx$T8VY@lXd;3&SY5ZW!j|v`<=!6maC5Zg(}|b zXM~vxN#EFK_oydg_06A}XTB~M;$6wOK(_F%WAMCn8BKYm%8P?C+b^wnV$_yqKlgw` zPShNWgs82aZWA=+{U1z7)fQ);(ib(UFyqsEZkeQoM~^Zt3-L|knfarbxmjo1%|fTl zkfoB&#sBjjD4OY}$r!kPwMm}PIp5si#HN|O!c*K-XB(RQe9z9d@$!SmJeOCUF>dqu zG)FML!a(lZ#8n%F|Chh9c>Op$UH#wp8<wY!uRi4WZ@pphw*K&=bAH4pt5;QB)wuup z^-|YA@e97pXDx8r-dmXYMX%yQS=TX72CptlUo}qg{*po=eY2V8w6ApQEmBFoColgx z&sdd3N==k+%gMIHM}GWbiG7ZfjDi)Svz$&8J?lOi^;gophFki{xeqrN-T&WM{Gp}w zz4q)qiq3C;gzd}o&1p|x)1n_Sjpxxs?MVhnDpRt|J0JN~|HwNXuu-8VDdX(cy-nR_ z-<F1(d@Zk3j$yHq(w08qp()L9f+66ByoalRO3cz!q1dwZ?5jm&0#@aHT=z^}ppolB z{-@0|5~l?>p8Y2Ab+aDR*|Jq@PW>`A)0DfSvt%-FG`D5wlRdjL*}U_MoJtz6S=}nX zw;@)u&)xZE%K2-zrhJS1Z`3F$Zu<ZFylI(f|Cv*-H9ch5ptj|c9Ct&|=?lmG84g-W z$5t{MXr0;fljDGH((C_jzs&5<9bziv%;&hcv-;ZIdyQ#p{BH8zlH#_gT0Hg4>MLd< zd5U$?Q`b6Xrroeo%YB;v_rW{m`Db}|heSkK<umJkSoF<YL0?6`Pp$S^-r_wE9~&<9 z+Pbo@$M1)C&g5e;PZ^d5P4is7VC^jr*9@IC!KTSmSI;V&Kienj^}<zEX~L&Uypk+` zOX$Cu6dQeL+Qi3Fc`<J;-Qd(Vj0~@AT>Spo8Vvyni7Pj@c02B|W(r-FmbflmHdkU6 zvu)|W%~z%FK3!QlN%-;GRX)daez)EEx4d-z)h|2qzipaz<&*5JRHw};o?Ozitx~4! zs!J?#x_$ecUUbPt6Ya9EC#-gDnxryG%rr%P%dSl)A5JqnSzNmI*2`Op0cWE(FSxVA zp=?3s<wUQ5!Z*88Y`2woK7I8@%F{b1&v((02Ua(3v%gc*ShVogxeWrh#C_#;nb}Vq z=sx!Klqaiy<L9;Jlla5JN(w!dJyMTOv@)!8`J6EG`k~xAUPm=QrcXb~7BxZQ&kd{Y zgeI1#uw@l~tcEUm%g^g&uA6(OHsq$|qor3p66zFX-W|xktKS%3v8ktBp67@71paO# zb3=)DCGlU{eYXom&gyVIz{Ie?P2}vN^g!1QZqHY>xz6}{oPEc&iAz)tOFL{{I6*k3 z<-%$Eg+h!a7lIjTEH7qzFEaPL5@)tlLC@xfxZv02>G=gQUmc@$8Rs8odblw?zf3*< z-OQ+6VeT82$3=g8r93}j-L-=!*3O@v-L&0fZU2jR>~kg_Y4hIf(i>yVvGhvA!mJjr zcTARkK^lz`!aN+xg8bQqf?Hgo|K?5-x2e+JdMoQ957!1Irt~ZFtc)H`jGV9Q&&uoW z)&DK_RX>Y2x?B9Mj_U4`dCx!Ai}rM{yuHrPGqgs`_~O=`9OC=c?LT@1F`a$9LFr%Y zp*MkTVX^z3De3mTW}7aoDwdITNpTB<1CRFHFOmHvPF4;KecBv)o}8ymx6BlHc8OJp zuc!Jx)12z2{^ZV%$M#7!M{Zp;k#y{?ox%`RVW`qRg-7w}5@uf~Y4JCyAq`(XDK~XJ zIM`BIFl%4e3ia>r_Uzc4@cjQ2lVmCFRl$9Yj8P3*u{#<=IG9hcUK5O5a=K&z|Eb7l z2l;-o8T<{fu)NdWa%Do!jE}L3H+Emkdstk?zBhz_)7zxKJGqk%u3z!nfY0%b+M{5_ zBQuQnS6RP3@P7G<cRNKFl;{d-bD8#Cv{ySHr+DVm=L>e*&Iz~ccI(a)*vaVZ=~TV; zz2&{B0<%sUdUO1#?UC+GiLn>5_?+7ib@X<sj-BC-c$0H$>q~B@7A?DxQT0jIrf)^g zqn9o<x4vnvoZ1$;vvq%rOva<MKrX{82Uj~+9b>)F9lu{eJ;+c$&W<7eq09~QFGp8Q zm9Otp4x7-G_T6<wLt(m@g0I;+ul9|Ki!Y^Kjk^2zMr)V6&-=DUuUxf7OT&(@H+r>e z;l5M-$D(qNy`7`1XvwDcx#)M1Zvtm(RrYZYhpCfdOlrdx<orJQ`qRG-oz(b9g{kMn zr=E!j-{|e~tXrr_L;X){Pm_4Mu*M$i<SD$3_f{2&9sZQ^nsL3_`Oh5}V+w7=j_$po z5O`8mS@&}jbE~!b)kCkBWxa{8+`EJE%r5<<#($=MpO@Ye%6Q--lbx-K&dqsYM%7&o zX2JKiwQ(oE{B~7Vwc?`3^!=MMW?s6Lwp%t|c4kRPf!?8X?b~kNO)J^H|MZ((Rp@HJ zVU^Nqp`)i6k4Y-1IXQ4L*}kk%X5y(xaeA_{Zd0cOYnhIKOthflMV=<Z%xelfCqJ?= zPS{f*a6@Hj^8^njIhLqRpB*oF@^U<!7gMXcZHdo$)eEm$#gyk+IJ;=y<G5Hh@l~Ja zap8xlg8GX}SG<{&y7!u+OK?JKz+uK0@)x-DWV4oCmG-t&-`%=tA=jdoO)}yO!ULjb zO?wz!eZFVu&oGa5Ujs$TyQD2XU*0qMHsARpw@&AzZCQ|_K0n~t<i#fEuiZ2Kn!G*X zZM6&Av=tr+N(Xj5;EXG1n|$=2eek5;Je$1tcBHP0Sz*0$;hszVA`&Y<ce`A)in=MP zD$QQ*!C-rJ=e2B?&DDn*tm};!*#2-=zf1Q|6m2Z%6*ErrmRk6v$*FX8;Ej%79vvHZ zGWf=?@xLLt>xJjjoo^PUABoOAv*>%3!|c7;D;{>I&rD@5(PzJUDTwn;7NhIdxi#y` z`FwU(Yjzyay-~gYv;Ph$_X63;#|omA+L)hSx@u?T>=1a8{o&Op1BYA3So_R3_9^~a zBrovk{maHXTFf8AUF!o__F8|OE5mx8FQ8tQH&oQ$q^<JThDq6pFU*hd2Y5H7US4_4 zB044V`OZ(P(%GGyF3&g<vS-F5rqJnWtCx0!WT_-@Rx|i)GJ5uhZ|R2WKaJAWhqTXg zT#`w={XLVnbM1fD2S@EYq;`K0H#wodBj{on*VXlZ{vOGBzvkNe`7KkvSmZF8a`)R@ z+p}G*M_I-rH|o?0*6im`Ywq4HSRySdn-RblqUpG^O@Yto>*TnNEzu3t^F!+=3hYtI zT%lFN{WITrVx#7FMmOns+{S+kTw9LBpPO&adrJF5)&>6`3v#~9FTSO{qt@lw+?cS- z{<GJms9yNDWWS7`K~uLMzxkFO>8(@xKb9!Y&i;1tN3`tkVz+Jfe#IXZgE#j1x;0p? zYgqWWxR=4%iq-CHw^HAZMMYKK@0-(G&-i^WTNx1YyWcgiNwan7jcM*FAA7dVtc<<6 zBt-H<-}5Qw{a$r$aPSIJs#p|vYnGDeKKBz=$0w?J^vW}AO3Kg{Y!C}u)T(ibsZ)Go zK(+g-*r3#agWVn+HWhbHX;egTs)%dXUUcnJZV%x)xbfj?QHQ9NLPDxjdsIBvdve{g zkl(qpiTPz-O#Gu`pI*E$e|>FbO8aHy?|qJZ$Mts3H9S}6c<+#<MBu(@p~rfrtzpjd zmfIegc5v&-14V^9AN}9D_45L?@9_&Nr(ccy(4DYug{z;n*b(2fBiEOI>@Mj3e}3W2 zMajF5nfd578RggSd1qa}W9G!4Z7S8~agqnQj(*OSfAaOnx}c0t4l}ra&UEy-IKh)+ zdb4IiO5X&h_xm51PKps+=lSxIR@`o<T=kXPW-qw0=i8MX&uZC|XI>BEi1AjBNNQ9) z8N5Y>RY+$W%cLb@LOcsjEKThS^_khyt-Dy|<L1sS2bLCptY3ESV#6&DsZ1FK;mqAn z-1POg28FR~GTgqz;`aaFp1vCWDf)q4`>afQ+s+>5HMNLUzj@`l);XEK3|B7tZd2M9 zc9Yj-&5n>p>+*vf9IKcz=W(1>t7vxpEAF~eQt0^|(_3qet`-;@PK&%VS-#okpu4k| zs8s&P<c(*}*R`d(&40c5Nkr~SGt(>HIv0QBRcBaunt$ifFneFK#I<(rzT!)lebY+? zEe;=1YJFCHGiu69gV(Y9vTogb;o>5<aVFnvo|})^A6+P`GF6!L?6{X_jQ+(Hd}{2I zbIKD7cL{tio9322!IwQkd4|!uhpnvEum7(OOxpKE`Q*OJeM;rKj$L8h{)%Jgh1X%P z@7itqIr-CWPd_cICl+;bQ|8rexxo?jsiDJM+-37Mb#@I#!IisJGY|KzD%rh4;eq4U zrTbz;<=ISr7u+vu`&X^;bIQ}>>vEnSE2%7tbKDSmkEx!g`OeYZ7g~RD|6|=FeCvNt zz^z|}6??0%Wadl%w7c~3!jF6_<&cV7M;n7z%P;bgT2N}eXRZHQ|E>+*nLIY%Z=Dfc zv|f!z@(Qnvh6b<B?vlkxXJY=izSuJT*To{y0=-}B-sSR~6pZgEoV9W1btYB47iMmS z>c>~j2tMB@yz1Z_{iYt@$WpDRn<50}{yxFYXwdZCf#u4R{ZU`)FK}PkA>y#><-9wO zD>!9uUJc-HoNH4kufc3>;%e%2MEA!&?jI^@7A{Su*Jl1pHVZxWyjq!^X%S0YYozxX zn;m~EH~sd_@nPp=i88#)Q^uNk%3;ck9P=NCbDm!6Tj;36Sbs*BjWH`VJtg2FgT^~~ zhQx)%SN0{BuPxMd`^3d~_SOEWUrQz{Ev%DWF~7~B)2iNa_KTuRY>RfCi-}<>TAl1J zC#qoBbM57msAc_4_bmK8V*h!6*(`ecvFa3mpFF?hvfEYx+k|-pnZ7h6wwm8JEb!Z? zJV8A<@ImX=)z?IiT}@P%UOX$EF|B~}mlK=krwf^KCw<hnKkA=<p!j}1kM-o9d0jql zCrYc;#Lt_dd0oc-cm9lvcF9f(vs?Ev$y<9V=5XBzWI9)Hddj9o&NGF(geSk}SoU+e zvf9Fj|ATI*pWkfWxpza-{Hy)fzMh#>v%iD;kHMmjjcfHDynirp!e6I8_pXI%G8|77 zoD*hTDH3eiWUpKye$T0BO7RKLmu)M8mrOpzx?oa*1jo|-x0kKl$aMar>6xv*cc1_N zz0_*jlW?;>hNVxAgu4s<e$^tX6I3sLqt>PFhtQH2yEUK6+?sIK@87fdb4L?$cB-6Y z&1X63@c+r&gDa%3yyEZdeJ5?2XnFhB+VkBDJYw$fSedn7Si(Q`?3skXxI==8G27yA zD3r$BJd(R*QTok&R(ajV{#zpIb*lI6;wfZEv~ji$dsnebs!*zPqTLm<KlxV$@Aayt z#QbEL_W#7EzDIJ2e@u7qJ!+hJpj??nnaiZ3M$Cz|fzhael><b)U`}AxRlH-M$ZF=} za*(Z)%i)Q!{n3j%WLu8SeY@UIBk6rz$!x{<ky|SCcD%OV=23WYhM4cs2|^y*>r18t z&3oFv<-eW%K^}?u2Vz>fZ_M2MtgG;q!i4PE*;&iyF#dQj>DlI7d7o61zhS&Fk4u%+ zH+t&#bN&0TnNssc_u!J+6C0&MVwyu4&)H5p{KLMz=uYZ2iz2tUCl*1?eD@yP{u4G) zsVWV6J2$4M<HG5k(GUM_vn_o0gKv6>OtRjFuAS$mF6ozAr@Y}akEXHBt9rTPV*3~U zvW<1_vy@oU6#BtMaLTNT8NBiB^ZA){o-eXt&0N?0Cqm}dbF13|tqe)8cTM7ZJI6HS z+|(IcEfR81a+<Sw2T#3xPvn@-tD`rCSf>cE+h2>UyCJwob=?*-MgJ)VpW-9+9)4p~ zYfe4BL~Z5;;j|;Xd4m7C-%gvq>-eU3F<mlEmOC<~>K@HMon1dm-&Aa|&M&cK5r#`| z1tz`>m)DDnDZIX>?h)hvz)7VU!sSny=lY7p6*YG?PTW#^-~Q)@3K=o3|E9UKL(1lq ztbO_Om(-mTMJ@^tuM00qoA&(mADzeIQw6mA+S#8?R`uHzHZ}Fa!gNU+ffYRSjV<f- zzi9qh%3Qv%@rV2mJ5Qd4pJQd5gTGruy}x4BlK7CJFm1K!g68e!^1ch%)y~?c>|cJs zQ02(2(vZ+ej%(k#c<Bp-JL=#4mXP4w_E=qh){O&)HvIVfAm1v`-~I1wM~7p#pPX;l z^YUZBS8Mk7OKn^&pX4?M`>(mbu2o>BV&u{8ZQGw$y(wMLu2;cZTu{XNd%nVyhrb?w zsrq56W3a}<(c|BN2fzC!Dmo?CNnYjm{A2&>QP?U5j;!1hCd;;md6&g4S@z&T``Y4E zZqp;{BLiQZymjiigL+2Pd?9v+k~b^XfATaw6y%cW>UQC(bm`v1;-3^e^r~78TOTzO zU8S;M;_Q!>LK7AgUfsvBWoKOl<KOE+Mt2vyc6=3hY+b3C)7QgQva6iVER0WLHhkM> zQ+vu*D6l~E<I;~()@AXH9&@U!;|p15aaJBL-}jZ>SEi4L(@JCi-B(vTeoc33`pqD} zf3v&5@z5HrseA11YX{B$G~wU2ewLh~^;@_<?M^wL@~GiS?y@<jBI?$@WV?1f{O7-S zb$UHVVlB>b9xOOqr4{{A#b$x~RMRECa?5TXlgVQYU}8yG-8kp$C*_|dCy%Z*=QPPZ zXu@x^nSt?B+qLOICC$aoTQ@P5GECBmkUpKY@a{fGNdf;GCExE}-~BX+&#i4K@2d+- z*|$tO|MF9=YvTR5D{sohqq`s39V+_~rk8&tJ4so+O(e0!MU=C-QO-oN;n2MY-al5V zyr@tA6PlRNHFHh+?wM^xEEBS&if44Yg|MFD7ISWLop?gwBV*r1HNnb%W(U?k^wFJZ zsM#~S#N&7Gx24YNPtG`hxe~3?JkwVDfswA<)x)Ym_vW)tWtl(K`J%1mW--P8Le<$9 ze#LIyV^Ge&-|M)QZqn08)5tX6%i%{7>!-3a@A0@}YjQBl_0*(frImlP=a_hxiM1u% zxFIuJ@c*k<4SR%qbR1psIK`$jDD7ua^7$~4zc<olxvIKVplf;F8~c~N%kTd>_HXf& zJ7x>-s`;CBo?L$@rRjadw`nnFZ?7}CcXM9v(KBhuy|y_v$>!48YYrbXO542gn4H<X zjk9}AuN~jvGuu>nn#@}7f4LLya)0_}v$NPQEac=*mm(3%n>m4p8yo$frXFUR5q(nY zQnkk#p0s-lEBCxjpS$B`=5%BK+h4c5y1D$R{n~<SwikEb|8u5#UbR2Vv(;yo?3}vM zB>Jh*bMI}fo`*g<yqfRjxryhTo63QJ-mabU&u3eg&pgMaRs8PN8~YPiyKa7MGMvqm zc4lp7@6D{FV`rpp%vh^t{OsD1V>zaV$!WdG&m3Rw^8T^&LHV?!^A?t!t9$#ox-hNZ zzS#F%S6A^z0q0wnL{?5Wd^hbu_7X<rq;^4T@f!u4?F)H4HfU!$T*#iF%YEkks)deI zmUh0GXB^ciUt{q9fBWVg+uuyBkdQttR6Lb0)nVU>?OGlm78x8$+wIPCI((gJ%axsq z+QBC#*I%6S`}U4MBL5hLx9#w6IktkWA}27&f2x2FJL_@Z7Va<X)w_1g2(yi7@jkcL zxc~UX$k0Cl|NN$Xm+V>3VWQYBR3N=IK=eD0zR{7Bk_PjBUp+K^R>Z{anf~XEu36YD zHdV5ItL%DD)x<8$m4T1>V!<CZ`;^6r2WJ(}ZQmivSDQS$?r>P#iV0_Ud+&ZxJ86`% zKWsVIS_8jjWtr-VN_OmTvR$<+Q)A?1W_A3Z78E{JW^YsTgLTI1ErnU_CqK14{NIjU zMCFgZ3Gd=VpC2h$yZ2Aa{!=<bwLjoMxUEg5il>R=KBZ@I=g!{j&Yoaokf7h<YWHaS zU6B<Z|C%~ARxI)PRau*<k$Ab(uypcqD<uY-%l5gK&Q;#}>0IXe)!F}XPw#p$+h)7+ zuM%1v=CM=08OG1p8<ACZB>s7sOP`@bvu)<2NB-v~{{4JQsA$bOp(iaLZY|%i{-~%x z-21NJ@`_uVi)2@=ElP82<}@{zooX)ku<_qj7yWc5hZF6)?yR!RKYn3GcE2Ul%-aHu zuG^hA^mU*0Xn20dBb=vVZE|ex@s#t83;}NzDkS*|c5hkh?#_LJbwPTnu-rQhvlqt> zbsfBRTx>)24mRB_LRoDh&!-jaz5G(T?47d0(T6g8Os96X{;!Zec2qpMA!pIHKT8-E z`N?iMm98$sx=1_lzHe}Dd+zI>7A|XF8G7&I%Z=ISy}qUXy~oSb=iCg^*cME9CDZk0 z6Q}y*CdKq^!uOArUcNH%u~J^P)SkZc0uE0~0@V|~Cu?`rTlr6_j`dLOGg<xc{?5zO zJTFMd*0rxwR1n{wow3)URijQucZcu6RqI%bPETL9R4ta#^RW<veR*Pz=OfnD=hl18 zYMNJVesM}ClX%askKMVC`|PV?-S_NkovpSwb$M3EyIkWt`wwpNUBulH!?`DI66b0j z^BG+Yj-A^|?=?oIZhn9IYVVo-|I{ykdL70m>n3!zJuI~I2vbw(pN-uXUry>=d%kJ) z<k=DYclW%x`SG{*smUn~55o3NPF$h)azUoYtZe%rsdbrZpXS%s)t{aqcSyfl^v(Wi zhm3triw?^yS^M>u&~ojxgpT}^b{q)~Hj<XRJ=Loh>j+LO={}%%{mQyTe)E{~XP;d> z%5$vjZjZ~6GhEgp^Dgyh*;QXEe6RJbP%W}#zT|9^g?Af{%?@H!w-wrX#&-3a*DvL^ z<}10f30g=l>5bGk-lHaIYyO7KV6hgzS7yQF<a5TUVZM?{r{dl)En;w5dHAAMq;liZ zATD`^!n-dTujd=p^{75}=YI7q+x_YNH&uq)J-;NMTXaq@XA#Hw&(|I{=^k&66W_t0 zBXe){f}7!*!R$imQv(|G1k@jux0QWVE?3(xdG&si`Ja-BzJ@av{hx8qMQ*Qf=#@V{ z_ZhmXRruuvf+s!u{KBE3Pl}PHhiU7h2YaSZ%bEG*O9Ugsf(B+ramE`Aml<lDmudvM zZOgsA4LpaLd}n5;;MpzyMOQSGHm}lJv}obZnKKu*GG6z4UU@5X_1{eEx1qQD0+a7t zohvyr^lH7}*)v<-UjA=yxxz4`XScQSX0269O0#BWuC8Tie;{D<Q@umw{knfboh-G2 zf{Eg8l1cn!4;&7&akaMbige93lXZB&kjTWsC!i)GAa0klz`<q#vzVatI~DIkt^5KC zdMp=pt4=$!v&!`_PMkJpeo#VJhti@M-5nh>ICeV!tFhb5cakAzex4YwjY)z5&nY(_ zbKXFYjSgIzU5gepad6vI1Uxv%-0d0QaD{oM1D}dV%^{)ABO#7Tfm}iYcekIpP{PFO z;&)b%TTIU8!h{abi3ST7X(%nxuww}eb#-wuc2-@axTtf5iSI0v^JngC$-VvU)!Ggn zBjd}FEvh2Z%B^&_E?qcr+P7QVo;*0}>f-X|#y=auvlG(V4nMpSHFwk7sXCsLMM_0W zbG>srqZYB(mI&5v5$tryik_t6d1=bFrQiO)1PA)h`Tzg7M>y~)9GhYI?%kOaYqC~# zbfl%-`u5WE(?p)fYchUWXwULfn{jLNo44~XmYgejsly<d?t1xn<i!%M<B=D)<Qkmo zTDIBo_O{&LU;|;X$aiyw#}qCuQLT~=2E&I;Y{FdX>2AAUDP5dV7GS+Z_R6-oWn1hu z%RlMwFZek<e#f3a^3x65&b&X;BNOyhuypp!L{IN8rdzD{SRN}^N~?+aDmYcmIQa6V zBkL0zn3$M6maEJ+zI^*!{mq%$A{>nk3pO-JC`fml@wvS%_x8X2e_d3J4{!UgYH4z8 z#cpHePLH&<-2bODYszQebagQ@&iNhRw|UXa$7?dIQh6jFzq8(KxEh>xUgqB3mb*On zHrOZs|4;w_|G#`PIBl)cQd%@~=C;4{MT%}NXfQe^QC^&$#>mLUC8(s~A`l@Em{6H@ zEY5XX&9?vl&-)ims`2<Y;g6!_Nl(8`X5w5gtt&H*akYkP$Se%d5aDvya8k5BCeeQ} z_r?ylUcY8H%Vf6qFJ>HHY{lLl*w&+cyjS|K-<cb`cD47dJN*1vT3+Y<aA%u&7w>*Z zJbdn4%ZW2RM>cKh)RBzLEXv8r@LTKVk{2!5>Si3}^CsiU3diD7)vZ%SSBHj94+z}4 zV%3V!quW;9T9viBE4k;<i@A5w?nIcbc3GO97WL}-WRoJrh0@6<=GK@fuMLfN3JFS2 zi>i7y&+?p1uVLN?re5h4A?M|$F)$TNGKe%Ks<>a$(38E*EW*If!^b8jB_<;!A|+uU z#lxk?#v{NdWTGJ=Ce(W3P=JGtNJnSKc8*_x%ftS5OxZg({QIZpbDwT{G`sM~&#S)` zwsn1MdOZF8`cOlqZ4C00{)tanD|W2=$n6TPZxNn$2l+pGmRfKXJv04r^@ULLk6UMM zUh1`PxSqbUH*cL}&h@KrbB`a)DSLkUgYL|`e><<o{FA<?tJOH|rttp6zqiFMcDmMh zI#%9Vqd(s#?7Q#tk2#g{%isDIT$4U5ZL{z0=5truzP!8d6Hvb~%)jQr7ZusAY#$%4 z>Sdc2zKfZdcQ}0B1d)isZ8g_a9J=%;35J=>yU6)3?YGw&-78jWwk=YLaeVuEzM1U< z`MFmu>*b{1INn}Uw$0LU|I}))Dtomw_KTa;SADv-W(G4;l>g29qBq4?*DhVNNdCnF z!<5-aZ(N)?$3w_Gpz2s!@zHCU|B8&#rz`rT{(jKu*}i`E`OU}p=ICwa*gI8Oc;fsS z59dE`f3Q3tex|e5oi!7)cnvC6W=5A!xU+lvj7{t2y;;WOzU$rjx`OMRO4nM~?l`uo zX;P_)OY8LKQ!X@4T5@{V&W25``5eU$gSP5SEXq8&cLk@Nu9WBgQgtrvmzwgTr&OQV z?4SJO=)<nxQC3AyKCBK(a{X48QXi;$@$6|~M~jv@4J^_;p9Kxv*xomFn=iiJE}p(l zrF%wil$x>8iyK=m7G%!Q-G3^?qs)cz_Qs<hGK&xV_<p=kVq@-1-qgg$TDq6^xo%2T z7Mzo+8to@tD9kd&ByJ`9p>l2S@UnC4ZVdiOu18i$vwV4XBZ=j_^t6-uoEhP1hDDj@ z6mDGfex|b4BTqR!IP|8~_Ro8sO?F|DeRASWsY_vNG+RoOS&pZV+l6B~f?O;11#b0! zo0+?L^Qt8MCoPee6WX^O<@R%JH(MQjX8Ycr*7n7FxTf<ZwB<ys<XCf{OI!3H--e{6 zN*kE1*M)KvGrfK0AitQe<x<+xW+7+RC8`^v<6gU7_x|9!c8^@R*{t-fhuj|;U2&4G z2)imbW%*XuCXOtp31#cvMee%(<TdA}2)_W?gzA!S@s5qll|N@`v+*SEyZ%r+^72HH zoa0CGVt-c&sQ$VU=3ATl?sjt3a)X55E8co9(-G>qU3>VOrqurfPa5yqHI!d;dGNjV zPj>WX4YP+oC++iclUu_%x8LYvdgGqY=bw1H^-WL|JF;_DO=ii5sPAQGV~PqM&vs^f z$G|s7HI&(rv-ydaMCFQ)DxAH7{Q|#?jDH6&)jyU~8?@);x-C@`7*;y|R*QVjo-NXP zUED)ouC1&0Md<37sk8EnZ=K#y`hD`trkgJ~mqZ?&Am_1l!}62j-yY26o9`Ujz!SK8 z$L)hpSMbg2I_J5nXi8(`$0;@W@6^-;o3vCEj5$NTDwQt$yF<TPRD$7)D4&;1(N7C+ zd;c2SIkzRgKGQm-U@`0bwEU21x;Hl7T(#quP~HD)@i!dzbZukoKgzUd%i}KdgeeM* z{G5?eh1*Z@#tD62%3Pv!FvI8570!Sc3u8XpswSHsmt?uTE@6$>0d6^uP60l4<8^## z6Cw)ETE_~X?b$fl!B)g9;q+#Q>KpP(;e}tbylrn+O@GxrsU(r}@4=l<CnmgAQV&ai zP<7~=#cCh#I|pB!`zV^R<b6@Cwy?YWvZ6}|o8|;s{|!9F^!8HVj}q;fn;g52u4H2V z_RM+u?*J~{2{ALylxZe#-=DqF#F=0AHe+|Q$SMnCjhW7qol6cBZkOrly3G8AEv>2B z;-b(JE%^l+NtbOjg5J!LD3;b*l-%|CP}d9Nqeqy!U!M0pn6tktfK9_HdmcZRxa^G0 zVlRY`-(KJ>vfHs=qpVRb@D1BperuNlugU@*`Ny1yKfwB6Rrkc@+_s<ig;{>2EP7|{ zcX{RcmaOuMY?J(e0=2$K2Y;E(6Z<Uk9Ctal%H8M?RynaC;QsMDb{aJ;g-!7*7hbux zynpgzpX#`{-NNteEj-T2UNK(RIZx)(stLx^EMH!JeLrT;&4j|z+JBoLTsdw3^~~p; zHXmF3Ph8>r`efyu7p^PVL$B1F(0KNq+rHmUed;9k!eupkj2D<>hn_P3_9<K7{+-3` zX^oePv%USQVwNxlD3+Xg&c(27*Rtnd7@Q6}Xub@wU)i8@H%@M~t5h$msk>?AoVr?W z5gm;S8yff`<kt6}&p3YIyMMp~MTTD%JU2OK9lRvnsUxJ;@$&DThJzU{CRx>Ap1Dmp z!J6c=uhLxT6Uz%evBFag>8?8~Cv}%cq#jVOU_Knbcz@3~&TqAcr*f7oJn~y%&!j6V zwjcirEo56*Gck+(pNkK}xeFr9SK0+qwzaykTSlCFVa{-h<pOK=f`dHDv!qO$lwy}W zuw3%t@efru-im25+soq@G0$Y{5}UxoQq{0|XS_(d(?XU-0rLY_JbvxnGwFkl<huwz zksAlMTu3-3>D4Nf*vL02!BVB7@So5^7Y{v=1NE%(QW0s<6{~N5DS36_d#{MHGDp{n zoX^);@7xuNmwGhm^5bPSPL~#4(~0|XY|i~FCbI8~SDQKCUAj?LP|r!{-QA_XDqa-r z*KpW9Z%^imXUi`vak}KG{(9=Cna4j?-_qmNZ$5X}E1>!7Hny(MJQnM8b)9BhP?$64 zs>}3k%<2_i9tLnpdzxFWELYvB;KSj0ylQRDUFUY2f~v5azgGCIzCUBp2d*708YXl3 zM6*tuo%TpKE$RP-Lb2~`d>N;j7Rfx^v2pAE#~yEG(#_iDxX<XyZVLBOlT%1g|9!ja zA^)AfbDsZ=Dtpky+2OOt*?@bGu%B(Ski*;7RF;qzdAt2j+3pfJrKPmfd&RDMrCVlJ zYOH)A-&4S&xF`0=zU!Gg>!n`ECFNakJAX7<(&I~j?!&p8%51}Wb~CNyeZZ}8kx6yF zUPqVI5g8+k8{V_R3$8U<oe?{-@sZccj@wG28#LJuKhae97M>#Pd2s*QX4|LoJG8gT zAN^J>H@V3<SFc6D<j9K{Wfgm2{b%i-%**73~Jt}2+d#%;&F-OM+R8~?ug`Y~VN zAvFfJU#DwL`hUrBFVb4QPxJ1N|6UA^%ig8&-TQr`?(gQ$M*eSSL?;Ozp2Sn;$abk& z^g-?ATL&}ckNS(gyb(HiUdtwhn{T2bLQ`{HG9sV0F_w6;hwSw8S{$$TjWvh+`YY9^ znl)3Ksy`_mH~czzks^!zmfR?T^WUETy^(xrk9CxC{g!FZ^tB2%U6NZO(e<fg?cKtR ztRjmkQQMZ;wrvPesAe|c%1^s#sTUNU|Ea{(Flb@;whc<c`Y(?^u@Fs<ak|TH`OM|* zgWvicT8!o2)xPeupECb_#{WjW_#M{M?)_2csXu@HAXn15Zs`RwGySsy(%x96&W%+* zyM103Q;&5|gur6CsttQBeUd~k#!Si6T-sAw<NHPF$f5($`}B`)IdoO~)WTj9rQGDk zm8mN8e?FFKFqFJ;<d|aFnS*r;x-wR+xfI+i!5tTN$F|#4_c3ol$)?90x;a<gL?4-# zlvlN_j-%|{hdFj8UnMiL{;>ZE2=J1h&2VDR(O0Vu+o-!<xlp)L!r}90rryfXeIdJE ze-8CaGkwQkd-UAJrH6LT7f7(XSi%2u=^`0(P1#Jd<DR{<KB-^+u^{MU{RQP0>;LRq zs%9)?8+6fQrRtRRGYYIe%NwzrvQ<8{_kipY_r%6s2a8-z&Yr{8VSl3k#iGwMSc9h9 z&un9V>K9tptoy~wDbnM8<BGc*>-5(IEc8z44her)&>O|?+|IFV)1iZn`A_+_Rj~ZD zoN)Qku}Sp{Uv57-)iL|KSLs?7Nw+_1CLUXK>D~di&wY7c0(jQlng6+I*J~5&nyxR2 zn%C8Mst#>h&B<;VS(153A^lfU`J!d_|CvUYWE@zaE*9%6apGiByV@PcvN_@hqD|NS zxqOY$E2Q+^g5O6as}jS`FqMSgn<=$NVzZ^;xhZp`{)UAb+IY{qopj1#t!n-&31R;1 zV;T~R44=f9sr@iJu3@kxIb~}V&y9Eenh`81PquMLa;Y;HKX91H#O%r^VyRRnqhp*c zyItSeoQHkk#%*p-?_2h~{a2d6SQeJGoztrE?5~vO6~7E}KKZtJsjKE+{PfoGq+)2$ z^}?M7603a@7oFdHIxY4$=N6_$nJ@glyY0g|c39=DVeDGP@aT17x2ewe^Py#m8<^M^ ze?MD$@Z+g?IhjprZ<PJS&ObTwQR~lsC(8*bDw_AUR88IWYPqG5S9i{aQ>9-jbY)#d zZN5j8u$=nwSm3(S&OK+Goy7{BgG@bVbz~Se**{X9rIq;k@VkFA7nX;Ih&390c;gZ~ zZNi-yO=tBd*vYNqJnd}2?6hDrqX{!B@2<lY(c2WoGJ+4c1-+|27uv#`vuqDrbZAs_ zs_4~(XjRjQFhkyLp<d0oq8Ae)Sxq9sHcDQda6EXwzvE#xR&K76_Rre{oORxrwrqC{ zsGiH@mV9&JD{=NNt@2yDY+rq2-2HL|?}6R6>zA58%`&W;|L5YA;QYBu7wznvV5jr+ zR*R#bPT8EacK?ZXI!|x3IiA<Co>d@_ewr^=;)zTAJHIPmX2(x<Z8x*{a%9nBP^u`) zI3$xYf9jHZ0a9WQINT@P4LBNpGHB^k#n0D*kLTXr+~erHbK^#f=(RV~zI=D%cYjc< z{%wUu>+>}yoqT0He)_%ceq!E#aMGbdcZbdeFBC$RBw`n<GA-)f=b~WM<-_7KeQBpd z$(-3OKF2(}*(HO|bZiKG`0m}Yjq?_*z4kjHXxG-tf@>BDXEwLlyv*<3eCcV<(bsbr z+t11DxF)GtHtl~^y8J`Q^7WP5{LeS+csKKNjoYQI=QsV1e3SL-x>I@Yow)OFR|&4Y zGgCWx=eHYIzr?q`<GQ<J-tAEBn4b^4{;vO6z9#Tfyv|8&{aEuEt6#=)-Z8xuCwse8 zc)i7gsHfL|2CE8vl$hU`=Bl1|o<qJ|Xyvh)r*H1JH<x|hZO*YqV#ON9{e9I^h5OIG zJ#+8yI-~ooCF{BZ^qjWYw@piQt=aefNh{k{O|uOz%-dD9x}S5@W;EQso9`s>c=oDS z_1mMSKisVL;e`Lf2@PB}kNLtD>WaSqc4ggVi>B7R7@rr%)E7MLD{GYRVBW=G7-I24 zOEUe!(=(mdEtTh;6WVd@rgqt}`(MwQ9WyRiSNUw;Ji)@dn@eiGecF1y;<NFetbglS z|8-@>%irEAx@O15@Zz0WA76io?Yt{`GfsAUwsuV6!>>~`e#U7n`*2j5t??uCn#9aq zdv?2-Uq4-Tl`EWYPtd;XGdq8Eu2zoy+F`Liw(WSO($D>e5))0-h3{oDRqGzBn14Tc z(bi)(_q<dts`|EF^3lze?Wf-c-9LNf;cWlAoGbilzlz*&&RgTH@cPB9^u0Av@k%mk z7L)ol+b0EA+1p3_U$mg<qV$ZzFP3K1E_xxJHg!+knh5Ku*R=mzTW}v*R#m)LptRO; z#qW?*hU%kM5*w6#9!D?Oy>FR({I_6UWphhe4#u7Ki#h70Z!`M6Y7yX<eE!ttQJjwZ zzGtU8>aIuE<_jp)aE9hSGyNT3drjf4&-wi-C%3EH6})}9&ieQEcjseX{5!aALwwKg zofEEKIlaxp>Bz`U$O-l;e)*PQoy_O&%D?wL&bwNOm9@iVVp-LAjKx2}meupu_O zuJ}*)g*_z&M;jfsNGq*5Il;MP)17$^yVM&j>sFokfA-PyPmCw-KgjxQ-tqVEkIp$) z*Erfp&-*7Dn&GB6g+E|^)#n+G9cy2_K5Kkly6kM+q1UI<c%RL+H+KB}_V@3fhu8g7 z-(!1okL^ySxViV|tx?eziTwDP>EN?>1?{^oBpxs={`K)wv#5HY{yAln#oW2Cqy0D5 zr#Yp&nWs&+y;1P_?2*qqKToW!d6a*5-p&iN71!R}Y5u;+a=D_Z!^*cCk2kG8yIxr0 zdTpb8+Rb?~bB^vg92|7#{PyiX_bKp;ym%t!I!%@P!Tc4z`*vUc(_vR~I)YKDMtk}% z*9-A~BY9u&l`M>8o|~b6?YHw``;HpLH}9R)Kj@e*zx<=2qE6*;{#*~{W3R*xXcd~S zi(bqonIYqpzw%()@BC1!q($v{Uz!-AcGneb`j8?vxAsh)Wo@a!!E5mm3+8>~n5g-g zBlorJqrMq}M|SRxdCrr?AHb{X-l+KA%i{r`?4gQ!R_2Ex(qFbO<ZO=)UiwDh%J%*k zM%7hQ>?g>27S^+!Sah!GJJ<Ej=PUj9w%iN4AhbiIT>YZ{=Xp`T>lHRLue~wb{O=6e z-<M`zm#z0_Z{KSv`nK@SmYoc%A9Tg^DZWy<BmUlqtw6En#6r<8O@G*KJTT{&<g8fp z_G8Az%0BC7Ne90l{ePUZV@1vik9$iUc5a&0u=LFOO>ZAbCH_faG{2SWB04?qfPr1= z_Z>2Oo}ISQ(wZ)^Lf_K$#B_-@?Q49$n_K=6aQyynPMev?(dXLd3|?!oy<PRs%VBcz z?W=DrSMcdfkO(XG@zjzkny`?!hWEYm#LV?frpgR*!53{?E(rX{*wtbimnkvxy_Ct^ z;~jEc=X^gzF<%K|R$dW#@%>*}&GW1^IbkI&>t-MJKe&o*#qBqzBt@8AJ_hBKOyDfM z*P*vcRzNdr6YuplyQ7(lZ*RF+7`&BJa^|KTT2oF<d6ed}pu=52;%M2G3p2G&&0k_5 z8S*@P_M|%{(N0$n@^h^JUC+)FE6BOl@dc-ygx(gxbq(7^-yD*7^zF+JgA!FW;g+pu z?_SpweB__J!$K+P;qO4R18TdT&uL;zKXW#JAxBf#)vSU?Spjb*u)bSuzNnEaOYQl7 zaqqpt0URwcexI*KeZJ{*NM{1y=k3Q5IjbJ^ecZUJ>A>zKcBPLCf88(-6OPxO$$yyB zoo(VF#}CEf`hP=00zW@g+q>{i?lVyZ)%u0)Jr7IHv^zaov_(dF&)fI$ryoDKeB_hk z>S+vIpLZ;uYV+vV^@hs2MNcMNSku69ui=B%fvhv)pSk)!^(1_Ayc5K5$$9?E`Kiuz zLVMF5O;$V8!Lz*athLOxpI1T^+-}eH6Q0KY>9oVjPYW-toTT2Z^<e$3ht<6esXzP| zycfIatT3bXtjLB_?9E~J-;F(YPSoxGAY#krGxe=|jH>1Po1z}x_o|$}GZ$Rr|Jflh zGodTw$Wev1Mwtg%H;g4;nP1nKxp=BwfoQ*cqF7E%pJSwlWo@4pvt9WPuB^OG&$cn@ zY>8ZOIwpSMq$QTS^;WF(pZ;TB@Yy9M=|M}cv8+|}uv(#THgQq1r<)*i=*klfJ?3h9 zAsv$yww{=`!QhO!-xkLs+{^eU{4!jkD=V{I|DOHz_mgI|3mlV{zTRiD^Y%xr+Qyt9 z5i`MGg5PSLWKLe1#uB{mlxk`1^sAC<R_$$1Yg@r~kGbPwFk{onliLKRZoYW@)#dA^ zg_o9glyk+L(m$}1yCPK~?8{#PMvcG0t-Pn)?}gvw6$pEiDqW!G<n6L{b{+GD)3*yW z`MNKkC{uabK6mfm>1%$^D5={ZHovjqxAnWn*-P$d{4DZjjmdn>p|{7IU%RTA|4!?K zs)9X}|Ac-1q_lG3y#}_=G84K^rJS*^O)Bw;`Js7ryT}p0)1?n2?q3f%B&PZA&@ykI z&oPp{68$|9&JD5J_m^krKUF@rcgnu0zqjjfRz+NhGo4m`PWhuow|?Df`TgE6S<h?_ zXm;Jgu=JKk)0E~{c3*1iS;f?16?G*aPkgv#L##^22i1G;Y&bPmvDZJ{UbuqerOFf5 zqe4t~luNjqPbEBZXYY#lZH;V?sP<5K_9XxNl9P+S6fY4q6K!1+nqVk%(BoP@)8oRR zt^SLXPx9|rGq2yeTyrmji+-1Li-Od{qRtZr8)}yP{BU9V#IIIC^QWI;cRpsjVDq-h z2wBB542gU8H(lSsxWCj&@O|kL*44Xf;v~}Qc^7y2C>$>jmDAOCW>8@icHeW@X`Am^ z?ad`Z5v%-;t&h^FUNdjgmlem(oM{Z$%^dtMJ9c3!&-KM$AIDx4oN+CD5kqZNjLWl+ zT}F57%sxk`T4l^*WV;}C?0#=l=*Iooe!U8gk=L|yIp_E|+1cvf4R$Fx6=14VYya_; zTkmJJxw^qy9T>Hy^K{5f_h+4OBHm)p9FIS*?Hp(HXzk^%bl>u3Ur*0V&YRL5QFZ3R zjUC1vjk8QA+OJAwIJ|HBk_n-!W&W)R&0Az<eqvYC1LsG{Vjm38)tLCj@!m<jcH^|X zO2!%0rQavNixW?u=`SxZ$vNY0h=p17r|<Pm!rFH%LkwM{lpe;VI)yiU>F)IPIb1!j zqj2it7q9sKn?JC#+Ho<N{j97jYh&QF^*bgeRu=tI`0U%W?Y-iT>-X<x$ohC6aL7%b z>0IT<%ii7ElOM6~Po{v*mv;=iDn9TlIpj~`d)zwz)E_|+u1{hYwYJ{3D_C%HTF|K} zUFIs!H3XOhnHdEbpD?6(ue!P-_wKf})+XMUR8ATiEuQ98YFT=BTk37rw`WYI7%sSx zWx8k)o0686QWB5C=53|f4;YdiVz)+Y(e>PxXDQRy6nwStwAM7^6whljR781}cL*Fb zk(eRL5_VJ~z$Yp8#)X6@Q}Ps_A3V&;dGhcPXV&&3j!ce|+B-QpMO36ZVnK65pxMS+ znd5<8n&stbX`!JmF5B*IOR?yCY~iK3^v>P6GiQc|iV6ze+;)4L3bUj{-(!ouAduR0 zkYZOCmu+vi>8@nRG?C(3(xy9kiOAf06H~5j3sn=`xUD;P?bHkp6S+x~gm^pKoE9l6 zI52b`+oJk%fyYE8msK;isWkkrZ%vPy#Aoaot>$@X8xN1LAP*bcQ5TlvwvM*kNIw?? zvBL=h$!Te~HmQ0Rb;x~JnPu#<CHHpT?QLskDJs3)w$*dds>cS}PuG1&xXL4#xqYo~ zNU2QP(mSDN1tyl=z7?V@aKdxash3Bbn^jnt3`LDClm$Evv4}>Ux>I;&RmZV52Zagt z4iYAv9+TLQFuC~eYbj>W<m62e&^~@{S`w2%fS?nblE8_TbA%QaWrTO#T^O9s=W$p< zL6|4=s4*|E%Vd`dkB(DkTv!$_P10szaj<dG5Q`SQ*`o4@QNcz<K<M9+ixD~}o~W$6 z;4#T<XNJnj`rVDpn*^^;@xHuG)i$O5^2%vXm>L#2&o;^R4qDxGm?hVHno+U)tgWGD zf)it}&YD=h^vs=!X}ME<T~flgrsZlL4?J~7HuGB8O&6E4&}_GRQ;T*?nQ47#&Du?! z9dA}$>)E6IbU{$sJCDuVPN^wvS{-HlY2B2?UNd(ppS`6uyW_;Vtg|O}2lYMPfUf2- zhMFK$i)7ucFQ40D{MH9X89Pr>@tmX*d8%*<l8d7(bH%y&pZ6t)Z93)bqO*J1oTEuu z8zatac><b2tUspqe?KFLMFzGv)}47~!WKxHJvlAs_TvrSin~@D8L!@@taUUm{lqtm zH$ffmR-HMs>RpG|#@m?|o|BFy8D5?gIwysZ&ocS)wzu1IZ%@lOrgnQ8Pe<S4RU(^r zTW=0p)sc2%Q>w$F$1AjszIk_U%@nOglCyK7jhHt%IW)|i_W%F6p0k_Z<{D*QTH*=v zF>-u(PEtAPa~c#3o@wuHY|FjP)*HNHi~oFIr3LbvB^X4Q8XdYf>9{K{{vpD^%qha5 zrY55&CL<?jp~c6=#ly!V!okPI$Hl?M!^7g#c)`M^r=l>H`Mb!|OMTX##F9M3UM6&w zzr6P~VfCh?3Et;_C0?KYG(l|7tHRZqhd#XUT{Yt>@1}|nw%9pVb&DiiwjF(A_5Nqf zq-(o$LciU}$*hbotF6pSb1aX|GcB!%`&+3x*(y=3|J07z&d1GXIi|#)(R*$_TeU>* z{2T+`6J3|WjF!#aY{dT5b!X@IK*{81>&|q3esCwDSC`|_;Z=<vJdVaRAH3vjIQ1NB zr<K;y=0J^FJF5*z%1??z46lD!*b*Uftk7b*anF}D8;%xjQ=QF1rutXAuFssOY9L)# zG3#7Lgk6YCpYV<!g-!~gfkNTY-J!F#WmsF-S6=vP7{&j`Q$B^&?04gL&X%ReN*q7v zv=)4cz9+CpMR3xtHtnYQCWo$GN^t)$*+atWhCXLp5T~Q(_8GovrqiP}^%Ga07Asxr zyL#I9^y}^4RkU}!E?Vh2?dglzVaBVuPrVD9^jJQe$>{dRnW{g2-T7<x<;(Y|LrkZq z?Krsk=H%I$Y*qyi+Vy?nU#_1Wo)vn2O~&i=$v?9<Y0W)l#C?M4=Bkpu3Nt~atlUMH z*53%7`iH69Va>Tj1&x*&;T}8_teZE+EKF*WTq4bL>XEuc)|A$)&mZbCH#*Id_WyP! zH1LFzkYS{TQHb5T8PNtg3@IJ%AMaKxNi(x;yneXSJ*i8XDN?W@Gdty;=DDasriuAU z&kZWYp1791%an_qSHpk2W(u3j|9Kqt`lr}}#k?{eJxDllUu=d2>!Tm{o#y))yI0i5 znQ&WN-j=UepEAjw!#=Zk^M=*~JssZX_g!=N?WFMTeSD<j%D<ZvnbIfyd0V?F$>+g> zy&Y$>*JL~`%Pm^WsVn9G`{IsQmk*0d?3gBQy~w{;>41L9`yLB{0=c{wYYUg%YU#F| zS+-JSMO5cWN1LDL7|xV6PS|#&W!A6Raeb``=W>L<si*Kvn!<DTDd!TNsw+IJ4qQ7S z>7*@n;@+}JCN@E)9`9~VFr5=<#&gDKqFF_#d5!(1Dds<x6lCa_PqFy1x+sFvY?J9t zZ^0$P<<5SxH`c7JYf)K}*W~y8{p_@cSATV<%}Nz%u;kqAp;eiGD)8VNE!X|>z7w}Z zialAn+R;~G>CNz2#>@F#<&Ip{i@v+a#QJa=!zTCB4_41*Su^9N+Q|gYu-_JK2ZWkg zj(Gh&cW`RNi}!akW<>9*KCKrXD9)1}Bil3AE$ruA-Cg(0KVN)hP}dVtzMM(*>GRwV zGiSF4&1+fuKhjf0clU1g>vuM#wMASunITd8V!FtM!;1|Jmo&R?7szVA<Q;r=<HN-U zw@p5A%sg=LhGXpEht2G#_RTtbP4G#(+(sz{za=g6Gx-<lyijOA;#=cj;w5jkdzzPV z#ZUP!2ahc;329OF77WswaQQjM%u5UhCiiu49r1oR$4khW(b%hKJxgk>iS(_?HUAI0 zvo&mI(er!dme?ive52&P6?<GIlmj??wyT|eaDr3xVCBx0#~r?!{}0<>TzGNWEnTzh zWpf)`r<T2T^7d$#urEkCCdPQe-b`bTS-p;dtts0sV~?B}mdbW&RUS(cg0vH-N}PzX z61g;Y<Mc_hA7pMkrq{6MugkL;iy|*C>G6)@`Bd?`%FOlMOJkK3MFGy)8)ju>{pHN7 z-F#@@$x8)qFN=P6=lfGVzw-cplgqvz%&v9QKCeGJU;WGbDcNi59vrD#8kO~3TKPxt ztKRAMe;3ss?=M$nH+k&3R5!Wk)A`kt4)sRwjBJsWG^`Qk^!(!L`96KCK4W&uq~nu6 z^GiFvFuHL=FZoz2`^DX#-g_zWyG+ve>aKk2+PdVJuwUv~kEQdzdw0(-S5dclt@`@> zu8DSQK0SJM`Mt!W!}GM2-CUH{$0t-Z{BTvuQWCoC7dfeUa?;HsyH*^TvC_L}k&cJj zj%7-UXD8@ts@{KY@U(M&cD`ZzCsEFd)1K#lp7!9KdWePn0N0YmCZR%?cp@h?ZBCkb zWOoP4wEVckv)n}9`Ba;x1czME^eH-|<6xyFE-K*mVv>o5<|NNO-CiBCyHr)Zno>h| z6!YAVQLO!(do<vtprf<m&dBu=H%~?dI2d@ipW3t7E$o@DhN8`-sgvG!Om&?p8-1hr zXxd6|`zy1bvb2^TJ=GV&B{ZqGq~%HU)=kE_tc@op^j-NA-uvRrS`Eipf4v``(fV1k ztW%^&SmZ@OSWttC!rZLzi4tj9o?cT#PqSTHDs-7Ib`sN4r%ji3M04Ji(B%EhJ0;*O zg9DSQW#pQump;*fPDK&!CjUc~ttW>G_=vrnH0k^bK~0nTZ4(9Lgn!6OahtDw+jL?7 zf&VUsNokt-M>$U^-_-mS{x)aU^am^-Bg$9(Q%;+9DQLzDn`tvc-k#q#&(ib9pP+w& z?PoqtIy~Xs{*q?PU=zQP`u#Vbs-zk({aI?Gdpw)R;VA!$9Yt*wb6)+et3Ty=D&6bt z>m31omn9gY<S)Fst>*V@@BiZr8&{jTYFH{)th%>kYy6Y57ucUDD(j@Q&6!xTZI))y zyh*yHt2Tvxi98kl%x7uxf}2aC`0k{?kg~e8OGUai<zKo(_`|x6oDWJnDpxd|nD^rS zq4l5UEf6)7|MHCY3S;Y?RGD*=Mc>5CxN=|T-lbbB=9soi#q&f<E9yz7U)r$jWqoJY z!=0HE(yTn%(*8CHH6HlluzA9=BE_364IW$uB5JS1gthxQ(v~JoU8?7JTrfE))Jj>O ze>UfDzvKIyZ!8z=4xGij++IvZ_cd!lp|SJoW%}{+?c{@6R_0qo<VyYy=6braV8uU{ z(CeG$I@aI3Ej}gb_QNxZTPJERGw1HIihtSt>yMaQoaa5JkQLq5-V99rD_j@aaJAjE z(ONK5#Arv`#VH$dRv8qQD?Fe4K=l0HL!EBv@hQ1aKi#YAc+}%KOR>}IL}$>-sVfxb zb9~TPyoG-q+YMn$r<2dJr|PYiDV!Z18}oGc{u{-q@1<U}3tzjpPNQH+|FW8pMF;cl z8w4(ld6>C&g@62(UpqTiEb4#yb<rcH={H`_%h%rf_?Z2oMxOU`Q(bzKjg|yG3VoK> zB&(~Occ5<8`P$-dNk(odpOy4>D(v66LNlXJVa^&Zm!L>3i;CrKKZ-h{*H=B<z2x~T z-MhTEcK@&m^2;omE4yK$nBZ~|-PPGlKKEAbeqpuiDa(TEmqnfH#ACmheevG3ErDI? zR_9vJzsIAuPyHXu^DZ`i=I!H4Ux@9f;M&>VQ=;{$vE$L5AFh^1QWz_l56zNfW<RiM z=G}>=s!mt=i;k|;I_Li8mll(+*jMILU(QyreLJz}<A%MF1&ZBmyr!2m7ER66n__=$ z{<<I6Rwi6(S**3a#hO!TQv8Qj(F%!Q>b34#!7hOk|LQk5T{tz}pg3W_-WyM$Q;$PV zJ!+8h3|Tdc#eJ4vS%<so;`q7t*Oojpo7P<vof9v;!T*8}|L=y|pC8OB4u17M@_5F# z$$>IQHioMI?Vk2WX{KfH6xpM>!JeKj{f@%EFA@TBMYztj$<01}Xkl8<irZUNg_d6G zQoH^kIj}7)M2^E$s(16^zO(foGuA2A?q1jE(YR$v%dGYnHy5y;PhZBIy!}<@r6afc zA6RaU5}Y>g&5e|Vw`H~pYfDN6-ydA?E@|(v-;b95zr~k!w)pkV+nY1_9(>Sl+nBu7 z<)zD6=Yr+hcVFp6{CZ;f?&FyVgNqlp^;gO}zdaK7ZpNj%(|0d>8T;L{;2e|a>jigC zIBl3Yt71NDx@Ecc{Uznw^n>N^&HZcpduC=vp{MPgs})cGoPHGR%`#0;KKEhWw4V4x z-QCkeb=qc?Iw>}po!_lD!BHt~)2^-Z|E3%(Yi2NRzC4wE=a)C%l}|hWIw7V%|AE7a zI>yEPcjsvBRd7G6vo}WAgDF`{;amKLRB@@V-`-sOUEI88f(GMT17`gK{x*ibfY%OF zH`d>N$9L)1QR`0&|1T(N6`FI&LG^d5%0KbSBIdd8opg`C{PsHW!@<uB-&r;*S(Vne zhn(2ME19i(=;}7Flb`ux{zv^bs)|j^`u1yXXivoCfZq!^-@e^_y=?a?R>qaAOec!= z)=FmFIp>vP<!3oXWlN~>kDfKZk15PKv^u!{vFD8RJ@p07r{^`tKDfZn&X$)irg)a` z{m+n=mbAk+pP%SS@b_HaeDKwcBC!nT?Qf5Z>27K>%}EHzEaDHlDSl3Qhxp7-;ns5$ zLriN+A1h3F+?yS}I`GT4U%w?->Q_Z_2z-2erl)Y;4pCL*`Bu@bc5`BOMPG?<X<76j zvOq%BydvA3r7ez`b%tU4EXj}wjXsM#=l0p&Eq*Ve;9SRca&yns-cK98_;ND_D9g`3 zy7tJ4x8WVV6;~uqaP;2W`Dji%UoxB1`)9iu3jB8#9J+ehxp%APiJ2Qrt=6)$wlr=p z<>=5<DSsJtUwPUZi-=s?WXIBq`GEnFj2s5uvonQQth8n3Y!hW%``}o^YK4W|;*1BF zwyxKcm=>yg(yA|BbfcK2MS_=S^pw*!^_fD^d#<kUx838$6m*fNv#?0Xvh#9?(r+!v zP0#swKc(%@Grhca!}>sGc7^W~Ed<yj&L3V{$0n)#`?Fx*mdEAHf_2T7`pI?mf&X~- zEqO2Ep#ON+bykB#%6p#Ny|To{^JAz0+k_)eLMGl1+C0akX;$;W<I~=MxGQi>duzeb zg1c^eB%2nd%+*bFY^l{YWqT9+E0-x#KSjR&U#cfpw!!lAnd++yJL-9Y>h|YEEi5*B z&M80fzaOX1nxw6hm}eHrTqs=0@NJ*b?J7R5tFmDSTjrYH+3Bewb8nI$`_(iP$y~Ld z!>rG**^7I5S?-xH_J=*_>)KbBcF#(fUT=EsVU<zreaDZ*Ok#Fx)>~hm8NS1Lx2($k z{%L!*XqUWu(IND)<4)Rg$IQbHzUi-xcbUtuuGycl__A}n=@Isii&eB3|F1dt_}vjl zy}3S4)em<IzCJoXFspN4%wk#PC&H~Sd>t<wj#b?>&-v*V<yiYE`AUb|W^GuobRyT? zvmWZq$9W|(-tXGpu#x%5`u4x6zrU+7EED^q(GZ&PV6xi=|KddB%6kFV+NLIMUR1T# z=fg3ET^R?@S?v0;eg5I8HO-=1?thQJkQrUHvF(7@<-aN=(;g(>UND6ztVI6Fz02EM zwd57|9V}^ob<)a0`ul$2^p9O%|J>%g#Pk0{*{5l*dF6g<*5vi?z0J3FI&b{mswvT% z7VS!lh&@xc_TGGbwh0xj+w)%77&M$pE|HAUxVvh3@PqgB({t0diKKFI32o{xO=H_s zzGTZEH`caK%%|AyH|gb1o_f<Vz=tKIe)i0xi=z3G{#-d;wsN-V(yYlD6`NoFY@5yL zzM6Szokxtyg6-RxQ{3ItVpG(szvwgMr3Z9;wk}vE@oI;<{Nc>^4`XvT99F;aKj~b` zwpR7y^OHj7E*G%=%y;_d!5-<YtoeHN<vdkUt95>b$sRXZnXfqeSyD>Sd+*<=T32=) zQ;Xggt@Ufp(hD1t*6$a0|FehV>hCKFtN34Vr~Q5tALMvl{lp#_ChP9{xzCTLs&4<& z(Rd;J`$x|c`+nOzt7cI4d2GDJ@b&^nv72e9mT+6;e*eX^_1-UgpPv!>tAzG_mMgr& zKSSwpd9vsm<A+jKtwBBAT8*CVIYO@AWvZBVWnZ|m#x!qpor_M%%dJj3kIkQ6(p2!r zr|)HVNxpE>e}#`0m!wuQH9l|c&0gyE_^h0`*{h`J?t3i)2R?Fi@ZaiD{@oba<W?)M z`Qgou1+Blt*BQU*KTz>-qdmL3tf0VSo2duxESR78XtQWY9P8ahQ3euH$85id`f7wm zR$aB9xl!rhh4*|8?DEOJtUtsOE<TGrEhT;aw84re7P9&8ydqOg=WuWZ?)`10ouS(B zhGo(8FSDbUC>7a8#Lah%{q)!A5bL`jySp!st8ta`2E0%d+-~wo!f2U9^~Q(h|7?!y zXegeXtZj8{r=5ay&(tiv3Brmc(ZTOEJB`l%d^N3Wi3%^HNLOjn89Rm2H=@=TuI&>z zza?(3)O_B`D}}r6-g@ydNSEPcTmLoFz?HRE9?ff2o*bsOJm2-R(!`V>wL(@NCm$#2 z_UvwYlgxYYk@W4=nhLTDWNxMlJ!kx~{m6Hz)yH3UZrRcD{WH^5=Zvb?FD;k$E@R|e zGyCt$ZO@wbEsj=TFBDtaA?=bj=}P5Gv4x2Sp1;g04ji1a#^*2ZLIurYhFu?&kG6?U zd-rgDOn~wl28o&ay5SET<{Xa;nX!`9!=Lw$S&FT(>#qDYjdOU~IEC%&mT%nth;6^( z@wdCAzq4O?=E!#L;LpVm@_w)M+?6oh;H&L!(O(AZ%uL_ETI6w)C;o?E>8{xYN5fSv zEa}-HbL;A~V{Vq43l2)$`snGxz`Jw_w}8_IU8@vxWsA^ji)t!6wxm0KXcR9~&nx*@ znlJC(n0WbL=Id?GeOjC67G%qu)?7I2>y(1ICP9Hg{q}nfP4usl?apFuJCb_vncAn- zfl8m0l{=5imxbtPCu~@;Ud?A+<z=CqqilM|kIMJx8!*1vUoY}w#tH7K8IKKLOk6w1 z+tOIFr0(Y8@@>o3{MNoy8BiI~Ho3V(d?73M|6jX#uSX=@;GXlaW5TItPqJ0bo$Rap z<a0IoUi2@&`i)7TO`ZSdl?{8&t9KSYUXU@9)4hm6;hsj(&dCC?ANy^#m&whYy_F%` zMCD7H<d&GFCCeOy1+JgboBm#X`TsR_TW(F@pQ*2)`cbE)<{De1#_idh(oZsHd{O#k zoWZ4=x70*)PGF<;m9+da-lG?JAIWhzRQ>qNA-?NPzZ_fI-3fjgoag@UaAC-k>{@sx z)8p#g0$$r#h3Gx<*>6SGuGpc$-^8_L@51IFp(#@TANJV2T)NwMcISeVx_sfkX0rD< zTf{Fm^S!e9cl#w~LE{+TjdM<A8Co7;XJlex-u*#r(&d|LocIs@49=S4dvN2k<9`bS zf<>pTUb|3}LAdqc)TV3K9POq2-P84ol^;AladzI(cRLsk?6<zi_2bY@38VfipVaPT z7Sx!yF3;LkSoyo*Ny`1L*QdxkMZYvyWwd8CAD7^V1J!bZXV!ntKJD^{*{NXiJ3*`M z0Wv&#Vhlf3Hnc{q(b5Uns<`Nl>6c&s`8uvxN7(*v_|P7(t~&nHzc0@o%um=aAkf#p zf%)sglK6$p={4_o8=r+w*^%lzd6TG+U*x>Z>l2ihta*Cp%7l-Zx?0A6zwR-MeU+8A zo?rEr(`BRMw_0k2k8ZN-=VVxaW%h?dl59@%+Zf-tbZ)y^bljuma@mZ<=^Gm^YwXx& zCi-!2NMJkH=7>Yw&*Kg|)deJqd7t1`IzLY*`kZ*|dgl8)PD*$G?TGGdJi3wL`L2{D zISY$d-pp;dxbW#U-L4QbgNW2to)VdZF7r1|UoTdDs%<)p#>|9M&!e7t+(~?A^00VT zr*M0*ZR-B7b(K2>64LJ-EdARresf!Ju+GKr@)uq>KXMkAyzE{s|MT$if9jq>X?{_= z#hD9LJ*^|`6pJ$)jQ)J6-0(+&<=eDbzPA&~EPFGPS7t|PM;Mq-aGiW@#(~8#K}qj~ zvy)uPBKt*`mIm?)JgGdo_;#_;L)q|~st2#OUzgG-IdUh_WRG|Bsv{EjlV6MJc|T&b zyB_VwtQ#;VtH^IDU+@%_mFW-Nbk~2Fwq=S^#10Q8F=a{JU77Fp9n5Ll!Tia)Wn&+= z^Nu4XCI>s%qAZp&U2<rOa&F61$nswD-e!|k#oJfErGCtdUnlUtI^tIPhT6YA|1`Es zFZ5);H0QWiZ0hyv*$4YpJ^TM>@zM#u?3)Cc!!lLh2Y-3+%fXo4uD0d7UBbuC#;4n6 zt8Y+EU3IGayz)_<n@cLza_EFiY`kx^$8{!y_lu)b(y}^UJz%+;U_aF<lVzz;`6{p5 zkrTZ74sBuH_3T&nojJbSn>1G)^7wP}v7P^g7R7f9rWCfuR;BuGym0hO`ew&RFC65L zKKR;{bEZu7-)EQej{=?czRj4;b+>H$q(#;97aE*X>}wFUZk=B$`?@9auS?-uL5F`j zm$&Vn`Xr;kWBtn?>9!Xh7q73I&$eR2RR4xbBgSJpK0WUb<+=5CU5%^Qa(@RuE2IC1 z^V?U{Bxm)VKdva7aM9vgI!~I`Klbypo`2&%dW3n^8>507Rr#q6sjBkP`kss41be%B zZ{IIl@<4e-yn)?MO&|B2F=9Tymrn1RzW)2}j1%q=`wMD51fFo;yCrwQ)7%s8ulA<$ z-(SPRQ}l9O+wIoIifeZb!lPLH3XB+|+YYd?wzp-AePd2v7T+g$CgxAPO{UFj`R<7y zZI3TAl&Z6^Ir3j$&VKS=_OoYe_Abt3){*FHbJ$qC=ygkfuE(v&syWZjgs5kno<3!< zpNmeYfS0N10dG71hX>9pS=V3tyy@=z=~16=-|R8XH8BYI`s@D9+~U6`8zxl!y?-;; z{I5;Kii)qhjc0H9Abq^fBflnRnZthT<LW2ps-JY<TzrZ1ko3g4IY*77t3Ij4aot^Q z751Q3dyU^VhqJwH66_-LmOna~XTx$}W#|l%$QPA+{kO6&>~gz%h|AnjqO>Ga(5#Wg zq5odf$LM!*sbQz?i%ip#Ic6xDdUe(5UQylRp1@Z+->yt3ZZ^q`tSrsQ`Ofk>q_dmJ zDSJYa!PGyw<;90I48_|vzRQ~HCmkOm%DtNFkc+j+iE5GkE*Gw*+{k^VzV6k5@`s^k z1)TOh44OLU>BUvIF1IZD=rvE3ed)>XcMq%YwPBSwKk>=U$(muhrI(_n`#tDwXHn$K zo8YXe@K<=YP|#hs9{v6EbS1cii`h9JbcHawJY_nmWvzOuYt_!WeKi|@+nulczb;vA zQ9~(D<JvDP5A@ENqc-{LsTPOR9BU@cU2SwuTuOM7*wJqvo&R-O-u-U;`eDOeQ$}0G zQe#<}Go>@K-@LrFvs&${^{NlQdhYz<RbyUroPn#FMNoyIbdnfzLSL~|t?{0Y<vZmV z84g$k?Brh~*!kvNcE|RA|D)xdcp3jPykwXi&Cjz+GUW8*AKBM?X7Wr6+7u!cn!Mzg zhq1m>&G!|%cdhX@R(4i(_MKEe+1E^yp*uiw>RTL>WB#e_E1xRphPbD;t3N(`@`u2K zl$r%rTGlp_@+;0bxA9o}sBSuZC5dD4Bc{cVn!LED2HsShD!WXr>}XCy+hq$WzsGMt z$K)cg+HD5`7RNemzYdkdP0mNt5<g5(e5|z6%g--QWj8XoedCxCN0Y*d%$OdXj%J;X z&(DP)wOB~X`yFfNla!LQNjb3tr1jBe#R*-4V#||SjvidGV@G3PVd3Nd|Cc(Qvt+k? z{(ryHs?eh|9vif+n4%TB`HZ#8k=;JVS63ySDU@&y@tV3S@|mpCqu6CLvqBA@S@bAs zE%myp^O;ZZquynot*b<mc>*;<SEbD?@8~F>nYJo)sYJ2NF@dQ;OS7g`ws%xa&s-LD zOs3t?WogLDS*iCFmF}g^(oFI!Lg6<la5O2nrg=>I0|{YiElI6d&FM?^ycfP&pZaY7 z@{Sg-h<94vPxnWMhG(6;Fd<j=c>MOXo`sjD7DaM}2KJ^tOSN<jaR#YbYPjjRsdq}o zi3?W>_iPk)c3lu5I#cj&=*-ATD*nq|(jrzI+r&R<yU(N}0Ve}qzB<hcu@Zyye}3Ve z<#U-ut9BVf!D^$`M#k2C*2x0iCqqKd>abp%VQp-ccDyj1CrNYWs#P<WDo7QlyFH&% zd~T=n*1yshW2esCiyT`BHrV$wXU?1%8Hxd>qJ-5-NsQnO?Xl!b?(kX}WO{m!v&){- zCc$g9(1Unom}qj}VTnaSt3u8iy%!LCZ*-Q4O-(Dn!63n*Dd|v?3lk@ZD=}lij13Bn z0(>4F3L6!gTG+Uh0%R5_EL31R+QiAD!PT*WVPh{hmztP|!UBx~i-d@ToW)ITT;054 z3I<vxJ{B`pT(}UyCy_4kV?NKltDeS}St13VtDOAn-{uus8u{u*;T)Iq5+TkJUemln zO;ct?zT#S>xY}6RdFd{l)D>ki)1USnbOKANUOqE<iv7$PM`|W{{hQJ9Pi3oQh;^TK z`WeOMr70^zY&lb>1$U_LT<yJi@|CYY@86BxWR+fCUS8h0YSo#($LA!D1Q~^f8hbl# z*4nIPy!r7CW44V`d_u3D2@+U+>dcup7Vml-byR~xO*f0UB)>b;(brJSCu{Y54qB`; z_c*UOlDqE=i^n9k#Zn<0YzrmWig=7pl!`Dg2ua9@2?^;4@d+5XXmRmyaj-FPaImqk zaqw`kF)%S?c+6n%x{|T1h5Zs|T-mX=znx_K!=i2kG|l&UU-!LkKX*>-J#8npQ%Sp7 zH6{0VH*Wdz_P?67@YfCION_LCy6PR!PcmrU|6)?LfqurK3JKG>ynipZ<(4t#w(kt! zR%?r5uk<)I!}Q+0liMl;yd6t6%;`U=smC|T@LA8H^+$c?xUYS?HB6VQN5qi%e8nv# z1>t7_(&c=6xK<o(;Gg$piLmiOX&spbul!#fo|WD>ZEosId!4+cmA2JK+FyAIWCRL` z&v{zLBUiY*Wsd`wP8>6X@Kf_WXHJSP<NkSc{o+zZ$@^>XhzK5Zo`2<{j~e^=?UVL< zIG^$L`dvS9<yX#A%<J{;EpKj1{mWv?@Udn4Q<2vuwNVw3XA>4UayUGh%-oV~t-$@C zNteNC_PXG$=buk`_jIH8i}qE^*|zzfc+X|55*+FD*l)gUO9)qk@KVP)TFdShRGv$5 z&|9+g$otJZXTDT9_xnezw~&$}3$J2``1Mv!Nt0V^`Fhwh-AvrWmM;6sc|mOLqxI+Z zAIn;(S1`S-C*$)cAEpJ-(V?q1KDC-0_GzBl+`_`i0fpzad7aXhGu!_$dKNOLgCpZJ zr{-6M^`0CblUTRD+pJeBbLj81iC<=OteUoWg}i9gBCcq^UFoJ@x6Btlrq48^X*$=@ z^DT>(%Dsraai#4?$KJmjS<Jf*^=@goEW6}v+!?mhHW{k=F&_j&|8KR`W8QT>rf>D^ zt8OM|ww%|qD-QdZqrS#W^mwO&VY^fw`_9ll{S{^>>x4tp*6h*AoFzU(BZu4nsNJd? zp1anIhWKuYnbW=Tn1tDxR8NkiTRj&RdPEBJdfsFI$j#E?z39ThLqAupI%ngfsQg^& zLzvy2JFIWz+M<P-Z>+AY-hNIeE~k~3;eBHJ!L={u7wrEN<|2Gr`n0gI<AiiQ{fiEp z8}0ffVuf2SFHBgg<~;k#Ch@SaHhs3`+e@|?D>U5u5gEIKXIoXuB5AGZI~|-?7Svkk zWE^PW^;+Sg5uvcO`@4Jhr_KMGjZ7xrznt{{T6Ob6OSj^kKG}9bk4tZR+~3uZ@L<Nj zw;j)01A`ei-^mqNB$;I;v9)y;ztFzd(lb<L7I<1ZwsNgYs(PujE%BR<+n(SVnvdkC zau#r_MCmbDyT;AXxyHSTMQmc?M3G-yg7?L=rn)B_Gz<BycF@VM_Gl5mn5wVXPye&5 z|Boz=x$vg@q5sA5w6N-4Da}1xVUGGYw|;7#!S`}voQl`2C-ONm8XMoNN%(ueGK_J1 zXU2uS<=ZT#%zNm4w8n0cvNNm9uN{S5I>L5o2UjLI{|i38q<m4<3wMdx|4n6%RnIbG zt?#=!a~_jP?<=3e)QF{;A_;z9C-C*zMv8C-xhP0`T>LaCraY2sTT>RpU3(43H_M8? z7IR%XE_waJh0cm+pC0bK%yqQ(IJ4?3nZP|I>!&TsO%8aLz_D+!Z-42rDGkp8ojzn7 zPkE=mN$;6sL*3NoKLSCTNmiG9pE%x<54$}r{XziKn?*4NtfdD+>Tk|-XO@Vv?9EUy z4qdRn-{oLvVQH<$9;N!DQ{G)xn7B0bpJG&4ZA1p=--{+w<T$R~DraHojJI|8xP6NM zPY*Tm@2gjT-OsT(oN4WbHiiHJGX`OK_GY1@$J$p0L^n;V=w%QPQD+F3=XU12`n-8+ zKybsQ4bvC|B*dAzogW`6S~B<G<MoOL7e8ry__<p>U_+7g0S0LXjhQ!C6&CQbh`0r? zi90S~Dle2}|6p5r&_+}?;>yKU<-A*`vGPn!*y6jzC5fSE$(6$|l^2}n*1PuNi1TBY z8ZrNla|yFFR2kR0E8M;=!u>AW)7eBm_fEp4;Md&>Vv?^nsA*45yj&z+!LPvcvG}UU zYcY-)%?cBQ?wWJ_U{>tun;Xt?gTa}jwf3gs1CEY@U$*f|54gG#UX|WaQef%1;8h;4 zynw&YK<nEr<pj<N3rycBGO+fs9{94ygT-;f)L#`Fw7!T0h`tTvU^&A1;8C;V2G{SE z8??+G9L#98%nCRgY<ZA{@BP$oQ%;H4MO@Q0xtnmEsa46@i*>7$czS7KY0AunU#AM} zShQKgqSA|9Wup`K0w;E#n@?3Woptk7m?l}3A734IZ|xzYCM7=h*C#oAh4L>lY&s<@ zzV_P3C{6w+$&;r?O#OYk`=Z$^`M39)Ox=H_l-#-UA@xGi6OC)fwi`Uy5|_+>={-{{ zZ;`Il7oO<Ts|63NXPZ*L;n8+UUf!7u@jLF;=Usl$>*sd;!|h8`cxK7TX{9tB)r$ML z$Z5)2YuAGlnBp!AzjT_EY$AJ5nrrscZt3*9j!O>CTQJ*ZeM0d$-F2cTIAiYJR(^kC zLd8!dt)N4j{|0OF1RXS&y1ZcWY31(Z9rYJDxo4ZL+bZ=S%1YteRmGyX?AIGkrMG)# ze%;#ad|x(Yk<WKNCwrTm2$}PnHMPY*?c;7ceeT&oM}K||*KfBEZ#mCC*)hHTSxmHD z@V5){ogaQR3s(R1UuO76vE$Z0X@i`ar=89FN`4&>-?vQUM!uzc^@#%;7D`m!ua_!Y z|A%L%v%S)x*YaxXE?Un#cA?p!YQq6h^TP#vTF<gQj)=`E{C7QJ=k&FWrXgV~MLV9b z)Vgo{CN8<@%ika2Kc@B`sdM$5b)I?JA^*IojI6;)#gcXAm)6ETje2`xk7=^T%AYn4 znm>9)W%<>r7hcy`^H(`t?C<>NEb;Ekr5;Ghn%tf+opXa}<&<;s`PQ2q1#jB3t$*^~ zK=-?7$b~=Be^}RVnmA*6z@%r@4}=)(0u_soR`*67So~J#^V2nk){{>BQTWOI*G=)| ze8be2`}e4S(30-l+cwQ)AL}}X2gbYx<$uDbI2A7C@+#M<y}4L*<N6TK<IxSOAEw2o z+H`zrS|7CO*Lj|mpX~o}vb@wNn5kOZb^Lv1<(ztvbJIK*2-i&QySm3IeeQYYDGz*e zF8(yQ%=*{s=qvr?Nn9WL|4n^*W_QB-S=<Mv@h^(m>A*4Ze`WlK@Dj0VUe(Mx{+LGd zoi4|kJ@o!qtFGMpqiFZ?%a-wtVzLjXJb(I&ZP}rYzb$_2|Gu&mV^56Jn(O(prXkyB z=3?2k3f(&%Y&bG8W`;{#K}Mp7p3g~ro+(9Q;z3Kq*|O~#!iBG_2)CDX_#3yd`-OLa zbA{29%*KZ*+?pSrZkJI=Y!PE&@@3diq{!XiAjaT%?&&K|@ek)`m@#i|D6&22E%$i2 zoC#kH=Tat(NsMXiUd@bi7D!3`3wgIMI7jToEB~y7zY1m*RYhVBjE0;Jtb!s=j*9(G z((0U(A{*3IgIf6C%UicUN_5@ttRx^At7*8lq<>Ay)x&D>k3CDDY`eZ<{VU)4?m5h- zxYm2LtugdZXpQ@qX1;4ee}9;Kf55wWrjvSg>=g8`w_j_EzSY`%&}^cQYH{EB&eId5 zJ=+`A?rE-@a=x{c^%G0GyX@heEAI#<{MZ%x%E`vEUv!D!{0)VVcm7K{>KC8%-s4uc zvEV<orQ3R>m=C$wPPlmN^65>T&qGU|ZmWv7%lY?dW9jXP^Pan(E`R#sdXaQn?1e}7 z3OpWF)=Nn42tVn>lkl*jGq~b!W>`jLf<eZ@wf7hNd)R9eHu-bdmv!&DmT0AB?(nQ- zJ@(&^+4GjYnD3|lj9uB%qR%c>WVlaPxbjx;N_xZ1yk33tH}>;)y%Xv`WW6!L>+9)f zMe|-3wN2C7^X}7`j2N~{st<2UN9FygefRaer`=|0g|#^@P9GZhFZ?-U@Hc%QU(xCb zZFT8~UYnkc*w84Qp7AHJyo~wd&Hgnanr!uxOAAFT1yb*wVEAzD*B#yF;_~IU3fAR@ z>PUXQ6k?t=L1md&4a<Jsn-LmY*XW-zXLU?VRN3MYC(9vm>Q?FA8EVW{FJEn5WdH7I zUd(QVmaI;Nr$Ohds!ytT7t3)h_1u?mY2U>!(`KZ#^4Ia%xb69J?Q1me(RSxqYDeS_ zT1|K%(ikIg>vP?M#mf>@-4?GYNw|Lhp4=sw6{hBs0`5(6+8y<$z%#AsVEbZ?%XX#@ z)U)_@*dA?j&Qdub*ScxK8xh9JieH=e@$soIm|SO|wo`YF)ScVP3%{*P^{PMp*ZuhI zny2$G6iC{yUFEwm^Sq^+A+zF9hwIGiP3HYv7iOX;6aT)n@YIE0N=AL%ht7QA7k^jr z_KU(E)u5U0FTUv#I#a6p>|`GIGgsb*uRgzovi{flY~5S7c;Z!yLK(Sr49wY=qjsxW z?EdiXYRAG=?>G;iZQ{KzWOY?sXor&l&!a;An+?$yJ=A!<-V`|>+@WO1S)1|n_xoO7 zJ>fY~g^x5!{HL~Xe@R<$@l=-4#Rt22Z=7IymU+irNX9_D>TaXTLtV!E;Xi(DNM3)g z!Fxy3k(w!H)ej71{vG_u#c*)ye0Szc!g>c)qwGUh7}oMUaCfnuBP6(p&12u+!cR;Y z#m_u7zE5j#nSNoiT&k)c_nwn2|2x%{cJoY`*WJkY{l;l#-%<;%2X0L=MZ$$g=e})y zUU}YOUR1iVaruQ$$Ah28OF!J2(<%BxATQ`r;!CAjlI>O5wk&ymr}+!TelNR!;whUz z-h0J_fLn1cdCXHc%P%q0i|SlFjpyLg7Q1r>J7-PNP4y96Ctjmt_Tl2TD~r!hF6O`d zZ?{yW>JvZS>eU4S=Bl&#mZZGrolwDTGKcBzqo>Q+lS-NExTA0GZoKh6;PJEE#p+)L zuL#KKc#7$3q@O(EJmo;B#vGqMw(D*am2(mqBX*Q0ybQmQP~ud%q4SNvpA`xP&7E$i zRTWmH@D*ELbzMCD#nT3Z1K!KK&5pOt;rtZKFkRcv?A)7Y4tgt0eJ;i({LiqwZgxRt zn=V6mgw=ui*DE=aGr6koUaGy=wOo|bc;Vmk*>}!cu&zH`u4K4mN0kH5{NPv1tRk)0 zBnunrP43!Gcee67xw+m!MQxF*Yqe`}3{S@%0adn=uO%~fzL0C##d7h*JPzBsxzpR< zWyIh8U~tR)%bQPMII_B*FqNzQ74bc?s?gQLo_W=p^^pr+JiphtsO0SC6&AM`xTl=z z-EnGy#&(;29wz4HFHVWgT4k{-@sWnEV`)<?%i$Z#*pC}cJ8OAAZ2_mp8a}zs-E6Mu z%By@Tc)P!_yBgd+ETvU>^07|!i?~pc#7PPBnKy1%PO&%L+&-Oswv54YcGt&x@-~YL zB)ASm3iK*H{yI<8Lx4-F?(%)M?}d3Uuk5>P7y0y<8rxB&0QIHcZT_nZFf=Mxu=F#( zEMdCj6!_Nge!VDHw@ZVEi%NycypxX^Cn$V9&3oN%-y09rw<lkpUsoG>@Yd$l{>y5P zX->bFby;!Er0u^-ZUoPI{6N;sj(z&m1&2HNALw;x3TUV}C&rtd3y%81x3hlV%#Do3 zY(M9x2)1nAkgLYtv$Ru3bm7SzT@@nA54OZ72-n@uKA;soy=k%F=Eajro@ZPY3ahyK z!RL*#{0!g9Mkn51xo5Ta^8T46^X=@X+&NDcaFmuf7+x?9+vj8AWq(Gh&-v{?yRQa% z1~wfJWj@~8plDI{*^#Tt?*;b@GnP9W*H?EpX=?cFYh<VhI^^zh$KzOIvyJMh<Huuu zXtMEjNZ4)KqAum3)$v4dKC_Q&31@wPd(YJ;ml!0uZW&BA*pVCd%$M`J^VznhDaOxa z<|r7q9$y&kz|GAwD=9rWIU~iQSzh97a^9O|Pd^Ac<<3#w#K?S)W6heEZxa`(|61x& zp!R+9k}XnA75&Y<;`Z?-RkNKg><BHp@4(T$@9wfZZG-POmhG=Ci`r-Q-^E#I;Vv#& zhF?#%y<N!NFI+QwS}Ol6b1tqq)7Rd$wF$Q_KY8mysmqLt%r6h8K5t+8UGLY?_p?^N zI=V8+vZ#3yTjy)5+VtBm&TlN0KYmJK-D!UAy}NC<tf>e)ExYcEw@Mh>Nj=*eFYaw+ zx*fg9oBu{nU4q;E^qh!Isl4;fB|qQqaO-fiv;JR}kN5VZf9cN`D9x(Wkog^?{?1M9 z*K$#f(-~ELZqvK(PWo~zTej@&r<A=abE_{uTg<nMm+?dI(#ytI3_?pRRNVPoO5U;a ztEyg|G2!2qtY4b~=f|$(SnU4CGg5wD@P_5@9^IH@EqgcfxTgBT!$pr)Uf5SP^=*B0 z(XYF=awX;`r%RW;xq3ZkPsX_!zqfC&oxscf>VlIzM?>z3lbL(v8U>ttHPsq}4SQ#Z ze@*=!_x(AW$uj19r!x|}lz)V?Xh?*|c6fifFYgm_<jaZUacfp2{rjI<F5B|3d2x)# zo!Mqzn)#9hr36<z7K}|(n$x;-Mx);4z)5p&bxt;45ES%e>GIr~{E&&;`J*lFZAs$L z`IHql^|I!==Q|i37FNFr(@^x&<$7Mj@6{JG>5|dYc(E0i*3MPkWqN$iuXh(^8JAi{ z*%yT_(!YPDE9sTVDFuFq%-1ik?<x+stg2zL_GObqW5>dh+ZJZa5(RuKR=O+h7Uetk z@Sa4mL6XJXeaBRf37>TODxF=k>}kh8?>AlR(>PBF@r!HdbnAvKv-ubza&p~@DO~32 zhkq^aUiWp1Po>}cTebCl`2x~y;?E!KEKuA2bI$KQSGRYqF4WD|)k=T3Zh`u`zKPC% z9-gpLzWP~mN!`wvdoPk=d&+Mf5|~k&wpE-d@WP*Gui{EBy<9Hstm)3J7ynGsl=bi& z4b|hxS%ypIO%^D9E&Ak%UnPhA*6?Q>w{=r2|F-VBRa%uXeaG61$&CzGV+3EVJiTR0 zHLr%q1ow>h>Zc;Cm(A}tS++S&IJz!sx9!&M?y|i3f}J8yTecS0<OKW<_PWyIdOzk? z?dsIU|L(IrJ-11oDZPK{yQvxJR{{h}&a$^nxKa1_+>G)~G3T3Z^H`NcHnwquL~@BZ z_HnN(@^~8YPkn9ci6q{{(+9b3e&iQ!kU9A#s;lLrt=H2Ccg`-i1^rg>n<|;6Tlbyp z`q+7X=Zcg>DZY>V>C06e*PZzF+9&+P>)j5@Lg!EXb+>DKEBu%FM|=Ud(uX!iF=N}J z&zr*?l_Q<Xi-n{gBr~e4neAG`rFimmn@Yj$Rp*yCsc6-QH}0{Bxj92ySag!ZKL#<s z*#_5awwUcz-QIYSu`pk35lfV95x45pqN^vITMQFQ=A<&!>PNHxT+p?ax6)idd?~xs zno<U-gd_YK0=*XO>F2M{6&7b%@A`FdfPUktX6=1?w+>5~tE#GICTKAWFfcIiF^Mw% zV|dCS=+bhSVQFI6kxUmBh3-WjOp^}Xs<P=)(&Ug6jGpzC=aB<flY2<R-ljzj5y|(X zve$0C1|qi2s(3lYe7#y+mySf6=u(kDkr`@<F1&2IX@ybIT~3XP43P>v%-w6^{f|sr z`hh2F#)-y?!wMHapU+F=W#X>ZxoD}vbFE|AwTL&O^_eqXc=9p`F<w?`kvL(v=0#!z zKl^8oUpnU3EG|x#@>B8BTsmE6jq4@rGxmay!;4LNmYAw-GU2Yeu}O!m(8OnVdO)(w zo5lSyM<fy!w3_yAcHv2?Yy8N~xk-xs@}hKKA=4LgpHJL!CE|^IfH&{5yGz*^`o8xb z+vR<op+P({x`(6K<hAl7wnsXAPyTFPaJ56CO%yg1{B!b2e>MA=fBvU@f(b$C{W1np zQWCtpFEigrF8BN_B*|~;Q!%r%0}N(<;0x6Xf1jInFRs+rXGPG?s(j<m-&SSoWtfWb znTS=hZQ@DsI`NZTI4(^I43gCL9B$E?y864BasK*U%XS@UDQ}lZa5{K+WyrdFx6ka^ z`)U@Ku&`6j;*Da{loUT2OiVCzJa{;@fs>VAK=76}S2dqQSJJ^omop5^y4j9%*t6#U zn!u0}IH@7p!NR1YAi_l@VZ(!i2b~r*HaBpx@eA?`_c<MQ;W>3!qGLh&+C-6~whb2) znmP(Pf>a(VI<0&6YVF<Idy&wdGbrHn?!C8>(5+SLULm2EGqr+KSNTj`X%xEbRLD%N zz?Dy~pV+x-c2DiPkf3>c)=O3vhnkvC{P;_$+_Uo2zO*N2L$BUBa@h6p(oadENqUn+ zTZJ4sJ6T^aC|7-R;Z2fwJB9s8hJ;E|#Kd43-pd(cR}?yhT~*FDecnGSU*_1seU_{@ zk|R%RPWbE}wBVbN+m&n1fhJ<f8eLmNT%)>}f&*393<XjprY$-UA_9ue|C3Mt|NozT zXJ^m#<&)x-pRdX@`nJ=nu6NGrT_<lm*ZOH%wC<H!^8D3sM`J2FHTk=#a{jti&(w_K z;#a{H+Em6He|okmD^Kb1SJkH{f6tm|9v)g8Jo#Cwo>5_AMYr`+p;hqs4AOl!NxX08 zjmZ-}Jn8L#0JwWJ{qJ4x*|T%itl1|j=IYILS{k%6L~E)SoT}WldN&NQw>hq0PV;jy zR?_s~;%ZIgHI`Q3Xlj(;w0eHV@fDkJgF_ReqlAbGJG0Xg0S*?XMh67}9tg!E!NJ1B z)Hs8)OYraM$aWRa7MDLc=e{pdR=sbg|Fo?C_|5ixylHKBm}gE*ut+-)(bn^My1w%L zN9Rv$uaSJIAMdvB=zPUbLQ8nB-g_%|T$R7+^?V*iX^X=*kEEZuZy|Zf+%9?3+4D2@ z6&fweuQ`@7d;Z7br7J97eR^xR&WpeO_U;}bb%Vn{kDZ*c@1x}8+`405dM6v!J~mdn z{io-pwEE%`o>z{omfoRz&r4on`+Fl7od-SD-qR=k`;_`5`j6z#Y5K~4pPoLk{fF@< z-FUatQ&+5Ad8J_c4^4ZQb^lX1Vj94Xy^Z47iTOW`F2(QTnLk~jH=wj|dtpr7hM4#1 zCw4SSo>R*|w&(2W33Z>1p5^}OshmCC@b9zKGq-<8+UvL83e<h_t}yh|hMj+VugLZu zndAPit~Vpy-AGUQ-t37R-cP*q*>9fsl>YhE&wCeJO_O)n{@<9($3ap^M@zC*{FCJL zX&-vNoSxIu>z#Nk**f{y=eZ7Ug}zrOJpZih6EoRv%DU--&({my+wQidzW>8M(?x%+ zFa7@3@on|Qd-1Dc&M#kmYx*3a_)YF}{yj{V&fHp;wY^VIP3dA=Gw0+JC)aa`>nkmb zaozPp(D13&rAN+Hhi)&Af5G4D)Oo={JbL=)R~N3$&0nzl;kDK!@k$@pa^DS3I`#Wt z>2r>&pIX-ii)pRvu8bA9T5FiGcYVZBv5))Ctoo}o!D@a?ul|FrN8<iJk}#Fu*cJWc zE>pnoBOX7sgjbxg3RMtnm{gMKsw~RAO0cP@=lFI0lJ#?JZk%Y93E!9M6L6QUsnaQj z-F4rqef_J7d!BoLQWwril*>yv^1bs_14oL0(BgiRPi_jaT#W}9uQ@lV3#z-aOt9bA zTBF#i^r?8Vl5O9&fE=G?c^nf{lbvq1iA0(&o097@ahKuJ*2A^h?Q?idHCg_ss4f%{ z=aavh;K%p9(RaSzS1G$Q=ac51YY+XbV0AY$|J|fNCzaxSt{u#5@tL8l*C7xlckW1f zY)?gp&E-Gc@13`p*6})5N{D=U@m-WP%FkMy%WP#Wf0x4Qxh$;OYyYylI>i0vW>w$# zm)q55^ItAj?X9(}atbpS9It)$`NY`@n@h&~+>6e<pE&Ph#gg=z{wFj3+y3)==Mwnx zq#2iq#mU8wSC=F+DSlCzt8sR_hKKp72jZtbntB!UbIlN0`lq?+Pyc>q%lEV9EcUWp zxco)qTrS@1)+I02{bynS@I=3MQn6j-?$Sp$Z94-kKi2sl+UJ*aUcG+5-<HkllGBCX zpY^=)-SgecCvU$Wv91<cT=eL#E$42llY9N|)y>UF_b-a^+p=AK<NC>WE}y*pUikeP z&z{#us;h;{N+<mWn|pWOksWg~^8Fuy&D|fbesAVviR%z^Rle7JDtmooH^kg|Ewyux z%=7;THrGf`{od@!8{R|A?JWPM;`a2&@9Iy9$LmU!icZwce-ORtzm?#uP3Pw&<lWpk zhokpqzQ4h>H}UF9&)+N;uBrZZU;R+?H&&|#9|tQHy-TvJx^HB|ryIzgoc^<qciOSO z=hlsV&#e=W@Ap~!;YD`n-IiIl^N-B2efYRK>Gbm@y|;zq?bLJc%&Yi0=S!iY?eDj< zFBtngv@5OYKHZV)wsL=E<z}hYzV4PQlHB%5lc(=ji;3~|`8mU+F#FM|<4ZcZO&{L& z4eETDVEgx3bi0D{$psUZZ`L@|ypFjfYlXUjM^W*+fVk3~h35t3JPf9Z{AP|hx2?TD z-#ujlpRN3%+FP4WZtv-5n13xf@A;qamMTvTx(-UWRH}V?<^5Z)eSS*cYyI_wM_m|o z56&syq`t~@8uvPX|Ad7OU9M>kN2W8lFSu^e_SZg3AS<A0^ORyefs6Tkf;R0z-`0NT zoAdjy<?iw#i>rSs3>5A<$vEv}v5tP!!nS#NWBXqn9~HGTxAXr>3Y6WJaCzPQJfN1P zjDJ>U+L{QXr4`F|d^)XoM>J-y_Liow4A%7pqU$ecr74CTaauE@HPVoKqmo$CQJoam ze>0>@&KvK&b~Em`&w9(%*XP~MzGuL<fAz-S$;#SGx8yqJY4Hc<u{P^ZdwxQ8)}fus z6C97-5_<o>B6Nivzq_O5nugK{L+;H<Vo9z#N4g?!bVaWa-5#KwwJ_|?p|v|&qXN0N zJ`!E`NHprG_Li<NUX?ZPs#*0doLM{D-H#S|YL#6~e0NS<HlptO>84k8jSeb{er`I# zI!8#Q;9HO$hj8k_6?@mr)^pjzx41j?(}9_qW^*R9oanAs`{X@Go-sO8d23<aql>Z` zyN@n*)fQ4Z^=s2njpynH&p%dgo=`V4_L$MjI|>rTi_aS@=P%p*SYnc+%YyuyKAR`z z3LebdcCm|@@8$fPFZ<M!m-Ln0zO-s_-)*T`M@n}u?VG>dJY&=MwWhMq51d`)8M~wE z#fi@9{chKfCVbOrX)jlu5Ek+?{PdP*zTaP6J9S~F?)S2$d&SAOUV9qqyt@Cv@yw(z z%O9!yFg*Puyzu;V&We*#aSvyC7bUz(v3sk)eXQ`K)o%IZi0oI740ZPW2wa)eWqUzf zCdOc0T;MzomrJ20&y-9){JC)XtyF?H@5vRjRvDUA6)Y{=*?!;t-4b>6r>8d8HSSwt zx`6ep@FVrhW#(o^AwsrJeB0AG{}{1Z&r+6b=l6P>HcRFTx8R?<Z9x%VGjBgE{BwWi z;|B9&mHlN;FP-W?7b7Kec<ydhd-+{v1#70SGp&1e<>)EHySu7B9Nw6{-{bnxhHpGA zns2-=EOS2I_GC71%=yUs1y5}ZEz(lIZ)kmH6mEH5(`1>IR><K+lb4(**H%(Vbi5fP zX=S=}U(OBhYhScp>%Clf@kL#=_l{J<*~fBJWf!>247pdE$u98Xw0utB^W>)-7u+wI z?5LRJkiK)i`<ug!8r+ErJ<XLrk}Ci7PxE|avC!j*-zL|@!;|B_{7@AV6YvzP`LlP? z&pZyf7}Fb~BD3oDG1Q#8l~}b&m^sfpMv!k}`@eY>&nNH}=uS?4zo_^9z8`sMH=h5I zKEBvZajV`kMXrrXzi#+EE113flvCNdd6g9xRuyGcTHIg@=w5v85RX~P>0(*4EAIU@ z?)jSzte7SJ`WIt&-7jq)hXbX5mtSqo&^Vyd|4U1OiRIQ5wN%%rTH`C1IV{#L|HvTp z&hp_!UY%~400EC$4&6P?JL7f;9pzqgc*g!{#g&H^YO-CibNVAL@qq83*?VrLWF|Mx zzK728^GtRt>^kKr!R+Wdjq8~Q3+o#dtz(z|{_1)(LrGrZ*Z*yk#HNZqTo<*&W9sD{ z&fSNPPYb(XS;aa@&iA#+p^se4zg;SSFty|8+nG^DYSQv|?)$Z5uiN*UP2t@F+l3qW zek`7$y5rXZzIFFEGe(NvK2W*BQ1)t?;@-Dv6(@hM&);pcLHzN$;xuDVk@juf%Z(Q) zvdvtw+eK=(^EpR-uPau2*jl_^+)_B|v6)Ff@vTP09s@Ur7jri(7Yu7_v=I&Px^d{| z)5Udvt3*C;Ti>~B^Y=xTivpI&<$q4!{dH3ITT7?kx9Tfv7#2%S^qwOvFhya-UXMdO zQBl*|&Umbm(R^mpFL6F$%J!SPXC_y8?msal&M;nN<`wSyp0TEE;b)6<>RDne7_0(p zSVT97ifm@Hi0t1`#=CrWhk)kNBEFlfB@CJjx(v`x7cy0!&|~P9)?*l&+OyD+vsFOS zw54;maUxUFqMjFrBqKv(EtFRqcwCto%c;~Tbb`Zq!VW8AVUA5o3af+#m=d@+0-O|~ ztF2rc13Io46sqTlC~{2+;FuWbJY&ahMxqbEU`BQo3cL8<|MNfp+dqd0g4Y+}Rt!-D zCmCD!t}x!DFS}UI)4)i{Nx6_uctS%%g98I26C=|i1pyAG`3e&p1RMk$6a+Z<m|Qm~ zaC~E)zj<xw;dAdSL$~V0o;B1ztE9G|dh)}2PYUvd?#$+R?|Z1q_~Bm9h<uej=A7?m zw)|F0+&6i{dzClQLf_`H{PsGuZ*szY&l}}RZ?rjor?u27C*Gg2Az$T<wD7mHEwyQf z_D$UIK4peE=d-yypVb;GCnw%ZF~~PMGn?a?@1aWJ#66xC`6@l;oX>k(KC3;nnQU-R z<xI8Ev#BkW{)hHVO1S4aqg?2WHRorqmP+HqdmRS(YG<T{o}F!}Og^+{ronlS8RnAD z=CXWNJG^Id0@P%lXTD99!VmX&O5`ieG3R^?HhIs)f_o}G=|a!uwp4l_+B4Z8A7-*& zQ>AL+y&i*nl{2#ipY=jb&i9#NF7#|B&u6uRdnPB|Q<+h2bY?csJKwhI$p`j&R^%(K zG3R{m+wxWI;ogZK?y2lC7rHjPrP}Y%-bn@TJ$Hl)y|d-~?$=bU{xHt-L!R0mX~BDE zTgsIW?VkA|&!@s%_#SWPq{8^8UtNzFUDerZD8o?FEV$Q|BVVxP-A+k)hAL*keXcBb zm7IRxk<7P?|7rQP=Iiq-&$aEB&s+ab`fJVC`&T|+tzSHE{h!%Y`*wji<-zB}zt67P z_p9L5&nxK*s#QXh=C9hgKI2BX)wii$zrBv{3(Aatc_X~&jkfG>ude!~ALB3HSa0%A zTk7}JWA$E-_h0(qpZO+S>Yr|Jz31iqOF!yo{@QNxPgnB)v}5~K9>-t(5uR~pwbXa6 z-s;fD^HvqE&$<(A@@^{Mcdw&+FTIRgxg*@_uD0xVufFP~kK#^NtT(x)E%kotu`1Wc zdoNY^XYL7?dac=8?R|LflEVDVUDHk8>H2=3c5JWe<G4#Z!c*^POMUn1t#*AJw-Ri! z={wQhYOmvagC54c+!3w?HhFpV(#LV0h3if3X-mGIdaT+tdGDo)^%;A@rQU1ye)W1h zZ)u@^=8o+q?^MAiFMWCM(vImVAUAjQREIu}TL>~)+w@&%Z*AAHeU~=+ue=d%^+sFt zx7YI8rOELxx2z9&qb>P;>aiNt$NMhLSf6nxT<W`M?{BYUyQLfRGtW#md8W(zdD5{x zOEd3Xnz7yFthdzXRc8*KIsU2YqFa@euZ@#c^UHtc=dS<SdusBgy>V9+{urEO+<ot- zME|^XQrSP={j}g;|8L2j@Kv+g<Q?h`+_RQ>tnIq!RsOVdoiq1Xcl-PfxHhxr!_Jx7 zMt7oTthr~sTPZB<=i%qtp|U%_7XPqWJ$bWz{XyB^pVrMONexWd&C)c%wDVK_5q>oe zmdj3@M;1-X3_P)I1zVIy{<95PYi;~DPPDhWZhACnzjgong};Ok)J(ck!5}bq+LL=T zcnrLjoDjJwwKlz7kD;>JeQIi!W)zc}tLE~a2EFdpCY%qR+_%~L<bCLzDeu2V&DGyC zjfZJM-RYN|%fqXK_Fc~|J<>L@_IJYG?aQ-z);v#r>B6J_`Pj?e<=?}1du_J)YsPgk znZNA)`-9!?+f5P`EKH{`EOE@UJazs+_Lk>9-BthF(&Ux861nt$K6_KrroP6ZcDBg1 zuI?40*D`i|XExZcx0m0k;-MeM?mag?2QlB-{gd_Kr)T;s=K22|cI^DgdhqXAeGYN+ z)%FVaqGBWjcW!VLX9#s;|KWQ`{({aAtG^enHHj%bV-wJto_nlNuROTvD1*xx#|M9m z1zL;*T8ubEQUy|6x8<$9^-rYY&l~$PDej$Y#`=EjcGq9bdfc1BF#X8PW$*ax&hD-f zI`Cqm-m>)UDYw*T@GancG~ZU`%z>Lv%!KB7|FM~J{pPey27w+kRJQurKJ-}Bw)&dB z3diKDVTy{9(YBUC=`UW{IW-x?^C}8W61*m$RM@hyO-Y3#_?p4;Mz^L3CU>4cS#nWv z6RVWT#MmnfoHwaTl}ymR<RO1kiC5~xFR_d_TLb)D<U_g{+Ew(tdPD?b=XWShIPy%z zqEO|gvWlRSijb2EM`MVlfGML$D??SG2anhS^`mSIvUeYZpAg-!VCvpruLIZrd$I5_ z_A`_+9D4KaoKMFp!wwG3R09oF7N?G5D}-n)80y8*BG4PC+H&*m+?fKQ$pV5wrxF6t z1t%U{FhzhvQEIUl$L8JE#!OJa=)&^<zc>q52rFyjDZid3hfo17u5*^pSynl)<Or}a zv+*b>Nl7SZEfi2%%rH@ukt4uV!AByw$M6`Km;+}?6!$^Jz!DP4J&GLgIujQ|SRgc1 zFp?w9C6t9lQNZzPLPFRnSw*KF!#07IJ2OLD1(*~=AZ-Dcr7aE|7bQZSX576ylQYni zjn|8_QDBkbsuqLYyN!hxW$~=iA`s$?rfh<eGv+#ma)c^|v<8SeAs7-Z4lXV(E=zgX z(5&I$a57M4V&X=zN<ftHATA%Fi}ND{&Rc@koMR_i95^8U3>BOz#H8qw9KxAcR-Ufr za#g|vJsGW7H3c;;6;~ZoP+Brzf?D0dD@4}VGZxD-F>ojykYsRXs1s3O=8aI1Fi{cV z5l~23qQk+%z`+0lEFeMwL>N4H&|q%g;K=Y)?QF@ZFIV<{DL&NqNQSXwbAo1#dxLjP z?(?_q;*)ig^<%|uI#1uUp4Us8_s7*gOn-Af%J*MAu|37oL_GQT)W)|T820A=e$cqQ zwbE<0`n%R$i~k-w95}mYnmF6%s<Ld$I~?*$*600y7&6Oe*0kd@tIV`5@3hG*>(6`t zF=VFAEb-%#M&I-mpG<#H@hbZ7z5C0&U2fNwe+azvHd5!`)(P8>B-w-?|2CER_5+t) zx!-O2r%qUUr^q1u@VBWC*FI32om*+|fAz?g63<@u>T?$~&j~&d^PYC#J*$Ds{da%r zN>rs(uWhQHU{kX4|1Fg}cNzAdiCc7A?ElBej-2V@ZpDV*;v{eJ#4nf~Ccm#BYDVhL zhYxP8;l7n`b8hv?r9X=d^iS8R9`60%IqT&od;V1?m;5N2qkY~^wfXD^*Iz5X+3|Os z*nXmD&cyToyqNz5wJ*<EegAiERQu2Qf2Q!-U2U8H>#+CN2g~z5XqxQ_;g9Q5xBuGe z|MSt(Js*PQDpu;&oD$Q2+BpB#0q@$U!7hPnH?JR%KF?WtLo7*%MQ}^S^=A1?k1RE7 z-`fX>Pg@dN^-IhqTWx{SF>BQ$!A`&K)kkRCcrO0(WNpPc7nM}LaxaeAnF3O07H{o3 z-1{KqSH@@gzFj9*msHLP40aaDsNN*!wwz&?lB$uak_3kl%W0N?8Lc-YInVsy`mi*w z)LnXNyVQsEGrbMjn~u0j?0lHgz&yQ2TR7t78e`eT#pS#H1YBS9DX8Ays%XrPtH+Q3 za_L<2RlQht=b`G_9|`>)XOikIZqC)+bMv^{Z-?#dMQ6RA9G-FZp37GDVqfPc$u>`a zh^$oIe0%fiS3A0o&8hpz#j;NIuVl!<jfIA~Yb;dG96O)!ZQ+$3!yB(V-bo~xZFe|V zt@60z!5ty9WjErV^u8>KDRndYRd9dW4WV_9h0kti>MlC|GINKuoj|AR`a_e<3s278 z@X14`Qe>J<r?!7rtH2Tae`2ftJ@)G{nQ=tuM0&$+2S1+cnQN}9lvN2?n;xCvm$XLB z@N)2(Eu9yRxXjaUnS0{w+kkmjHl4W4P}W^za5dYeRW<t2B;CZ+i4mJLbRvbqr-`iI zaLlt#)5i9s{~4LNM}kfsZYZA`!!spYVTr21Cn1hZ)`l1+1zpAo;S3?GCv?x<qxa>` z$+>S6=FE9Ic{)S+d>fT%$&0qC7Jr&%mD$#CM@S);b3!>&$nFV!%lGJgsW}B!sycN# zL-|VFN;mG&`yz81tTc7nbcXWH*p-%uyK%X0vq(H7QQf**VE^N%?H+nN^`^`GY(ION zv*U&T^f<pWC+7KxgzPcWR&Tr-b|PbGN|ca9E@#g)Cb!v3ZUwej2peSVh?zKd!IVW$ z_oRt$V&<H#aB#(q`V!|uSK5Vx))zl>bz16pG3fPV3zfvG$4!@CS;l&1d|V(o<rn`o zm71$8j8=2q|Eah<bAEZOQE7JOS}l!t77G`1Upjd~Ok{aGlha#;D_RLFC(Vpb3avc! zV#b^mmpU)3n>eM1Q<X<qxhLvCP3P%Eh4WhkCjHmF7b_e8dTGX&7tiY5bzQT~k1Z3I zce@lb<9tq)#Y`X7A2S!ZKFZH$*~oL{U)cg)qu^_c9Zv7wYfx9n!qewe(#n!@%FAHF z1r9T@g$74nJ8kM`Sah>!DdQfSDH*f)86T@I6j+h*tjhNIwC!wD#eKV<dgZ5zJi4#F z_pqJG^QnuT?OyfMUnJ%IPXEncT<*;dx#_Z6`}^#k1ZKtACpi-yP15|n#FxQvg6|n7 zh3$nR!7``R_>!d94Lh4>JaU*;B9UXoqbA!qyJn_JsT@=4O`XE%q|6B6yD_GT5mU3I zaw_GcZ^nFWj5vBk?#)r@*}bt_9YO3pN2PDijoIrMarKDQ9$%Qai_{+9{;9ore;xCV zy6EpY+FF=c71g4}tT^o;YeA8g<Ps0#<r6)h<_2DpY~c`IKEv^AUf?U<78c|6Hypp# z1#0mwVF8Qg1g-)zFL-{<4SXfm(qg*&gwt2Ez*Qh-_z8!v_7_))Eol)9e*qR{YXLDg zeA#y6m0MfO%&-$1zHE<J#n#l)31Y^3ta4j+q%-WrgfDR?R<Sv?c4nUl_!XCt$>wx) zX7-tYPw^U=ZceS8-XKwpOgE*bPVYAts^T+B*_1AJYIB5ErE8UTC^_EJ<hc4PT|4xI zlHe^(uF$G9t<Vl7#@m|5LaK_hx3(xL-qt*Fr7Bp<v_;5p8&~5M^#iYjRKB}Rh*esm z$GB@c!&UVLiHF5@IVZE+Z~pvzR7JB;@O*~aT(h?;Dt8^&TcXJw{Iag^NQC3!cDa?B z{rn~!Q(xF}MBNigl`8W((HJP}>Xqxc$khBp;Gc_C(=zzD)+R|7P4IimsJr5){;q#~ z#}{TjYZdz+68`v|N3K)W*4yiKemC+xeRN~<{r*ioDIYKI{}yw(z3tz1ZDrLX6NC~y z8ZCmHBvxu1o1(SrB15#0my-E$pJdT*;`iSa_9)CXp0wjw1eZ#pui`n8nN3QU<S&Kn zI39dpR(fA6)3*8z?_O<vyl2MeCt3a_R`ySmg;PJjd9i2dxu>6nTI51Q4Su;#iE9#l z{3SW)e^TeBU(Yl5{xZEj+c9FBPF>}8?>DL|IMVFh-bPQA*k14PZf2H<>J3Z%Fw0f1 zI2Uq>=+2N-53{f;Qdy<DtHbMp?fsi&6PB*;m^feTNT>YQYpLJYNbip{Ijp*qX`Sx# z-1!{0&7a22;(Bw2Q+wVet4SHIU0gLF_O<oLRP;aO8h&0fEq!X0L^R`rX(n#3pQ_3y zEk5w_aZTSlwHL91m)Js1&zyKl?Uk(XrM8gnnU=kVVL1|w+zaxSE(*QeHEoWr%5Toy zrD5XA4^C+(3TEA2W5%v}=9pKi;I3IIi{@_pcc>$Vp-NkH?Yyup#ifcj)W2Ob+7;m_ z?$_BJ@H1_TVTPia+p5_YuBr&X={YIl_KfLA^g@lVQx<J}&wa3tamTc)M>%$U@``CW zWw!dP2j|AkL9s3C)MqB7zv(s*5@&qq<+^&gNN%y8$G6TyU)Sh_9cT@Hq!zMGGS@At zWA4;fN+qTzRjiYzHw*6M5DM3dGF_Xoq{V5Izs9=s)QwDfbA-$nZaSM`e97s}nh^1Y zt3B0jN>+>YoN#@xBk1C)OxNbkB9m$#720ZdixxbbvV(JKuG{R1VoB*scX7n}8qGX6 zTVcYtgrbcuHcN|&iWXMgoOjf7(yi;i@24(Zx7IOA`kgWBQ>UKgNv9W{&G<SyqV?_e zv|}6j(#%&!w>B+)`hT-~>$i2Q#Q69>_PV6#1*M6sy>~m%E%)NZi2SuVH@i&Tl9%0N znAv{Iu4%zf>3`ODg%5aU%V&li``xOr_WZh2Q!f6yo!Q0_sT9E~rFPY|<DHC)dHbT- z%q!0<OzdH?Oc&wcn7i@5^*RAA8;gD3;SZSBH!m)gVwt7KZz=Xa_`jyxtVG4vOe^YV zC7NG0=4(3N@j`Pa`<)#*9~>8V%>BAtQghRVm!1jBjICN5!mF<?UHYqgnSsakvw3WD z>Ka~KY1F(t;=1GYg7g2D-&oS{uzY{UL5{+2jz;qzXq<jv(!GG&NMWt<lpn_*&3{lb z`#qb`Z{~m2YEu?B^BsG!VRkov+5h9qHr&|He8lR+&qIIY_dE|jCUy4dHzsYv1qUa+ z(FtA{k{U2&!Ky`5i(WPK%HDlgq*Kvhd_{Kgiitf!i_eFs1o8hYe4?B5zTiO0qIb^k z6nk2B2t3{w-DrHiPvM}c!pz<qme+PSG)SrhC@bhi{fNK+Ajq?5;+4ma5B@4iKY8ZR zmaWmT%<gKyj(xES%S%r4{oQ;lb*HeqT|{QWh4jPh9uG|J7i?HCJHm3EVaxjj*&u;1 zA(taIeyRp%{>mNNQ@BQc%49a>yhl4De!l&^;Ma%0=d0$`JpMlKuy*aCufK|8SDq_d z^gZKh^Y`uFn!W$A{Q0{3&Qtd8$!5$Ke>te1JXs)-&F{DKDrXD#ALlFW-!||bte)^< zl3a+{9(Im3bKf;o75dAb;hf!m&DDL?>)KP!$Jx&|8$UVT+|K>-LB~S|&hiyZE#9d* z?kepY!dW{u7yYVRa6`daWO8Bz{|T!<2X!8}ZYc?GsqW|~=q!5p;Ie4pv-fu2|L?2K z*|FfefbEePp5IR}FW(wevg7&&ZXfm+m!C3bKKfL?LHhWVKOe$Q%=Y0g@%X<X>D@#} zxt&raJFW#?;9c9hv_)2D!-7l4n0>7>jxF?E^!337J1sG%+&u?p%jvwywJ&qZ{gbh& zu*iMOMn>cIwk`7aS@m+bw;0+@X1{%laZjBM+dOsqhUa@uiT%lH)hS=7zku<^$MP@t z&mR0N-yQUm_rr^+?>@H2yp*di(OTDZ`{Qp3y93KC_aAARz<u%d{MWV;cbgR-{CnJX zP{20*Z}n62WBK09JFJuo8Djd+_2zaQNm*8!d~$bQ+Ux4S`IkT5zq0J{f6nTA`+xd> zw=~;#|9{TibILb&$-1BV{BHKWO*-MtPyenD%a;h!y=U?yYG2}ssG8&@x8&w%W-x8_ zU??lCQDBI?EG71~bZNn{4HK*uFWh_SMr)w3V)V6yLs|}@qJ}mJ3^ojT3=%xalb%=v zez6f?aXc^V+NbQ<bJz52)atv520fmW9=lxp>>$8m>n~#2r(#%kea+UW-~X?hoZmd{ z@g2isH)0uB5)Fdbnr1z#yjC>F`k2ISWyK7sV|I{Rd;kCcU#~Uk$c@;`TdqZAN5KW* z-QoS<)oLrFg126a+Py3?+pr9@QMmm2jk{6h*>~@<a&z(u%xrIAZENs8>f+?~*qk>x z`)(}UobXUo;Jf*nEZgB3DwcjCw)`xPp{sA*g&2hH6~5&1wHW^MV_;!mVeNa;P+&4; z+0Nb-$*fCnS!4#Bu<!{9ND)vnP%#n`<`om=mYm7i!O_6jDCpJN#Nm(`!qLIueBijt zffF241sqyqSZ2hq1jwp}xYh=UGO(O2$<$F2nDz3~#;{qLmc7NNGws4=y)3%?^hQbH zveUElF1sc=E>>)EIl|=BsF=LS!7RwZ%S=H+IB=oXic>0yl6R&U2C7I4sViL$nOQL< zKvG?4=G4<ImnJ?+3<{jnkrJk&CZ)$06`?nimAkW5b4BxY^GPbMnp>ocWdxc;g4!&S zMP^#r2{$x2wXh~8$nZ2bK71%3z{cdr(CDDRu|}c6K_NlH=w3l?(VCqP5^Ph8`<8ue zO^@FCE&a?h-Ba5h>^`z`VVUYOG2aOOOO@J{IflNKY6Z(SyYVkrEpv5O@igtq<XGLP z`0vTD+&d*rPrd6~7Tb2u>=bKX;qbib5KrPcdP`&4r}+zfX$w#0r<+;Km`>qF1{ zzY8lR6}Ns`vn_zf?W5dnjgIF!6T)83W_h=CrQ?>&iz(YK=N4UOzO2!2%wN=UXLaGO zxm$CZ-}Q!`-j!L#(H)cUMAUHBHotR*Qv?56>aO1_Sj;w8#_xKM>B$vuUP`&1+<2&s z_psV^_m!rTPsZ<P<f`ktVW#QEctd5@qo+l|$Id18zGx8fIX07f#l{>jv$K4b?uoK# zy<HLB^Xuo#@jgByR#f}xZ~g@4zdN#TW%XY56?<MNA|q?~CBE9teofKCdpmf(y-HZ? z-MRG2J$_B0Gwz$B!d2y@#0y1Ce*L?6RJdq=+M}1NzBXn`9*<GgEBPS&wk3tf@#%jd zvz;}vR<S~>!e6dZDGv!R&%AbZ7iZEFyWk7n`IgJList<LVZLGC7Uo5>uO>S+2eh>= z|J5+RTlq>?&b>1c-8VYTbsJk*BBKixV_v#D=@v9JKS`Uu%|jx>Z0D7}az^#Jx+Ucf z{&vAH-Z}Wq3;uDJagNQl5BC^tD}5f$WwsSwwWV)T@LIcNB2Oh4m)vETCVn|uj%7`j z!1So%YggMRD#<9fY%xFZDADS4GmG=1+Nb48N7Fu+l`9?fP5b&TrO!9*>m5(2*=Jwh z@f0#&dv*6@owB(%j+F=h<9e$hu2cO~)kTz_@xWT|?aSWoIJr^oLHibidn~@Mg5rZ* zQXeICDa&3-;q__%wQKXEBr~I_^NJ@deLtZm^{JAJD62@oCH5TFIZg~)y!)+}u`-&R zdA>{T(5Bf>&r7|PvG=;cGi`RvUYoB)A3n<ncE0$0w6RY_;}(BL<&1^x?<y1nLY;Sn z^ah99wTTo;GA_E?aPC?zV-kDy1D~^bzYib0^Y73D{mv$*jIx6NJ`#_6Qvv@!BD z_7W&t{rCZQ^ON&6rP;H8x0PjPZ0o6+dDlVi-mxDq^ft6lGs#Jlzfre>*`CGdpt#Cp zsb;@3lb`Y@ahpb2aNJ9Kn|Z==W2<_Dl#`dlQ^&q&Nv397y9qW8DlJpF)$H`1sAwi1 zaohc`WU^X`dya`w>1H1RL#=6FedU@iX^Wo;mA}U^HP}EZcV&Ijo3+P+ubP#8O->P< zF6h9lb(TBG{)*n$fWDOb5veQ7U#@t2)GtaP;#H*9>0r;W{8fqG>c0&GH-zVeN*PYN zbY}HA+xTOD+m!r&x15^y@{;A@qpx;7KD}k8#)a&%Q+GQBj8t5n%$k2eIB}O-OT*^0 zW975_HVXe;ez%P6-4hNm|J}u6t9BlHUiDzk_Jv>0E#gybS=z(!LOnBZaRSqV`_3Ah zzjwA=57;hgGfl3T<u1dkB@LdRj{H;<a$I3;Q^4>fu27GQho@!XdR8@ypl8#$A5D3C z`RL9>F0DP!96XjxRbY2M{eGjX<?_@g*C*W<<@Y&uIioe4<*&`gybBY|{yr&MzWm+t zZ~42kCx2Jiu;<=fzx!)HeX5IB`w;4xb<jPyV)C(_59dz)G5u%WQT@vmA)B70u+IMD zwoNCip56P2zkyj&?mV@lHJ>8YL%toE%x1pt*7=sES<9AQIHGwnIj$<^UnMikp=zc? z<!jG;ZI`N=pLF}R>$i2qqOaxub|!2)C7cl2RCU^=HPrB_yQ`<ARbbH6C0q--w;tQ{ zm`(EaVV7)66@U9v^8~u4o|$wu;HBb<YL+aooA*}CJu_YWvaXzpPN9C_^@yKE4bxaJ zMhhwRcrl3UAMwBXZExBStE8{F(LEb7_a|FExRYSn^?ROiO{vJ$;}2O+8?Fpe)a>~s z?q@H_VX`RmKKmc_cOpy9CcDklk<zWX;MehKfz$+ByT;S=OcmId7)wMYJh`RzgFRw# zBGb%Ui>GHyXz2KU(LS|f+VSe{?x=vyhqratwWOzK`ggrplu`3zf9a%dy}vxu98O0B z>!f|2e00;+jqyGz;*I-MryRF@TE&;~;Ah{5TbkE=lBWr7@0>WVa?M$$y;mHnZ|*2| z-dd)VJ}>L4Jim_4r%c^_?Y-90A={OUKCcY>yW>ETV*G6-&nf3BgYL(lemqY@X{X6_ zzrS&BpExpl`i5@WGd1U<n(WrOvqE`UBW=A^E45cHS(|a?dFpyOjV)PAoLpBwnfCpX z;{DSzOja})n`m42hrPJ=R8MYg#HE!|^{bs9y_)jfA$i|xfqQ*r&sLY7XD`~9z3;hl z<-Y7akDIOko8EieZ1LY}{v3}3Kf^zs<A1kz<Ma4fw|%cA@6Gu%CH(a{{<2@$73bZH z{$*D^XRiF0UGtpT`o8JC=gOA%P3OxUna3F5&CDXgz`(%4aCJ*cRN!&b#lZ{=41Ej? z4B`x&47o}1DXGPo>3Q*n@fAslMezoDnR&@Yp&_gc%#VtWr*oe?bM}mPf4QfQXHWTQ z{jTq4y!E`!`kvMHJX3i3q`tnluF(}^bE6;)KiyM4XHKs1(m8qN{N_zwI$q~a=y-=3 zn1mYy7%(R(9AfJYtdO{rF@c)_<{$>JgP6k^VxO@yFo3Wab_W%uB*NXJu~q+Xf{yA_ zJBC?tGQutl#dk_VnYbF50vxt3c)<{I`~PkBl3QEnE_^si<&I~G%)U+!Pvfh~O1m2W z_XUgCO$&DWy?^&6>-uzK@u`Z2xxuop)-ua5Dl;lGN-S$nx^!5^S~65~u20OX=ackT z3LF(!WWRpb-<|1lSMH_e$*5UwSh6K!&Z&;2(_B^vU0EVBS>o9Z%Y{BJOS6)cv{LuP zbH56R`M9=P&iJ?Pxs2tvx9C2;(RWMr^X$*_w>s@LZM&>;)8OW#(7kPj|D?0Sos)S# zuWFK9qp)py?w`~f$`_61?EY)xoqpqV#@C-^6MyTRS$+EG6DyxM6SaTG`ohB(vVA?D z_g&K6$;mh>`<e5`awER9Gbfeae5=?m_2kEV`w#0T)z1IlRUgUrbNbX7v)Ct#cfB;u z@U6_g^!>0zy+f9*iQV=c?2m568ZimJn!>uN(QWnJs<mF(J1*Hhe$^Pfh~wfLn`e6y zKl(dl$@-sH=DDwOkt5VvJ@ofmjrnedI}hI0S+HV9%#7Qr-nZJ5p8w2Q=zH5Bxa~@N zlF{L#-yd}wS@KQRR=%j&nl#DT(>u#VXyus;s?i$lCwZ^#E>AY}O!E1&(4}-K)9E)F zYNi$EfB(%{B^umpXzX*L?WEPm=}J4Fbh8)!{I+R(++M3Kv1cD!8_sQB6L##9_U6Y1 zKMw^3ibnY8s!yKw@}|MgMCt5(Rlje2{$4fp_umFPMX?k4e{Da{U;6v&l9RDQtmWO# zzyGqcdTu}Nr7fHN?$Q3F|M$v5SFFy9yzu<l>!W`PX6(s2bLEMdPuhX|*H>4w9ldab zW$6tq_v5#IZnrI-8dezVo_yvU+v;B*o9DVZ%JGQ!N?PuJH|@3El(0X0m#?0Xbg*R7 zErXMcN1sednxvE^c~$sji^v>b_BmU<?w|Se^>e}D7S8(au&E!_+M}i#KEGu6cU3gw zr$>g)(nW4gf~rc!l2_tWW_Fx7b7f1PTEe|~p+))%qCRhD-Tr6Lyz~BtBiYPF=Xyj0 zTn>jm^z5EqAzA6LS#e?Mon>I;rrC3?FnamcS6+e-X54mj6gk*;b8Fw%ZHwK*?V9Cy zIAeEj=(aBp&FxI+J!tklZ#A3o+OiGX_tnY25}eIopVq;gDRuP)gCxTVoz8$zRa2pf zTtyi{+AGd^TGZd(nO@$?8q~<&`~TbWC1)~@_1(9=zbp5~Xa3T1&&kiFt)sd*ClwmK zRP|LYer-^h_=vy6bGis??D~WJ+$)#19QqPdbmVLPQ~#tkzaBTGNz-rU&Uj<+@p#~$ znQ0wKlTsi3%fFZ&;=6VMmk0B#zN34y)^uCSWW2UGcTK`-_JrU3bIxjAN!)Ib-1kz9 z#WmiV|KQD%d)4a<YF2;xw&wbb%{$x9$h_)3sI6oudO2Hub8bfc^EG!QJ>ImXeZO)~ z><f!ZlkmzboBz3_EKBt^s7Zgar|M{M-8adtyXRkW{I_WN@BfP?aj+i#zHNTKf@00Y z_GvA}-qY*MdOgm5-&mJ8*T%4QBggaib=+0FZWDweEEm_r@2{A8MMGKm$0Uxem*#bt z7-+K3R?fQ>tx}tJ>fSxUl^^#Pi_SSL7GTnQg8g#*-Fmjy9Y@kK7|z(dsxQ7iqrt>r zclM(<M|=NA7#SVBvm&HsvLXBGXE_?nxl6Ur*Zbbqd9lrG_I=&%%{O!YTy1n%VYoK1 zYl@(xprGd@6<I^p7Kz6a#RaxP3`UMz%^F>f25g2$B%C@X7^tW)IduqX96RE}uE8oG z7U&usv1+#U5}V~gf9}O-J^uR3Q1+ycrn_d<6<gb&-@orE9DP^sYPV~#!{fP&rq^A( ze(1nXpN;XKFD4Xm%`axtZCp1=aWaRdR!~<s`x4%$gmdBI*H&!znyaNfwe_)P)KLZB zqQV;{b62dq?APAc%da)r?aJm(pOe;#DSw!5s?1m6{O|w6K~POTb#>G2rHX=kcP?7R z^gFQeyf>$i**kuA{}<;xd>&dCy6~r&2S4^dym4L}&m0-~Q_qFZY1ru1-^uiy94|gM zh&8|Vzq;6Mi*@W9wHM40u9x-v@`2A?YC(+S(R1DIGp_t@Zxy*>^jGQ2sy6+C&eZ-i zJ>D<LcdJuASUtRXIa(?4=L~lFbN2mgQpL&-pYrtSh@V(rZu7y<?|hcy1TnJ%`(l%S zGjlFoT7CU|;=7!h%FNl0i<Z38oUunl&~t^RU%*A%d%B!29(}R2R=m>lfTL5gCt!oc z?Aml?DS-;FgPsdE*c`~n%Qz6UywQEhoaIGL@60nSW-s@6FS_Ip|Ks)Duj5s?`_iZE z5-pybv-9Z1EYtjFt9cgHHmqW6*V(<x&G-%%qwkJ_7X52VY$x<Q7dFRf>}lO8`O8%G z$SR3HpVNNxOFhi{5@V2m{aW9*Tsx^WG1j*+!J9VLTwEwHK_JvrUq-;u#yCTE-P#i! zLUDSU8xEK+x-d68*<k73wW?tTP5YgN+Pd@SC}<ZX7RgE|mRlU$@{wIR_s0^4FO%dg z#D2NS>82(~87UlWI(UuAqVd7>mb`D%*1m8~jBL6-St_=8_P=%K_wHMB{(-|HnN_ZC z|7I5T>bCDQ^gHP)yW*7K&VuOEH{V)re^cw57rX6z`qC?_7R%&I{5rYWglpbBnQ)~= z#~kzJ+P>^|%HibOQ)hkb41d~%pN2&XyvohlRJSX9>}b2}cQ#yW-XgXcA{nP{e>*My zl4l<;ub;lTi>tt<B}?slWIc~FOmaVLv~JezOXn<216~HQ!kP$>Hp^7bHCr>87#KFP zGB8MEZ6d@Mr6lTQ73b%{+X=l>^8Ifc2pqfrK6s9nFH`3d-&xc2-b>6qrt-o~_@GLQ zlKMU~w&U+|)B^<W*A_Bm{fPdfw&{KOd0RW{egB!hzBpT`I<+xANio!sXYwNPL$$)$ zkJ^j2hULthT~%q!`2Kdvn;*>g+xPbv7w!(%PSKMo;49|Nn6cO`RIxO1a;k7n7z6tj zB_(Grb)8_LWf2>BzOrlW-P^l7!iz6`Mak=J<;S#~R72KHEwjDeKKIsTiyN))RUeDE z-Lsg{<1X-A)nx~hM5B1i;ldaG4^pI}qaDNRy?CPT?r^bC<WgX`&)+`T;DfI9t4;1f z=4($ry|ln=ftTWph(i_yL1_y_t~=f9$UC-Bhf8UNZ;<b2;jUS_u1+iuv(K7XOv#*7 z<fCDja`35dlb0v!Is27DvDaQ^-EEw8Pu1MTv~{kwF6)=#$b|nFL;m+q3eVUw*Sa;g z;?zl5D-rIS_l?S5^S-Q`XgBlAq}x+gq)d3R)u8gx*So)%zT6frXlvYWUovmirJSdG zr>@i}TzfKIH(%oR<m;U0Eq6zrzMJ;@h&<1kY|)N0j~U&rCGRb3-*P>GU-u8oyi=Ag zx%SzAl8WC-YpDH_N?Ve#<ks75=d4tvKYTy+&-_+W>3K09g)8zwMZ#_3PP1Ir8zghL zeG!_YwcO^Wm*GTBodAhLlbwQCc1G;cu}<YOKCG3awZG?_cVa}NHLGydb*8&^W=DSN z+^X!^%X9R7`?>ymyhq=+KU>b8ulxUrk?Nj0#aG?cJ)%W3EbZr<u)NQ9yyx-t{s+n4 zwSMKzd7-^Uza#4WwjIv9I(MpT*DAXdgPl%JvxRwYS!W+V{B(Nzf7GNZQo+Qql8J%A zS&e}KM{Bk`B@LcR??y%E-7(<#^FCAOvQp|@wT-$9?0GLR+197Oc$+7fbK#ijHE(6k z1kWcE79W4n_$OxH{~y1;tzD+SYFg<*|7$CMJ<nLQ_}tE$347II1Hy8D%rm{&ux*+5 zyfx0gZCCAohlFgj4EI#Jbba07_sPZvGx$PJ32szBZRWxB`|+ahZ+<`A@#D}B_D{!e zq^lH0)SRicEc&MT?4RP_{8fu2YJdN~u|indPBiv=*gRd!H_L6K7rkF;cl+`CrS`Xt zZ+JIuOW!b^E%$tazUZxa2ji@^C^mohYI*j?!M3r)q0=B@tp+1Y{bb86o_~7^=LxJ( z{Psq7%lw4h0hWyy{+{F5@R#Sov3ZIKs(MEL38o7-$30Qqe`vjBu;ZUKJ*$44J}`HF zS7&)y;pCou&t|wiH?}$v`GdpqfaNcn&!W!8=7uviEHiK@Nb}*|tZTu&>)gXgl@J5h zd3T+R3m-66`}k|*&HnLes_^XVSzH;fiW`3?Bp0~Z@H;NNyMnQxr8r6Qp_|+yrOnPw zk_K)EZf`U&S?m(vZ?ayG!|>XlUteZ2uZZD0UDp$KZOtwPu^RExyU%_Jw#(LTyXbr9 zy{Ad6-`1vx55;9a?yh*)b>ZKW$E(i1PVd~e=*m?m{{pc^g6~(POG@rolfGNej9>TE zvlp9RS7jA%KE1lJU1H^pV}G}Pzdlbm<NN&^^U|lT)Smx2)1;^(^1Q?^sd;zr7WSMw zweI~YyP~X=>H5#r-Z9-1nyoDCTI!f}GV%9~8kry8f(p-V4oQq^I36pQrxW|`hg{1s zRWs-0TTdivN(0#${bV`oi%rgLNvqLjZ#i#fwSTvF6UTSPhKt|cc_nk+e={Nd(e_tI z+}Gsoz9sASi9zkywIf>|bX+*?db?=qy7xC`|9kW4fX%gaQNb(a_aw*uk58)1E^UaO zxbgIUc%KbYAcsHA)2(D+U|7t+z#xOQK-MctEzU13N=_|?r}fk>YrbX!0oLEPXMY`@ zwPUla&%~_`Y~C+5lth+xXzbW85<TT*+A~|d)uOgh3r!T6reB>~v&Vk@{#oDFyRP=U zHlclE-X*VHroC!Y(`8StNc)@W71;h@v$yYx=HEu)MpB7SPFmk%@_)GTr_kdG)5|7J z2+AmLG%$|;z#QPs$Rxsy=mL8P@Dv&{F)*aCF)*+*@Pd|PF)%VPFf3^VF;kKY^eS?5 zLPIzq9bix=7}<m?TT-I_CLBN0!NkDe!@<BHiDE)L69bkmb$oG2X_8(U*vyAT$J0R= z-AslkpUtLB3=C~tpfE*tl{zaPGc!^kP6ZhW!sy0snX_GAmXU!$f)QaX$eT+V=d)uq zwji-6F&7>JAR|E--Pp?$?xdA4FfeRoU|>*03W2wc|2eQ4o0%7%oS#>cT2Z1`k&=uz zBp#W)I?=$*z;H)_fk6UlHpI!hIkB0oSDcYpkc!ht(5OfLD%NzDD+~+<R~Q&XQH-n- z#cE_l9@sok<byE6`wZYg3p1skmzFJMU;tq;6!U()#A;qDsL;oeqCgHr9hO0k{k#2) zSW*;pkOr%X5GSIJt3XVIgks(VtR{j-S+E)i$@HkLFo=PWY%_5NHUp8`WOz(PtuT>I zwV930R6TI@iN`?HvI*HhrFmElL@KFJjAdm51s5*^FM}xy1H-*}j0}1Vt|q~zrm4jS qfyo7?*={*Sj@lIwS(*BQNk&0NrfE5OiG}9oRr+qF#<|`W2DSh%XZ)i8 diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0.xml b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0.xml index d072aac..618e5e2 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0.xml +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0.xml @@ -27310,7 +27310,7 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:38:42 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:30 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> @@ -27328,11 +27328,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:64c45613</spirit:value> + <spirit:value>9:ab1ef4d3</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -27348,11 +27348,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:f2e0e0ef</spirit:value> + <spirit:value>9:973302a5</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>sim_type</spirit:name> @@ -27376,11 +27376,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:f2e0e0ef</spirit:value> + <spirit:value>9:973302a5</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>sim_type</spirit:name> @@ -27419,7 +27419,7 @@ </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:dbfefa5c</spirit:value> + <spirit:value>9:2fc6241c</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -27435,11 +27435,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:dbfefa5c</spirit:value> + <spirit:value>9:2fc6241c</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -27477,7 +27477,7 @@ </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:64c45613</spirit:value> + <spirit:value>9:ab1ef4d3</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -27493,11 +27493,11 @@ <spirit:parameters> <spirit:parameter> <spirit:name>GENtimestamp</spirit:name> - <spirit:value>Tue Mar 04 21:34:15 UTC 2025</spirit:value> + <spirit:value>Thu Mar 20 17:24:29 UTC 2025</spirit:value> </spirit:parameter> <spirit:parameter> <spirit:name>outputProductCRC</spirit:name> - <spirit:value>9:64c45613</spirit:value> + <spirit:value>9:ab1ef4d3</spirit:value> </spirit:parameter> </spirit:parameters> </spirit:view> @@ -27511,7 +27511,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -27524,7 +27524,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -27541,7 +27541,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27568,7 +27568,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27588,7 +27588,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27615,7 +27615,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27642,7 +27642,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27669,7 +27669,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27696,7 +27696,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27723,7 +27723,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27743,7 +27743,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27770,7 +27770,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27797,7 +27797,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27824,7 +27824,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -27841,7 +27841,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27868,7 +27868,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27888,7 +27888,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27908,7 +27908,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27935,7 +27935,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27962,7 +27962,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -27989,7 +27989,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28006,7 +28006,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28030,7 +28030,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28047,7 +28047,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28071,7 +28071,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28095,7 +28095,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28115,7 +28115,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28142,7 +28142,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28162,7 +28162,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28189,7 +28189,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28216,7 +28216,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28243,7 +28243,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28270,7 +28270,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28297,7 +28297,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28317,7 +28317,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28344,7 +28344,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28371,7 +28371,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28398,7 +28398,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28415,7 +28415,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28439,7 +28439,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28456,7 +28456,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28473,7 +28473,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28497,7 +28497,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28521,7 +28521,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28545,7 +28545,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28565,7 +28565,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28589,7 +28589,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28606,7 +28606,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28630,7 +28630,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28654,7 +28654,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28678,7 +28678,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28702,7 +28702,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28726,7 +28726,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28743,7 +28743,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28767,7 +28767,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28791,7 +28791,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28815,7 +28815,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28839,7 +28839,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -28859,7 +28859,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28883,7 +28883,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28900,7 +28900,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28917,7 +28917,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28941,7 +28941,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28965,7 +28965,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -28989,7 +28989,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29009,7 +29009,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29036,7 +29036,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29056,7 +29056,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29083,7 +29083,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29110,7 +29110,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29127,7 +29127,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29151,7 +29151,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29168,7 +29168,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29192,7 +29192,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29216,7 +29216,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29240,7 +29240,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29264,7 +29264,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29288,7 +29288,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29305,7 +29305,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29329,7 +29329,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29353,7 +29353,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29377,7 +29377,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> @@ -29401,7 +29401,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29421,7 +29421,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29448,7 +29448,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29468,7 +29468,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29488,7 +29488,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29515,7 +29515,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29542,7 +29542,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> <spirit:driver> @@ -29569,7 +29569,7 @@ <spirit:wireTypeDef> <spirit:typeName>wire</spirit:typeName> <spirit:viewNameRef>xilinx_verilogsynthesis</spirit:viewNameRef> - <spirit:viewNameRef>xilinx_systemcsimulation</spirit:viewNameRef> + <spirit:viewNameRef>xilinx_verilogbehavioralsimulation</spirit:viewNameRef> </spirit:wireTypeDef> </spirit:wireTypeDefs> </spirit:wire> diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.v index a4f3b68..5637daa 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.v +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.v @@ -2,10 +2,10 @@ // Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. // -------------------------------------------------------------------------------- // Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 -// Date : Tue Mar 4 22:38:42 2025 +// Date : Thu Mar 20 17:31:25 2025 // Host : hogtest running 64-bit unknown -// Command : write_verilog -force -mode funcsim -// /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.v +// Command : write_verilog -force -mode funcsim -rename_top mb_design_1_xbar_0 -prefix +// mb_design_1_xbar_0_ mb_design_1_xbar_0_sim_netlist.v // Design : mb_design_1_xbar_0 // Purpose : This verilog netlist is a functional simulation representation of the design and should not be modified // or synthesized. This netlist cannot be used for SDF annotated simulation. @@ -13,437 +13,115 @@ // -------------------------------------------------------------------------------- `timescale 1 ps / 1 ps -(* CHECK_LICENSE_TYPE = "mb_design_1_xbar_0,axi_crossbar_v2_1_33_axi_crossbar,{}" *) (* DowngradeIPIdentifiedWarnings = "yes" *) (* X_CORE_INFO = "axi_crossbar_v2_1_33_axi_crossbar,Vivado 2024.1.2" *) -(* NotValidForBitStream *) -module mb_design_1_xbar_0 - (aclk, - aresetn, - s_axi_awaddr, - s_axi_awprot, - s_axi_awvalid, - s_axi_awready, - s_axi_wdata, - s_axi_wstrb, - s_axi_wvalid, - s_axi_wready, - s_axi_bresp, - s_axi_bvalid, - s_axi_bready, - s_axi_araddr, - s_axi_arprot, - s_axi_arvalid, - s_axi_arready, - s_axi_rdata, - s_axi_rresp, - s_axi_rvalid, - s_axi_rready, - m_axi_awaddr, - m_axi_awprot, - m_axi_awvalid, - m_axi_awready, - m_axi_wdata, - m_axi_wstrb, - m_axi_wvalid, - m_axi_wready, - m_axi_bresp, - m_axi_bvalid, - m_axi_bready, - m_axi_araddr, - m_axi_arprot, - m_axi_arvalid, - m_axi_arready, - m_axi_rdata, - m_axi_rresp, - m_axi_rvalid, - m_axi_rready); - (* X_INTERFACE_INFO = "xilinx.com:signal:clock:1.0 CLKIF CLK" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME CLKIF, ASSOCIATED_BUSIF M00_AXI:M01_AXI:M02_AXI:M03_AXI:M04_AXI:M05_AXI:M06_AXI:M07_AXI:M08_AXI:M09_AXI:M10_AXI:M11_AXI:M12_AXI:M13_AXI:M14_AXI:M15_AXI:S00_AXI:S01_AXI:S02_AXI:S03_AXI:S04_AXI:S05_AXI:S06_AXI:S07_AXI:S08_AXI:S09_AXI:S10_AXI:S11_AXI:S12_AXI:S13_AXI:S14_AXI:S15_AXI, ASSOCIATED_RESET aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0" *) input aclk; - (* X_INTERFACE_INFO = "xilinx.com:signal:reset:1.0 RSTIF RST" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME RSTIF, POLARITY ACTIVE_LOW, INSERT_VIP 0, TYPE INTERCONNECT" *) input aresetn; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWADDR" *) input [31:0]s_axi_awaddr; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWPROT" *) input [2:0]s_axi_awprot; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWVALID" *) input [0:0]s_axi_awvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWREADY" *) output [0:0]s_axi_awready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WDATA" *) input [31:0]s_axi_wdata; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WSTRB" *) input [3:0]s_axi_wstrb; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WVALID" *) input [0:0]s_axi_wvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WREADY" *) output [0:0]s_axi_wready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI BRESP" *) output [1:0]s_axi_bresp; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI BVALID" *) output [0:0]s_axi_bvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI BREADY" *) input [0:0]s_axi_bready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARADDR" *) input [31:0]s_axi_araddr; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARPROT" *) input [2:0]s_axi_arprot; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARVALID" *) input [0:0]s_axi_arvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARREADY" *) output [0:0]s_axi_arready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RDATA" *) output [31:0]s_axi_rdata; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RRESP" *) output [1:0]s_axi_rresp; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RVALID" *) output [0:0]s_axi_rvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RREADY" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME S00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) input [0:0]s_axi_rready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96]" *) output [127:0]m_axi_awaddr; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9]" *) output [11:0]m_axi_awprot; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3]" *) output [3:0]m_axi_awvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3]" *) input [3:0]m_axi_awready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96]" *) output [127:0]m_axi_wdata; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12]" *) output [15:0]m_axi_wstrb; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3]" *) output [3:0]m_axi_wvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3]" *) input [3:0]m_axi_wready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6]" *) input [7:0]m_axi_bresp; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3]" *) input [3:0]m_axi_bvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3]" *) output [3:0]m_axi_bready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96]" *) output [127:0]m_axi_araddr; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9]" *) output [11:0]m_axi_arprot; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3]" *) output [3:0]m_axi_arvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3]" *) input [3:0]m_axi_arready; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96]" *) input [127:0]m_axi_rdata; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6]" *) input [7:0]m_axi_rresp; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3]" *) input [3:0]m_axi_rvalid; - (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3]" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME M00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M01_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M02_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M03_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) output [3:0]m_axi_rready; - - wire \<const0> ; - wire aclk; - wire aresetn; - wire [127:0]m_axi_araddr; - wire [11:0]m_axi_arprot; - wire [3:0]m_axi_arready; - wire [2:0]\^m_axi_arvalid ; - wire [127:0]m_axi_awaddr; - wire [11:0]m_axi_awprot; - wire [3:0]m_axi_awready; - wire [2:0]\^m_axi_awvalid ; - wire [2:0]\^m_axi_bready ; - wire [7:0]m_axi_bresp; - wire [3:0]m_axi_bvalid; - wire [127:0]m_axi_rdata; - wire [2:0]\^m_axi_rready ; - wire [7:0]m_axi_rresp; - wire [3:0]m_axi_rvalid; - wire [127:0]m_axi_wdata; - wire [3:0]m_axi_wready; - wire [15:0]m_axi_wstrb; - wire [2:0]\^m_axi_wvalid ; - wire [31:0]s_axi_araddr; - wire [2:0]s_axi_arprot; - wire [0:0]s_axi_arready; - wire [0:0]s_axi_arvalid; - wire [31:0]s_axi_awaddr; - wire [2:0]s_axi_awprot; - wire [0:0]s_axi_awready; - wire [0:0]s_axi_awvalid; - wire [0:0]s_axi_bready; - wire [1:0]s_axi_bresp; - wire [0:0]s_axi_bvalid; - wire [31:0]s_axi_rdata; - wire [0:0]s_axi_rready; - wire [1:0]s_axi_rresp; - wire [0:0]s_axi_rvalid; - wire [31:0]s_axi_wdata; - wire [0:0]s_axi_wready; - wire [3:0]s_axi_wstrb; - wire [0:0]s_axi_wvalid; - wire [7:0]NLW_inst_m_axi_arburst_UNCONNECTED; - wire [15:0]NLW_inst_m_axi_arcache_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_arid_UNCONNECTED; - wire [31:0]NLW_inst_m_axi_arlen_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_arlock_UNCONNECTED; - wire [15:0]NLW_inst_m_axi_arqos_UNCONNECTED; - wire [15:0]NLW_inst_m_axi_arregion_UNCONNECTED; - wire [11:0]NLW_inst_m_axi_arsize_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_aruser_UNCONNECTED; - wire [3:3]NLW_inst_m_axi_arvalid_UNCONNECTED; - wire [7:0]NLW_inst_m_axi_awburst_UNCONNECTED; - wire [15:0]NLW_inst_m_axi_awcache_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_awid_UNCONNECTED; - wire [31:0]NLW_inst_m_axi_awlen_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_awlock_UNCONNECTED; - wire [15:0]NLW_inst_m_axi_awqos_UNCONNECTED; - wire [15:0]NLW_inst_m_axi_awregion_UNCONNECTED; - wire [11:0]NLW_inst_m_axi_awsize_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_awuser_UNCONNECTED; - wire [3:3]NLW_inst_m_axi_awvalid_UNCONNECTED; - wire [3:3]NLW_inst_m_axi_bready_UNCONNECTED; - wire [3:3]NLW_inst_m_axi_rready_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_wid_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_wlast_UNCONNECTED; - wire [3:0]NLW_inst_m_axi_wuser_UNCONNECTED; - wire [3:3]NLW_inst_m_axi_wvalid_UNCONNECTED; - wire [0:0]NLW_inst_s_axi_bid_UNCONNECTED; - wire [0:0]NLW_inst_s_axi_buser_UNCONNECTED; - wire [0:0]NLW_inst_s_axi_rid_UNCONNECTED; - wire [0:0]NLW_inst_s_axi_rlast_UNCONNECTED; - wire [0:0]NLW_inst_s_axi_ruser_UNCONNECTED; - - assign m_axi_arvalid[3] = \<const0> ; - assign m_axi_arvalid[2:0] = \^m_axi_arvalid [2:0]; - assign m_axi_awvalid[3] = \<const0> ; - assign m_axi_awvalid[2:0] = \^m_axi_awvalid [2:0]; - assign m_axi_bready[3] = \<const0> ; - assign m_axi_bready[2:0] = \^m_axi_bready [2:0]; - assign m_axi_rready[3] = \<const0> ; - assign m_axi_rready[2:0] = \^m_axi_rready [2:0]; - assign m_axi_wvalid[3] = \<const0> ; - assign m_axi_wvalid[2:0] = \^m_axi_wvalid [2:0]; - GND GND - (.G(\<const0> )); - (* C_AXI_ADDR_WIDTH = "32" *) - (* C_AXI_ARUSER_WIDTH = "1" *) - (* C_AXI_AWUSER_WIDTH = "1" *) - (* C_AXI_BUSER_WIDTH = "1" *) - (* C_AXI_DATA_WIDTH = "32" *) - (* C_AXI_ID_WIDTH = "1" *) - (* C_AXI_PROTOCOL = "2" *) - (* C_AXI_RUSER_WIDTH = "1" *) - (* C_AXI_SUPPORTS_USER_SIGNALS = "0" *) - (* C_AXI_WUSER_WIDTH = "1" *) - (* C_CONNECTIVITY_MODE = "0" *) - (* C_DEBUG = "1" *) - (* C_FAMILY = "artix7" *) - (* C_M_AXI_ADDR_WIDTH = "128'b00000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100" *) - (* C_M_AXI_BASE_ADDR = "256'b1111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000100000100100000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000" *) - (* C_M_AXI_READ_CONNECTIVITY = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) - (* C_M_AXI_READ_ISSUING = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) - (* C_M_AXI_SECURE = "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) - (* C_M_AXI_WRITE_CONNECTIVITY = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) - (* C_M_AXI_WRITE_ISSUING = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) - (* C_NUM_ADDR_RANGES = "1" *) - (* C_NUM_MASTER_SLOTS = "4" *) - (* C_NUM_SLAVE_SLOTS = "1" *) - (* C_R_REGISTER = "1" *) - (* C_S_AXI_ARB_PRIORITY = "0" *) - (* C_S_AXI_BASE_ID = "0" *) - (* C_S_AXI_READ_ACCEPTANCE = "1" *) - (* C_S_AXI_SINGLE_THREAD = "1" *) - (* C_S_AXI_THREAD_ID_WIDTH = "0" *) - (* C_S_AXI_WRITE_ACCEPTANCE = "1" *) - (* DowngradeIPIdentifiedWarnings = "yes" *) - (* P_ADDR_DECODE = "1" *) - (* P_AXI3 = "1" *) - (* P_AXI4 = "0" *) - (* P_AXILITE = "2" *) - (* P_AXILITE_SIZE = "3'b010" *) - (* P_FAMILY = "artix7" *) - (* P_INCR = "2'b01" *) - (* P_LEN = "8" *) - (* P_LOCK = "1" *) - (* P_M_AXI_ERR_MODE = "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) - (* P_M_AXI_SUPPORTS_READ = "4'b1111" *) - (* P_M_AXI_SUPPORTS_WRITE = "4'b1111" *) - (* P_ONES = "65'b11111111111111111111111111111111111111111111111111111111111111111" *) - (* P_RANGE_CHECK = "1" *) - (* P_S_AXI_BASE_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) - (* P_S_AXI_HIGH_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) - (* P_S_AXI_SUPPORTS_READ = "1'b1" *) - (* P_S_AXI_SUPPORTS_WRITE = "1'b1" *) - mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar inst - (.aclk(aclk), - .aresetn(aresetn), - .m_axi_araddr(m_axi_araddr), - .m_axi_arburst(NLW_inst_m_axi_arburst_UNCONNECTED[7:0]), - .m_axi_arcache(NLW_inst_m_axi_arcache_UNCONNECTED[15:0]), - .m_axi_arid(NLW_inst_m_axi_arid_UNCONNECTED[3:0]), - .m_axi_arlen(NLW_inst_m_axi_arlen_UNCONNECTED[31:0]), - .m_axi_arlock(NLW_inst_m_axi_arlock_UNCONNECTED[3:0]), - .m_axi_arprot(m_axi_arprot), - .m_axi_arqos(NLW_inst_m_axi_arqos_UNCONNECTED[15:0]), - .m_axi_arready(m_axi_arready), - .m_axi_arregion(NLW_inst_m_axi_arregion_UNCONNECTED[15:0]), - .m_axi_arsize(NLW_inst_m_axi_arsize_UNCONNECTED[11:0]), - .m_axi_aruser(NLW_inst_m_axi_aruser_UNCONNECTED[3:0]), - .m_axi_arvalid({NLW_inst_m_axi_arvalid_UNCONNECTED[3],\^m_axi_arvalid }), - .m_axi_awaddr(m_axi_awaddr), - .m_axi_awburst(NLW_inst_m_axi_awburst_UNCONNECTED[7:0]), - .m_axi_awcache(NLW_inst_m_axi_awcache_UNCONNECTED[15:0]), - .m_axi_awid(NLW_inst_m_axi_awid_UNCONNECTED[3:0]), - .m_axi_awlen(NLW_inst_m_axi_awlen_UNCONNECTED[31:0]), - .m_axi_awlock(NLW_inst_m_axi_awlock_UNCONNECTED[3:0]), - .m_axi_awprot(m_axi_awprot), - .m_axi_awqos(NLW_inst_m_axi_awqos_UNCONNECTED[15:0]), - .m_axi_awready(m_axi_awready), - .m_axi_awregion(NLW_inst_m_axi_awregion_UNCONNECTED[15:0]), - .m_axi_awsize(NLW_inst_m_axi_awsize_UNCONNECTED[11:0]), - .m_axi_awuser(NLW_inst_m_axi_awuser_UNCONNECTED[3:0]), - .m_axi_awvalid({NLW_inst_m_axi_awvalid_UNCONNECTED[3],\^m_axi_awvalid }), - .m_axi_bid({1'b0,1'b0,1'b0,1'b0}), - .m_axi_bready({NLW_inst_m_axi_bready_UNCONNECTED[3],\^m_axi_bready }), - .m_axi_bresp(m_axi_bresp), - .m_axi_buser({1'b0,1'b0,1'b0,1'b0}), - .m_axi_bvalid(m_axi_bvalid), - .m_axi_rdata(m_axi_rdata), - .m_axi_rid({1'b0,1'b0,1'b0,1'b0}), - .m_axi_rlast({1'b1,1'b1,1'b1,1'b1}), - .m_axi_rready({NLW_inst_m_axi_rready_UNCONNECTED[3],\^m_axi_rready }), - .m_axi_rresp(m_axi_rresp), - .m_axi_ruser({1'b0,1'b0,1'b0,1'b0}), - .m_axi_rvalid(m_axi_rvalid), - .m_axi_wdata(m_axi_wdata), - .m_axi_wid(NLW_inst_m_axi_wid_UNCONNECTED[3:0]), - .m_axi_wlast(NLW_inst_m_axi_wlast_UNCONNECTED[3:0]), - .m_axi_wready(m_axi_wready), - .m_axi_wstrb(m_axi_wstrb), - .m_axi_wuser(NLW_inst_m_axi_wuser_UNCONNECTED[3:0]), - .m_axi_wvalid({NLW_inst_m_axi_wvalid_UNCONNECTED[3],\^m_axi_wvalid }), - .s_axi_araddr(s_axi_araddr), - .s_axi_arburst({1'b0,1'b0}), - .s_axi_arcache({1'b0,1'b0,1'b0,1'b0}), - .s_axi_arid(1'b0), - .s_axi_arlen({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .s_axi_arlock(1'b0), - .s_axi_arprot(s_axi_arprot), - .s_axi_arqos({1'b0,1'b0,1'b0,1'b0}), - .s_axi_arready(s_axi_arready), - .s_axi_arsize({1'b0,1'b0,1'b0}), - .s_axi_aruser(1'b0), - .s_axi_arvalid(s_axi_arvalid), - .s_axi_awaddr(s_axi_awaddr), - .s_axi_awburst({1'b0,1'b0}), - .s_axi_awcache({1'b0,1'b0,1'b0,1'b0}), - .s_axi_awid(1'b0), - .s_axi_awlen({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), - .s_axi_awlock(1'b0), - .s_axi_awprot(s_axi_awprot), - .s_axi_awqos({1'b0,1'b0,1'b0,1'b0}), - .s_axi_awready(s_axi_awready), - .s_axi_awsize({1'b0,1'b0,1'b0}), - .s_axi_awuser(1'b0), - .s_axi_awvalid(s_axi_awvalid), - .s_axi_bid(NLW_inst_s_axi_bid_UNCONNECTED[0]), - .s_axi_bready(s_axi_bready), - .s_axi_bresp(s_axi_bresp), - .s_axi_buser(NLW_inst_s_axi_buser_UNCONNECTED[0]), - .s_axi_bvalid(s_axi_bvalid), - .s_axi_rdata(s_axi_rdata), - .s_axi_rid(NLW_inst_s_axi_rid_UNCONNECTED[0]), - .s_axi_rlast(NLW_inst_s_axi_rlast_UNCONNECTED[0]), - .s_axi_rready(s_axi_rready), - .s_axi_rresp(s_axi_rresp), - .s_axi_ruser(NLW_inst_s_axi_ruser_UNCONNECTED[0]), - .s_axi_rvalid(s_axi_rvalid), - .s_axi_wdata(s_axi_wdata), - .s_axi_wid(1'b0), - .s_axi_wlast(1'b1), - .s_axi_wready(s_axi_wready), - .s_axi_wstrb(s_axi_wstrb), - .s_axi_wuser(1'b0), - .s_axi_wvalid(s_axi_wvalid)); -endmodule - -(* ORIG_REF_NAME = "axi_crossbar_v2_1_33_addr_arbiter_sasd" *) module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd - (p_0_in1_in, - m_valid_i, + (m_valid_i, SR, aa_grant_rnw, - aresetn_d_reg, - D, - aresetn_d_reg_0, - aresetn_d_reg_1, - \gen_no_arbiter.m_amesg_i_reg[19]_0 , - Q, - m_ready_d0, - s_axi_wready, - m_axi_wvalid, - s_axi_wvalid_0_sp_1, - m_axi_awvalid, s_axi_bvalid, + s_axi_wready, m_axi_bready, - s_axi_bready_0_sp_1, + m_axi_awvalid, \gen_no_arbiter.grant_rnw_reg_0 , + m_axi_wvalid, + \gen_no_arbiter.m_valid_i_reg_0 , \aresetn_d_reg[0] , - \aresetn_d_reg[1] , E, + \aresetn_d_reg[1] , + m_ready_d0, m_axi_arvalid, - m_ready_d0_0, - \m_ready_d_reg[1] , - \gen_no_arbiter.grant_rnw_reg_1 , + mi_arvalid_en, s_axi_awready, s_axi_arready, - \gen_axilite.s_axi_awready_i_reg , - \m_ready_d_reg[2] , + s_axi_rvalid, + D, + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 , + \gen_no_arbiter.m_amesg_i_reg[48]_0 , + \m_atarget_hot_reg[5] , + \gen_axilite.s_axi_bvalid_i_reg , aclk, - aresetn_d, + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 , + m_ready_d0_0, s_axi_awvalid, s_axi_arvalid, - \gen_no_arbiter.m_valid_i_reg_0 , + aresetn_d, m_ready_d, - s_axi_wready_0_sp_1, - \gen_axilite.s_axi_bvalid_i_reg , - s_axi_wvalid, - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0 , - s_axi_bvalid_0_sp_1, + f_mux_return__3, + f_mux_return__1, + Q, s_axi_bready, - \m_ready_d[2]_i_3 , - \m_ready_d[2]_i_3_0 , + \gen_no_arbiter.m_valid_i_reg_1 , + \gen_no_arbiter.m_valid_i_reg_2 , + \gen_no_arbiter.m_valid_i_reg_3 , + s_axi_wvalid, m_valid_i_reg, - aa_rready, - m_ready_d_1, m_valid_i_reg_0, m_valid_i_reg_1, + m_valid_i_reg_2, + aa_rready, + m_ready_d_1, s_axi_rready, sr_rvalid, + \m_ready_d_reg[1] , \m_ready_d_reg[1]_0 , \m_ready_d_reg[1]_1 , - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1 , - m_axi_wready, - m_atarget_enc, + \m_ready_d_reg[1]_2 , s_axi_arprot, s_axi_awprot, s_axi_araddr, s_axi_awaddr, mi_wready, mi_bvalid); - output p_0_in1_in; output m_valid_i; output [0:0]SR; output aa_grant_rnw; - output aresetn_d_reg; - output [3:0]D; - output aresetn_d_reg_0; - output aresetn_d_reg_1; - output [0:0]\gen_no_arbiter.m_amesg_i_reg[19]_0 ; - output [34:0]Q; - output [0:0]m_ready_d0; - output [0:0]s_axi_wready; - output [2:0]m_axi_wvalid; - output s_axi_wvalid_0_sp_1; - output [2:0]m_axi_awvalid; output [0:0]s_axi_bvalid; - output [2:0]m_axi_bready; - output s_axi_bready_0_sp_1; - output \gen_no_arbiter.grant_rnw_reg_0 ; + output [0:0]s_axi_wready; + output [4:0]m_axi_bready; + output [4:0]m_axi_awvalid; + output [0:0]\gen_no_arbiter.grant_rnw_reg_0 ; + output [4:0]m_axi_wvalid; + output \gen_no_arbiter.m_valid_i_reg_0 ; output \aresetn_d_reg[0] ; - output \aresetn_d_reg[1] ; output [0:0]E; - output [2:0]m_axi_arvalid; - output [0:0]m_ready_d0_0; - output \m_ready_d_reg[1] ; - output \gen_no_arbiter.grant_rnw_reg_1 ; + output \aresetn_d_reg[1] ; + output [1:0]m_ready_d0; + output [4:0]m_axi_arvalid; + output mi_arvalid_en; output [0:0]s_axi_awready; output [0:0]s_axi_arready; - output \gen_axilite.s_axi_awready_i_reg ; - output \m_ready_d_reg[2] ; + output [0:0]s_axi_rvalid; + output [2:0]D; + output [5:0]\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 ; + output [34:0]\gen_no_arbiter.m_amesg_i_reg[48]_0 ; + output \m_atarget_hot_reg[5] ; + output \gen_axilite.s_axi_bvalid_i_reg ; input aclk; - input aresetn_d; + input \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ; + input [1:0]m_ready_d0_0; input [0:0]s_axi_awvalid; input [0:0]s_axi_arvalid; - input \gen_no_arbiter.m_valid_i_reg_0 ; + input aresetn_d; input [2:0]m_ready_d; - input s_axi_wready_0_sp_1; - input [3:0]\gen_axilite.s_axi_bvalid_i_reg ; - input [0:0]s_axi_wvalid; - input \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0 ; - input s_axi_bvalid_0_sp_1; + input f_mux_return__3; + input f_mux_return__1; + input [5:0]Q; input [0:0]s_axi_bready; - input \m_ready_d[2]_i_3 ; - input \m_ready_d[2]_i_3_0 ; + input \gen_no_arbiter.m_valid_i_reg_1 ; + input \gen_no_arbiter.m_valid_i_reg_2 ; + input \gen_no_arbiter.m_valid_i_reg_3 ; + input [0:0]s_axi_wvalid; input [1:0]m_valid_i_reg; - input aa_rready; - input [1:0]m_ready_d_1; input m_valid_i_reg_0; input m_valid_i_reg_1; + input m_valid_i_reg_2; + input aa_rready; + input [1:0]m_ready_d_1; input [0:0]s_axi_rready; input sr_rvalid; + input [0:0]\m_ready_d_reg[1] ; input \m_ready_d_reg[1]_0 ; input \m_ready_d_reg[1]_1 ; - input \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1 ; - input [1:0]m_axi_wready; - input [2:0]m_atarget_enc; + input \m_ready_d_reg[1]_2 ; input [2:0]s_axi_arprot; input [2:0]s_axi_awprot; input [31:0]s_axi_araddr; @@ -451,68 +129,78 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd input [0:0]mi_wready; input [0:0]mi_bvalid; - wire [3:0]D; + wire [2:0]D; wire [0:0]E; - wire [34:0]Q; + wire [5:0]Q; wire [0:0]SR; wire aa_grant_rnw; wire aa_rready; wire aclk; wire aresetn_d; - wire aresetn_d_reg; wire \aresetn_d_reg[0] ; wire \aresetn_d_reg[1] ; - wire aresetn_d_reg_0; - wire aresetn_d_reg_1; - wire \gen_axilite.s_axi_awready_i_reg ; - wire \gen_axilite.s_axi_bvalid_i_i_2_n_0 ; - wire [3:0]\gen_axilite.s_axi_bvalid_i_reg ; + wire f_mux_return__1; + wire f_mux_return__3; + wire \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0 ; + wire \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1 ; + wire \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2 ; + wire \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3 ; + wire \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 ; + wire \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2 ; + wire \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3 ; + wire \gen_axilite.s_axi_bvalid_i_reg ; wire \gen_no_arbiter.grant_rnw_i_1_n_0 ; - wire \gen_no_arbiter.grant_rnw_reg_0 ; - wire \gen_no_arbiter.grant_rnw_reg_1 ; - wire [0:0]\gen_no_arbiter.m_amesg_i_reg[19]_0 ; + wire [0:0]\gen_no_arbiter.grant_rnw_reg_0 ; + wire [34:0]\gen_no_arbiter.m_amesg_i_reg[48]_0 ; wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_1_n_0 ; - wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0 ; - wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1 ; wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0 ; - wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_3_n_0 ; wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0 ; + wire [5:0]\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 ; + wire \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ; wire \gen_no_arbiter.m_valid_i_i_1_n_0 ; wire \gen_no_arbiter.m_valid_i_reg_0 ; + wire \gen_no_arbiter.m_valid_i_reg_1 ; + wire \gen_no_arbiter.m_valid_i_reg_2 ; + wire \gen_no_arbiter.m_valid_i_reg_3 ; wire \gen_no_arbiter.s_ready_i[0]_i_1_n_0 ; - wire [2:0]m_atarget_enc; - wire \m_atarget_hot[4]_i_10_n_0 ; - wire \m_atarget_hot[4]_i_2_n_0 ; - wire \m_atarget_hot[4]_i_5_n_0 ; - wire \m_atarget_hot[4]_i_6_n_0 ; - wire \m_atarget_hot[4]_i_7_n_0 ; - wire \m_atarget_hot[4]_i_8_n_0 ; - wire \m_atarget_hot[4]_i_9_n_0 ; - wire [2:0]m_axi_arvalid; - wire [2:0]m_axi_awvalid; - wire [2:0]m_axi_bready; - wire [1:0]m_axi_wready; - wire [2:0]m_axi_wvalid; + wire \m_atarget_hot[2]_i_3_n_0 ; + wire \m_atarget_hot[3]_i_3_n_0 ; + wire \m_atarget_hot[5]_i_12_n_0 ; + wire \m_atarget_hot[5]_i_13_n_0 ; + wire \m_atarget_hot[5]_i_14_n_0 ; + wire \m_atarget_hot[5]_i_15_n_0 ; + wire \m_atarget_hot[5]_i_16_n_0 ; + wire \m_atarget_hot[5]_i_2_n_0 ; + wire \m_atarget_hot[5]_i_6_n_0 ; + wire \m_atarget_hot[5]_i_8_n_0 ; + wire \m_atarget_hot[5]_i_9_n_0 ; + wire \m_atarget_hot_reg[5] ; + wire [4:0]m_axi_arvalid; + wire [4:0]m_axi_awvalid; + wire [4:0]m_axi_bready; + wire [4:0]m_axi_wvalid; wire [2:0]m_ready_d; - wire [0:0]m_ready_d0; - wire [0:0]m_ready_d0_0; - wire \m_ready_d[0]_i_4_n_0 ; - wire \m_ready_d[2]_i_3 ; - wire \m_ready_d[2]_i_3_0 ; + wire [1:0]m_ready_d0; + wire [1:0]m_ready_d0_0; wire [1:0]m_ready_d_1; - wire \m_ready_d_reg[1] ; + wire [0:0]\m_ready_d_reg[1] ; wire \m_ready_d_reg[1]_0 ; wire \m_ready_d_reg[1]_1 ; - wire \m_ready_d_reg[2] ; + wire \m_ready_d_reg[1]_2 ; wire m_valid_i; wire m_valid_i_i_2_n_0; - wire m_valid_i_i_3_n_0; wire [1:0]m_valid_i_reg; wire m_valid_i_reg_0; wire m_valid_i_reg_1; + wire m_valid_i_reg_2; + wire mi_arvalid_en; + wire mi_awvalid_en; wire [0:0]mi_bvalid; wire [0:0]mi_wready; wire p_0_in1_in; + wire p_3_in; + wire p_4_in; + wire r_transfer_en; wire [48:1]s_amesg; wire \s_arvalid_reg[0]_i_1_n_0 ; wire \s_arvalid_reg_reg_n_0_[0] ; @@ -527,73 +215,76 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd wire [0:0]s_axi_awready; wire [0:0]s_axi_awvalid; wire [0:0]s_axi_bready; - wire s_axi_bready_0_sn_1; wire [0:0]s_axi_bvalid; - wire s_axi_bvalid_0_sn_1; wire [0:0]s_axi_rready; + wire [0:0]s_axi_rvalid; wire [0:0]s_axi_wready; - wire s_axi_wready_0_sn_1; wire [0:0]s_axi_wvalid; - wire s_axi_wvalid_0_sn_1; wire s_ready_i; wire sr_rvalid; - wire [1:0]target_mi_enc; + wire [2:2]target_mi_enc; - assign s_axi_bready_0_sp_1 = s_axi_bready_0_sn_1; - assign s_axi_bvalid_0_sn_1 = s_axi_bvalid_0_sp_1; - assign s_axi_wready_0_sn_1 = s_axi_wready_0_sp_1; - assign s_axi_wvalid_0_sp_1 = s_axi_wvalid_0_sn_1; - LUT6 #( - .INIT(64'hFFEFFFFF00100000)) + LUT5 #( + .INIT(32'hDFFF2000)) \gen_axilite.s_axi_awready_i_i_1 - (.I0(\gen_no_arbiter.grant_rnw_reg_0 ), - .I1(m_ready_d[2]), - .I2(\gen_axilite.s_axi_bvalid_i_reg [3]), - .I3(mi_bvalid), - .I4(s_axi_wvalid_0_sn_1), - .I5(mi_wready), - .O(\m_ready_d_reg[2] )); - (* SOFT_HLUTNM = "soft_lutpair2" *) - LUT2 #( - .INIT(4'hB)) - \gen_axilite.s_axi_awready_i_i_2 - (.I0(aa_grant_rnw), - .I1(m_valid_i), - .O(\gen_no_arbiter.grant_rnw_reg_0 )); + (.I0(p_4_in), + .I1(mi_bvalid), + .I2(Q[5]), + .I3(mi_awvalid_en), + .I4(mi_wready), + .O(\gen_axilite.s_axi_bvalid_i_reg )); LUT6 #( - .INIT(64'h0008FF00FF08FF00)) + .INIT(64'h5F5FC0005F5F0000)) \gen_axilite.s_axi_bvalid_i_i_1 - (.I0(mi_wready), - .I1(s_axi_wvalid_0_sn_1), - .I2(\gen_axilite.s_axi_bvalid_i_i_2_n_0 ), - .I3(mi_bvalid), - .I4(\gen_axilite.s_axi_bvalid_i_reg [3]), - .I5(s_axi_bready_0_sn_1), - .O(\gen_axilite.s_axi_awready_i_reg )); - (* SOFT_HLUTNM = "soft_lutpair11" *) - LUT3 #( - .INIT(8'hFB)) + (.I0(p_3_in), + .I1(p_4_in), + .I2(Q[5]), + .I3(mi_wready), + .I4(mi_bvalid), + .I5(mi_awvalid_en), + .O(\m_atarget_hot_reg[5] )); + (* SOFT_HLUTNM = "soft_lutpair5" *) + LUT4 #( + .INIT(16'h0400)) \gen_axilite.s_axi_bvalid_i_i_2 - (.I0(m_ready_d[2]), - .I1(m_valid_i), + (.I0(m_ready_d[0]), + .I1(s_axi_bready), .I2(aa_grant_rnw), - .O(\gen_axilite.s_axi_bvalid_i_i_2_n_0 )); - (* SOFT_HLUTNM = "soft_lutpair1" *) + .I3(m_valid_i), + .O(p_3_in)); + (* SOFT_HLUTNM = "soft_lutpair6" *) + LUT4 #( + .INIT(16'h0400)) + \gen_axilite.s_axi_bvalid_i_i_3 + (.I0(m_ready_d[1]), + .I1(s_axi_wvalid), + .I2(aa_grant_rnw), + .I3(m_valid_i), + .O(p_4_in)); + (* SOFT_HLUTNM = "soft_lutpair9" *) LUT3 #( - .INIT(8'h40)) + .INIT(8'h04)) + \gen_axilite.s_axi_bvalid_i_i_4 + (.I0(aa_grant_rnw), + .I1(m_valid_i), + .I2(m_ready_d[2]), + .O(mi_awvalid_en)); + (* SOFT_HLUTNM = "soft_lutpair12" *) + LUT3 #( + .INIT(8'h08)) \gen_axilite.s_axi_rvalid_i_i_2 - (.I0(m_ready_d_1[1]), + (.I0(aa_grant_rnw), .I1(m_valid_i), - .I2(aa_grant_rnw), - .O(\m_ready_d_reg[1] )); + .I2(m_ready_d_1[1]), + .O(mi_arvalid_en)); LUT6 #( - .INIT(64'hFFFF53FF00005000)) + .INIT(64'hDFCFDFFF10001000)) \gen_no_arbiter.grant_rnw_i_1 (.I0(s_awvalid_reg), - .I1(s_axi_awvalid), - .I2(s_axi_arvalid), - .I3(p_0_in1_in), - .I4(m_valid_i), + .I1(m_valid_i), + .I2(p_0_in1_in), + .I3(s_axi_arvalid), + .I4(s_axi_awvalid), .I5(aa_grant_rnw), .O(\gen_no_arbiter.grant_rnw_i_1_n_0 )); FDRE \gen_no_arbiter.grant_rnw_reg @@ -891,250 +582,241 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[10]), - .Q(Q[9]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [9]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[11] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[11]), - .Q(Q[10]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [10]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[12] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[12]), - .Q(Q[11]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [11]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[13] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[13]), - .Q(Q[12]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [12]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[14] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[14]), - .Q(Q[13]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [13]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[15] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[15]), - .Q(Q[14]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [14]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[16] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[16]), - .Q(Q[15]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [15]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[17] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[17]), - .Q(Q[16]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [16]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[18] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[18]), - .Q(Q[17]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [17]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[19] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[19]), - .Q(Q[18]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [18]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[1] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[1]), - .Q(Q[0]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [0]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[20] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[20]), - .Q(Q[19]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [19]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[21] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[21]), - .Q(Q[20]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [20]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[22] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[22]), - .Q(Q[21]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[23] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[23]), - .Q(Q[22]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[24] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[24]), - .Q(Q[23]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[25] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[25]), - .Q(Q[24]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[26] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[26]), - .Q(Q[25]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [25]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[27] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[27]), - .Q(Q[26]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [26]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[28] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[28]), - .Q(Q[27]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [27]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[29] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[29]), - .Q(Q[28]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [28]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[2] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[2]), - .Q(Q[1]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [1]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[30] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[30]), - .Q(Q[29]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [29]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[31] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[31]), - .Q(Q[30]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [30]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[32] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[32]), - .Q(Q[31]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [31]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[3] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[3]), - .Q(Q[2]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [2]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[46] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[46]), - .Q(Q[32]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [32]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[47] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[47]), - .Q(Q[33]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [33]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[48] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[48]), - .Q(Q[34]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [34]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[4] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[4]), - .Q(Q[3]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [3]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[5] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[5]), - .Q(Q[4]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [4]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[6] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[6]), - .Q(Q[5]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [5]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[7] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[7]), - .Q(Q[6]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [6]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[8] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[8]), - .Q(Q[7]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [7]), .R(SR)); FDRE \gen_no_arbiter.m_amesg_i_reg[9] (.C(aclk), .CE(p_0_in1_in), .D(s_amesg[9]), - .Q(Q[8]), + .Q(\gen_no_arbiter.m_amesg_i_reg[48]_0 [8]), .R(SR)); LUT6 #( - .INIT(64'hFF555755FFFFFFFF)) + .INIT(64'hDDD5D5D5D5D5D5D5)) \gen_no_arbiter.m_grant_hot_i[0]_inv_i_1 (.I0(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0 ), - .I1(s_axi_awvalid), - .I2(s_axi_arvalid), - .I3(p_0_in1_in), - .I4(m_valid_i), - .I5(aresetn_d), + .I1(m_valid_i), + .I2(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ), + .I3(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0 ), + .I4(m_ready_d0_0[0]), + .I5(m_ready_d0_0[1]), .O(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_1_n_0 )); - LUT6 #( - .INIT(64'h00EFFFFFFFEFFFFF)) + (* SOFT_HLUTNM = "soft_lutpair3" *) + LUT5 #( + .INIT(32'h0FEF0000)) \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2 - (.I0(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_3_n_0 ), - .I1(\gen_no_arbiter.m_valid_i_reg_0 ), - .I2(m_ready_d0), - .I3(aa_grant_rnw), - .I4(m_valid_i), - .I5(\m_ready_d[0]_i_4_n_0 ), + (.I0(s_axi_awvalid), + .I1(s_axi_arvalid), + .I2(p_0_in1_in), + .I3(m_valid_i), + .I4(aresetn_d), .O(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0 )); LUT6 #( - .INIT(64'h00000000FF2FFFFF)) - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_3 - (.I0(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0 ), - .I1(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0 ), - .I2(s_axi_wvalid), - .I3(aa_grant_rnw), - .I4(m_valid_i), - .I5(m_ready_d[1]), - .O(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_3_n_0 )); - LUT5 #( - .INIT(32'hF3F7FFF7)) + .INIT(64'h00000000FFFEAAAA)) \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4 - (.I0(m_axi_wready[0]), - .I1(m_atarget_enc[1]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[0]), - .I4(m_axi_wready[1]), + (.I0(m_ready_d[2]), + .I1(\gen_no_arbiter.m_valid_i_reg_1 ), + .I2(\gen_no_arbiter.m_valid_i_reg_2 ), + .I3(\gen_no_arbiter.m_valid_i_reg_3 ), + .I4(m_valid_i), + .I5(aa_grant_rnw), .O(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0 )); (* inverted = "yes" *) FDRE #( @@ -1145,13 +827,15 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd .D(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_1_n_0 ), .Q(p_0_in1_in), .R(1'b0)); - (* SOFT_HLUTNM = "soft_lutpair11" *) - LUT3 #( - .INIT(8'hB1)) + LUT6 #( + .INIT(64'h111D1D1D1D1D1D1D)) \gen_no_arbiter.m_valid_i_i_1 - (.I0(m_valid_i), - .I1(p_0_in1_in), - .I2(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0 ), + (.I0(p_0_in1_in), + .I1(m_valid_i), + .I2(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ), + .I3(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0 ), + .I4(m_ready_d0_0[0]), + .I5(m_ready_d0_0[1]), .O(\gen_no_arbiter.m_valid_i_i_1_n_0 )); FDRE #( .INIT(1'b0)) @@ -1161,7 +845,7 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd .D(\gen_no_arbiter.m_valid_i_i_1_n_0 ), .Q(m_valid_i), .R(SR)); - (* SOFT_HLUTNM = "soft_lutpair13" *) + (* SOFT_HLUTNM = "soft_lutpair3" *) LUT3 #( .INIT(8'h10)) \gen_no_arbiter.s_ready_i[0]_i_1 @@ -1177,352 +861,501 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd .D(\gen_no_arbiter.s_ready_i[0]_i_1_n_0 ), .Q(s_ready_i), .R(1'b0)); - LUT2 #( - .INIT(4'h8)) + LUT6 #( + .INIT(64'hAAAAAAAAAA00AA02)) \m_atarget_enc[0]_i_1 - (.I0(target_mi_enc[0]), - .I1(aresetn_d), - .O(aresetn_d_reg_0)); - (* SOFT_HLUTNM = "soft_lutpair14" *) + (.I0(aresetn_d), + .I1(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0 ), + .I2(target_mi_enc), + .I3(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1 ), + .I4(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2 ), + .I5(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3 ), + .O(D[0])); + (* SOFT_HLUTNM = "soft_lutpair1" *) LUT2 #( .INIT(4'h8)) \m_atarget_enc[1]_i_1 - (.I0(target_mi_enc[1]), - .I1(aresetn_d), - .O(aresetn_d_reg_1)); - (* SOFT_HLUTNM = "soft_lutpair6" *) - LUT3 #( - .INIT(8'h02)) + (.I0(aresetn_d), + .I1(\m_atarget_hot[5]_i_2_n_0 ), + .O(D[1])); + (* SOFT_HLUTNM = "soft_lutpair1" *) + LUT5 #( + .INIT(32'hCCCD0000)) \m_atarget_enc[2]_i_1 - (.I0(\m_atarget_hot[4]_i_2_n_0 ), - .I1(target_mi_enc[1]), - .I2(target_mi_enc[0]), - .O(\gen_no_arbiter.m_amesg_i_reg[19]_0 )); + (.I0(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0 ), + .I1(target_mi_enc), + .I2(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1 ), + .I3(\m_atarget_hot[5]_i_2_n_0 ), + .I4(aresetn_d), + .O(D[2])); + (* SOFT_HLUTNM = "soft_lutpair17" *) LUT2 #( - .INIT(4'h1)) + .INIT(4'h2)) \m_atarget_hot[0]_i_1 + (.I0(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0 ), + .I1(p_0_in1_in), + .O(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 [0])); + (* SOFT_HLUTNM = "soft_lutpair2" *) + LUT2 #( + .INIT(4'h4)) + \m_atarget_hot[1]_i_1 (.I0(p_0_in1_in), - .I1(\m_atarget_hot[4]_i_2_n_0 ), - .O(D[0])); - (* SOFT_HLUTNM = "soft_lutpair13" *) + .I1(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1 ), + .O(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 [1])); + (* SOFT_HLUTNM = "soft_lutpair17" *) + LUT2 #( + .INIT(4'h4)) + \m_atarget_hot[2]_i_1 + (.I0(p_0_in1_in), + .I1(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2 ), + .O(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 [2])); + LUT6 #( + .INIT(64'h8000000000000000)) + \m_atarget_hot[2]_i_2 + (.I0(\m_atarget_hot[5]_i_9_n_0 ), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), + .I3(\m_atarget_hot[2]_i_3_n_0 ), + .I4(\m_atarget_hot[5]_i_15_n_0 ), + .I5(\gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 ), + .O(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2 )); + (* SOFT_HLUTNM = "soft_lutpair7" *) LUT2 #( .INIT(4'h2)) - \m_atarget_hot[1]_i_1 - (.I0(target_mi_enc[0]), - .I1(p_0_in1_in), - .O(D[1])); - (* SOFT_HLUTNM = "soft_lutpair14" *) + \m_atarget_hot[2]_i_3 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), + .O(\m_atarget_hot[2]_i_3_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair16" *) + LUT2 #( + .INIT(4'h4)) + \m_atarget_hot[3]_i_1 + (.I0(p_0_in1_in), + .I1(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3 ), + .O(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 [3])); + LUT6 #( + .INIT(64'h0080000000000000)) + \m_atarget_hot[3]_i_2 + (.I0(\m_atarget_hot[5]_i_9_n_0 ), + .I1(\m_atarget_hot[3]_i_3_n_0 ), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), + .I4(\m_atarget_hot[5]_i_15_n_0 ), + .I5(\gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 ), + .O(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3 )); LUT2 #( .INIT(4'h2)) - \m_atarget_hot[2]_i_1 - (.I0(target_mi_enc[1]), - .I1(p_0_in1_in), - .O(D[2])); - (* SOFT_HLUTNM = "soft_lutpair6" *) - LUT4 #( - .INIT(16'h0002)) + \m_atarget_hot[3]_i_3 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), + .O(\m_atarget_hot[3]_i_3_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair16" *) + LUT2 #( + .INIT(4'h4)) \m_atarget_hot[4]_i_1 - (.I0(\m_atarget_hot[4]_i_2_n_0 ), - .I1(target_mi_enc[1]), - .I2(target_mi_enc[0]), - .I3(p_0_in1_in), - .O(D[3])); - LUT6 #( - .INIT(64'hFFFFFFFFFFFFFFFE)) - \m_atarget_hot[4]_i_10 - (.I0(Q[22]), - .I1(Q[23]), - .I2(Q[25]), - .I3(Q[24]), - .I4(Q[21]), - .I5(Q[20]), - .O(\m_atarget_hot[4]_i_10_n_0 )); + (.I0(p_0_in1_in), + .I1(target_mi_enc), + .O(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 [4])); + (* SOFT_HLUTNM = "soft_lutpair2" *) + LUT5 #( + .INIT(32'h00000001)) + \m_atarget_hot[5]_i_1 + (.I0(p_0_in1_in), + .I1(\m_atarget_hot[5]_i_2_n_0 ), + .I2(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1 ), + .I3(target_mi_enc), + .I4(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0 ), + .O(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 [5])); + LUT6 #( + .INIT(64'h0000000000000001)) + \m_atarget_hot[5]_i_10 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), + .I4(\gen_no_arbiter.m_amesg_i_reg[48]_0 [20]), + .I5(\gen_no_arbiter.m_amesg_i_reg[48]_0 [25]), + .O(\gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3 )); + LUT6 #( + .INIT(64'h0000000000000001)) + \m_atarget_hot[5]_i_11 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [15]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [14]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [18]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [19]), + .I4(\gen_no_arbiter.m_amesg_i_reg[48]_0 [16]), + .I5(\gen_no_arbiter.m_amesg_i_reg[48]_0 [17]), + .O(\gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2 )); + LUT6 #( + .INIT(64'h0000000100000000)) + \m_atarget_hot[5]_i_12 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [26]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [27]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [28]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [29]), + .I4(\gen_no_arbiter.m_amesg_i_reg[48]_0 [30]), + .I5(\gen_no_arbiter.m_amesg_i_reg[48]_0 [31]), + .O(\m_atarget_hot[5]_i_12_n_0 )); + LUT3 #( + .INIT(8'h01)) + \m_atarget_hot[5]_i_13 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [9]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [8]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [7]), + .O(\m_atarget_hot[5]_i_13_n_0 )); LUT4 #( - .INIT(16'hFEFF)) - \m_atarget_hot[4]_i_2 - (.I0(\m_atarget_hot[4]_i_5_n_0 ), - .I1(\m_atarget_hot[4]_i_6_n_0 ), - .I2(\m_atarget_hot[4]_i_7_n_0 ), - .I3(\m_atarget_hot[4]_i_8_n_0 ), - .O(\m_atarget_hot[4]_i_2_n_0 )); - LUT6 #( - .INIT(64'h0000000000000002)) - \m_atarget_hot[4]_i_3 - (.I0(\m_atarget_hot[4]_i_8_n_0 ), - .I1(\m_atarget_hot[4]_i_9_n_0 ), - .I2(Q[18]), - .I3(Q[17]), - .I4(Q[19]), - .I5(Q[16]), - .O(target_mi_enc[1])); - LUT6 #( - .INIT(64'h0000000000000002)) - \m_atarget_hot[4]_i_4 - (.I0(\m_atarget_hot[4]_i_8_n_0 ), - .I1(\m_atarget_hot[4]_i_10_n_0 ), - .I2(Q[18]), - .I3(Q[17]), - .I4(Q[19]), - .I5(Q[16]), - .O(target_mi_enc[0])); + .INIT(16'h0001)) + \m_atarget_hot[5]_i_14 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [13]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [12]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [11]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [10]), + .O(\m_atarget_hot[5]_i_14_n_0 )); + LUT2 #( + .INIT(4'h1)) + \m_atarget_hot[5]_i_15 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [25]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [20]), + .O(\m_atarget_hot[5]_i_15_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair7" *) LUT4 #( - .INIT(16'hFFFE)) - \m_atarget_hot[4]_i_5 - (.I0(Q[18]), - .I1(Q[17]), - .I2(Q[19]), - .I3(Q[16]), - .O(\m_atarget_hot[4]_i_5_n_0 )); + .INIT(16'h0100)) + \m_atarget_hot[5]_i_16 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [13]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [12]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), + .O(\m_atarget_hot[5]_i_16_n_0 )); LUT4 #( - .INIT(16'hFFEF)) - \m_atarget_hot[4]_i_6 - (.I0(Q[13]), - .I1(Q[15]), - .I2(Q[22]), - .I3(Q[14]), - .O(\m_atarget_hot[4]_i_6_n_0 )); - LUT6 #( - .INIT(64'hFFFFFFFFFFFFFFFD)) - \m_atarget_hot[4]_i_7 - (.I0(Q[24]), - .I1(Q[25]), - .I2(Q[23]), - .I3(Q[12]), - .I4(Q[21]), - .I5(Q[20]), - .O(\m_atarget_hot[4]_i_7_n_0 )); + .INIT(16'hC800)) + \m_atarget_hot[5]_i_2 + (.I0(\m_atarget_hot[5]_i_6_n_0 ), + .I1(\gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 ), + .I2(\m_atarget_hot[5]_i_8_n_0 ), + .I3(\m_atarget_hot[5]_i_9_n_0 ), + .O(\m_atarget_hot[5]_i_2_n_0 )); + LUT6 #( + .INIT(64'h0001000000000000)) + \m_atarget_hot[5]_i_3 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [17]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [16]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [19]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [18]), + .I4(\gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3 ), + .I5(\gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 ), + .O(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1 )); + LUT5 #( + .INIT(32'h80000000)) + \m_atarget_hot[5]_i_4 + (.I0(\gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3 ), + .I1(\gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2 ), + .I2(\m_atarget_hot[5]_i_12_n_0 ), + .I3(\m_atarget_hot[5]_i_13_n_0 ), + .I4(\m_atarget_hot[5]_i_14_n_0 ), + .O(target_mi_enc)); + LUT6 #( + .INIT(64'h0800000000000000)) + \m_atarget_hot[5]_i_5 + (.I0(\gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2 ), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), + .I3(\m_atarget_hot[5]_i_15_n_0 ), + .I4(\m_atarget_hot[5]_i_16_n_0 ), + .I5(\gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 ), + .O(\gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0 )); + LUT6 #( + .INIT(64'h0000000000000020)) + \m_atarget_hot[5]_i_6 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), + .I4(\gen_no_arbiter.m_amesg_i_reg[48]_0 [20]), + .I5(\gen_no_arbiter.m_amesg_i_reg[48]_0 [25]), + .O(\m_atarget_hot[5]_i_6_n_0 )); LUT6 #( .INIT(64'h0000000100000000)) - \m_atarget_hot[4]_i_8 - (.I0(Q[27]), - .I1(Q[28]), - .I2(Q[31]), - .I3(Q[26]), - .I4(Q[29]), - .I5(Q[30]), - .O(\m_atarget_hot[4]_i_8_n_0 )); - LUT6 #( - .INIT(64'hFFFFFFFFFFFFFDFF)) - \m_atarget_hot[4]_i_9 - (.I0(Q[24]), - .I1(Q[25]), - .I2(Q[20]), - .I3(Q[21]), - .I4(Q[23]), - .I5(Q[22]), - .O(\m_atarget_hot[4]_i_9_n_0 )); - (* SOFT_HLUTNM = "soft_lutpair8" *) + \m_atarget_hot[5]_i_7 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [28]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [29]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [26]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [27]), + .I4(\gen_no_arbiter.m_amesg_i_reg[48]_0 [31]), + .I5(\gen_no_arbiter.m_amesg_i_reg[48]_0 [30]), + .O(\gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4 )); + LUT6 #( + .INIT(64'h0000000000000080)) + \m_atarget_hot[5]_i_8 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [23]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [24]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [22]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [21]), + .I4(\gen_no_arbiter.m_amesg_i_reg[48]_0 [20]), + .I5(\gen_no_arbiter.m_amesg_i_reg[48]_0 [25]), + .O(\m_atarget_hot[5]_i_8_n_0 )); + LUT4 #( + .INIT(16'h0001)) + \m_atarget_hot[5]_i_9 + (.I0(\gen_no_arbiter.m_amesg_i_reg[48]_0 [17]), + .I1(\gen_no_arbiter.m_amesg_i_reg[48]_0 [16]), + .I2(\gen_no_arbiter.m_amesg_i_reg[48]_0 [19]), + .I3(\gen_no_arbiter.m_amesg_i_reg[48]_0 [18]), + .O(\m_atarget_hot[5]_i_9_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair12" *) LUT4 #( - .INIT(16'h0080)) + .INIT(16'h2000)) \m_axi_arvalid[0]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [0]), - .I1(aa_grant_rnw), + (.I0(Q[0]), + .I1(m_ready_d_1[1]), .I2(m_valid_i), - .I3(m_ready_d_1[1]), + .I3(aa_grant_rnw), .O(m_axi_arvalid[0])); - (* SOFT_HLUTNM = "soft_lutpair9" *) + (* SOFT_HLUTNM = "soft_lutpair13" *) LUT4 #( - .INIT(16'h0080)) + .INIT(16'h2000)) \m_axi_arvalid[1]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [1]), - .I1(aa_grant_rnw), + (.I0(Q[1]), + .I1(m_ready_d_1[1]), .I2(m_valid_i), - .I3(m_ready_d_1[1]), + .I3(aa_grant_rnw), .O(m_axi_arvalid[1])); - (* SOFT_HLUTNM = "soft_lutpair10" *) + (* SOFT_HLUTNM = "soft_lutpair13" *) LUT4 #( - .INIT(16'h0080)) + .INIT(16'h2000)) \m_axi_arvalid[2]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [2]), - .I1(aa_grant_rnw), + (.I0(Q[2]), + .I1(m_ready_d_1[1]), .I2(m_valid_i), - .I3(m_ready_d_1[1]), + .I3(aa_grant_rnw), .O(m_axi_arvalid[2])); - (* SOFT_HLUTNM = "soft_lutpair8" *) + (* SOFT_HLUTNM = "soft_lutpair14" *) + LUT4 #( + .INIT(16'h2000)) + \m_axi_arvalid[3]_INST_0 + (.I0(Q[3]), + .I1(m_ready_d_1[1]), + .I2(m_valid_i), + .I3(aa_grant_rnw), + .O(m_axi_arvalid[3])); + (* SOFT_HLUTNM = "soft_lutpair14" *) + LUT4 #( + .INIT(16'h2000)) + \m_axi_arvalid[4]_INST_0 + (.I0(Q[4]), + .I1(m_ready_d_1[1]), + .I2(m_valid_i), + .I3(aa_grant_rnw), + .O(m_axi_arvalid[4])); + (* SOFT_HLUTNM = "soft_lutpair9" *) LUT4 #( .INIT(16'h0020)) \m_axi_awvalid[0]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [0]), - .I1(aa_grant_rnw), + (.I0(Q[0]), + .I1(m_ready_d[2]), .I2(m_valid_i), - .I3(m_ready_d[2]), + .I3(aa_grant_rnw), .O(m_axi_awvalid[0])); - (* SOFT_HLUTNM = "soft_lutpair9" *) + (* SOFT_HLUTNM = "soft_lutpair10" *) LUT4 #( .INIT(16'h0020)) \m_axi_awvalid[1]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [1]), - .I1(aa_grant_rnw), + (.I0(Q[1]), + .I1(m_ready_d[2]), .I2(m_valid_i), - .I3(m_ready_d[2]), + .I3(aa_grant_rnw), .O(m_axi_awvalid[1])); (* SOFT_HLUTNM = "soft_lutpair10" *) LUT4 #( .INIT(16'h0020)) \m_axi_awvalid[2]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [2]), - .I1(aa_grant_rnw), + (.I0(Q[2]), + .I1(m_ready_d[2]), .I2(m_valid_i), - .I3(m_ready_d[2]), + .I3(aa_grant_rnw), .O(m_axi_awvalid[2])); + (* SOFT_HLUTNM = "soft_lutpair11" *) + LUT4 #( + .INIT(16'h0020)) + \m_axi_awvalid[3]_INST_0 + (.I0(Q[3]), + .I1(m_ready_d[2]), + .I2(m_valid_i), + .I3(aa_grant_rnw), + .O(m_axi_awvalid[3])); + (* SOFT_HLUTNM = "soft_lutpair11" *) + LUT4 #( + .INIT(16'h0020)) + \m_axi_awvalid[4]_INST_0 + (.I0(Q[4]), + .I1(m_ready_d[2]), + .I2(m_valid_i), + .I3(aa_grant_rnw), + .O(m_axi_awvalid[4])); (* SOFT_HLUTNM = "soft_lutpair5" *) LUT5 #( - .INIT(32'h00200000)) + .INIT(32'h00000800)) \m_axi_bready[0]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [0]), - .I1(m_ready_d[0]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_bready), + (.I0(Q[0]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_bready), + .I4(m_ready_d[0]), .O(m_axi_bready[0])); LUT5 #( - .INIT(32'h00200000)) + .INIT(32'h00000800)) \m_axi_bready[1]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [1]), - .I1(m_ready_d[0]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_bready), + (.I0(Q[1]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_bready), + .I4(m_ready_d[0]), .O(m_axi_bready[1])); LUT5 #( - .INIT(32'h00200000)) + .INIT(32'h00000800)) \m_axi_bready[2]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [2]), - .I1(m_ready_d[0]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_bready), + (.I0(Q[2]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_bready), + .I4(m_ready_d[0]), .O(m_axi_bready[2])); - (* SOFT_HLUTNM = "soft_lutpair3" *) LUT5 #( - .INIT(32'h00200000)) + .INIT(32'h00000800)) + \m_axi_bready[3]_INST_0 + (.I0(Q[3]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_bready), + .I4(m_ready_d[0]), + .O(m_axi_bready[3])); + LUT5 #( + .INIT(32'h00000800)) + \m_axi_bready[4]_INST_0 + (.I0(Q[4]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_bready), + .I4(m_ready_d[0]), + .O(m_axi_bready[4])); + (* SOFT_HLUTNM = "soft_lutpair6" *) + LUT5 #( + .INIT(32'h00000800)) \m_axi_wvalid[0]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [0]), - .I1(m_ready_d[1]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_wvalid), + (.I0(Q[0]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_wvalid), + .I4(m_ready_d[1]), .O(m_axi_wvalid[0])); - (* SOFT_HLUTNM = "soft_lutpair4" *) LUT5 #( - .INIT(32'h00200000)) + .INIT(32'h00000800)) \m_axi_wvalid[1]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [1]), - .I1(m_ready_d[1]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_wvalid), + (.I0(Q[1]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_wvalid), + .I4(m_ready_d[1]), .O(m_axi_wvalid[1])); LUT5 #( - .INIT(32'h00200000)) + .INIT(32'h00000800)) \m_axi_wvalid[2]_INST_0 - (.I0(\gen_axilite.s_axi_bvalid_i_reg [2]), - .I1(m_ready_d[1]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_wvalid), + (.I0(Q[2]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_wvalid), + .I4(m_ready_d[1]), .O(m_axi_wvalid[2])); + LUT5 #( + .INIT(32'h00000800)) + \m_axi_wvalid[3]_INST_0 + (.I0(Q[3]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_wvalid), + .I4(m_ready_d[1]), + .O(m_axi_wvalid[3])); + LUT5 #( + .INIT(32'h00000800)) + \m_axi_wvalid[4]_INST_0 + (.I0(Q[4]), + .I1(m_valid_i), + .I2(aa_grant_rnw), + .I3(s_axi_wvalid), + .I4(m_ready_d[1]), + .O(m_axi_wvalid[4])); (* SOFT_HLUTNM = "soft_lutpair0" *) LUT5 #( - .INIT(32'h0080FFFF)) + .INIT(32'h0800FFFF)) \m_payload_i[34]_i_1 - (.I0(s_axi_rready), - .I1(aa_grant_rnw), - .I2(m_valid_i), - .I3(m_ready_d_1[0]), + (.I0(aa_grant_rnw), + .I1(m_valid_i), + .I2(m_ready_d_1[0]), + .I3(s_axi_rready), .I4(sr_rvalid), .O(E)); - (* SOFT_HLUTNM = "soft_lutpair5" *) - LUT4 #( - .INIT(16'h0020)) - \m_ready_d[0]_i_2 - (.I0(s_axi_bready), - .I1(aa_grant_rnw), - .I2(m_valid_i), - .I3(m_ready_d[0]), - .O(s_axi_bready_0_sn_1)); - (* SOFT_HLUTNM = "soft_lutpair4" *) - LUT2 #( - .INIT(4'h7)) - \m_ready_d[0]_i_2__0 + LUT6 #( + .INIT(64'hFFFFFFFF88888880)) + \m_ready_d[1]_i_2 (.I0(aa_grant_rnw), .I1(m_valid_i), - .O(\gen_no_arbiter.grant_rnw_reg_1 )); - (* SOFT_HLUTNM = "soft_lutpair7" *) - LUT2 #( - .INIT(4'hB)) - \m_ready_d[0]_i_3 - (.I0(\m_ready_d[0]_i_4_n_0 ), - .I1(aresetn_d), - .O(aresetn_d_reg)); - LUT6 #( - .INIT(64'h00000000F8F0F8F8)) - \m_ready_d[0]_i_4 + .I2(\m_ready_d_reg[1]_0 ), + .I3(\m_ready_d_reg[1]_1 ), + .I4(\m_ready_d_reg[1]_2 ), + .I5(m_ready_d_1[1]), + .O(m_ready_d0[1])); + LUT6 #( + .INIT(64'hFFFFFFFF80000000)) + \m_ready_d[1]_i_3 (.I0(aa_grant_rnw), .I1(m_valid_i), - .I2(m_ready_d_1[1]), - .I3(\m_ready_d_reg[1]_0 ), - .I4(\m_ready_d_reg[1]_1 ), - .I5(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1 ), - .O(\m_ready_d[0]_i_4_n_0 )); - (* SOFT_HLUTNM = "soft_lutpair3" *) - LUT4 #( - .INIT(16'h0020)) - \m_ready_d[1]_i_2 - (.I0(s_axi_wvalid), - .I1(aa_grant_rnw), - .I2(m_valid_i), - .I3(m_ready_d[1]), - .O(s_axi_wvalid_0_sn_1)); - (* SOFT_HLUTNM = "soft_lutpair1" *) - LUT5 #( - .INIT(32'hFDF0F0F0)) - \m_ready_d[1]_i_2__0 - (.I0(\m_ready_d_reg[1]_1 ), - .I1(\m_ready_d_reg[1]_0 ), - .I2(m_ready_d_1[1]), - .I3(m_valid_i), - .I4(aa_grant_rnw), - .O(m_ready_d0_0)); + .I2(s_axi_rready), + .I3(sr_rvalid), + .I4(\m_ready_d_reg[1] ), + .I5(m_ready_d_1[0]), + .O(m_ready_d0[0])); LUT6 #( - .INIT(64'hFFFFFFFF00D00000)) - \m_ready_d[2]_i_7 - (.I0(\m_ready_d[2]_i_3 ), - .I1(\m_ready_d[2]_i_3_0 ), - .I2(s_axi_bready), - .I3(aa_grant_rnw), - .I4(m_valid_i), - .I5(m_ready_d[0]), - .O(m_ready_d0)); - (* SOFT_HLUTNM = "soft_lutpair12" *) + .INIT(64'hFFFFFFFF44444440)) + \m_ready_d[2]_i_2 + (.I0(aa_grant_rnw), + .I1(m_valid_i), + .I2(\gen_no_arbiter.m_valid_i_reg_3 ), + .I3(\gen_no_arbiter.m_valid_i_reg_2 ), + .I4(\gen_no_arbiter.m_valid_i_reg_1 ), + .I5(m_ready_d[2]), + .O(\gen_no_arbiter.grant_rnw_reg_0 )); + (* SOFT_HLUTNM = "soft_lutpair4" *) + LUT2 #( + .INIT(4'h2)) + \m_ready_d[2]_i_9 + (.I0(m_valid_i), + .I1(aa_grant_rnw), + .O(\gen_no_arbiter.m_valid_i_reg_0 )); + (* SOFT_HLUTNM = "soft_lutpair15" *) LUT3 #( - .INIT(8'h8A)) + .INIT(8'hC4)) m_valid_i_i_1 - (.I0(m_valid_i_reg[1]), - .I1(m_valid_i_i_2_n_0), - .I2(m_valid_i_i_3_n_0), + (.I0(E), + .I1(m_valid_i_reg[1]), + .I2(m_valid_i_i_2_n_0), .O(\aresetn_d_reg[1] )); - (* SOFT_HLUTNM = "soft_lutpair0" *) LUT5 #( - .INIT(32'h8AAAAAAA)) + .INIT(32'hAAA8FFFF)) m_valid_i_i_2 - (.I0(sr_rvalid), - .I1(m_ready_d_1[0]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(s_axi_rready), + (.I0(r_transfer_en), + .I1(m_valid_i_reg_0), + .I2(m_valid_i_reg_1), + .I3(m_valid_i_reg_2), + .I4(aa_rready), .O(m_valid_i_i_2_n_0)); - LUT6 #( - .INIT(64'h8AAAAAAA8AAA8AAA)) + (* SOFT_HLUTNM = "soft_lutpair0" *) + LUT3 #( + .INIT(8'h08)) m_valid_i_i_3 - (.I0(aa_rready), - .I1(m_ready_d_1[0]), - .I2(m_valid_i), - .I3(aa_grant_rnw), - .I4(m_valid_i_reg_0), - .I5(m_valid_i_reg_1), - .O(m_valid_i_i_3_n_0)); - (* SOFT_HLUTNM = "soft_lutpair7" *) + (.I0(aa_grant_rnw), + .I1(m_valid_i), + .I2(m_ready_d_1[0]), + .O(r_transfer_en)); + (* SOFT_HLUTNM = "soft_lutpair8" *) LUT4 #( .INIT(16'h0040)) \s_arvalid_reg[0]_i_1 @@ -1557,46 +1390,51 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd .D(\s_awvalid_reg[0]_i_1_n_0 ), .Q(s_awvalid_reg), .R(1'b0)); - (* SOFT_HLUTNM = "soft_lutpair15" *) LUT2 #( .INIT(4'h8)) \s_axi_arready[0]_INST_0 - (.I0(aa_grant_rnw), - .I1(s_ready_i), + (.I0(s_ready_i), + .I1(aa_grant_rnw), .O(s_axi_arready)); - (* SOFT_HLUTNM = "soft_lutpair15" *) + (* SOFT_HLUTNM = "soft_lutpair8" *) LUT2 #( .INIT(4'h2)) \s_axi_awready[0]_INST_0 (.I0(s_ready_i), .I1(aa_grant_rnw), .O(s_axi_awready)); + (* SOFT_HLUTNM = "soft_lutpair4" *) LUT5 #( - .INIT(32'h00000004)) + .INIT(32'h00020000)) \s_axi_bvalid[0]_INST_0 - (.I0(m_ready_d[0]), - .I1(m_valid_i), - .I2(aa_grant_rnw), - .I3(p_0_in1_in), - .I4(s_axi_bvalid_0_sn_1), + (.I0(m_valid_i), + .I1(aa_grant_rnw), + .I2(p_0_in1_in), + .I3(m_ready_d[0]), + .I4(f_mux_return__3), .O(s_axi_bvalid)); - (* SOFT_HLUTNM = "soft_lutpair2" *) + LUT2 #( + .INIT(4'h4)) + \s_axi_rvalid[0]_INST_0 + (.I0(p_0_in1_in), + .I1(sr_rvalid), + .O(s_axi_rvalid)); LUT5 #( - .INIT(32'h00000004)) + .INIT(32'h00020000)) \s_axi_wready[0]_INST_0 - (.I0(m_ready_d[1]), - .I1(m_valid_i), - .I2(aa_grant_rnw), - .I3(p_0_in1_in), - .I4(s_axi_wready_0_sn_1), + (.I0(m_valid_i), + .I1(aa_grant_rnw), + .I2(p_0_in1_in), + .I3(m_ready_d[1]), + .I4(f_mux_return__1), .O(s_axi_wready)); - (* SOFT_HLUTNM = "soft_lutpair12" *) + (* SOFT_HLUTNM = "soft_lutpair15" *) LUT3 #( - .INIT(8'h8A)) + .INIT(8'hB0)) s_ready_i_i_1 - (.I0(m_valid_i_reg[0]), - .I1(m_valid_i_i_3_n_0), - .I2(m_valid_i_i_2_n_0), + (.I0(E), + .I1(m_valid_i_i_2_n_0), + .I2(m_valid_i_reg[0]), .O(\aresetn_d_reg[0] )); endmodule @@ -1604,19 +1442,19 @@ endmodule (* C_AXI_BUSER_WIDTH = "1" *) (* C_AXI_DATA_WIDTH = "32" *) (* C_AXI_ID_WIDTH = "1" *) (* C_AXI_PROTOCOL = "2" *) (* C_AXI_RUSER_WIDTH = "1" *) (* C_AXI_SUPPORTS_USER_SIGNALS = "0" *) (* C_AXI_WUSER_WIDTH = "1" *) (* C_CONNECTIVITY_MODE = "0" *) (* C_DEBUG = "1" *) -(* C_FAMILY = "artix7" *) (* C_M_AXI_ADDR_WIDTH = "128'b00000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100" *) (* C_M_AXI_BASE_ADDR = "256'b1111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000100000100100000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000" *) -(* C_M_AXI_READ_CONNECTIVITY = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_M_AXI_READ_ISSUING = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_M_AXI_SECURE = "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) -(* C_M_AXI_WRITE_CONNECTIVITY = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_M_AXI_WRITE_ISSUING = "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_NUM_ADDR_RANGES = "1" *) -(* C_NUM_MASTER_SLOTS = "4" *) (* C_NUM_SLAVE_SLOTS = "1" *) (* C_R_REGISTER = "1" *) +(* C_FAMILY = "artix7" *) (* C_M_AXI_ADDR_WIDTH = "160'b0000000000000000000000000000011100000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100" *) (* C_M_AXI_BASE_ADDR = "320'b00000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000001001000000000000000000000000000000000000000000000000000000100000111000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000" *) +(* C_M_AXI_READ_CONNECTIVITY = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_M_AXI_READ_ISSUING = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_M_AXI_SECURE = "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) +(* C_M_AXI_WRITE_CONNECTIVITY = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_M_AXI_WRITE_ISSUING = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) (* C_NUM_ADDR_RANGES = "1" *) +(* C_NUM_MASTER_SLOTS = "5" *) (* C_NUM_SLAVE_SLOTS = "1" *) (* C_R_REGISTER = "1" *) (* C_S_AXI_ARB_PRIORITY = "0" *) (* C_S_AXI_BASE_ID = "0" *) (* C_S_AXI_READ_ACCEPTANCE = "1" *) (* C_S_AXI_SINGLE_THREAD = "1" *) (* C_S_AXI_THREAD_ID_WIDTH = "0" *) (* C_S_AXI_WRITE_ACCEPTANCE = "1" *) -(* DowngradeIPIdentifiedWarnings = "yes" *) (* ORIG_REF_NAME = "axi_crossbar_v2_1_33_axi_crossbar" *) (* P_ADDR_DECODE = "1" *) -(* P_AXI3 = "1" *) (* P_AXI4 = "0" *) (* P_AXILITE = "2" *) -(* P_AXILITE_SIZE = "3'b010" *) (* P_FAMILY = "artix7" *) (* P_INCR = "2'b01" *) -(* P_LEN = "8" *) (* P_LOCK = "1" *) (* P_M_AXI_ERR_MODE = "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) -(* P_M_AXI_SUPPORTS_READ = "4'b1111" *) (* P_M_AXI_SUPPORTS_WRITE = "4'b1111" *) (* P_ONES = "65'b11111111111111111111111111111111111111111111111111111111111111111" *) -(* P_RANGE_CHECK = "1" *) (* P_S_AXI_BASE_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) (* P_S_AXI_HIGH_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) -(* P_S_AXI_SUPPORTS_READ = "1'b1" *) (* P_S_AXI_SUPPORTS_WRITE = "1'b1" *) +(* DowngradeIPIdentifiedWarnings = "yes" *) (* P_ADDR_DECODE = "1" *) (* P_AXI3 = "1" *) +(* P_AXI4 = "0" *) (* P_AXILITE = "2" *) (* P_AXILITE_SIZE = "3'b010" *) +(* P_FAMILY = "artix7" *) (* P_INCR = "2'b01" *) (* P_LEN = "8" *) +(* P_LOCK = "1" *) (* P_M_AXI_ERR_MODE = "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) (* P_M_AXI_SUPPORTS_READ = "5'b11111" *) +(* P_M_AXI_SUPPORTS_WRITE = "5'b11111" *) (* P_ONES = "65'b11111111111111111111111111111111111111111111111111111111111111111" *) (* P_RANGE_CHECK = "1" *) +(* P_S_AXI_BASE_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) (* P_S_AXI_HIGH_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) (* P_S_AXI_SUPPORTS_READ = "1'b1" *) +(* P_S_AXI_SUPPORTS_WRITE = "1'b1" *) module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar (aclk, aresetn, @@ -1753,71 +1591,71 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar output [0:0]s_axi_ruser; output [0:0]s_axi_rvalid; input [0:0]s_axi_rready; - output [3:0]m_axi_awid; - output [127:0]m_axi_awaddr; - output [31:0]m_axi_awlen; - output [11:0]m_axi_awsize; - output [7:0]m_axi_awburst; - output [3:0]m_axi_awlock; - output [15:0]m_axi_awcache; - output [11:0]m_axi_awprot; - output [15:0]m_axi_awregion; - output [15:0]m_axi_awqos; - output [3:0]m_axi_awuser; - output [3:0]m_axi_awvalid; - input [3:0]m_axi_awready; - output [3:0]m_axi_wid; - output [127:0]m_axi_wdata; - output [15:0]m_axi_wstrb; - output [3:0]m_axi_wlast; - output [3:0]m_axi_wuser; - output [3:0]m_axi_wvalid; - input [3:0]m_axi_wready; - input [3:0]m_axi_bid; - input [7:0]m_axi_bresp; - input [3:0]m_axi_buser; - input [3:0]m_axi_bvalid; - output [3:0]m_axi_bready; - output [3:0]m_axi_arid; - output [127:0]m_axi_araddr; - output [31:0]m_axi_arlen; - output [11:0]m_axi_arsize; - output [7:0]m_axi_arburst; - output [3:0]m_axi_arlock; - output [15:0]m_axi_arcache; - output [11:0]m_axi_arprot; - output [15:0]m_axi_arregion; - output [15:0]m_axi_arqos; - output [3:0]m_axi_aruser; - output [3:0]m_axi_arvalid; - input [3:0]m_axi_arready; - input [3:0]m_axi_rid; - input [127:0]m_axi_rdata; - input [7:0]m_axi_rresp; - input [3:0]m_axi_rlast; - input [3:0]m_axi_ruser; - input [3:0]m_axi_rvalid; - output [3:0]m_axi_rready; + output [4:0]m_axi_awid; + output [159:0]m_axi_awaddr; + output [39:0]m_axi_awlen; + output [14:0]m_axi_awsize; + output [9:0]m_axi_awburst; + output [4:0]m_axi_awlock; + output [19:0]m_axi_awcache; + output [14:0]m_axi_awprot; + output [19:0]m_axi_awregion; + output [19:0]m_axi_awqos; + output [4:0]m_axi_awuser; + output [4:0]m_axi_awvalid; + input [4:0]m_axi_awready; + output [4:0]m_axi_wid; + output [159:0]m_axi_wdata; + output [19:0]m_axi_wstrb; + output [4:0]m_axi_wlast; + output [4:0]m_axi_wuser; + output [4:0]m_axi_wvalid; + input [4:0]m_axi_wready; + input [4:0]m_axi_bid; + input [9:0]m_axi_bresp; + input [4:0]m_axi_buser; + input [4:0]m_axi_bvalid; + output [4:0]m_axi_bready; + output [4:0]m_axi_arid; + output [159:0]m_axi_araddr; + output [39:0]m_axi_arlen; + output [14:0]m_axi_arsize; + output [9:0]m_axi_arburst; + output [4:0]m_axi_arlock; + output [19:0]m_axi_arcache; + output [14:0]m_axi_arprot; + output [19:0]m_axi_arregion; + output [19:0]m_axi_arqos; + output [4:0]m_axi_aruser; + output [4:0]m_axi_arvalid; + input [4:0]m_axi_arready; + input [4:0]m_axi_rid; + input [159:0]m_axi_rdata; + input [9:0]m_axi_rresp; + input [4:0]m_axi_rlast; + input [4:0]m_axi_ruser; + input [4:0]m_axi_rvalid; + output [4:0]m_axi_rready; wire \<const0> ; wire aclk; wire aresetn; - wire [11:0]\^m_axi_araddr ; + wire [6:0]\^m_axi_araddr ; wire [2:0]\^m_axi_arprot ; - wire [3:0]m_axi_arready; - wire [2:0]\^m_axi_arvalid ; - wire [127:108]\^m_axi_awaddr ; - wire [3:0]m_axi_awready; - wire [2:0]\^m_axi_awvalid ; - wire [2:0]\^m_axi_bready ; - wire [7:0]m_axi_bresp; - wire [3:0]m_axi_bvalid; - wire [127:0]m_axi_rdata; - wire [2:0]\^m_axi_rready ; - wire [7:0]m_axi_rresp; - wire [3:0]m_axi_rvalid; - wire [3:0]m_axi_wready; - wire [2:0]\^m_axi_wvalid ; + wire [4:0]m_axi_arready; + wire [4:0]m_axi_arvalid; + wire [159:135]\^m_axi_awaddr ; + wire [4:0]m_axi_awready; + wire [4:0]m_axi_awvalid; + wire [4:0]m_axi_bready; + wire [9:0]m_axi_bresp; + wire [4:0]m_axi_bvalid; + wire [159:0]m_axi_rdata; + wire [4:0]m_axi_rready; + wire [9:0]m_axi_rresp; + wire [4:0]m_axi_rvalid; + wire [4:0]m_axi_wready; + wire [4:0]m_axi_wvalid; wire [31:0]s_axi_araddr; wire [2:0]s_axi_arprot; wire [0:0]s_axi_arready; @@ -1838,14 +1676,18 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar wire [3:0]s_axi_wstrb; wire [0:0]s_axi_wvalid; - assign m_axi_araddr[127:108] = \^m_axi_awaddr [127:108]; - assign m_axi_araddr[107:96] = \^m_axi_araddr [11:0]; - assign m_axi_araddr[95:76] = \^m_axi_awaddr [127:108]; - assign m_axi_araddr[75:64] = \^m_axi_araddr [11:0]; - assign m_axi_araddr[63:44] = \^m_axi_awaddr [127:108]; - assign m_axi_araddr[43:32] = \^m_axi_araddr [11:0]; - assign m_axi_araddr[31:12] = \^m_axi_awaddr [127:108]; - assign m_axi_araddr[11:0] = \^m_axi_araddr [11:0]; + assign m_axi_araddr[159:135] = \^m_axi_awaddr [159:135]; + assign m_axi_araddr[134:128] = \^m_axi_araddr [6:0]; + assign m_axi_araddr[127:103] = \^m_axi_awaddr [159:135]; + assign m_axi_araddr[102:96] = \^m_axi_araddr [6:0]; + assign m_axi_araddr[95:71] = \^m_axi_awaddr [159:135]; + assign m_axi_araddr[70:64] = \^m_axi_araddr [6:0]; + assign m_axi_araddr[63:39] = \^m_axi_awaddr [159:135]; + assign m_axi_araddr[38:32] = \^m_axi_araddr [6:0]; + assign m_axi_araddr[31:7] = \^m_axi_awaddr [159:135]; + assign m_axi_araddr[6:0] = \^m_axi_araddr [6:0]; + assign m_axi_arburst[9] = \<const0> ; + assign m_axi_arburst[8] = \<const0> ; assign m_axi_arburst[7] = \<const0> ; assign m_axi_arburst[6] = \<const0> ; assign m_axi_arburst[5] = \<const0> ; @@ -1854,6 +1696,10 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_arburst[2] = \<const0> ; assign m_axi_arburst[1] = \<const0> ; assign m_axi_arburst[0] = \<const0> ; + assign m_axi_arcache[19] = \<const0> ; + assign m_axi_arcache[18] = \<const0> ; + assign m_axi_arcache[17] = \<const0> ; + assign m_axi_arcache[16] = \<const0> ; assign m_axi_arcache[15] = \<const0> ; assign m_axi_arcache[14] = \<const0> ; assign m_axi_arcache[13] = \<const0> ; @@ -1870,10 +1716,19 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_arcache[2] = \<const0> ; assign m_axi_arcache[1] = \<const0> ; assign m_axi_arcache[0] = \<const0> ; + assign m_axi_arid[4] = \<const0> ; assign m_axi_arid[3] = \<const0> ; assign m_axi_arid[2] = \<const0> ; assign m_axi_arid[1] = \<const0> ; assign m_axi_arid[0] = \<const0> ; + assign m_axi_arlen[39] = \<const0> ; + assign m_axi_arlen[38] = \<const0> ; + assign m_axi_arlen[37] = \<const0> ; + assign m_axi_arlen[36] = \<const0> ; + assign m_axi_arlen[35] = \<const0> ; + assign m_axi_arlen[34] = \<const0> ; + assign m_axi_arlen[33] = \<const0> ; + assign m_axi_arlen[32] = \<const0> ; assign m_axi_arlen[31] = \<const0> ; assign m_axi_arlen[30] = \<const0> ; assign m_axi_arlen[29] = \<const0> ; @@ -1906,14 +1761,20 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_arlen[2] = \<const0> ; assign m_axi_arlen[1] = \<const0> ; assign m_axi_arlen[0] = \<const0> ; + assign m_axi_arlock[4] = \<const0> ; assign m_axi_arlock[3] = \<const0> ; assign m_axi_arlock[2] = \<const0> ; assign m_axi_arlock[1] = \<const0> ; assign m_axi_arlock[0] = \<const0> ; + assign m_axi_arprot[14:12] = \^m_axi_arprot [2:0]; assign m_axi_arprot[11:9] = \^m_axi_arprot [2:0]; assign m_axi_arprot[8:6] = \^m_axi_arprot [2:0]; assign m_axi_arprot[5:3] = \^m_axi_arprot [2:0]; assign m_axi_arprot[2:0] = \^m_axi_arprot [2:0]; + assign m_axi_arqos[19] = \<const0> ; + assign m_axi_arqos[18] = \<const0> ; + assign m_axi_arqos[17] = \<const0> ; + assign m_axi_arqos[16] = \<const0> ; assign m_axi_arqos[15] = \<const0> ; assign m_axi_arqos[14] = \<const0> ; assign m_axi_arqos[13] = \<const0> ; @@ -1930,6 +1791,10 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_arqos[2] = \<const0> ; assign m_axi_arqos[1] = \<const0> ; assign m_axi_arqos[0] = \<const0> ; + assign m_axi_arregion[19] = \<const0> ; + assign m_axi_arregion[18] = \<const0> ; + assign m_axi_arregion[17] = \<const0> ; + assign m_axi_arregion[16] = \<const0> ; assign m_axi_arregion[15] = \<const0> ; assign m_axi_arregion[14] = \<const0> ; assign m_axi_arregion[13] = \<const0> ; @@ -1946,6 +1811,9 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_arregion[2] = \<const0> ; assign m_axi_arregion[1] = \<const0> ; assign m_axi_arregion[0] = \<const0> ; + assign m_axi_arsize[14] = \<const0> ; + assign m_axi_arsize[13] = \<const0> ; + assign m_axi_arsize[12] = \<const0> ; assign m_axi_arsize[11] = \<const0> ; assign m_axi_arsize[10] = \<const0> ; assign m_axi_arsize[9] = \<const0> ; @@ -1958,20 +1826,23 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_arsize[2] = \<const0> ; assign m_axi_arsize[1] = \<const0> ; assign m_axi_arsize[0] = \<const0> ; + assign m_axi_aruser[4] = \<const0> ; assign m_axi_aruser[3] = \<const0> ; assign m_axi_aruser[2] = \<const0> ; assign m_axi_aruser[1] = \<const0> ; assign m_axi_aruser[0] = \<const0> ; - assign m_axi_arvalid[3] = \<const0> ; - assign m_axi_arvalid[2:0] = \^m_axi_arvalid [2:0]; - assign m_axi_awaddr[127:108] = \^m_axi_awaddr [127:108]; - assign m_axi_awaddr[107:96] = \^m_axi_araddr [11:0]; - assign m_axi_awaddr[95:76] = \^m_axi_awaddr [127:108]; - assign m_axi_awaddr[75:64] = \^m_axi_araddr [11:0]; - assign m_axi_awaddr[63:44] = \^m_axi_awaddr [127:108]; - assign m_axi_awaddr[43:32] = \^m_axi_araddr [11:0]; - assign m_axi_awaddr[31:12] = \^m_axi_awaddr [127:108]; - assign m_axi_awaddr[11:0] = \^m_axi_araddr [11:0]; + assign m_axi_awaddr[159:135] = \^m_axi_awaddr [159:135]; + assign m_axi_awaddr[134:128] = \^m_axi_araddr [6:0]; + assign m_axi_awaddr[127:103] = \^m_axi_awaddr [159:135]; + assign m_axi_awaddr[102:96] = \^m_axi_araddr [6:0]; + assign m_axi_awaddr[95:71] = \^m_axi_awaddr [159:135]; + assign m_axi_awaddr[70:64] = \^m_axi_araddr [6:0]; + assign m_axi_awaddr[63:39] = \^m_axi_awaddr [159:135]; + assign m_axi_awaddr[38:32] = \^m_axi_araddr [6:0]; + assign m_axi_awaddr[31:7] = \^m_axi_awaddr [159:135]; + assign m_axi_awaddr[6:0] = \^m_axi_araddr [6:0]; + assign m_axi_awburst[9] = \<const0> ; + assign m_axi_awburst[8] = \<const0> ; assign m_axi_awburst[7] = \<const0> ; assign m_axi_awburst[6] = \<const0> ; assign m_axi_awburst[5] = \<const0> ; @@ -1980,6 +1851,10 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_awburst[2] = \<const0> ; assign m_axi_awburst[1] = \<const0> ; assign m_axi_awburst[0] = \<const0> ; + assign m_axi_awcache[19] = \<const0> ; + assign m_axi_awcache[18] = \<const0> ; + assign m_axi_awcache[17] = \<const0> ; + assign m_axi_awcache[16] = \<const0> ; assign m_axi_awcache[15] = \<const0> ; assign m_axi_awcache[14] = \<const0> ; assign m_axi_awcache[13] = \<const0> ; @@ -1996,10 +1871,19 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_awcache[2] = \<const0> ; assign m_axi_awcache[1] = \<const0> ; assign m_axi_awcache[0] = \<const0> ; + assign m_axi_awid[4] = \<const0> ; assign m_axi_awid[3] = \<const0> ; assign m_axi_awid[2] = \<const0> ; assign m_axi_awid[1] = \<const0> ; assign m_axi_awid[0] = \<const0> ; + assign m_axi_awlen[39] = \<const0> ; + assign m_axi_awlen[38] = \<const0> ; + assign m_axi_awlen[37] = \<const0> ; + assign m_axi_awlen[36] = \<const0> ; + assign m_axi_awlen[35] = \<const0> ; + assign m_axi_awlen[34] = \<const0> ; + assign m_axi_awlen[33] = \<const0> ; + assign m_axi_awlen[32] = \<const0> ; assign m_axi_awlen[31] = \<const0> ; assign m_axi_awlen[30] = \<const0> ; assign m_axi_awlen[29] = \<const0> ; @@ -2032,14 +1916,20 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_awlen[2] = \<const0> ; assign m_axi_awlen[1] = \<const0> ; assign m_axi_awlen[0] = \<const0> ; + assign m_axi_awlock[4] = \<const0> ; assign m_axi_awlock[3] = \<const0> ; assign m_axi_awlock[2] = \<const0> ; assign m_axi_awlock[1] = \<const0> ; assign m_axi_awlock[0] = \<const0> ; + assign m_axi_awprot[14:12] = \^m_axi_arprot [2:0]; assign m_axi_awprot[11:9] = \^m_axi_arprot [2:0]; assign m_axi_awprot[8:6] = \^m_axi_arprot [2:0]; assign m_axi_awprot[5:3] = \^m_axi_arprot [2:0]; assign m_axi_awprot[2:0] = \^m_axi_arprot [2:0]; + assign m_axi_awqos[19] = \<const0> ; + assign m_axi_awqos[18] = \<const0> ; + assign m_axi_awqos[17] = \<const0> ; + assign m_axi_awqos[16] = \<const0> ; assign m_axi_awqos[15] = \<const0> ; assign m_axi_awqos[14] = \<const0> ; assign m_axi_awqos[13] = \<const0> ; @@ -2056,6 +1946,10 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_awqos[2] = \<const0> ; assign m_axi_awqos[1] = \<const0> ; assign m_axi_awqos[0] = \<const0> ; + assign m_axi_awregion[19] = \<const0> ; + assign m_axi_awregion[18] = \<const0> ; + assign m_axi_awregion[17] = \<const0> ; + assign m_axi_awregion[16] = \<const0> ; assign m_axi_awregion[15] = \<const0> ; assign m_axi_awregion[14] = \<const0> ; assign m_axi_awregion[13] = \<const0> ; @@ -2072,6 +1966,9 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_awregion[2] = \<const0> ; assign m_axi_awregion[1] = \<const0> ; assign m_axi_awregion[0] = \<const0> ; + assign m_axi_awsize[14] = \<const0> ; + assign m_axi_awsize[13] = \<const0> ; + assign m_axi_awsize[12] = \<const0> ; assign m_axi_awsize[11] = \<const0> ; assign m_axi_awsize[10] = \<const0> ; assign m_axi_awsize[9] = \<const0> ; @@ -2084,38 +1981,36 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar assign m_axi_awsize[2] = \<const0> ; assign m_axi_awsize[1] = \<const0> ; assign m_axi_awsize[0] = \<const0> ; + assign m_axi_awuser[4] = \<const0> ; assign m_axi_awuser[3] = \<const0> ; assign m_axi_awuser[2] = \<const0> ; assign m_axi_awuser[1] = \<const0> ; assign m_axi_awuser[0] = \<const0> ; - assign m_axi_awvalid[3] = \<const0> ; - assign m_axi_awvalid[2:0] = \^m_axi_awvalid [2:0]; - assign m_axi_bready[3] = \<const0> ; - assign m_axi_bready[2:0] = \^m_axi_bready [2:0]; - assign m_axi_rready[3] = \<const0> ; - assign m_axi_rready[2:0] = \^m_axi_rready [2:0]; + assign m_axi_wdata[159:128] = s_axi_wdata; assign m_axi_wdata[127:96] = s_axi_wdata; assign m_axi_wdata[95:64] = s_axi_wdata; assign m_axi_wdata[63:32] = s_axi_wdata; assign m_axi_wdata[31:0] = s_axi_wdata; + assign m_axi_wid[4] = \<const0> ; assign m_axi_wid[3] = \<const0> ; assign m_axi_wid[2] = \<const0> ; assign m_axi_wid[1] = \<const0> ; assign m_axi_wid[0] = \<const0> ; + assign m_axi_wlast[4] = \<const0> ; assign m_axi_wlast[3] = \<const0> ; assign m_axi_wlast[2] = \<const0> ; assign m_axi_wlast[1] = \<const0> ; assign m_axi_wlast[0] = \<const0> ; + assign m_axi_wstrb[19:16] = s_axi_wstrb; assign m_axi_wstrb[15:12] = s_axi_wstrb; assign m_axi_wstrb[11:8] = s_axi_wstrb; assign m_axi_wstrb[7:4] = s_axi_wstrb; assign m_axi_wstrb[3:0] = s_axi_wstrb; + assign m_axi_wuser[4] = \<const0> ; assign m_axi_wuser[3] = \<const0> ; assign m_axi_wuser[2] = \<const0> ; assign m_axi_wuser[1] = \<const0> ; assign m_axi_wuser[0] = \<const0> ; - assign m_axi_wvalid[3] = \<const0> ; - assign m_axi_wvalid[2:0] = \^m_axi_wvalid [2:0]; assign s_axi_bid[0] = \<const0> ; assign s_axi_buser[0] = \<const0> ; assign s_axi_rid[0] = \<const0> ; @@ -2128,18 +2023,18 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar .aclk(aclk), .aresetn(aresetn), .m_axi_arready(m_axi_arready), - .m_axi_arvalid(\^m_axi_arvalid ), + .m_axi_arvalid(m_axi_arvalid), .m_axi_awready(m_axi_awready), - .m_axi_awvalid(\^m_axi_awvalid ), - .m_axi_bready(\^m_axi_bready ), + .m_axi_awvalid(m_axi_awvalid), + .m_axi_bready(m_axi_bready), .m_axi_bresp(m_axi_bresp), .m_axi_bvalid(m_axi_bvalid), .m_axi_rdata(m_axi_rdata), - .m_axi_rready(\^m_axi_rready ), + .m_axi_rready(m_axi_rready), .m_axi_rresp(m_axi_rresp), .m_axi_rvalid(m_axi_rvalid), .m_axi_wready(m_axi_wready), - .m_axi_wvalid(\^m_axi_wvalid ), + .m_axi_wvalid(m_axi_wvalid), .\m_payload_i_reg[34] ({s_axi_rdata,s_axi_rresp}), .s_axi_araddr(s_axi_araddr), .s_axi_arprot(s_axi_arprot), @@ -2158,15 +2053,14 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar .s_axi_wvalid(s_axi_wvalid)); endmodule -(* ORIG_REF_NAME = "axi_crossbar_v2_1_33_crossbar_sasd" *) module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd - (Q, - \m_payload_i_reg[34] , - s_axi_wready, - m_axi_wvalid, - m_axi_awvalid, + (Q, + \m_payload_i_reg[34] , s_axi_bvalid, + s_axi_wready, m_axi_bready, + m_axi_awvalid, + m_axi_wvalid, m_axi_arvalid, s_axi_bresp, s_axi_awready, @@ -2175,51 +2069,51 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd m_axi_rready, aresetn, aclk, - s_axi_rready, s_axi_awvalid, s_axi_arvalid, - m_axi_awready, - s_axi_wvalid, s_axi_bready, - m_axi_rdata, + s_axi_wvalid, + s_axi_rready, + m_axi_bresp, m_axi_rresp, - m_axi_bvalid, - m_axi_arready, + m_axi_rdata, m_axi_rvalid, - m_axi_bresp, + m_axi_arready, + m_axi_bvalid, m_axi_wready, + m_axi_awready, s_axi_arprot, s_axi_awprot, s_axi_araddr, s_axi_awaddr); output [34:0]Q; output [33:0]\m_payload_i_reg[34] ; - output [0:0]s_axi_wready; - output [2:0]m_axi_wvalid; - output [2:0]m_axi_awvalid; output [0:0]s_axi_bvalid; - output [2:0]m_axi_bready; - output [2:0]m_axi_arvalid; + output [0:0]s_axi_wready; + output [4:0]m_axi_bready; + output [4:0]m_axi_awvalid; + output [4:0]m_axi_wvalid; + output [4:0]m_axi_arvalid; output [1:0]s_axi_bresp; output [0:0]s_axi_awready; output [0:0]s_axi_arready; output [0:0]s_axi_rvalid; - output [2:0]m_axi_rready; + output [4:0]m_axi_rready; input aresetn; input aclk; - input [0:0]s_axi_rready; input [0:0]s_axi_awvalid; input [0:0]s_axi_arvalid; - input [3:0]m_axi_awready; - input [0:0]s_axi_wvalid; input [0:0]s_axi_bready; - input [127:0]m_axi_rdata; - input [7:0]m_axi_rresp; - input [3:0]m_axi_bvalid; - input [3:0]m_axi_arready; - input [3:0]m_axi_rvalid; - input [7:0]m_axi_bresp; - input [3:0]m_axi_wready; + input [0:0]s_axi_wvalid; + input [0:0]s_axi_rready; + input [9:0]m_axi_bresp; + input [9:0]m_axi_rresp; + input [159:0]m_axi_rdata; + input [4:0]m_axi_rvalid; + input [4:0]m_axi_arready; + input [4:0]m_axi_bvalid; + input [4:0]m_axi_wready; + input [4:0]m_axi_awready; input [2:0]s_axi_arprot; input [2:0]s_axi_awprot; input [31:0]s_axi_araddr; @@ -2229,60 +2123,55 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd wire aa_grant_rnw; wire aa_rready; wire aclk; - wire addr_arbiter_inst_n_10; - wire addr_arbiter_inst_n_4; - wire addr_arbiter_inst_n_5; - wire addr_arbiter_inst_n_52; - wire addr_arbiter_inst_n_60; - wire addr_arbiter_inst_n_61; - wire addr_arbiter_inst_n_62; - wire addr_arbiter_inst_n_63; - wire addr_arbiter_inst_n_69; - wire addr_arbiter_inst_n_70; - wire addr_arbiter_inst_n_73; - wire addr_arbiter_inst_n_74; - wire addr_arbiter_inst_n_9; - wire any_error; + wire addr_arbiter_inst_n_21; + wire addr_arbiter_inst_n_22; + wire addr_arbiter_inst_n_24; + wire addr_arbiter_inst_n_36; + wire addr_arbiter_inst_n_37; + wire addr_arbiter_inst_n_38; + wire addr_arbiter_inst_n_80; + wire addr_arbiter_inst_n_81; wire aresetn; wire aresetn_d; - wire \gen_decerr.decerr_slave_inst_n_2 ; - wire \gen_decerr.decerr_slave_inst_n_3 ; + wire f_mux_return2; + wire f_mux_return3; + wire f_mux_return__1; + wire f_mux_return__3; wire \gen_decerr.decerr_slave_inst_n_4 ; wire \gen_decerr.decerr_slave_inst_n_5 ; - wire \gen_decerr.decerr_slave_inst_n_6 ; - wire \gen_decerr.decerr_slave_inst_n_7 ; wire \gen_decerr.decerr_slave_inst_n_8 ; wire [2:0]m_atarget_enc; - wire [4:0]m_atarget_hot; - wire [2:0]m_atarget_hot0; - wire [3:0]m_axi_arready; - wire [2:0]m_axi_arvalid; - wire [3:0]m_axi_awready; - wire [2:0]m_axi_awvalid; - wire [2:0]m_axi_bready; - wire [7:0]m_axi_bresp; - wire [3:0]m_axi_bvalid; - wire [127:0]m_axi_rdata; - wire [2:0]m_axi_rready; - wire [7:0]m_axi_rresp; - wire [3:0]m_axi_rvalid; - wire [3:0]m_axi_wready; - wire [2:0]m_axi_wvalid; + wire [5:0]m_atarget_hot; + wire [5:0]m_atarget_hot0; + wire [4:0]m_axi_arready; + wire [4:0]m_axi_arvalid; + wire [4:0]m_axi_awready; + wire [4:0]m_axi_awvalid; + wire [4:0]m_axi_bready; + wire [9:0]m_axi_bresp; + wire [4:0]m_axi_bvalid; + wire [159:0]m_axi_rdata; + wire [4:0]m_axi_rready; + wire [9:0]m_axi_rresp; + wire [4:0]m_axi_rvalid; + wire [4:0]m_axi_wready; + wire [4:0]m_axi_wvalid; wire [33:0]\m_payload_i_reg[34] ; wire [1:0]m_ready_d; - wire [1:1]m_ready_d0; - wire [0:0]m_ready_d0_0; + wire [1:0]m_ready_d0; + wire [2:0]m_ready_d0_0; wire [2:0]m_ready_d_1; wire m_valid_i; - wire [4:4]mi_bvalid; - wire [4:4]mi_wready; - wire p_0_in1_in; + wire mi_arvalid_en; + wire [5:5]mi_bvalid; + wire [5:5]mi_wready; wire p_1_in; wire reg_slice_r_n_2; wire reg_slice_r_n_37; wire reg_slice_r_n_38; - wire reg_slice_r_n_43; - wire reg_slice_r_n_44; + wire reg_slice_r_n_39; + wire reg_slice_r_n_45; + wire reg_slice_r_n_46; wire reset; wire [31:0]s_axi_araddr; wire [2:0]s_axi_arprot; @@ -2302,55 +2191,58 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd wire [0:0]s_axi_wready; wire [0:0]s_axi_wvalid; wire splitter_ar_n_0; + wire splitter_ar_n_1; + wire splitter_aw_n_0; + wire splitter_aw_n_1; + wire splitter_aw_n_2; wire splitter_aw_n_3; wire splitter_aw_n_4; + wire splitter_aw_n_5; wire sr_rvalid; mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd addr_arbiter_inst - (.D({addr_arbiter_inst_n_5,m_atarget_hot0}), + (.D({addr_arbiter_inst_n_36,addr_arbiter_inst_n_37,addr_arbiter_inst_n_38}), .E(p_1_in), - .Q(Q), + .Q(m_atarget_hot), .SR(reset), .aa_grant_rnw(aa_grant_rnw), .aa_rready(aa_rready), .aclk(aclk), .aresetn_d(aresetn_d), - .aresetn_d_reg(addr_arbiter_inst_n_4), - .\aresetn_d_reg[0] (addr_arbiter_inst_n_62), - .\aresetn_d_reg[1] (addr_arbiter_inst_n_63), - .aresetn_d_reg_0(addr_arbiter_inst_n_9), - .aresetn_d_reg_1(addr_arbiter_inst_n_10), - .\gen_axilite.s_axi_awready_i_reg (addr_arbiter_inst_n_73), - .\gen_axilite.s_axi_bvalid_i_reg ({m_atarget_hot[4],m_atarget_hot[2:0]}), - .\gen_no_arbiter.grant_rnw_reg_0 (addr_arbiter_inst_n_61), - .\gen_no_arbiter.grant_rnw_reg_1 (addr_arbiter_inst_n_70), - .\gen_no_arbiter.m_amesg_i_reg[19]_0 (any_error), - .\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0 (\gen_decerr.decerr_slave_inst_n_8 ), - .\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1 (reg_slice_r_n_2), - .\gen_no_arbiter.m_valid_i_reg_0 (splitter_aw_n_3), - .m_atarget_enc(m_atarget_enc), + .\aresetn_d_reg[0] (addr_arbiter_inst_n_22), + .\aresetn_d_reg[1] (addr_arbiter_inst_n_24), + .f_mux_return__1(f_mux_return__1), + .f_mux_return__3(f_mux_return__3), + .\gen_axilite.s_axi_bvalid_i_reg (addr_arbiter_inst_n_81), + .\gen_no_arbiter.grant_rnw_reg_0 (m_ready_d0_0[2]), + .\gen_no_arbiter.m_amesg_i_reg[48]_0 (Q), + .\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 (m_atarget_hot0), + .\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 (reg_slice_r_n_2), + .\gen_no_arbiter.m_valid_i_reg_0 (addr_arbiter_inst_n_21), + .\gen_no_arbiter.m_valid_i_reg_1 (splitter_aw_n_2), + .\gen_no_arbiter.m_valid_i_reg_2 (\gen_decerr.decerr_slave_inst_n_8 ), + .\gen_no_arbiter.m_valid_i_reg_3 (splitter_aw_n_5), + .\m_atarget_hot_reg[5] (addr_arbiter_inst_n_80), .m_axi_arvalid(m_axi_arvalid), .m_axi_awvalid(m_axi_awvalid), .m_axi_bready(m_axi_bready), - .m_axi_wready(m_axi_wready[3:2]), .m_axi_wvalid(m_axi_wvalid), .m_ready_d(m_ready_d_1), - .m_ready_d0(m_ready_d0_0), - .m_ready_d0_0(m_ready_d0), - .\m_ready_d[2]_i_3 (\gen_decerr.decerr_slave_inst_n_4 ), - .\m_ready_d[2]_i_3_0 (splitter_aw_n_4), + .m_ready_d0(m_ready_d0), + .m_ready_d0_0(m_ready_d0_0[1:0]), .m_ready_d_1(m_ready_d), - .\m_ready_d_reg[1] (addr_arbiter_inst_n_69), - .\m_ready_d_reg[1]_0 (splitter_ar_n_0), + .\m_ready_d_reg[1] (reg_slice_r_n_37), + .\m_ready_d_reg[1]_0 (splitter_ar_n_1), .\m_ready_d_reg[1]_1 (\gen_decerr.decerr_slave_inst_n_5 ), - .\m_ready_d_reg[2] (addr_arbiter_inst_n_74), + .\m_ready_d_reg[1]_2 (splitter_ar_n_0), .m_valid_i(m_valid_i), - .m_valid_i_reg({reg_slice_r_n_43,reg_slice_r_n_44}), - .m_valid_i_reg_0(reg_slice_r_n_38), - .m_valid_i_reg_1(\gen_decerr.decerr_slave_inst_n_6 ), + .m_valid_i_reg({reg_slice_r_n_45,reg_slice_r_n_46}), + .m_valid_i_reg_0(reg_slice_r_n_39), + .m_valid_i_reg_1(\gen_decerr.decerr_slave_inst_n_4 ), + .m_valid_i_reg_2(reg_slice_r_n_38), + .mi_arvalid_en(mi_arvalid_en), .mi_bvalid(mi_bvalid), .mi_wready(mi_wready), - .p_0_in1_in(p_0_in1_in), .s_axi_araddr(s_axi_araddr), .s_axi_arprot(s_axi_arprot), .s_axi_arready(s_axi_arready), @@ -2360,14 +2252,11 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd .s_axi_awready(s_axi_awready), .s_axi_awvalid(s_axi_awvalid), .s_axi_bready(s_axi_bready), - .s_axi_bready_0_sp_1(addr_arbiter_inst_n_60), .s_axi_bvalid(s_axi_bvalid), - .s_axi_bvalid_0_sp_1(\gen_decerr.decerr_slave_inst_n_3 ), .s_axi_rready(s_axi_rready), + .s_axi_rvalid(s_axi_rvalid), .s_axi_wready(s_axi_wready), - .s_axi_wready_0_sp_1(\gen_decerr.decerr_slave_inst_n_7 ), .s_axi_wvalid(s_axi_wvalid), - .s_axi_wvalid_0_sp_1(addr_arbiter_inst_n_52), .sr_rvalid(sr_rvalid)); FDRE #( .INIT(1'b0)) @@ -2378,35 +2267,44 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd .Q(aresetn_d), .R(1'b0)); mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave \gen_decerr.decerr_slave_inst - (.Q(m_atarget_hot[4]), + (.Q(m_atarget_hot[5]), .SR(reset), .aa_rready(aa_rready), .aclk(aclk), .aresetn_d(aresetn_d), - .\gen_axilite.s_axi_arready_i_reg_0 (\gen_decerr.decerr_slave_inst_n_5 ), - .\gen_axilite.s_axi_awready_i_reg_0 (addr_arbiter_inst_n_74), - .\gen_axilite.s_axi_bvalid_i_reg_0 (\gen_decerr.decerr_slave_inst_n_3 ), - .\gen_axilite.s_axi_bvalid_i_reg_1 (addr_arbiter_inst_n_73), - .\gen_axilite.s_axi_rvalid_i_reg_0 (\gen_decerr.decerr_slave_inst_n_6 ), - .\gen_axilite.s_axi_rvalid_i_reg_1 (addr_arbiter_inst_n_69), - .m_atarget_enc(m_atarget_enc), - .\m_atarget_enc_reg[1] (\gen_decerr.decerr_slave_inst_n_2 ), - .m_axi_arready(m_axi_arready[2]), - .m_axi_bvalid(m_axi_bvalid[2]), - .\m_axi_bvalid[2] (\gen_decerr.decerr_slave_inst_n_4 ), - .m_axi_rvalid(m_axi_rvalid[1]), - .m_axi_wready(m_axi_wready), - .m_axi_wready_0_sp_1(\gen_decerr.decerr_slave_inst_n_8 ), - .m_axi_wready_3_sp_1(\gen_decerr.decerr_slave_inst_n_7 ), - .\m_ready_d_reg[0] (splitter_aw_n_4), + .f_mux_return2(f_mux_return2), + .f_mux_return3(f_mux_return3), + .f_mux_return__1(f_mux_return__1), + .f_mux_return__3(f_mux_return__3), + .\gen_axilite.s_axi_awready_i_reg_0 (addr_arbiter_inst_n_81), + .\gen_axilite.s_axi_bvalid_i_reg_0 (addr_arbiter_inst_n_80), + .m_axi_arready(m_axi_arready[0]), + .m_axi_arready_0_sp_1(\gen_decerr.decerr_slave_inst_n_5 ), + .m_axi_awready(m_axi_awready[0]), + .m_axi_awready_0_sp_1(\gen_decerr.decerr_slave_inst_n_8 ), + .m_axi_bvalid({m_axi_bvalid[4:3],m_axi_bvalid[0]}), + .m_axi_rvalid(m_axi_rvalid[0]), + .m_axi_rvalid_0_sp_1(\gen_decerr.decerr_slave_inst_n_4 ), + .m_axi_wready({m_axi_wready[4:3],m_axi_wready[0]}), + .m_ready_d(m_ready_d_1[1:0]), + .m_ready_d0(m_ready_d0_0[1:0]), + .\m_ready_d[2]_i_2 (m_atarget_enc), + .\m_ready_d_reg[2] (splitter_aw_n_3), + .\m_ready_d_reg[2]_0 (splitter_aw_n_0), + .\m_ready_d_reg[2]_1 (addr_arbiter_inst_n_21), + .\m_ready_d_reg[2]_2 (splitter_aw_n_4), + .\m_ready_d_reg[2]_3 (splitter_aw_n_1), + .mi_arvalid_en(mi_arvalid_en), .mi_bvalid(mi_bvalid), - .mi_wready(mi_wready)); + .mi_wready(mi_wready), + .s_axi_bready(s_axi_bready), + .s_axi_wvalid(s_axi_wvalid)); FDRE #( .INIT(1'b0)) \m_atarget_enc_reg[0] (.C(aclk), .CE(1'b1), - .D(addr_arbiter_inst_n_9), + .D(addr_arbiter_inst_n_38), .Q(m_atarget_enc[0]), .R(1'b0)); FDRE #( @@ -2414,7 +2312,7 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd \m_atarget_enc_reg[1] (.C(aclk), .CE(1'b1), - .D(addr_arbiter_inst_n_10), + .D(addr_arbiter_inst_n_37), .Q(m_atarget_enc[1]), .R(1'b0)); FDRE #( @@ -2422,9 +2320,9 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd \m_atarget_enc_reg[2] (.C(aclk), .CE(1'b1), - .D(any_error), + .D(addr_arbiter_inst_n_36), .Q(m_atarget_enc[2]), - .R(reset)); + .R(1'b0)); FDRE #( .INIT(1'b0)) \m_atarget_hot_reg[0] @@ -2449,14 +2347,30 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd .D(m_atarget_hot0[2]), .Q(m_atarget_hot[2]), .R(reset)); + FDRE #( + .INIT(1'b0)) + \m_atarget_hot_reg[3] + (.C(aclk), + .CE(1'b1), + .D(m_atarget_hot0[3]), + .Q(m_atarget_hot[3]), + .R(reset)); FDRE #( .INIT(1'b0)) \m_atarget_hot_reg[4] (.C(aclk), .CE(1'b1), - .D(addr_arbiter_inst_n_5), + .D(m_atarget_hot0[4]), .Q(m_atarget_hot[4]), .R(reset)); + FDRE #( + .INIT(1'b0)) + \m_atarget_hot_reg[5] + (.C(aclk), + .CE(1'b1), + .D(m_atarget_hot0[5]), + .Q(m_atarget_hot[5]), + .R(reset)); mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice reg_slice_r (.E(p_1_in), .Q({\m_payload_i_reg[34] ,reg_slice_r_n_37}), @@ -2464,140 +2378,172 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd .aa_grant_rnw(aa_grant_rnw), .aa_rready(aa_rready), .aclk(aclk), - .\aresetn_d_reg[1]_0 ({reg_slice_r_n_43,reg_slice_r_n_44}), - .m_atarget_enc(m_atarget_enc), + .\aresetn_d_reg[1]_0 ({reg_slice_r_n_45,reg_slice_r_n_46}), + .\gen_no_arbiter.m_grant_hot_i_reg[0]_inv (splitter_ar_n_0), + .\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 (\gen_decerr.decerr_slave_inst_n_5 ), + .\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 (splitter_ar_n_1), .m_axi_rdata(m_axi_rdata), .m_axi_rready(m_axi_rready), - .\m_axi_rready[2] (m_atarget_hot[2:0]), + .\m_axi_rready[4] (m_atarget_hot[4:0]), .m_axi_rresp(m_axi_rresp), - .m_axi_rvalid({m_axi_rvalid[3:2],m_axi_rvalid[0]}), + .m_axi_rvalid(m_axi_rvalid[4:1]), + .\m_axi_rvalid[4] (reg_slice_r_n_39), .m_axi_rvalid_2_sp_1(reg_slice_r_n_38), - .m_ready_d(m_ready_d[0]), + .\m_payload_i_reg[0]_0 (m_atarget_enc), + .m_ready_d(m_ready_d), + .\m_ready_d_reg[1] (reg_slice_r_n_2), .m_valid_i(m_valid_i), - .m_valid_i_reg_0(reg_slice_r_n_2), - .m_valid_i_reg_1(addr_arbiter_inst_n_63), - .p_0_in1_in(p_0_in1_in), + .m_valid_i_reg_0(addr_arbiter_inst_n_24), + .mi_arvalid_en(mi_arvalid_en), .s_axi_rready(s_axi_rready), - .s_axi_rvalid(s_axi_rvalid), - .s_ready_i_reg_0(addr_arbiter_inst_n_62), + .s_ready_i_reg_0(addr_arbiter_inst_n_22), .sr_rvalid(sr_rvalid)); - LUT5 #( - .INIT(32'hFFFF0038)) + LUT6 #( + .INIT(64'hAABEAABAAAAEAAAA)) \s_axi_bresp[0]_INST_0 - (.I0(m_axi_bresp[2]), + (.I0(\s_axi_bresp[0]_INST_0_i_1_n_0 ), .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[1]), - .I4(\s_axi_bresp[0]_INST_0_i_1_n_0 ), + .I2(m_atarget_enc[1]), + .I3(m_atarget_enc[2]), + .I4(m_axi_bresp[2]), + .I5(m_axi_bresp[4]), .O(s_axi_bresp[0])); LUT6 #( - .INIT(64'h00CA000F00CA0000)) + .INIT(64'h0FF00A0C0F000A0C)) \s_axi_bresp[0]_INST_0_i_1 - (.I0(m_axi_bresp[4]), - .I1(m_axi_bresp[6]), - .I2(m_atarget_enc[0]), + (.I0(m_axi_bresp[8]), + .I1(m_axi_bresp[0]), + .I2(m_atarget_enc[1]), .I3(m_atarget_enc[2]), - .I4(m_atarget_enc[1]), - .I5(m_axi_bresp[0]), + .I4(m_atarget_enc[0]), + .I5(m_axi_bresp[6]), .O(\s_axi_bresp[0]_INST_0_i_1_n_0 )); - LUT5 #( - .INIT(32'hFFFF000E)) + LUT6 #( + .INIT(64'hAABEAABAAAAEAAAA)) \s_axi_bresp[1]_INST_0 - (.I0(m_axi_bresp[1]), - .I1(m_atarget_enc[2]), + (.I0(\s_axi_bresp[1]_INST_0_i_1_n_0 ), + .I1(m_atarget_enc[0]), .I2(m_atarget_enc[1]), - .I3(m_atarget_enc[0]), - .I4(\s_axi_bresp[1]_INST_0_i_1_n_0 ), + .I3(m_atarget_enc[2]), + .I4(m_axi_bresp[3]), + .I5(m_axi_bresp[5]), .O(s_axi_bresp[1])); LUT6 #( - .INIT(64'h0A0F0C000A000C00)) + .INIT(64'h0FF00A0C0F000A0C)) \s_axi_bresp[1]_INST_0_i_1 - (.I0(m_axi_bresp[7]), - .I1(m_axi_bresp[5]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[1]), + (.I0(m_axi_bresp[9]), + .I1(m_axi_bresp[1]), + .I2(m_atarget_enc[1]), + .I3(m_atarget_enc[2]), .I4(m_atarget_enc[0]), - .I5(m_axi_bresp[3]), + .I5(m_axi_bresp[7]), .O(\s_axi_bresp[1]_INST_0_i_1_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair23" *) + LUT3 #( + .INIT(8'h04)) + \s_axi_wready[0]_INST_0_i_2 + (.I0(m_atarget_enc[1]), + .I1(m_atarget_enc[2]), + .I2(m_atarget_enc[0]), + .O(f_mux_return2)); + (* SOFT_HLUTNM = "soft_lutpair23" *) + LUT3 #( + .INIT(8'h40)) + \s_axi_wready[0]_INST_0_i_3 + (.I0(m_atarget_enc[2]), + .I1(m_atarget_enc[1]), + .I2(m_atarget_enc[0]), + .O(f_mux_return3)); mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0 splitter_ar - (.Q(reg_slice_r_n_37), + (.Q(m_atarget_enc), .aclk(aclk), .aresetn_d(aresetn_d), - .m_atarget_enc(m_atarget_enc), - .m_axi_arready({m_axi_arready[3],m_axi_arready[1:0]}), - .m_axi_arready_1_sp_1(splitter_ar_n_0), + .m_axi_arready(m_axi_arready[4:1]), + .\m_axi_arready[4] (splitter_ar_n_1), + .m_axi_arready_2_sp_1(splitter_ar_n_0), .m_ready_d(m_ready_d), - .m_ready_d0(m_ready_d0), - .\m_ready_d_reg[0]_0 (addr_arbiter_inst_n_70), - .\m_ready_d_reg[0]_1 (addr_arbiter_inst_n_4), - .\m_ready_d_reg[1]_0 (reg_slice_r_n_2), - .s_axi_rready(s_axi_rready), - .sr_rvalid(sr_rvalid)); + .m_ready_d0(m_ready_d0)); mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter splitter_aw - (.aclk(aclk), + (.Q(m_atarget_enc), + .aclk(aclk), .aresetn_d(aresetn_d), - .m_atarget_enc(m_atarget_enc), - .m_axi_awready(m_axi_awready), - .m_axi_bvalid({m_axi_bvalid[3],m_axi_bvalid[1:0]}), - .m_axi_bvalid_0_sp_1(splitter_aw_n_4), + .m_axi_awready(m_axi_awready[4:1]), + .\m_axi_awready[4] (splitter_aw_n_5), + .m_axi_awready_2_sp_1(splitter_aw_n_2), + .m_axi_bvalid(m_axi_bvalid[4:1]), + .\m_axi_bvalid[4] (splitter_aw_n_3), + .m_axi_bvalid_2_sp_1(splitter_aw_n_0), + .m_axi_wready(m_axi_wready[4:1]), + .\m_axi_wready[4] (splitter_aw_n_4), + .m_axi_wready_2_sp_1(splitter_aw_n_1), .m_ready_d(m_ready_d_1), - .m_ready_d0(m_ready_d0_0), - .\m_ready_d_reg[0]_0 (addr_arbiter_inst_n_60), - .\m_ready_d_reg[0]_1 (\gen_decerr.decerr_slave_inst_n_3 ), - .\m_ready_d_reg[1]_0 (\gen_decerr.decerr_slave_inst_n_7 ), - .\m_ready_d_reg[1]_1 (addr_arbiter_inst_n_52), - .\m_ready_d_reg[2]_0 (splitter_aw_n_3), - .\m_ready_d_reg[2]_1 (addr_arbiter_inst_n_61), - .\m_ready_d_reg[2]_2 (\gen_decerr.decerr_slave_inst_n_2 )); + .m_ready_d0(m_ready_d0_0)); endmodule -(* ORIG_REF_NAME = "axi_crossbar_v2_1_33_decerr_slave" *) module mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave (mi_bvalid, mi_wready, - \m_atarget_enc_reg[1] , - \gen_axilite.s_axi_bvalid_i_reg_0 , - \m_axi_bvalid[2] , - \gen_axilite.s_axi_arready_i_reg_0 , - \gen_axilite.s_axi_rvalid_i_reg_0 , - m_axi_wready_3_sp_1, - m_axi_wready_0_sp_1, + m_ready_d0, + m_axi_rvalid_0_sp_1, + m_axi_arready_0_sp_1, + f_mux_return__3, + f_mux_return__1, + m_axi_awready_0_sp_1, SR, - \gen_axilite.s_axi_bvalid_i_reg_1 , + \gen_axilite.s_axi_bvalid_i_reg_0 , aclk, \gen_axilite.s_axi_awready_i_reg_0 , - m_atarget_enc, - Q, - \gen_axilite.s_axi_rvalid_i_reg_1 , + \m_ready_d_reg[2] , + \m_ready_d_reg[2]_0 , + s_axi_bready, + \m_ready_d_reg[2]_1 , + m_ready_d, + \m_ready_d_reg[2]_2 , + \m_ready_d_reg[2]_3 , + s_axi_wvalid, aresetn_d, - m_axi_bvalid, - \m_ready_d_reg[0] , - m_axi_arready, + mi_arvalid_en, + Q, m_axi_rvalid, + \m_ready_d[2]_i_2 , + m_axi_arready, + m_axi_bvalid, + f_mux_return2, + f_mux_return3, m_axi_wready, + m_axi_awready, aa_rready); output [0:0]mi_bvalid; output [0:0]mi_wready; - output \m_atarget_enc_reg[1] ; - output \gen_axilite.s_axi_bvalid_i_reg_0 ; - output \m_axi_bvalid[2] ; - output \gen_axilite.s_axi_arready_i_reg_0 ; - output \gen_axilite.s_axi_rvalid_i_reg_0 ; - output m_axi_wready_3_sp_1; - output m_axi_wready_0_sp_1; + output [1:0]m_ready_d0; + output m_axi_rvalid_0_sp_1; + output m_axi_arready_0_sp_1; + output f_mux_return__3; + output f_mux_return__1; + output m_axi_awready_0_sp_1; input [0:0]SR; - input \gen_axilite.s_axi_bvalid_i_reg_1 ; + input \gen_axilite.s_axi_bvalid_i_reg_0 ; input aclk; input \gen_axilite.s_axi_awready_i_reg_0 ; - input [2:0]m_atarget_enc; - input [0:0]Q; - input \gen_axilite.s_axi_rvalid_i_reg_1 ; + input \m_ready_d_reg[2] ; + input \m_ready_d_reg[2]_0 ; + input [0:0]s_axi_bready; + input \m_ready_d_reg[2]_1 ; + input [1:0]m_ready_d; + input \m_ready_d_reg[2]_2 ; + input \m_ready_d_reg[2]_3 ; + input [0:0]s_axi_wvalid; input aresetn_d; - input [0:0]m_axi_bvalid; - input \m_ready_d_reg[0] ; - input [0:0]m_axi_arready; + input mi_arvalid_en; + input [0:0]Q; input [0:0]m_axi_rvalid; - input [3:0]m_axi_wready; + input [2:0]\m_ready_d[2]_i_2 ; + input [0:0]m_axi_arready; + input [2:0]m_axi_bvalid; + input f_mux_return2; + input f_mux_return3; + input [2:0]m_axi_wready; + input [0:0]m_axi_awready; input aa_rready; wire [0:0]Q; @@ -2605,39 +2551,51 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave wire aa_rready; wire aclk; wire aresetn_d; + wire f_mux_return2; + wire f_mux_return3; + wire f_mux_return__1; + wire f_mux_return__3; wire \gen_axilite.s_axi_arready_i_i_1_n_0 ; - wire \gen_axilite.s_axi_arready_i_reg_0 ; wire \gen_axilite.s_axi_awready_i_reg_0 ; wire \gen_axilite.s_axi_bvalid_i_reg_0 ; - wire \gen_axilite.s_axi_bvalid_i_reg_1 ; wire \gen_axilite.s_axi_rvalid_i_i_1_n_0 ; - wire \gen_axilite.s_axi_rvalid_i_reg_0 ; - wire \gen_axilite.s_axi_rvalid_i_reg_1 ; - wire [2:0]m_atarget_enc; - wire \m_atarget_enc_reg[1] ; wire [0:0]m_axi_arready; - wire [0:0]m_axi_bvalid; - wire \m_axi_bvalid[2] ; + wire m_axi_arready_0_sn_1; + wire [0:0]m_axi_awready; + wire m_axi_awready_0_sn_1; + wire [2:0]m_axi_bvalid; wire [0:0]m_axi_rvalid; - wire [3:0]m_axi_wready; - wire m_axi_wready_0_sn_1; - wire m_axi_wready_3_sn_1; - wire \m_ready_d_reg[0] ; - wire [4:4]mi_arready; + wire m_axi_rvalid_0_sn_1; + wire [2:0]m_axi_wready; + wire [1:0]m_ready_d; + wire [1:0]m_ready_d0; + wire [2:0]\m_ready_d[2]_i_2 ; + wire \m_ready_d_reg[2] ; + wire \m_ready_d_reg[2]_0 ; + wire \m_ready_d_reg[2]_1 ; + wire \m_ready_d_reg[2]_2 ; + wire \m_ready_d_reg[2]_3 ; + wire [5:5]mi_arready; + wire mi_arvalid_en; wire [0:0]mi_bvalid; - wire [4:4]mi_rvalid; + wire [5:5]mi_rvalid; wire [0:0]mi_wready; + wire [0:0]s_axi_bready; + wire \s_axi_bvalid[0]_INST_0_i_2_n_0 ; + wire \s_axi_wready[0]_INST_0_i_4_n_0 ; + wire [0:0]s_axi_wvalid; - assign m_axi_wready_0_sp_1 = m_axi_wready_0_sn_1; - assign m_axi_wready_3_sp_1 = m_axi_wready_3_sn_1; + assign m_axi_arready_0_sp_1 = m_axi_arready_0_sn_1; + assign m_axi_awready_0_sp_1 = m_axi_awready_0_sn_1; + assign m_axi_rvalid_0_sp_1 = m_axi_rvalid_0_sn_1; LUT5 #( - .INIT(32'hF07F0000)) + .INIT(32'hA02AA0AA)) \gen_axilite.s_axi_arready_i_i_1 - (.I0(Q), - .I1(\gen_axilite.s_axi_rvalid_i_reg_1 ), + (.I0(aresetn_d), + .I1(mi_arvalid_en), .I2(mi_arready), .I3(mi_rvalid), - .I4(aresetn_d), + .I4(Q), .O(\gen_axilite.s_axi_arready_i_i_1_n_0 )); FDRE #( .INIT(1'b0)) @@ -2660,16 +2618,16 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave \gen_axilite.s_axi_bvalid_i_reg (.C(aclk), .CE(1'b1), - .D(\gen_axilite.s_axi_bvalid_i_reg_1 ), + .D(\gen_axilite.s_axi_bvalid_i_reg_0 ), .Q(mi_bvalid), .R(SR)); LUT5 #( - .INIT(32'h08F8F0F0)) + .INIT(32'h55C0FF00)) \gen_axilite.s_axi_rvalid_i_i_1 - (.I0(mi_arready), - .I1(\gen_axilite.s_axi_rvalid_i_reg_1 ), - .I2(mi_rvalid), - .I3(aa_rready), + (.I0(aa_rready), + .I1(mi_arvalid_en), + .I2(mi_arready), + .I3(mi_rvalid), .I4(Q), .O(\gen_axilite.s_axi_rvalid_i_i_1_n_0 )); FDRE #( @@ -2681,189 +2639,205 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave .Q(mi_rvalid), .R(SR)); LUT5 #( - .INIT(32'hFDCFFDFF)) - \m_ready_d[1]_i_4 - (.I0(mi_arready), - .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[1]), - .I3(m_atarget_enc[2]), - .I4(m_axi_arready), - .O(\gen_axilite.s_axi_arready_i_reg_0 )); - LUT4 #( - .INIT(16'h0400)) - \m_ready_d[2]_i_5 - (.I0(m_atarget_enc[1]), - .I1(m_atarget_enc[2]), - .I2(m_atarget_enc[0]), - .I3(mi_wready), - .O(\m_atarget_enc_reg[1] )); + .INIT(32'h0C00000A)) + \m_ready_d[1]_i_5 + (.I0(m_axi_arready), + .I1(mi_arready), + .I2(\m_ready_d[2]_i_2 [1]), + .I3(\m_ready_d[2]_i_2 [2]), + .I4(\m_ready_d[2]_i_2 [0]), + .O(m_axi_arready_0_sn_1)); + LUT6 #( + .INIT(64'hFFFFFFFFFE000000)) + \m_ready_d[2]_i_3 + (.I0(\m_ready_d_reg[2]_2 ), + .I1(\s_axi_wready[0]_INST_0_i_4_n_0 ), + .I2(\m_ready_d_reg[2]_3 ), + .I3(s_axi_wvalid), + .I4(\m_ready_d_reg[2]_1 ), + .I5(m_ready_d[1]), + .O(m_ready_d0[1])); + LUT6 #( + .INIT(64'hFFFFFFFFFE000000)) + \m_ready_d[2]_i_4 + (.I0(\m_ready_d_reg[2] ), + .I1(\s_axi_bvalid[0]_INST_0_i_2_n_0 ), + .I2(\m_ready_d_reg[2]_0 ), + .I3(s_axi_bready), + .I4(\m_ready_d_reg[2]_1 ), + .I5(m_ready_d[0]), + .O(m_ready_d0[0])); LUT5 #( - .INIT(32'hFDCFFDFF)) - \m_ready_d[2]_i_8 - (.I0(m_axi_bvalid), - .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[1]), - .I4(mi_bvalid), - .O(\m_axi_bvalid[2] )); + .INIT(32'h0C00000A)) + \m_ready_d[2]_i_6 + (.I0(m_axi_awready), + .I1(mi_wready), + .I2(\m_ready_d[2]_i_2 [1]), + .I3(\m_ready_d[2]_i_2 [2]), + .I4(\m_ready_d[2]_i_2 [0]), + .O(m_axi_awready_0_sn_1)); LUT5 #( - .INIT(32'hFCDFFFDF)) + .INIT(32'h0C00000A)) m_valid_i_i_5 - (.I0(mi_rvalid), - .I1(m_atarget_enc[1]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[0]), - .I4(m_axi_rvalid), - .O(\gen_axilite.s_axi_rvalid_i_reg_0 )); + (.I0(m_axi_rvalid), + .I1(mi_rvalid), + .I2(\m_ready_d[2]_i_2 [1]), + .I3(\m_ready_d[2]_i_2 [2]), + .I4(\m_ready_d[2]_i_2 [0]), + .O(m_axi_rvalid_0_sn_1)); LUT6 #( - .INIT(64'h00000000FFD3FFDF)) + .INIT(64'hFFFFFFFFFFFFF888)) \s_axi_bvalid[0]_INST_0_i_1 - (.I0(mi_bvalid), - .I1(m_atarget_enc[1]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[0]), - .I4(m_axi_bvalid), - .I5(\m_ready_d_reg[0] ), - .O(\gen_axilite.s_axi_bvalid_i_reg_0 )); + (.I0(m_axi_bvalid[2]), + .I1(f_mux_return2), + .I2(m_axi_bvalid[1]), + .I3(f_mux_return3), + .I4(\s_axi_bvalid[0]_INST_0_i_2_n_0 ), + .I5(\m_ready_d_reg[2]_0 ), + .O(f_mux_return__3)); + LUT5 #( + .INIT(32'h0C00000A)) + \s_axi_bvalid[0]_INST_0_i_2 + (.I0(m_axi_bvalid[0]), + .I1(mi_bvalid), + .I2(\m_ready_d[2]_i_2 [1]), + .I3(\m_ready_d[2]_i_2 [2]), + .I4(\m_ready_d[2]_i_2 [0]), + .O(\s_axi_bvalid[0]_INST_0_i_2_n_0 )); LUT6 #( - .INIT(64'h00000000F4FFF7FF)) + .INIT(64'hFFFFFFFFFFFFF888)) \s_axi_wready[0]_INST_0_i_1 - (.I0(m_axi_wready[3]), - .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[1]), - .I4(m_axi_wready[2]), - .I5(m_axi_wready_0_sn_1), - .O(m_axi_wready_3_sn_1)); - LUT6 #( - .INIT(64'h00000FCA000000CA)) - \s_axi_wready[0]_INST_0_i_2 - (.I0(m_axi_wready[0]), - .I1(m_axi_wready[1]), - .I2(m_atarget_enc[0]), - .I3(m_atarget_enc[2]), - .I4(m_atarget_enc[1]), - .I5(mi_wready), - .O(m_axi_wready_0_sn_1)); + (.I0(m_axi_wready[2]), + .I1(f_mux_return2), + .I2(m_axi_wready[1]), + .I3(f_mux_return3), + .I4(\s_axi_wready[0]_INST_0_i_4_n_0 ), + .I5(\m_ready_d_reg[2]_3 ), + .O(f_mux_return__1)); + LUT5 #( + .INIT(32'h00A0000C)) + \s_axi_wready[0]_INST_0_i_4 + (.I0(mi_wready), + .I1(m_axi_wready[0]), + .I2(\m_ready_d[2]_i_2 [2]), + .I3(\m_ready_d[2]_i_2 [1]), + .I4(\m_ready_d[2]_i_2 [0]), + .O(\s_axi_wready[0]_INST_0_i_4_n_0 )); endmodule -(* ORIG_REF_NAME = "axi_crossbar_v2_1_33_splitter" *) module mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter - (m_ready_d, - \m_ready_d_reg[2]_0 , - m_axi_bvalid_0_sp_1, - m_atarget_enc, - \m_ready_d_reg[1]_0 , - \m_ready_d_reg[1]_1 , - m_ready_d0, - \m_ready_d_reg[2]_1 , - \m_ready_d_reg[2]_2 , - m_axi_awready, + (m_axi_bvalid_2_sp_1, + m_axi_wready_2_sp_1, + m_axi_awready_2_sp_1, + \m_axi_bvalid[4] , + \m_axi_wready[4] , + \m_axi_awready[4] , + m_ready_d, m_axi_bvalid, + Q, + m_axi_wready, + m_axi_awready, aresetn_d, - \m_ready_d_reg[0]_0 , - \m_ready_d_reg[0]_1 , + m_ready_d0, aclk); + output m_axi_bvalid_2_sp_1; + output m_axi_wready_2_sp_1; + output m_axi_awready_2_sp_1; + output \m_axi_bvalid[4] ; + output \m_axi_wready[4] ; + output \m_axi_awready[4] ; output [2:0]m_ready_d; - output \m_ready_d_reg[2]_0 ; - output m_axi_bvalid_0_sp_1; - input [2:0]m_atarget_enc; - input \m_ready_d_reg[1]_0 ; - input \m_ready_d_reg[1]_1 ; - input [0:0]m_ready_d0; - input \m_ready_d_reg[2]_1 ; - input \m_ready_d_reg[2]_2 ; + input [3:0]m_axi_bvalid; + input [2:0]Q; + input [3:0]m_axi_wready; input [3:0]m_axi_awready; - input [2:0]m_axi_bvalid; input aresetn_d; - input \m_ready_d_reg[0]_0 ; - input \m_ready_d_reg[0]_1 ; + input [2:0]m_ready_d0; input aclk; + wire [2:0]Q; wire aclk; wire aresetn_d; - wire [2:0]m_atarget_enc; wire [3:0]m_axi_awready; - wire [2:0]m_axi_bvalid; - wire m_axi_bvalid_0_sn_1; + wire \m_axi_awready[4] ; + wire m_axi_awready_2_sn_1; + wire [3:0]m_axi_bvalid; + wire \m_axi_bvalid[4] ; + wire m_axi_bvalid_2_sn_1; + wire [3:0]m_axi_wready; + wire \m_axi_wready[4] ; + wire m_axi_wready_2_sn_1; wire [2:0]m_ready_d; - wire [0:0]m_ready_d0; + wire [2:0]m_ready_d0; wire \m_ready_d[0]_i_1_n_0 ; wire \m_ready_d[1]_i_1_n_0 ; wire \m_ready_d[2]_i_1_n_0 ; - wire \m_ready_d[2]_i_3_n_0 ; - wire \m_ready_d[2]_i_4_n_0 ; - wire \m_ready_d[2]_i_6_n_0 ; - wire \m_ready_d_reg[0]_0 ; - wire \m_ready_d_reg[0]_1 ; - wire \m_ready_d_reg[1]_0 ; - wire \m_ready_d_reg[1]_1 ; - wire \m_ready_d_reg[2]_0 ; - wire \m_ready_d_reg[2]_1 ; - wire \m_ready_d_reg[2]_2 ; - assign m_axi_bvalid_0_sp_1 = m_axi_bvalid_0_sn_1; - LUT5 #( - .INIT(32'hF2000000)) + assign m_axi_awready_2_sp_1 = m_axi_awready_2_sn_1; + assign m_axi_bvalid_2_sp_1 = m_axi_bvalid_2_sn_1; + assign m_axi_wready_2_sp_1 = m_axi_wready_2_sn_1; + LUT4 #( + .INIT(16'h2A00)) \m_ready_d[0]_i_1 - (.I0(\m_ready_d_reg[0]_0 ), - .I1(\m_ready_d_reg[0]_1 ), - .I2(m_ready_d[0]), - .I3(\m_ready_d[2]_i_3_n_0 ), - .I4(aresetn_d), + (.I0(aresetn_d), + .I1(m_ready_d0[2]), + .I2(m_ready_d0[1]), + .I3(m_ready_d0[0]), .O(\m_ready_d[0]_i_1_n_0 )); - LUT5 #( - .INIT(32'hBA000000)) + (* SOFT_HLUTNM = "soft_lutpair22" *) + LUT4 #( + .INIT(16'h20A0)) \m_ready_d[1]_i_1 - (.I0(m_ready_d[1]), - .I1(\m_ready_d_reg[1]_0 ), - .I2(\m_ready_d_reg[1]_1 ), - .I3(\m_ready_d[2]_i_3_n_0 ), - .I4(aresetn_d), + (.I0(aresetn_d), + .I1(m_ready_d0[2]), + .I2(m_ready_d0[1]), + .I3(m_ready_d0[0]), .O(\m_ready_d[1]_i_1_n_0 )); - LUT3 #( - .INIT(8'h40)) + (* SOFT_HLUTNM = "soft_lutpair22" *) + LUT4 #( + .INIT(16'h0888)) \m_ready_d[2]_i_1 - (.I0(\m_ready_d_reg[2]_0 ), - .I1(\m_ready_d[2]_i_3_n_0 ), - .I2(aresetn_d), + (.I0(aresetn_d), + .I1(m_ready_d0[2]), + .I2(m_ready_d0[1]), + .I3(m_ready_d0[0]), .O(\m_ready_d[2]_i_1_n_0 )); - LUT6 #( - .INIT(64'h4445444444454445)) - \m_ready_d[2]_i_2 - (.I0(m_ready_d[2]), - .I1(\m_ready_d_reg[2]_1 ), - .I2(\m_ready_d[2]_i_4_n_0 ), - .I3(\m_ready_d_reg[2]_2 ), - .I4(\m_ready_d[2]_i_6_n_0 ), - .I5(m_axi_awready[1]), - .O(\m_ready_d_reg[2]_0 )); LUT5 #( - .INIT(32'hFF45FFFF)) - \m_ready_d[2]_i_3 - (.I0(m_ready_d[1]), - .I1(\m_ready_d_reg[1]_0 ), - .I2(\m_ready_d_reg[1]_1 ), - .I3(\m_ready_d_reg[2]_0 ), - .I4(m_ready_d0), - .O(\m_ready_d[2]_i_3_n_0 )); - LUT6 #( - .INIT(64'h00CA000F00CA0000)) - \m_ready_d[2]_i_4 - (.I0(m_axi_awready[2]), - .I1(m_axi_awready[3]), - .I2(m_atarget_enc[0]), - .I3(m_atarget_enc[2]), - .I4(m_atarget_enc[1]), - .I5(m_axi_awready[0]), - .O(\m_ready_d[2]_i_4_n_0 )); - LUT3 #( - .INIT(8'hEF)) - \m_ready_d[2]_i_6 - (.I0(m_atarget_enc[1]), - .I1(m_atarget_enc[2]), - .I2(m_atarget_enc[0]), - .O(\m_ready_d[2]_i_6_n_0 )); + .INIT(32'h0C0000A0)) + \m_ready_d[2]_i_10 + (.I0(m_axi_bvalid[3]), + .I1(m_axi_bvalid[2]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(\m_axi_bvalid[4] )); + LUT5 #( + .INIT(32'h0C0000A0)) + \m_ready_d[2]_i_5 + (.I0(m_axi_awready[3]), + .I1(m_axi_awready[2]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(\m_axi_awready[4] )); + LUT5 #( + .INIT(32'h000C0A00)) + \m_ready_d[2]_i_7 + (.I0(m_axi_awready[1]), + .I1(m_axi_awready[0]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(m_axi_awready_2_sn_1)); + LUT5 #( + .INIT(32'h0C0000A0)) + \m_ready_d[2]_i_8 + (.I0(m_axi_wready[3]), + .I1(m_axi_wready[2]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(\m_axi_wready[4] )); FDRE #( .INIT(1'b0)) \m_ready_d_reg[0] @@ -2888,91 +2862,91 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter .D(\m_ready_d[2]_i_1_n_0 ), .Q(m_ready_d[2]), .R(1'b0)); - LUT6 #( - .INIT(64'h00F000CA000000CA)) - \s_axi_bvalid[0]_INST_0_i_2 - (.I0(m_axi_bvalid[0]), - .I1(m_axi_bvalid[1]), - .I2(m_atarget_enc[0]), - .I3(m_atarget_enc[2]), - .I4(m_atarget_enc[1]), - .I5(m_axi_bvalid[2]), - .O(m_axi_bvalid_0_sn_1)); + LUT5 #( + .INIT(32'h000C0A00)) + \s_axi_bvalid[0]_INST_0_i_3 + (.I0(m_axi_bvalid[1]), + .I1(m_axi_bvalid[0]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(m_axi_bvalid_2_sn_1)); + LUT5 #( + .INIT(32'h000C0A00)) + \s_axi_wready[0]_INST_0_i_5 + (.I0(m_axi_wready[1]), + .I1(m_axi_wready[0]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(m_axi_wready_2_sn_1)); endmodule (* ORIG_REF_NAME = "axi_crossbar_v2_1_33_splitter" *) module mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0 - (m_axi_arready_1_sp_1, + (m_axi_arready_2_sp_1, + \m_axi_arready[4] , m_ready_d, m_axi_arready, - m_atarget_enc, + Q, aresetn_d, m_ready_d0, - \m_ready_d_reg[1]_0 , - sr_rvalid, - Q, - s_axi_rready, - \m_ready_d_reg[0]_0 , - \m_ready_d_reg[0]_1 , aclk); - output m_axi_arready_1_sp_1; + output m_axi_arready_2_sp_1; + output \m_axi_arready[4] ; output [1:0]m_ready_d; - input [2:0]m_axi_arready; - input [2:0]m_atarget_enc; + input [3:0]m_axi_arready; + input [2:0]Q; input aresetn_d; - input [0:0]m_ready_d0; - input \m_ready_d_reg[1]_0 ; - input sr_rvalid; - input [0:0]Q; - input [0:0]s_axi_rready; - input \m_ready_d_reg[0]_0 ; - input \m_ready_d_reg[0]_1 ; + input [1:0]m_ready_d0; input aclk; - wire [0:0]Q; + wire [2:0]Q; wire aclk; wire aresetn_d; - wire [2:0]m_atarget_enc; - wire [2:0]m_axi_arready; - wire m_axi_arready_1_sn_1; + wire [3:0]m_axi_arready; + wire \m_axi_arready[4] ; + wire m_axi_arready_2_sn_1; wire [1:0]m_ready_d; - wire [0:0]m_ready_d0; + wire [1:0]m_ready_d0; wire \m_ready_d[0]_i_1_n_0 ; wire \m_ready_d[1]_i_1_n_0 ; - wire \m_ready_d_reg[0]_0 ; - wire \m_ready_d_reg[0]_1 ; - wire \m_ready_d_reg[1]_0 ; - wire [0:0]s_axi_rready; - wire sr_rvalid; - assign m_axi_arready_1_sp_1 = m_axi_arready_1_sn_1; - LUT6 #( - .INIT(64'h00000000FFFF0080)) + assign m_axi_arready_2_sp_1 = m_axi_arready_2_sn_1; + (* SOFT_HLUTNM = "soft_lutpair21" *) + LUT3 #( + .INIT(8'h20)) \m_ready_d[0]_i_1 - (.I0(sr_rvalid), - .I1(Q), - .I2(s_axi_rready), - .I3(\m_ready_d_reg[0]_0 ), - .I4(m_ready_d[0]), - .I5(\m_ready_d_reg[0]_1 ), + (.I0(aresetn_d), + .I1(m_ready_d0[1]), + .I2(m_ready_d0[0]), .O(\m_ready_d[0]_i_1_n_0 )); + (* SOFT_HLUTNM = "soft_lutpair21" *) LUT3 #( - .INIT(8'h80)) + .INIT(8'h08)) \m_ready_d[1]_i_1 (.I0(aresetn_d), - .I1(m_ready_d0), - .I2(\m_ready_d_reg[1]_0 ), + .I1(m_ready_d0[1]), + .I2(m_ready_d0[0]), .O(\m_ready_d[1]_i_1_n_0 )); - LUT6 #( - .INIT(64'h00C000AF00C000A0)) - \m_ready_d[1]_i_5 - (.I0(m_axi_arready[1]), + LUT5 #( + .INIT(32'h0C0000A0)) + \m_ready_d[1]_i_4 + (.I0(m_axi_arready[3]), .I1(m_axi_arready[2]), - .I2(m_atarget_enc[0]), - .I3(m_atarget_enc[2]), - .I4(m_atarget_enc[1]), - .I5(m_axi_arready[0]), - .O(m_axi_arready_1_sn_1)); + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(\m_axi_arready[4] )); + LUT5 #( + .INIT(32'h000C0A00)) + \m_ready_d[1]_i_6 + (.I0(m_axi_arready[1]), + .I1(m_axi_arready[0]), + .I2(Q[2]), + .I3(Q[1]), + .I4(Q[0]), + .O(m_axi_arready_2_sn_1)); FDRE #( .INIT(1'b0)) \m_ready_d_reg[0] @@ -2991,52 +2965,57 @@ module mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0 .R(1'b0)); endmodule -(* ORIG_REF_NAME = "axi_register_slice_v2_1_32_axic_register_slice" *) module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice (sr_rvalid, aa_rready, - m_valid_i_reg_0, + \m_ready_d_reg[1] , Q, m_axi_rvalid_2_sp_1, - s_axi_rvalid, + \m_axi_rvalid[4] , m_axi_rready, \aresetn_d_reg[1]_0 , - m_valid_i_reg_1, + m_valid_i_reg_0, aclk, s_ready_i_reg_0, - m_atarget_enc, + m_ready_d, + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv , + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 , + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 , + mi_arvalid_en, s_axi_rready, - aa_grant_rnw, m_valid_i, - m_ready_d, - m_axi_rdata, + aa_grant_rnw, m_axi_rresp, + m_axi_rdata, + \m_payload_i_reg[0]_0 , m_axi_rvalid, - p_0_in1_in, - \m_axi_rready[2] , + \m_axi_rready[4] , SR, E); output sr_rvalid; output aa_rready; - output m_valid_i_reg_0; + output \m_ready_d_reg[1] ; output [34:0]Q; output m_axi_rvalid_2_sp_1; - output [0:0]s_axi_rvalid; - output [2:0]m_axi_rready; + output \m_axi_rvalid[4] ; + output [4:0]m_axi_rready; output [1:0]\aresetn_d_reg[1]_0 ; - input m_valid_i_reg_1; + input m_valid_i_reg_0; input aclk; input s_ready_i_reg_0; - input [2:0]m_atarget_enc; + input [1:0]m_ready_d; + input \gen_no_arbiter.m_grant_hot_i_reg[0]_inv ; + input \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 ; + input \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ; + input mi_arvalid_en; input [0:0]s_axi_rready; - input aa_grant_rnw; input m_valid_i; - input [0:0]m_ready_d; - input [127:0]m_axi_rdata; - input [7:0]m_axi_rresp; - input [2:0]m_axi_rvalid; - input p_0_in1_in; - input [2:0]\m_axi_rready[2] ; + input aa_grant_rnw; + input [9:0]m_axi_rresp; + input [159:0]m_axi_rdata; + input [2:0]\m_payload_i_reg[0]_0 ; + input [3:0]m_axi_rvalid; + input [4:0]\m_axi_rready[4] ; input [0:0]SR; input [0:0]E; @@ -3047,36 +3026,63 @@ module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice wire aa_rready; wire aclk; wire [1:0]\aresetn_d_reg[1]_0 ; - wire [2:0]m_atarget_enc; - wire [127:0]m_axi_rdata; - wire [2:0]m_axi_rready; - wire [2:0]\m_axi_rready[2] ; - wire [7:0]m_axi_rresp; - wire [2:0]m_axi_rvalid; + wire \gen_no_arbiter.m_grant_hot_i[0]_inv_i_5_n_0 ; + wire \gen_no_arbiter.m_grant_hot_i_reg[0]_inv ; + wire \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 ; + wire \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ; + wire [159:0]m_axi_rdata; + wire [4:0]m_axi_rready; + wire [4:0]\m_axi_rready[4] ; + wire [9:0]m_axi_rresp; + wire [3:0]m_axi_rvalid; + wire \m_axi_rvalid[4] ; wire m_axi_rvalid_2_sn_1; wire \m_payload_i[10]_i_2_n_0 ; + wire \m_payload_i[10]_i_3_n_0 ; wire \m_payload_i[11]_i_2_n_0 ; + wire \m_payload_i[11]_i_3_n_0 ; wire \m_payload_i[12]_i_2_n_0 ; + wire \m_payload_i[12]_i_3_n_0 ; wire \m_payload_i[13]_i_2_n_0 ; + wire \m_payload_i[13]_i_3_n_0 ; wire \m_payload_i[14]_i_2_n_0 ; + wire \m_payload_i[14]_i_3_n_0 ; wire \m_payload_i[15]_i_2_n_0 ; + wire \m_payload_i[15]_i_3_n_0 ; wire \m_payload_i[16]_i_2_n_0 ; + wire \m_payload_i[16]_i_3_n_0 ; wire \m_payload_i[17]_i_2_n_0 ; + wire \m_payload_i[17]_i_3_n_0 ; wire \m_payload_i[18]_i_2_n_0 ; + wire \m_payload_i[18]_i_3_n_0 ; wire \m_payload_i[19]_i_2_n_0 ; + wire \m_payload_i[19]_i_3_n_0 ; wire \m_payload_i[1]_i_2_n_0 ; + wire \m_payload_i[1]_i_3_n_0 ; wire \m_payload_i[20]_i_2_n_0 ; + wire \m_payload_i[20]_i_3_n_0 ; wire \m_payload_i[21]_i_2_n_0 ; + wire \m_payload_i[21]_i_3_n_0 ; wire \m_payload_i[22]_i_2_n_0 ; + wire \m_payload_i[22]_i_3_n_0 ; wire \m_payload_i[23]_i_2_n_0 ; + wire \m_payload_i[23]_i_3_n_0 ; wire \m_payload_i[24]_i_2_n_0 ; + wire \m_payload_i[24]_i_3_n_0 ; wire \m_payload_i[25]_i_2_n_0 ; + wire \m_payload_i[25]_i_3_n_0 ; wire \m_payload_i[26]_i_2_n_0 ; + wire \m_payload_i[26]_i_3_n_0 ; wire \m_payload_i[27]_i_2_n_0 ; + wire \m_payload_i[27]_i_3_n_0 ; wire \m_payload_i[28]_i_2_n_0 ; + wire \m_payload_i[28]_i_3_n_0 ; wire \m_payload_i[29]_i_2_n_0 ; + wire \m_payload_i[29]_i_3_n_0 ; wire \m_payload_i[2]_i_2_n_0 ; + wire \m_payload_i[2]_i_3_n_0 ; wire \m_payload_i[30]_i_2_n_0 ; + wire \m_payload_i[30]_i_3_n_0 ; wire \m_payload_i[31]_i_2_n_0 ; wire \m_payload_i[31]_i_3_n_0 ; wire \m_payload_i[32]_i_2_n_0 ; @@ -3086,20 +3092,28 @@ module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice wire \m_payload_i[34]_i_3_n_0 ; wire \m_payload_i[34]_i_4_n_0 ; wire \m_payload_i[34]_i_5_n_0 ; + wire \m_payload_i[34]_i_6_n_0 ; wire \m_payload_i[3]_i_2_n_0 ; + wire \m_payload_i[3]_i_3_n_0 ; wire \m_payload_i[4]_i_2_n_0 ; + wire \m_payload_i[4]_i_3_n_0 ; wire \m_payload_i[5]_i_2_n_0 ; + wire \m_payload_i[5]_i_3_n_0 ; wire \m_payload_i[6]_i_2_n_0 ; + wire \m_payload_i[6]_i_3_n_0 ; wire \m_payload_i[7]_i_2_n_0 ; + wire \m_payload_i[7]_i_3_n_0 ; wire \m_payload_i[8]_i_2_n_0 ; + wire \m_payload_i[8]_i_3_n_0 ; wire \m_payload_i[9]_i_2_n_0 ; - wire [0:0]m_ready_d; + wire \m_payload_i[9]_i_3_n_0 ; + wire [2:0]\m_payload_i_reg[0]_0 ; + wire [1:0]m_ready_d; + wire \m_ready_d_reg[1] ; wire m_valid_i; wire m_valid_i_reg_0; - wire m_valid_i_reg_1; - wire p_0_in1_in; + wire mi_arvalid_en; wire [0:0]s_axi_rready; - wire [0:0]s_axi_rvalid; wire s_ready_i_reg_0; wire [34:0]skid_buffer; wire \skid_buffer_reg_n_0_[0] ; @@ -3156,731 +3170,1097 @@ module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice .D(\aresetn_d_reg[1]_0 [0]), .Q(\aresetn_d_reg[1]_0 [1]), .R(SR)); + LUT6 #( + .INIT(64'hAAAAAAA888888888)) + \gen_no_arbiter.m_grant_hot_i[0]_inv_i_3 + (.I0(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_5_n_0 ), + .I1(m_ready_d[1]), + .I2(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv ), + .I3(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0 ), + .I4(\gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1 ), + .I5(mi_arvalid_en), + .O(\m_ready_d_reg[1] )); + LUT6 #( + .INIT(64'hEAAAAAAA00000000)) + \gen_no_arbiter.m_grant_hot_i[0]_inv_i_5 + (.I0(m_ready_d[0]), + .I1(Q[0]), + .I2(sr_rvalid), + .I3(s_axi_rready), + .I4(m_valid_i), + .I5(aa_grant_rnw), + .O(\gen_no_arbiter.m_grant_hot_i[0]_inv_i_5_n_0 )); LUT2 #( .INIT(4'h8)) \m_axi_rready[0]_INST_0 - (.I0(aa_rready), - .I1(\m_axi_rready[2] [0]), + (.I0(\m_axi_rready[4] [0]), + .I1(aa_rready), .O(m_axi_rready[0])); - (* SOFT_HLUTNM = "soft_lutpair17" *) + (* SOFT_HLUTNM = "soft_lutpair20" *) LUT2 #( .INIT(4'h8)) \m_axi_rready[1]_INST_0 - (.I0(aa_rready), - .I1(\m_axi_rready[2] [1]), + (.I0(\m_axi_rready[4] [1]), + .I1(aa_rready), .O(m_axi_rready[1])); - (* SOFT_HLUTNM = "soft_lutpair17" *) + (* SOFT_HLUTNM = "soft_lutpair20" *) LUT2 #( .INIT(4'h8)) \m_axi_rready[2]_INST_0 - (.I0(aa_rready), - .I1(\m_axi_rready[2] [2]), + (.I0(\m_axi_rready[4] [2]), + .I1(aa_rready), .O(m_axi_rready[2])); - LUT5 #( - .INIT(32'hFFFF88F8)) + (* SOFT_HLUTNM = "soft_lutpair19" *) + LUT2 #( + .INIT(4'h8)) + \m_axi_rready[3]_INST_0 + (.I0(\m_axi_rready[4] [3]), + .I1(aa_rready), + .O(m_axi_rready[3])); + (* SOFT_HLUTNM = "soft_lutpair19" *) + LUT2 #( + .INIT(4'h8)) + \m_axi_rready[4]_INST_0 + (.I0(\m_axi_rready[4] [4]), + .I1(aa_rready), + .O(m_axi_rready[4])); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[10]_i_1 - (.I0(m_axi_rdata[7]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[10]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[10] ), - .I3(aa_rready), - .I4(\m_payload_i[10]_i_2_n_0 ), + .I3(m_axi_rdata[7]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[10]_i_3_n_0 ), .O(skid_buffer[10])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[10]_i_2 - (.I0(m_axi_rdata[71]), - .I1(\m_payload_i[32]_i_2_n_0 ), - .I2(m_axi_rdata[103]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(m_axi_rdata[39]), + (.I0(m_axi_rdata[135]), + .I1(m_axi_rdata[103]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[10]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFFF222)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[10]_i_3 + (.I0(m_axi_rdata[71]), + .I1(m_axi_rdata[39]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[10]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[11]_i_1 - (.I0(\skid_buffer_reg_n_0_[11] ), + (.I0(\m_payload_i[11]_i_2_n_0 ), .I1(aa_rready), - .I2(m_axi_rdata[72]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(\m_payload_i[11]_i_2_n_0 ), + .I2(\skid_buffer_reg_n_0_[11] ), + .I3(m_axi_rdata[8]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[11]_i_3_n_0 ), .O(skid_buffer[11])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[11]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[40]), - .I2(m_axi_rdata[8]), - .I3(\m_payload_i[31]_i_2_n_0 ), - .I4(m_axi_rdata[104]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[136]), + .I1(m_axi_rdata[104]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[11]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00000AC000000000)) + \m_payload_i[11]_i_3 + (.I0(m_axi_rdata[72]), + .I1(m_axi_rdata[40]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[11]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[12]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[12] ), - .I3(m_axi_rdata[105]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[12]_i_2_n_0 ), + (.I0(\m_payload_i[12]_i_2_n_0 ), + .I1(m_axi_rdata[9]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[137]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[12]_i_3_n_0 ), .O(skid_buffer[12])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[12]_i_2 - (.I0(\m_payload_i[31]_i_2_n_0 ), - .I1(m_axi_rdata[9]), - .I2(m_axi_rdata[41]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[73]), - .I5(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[105]), + .I1(m_axi_rdata[73]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[12]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[12]_i_3 + (.I0(\skid_buffer_reg_n_0_[12] ), + .I1(m_axi_rdata[41]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[12]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[13]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[13] ), - .I3(m_axi_rdata[106]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[13]_i_2_n_0 ), + (.I0(\m_payload_i[13]_i_2_n_0 ), + .I1(m_axi_rdata[10]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[138]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[13]_i_3_n_0 ), .O(skid_buffer[13])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[13]_i_2 - (.I0(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[106]), .I1(m_axi_rdata[74]), - .I2(m_axi_rdata[42]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[10]), - .I5(\m_payload_i[31]_i_2_n_0 ), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[13]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[13]_i_3 + (.I0(\skid_buffer_reg_n_0_[13] ), + .I1(m_axi_rdata[42]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[13]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[14]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[14] ), - .I3(m_axi_rdata[75]), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(\m_payload_i[14]_i_2_n_0 ), + (.I0(\m_payload_i[14]_i_2_n_0 ), + .I1(m_axi_rdata[11]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[139]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[14]_i_3_n_0 ), .O(skid_buffer[14])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[14]_i_2 - (.I0(\m_payload_i[34]_i_4_n_0 ), - .I1(m_axi_rdata[107]), - .I2(m_axi_rdata[43]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[11]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(m_axi_rdata[107]), + .I1(m_axi_rdata[75]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[14]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[14]_i_3 + (.I0(\skid_buffer_reg_n_0_[14] ), + .I1(m_axi_rdata[43]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[14]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[15]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[15] ), - .I3(m_axi_rdata[44]), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(\m_payload_i[15]_i_2_n_0 ), + (.I0(\m_payload_i[15]_i_2_n_0 ), + .I1(m_axi_rdata[12]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[140]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[15]_i_3_n_0 ), .O(skid_buffer[15])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[15]_i_2 - (.I0(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[108]), .I1(m_axi_rdata[76]), - .I2(m_axi_rdata[108]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(m_axi_rdata[12]), - .I5(\m_payload_i[31]_i_2_n_0 ), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[15]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[15]_i_3 + (.I0(\skid_buffer_reg_n_0_[15] ), + .I1(m_axi_rdata[44]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[15]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[16]_i_1 - (.I0(m_axi_rdata[13]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[16]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[16] ), - .I3(aa_rready), - .I4(\m_payload_i[16]_i_2_n_0 ), + .I3(m_axi_rdata[13]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[16]_i_3_n_0 ), .O(skid_buffer[16])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[16]_i_2 - (.I0(m_axi_rdata[45]), - .I1(\m_payload_i[33]_i_2_n_0 ), - .I2(m_axi_rdata[109]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(m_axi_rdata[77]), + (.I0(m_axi_rdata[141]), + .I1(m_axi_rdata[109]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[16]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00000AC000000000)) + \m_payload_i[16]_i_3 + (.I0(m_axi_rdata[77]), + .I1(m_axi_rdata[45]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[16]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[17]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[17] ), - .I3(m_axi_rdata[46]), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(\m_payload_i[17]_i_2_n_0 ), + (.I0(\m_payload_i[17]_i_2_n_0 ), + .I1(m_axi_rdata[14]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[142]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[17]_i_3_n_0 ), .O(skid_buffer[17])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[17]_i_2 - (.I0(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[110]), .I1(m_axi_rdata[78]), - .I2(m_axi_rdata[110]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(m_axi_rdata[14]), - .I5(\m_payload_i[31]_i_2_n_0 ), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[17]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[17]_i_3 + (.I0(\skid_buffer_reg_n_0_[17] ), + .I1(m_axi_rdata[46]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[17]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[18]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[18] ), - .I3(m_axi_rdata[111]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[18]_i_2_n_0 ), + (.I0(\m_payload_i[18]_i_2_n_0 ), + .I1(m_axi_rdata[15]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[143]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[18]_i_3_n_0 ), .O(skid_buffer[18])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[18]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[47]), - .I2(m_axi_rdata[79]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[15]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(m_axi_rdata[111]), + .I1(m_axi_rdata[79]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[18]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[18]_i_3 + (.I0(\skid_buffer_reg_n_0_[18] ), + .I1(m_axi_rdata[47]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[18]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[19]_i_1 - (.I0(m_axi_rdata[16]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[19]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[19] ), - .I3(aa_rready), - .I4(\m_payload_i[19]_i_2_n_0 ), + .I3(m_axi_rdata[16]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[19]_i_3_n_0 ), .O(skid_buffer[19])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[19]_i_2 - (.I0(m_axi_rdata[48]), - .I1(\m_payload_i[33]_i_2_n_0 ), - .I2(m_axi_rdata[112]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(m_axi_rdata[80]), + (.I0(m_axi_rdata[144]), + .I1(m_axi_rdata[112]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[19]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00000AC000000000)) + \m_payload_i[19]_i_3 + (.I0(m_axi_rdata[80]), + .I1(m_axi_rdata[48]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[19]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[1]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[1] ), - .I3(m_axi_rresp[4]), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(\m_payload_i[1]_i_2_n_0 ), + (.I0(\m_payload_i[1]_i_2_n_0 ), + .I1(m_axi_rresp[0]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rresp[8]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[1]_i_3_n_0 ), .O(skid_buffer[1])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[1]_i_2 - (.I0(\m_payload_i[31]_i_2_n_0 ), - .I1(m_axi_rresp[0]), - .I2(m_axi_rresp[2]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rresp[6]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rresp[6]), + .I1(m_axi_rresp[4]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[1]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[1]_i_3 + (.I0(\skid_buffer_reg_n_0_[1] ), + .I1(m_axi_rresp[2]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[1]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[20]_i_1 - (.I0(m_axi_rdata[17]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[20]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[20] ), - .I3(aa_rready), - .I4(\m_payload_i[20]_i_2_n_0 ), + .I3(m_axi_rdata[17]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[20]_i_3_n_0 ), .O(skid_buffer[20])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[20]_i_2 - (.I0(m_axi_rdata[49]), - .I1(\m_payload_i[33]_i_2_n_0 ), - .I2(m_axi_rdata[113]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(m_axi_rdata[81]), + (.I0(m_axi_rdata[145]), + .I1(m_axi_rdata[113]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[20]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFFF222)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[20]_i_3 + (.I0(m_axi_rdata[81]), + .I1(m_axi_rdata[49]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[20]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[21]_i_1 - (.I0(\skid_buffer_reg_n_0_[21] ), + (.I0(\m_payload_i[21]_i_2_n_0 ), .I1(aa_rready), - .I2(m_axi_rdata[50]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(\m_payload_i[21]_i_2_n_0 ), + .I2(\skid_buffer_reg_n_0_[21] ), + .I3(m_axi_rdata[18]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[21]_i_3_n_0 ), .O(skid_buffer[21])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[21]_i_2 - (.I0(\m_payload_i[32]_i_2_n_0 ), - .I1(m_axi_rdata[82]), - .I2(m_axi_rdata[18]), - .I3(\m_payload_i[31]_i_2_n_0 ), - .I4(m_axi_rdata[114]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[146]), + .I1(m_axi_rdata[114]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[21]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[21]_i_3 + (.I0(m_axi_rdata[82]), + .I1(m_axi_rdata[50]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[21]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[22]_i_1 - (.I0(m_axi_rdata[19]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[22]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[22] ), - .I3(aa_rready), - .I4(\m_payload_i[22]_i_2_n_0 ), + .I3(m_axi_rdata[19]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[22]_i_3_n_0 ), .O(skid_buffer[22])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[22]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[51]), - .I2(m_axi_rdata[83]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[115]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[147]), + .I1(m_axi_rdata[115]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[22]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFFF222)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[22]_i_3 + (.I0(m_axi_rdata[83]), + .I1(m_axi_rdata[51]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[22]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[23]_i_1 - (.I0(\skid_buffer_reg_n_0_[23] ), + (.I0(\m_payload_i[23]_i_2_n_0 ), .I1(aa_rready), - .I2(m_axi_rdata[84]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(\m_payload_i[23]_i_2_n_0 ), + .I2(\skid_buffer_reg_n_0_[23] ), + .I3(m_axi_rdata[20]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[23]_i_3_n_0 ), .O(skid_buffer[23])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[23]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[52]), - .I2(m_axi_rdata[20]), - .I3(\m_payload_i[31]_i_2_n_0 ), - .I4(m_axi_rdata[116]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[148]), + .I1(m_axi_rdata[116]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[23]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[23]_i_3 + (.I0(m_axi_rdata[84]), + .I1(m_axi_rdata[52]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[23]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[24]_i_1 - (.I0(m_axi_rdata[21]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[24]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[24] ), - .I3(aa_rready), - .I4(\m_payload_i[24]_i_2_n_0 ), + .I3(m_axi_rdata[21]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[24]_i_3_n_0 ), .O(skid_buffer[24])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[24]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[53]), - .I2(m_axi_rdata[85]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[117]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[149]), + .I1(m_axi_rdata[117]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[24]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00000AC000000000)) + \m_payload_i[24]_i_3 + (.I0(m_axi_rdata[85]), + .I1(m_axi_rdata[53]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[24]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[25]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[25] ), - .I3(m_axi_rdata[86]), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(\m_payload_i[25]_i_2_n_0 ), + (.I0(\m_payload_i[25]_i_2_n_0 ), + .I1(m_axi_rdata[22]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[150]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[25]_i_3_n_0 ), .O(skid_buffer[25])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[25]_i_2 - (.I0(\m_payload_i[34]_i_4_n_0 ), - .I1(m_axi_rdata[118]), - .I2(m_axi_rdata[54]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[22]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(m_axi_rdata[118]), + .I1(m_axi_rdata[86]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[25]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[25]_i_3 + (.I0(\skid_buffer_reg_n_0_[25] ), + .I1(m_axi_rdata[54]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[25]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[26]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[26] ), - .I3(m_axi_rdata[55]), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(\m_payload_i[26]_i_2_n_0 ), + (.I0(\m_payload_i[26]_i_2_n_0 ), + .I1(m_axi_rdata[23]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[151]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[26]_i_3_n_0 ), .O(skid_buffer[26])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[26]_i_2 - (.I0(\m_payload_i[34]_i_4_n_0 ), - .I1(m_axi_rdata[119]), - .I2(m_axi_rdata[87]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[23]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(m_axi_rdata[119]), + .I1(m_axi_rdata[87]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[26]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[26]_i_3 + (.I0(\skid_buffer_reg_n_0_[26] ), + .I1(m_axi_rdata[55]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[26]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[27]_i_1 - (.I0(m_axi_rdata[24]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[27]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[27] ), - .I3(aa_rready), - .I4(\m_payload_i[27]_i_2_n_0 ), + .I3(m_axi_rdata[24]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[27]_i_3_n_0 ), .O(skid_buffer[27])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[27]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[56]), - .I2(m_axi_rdata[88]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[120]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[152]), + .I1(m_axi_rdata[120]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[27]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00000AC000000000)) + \m_payload_i[27]_i_3 + (.I0(m_axi_rdata[88]), + .I1(m_axi_rdata[56]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[27]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[28]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[28] ), - .I3(m_axi_rdata[121]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[28]_i_2_n_0 ), + (.I0(\m_payload_i[28]_i_2_n_0 ), + .I1(m_axi_rdata[25]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[153]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[28]_i_3_n_0 ), .O(skid_buffer[28])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[28]_i_2 - (.I0(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[121]), .I1(m_axi_rdata[89]), - .I2(m_axi_rdata[57]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[25]), - .I5(\m_payload_i[31]_i_2_n_0 ), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[28]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[28]_i_3 + (.I0(\skid_buffer_reg_n_0_[28] ), + .I1(m_axi_rdata[57]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[28]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[29]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[29] ), - .I3(m_axi_rdata[58]), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(\m_payload_i[29]_i_2_n_0 ), + (.I0(\m_payload_i[29]_i_2_n_0 ), + .I1(m_axi_rdata[26]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[154]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[29]_i_3_n_0 ), .O(skid_buffer[29])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[29]_i_2 - (.I0(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[122]), .I1(m_axi_rdata[90]), - .I2(m_axi_rdata[122]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(m_axi_rdata[26]), - .I5(\m_payload_i[31]_i_2_n_0 ), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[29]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[29]_i_3 + (.I0(\skid_buffer_reg_n_0_[29] ), + .I1(m_axi_rdata[58]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[29]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[2]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[2] ), - .I3(m_axi_rresp[3]), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(\m_payload_i[2]_i_2_n_0 ), + (.I0(\m_payload_i[2]_i_2_n_0 ), + .I1(m_axi_rresp[1]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rresp[9]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[2]_i_3_n_0 ), .O(skid_buffer[2])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[2]_i_2 - (.I0(\m_payload_i[31]_i_2_n_0 ), - .I1(m_axi_rresp[1]), - .I2(m_axi_rresp[5]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rresp[7]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rresp[7]), + .I1(m_axi_rresp[5]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[2]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[2]_i_3 + (.I0(\skid_buffer_reg_n_0_[2] ), + .I1(m_axi_rresp[3]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[2]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[30]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[30] ), - .I3(m_axi_rdata[123]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[30]_i_2_n_0 ), + (.I0(\m_payload_i[30]_i_2_n_0 ), + .I1(m_axi_rdata[27]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[155]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[30]_i_3_n_0 ), .O(skid_buffer[30])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[30]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[59]), - .I2(m_axi_rdata[91]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[27]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(m_axi_rdata[123]), + .I1(m_axi_rdata[91]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[30]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFF8FFF888)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[30]_i_3 + (.I0(\skid_buffer_reg_n_0_[30] ), + .I1(m_axi_rdata[59]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[30]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[31]_i_1 - (.I0(m_axi_rdata[28]), - .I1(\m_payload_i[31]_i_2_n_0 ), - .I2(\m_payload_i[34]_i_3_n_0 ), - .I3(aa_rready), - .I4(\skid_buffer_reg_n_0_[31] ), + (.I0(\m_payload_i[31]_i_2_n_0 ), + .I1(m_axi_rdata[28]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[156]), + .I4(\m_payload_i[34]_i_5_n_0 ), .I5(\m_payload_i[31]_i_3_n_0 ), .O(skid_buffer[31])); - LUT4 #( - .INIT(16'h0002)) + LUT6 #( + .INIT(64'h0000AC0000000000)) \m_payload_i[31]_i_2 - (.I0(aa_rready), - .I1(m_atarget_enc[2]), - .I2(m_atarget_enc[1]), - .I3(m_atarget_enc[0]), + (.I0(m_axi_rdata[124]), + .I1(m_axi_rdata[92]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[31]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h00F000C0AAAAAAAA)) \m_payload_i[31]_i_3 - (.I0(\m_payload_i[34]_i_4_n_0 ), - .I1(m_axi_rdata[124]), - .I2(m_axi_rdata[60]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[92]), - .I5(\m_payload_i[32]_i_2_n_0 ), + (.I0(\skid_buffer_reg_n_0_[31] ), + .I1(m_axi_rdata[60]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[31]_i_3_n_0 )); - LUT5 #( - .INIT(32'hFFFFF222)) + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[32]_i_1 - (.I0(\skid_buffer_reg_n_0_[32] ), + (.I0(\m_payload_i[32]_i_2_n_0 ), .I1(aa_rready), - .I2(m_axi_rdata[93]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(\m_payload_i[32]_i_3_n_0 ), + .I2(\skid_buffer_reg_n_0_[32] ), + .I3(m_axi_rdata[29]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[32]_i_3_n_0 ), .O(skid_buffer[32])); - LUT4 #( - .INIT(16'h0020)) + LUT6 #( + .INIT(64'h000AC00000000000)) \m_payload_i[32]_i_2 - (.I0(aa_rready), - .I1(m_atarget_enc[2]), - .I2(m_atarget_enc[1]), - .I3(m_atarget_enc[0]), + (.I0(m_axi_rdata[157]), + .I1(m_axi_rdata[125]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[32]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h00000AC000000000)) \m_payload_i[32]_i_3 - (.I0(\m_payload_i[33]_i_2_n_0 ), + (.I0(m_axi_rdata[93]), .I1(m_axi_rdata[61]), - .I2(m_axi_rdata[29]), - .I3(\m_payload_i[31]_i_2_n_0 ), - .I4(m_axi_rdata[125]), - .I5(\m_payload_i[34]_i_4_n_0 ), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[32]_i_3_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[33]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[33] ), - .I3(m_axi_rdata[62]), - .I4(\m_payload_i[33]_i_2_n_0 ), + (.I0(\m_payload_i[33]_i_2_n_0 ), + .I1(m_axi_rdata[30]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[158]), + .I4(\m_payload_i[34]_i_5_n_0 ), .I5(\m_payload_i[33]_i_3_n_0 ), .O(skid_buffer[33])); - LUT4 #( - .INIT(16'h0008)) + LUT6 #( + .INIT(64'h0000AC0000000000)) \m_payload_i[33]_i_2 - (.I0(aa_rready), - .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[1]), + (.I0(m_axi_rdata[126]), + .I1(m_axi_rdata[94]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[33]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h00F000C0AAAAAAAA)) \m_payload_i[33]_i_3 - (.I0(\m_payload_i[32]_i_2_n_0 ), - .I1(m_axi_rdata[94]), - .I2(m_axi_rdata[126]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(m_axi_rdata[30]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(\skid_buffer_reg_n_0_[33] ), + .I1(m_axi_rdata[62]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[33]_i_3_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[34]_i_2 (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[34] ), - .I3(m_axi_rdata[127]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[34]_i_5_n_0 ), + .I1(m_axi_rdata[31]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[159]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[34]_i_6_n_0 ), .O(skid_buffer[34])); - (* SOFT_HLUTNM = "soft_lutpair16" *) - LUT3 #( - .INIT(8'h04)) + LUT6 #( + .INIT(64'h0000AC0000000000)) \m_payload_i[34]_i_3 - (.I0(m_atarget_enc[0]), - .I1(m_atarget_enc[2]), - .I2(m_atarget_enc[1]), + (.I0(m_axi_rdata[127]), + .I1(m_axi_rdata[95]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[34]_i_3_n_0 )); LUT4 #( - .INIT(16'h0800)) + .INIT(16'h0100)) \m_payload_i[34]_i_4 - (.I0(aa_rready), - .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[2]), - .I3(m_atarget_enc[1]), + (.I0(\m_payload_i_reg[0]_0 [0]), + .I1(\m_payload_i_reg[0]_0 [1]), + .I2(\m_payload_i_reg[0]_0 [2]), + .I3(aa_rready), .O(\m_payload_i[34]_i_4_n_0 )); - LUT6 #( - .INIT(64'hFFFFF888F888F888)) + (* SOFT_HLUTNM = "soft_lutpair18" *) + LUT4 #( + .INIT(16'h0400)) \m_payload_i[34]_i_5 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[63]), - .I2(m_axi_rdata[95]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[31]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i_reg[0]_0 [0]), + .I1(\m_payload_i_reg[0]_0 [2]), + .I2(\m_payload_i_reg[0]_0 [1]), + .I3(aa_rready), .O(\m_payload_i[34]_i_5_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[34]_i_6 + (.I0(\skid_buffer_reg_n_0_[34] ), + .I1(m_axi_rdata[63]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[34]_i_6_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[3]_i_1 - (.I0(m_axi_rdata[0]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[3]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[3] ), - .I3(aa_rready), - .I4(\m_payload_i[3]_i_2_n_0 ), + .I3(m_axi_rdata[0]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[3]_i_3_n_0 ), .O(skid_buffer[3])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[3]_i_2 - (.I0(m_axi_rdata[32]), - .I1(\m_payload_i[33]_i_2_n_0 ), - .I2(m_axi_rdata[96]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(m_axi_rdata[64]), + (.I0(m_axi_rdata[128]), + .I1(m_axi_rdata[96]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[3]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[3]_i_3 + (.I0(m_axi_rdata[64]), + .I1(m_axi_rdata[32]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[3]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[4]_i_1 - (.I0(m_axi_rdata[1]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[4]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[4] ), - .I3(aa_rready), - .I4(\m_payload_i[4]_i_2_n_0 ), + .I3(m_axi_rdata[1]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[4]_i_3_n_0 ), .O(skid_buffer[4])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) - \m_payload_i[4]_i_2 + .INIT(64'h000AC00000000000)) + \m_payload_i[4]_i_2 + (.I0(m_axi_rdata[129]), + .I1(m_axi_rdata[97]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[4]_i_2_n_0 )); + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[4]_i_3 (.I0(m_axi_rdata[65]), - .I1(\m_payload_i[32]_i_2_n_0 ), - .I2(m_axi_rdata[97]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(\m_payload_i[33]_i_2_n_0 ), - .I5(m_axi_rdata[33]), - .O(\m_payload_i[4]_i_2_n_0 )); + .I1(m_axi_rdata[33]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[4]_i_3_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[5]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[5] ), - .I3(m_axi_rdata[66]), - .I4(\m_payload_i[32]_i_2_n_0 ), - .I5(\m_payload_i[5]_i_2_n_0 ), + (.I0(\m_payload_i[5]_i_2_n_0 ), + .I1(m_axi_rdata[2]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[130]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[5]_i_3_n_0 ), .O(skid_buffer[5])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[5]_i_2 - (.I0(\m_payload_i[31]_i_2_n_0 ), - .I1(m_axi_rdata[2]), - .I2(m_axi_rdata[98]), - .I3(\m_payload_i[34]_i_4_n_0 ), - .I4(m_axi_rdata[34]), - .I5(\m_payload_i[33]_i_2_n_0 ), + (.I0(m_axi_rdata[98]), + .I1(m_axi_rdata[66]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[5]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFFFB8B8B8)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[5]_i_3 + (.I0(\skid_buffer_reg_n_0_[5] ), + .I1(m_axi_rdata[34]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[5]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[6]_i_1 - (.I0(\m_payload_i[34]_i_3_n_0 ), - .I1(aa_rready), - .I2(\skid_buffer_reg_n_0_[6] ), - .I3(m_axi_rdata[99]), - .I4(\m_payload_i[34]_i_4_n_0 ), - .I5(\m_payload_i[6]_i_2_n_0 ), + (.I0(\m_payload_i[6]_i_2_n_0 ), + .I1(m_axi_rdata[3]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[131]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[6]_i_3_n_0 ), .O(skid_buffer[6])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[6]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[35]), - .I2(m_axi_rdata[67]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[3]), - .I5(\m_payload_i[31]_i_2_n_0 ), + (.I0(m_axi_rdata[99]), + .I1(m_axi_rdata[67]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[6]_i_2_n_0 )); LUT6 #( - .INIT(64'hFFFFFFFFF8FFF888)) + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[6]_i_3 + (.I0(\skid_buffer_reg_n_0_[6] ), + .I1(m_axi_rdata[35]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[6]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFEAEAEA)) \m_payload_i[7]_i_1 - (.I0(m_axi_rdata[4]), - .I1(\m_payload_i[31]_i_2_n_0 ), - .I2(\m_payload_i[34]_i_3_n_0 ), - .I3(aa_rready), - .I4(\skid_buffer_reg_n_0_[7] ), - .I5(\m_payload_i[7]_i_2_n_0 ), + (.I0(\m_payload_i[7]_i_2_n_0 ), + .I1(m_axi_rdata[4]), + .I2(\m_payload_i[34]_i_4_n_0 ), + .I3(m_axi_rdata[132]), + .I4(\m_payload_i[34]_i_5_n_0 ), + .I5(\m_payload_i[7]_i_3_n_0 ), .O(skid_buffer[7])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h0000AC0000000000)) \m_payload_i[7]_i_2 - (.I0(\m_payload_i[34]_i_4_n_0 ), - .I1(m_axi_rdata[100]), - .I2(m_axi_rdata[36]), - .I3(\m_payload_i[33]_i_2_n_0 ), - .I4(m_axi_rdata[68]), - .I5(\m_payload_i[32]_i_2_n_0 ), + (.I0(m_axi_rdata[100]), + .I1(m_axi_rdata[68]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[7]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFF88F8)) + LUT6 #( + .INIT(64'h00F000C0AAAAAAAA)) + \m_payload_i[7]_i_3 + (.I0(\skid_buffer_reg_n_0_[7] ), + .I1(m_axi_rdata[36]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[7]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[8]_i_1 - (.I0(m_axi_rdata[5]), - .I1(\m_payload_i[31]_i_2_n_0 ), + (.I0(\m_payload_i[8]_i_2_n_0 ), + .I1(aa_rready), .I2(\skid_buffer_reg_n_0_[8] ), - .I3(aa_rready), - .I4(\m_payload_i[8]_i_2_n_0 ), + .I3(m_axi_rdata[5]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[8]_i_3_n_0 ), .O(skid_buffer[8])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[8]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[37]), - .I2(m_axi_rdata[69]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(m_axi_rdata[101]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[133]), + .I1(m_axi_rdata[101]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[8]_i_2_n_0 )); - LUT5 #( - .INIT(32'hFFFFF222)) + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[8]_i_3 + (.I0(m_axi_rdata[69]), + .I1(m_axi_rdata[37]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[8]_i_3_n_0 )); + LUT6 #( + .INIT(64'hFFFFFFFFFFBABABA)) \m_payload_i[9]_i_1 - (.I0(\skid_buffer_reg_n_0_[9] ), + (.I0(\m_payload_i[9]_i_2_n_0 ), .I1(aa_rready), - .I2(m_axi_rdata[70]), - .I3(\m_payload_i[32]_i_2_n_0 ), - .I4(\m_payload_i[9]_i_2_n_0 ), + .I2(\skid_buffer_reg_n_0_[9] ), + .I3(m_axi_rdata[6]), + .I4(\m_payload_i[34]_i_4_n_0 ), + .I5(\m_payload_i[9]_i_3_n_0 ), .O(skid_buffer[9])); LUT6 #( - .INIT(64'hFFFFF888F888F888)) + .INIT(64'h000AC00000000000)) \m_payload_i[9]_i_2 - (.I0(\m_payload_i[33]_i_2_n_0 ), - .I1(m_axi_rdata[38]), - .I2(m_axi_rdata[6]), - .I3(\m_payload_i[31]_i_2_n_0 ), - .I4(m_axi_rdata[102]), - .I5(\m_payload_i[34]_i_4_n_0 ), + (.I0(m_axi_rdata[134]), + .I1(m_axi_rdata[102]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), .O(\m_payload_i[9]_i_2_n_0 )); + LUT6 #( + .INIT(64'h00000AC000000000)) + \m_payload_i[9]_i_3 + (.I0(m_axi_rdata[70]), + .I1(m_axi_rdata[38]), + .I2(\m_payload_i_reg[0]_0 [0]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [2]), + .I5(aa_rready), + .O(\m_payload_i[9]_i_3_n_0 )); FDRE \m_payload_i_reg[0] (.C(aclk), .CE(E), @@ -4091,40 +4471,32 @@ module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice .D(skid_buffer[9]), .Q(Q[9]), .R(1'b0)); - LUT6 #( - .INIT(64'h000000007FFFFFFF)) - \m_ready_d[1]_i_3 - (.I0(sr_rvalid), - .I1(Q[0]), - .I2(s_axi_rready), - .I3(aa_grant_rnw), - .I4(m_valid_i), - .I5(m_ready_d), - .O(m_valid_i_reg_0)); - LUT6 #( - .INIT(64'h00CA000F00CA0000)) + LUT5 #( + .INIT(32'h0C0000A0)) m_valid_i_i_4 - (.I0(m_axi_rvalid[1]), + (.I0(m_axi_rvalid[3]), .I1(m_axi_rvalid[2]), - .I2(m_atarget_enc[0]), - .I3(m_atarget_enc[2]), - .I4(m_atarget_enc[1]), - .I5(m_axi_rvalid[0]), + .I2(\m_payload_i_reg[0]_0 [2]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [0]), + .O(\m_axi_rvalid[4] )); + LUT5 #( + .INIT(32'h000C0A00)) + m_valid_i_i_6 + (.I0(m_axi_rvalid[1]), + .I1(m_axi_rvalid[0]), + .I2(\m_payload_i_reg[0]_0 [2]), + .I3(\m_payload_i_reg[0]_0 [1]), + .I4(\m_payload_i_reg[0]_0 [0]), .O(m_axi_rvalid_2_sn_1)); FDRE #( .INIT(1'b0)) m_valid_i_reg (.C(aclk), .CE(1'b1), - .D(m_valid_i_reg_1), + .D(m_valid_i_reg_0), .Q(sr_rvalid), .R(1'b0)); - LUT2 #( - .INIT(4'h2)) - \s_axi_rvalid[0]_INST_0 - (.I0(sr_rvalid), - .I1(p_0_in1_in), - .O(s_axi_rvalid)); FDRE #( .INIT(1'b0)) s_ready_i_reg @@ -4133,15 +4505,14 @@ module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice .D(s_ready_i_reg_0), .Q(aa_rready), .R(1'b0)); - (* SOFT_HLUTNM = "soft_lutpair16" *) - LUT5 #( - .INIT(32'h03FFAAAA)) + (* SOFT_HLUTNM = "soft_lutpair18" *) + LUT4 #( + .INIT(16'h2EEE)) \skid_buffer[0]_i_1 (.I0(\skid_buffer_reg_n_0_[0] ), - .I1(m_atarget_enc[0]), - .I2(m_atarget_enc[1]), - .I3(m_atarget_enc[2]), - .I4(aa_rready), + .I1(aa_rready), + .I2(\m_payload_i_reg[0]_0 [2]), + .I3(\m_payload_i_reg[0]_0 [1]), .O(skid_buffer[0])); FDRE \skid_buffer_reg[0] (.C(aclk), @@ -4354,6 +4725,299 @@ module mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice .Q(\skid_buffer_reg_n_0_[9] ), .R(1'b0)); endmodule + +(* CHECK_LICENSE_TYPE = "mb_design_1_xbar_0,axi_crossbar_v2_1_33_axi_crossbar,{}" *) (* DowngradeIPIdentifiedWarnings = "yes" *) (* X_CORE_INFO = "axi_crossbar_v2_1_33_axi_crossbar,Vivado 2024.1.2" *) +(* NotValidForBitStream *) +module mb_design_1_xbar_0 + (aclk, + aresetn, + s_axi_awaddr, + s_axi_awprot, + s_axi_awvalid, + s_axi_awready, + s_axi_wdata, + s_axi_wstrb, + s_axi_wvalid, + s_axi_wready, + s_axi_bresp, + s_axi_bvalid, + s_axi_bready, + s_axi_araddr, + s_axi_arprot, + s_axi_arvalid, + s_axi_arready, + s_axi_rdata, + s_axi_rresp, + s_axi_rvalid, + s_axi_rready, + m_axi_awaddr, + m_axi_awprot, + m_axi_awvalid, + m_axi_awready, + m_axi_wdata, + m_axi_wstrb, + m_axi_wvalid, + m_axi_wready, + m_axi_bresp, + m_axi_bvalid, + m_axi_bready, + m_axi_araddr, + m_axi_arprot, + m_axi_arvalid, + m_axi_arready, + m_axi_rdata, + m_axi_rresp, + m_axi_rvalid, + m_axi_rready); + (* X_INTERFACE_INFO = "xilinx.com:signal:clock:1.0 CLKIF CLK" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME CLKIF, ASSOCIATED_BUSIF M00_AXI:M01_AXI:M02_AXI:M03_AXI:M04_AXI:M05_AXI:M06_AXI:M07_AXI:M08_AXI:M09_AXI:M10_AXI:M11_AXI:M12_AXI:M13_AXI:M14_AXI:M15_AXI:S00_AXI:S01_AXI:S02_AXI:S03_AXI:S04_AXI:S05_AXI:S06_AXI:S07_AXI:S08_AXI:S09_AXI:S10_AXI:S11_AXI:S12_AXI:S13_AXI:S14_AXI:S15_AXI, ASSOCIATED_RESET aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0" *) input aclk; + (* X_INTERFACE_INFO = "xilinx.com:signal:reset:1.0 RSTIF RST" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME RSTIF, POLARITY ACTIVE_LOW, INSERT_VIP 0, TYPE INTERCONNECT" *) input aresetn; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWADDR" *) input [31:0]s_axi_awaddr; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWPROT" *) input [2:0]s_axi_awprot; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWVALID" *) input [0:0]s_axi_awvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI AWREADY" *) output [0:0]s_axi_awready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WDATA" *) input [31:0]s_axi_wdata; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WSTRB" *) input [3:0]s_axi_wstrb; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WVALID" *) input [0:0]s_axi_wvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI WREADY" *) output [0:0]s_axi_wready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI BRESP" *) output [1:0]s_axi_bresp; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI BVALID" *) output [0:0]s_axi_bvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI BREADY" *) input [0:0]s_axi_bready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARADDR" *) input [31:0]s_axi_araddr; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARPROT" *) input [2:0]s_axi_arprot; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARVALID" *) input [0:0]s_axi_arvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI ARREADY" *) output [0:0]s_axi_arready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RDATA" *) output [31:0]s_axi_rdata; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RRESP" *) output [1:0]s_axi_rresp; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RVALID" *) output [0:0]s_axi_rvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RREADY" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME S00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) input [0:0]s_axi_rready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI AWADDR [31:0] [159:128]" *) output [159:0]m_axi_awaddr; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI AWPROT [2:0] [14:12]" *) output [14:0]m_axi_awprot; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWVALID [0:0] [4:4]" *) output [4:0]m_axi_awvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWREADY [0:0] [4:4]" *) input [4:0]m_axi_awready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI WDATA [31:0] [159:128]" *) output [159:0]m_axi_wdata; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12], xilinx.com:interface:aximm:1.0 M04_AXI WSTRB [3:0] [19:16]" *) output [19:0]m_axi_wstrb; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WVALID [0:0] [4:4]" *) output [4:0]m_axi_wvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WREADY [0:0] [4:4]" *) input [4:0]m_axi_wready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI BRESP [1:0] [9:8]" *) input [9:0]m_axi_bresp; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BVALID [0:0] [4:4]" *) input [4:0]m_axi_bvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BREADY [0:0] [4:4]" *) output [4:0]m_axi_bready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI ARADDR [31:0] [159:128]" *) output [159:0]m_axi_araddr; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI ARPROT [2:0] [14:12]" *) output [14:0]m_axi_arprot; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARVALID [0:0] [4:4]" *) output [4:0]m_axi_arvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARREADY [0:0] [4:4]" *) input [4:0]m_axi_arready; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI RDATA [31:0] [159:128]" *) input [159:0]m_axi_rdata; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI RRESP [1:0] [9:8]" *) input [9:0]m_axi_rresp; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RVALID [0:0] [4:4]" *) input [4:0]m_axi_rvalid; + (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RREADY [0:0] [4:4]" *) (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME M00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M01_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M02_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M03_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M04_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) output [4:0]m_axi_rready; + + wire aclk; + wire aresetn; + wire [159:0]m_axi_araddr; + wire [14:0]m_axi_arprot; + wire [4:0]m_axi_arready; + wire [4:0]m_axi_arvalid; + wire [159:0]m_axi_awaddr; + wire [14:0]m_axi_awprot; + wire [4:0]m_axi_awready; + wire [4:0]m_axi_awvalid; + wire [4:0]m_axi_bready; + wire [9:0]m_axi_bresp; + wire [4:0]m_axi_bvalid; + wire [159:0]m_axi_rdata; + wire [4:0]m_axi_rready; + wire [9:0]m_axi_rresp; + wire [4:0]m_axi_rvalid; + wire [159:0]m_axi_wdata; + wire [4:0]m_axi_wready; + wire [19:0]m_axi_wstrb; + wire [4:0]m_axi_wvalid; + wire [31:0]s_axi_araddr; + wire [2:0]s_axi_arprot; + wire [0:0]s_axi_arready; + wire [0:0]s_axi_arvalid; + wire [31:0]s_axi_awaddr; + wire [2:0]s_axi_awprot; + wire [0:0]s_axi_awready; + wire [0:0]s_axi_awvalid; + wire [0:0]s_axi_bready; + wire [1:0]s_axi_bresp; + wire [0:0]s_axi_bvalid; + wire [31:0]s_axi_rdata; + wire [0:0]s_axi_rready; + wire [1:0]s_axi_rresp; + wire [0:0]s_axi_rvalid; + wire [31:0]s_axi_wdata; + wire [0:0]s_axi_wready; + wire [3:0]s_axi_wstrb; + wire [0:0]s_axi_wvalid; + wire [9:0]NLW_inst_m_axi_arburst_UNCONNECTED; + wire [19:0]NLW_inst_m_axi_arcache_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_arid_UNCONNECTED; + wire [39:0]NLW_inst_m_axi_arlen_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_arlock_UNCONNECTED; + wire [19:0]NLW_inst_m_axi_arqos_UNCONNECTED; + wire [19:0]NLW_inst_m_axi_arregion_UNCONNECTED; + wire [14:0]NLW_inst_m_axi_arsize_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_aruser_UNCONNECTED; + wire [9:0]NLW_inst_m_axi_awburst_UNCONNECTED; + wire [19:0]NLW_inst_m_axi_awcache_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_awid_UNCONNECTED; + wire [39:0]NLW_inst_m_axi_awlen_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_awlock_UNCONNECTED; + wire [19:0]NLW_inst_m_axi_awqos_UNCONNECTED; + wire [19:0]NLW_inst_m_axi_awregion_UNCONNECTED; + wire [14:0]NLW_inst_m_axi_awsize_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_awuser_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_wid_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_wlast_UNCONNECTED; + wire [4:0]NLW_inst_m_axi_wuser_UNCONNECTED; + wire [0:0]NLW_inst_s_axi_bid_UNCONNECTED; + wire [0:0]NLW_inst_s_axi_buser_UNCONNECTED; + wire [0:0]NLW_inst_s_axi_rid_UNCONNECTED; + wire [0:0]NLW_inst_s_axi_rlast_UNCONNECTED; + wire [0:0]NLW_inst_s_axi_ruser_UNCONNECTED; + + (* C_AXI_ADDR_WIDTH = "32" *) + (* C_AXI_ARUSER_WIDTH = "1" *) + (* C_AXI_AWUSER_WIDTH = "1" *) + (* C_AXI_BUSER_WIDTH = "1" *) + (* C_AXI_DATA_WIDTH = "32" *) + (* C_AXI_ID_WIDTH = "1" *) + (* C_AXI_PROTOCOL = "2" *) + (* C_AXI_RUSER_WIDTH = "1" *) + (* C_AXI_SUPPORTS_USER_SIGNALS = "0" *) + (* C_AXI_WUSER_WIDTH = "1" *) + (* C_CONNECTIVITY_MODE = "0" *) + (* C_DEBUG = "1" *) + (* C_FAMILY = "artix7" *) + (* C_M_AXI_ADDR_WIDTH = "160'b0000000000000000000000000000011100000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100" *) + (* C_M_AXI_BASE_ADDR = "320'b00000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000001001000000000000000000000000000000000000000000000000000000100000111000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000" *) + (* C_M_AXI_READ_CONNECTIVITY = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) + (* C_M_AXI_READ_ISSUING = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) + (* C_M_AXI_SECURE = "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) + (* C_M_AXI_WRITE_CONNECTIVITY = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) + (* C_M_AXI_WRITE_ISSUING = "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001" *) + (* C_NUM_ADDR_RANGES = "1" *) + (* C_NUM_MASTER_SLOTS = "5" *) + (* C_NUM_SLAVE_SLOTS = "1" *) + (* C_R_REGISTER = "1" *) + (* C_S_AXI_ARB_PRIORITY = "0" *) + (* C_S_AXI_BASE_ID = "0" *) + (* C_S_AXI_READ_ACCEPTANCE = "1" *) + (* C_S_AXI_SINGLE_THREAD = "1" *) + (* C_S_AXI_THREAD_ID_WIDTH = "0" *) + (* C_S_AXI_WRITE_ACCEPTANCE = "1" *) + (* DowngradeIPIdentifiedWarnings = "yes" *) + (* P_ADDR_DECODE = "1" *) + (* P_AXI3 = "1" *) + (* P_AXI4 = "0" *) + (* P_AXILITE = "2" *) + (* P_AXILITE_SIZE = "3'b010" *) + (* P_FAMILY = "artix7" *) + (* P_INCR = "2'b01" *) + (* P_LEN = "8" *) + (* P_LOCK = "1" *) + (* P_M_AXI_ERR_MODE = "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" *) + (* P_M_AXI_SUPPORTS_READ = "5'b11111" *) + (* P_M_AXI_SUPPORTS_WRITE = "5'b11111" *) + (* P_ONES = "65'b11111111111111111111111111111111111111111111111111111111111111111" *) + (* P_RANGE_CHECK = "1" *) + (* P_S_AXI_BASE_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) + (* P_S_AXI_HIGH_ID = "64'b0000000000000000000000000000000000000000000000000000000000000000" *) + (* P_S_AXI_SUPPORTS_READ = "1'b1" *) + (* P_S_AXI_SUPPORTS_WRITE = "1'b1" *) + mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar inst + (.aclk(aclk), + .aresetn(aresetn), + .m_axi_araddr(m_axi_araddr), + .m_axi_arburst(NLW_inst_m_axi_arburst_UNCONNECTED[9:0]), + .m_axi_arcache(NLW_inst_m_axi_arcache_UNCONNECTED[19:0]), + .m_axi_arid(NLW_inst_m_axi_arid_UNCONNECTED[4:0]), + .m_axi_arlen(NLW_inst_m_axi_arlen_UNCONNECTED[39:0]), + .m_axi_arlock(NLW_inst_m_axi_arlock_UNCONNECTED[4:0]), + .m_axi_arprot(m_axi_arprot), + .m_axi_arqos(NLW_inst_m_axi_arqos_UNCONNECTED[19:0]), + .m_axi_arready(m_axi_arready), + .m_axi_arregion(NLW_inst_m_axi_arregion_UNCONNECTED[19:0]), + .m_axi_arsize(NLW_inst_m_axi_arsize_UNCONNECTED[14:0]), + .m_axi_aruser(NLW_inst_m_axi_aruser_UNCONNECTED[4:0]), + .m_axi_arvalid(m_axi_arvalid), + .m_axi_awaddr(m_axi_awaddr), + .m_axi_awburst(NLW_inst_m_axi_awburst_UNCONNECTED[9:0]), + .m_axi_awcache(NLW_inst_m_axi_awcache_UNCONNECTED[19:0]), + .m_axi_awid(NLW_inst_m_axi_awid_UNCONNECTED[4:0]), + .m_axi_awlen(NLW_inst_m_axi_awlen_UNCONNECTED[39:0]), + .m_axi_awlock(NLW_inst_m_axi_awlock_UNCONNECTED[4:0]), + .m_axi_awprot(m_axi_awprot), + .m_axi_awqos(NLW_inst_m_axi_awqos_UNCONNECTED[19:0]), + .m_axi_awready(m_axi_awready), + .m_axi_awregion(NLW_inst_m_axi_awregion_UNCONNECTED[19:0]), + .m_axi_awsize(NLW_inst_m_axi_awsize_UNCONNECTED[14:0]), + .m_axi_awuser(NLW_inst_m_axi_awuser_UNCONNECTED[4:0]), + .m_axi_awvalid(m_axi_awvalid), + .m_axi_bid({1'b0,1'b0,1'b0,1'b0,1'b0}), + .m_axi_bready(m_axi_bready), + .m_axi_bresp(m_axi_bresp), + .m_axi_buser({1'b0,1'b0,1'b0,1'b0,1'b0}), + .m_axi_bvalid(m_axi_bvalid), + .m_axi_rdata(m_axi_rdata), + .m_axi_rid({1'b0,1'b0,1'b0,1'b0,1'b0}), + .m_axi_rlast({1'b1,1'b1,1'b1,1'b1,1'b1}), + .m_axi_rready(m_axi_rready), + .m_axi_rresp(m_axi_rresp), + .m_axi_ruser({1'b0,1'b0,1'b0,1'b0,1'b0}), + .m_axi_rvalid(m_axi_rvalid), + .m_axi_wdata(m_axi_wdata), + .m_axi_wid(NLW_inst_m_axi_wid_UNCONNECTED[4:0]), + .m_axi_wlast(NLW_inst_m_axi_wlast_UNCONNECTED[4:0]), + .m_axi_wready(m_axi_wready), + .m_axi_wstrb(m_axi_wstrb), + .m_axi_wuser(NLW_inst_m_axi_wuser_UNCONNECTED[4:0]), + .m_axi_wvalid(m_axi_wvalid), + .s_axi_araddr(s_axi_araddr), + .s_axi_arburst({1'b0,1'b0}), + .s_axi_arcache({1'b0,1'b0,1'b0,1'b0}), + .s_axi_arid(1'b0), + .s_axi_arlen({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .s_axi_arlock(1'b0), + .s_axi_arprot(s_axi_arprot), + .s_axi_arqos({1'b0,1'b0,1'b0,1'b0}), + .s_axi_arready(s_axi_arready), + .s_axi_arsize({1'b0,1'b0,1'b0}), + .s_axi_aruser(1'b0), + .s_axi_arvalid(s_axi_arvalid), + .s_axi_awaddr(s_axi_awaddr), + .s_axi_awburst({1'b0,1'b0}), + .s_axi_awcache({1'b0,1'b0,1'b0,1'b0}), + .s_axi_awid(1'b0), + .s_axi_awlen({1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0,1'b0}), + .s_axi_awlock(1'b0), + .s_axi_awprot(s_axi_awprot), + .s_axi_awqos({1'b0,1'b0,1'b0,1'b0}), + .s_axi_awready(s_axi_awready), + .s_axi_awsize({1'b0,1'b0,1'b0}), + .s_axi_awuser(1'b0), + .s_axi_awvalid(s_axi_awvalid), + .s_axi_bid(NLW_inst_s_axi_bid_UNCONNECTED[0]), + .s_axi_bready(s_axi_bready), + .s_axi_bresp(s_axi_bresp), + .s_axi_buser(NLW_inst_s_axi_buser_UNCONNECTED[0]), + .s_axi_bvalid(s_axi_bvalid), + .s_axi_rdata(s_axi_rdata), + .s_axi_rid(NLW_inst_s_axi_rid_UNCONNECTED[0]), + .s_axi_rlast(NLW_inst_s_axi_rlast_UNCONNECTED[0]), + .s_axi_rready(s_axi_rready), + .s_axi_rresp(s_axi_rresp), + .s_axi_ruser(NLW_inst_s_axi_ruser_UNCONNECTED[0]), + .s_axi_rvalid(s_axi_rvalid), + .s_axi_wdata(s_axi_wdata), + .s_axi_wid(1'b0), + .s_axi_wlast(1'b1), + .s_axi_wready(s_axi_wready), + .s_axi_wstrb(s_axi_wstrb), + .s_axi_wuser(1'b0), + .s_axi_wvalid(s_axi_wvalid)); +endmodule `ifndef GLBL `define GLBL `timescale 1 ps / 1 ps diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.vhdl b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.vhdl index 4ba4bd8..fd19cd9 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.vhdl +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.vhdl @@ -2,10 +2,10 @@ -- Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. -- -------------------------------------------------------------------------------- -- Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 --- Date : Tue Mar 4 22:38:42 2025 +-- Date : Thu Mar 20 17:31:25 2025 -- Host : hogtest running 64-bit unknown --- Command : write_vhdl -force -mode funcsim --- /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_sim_netlist.vhdl +-- Command : write_vhdl -force -mode funcsim -rename_top mb_design_1_xbar_0 -prefix +-- mb_design_1_xbar_0_ mb_design_1_xbar_0_sim_netlist.vhdl -- Design : mb_design_1_xbar_0 -- Purpose : This VHDL netlist is a functional simulation representation of the design and should not be modified or -- synthesized. This netlist cannot be used for SDF annotated simulation. @@ -17,62 +17,57 @@ library UNISIM; use UNISIM.VCOMPONENTS.ALL; entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd is port ( - p_0_in1_in : out STD_LOGIC; m_valid_i : out STD_LOGIC; SR : out STD_LOGIC_VECTOR ( 0 to 0 ); aa_grant_rnw : out STD_LOGIC; - aresetn_d_reg : out STD_LOGIC; - D : out STD_LOGIC_VECTOR ( 3 downto 0 ); - aresetn_d_reg_0 : out STD_LOGIC; - aresetn_d_reg_1 : out STD_LOGIC; - \gen_no_arbiter.m_amesg_i_reg[19]_0\ : out STD_LOGIC_VECTOR ( 0 to 0 ); - Q : out STD_LOGIC_VECTOR ( 34 downto 0 ); - m_ready_d0 : out STD_LOGIC_VECTOR ( 0 to 0 ); - s_axi_wready : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_wvalid : out STD_LOGIC_VECTOR ( 2 downto 0 ); - s_axi_wvalid_0_sp_1 : out STD_LOGIC; - m_axi_awvalid : out STD_LOGIC_VECTOR ( 2 downto 0 ); s_axi_bvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_bready : out STD_LOGIC_VECTOR ( 2 downto 0 ); - s_axi_bready_0_sp_1 : out STD_LOGIC; - \gen_no_arbiter.grant_rnw_reg_0\ : out STD_LOGIC; + s_axi_wready : out STD_LOGIC_VECTOR ( 0 to 0 ); + m_axi_bready : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + \gen_no_arbiter.grant_rnw_reg_0\ : out STD_LOGIC_VECTOR ( 0 to 0 ); + m_axi_wvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + \gen_no_arbiter.m_valid_i_reg_0\ : out STD_LOGIC; \aresetn_d_reg[0]\ : out STD_LOGIC; - \aresetn_d_reg[1]\ : out STD_LOGIC; E : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_arvalid : out STD_LOGIC_VECTOR ( 2 downto 0 ); - m_ready_d0_0 : out STD_LOGIC_VECTOR ( 0 to 0 ); - \m_ready_d_reg[1]\ : out STD_LOGIC; - \gen_no_arbiter.grant_rnw_reg_1\ : out STD_LOGIC; + \aresetn_d_reg[1]\ : out STD_LOGIC; + m_ready_d0 : out STD_LOGIC_VECTOR ( 1 downto 0 ); + m_axi_arvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + mi_arvalid_en : out STD_LOGIC; s_axi_awready : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_arready : out STD_LOGIC_VECTOR ( 0 to 0 ); - \gen_axilite.s_axi_awready_i_reg\ : out STD_LOGIC; - \m_ready_d_reg[2]\ : out STD_LOGIC; + s_axi_rvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); + D : out STD_LOGIC_VECTOR ( 2 downto 0 ); + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\ : out STD_LOGIC_VECTOR ( 5 downto 0 ); + \gen_no_arbiter.m_amesg_i_reg[48]_0\ : out STD_LOGIC_VECTOR ( 34 downto 0 ); + \m_atarget_hot_reg[5]\ : out STD_LOGIC; + \gen_axilite.s_axi_bvalid_i_reg\ : out STD_LOGIC; aclk : in STD_LOGIC; - aresetn_d : in STD_LOGIC; + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\ : in STD_LOGIC; + m_ready_d0_0 : in STD_LOGIC_VECTOR ( 1 downto 0 ); s_axi_awvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_arvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); - \gen_no_arbiter.m_valid_i_reg_0\ : in STD_LOGIC; + aresetn_d : in STD_LOGIC; m_ready_d : in STD_LOGIC_VECTOR ( 2 downto 0 ); - s_axi_wready_0_sp_1 : in STD_LOGIC; - \gen_axilite.s_axi_bvalid_i_reg\ : in STD_LOGIC_VECTOR ( 3 downto 0 ); - s_axi_wvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0\ : in STD_LOGIC; - s_axi_bvalid_0_sp_1 : in STD_LOGIC; + \f_mux_return__3\ : in STD_LOGIC; + \f_mux_return__1\ : in STD_LOGIC; + Q : in STD_LOGIC_VECTOR ( 5 downto 0 ); s_axi_bready : in STD_LOGIC_VECTOR ( 0 to 0 ); - \m_ready_d[2]_i_3\ : in STD_LOGIC; - \m_ready_d[2]_i_3_0\ : in STD_LOGIC; + \gen_no_arbiter.m_valid_i_reg_1\ : in STD_LOGIC; + \gen_no_arbiter.m_valid_i_reg_2\ : in STD_LOGIC; + \gen_no_arbiter.m_valid_i_reg_3\ : in STD_LOGIC; + s_axi_wvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); m_valid_i_reg : in STD_LOGIC_VECTOR ( 1 downto 0 ); - aa_rready : in STD_LOGIC; - m_ready_d_1 : in STD_LOGIC_VECTOR ( 1 downto 0 ); m_valid_i_reg_0 : in STD_LOGIC; m_valid_i_reg_1 : in STD_LOGIC; + m_valid_i_reg_2 : in STD_LOGIC; + aa_rready : in STD_LOGIC; + m_ready_d_1 : in STD_LOGIC_VECTOR ( 1 downto 0 ); s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); sr_rvalid : in STD_LOGIC; + \m_ready_d_reg[1]\ : in STD_LOGIC_VECTOR ( 0 to 0 ); \m_ready_d_reg[1]_0\ : in STD_LOGIC; \m_ready_d_reg[1]_1\ : in STD_LOGIC; - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1\ : in STD_LOGIC; - m_axi_wready : in STD_LOGIC_VECTOR ( 1 downto 0 ); - m_atarget_enc : in STD_LOGIC_VECTOR ( 2 downto 0 ); + \m_ready_d_reg[1]_2\ : in STD_LOGIC; s_axi_arprot : in STD_LOGIC_VECTOR ( 2 downto 0 ); s_axi_awprot : in STD_LOGIC_VECTOR ( 2 downto 0 ); s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); @@ -80,159 +75,173 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd is mi_wready : in STD_LOGIC_VECTOR ( 0 to 0 ); mi_bvalid : in STD_LOGIC_VECTOR ( 0 to 0 ) ); - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd : entity is "axi_crossbar_v2_1_33_addr_arbiter_sasd"; end mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd; architecture STRUCTURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd is - signal \^q\ : STD_LOGIC_VECTOR ( 34 downto 0 ); + signal \^e\ : STD_LOGIC_VECTOR ( 0 to 0 ); signal \^sr\ : STD_LOGIC_VECTOR ( 0 to 0 ); signal \^aa_grant_rnw\ : STD_LOGIC; - signal \gen_axilite.s_axi_bvalid_i_i_2_n_0\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2\ : STD_LOGIC; + signal \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3\ : STD_LOGIC; signal \gen_no_arbiter.grant_rnw_i_1_n_0\ : STD_LOGIC; - signal \^gen_no_arbiter.grant_rnw_reg_0\ : STD_LOGIC; + signal \^gen_no_arbiter.m_amesg_i_reg[48]_0\ : STD_LOGIC_VECTOR ( 34 downto 0 ); signal \gen_no_arbiter.m_grant_hot_i[0]_inv_i_1_n_0\ : STD_LOGIC; signal \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0\ : STD_LOGIC; - signal \gen_no_arbiter.m_grant_hot_i[0]_inv_i_3_n_0\ : STD_LOGIC; signal \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0\ : STD_LOGIC; signal \gen_no_arbiter.m_valid_i_i_1_n_0\ : STD_LOGIC; signal \gen_no_arbiter.s_ready_i[0]_i_1_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_10_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_2_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_5_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_6_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_7_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_8_n_0\ : STD_LOGIC; - signal \m_atarget_hot[4]_i_9_n_0\ : STD_LOGIC; - signal \^m_ready_d0\ : STD_LOGIC_VECTOR ( 0 to 0 ); - signal \m_ready_d[0]_i_4_n_0\ : STD_LOGIC; + signal \m_atarget_hot[2]_i_3_n_0\ : STD_LOGIC; + signal \m_atarget_hot[3]_i_3_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_12_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_13_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_14_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_15_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_16_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_2_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_6_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_8_n_0\ : STD_LOGIC; + signal \m_atarget_hot[5]_i_9_n_0\ : STD_LOGIC; signal \^m_valid_i\ : STD_LOGIC; signal m_valid_i_i_2_n_0 : STD_LOGIC; - signal m_valid_i_i_3_n_0 : STD_LOGIC; - signal \^p_0_in1_in\ : STD_LOGIC; + signal mi_awvalid_en : STD_LOGIC; + signal p_0_in1_in : STD_LOGIC; + signal p_3_in : STD_LOGIC; + signal p_4_in : STD_LOGIC; + signal r_transfer_en : STD_LOGIC; signal s_amesg : STD_LOGIC_VECTOR ( 48 downto 1 ); signal \s_arvalid_reg[0]_i_1_n_0\ : STD_LOGIC; signal \s_arvalid_reg_reg_n_0_[0]\ : STD_LOGIC; signal s_awvalid_reg : STD_LOGIC; signal \s_awvalid_reg[0]_i_1_n_0\ : STD_LOGIC; - signal s_axi_bready_0_sn_1 : STD_LOGIC; - signal s_axi_bvalid_0_sn_1 : STD_LOGIC; - signal s_axi_wready_0_sn_1 : STD_LOGIC; - signal s_axi_wvalid_0_sn_1 : STD_LOGIC; signal s_ready_i : STD_LOGIC; - signal target_mi_enc : STD_LOGIC_VECTOR ( 1 downto 0 ); + signal target_mi_enc : STD_LOGIC_VECTOR ( 2 to 2 ); attribute SOFT_HLUTNM : string; - attribute SOFT_HLUTNM of \gen_axilite.s_axi_awready_i_i_2\ : label is "soft_lutpair2"; - attribute SOFT_HLUTNM of \gen_axilite.s_axi_bvalid_i_i_2\ : label is "soft_lutpair11"; - attribute SOFT_HLUTNM of \gen_axilite.s_axi_rvalid_i_i_2\ : label is "soft_lutpair1"; + attribute SOFT_HLUTNM of \gen_axilite.s_axi_bvalid_i_i_2\ : label is "soft_lutpair5"; + attribute SOFT_HLUTNM of \gen_axilite.s_axi_bvalid_i_i_3\ : label is "soft_lutpair6"; + attribute SOFT_HLUTNM of \gen_axilite.s_axi_bvalid_i_i_4\ : label is "soft_lutpair9"; + attribute SOFT_HLUTNM of \gen_axilite.s_axi_rvalid_i_i_2\ : label is "soft_lutpair12"; + attribute SOFT_HLUTNM of \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2\ : label is "soft_lutpair3"; attribute inverted : string; attribute inverted of \gen_no_arbiter.m_grant_hot_i_reg[0]_inv\ : label is "yes"; - attribute SOFT_HLUTNM of \gen_no_arbiter.m_valid_i_i_1\ : label is "soft_lutpair11"; - attribute SOFT_HLUTNM of \gen_no_arbiter.s_ready_i[0]_i_1\ : label is "soft_lutpair13"; - attribute SOFT_HLUTNM of \m_atarget_enc[1]_i_1\ : label is "soft_lutpair14"; - attribute SOFT_HLUTNM of \m_atarget_enc[2]_i_1\ : label is "soft_lutpair6"; - attribute SOFT_HLUTNM of \m_atarget_hot[1]_i_1\ : label is "soft_lutpair13"; - attribute SOFT_HLUTNM of \m_atarget_hot[2]_i_1\ : label is "soft_lutpair14"; - attribute SOFT_HLUTNM of \m_atarget_hot[4]_i_1\ : label is "soft_lutpair6"; - attribute SOFT_HLUTNM of \m_axi_arvalid[0]_INST_0\ : label is "soft_lutpair8"; - attribute SOFT_HLUTNM of \m_axi_arvalid[1]_INST_0\ : label is "soft_lutpair9"; - attribute SOFT_HLUTNM of \m_axi_arvalid[2]_INST_0\ : label is "soft_lutpair10"; - attribute SOFT_HLUTNM of \m_axi_awvalid[0]_INST_0\ : label is "soft_lutpair8"; - attribute SOFT_HLUTNM of \m_axi_awvalid[1]_INST_0\ : label is "soft_lutpair9"; + attribute SOFT_HLUTNM of \gen_no_arbiter.s_ready_i[0]_i_1\ : label is "soft_lutpair3"; + attribute SOFT_HLUTNM of \m_atarget_enc[1]_i_1\ : label is "soft_lutpair1"; + attribute SOFT_HLUTNM of \m_atarget_enc[2]_i_1\ : label is "soft_lutpair1"; + attribute SOFT_HLUTNM of \m_atarget_hot[0]_i_1\ : label is "soft_lutpair17"; + attribute SOFT_HLUTNM of \m_atarget_hot[1]_i_1\ : label is "soft_lutpair2"; + attribute SOFT_HLUTNM of \m_atarget_hot[2]_i_1\ : label is "soft_lutpair17"; + attribute SOFT_HLUTNM of \m_atarget_hot[2]_i_3\ : label is "soft_lutpair7"; + attribute SOFT_HLUTNM of \m_atarget_hot[3]_i_1\ : label is "soft_lutpair16"; + attribute SOFT_HLUTNM of \m_atarget_hot[4]_i_1\ : label is "soft_lutpair16"; + attribute SOFT_HLUTNM of \m_atarget_hot[5]_i_1\ : label is "soft_lutpair2"; + attribute SOFT_HLUTNM of \m_atarget_hot[5]_i_16\ : label is "soft_lutpair7"; + attribute SOFT_HLUTNM of \m_axi_arvalid[0]_INST_0\ : label is "soft_lutpair12"; + attribute SOFT_HLUTNM of \m_axi_arvalid[1]_INST_0\ : label is "soft_lutpair13"; + attribute SOFT_HLUTNM of \m_axi_arvalid[2]_INST_0\ : label is "soft_lutpair13"; + attribute SOFT_HLUTNM of \m_axi_arvalid[3]_INST_0\ : label is "soft_lutpair14"; + attribute SOFT_HLUTNM of \m_axi_arvalid[4]_INST_0\ : label is "soft_lutpair14"; + attribute SOFT_HLUTNM of \m_axi_awvalid[0]_INST_0\ : label is "soft_lutpair9"; + attribute SOFT_HLUTNM of \m_axi_awvalid[1]_INST_0\ : label is "soft_lutpair10"; attribute SOFT_HLUTNM of \m_axi_awvalid[2]_INST_0\ : label is "soft_lutpair10"; + attribute SOFT_HLUTNM of \m_axi_awvalid[3]_INST_0\ : label is "soft_lutpair11"; + attribute SOFT_HLUTNM of \m_axi_awvalid[4]_INST_0\ : label is "soft_lutpair11"; attribute SOFT_HLUTNM of \m_axi_bready[0]_INST_0\ : label is "soft_lutpair5"; - attribute SOFT_HLUTNM of \m_axi_wvalid[0]_INST_0\ : label is "soft_lutpair3"; - attribute SOFT_HLUTNM of \m_axi_wvalid[1]_INST_0\ : label is "soft_lutpair4"; + attribute SOFT_HLUTNM of \m_axi_wvalid[0]_INST_0\ : label is "soft_lutpair6"; attribute SOFT_HLUTNM of \m_payload_i[34]_i_1\ : label is "soft_lutpair0"; - attribute SOFT_HLUTNM of \m_ready_d[0]_i_2\ : label is "soft_lutpair5"; - attribute SOFT_HLUTNM of \m_ready_d[0]_i_2__0\ : label is "soft_lutpair4"; - attribute SOFT_HLUTNM of \m_ready_d[0]_i_3\ : label is "soft_lutpair7"; - attribute SOFT_HLUTNM of \m_ready_d[1]_i_2\ : label is "soft_lutpair3"; - attribute SOFT_HLUTNM of \m_ready_d[1]_i_2__0\ : label is "soft_lutpair1"; - attribute SOFT_HLUTNM of m_valid_i_i_1 : label is "soft_lutpair12"; - attribute SOFT_HLUTNM of m_valid_i_i_2 : label is "soft_lutpair0"; - attribute SOFT_HLUTNM of \s_arvalid_reg[0]_i_1\ : label is "soft_lutpair7"; - attribute SOFT_HLUTNM of \s_axi_arready[0]_INST_0\ : label is "soft_lutpair15"; - attribute SOFT_HLUTNM of \s_axi_awready[0]_INST_0\ : label is "soft_lutpair15"; - attribute SOFT_HLUTNM of \s_axi_wready[0]_INST_0\ : label is "soft_lutpair2"; - attribute SOFT_HLUTNM of s_ready_i_i_1 : label is "soft_lutpair12"; + attribute SOFT_HLUTNM of \m_ready_d[2]_i_9\ : label is "soft_lutpair4"; + attribute SOFT_HLUTNM of m_valid_i_i_1 : label is "soft_lutpair15"; + attribute SOFT_HLUTNM of m_valid_i_i_3 : label is "soft_lutpair0"; + attribute SOFT_HLUTNM of \s_arvalid_reg[0]_i_1\ : label is "soft_lutpair8"; + attribute SOFT_HLUTNM of \s_axi_awready[0]_INST_0\ : label is "soft_lutpair8"; + attribute SOFT_HLUTNM of \s_axi_bvalid[0]_INST_0\ : label is "soft_lutpair4"; + attribute SOFT_HLUTNM of s_ready_i_i_1 : label is "soft_lutpair15"; begin - Q(34 downto 0) <= \^q\(34 downto 0); + E(0) <= \^e\(0); SR(0) <= \^sr\(0); aa_grant_rnw <= \^aa_grant_rnw\; - \gen_no_arbiter.grant_rnw_reg_0\ <= \^gen_no_arbiter.grant_rnw_reg_0\; - m_ready_d0(0) <= \^m_ready_d0\(0); + \gen_no_arbiter.m_amesg_i_reg[48]_0\(34 downto 0) <= \^gen_no_arbiter.m_amesg_i_reg[48]_0\(34 downto 0); m_valid_i <= \^m_valid_i\; - p_0_in1_in <= \^p_0_in1_in\; - s_axi_bready_0_sp_1 <= s_axi_bready_0_sn_1; - s_axi_bvalid_0_sn_1 <= s_axi_bvalid_0_sp_1; - s_axi_wready_0_sn_1 <= s_axi_wready_0_sp_1; - s_axi_wvalid_0_sp_1 <= s_axi_wvalid_0_sn_1; -\gen_axilite.s_axi_awready_i_i_1\: unisim.vcomponents.LUT6 +\gen_axilite.s_axi_awready_i_i_1\: unisim.vcomponents.LUT5 generic map( - INIT => X"FFEFFFFF00100000" + INIT => X"DFFF2000" ) port map ( - I0 => \^gen_no_arbiter.grant_rnw_reg_0\, - I1 => m_ready_d(2), - I2 => \gen_axilite.s_axi_bvalid_i_reg\(3), - I3 => mi_bvalid(0), - I4 => s_axi_wvalid_0_sn_1, - I5 => mi_wready(0), - O => \m_ready_d_reg[2]\ + I0 => p_4_in, + I1 => mi_bvalid(0), + I2 => Q(5), + I3 => mi_awvalid_en, + I4 => mi_wready(0), + O => \gen_axilite.s_axi_bvalid_i_reg\ ); -\gen_axilite.s_axi_awready_i_i_2\: unisim.vcomponents.LUT2 +\gen_axilite.s_axi_bvalid_i_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"B" + INIT => X"5F5FC0005F5F0000" ) port map ( - I0 => \^aa_grant_rnw\, - I1 => \^m_valid_i\, - O => \^gen_no_arbiter.grant_rnw_reg_0\ + I0 => p_3_in, + I1 => p_4_in, + I2 => Q(5), + I3 => mi_wready(0), + I4 => mi_bvalid(0), + I5 => mi_awvalid_en, + O => \m_atarget_hot_reg[5]\ ); -\gen_axilite.s_axi_bvalid_i_i_1\: unisim.vcomponents.LUT6 +\gen_axilite.s_axi_bvalid_i_i_2\: unisim.vcomponents.LUT4 generic map( - INIT => X"0008FF00FF08FF00" + INIT => X"0400" ) port map ( - I0 => mi_wready(0), - I1 => s_axi_wvalid_0_sn_1, - I2 => \gen_axilite.s_axi_bvalid_i_i_2_n_0\, - I3 => mi_bvalid(0), - I4 => \gen_axilite.s_axi_bvalid_i_reg\(3), - I5 => s_axi_bready_0_sn_1, - O => \gen_axilite.s_axi_awready_i_reg\ + I0 => m_ready_d(0), + I1 => s_axi_bready(0), + I2 => \^aa_grant_rnw\, + I3 => \^m_valid_i\, + O => p_3_in ); -\gen_axilite.s_axi_bvalid_i_i_2\: unisim.vcomponents.LUT3 +\gen_axilite.s_axi_bvalid_i_i_3\: unisim.vcomponents.LUT4 generic map( - INIT => X"FB" + INIT => X"0400" ) port map ( - I0 => m_ready_d(2), - I1 => \^m_valid_i\, + I0 => m_ready_d(1), + I1 => s_axi_wvalid(0), I2 => \^aa_grant_rnw\, - O => \gen_axilite.s_axi_bvalid_i_i_2_n_0\ + I3 => \^m_valid_i\, + O => p_4_in + ); +\gen_axilite.s_axi_bvalid_i_i_4\: unisim.vcomponents.LUT3 + generic map( + INIT => X"04" + ) + port map ( + I0 => \^aa_grant_rnw\, + I1 => \^m_valid_i\, + I2 => m_ready_d(2), + O => mi_awvalid_en ); \gen_axilite.s_axi_rvalid_i_i_2\: unisim.vcomponents.LUT3 generic map( - INIT => X"40" + INIT => X"08" ) port map ( - I0 => m_ready_d_1(1), + I0 => \^aa_grant_rnw\, I1 => \^m_valid_i\, - I2 => \^aa_grant_rnw\, - O => \m_ready_d_reg[1]\ + I2 => m_ready_d_1(1), + O => mi_arvalid_en ); \gen_no_arbiter.grant_rnw_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF53FF00005000" + INIT => X"DFCFDFFF10001000" ) port map ( I0 => s_awvalid_reg, - I1 => s_axi_awvalid(0), - I2 => s_axi_arvalid(0), - I3 => \^p_0_in1_in\, - I4 => \^m_valid_i\, + I1 => \^m_valid_i\, + I2 => p_0_in1_in, + I3 => s_axi_arvalid(0), + I4 => s_axi_awvalid(0), I5 => \^aa_grant_rnw\, O => \gen_no_arbiter.grant_rnw_i_1_n_0\ ); @@ -640,332 +649,319 @@ begin \gen_no_arbiter.m_amesg_i_reg[10]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(10), - Q => \^q\(9), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(9), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[11]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(11), - Q => \^q\(10), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(10), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[12]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(12), - Q => \^q\(11), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(11), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[13]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(13), - Q => \^q\(12), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(12), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[14]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(14), - Q => \^q\(13), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(13), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[15]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(15), - Q => \^q\(14), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(14), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[16]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(16), - Q => \^q\(15), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(15), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[17]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(17), - Q => \^q\(16), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(16), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[18]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(18), - Q => \^q\(17), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(17), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[19]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(19), - Q => \^q\(18), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(18), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[1]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(1), - Q => \^q\(0), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(0), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[20]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(20), - Q => \^q\(19), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(19), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[21]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(21), - Q => \^q\(20), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(20), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[22]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(22), - Q => \^q\(21), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[23]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(23), - Q => \^q\(22), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[24]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(24), - Q => \^q\(23), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[25]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(25), - Q => \^q\(24), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[26]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(26), - Q => \^q\(25), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(25), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[27]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(27), - Q => \^q\(26), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(26), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[28]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(28), - Q => \^q\(27), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(27), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[29]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(29), - Q => \^q\(28), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(28), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[2]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(2), - Q => \^q\(1), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(1), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[30]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(30), - Q => \^q\(29), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(29), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[31]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(31), - Q => \^q\(30), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(30), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[32]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(32), - Q => \^q\(31), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(31), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[3]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(3), - Q => \^q\(2), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(2), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[46]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(46), - Q => \^q\(32), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(32), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[47]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(47), - Q => \^q\(33), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(33), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[48]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(48), - Q => \^q\(34), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(34), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[4]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(4), - Q => \^q\(3), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(3), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[5]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(5), - Q => \^q\(4), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(4), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[6]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(6), - Q => \^q\(5), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(5), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[7]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(7), - Q => \^q\(6), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(6), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[8]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(8), - Q => \^q\(7), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(7), R => \^sr\(0) ); \gen_no_arbiter.m_amesg_i_reg[9]\: unisim.vcomponents.FDRE port map ( C => aclk, - CE => \^p_0_in1_in\, + CE => p_0_in1_in, D => s_amesg(9), - Q => \^q\(8), + Q => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(8), R => \^sr\(0) ); \gen_no_arbiter.m_grant_hot_i[0]_inv_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FF555755FFFFFFFF" + INIT => X"DDD5D5D5D5D5D5D5" ) port map ( I0 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0\, - I1 => s_axi_awvalid(0), - I2 => s_axi_arvalid(0), - I3 => \^p_0_in1_in\, - I4 => \^m_valid_i\, - I5 => aresetn_d, + I1 => \^m_valid_i\, + I2 => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\, + I3 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0\, + I4 => m_ready_d0_0(0), + I5 => m_ready_d0_0(1), O => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_1_n_0\ ); -\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2\: unisim.vcomponents.LUT6 +\gen_no_arbiter.m_grant_hot_i[0]_inv_i_2\: unisim.vcomponents.LUT5 generic map( - INIT => X"00EFFFFFFFEFFFFF" + INIT => X"0FEF0000" ) port map ( - I0 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_3_n_0\, - I1 => \gen_no_arbiter.m_valid_i_reg_0\, - I2 => \^m_ready_d0\(0), - I3 => \^aa_grant_rnw\, - I4 => \^m_valid_i\, - I5 => \m_ready_d[0]_i_4_n_0\, + I0 => s_axi_awvalid(0), + I1 => s_axi_arvalid(0), + I2 => p_0_in1_in, + I3 => \^m_valid_i\, + I4 => aresetn_d, O => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0\ ); -\gen_no_arbiter.m_grant_hot_i[0]_inv_i_3\: unisim.vcomponents.LUT6 +\gen_no_arbiter.m_grant_hot_i[0]_inv_i_4\: unisim.vcomponents.LUT6 generic map( - INIT => X"00000000FF2FFFFF" + INIT => X"00000000FFFEAAAA" ) port map ( - I0 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0\, - I1 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0\, - I2 => s_axi_wvalid(0), - I3 => \^aa_grant_rnw\, + I0 => m_ready_d(2), + I1 => \gen_no_arbiter.m_valid_i_reg_1\, + I2 => \gen_no_arbiter.m_valid_i_reg_2\, + I3 => \gen_no_arbiter.m_valid_i_reg_3\, I4 => \^m_valid_i\, - I5 => m_ready_d(1), - O => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_3_n_0\ - ); -\gen_no_arbiter.m_grant_hot_i[0]_inv_i_4\: unisim.vcomponents.LUT5 - generic map( - INIT => X"F3F7FFF7" - ) - port map ( - I0 => m_axi_wready(0), - I1 => m_atarget_enc(1), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(0), - I4 => m_axi_wready(1), + I5 => \^aa_grant_rnw\, O => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0\ ); \gen_no_arbiter.m_grant_hot_i_reg[0]_inv\: unisim.vcomponents.FDRE @@ -976,17 +972,20 @@ begin C => aclk, CE => '1', D => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_1_n_0\, - Q => \^p_0_in1_in\, + Q => p_0_in1_in, R => '0' ); -\gen_no_arbiter.m_valid_i_i_1\: unisim.vcomponents.LUT3 +\gen_no_arbiter.m_valid_i_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"B1" + INIT => X"111D1D1D1D1D1D1D" ) port map ( - I0 => \^m_valid_i\, - I1 => \^p_0_in1_in\, - I2 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_n_0\, + I0 => p_0_in1_in, + I1 => \^m_valid_i\, + I2 => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\, + I3 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_4_n_0\, + I4 => m_ready_d0_0(0), + I5 => m_ready_d0_0(1), O => \gen_no_arbiter.m_valid_i_i_1_n_0\ ); \gen_no_arbiter.m_valid_i_reg\: unisim.vcomponents.FDRE @@ -1006,7 +1005,7 @@ begin ) port map ( I0 => \^m_valid_i\, - I1 => \^p_0_in1_in\, + I1 => p_0_in1_in, I2 => aresetn_d, O => \gen_no_arbiter.s_ready_i[0]_i_1_n_0\ ); @@ -1021,449 +1020,645 @@ begin Q => s_ready_i, R => '0' ); -\m_atarget_enc[0]_i_1\: unisim.vcomponents.LUT2 +\m_atarget_enc[0]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"8" + INIT => X"AAAAAAAAAA00AA02" ) port map ( - I0 => target_mi_enc(0), - I1 => aresetn_d, - O => aresetn_d_reg_0 + I0 => aresetn_d, + I1 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0\, + I2 => target_mi_enc(2), + I3 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1\, + I4 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2\, + I5 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3\, + O => D(0) ); \m_atarget_enc[1]_i_1\: unisim.vcomponents.LUT2 generic map( INIT => X"8" ) port map ( - I0 => target_mi_enc(1), - I1 => aresetn_d, - O => aresetn_d_reg_1 + I0 => aresetn_d, + I1 => \m_atarget_hot[5]_i_2_n_0\, + O => D(1) ); -\m_atarget_enc[2]_i_1\: unisim.vcomponents.LUT3 +\m_atarget_enc[2]_i_1\: unisim.vcomponents.LUT5 generic map( - INIT => X"02" + INIT => X"CCCD0000" ) port map ( - I0 => \m_atarget_hot[4]_i_2_n_0\, - I1 => target_mi_enc(1), - I2 => target_mi_enc(0), - O => \gen_no_arbiter.m_amesg_i_reg[19]_0\(0) + I0 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0\, + I1 => target_mi_enc(2), + I2 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1\, + I3 => \m_atarget_hot[5]_i_2_n_0\, + I4 => aresetn_d, + O => D(2) ); \m_atarget_hot[0]_i_1\: unisim.vcomponents.LUT2 generic map( - INIT => X"1" + INIT => X"2" ) port map ( - I0 => \^p_0_in1_in\, - I1 => \m_atarget_hot[4]_i_2_n_0\, - O => D(0) + I0 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0\, + I1 => p_0_in1_in, + O => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(0) ); \m_atarget_hot[1]_i_1\: unisim.vcomponents.LUT2 generic map( - INIT => X"2" + INIT => X"4" ) port map ( - I0 => target_mi_enc(0), - I1 => \^p_0_in1_in\, - O => D(1) + I0 => p_0_in1_in, + I1 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1\, + O => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(1) ); \m_atarget_hot[2]_i_1\: unisim.vcomponents.LUT2 generic map( - INIT => X"2" + INIT => X"4" ) port map ( - I0 => target_mi_enc(1), - I1 => \^p_0_in1_in\, - O => D(2) + I0 => p_0_in1_in, + I1 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2\, + O => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(2) + ); +\m_atarget_hot[2]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"8000000000000000" + ) + port map ( + I0 => \m_atarget_hot[5]_i_9_n_0\, + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), + I3 => \m_atarget_hot[2]_i_3_n_0\, + I4 => \m_atarget_hot[5]_i_15_n_0\, + I5 => \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\, + O => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_2\ ); -\m_atarget_hot[4]_i_1\: unisim.vcomponents.LUT4 +\m_atarget_hot[2]_i_3\: unisim.vcomponents.LUT2 generic map( - INIT => X"0002" + INIT => X"2" ) port map ( - I0 => \m_atarget_hot[4]_i_2_n_0\, - I1 => target_mi_enc(1), - I2 => target_mi_enc(0), - I3 => \^p_0_in1_in\, - O => D(3) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), + O => \m_atarget_hot[2]_i_3_n_0\ ); -\m_atarget_hot[4]_i_10\: unisim.vcomponents.LUT6 +\m_atarget_hot[3]_i_1\: unisim.vcomponents.LUT2 generic map( - INIT => X"FFFFFFFFFFFFFFFE" + INIT => X"4" ) port map ( - I0 => \^q\(22), - I1 => \^q\(23), - I2 => \^q\(25), - I3 => \^q\(24), - I4 => \^q\(21), - I5 => \^q\(20), - O => \m_atarget_hot[4]_i_10_n_0\ + I0 => p_0_in1_in, + I1 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3\, + O => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(3) ); -\m_atarget_hot[4]_i_2\: unisim.vcomponents.LUT4 +\m_atarget_hot[3]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FEFF" + INIT => X"0080000000000000" ) port map ( - I0 => \m_atarget_hot[4]_i_5_n_0\, - I1 => \m_atarget_hot[4]_i_6_n_0\, - I2 => \m_atarget_hot[4]_i_7_n_0\, - I3 => \m_atarget_hot[4]_i_8_n_0\, - O => \m_atarget_hot[4]_i_2_n_0\ + I0 => \m_atarget_hot[5]_i_9_n_0\, + I1 => \m_atarget_hot[3]_i_3_n_0\, + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), + I4 => \m_atarget_hot[5]_i_15_n_0\, + I5 => \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\, + O => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_3\ ); -\m_atarget_hot[4]_i_3\: unisim.vcomponents.LUT6 +\m_atarget_hot[3]_i_3\: unisim.vcomponents.LUT2 generic map( - INIT => X"0000000000000002" + INIT => X"2" ) port map ( - I0 => \m_atarget_hot[4]_i_8_n_0\, - I1 => \m_atarget_hot[4]_i_9_n_0\, - I2 => \^q\(18), - I3 => \^q\(17), - I4 => \^q\(19), - I5 => \^q\(16), - O => target_mi_enc(1) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), + O => \m_atarget_hot[3]_i_3_n_0\ ); -\m_atarget_hot[4]_i_4\: unisim.vcomponents.LUT6 +\m_atarget_hot[4]_i_1\: unisim.vcomponents.LUT2 generic map( - INIT => X"0000000000000002" + INIT => X"4" ) port map ( - I0 => \m_atarget_hot[4]_i_8_n_0\, - I1 => \m_atarget_hot[4]_i_10_n_0\, - I2 => \^q\(18), - I3 => \^q\(17), - I4 => \^q\(19), - I5 => \^q\(16), - O => target_mi_enc(0) + I0 => p_0_in1_in, + I1 => target_mi_enc(2), + O => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(4) ); -\m_atarget_hot[4]_i_5\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_1\: unisim.vcomponents.LUT5 generic map( - INIT => X"FFFE" + INIT => X"00000001" ) port map ( - I0 => \^q\(18), - I1 => \^q\(17), - I2 => \^q\(19), - I3 => \^q\(16), - O => \m_atarget_hot[4]_i_5_n_0\ + I0 => p_0_in1_in, + I1 => \m_atarget_hot[5]_i_2_n_0\, + I2 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1\, + I3 => target_mi_enc(2), + I4 => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0\, + O => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(5) ); -\m_atarget_hot[4]_i_6\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_10\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFEF" + INIT => X"0000000000000001" ) port map ( - I0 => \^q\(13), - I1 => \^q\(15), - I2 => \^q\(22), - I3 => \^q\(14), - O => \m_atarget_hot[4]_i_6_n_0\ + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), + I4 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(20), + I5 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(25), + O => \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3\ ); -\m_atarget_hot[4]_i_7\: unisim.vcomponents.LUT6 +\m_atarget_hot[5]_i_11\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFFFFFFD" + INIT => X"0000000000000001" ) port map ( - I0 => \^q\(24), - I1 => \^q\(25), - I2 => \^q\(23), - I3 => \^q\(12), - I4 => \^q\(21), - I5 => \^q\(20), - O => \m_atarget_hot[4]_i_7_n_0\ + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(15), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(14), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(18), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(19), + I4 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(16), + I5 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(17), + O => \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2\ ); -\m_atarget_hot[4]_i_8\: unisim.vcomponents.LUT6 +\m_atarget_hot[5]_i_12\: unisim.vcomponents.LUT6 generic map( INIT => X"0000000100000000" ) port map ( - I0 => \^q\(27), - I1 => \^q\(28), - I2 => \^q\(31), - I3 => \^q\(26), - I4 => \^q\(29), - I5 => \^q\(30), - O => \m_atarget_hot[4]_i_8_n_0\ + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(26), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(27), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(28), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(29), + I4 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(30), + I5 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(31), + O => \m_atarget_hot[5]_i_12_n_0\ ); -\m_atarget_hot[4]_i_9\: unisim.vcomponents.LUT6 +\m_atarget_hot[5]_i_13\: unisim.vcomponents.LUT3 generic map( - INIT => X"FFFFFFFFFFFFFDFF" + INIT => X"01" ) port map ( - I0 => \^q\(24), - I1 => \^q\(25), - I2 => \^q\(20), - I3 => \^q\(21), - I4 => \^q\(23), - I5 => \^q\(22), - O => \m_atarget_hot[4]_i_9_n_0\ + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(9), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(8), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(7), + O => \m_atarget_hot[5]_i_13_n_0\ ); -\m_axi_arvalid[0]_INST_0\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_14\: unisim.vcomponents.LUT4 generic map( - INIT => X"0080" + INIT => X"0001" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(0), - I1 => \^aa_grant_rnw\, - I2 => \^m_valid_i\, - I3 => m_ready_d_1(1), - O => m_axi_arvalid(0) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(13), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(12), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(11), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(10), + O => \m_atarget_hot[5]_i_14_n_0\ ); -\m_axi_arvalid[1]_INST_0\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_15\: unisim.vcomponents.LUT2 generic map( - INIT => X"0080" + INIT => X"1" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(1), - I1 => \^aa_grant_rnw\, - I2 => \^m_valid_i\, - I3 => m_ready_d_1(1), - O => m_axi_arvalid(1) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(25), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(20), + O => \m_atarget_hot[5]_i_15_n_0\ ); -\m_axi_arvalid[2]_INST_0\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_16\: unisim.vcomponents.LUT4 generic map( - INIT => X"0080" + INIT => X"0100" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(2), - I1 => \^aa_grant_rnw\, - I2 => \^m_valid_i\, - I3 => m_ready_d_1(1), - O => m_axi_arvalid(2) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(13), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(12), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), + O => \m_atarget_hot[5]_i_16_n_0\ ); -\m_axi_awvalid[0]_INST_0\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_2\: unisim.vcomponents.LUT4 generic map( - INIT => X"0020" + INIT => X"C800" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(0), - I1 => \^aa_grant_rnw\, - I2 => \^m_valid_i\, - I3 => m_ready_d(2), - O => m_axi_awvalid(0) + I0 => \m_atarget_hot[5]_i_6_n_0\, + I1 => \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\, + I2 => \m_atarget_hot[5]_i_8_n_0\, + I3 => \m_atarget_hot[5]_i_9_n_0\, + O => \m_atarget_hot[5]_i_2_n_0\ ); -\m_axi_awvalid[1]_INST_0\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"0020" + INIT => X"0001000000000000" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(1), - I1 => \^aa_grant_rnw\, - I2 => \^m_valid_i\, - I3 => m_ready_d(2), - O => m_axi_awvalid(1) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(17), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(16), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(19), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(18), + I4 => \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3\, + I5 => \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\, + O => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_1\ ); -\m_axi_awvalid[2]_INST_0\: unisim.vcomponents.LUT4 +\m_atarget_hot[5]_i_4\: unisim.vcomponents.LUT5 generic map( - INIT => X"0020" + INIT => X"80000000" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(2), - I1 => \^aa_grant_rnw\, - I2 => \^m_valid_i\, - I3 => m_ready_d(2), - O => m_axi_awvalid(2) + I0 => \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_3\, + I1 => \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2\, + I2 => \m_atarget_hot[5]_i_12_n_0\, + I3 => \m_atarget_hot[5]_i_13_n_0\, + I4 => \m_atarget_hot[5]_i_14_n_0\, + O => target_mi_enc(2) ); -\m_axi_bready[0]_INST_0\: unisim.vcomponents.LUT5 +\m_atarget_hot[5]_i_5\: unisim.vcomponents.LUT6 generic map( - INIT => X"00200000" + INIT => X"0800000000000000" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(0), - I1 => m_ready_d(0), - I2 => \^m_valid_i\, - I3 => \^aa_grant_rnw\, - I4 => s_axi_bready(0), - O => m_axi_bready(0) + I0 => \gen_addr_decoder.addr_decoder_inst/gen_target[4].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_2\, + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), + I3 => \m_atarget_hot[5]_i_15_n_0\, + I4 => \m_atarget_hot[5]_i_16_n_0\, + I5 => \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\, + O => \gen_addr_decoder.addr_decoder_inst/ADDRESS_HIT_0\ ); -\m_axi_bready[1]_INST_0\: unisim.vcomponents.LUT5 +\m_atarget_hot[5]_i_6\: unisim.vcomponents.LUT6 generic map( - INIT => X"00200000" + INIT => X"0000000000000020" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(1), - I1 => m_ready_d(0), - I2 => \^m_valid_i\, - I3 => \^aa_grant_rnw\, - I4 => s_axi_bready(0), - O => m_axi_bready(1) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), + I4 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(20), + I5 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(25), + O => \m_atarget_hot[5]_i_6_n_0\ ); -\m_axi_bready[2]_INST_0\: unisim.vcomponents.LUT5 +\m_atarget_hot[5]_i_7\: unisim.vcomponents.LUT6 generic map( - INIT => X"00200000" + INIT => X"0000000100000000" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(2), - I1 => m_ready_d(0), - I2 => \^m_valid_i\, - I3 => \^aa_grant_rnw\, - I4 => s_axi_bready(0), - O => m_axi_bready(2) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(28), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(29), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(26), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(27), + I4 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(31), + I5 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(30), + O => \gen_addr_decoder.addr_decoder_inst/gen_target[3].gen_region[0].gen_comparator_static.gen_addr_range.addr_decode_comparator/sel_4\ ); -\m_axi_wvalid[0]_INST_0\: unisim.vcomponents.LUT5 +\m_atarget_hot[5]_i_8\: unisim.vcomponents.LUT6 generic map( - INIT => X"00200000" + INIT => X"0000000000000080" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(0), - I1 => m_ready_d(1), - I2 => \^m_valid_i\, - I3 => \^aa_grant_rnw\, - I4 => s_axi_wvalid(0), - O => m_axi_wvalid(0) + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(23), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(24), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(22), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(21), + I4 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(20), + I5 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(25), + O => \m_atarget_hot[5]_i_8_n_0\ ); -\m_axi_wvalid[1]_INST_0\: unisim.vcomponents.LUT5 +\m_atarget_hot[5]_i_9\: unisim.vcomponents.LUT4 generic map( - INIT => X"00200000" + INIT => X"0001" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(1), - I1 => m_ready_d(1), + I0 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(17), + I1 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(16), + I2 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(19), + I3 => \^gen_no_arbiter.m_amesg_i_reg[48]_0\(18), + O => \m_atarget_hot[5]_i_9_n_0\ + ); +\m_axi_arvalid[0]_INST_0\: unisim.vcomponents.LUT4 + generic map( + INIT => X"2000" + ) + port map ( + I0 => Q(0), + I1 => m_ready_d_1(1), I2 => \^m_valid_i\, I3 => \^aa_grant_rnw\, - I4 => s_axi_wvalid(0), - O => m_axi_wvalid(1) + O => m_axi_arvalid(0) ); -\m_axi_wvalid[2]_INST_0\: unisim.vcomponents.LUT5 +\m_axi_arvalid[1]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"00200000" + INIT => X"2000" ) port map ( - I0 => \gen_axilite.s_axi_bvalid_i_reg\(2), - I1 => m_ready_d(1), + I0 => Q(1), + I1 => m_ready_d_1(1), I2 => \^m_valid_i\, I3 => \^aa_grant_rnw\, - I4 => s_axi_wvalid(0), - O => m_axi_wvalid(2) + O => m_axi_arvalid(1) ); -\m_payload_i[34]_i_1\: unisim.vcomponents.LUT5 +\m_axi_arvalid[2]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"0080FFFF" + INIT => X"2000" ) port map ( - I0 => s_axi_rready(0), - I1 => \^aa_grant_rnw\, + I0 => Q(2), + I1 => m_ready_d_1(1), I2 => \^m_valid_i\, - I3 => m_ready_d_1(0), - I4 => sr_rvalid, - O => E(0) + I3 => \^aa_grant_rnw\, + O => m_axi_arvalid(2) ); -\m_ready_d[0]_i_2\: unisim.vcomponents.LUT4 +\m_axi_arvalid[3]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"0020" + INIT => X"2000" ) port map ( - I0 => s_axi_bready(0), - I1 => \^aa_grant_rnw\, + I0 => Q(3), + I1 => m_ready_d_1(1), I2 => \^m_valid_i\, - I3 => m_ready_d(0), - O => s_axi_bready_0_sn_1 + I3 => \^aa_grant_rnw\, + O => m_axi_arvalid(3) ); -\m_ready_d[0]_i_2__0\: unisim.vcomponents.LUT2 +\m_axi_arvalid[4]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"7" + INIT => X"2000" ) port map ( - I0 => \^aa_grant_rnw\, - I1 => \^m_valid_i\, - O => \gen_no_arbiter.grant_rnw_reg_1\ + I0 => Q(4), + I1 => m_ready_d_1(1), + I2 => \^m_valid_i\, + I3 => \^aa_grant_rnw\, + O => m_axi_arvalid(4) ); -\m_ready_d[0]_i_3\: unisim.vcomponents.LUT2 +\m_axi_awvalid[0]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"B" + INIT => X"0020" ) port map ( - I0 => \m_ready_d[0]_i_4_n_0\, - I1 => aresetn_d, - O => aresetn_d_reg + I0 => Q(0), + I1 => m_ready_d(2), + I2 => \^m_valid_i\, + I3 => \^aa_grant_rnw\, + O => m_axi_awvalid(0) ); -\m_ready_d[0]_i_4\: unisim.vcomponents.LUT6 +\m_axi_awvalid[1]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"00000000F8F0F8F8" + INIT => X"0020" ) port map ( - I0 => \^aa_grant_rnw\, - I1 => \^m_valid_i\, - I2 => m_ready_d_1(1), - I3 => \m_ready_d_reg[1]_0\, - I4 => \m_ready_d_reg[1]_1\, - I5 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1\, - O => \m_ready_d[0]_i_4_n_0\ + I0 => Q(1), + I1 => m_ready_d(2), + I2 => \^m_valid_i\, + I3 => \^aa_grant_rnw\, + O => m_axi_awvalid(1) ); -\m_ready_d[1]_i_2\: unisim.vcomponents.LUT4 +\m_axi_awvalid[2]_INST_0\: unisim.vcomponents.LUT4 generic map( INIT => X"0020" ) port map ( - I0 => s_axi_wvalid(0), - I1 => \^aa_grant_rnw\, + I0 => Q(2), + I1 => m_ready_d(2), I2 => \^m_valid_i\, - I3 => m_ready_d(1), - O => s_axi_wvalid_0_sn_1 + I3 => \^aa_grant_rnw\, + O => m_axi_awvalid(2) ); -\m_ready_d[1]_i_2__0\: unisim.vcomponents.LUT5 +\m_axi_awvalid[3]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"FDF0F0F0" + INIT => X"0020" ) port map ( - I0 => \m_ready_d_reg[1]_1\, - I1 => \m_ready_d_reg[1]_0\, - I2 => m_ready_d_1(1), - I3 => \^m_valid_i\, - I4 => \^aa_grant_rnw\, - O => m_ready_d0_0(0) + I0 => Q(3), + I1 => m_ready_d(2), + I2 => \^m_valid_i\, + I3 => \^aa_grant_rnw\, + O => m_axi_awvalid(3) ); -\m_ready_d[2]_i_7\: unisim.vcomponents.LUT6 +\m_axi_awvalid[4]_INST_0\: unisim.vcomponents.LUT4 generic map( - INIT => X"FFFFFFFF00D00000" + INIT => X"0020" ) port map ( - I0 => \m_ready_d[2]_i_3\, - I1 => \m_ready_d[2]_i_3_0\, - I2 => s_axi_bready(0), + I0 => Q(4), + I1 => m_ready_d(2), + I2 => \^m_valid_i\, I3 => \^aa_grant_rnw\, - I4 => \^m_valid_i\, - I5 => m_ready_d(0), - O => \^m_ready_d0\(0) + O => m_axi_awvalid(4) ); -m_valid_i_i_1: unisim.vcomponents.LUT3 +\m_axi_bready[0]_INST_0\: unisim.vcomponents.LUT5 generic map( - INIT => X"8A" + INIT => X"00000800" ) port map ( - I0 => m_valid_i_reg(1), - I1 => m_valid_i_i_2_n_0, - I2 => m_valid_i_i_3_n_0, - O => \aresetn_d_reg[1]\ + I0 => Q(0), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_bready(0), + I4 => m_ready_d(0), + O => m_axi_bready(0) ); -m_valid_i_i_2: unisim.vcomponents.LUT5 +\m_axi_bready[1]_INST_0\: unisim.vcomponents.LUT5 generic map( - INIT => X"8AAAAAAA" + INIT => X"00000800" ) port map ( - I0 => sr_rvalid, - I1 => m_ready_d_1(0), - I2 => \^m_valid_i\, - I3 => \^aa_grant_rnw\, - I4 => s_axi_rready(0), - O => m_valid_i_i_2_n_0 + I0 => Q(1), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_bready(0), + I4 => m_ready_d(0), + O => m_axi_bready(1) ); -m_valid_i_i_3: unisim.vcomponents.LUT6 +\m_axi_bready[2]_INST_0\: unisim.vcomponents.LUT5 generic map( - INIT => X"8AAAAAAA8AAA8AAA" + INIT => X"00000800" ) port map ( - I0 => aa_rready, - I1 => m_ready_d_1(0), - I2 => \^m_valid_i\, - I3 => \^aa_grant_rnw\, - I4 => m_valid_i_reg_0, - I5 => m_valid_i_reg_1, - O => m_valid_i_i_3_n_0 + I0 => Q(2), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_bready(0), + I4 => m_ready_d(0), + O => m_axi_bready(2) ); -\s_arvalid_reg[0]_i_1\: unisim.vcomponents.LUT4 +\m_axi_bready[3]_INST_0\: unisim.vcomponents.LUT5 generic map( - INIT => X"0040" + INIT => X"00000800" + ) + port map ( + I0 => Q(3), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_bready(0), + I4 => m_ready_d(0), + O => m_axi_bready(3) + ); +\m_axi_bready[4]_INST_0\: unisim.vcomponents.LUT5 + generic map( + INIT => X"00000800" + ) + port map ( + I0 => Q(4), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_bready(0), + I4 => m_ready_d(0), + O => m_axi_bready(4) + ); +\m_axi_wvalid[0]_INST_0\: unisim.vcomponents.LUT5 + generic map( + INIT => X"00000800" + ) + port map ( + I0 => Q(0), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_wvalid(0), + I4 => m_ready_d(1), + O => m_axi_wvalid(0) + ); +\m_axi_wvalid[1]_INST_0\: unisim.vcomponents.LUT5 + generic map( + INIT => X"00000800" + ) + port map ( + I0 => Q(1), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_wvalid(0), + I4 => m_ready_d(1), + O => m_axi_wvalid(1) + ); +\m_axi_wvalid[2]_INST_0\: unisim.vcomponents.LUT5 + generic map( + INIT => X"00000800" + ) + port map ( + I0 => Q(2), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_wvalid(0), + I4 => m_ready_d(1), + O => m_axi_wvalid(2) + ); +\m_axi_wvalid[3]_INST_0\: unisim.vcomponents.LUT5 + generic map( + INIT => X"00000800" + ) + port map ( + I0 => Q(3), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_wvalid(0), + I4 => m_ready_d(1), + O => m_axi_wvalid(3) + ); +\m_axi_wvalid[4]_INST_0\: unisim.vcomponents.LUT5 + generic map( + INIT => X"00000800" + ) + port map ( + I0 => Q(4), + I1 => \^m_valid_i\, + I2 => \^aa_grant_rnw\, + I3 => s_axi_wvalid(0), + I4 => m_ready_d(1), + O => m_axi_wvalid(4) + ); +\m_payload_i[34]_i_1\: unisim.vcomponents.LUT5 + generic map( + INIT => X"0800FFFF" + ) + port map ( + I0 => \^aa_grant_rnw\, + I1 => \^m_valid_i\, + I2 => m_ready_d_1(0), + I3 => s_axi_rready(0), + I4 => sr_rvalid, + O => \^e\(0) + ); +\m_ready_d[1]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFF88888880" + ) + port map ( + I0 => \^aa_grant_rnw\, + I1 => \^m_valid_i\, + I2 => \m_ready_d_reg[1]_0\, + I3 => \m_ready_d_reg[1]_1\, + I4 => \m_ready_d_reg[1]_2\, + I5 => m_ready_d_1(1), + O => m_ready_d0(1) + ); +\m_ready_d[1]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFF80000000" + ) + port map ( + I0 => \^aa_grant_rnw\, + I1 => \^m_valid_i\, + I2 => s_axi_rready(0), + I3 => sr_rvalid, + I4 => \m_ready_d_reg[1]\(0), + I5 => m_ready_d_1(0), + O => m_ready_d0(0) + ); +\m_ready_d[2]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFF44444440" + ) + port map ( + I0 => \^aa_grant_rnw\, + I1 => \^m_valid_i\, + I2 => \gen_no_arbiter.m_valid_i_reg_3\, + I3 => \gen_no_arbiter.m_valid_i_reg_2\, + I4 => \gen_no_arbiter.m_valid_i_reg_1\, + I5 => m_ready_d(2), + O => \gen_no_arbiter.grant_rnw_reg_0\(0) + ); +\m_ready_d[2]_i_9\: unisim.vcomponents.LUT2 + generic map( + INIT => X"2" + ) + port map ( + I0 => \^m_valid_i\, + I1 => \^aa_grant_rnw\, + O => \gen_no_arbiter.m_valid_i_reg_0\ + ); +m_valid_i_i_1: unisim.vcomponents.LUT3 + generic map( + INIT => X"C4" + ) + port map ( + I0 => \^e\(0), + I1 => m_valid_i_reg(1), + I2 => m_valid_i_i_2_n_0, + O => \aresetn_d_reg[1]\ + ); +m_valid_i_i_2: unisim.vcomponents.LUT5 + generic map( + INIT => X"AAA8FFFF" + ) + port map ( + I0 => r_transfer_en, + I1 => m_valid_i_reg_0, + I2 => m_valid_i_reg_1, + I3 => m_valid_i_reg_2, + I4 => aa_rready, + O => m_valid_i_i_2_n_0 + ); +m_valid_i_i_3: unisim.vcomponents.LUT3 + generic map( + INIT => X"08" + ) + port map ( + I0 => \^aa_grant_rnw\, + I1 => \^m_valid_i\, + I2 => m_ready_d_1(0), + O => r_transfer_en + ); +\s_arvalid_reg[0]_i_1\: unisim.vcomponents.LUT4 + generic map( + INIT => X"0040" ) port map ( I0 => s_awvalid_reg, @@ -1512,8 +1707,8 @@ m_valid_i_i_3: unisim.vcomponents.LUT6 INIT => X"8" ) port map ( - I0 => \^aa_grant_rnw\, - I1 => s_ready_i, + I0 => s_ready_i, + I1 => \^aa_grant_rnw\, O => s_axi_arready(0) ); \s_axi_awready[0]_INST_0\: unisim.vcomponents.LUT2 @@ -1527,36 +1722,45 @@ m_valid_i_i_3: unisim.vcomponents.LUT6 ); \s_axi_bvalid[0]_INST_0\: unisim.vcomponents.LUT5 generic map( - INIT => X"00000004" + INIT => X"00020000" ) port map ( - I0 => m_ready_d(0), - I1 => \^m_valid_i\, - I2 => \^aa_grant_rnw\, - I3 => \^p_0_in1_in\, - I4 => s_axi_bvalid_0_sn_1, + I0 => \^m_valid_i\, + I1 => \^aa_grant_rnw\, + I2 => p_0_in1_in, + I3 => m_ready_d(0), + I4 => \f_mux_return__3\, O => s_axi_bvalid(0) ); +\s_axi_rvalid[0]_INST_0\: unisim.vcomponents.LUT2 + generic map( + INIT => X"4" + ) + port map ( + I0 => p_0_in1_in, + I1 => sr_rvalid, + O => s_axi_rvalid(0) + ); \s_axi_wready[0]_INST_0\: unisim.vcomponents.LUT5 generic map( - INIT => X"00000004" + INIT => X"00020000" ) port map ( - I0 => m_ready_d(1), - I1 => \^m_valid_i\, - I2 => \^aa_grant_rnw\, - I3 => \^p_0_in1_in\, - I4 => s_axi_wready_0_sn_1, + I0 => \^m_valid_i\, + I1 => \^aa_grant_rnw\, + I2 => p_0_in1_in, + I3 => m_ready_d(1), + I4 => \f_mux_return__1\, O => s_axi_wready(0) ); s_ready_i_i_1: unisim.vcomponents.LUT3 generic map( - INIT => X"8A" + INIT => X"B0" ) port map ( - I0 => m_valid_i_reg(0), - I1 => m_valid_i_i_3_n_0, - I2 => m_valid_i_i_2_n_0, + I0 => \^e\(0), + I1 => m_valid_i_i_2_n_0, + I2 => m_valid_i_reg(0), O => \aresetn_d_reg[0]\ ); end STRUCTURE; @@ -1568,56 +1772,67 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave is port ( mi_bvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); mi_wready : out STD_LOGIC_VECTOR ( 0 to 0 ); - \m_atarget_enc_reg[1]\ : out STD_LOGIC; - \gen_axilite.s_axi_bvalid_i_reg_0\ : out STD_LOGIC; - \m_axi_bvalid[2]\ : out STD_LOGIC; - \gen_axilite.s_axi_arready_i_reg_0\ : out STD_LOGIC; - \gen_axilite.s_axi_rvalid_i_reg_0\ : out STD_LOGIC; - m_axi_wready_3_sp_1 : out STD_LOGIC; - m_axi_wready_0_sp_1 : out STD_LOGIC; + m_ready_d0 : out STD_LOGIC_VECTOR ( 1 downto 0 ); + m_axi_rvalid_0_sp_1 : out STD_LOGIC; + m_axi_arready_0_sp_1 : out STD_LOGIC; + \f_mux_return__3\ : out STD_LOGIC; + \f_mux_return__1\ : out STD_LOGIC; + m_axi_awready_0_sp_1 : out STD_LOGIC; SR : in STD_LOGIC_VECTOR ( 0 to 0 ); - \gen_axilite.s_axi_bvalid_i_reg_1\ : in STD_LOGIC; + \gen_axilite.s_axi_bvalid_i_reg_0\ : in STD_LOGIC; aclk : in STD_LOGIC; \gen_axilite.s_axi_awready_i_reg_0\ : in STD_LOGIC; - m_atarget_enc : in STD_LOGIC_VECTOR ( 2 downto 0 ); - Q : in STD_LOGIC_VECTOR ( 0 to 0 ); - \gen_axilite.s_axi_rvalid_i_reg_1\ : in STD_LOGIC; + \m_ready_d_reg[2]\ : in STD_LOGIC; + \m_ready_d_reg[2]_0\ : in STD_LOGIC; + s_axi_bready : in STD_LOGIC_VECTOR ( 0 to 0 ); + \m_ready_d_reg[2]_1\ : in STD_LOGIC; + m_ready_d : in STD_LOGIC_VECTOR ( 1 downto 0 ); + \m_ready_d_reg[2]_2\ : in STD_LOGIC; + \m_ready_d_reg[2]_3\ : in STD_LOGIC; + s_axi_wvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); aresetn_d : in STD_LOGIC; - m_axi_bvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); - \m_ready_d_reg[0]\ : in STD_LOGIC; - m_axi_arready : in STD_LOGIC_VECTOR ( 0 to 0 ); + mi_arvalid_en : in STD_LOGIC; + Q : in STD_LOGIC_VECTOR ( 0 to 0 ); m_axi_rvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_wready : in STD_LOGIC_VECTOR ( 3 downto 0 ); + \m_ready_d[2]_i_2\ : in STD_LOGIC_VECTOR ( 2 downto 0 ); + m_axi_arready : in STD_LOGIC_VECTOR ( 0 to 0 ); + m_axi_bvalid : in STD_LOGIC_VECTOR ( 2 downto 0 ); + f_mux_return2 : in STD_LOGIC; + f_mux_return3 : in STD_LOGIC; + m_axi_wready : in STD_LOGIC_VECTOR ( 2 downto 0 ); + m_axi_awready : in STD_LOGIC_VECTOR ( 0 to 0 ); aa_rready : in STD_LOGIC ); - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave : entity is "axi_crossbar_v2_1_33_decerr_slave"; end mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave; architecture STRUCTURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave is signal \gen_axilite.s_axi_arready_i_i_1_n_0\ : STD_LOGIC; signal \gen_axilite.s_axi_rvalid_i_i_1_n_0\ : STD_LOGIC; - signal m_axi_wready_0_sn_1 : STD_LOGIC; - signal m_axi_wready_3_sn_1 : STD_LOGIC; - signal mi_arready : STD_LOGIC_VECTOR ( 4 to 4 ); + signal m_axi_arready_0_sn_1 : STD_LOGIC; + signal m_axi_awready_0_sn_1 : STD_LOGIC; + signal m_axi_rvalid_0_sn_1 : STD_LOGIC; + signal mi_arready : STD_LOGIC_VECTOR ( 5 to 5 ); signal \^mi_bvalid\ : STD_LOGIC_VECTOR ( 0 to 0 ); - signal mi_rvalid : STD_LOGIC_VECTOR ( 4 to 4 ); + signal mi_rvalid : STD_LOGIC_VECTOR ( 5 to 5 ); signal \^mi_wready\ : STD_LOGIC_VECTOR ( 0 to 0 ); + signal \s_axi_bvalid[0]_INST_0_i_2_n_0\ : STD_LOGIC; + signal \s_axi_wready[0]_INST_0_i_4_n_0\ : STD_LOGIC; begin - m_axi_wready_0_sp_1 <= m_axi_wready_0_sn_1; - m_axi_wready_3_sp_1 <= m_axi_wready_3_sn_1; + m_axi_arready_0_sp_1 <= m_axi_arready_0_sn_1; + m_axi_awready_0_sp_1 <= m_axi_awready_0_sn_1; + m_axi_rvalid_0_sp_1 <= m_axi_rvalid_0_sn_1; mi_bvalid(0) <= \^mi_bvalid\(0); mi_wready(0) <= \^mi_wready\(0); \gen_axilite.s_axi_arready_i_i_1\: unisim.vcomponents.LUT5 generic map( - INIT => X"F07F0000" + INIT => X"A02AA0AA" ) port map ( - I0 => Q(0), - I1 => \gen_axilite.s_axi_rvalid_i_reg_1\, - I2 => mi_arready(4), - I3 => mi_rvalid(4), - I4 => aresetn_d, + I0 => aresetn_d, + I1 => mi_arvalid_en, + I2 => mi_arready(5), + I3 => mi_rvalid(5), + I4 => Q(0), O => \gen_axilite.s_axi_arready_i_i_1_n_0\ ); \gen_axilite.s_axi_arready_i_reg\: unisim.vcomponents.FDRE @@ -1628,7 +1843,7 @@ begin C => aclk, CE => '1', D => \gen_axilite.s_axi_arready_i_i_1_n_0\, - Q => mi_arready(4), + Q => mi_arready(5), R => '0' ); \gen_axilite.s_axi_awready_i_reg\: unisim.vcomponents.FDRE @@ -1649,19 +1864,19 @@ begin port map ( C => aclk, CE => '1', - D => \gen_axilite.s_axi_bvalid_i_reg_1\, + D => \gen_axilite.s_axi_bvalid_i_reg_0\, Q => \^mi_bvalid\(0), R => SR(0) ); \gen_axilite.s_axi_rvalid_i_i_1\: unisim.vcomponents.LUT5 generic map( - INIT => X"08F8F0F0" + INIT => X"55C0FF00" ) port map ( - I0 => mi_arready(4), - I1 => \gen_axilite.s_axi_rvalid_i_reg_1\, - I2 => mi_rvalid(4), - I3 => aa_rready, + I0 => aa_rready, + I1 => mi_arvalid_en, + I2 => mi_arready(5), + I3 => mi_rvalid(5), I4 => Q(0), O => \gen_axilite.s_axi_rvalid_i_i_1_n_0\ ); @@ -1673,94 +1888,120 @@ begin C => aclk, CE => '1', D => \gen_axilite.s_axi_rvalid_i_i_1_n_0\, - Q => mi_rvalid(4), + Q => mi_rvalid(5), R => SR(0) ); -\m_ready_d[1]_i_4\: unisim.vcomponents.LUT5 +\m_ready_d[1]_i_5\: unisim.vcomponents.LUT5 generic map( - INIT => X"FDCFFDFF" + INIT => X"0C00000A" ) port map ( - I0 => mi_arready(4), - I1 => m_atarget_enc(0), - I2 => m_atarget_enc(1), - I3 => m_atarget_enc(2), - I4 => m_axi_arready(0), - O => \gen_axilite.s_axi_arready_i_reg_0\ + I0 => m_axi_arready(0), + I1 => mi_arready(5), + I2 => \m_ready_d[2]_i_2\(1), + I3 => \m_ready_d[2]_i_2\(2), + I4 => \m_ready_d[2]_i_2\(0), + O => m_axi_arready_0_sn_1 ); -\m_ready_d[2]_i_5\: unisim.vcomponents.LUT4 +\m_ready_d[2]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"0400" + INIT => X"FFFFFFFFFE000000" ) port map ( - I0 => m_atarget_enc(1), - I1 => m_atarget_enc(2), - I2 => m_atarget_enc(0), - I3 => \^mi_wready\(0), - O => \m_atarget_enc_reg[1]\ + I0 => \m_ready_d_reg[2]_2\, + I1 => \s_axi_wready[0]_INST_0_i_4_n_0\, + I2 => \m_ready_d_reg[2]_3\, + I3 => s_axi_wvalid(0), + I4 => \m_ready_d_reg[2]_1\, + I5 => m_ready_d(1), + O => m_ready_d0(1) ); -\m_ready_d[2]_i_8\: unisim.vcomponents.LUT5 +\m_ready_d[2]_i_4\: unisim.vcomponents.LUT6 generic map( - INIT => X"FDCFFDFF" + INIT => X"FFFFFFFFFE000000" ) port map ( - I0 => m_axi_bvalid(0), - I1 => m_atarget_enc(0), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(1), - I4 => \^mi_bvalid\(0), - O => \m_axi_bvalid[2]\ + I0 => \m_ready_d_reg[2]\, + I1 => \s_axi_bvalid[0]_INST_0_i_2_n_0\, + I2 => \m_ready_d_reg[2]_0\, + I3 => s_axi_bready(0), + I4 => \m_ready_d_reg[2]_1\, + I5 => m_ready_d(0), + O => m_ready_d0(0) + ); +\m_ready_d[2]_i_6\: unisim.vcomponents.LUT5 + generic map( + INIT => X"0C00000A" + ) + port map ( + I0 => m_axi_awready(0), + I1 => \^mi_wready\(0), + I2 => \m_ready_d[2]_i_2\(1), + I3 => \m_ready_d[2]_i_2\(2), + I4 => \m_ready_d[2]_i_2\(0), + O => m_axi_awready_0_sn_1 ); m_valid_i_i_5: unisim.vcomponents.LUT5 generic map( - INIT => X"FCDFFFDF" + INIT => X"0C00000A" ) port map ( - I0 => mi_rvalid(4), - I1 => m_atarget_enc(1), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(0), - I4 => m_axi_rvalid(0), - O => \gen_axilite.s_axi_rvalid_i_reg_0\ + I0 => m_axi_rvalid(0), + I1 => mi_rvalid(5), + I2 => \m_ready_d[2]_i_2\(1), + I3 => \m_ready_d[2]_i_2\(2), + I4 => \m_ready_d[2]_i_2\(0), + O => m_axi_rvalid_0_sn_1 ); \s_axi_bvalid[0]_INST_0_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"00000000FFD3FFDF" + INIT => X"FFFFFFFFFFFFF888" ) port map ( - I0 => \^mi_bvalid\(0), - I1 => m_atarget_enc(1), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(0), - I4 => m_axi_bvalid(0), - I5 => \m_ready_d_reg[0]\, - O => \gen_axilite.s_axi_bvalid_i_reg_0\ + I0 => m_axi_bvalid(2), + I1 => f_mux_return2, + I2 => m_axi_bvalid(1), + I3 => f_mux_return3, + I4 => \s_axi_bvalid[0]_INST_0_i_2_n_0\, + I5 => \m_ready_d_reg[2]_0\, + O => \f_mux_return__3\ + ); +\s_axi_bvalid[0]_INST_0_i_2\: unisim.vcomponents.LUT5 + generic map( + INIT => X"0C00000A" + ) + port map ( + I0 => m_axi_bvalid(0), + I1 => \^mi_bvalid\(0), + I2 => \m_ready_d[2]_i_2\(1), + I3 => \m_ready_d[2]_i_2\(2), + I4 => \m_ready_d[2]_i_2\(0), + O => \s_axi_bvalid[0]_INST_0_i_2_n_0\ ); \s_axi_wready[0]_INST_0_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"00000000F4FFF7FF" + INIT => X"FFFFFFFFFFFFF888" ) port map ( - I0 => m_axi_wready(3), - I1 => m_atarget_enc(0), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(1), - I4 => m_axi_wready(2), - I5 => m_axi_wready_0_sn_1, - O => m_axi_wready_3_sn_1 + I0 => m_axi_wready(2), + I1 => f_mux_return2, + I2 => m_axi_wready(1), + I3 => f_mux_return3, + I4 => \s_axi_wready[0]_INST_0_i_4_n_0\, + I5 => \m_ready_d_reg[2]_3\, + O => \f_mux_return__1\ ); -\s_axi_wready[0]_INST_0_i_2\: unisim.vcomponents.LUT6 +\s_axi_wready[0]_INST_0_i_4\: unisim.vcomponents.LUT5 generic map( - INIT => X"00000FCA000000CA" + INIT => X"00A0000C" ) port map ( - I0 => m_axi_wready(0), - I1 => m_axi_wready(1), - I2 => m_atarget_enc(0), - I3 => m_atarget_enc(2), - I4 => m_atarget_enc(1), - I5 => \^mi_wready\(0), - O => m_axi_wready_0_sn_1 + I0 => \^mi_wready\(0), + I1 => m_axi_wready(0), + I2 => \m_ready_d[2]_i_2\(2), + I3 => \m_ready_d[2]_i_2\(1), + I4 => \m_ready_d[2]_i_2\(0), + O => \s_axi_wready[0]_INST_0_i_4_n_0\ ); end STRUCTURE; library IEEE; @@ -1769,121 +2010,117 @@ library UNISIM; use UNISIM.VCOMPONENTS.ALL; entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter is port ( + m_axi_bvalid_2_sp_1 : out STD_LOGIC; + m_axi_wready_2_sp_1 : out STD_LOGIC; + m_axi_awready_2_sp_1 : out STD_LOGIC; + \m_axi_bvalid[4]\ : out STD_LOGIC; + \m_axi_wready[4]\ : out STD_LOGIC; + \m_axi_awready[4]\ : out STD_LOGIC; m_ready_d : out STD_LOGIC_VECTOR ( 2 downto 0 ); - \m_ready_d_reg[2]_0\ : out STD_LOGIC; - m_axi_bvalid_0_sp_1 : out STD_LOGIC; - m_atarget_enc : in STD_LOGIC_VECTOR ( 2 downto 0 ); - \m_ready_d_reg[1]_0\ : in STD_LOGIC; - \m_ready_d_reg[1]_1\ : in STD_LOGIC; - m_ready_d0 : in STD_LOGIC_VECTOR ( 0 to 0 ); - \m_ready_d_reg[2]_1\ : in STD_LOGIC; - \m_ready_d_reg[2]_2\ : in STD_LOGIC; + m_axi_bvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); + Q : in STD_LOGIC_VECTOR ( 2 downto 0 ); + m_axi_wready : in STD_LOGIC_VECTOR ( 3 downto 0 ); m_axi_awready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bvalid : in STD_LOGIC_VECTOR ( 2 downto 0 ); aresetn_d : in STD_LOGIC; - \m_ready_d_reg[0]_0\ : in STD_LOGIC; - \m_ready_d_reg[0]_1\ : in STD_LOGIC; + m_ready_d0 : in STD_LOGIC_VECTOR ( 2 downto 0 ); aclk : in STD_LOGIC ); - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter : entity is "axi_crossbar_v2_1_33_splitter"; end mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter; architecture STRUCTURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter is - signal m_axi_bvalid_0_sn_1 : STD_LOGIC; - signal \^m_ready_d\ : STD_LOGIC_VECTOR ( 2 downto 0 ); + signal m_axi_awready_2_sn_1 : STD_LOGIC; + signal m_axi_bvalid_2_sn_1 : STD_LOGIC; + signal m_axi_wready_2_sn_1 : STD_LOGIC; signal \m_ready_d[0]_i_1_n_0\ : STD_LOGIC; signal \m_ready_d[1]_i_1_n_0\ : STD_LOGIC; signal \m_ready_d[2]_i_1_n_0\ : STD_LOGIC; - signal \m_ready_d[2]_i_3_n_0\ : STD_LOGIC; - signal \m_ready_d[2]_i_4_n_0\ : STD_LOGIC; - signal \m_ready_d[2]_i_6_n_0\ : STD_LOGIC; - signal \^m_ready_d_reg[2]_0\ : STD_LOGIC; + attribute SOFT_HLUTNM : string; + attribute SOFT_HLUTNM of \m_ready_d[1]_i_1\ : label is "soft_lutpair22"; + attribute SOFT_HLUTNM of \m_ready_d[2]_i_1\ : label is "soft_lutpair22"; begin - m_axi_bvalid_0_sp_1 <= m_axi_bvalid_0_sn_1; - m_ready_d(2 downto 0) <= \^m_ready_d\(2 downto 0); - \m_ready_d_reg[2]_0\ <= \^m_ready_d_reg[2]_0\; -\m_ready_d[0]_i_1\: unisim.vcomponents.LUT5 + m_axi_awready_2_sp_1 <= m_axi_awready_2_sn_1; + m_axi_bvalid_2_sp_1 <= m_axi_bvalid_2_sn_1; + m_axi_wready_2_sp_1 <= m_axi_wready_2_sn_1; +\m_ready_d[0]_i_1\: unisim.vcomponents.LUT4 generic map( - INIT => X"F2000000" + INIT => X"2A00" ) port map ( - I0 => \m_ready_d_reg[0]_0\, - I1 => \m_ready_d_reg[0]_1\, - I2 => \^m_ready_d\(0), - I3 => \m_ready_d[2]_i_3_n_0\, - I4 => aresetn_d, + I0 => aresetn_d, + I1 => m_ready_d0(2), + I2 => m_ready_d0(1), + I3 => m_ready_d0(0), O => \m_ready_d[0]_i_1_n_0\ ); -\m_ready_d[1]_i_1\: unisim.vcomponents.LUT5 +\m_ready_d[1]_i_1\: unisim.vcomponents.LUT4 generic map( - INIT => X"BA000000" + INIT => X"20A0" ) port map ( - I0 => \^m_ready_d\(1), - I1 => \m_ready_d_reg[1]_0\, - I2 => \m_ready_d_reg[1]_1\, - I3 => \m_ready_d[2]_i_3_n_0\, - I4 => aresetn_d, + I0 => aresetn_d, + I1 => m_ready_d0(2), + I2 => m_ready_d0(1), + I3 => m_ready_d0(0), O => \m_ready_d[1]_i_1_n_0\ ); -\m_ready_d[2]_i_1\: unisim.vcomponents.LUT3 +\m_ready_d[2]_i_1\: unisim.vcomponents.LUT4 generic map( - INIT => X"40" + INIT => X"0888" ) port map ( - I0 => \^m_ready_d_reg[2]_0\, - I1 => \m_ready_d[2]_i_3_n_0\, - I2 => aresetn_d, + I0 => aresetn_d, + I1 => m_ready_d0(2), + I2 => m_ready_d0(1), + I3 => m_ready_d0(0), O => \m_ready_d[2]_i_1_n_0\ ); -\m_ready_d[2]_i_2\: unisim.vcomponents.LUT6 +\m_ready_d[2]_i_10\: unisim.vcomponents.LUT5 generic map( - INIT => X"4445444444454445" + INIT => X"0C0000A0" ) port map ( - I0 => \^m_ready_d\(2), - I1 => \m_ready_d_reg[2]_1\, - I2 => \m_ready_d[2]_i_4_n_0\, - I3 => \m_ready_d_reg[2]_2\, - I4 => \m_ready_d[2]_i_6_n_0\, - I5 => m_axi_awready(1), - O => \^m_ready_d_reg[2]_0\ + I0 => m_axi_bvalid(3), + I1 => m_axi_bvalid(2), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => \m_axi_bvalid[4]\ ); -\m_ready_d[2]_i_3\: unisim.vcomponents.LUT5 +\m_ready_d[2]_i_5\: unisim.vcomponents.LUT5 generic map( - INIT => X"FF45FFFF" + INIT => X"0C0000A0" ) port map ( - I0 => \^m_ready_d\(1), - I1 => \m_ready_d_reg[1]_0\, - I2 => \m_ready_d_reg[1]_1\, - I3 => \^m_ready_d_reg[2]_0\, - I4 => m_ready_d0(0), - O => \m_ready_d[2]_i_3_n_0\ + I0 => m_axi_awready(3), + I1 => m_axi_awready(2), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => \m_axi_awready[4]\ ); -\m_ready_d[2]_i_4\: unisim.vcomponents.LUT6 +\m_ready_d[2]_i_7\: unisim.vcomponents.LUT5 generic map( - INIT => X"00CA000F00CA0000" + INIT => X"000C0A00" ) port map ( - I0 => m_axi_awready(2), - I1 => m_axi_awready(3), - I2 => m_atarget_enc(0), - I3 => m_atarget_enc(2), - I4 => m_atarget_enc(1), - I5 => m_axi_awready(0), - O => \m_ready_d[2]_i_4_n_0\ + I0 => m_axi_awready(1), + I1 => m_axi_awready(0), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => m_axi_awready_2_sn_1 ); -\m_ready_d[2]_i_6\: unisim.vcomponents.LUT3 +\m_ready_d[2]_i_8\: unisim.vcomponents.LUT5 generic map( - INIT => X"EF" + INIT => X"0C0000A0" ) port map ( - I0 => m_atarget_enc(1), - I1 => m_atarget_enc(2), - I2 => m_atarget_enc(0), - O => \m_ready_d[2]_i_6_n_0\ + I0 => m_axi_wready(3), + I1 => m_axi_wready(2), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => \m_axi_wready[4]\ ); \m_ready_d_reg[0]\: unisim.vcomponents.FDRE generic map( @@ -1893,7 +2130,7 @@ begin C => aclk, CE => '1', D => \m_ready_d[0]_i_1_n_0\, - Q => \^m_ready_d\(0), + Q => m_ready_d(0), R => '0' ); \m_ready_d_reg[1]\: unisim.vcomponents.FDRE @@ -1904,7 +2141,7 @@ begin C => aclk, CE => '1', D => \m_ready_d[1]_i_1_n_0\, - Q => \^m_ready_d\(1), + Q => m_ready_d(1), R => '0' ); \m_ready_d_reg[2]\: unisim.vcomponents.FDRE @@ -1915,21 +2152,32 @@ begin C => aclk, CE => '1', D => \m_ready_d[2]_i_1_n_0\, - Q => \^m_ready_d\(2), + Q => m_ready_d(2), R => '0' ); -\s_axi_bvalid[0]_INST_0_i_2\: unisim.vcomponents.LUT6 +\s_axi_bvalid[0]_INST_0_i_3\: unisim.vcomponents.LUT5 generic map( - INIT => X"00F000CA000000CA" + INIT => X"000C0A00" ) port map ( - I0 => m_axi_bvalid(0), - I1 => m_axi_bvalid(1), - I2 => m_atarget_enc(0), - I3 => m_atarget_enc(2), - I4 => m_atarget_enc(1), - I5 => m_axi_bvalid(2), - O => m_axi_bvalid_0_sn_1 + I0 => m_axi_bvalid(1), + I1 => m_axi_bvalid(0), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => m_axi_bvalid_2_sn_1 + ); +\s_axi_wready[0]_INST_0_i_5\: unisim.vcomponents.LUT5 + generic map( + INIT => X"000C0A00" + ) + port map ( + I0 => m_axi_wready(1), + I1 => m_axi_wready(0), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => m_axi_wready_2_sn_1 ); end STRUCTURE; library IEEE; @@ -1938,18 +2186,13 @@ library UNISIM; use UNISIM.VCOMPONENTS.ALL; entity \mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0\ is port ( - m_axi_arready_1_sp_1 : out STD_LOGIC; + m_axi_arready_2_sp_1 : out STD_LOGIC; + \m_axi_arready[4]\ : out STD_LOGIC; m_ready_d : out STD_LOGIC_VECTOR ( 1 downto 0 ); - m_axi_arready : in STD_LOGIC_VECTOR ( 2 downto 0 ); - m_atarget_enc : in STD_LOGIC_VECTOR ( 2 downto 0 ); + m_axi_arready : in STD_LOGIC_VECTOR ( 3 downto 0 ); + Q : in STD_LOGIC_VECTOR ( 2 downto 0 ); aresetn_d : in STD_LOGIC; - m_ready_d0 : in STD_LOGIC_VECTOR ( 0 to 0 ); - \m_ready_d_reg[1]_0\ : in STD_LOGIC; - sr_rvalid : in STD_LOGIC; - Q : in STD_LOGIC_VECTOR ( 0 to 0 ); - s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); - \m_ready_d_reg[0]_0\ : in STD_LOGIC; - \m_ready_d_reg[0]_1\ : in STD_LOGIC; + m_ready_d0 : in STD_LOGIC_VECTOR ( 1 downto 0 ); aclk : in STD_LOGIC ); attribute ORIG_REF_NAME : string; @@ -1957,48 +2200,57 @@ entity \mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0\ is end \mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0\; architecture STRUCTURE of \mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0\ is - signal m_axi_arready_1_sn_1 : STD_LOGIC; - signal \^m_ready_d\ : STD_LOGIC_VECTOR ( 1 downto 0 ); + signal m_axi_arready_2_sn_1 : STD_LOGIC; signal \m_ready_d[0]_i_1_n_0\ : STD_LOGIC; signal \m_ready_d[1]_i_1_n_0\ : STD_LOGIC; + attribute SOFT_HLUTNM : string; + attribute SOFT_HLUTNM of \m_ready_d[0]_i_1\ : label is "soft_lutpair21"; + attribute SOFT_HLUTNM of \m_ready_d[1]_i_1\ : label is "soft_lutpair21"; begin - m_axi_arready_1_sp_1 <= m_axi_arready_1_sn_1; - m_ready_d(1 downto 0) <= \^m_ready_d\(1 downto 0); -\m_ready_d[0]_i_1\: unisim.vcomponents.LUT6 + m_axi_arready_2_sp_1 <= m_axi_arready_2_sn_1; +\m_ready_d[0]_i_1\: unisim.vcomponents.LUT3 generic map( - INIT => X"00000000FFFF0080" + INIT => X"20" ) port map ( - I0 => sr_rvalid, - I1 => Q(0), - I2 => s_axi_rready(0), - I3 => \m_ready_d_reg[0]_0\, - I4 => \^m_ready_d\(0), - I5 => \m_ready_d_reg[0]_1\, + I0 => aresetn_d, + I1 => m_ready_d0(1), + I2 => m_ready_d0(0), O => \m_ready_d[0]_i_1_n_0\ ); \m_ready_d[1]_i_1\: unisim.vcomponents.LUT3 generic map( - INIT => X"80" + INIT => X"08" ) port map ( I0 => aresetn_d, - I1 => m_ready_d0(0), - I2 => \m_ready_d_reg[1]_0\, + I1 => m_ready_d0(1), + I2 => m_ready_d0(0), O => \m_ready_d[1]_i_1_n_0\ ); -\m_ready_d[1]_i_5\: unisim.vcomponents.LUT6 +\m_ready_d[1]_i_4\: unisim.vcomponents.LUT5 + generic map( + INIT => X"0C0000A0" + ) + port map ( + I0 => m_axi_arready(3), + I1 => m_axi_arready(2), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => \m_axi_arready[4]\ + ); +\m_ready_d[1]_i_6\: unisim.vcomponents.LUT5 generic map( - INIT => X"00C000AF00C000A0" + INIT => X"000C0A00" ) port map ( I0 => m_axi_arready(1), - I1 => m_axi_arready(2), - I2 => m_atarget_enc(0), - I3 => m_atarget_enc(2), - I4 => m_atarget_enc(1), - I5 => m_axi_arready(0), - O => m_axi_arready_1_sn_1 + I1 => m_axi_arready(0), + I2 => Q(2), + I3 => Q(1), + I4 => Q(0), + O => m_axi_arready_2_sn_1 ); \m_ready_d_reg[0]\: unisim.vcomponents.FDRE generic map( @@ -2008,7 +2260,7 @@ begin C => aclk, CE => '1', D => \m_ready_d[0]_i_1_n_0\, - Q => \^m_ready_d\(0), + Q => m_ready_d(0), R => '0' ); \m_ready_d_reg[1]\: unisim.vcomponents.FDRE @@ -2019,7 +2271,7 @@ begin C => aclk, CE => '1', D => \m_ready_d[1]_i_1_n_0\, - Q => \^m_ready_d\(1), + Q => m_ready_d(1), R => '0' ); end STRUCTURE; @@ -2031,60 +2283,85 @@ entity mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice is port ( sr_rvalid : out STD_LOGIC; aa_rready : out STD_LOGIC; - m_valid_i_reg_0 : out STD_LOGIC; + \m_ready_d_reg[1]\ : out STD_LOGIC; Q : out STD_LOGIC_VECTOR ( 34 downto 0 ); m_axi_rvalid_2_sp_1 : out STD_LOGIC; - s_axi_rvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_rready : out STD_LOGIC_VECTOR ( 2 downto 0 ); + \m_axi_rvalid[4]\ : out STD_LOGIC; + m_axi_rready : out STD_LOGIC_VECTOR ( 4 downto 0 ); \aresetn_d_reg[1]_0\ : out STD_LOGIC_VECTOR ( 1 downto 0 ); - m_valid_i_reg_1 : in STD_LOGIC; + m_valid_i_reg_0 : in STD_LOGIC; aclk : in STD_LOGIC; s_ready_i_reg_0 : in STD_LOGIC; - m_atarget_enc : in STD_LOGIC_VECTOR ( 2 downto 0 ); + m_ready_d : in STD_LOGIC_VECTOR ( 1 downto 0 ); + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv\ : in STD_LOGIC; + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\ : in STD_LOGIC; + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\ : in STD_LOGIC; + mi_arvalid_en : in STD_LOGIC; s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); - aa_grant_rnw : in STD_LOGIC; m_valid_i : in STD_LOGIC; - m_ready_d : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_rdata : in STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_rresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_rvalid : in STD_LOGIC_VECTOR ( 2 downto 0 ); - p_0_in1_in : in STD_LOGIC; - \m_axi_rready[2]\ : in STD_LOGIC_VECTOR ( 2 downto 0 ); + aa_grant_rnw : in STD_LOGIC; + m_axi_rresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_rdata : in STD_LOGIC_VECTOR ( 159 downto 0 ); + \m_payload_i_reg[0]_0\ : in STD_LOGIC_VECTOR ( 2 downto 0 ); + m_axi_rvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); + \m_axi_rready[4]\ : in STD_LOGIC_VECTOR ( 4 downto 0 ); SR : in STD_LOGIC_VECTOR ( 0 to 0 ); E : in STD_LOGIC_VECTOR ( 0 to 0 ) ); - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice : entity is "axi_register_slice_v2_1_32_axic_register_slice"; end mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice; architecture STRUCTURE of mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice is signal \^q\ : STD_LOGIC_VECTOR ( 34 downto 0 ); signal \^aa_rready\ : STD_LOGIC; signal \^aresetn_d_reg[1]_0\ : STD_LOGIC_VECTOR ( 1 downto 0 ); + signal \gen_no_arbiter.m_grant_hot_i[0]_inv_i_5_n_0\ : STD_LOGIC; signal m_axi_rvalid_2_sn_1 : STD_LOGIC; signal \m_payload_i[10]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[10]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[11]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[11]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[12]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[12]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[13]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[13]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[14]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[14]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[15]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[15]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[16]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[16]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[17]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[17]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[18]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[18]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[19]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[19]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[1]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[1]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[20]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[20]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[21]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[21]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[22]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[22]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[23]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[23]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[24]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[24]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[25]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[25]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[26]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[26]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[27]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[27]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[28]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[28]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[29]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[29]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[2]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[2]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[30]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[30]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[31]_i_2_n_0\ : STD_LOGIC; signal \m_payload_i[31]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[32]_i_2_n_0\ : STD_LOGIC; @@ -2094,13 +2371,21 @@ architecture STRUCTURE of mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_reg signal \m_payload_i[34]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[34]_i_4_n_0\ : STD_LOGIC; signal \m_payload_i[34]_i_5_n_0\ : STD_LOGIC; + signal \m_payload_i[34]_i_6_n_0\ : STD_LOGIC; signal \m_payload_i[3]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[3]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[4]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[4]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[5]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[5]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[6]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[6]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[7]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[7]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[8]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[8]_i_3_n_0\ : STD_LOGIC; signal \m_payload_i[9]_i_2_n_0\ : STD_LOGIC; + signal \m_payload_i[9]_i_3_n_0\ : STD_LOGIC; signal skid_buffer : STD_LOGIC_VECTOR ( 34 downto 0 ); signal \skid_buffer_reg_n_0_[0]\ : STD_LOGIC; signal \skid_buffer_reg_n_0_[10]\ : STD_LOGIC; @@ -2139,10 +2424,12 @@ architecture STRUCTURE of mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_reg signal \skid_buffer_reg_n_0_[9]\ : STD_LOGIC; signal \^sr_rvalid\ : STD_LOGIC; attribute SOFT_HLUTNM : string; - attribute SOFT_HLUTNM of \m_axi_rready[1]_INST_0\ : label is "soft_lutpair17"; - attribute SOFT_HLUTNM of \m_axi_rready[2]_INST_0\ : label is "soft_lutpair17"; - attribute SOFT_HLUTNM of \m_payload_i[34]_i_3\ : label is "soft_lutpair16"; - attribute SOFT_HLUTNM of \skid_buffer[0]_i_1\ : label is "soft_lutpair16"; + attribute SOFT_HLUTNM of \m_axi_rready[1]_INST_0\ : label is "soft_lutpair20"; + attribute SOFT_HLUTNM of \m_axi_rready[2]_INST_0\ : label is "soft_lutpair20"; + attribute SOFT_HLUTNM of \m_axi_rready[3]_INST_0\ : label is "soft_lutpair19"; + attribute SOFT_HLUTNM of \m_axi_rready[4]_INST_0\ : label is "soft_lutpair19"; + attribute SOFT_HLUTNM of \m_payload_i[34]_i_5\ : label is "soft_lutpair18"; + attribute SOFT_HLUTNM of \skid_buffer[0]_i_1\ : label is "soft_lutpair18"; begin Q(34 downto 0) <= \^q\(34 downto 0); aa_rready <= \^aa_rready\; @@ -2171,13 +2458,39 @@ begin Q => \^aresetn_d_reg[1]_0\(1), R => SR(0) ); +\gen_no_arbiter.m_grant_hot_i[0]_inv_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"AAAAAAA888888888" + ) + port map ( + I0 => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_5_n_0\, + I1 => m_ready_d(1), + I2 => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv\, + I3 => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\, + I4 => \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\, + I5 => mi_arvalid_en, + O => \m_ready_d_reg[1]\ + ); +\gen_no_arbiter.m_grant_hot_i[0]_inv_i_5\: unisim.vcomponents.LUT6 + generic map( + INIT => X"EAAAAAAA00000000" + ) + port map ( + I0 => m_ready_d(0), + I1 => \^q\(0), + I2 => \^sr_rvalid\, + I3 => s_axi_rready(0), + I4 => m_valid_i, + I5 => aa_grant_rnw, + O => \gen_no_arbiter.m_grant_hot_i[0]_inv_i_5_n_0\ + ); \m_axi_rready[0]_INST_0\: unisim.vcomponents.LUT2 generic map( INIT => X"8" ) port map ( - I0 => \^aa_rready\, - I1 => \m_axi_rready[2]\(0), + I0 => \m_axi_rready[4]\(0), + I1 => \^aa_rready\, O => m_axi_rready(0) ); \m_axi_rready[1]_INST_0\: unisim.vcomponents.LUT2 @@ -2185,8 +2498,8 @@ begin INIT => X"8" ) port map ( - I0 => \^aa_rready\, - I1 => \m_axi_rready[2]\(1), + I0 => \m_axi_rready[4]\(1), + I1 => \^aa_rready\, O => m_axi_rready(1) ); \m_axi_rready[2]_INST_0\: unisim.vcomponents.LUT2 @@ -2194,933 +2507,1376 @@ begin INIT => X"8" ) port map ( - I0 => \^aa_rready\, - I1 => \m_axi_rready[2]\(2), + I0 => \m_axi_rready[4]\(2), + I1 => \^aa_rready\, O => m_axi_rready(2) ); -\m_payload_i[10]_i_1\: unisim.vcomponents.LUT5 +\m_axi_rready[3]_INST_0\: unisim.vcomponents.LUT2 generic map( - INIT => X"FFFF88F8" + INIT => X"8" ) port map ( - I0 => m_axi_rdata(7), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_axi_rready[4]\(3), + I1 => \^aa_rready\, + O => m_axi_rready(3) + ); +\m_axi_rready[4]_INST_0\: unisim.vcomponents.LUT2 + generic map( + INIT => X"8" + ) + port map ( + I0 => \m_axi_rready[4]\(4), + I1 => \^aa_rready\, + O => m_axi_rready(4) + ); +\m_payload_i[10]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFFFFBABABA" + ) + port map ( + I0 => \m_payload_i[10]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[10]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[10]_i_2_n_0\, + I3 => m_axi_rdata(7), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[10]_i_3_n_0\, O => skid_buffer(10) ); \m_payload_i[10]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => m_axi_rdata(71), - I1 => \m_payload_i[32]_i_2_n_0\, - I2 => m_axi_rdata(103), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => m_axi_rdata(39), + I0 => m_axi_rdata(135), + I1 => m_axi_rdata(103), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[10]_i_2_n_0\ ); -\m_payload_i[11]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[10]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(71), + I1 => m_axi_rdata(39), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[10]_i_3_n_0\ + ); +\m_payload_i[11]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF222" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => \skid_buffer_reg_n_0_[11]\, + I0 => \m_payload_i[11]_i_2_n_0\, I1 => \^aa_rready\, - I2 => m_axi_rdata(72), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => \m_payload_i[11]_i_2_n_0\, + I2 => \skid_buffer_reg_n_0_[11]\, + I3 => m_axi_rdata(8), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[11]_i_3_n_0\, O => skid_buffer(11) ); \m_payload_i[11]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(40), - I2 => m_axi_rdata(8), - I3 => \m_payload_i[31]_i_2_n_0\, - I4 => m_axi_rdata(104), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(136), + I1 => m_axi_rdata(104), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[11]_i_2_n_0\ ); +\m_payload_i[11]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(72), + I1 => m_axi_rdata(40), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[11]_i_3_n_0\ + ); \m_payload_i[12]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[12]\, - I3 => m_axi_rdata(105), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[12]_i_2_n_0\, + I0 => \m_payload_i[12]_i_2_n_0\, + I1 => m_axi_rdata(9), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(137), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[12]_i_3_n_0\, O => skid_buffer(12) ); \m_payload_i[12]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[31]_i_2_n_0\, - I1 => m_axi_rdata(9), - I2 => m_axi_rdata(41), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(73), - I5 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(105), + I1 => m_axi_rdata(73), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[12]_i_2_n_0\ ); +\m_payload_i[12]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[12]\, + I1 => m_axi_rdata(41), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[12]_i_3_n_0\ + ); \m_payload_i[13]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[13]\, - I3 => m_axi_rdata(106), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[13]_i_2_n_0\, + I0 => \m_payload_i[13]_i_2_n_0\, + I1 => m_axi_rdata(10), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(138), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[13]_i_3_n_0\, O => skid_buffer(13) ); \m_payload_i[13]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(106), I1 => m_axi_rdata(74), - I2 => m_axi_rdata(42), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(10), - I5 => \m_payload_i[31]_i_2_n_0\, + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[13]_i_2_n_0\ ); +\m_payload_i[13]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[13]\, + I1 => m_axi_rdata(42), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[13]_i_3_n_0\ + ); \m_payload_i[14]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[14]\, - I3 => m_axi_rdata(75), - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => \m_payload_i[14]_i_2_n_0\, + I0 => \m_payload_i[14]_i_2_n_0\, + I1 => m_axi_rdata(11), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(139), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[14]_i_3_n_0\, O => skid_buffer(14) ); \m_payload_i[14]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[34]_i_4_n_0\, - I1 => m_axi_rdata(107), - I2 => m_axi_rdata(43), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(11), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(107), + I1 => m_axi_rdata(75), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[14]_i_2_n_0\ ); +\m_payload_i[14]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[14]\, + I1 => m_axi_rdata(43), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[14]_i_3_n_0\ + ); \m_payload_i[15]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[15]\, - I3 => m_axi_rdata(44), - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => \m_payload_i[15]_i_2_n_0\, + I0 => \m_payload_i[15]_i_2_n_0\, + I1 => m_axi_rdata(12), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(140), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[15]_i_3_n_0\, O => skid_buffer(15) ); \m_payload_i[15]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(108), I1 => m_axi_rdata(76), - I2 => m_axi_rdata(108), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => m_axi_rdata(12), - I5 => \m_payload_i[31]_i_2_n_0\, + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[15]_i_2_n_0\ ); -\m_payload_i[16]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[15]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[15]\, + I1 => m_axi_rdata(44), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[15]_i_3_n_0\ + ); +\m_payload_i[16]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(13), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[16]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[16]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[16]_i_2_n_0\, + I3 => m_axi_rdata(13), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[16]_i_3_n_0\, O => skid_buffer(16) ); \m_payload_i[16]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => m_axi_rdata(45), - I1 => \m_payload_i[33]_i_2_n_0\, - I2 => m_axi_rdata(109), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => m_axi_rdata(77), + I0 => m_axi_rdata(141), + I1 => m_axi_rdata(109), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[16]_i_2_n_0\ ); +\m_payload_i[16]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(77), + I1 => m_axi_rdata(45), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[16]_i_3_n_0\ + ); \m_payload_i[17]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[17]\, - I3 => m_axi_rdata(46), - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => \m_payload_i[17]_i_2_n_0\, + I0 => \m_payload_i[17]_i_2_n_0\, + I1 => m_axi_rdata(14), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(142), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[17]_i_3_n_0\, O => skid_buffer(17) ); \m_payload_i[17]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(110), I1 => m_axi_rdata(78), - I2 => m_axi_rdata(110), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => m_axi_rdata(14), - I5 => \m_payload_i[31]_i_2_n_0\, + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[17]_i_2_n_0\ ); +\m_payload_i[17]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[17]\, + I1 => m_axi_rdata(46), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[17]_i_3_n_0\ + ); \m_payload_i[18]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[18]\, - I3 => m_axi_rdata(111), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[18]_i_2_n_0\, + I0 => \m_payload_i[18]_i_2_n_0\, + I1 => m_axi_rdata(15), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(143), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[18]_i_3_n_0\, O => skid_buffer(18) ); \m_payload_i[18]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(47), - I2 => m_axi_rdata(79), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(15), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(111), + I1 => m_axi_rdata(79), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[18]_i_2_n_0\ ); -\m_payload_i[19]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[18]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[18]\, + I1 => m_axi_rdata(47), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[18]_i_3_n_0\ + ); +\m_payload_i[19]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(16), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[19]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[19]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[19]_i_2_n_0\, + I3 => m_axi_rdata(16), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[19]_i_3_n_0\, O => skid_buffer(19) ); \m_payload_i[19]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => m_axi_rdata(48), - I1 => \m_payload_i[33]_i_2_n_0\, - I2 => m_axi_rdata(112), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => m_axi_rdata(80), + I0 => m_axi_rdata(144), + I1 => m_axi_rdata(112), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[19]_i_2_n_0\ ); +\m_payload_i[19]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(80), + I1 => m_axi_rdata(48), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[19]_i_3_n_0\ + ); \m_payload_i[1]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[1]\, - I3 => m_axi_rresp(4), - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => \m_payload_i[1]_i_2_n_0\, + I0 => \m_payload_i[1]_i_2_n_0\, + I1 => m_axi_rresp(0), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rresp(8), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[1]_i_3_n_0\, O => skid_buffer(1) ); \m_payload_i[1]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[31]_i_2_n_0\, - I1 => m_axi_rresp(0), - I2 => m_axi_rresp(2), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rresp(6), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rresp(6), + I1 => m_axi_rresp(4), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[1]_i_2_n_0\ ); -\m_payload_i[20]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[1]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"00F000C0AAAAAAAA" ) port map ( - I0 => m_axi_rdata(17), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \skid_buffer_reg_n_0_[1]\, + I1 => m_axi_rresp(2), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[1]_i_3_n_0\ + ); +\m_payload_i[20]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFFFFBABABA" + ) + port map ( + I0 => \m_payload_i[20]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[20]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[20]_i_2_n_0\, + I3 => m_axi_rdata(17), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[20]_i_3_n_0\, O => skid_buffer(20) ); \m_payload_i[20]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => m_axi_rdata(49), - I1 => \m_payload_i[33]_i_2_n_0\, - I2 => m_axi_rdata(113), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => m_axi_rdata(81), + I0 => m_axi_rdata(145), + I1 => m_axi_rdata(113), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[20]_i_2_n_0\ ); -\m_payload_i[21]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[20]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(81), + I1 => m_axi_rdata(49), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[20]_i_3_n_0\ + ); +\m_payload_i[21]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF222" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => \skid_buffer_reg_n_0_[21]\, + I0 => \m_payload_i[21]_i_2_n_0\, I1 => \^aa_rready\, - I2 => m_axi_rdata(50), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => \m_payload_i[21]_i_2_n_0\, + I2 => \skid_buffer_reg_n_0_[21]\, + I3 => m_axi_rdata(18), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[21]_i_3_n_0\, O => skid_buffer(21) ); \m_payload_i[21]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, - I1 => m_axi_rdata(82), - I2 => m_axi_rdata(18), - I3 => \m_payload_i[31]_i_2_n_0\, - I4 => m_axi_rdata(114), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(146), + I1 => m_axi_rdata(114), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[21]_i_2_n_0\ ); -\m_payload_i[22]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[21]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(82), + I1 => m_axi_rdata(50), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[21]_i_3_n_0\ + ); +\m_payload_i[22]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(19), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[22]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[22]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[22]_i_2_n_0\, + I3 => m_axi_rdata(19), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[22]_i_3_n_0\, O => skid_buffer(22) ); \m_payload_i[22]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(51), - I2 => m_axi_rdata(83), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(115), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(147), + I1 => m_axi_rdata(115), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[22]_i_2_n_0\ ); -\m_payload_i[23]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[22]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(83), + I1 => m_axi_rdata(51), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[22]_i_3_n_0\ + ); +\m_payload_i[23]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF222" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => \skid_buffer_reg_n_0_[23]\, + I0 => \m_payload_i[23]_i_2_n_0\, I1 => \^aa_rready\, - I2 => m_axi_rdata(84), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => \m_payload_i[23]_i_2_n_0\, + I2 => \skid_buffer_reg_n_0_[23]\, + I3 => m_axi_rdata(20), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[23]_i_3_n_0\, O => skid_buffer(23) ); \m_payload_i[23]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(52), - I2 => m_axi_rdata(20), - I3 => \m_payload_i[31]_i_2_n_0\, - I4 => m_axi_rdata(116), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(148), + I1 => m_axi_rdata(116), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[23]_i_2_n_0\ ); -\m_payload_i[24]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[23]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"00000AC000000000" ) port map ( - I0 => m_axi_rdata(21), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(84), + I1 => m_axi_rdata(52), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[23]_i_3_n_0\ + ); +\m_payload_i[24]_i_1\: unisim.vcomponents.LUT6 + generic map( + INIT => X"FFFFFFFFFFBABABA" + ) + port map ( + I0 => \m_payload_i[24]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[24]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[24]_i_2_n_0\, + I3 => m_axi_rdata(21), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[24]_i_3_n_0\, O => skid_buffer(24) ); -\m_payload_i[24]_i_2\: unisim.vcomponents.LUT6 +\m_payload_i[24]_i_2\: unisim.vcomponents.LUT6 + generic map( + INIT => X"000AC00000000000" + ) + port map ( + I0 => m_axi_rdata(149), + I1 => m_axi_rdata(117), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[24]_i_2_n_0\ + ); +\m_payload_i[24]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"00000AC000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, + I0 => m_axi_rdata(85), I1 => m_axi_rdata(53), - I2 => m_axi_rdata(85), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(117), - I5 => \m_payload_i[34]_i_4_n_0\, - O => \m_payload_i[24]_i_2_n_0\ + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[24]_i_3_n_0\ ); \m_payload_i[25]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[25]\, - I3 => m_axi_rdata(86), - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => \m_payload_i[25]_i_2_n_0\, + I0 => \m_payload_i[25]_i_2_n_0\, + I1 => m_axi_rdata(22), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(150), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[25]_i_3_n_0\, O => skid_buffer(25) ); \m_payload_i[25]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[34]_i_4_n_0\, - I1 => m_axi_rdata(118), - I2 => m_axi_rdata(54), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(22), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(118), + I1 => m_axi_rdata(86), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[25]_i_2_n_0\ ); +\m_payload_i[25]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[25]\, + I1 => m_axi_rdata(54), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[25]_i_3_n_0\ + ); \m_payload_i[26]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[26]\, - I3 => m_axi_rdata(55), - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => \m_payload_i[26]_i_2_n_0\, + I0 => \m_payload_i[26]_i_2_n_0\, + I1 => m_axi_rdata(23), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(151), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[26]_i_3_n_0\, O => skid_buffer(26) ); \m_payload_i[26]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[34]_i_4_n_0\, - I1 => m_axi_rdata(119), - I2 => m_axi_rdata(87), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(23), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(119), + I1 => m_axi_rdata(87), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[26]_i_2_n_0\ ); -\m_payload_i[27]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[26]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[26]\, + I1 => m_axi_rdata(55), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[26]_i_3_n_0\ + ); +\m_payload_i[27]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(24), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[27]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[27]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[27]_i_2_n_0\, + I3 => m_axi_rdata(24), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[27]_i_3_n_0\, O => skid_buffer(27) ); \m_payload_i[27]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(56), - I2 => m_axi_rdata(88), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(120), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(152), + I1 => m_axi_rdata(120), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[27]_i_2_n_0\ ); +\m_payload_i[27]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(88), + I1 => m_axi_rdata(56), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[27]_i_3_n_0\ + ); \m_payload_i[28]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[28]\, - I3 => m_axi_rdata(121), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[28]_i_2_n_0\, + I0 => \m_payload_i[28]_i_2_n_0\, + I1 => m_axi_rdata(25), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(153), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[28]_i_3_n_0\, O => skid_buffer(28) ); \m_payload_i[28]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(121), I1 => m_axi_rdata(89), - I2 => m_axi_rdata(57), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(25), - I5 => \m_payload_i[31]_i_2_n_0\, + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[28]_i_2_n_0\ ); +\m_payload_i[28]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[28]\, + I1 => m_axi_rdata(57), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[28]_i_3_n_0\ + ); \m_payload_i[29]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[29]\, - I3 => m_axi_rdata(58), - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => \m_payload_i[29]_i_2_n_0\, + I0 => \m_payload_i[29]_i_2_n_0\, + I1 => m_axi_rdata(26), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(154), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[29]_i_3_n_0\, O => skid_buffer(29) ); \m_payload_i[29]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(122), I1 => m_axi_rdata(90), - I2 => m_axi_rdata(122), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => m_axi_rdata(26), - I5 => \m_payload_i[31]_i_2_n_0\, + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[29]_i_2_n_0\ ); +\m_payload_i[29]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[29]\, + I1 => m_axi_rdata(58), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[29]_i_3_n_0\ + ); \m_payload_i[2]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[2]\, - I3 => m_axi_rresp(3), - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => \m_payload_i[2]_i_2_n_0\, + I0 => \m_payload_i[2]_i_2_n_0\, + I1 => m_axi_rresp(1), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rresp(9), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[2]_i_3_n_0\, O => skid_buffer(2) ); \m_payload_i[2]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[31]_i_2_n_0\, - I1 => m_axi_rresp(1), - I2 => m_axi_rresp(5), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rresp(7), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rresp(7), + I1 => m_axi_rresp(5), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[2]_i_2_n_0\ ); +\m_payload_i[2]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[2]\, + I1 => m_axi_rresp(3), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[2]_i_3_n_0\ + ); \m_payload_i[30]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[30]\, - I3 => m_axi_rdata(123), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[30]_i_2_n_0\, + I0 => \m_payload_i[30]_i_2_n_0\, + I1 => m_axi_rdata(27), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(155), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[30]_i_3_n_0\, O => skid_buffer(30) ); \m_payload_i[30]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(59), - I2 => m_axi_rdata(91), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(27), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(123), + I1 => m_axi_rdata(91), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[30]_i_2_n_0\ ); +\m_payload_i[30]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[30]\, + I1 => m_axi_rdata(59), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[30]_i_3_n_0\ + ); \m_payload_i[31]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFF8FFF888" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => m_axi_rdata(28), - I1 => \m_payload_i[31]_i_2_n_0\, - I2 => \m_payload_i[34]_i_3_n_0\, - I3 => \^aa_rready\, - I4 => \skid_buffer_reg_n_0_[31]\, + I0 => \m_payload_i[31]_i_2_n_0\, + I1 => m_axi_rdata(28), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(156), + I4 => \m_payload_i[34]_i_5_n_0\, I5 => \m_payload_i[31]_i_3_n_0\, O => skid_buffer(31) ); -\m_payload_i[31]_i_2\: unisim.vcomponents.LUT4 +\m_payload_i[31]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"0002" + INIT => X"0000AC0000000000" ) port map ( - I0 => \^aa_rready\, - I1 => m_atarget_enc(2), - I2 => m_atarget_enc(1), - I3 => m_atarget_enc(0), + I0 => m_axi_rdata(124), + I1 => m_axi_rdata(92), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[31]_i_2_n_0\ ); \m_payload_i[31]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"00F000C0AAAAAAAA" ) port map ( - I0 => \m_payload_i[34]_i_4_n_0\, - I1 => m_axi_rdata(124), - I2 => m_axi_rdata(60), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(92), - I5 => \m_payload_i[32]_i_2_n_0\, + I0 => \skid_buffer_reg_n_0_[31]\, + I1 => m_axi_rdata(60), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[31]_i_3_n_0\ ); -\m_payload_i[32]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[32]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF222" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => \skid_buffer_reg_n_0_[32]\, + I0 => \m_payload_i[32]_i_2_n_0\, I1 => \^aa_rready\, - I2 => m_axi_rdata(93), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => \m_payload_i[32]_i_3_n_0\, + I2 => \skid_buffer_reg_n_0_[32]\, + I3 => m_axi_rdata(29), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[32]_i_3_n_0\, O => skid_buffer(32) ); -\m_payload_i[32]_i_2\: unisim.vcomponents.LUT4 +\m_payload_i[32]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"0020" + INIT => X"000AC00000000000" ) port map ( - I0 => \^aa_rready\, - I1 => m_atarget_enc(2), - I2 => m_atarget_enc(1), - I3 => m_atarget_enc(0), + I0 => m_axi_rdata(157), + I1 => m_axi_rdata(125), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[32]_i_2_n_0\ ); \m_payload_i[32]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"00000AC000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, + I0 => m_axi_rdata(93), I1 => m_axi_rdata(61), - I2 => m_axi_rdata(29), - I3 => \m_payload_i[31]_i_2_n_0\, - I4 => m_axi_rdata(125), - I5 => \m_payload_i[34]_i_4_n_0\, + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[32]_i_3_n_0\ ); \m_payload_i[33]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[33]\, - I3 => m_axi_rdata(62), - I4 => \m_payload_i[33]_i_2_n_0\, + I0 => \m_payload_i[33]_i_2_n_0\, + I1 => m_axi_rdata(30), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(158), + I4 => \m_payload_i[34]_i_5_n_0\, I5 => \m_payload_i[33]_i_3_n_0\, O => skid_buffer(33) ); -\m_payload_i[33]_i_2\: unisim.vcomponents.LUT4 +\m_payload_i[33]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"0008" + INIT => X"0000AC0000000000" ) port map ( - I0 => \^aa_rready\, - I1 => m_atarget_enc(0), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(1), + I0 => m_axi_rdata(126), + I1 => m_axi_rdata(94), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[33]_i_2_n_0\ ); \m_payload_i[33]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"00F000C0AAAAAAAA" ) port map ( - I0 => \m_payload_i[32]_i_2_n_0\, - I1 => m_axi_rdata(94), - I2 => m_axi_rdata(126), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => m_axi_rdata(30), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => \skid_buffer_reg_n_0_[33]\, + I1 => m_axi_rdata(62), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[33]_i_3_n_0\ ); \m_payload_i[34]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[34]\, - I3 => m_axi_rdata(127), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[34]_i_5_n_0\, + I1 => m_axi_rdata(31), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(159), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[34]_i_6_n_0\, O => skid_buffer(34) ); -\m_payload_i[34]_i_3\: unisim.vcomponents.LUT3 +\m_payload_i[34]_i_3\: unisim.vcomponents.LUT6 generic map( - INIT => X"04" + INIT => X"0000AC0000000000" ) port map ( - I0 => m_atarget_enc(0), - I1 => m_atarget_enc(2), - I2 => m_atarget_enc(1), + I0 => m_axi_rdata(127), + I1 => m_axi_rdata(95), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[34]_i_3_n_0\ ); \m_payload_i[34]_i_4\: unisim.vcomponents.LUT4 generic map( - INIT => X"0800" + INIT => X"0100" ) port map ( - I0 => \^aa_rready\, - I1 => m_atarget_enc(0), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(1), + I0 => \m_payload_i_reg[0]_0\(0), + I1 => \m_payload_i_reg[0]_0\(1), + I2 => \m_payload_i_reg[0]_0\(2), + I3 => \^aa_rready\, O => \m_payload_i[34]_i_4_n_0\ ); -\m_payload_i[34]_i_5\: unisim.vcomponents.LUT6 +\m_payload_i[34]_i_5\: unisim.vcomponents.LUT4 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0400" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(63), - I2 => m_axi_rdata(95), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(31), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i_reg[0]_0\(0), + I1 => \m_payload_i_reg[0]_0\(2), + I2 => \m_payload_i_reg[0]_0\(1), + I3 => \^aa_rready\, O => \m_payload_i[34]_i_5_n_0\ ); -\m_payload_i[3]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[34]_i_6\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[34]\, + I1 => m_axi_rdata(63), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[34]_i_6_n_0\ + ); +\m_payload_i[3]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(0), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[3]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[3]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[3]_i_2_n_0\, + I3 => m_axi_rdata(0), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[3]_i_3_n_0\, O => skid_buffer(3) ); \m_payload_i[3]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => m_axi_rdata(32), - I1 => \m_payload_i[33]_i_2_n_0\, - I2 => m_axi_rdata(96), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => m_axi_rdata(64), + I0 => m_axi_rdata(128), + I1 => m_axi_rdata(96), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[3]_i_2_n_0\ ); -\m_payload_i[4]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[3]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(64), + I1 => m_axi_rdata(32), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[3]_i_3_n_0\ + ); +\m_payload_i[4]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(1), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[4]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[4]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[4]_i_2_n_0\, + I3 => m_axi_rdata(1), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[4]_i_3_n_0\, O => skid_buffer(4) ); \m_payload_i[4]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => m_axi_rdata(65), - I1 => \m_payload_i[32]_i_2_n_0\, - I2 => m_axi_rdata(97), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => \m_payload_i[33]_i_2_n_0\, - I5 => m_axi_rdata(33), + I0 => m_axi_rdata(129), + I1 => m_axi_rdata(97), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[4]_i_2_n_0\ ); +\m_payload_i[4]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(65), + I1 => m_axi_rdata(33), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[4]_i_3_n_0\ + ); \m_payload_i[5]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[5]\, - I3 => m_axi_rdata(66), - I4 => \m_payload_i[32]_i_2_n_0\, - I5 => \m_payload_i[5]_i_2_n_0\, + I0 => \m_payload_i[5]_i_2_n_0\, + I1 => m_axi_rdata(2), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(130), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[5]_i_3_n_0\, O => skid_buffer(5) ); \m_payload_i[5]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[31]_i_2_n_0\, - I1 => m_axi_rdata(2), - I2 => m_axi_rdata(98), - I3 => \m_payload_i[34]_i_4_n_0\, - I4 => m_axi_rdata(34), - I5 => \m_payload_i[33]_i_2_n_0\, + I0 => m_axi_rdata(98), + I1 => m_axi_rdata(66), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[5]_i_2_n_0\ ); +\m_payload_i[5]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[5]\, + I1 => m_axi_rdata(34), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[5]_i_3_n_0\ + ); \m_payload_i[6]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFFFB8B8B8" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => \m_payload_i[34]_i_3_n_0\, - I1 => \^aa_rready\, - I2 => \skid_buffer_reg_n_0_[6]\, - I3 => m_axi_rdata(99), - I4 => \m_payload_i[34]_i_4_n_0\, - I5 => \m_payload_i[6]_i_2_n_0\, + I0 => \m_payload_i[6]_i_2_n_0\, + I1 => m_axi_rdata(3), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(131), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[6]_i_3_n_0\, O => skid_buffer(6) ); \m_payload_i[6]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(35), - I2 => m_axi_rdata(67), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(3), - I5 => \m_payload_i[31]_i_2_n_0\, + I0 => m_axi_rdata(99), + I1 => m_axi_rdata(67), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[6]_i_2_n_0\ ); +\m_payload_i[6]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[6]\, + I1 => m_axi_rdata(35), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[6]_i_3_n_0\ + ); \m_payload_i[7]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFFFFFF8FFF888" + INIT => X"FFFFFFFFFFEAEAEA" ) port map ( - I0 => m_axi_rdata(4), - I1 => \m_payload_i[31]_i_2_n_0\, - I2 => \m_payload_i[34]_i_3_n_0\, - I3 => \^aa_rready\, - I4 => \skid_buffer_reg_n_0_[7]\, - I5 => \m_payload_i[7]_i_2_n_0\, + I0 => \m_payload_i[7]_i_2_n_0\, + I1 => m_axi_rdata(4), + I2 => \m_payload_i[34]_i_4_n_0\, + I3 => m_axi_rdata(132), + I4 => \m_payload_i[34]_i_5_n_0\, + I5 => \m_payload_i[7]_i_3_n_0\, O => skid_buffer(7) ); \m_payload_i[7]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"0000AC0000000000" ) port map ( - I0 => \m_payload_i[34]_i_4_n_0\, - I1 => m_axi_rdata(100), - I2 => m_axi_rdata(36), - I3 => \m_payload_i[33]_i_2_n_0\, - I4 => m_axi_rdata(68), - I5 => \m_payload_i[32]_i_2_n_0\, + I0 => m_axi_rdata(100), + I1 => m_axi_rdata(68), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[7]_i_2_n_0\ ); -\m_payload_i[8]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[7]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00F000C0AAAAAAAA" + ) + port map ( + I0 => \skid_buffer_reg_n_0_[7]\, + I1 => m_axi_rdata(36), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[7]_i_3_n_0\ + ); +\m_payload_i[8]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF88F8" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => m_axi_rdata(5), - I1 => \m_payload_i[31]_i_2_n_0\, + I0 => \m_payload_i[8]_i_2_n_0\, + I1 => \^aa_rready\, I2 => \skid_buffer_reg_n_0_[8]\, - I3 => \^aa_rready\, - I4 => \m_payload_i[8]_i_2_n_0\, + I3 => m_axi_rdata(5), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[8]_i_3_n_0\, O => skid_buffer(8) ); \m_payload_i[8]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(37), - I2 => m_axi_rdata(69), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => m_axi_rdata(101), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(133), + I1 => m_axi_rdata(101), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[8]_i_2_n_0\ ); -\m_payload_i[9]_i_1\: unisim.vcomponents.LUT5 +\m_payload_i[8]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(69), + I1 => m_axi_rdata(37), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[8]_i_3_n_0\ + ); +\m_payload_i[9]_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF222" + INIT => X"FFFFFFFFFFBABABA" ) port map ( - I0 => \skid_buffer_reg_n_0_[9]\, + I0 => \m_payload_i[9]_i_2_n_0\, I1 => \^aa_rready\, - I2 => m_axi_rdata(70), - I3 => \m_payload_i[32]_i_2_n_0\, - I4 => \m_payload_i[9]_i_2_n_0\, + I2 => \skid_buffer_reg_n_0_[9]\, + I3 => m_axi_rdata(6), + I4 => \m_payload_i[34]_i_4_n_0\, + I5 => \m_payload_i[9]_i_3_n_0\, O => skid_buffer(9) ); \m_payload_i[9]_i_2\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFFF888F888F888" + INIT => X"000AC00000000000" ) port map ( - I0 => \m_payload_i[33]_i_2_n_0\, - I1 => m_axi_rdata(38), - I2 => m_axi_rdata(6), - I3 => \m_payload_i[31]_i_2_n_0\, - I4 => m_axi_rdata(102), - I5 => \m_payload_i[34]_i_4_n_0\, + I0 => m_axi_rdata(134), + I1 => m_axi_rdata(102), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, O => \m_payload_i[9]_i_2_n_0\ ); +\m_payload_i[9]_i_3\: unisim.vcomponents.LUT6 + generic map( + INIT => X"00000AC000000000" + ) + port map ( + I0 => m_axi_rdata(70), + I1 => m_axi_rdata(38), + I2 => \m_payload_i_reg[0]_0\(0), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(2), + I5 => \^aa_rready\, + O => \m_payload_i[9]_i_3_n_0\ + ); \m_payload_i_reg[0]\: unisim.vcomponents.FDRE port map ( C => aclk, @@ -3401,30 +4157,28 @@ begin Q => \^q\(9), R => '0' ); -\m_ready_d[1]_i_3\: unisim.vcomponents.LUT6 +m_valid_i_i_4: unisim.vcomponents.LUT5 generic map( - INIT => X"000000007FFFFFFF" + INIT => X"0C0000A0" ) port map ( - I0 => \^sr_rvalid\, - I1 => \^q\(0), - I2 => s_axi_rready(0), - I3 => aa_grant_rnw, - I4 => m_valid_i, - I5 => m_ready_d(0), - O => m_valid_i_reg_0 + I0 => m_axi_rvalid(3), + I1 => m_axi_rvalid(2), + I2 => \m_payload_i_reg[0]_0\(2), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(0), + O => \m_axi_rvalid[4]\ ); -m_valid_i_i_4: unisim.vcomponents.LUT6 +m_valid_i_i_6: unisim.vcomponents.LUT5 generic map( - INIT => X"00CA000F00CA0000" + INIT => X"000C0A00" ) port map ( I0 => m_axi_rvalid(1), - I1 => m_axi_rvalid(2), - I2 => m_atarget_enc(0), - I3 => m_atarget_enc(2), - I4 => m_atarget_enc(1), - I5 => m_axi_rvalid(0), + I1 => m_axi_rvalid(0), + I2 => \m_payload_i_reg[0]_0\(2), + I3 => \m_payload_i_reg[0]_0\(1), + I4 => \m_payload_i_reg[0]_0\(0), O => m_axi_rvalid_2_sn_1 ); m_valid_i_reg: unisim.vcomponents.FDRE @@ -3434,19 +4188,10 @@ m_valid_i_reg: unisim.vcomponents.FDRE port map ( C => aclk, CE => '1', - D => m_valid_i_reg_1, + D => m_valid_i_reg_0, Q => \^sr_rvalid\, R => '0' ); -\s_axi_rvalid[0]_INST_0\: unisim.vcomponents.LUT2 - generic map( - INIT => X"2" - ) - port map ( - I0 => \^sr_rvalid\, - I1 => p_0_in1_in, - O => s_axi_rvalid(0) - ); s_ready_i_reg: unisim.vcomponents.FDRE generic map( INIT => '0' @@ -3458,16 +4203,15 @@ s_ready_i_reg: unisim.vcomponents.FDRE Q => \^aa_rready\, R => '0' ); -\skid_buffer[0]_i_1\: unisim.vcomponents.LUT5 +\skid_buffer[0]_i_1\: unisim.vcomponents.LUT4 generic map( - INIT => X"03FFAAAA" + INIT => X"2EEE" ) port map ( I0 => \skid_buffer_reg_n_0_[0]\, - I1 => m_atarget_enc(0), - I2 => m_atarget_enc(1), - I3 => m_atarget_enc(2), - I4 => \^aa_rready\, + I1 => \^aa_rready\, + I2 => \m_payload_i_reg[0]_0\(2), + I3 => \m_payload_i_reg[0]_0\(1), O => skid_buffer(0) ); \skid_buffer_reg[0]\: unisim.vcomponents.FDRE @@ -3759,140 +4503,139 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd is port ( Q : out STD_LOGIC_VECTOR ( 34 downto 0 ); \m_payload_i_reg[34]\ : out STD_LOGIC_VECTOR ( 33 downto 0 ); - s_axi_wready : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_wvalid : out STD_LOGIC_VECTOR ( 2 downto 0 ); - m_axi_awvalid : out STD_LOGIC_VECTOR ( 2 downto 0 ); s_axi_bvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_bready : out STD_LOGIC_VECTOR ( 2 downto 0 ); - m_axi_arvalid : out STD_LOGIC_VECTOR ( 2 downto 0 ); + s_axi_wready : out STD_LOGIC_VECTOR ( 0 to 0 ); + m_axi_bready : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); s_axi_bresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); s_axi_awready : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_arready : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_rvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_rready : out STD_LOGIC_VECTOR ( 2 downto 0 ); + m_axi_rready : out STD_LOGIC_VECTOR ( 4 downto 0 ); aresetn : in STD_LOGIC; aclk : in STD_LOGIC; - s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_awvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_arvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_awready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - s_axi_wvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_bready : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_rdata : in STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_rresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_bvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_wready : in STD_LOGIC_VECTOR ( 3 downto 0 ); + s_axi_wvalid : in STD_LOGIC_VECTOR ( 0 to 0 ); + s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); + m_axi_bresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_rresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_rdata : in STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_rvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awready : in STD_LOGIC_VECTOR ( 4 downto 0 ); s_axi_arprot : in STD_LOGIC_VECTOR ( 2 downto 0 ); s_axi_awprot : in STD_LOGIC_VECTOR ( 2 downto 0 ); s_axi_araddr : in STD_LOGIC_VECTOR ( 31 downto 0 ); s_axi_awaddr : in STD_LOGIC_VECTOR ( 31 downto 0 ) ); - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd : entity is "axi_crossbar_v2_1_33_crossbar_sasd"; end mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd; architecture STRUCTURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd is signal aa_grant_rnw : STD_LOGIC; signal aa_rready : STD_LOGIC; - signal addr_arbiter_inst_n_10 : STD_LOGIC; - signal addr_arbiter_inst_n_4 : STD_LOGIC; - signal addr_arbiter_inst_n_5 : STD_LOGIC; - signal addr_arbiter_inst_n_52 : STD_LOGIC; - signal addr_arbiter_inst_n_60 : STD_LOGIC; - signal addr_arbiter_inst_n_61 : STD_LOGIC; - signal addr_arbiter_inst_n_62 : STD_LOGIC; - signal addr_arbiter_inst_n_63 : STD_LOGIC; - signal addr_arbiter_inst_n_69 : STD_LOGIC; - signal addr_arbiter_inst_n_70 : STD_LOGIC; - signal addr_arbiter_inst_n_73 : STD_LOGIC; - signal addr_arbiter_inst_n_74 : STD_LOGIC; - signal addr_arbiter_inst_n_9 : STD_LOGIC; - signal any_error : STD_LOGIC; + signal addr_arbiter_inst_n_21 : STD_LOGIC; + signal addr_arbiter_inst_n_22 : STD_LOGIC; + signal addr_arbiter_inst_n_24 : STD_LOGIC; + signal addr_arbiter_inst_n_36 : STD_LOGIC; + signal addr_arbiter_inst_n_37 : STD_LOGIC; + signal addr_arbiter_inst_n_38 : STD_LOGIC; + signal addr_arbiter_inst_n_80 : STD_LOGIC; + signal addr_arbiter_inst_n_81 : STD_LOGIC; signal aresetn_d : STD_LOGIC; - signal \gen_decerr.decerr_slave_inst_n_2\ : STD_LOGIC; - signal \gen_decerr.decerr_slave_inst_n_3\ : STD_LOGIC; + signal f_mux_return2 : STD_LOGIC; + signal f_mux_return3 : STD_LOGIC; + signal \f_mux_return__1\ : STD_LOGIC; + signal \f_mux_return__3\ : STD_LOGIC; signal \gen_decerr.decerr_slave_inst_n_4\ : STD_LOGIC; signal \gen_decerr.decerr_slave_inst_n_5\ : STD_LOGIC; - signal \gen_decerr.decerr_slave_inst_n_6\ : STD_LOGIC; - signal \gen_decerr.decerr_slave_inst_n_7\ : STD_LOGIC; signal \gen_decerr.decerr_slave_inst_n_8\ : STD_LOGIC; signal m_atarget_enc : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal m_atarget_hot : STD_LOGIC_VECTOR ( 4 downto 0 ); - signal m_atarget_hot0 : STD_LOGIC_VECTOR ( 2 downto 0 ); + signal m_atarget_hot : STD_LOGIC_VECTOR ( 5 downto 0 ); + signal m_atarget_hot0 : STD_LOGIC_VECTOR ( 5 downto 0 ); signal m_ready_d : STD_LOGIC_VECTOR ( 1 downto 0 ); - signal m_ready_d0 : STD_LOGIC_VECTOR ( 1 to 1 ); - signal m_ready_d0_0 : STD_LOGIC_VECTOR ( 0 to 0 ); + signal m_ready_d0 : STD_LOGIC_VECTOR ( 1 downto 0 ); + signal m_ready_d0_0 : STD_LOGIC_VECTOR ( 2 downto 0 ); signal m_ready_d_1 : STD_LOGIC_VECTOR ( 2 downto 0 ); signal m_valid_i : STD_LOGIC; - signal mi_bvalid : STD_LOGIC_VECTOR ( 4 to 4 ); - signal mi_wready : STD_LOGIC_VECTOR ( 4 to 4 ); - signal p_0_in1_in : STD_LOGIC; + signal mi_arvalid_en : STD_LOGIC; + signal mi_bvalid : STD_LOGIC_VECTOR ( 5 to 5 ); + signal mi_wready : STD_LOGIC_VECTOR ( 5 to 5 ); signal p_1_in : STD_LOGIC; signal reg_slice_r_n_2 : STD_LOGIC; signal reg_slice_r_n_37 : STD_LOGIC; signal reg_slice_r_n_38 : STD_LOGIC; - signal reg_slice_r_n_43 : STD_LOGIC; - signal reg_slice_r_n_44 : STD_LOGIC; + signal reg_slice_r_n_39 : STD_LOGIC; + signal reg_slice_r_n_45 : STD_LOGIC; + signal reg_slice_r_n_46 : STD_LOGIC; signal reset : STD_LOGIC; signal \s_axi_bresp[0]_INST_0_i_1_n_0\ : STD_LOGIC; signal \s_axi_bresp[1]_INST_0_i_1_n_0\ : STD_LOGIC; signal splitter_ar_n_0 : STD_LOGIC; + signal splitter_ar_n_1 : STD_LOGIC; + signal splitter_aw_n_0 : STD_LOGIC; + signal splitter_aw_n_1 : STD_LOGIC; + signal splitter_aw_n_2 : STD_LOGIC; signal splitter_aw_n_3 : STD_LOGIC; signal splitter_aw_n_4 : STD_LOGIC; + signal splitter_aw_n_5 : STD_LOGIC; signal sr_rvalid : STD_LOGIC; + attribute SOFT_HLUTNM : string; + attribute SOFT_HLUTNM of \s_axi_wready[0]_INST_0_i_2\ : label is "soft_lutpair23"; + attribute SOFT_HLUTNM of \s_axi_wready[0]_INST_0_i_3\ : label is "soft_lutpair23"; begin addr_arbiter_inst: entity work.mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbiter_sasd port map ( - D(3) => addr_arbiter_inst_n_5, - D(2 downto 0) => m_atarget_hot0(2 downto 0), + D(2) => addr_arbiter_inst_n_36, + D(1) => addr_arbiter_inst_n_37, + D(0) => addr_arbiter_inst_n_38, E(0) => p_1_in, - Q(34 downto 0) => Q(34 downto 0), + Q(5 downto 0) => m_atarget_hot(5 downto 0), SR(0) => reset, aa_grant_rnw => aa_grant_rnw, aa_rready => aa_rready, aclk => aclk, aresetn_d => aresetn_d, - aresetn_d_reg => addr_arbiter_inst_n_4, - \aresetn_d_reg[0]\ => addr_arbiter_inst_n_62, - \aresetn_d_reg[1]\ => addr_arbiter_inst_n_63, - aresetn_d_reg_0 => addr_arbiter_inst_n_9, - aresetn_d_reg_1 => addr_arbiter_inst_n_10, - \gen_axilite.s_axi_awready_i_reg\ => addr_arbiter_inst_n_73, - \gen_axilite.s_axi_bvalid_i_reg\(3) => m_atarget_hot(4), - \gen_axilite.s_axi_bvalid_i_reg\(2 downto 0) => m_atarget_hot(2 downto 0), - \gen_no_arbiter.grant_rnw_reg_0\ => addr_arbiter_inst_n_61, - \gen_no_arbiter.grant_rnw_reg_1\ => addr_arbiter_inst_n_70, - \gen_no_arbiter.m_amesg_i_reg[19]_0\(0) => any_error, - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_0\ => \gen_decerr.decerr_slave_inst_n_8\, - \gen_no_arbiter.m_grant_hot_i[0]_inv_i_2_1\ => reg_slice_r_n_2, - \gen_no_arbiter.m_valid_i_reg_0\ => splitter_aw_n_3, - m_atarget_enc(2 downto 0) => m_atarget_enc(2 downto 0), - m_axi_arvalid(2 downto 0) => m_axi_arvalid(2 downto 0), - m_axi_awvalid(2 downto 0) => m_axi_awvalid(2 downto 0), - m_axi_bready(2 downto 0) => m_axi_bready(2 downto 0), - m_axi_wready(1 downto 0) => m_axi_wready(3 downto 2), - m_axi_wvalid(2 downto 0) => m_axi_wvalid(2 downto 0), + \aresetn_d_reg[0]\ => addr_arbiter_inst_n_22, + \aresetn_d_reg[1]\ => addr_arbiter_inst_n_24, + \f_mux_return__1\ => \f_mux_return__1\, + \f_mux_return__3\ => \f_mux_return__3\, + \gen_axilite.s_axi_bvalid_i_reg\ => addr_arbiter_inst_n_81, + \gen_no_arbiter.grant_rnw_reg_0\(0) => m_ready_d0_0(2), + \gen_no_arbiter.m_amesg_i_reg[48]_0\(34 downto 0) => Q(34 downto 0), + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\(5 downto 0) => m_atarget_hot0(5 downto 0), + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\ => reg_slice_r_n_2, + \gen_no_arbiter.m_valid_i_reg_0\ => addr_arbiter_inst_n_21, + \gen_no_arbiter.m_valid_i_reg_1\ => splitter_aw_n_2, + \gen_no_arbiter.m_valid_i_reg_2\ => \gen_decerr.decerr_slave_inst_n_8\, + \gen_no_arbiter.m_valid_i_reg_3\ => splitter_aw_n_5, + \m_atarget_hot_reg[5]\ => addr_arbiter_inst_n_80, + m_axi_arvalid(4 downto 0) => m_axi_arvalid(4 downto 0), + m_axi_awvalid(4 downto 0) => m_axi_awvalid(4 downto 0), + m_axi_bready(4 downto 0) => m_axi_bready(4 downto 0), + m_axi_wvalid(4 downto 0) => m_axi_wvalid(4 downto 0), m_ready_d(2 downto 0) => m_ready_d_1(2 downto 0), - m_ready_d0(0) => m_ready_d0_0(0), - m_ready_d0_0(0) => m_ready_d0(1), - \m_ready_d[2]_i_3\ => \gen_decerr.decerr_slave_inst_n_4\, - \m_ready_d[2]_i_3_0\ => splitter_aw_n_4, + m_ready_d0(1 downto 0) => m_ready_d0(1 downto 0), + m_ready_d0_0(1 downto 0) => m_ready_d0_0(1 downto 0), m_ready_d_1(1 downto 0) => m_ready_d(1 downto 0), - \m_ready_d_reg[1]\ => addr_arbiter_inst_n_69, - \m_ready_d_reg[1]_0\ => splitter_ar_n_0, + \m_ready_d_reg[1]\(0) => reg_slice_r_n_37, + \m_ready_d_reg[1]_0\ => splitter_ar_n_1, \m_ready_d_reg[1]_1\ => \gen_decerr.decerr_slave_inst_n_5\, - \m_ready_d_reg[2]\ => addr_arbiter_inst_n_74, + \m_ready_d_reg[1]_2\ => splitter_ar_n_0, m_valid_i => m_valid_i, - m_valid_i_reg(1) => reg_slice_r_n_43, - m_valid_i_reg(0) => reg_slice_r_n_44, - m_valid_i_reg_0 => reg_slice_r_n_38, - m_valid_i_reg_1 => \gen_decerr.decerr_slave_inst_n_6\, - mi_bvalid(0) => mi_bvalid(4), - mi_wready(0) => mi_wready(4), - p_0_in1_in => p_0_in1_in, + m_valid_i_reg(1) => reg_slice_r_n_45, + m_valid_i_reg(0) => reg_slice_r_n_46, + m_valid_i_reg_0 => reg_slice_r_n_39, + m_valid_i_reg_1 => \gen_decerr.decerr_slave_inst_n_4\, + m_valid_i_reg_2 => reg_slice_r_n_38, + mi_arvalid_en => mi_arvalid_en, + mi_bvalid(0) => mi_bvalid(5), + mi_wready(0) => mi_wready(5), s_axi_araddr(31 downto 0) => s_axi_araddr(31 downto 0), s_axi_arprot(2 downto 0) => s_axi_arprot(2 downto 0), s_axi_arready(0) => s_axi_arready(0), @@ -3902,14 +4645,11 @@ addr_arbiter_inst: entity work.mb_design_1_xbar_0_axi_crossbar_v2_1_33_addr_arbi s_axi_awready(0) => s_axi_awready(0), s_axi_awvalid(0) => s_axi_awvalid(0), s_axi_bready(0) => s_axi_bready(0), - s_axi_bready_0_sp_1 => addr_arbiter_inst_n_60, s_axi_bvalid(0) => s_axi_bvalid(0), - s_axi_bvalid_0_sp_1 => \gen_decerr.decerr_slave_inst_n_3\, s_axi_rready(0) => s_axi_rready(0), + s_axi_rvalid(0) => s_axi_rvalid(0), s_axi_wready(0) => s_axi_wready(0), - s_axi_wready_0_sp_1 => \gen_decerr.decerr_slave_inst_n_7\, s_axi_wvalid(0) => s_axi_wvalid(0), - s_axi_wvalid_0_sp_1 => addr_arbiter_inst_n_52, sr_rvalid => sr_rvalid ); aresetn_d_reg: unisim.vcomponents.FDRE @@ -3925,29 +4665,40 @@ aresetn_d_reg: unisim.vcomponents.FDRE ); \gen_decerr.decerr_slave_inst\: entity work.mb_design_1_xbar_0_axi_crossbar_v2_1_33_decerr_slave port map ( - Q(0) => m_atarget_hot(4), + Q(0) => m_atarget_hot(5), SR(0) => reset, aa_rready => aa_rready, aclk => aclk, aresetn_d => aresetn_d, - \gen_axilite.s_axi_arready_i_reg_0\ => \gen_decerr.decerr_slave_inst_n_5\, - \gen_axilite.s_axi_awready_i_reg_0\ => addr_arbiter_inst_n_74, - \gen_axilite.s_axi_bvalid_i_reg_0\ => \gen_decerr.decerr_slave_inst_n_3\, - \gen_axilite.s_axi_bvalid_i_reg_1\ => addr_arbiter_inst_n_73, - \gen_axilite.s_axi_rvalid_i_reg_0\ => \gen_decerr.decerr_slave_inst_n_6\, - \gen_axilite.s_axi_rvalid_i_reg_1\ => addr_arbiter_inst_n_69, - m_atarget_enc(2 downto 0) => m_atarget_enc(2 downto 0), - \m_atarget_enc_reg[1]\ => \gen_decerr.decerr_slave_inst_n_2\, - m_axi_arready(0) => m_axi_arready(2), - m_axi_bvalid(0) => m_axi_bvalid(2), - \m_axi_bvalid[2]\ => \gen_decerr.decerr_slave_inst_n_4\, - m_axi_rvalid(0) => m_axi_rvalid(1), - m_axi_wready(3 downto 0) => m_axi_wready(3 downto 0), - m_axi_wready_0_sp_1 => \gen_decerr.decerr_slave_inst_n_8\, - m_axi_wready_3_sp_1 => \gen_decerr.decerr_slave_inst_n_7\, - \m_ready_d_reg[0]\ => splitter_aw_n_4, - mi_bvalid(0) => mi_bvalid(4), - mi_wready(0) => mi_wready(4) + f_mux_return2 => f_mux_return2, + f_mux_return3 => f_mux_return3, + \f_mux_return__1\ => \f_mux_return__1\, + \f_mux_return__3\ => \f_mux_return__3\, + \gen_axilite.s_axi_awready_i_reg_0\ => addr_arbiter_inst_n_81, + \gen_axilite.s_axi_bvalid_i_reg_0\ => addr_arbiter_inst_n_80, + m_axi_arready(0) => m_axi_arready(0), + m_axi_arready_0_sp_1 => \gen_decerr.decerr_slave_inst_n_5\, + m_axi_awready(0) => m_axi_awready(0), + m_axi_awready_0_sp_1 => \gen_decerr.decerr_slave_inst_n_8\, + m_axi_bvalid(2 downto 1) => m_axi_bvalid(4 downto 3), + m_axi_bvalid(0) => m_axi_bvalid(0), + m_axi_rvalid(0) => m_axi_rvalid(0), + m_axi_rvalid_0_sp_1 => \gen_decerr.decerr_slave_inst_n_4\, + m_axi_wready(2 downto 1) => m_axi_wready(4 downto 3), + m_axi_wready(0) => m_axi_wready(0), + m_ready_d(1 downto 0) => m_ready_d_1(1 downto 0), + m_ready_d0(1 downto 0) => m_ready_d0_0(1 downto 0), + \m_ready_d[2]_i_2\(2 downto 0) => m_atarget_enc(2 downto 0), + \m_ready_d_reg[2]\ => splitter_aw_n_3, + \m_ready_d_reg[2]_0\ => splitter_aw_n_0, + \m_ready_d_reg[2]_1\ => addr_arbiter_inst_n_21, + \m_ready_d_reg[2]_2\ => splitter_aw_n_4, + \m_ready_d_reg[2]_3\ => splitter_aw_n_1, + mi_arvalid_en => mi_arvalid_en, + mi_bvalid(0) => mi_bvalid(5), + mi_wready(0) => mi_wready(5), + s_axi_bready(0) => s_axi_bready(0), + s_axi_wvalid(0) => s_axi_wvalid(0) ); \m_atarget_enc_reg[0]\: unisim.vcomponents.FDRE generic map( @@ -3956,7 +4707,7 @@ aresetn_d_reg: unisim.vcomponents.FDRE port map ( C => aclk, CE => '1', - D => addr_arbiter_inst_n_9, + D => addr_arbiter_inst_n_38, Q => m_atarget_enc(0), R => '0' ); @@ -3967,7 +4718,7 @@ aresetn_d_reg: unisim.vcomponents.FDRE port map ( C => aclk, CE => '1', - D => addr_arbiter_inst_n_10, + D => addr_arbiter_inst_n_37, Q => m_atarget_enc(1), R => '0' ); @@ -3978,9 +4729,9 @@ aresetn_d_reg: unisim.vcomponents.FDRE port map ( C => aclk, CE => '1', - D => any_error, + D => addr_arbiter_inst_n_36, Q => m_atarget_enc(2), - R => reset + R => '0' ); \m_atarget_hot_reg[0]\: unisim.vcomponents.FDRE generic map( @@ -4015,6 +4766,17 @@ aresetn_d_reg: unisim.vcomponents.FDRE Q => m_atarget_hot(2), R => reset ); +\m_atarget_hot_reg[3]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => aclk, + CE => '1', + D => m_atarget_hot0(3), + Q => m_atarget_hot(3), + R => reset + ); \m_atarget_hot_reg[4]\: unisim.vcomponents.FDRE generic map( INIT => '0' @@ -4022,10 +4784,21 @@ aresetn_d_reg: unisim.vcomponents.FDRE port map ( C => aclk, CE => '1', - D => addr_arbiter_inst_n_5, + D => m_atarget_hot0(4), Q => m_atarget_hot(4), R => reset ); +\m_atarget_hot_reg[5]\: unisim.vcomponents.FDRE + generic map( + INIT => '0' + ) + port map ( + C => aclk, + CE => '1', + D => m_atarget_hot0(5), + Q => m_atarget_hot(5), + R => reset + ); reg_slice_r: entity work.mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_register_slice port map ( E(0) => p_1_in, @@ -4035,111 +4808,127 @@ reg_slice_r: entity work.mb_design_1_xbar_0_axi_register_slice_v2_1_32_axic_regi aa_grant_rnw => aa_grant_rnw, aa_rready => aa_rready, aclk => aclk, - \aresetn_d_reg[1]_0\(1) => reg_slice_r_n_43, - \aresetn_d_reg[1]_0\(0) => reg_slice_r_n_44, - m_atarget_enc(2 downto 0) => m_atarget_enc(2 downto 0), - m_axi_rdata(127 downto 0) => m_axi_rdata(127 downto 0), - m_axi_rready(2 downto 0) => m_axi_rready(2 downto 0), - \m_axi_rready[2]\(2 downto 0) => m_atarget_hot(2 downto 0), - m_axi_rresp(7 downto 0) => m_axi_rresp(7 downto 0), - m_axi_rvalid(2 downto 1) => m_axi_rvalid(3 downto 2), - m_axi_rvalid(0) => m_axi_rvalid(0), + \aresetn_d_reg[1]_0\(1) => reg_slice_r_n_45, + \aresetn_d_reg[1]_0\(0) => reg_slice_r_n_46, + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv\ => splitter_ar_n_0, + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_0\ => \gen_decerr.decerr_slave_inst_n_5\, + \gen_no_arbiter.m_grant_hot_i_reg[0]_inv_1\ => splitter_ar_n_1, + m_axi_rdata(159 downto 0) => m_axi_rdata(159 downto 0), + m_axi_rready(4 downto 0) => m_axi_rready(4 downto 0), + \m_axi_rready[4]\(4 downto 0) => m_atarget_hot(4 downto 0), + m_axi_rresp(9 downto 0) => m_axi_rresp(9 downto 0), + m_axi_rvalid(3 downto 0) => m_axi_rvalid(4 downto 1), + \m_axi_rvalid[4]\ => reg_slice_r_n_39, m_axi_rvalid_2_sp_1 => reg_slice_r_n_38, - m_ready_d(0) => m_ready_d(0), + \m_payload_i_reg[0]_0\(2 downto 0) => m_atarget_enc(2 downto 0), + m_ready_d(1 downto 0) => m_ready_d(1 downto 0), + \m_ready_d_reg[1]\ => reg_slice_r_n_2, m_valid_i => m_valid_i, - m_valid_i_reg_0 => reg_slice_r_n_2, - m_valid_i_reg_1 => addr_arbiter_inst_n_63, - p_0_in1_in => p_0_in1_in, + m_valid_i_reg_0 => addr_arbiter_inst_n_24, + mi_arvalid_en => mi_arvalid_en, s_axi_rready(0) => s_axi_rready(0), - s_axi_rvalid(0) => s_axi_rvalid(0), - s_ready_i_reg_0 => addr_arbiter_inst_n_62, + s_ready_i_reg_0 => addr_arbiter_inst_n_22, sr_rvalid => sr_rvalid ); -\s_axi_bresp[0]_INST_0\: unisim.vcomponents.LUT5 +\s_axi_bresp[0]_INST_0\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF0038" + INIT => X"AABEAABAAAAEAAAA" ) port map ( - I0 => m_axi_bresp(2), + I0 => \s_axi_bresp[0]_INST_0_i_1_n_0\, I1 => m_atarget_enc(0), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(1), - I4 => \s_axi_bresp[0]_INST_0_i_1_n_0\, + I2 => m_atarget_enc(1), + I3 => m_atarget_enc(2), + I4 => m_axi_bresp(2), + I5 => m_axi_bresp(4), O => s_axi_bresp(0) ); \s_axi_bresp[0]_INST_0_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"00CA000F00CA0000" + INIT => X"0FF00A0C0F000A0C" ) port map ( - I0 => m_axi_bresp(4), - I1 => m_axi_bresp(6), - I2 => m_atarget_enc(0), + I0 => m_axi_bresp(8), + I1 => m_axi_bresp(0), + I2 => m_atarget_enc(1), I3 => m_atarget_enc(2), - I4 => m_atarget_enc(1), - I5 => m_axi_bresp(0), + I4 => m_atarget_enc(0), + I5 => m_axi_bresp(6), O => \s_axi_bresp[0]_INST_0_i_1_n_0\ ); -\s_axi_bresp[1]_INST_0\: unisim.vcomponents.LUT5 +\s_axi_bresp[1]_INST_0\: unisim.vcomponents.LUT6 generic map( - INIT => X"FFFF000E" + INIT => X"AABEAABAAAAEAAAA" ) port map ( - I0 => m_axi_bresp(1), - I1 => m_atarget_enc(2), + I0 => \s_axi_bresp[1]_INST_0_i_1_n_0\, + I1 => m_atarget_enc(0), I2 => m_atarget_enc(1), - I3 => m_atarget_enc(0), - I4 => \s_axi_bresp[1]_INST_0_i_1_n_0\, + I3 => m_atarget_enc(2), + I4 => m_axi_bresp(3), + I5 => m_axi_bresp(5), O => s_axi_bresp(1) ); \s_axi_bresp[1]_INST_0_i_1\: unisim.vcomponents.LUT6 generic map( - INIT => X"0A0F0C000A000C00" + INIT => X"0FF00A0C0F000A0C" ) port map ( - I0 => m_axi_bresp(7), - I1 => m_axi_bresp(5), - I2 => m_atarget_enc(2), - I3 => m_atarget_enc(1), + I0 => m_axi_bresp(9), + I1 => m_axi_bresp(1), + I2 => m_atarget_enc(1), + I3 => m_atarget_enc(2), I4 => m_atarget_enc(0), - I5 => m_axi_bresp(3), + I5 => m_axi_bresp(7), O => \s_axi_bresp[1]_INST_0_i_1_n_0\ ); +\s_axi_wready[0]_INST_0_i_2\: unisim.vcomponents.LUT3 + generic map( + INIT => X"04" + ) + port map ( + I0 => m_atarget_enc(1), + I1 => m_atarget_enc(2), + I2 => m_atarget_enc(0), + O => f_mux_return2 + ); +\s_axi_wready[0]_INST_0_i_3\: unisim.vcomponents.LUT3 + generic map( + INIT => X"40" + ) + port map ( + I0 => m_atarget_enc(2), + I1 => m_atarget_enc(1), + I2 => m_atarget_enc(0), + O => f_mux_return3 + ); splitter_ar: entity work.\mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter__parameterized0\ port map ( - Q(0) => reg_slice_r_n_37, + Q(2 downto 0) => m_atarget_enc(2 downto 0), aclk => aclk, aresetn_d => aresetn_d, - m_atarget_enc(2 downto 0) => m_atarget_enc(2 downto 0), - m_axi_arready(2) => m_axi_arready(3), - m_axi_arready(1 downto 0) => m_axi_arready(1 downto 0), - m_axi_arready_1_sp_1 => splitter_ar_n_0, + m_axi_arready(3 downto 0) => m_axi_arready(4 downto 1), + \m_axi_arready[4]\ => splitter_ar_n_1, + m_axi_arready_2_sp_1 => splitter_ar_n_0, m_ready_d(1 downto 0) => m_ready_d(1 downto 0), - m_ready_d0(0) => m_ready_d0(1), - \m_ready_d_reg[0]_0\ => addr_arbiter_inst_n_70, - \m_ready_d_reg[0]_1\ => addr_arbiter_inst_n_4, - \m_ready_d_reg[1]_0\ => reg_slice_r_n_2, - s_axi_rready(0) => s_axi_rready(0), - sr_rvalid => sr_rvalid + m_ready_d0(1 downto 0) => m_ready_d0(1 downto 0) ); splitter_aw: entity work.mb_design_1_xbar_0_axi_crossbar_v2_1_33_splitter port map ( + Q(2 downto 0) => m_atarget_enc(2 downto 0), aclk => aclk, aresetn_d => aresetn_d, - m_atarget_enc(2 downto 0) => m_atarget_enc(2 downto 0), - m_axi_awready(3 downto 0) => m_axi_awready(3 downto 0), - m_axi_bvalid(2) => m_axi_bvalid(3), - m_axi_bvalid(1 downto 0) => m_axi_bvalid(1 downto 0), - m_axi_bvalid_0_sp_1 => splitter_aw_n_4, + m_axi_awready(3 downto 0) => m_axi_awready(4 downto 1), + \m_axi_awready[4]\ => splitter_aw_n_5, + m_axi_awready_2_sp_1 => splitter_aw_n_2, + m_axi_bvalid(3 downto 0) => m_axi_bvalid(4 downto 1), + \m_axi_bvalid[4]\ => splitter_aw_n_3, + m_axi_bvalid_2_sp_1 => splitter_aw_n_0, + m_axi_wready(3 downto 0) => m_axi_wready(4 downto 1), + \m_axi_wready[4]\ => splitter_aw_n_4, + m_axi_wready_2_sp_1 => splitter_aw_n_1, m_ready_d(2 downto 0) => m_ready_d_1(2 downto 0), - m_ready_d0(0) => m_ready_d0_0(0), - \m_ready_d_reg[0]_0\ => addr_arbiter_inst_n_60, - \m_ready_d_reg[0]_1\ => \gen_decerr.decerr_slave_inst_n_3\, - \m_ready_d_reg[1]_0\ => \gen_decerr.decerr_slave_inst_n_7\, - \m_ready_d_reg[1]_1\ => addr_arbiter_inst_n_52, - \m_ready_d_reg[2]_0\ => splitter_aw_n_3, - \m_ready_d_reg[2]_1\ => addr_arbiter_inst_n_61, - \m_ready_d_reg[2]_2\ => \gen_decerr.decerr_slave_inst_n_2\ + m_ready_d0(2 downto 0) => m_ready_d0_0(2 downto 0) ); end STRUCTURE; library IEEE; @@ -4193,51 +4982,51 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar is s_axi_ruser : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_rvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_awid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_awaddr : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_awlen : out STD_LOGIC_VECTOR ( 31 downto 0 ); - m_axi_awsize : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_awburst : out STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_awlock : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_awcache : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_awprot : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_awregion : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_awqos : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_awuser : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_awvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_awready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wdata : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_wstrb : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_wlast : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wuser : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_buser : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bready : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_araddr : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_arlen : out STD_LOGIC_VECTOR ( 31 downto 0 ); - m_axi_arsize : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_arburst : out STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_arlock : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arcache : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_arprot : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_arregion : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_arqos : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_aruser : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rdata : in STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_rresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_rlast : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_ruser : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rready : out STD_LOGIC_VECTOR ( 3 downto 0 ) + m_axi_awid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awaddr : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_awlen : out STD_LOGIC_VECTOR ( 39 downto 0 ); + m_axi_awsize : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_awburst : out STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_awlock : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awcache : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_awprot : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_awregion : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_awqos : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_awuser : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wdata : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_wstrb : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_wlast : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wuser : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_buser : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bready : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_araddr : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_arlen : out STD_LOGIC_VECTOR ( 39 downto 0 ); + m_axi_arsize : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_arburst : out STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_arlock : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arcache : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_arprot : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_arregion : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_arqos : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_aruser : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rdata : in STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_rresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_rlast : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_ruser : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rready : out STD_LOGIC_VECTOR ( 4 downto 0 ) ); attribute C_AXI_ADDR_WIDTH : integer; attribute C_AXI_ADDR_WIDTH of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 32; @@ -4266,23 +5055,23 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar is attribute C_FAMILY : string; attribute C_FAMILY of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "artix7"; attribute C_M_AXI_ADDR_WIDTH : string; - attribute C_M_AXI_ADDR_WIDTH of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100"; + attribute C_M_AXI_ADDR_WIDTH of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000011100000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100"; attribute C_M_AXI_BASE_ADDR : string; - attribute C_M_AXI_BASE_ADDR of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "256'b1111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000100000100100000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000"; + attribute C_M_AXI_BASE_ADDR of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "320'b00000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000001001000000000000000000000000000000000000000000000000000000100000111000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000"; attribute C_M_AXI_READ_CONNECTIVITY : string; - attribute C_M_AXI_READ_CONNECTIVITY of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_READ_CONNECTIVITY of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_M_AXI_READ_ISSUING : string; - attribute C_M_AXI_READ_ISSUING of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_READ_ISSUING of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_M_AXI_SECURE : string; - attribute C_M_AXI_SECURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; + attribute C_M_AXI_SECURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; attribute C_M_AXI_WRITE_CONNECTIVITY : string; - attribute C_M_AXI_WRITE_CONNECTIVITY of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_WRITE_CONNECTIVITY of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_M_AXI_WRITE_ISSUING : string; - attribute C_M_AXI_WRITE_ISSUING of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_WRITE_ISSUING of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_NUM_ADDR_RANGES : integer; attribute C_NUM_ADDR_RANGES of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 1; attribute C_NUM_MASTER_SLOTS : integer; - attribute C_NUM_MASTER_SLOTS of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 4; + attribute C_NUM_MASTER_SLOTS of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 5; attribute C_NUM_SLAVE_SLOTS : integer; attribute C_NUM_SLAVE_SLOTS of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 1; attribute C_R_REGISTER : integer; @@ -4301,8 +5090,6 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar is attribute C_S_AXI_WRITE_ACCEPTANCE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 1; attribute DowngradeIPIdentifiedWarnings : string; attribute DowngradeIPIdentifiedWarnings of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "yes"; - attribute ORIG_REF_NAME : string; - attribute ORIG_REF_NAME of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "axi_crossbar_v2_1_33_axi_crossbar"; attribute P_ADDR_DECODE : integer; attribute P_ADDR_DECODE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 1; attribute P_AXI3 : integer; @@ -4322,11 +5109,11 @@ entity mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar is attribute P_LOCK : integer; attribute P_LOCK of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is 1; attribute P_M_AXI_ERR_MODE : string; - attribute P_M_AXI_ERR_MODE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; + attribute P_M_AXI_ERR_MODE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; attribute P_M_AXI_SUPPORTS_READ : string; - attribute P_M_AXI_SUPPORTS_READ of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "4'b1111"; + attribute P_M_AXI_SUPPORTS_READ of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "5'b11111"; attribute P_M_AXI_SUPPORTS_WRITE : string; - attribute P_M_AXI_SUPPORTS_WRITE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "4'b1111"; + attribute P_M_AXI_SUPPORTS_WRITE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "5'b11111"; attribute P_ONES : string; attribute P_ONES of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar : entity is "65'b11111111111111111111111111111111111111111111111111111111111111111"; attribute P_RANGE_CHECK : integer; @@ -4343,27 +5130,26 @@ end mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar; architecture STRUCTURE of mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar is signal \<const0>\ : STD_LOGIC; - signal \^m_axi_araddr\ : STD_LOGIC_VECTOR ( 11 downto 0 ); + signal \^m_axi_araddr\ : STD_LOGIC_VECTOR ( 6 downto 0 ); signal \^m_axi_arprot\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_arvalid\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_awaddr\ : STD_LOGIC_VECTOR ( 127 downto 108 ); - signal \^m_axi_awvalid\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_bready\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_rready\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_wvalid\ : STD_LOGIC_VECTOR ( 2 downto 0 ); + signal \^m_axi_awaddr\ : STD_LOGIC_VECTOR ( 159 downto 135 ); signal \^s_axi_wdata\ : STD_LOGIC_VECTOR ( 31 downto 0 ); signal \^s_axi_wstrb\ : STD_LOGIC_VECTOR ( 3 downto 0 ); begin \^s_axi_wdata\(31 downto 0) <= s_axi_wdata(31 downto 0); \^s_axi_wstrb\(3 downto 0) <= s_axi_wstrb(3 downto 0); - m_axi_araddr(127 downto 108) <= \^m_axi_awaddr\(127 downto 108); - m_axi_araddr(107 downto 96) <= \^m_axi_araddr\(11 downto 0); - m_axi_araddr(95 downto 76) <= \^m_axi_awaddr\(127 downto 108); - m_axi_araddr(75 downto 64) <= \^m_axi_araddr\(11 downto 0); - m_axi_araddr(63 downto 44) <= \^m_axi_awaddr\(127 downto 108); - m_axi_araddr(43 downto 32) <= \^m_axi_araddr\(11 downto 0); - m_axi_araddr(31 downto 12) <= \^m_axi_awaddr\(127 downto 108); - m_axi_araddr(11 downto 0) <= \^m_axi_araddr\(11 downto 0); + m_axi_araddr(159 downto 135) <= \^m_axi_awaddr\(159 downto 135); + m_axi_araddr(134 downto 128) <= \^m_axi_araddr\(6 downto 0); + m_axi_araddr(127 downto 103) <= \^m_axi_awaddr\(159 downto 135); + m_axi_araddr(102 downto 96) <= \^m_axi_araddr\(6 downto 0); + m_axi_araddr(95 downto 71) <= \^m_axi_awaddr\(159 downto 135); + m_axi_araddr(70 downto 64) <= \^m_axi_araddr\(6 downto 0); + m_axi_araddr(63 downto 39) <= \^m_axi_awaddr\(159 downto 135); + m_axi_araddr(38 downto 32) <= \^m_axi_araddr\(6 downto 0); + m_axi_araddr(31 downto 7) <= \^m_axi_awaddr\(159 downto 135); + m_axi_araddr(6 downto 0) <= \^m_axi_araddr\(6 downto 0); + m_axi_arburst(9) <= \<const0>\; + m_axi_arburst(8) <= \<const0>\; m_axi_arburst(7) <= \<const0>\; m_axi_arburst(6) <= \<const0>\; m_axi_arburst(5) <= \<const0>\; @@ -4372,6 +5158,10 @@ begin m_axi_arburst(2) <= \<const0>\; m_axi_arburst(1) <= \<const0>\; m_axi_arburst(0) <= \<const0>\; + m_axi_arcache(19) <= \<const0>\; + m_axi_arcache(18) <= \<const0>\; + m_axi_arcache(17) <= \<const0>\; + m_axi_arcache(16) <= \<const0>\; m_axi_arcache(15) <= \<const0>\; m_axi_arcache(14) <= \<const0>\; m_axi_arcache(13) <= \<const0>\; @@ -4388,10 +5178,19 @@ begin m_axi_arcache(2) <= \<const0>\; m_axi_arcache(1) <= \<const0>\; m_axi_arcache(0) <= \<const0>\; + m_axi_arid(4) <= \<const0>\; m_axi_arid(3) <= \<const0>\; m_axi_arid(2) <= \<const0>\; m_axi_arid(1) <= \<const0>\; m_axi_arid(0) <= \<const0>\; + m_axi_arlen(39) <= \<const0>\; + m_axi_arlen(38) <= \<const0>\; + m_axi_arlen(37) <= \<const0>\; + m_axi_arlen(36) <= \<const0>\; + m_axi_arlen(35) <= \<const0>\; + m_axi_arlen(34) <= \<const0>\; + m_axi_arlen(33) <= \<const0>\; + m_axi_arlen(32) <= \<const0>\; m_axi_arlen(31) <= \<const0>\; m_axi_arlen(30) <= \<const0>\; m_axi_arlen(29) <= \<const0>\; @@ -4424,14 +5223,20 @@ begin m_axi_arlen(2) <= \<const0>\; m_axi_arlen(1) <= \<const0>\; m_axi_arlen(0) <= \<const0>\; + m_axi_arlock(4) <= \<const0>\; m_axi_arlock(3) <= \<const0>\; m_axi_arlock(2) <= \<const0>\; m_axi_arlock(1) <= \<const0>\; m_axi_arlock(0) <= \<const0>\; + m_axi_arprot(14 downto 12) <= \^m_axi_arprot\(2 downto 0); m_axi_arprot(11 downto 9) <= \^m_axi_arprot\(2 downto 0); m_axi_arprot(8 downto 6) <= \^m_axi_arprot\(2 downto 0); m_axi_arprot(5 downto 3) <= \^m_axi_arprot\(2 downto 0); m_axi_arprot(2 downto 0) <= \^m_axi_arprot\(2 downto 0); + m_axi_arqos(19) <= \<const0>\; + m_axi_arqos(18) <= \<const0>\; + m_axi_arqos(17) <= \<const0>\; + m_axi_arqos(16) <= \<const0>\; m_axi_arqos(15) <= \<const0>\; m_axi_arqos(14) <= \<const0>\; m_axi_arqos(13) <= \<const0>\; @@ -4448,6 +5253,10 @@ begin m_axi_arqos(2) <= \<const0>\; m_axi_arqos(1) <= \<const0>\; m_axi_arqos(0) <= \<const0>\; + m_axi_arregion(19) <= \<const0>\; + m_axi_arregion(18) <= \<const0>\; + m_axi_arregion(17) <= \<const0>\; + m_axi_arregion(16) <= \<const0>\; m_axi_arregion(15) <= \<const0>\; m_axi_arregion(14) <= \<const0>\; m_axi_arregion(13) <= \<const0>\; @@ -4464,6 +5273,9 @@ begin m_axi_arregion(2) <= \<const0>\; m_axi_arregion(1) <= \<const0>\; m_axi_arregion(0) <= \<const0>\; + m_axi_arsize(14) <= \<const0>\; + m_axi_arsize(13) <= \<const0>\; + m_axi_arsize(12) <= \<const0>\; m_axi_arsize(11) <= \<const0>\; m_axi_arsize(10) <= \<const0>\; m_axi_arsize(9) <= \<const0>\; @@ -4476,20 +5288,23 @@ begin m_axi_arsize(2) <= \<const0>\; m_axi_arsize(1) <= \<const0>\; m_axi_arsize(0) <= \<const0>\; + m_axi_aruser(4) <= \<const0>\; m_axi_aruser(3) <= \<const0>\; m_axi_aruser(2) <= \<const0>\; m_axi_aruser(1) <= \<const0>\; m_axi_aruser(0) <= \<const0>\; - m_axi_arvalid(3) <= \<const0>\; - m_axi_arvalid(2 downto 0) <= \^m_axi_arvalid\(2 downto 0); - m_axi_awaddr(127 downto 108) <= \^m_axi_awaddr\(127 downto 108); - m_axi_awaddr(107 downto 96) <= \^m_axi_araddr\(11 downto 0); - m_axi_awaddr(95 downto 76) <= \^m_axi_awaddr\(127 downto 108); - m_axi_awaddr(75 downto 64) <= \^m_axi_araddr\(11 downto 0); - m_axi_awaddr(63 downto 44) <= \^m_axi_awaddr\(127 downto 108); - m_axi_awaddr(43 downto 32) <= \^m_axi_araddr\(11 downto 0); - m_axi_awaddr(31 downto 12) <= \^m_axi_awaddr\(127 downto 108); - m_axi_awaddr(11 downto 0) <= \^m_axi_araddr\(11 downto 0); + m_axi_awaddr(159 downto 135) <= \^m_axi_awaddr\(159 downto 135); + m_axi_awaddr(134 downto 128) <= \^m_axi_araddr\(6 downto 0); + m_axi_awaddr(127 downto 103) <= \^m_axi_awaddr\(159 downto 135); + m_axi_awaddr(102 downto 96) <= \^m_axi_araddr\(6 downto 0); + m_axi_awaddr(95 downto 71) <= \^m_axi_awaddr\(159 downto 135); + m_axi_awaddr(70 downto 64) <= \^m_axi_araddr\(6 downto 0); + m_axi_awaddr(63 downto 39) <= \^m_axi_awaddr\(159 downto 135); + m_axi_awaddr(38 downto 32) <= \^m_axi_araddr\(6 downto 0); + m_axi_awaddr(31 downto 7) <= \^m_axi_awaddr\(159 downto 135); + m_axi_awaddr(6 downto 0) <= \^m_axi_araddr\(6 downto 0); + m_axi_awburst(9) <= \<const0>\; + m_axi_awburst(8) <= \<const0>\; m_axi_awburst(7) <= \<const0>\; m_axi_awburst(6) <= \<const0>\; m_axi_awburst(5) <= \<const0>\; @@ -4498,6 +5313,10 @@ begin m_axi_awburst(2) <= \<const0>\; m_axi_awburst(1) <= \<const0>\; m_axi_awburst(0) <= \<const0>\; + m_axi_awcache(19) <= \<const0>\; + m_axi_awcache(18) <= \<const0>\; + m_axi_awcache(17) <= \<const0>\; + m_axi_awcache(16) <= \<const0>\; m_axi_awcache(15) <= \<const0>\; m_axi_awcache(14) <= \<const0>\; m_axi_awcache(13) <= \<const0>\; @@ -4514,10 +5333,19 @@ begin m_axi_awcache(2) <= \<const0>\; m_axi_awcache(1) <= \<const0>\; m_axi_awcache(0) <= \<const0>\; + m_axi_awid(4) <= \<const0>\; m_axi_awid(3) <= \<const0>\; m_axi_awid(2) <= \<const0>\; m_axi_awid(1) <= \<const0>\; m_axi_awid(0) <= \<const0>\; + m_axi_awlen(39) <= \<const0>\; + m_axi_awlen(38) <= \<const0>\; + m_axi_awlen(37) <= \<const0>\; + m_axi_awlen(36) <= \<const0>\; + m_axi_awlen(35) <= \<const0>\; + m_axi_awlen(34) <= \<const0>\; + m_axi_awlen(33) <= \<const0>\; + m_axi_awlen(32) <= \<const0>\; m_axi_awlen(31) <= \<const0>\; m_axi_awlen(30) <= \<const0>\; m_axi_awlen(29) <= \<const0>\; @@ -4550,14 +5378,20 @@ begin m_axi_awlen(2) <= \<const0>\; m_axi_awlen(1) <= \<const0>\; m_axi_awlen(0) <= \<const0>\; + m_axi_awlock(4) <= \<const0>\; m_axi_awlock(3) <= \<const0>\; m_axi_awlock(2) <= \<const0>\; m_axi_awlock(1) <= \<const0>\; m_axi_awlock(0) <= \<const0>\; + m_axi_awprot(14 downto 12) <= \^m_axi_arprot\(2 downto 0); m_axi_awprot(11 downto 9) <= \^m_axi_arprot\(2 downto 0); m_axi_awprot(8 downto 6) <= \^m_axi_arprot\(2 downto 0); m_axi_awprot(5 downto 3) <= \^m_axi_arprot\(2 downto 0); m_axi_awprot(2 downto 0) <= \^m_axi_arprot\(2 downto 0); + m_axi_awqos(19) <= \<const0>\; + m_axi_awqos(18) <= \<const0>\; + m_axi_awqos(17) <= \<const0>\; + m_axi_awqos(16) <= \<const0>\; m_axi_awqos(15) <= \<const0>\; m_axi_awqos(14) <= \<const0>\; m_axi_awqos(13) <= \<const0>\; @@ -4574,6 +5408,10 @@ begin m_axi_awqos(2) <= \<const0>\; m_axi_awqos(1) <= \<const0>\; m_axi_awqos(0) <= \<const0>\; + m_axi_awregion(19) <= \<const0>\; + m_axi_awregion(18) <= \<const0>\; + m_axi_awregion(17) <= \<const0>\; + m_axi_awregion(16) <= \<const0>\; m_axi_awregion(15) <= \<const0>\; m_axi_awregion(14) <= \<const0>\; m_axi_awregion(13) <= \<const0>\; @@ -4590,6 +5428,9 @@ begin m_axi_awregion(2) <= \<const0>\; m_axi_awregion(1) <= \<const0>\; m_axi_awregion(0) <= \<const0>\; + m_axi_awsize(14) <= \<const0>\; + m_axi_awsize(13) <= \<const0>\; + m_axi_awsize(12) <= \<const0>\; m_axi_awsize(11) <= \<const0>\; m_axi_awsize(10) <= \<const0>\; m_axi_awsize(9) <= \<const0>\; @@ -4602,38 +5443,36 @@ begin m_axi_awsize(2) <= \<const0>\; m_axi_awsize(1) <= \<const0>\; m_axi_awsize(0) <= \<const0>\; + m_axi_awuser(4) <= \<const0>\; m_axi_awuser(3) <= \<const0>\; m_axi_awuser(2) <= \<const0>\; m_axi_awuser(1) <= \<const0>\; m_axi_awuser(0) <= \<const0>\; - m_axi_awvalid(3) <= \<const0>\; - m_axi_awvalid(2 downto 0) <= \^m_axi_awvalid\(2 downto 0); - m_axi_bready(3) <= \<const0>\; - m_axi_bready(2 downto 0) <= \^m_axi_bready\(2 downto 0); - m_axi_rready(3) <= \<const0>\; - m_axi_rready(2 downto 0) <= \^m_axi_rready\(2 downto 0); + m_axi_wdata(159 downto 128) <= \^s_axi_wdata\(31 downto 0); m_axi_wdata(127 downto 96) <= \^s_axi_wdata\(31 downto 0); m_axi_wdata(95 downto 64) <= \^s_axi_wdata\(31 downto 0); m_axi_wdata(63 downto 32) <= \^s_axi_wdata\(31 downto 0); m_axi_wdata(31 downto 0) <= \^s_axi_wdata\(31 downto 0); + m_axi_wid(4) <= \<const0>\; m_axi_wid(3) <= \<const0>\; m_axi_wid(2) <= \<const0>\; m_axi_wid(1) <= \<const0>\; m_axi_wid(0) <= \<const0>\; + m_axi_wlast(4) <= \<const0>\; m_axi_wlast(3) <= \<const0>\; m_axi_wlast(2) <= \<const0>\; m_axi_wlast(1) <= \<const0>\; m_axi_wlast(0) <= \<const0>\; + m_axi_wstrb(19 downto 16) <= \^s_axi_wstrb\(3 downto 0); m_axi_wstrb(15 downto 12) <= \^s_axi_wstrb\(3 downto 0); m_axi_wstrb(11 downto 8) <= \^s_axi_wstrb\(3 downto 0); m_axi_wstrb(7 downto 4) <= \^s_axi_wstrb\(3 downto 0); m_axi_wstrb(3 downto 0) <= \^s_axi_wstrb\(3 downto 0); + m_axi_wuser(4) <= \<const0>\; m_axi_wuser(3) <= \<const0>\; m_axi_wuser(2) <= \<const0>\; m_axi_wuser(1) <= \<const0>\; m_axi_wuser(0) <= \<const0>\; - m_axi_wvalid(3) <= \<const0>\; - m_axi_wvalid(2 downto 0) <= \^m_axi_wvalid\(2 downto 0); s_axi_bid(0) <= \<const0>\; s_axi_buser(0) <= \<const0>\; s_axi_rid(0) <= \<const0>\; @@ -4646,23 +5485,23 @@ GND: unisim.vcomponents.GND \gen_sasd.crossbar_sasd_0\: entity work.mb_design_1_xbar_0_axi_crossbar_v2_1_33_crossbar_sasd port map ( Q(34 downto 32) => \^m_axi_arprot\(2 downto 0), - Q(31 downto 12) => \^m_axi_awaddr\(127 downto 108), - Q(11 downto 0) => \^m_axi_araddr\(11 downto 0), + Q(31 downto 7) => \^m_axi_awaddr\(159 downto 135), + Q(6 downto 0) => \^m_axi_araddr\(6 downto 0), aclk => aclk, aresetn => aresetn, - m_axi_arready(3 downto 0) => m_axi_arready(3 downto 0), - m_axi_arvalid(2 downto 0) => \^m_axi_arvalid\(2 downto 0), - m_axi_awready(3 downto 0) => m_axi_awready(3 downto 0), - m_axi_awvalid(2 downto 0) => \^m_axi_awvalid\(2 downto 0), - m_axi_bready(2 downto 0) => \^m_axi_bready\(2 downto 0), - m_axi_bresp(7 downto 0) => m_axi_bresp(7 downto 0), - m_axi_bvalid(3 downto 0) => m_axi_bvalid(3 downto 0), - m_axi_rdata(127 downto 0) => m_axi_rdata(127 downto 0), - m_axi_rready(2 downto 0) => \^m_axi_rready\(2 downto 0), - m_axi_rresp(7 downto 0) => m_axi_rresp(7 downto 0), - m_axi_rvalid(3 downto 0) => m_axi_rvalid(3 downto 0), - m_axi_wready(3 downto 0) => m_axi_wready(3 downto 0), - m_axi_wvalid(2 downto 0) => \^m_axi_wvalid\(2 downto 0), + m_axi_arready(4 downto 0) => m_axi_arready(4 downto 0), + m_axi_arvalid(4 downto 0) => m_axi_arvalid(4 downto 0), + m_axi_awready(4 downto 0) => m_axi_awready(4 downto 0), + m_axi_awvalid(4 downto 0) => m_axi_awvalid(4 downto 0), + m_axi_bready(4 downto 0) => m_axi_bready(4 downto 0), + m_axi_bresp(9 downto 0) => m_axi_bresp(9 downto 0), + m_axi_bvalid(4 downto 0) => m_axi_bvalid(4 downto 0), + m_axi_rdata(159 downto 0) => m_axi_rdata(159 downto 0), + m_axi_rready(4 downto 0) => m_axi_rready(4 downto 0), + m_axi_rresp(9 downto 0) => m_axi_rresp(9 downto 0), + m_axi_rvalid(4 downto 0) => m_axi_rvalid(4 downto 0), + m_axi_wready(4 downto 0) => m_axi_wready(4 downto 0), + m_axi_wvalid(4 downto 0) => m_axi_wvalid(4 downto 0), \m_payload_i_reg[34]\(33 downto 2) => s_axi_rdata(31 downto 0), \m_payload_i_reg[34]\(1 downto 0) => s_axi_rresp(1 downto 0), s_axi_araddr(31 downto 0) => s_axi_araddr(31 downto 0), @@ -4709,25 +5548,25 @@ entity mb_design_1_xbar_0 is s_axi_rresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); s_axi_rvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_awaddr : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_awprot : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_awvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_awready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wdata : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_wstrb : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_wvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_bvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bready : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_araddr : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_arprot : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_arvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rdata : in STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_rresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_rvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rready : out STD_LOGIC_VECTOR ( 3 downto 0 ) + m_axi_awaddr : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_awprot : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_awvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wdata : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_wstrb : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_wvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_bvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bready : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_araddr : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_arprot : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_arvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rdata : in STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_rresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_rvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rready : out STD_LOGIC_VECTOR ( 4 downto 0 ) ); attribute NotValidForBitStream : boolean; attribute NotValidForBitStream of mb_design_1_xbar_0 : entity is true; @@ -4740,38 +5579,27 @@ entity mb_design_1_xbar_0 is end mb_design_1_xbar_0; architecture STRUCTURE of mb_design_1_xbar_0 is - signal \<const0>\ : STD_LOGIC; - signal \^m_axi_arvalid\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_awvalid\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_bready\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_rready\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal \^m_axi_wvalid\ : STD_LOGIC_VECTOR ( 2 downto 0 ); - signal NLW_inst_m_axi_arburst_UNCONNECTED : STD_LOGIC_VECTOR ( 7 downto 0 ); - signal NLW_inst_m_axi_arcache_UNCONNECTED : STD_LOGIC_VECTOR ( 15 downto 0 ); - signal NLW_inst_m_axi_arid_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_arlen_UNCONNECTED : STD_LOGIC_VECTOR ( 31 downto 0 ); - signal NLW_inst_m_axi_arlock_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_arqos_UNCONNECTED : STD_LOGIC_VECTOR ( 15 downto 0 ); - signal NLW_inst_m_axi_arregion_UNCONNECTED : STD_LOGIC_VECTOR ( 15 downto 0 ); - signal NLW_inst_m_axi_arsize_UNCONNECTED : STD_LOGIC_VECTOR ( 11 downto 0 ); - signal NLW_inst_m_axi_aruser_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_arvalid_UNCONNECTED : STD_LOGIC_VECTOR ( 3 to 3 ); - signal NLW_inst_m_axi_awburst_UNCONNECTED : STD_LOGIC_VECTOR ( 7 downto 0 ); - signal NLW_inst_m_axi_awcache_UNCONNECTED : STD_LOGIC_VECTOR ( 15 downto 0 ); - signal NLW_inst_m_axi_awid_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_awlen_UNCONNECTED : STD_LOGIC_VECTOR ( 31 downto 0 ); - signal NLW_inst_m_axi_awlock_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_awqos_UNCONNECTED : STD_LOGIC_VECTOR ( 15 downto 0 ); - signal NLW_inst_m_axi_awregion_UNCONNECTED : STD_LOGIC_VECTOR ( 15 downto 0 ); - signal NLW_inst_m_axi_awsize_UNCONNECTED : STD_LOGIC_VECTOR ( 11 downto 0 ); - signal NLW_inst_m_axi_awuser_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_awvalid_UNCONNECTED : STD_LOGIC_VECTOR ( 3 to 3 ); - signal NLW_inst_m_axi_bready_UNCONNECTED : STD_LOGIC_VECTOR ( 3 to 3 ); - signal NLW_inst_m_axi_rready_UNCONNECTED : STD_LOGIC_VECTOR ( 3 to 3 ); - signal NLW_inst_m_axi_wid_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_wlast_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_wuser_UNCONNECTED : STD_LOGIC_VECTOR ( 3 downto 0 ); - signal NLW_inst_m_axi_wvalid_UNCONNECTED : STD_LOGIC_VECTOR ( 3 to 3 ); + signal NLW_inst_m_axi_arburst_UNCONNECTED : STD_LOGIC_VECTOR ( 9 downto 0 ); + signal NLW_inst_m_axi_arcache_UNCONNECTED : STD_LOGIC_VECTOR ( 19 downto 0 ); + signal NLW_inst_m_axi_arid_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_arlen_UNCONNECTED : STD_LOGIC_VECTOR ( 39 downto 0 ); + signal NLW_inst_m_axi_arlock_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_arqos_UNCONNECTED : STD_LOGIC_VECTOR ( 19 downto 0 ); + signal NLW_inst_m_axi_arregion_UNCONNECTED : STD_LOGIC_VECTOR ( 19 downto 0 ); + signal NLW_inst_m_axi_arsize_UNCONNECTED : STD_LOGIC_VECTOR ( 14 downto 0 ); + signal NLW_inst_m_axi_aruser_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_awburst_UNCONNECTED : STD_LOGIC_VECTOR ( 9 downto 0 ); + signal NLW_inst_m_axi_awcache_UNCONNECTED : STD_LOGIC_VECTOR ( 19 downto 0 ); + signal NLW_inst_m_axi_awid_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_awlen_UNCONNECTED : STD_LOGIC_VECTOR ( 39 downto 0 ); + signal NLW_inst_m_axi_awlock_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_awqos_UNCONNECTED : STD_LOGIC_VECTOR ( 19 downto 0 ); + signal NLW_inst_m_axi_awregion_UNCONNECTED : STD_LOGIC_VECTOR ( 19 downto 0 ); + signal NLW_inst_m_axi_awsize_UNCONNECTED : STD_LOGIC_VECTOR ( 14 downto 0 ); + signal NLW_inst_m_axi_awuser_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_wid_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_wlast_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); + signal NLW_inst_m_axi_wuser_UNCONNECTED : STD_LOGIC_VECTOR ( 4 downto 0 ); signal NLW_inst_s_axi_bid_UNCONNECTED : STD_LOGIC_VECTOR ( 0 to 0 ); signal NLW_inst_s_axi_buser_UNCONNECTED : STD_LOGIC_VECTOR ( 0 to 0 ); signal NLW_inst_s_axi_rid_UNCONNECTED : STD_LOGIC_VECTOR ( 0 to 0 ); @@ -4804,23 +5632,23 @@ architecture STRUCTURE of mb_design_1_xbar_0 is attribute C_FAMILY : string; attribute C_FAMILY of inst : label is "artix7"; attribute C_M_AXI_ADDR_WIDTH : string; - attribute C_M_AXI_ADDR_WIDTH of inst : label is "128'b00000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100"; + attribute C_M_AXI_ADDR_WIDTH of inst : label is "160'b0000000000000000000000000000011100000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100"; attribute C_M_AXI_BASE_ADDR : string; - attribute C_M_AXI_BASE_ADDR of inst : label is "256'b1111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000100000100100000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000"; + attribute C_M_AXI_BASE_ADDR of inst : label is "320'b00000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000001001000000000000000000000000000000000000000000000000000000100000111000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000"; attribute C_M_AXI_READ_CONNECTIVITY : string; - attribute C_M_AXI_READ_CONNECTIVITY of inst : label is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_READ_CONNECTIVITY of inst : label is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_M_AXI_READ_ISSUING : string; - attribute C_M_AXI_READ_ISSUING of inst : label is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_READ_ISSUING of inst : label is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_M_AXI_SECURE : string; - attribute C_M_AXI_SECURE of inst : label is "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; + attribute C_M_AXI_SECURE of inst : label is "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; attribute C_M_AXI_WRITE_CONNECTIVITY : string; - attribute C_M_AXI_WRITE_CONNECTIVITY of inst : label is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_WRITE_CONNECTIVITY of inst : label is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_M_AXI_WRITE_ISSUING : string; - attribute C_M_AXI_WRITE_ISSUING of inst : label is "128'b00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; + attribute C_M_AXI_WRITE_ISSUING of inst : label is "160'b0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001"; attribute C_NUM_ADDR_RANGES : integer; attribute C_NUM_ADDR_RANGES of inst : label is 1; attribute C_NUM_MASTER_SLOTS : integer; - attribute C_NUM_MASTER_SLOTS of inst : label is 4; + attribute C_NUM_MASTER_SLOTS of inst : label is 5; attribute C_NUM_SLAVE_SLOTS : integer; attribute C_NUM_SLAVE_SLOTS of inst : label is 1; attribute C_R_REGISTER : integer; @@ -4857,11 +5685,11 @@ architecture STRUCTURE of mb_design_1_xbar_0 is attribute P_LOCK : integer; attribute P_LOCK of inst : label is 1; attribute P_M_AXI_ERR_MODE : string; - attribute P_M_AXI_ERR_MODE of inst : label is "128'b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; + attribute P_M_AXI_ERR_MODE of inst : label is "160'b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; attribute P_M_AXI_SUPPORTS_READ : string; - attribute P_M_AXI_SUPPORTS_READ of inst : label is "4'b1111"; + attribute P_M_AXI_SUPPORTS_READ of inst : label is "5'b11111"; attribute P_M_AXI_SUPPORTS_WRITE : string; - attribute P_M_AXI_SUPPORTS_WRITE of inst : label is "4'b1111"; + attribute P_M_AXI_SUPPORTS_WRITE of inst : label is "5'b11111"; attribute P_ONES : string; attribute P_ONES of inst : label is "65'b11111111111111111111111111111111111111111111111111111111111111111"; attribute P_RANGE_CHECK : integer; @@ -4880,26 +5708,26 @@ architecture STRUCTURE of mb_design_1_xbar_0 is attribute X_INTERFACE_PARAMETER of aclk : signal is "XIL_INTERFACENAME CLKIF, ASSOCIATED_BUSIF M00_AXI:M01_AXI:M02_AXI:M03_AXI:M04_AXI:M05_AXI:M06_AXI:M07_AXI:M08_AXI:M09_AXI:M10_AXI:M11_AXI:M12_AXI:M13_AXI:M14_AXI:M15_AXI:S00_AXI:S01_AXI:S02_AXI:S03_AXI:S04_AXI:S05_AXI:S06_AXI:S07_AXI:S08_AXI:S09_AXI:S10_AXI:S11_AXI:S12_AXI:S13_AXI:S14_AXI:S15_AXI, ASSOCIATED_RESET aresetn, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, INSERT_VIP 0"; attribute X_INTERFACE_INFO of aresetn : signal is "xilinx.com:signal:reset:1.0 RSTIF RST"; attribute X_INTERFACE_PARAMETER of aresetn : signal is "XIL_INTERFACENAME RSTIF, POLARITY ACTIVE_LOW, INSERT_VIP 0, TYPE INTERCONNECT"; - attribute X_INTERFACE_INFO of m_axi_araddr : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96]"; - attribute X_INTERFACE_INFO of m_axi_arprot : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9]"; - attribute X_INTERFACE_INFO of m_axi_arready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_arvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_awaddr : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96]"; - attribute X_INTERFACE_INFO of m_axi_awprot : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9]"; - attribute X_INTERFACE_INFO of m_axi_awready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_awvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_bready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_bresp : signal is "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6]"; - attribute X_INTERFACE_INFO of m_axi_bvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_rdata : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96]"; - attribute X_INTERFACE_INFO of m_axi_rready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3]"; - attribute X_INTERFACE_PARAMETER of m_axi_rready : signal is "XIL_INTERFACENAME M00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M01_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M02_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M03_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0"; - attribute X_INTERFACE_INFO of m_axi_rresp : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6]"; - attribute X_INTERFACE_INFO of m_axi_rvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_wdata : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96]"; - attribute X_INTERFACE_INFO of m_axi_wready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3]"; - attribute X_INTERFACE_INFO of m_axi_wstrb : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12]"; - attribute X_INTERFACE_INFO of m_axi_wvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3]"; + attribute X_INTERFACE_INFO of m_axi_araddr : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI ARADDR [31:0] [159:128]"; + attribute X_INTERFACE_INFO of m_axi_arprot : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI ARPROT [2:0] [14:12]"; + attribute X_INTERFACE_INFO of m_axi_arready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARREADY [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_arvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARVALID [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_awaddr : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI AWADDR [31:0] [159:128]"; + attribute X_INTERFACE_INFO of m_axi_awprot : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI AWPROT [2:0] [14:12]"; + attribute X_INTERFACE_INFO of m_axi_awready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWREADY [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_awvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWVALID [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_bready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BREADY [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_bresp : signal is "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI BRESP [1:0] [9:8]"; + attribute X_INTERFACE_INFO of m_axi_bvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BVALID [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_rdata : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI RDATA [31:0] [159:128]"; + attribute X_INTERFACE_INFO of m_axi_rready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RREADY [0:0] [4:4]"; + attribute X_INTERFACE_PARAMETER of m_axi_rready : signal is "XIL_INTERFACENAME M00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M01_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M02_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M03_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M04_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0"; + attribute X_INTERFACE_INFO of m_axi_rresp : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI RRESP [1:0] [9:8]"; + attribute X_INTERFACE_INFO of m_axi_rvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RVALID [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_wdata : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI WDATA [31:0] [159:128]"; + attribute X_INTERFACE_INFO of m_axi_wready : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WREADY [0:0] [4:4]"; + attribute X_INTERFACE_INFO of m_axi_wstrb : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12], xilinx.com:interface:aximm:1.0 M04_AXI WSTRB [3:0] [19:16]"; + attribute X_INTERFACE_INFO of m_axi_wvalid : signal is "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WVALID [0:0] [4:4]"; attribute X_INTERFACE_INFO of s_axi_araddr : signal is "xilinx.com:interface:aximm:1.0 S00_AXI ARADDR"; attribute X_INTERFACE_INFO of s_axi_arprot : signal is "xilinx.com:interface:aximm:1.0 S00_AXI ARPROT"; attribute X_INTERFACE_INFO of s_axi_arready : signal is "xilinx.com:interface:aximm:1.0 S00_AXI ARREADY"; @@ -4921,74 +5749,55 @@ architecture STRUCTURE of mb_design_1_xbar_0 is attribute X_INTERFACE_INFO of s_axi_wstrb : signal is "xilinx.com:interface:aximm:1.0 S00_AXI WSTRB"; attribute X_INTERFACE_INFO of s_axi_wvalid : signal is "xilinx.com:interface:aximm:1.0 S00_AXI WVALID"; begin - m_axi_arvalid(3) <= \<const0>\; - m_axi_arvalid(2 downto 0) <= \^m_axi_arvalid\(2 downto 0); - m_axi_awvalid(3) <= \<const0>\; - m_axi_awvalid(2 downto 0) <= \^m_axi_awvalid\(2 downto 0); - m_axi_bready(3) <= \<const0>\; - m_axi_bready(2 downto 0) <= \^m_axi_bready\(2 downto 0); - m_axi_rready(3) <= \<const0>\; - m_axi_rready(2 downto 0) <= \^m_axi_rready\(2 downto 0); - m_axi_wvalid(3) <= \<const0>\; - m_axi_wvalid(2 downto 0) <= \^m_axi_wvalid\(2 downto 0); -GND: unisim.vcomponents.GND - port map ( - G => \<const0>\ - ); inst: entity work.mb_design_1_xbar_0_axi_crossbar_v2_1_33_axi_crossbar port map ( aclk => aclk, aresetn => aresetn, - m_axi_araddr(127 downto 0) => m_axi_araddr(127 downto 0), - m_axi_arburst(7 downto 0) => NLW_inst_m_axi_arburst_UNCONNECTED(7 downto 0), - m_axi_arcache(15 downto 0) => NLW_inst_m_axi_arcache_UNCONNECTED(15 downto 0), - m_axi_arid(3 downto 0) => NLW_inst_m_axi_arid_UNCONNECTED(3 downto 0), - m_axi_arlen(31 downto 0) => NLW_inst_m_axi_arlen_UNCONNECTED(31 downto 0), - m_axi_arlock(3 downto 0) => NLW_inst_m_axi_arlock_UNCONNECTED(3 downto 0), - m_axi_arprot(11 downto 0) => m_axi_arprot(11 downto 0), - m_axi_arqos(15 downto 0) => NLW_inst_m_axi_arqos_UNCONNECTED(15 downto 0), - m_axi_arready(3 downto 0) => m_axi_arready(3 downto 0), - m_axi_arregion(15 downto 0) => NLW_inst_m_axi_arregion_UNCONNECTED(15 downto 0), - m_axi_arsize(11 downto 0) => NLW_inst_m_axi_arsize_UNCONNECTED(11 downto 0), - m_axi_aruser(3 downto 0) => NLW_inst_m_axi_aruser_UNCONNECTED(3 downto 0), - m_axi_arvalid(3) => NLW_inst_m_axi_arvalid_UNCONNECTED(3), - m_axi_arvalid(2 downto 0) => \^m_axi_arvalid\(2 downto 0), - m_axi_awaddr(127 downto 0) => m_axi_awaddr(127 downto 0), - m_axi_awburst(7 downto 0) => NLW_inst_m_axi_awburst_UNCONNECTED(7 downto 0), - m_axi_awcache(15 downto 0) => NLW_inst_m_axi_awcache_UNCONNECTED(15 downto 0), - m_axi_awid(3 downto 0) => NLW_inst_m_axi_awid_UNCONNECTED(3 downto 0), - m_axi_awlen(31 downto 0) => NLW_inst_m_axi_awlen_UNCONNECTED(31 downto 0), - m_axi_awlock(3 downto 0) => NLW_inst_m_axi_awlock_UNCONNECTED(3 downto 0), - m_axi_awprot(11 downto 0) => m_axi_awprot(11 downto 0), - m_axi_awqos(15 downto 0) => NLW_inst_m_axi_awqos_UNCONNECTED(15 downto 0), - m_axi_awready(3 downto 0) => m_axi_awready(3 downto 0), - m_axi_awregion(15 downto 0) => NLW_inst_m_axi_awregion_UNCONNECTED(15 downto 0), - m_axi_awsize(11 downto 0) => NLW_inst_m_axi_awsize_UNCONNECTED(11 downto 0), - m_axi_awuser(3 downto 0) => NLW_inst_m_axi_awuser_UNCONNECTED(3 downto 0), - m_axi_awvalid(3) => NLW_inst_m_axi_awvalid_UNCONNECTED(3), - m_axi_awvalid(2 downto 0) => \^m_axi_awvalid\(2 downto 0), - m_axi_bid(3 downto 0) => B"0000", - m_axi_bready(3) => NLW_inst_m_axi_bready_UNCONNECTED(3), - m_axi_bready(2 downto 0) => \^m_axi_bready\(2 downto 0), - m_axi_bresp(7 downto 0) => m_axi_bresp(7 downto 0), - m_axi_buser(3 downto 0) => B"0000", - m_axi_bvalid(3 downto 0) => m_axi_bvalid(3 downto 0), - m_axi_rdata(127 downto 0) => m_axi_rdata(127 downto 0), - m_axi_rid(3 downto 0) => B"0000", - m_axi_rlast(3 downto 0) => B"1111", - m_axi_rready(3) => NLW_inst_m_axi_rready_UNCONNECTED(3), - m_axi_rready(2 downto 0) => \^m_axi_rready\(2 downto 0), - m_axi_rresp(7 downto 0) => m_axi_rresp(7 downto 0), - m_axi_ruser(3 downto 0) => B"0000", - m_axi_rvalid(3 downto 0) => m_axi_rvalid(3 downto 0), - m_axi_wdata(127 downto 0) => m_axi_wdata(127 downto 0), - m_axi_wid(3 downto 0) => NLW_inst_m_axi_wid_UNCONNECTED(3 downto 0), - m_axi_wlast(3 downto 0) => NLW_inst_m_axi_wlast_UNCONNECTED(3 downto 0), - m_axi_wready(3 downto 0) => m_axi_wready(3 downto 0), - m_axi_wstrb(15 downto 0) => m_axi_wstrb(15 downto 0), - m_axi_wuser(3 downto 0) => NLW_inst_m_axi_wuser_UNCONNECTED(3 downto 0), - m_axi_wvalid(3) => NLW_inst_m_axi_wvalid_UNCONNECTED(3), - m_axi_wvalid(2 downto 0) => \^m_axi_wvalid\(2 downto 0), + m_axi_araddr(159 downto 0) => m_axi_araddr(159 downto 0), + m_axi_arburst(9 downto 0) => NLW_inst_m_axi_arburst_UNCONNECTED(9 downto 0), + m_axi_arcache(19 downto 0) => NLW_inst_m_axi_arcache_UNCONNECTED(19 downto 0), + m_axi_arid(4 downto 0) => NLW_inst_m_axi_arid_UNCONNECTED(4 downto 0), + m_axi_arlen(39 downto 0) => NLW_inst_m_axi_arlen_UNCONNECTED(39 downto 0), + m_axi_arlock(4 downto 0) => NLW_inst_m_axi_arlock_UNCONNECTED(4 downto 0), + m_axi_arprot(14 downto 0) => m_axi_arprot(14 downto 0), + m_axi_arqos(19 downto 0) => NLW_inst_m_axi_arqos_UNCONNECTED(19 downto 0), + m_axi_arready(4 downto 0) => m_axi_arready(4 downto 0), + m_axi_arregion(19 downto 0) => NLW_inst_m_axi_arregion_UNCONNECTED(19 downto 0), + m_axi_arsize(14 downto 0) => NLW_inst_m_axi_arsize_UNCONNECTED(14 downto 0), + m_axi_aruser(4 downto 0) => NLW_inst_m_axi_aruser_UNCONNECTED(4 downto 0), + m_axi_arvalid(4 downto 0) => m_axi_arvalid(4 downto 0), + m_axi_awaddr(159 downto 0) => m_axi_awaddr(159 downto 0), + m_axi_awburst(9 downto 0) => NLW_inst_m_axi_awburst_UNCONNECTED(9 downto 0), + m_axi_awcache(19 downto 0) => NLW_inst_m_axi_awcache_UNCONNECTED(19 downto 0), + m_axi_awid(4 downto 0) => NLW_inst_m_axi_awid_UNCONNECTED(4 downto 0), + m_axi_awlen(39 downto 0) => NLW_inst_m_axi_awlen_UNCONNECTED(39 downto 0), + m_axi_awlock(4 downto 0) => NLW_inst_m_axi_awlock_UNCONNECTED(4 downto 0), + m_axi_awprot(14 downto 0) => m_axi_awprot(14 downto 0), + m_axi_awqos(19 downto 0) => NLW_inst_m_axi_awqos_UNCONNECTED(19 downto 0), + m_axi_awready(4 downto 0) => m_axi_awready(4 downto 0), + m_axi_awregion(19 downto 0) => NLW_inst_m_axi_awregion_UNCONNECTED(19 downto 0), + m_axi_awsize(14 downto 0) => NLW_inst_m_axi_awsize_UNCONNECTED(14 downto 0), + m_axi_awuser(4 downto 0) => NLW_inst_m_axi_awuser_UNCONNECTED(4 downto 0), + m_axi_awvalid(4 downto 0) => m_axi_awvalid(4 downto 0), + m_axi_bid(4 downto 0) => B"00000", + m_axi_bready(4 downto 0) => m_axi_bready(4 downto 0), + m_axi_bresp(9 downto 0) => m_axi_bresp(9 downto 0), + m_axi_buser(4 downto 0) => B"00000", + m_axi_bvalid(4 downto 0) => m_axi_bvalid(4 downto 0), + m_axi_rdata(159 downto 0) => m_axi_rdata(159 downto 0), + m_axi_rid(4 downto 0) => B"00000", + m_axi_rlast(4 downto 0) => B"11111", + m_axi_rready(4 downto 0) => m_axi_rready(4 downto 0), + m_axi_rresp(9 downto 0) => m_axi_rresp(9 downto 0), + m_axi_ruser(4 downto 0) => B"00000", + m_axi_rvalid(4 downto 0) => m_axi_rvalid(4 downto 0), + m_axi_wdata(159 downto 0) => m_axi_wdata(159 downto 0), + m_axi_wid(4 downto 0) => NLW_inst_m_axi_wid_UNCONNECTED(4 downto 0), + m_axi_wlast(4 downto 0) => NLW_inst_m_axi_wlast_UNCONNECTED(4 downto 0), + m_axi_wready(4 downto 0) => m_axi_wready(4 downto 0), + m_axi_wstrb(19 downto 0) => m_axi_wstrb(19 downto 0), + m_axi_wuser(4 downto 0) => NLW_inst_m_axi_wuser_UNCONNECTED(4 downto 0), + m_axi_wvalid(4 downto 0) => m_axi_wvalid(4 downto 0), s_axi_araddr(31 downto 0) => s_axi_araddr(31 downto 0), s_axi_arburst(1 downto 0) => B"00", s_axi_arcache(3 downto 0) => B"0000", diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.v index 50c7a62..83b96cf 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.v +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.v @@ -2,10 +2,10 @@ // Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. // -------------------------------------------------------------------------------- // Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 -// Date : Tue Mar 4 22:38:42 2025 +// Date : Thu Mar 20 17:31:25 2025 // Host : hogtest running 64-bit unknown -// Command : write_verilog -force -mode synth_stub -// /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.v +// Command : write_verilog -force -mode synth_stub -rename_top mb_design_1_xbar_0 -prefix +// mb_design_1_xbar_0_ mb_design_1_xbar_0_stub.v // Design : mb_design_1_xbar_0 // Purpose : Stub declaration of top-level module interface // Device : xc7a200tsbg484-1 @@ -22,7 +22,7 @@ module mb_design_1_xbar_0(aclk, aresetn, s_axi_awaddr, s_axi_awprot, m_axi_awprot, m_axi_awvalid, m_axi_awready, m_axi_wdata, m_axi_wstrb, m_axi_wvalid, m_axi_wready, m_axi_bresp, m_axi_bvalid, m_axi_bready, m_axi_araddr, m_axi_arprot, m_axi_arvalid, m_axi_arready, m_axi_rdata, m_axi_rresp, m_axi_rvalid, m_axi_rready) -/* synthesis syn_black_box black_box_pad_pin="aresetn,s_axi_awaddr[31:0],s_axi_awprot[2:0],s_axi_awvalid[0:0],s_axi_awready[0:0],s_axi_wdata[31:0],s_axi_wstrb[3:0],s_axi_wvalid[0:0],s_axi_wready[0:0],s_axi_bresp[1:0],s_axi_bvalid[0:0],s_axi_bready[0:0],s_axi_araddr[31:0],s_axi_arprot[2:0],s_axi_arvalid[0:0],s_axi_arready[0:0],s_axi_rdata[31:0],s_axi_rresp[1:0],s_axi_rvalid[0:0],s_axi_rready[0:0],m_axi_awaddr[127:0],m_axi_awprot[11:0],m_axi_awvalid[3:0],m_axi_awready[3:0],m_axi_wdata[127:0],m_axi_wstrb[15:0],m_axi_wvalid[3:0],m_axi_wready[3:0],m_axi_bresp[7:0],m_axi_bvalid[3:0],m_axi_bready[3:0],m_axi_araddr[127:0],m_axi_arprot[11:0],m_axi_arvalid[3:0],m_axi_arready[3:0],m_axi_rdata[127:0],m_axi_rresp[7:0],m_axi_rvalid[3:0],m_axi_rready[3:0]" */ +/* synthesis syn_black_box black_box_pad_pin="aresetn,s_axi_awaddr[31:0],s_axi_awprot[2:0],s_axi_awvalid[0:0],s_axi_awready[0:0],s_axi_wdata[31:0],s_axi_wstrb[3:0],s_axi_wvalid[0:0],s_axi_wready[0:0],s_axi_bresp[1:0],s_axi_bvalid[0:0],s_axi_bready[0:0],s_axi_araddr[31:0],s_axi_arprot[2:0],s_axi_arvalid[0:0],s_axi_arready[0:0],s_axi_rdata[31:0],s_axi_rresp[1:0],s_axi_rvalid[0:0],s_axi_rready[0:0],m_axi_awaddr[159:0],m_axi_awprot[14:0],m_axi_awvalid[4:0],m_axi_awready[4:0],m_axi_wdata[159:0],m_axi_wstrb[19:0],m_axi_wvalid[4:0],m_axi_wready[4:0],m_axi_bresp[9:0],m_axi_bvalid[4:0],m_axi_bready[4:0],m_axi_araddr[159:0],m_axi_arprot[14:0],m_axi_arvalid[4:0],m_axi_arready[4:0],m_axi_rdata[159:0],m_axi_rresp[9:0],m_axi_rvalid[4:0],m_axi_rready[4:0]" */ /* synthesis syn_force_seq_prim="aclk" */; input aclk /* synthesis syn_isclock = 1 */; input aresetn; @@ -45,23 +45,23 @@ module mb_design_1_xbar_0(aclk, aresetn, s_axi_awaddr, s_axi_awprot, output [1:0]s_axi_rresp; output [0:0]s_axi_rvalid; input [0:0]s_axi_rready; - output [127:0]m_axi_awaddr; - output [11:0]m_axi_awprot; - output [3:0]m_axi_awvalid; - input [3:0]m_axi_awready; - output [127:0]m_axi_wdata; - output [15:0]m_axi_wstrb; - output [3:0]m_axi_wvalid; - input [3:0]m_axi_wready; - input [7:0]m_axi_bresp; - input [3:0]m_axi_bvalid; - output [3:0]m_axi_bready; - output [127:0]m_axi_araddr; - output [11:0]m_axi_arprot; - output [3:0]m_axi_arvalid; - input [3:0]m_axi_arready; - input [127:0]m_axi_rdata; - input [7:0]m_axi_rresp; - input [3:0]m_axi_rvalid; - output [3:0]m_axi_rready; + output [159:0]m_axi_awaddr; + output [14:0]m_axi_awprot; + output [4:0]m_axi_awvalid; + input [4:0]m_axi_awready; + output [159:0]m_axi_wdata; + output [19:0]m_axi_wstrb; + output [4:0]m_axi_wvalid; + input [4:0]m_axi_wready; + input [9:0]m_axi_bresp; + input [4:0]m_axi_bvalid; + output [4:0]m_axi_bready; + output [159:0]m_axi_araddr; + output [14:0]m_axi_arprot; + output [4:0]m_axi_arvalid; + input [4:0]m_axi_arready; + input [159:0]m_axi_rdata; + input [9:0]m_axi_rresp; + input [4:0]m_axi_rvalid; + output [4:0]m_axi_rready; endmodule diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.vhdl b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.vhdl index 568ff30..40748a7 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.vhdl +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.vhdl @@ -2,10 +2,10 @@ -- Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. -- -------------------------------------------------------------------------------- -- Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 --- Date : Tue Mar 4 22:38:42 2025 +-- Date : Thu Mar 20 17:31:25 2025 -- Host : hogtest running 64-bit unknown --- Command : write_vhdl -force -mode synth_stub --- /home/hogtest/Projets/hog-microblaze-demo/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/mb_design_1_xbar_0_stub.vhdl +-- Command : write_vhdl -force -mode synth_stub -rename_top mb_design_1_xbar_0 -prefix +-- mb_design_1_xbar_0_ mb_design_1_xbar_0_stub.vhdl -- Design : mb_design_1_xbar_0 -- Purpose : Stub declaration of top-level module interface -- Device : xc7a200tsbg484-1 @@ -36,25 +36,25 @@ entity mb_design_1_xbar_0 is s_axi_rresp : out STD_LOGIC_VECTOR ( 1 downto 0 ); s_axi_rvalid : out STD_LOGIC_VECTOR ( 0 to 0 ); s_axi_rready : in STD_LOGIC_VECTOR ( 0 to 0 ); - m_axi_awaddr : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_awprot : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_awvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_awready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wdata : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_wstrb : out STD_LOGIC_VECTOR ( 15 downto 0 ); - m_axi_wvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_wready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_bvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_bready : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_araddr : out STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_arprot : out STD_LOGIC_VECTOR ( 11 downto 0 ); - m_axi_arvalid : out STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_arready : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rdata : in STD_LOGIC_VECTOR ( 127 downto 0 ); - m_axi_rresp : in STD_LOGIC_VECTOR ( 7 downto 0 ); - m_axi_rvalid : in STD_LOGIC_VECTOR ( 3 downto 0 ); - m_axi_rready : out STD_LOGIC_VECTOR ( 3 downto 0 ) + m_axi_awaddr : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_awprot : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_awvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_awready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wdata : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_wstrb : out STD_LOGIC_VECTOR ( 19 downto 0 ); + m_axi_wvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_wready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_bvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_bready : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_araddr : out STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_arprot : out STD_LOGIC_VECTOR ( 14 downto 0 ); + m_axi_arvalid : out STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_arready : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rdata : in STD_LOGIC_VECTOR ( 159 downto 0 ); + m_axi_rresp : in STD_LOGIC_VECTOR ( 9 downto 0 ); + m_axi_rvalid : in STD_LOGIC_VECTOR ( 4 downto 0 ); + m_axi_rready : out STD_LOGIC_VECTOR ( 4 downto 0 ) ); end mb_design_1_xbar_0; @@ -63,7 +63,7 @@ architecture stub of mb_design_1_xbar_0 is attribute syn_black_box : boolean; attribute black_box_pad_pin : string; attribute syn_black_box of stub : architecture is true; -attribute black_box_pad_pin of stub : architecture is "aclk,aresetn,s_axi_awaddr[31:0],s_axi_awprot[2:0],s_axi_awvalid[0:0],s_axi_awready[0:0],s_axi_wdata[31:0],s_axi_wstrb[3:0],s_axi_wvalid[0:0],s_axi_wready[0:0],s_axi_bresp[1:0],s_axi_bvalid[0:0],s_axi_bready[0:0],s_axi_araddr[31:0],s_axi_arprot[2:0],s_axi_arvalid[0:0],s_axi_arready[0:0],s_axi_rdata[31:0],s_axi_rresp[1:0],s_axi_rvalid[0:0],s_axi_rready[0:0],m_axi_awaddr[127:0],m_axi_awprot[11:0],m_axi_awvalid[3:0],m_axi_awready[3:0],m_axi_wdata[127:0],m_axi_wstrb[15:0],m_axi_wvalid[3:0],m_axi_wready[3:0],m_axi_bresp[7:0],m_axi_bvalid[3:0],m_axi_bready[3:0],m_axi_araddr[127:0],m_axi_arprot[11:0],m_axi_arvalid[3:0],m_axi_arready[3:0],m_axi_rdata[127:0],m_axi_rresp[7:0],m_axi_rvalid[3:0],m_axi_rready[3:0]"; +attribute black_box_pad_pin of stub : architecture is "aclk,aresetn,s_axi_awaddr[31:0],s_axi_awprot[2:0],s_axi_awvalid[0:0],s_axi_awready[0:0],s_axi_wdata[31:0],s_axi_wstrb[3:0],s_axi_wvalid[0:0],s_axi_wready[0:0],s_axi_bresp[1:0],s_axi_bvalid[0:0],s_axi_bready[0:0],s_axi_araddr[31:0],s_axi_arprot[2:0],s_axi_arvalid[0:0],s_axi_arready[0:0],s_axi_rdata[31:0],s_axi_rresp[1:0],s_axi_rvalid[0:0],s_axi_rready[0:0],m_axi_awaddr[159:0],m_axi_awprot[14:0],m_axi_awvalid[4:0],m_axi_awready[4:0],m_axi_wdata[159:0],m_axi_wstrb[19:0],m_axi_wvalid[4:0],m_axi_wready[4:0],m_axi_bresp[9:0],m_axi_bvalid[4:0],m_axi_bready[4:0],m_axi_araddr[159:0],m_axi_arprot[14:0],m_axi_arvalid[4:0],m_axi_arready[4:0],m_axi_rdata[159:0],m_axi_rresp[9:0],m_axi_rvalid[4:0],m_axi_rready[4:0]"; attribute X_CORE_INFO : string; attribute X_CORE_INFO of stub : architecture is "axi_crossbar_v2_1_33_axi_crossbar,Vivado 2024.1.2"; begin diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.cpp b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.cpp index 423306f..f97e990 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.cpp +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.cpp @@ -160,6 +160,26 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_rresp_converter_3 = NULL; mp_m_axi_rvalid_converter_3 = NULL; mp_m_axi_rready_converter_3 = NULL; + mp_M04_AXI_transactor = NULL; + mp_m_axi_awaddr_converter_4 = NULL; + mp_m_axi_awprot_converter_4 = NULL; + mp_m_axi_awvalid_converter_4 = NULL; + mp_m_axi_awready_converter_4 = NULL; + mp_m_axi_wdata_converter_4 = NULL; + mp_m_axi_wstrb_converter_4 = NULL; + mp_m_axi_wvalid_converter_4 = NULL; + mp_m_axi_wready_converter_4 = NULL; + mp_m_axi_bresp_converter_4 = NULL; + mp_m_axi_bvalid_converter_4 = NULL; + mp_m_axi_bready_converter_4 = NULL; + mp_m_axi_araddr_converter_4 = NULL; + mp_m_axi_arprot_converter_4 = NULL; + mp_m_axi_arvalid_converter_4 = NULL; + mp_m_axi_arready_converter_4 = NULL; + mp_m_axi_rdata_converter_4 = NULL; + mp_m_axi_rresp_converter_4 = NULL; + mp_m_axi_rvalid_converter_4 = NULL; + mp_m_axi_rready_converter_4 = NULL; // initialize junctures mp_m_axi_concat_araddr = NULL; @@ -181,79 +201,79 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_split_rresp = NULL; mp_m_axi_split_rvalid = NULL; mp_m_axi_split_wready = NULL; - mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_awaddr"); + mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_awaddr"); mp_m_axi_concat_awaddr->in_port[0](m_axi_concat_awaddr_out_0); mp_m_axi_concat_awaddr->out_port(m_axi_awaddr); mp_m_axi_concat_awaddr->offset_port(0, 0); - mp_m_axi_concat_awprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_awprot"); + mp_m_axi_concat_awprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_awprot"); mp_m_axi_concat_awprot->in_port[0](m_axi_concat_awprot_out_0); mp_m_axi_concat_awprot->out_port(m_axi_awprot); mp_m_axi_concat_awprot->offset_port(0, 0); - mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_awvalid"); + mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_awvalid"); mp_m_axi_concat_awvalid->in_port[0](m_axi_concat_awvalid_out_0); mp_m_axi_concat_awvalid->out_port(m_axi_awvalid); mp_m_axi_concat_awvalid->offset_port(0, 0); - mp_m_axi_split_awready = new xsc::xsc_split<4, 4>("m_axi_split_awready"); + mp_m_axi_split_awready = new xsc::xsc_split<5, 5>("m_axi_split_awready"); mp_m_axi_split_awready->in_port(m_axi_awready); mp_m_axi_split_awready->out_port[0](m_axi_split_awready_out_0); mp_m_axi_split_awready->add_mask(0,1,0); - mp_m_axi_concat_wdata = new xsc::xsc_concatenator<128, 4>("m_axi_concat_wdata"); + mp_m_axi_concat_wdata = new xsc::xsc_concatenator<160, 5>("m_axi_concat_wdata"); mp_m_axi_concat_wdata->in_port[0](m_axi_concat_wdata_out_0); mp_m_axi_concat_wdata->out_port(m_axi_wdata); mp_m_axi_concat_wdata->offset_port(0, 0); - mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<16, 4>("m_axi_concat_wstrb"); + mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<20, 5>("m_axi_concat_wstrb"); mp_m_axi_concat_wstrb->in_port[0](m_axi_concat_wstrb_out_0); mp_m_axi_concat_wstrb->out_port(m_axi_wstrb); mp_m_axi_concat_wstrb->offset_port(0, 0); - mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_wvalid"); + mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_wvalid"); mp_m_axi_concat_wvalid->in_port[0](m_axi_concat_wvalid_out_0); mp_m_axi_concat_wvalid->out_port(m_axi_wvalid); mp_m_axi_concat_wvalid->offset_port(0, 0); - mp_m_axi_split_wready = new xsc::xsc_split<4, 4>("m_axi_split_wready"); + mp_m_axi_split_wready = new xsc::xsc_split<5, 5>("m_axi_split_wready"); mp_m_axi_split_wready->in_port(m_axi_wready); mp_m_axi_split_wready->out_port[0](m_axi_split_wready_out_0); mp_m_axi_split_wready->add_mask(0,1,0); - mp_m_axi_split_bresp = new xsc::xsc_split<8, 4>("m_axi_split_bresp"); + mp_m_axi_split_bresp = new xsc::xsc_split<10, 5>("m_axi_split_bresp"); mp_m_axi_split_bresp->in_port(m_axi_bresp); mp_m_axi_split_bresp->out_port[0](m_axi_split_bresp_out_0); mp_m_axi_split_bresp->add_mask(0,2,0); - mp_m_axi_split_bvalid = new xsc::xsc_split<4, 4>("m_axi_split_bvalid"); + mp_m_axi_split_bvalid = new xsc::xsc_split<5, 5>("m_axi_split_bvalid"); mp_m_axi_split_bvalid->in_port(m_axi_bvalid); mp_m_axi_split_bvalid->out_port[0](m_axi_split_bvalid_out_0); mp_m_axi_split_bvalid->add_mask(0,1,0); - mp_m_axi_concat_bready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_bready"); + mp_m_axi_concat_bready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_bready"); mp_m_axi_concat_bready->in_port[0](m_axi_concat_bready_out_0); mp_m_axi_concat_bready->out_port(m_axi_bready); mp_m_axi_concat_bready->offset_port(0, 0); - mp_m_axi_concat_araddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_araddr"); + mp_m_axi_concat_araddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_araddr"); mp_m_axi_concat_araddr->in_port[0](m_axi_concat_araddr_out_0); mp_m_axi_concat_araddr->out_port(m_axi_araddr); mp_m_axi_concat_araddr->offset_port(0, 0); - mp_m_axi_concat_arprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_arprot"); + mp_m_axi_concat_arprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_arprot"); mp_m_axi_concat_arprot->in_port[0](m_axi_concat_arprot_out_0); mp_m_axi_concat_arprot->out_port(m_axi_arprot); mp_m_axi_concat_arprot->offset_port(0, 0); - mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_arvalid"); + mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_arvalid"); mp_m_axi_concat_arvalid->in_port[0](m_axi_concat_arvalid_out_0); mp_m_axi_concat_arvalid->out_port(m_axi_arvalid); mp_m_axi_concat_arvalid->offset_port(0, 0); - mp_m_axi_split_arready = new xsc::xsc_split<4, 4>("m_axi_split_arready"); + mp_m_axi_split_arready = new xsc::xsc_split<5, 5>("m_axi_split_arready"); mp_m_axi_split_arready->in_port(m_axi_arready); mp_m_axi_split_arready->out_port[0](m_axi_split_arready_out_0); mp_m_axi_split_arready->add_mask(0,1,0); - mp_m_axi_split_rdata = new xsc::xsc_split<128, 4>("m_axi_split_rdata"); + mp_m_axi_split_rdata = new xsc::xsc_split<160, 5>("m_axi_split_rdata"); mp_m_axi_split_rdata->in_port(m_axi_rdata); mp_m_axi_split_rdata->out_port[0](m_axi_split_rdata_out_0); mp_m_axi_split_rdata->add_mask(0,32,0); - mp_m_axi_split_rresp = new xsc::xsc_split<8, 4>("m_axi_split_rresp"); + mp_m_axi_split_rresp = new xsc::xsc_split<10, 5>("m_axi_split_rresp"); mp_m_axi_split_rresp->in_port(m_axi_rresp); mp_m_axi_split_rresp->out_port[0](m_axi_split_rresp_out_0); mp_m_axi_split_rresp->add_mask(0,2,0); - mp_m_axi_split_rvalid = new xsc::xsc_split<4, 4>("m_axi_split_rvalid"); + mp_m_axi_split_rvalid = new xsc::xsc_split<5, 5>("m_axi_split_rvalid"); mp_m_axi_split_rvalid->in_port(m_axi_rvalid); mp_m_axi_split_rvalid->out_port[0](m_axi_split_rvalid_out_0); mp_m_axi_split_rvalid->add_mask(0,1,0); - mp_m_axi_concat_rready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_rready"); + mp_m_axi_concat_rready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_rready"); mp_m_axi_concat_rready->in_port[0](m_axi_concat_rready_out_0); mp_m_axi_concat_rready->out_port(m_axi_rready); mp_m_axi_concat_rready->offset_port(0, 0); @@ -395,6 +415,52 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_split_rvalid->add_mask(3,4,3); mp_m_axi_concat_rready->in_port[3](m_axi_concat_rready_out_3); mp_m_axi_concat_rready->offset_port(3, 3); + mp_m_axi_concat_awaddr->in_port[4](m_axi_concat_awaddr_out_4); + mp_m_axi_concat_awaddr->offset_port(4, 128); + mp_m_axi_concat_awprot->in_port[4](m_axi_concat_awprot_out_4); + mp_m_axi_concat_awprot->offset_port(4, 12); + mp_m_axi_concat_awvalid->in_port[4](m_axi_concat_awvalid_out_4); + mp_m_axi_concat_awvalid->offset_port(4, 4); + + mp_m_axi_split_awready->out_port[4](m_axi_split_awready_out_4); + mp_m_axi_split_awready->add_mask(4,5,4); + mp_m_axi_concat_wdata->in_port[4](m_axi_concat_wdata_out_4); + mp_m_axi_concat_wdata->offset_port(4, 128); + mp_m_axi_concat_wstrb->in_port[4](m_axi_concat_wstrb_out_4); + mp_m_axi_concat_wstrb->offset_port(4, 16); + mp_m_axi_concat_wvalid->in_port[4](m_axi_concat_wvalid_out_4); + mp_m_axi_concat_wvalid->offset_port(4, 4); + + mp_m_axi_split_wready->out_port[4](m_axi_split_wready_out_4); + mp_m_axi_split_wready->add_mask(4,5,4); + + mp_m_axi_split_bresp->out_port[4](m_axi_split_bresp_out_4); + mp_m_axi_split_bresp->add_mask(4,10,8); + + mp_m_axi_split_bvalid->out_port[4](m_axi_split_bvalid_out_4); + mp_m_axi_split_bvalid->add_mask(4,5,4); + mp_m_axi_concat_bready->in_port[4](m_axi_concat_bready_out_4); + mp_m_axi_concat_bready->offset_port(4, 4); + mp_m_axi_concat_araddr->in_port[4](m_axi_concat_araddr_out_4); + mp_m_axi_concat_araddr->offset_port(4, 128); + mp_m_axi_concat_arprot->in_port[4](m_axi_concat_arprot_out_4); + mp_m_axi_concat_arprot->offset_port(4, 12); + mp_m_axi_concat_arvalid->in_port[4](m_axi_concat_arvalid_out_4); + mp_m_axi_concat_arvalid->offset_port(4, 4); + + mp_m_axi_split_arready->out_port[4](m_axi_split_arready_out_4); + mp_m_axi_split_arready->add_mask(4,5,4); + + mp_m_axi_split_rdata->out_port[4](m_axi_split_rdata_out_4); + mp_m_axi_split_rdata->add_mask(4,160,128); + + mp_m_axi_split_rresp->out_port[4](m_axi_split_rresp_out_4); + mp_m_axi_split_rresp->add_mask(4,10,8); + + mp_m_axi_split_rvalid->out_port[4](m_axi_split_rvalid_out_4); + mp_m_axi_split_rvalid->add_mask(4,5,4); + mp_m_axi_concat_rready->in_port[4](m_axi_concat_rready_out_4); + mp_m_axi_concat_rready->offset_port(4, 4); // initialize socket stubs @@ -553,79 +619,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M00_AXI' transactor ports - mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_0"); + mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_0"); mp_m_axi_awaddr_converter_0->vector_in(m_m_axi_awaddr_converter_0_signal); mp_m_axi_awaddr_converter_0->vector_out(m_axi_concat_awaddr_out_0); mp_M00_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_0_signal); - mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_0"); + mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_0"); mp_m_axi_awprot_converter_0->vector_in(m_m_axi_awprot_converter_0_signal); mp_m_axi_awprot_converter_0->vector_out(m_axi_concat_awprot_out_0); mp_M00_AXI_transactor->AWPROT(m_m_axi_awprot_converter_0_signal); - mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_0"); + mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_0"); mp_m_axi_awvalid_converter_0->scalar_in(m_m_axi_awvalid_converter_0_signal); mp_m_axi_awvalid_converter_0->vector_out(m_axi_concat_awvalid_out_0); mp_M00_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_0_signal); - mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_0"); + mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_0"); mp_m_axi_awready_converter_0->vector_in(m_axi_split_awready_out_0); mp_m_axi_awready_converter_0->scalar_out(m_m_axi_awready_converter_0_signal); mp_M00_AXI_transactor->AWREADY(m_m_axi_awready_converter_0_signal); - mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_0"); + mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_0"); mp_m_axi_wdata_converter_0->vector_in(m_m_axi_wdata_converter_0_signal); mp_m_axi_wdata_converter_0->vector_out(m_axi_concat_wdata_out_0); mp_M00_AXI_transactor->WDATA(m_m_axi_wdata_converter_0_signal); - mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_0"); + mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_0"); mp_m_axi_wstrb_converter_0->vector_in(m_m_axi_wstrb_converter_0_signal); mp_m_axi_wstrb_converter_0->vector_out(m_axi_concat_wstrb_out_0); mp_M00_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_0_signal); - mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_0"); + mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_0"); mp_m_axi_wvalid_converter_0->scalar_in(m_m_axi_wvalid_converter_0_signal); mp_m_axi_wvalid_converter_0->vector_out(m_axi_concat_wvalid_out_0); mp_M00_AXI_transactor->WVALID(m_m_axi_wvalid_converter_0_signal); - mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_0"); + mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_0"); mp_m_axi_wready_converter_0->vector_in(m_axi_split_wready_out_0); mp_m_axi_wready_converter_0->scalar_out(m_m_axi_wready_converter_0_signal); mp_M00_AXI_transactor->WREADY(m_m_axi_wready_converter_0_signal); - mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_0"); + mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_0"); mp_m_axi_bresp_converter_0->vector_in(m_axi_split_bresp_out_0); mp_m_axi_bresp_converter_0->vector_out(m_m_axi_bresp_converter_0_signal); mp_M00_AXI_transactor->BRESP(m_m_axi_bresp_converter_0_signal); - mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_0"); + mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_0"); mp_m_axi_bvalid_converter_0->vector_in(m_axi_split_bvalid_out_0); mp_m_axi_bvalid_converter_0->scalar_out(m_m_axi_bvalid_converter_0_signal); mp_M00_AXI_transactor->BVALID(m_m_axi_bvalid_converter_0_signal); - mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_0"); + mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_0"); mp_m_axi_bready_converter_0->scalar_in(m_m_axi_bready_converter_0_signal); mp_m_axi_bready_converter_0->vector_out(m_axi_concat_bready_out_0); mp_M00_AXI_transactor->BREADY(m_m_axi_bready_converter_0_signal); - mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_0"); + mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_0"); mp_m_axi_araddr_converter_0->vector_in(m_m_axi_araddr_converter_0_signal); mp_m_axi_araddr_converter_0->vector_out(m_axi_concat_araddr_out_0); mp_M00_AXI_transactor->ARADDR(m_m_axi_araddr_converter_0_signal); - mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_0"); + mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_0"); mp_m_axi_arprot_converter_0->vector_in(m_m_axi_arprot_converter_0_signal); mp_m_axi_arprot_converter_0->vector_out(m_axi_concat_arprot_out_0); mp_M00_AXI_transactor->ARPROT(m_m_axi_arprot_converter_0_signal); - mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_0"); + mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_0"); mp_m_axi_arvalid_converter_0->scalar_in(m_m_axi_arvalid_converter_0_signal); mp_m_axi_arvalid_converter_0->vector_out(m_axi_concat_arvalid_out_0); mp_M00_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_0_signal); - mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_0"); + mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_0"); mp_m_axi_arready_converter_0->vector_in(m_axi_split_arready_out_0); mp_m_axi_arready_converter_0->scalar_out(m_m_axi_arready_converter_0_signal); mp_M00_AXI_transactor->ARREADY(m_m_axi_arready_converter_0_signal); - mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_0"); + mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_0"); mp_m_axi_rdata_converter_0->vector_in(m_axi_split_rdata_out_0); mp_m_axi_rdata_converter_0->vector_out(m_m_axi_rdata_converter_0_signal); mp_M00_AXI_transactor->RDATA(m_m_axi_rdata_converter_0_signal); - mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_0"); + mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_0"); mp_m_axi_rresp_converter_0->vector_in(m_axi_split_rresp_out_0); mp_m_axi_rresp_converter_0->vector_out(m_m_axi_rresp_converter_0_signal); mp_M00_AXI_transactor->RRESP(m_m_axi_rresp_converter_0_signal); - mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_0"); + mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_0"); mp_m_axi_rvalid_converter_0->vector_in(m_axi_split_rvalid_out_0); mp_m_axi_rvalid_converter_0->scalar_out(m_m_axi_rvalid_converter_0_signal); mp_M00_AXI_transactor->RVALID(m_m_axi_rvalid_converter_0_signal); - mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_0"); + mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_0"); mp_m_axi_rready_converter_0->scalar_in(m_m_axi_rready_converter_0_signal); mp_m_axi_rready_converter_0->vector_out(m_axi_concat_rready_out_0); mp_M00_AXI_transactor->RREADY(m_m_axi_rready_converter_0_signal); @@ -686,79 +752,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M01_AXI' transactor ports - mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_1"); + mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_1"); mp_m_axi_awaddr_converter_1->vector_in(m_m_axi_awaddr_converter_1_signal); mp_m_axi_awaddr_converter_1->vector_out(m_axi_concat_awaddr_out_1); mp_M01_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_1_signal); - mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_1"); + mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_1"); mp_m_axi_awprot_converter_1->vector_in(m_m_axi_awprot_converter_1_signal); mp_m_axi_awprot_converter_1->vector_out(m_axi_concat_awprot_out_1); mp_M01_AXI_transactor->AWPROT(m_m_axi_awprot_converter_1_signal); - mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_1"); + mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_1"); mp_m_axi_awvalid_converter_1->scalar_in(m_m_axi_awvalid_converter_1_signal); mp_m_axi_awvalid_converter_1->vector_out(m_axi_concat_awvalid_out_1); mp_M01_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_1_signal); - mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_1"); + mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_1"); mp_m_axi_awready_converter_1->vector_in(m_axi_split_awready_out_1); mp_m_axi_awready_converter_1->scalar_out(m_m_axi_awready_converter_1_signal); mp_M01_AXI_transactor->AWREADY(m_m_axi_awready_converter_1_signal); - mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_1"); + mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_1"); mp_m_axi_wdata_converter_1->vector_in(m_m_axi_wdata_converter_1_signal); mp_m_axi_wdata_converter_1->vector_out(m_axi_concat_wdata_out_1); mp_M01_AXI_transactor->WDATA(m_m_axi_wdata_converter_1_signal); - mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_1"); + mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_1"); mp_m_axi_wstrb_converter_1->vector_in(m_m_axi_wstrb_converter_1_signal); mp_m_axi_wstrb_converter_1->vector_out(m_axi_concat_wstrb_out_1); mp_M01_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_1_signal); - mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_1"); + mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_1"); mp_m_axi_wvalid_converter_1->scalar_in(m_m_axi_wvalid_converter_1_signal); mp_m_axi_wvalid_converter_1->vector_out(m_axi_concat_wvalid_out_1); mp_M01_AXI_transactor->WVALID(m_m_axi_wvalid_converter_1_signal); - mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_1"); + mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_1"); mp_m_axi_wready_converter_1->vector_in(m_axi_split_wready_out_1); mp_m_axi_wready_converter_1->scalar_out(m_m_axi_wready_converter_1_signal); mp_M01_AXI_transactor->WREADY(m_m_axi_wready_converter_1_signal); - mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_1"); + mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_1"); mp_m_axi_bresp_converter_1->vector_in(m_axi_split_bresp_out_1); mp_m_axi_bresp_converter_1->vector_out(m_m_axi_bresp_converter_1_signal); mp_M01_AXI_transactor->BRESP(m_m_axi_bresp_converter_1_signal); - mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_1"); + mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_1"); mp_m_axi_bvalid_converter_1->vector_in(m_axi_split_bvalid_out_1); mp_m_axi_bvalid_converter_1->scalar_out(m_m_axi_bvalid_converter_1_signal); mp_M01_AXI_transactor->BVALID(m_m_axi_bvalid_converter_1_signal); - mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_1"); + mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_1"); mp_m_axi_bready_converter_1->scalar_in(m_m_axi_bready_converter_1_signal); mp_m_axi_bready_converter_1->vector_out(m_axi_concat_bready_out_1); mp_M01_AXI_transactor->BREADY(m_m_axi_bready_converter_1_signal); - mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_1"); + mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_1"); mp_m_axi_araddr_converter_1->vector_in(m_m_axi_araddr_converter_1_signal); mp_m_axi_araddr_converter_1->vector_out(m_axi_concat_araddr_out_1); mp_M01_AXI_transactor->ARADDR(m_m_axi_araddr_converter_1_signal); - mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_1"); + mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_1"); mp_m_axi_arprot_converter_1->vector_in(m_m_axi_arprot_converter_1_signal); mp_m_axi_arprot_converter_1->vector_out(m_axi_concat_arprot_out_1); mp_M01_AXI_transactor->ARPROT(m_m_axi_arprot_converter_1_signal); - mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_1"); + mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_1"); mp_m_axi_arvalid_converter_1->scalar_in(m_m_axi_arvalid_converter_1_signal); mp_m_axi_arvalid_converter_1->vector_out(m_axi_concat_arvalid_out_1); mp_M01_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_1_signal); - mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_1"); + mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_1"); mp_m_axi_arready_converter_1->vector_in(m_axi_split_arready_out_1); mp_m_axi_arready_converter_1->scalar_out(m_m_axi_arready_converter_1_signal); mp_M01_AXI_transactor->ARREADY(m_m_axi_arready_converter_1_signal); - mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_1"); + mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_1"); mp_m_axi_rdata_converter_1->vector_in(m_axi_split_rdata_out_1); mp_m_axi_rdata_converter_1->vector_out(m_m_axi_rdata_converter_1_signal); mp_M01_AXI_transactor->RDATA(m_m_axi_rdata_converter_1_signal); - mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_1"); + mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_1"); mp_m_axi_rresp_converter_1->vector_in(m_axi_split_rresp_out_1); mp_m_axi_rresp_converter_1->vector_out(m_m_axi_rresp_converter_1_signal); mp_M01_AXI_transactor->RRESP(m_m_axi_rresp_converter_1_signal); - mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_1"); + mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_1"); mp_m_axi_rvalid_converter_1->vector_in(m_axi_split_rvalid_out_1); mp_m_axi_rvalid_converter_1->scalar_out(m_m_axi_rvalid_converter_1_signal); mp_M01_AXI_transactor->RVALID(m_m_axi_rvalid_converter_1_signal); - mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_1"); + mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_1"); mp_m_axi_rready_converter_1->scalar_in(m_m_axi_rready_converter_1_signal); mp_m_axi_rready_converter_1->vector_out(m_axi_concat_rready_out_1); mp_M01_AXI_transactor->RREADY(m_m_axi_rready_converter_1_signal); @@ -819,79 +885,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M02_AXI' transactor ports - mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_2"); + mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_2"); mp_m_axi_awaddr_converter_2->vector_in(m_m_axi_awaddr_converter_2_signal); mp_m_axi_awaddr_converter_2->vector_out(m_axi_concat_awaddr_out_2); mp_M02_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_2_signal); - mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_2"); + mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_2"); mp_m_axi_awprot_converter_2->vector_in(m_m_axi_awprot_converter_2_signal); mp_m_axi_awprot_converter_2->vector_out(m_axi_concat_awprot_out_2); mp_M02_AXI_transactor->AWPROT(m_m_axi_awprot_converter_2_signal); - mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_2"); + mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_2"); mp_m_axi_awvalid_converter_2->scalar_in(m_m_axi_awvalid_converter_2_signal); mp_m_axi_awvalid_converter_2->vector_out(m_axi_concat_awvalid_out_2); mp_M02_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_2_signal); - mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_2"); + mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_2"); mp_m_axi_awready_converter_2->vector_in(m_axi_split_awready_out_2); mp_m_axi_awready_converter_2->scalar_out(m_m_axi_awready_converter_2_signal); mp_M02_AXI_transactor->AWREADY(m_m_axi_awready_converter_2_signal); - mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_2"); + mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_2"); mp_m_axi_wdata_converter_2->vector_in(m_m_axi_wdata_converter_2_signal); mp_m_axi_wdata_converter_2->vector_out(m_axi_concat_wdata_out_2); mp_M02_AXI_transactor->WDATA(m_m_axi_wdata_converter_2_signal); - mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_2"); + mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_2"); mp_m_axi_wstrb_converter_2->vector_in(m_m_axi_wstrb_converter_2_signal); mp_m_axi_wstrb_converter_2->vector_out(m_axi_concat_wstrb_out_2); mp_M02_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_2_signal); - mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_2"); + mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_2"); mp_m_axi_wvalid_converter_2->scalar_in(m_m_axi_wvalid_converter_2_signal); mp_m_axi_wvalid_converter_2->vector_out(m_axi_concat_wvalid_out_2); mp_M02_AXI_transactor->WVALID(m_m_axi_wvalid_converter_2_signal); - mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_2"); + mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_2"); mp_m_axi_wready_converter_2->vector_in(m_axi_split_wready_out_2); mp_m_axi_wready_converter_2->scalar_out(m_m_axi_wready_converter_2_signal); mp_M02_AXI_transactor->WREADY(m_m_axi_wready_converter_2_signal); - mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_2"); + mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_2"); mp_m_axi_bresp_converter_2->vector_in(m_axi_split_bresp_out_2); mp_m_axi_bresp_converter_2->vector_out(m_m_axi_bresp_converter_2_signal); mp_M02_AXI_transactor->BRESP(m_m_axi_bresp_converter_2_signal); - mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_2"); + mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_2"); mp_m_axi_bvalid_converter_2->vector_in(m_axi_split_bvalid_out_2); mp_m_axi_bvalid_converter_2->scalar_out(m_m_axi_bvalid_converter_2_signal); mp_M02_AXI_transactor->BVALID(m_m_axi_bvalid_converter_2_signal); - mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_2"); + mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_2"); mp_m_axi_bready_converter_2->scalar_in(m_m_axi_bready_converter_2_signal); mp_m_axi_bready_converter_2->vector_out(m_axi_concat_bready_out_2); mp_M02_AXI_transactor->BREADY(m_m_axi_bready_converter_2_signal); - mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_2"); + mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_2"); mp_m_axi_araddr_converter_2->vector_in(m_m_axi_araddr_converter_2_signal); mp_m_axi_araddr_converter_2->vector_out(m_axi_concat_araddr_out_2); mp_M02_AXI_transactor->ARADDR(m_m_axi_araddr_converter_2_signal); - mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_2"); + mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_2"); mp_m_axi_arprot_converter_2->vector_in(m_m_axi_arprot_converter_2_signal); mp_m_axi_arprot_converter_2->vector_out(m_axi_concat_arprot_out_2); mp_M02_AXI_transactor->ARPROT(m_m_axi_arprot_converter_2_signal); - mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_2"); + mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_2"); mp_m_axi_arvalid_converter_2->scalar_in(m_m_axi_arvalid_converter_2_signal); mp_m_axi_arvalid_converter_2->vector_out(m_axi_concat_arvalid_out_2); mp_M02_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_2_signal); - mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_2"); + mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_2"); mp_m_axi_arready_converter_2->vector_in(m_axi_split_arready_out_2); mp_m_axi_arready_converter_2->scalar_out(m_m_axi_arready_converter_2_signal); mp_M02_AXI_transactor->ARREADY(m_m_axi_arready_converter_2_signal); - mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_2"); + mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_2"); mp_m_axi_rdata_converter_2->vector_in(m_axi_split_rdata_out_2); mp_m_axi_rdata_converter_2->vector_out(m_m_axi_rdata_converter_2_signal); mp_M02_AXI_transactor->RDATA(m_m_axi_rdata_converter_2_signal); - mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_2"); + mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_2"); mp_m_axi_rresp_converter_2->vector_in(m_axi_split_rresp_out_2); mp_m_axi_rresp_converter_2->vector_out(m_m_axi_rresp_converter_2_signal); mp_M02_AXI_transactor->RRESP(m_m_axi_rresp_converter_2_signal); - mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_2"); + mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_2"); mp_m_axi_rvalid_converter_2->vector_in(m_axi_split_rvalid_out_2); mp_m_axi_rvalid_converter_2->scalar_out(m_m_axi_rvalid_converter_2_signal); mp_M02_AXI_transactor->RVALID(m_m_axi_rvalid_converter_2_signal); - mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_2"); + mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_2"); mp_m_axi_rready_converter_2->scalar_in(m_m_axi_rready_converter_2_signal); mp_m_axi_rready_converter_2->vector_out(m_axi_concat_rready_out_2); mp_M02_AXI_transactor->RREADY(m_m_axi_rready_converter_2_signal); @@ -934,8 +1000,8 @@ void mb_design_1_xbar_0::before_end_of_elaboration() M03_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); M03_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); M03_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); - M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); - M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "2"); + M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "2"); M03_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); M03_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); M03_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); @@ -952,79 +1018,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M03_AXI' transactor ports - mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_3"); + mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_3"); mp_m_axi_awaddr_converter_3->vector_in(m_m_axi_awaddr_converter_3_signal); mp_m_axi_awaddr_converter_3->vector_out(m_axi_concat_awaddr_out_3); mp_M03_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_3_signal); - mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_3"); + mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_3"); mp_m_axi_awprot_converter_3->vector_in(m_m_axi_awprot_converter_3_signal); mp_m_axi_awprot_converter_3->vector_out(m_axi_concat_awprot_out_3); mp_M03_AXI_transactor->AWPROT(m_m_axi_awprot_converter_3_signal); - mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_3"); + mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_3"); mp_m_axi_awvalid_converter_3->scalar_in(m_m_axi_awvalid_converter_3_signal); mp_m_axi_awvalid_converter_3->vector_out(m_axi_concat_awvalid_out_3); mp_M03_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_3_signal); - mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_3"); + mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_3"); mp_m_axi_awready_converter_3->vector_in(m_axi_split_awready_out_3); mp_m_axi_awready_converter_3->scalar_out(m_m_axi_awready_converter_3_signal); mp_M03_AXI_transactor->AWREADY(m_m_axi_awready_converter_3_signal); - mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_3"); + mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_3"); mp_m_axi_wdata_converter_3->vector_in(m_m_axi_wdata_converter_3_signal); mp_m_axi_wdata_converter_3->vector_out(m_axi_concat_wdata_out_3); mp_M03_AXI_transactor->WDATA(m_m_axi_wdata_converter_3_signal); - mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_3"); + mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_3"); mp_m_axi_wstrb_converter_3->vector_in(m_m_axi_wstrb_converter_3_signal); mp_m_axi_wstrb_converter_3->vector_out(m_axi_concat_wstrb_out_3); mp_M03_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_3_signal); - mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_3"); + mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_3"); mp_m_axi_wvalid_converter_3->scalar_in(m_m_axi_wvalid_converter_3_signal); mp_m_axi_wvalid_converter_3->vector_out(m_axi_concat_wvalid_out_3); mp_M03_AXI_transactor->WVALID(m_m_axi_wvalid_converter_3_signal); - mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_3"); + mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_3"); mp_m_axi_wready_converter_3->vector_in(m_axi_split_wready_out_3); mp_m_axi_wready_converter_3->scalar_out(m_m_axi_wready_converter_3_signal); mp_M03_AXI_transactor->WREADY(m_m_axi_wready_converter_3_signal); - mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_3"); + mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_3"); mp_m_axi_bresp_converter_3->vector_in(m_axi_split_bresp_out_3); mp_m_axi_bresp_converter_3->vector_out(m_m_axi_bresp_converter_3_signal); mp_M03_AXI_transactor->BRESP(m_m_axi_bresp_converter_3_signal); - mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_3"); + mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_3"); mp_m_axi_bvalid_converter_3->vector_in(m_axi_split_bvalid_out_3); mp_m_axi_bvalid_converter_3->scalar_out(m_m_axi_bvalid_converter_3_signal); mp_M03_AXI_transactor->BVALID(m_m_axi_bvalid_converter_3_signal); - mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_3"); + mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_3"); mp_m_axi_bready_converter_3->scalar_in(m_m_axi_bready_converter_3_signal); mp_m_axi_bready_converter_3->vector_out(m_axi_concat_bready_out_3); mp_M03_AXI_transactor->BREADY(m_m_axi_bready_converter_3_signal); - mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_3"); + mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_3"); mp_m_axi_araddr_converter_3->vector_in(m_m_axi_araddr_converter_3_signal); mp_m_axi_araddr_converter_3->vector_out(m_axi_concat_araddr_out_3); mp_M03_AXI_transactor->ARADDR(m_m_axi_araddr_converter_3_signal); - mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_3"); + mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_3"); mp_m_axi_arprot_converter_3->vector_in(m_m_axi_arprot_converter_3_signal); mp_m_axi_arprot_converter_3->vector_out(m_axi_concat_arprot_out_3); mp_M03_AXI_transactor->ARPROT(m_m_axi_arprot_converter_3_signal); - mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_3"); + mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_3"); mp_m_axi_arvalid_converter_3->scalar_in(m_m_axi_arvalid_converter_3_signal); mp_m_axi_arvalid_converter_3->vector_out(m_axi_concat_arvalid_out_3); mp_M03_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_3_signal); - mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_3"); + mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_3"); mp_m_axi_arready_converter_3->vector_in(m_axi_split_arready_out_3); mp_m_axi_arready_converter_3->scalar_out(m_m_axi_arready_converter_3_signal); mp_M03_AXI_transactor->ARREADY(m_m_axi_arready_converter_3_signal); - mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_3"); + mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_3"); mp_m_axi_rdata_converter_3->vector_in(m_axi_split_rdata_out_3); mp_m_axi_rdata_converter_3->vector_out(m_m_axi_rdata_converter_3_signal); mp_M03_AXI_transactor->RDATA(m_m_axi_rdata_converter_3_signal); - mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_3"); + mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_3"); mp_m_axi_rresp_converter_3->vector_in(m_axi_split_rresp_out_3); mp_m_axi_rresp_converter_3->vector_out(m_m_axi_rresp_converter_3_signal); mp_M03_AXI_transactor->RRESP(m_m_axi_rresp_converter_3_signal); - mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_3"); + mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_3"); mp_m_axi_rvalid_converter_3->vector_in(m_axi_split_rvalid_out_3); mp_m_axi_rvalid_converter_3->scalar_out(m_m_axi_rvalid_converter_3_signal); mp_M03_AXI_transactor->RVALID(m_m_axi_rvalid_converter_3_signal); - mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_3"); + mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_3"); mp_m_axi_rready_converter_3->scalar_in(m_m_axi_rready_converter_3_signal); mp_m_axi_rready_converter_3->vector_out(m_axi_concat_rready_out_3); mp_M03_AXI_transactor->RREADY(m_m_axi_rready_converter_3_signal); @@ -1040,6 +1106,139 @@ void mb_design_1_xbar_0::before_end_of_elaboration() { } + // configure 'M04_AXI' transactor + + if (xsc::utils::xsc_sim_manager::getInstanceParameterInt("mb_design_1_xbar_0", "M04_AXI_TLM_MODE") != 1) + { + // Instantiate Socket Stubs + + // 'M04_AXI' transactor parameters + xsc::common_cpp::properties M04_AXI_transactor_param_props; + M04_AXI_transactor_param_props.addLong("DATA_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("FREQ_HZ", "100000000"); + M04_AXI_transactor_param_props.addLong("ID_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ADDR_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("AWUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ARUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("RUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("BUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("HAS_BURST", "0"); + M04_AXI_transactor_param_props.addLong("HAS_LOCK", "0"); + M04_AXI_transactor_param_props.addLong("HAS_PROT", "1"); + M04_AXI_transactor_param_props.addLong("HAS_CACHE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_QOS", "0"); + M04_AXI_transactor_param_props.addLong("HAS_REGION", "0"); + M04_AXI_transactor_param_props.addLong("HAS_WSTRB", "1"); + M04_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); + M04_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); + M04_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); + M04_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); + M04_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("RUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_SIZE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_RESET", "1"); + M04_AXI_transactor_param_props.addFloat("PHASE", "0.0"); + M04_AXI_transactor_param_props.addString("PROTOCOL", "AXI4LITE"); + M04_AXI_transactor_param_props.addString("READ_WRITE_MODE", "READ_WRITE"); + M04_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); + + mp_M04_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M04_AXI_transactor", M04_AXI_transactor_param_props); + + // M04_AXI' transactor ports + + mp_m_axi_awaddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_4"); + mp_m_axi_awaddr_converter_4->vector_in(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awaddr_converter_4->vector_out(m_axi_concat_awaddr_out_4); + mp_M04_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_4"); + mp_m_axi_awprot_converter_4->vector_in(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awprot_converter_4->vector_out(m_axi_concat_awprot_out_4); + mp_M04_AXI_transactor->AWPROT(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_4"); + mp_m_axi_awvalid_converter_4->scalar_in(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awvalid_converter_4->vector_out(m_axi_concat_awvalid_out_4); + mp_M04_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_4"); + mp_m_axi_awready_converter_4->vector_in(m_axi_split_awready_out_4); + mp_m_axi_awready_converter_4->scalar_out(m_m_axi_awready_converter_4_signal); + mp_M04_AXI_transactor->AWREADY(m_m_axi_awready_converter_4_signal); + mp_m_axi_wdata_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_4"); + mp_m_axi_wdata_converter_4->vector_in(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wdata_converter_4->vector_out(m_axi_concat_wdata_out_4); + mp_M04_AXI_transactor->WDATA(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wstrb_converter_4 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_4"); + mp_m_axi_wstrb_converter_4->vector_in(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wstrb_converter_4->vector_out(m_axi_concat_wstrb_out_4); + mp_M04_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_4"); + mp_m_axi_wvalid_converter_4->scalar_in(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wvalid_converter_4->vector_out(m_axi_concat_wvalid_out_4); + mp_M04_AXI_transactor->WVALID(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_4"); + mp_m_axi_wready_converter_4->vector_in(m_axi_split_wready_out_4); + mp_m_axi_wready_converter_4->scalar_out(m_m_axi_wready_converter_4_signal); + mp_M04_AXI_transactor->WREADY(m_m_axi_wready_converter_4_signal); + mp_m_axi_bresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_4"); + mp_m_axi_bresp_converter_4->vector_in(m_axi_split_bresp_out_4); + mp_m_axi_bresp_converter_4->vector_out(m_m_axi_bresp_converter_4_signal); + mp_M04_AXI_transactor->BRESP(m_m_axi_bresp_converter_4_signal); + mp_m_axi_bvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_4"); + mp_m_axi_bvalid_converter_4->vector_in(m_axi_split_bvalid_out_4); + mp_m_axi_bvalid_converter_4->scalar_out(m_m_axi_bvalid_converter_4_signal); + mp_M04_AXI_transactor->BVALID(m_m_axi_bvalid_converter_4_signal); + mp_m_axi_bready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_4"); + mp_m_axi_bready_converter_4->scalar_in(m_m_axi_bready_converter_4_signal); + mp_m_axi_bready_converter_4->vector_out(m_axi_concat_bready_out_4); + mp_M04_AXI_transactor->BREADY(m_m_axi_bready_converter_4_signal); + mp_m_axi_araddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_4"); + mp_m_axi_araddr_converter_4->vector_in(m_m_axi_araddr_converter_4_signal); + mp_m_axi_araddr_converter_4->vector_out(m_axi_concat_araddr_out_4); + mp_M04_AXI_transactor->ARADDR(m_m_axi_araddr_converter_4_signal); + mp_m_axi_arprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_4"); + mp_m_axi_arprot_converter_4->vector_in(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arprot_converter_4->vector_out(m_axi_concat_arprot_out_4); + mp_M04_AXI_transactor->ARPROT(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_4"); + mp_m_axi_arvalid_converter_4->scalar_in(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arvalid_converter_4->vector_out(m_axi_concat_arvalid_out_4); + mp_M04_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_4"); + mp_m_axi_arready_converter_4->vector_in(m_axi_split_arready_out_4); + mp_m_axi_arready_converter_4->scalar_out(m_m_axi_arready_converter_4_signal); + mp_M04_AXI_transactor->ARREADY(m_m_axi_arready_converter_4_signal); + mp_m_axi_rdata_converter_4 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_4"); + mp_m_axi_rdata_converter_4->vector_in(m_axi_split_rdata_out_4); + mp_m_axi_rdata_converter_4->vector_out(m_m_axi_rdata_converter_4_signal); + mp_M04_AXI_transactor->RDATA(m_m_axi_rdata_converter_4_signal); + mp_m_axi_rresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_4"); + mp_m_axi_rresp_converter_4->vector_in(m_axi_split_rresp_out_4); + mp_m_axi_rresp_converter_4->vector_out(m_m_axi_rresp_converter_4_signal); + mp_M04_AXI_transactor->RRESP(m_m_axi_rresp_converter_4_signal); + mp_m_axi_rvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_4"); + mp_m_axi_rvalid_converter_4->vector_in(m_axi_split_rvalid_out_4); + mp_m_axi_rvalid_converter_4->scalar_out(m_m_axi_rvalid_converter_4_signal); + mp_M04_AXI_transactor->RVALID(m_m_axi_rvalid_converter_4_signal); + mp_m_axi_rready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_4"); + mp_m_axi_rready_converter_4->scalar_in(m_m_axi_rready_converter_4_signal); + mp_m_axi_rready_converter_4->vector_out(m_axi_concat_rready_out_4); + mp_M04_AXI_transactor->RREADY(m_m_axi_rready_converter_4_signal); + mp_M04_AXI_transactor->CLK(aclk); + mp_M04_AXI_transactor->RST(aresetn); + + // M04_AXI' transactor sockets + + mp_impl->initiator_4_rd_socket->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_impl->initiator_4_wr_socket->bind(*(mp_M04_AXI_transactor->wr_socket)); + } + else + { + } + } #endif // XILINX_SIMULATOR @@ -1147,6 +1346,26 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_rresp_converter_3 = NULL; mp_m_axi_rvalid_converter_3 = NULL; mp_m_axi_rready_converter_3 = NULL; + mp_M04_AXI_transactor = NULL; + mp_m_axi_awaddr_converter_4 = NULL; + mp_m_axi_awprot_converter_4 = NULL; + mp_m_axi_awvalid_converter_4 = NULL; + mp_m_axi_awready_converter_4 = NULL; + mp_m_axi_wdata_converter_4 = NULL; + mp_m_axi_wstrb_converter_4 = NULL; + mp_m_axi_wvalid_converter_4 = NULL; + mp_m_axi_wready_converter_4 = NULL; + mp_m_axi_bresp_converter_4 = NULL; + mp_m_axi_bvalid_converter_4 = NULL; + mp_m_axi_bready_converter_4 = NULL; + mp_m_axi_araddr_converter_4 = NULL; + mp_m_axi_arprot_converter_4 = NULL; + mp_m_axi_arvalid_converter_4 = NULL; + mp_m_axi_arready_converter_4 = NULL; + mp_m_axi_rdata_converter_4 = NULL; + mp_m_axi_rresp_converter_4 = NULL; + mp_m_axi_rvalid_converter_4 = NULL; + mp_m_axi_rready_converter_4 = NULL; // initialize junctures mp_m_axi_concat_araddr = NULL; @@ -1168,79 +1387,79 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_split_rresp = NULL; mp_m_axi_split_rvalid = NULL; mp_m_axi_split_wready = NULL; - mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_awaddr"); + mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_awaddr"); mp_m_axi_concat_awaddr->in_port[0](m_axi_concat_awaddr_out_0); mp_m_axi_concat_awaddr->out_port(m_axi_awaddr); mp_m_axi_concat_awaddr->offset_port(0, 0); - mp_m_axi_concat_awprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_awprot"); + mp_m_axi_concat_awprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_awprot"); mp_m_axi_concat_awprot->in_port[0](m_axi_concat_awprot_out_0); mp_m_axi_concat_awprot->out_port(m_axi_awprot); mp_m_axi_concat_awprot->offset_port(0, 0); - mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_awvalid"); + mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_awvalid"); mp_m_axi_concat_awvalid->in_port[0](m_axi_concat_awvalid_out_0); mp_m_axi_concat_awvalid->out_port(m_axi_awvalid); mp_m_axi_concat_awvalid->offset_port(0, 0); - mp_m_axi_split_awready = new xsc::xsc_split<4, 4>("m_axi_split_awready"); + mp_m_axi_split_awready = new xsc::xsc_split<5, 5>("m_axi_split_awready"); mp_m_axi_split_awready->in_port(m_axi_awready); mp_m_axi_split_awready->out_port[0](m_axi_split_awready_out_0); mp_m_axi_split_awready->add_mask(0,1,0); - mp_m_axi_concat_wdata = new xsc::xsc_concatenator<128, 4>("m_axi_concat_wdata"); + mp_m_axi_concat_wdata = new xsc::xsc_concatenator<160, 5>("m_axi_concat_wdata"); mp_m_axi_concat_wdata->in_port[0](m_axi_concat_wdata_out_0); mp_m_axi_concat_wdata->out_port(m_axi_wdata); mp_m_axi_concat_wdata->offset_port(0, 0); - mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<16, 4>("m_axi_concat_wstrb"); + mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<20, 5>("m_axi_concat_wstrb"); mp_m_axi_concat_wstrb->in_port[0](m_axi_concat_wstrb_out_0); mp_m_axi_concat_wstrb->out_port(m_axi_wstrb); mp_m_axi_concat_wstrb->offset_port(0, 0); - mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_wvalid"); + mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_wvalid"); mp_m_axi_concat_wvalid->in_port[0](m_axi_concat_wvalid_out_0); mp_m_axi_concat_wvalid->out_port(m_axi_wvalid); mp_m_axi_concat_wvalid->offset_port(0, 0); - mp_m_axi_split_wready = new xsc::xsc_split<4, 4>("m_axi_split_wready"); + mp_m_axi_split_wready = new xsc::xsc_split<5, 5>("m_axi_split_wready"); mp_m_axi_split_wready->in_port(m_axi_wready); mp_m_axi_split_wready->out_port[0](m_axi_split_wready_out_0); mp_m_axi_split_wready->add_mask(0,1,0); - mp_m_axi_split_bresp = new xsc::xsc_split<8, 4>("m_axi_split_bresp"); + mp_m_axi_split_bresp = new xsc::xsc_split<10, 5>("m_axi_split_bresp"); mp_m_axi_split_bresp->in_port(m_axi_bresp); mp_m_axi_split_bresp->out_port[0](m_axi_split_bresp_out_0); mp_m_axi_split_bresp->add_mask(0,2,0); - mp_m_axi_split_bvalid = new xsc::xsc_split<4, 4>("m_axi_split_bvalid"); + mp_m_axi_split_bvalid = new xsc::xsc_split<5, 5>("m_axi_split_bvalid"); mp_m_axi_split_bvalid->in_port(m_axi_bvalid); mp_m_axi_split_bvalid->out_port[0](m_axi_split_bvalid_out_0); mp_m_axi_split_bvalid->add_mask(0,1,0); - mp_m_axi_concat_bready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_bready"); + mp_m_axi_concat_bready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_bready"); mp_m_axi_concat_bready->in_port[0](m_axi_concat_bready_out_0); mp_m_axi_concat_bready->out_port(m_axi_bready); mp_m_axi_concat_bready->offset_port(0, 0); - mp_m_axi_concat_araddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_araddr"); + mp_m_axi_concat_araddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_araddr"); mp_m_axi_concat_araddr->in_port[0](m_axi_concat_araddr_out_0); mp_m_axi_concat_araddr->out_port(m_axi_araddr); mp_m_axi_concat_araddr->offset_port(0, 0); - mp_m_axi_concat_arprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_arprot"); + mp_m_axi_concat_arprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_arprot"); mp_m_axi_concat_arprot->in_port[0](m_axi_concat_arprot_out_0); mp_m_axi_concat_arprot->out_port(m_axi_arprot); mp_m_axi_concat_arprot->offset_port(0, 0); - mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_arvalid"); + mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_arvalid"); mp_m_axi_concat_arvalid->in_port[0](m_axi_concat_arvalid_out_0); mp_m_axi_concat_arvalid->out_port(m_axi_arvalid); mp_m_axi_concat_arvalid->offset_port(0, 0); - mp_m_axi_split_arready = new xsc::xsc_split<4, 4>("m_axi_split_arready"); + mp_m_axi_split_arready = new xsc::xsc_split<5, 5>("m_axi_split_arready"); mp_m_axi_split_arready->in_port(m_axi_arready); mp_m_axi_split_arready->out_port[0](m_axi_split_arready_out_0); mp_m_axi_split_arready->add_mask(0,1,0); - mp_m_axi_split_rdata = new xsc::xsc_split<128, 4>("m_axi_split_rdata"); + mp_m_axi_split_rdata = new xsc::xsc_split<160, 5>("m_axi_split_rdata"); mp_m_axi_split_rdata->in_port(m_axi_rdata); mp_m_axi_split_rdata->out_port[0](m_axi_split_rdata_out_0); mp_m_axi_split_rdata->add_mask(0,32,0); - mp_m_axi_split_rresp = new xsc::xsc_split<8, 4>("m_axi_split_rresp"); + mp_m_axi_split_rresp = new xsc::xsc_split<10, 5>("m_axi_split_rresp"); mp_m_axi_split_rresp->in_port(m_axi_rresp); mp_m_axi_split_rresp->out_port[0](m_axi_split_rresp_out_0); mp_m_axi_split_rresp->add_mask(0,2,0); - mp_m_axi_split_rvalid = new xsc::xsc_split<4, 4>("m_axi_split_rvalid"); + mp_m_axi_split_rvalid = new xsc::xsc_split<5, 5>("m_axi_split_rvalid"); mp_m_axi_split_rvalid->in_port(m_axi_rvalid); mp_m_axi_split_rvalid->out_port[0](m_axi_split_rvalid_out_0); mp_m_axi_split_rvalid->add_mask(0,1,0); - mp_m_axi_concat_rready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_rready"); + mp_m_axi_concat_rready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_rready"); mp_m_axi_concat_rready->in_port[0](m_axi_concat_rready_out_0); mp_m_axi_concat_rready->out_port(m_axi_rready); mp_m_axi_concat_rready->offset_port(0, 0); @@ -1382,6 +1601,52 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_split_rvalid->add_mask(3,4,3); mp_m_axi_concat_rready->in_port[3](m_axi_concat_rready_out_3); mp_m_axi_concat_rready->offset_port(3, 3); + mp_m_axi_concat_awaddr->in_port[4](m_axi_concat_awaddr_out_4); + mp_m_axi_concat_awaddr->offset_port(4, 128); + mp_m_axi_concat_awprot->in_port[4](m_axi_concat_awprot_out_4); + mp_m_axi_concat_awprot->offset_port(4, 12); + mp_m_axi_concat_awvalid->in_port[4](m_axi_concat_awvalid_out_4); + mp_m_axi_concat_awvalid->offset_port(4, 4); + + mp_m_axi_split_awready->out_port[4](m_axi_split_awready_out_4); + mp_m_axi_split_awready->add_mask(4,5,4); + mp_m_axi_concat_wdata->in_port[4](m_axi_concat_wdata_out_4); + mp_m_axi_concat_wdata->offset_port(4, 128); + mp_m_axi_concat_wstrb->in_port[4](m_axi_concat_wstrb_out_4); + mp_m_axi_concat_wstrb->offset_port(4, 16); + mp_m_axi_concat_wvalid->in_port[4](m_axi_concat_wvalid_out_4); + mp_m_axi_concat_wvalid->offset_port(4, 4); + + mp_m_axi_split_wready->out_port[4](m_axi_split_wready_out_4); + mp_m_axi_split_wready->add_mask(4,5,4); + + mp_m_axi_split_bresp->out_port[4](m_axi_split_bresp_out_4); + mp_m_axi_split_bresp->add_mask(4,10,8); + + mp_m_axi_split_bvalid->out_port[4](m_axi_split_bvalid_out_4); + mp_m_axi_split_bvalid->add_mask(4,5,4); + mp_m_axi_concat_bready->in_port[4](m_axi_concat_bready_out_4); + mp_m_axi_concat_bready->offset_port(4, 4); + mp_m_axi_concat_araddr->in_port[4](m_axi_concat_araddr_out_4); + mp_m_axi_concat_araddr->offset_port(4, 128); + mp_m_axi_concat_arprot->in_port[4](m_axi_concat_arprot_out_4); + mp_m_axi_concat_arprot->offset_port(4, 12); + mp_m_axi_concat_arvalid->in_port[4](m_axi_concat_arvalid_out_4); + mp_m_axi_concat_arvalid->offset_port(4, 4); + + mp_m_axi_split_arready->out_port[4](m_axi_split_arready_out_4); + mp_m_axi_split_arready->add_mask(4,5,4); + + mp_m_axi_split_rdata->out_port[4](m_axi_split_rdata_out_4); + mp_m_axi_split_rdata->add_mask(4,160,128); + + mp_m_axi_split_rresp->out_port[4](m_axi_split_rresp_out_4); + mp_m_axi_split_rresp->add_mask(4,10,8); + + mp_m_axi_split_rvalid->out_port[4](m_axi_split_rvalid_out_4); + mp_m_axi_split_rvalid->add_mask(4,5,4); + mp_m_axi_concat_rready->in_port[4](m_axi_concat_rready_out_4); + mp_m_axi_concat_rready->offset_port(4, 4); // initialize socket stubs @@ -1540,79 +1805,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M00_AXI' transactor ports - mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_0"); + mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_0"); mp_m_axi_awaddr_converter_0->vector_in(m_m_axi_awaddr_converter_0_signal); mp_m_axi_awaddr_converter_0->vector_out(m_axi_concat_awaddr_out_0); mp_M00_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_0_signal); - mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_0"); + mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_0"); mp_m_axi_awprot_converter_0->vector_in(m_m_axi_awprot_converter_0_signal); mp_m_axi_awprot_converter_0->vector_out(m_axi_concat_awprot_out_0); mp_M00_AXI_transactor->AWPROT(m_m_axi_awprot_converter_0_signal); - mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_0"); + mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_0"); mp_m_axi_awvalid_converter_0->scalar_in(m_m_axi_awvalid_converter_0_signal); mp_m_axi_awvalid_converter_0->vector_out(m_axi_concat_awvalid_out_0); mp_M00_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_0_signal); - mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_0"); + mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_0"); mp_m_axi_awready_converter_0->vector_in(m_axi_split_awready_out_0); mp_m_axi_awready_converter_0->scalar_out(m_m_axi_awready_converter_0_signal); mp_M00_AXI_transactor->AWREADY(m_m_axi_awready_converter_0_signal); - mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_0"); + mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_0"); mp_m_axi_wdata_converter_0->vector_in(m_m_axi_wdata_converter_0_signal); mp_m_axi_wdata_converter_0->vector_out(m_axi_concat_wdata_out_0); mp_M00_AXI_transactor->WDATA(m_m_axi_wdata_converter_0_signal); - mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_0"); + mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_0"); mp_m_axi_wstrb_converter_0->vector_in(m_m_axi_wstrb_converter_0_signal); mp_m_axi_wstrb_converter_0->vector_out(m_axi_concat_wstrb_out_0); mp_M00_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_0_signal); - mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_0"); + mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_0"); mp_m_axi_wvalid_converter_0->scalar_in(m_m_axi_wvalid_converter_0_signal); mp_m_axi_wvalid_converter_0->vector_out(m_axi_concat_wvalid_out_0); mp_M00_AXI_transactor->WVALID(m_m_axi_wvalid_converter_0_signal); - mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_0"); + mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_0"); mp_m_axi_wready_converter_0->vector_in(m_axi_split_wready_out_0); mp_m_axi_wready_converter_0->scalar_out(m_m_axi_wready_converter_0_signal); mp_M00_AXI_transactor->WREADY(m_m_axi_wready_converter_0_signal); - mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_0"); + mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_0"); mp_m_axi_bresp_converter_0->vector_in(m_axi_split_bresp_out_0); mp_m_axi_bresp_converter_0->vector_out(m_m_axi_bresp_converter_0_signal); mp_M00_AXI_transactor->BRESP(m_m_axi_bresp_converter_0_signal); - mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_0"); + mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_0"); mp_m_axi_bvalid_converter_0->vector_in(m_axi_split_bvalid_out_0); mp_m_axi_bvalid_converter_0->scalar_out(m_m_axi_bvalid_converter_0_signal); mp_M00_AXI_transactor->BVALID(m_m_axi_bvalid_converter_0_signal); - mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_0"); + mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_0"); mp_m_axi_bready_converter_0->scalar_in(m_m_axi_bready_converter_0_signal); mp_m_axi_bready_converter_0->vector_out(m_axi_concat_bready_out_0); mp_M00_AXI_transactor->BREADY(m_m_axi_bready_converter_0_signal); - mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_0"); + mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_0"); mp_m_axi_araddr_converter_0->vector_in(m_m_axi_araddr_converter_0_signal); mp_m_axi_araddr_converter_0->vector_out(m_axi_concat_araddr_out_0); mp_M00_AXI_transactor->ARADDR(m_m_axi_araddr_converter_0_signal); - mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_0"); + mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_0"); mp_m_axi_arprot_converter_0->vector_in(m_m_axi_arprot_converter_0_signal); mp_m_axi_arprot_converter_0->vector_out(m_axi_concat_arprot_out_0); mp_M00_AXI_transactor->ARPROT(m_m_axi_arprot_converter_0_signal); - mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_0"); + mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_0"); mp_m_axi_arvalid_converter_0->scalar_in(m_m_axi_arvalid_converter_0_signal); mp_m_axi_arvalid_converter_0->vector_out(m_axi_concat_arvalid_out_0); mp_M00_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_0_signal); - mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_0"); + mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_0"); mp_m_axi_arready_converter_0->vector_in(m_axi_split_arready_out_0); mp_m_axi_arready_converter_0->scalar_out(m_m_axi_arready_converter_0_signal); mp_M00_AXI_transactor->ARREADY(m_m_axi_arready_converter_0_signal); - mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_0"); + mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_0"); mp_m_axi_rdata_converter_0->vector_in(m_axi_split_rdata_out_0); mp_m_axi_rdata_converter_0->vector_out(m_m_axi_rdata_converter_0_signal); mp_M00_AXI_transactor->RDATA(m_m_axi_rdata_converter_0_signal); - mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_0"); + mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_0"); mp_m_axi_rresp_converter_0->vector_in(m_axi_split_rresp_out_0); mp_m_axi_rresp_converter_0->vector_out(m_m_axi_rresp_converter_0_signal); mp_M00_AXI_transactor->RRESP(m_m_axi_rresp_converter_0_signal); - mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_0"); + mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_0"); mp_m_axi_rvalid_converter_0->vector_in(m_axi_split_rvalid_out_0); mp_m_axi_rvalid_converter_0->scalar_out(m_m_axi_rvalid_converter_0_signal); mp_M00_AXI_transactor->RVALID(m_m_axi_rvalid_converter_0_signal); - mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_0"); + mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_0"); mp_m_axi_rready_converter_0->scalar_in(m_m_axi_rready_converter_0_signal); mp_m_axi_rready_converter_0->vector_out(m_axi_concat_rready_out_0); mp_M00_AXI_transactor->RREADY(m_m_axi_rready_converter_0_signal); @@ -1673,79 +1938,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M01_AXI' transactor ports - mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_1"); + mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_1"); mp_m_axi_awaddr_converter_1->vector_in(m_m_axi_awaddr_converter_1_signal); mp_m_axi_awaddr_converter_1->vector_out(m_axi_concat_awaddr_out_1); mp_M01_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_1_signal); - mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_1"); + mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_1"); mp_m_axi_awprot_converter_1->vector_in(m_m_axi_awprot_converter_1_signal); mp_m_axi_awprot_converter_1->vector_out(m_axi_concat_awprot_out_1); mp_M01_AXI_transactor->AWPROT(m_m_axi_awprot_converter_1_signal); - mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_1"); + mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_1"); mp_m_axi_awvalid_converter_1->scalar_in(m_m_axi_awvalid_converter_1_signal); mp_m_axi_awvalid_converter_1->vector_out(m_axi_concat_awvalid_out_1); mp_M01_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_1_signal); - mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_1"); + mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_1"); mp_m_axi_awready_converter_1->vector_in(m_axi_split_awready_out_1); mp_m_axi_awready_converter_1->scalar_out(m_m_axi_awready_converter_1_signal); mp_M01_AXI_transactor->AWREADY(m_m_axi_awready_converter_1_signal); - mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_1"); + mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_1"); mp_m_axi_wdata_converter_1->vector_in(m_m_axi_wdata_converter_1_signal); mp_m_axi_wdata_converter_1->vector_out(m_axi_concat_wdata_out_1); mp_M01_AXI_transactor->WDATA(m_m_axi_wdata_converter_1_signal); - mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_1"); + mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_1"); mp_m_axi_wstrb_converter_1->vector_in(m_m_axi_wstrb_converter_1_signal); mp_m_axi_wstrb_converter_1->vector_out(m_axi_concat_wstrb_out_1); mp_M01_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_1_signal); - mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_1"); + mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_1"); mp_m_axi_wvalid_converter_1->scalar_in(m_m_axi_wvalid_converter_1_signal); mp_m_axi_wvalid_converter_1->vector_out(m_axi_concat_wvalid_out_1); mp_M01_AXI_transactor->WVALID(m_m_axi_wvalid_converter_1_signal); - mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_1"); + mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_1"); mp_m_axi_wready_converter_1->vector_in(m_axi_split_wready_out_1); mp_m_axi_wready_converter_1->scalar_out(m_m_axi_wready_converter_1_signal); mp_M01_AXI_transactor->WREADY(m_m_axi_wready_converter_1_signal); - mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_1"); + mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_1"); mp_m_axi_bresp_converter_1->vector_in(m_axi_split_bresp_out_1); mp_m_axi_bresp_converter_1->vector_out(m_m_axi_bresp_converter_1_signal); mp_M01_AXI_transactor->BRESP(m_m_axi_bresp_converter_1_signal); - mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_1"); + mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_1"); mp_m_axi_bvalid_converter_1->vector_in(m_axi_split_bvalid_out_1); mp_m_axi_bvalid_converter_1->scalar_out(m_m_axi_bvalid_converter_1_signal); mp_M01_AXI_transactor->BVALID(m_m_axi_bvalid_converter_1_signal); - mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_1"); + mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_1"); mp_m_axi_bready_converter_1->scalar_in(m_m_axi_bready_converter_1_signal); mp_m_axi_bready_converter_1->vector_out(m_axi_concat_bready_out_1); mp_M01_AXI_transactor->BREADY(m_m_axi_bready_converter_1_signal); - mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_1"); + mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_1"); mp_m_axi_araddr_converter_1->vector_in(m_m_axi_araddr_converter_1_signal); mp_m_axi_araddr_converter_1->vector_out(m_axi_concat_araddr_out_1); mp_M01_AXI_transactor->ARADDR(m_m_axi_araddr_converter_1_signal); - mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_1"); + mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_1"); mp_m_axi_arprot_converter_1->vector_in(m_m_axi_arprot_converter_1_signal); mp_m_axi_arprot_converter_1->vector_out(m_axi_concat_arprot_out_1); mp_M01_AXI_transactor->ARPROT(m_m_axi_arprot_converter_1_signal); - mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_1"); + mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_1"); mp_m_axi_arvalid_converter_1->scalar_in(m_m_axi_arvalid_converter_1_signal); mp_m_axi_arvalid_converter_1->vector_out(m_axi_concat_arvalid_out_1); mp_M01_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_1_signal); - mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_1"); + mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_1"); mp_m_axi_arready_converter_1->vector_in(m_axi_split_arready_out_1); mp_m_axi_arready_converter_1->scalar_out(m_m_axi_arready_converter_1_signal); mp_M01_AXI_transactor->ARREADY(m_m_axi_arready_converter_1_signal); - mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_1"); + mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_1"); mp_m_axi_rdata_converter_1->vector_in(m_axi_split_rdata_out_1); mp_m_axi_rdata_converter_1->vector_out(m_m_axi_rdata_converter_1_signal); mp_M01_AXI_transactor->RDATA(m_m_axi_rdata_converter_1_signal); - mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_1"); + mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_1"); mp_m_axi_rresp_converter_1->vector_in(m_axi_split_rresp_out_1); mp_m_axi_rresp_converter_1->vector_out(m_m_axi_rresp_converter_1_signal); mp_M01_AXI_transactor->RRESP(m_m_axi_rresp_converter_1_signal); - mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_1"); + mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_1"); mp_m_axi_rvalid_converter_1->vector_in(m_axi_split_rvalid_out_1); mp_m_axi_rvalid_converter_1->scalar_out(m_m_axi_rvalid_converter_1_signal); mp_M01_AXI_transactor->RVALID(m_m_axi_rvalid_converter_1_signal); - mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_1"); + mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_1"); mp_m_axi_rready_converter_1->scalar_in(m_m_axi_rready_converter_1_signal); mp_m_axi_rready_converter_1->vector_out(m_axi_concat_rready_out_1); mp_M01_AXI_transactor->RREADY(m_m_axi_rready_converter_1_signal); @@ -1806,79 +2071,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M02_AXI' transactor ports - mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_2"); + mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_2"); mp_m_axi_awaddr_converter_2->vector_in(m_m_axi_awaddr_converter_2_signal); mp_m_axi_awaddr_converter_2->vector_out(m_axi_concat_awaddr_out_2); mp_M02_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_2_signal); - mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_2"); + mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_2"); mp_m_axi_awprot_converter_2->vector_in(m_m_axi_awprot_converter_2_signal); mp_m_axi_awprot_converter_2->vector_out(m_axi_concat_awprot_out_2); mp_M02_AXI_transactor->AWPROT(m_m_axi_awprot_converter_2_signal); - mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_2"); + mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_2"); mp_m_axi_awvalid_converter_2->scalar_in(m_m_axi_awvalid_converter_2_signal); mp_m_axi_awvalid_converter_2->vector_out(m_axi_concat_awvalid_out_2); mp_M02_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_2_signal); - mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_2"); + mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_2"); mp_m_axi_awready_converter_2->vector_in(m_axi_split_awready_out_2); mp_m_axi_awready_converter_2->scalar_out(m_m_axi_awready_converter_2_signal); mp_M02_AXI_transactor->AWREADY(m_m_axi_awready_converter_2_signal); - mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_2"); + mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_2"); mp_m_axi_wdata_converter_2->vector_in(m_m_axi_wdata_converter_2_signal); mp_m_axi_wdata_converter_2->vector_out(m_axi_concat_wdata_out_2); mp_M02_AXI_transactor->WDATA(m_m_axi_wdata_converter_2_signal); - mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_2"); + mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_2"); mp_m_axi_wstrb_converter_2->vector_in(m_m_axi_wstrb_converter_2_signal); mp_m_axi_wstrb_converter_2->vector_out(m_axi_concat_wstrb_out_2); mp_M02_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_2_signal); - mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_2"); + mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_2"); mp_m_axi_wvalid_converter_2->scalar_in(m_m_axi_wvalid_converter_2_signal); mp_m_axi_wvalid_converter_2->vector_out(m_axi_concat_wvalid_out_2); mp_M02_AXI_transactor->WVALID(m_m_axi_wvalid_converter_2_signal); - mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_2"); + mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_2"); mp_m_axi_wready_converter_2->vector_in(m_axi_split_wready_out_2); mp_m_axi_wready_converter_2->scalar_out(m_m_axi_wready_converter_2_signal); mp_M02_AXI_transactor->WREADY(m_m_axi_wready_converter_2_signal); - mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_2"); + mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_2"); mp_m_axi_bresp_converter_2->vector_in(m_axi_split_bresp_out_2); mp_m_axi_bresp_converter_2->vector_out(m_m_axi_bresp_converter_2_signal); mp_M02_AXI_transactor->BRESP(m_m_axi_bresp_converter_2_signal); - mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_2"); + mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_2"); mp_m_axi_bvalid_converter_2->vector_in(m_axi_split_bvalid_out_2); mp_m_axi_bvalid_converter_2->scalar_out(m_m_axi_bvalid_converter_2_signal); mp_M02_AXI_transactor->BVALID(m_m_axi_bvalid_converter_2_signal); - mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_2"); + mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_2"); mp_m_axi_bready_converter_2->scalar_in(m_m_axi_bready_converter_2_signal); mp_m_axi_bready_converter_2->vector_out(m_axi_concat_bready_out_2); mp_M02_AXI_transactor->BREADY(m_m_axi_bready_converter_2_signal); - mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_2"); + mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_2"); mp_m_axi_araddr_converter_2->vector_in(m_m_axi_araddr_converter_2_signal); mp_m_axi_araddr_converter_2->vector_out(m_axi_concat_araddr_out_2); mp_M02_AXI_transactor->ARADDR(m_m_axi_araddr_converter_2_signal); - mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_2"); + mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_2"); mp_m_axi_arprot_converter_2->vector_in(m_m_axi_arprot_converter_2_signal); mp_m_axi_arprot_converter_2->vector_out(m_axi_concat_arprot_out_2); mp_M02_AXI_transactor->ARPROT(m_m_axi_arprot_converter_2_signal); - mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_2"); + mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_2"); mp_m_axi_arvalid_converter_2->scalar_in(m_m_axi_arvalid_converter_2_signal); mp_m_axi_arvalid_converter_2->vector_out(m_axi_concat_arvalid_out_2); mp_M02_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_2_signal); - mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_2"); + mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_2"); mp_m_axi_arready_converter_2->vector_in(m_axi_split_arready_out_2); mp_m_axi_arready_converter_2->scalar_out(m_m_axi_arready_converter_2_signal); mp_M02_AXI_transactor->ARREADY(m_m_axi_arready_converter_2_signal); - mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_2"); + mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_2"); mp_m_axi_rdata_converter_2->vector_in(m_axi_split_rdata_out_2); mp_m_axi_rdata_converter_2->vector_out(m_m_axi_rdata_converter_2_signal); mp_M02_AXI_transactor->RDATA(m_m_axi_rdata_converter_2_signal); - mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_2"); + mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_2"); mp_m_axi_rresp_converter_2->vector_in(m_axi_split_rresp_out_2); mp_m_axi_rresp_converter_2->vector_out(m_m_axi_rresp_converter_2_signal); mp_M02_AXI_transactor->RRESP(m_m_axi_rresp_converter_2_signal); - mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_2"); + mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_2"); mp_m_axi_rvalid_converter_2->vector_in(m_axi_split_rvalid_out_2); mp_m_axi_rvalid_converter_2->scalar_out(m_m_axi_rvalid_converter_2_signal); mp_M02_AXI_transactor->RVALID(m_m_axi_rvalid_converter_2_signal); - mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_2"); + mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_2"); mp_m_axi_rready_converter_2->scalar_in(m_m_axi_rready_converter_2_signal); mp_m_axi_rready_converter_2->vector_out(m_axi_concat_rready_out_2); mp_M02_AXI_transactor->RREADY(m_m_axi_rready_converter_2_signal); @@ -1921,8 +2186,8 @@ void mb_design_1_xbar_0::before_end_of_elaboration() M03_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); M03_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); M03_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); - M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); - M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "2"); + M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "2"); M03_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); M03_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); M03_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); @@ -1939,79 +2204,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M03_AXI' transactor ports - mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_3"); + mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_3"); mp_m_axi_awaddr_converter_3->vector_in(m_m_axi_awaddr_converter_3_signal); mp_m_axi_awaddr_converter_3->vector_out(m_axi_concat_awaddr_out_3); mp_M03_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_3_signal); - mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_3"); + mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_3"); mp_m_axi_awprot_converter_3->vector_in(m_m_axi_awprot_converter_3_signal); mp_m_axi_awprot_converter_3->vector_out(m_axi_concat_awprot_out_3); mp_M03_AXI_transactor->AWPROT(m_m_axi_awprot_converter_3_signal); - mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_3"); + mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_3"); mp_m_axi_awvalid_converter_3->scalar_in(m_m_axi_awvalid_converter_3_signal); mp_m_axi_awvalid_converter_3->vector_out(m_axi_concat_awvalid_out_3); mp_M03_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_3_signal); - mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_3"); + mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_3"); mp_m_axi_awready_converter_3->vector_in(m_axi_split_awready_out_3); mp_m_axi_awready_converter_3->scalar_out(m_m_axi_awready_converter_3_signal); mp_M03_AXI_transactor->AWREADY(m_m_axi_awready_converter_3_signal); - mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_3"); + mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_3"); mp_m_axi_wdata_converter_3->vector_in(m_m_axi_wdata_converter_3_signal); mp_m_axi_wdata_converter_3->vector_out(m_axi_concat_wdata_out_3); mp_M03_AXI_transactor->WDATA(m_m_axi_wdata_converter_3_signal); - mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_3"); + mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_3"); mp_m_axi_wstrb_converter_3->vector_in(m_m_axi_wstrb_converter_3_signal); mp_m_axi_wstrb_converter_3->vector_out(m_axi_concat_wstrb_out_3); mp_M03_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_3_signal); - mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_3"); + mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_3"); mp_m_axi_wvalid_converter_3->scalar_in(m_m_axi_wvalid_converter_3_signal); mp_m_axi_wvalid_converter_3->vector_out(m_axi_concat_wvalid_out_3); mp_M03_AXI_transactor->WVALID(m_m_axi_wvalid_converter_3_signal); - mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_3"); + mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_3"); mp_m_axi_wready_converter_3->vector_in(m_axi_split_wready_out_3); mp_m_axi_wready_converter_3->scalar_out(m_m_axi_wready_converter_3_signal); mp_M03_AXI_transactor->WREADY(m_m_axi_wready_converter_3_signal); - mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_3"); + mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_3"); mp_m_axi_bresp_converter_3->vector_in(m_axi_split_bresp_out_3); mp_m_axi_bresp_converter_3->vector_out(m_m_axi_bresp_converter_3_signal); mp_M03_AXI_transactor->BRESP(m_m_axi_bresp_converter_3_signal); - mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_3"); + mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_3"); mp_m_axi_bvalid_converter_3->vector_in(m_axi_split_bvalid_out_3); mp_m_axi_bvalid_converter_3->scalar_out(m_m_axi_bvalid_converter_3_signal); mp_M03_AXI_transactor->BVALID(m_m_axi_bvalid_converter_3_signal); - mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_3"); + mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_3"); mp_m_axi_bready_converter_3->scalar_in(m_m_axi_bready_converter_3_signal); mp_m_axi_bready_converter_3->vector_out(m_axi_concat_bready_out_3); mp_M03_AXI_transactor->BREADY(m_m_axi_bready_converter_3_signal); - mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_3"); + mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_3"); mp_m_axi_araddr_converter_3->vector_in(m_m_axi_araddr_converter_3_signal); mp_m_axi_araddr_converter_3->vector_out(m_axi_concat_araddr_out_3); mp_M03_AXI_transactor->ARADDR(m_m_axi_araddr_converter_3_signal); - mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_3"); + mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_3"); mp_m_axi_arprot_converter_3->vector_in(m_m_axi_arprot_converter_3_signal); mp_m_axi_arprot_converter_3->vector_out(m_axi_concat_arprot_out_3); mp_M03_AXI_transactor->ARPROT(m_m_axi_arprot_converter_3_signal); - mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_3"); + mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_3"); mp_m_axi_arvalid_converter_3->scalar_in(m_m_axi_arvalid_converter_3_signal); mp_m_axi_arvalid_converter_3->vector_out(m_axi_concat_arvalid_out_3); mp_M03_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_3_signal); - mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_3"); + mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_3"); mp_m_axi_arready_converter_3->vector_in(m_axi_split_arready_out_3); mp_m_axi_arready_converter_3->scalar_out(m_m_axi_arready_converter_3_signal); mp_M03_AXI_transactor->ARREADY(m_m_axi_arready_converter_3_signal); - mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_3"); + mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_3"); mp_m_axi_rdata_converter_3->vector_in(m_axi_split_rdata_out_3); mp_m_axi_rdata_converter_3->vector_out(m_m_axi_rdata_converter_3_signal); mp_M03_AXI_transactor->RDATA(m_m_axi_rdata_converter_3_signal); - mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_3"); + mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_3"); mp_m_axi_rresp_converter_3->vector_in(m_axi_split_rresp_out_3); mp_m_axi_rresp_converter_3->vector_out(m_m_axi_rresp_converter_3_signal); mp_M03_AXI_transactor->RRESP(m_m_axi_rresp_converter_3_signal); - mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_3"); + mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_3"); mp_m_axi_rvalid_converter_3->vector_in(m_axi_split_rvalid_out_3); mp_m_axi_rvalid_converter_3->scalar_out(m_m_axi_rvalid_converter_3_signal); mp_M03_AXI_transactor->RVALID(m_m_axi_rvalid_converter_3_signal); - mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_3"); + mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_3"); mp_m_axi_rready_converter_3->scalar_in(m_m_axi_rready_converter_3_signal); mp_m_axi_rready_converter_3->vector_out(m_axi_concat_rready_out_3); mp_M03_AXI_transactor->RREADY(m_m_axi_rready_converter_3_signal); @@ -2027,6 +2292,139 @@ void mb_design_1_xbar_0::before_end_of_elaboration() { } + // configure 'M04_AXI' transactor + + if (xsc::utils::xsc_sim_manager::getInstanceParameterInt("mb_design_1_xbar_0", "M04_AXI_TLM_MODE") != 1) + { + // Instantiate Socket Stubs + + // 'M04_AXI' transactor parameters + xsc::common_cpp::properties M04_AXI_transactor_param_props; + M04_AXI_transactor_param_props.addLong("DATA_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("FREQ_HZ", "100000000"); + M04_AXI_transactor_param_props.addLong("ID_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ADDR_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("AWUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ARUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("RUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("BUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("HAS_BURST", "0"); + M04_AXI_transactor_param_props.addLong("HAS_LOCK", "0"); + M04_AXI_transactor_param_props.addLong("HAS_PROT", "1"); + M04_AXI_transactor_param_props.addLong("HAS_CACHE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_QOS", "0"); + M04_AXI_transactor_param_props.addLong("HAS_REGION", "0"); + M04_AXI_transactor_param_props.addLong("HAS_WSTRB", "1"); + M04_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); + M04_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); + M04_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); + M04_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); + M04_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("RUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_SIZE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_RESET", "1"); + M04_AXI_transactor_param_props.addFloat("PHASE", "0.0"); + M04_AXI_transactor_param_props.addString("PROTOCOL", "AXI4LITE"); + M04_AXI_transactor_param_props.addString("READ_WRITE_MODE", "READ_WRITE"); + M04_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); + + mp_M04_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M04_AXI_transactor", M04_AXI_transactor_param_props); + + // M04_AXI' transactor ports + + mp_m_axi_awaddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_4"); + mp_m_axi_awaddr_converter_4->vector_in(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awaddr_converter_4->vector_out(m_axi_concat_awaddr_out_4); + mp_M04_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_4"); + mp_m_axi_awprot_converter_4->vector_in(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awprot_converter_4->vector_out(m_axi_concat_awprot_out_4); + mp_M04_AXI_transactor->AWPROT(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_4"); + mp_m_axi_awvalid_converter_4->scalar_in(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awvalid_converter_4->vector_out(m_axi_concat_awvalid_out_4); + mp_M04_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_4"); + mp_m_axi_awready_converter_4->vector_in(m_axi_split_awready_out_4); + mp_m_axi_awready_converter_4->scalar_out(m_m_axi_awready_converter_4_signal); + mp_M04_AXI_transactor->AWREADY(m_m_axi_awready_converter_4_signal); + mp_m_axi_wdata_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_4"); + mp_m_axi_wdata_converter_4->vector_in(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wdata_converter_4->vector_out(m_axi_concat_wdata_out_4); + mp_M04_AXI_transactor->WDATA(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wstrb_converter_4 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_4"); + mp_m_axi_wstrb_converter_4->vector_in(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wstrb_converter_4->vector_out(m_axi_concat_wstrb_out_4); + mp_M04_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_4"); + mp_m_axi_wvalid_converter_4->scalar_in(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wvalid_converter_4->vector_out(m_axi_concat_wvalid_out_4); + mp_M04_AXI_transactor->WVALID(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_4"); + mp_m_axi_wready_converter_4->vector_in(m_axi_split_wready_out_4); + mp_m_axi_wready_converter_4->scalar_out(m_m_axi_wready_converter_4_signal); + mp_M04_AXI_transactor->WREADY(m_m_axi_wready_converter_4_signal); + mp_m_axi_bresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_4"); + mp_m_axi_bresp_converter_4->vector_in(m_axi_split_bresp_out_4); + mp_m_axi_bresp_converter_4->vector_out(m_m_axi_bresp_converter_4_signal); + mp_M04_AXI_transactor->BRESP(m_m_axi_bresp_converter_4_signal); + mp_m_axi_bvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_4"); + mp_m_axi_bvalid_converter_4->vector_in(m_axi_split_bvalid_out_4); + mp_m_axi_bvalid_converter_4->scalar_out(m_m_axi_bvalid_converter_4_signal); + mp_M04_AXI_transactor->BVALID(m_m_axi_bvalid_converter_4_signal); + mp_m_axi_bready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_4"); + mp_m_axi_bready_converter_4->scalar_in(m_m_axi_bready_converter_4_signal); + mp_m_axi_bready_converter_4->vector_out(m_axi_concat_bready_out_4); + mp_M04_AXI_transactor->BREADY(m_m_axi_bready_converter_4_signal); + mp_m_axi_araddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_4"); + mp_m_axi_araddr_converter_4->vector_in(m_m_axi_araddr_converter_4_signal); + mp_m_axi_araddr_converter_4->vector_out(m_axi_concat_araddr_out_4); + mp_M04_AXI_transactor->ARADDR(m_m_axi_araddr_converter_4_signal); + mp_m_axi_arprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_4"); + mp_m_axi_arprot_converter_4->vector_in(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arprot_converter_4->vector_out(m_axi_concat_arprot_out_4); + mp_M04_AXI_transactor->ARPROT(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_4"); + mp_m_axi_arvalid_converter_4->scalar_in(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arvalid_converter_4->vector_out(m_axi_concat_arvalid_out_4); + mp_M04_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_4"); + mp_m_axi_arready_converter_4->vector_in(m_axi_split_arready_out_4); + mp_m_axi_arready_converter_4->scalar_out(m_m_axi_arready_converter_4_signal); + mp_M04_AXI_transactor->ARREADY(m_m_axi_arready_converter_4_signal); + mp_m_axi_rdata_converter_4 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_4"); + mp_m_axi_rdata_converter_4->vector_in(m_axi_split_rdata_out_4); + mp_m_axi_rdata_converter_4->vector_out(m_m_axi_rdata_converter_4_signal); + mp_M04_AXI_transactor->RDATA(m_m_axi_rdata_converter_4_signal); + mp_m_axi_rresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_4"); + mp_m_axi_rresp_converter_4->vector_in(m_axi_split_rresp_out_4); + mp_m_axi_rresp_converter_4->vector_out(m_m_axi_rresp_converter_4_signal); + mp_M04_AXI_transactor->RRESP(m_m_axi_rresp_converter_4_signal); + mp_m_axi_rvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_4"); + mp_m_axi_rvalid_converter_4->vector_in(m_axi_split_rvalid_out_4); + mp_m_axi_rvalid_converter_4->scalar_out(m_m_axi_rvalid_converter_4_signal); + mp_M04_AXI_transactor->RVALID(m_m_axi_rvalid_converter_4_signal); + mp_m_axi_rready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_4"); + mp_m_axi_rready_converter_4->scalar_in(m_m_axi_rready_converter_4_signal); + mp_m_axi_rready_converter_4->vector_out(m_axi_concat_rready_out_4); + mp_M04_AXI_transactor->RREADY(m_m_axi_rready_converter_4_signal); + mp_M04_AXI_transactor->CLK(aclk); + mp_M04_AXI_transactor->RST(aresetn); + + // M04_AXI' transactor sockets + + mp_impl->initiator_4_rd_socket->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_impl->initiator_4_wr_socket->bind(*(mp_M04_AXI_transactor->wr_socket)); + } + else + { + } + } #endif // XM_SYSTEMC @@ -2134,6 +2532,26 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_rresp_converter_3 = NULL; mp_m_axi_rvalid_converter_3 = NULL; mp_m_axi_rready_converter_3 = NULL; + mp_M04_AXI_transactor = NULL; + mp_m_axi_awaddr_converter_4 = NULL; + mp_m_axi_awprot_converter_4 = NULL; + mp_m_axi_awvalid_converter_4 = NULL; + mp_m_axi_awready_converter_4 = NULL; + mp_m_axi_wdata_converter_4 = NULL; + mp_m_axi_wstrb_converter_4 = NULL; + mp_m_axi_wvalid_converter_4 = NULL; + mp_m_axi_wready_converter_4 = NULL; + mp_m_axi_bresp_converter_4 = NULL; + mp_m_axi_bvalid_converter_4 = NULL; + mp_m_axi_bready_converter_4 = NULL; + mp_m_axi_araddr_converter_4 = NULL; + mp_m_axi_arprot_converter_4 = NULL; + mp_m_axi_arvalid_converter_4 = NULL; + mp_m_axi_arready_converter_4 = NULL; + mp_m_axi_rdata_converter_4 = NULL; + mp_m_axi_rresp_converter_4 = NULL; + mp_m_axi_rvalid_converter_4 = NULL; + mp_m_axi_rready_converter_4 = NULL; // initialize junctures mp_m_axi_concat_araddr = NULL; @@ -2155,79 +2573,79 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_split_rresp = NULL; mp_m_axi_split_rvalid = NULL; mp_m_axi_split_wready = NULL; - mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_awaddr"); + mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_awaddr"); mp_m_axi_concat_awaddr->in_port[0](m_axi_concat_awaddr_out_0); mp_m_axi_concat_awaddr->out_port(m_axi_awaddr); mp_m_axi_concat_awaddr->offset_port(0, 0); - mp_m_axi_concat_awprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_awprot"); + mp_m_axi_concat_awprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_awprot"); mp_m_axi_concat_awprot->in_port[0](m_axi_concat_awprot_out_0); mp_m_axi_concat_awprot->out_port(m_axi_awprot); mp_m_axi_concat_awprot->offset_port(0, 0); - mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_awvalid"); + mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_awvalid"); mp_m_axi_concat_awvalid->in_port[0](m_axi_concat_awvalid_out_0); mp_m_axi_concat_awvalid->out_port(m_axi_awvalid); mp_m_axi_concat_awvalid->offset_port(0, 0); - mp_m_axi_split_awready = new xsc::xsc_split<4, 4>("m_axi_split_awready"); + mp_m_axi_split_awready = new xsc::xsc_split<5, 5>("m_axi_split_awready"); mp_m_axi_split_awready->in_port(m_axi_awready); mp_m_axi_split_awready->out_port[0](m_axi_split_awready_out_0); mp_m_axi_split_awready->add_mask(0,1,0); - mp_m_axi_concat_wdata = new xsc::xsc_concatenator<128, 4>("m_axi_concat_wdata"); + mp_m_axi_concat_wdata = new xsc::xsc_concatenator<160, 5>("m_axi_concat_wdata"); mp_m_axi_concat_wdata->in_port[0](m_axi_concat_wdata_out_0); mp_m_axi_concat_wdata->out_port(m_axi_wdata); mp_m_axi_concat_wdata->offset_port(0, 0); - mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<16, 4>("m_axi_concat_wstrb"); + mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<20, 5>("m_axi_concat_wstrb"); mp_m_axi_concat_wstrb->in_port[0](m_axi_concat_wstrb_out_0); mp_m_axi_concat_wstrb->out_port(m_axi_wstrb); mp_m_axi_concat_wstrb->offset_port(0, 0); - mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_wvalid"); + mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_wvalid"); mp_m_axi_concat_wvalid->in_port[0](m_axi_concat_wvalid_out_0); mp_m_axi_concat_wvalid->out_port(m_axi_wvalid); mp_m_axi_concat_wvalid->offset_port(0, 0); - mp_m_axi_split_wready = new xsc::xsc_split<4, 4>("m_axi_split_wready"); + mp_m_axi_split_wready = new xsc::xsc_split<5, 5>("m_axi_split_wready"); mp_m_axi_split_wready->in_port(m_axi_wready); mp_m_axi_split_wready->out_port[0](m_axi_split_wready_out_0); mp_m_axi_split_wready->add_mask(0,1,0); - mp_m_axi_split_bresp = new xsc::xsc_split<8, 4>("m_axi_split_bresp"); + mp_m_axi_split_bresp = new xsc::xsc_split<10, 5>("m_axi_split_bresp"); mp_m_axi_split_bresp->in_port(m_axi_bresp); mp_m_axi_split_bresp->out_port[0](m_axi_split_bresp_out_0); mp_m_axi_split_bresp->add_mask(0,2,0); - mp_m_axi_split_bvalid = new xsc::xsc_split<4, 4>("m_axi_split_bvalid"); + mp_m_axi_split_bvalid = new xsc::xsc_split<5, 5>("m_axi_split_bvalid"); mp_m_axi_split_bvalid->in_port(m_axi_bvalid); mp_m_axi_split_bvalid->out_port[0](m_axi_split_bvalid_out_0); mp_m_axi_split_bvalid->add_mask(0,1,0); - mp_m_axi_concat_bready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_bready"); + mp_m_axi_concat_bready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_bready"); mp_m_axi_concat_bready->in_port[0](m_axi_concat_bready_out_0); mp_m_axi_concat_bready->out_port(m_axi_bready); mp_m_axi_concat_bready->offset_port(0, 0); - mp_m_axi_concat_araddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_araddr"); + mp_m_axi_concat_araddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_araddr"); mp_m_axi_concat_araddr->in_port[0](m_axi_concat_araddr_out_0); mp_m_axi_concat_araddr->out_port(m_axi_araddr); mp_m_axi_concat_araddr->offset_port(0, 0); - mp_m_axi_concat_arprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_arprot"); + mp_m_axi_concat_arprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_arprot"); mp_m_axi_concat_arprot->in_port[0](m_axi_concat_arprot_out_0); mp_m_axi_concat_arprot->out_port(m_axi_arprot); mp_m_axi_concat_arprot->offset_port(0, 0); - mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_arvalid"); + mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_arvalid"); mp_m_axi_concat_arvalid->in_port[0](m_axi_concat_arvalid_out_0); mp_m_axi_concat_arvalid->out_port(m_axi_arvalid); mp_m_axi_concat_arvalid->offset_port(0, 0); - mp_m_axi_split_arready = new xsc::xsc_split<4, 4>("m_axi_split_arready"); + mp_m_axi_split_arready = new xsc::xsc_split<5, 5>("m_axi_split_arready"); mp_m_axi_split_arready->in_port(m_axi_arready); mp_m_axi_split_arready->out_port[0](m_axi_split_arready_out_0); mp_m_axi_split_arready->add_mask(0,1,0); - mp_m_axi_split_rdata = new xsc::xsc_split<128, 4>("m_axi_split_rdata"); + mp_m_axi_split_rdata = new xsc::xsc_split<160, 5>("m_axi_split_rdata"); mp_m_axi_split_rdata->in_port(m_axi_rdata); mp_m_axi_split_rdata->out_port[0](m_axi_split_rdata_out_0); mp_m_axi_split_rdata->add_mask(0,32,0); - mp_m_axi_split_rresp = new xsc::xsc_split<8, 4>("m_axi_split_rresp"); + mp_m_axi_split_rresp = new xsc::xsc_split<10, 5>("m_axi_split_rresp"); mp_m_axi_split_rresp->in_port(m_axi_rresp); mp_m_axi_split_rresp->out_port[0](m_axi_split_rresp_out_0); mp_m_axi_split_rresp->add_mask(0,2,0); - mp_m_axi_split_rvalid = new xsc::xsc_split<4, 4>("m_axi_split_rvalid"); + mp_m_axi_split_rvalid = new xsc::xsc_split<5, 5>("m_axi_split_rvalid"); mp_m_axi_split_rvalid->in_port(m_axi_rvalid); mp_m_axi_split_rvalid->out_port[0](m_axi_split_rvalid_out_0); mp_m_axi_split_rvalid->add_mask(0,1,0); - mp_m_axi_concat_rready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_rready"); + mp_m_axi_concat_rready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_rready"); mp_m_axi_concat_rready->in_port[0](m_axi_concat_rready_out_0); mp_m_axi_concat_rready->out_port(m_axi_rready); mp_m_axi_concat_rready->offset_port(0, 0); @@ -2369,6 +2787,52 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_split_rvalid->add_mask(3,4,3); mp_m_axi_concat_rready->in_port[3](m_axi_concat_rready_out_3); mp_m_axi_concat_rready->offset_port(3, 3); + mp_m_axi_concat_awaddr->in_port[4](m_axi_concat_awaddr_out_4); + mp_m_axi_concat_awaddr->offset_port(4, 128); + mp_m_axi_concat_awprot->in_port[4](m_axi_concat_awprot_out_4); + mp_m_axi_concat_awprot->offset_port(4, 12); + mp_m_axi_concat_awvalid->in_port[4](m_axi_concat_awvalid_out_4); + mp_m_axi_concat_awvalid->offset_port(4, 4); + + mp_m_axi_split_awready->out_port[4](m_axi_split_awready_out_4); + mp_m_axi_split_awready->add_mask(4,5,4); + mp_m_axi_concat_wdata->in_port[4](m_axi_concat_wdata_out_4); + mp_m_axi_concat_wdata->offset_port(4, 128); + mp_m_axi_concat_wstrb->in_port[4](m_axi_concat_wstrb_out_4); + mp_m_axi_concat_wstrb->offset_port(4, 16); + mp_m_axi_concat_wvalid->in_port[4](m_axi_concat_wvalid_out_4); + mp_m_axi_concat_wvalid->offset_port(4, 4); + + mp_m_axi_split_wready->out_port[4](m_axi_split_wready_out_4); + mp_m_axi_split_wready->add_mask(4,5,4); + + mp_m_axi_split_bresp->out_port[4](m_axi_split_bresp_out_4); + mp_m_axi_split_bresp->add_mask(4,10,8); + + mp_m_axi_split_bvalid->out_port[4](m_axi_split_bvalid_out_4); + mp_m_axi_split_bvalid->add_mask(4,5,4); + mp_m_axi_concat_bready->in_port[4](m_axi_concat_bready_out_4); + mp_m_axi_concat_bready->offset_port(4, 4); + mp_m_axi_concat_araddr->in_port[4](m_axi_concat_araddr_out_4); + mp_m_axi_concat_araddr->offset_port(4, 128); + mp_m_axi_concat_arprot->in_port[4](m_axi_concat_arprot_out_4); + mp_m_axi_concat_arprot->offset_port(4, 12); + mp_m_axi_concat_arvalid->in_port[4](m_axi_concat_arvalid_out_4); + mp_m_axi_concat_arvalid->offset_port(4, 4); + + mp_m_axi_split_arready->out_port[4](m_axi_split_arready_out_4); + mp_m_axi_split_arready->add_mask(4,5,4); + + mp_m_axi_split_rdata->out_port[4](m_axi_split_rdata_out_4); + mp_m_axi_split_rdata->add_mask(4,160,128); + + mp_m_axi_split_rresp->out_port[4](m_axi_split_rresp_out_4); + mp_m_axi_split_rresp->add_mask(4,10,8); + + mp_m_axi_split_rvalid->out_port[4](m_axi_split_rvalid_out_4); + mp_m_axi_split_rvalid->add_mask(4,5,4); + mp_m_axi_concat_rready->in_port[4](m_axi_concat_rready_out_4); + mp_m_axi_concat_rready->offset_port(4, 4); // initialize socket stubs @@ -2527,79 +2991,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M00_AXI' transactor ports - mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_0"); + mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_0"); mp_m_axi_awaddr_converter_0->vector_in(m_m_axi_awaddr_converter_0_signal); mp_m_axi_awaddr_converter_0->vector_out(m_axi_concat_awaddr_out_0); mp_M00_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_0_signal); - mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_0"); + mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_0"); mp_m_axi_awprot_converter_0->vector_in(m_m_axi_awprot_converter_0_signal); mp_m_axi_awprot_converter_0->vector_out(m_axi_concat_awprot_out_0); mp_M00_AXI_transactor->AWPROT(m_m_axi_awprot_converter_0_signal); - mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_0"); + mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_0"); mp_m_axi_awvalid_converter_0->scalar_in(m_m_axi_awvalid_converter_0_signal); mp_m_axi_awvalid_converter_0->vector_out(m_axi_concat_awvalid_out_0); mp_M00_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_0_signal); - mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_0"); + mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_0"); mp_m_axi_awready_converter_0->vector_in(m_axi_split_awready_out_0); mp_m_axi_awready_converter_0->scalar_out(m_m_axi_awready_converter_0_signal); mp_M00_AXI_transactor->AWREADY(m_m_axi_awready_converter_0_signal); - mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_0"); + mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_0"); mp_m_axi_wdata_converter_0->vector_in(m_m_axi_wdata_converter_0_signal); mp_m_axi_wdata_converter_0->vector_out(m_axi_concat_wdata_out_0); mp_M00_AXI_transactor->WDATA(m_m_axi_wdata_converter_0_signal); - mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_0"); + mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_0"); mp_m_axi_wstrb_converter_0->vector_in(m_m_axi_wstrb_converter_0_signal); mp_m_axi_wstrb_converter_0->vector_out(m_axi_concat_wstrb_out_0); mp_M00_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_0_signal); - mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_0"); + mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_0"); mp_m_axi_wvalid_converter_0->scalar_in(m_m_axi_wvalid_converter_0_signal); mp_m_axi_wvalid_converter_0->vector_out(m_axi_concat_wvalid_out_0); mp_M00_AXI_transactor->WVALID(m_m_axi_wvalid_converter_0_signal); - mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_0"); + mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_0"); mp_m_axi_wready_converter_0->vector_in(m_axi_split_wready_out_0); mp_m_axi_wready_converter_0->scalar_out(m_m_axi_wready_converter_0_signal); mp_M00_AXI_transactor->WREADY(m_m_axi_wready_converter_0_signal); - mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_0"); + mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_0"); mp_m_axi_bresp_converter_0->vector_in(m_axi_split_bresp_out_0); mp_m_axi_bresp_converter_0->vector_out(m_m_axi_bresp_converter_0_signal); mp_M00_AXI_transactor->BRESP(m_m_axi_bresp_converter_0_signal); - mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_0"); + mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_0"); mp_m_axi_bvalid_converter_0->vector_in(m_axi_split_bvalid_out_0); mp_m_axi_bvalid_converter_0->scalar_out(m_m_axi_bvalid_converter_0_signal); mp_M00_AXI_transactor->BVALID(m_m_axi_bvalid_converter_0_signal); - mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_0"); + mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_0"); mp_m_axi_bready_converter_0->scalar_in(m_m_axi_bready_converter_0_signal); mp_m_axi_bready_converter_0->vector_out(m_axi_concat_bready_out_0); mp_M00_AXI_transactor->BREADY(m_m_axi_bready_converter_0_signal); - mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_0"); + mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_0"); mp_m_axi_araddr_converter_0->vector_in(m_m_axi_araddr_converter_0_signal); mp_m_axi_araddr_converter_0->vector_out(m_axi_concat_araddr_out_0); mp_M00_AXI_transactor->ARADDR(m_m_axi_araddr_converter_0_signal); - mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_0"); + mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_0"); mp_m_axi_arprot_converter_0->vector_in(m_m_axi_arprot_converter_0_signal); mp_m_axi_arprot_converter_0->vector_out(m_axi_concat_arprot_out_0); mp_M00_AXI_transactor->ARPROT(m_m_axi_arprot_converter_0_signal); - mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_0"); + mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_0"); mp_m_axi_arvalid_converter_0->scalar_in(m_m_axi_arvalid_converter_0_signal); mp_m_axi_arvalid_converter_0->vector_out(m_axi_concat_arvalid_out_0); mp_M00_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_0_signal); - mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_0"); + mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_0"); mp_m_axi_arready_converter_0->vector_in(m_axi_split_arready_out_0); mp_m_axi_arready_converter_0->scalar_out(m_m_axi_arready_converter_0_signal); mp_M00_AXI_transactor->ARREADY(m_m_axi_arready_converter_0_signal); - mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_0"); + mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_0"); mp_m_axi_rdata_converter_0->vector_in(m_axi_split_rdata_out_0); mp_m_axi_rdata_converter_0->vector_out(m_m_axi_rdata_converter_0_signal); mp_M00_AXI_transactor->RDATA(m_m_axi_rdata_converter_0_signal); - mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_0"); + mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_0"); mp_m_axi_rresp_converter_0->vector_in(m_axi_split_rresp_out_0); mp_m_axi_rresp_converter_0->vector_out(m_m_axi_rresp_converter_0_signal); mp_M00_AXI_transactor->RRESP(m_m_axi_rresp_converter_0_signal); - mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_0"); + mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_0"); mp_m_axi_rvalid_converter_0->vector_in(m_axi_split_rvalid_out_0); mp_m_axi_rvalid_converter_0->scalar_out(m_m_axi_rvalid_converter_0_signal); mp_M00_AXI_transactor->RVALID(m_m_axi_rvalid_converter_0_signal); - mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_0"); + mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_0"); mp_m_axi_rready_converter_0->scalar_in(m_m_axi_rready_converter_0_signal); mp_m_axi_rready_converter_0->vector_out(m_axi_concat_rready_out_0); mp_M00_AXI_transactor->RREADY(m_m_axi_rready_converter_0_signal); @@ -2660,79 +3124,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M01_AXI' transactor ports - mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_1"); + mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_1"); mp_m_axi_awaddr_converter_1->vector_in(m_m_axi_awaddr_converter_1_signal); mp_m_axi_awaddr_converter_1->vector_out(m_axi_concat_awaddr_out_1); mp_M01_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_1_signal); - mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_1"); + mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_1"); mp_m_axi_awprot_converter_1->vector_in(m_m_axi_awprot_converter_1_signal); mp_m_axi_awprot_converter_1->vector_out(m_axi_concat_awprot_out_1); mp_M01_AXI_transactor->AWPROT(m_m_axi_awprot_converter_1_signal); - mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_1"); + mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_1"); mp_m_axi_awvalid_converter_1->scalar_in(m_m_axi_awvalid_converter_1_signal); mp_m_axi_awvalid_converter_1->vector_out(m_axi_concat_awvalid_out_1); mp_M01_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_1_signal); - mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_1"); + mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_1"); mp_m_axi_awready_converter_1->vector_in(m_axi_split_awready_out_1); mp_m_axi_awready_converter_1->scalar_out(m_m_axi_awready_converter_1_signal); mp_M01_AXI_transactor->AWREADY(m_m_axi_awready_converter_1_signal); - mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_1"); + mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_1"); mp_m_axi_wdata_converter_1->vector_in(m_m_axi_wdata_converter_1_signal); mp_m_axi_wdata_converter_1->vector_out(m_axi_concat_wdata_out_1); mp_M01_AXI_transactor->WDATA(m_m_axi_wdata_converter_1_signal); - mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_1"); + mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_1"); mp_m_axi_wstrb_converter_1->vector_in(m_m_axi_wstrb_converter_1_signal); mp_m_axi_wstrb_converter_1->vector_out(m_axi_concat_wstrb_out_1); mp_M01_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_1_signal); - mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_1"); + mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_1"); mp_m_axi_wvalid_converter_1->scalar_in(m_m_axi_wvalid_converter_1_signal); mp_m_axi_wvalid_converter_1->vector_out(m_axi_concat_wvalid_out_1); mp_M01_AXI_transactor->WVALID(m_m_axi_wvalid_converter_1_signal); - mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_1"); + mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_1"); mp_m_axi_wready_converter_1->vector_in(m_axi_split_wready_out_1); mp_m_axi_wready_converter_1->scalar_out(m_m_axi_wready_converter_1_signal); mp_M01_AXI_transactor->WREADY(m_m_axi_wready_converter_1_signal); - mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_1"); + mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_1"); mp_m_axi_bresp_converter_1->vector_in(m_axi_split_bresp_out_1); mp_m_axi_bresp_converter_1->vector_out(m_m_axi_bresp_converter_1_signal); mp_M01_AXI_transactor->BRESP(m_m_axi_bresp_converter_1_signal); - mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_1"); + mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_1"); mp_m_axi_bvalid_converter_1->vector_in(m_axi_split_bvalid_out_1); mp_m_axi_bvalid_converter_1->scalar_out(m_m_axi_bvalid_converter_1_signal); mp_M01_AXI_transactor->BVALID(m_m_axi_bvalid_converter_1_signal); - mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_1"); + mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_1"); mp_m_axi_bready_converter_1->scalar_in(m_m_axi_bready_converter_1_signal); mp_m_axi_bready_converter_1->vector_out(m_axi_concat_bready_out_1); mp_M01_AXI_transactor->BREADY(m_m_axi_bready_converter_1_signal); - mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_1"); + mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_1"); mp_m_axi_araddr_converter_1->vector_in(m_m_axi_araddr_converter_1_signal); mp_m_axi_araddr_converter_1->vector_out(m_axi_concat_araddr_out_1); mp_M01_AXI_transactor->ARADDR(m_m_axi_araddr_converter_1_signal); - mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_1"); + mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_1"); mp_m_axi_arprot_converter_1->vector_in(m_m_axi_arprot_converter_1_signal); mp_m_axi_arprot_converter_1->vector_out(m_axi_concat_arprot_out_1); mp_M01_AXI_transactor->ARPROT(m_m_axi_arprot_converter_1_signal); - mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_1"); + mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_1"); mp_m_axi_arvalid_converter_1->scalar_in(m_m_axi_arvalid_converter_1_signal); mp_m_axi_arvalid_converter_1->vector_out(m_axi_concat_arvalid_out_1); mp_M01_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_1_signal); - mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_1"); + mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_1"); mp_m_axi_arready_converter_1->vector_in(m_axi_split_arready_out_1); mp_m_axi_arready_converter_1->scalar_out(m_m_axi_arready_converter_1_signal); mp_M01_AXI_transactor->ARREADY(m_m_axi_arready_converter_1_signal); - mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_1"); + mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_1"); mp_m_axi_rdata_converter_1->vector_in(m_axi_split_rdata_out_1); mp_m_axi_rdata_converter_1->vector_out(m_m_axi_rdata_converter_1_signal); mp_M01_AXI_transactor->RDATA(m_m_axi_rdata_converter_1_signal); - mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_1"); + mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_1"); mp_m_axi_rresp_converter_1->vector_in(m_axi_split_rresp_out_1); mp_m_axi_rresp_converter_1->vector_out(m_m_axi_rresp_converter_1_signal); mp_M01_AXI_transactor->RRESP(m_m_axi_rresp_converter_1_signal); - mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_1"); + mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_1"); mp_m_axi_rvalid_converter_1->vector_in(m_axi_split_rvalid_out_1); mp_m_axi_rvalid_converter_1->scalar_out(m_m_axi_rvalid_converter_1_signal); mp_M01_AXI_transactor->RVALID(m_m_axi_rvalid_converter_1_signal); - mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_1"); + mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_1"); mp_m_axi_rready_converter_1->scalar_in(m_m_axi_rready_converter_1_signal); mp_m_axi_rready_converter_1->vector_out(m_axi_concat_rready_out_1); mp_M01_AXI_transactor->RREADY(m_m_axi_rready_converter_1_signal); @@ -2793,79 +3257,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M02_AXI' transactor ports - mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_2"); + mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_2"); mp_m_axi_awaddr_converter_2->vector_in(m_m_axi_awaddr_converter_2_signal); mp_m_axi_awaddr_converter_2->vector_out(m_axi_concat_awaddr_out_2); mp_M02_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_2_signal); - mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_2"); + mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_2"); mp_m_axi_awprot_converter_2->vector_in(m_m_axi_awprot_converter_2_signal); mp_m_axi_awprot_converter_2->vector_out(m_axi_concat_awprot_out_2); mp_M02_AXI_transactor->AWPROT(m_m_axi_awprot_converter_2_signal); - mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_2"); + mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_2"); mp_m_axi_awvalid_converter_2->scalar_in(m_m_axi_awvalid_converter_2_signal); mp_m_axi_awvalid_converter_2->vector_out(m_axi_concat_awvalid_out_2); mp_M02_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_2_signal); - mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_2"); + mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_2"); mp_m_axi_awready_converter_2->vector_in(m_axi_split_awready_out_2); mp_m_axi_awready_converter_2->scalar_out(m_m_axi_awready_converter_2_signal); mp_M02_AXI_transactor->AWREADY(m_m_axi_awready_converter_2_signal); - mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_2"); + mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_2"); mp_m_axi_wdata_converter_2->vector_in(m_m_axi_wdata_converter_2_signal); mp_m_axi_wdata_converter_2->vector_out(m_axi_concat_wdata_out_2); mp_M02_AXI_transactor->WDATA(m_m_axi_wdata_converter_2_signal); - mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_2"); + mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_2"); mp_m_axi_wstrb_converter_2->vector_in(m_m_axi_wstrb_converter_2_signal); mp_m_axi_wstrb_converter_2->vector_out(m_axi_concat_wstrb_out_2); mp_M02_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_2_signal); - mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_2"); + mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_2"); mp_m_axi_wvalid_converter_2->scalar_in(m_m_axi_wvalid_converter_2_signal); mp_m_axi_wvalid_converter_2->vector_out(m_axi_concat_wvalid_out_2); mp_M02_AXI_transactor->WVALID(m_m_axi_wvalid_converter_2_signal); - mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_2"); + mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_2"); mp_m_axi_wready_converter_2->vector_in(m_axi_split_wready_out_2); mp_m_axi_wready_converter_2->scalar_out(m_m_axi_wready_converter_2_signal); mp_M02_AXI_transactor->WREADY(m_m_axi_wready_converter_2_signal); - mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_2"); + mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_2"); mp_m_axi_bresp_converter_2->vector_in(m_axi_split_bresp_out_2); mp_m_axi_bresp_converter_2->vector_out(m_m_axi_bresp_converter_2_signal); mp_M02_AXI_transactor->BRESP(m_m_axi_bresp_converter_2_signal); - mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_2"); + mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_2"); mp_m_axi_bvalid_converter_2->vector_in(m_axi_split_bvalid_out_2); mp_m_axi_bvalid_converter_2->scalar_out(m_m_axi_bvalid_converter_2_signal); mp_M02_AXI_transactor->BVALID(m_m_axi_bvalid_converter_2_signal); - mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_2"); + mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_2"); mp_m_axi_bready_converter_2->scalar_in(m_m_axi_bready_converter_2_signal); mp_m_axi_bready_converter_2->vector_out(m_axi_concat_bready_out_2); mp_M02_AXI_transactor->BREADY(m_m_axi_bready_converter_2_signal); - mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_2"); + mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_2"); mp_m_axi_araddr_converter_2->vector_in(m_m_axi_araddr_converter_2_signal); mp_m_axi_araddr_converter_2->vector_out(m_axi_concat_araddr_out_2); mp_M02_AXI_transactor->ARADDR(m_m_axi_araddr_converter_2_signal); - mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_2"); + mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_2"); mp_m_axi_arprot_converter_2->vector_in(m_m_axi_arprot_converter_2_signal); mp_m_axi_arprot_converter_2->vector_out(m_axi_concat_arprot_out_2); mp_M02_AXI_transactor->ARPROT(m_m_axi_arprot_converter_2_signal); - mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_2"); + mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_2"); mp_m_axi_arvalid_converter_2->scalar_in(m_m_axi_arvalid_converter_2_signal); mp_m_axi_arvalid_converter_2->vector_out(m_axi_concat_arvalid_out_2); mp_M02_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_2_signal); - mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_2"); + mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_2"); mp_m_axi_arready_converter_2->vector_in(m_axi_split_arready_out_2); mp_m_axi_arready_converter_2->scalar_out(m_m_axi_arready_converter_2_signal); mp_M02_AXI_transactor->ARREADY(m_m_axi_arready_converter_2_signal); - mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_2"); + mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_2"); mp_m_axi_rdata_converter_2->vector_in(m_axi_split_rdata_out_2); mp_m_axi_rdata_converter_2->vector_out(m_m_axi_rdata_converter_2_signal); mp_M02_AXI_transactor->RDATA(m_m_axi_rdata_converter_2_signal); - mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_2"); + mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_2"); mp_m_axi_rresp_converter_2->vector_in(m_axi_split_rresp_out_2); mp_m_axi_rresp_converter_2->vector_out(m_m_axi_rresp_converter_2_signal); mp_M02_AXI_transactor->RRESP(m_m_axi_rresp_converter_2_signal); - mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_2"); + mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_2"); mp_m_axi_rvalid_converter_2->vector_in(m_axi_split_rvalid_out_2); mp_m_axi_rvalid_converter_2->scalar_out(m_m_axi_rvalid_converter_2_signal); mp_M02_AXI_transactor->RVALID(m_m_axi_rvalid_converter_2_signal); - mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_2"); + mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_2"); mp_m_axi_rready_converter_2->scalar_in(m_m_axi_rready_converter_2_signal); mp_m_axi_rready_converter_2->vector_out(m_axi_concat_rready_out_2); mp_M02_AXI_transactor->RREADY(m_m_axi_rready_converter_2_signal); @@ -2908,8 +3372,8 @@ void mb_design_1_xbar_0::before_end_of_elaboration() M03_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); M03_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); M03_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); - M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); - M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "2"); + M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "2"); M03_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); M03_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); M03_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); @@ -2926,79 +3390,79 @@ void mb_design_1_xbar_0::before_end_of_elaboration() // M03_AXI' transactor ports - mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_3"); + mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_3"); mp_m_axi_awaddr_converter_3->vector_in(m_m_axi_awaddr_converter_3_signal); mp_m_axi_awaddr_converter_3->vector_out(m_axi_concat_awaddr_out_3); mp_M03_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_3_signal); - mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_3"); + mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_3"); mp_m_axi_awprot_converter_3->vector_in(m_m_axi_awprot_converter_3_signal); mp_m_axi_awprot_converter_3->vector_out(m_axi_concat_awprot_out_3); mp_M03_AXI_transactor->AWPROT(m_m_axi_awprot_converter_3_signal); - mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_3"); + mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_3"); mp_m_axi_awvalid_converter_3->scalar_in(m_m_axi_awvalid_converter_3_signal); mp_m_axi_awvalid_converter_3->vector_out(m_axi_concat_awvalid_out_3); mp_M03_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_3_signal); - mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_3"); + mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_3"); mp_m_axi_awready_converter_3->vector_in(m_axi_split_awready_out_3); mp_m_axi_awready_converter_3->scalar_out(m_m_axi_awready_converter_3_signal); mp_M03_AXI_transactor->AWREADY(m_m_axi_awready_converter_3_signal); - mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_3"); + mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_3"); mp_m_axi_wdata_converter_3->vector_in(m_m_axi_wdata_converter_3_signal); mp_m_axi_wdata_converter_3->vector_out(m_axi_concat_wdata_out_3); mp_M03_AXI_transactor->WDATA(m_m_axi_wdata_converter_3_signal); - mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_3"); + mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_3"); mp_m_axi_wstrb_converter_3->vector_in(m_m_axi_wstrb_converter_3_signal); mp_m_axi_wstrb_converter_3->vector_out(m_axi_concat_wstrb_out_3); mp_M03_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_3_signal); - mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_3"); + mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_3"); mp_m_axi_wvalid_converter_3->scalar_in(m_m_axi_wvalid_converter_3_signal); mp_m_axi_wvalid_converter_3->vector_out(m_axi_concat_wvalid_out_3); mp_M03_AXI_transactor->WVALID(m_m_axi_wvalid_converter_3_signal); - mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_3"); + mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_3"); mp_m_axi_wready_converter_3->vector_in(m_axi_split_wready_out_3); mp_m_axi_wready_converter_3->scalar_out(m_m_axi_wready_converter_3_signal); mp_M03_AXI_transactor->WREADY(m_m_axi_wready_converter_3_signal); - mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_3"); + mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_3"); mp_m_axi_bresp_converter_3->vector_in(m_axi_split_bresp_out_3); mp_m_axi_bresp_converter_3->vector_out(m_m_axi_bresp_converter_3_signal); mp_M03_AXI_transactor->BRESP(m_m_axi_bresp_converter_3_signal); - mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_3"); + mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_3"); mp_m_axi_bvalid_converter_3->vector_in(m_axi_split_bvalid_out_3); mp_m_axi_bvalid_converter_3->scalar_out(m_m_axi_bvalid_converter_3_signal); mp_M03_AXI_transactor->BVALID(m_m_axi_bvalid_converter_3_signal); - mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_3"); + mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_3"); mp_m_axi_bready_converter_3->scalar_in(m_m_axi_bready_converter_3_signal); mp_m_axi_bready_converter_3->vector_out(m_axi_concat_bready_out_3); mp_M03_AXI_transactor->BREADY(m_m_axi_bready_converter_3_signal); - mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_3"); + mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_3"); mp_m_axi_araddr_converter_3->vector_in(m_m_axi_araddr_converter_3_signal); mp_m_axi_araddr_converter_3->vector_out(m_axi_concat_araddr_out_3); mp_M03_AXI_transactor->ARADDR(m_m_axi_araddr_converter_3_signal); - mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_3"); + mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_3"); mp_m_axi_arprot_converter_3->vector_in(m_m_axi_arprot_converter_3_signal); mp_m_axi_arprot_converter_3->vector_out(m_axi_concat_arprot_out_3); mp_M03_AXI_transactor->ARPROT(m_m_axi_arprot_converter_3_signal); - mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_3"); + mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_3"); mp_m_axi_arvalid_converter_3->scalar_in(m_m_axi_arvalid_converter_3_signal); mp_m_axi_arvalid_converter_3->vector_out(m_axi_concat_arvalid_out_3); mp_M03_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_3_signal); - mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_3"); + mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_3"); mp_m_axi_arready_converter_3->vector_in(m_axi_split_arready_out_3); mp_m_axi_arready_converter_3->scalar_out(m_m_axi_arready_converter_3_signal); mp_M03_AXI_transactor->ARREADY(m_m_axi_arready_converter_3_signal); - mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_3"); + mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_3"); mp_m_axi_rdata_converter_3->vector_in(m_axi_split_rdata_out_3); mp_m_axi_rdata_converter_3->vector_out(m_m_axi_rdata_converter_3_signal); mp_M03_AXI_transactor->RDATA(m_m_axi_rdata_converter_3_signal); - mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_3"); + mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_3"); mp_m_axi_rresp_converter_3->vector_in(m_axi_split_rresp_out_3); mp_m_axi_rresp_converter_3->vector_out(m_m_axi_rresp_converter_3_signal); mp_M03_AXI_transactor->RRESP(m_m_axi_rresp_converter_3_signal); - mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_3"); + mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_3"); mp_m_axi_rvalid_converter_3->vector_in(m_axi_split_rvalid_out_3); mp_m_axi_rvalid_converter_3->scalar_out(m_m_axi_rvalid_converter_3_signal); mp_M03_AXI_transactor->RVALID(m_m_axi_rvalid_converter_3_signal); - mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_3"); + mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_3"); mp_m_axi_rready_converter_3->scalar_in(m_m_axi_rready_converter_3_signal); mp_m_axi_rready_converter_3->vector_out(m_axi_concat_rready_out_3); mp_M03_AXI_transactor->RREADY(m_m_axi_rready_converter_3_signal); @@ -3014,6 +3478,139 @@ void mb_design_1_xbar_0::before_end_of_elaboration() { } + // configure 'M04_AXI' transactor + + if (xsc::utils::xsc_sim_manager::getInstanceParameterInt("mb_design_1_xbar_0", "M04_AXI_TLM_MODE") != 1) + { + // Instantiate Socket Stubs + + // 'M04_AXI' transactor parameters + xsc::common_cpp::properties M04_AXI_transactor_param_props; + M04_AXI_transactor_param_props.addLong("DATA_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("FREQ_HZ", "100000000"); + M04_AXI_transactor_param_props.addLong("ID_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ADDR_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("AWUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ARUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("RUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("BUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("HAS_BURST", "0"); + M04_AXI_transactor_param_props.addLong("HAS_LOCK", "0"); + M04_AXI_transactor_param_props.addLong("HAS_PROT", "1"); + M04_AXI_transactor_param_props.addLong("HAS_CACHE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_QOS", "0"); + M04_AXI_transactor_param_props.addLong("HAS_REGION", "0"); + M04_AXI_transactor_param_props.addLong("HAS_WSTRB", "1"); + M04_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); + M04_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); + M04_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); + M04_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); + M04_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("RUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_SIZE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_RESET", "1"); + M04_AXI_transactor_param_props.addFloat("PHASE", "0.0"); + M04_AXI_transactor_param_props.addString("PROTOCOL", "AXI4LITE"); + M04_AXI_transactor_param_props.addString("READ_WRITE_MODE", "READ_WRITE"); + M04_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); + + mp_M04_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M04_AXI_transactor", M04_AXI_transactor_param_props); + + // M04_AXI' transactor ports + + mp_m_axi_awaddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_4"); + mp_m_axi_awaddr_converter_4->vector_in(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awaddr_converter_4->vector_out(m_axi_concat_awaddr_out_4); + mp_M04_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_4"); + mp_m_axi_awprot_converter_4->vector_in(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awprot_converter_4->vector_out(m_axi_concat_awprot_out_4); + mp_M04_AXI_transactor->AWPROT(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_4"); + mp_m_axi_awvalid_converter_4->scalar_in(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awvalid_converter_4->vector_out(m_axi_concat_awvalid_out_4); + mp_M04_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_4"); + mp_m_axi_awready_converter_4->vector_in(m_axi_split_awready_out_4); + mp_m_axi_awready_converter_4->scalar_out(m_m_axi_awready_converter_4_signal); + mp_M04_AXI_transactor->AWREADY(m_m_axi_awready_converter_4_signal); + mp_m_axi_wdata_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_4"); + mp_m_axi_wdata_converter_4->vector_in(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wdata_converter_4->vector_out(m_axi_concat_wdata_out_4); + mp_M04_AXI_transactor->WDATA(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wstrb_converter_4 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_4"); + mp_m_axi_wstrb_converter_4->vector_in(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wstrb_converter_4->vector_out(m_axi_concat_wstrb_out_4); + mp_M04_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_4"); + mp_m_axi_wvalid_converter_4->scalar_in(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wvalid_converter_4->vector_out(m_axi_concat_wvalid_out_4); + mp_M04_AXI_transactor->WVALID(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_4"); + mp_m_axi_wready_converter_4->vector_in(m_axi_split_wready_out_4); + mp_m_axi_wready_converter_4->scalar_out(m_m_axi_wready_converter_4_signal); + mp_M04_AXI_transactor->WREADY(m_m_axi_wready_converter_4_signal); + mp_m_axi_bresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_4"); + mp_m_axi_bresp_converter_4->vector_in(m_axi_split_bresp_out_4); + mp_m_axi_bresp_converter_4->vector_out(m_m_axi_bresp_converter_4_signal); + mp_M04_AXI_transactor->BRESP(m_m_axi_bresp_converter_4_signal); + mp_m_axi_bvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_4"); + mp_m_axi_bvalid_converter_4->vector_in(m_axi_split_bvalid_out_4); + mp_m_axi_bvalid_converter_4->scalar_out(m_m_axi_bvalid_converter_4_signal); + mp_M04_AXI_transactor->BVALID(m_m_axi_bvalid_converter_4_signal); + mp_m_axi_bready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_4"); + mp_m_axi_bready_converter_4->scalar_in(m_m_axi_bready_converter_4_signal); + mp_m_axi_bready_converter_4->vector_out(m_axi_concat_bready_out_4); + mp_M04_AXI_transactor->BREADY(m_m_axi_bready_converter_4_signal); + mp_m_axi_araddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_4"); + mp_m_axi_araddr_converter_4->vector_in(m_m_axi_araddr_converter_4_signal); + mp_m_axi_araddr_converter_4->vector_out(m_axi_concat_araddr_out_4); + mp_M04_AXI_transactor->ARADDR(m_m_axi_araddr_converter_4_signal); + mp_m_axi_arprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_4"); + mp_m_axi_arprot_converter_4->vector_in(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arprot_converter_4->vector_out(m_axi_concat_arprot_out_4); + mp_M04_AXI_transactor->ARPROT(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_4"); + mp_m_axi_arvalid_converter_4->scalar_in(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arvalid_converter_4->vector_out(m_axi_concat_arvalid_out_4); + mp_M04_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_4"); + mp_m_axi_arready_converter_4->vector_in(m_axi_split_arready_out_4); + mp_m_axi_arready_converter_4->scalar_out(m_m_axi_arready_converter_4_signal); + mp_M04_AXI_transactor->ARREADY(m_m_axi_arready_converter_4_signal); + mp_m_axi_rdata_converter_4 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_4"); + mp_m_axi_rdata_converter_4->vector_in(m_axi_split_rdata_out_4); + mp_m_axi_rdata_converter_4->vector_out(m_m_axi_rdata_converter_4_signal); + mp_M04_AXI_transactor->RDATA(m_m_axi_rdata_converter_4_signal); + mp_m_axi_rresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_4"); + mp_m_axi_rresp_converter_4->vector_in(m_axi_split_rresp_out_4); + mp_m_axi_rresp_converter_4->vector_out(m_m_axi_rresp_converter_4_signal); + mp_M04_AXI_transactor->RRESP(m_m_axi_rresp_converter_4_signal); + mp_m_axi_rvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_4"); + mp_m_axi_rvalid_converter_4->vector_in(m_axi_split_rvalid_out_4); + mp_m_axi_rvalid_converter_4->scalar_out(m_m_axi_rvalid_converter_4_signal); + mp_M04_AXI_transactor->RVALID(m_m_axi_rvalid_converter_4_signal); + mp_m_axi_rready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_4"); + mp_m_axi_rready_converter_4->scalar_in(m_m_axi_rready_converter_4_signal); + mp_m_axi_rready_converter_4->vector_out(m_axi_concat_rready_out_4); + mp_M04_AXI_transactor->RREADY(m_m_axi_rready_converter_4_signal); + mp_M04_AXI_transactor->CLK(aclk); + mp_M04_AXI_transactor->RST(aresetn); + + // M04_AXI' transactor sockets + + mp_impl->initiator_4_rd_socket->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_impl->initiator_4_wr_socket->bind(*(mp_M04_AXI_transactor->wr_socket)); + } + else + { + } + } #endif // RIVIERA @@ -3120,6 +3717,26 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_rresp_converter_3 = NULL; mp_m_axi_rvalid_converter_3 = NULL; mp_m_axi_rready_converter_3 = NULL; + mp_M04_AXI_transactor = NULL; + mp_m_axi_awaddr_converter_4 = NULL; + mp_m_axi_awprot_converter_4 = NULL; + mp_m_axi_awvalid_converter_4 = NULL; + mp_m_axi_awready_converter_4 = NULL; + mp_m_axi_wdata_converter_4 = NULL; + mp_m_axi_wstrb_converter_4 = NULL; + mp_m_axi_wvalid_converter_4 = NULL; + mp_m_axi_wready_converter_4 = NULL; + mp_m_axi_bresp_converter_4 = NULL; + mp_m_axi_bvalid_converter_4 = NULL; + mp_m_axi_bready_converter_4 = NULL; + mp_m_axi_araddr_converter_4 = NULL; + mp_m_axi_arprot_converter_4 = NULL; + mp_m_axi_arvalid_converter_4 = NULL; + mp_m_axi_arready_converter_4 = NULL; + mp_m_axi_rdata_converter_4 = NULL; + mp_m_axi_rresp_converter_4 = NULL; + mp_m_axi_rvalid_converter_4 = NULL; + mp_m_axi_rready_converter_4 = NULL; // initialize port junctures mp_m_axi_concat_araddr = NULL; @@ -3267,152 +3884,152 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M00_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M00_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M00_AXI_transactor", M00_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_0"); - mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_awaddr"); + mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_0"); + mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_awaddr"); mp_m_axi_concat_awaddr->in_port[0](m_axi_concat_awaddr_out_0); mp_m_axi_concat_awaddr->out_port(m_axi_awaddr); mp_m_axi_concat_awaddr->offset_port(0, 0); mp_m_axi_awaddr_converter_0->vector_in(m_m_axi_awaddr_converter_0_signal); mp_m_axi_awaddr_converter_0->vector_out(m_axi_concat_awaddr_out_0); mp_M00_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_0_signal); - mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_0"); - mp_m_axi_concat_awprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_awprot"); + mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_0"); + mp_m_axi_concat_awprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_awprot"); mp_m_axi_concat_awprot->in_port[0](m_axi_concat_awprot_out_0); mp_m_axi_concat_awprot->out_port(m_axi_awprot); mp_m_axi_concat_awprot->offset_port(0, 0); mp_m_axi_awprot_converter_0->vector_in(m_m_axi_awprot_converter_0_signal); mp_m_axi_awprot_converter_0->vector_out(m_axi_concat_awprot_out_0); mp_M00_AXI_transactor->AWPROT(m_m_axi_awprot_converter_0_signal); - mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_0"); - mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_awvalid"); + mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_0"); + mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_awvalid"); mp_m_axi_concat_awvalid->in_port[0](m_axi_concat_awvalid_out_0); mp_m_axi_concat_awvalid->out_port(m_axi_awvalid); mp_m_axi_concat_awvalid->offset_port(0, 0); mp_m_axi_awvalid_converter_0->scalar_in(m_m_axi_awvalid_converter_0_signal); mp_m_axi_awvalid_converter_0->vector_out(m_axi_concat_awvalid_out_0); mp_M00_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_0_signal); - mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_0"); - mp_m_axi_split_awready = new xsc::xsc_split<4, 4>("m_axi_split_awready"); + mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_0"); + mp_m_axi_split_awready = new xsc::xsc_split<5, 5>("m_axi_split_awready"); mp_m_axi_split_awready->in_port(m_axi_awready); mp_m_axi_split_awready->out_port[0](m_axi_split_awready_out_0); mp_m_axi_split_awready->add_mask(0,1,0); mp_m_axi_awready_converter_0->vector_in(m_axi_split_awready_out_0); mp_m_axi_awready_converter_0->scalar_out(m_m_axi_awready_converter_0_signal); mp_M00_AXI_transactor->AWREADY(m_m_axi_awready_converter_0_signal); - mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_0"); - mp_m_axi_concat_wdata = new xsc::xsc_concatenator<128, 4>("m_axi_concat_wdata"); + mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_0"); + mp_m_axi_concat_wdata = new xsc::xsc_concatenator<160, 5>("m_axi_concat_wdata"); mp_m_axi_concat_wdata->in_port[0](m_axi_concat_wdata_out_0); mp_m_axi_concat_wdata->out_port(m_axi_wdata); mp_m_axi_concat_wdata->offset_port(0, 0); mp_m_axi_wdata_converter_0->vector_in(m_m_axi_wdata_converter_0_signal); mp_m_axi_wdata_converter_0->vector_out(m_axi_concat_wdata_out_0); mp_M00_AXI_transactor->WDATA(m_m_axi_wdata_converter_0_signal); - mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_0"); - mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<16, 4>("m_axi_concat_wstrb"); + mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_0"); + mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<20, 5>("m_axi_concat_wstrb"); mp_m_axi_concat_wstrb->in_port[0](m_axi_concat_wstrb_out_0); mp_m_axi_concat_wstrb->out_port(m_axi_wstrb); mp_m_axi_concat_wstrb->offset_port(0, 0); mp_m_axi_wstrb_converter_0->vector_in(m_m_axi_wstrb_converter_0_signal); mp_m_axi_wstrb_converter_0->vector_out(m_axi_concat_wstrb_out_0); mp_M00_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_0_signal); - mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_0"); - mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_wvalid"); + mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_0"); + mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_wvalid"); mp_m_axi_concat_wvalid->in_port[0](m_axi_concat_wvalid_out_0); mp_m_axi_concat_wvalid->out_port(m_axi_wvalid); mp_m_axi_concat_wvalid->offset_port(0, 0); mp_m_axi_wvalid_converter_0->scalar_in(m_m_axi_wvalid_converter_0_signal); mp_m_axi_wvalid_converter_0->vector_out(m_axi_concat_wvalid_out_0); mp_M00_AXI_transactor->WVALID(m_m_axi_wvalid_converter_0_signal); - mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_0"); - mp_m_axi_split_wready = new xsc::xsc_split<4, 4>("m_axi_split_wready"); + mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_0"); + mp_m_axi_split_wready = new xsc::xsc_split<5, 5>("m_axi_split_wready"); mp_m_axi_split_wready->in_port(m_axi_wready); mp_m_axi_split_wready->out_port[0](m_axi_split_wready_out_0); mp_m_axi_split_wready->add_mask(0,1,0); mp_m_axi_wready_converter_0->vector_in(m_axi_split_wready_out_0); mp_m_axi_wready_converter_0->scalar_out(m_m_axi_wready_converter_0_signal); mp_M00_AXI_transactor->WREADY(m_m_axi_wready_converter_0_signal); - mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_0"); - mp_m_axi_split_bresp = new xsc::xsc_split<8, 4>("m_axi_split_bresp"); + mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_0"); + mp_m_axi_split_bresp = new xsc::xsc_split<10, 5>("m_axi_split_bresp"); mp_m_axi_split_bresp->in_port(m_axi_bresp); mp_m_axi_split_bresp->out_port[0](m_axi_split_bresp_out_0); mp_m_axi_split_bresp->add_mask(0,2,0); mp_m_axi_bresp_converter_0->vector_in(m_axi_split_bresp_out_0); mp_m_axi_bresp_converter_0->vector_out(m_m_axi_bresp_converter_0_signal); mp_M00_AXI_transactor->BRESP(m_m_axi_bresp_converter_0_signal); - mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_0"); - mp_m_axi_split_bvalid = new xsc::xsc_split<4, 4>("m_axi_split_bvalid"); + mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_0"); + mp_m_axi_split_bvalid = new xsc::xsc_split<5, 5>("m_axi_split_bvalid"); mp_m_axi_split_bvalid->in_port(m_axi_bvalid); mp_m_axi_split_bvalid->out_port[0](m_axi_split_bvalid_out_0); mp_m_axi_split_bvalid->add_mask(0,1,0); mp_m_axi_bvalid_converter_0->vector_in(m_axi_split_bvalid_out_0); mp_m_axi_bvalid_converter_0->scalar_out(m_m_axi_bvalid_converter_0_signal); mp_M00_AXI_transactor->BVALID(m_m_axi_bvalid_converter_0_signal); - mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_0"); - mp_m_axi_concat_bready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_bready"); + mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_0"); + mp_m_axi_concat_bready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_bready"); mp_m_axi_concat_bready->in_port[0](m_axi_concat_bready_out_0); mp_m_axi_concat_bready->out_port(m_axi_bready); mp_m_axi_concat_bready->offset_port(0, 0); mp_m_axi_bready_converter_0->scalar_in(m_m_axi_bready_converter_0_signal); mp_m_axi_bready_converter_0->vector_out(m_axi_concat_bready_out_0); mp_M00_AXI_transactor->BREADY(m_m_axi_bready_converter_0_signal); - mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_0"); - mp_m_axi_concat_araddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_araddr"); + mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_0"); + mp_m_axi_concat_araddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_araddr"); mp_m_axi_concat_araddr->in_port[0](m_axi_concat_araddr_out_0); mp_m_axi_concat_araddr->out_port(m_axi_araddr); mp_m_axi_concat_araddr->offset_port(0, 0); mp_m_axi_araddr_converter_0->vector_in(m_m_axi_araddr_converter_0_signal); mp_m_axi_araddr_converter_0->vector_out(m_axi_concat_araddr_out_0); mp_M00_AXI_transactor->ARADDR(m_m_axi_araddr_converter_0_signal); - mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_0"); - mp_m_axi_concat_arprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_arprot"); + mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_0"); + mp_m_axi_concat_arprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_arprot"); mp_m_axi_concat_arprot->in_port[0](m_axi_concat_arprot_out_0); mp_m_axi_concat_arprot->out_port(m_axi_arprot); mp_m_axi_concat_arprot->offset_port(0, 0); mp_m_axi_arprot_converter_0->vector_in(m_m_axi_arprot_converter_0_signal); mp_m_axi_arprot_converter_0->vector_out(m_axi_concat_arprot_out_0); mp_M00_AXI_transactor->ARPROT(m_m_axi_arprot_converter_0_signal); - mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_0"); - mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_arvalid"); + mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_0"); + mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_arvalid"); mp_m_axi_concat_arvalid->in_port[0](m_axi_concat_arvalid_out_0); mp_m_axi_concat_arvalid->out_port(m_axi_arvalid); mp_m_axi_concat_arvalid->offset_port(0, 0); mp_m_axi_arvalid_converter_0->scalar_in(m_m_axi_arvalid_converter_0_signal); mp_m_axi_arvalid_converter_0->vector_out(m_axi_concat_arvalid_out_0); mp_M00_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_0_signal); - mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_0"); - mp_m_axi_split_arready = new xsc::xsc_split<4, 4>("m_axi_split_arready"); + mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_0"); + mp_m_axi_split_arready = new xsc::xsc_split<5, 5>("m_axi_split_arready"); mp_m_axi_split_arready->in_port(m_axi_arready); mp_m_axi_split_arready->out_port[0](m_axi_split_arready_out_0); mp_m_axi_split_arready->add_mask(0,1,0); mp_m_axi_arready_converter_0->vector_in(m_axi_split_arready_out_0); mp_m_axi_arready_converter_0->scalar_out(m_m_axi_arready_converter_0_signal); mp_M00_AXI_transactor->ARREADY(m_m_axi_arready_converter_0_signal); - mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_0"); - mp_m_axi_split_rdata = new xsc::xsc_split<128, 4>("m_axi_split_rdata"); + mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_0"); + mp_m_axi_split_rdata = new xsc::xsc_split<160, 5>("m_axi_split_rdata"); mp_m_axi_split_rdata->in_port(m_axi_rdata); mp_m_axi_split_rdata->out_port[0](m_axi_split_rdata_out_0); mp_m_axi_split_rdata->add_mask(0,32,0); mp_m_axi_rdata_converter_0->vector_in(m_axi_split_rdata_out_0); mp_m_axi_rdata_converter_0->vector_out(m_m_axi_rdata_converter_0_signal); mp_M00_AXI_transactor->RDATA(m_m_axi_rdata_converter_0_signal); - mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_0"); - mp_m_axi_split_rresp = new xsc::xsc_split<8, 4>("m_axi_split_rresp"); + mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_0"); + mp_m_axi_split_rresp = new xsc::xsc_split<10, 5>("m_axi_split_rresp"); mp_m_axi_split_rresp->in_port(m_axi_rresp); mp_m_axi_split_rresp->out_port[0](m_axi_split_rresp_out_0); mp_m_axi_split_rresp->add_mask(0,2,0); mp_m_axi_rresp_converter_0->vector_in(m_axi_split_rresp_out_0); mp_m_axi_rresp_converter_0->vector_out(m_m_axi_rresp_converter_0_signal); mp_M00_AXI_transactor->RRESP(m_m_axi_rresp_converter_0_signal); - mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_0"); - mp_m_axi_split_rvalid = new xsc::xsc_split<4, 4>("m_axi_split_rvalid"); + mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_0"); + mp_m_axi_split_rvalid = new xsc::xsc_split<5, 5>("m_axi_split_rvalid"); mp_m_axi_split_rvalid->in_port(m_axi_rvalid); mp_m_axi_split_rvalid->out_port[0](m_axi_split_rvalid_out_0); mp_m_axi_split_rvalid->add_mask(0,1,0); mp_m_axi_rvalid_converter_0->vector_in(m_axi_split_rvalid_out_0); mp_m_axi_rvalid_converter_0->scalar_out(m_m_axi_rvalid_converter_0_signal); mp_M00_AXI_transactor->RVALID(m_m_axi_rvalid_converter_0_signal); - mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_0"); - mp_m_axi_concat_rready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_rready"); + mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_0"); + mp_m_axi_concat_rready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_rready"); mp_m_axi_concat_rready->in_port[0](m_axi_concat_rready_out_0); mp_m_axi_concat_rready->out_port(m_axi_rready); mp_m_axi_concat_rready->offset_port(0, 0); @@ -3457,123 +4074,123 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M01_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M01_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M01_AXI_transactor", M01_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_1"); + mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_1"); mp_m_axi_concat_awaddr->in_port[1](m_axi_concat_awaddr_out_1); mp_m_axi_concat_awaddr->offset_port(1, 32); mp_m_axi_awaddr_converter_1->vector_in(m_m_axi_awaddr_converter_1_signal); mp_m_axi_awaddr_converter_1->vector_out(m_axi_concat_awaddr_out_1); mp_M01_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_1_signal); - mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_1"); + mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_1"); mp_m_axi_concat_awprot->in_port[1](m_axi_concat_awprot_out_1); mp_m_axi_concat_awprot->offset_port(1, 3); mp_m_axi_awprot_converter_1->vector_in(m_m_axi_awprot_converter_1_signal); mp_m_axi_awprot_converter_1->vector_out(m_axi_concat_awprot_out_1); mp_M01_AXI_transactor->AWPROT(m_m_axi_awprot_converter_1_signal); - mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_1"); + mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_1"); mp_m_axi_concat_awvalid->in_port[1](m_axi_concat_awvalid_out_1); mp_m_axi_concat_awvalid->offset_port(1, 1); mp_m_axi_awvalid_converter_1->scalar_in(m_m_axi_awvalid_converter_1_signal); mp_m_axi_awvalid_converter_1->vector_out(m_axi_concat_awvalid_out_1); mp_M01_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_1_signal); - mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_1"); + mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_1"); mp_m_axi_split_awready->out_port[1](m_axi_split_awready_out_1); mp_m_axi_split_awready->add_mask(1,2,1); mp_m_axi_awready_converter_1->vector_in(m_axi_split_awready_out_1); mp_m_axi_awready_converter_1->scalar_out(m_m_axi_awready_converter_1_signal); mp_M01_AXI_transactor->AWREADY(m_m_axi_awready_converter_1_signal); - mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_1"); + mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_1"); mp_m_axi_concat_wdata->in_port[1](m_axi_concat_wdata_out_1); mp_m_axi_concat_wdata->offset_port(1, 32); mp_m_axi_wdata_converter_1->vector_in(m_m_axi_wdata_converter_1_signal); mp_m_axi_wdata_converter_1->vector_out(m_axi_concat_wdata_out_1); mp_M01_AXI_transactor->WDATA(m_m_axi_wdata_converter_1_signal); - mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_1"); + mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_1"); mp_m_axi_concat_wstrb->in_port[1](m_axi_concat_wstrb_out_1); mp_m_axi_concat_wstrb->offset_port(1, 4); mp_m_axi_wstrb_converter_1->vector_in(m_m_axi_wstrb_converter_1_signal); mp_m_axi_wstrb_converter_1->vector_out(m_axi_concat_wstrb_out_1); mp_M01_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_1_signal); - mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_1"); + mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_1"); mp_m_axi_concat_wvalid->in_port[1](m_axi_concat_wvalid_out_1); mp_m_axi_concat_wvalid->offset_port(1, 1); mp_m_axi_wvalid_converter_1->scalar_in(m_m_axi_wvalid_converter_1_signal); mp_m_axi_wvalid_converter_1->vector_out(m_axi_concat_wvalid_out_1); mp_M01_AXI_transactor->WVALID(m_m_axi_wvalid_converter_1_signal); - mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_1"); + mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_1"); mp_m_axi_split_wready->out_port[1](m_axi_split_wready_out_1); mp_m_axi_split_wready->add_mask(1,2,1); mp_m_axi_wready_converter_1->vector_in(m_axi_split_wready_out_1); mp_m_axi_wready_converter_1->scalar_out(m_m_axi_wready_converter_1_signal); mp_M01_AXI_transactor->WREADY(m_m_axi_wready_converter_1_signal); - mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_1"); + mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_1"); mp_m_axi_split_bresp->out_port[1](m_axi_split_bresp_out_1); mp_m_axi_split_bresp->add_mask(1,4,2); mp_m_axi_bresp_converter_1->vector_in(m_axi_split_bresp_out_1); mp_m_axi_bresp_converter_1->vector_out(m_m_axi_bresp_converter_1_signal); mp_M01_AXI_transactor->BRESP(m_m_axi_bresp_converter_1_signal); - mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_1"); + mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_1"); mp_m_axi_split_bvalid->out_port[1](m_axi_split_bvalid_out_1); mp_m_axi_split_bvalid->add_mask(1,2,1); mp_m_axi_bvalid_converter_1->vector_in(m_axi_split_bvalid_out_1); mp_m_axi_bvalid_converter_1->scalar_out(m_m_axi_bvalid_converter_1_signal); mp_M01_AXI_transactor->BVALID(m_m_axi_bvalid_converter_1_signal); - mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_1"); + mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_1"); mp_m_axi_concat_bready->in_port[1](m_axi_concat_bready_out_1); mp_m_axi_concat_bready->offset_port(1, 1); mp_m_axi_bready_converter_1->scalar_in(m_m_axi_bready_converter_1_signal); mp_m_axi_bready_converter_1->vector_out(m_axi_concat_bready_out_1); mp_M01_AXI_transactor->BREADY(m_m_axi_bready_converter_1_signal); - mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_1"); + mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_1"); mp_m_axi_concat_araddr->in_port[1](m_axi_concat_araddr_out_1); mp_m_axi_concat_araddr->offset_port(1, 32); mp_m_axi_araddr_converter_1->vector_in(m_m_axi_araddr_converter_1_signal); mp_m_axi_araddr_converter_1->vector_out(m_axi_concat_araddr_out_1); mp_M01_AXI_transactor->ARADDR(m_m_axi_araddr_converter_1_signal); - mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_1"); + mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_1"); mp_m_axi_concat_arprot->in_port[1](m_axi_concat_arprot_out_1); mp_m_axi_concat_arprot->offset_port(1, 3); mp_m_axi_arprot_converter_1->vector_in(m_m_axi_arprot_converter_1_signal); mp_m_axi_arprot_converter_1->vector_out(m_axi_concat_arprot_out_1); mp_M01_AXI_transactor->ARPROT(m_m_axi_arprot_converter_1_signal); - mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_1"); + mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_1"); mp_m_axi_concat_arvalid->in_port[1](m_axi_concat_arvalid_out_1); mp_m_axi_concat_arvalid->offset_port(1, 1); mp_m_axi_arvalid_converter_1->scalar_in(m_m_axi_arvalid_converter_1_signal); mp_m_axi_arvalid_converter_1->vector_out(m_axi_concat_arvalid_out_1); mp_M01_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_1_signal); - mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_1"); + mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_1"); mp_m_axi_split_arready->out_port[1](m_axi_split_arready_out_1); mp_m_axi_split_arready->add_mask(1,2,1); mp_m_axi_arready_converter_1->vector_in(m_axi_split_arready_out_1); mp_m_axi_arready_converter_1->scalar_out(m_m_axi_arready_converter_1_signal); mp_M01_AXI_transactor->ARREADY(m_m_axi_arready_converter_1_signal); - mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_1"); + mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_1"); mp_m_axi_split_rdata->out_port[1](m_axi_split_rdata_out_1); mp_m_axi_split_rdata->add_mask(1,64,32); mp_m_axi_rdata_converter_1->vector_in(m_axi_split_rdata_out_1); mp_m_axi_rdata_converter_1->vector_out(m_m_axi_rdata_converter_1_signal); mp_M01_AXI_transactor->RDATA(m_m_axi_rdata_converter_1_signal); - mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_1"); + mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_1"); mp_m_axi_split_rresp->out_port[1](m_axi_split_rresp_out_1); mp_m_axi_split_rresp->add_mask(1,4,2); mp_m_axi_rresp_converter_1->vector_in(m_axi_split_rresp_out_1); mp_m_axi_rresp_converter_1->vector_out(m_m_axi_rresp_converter_1_signal); mp_M01_AXI_transactor->RRESP(m_m_axi_rresp_converter_1_signal); - mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_1"); + mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_1"); mp_m_axi_split_rvalid->out_port[1](m_axi_split_rvalid_out_1); mp_m_axi_split_rvalid->add_mask(1,2,1); mp_m_axi_rvalid_converter_1->vector_in(m_axi_split_rvalid_out_1); mp_m_axi_rvalid_converter_1->scalar_out(m_m_axi_rvalid_converter_1_signal); mp_M01_AXI_transactor->RVALID(m_m_axi_rvalid_converter_1_signal); - mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_1"); + mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_1"); mp_m_axi_concat_rready->in_port[1](m_axi_concat_rready_out_1); mp_m_axi_concat_rready->offset_port(1, 1); mp_m_axi_rready_converter_1->scalar_in(m_m_axi_rready_converter_1_signal); @@ -3617,123 +4234,123 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M02_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M02_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M02_AXI_transactor", M02_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_2"); + mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_2"); mp_m_axi_concat_awaddr->in_port[2](m_axi_concat_awaddr_out_2); mp_m_axi_concat_awaddr->offset_port(2, 64); mp_m_axi_awaddr_converter_2->vector_in(m_m_axi_awaddr_converter_2_signal); mp_m_axi_awaddr_converter_2->vector_out(m_axi_concat_awaddr_out_2); mp_M02_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_2_signal); - mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_2"); + mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_2"); mp_m_axi_concat_awprot->in_port[2](m_axi_concat_awprot_out_2); mp_m_axi_concat_awprot->offset_port(2, 6); mp_m_axi_awprot_converter_2->vector_in(m_m_axi_awprot_converter_2_signal); mp_m_axi_awprot_converter_2->vector_out(m_axi_concat_awprot_out_2); mp_M02_AXI_transactor->AWPROT(m_m_axi_awprot_converter_2_signal); - mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_2"); + mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_2"); mp_m_axi_concat_awvalid->in_port[2](m_axi_concat_awvalid_out_2); mp_m_axi_concat_awvalid->offset_port(2, 2); mp_m_axi_awvalid_converter_2->scalar_in(m_m_axi_awvalid_converter_2_signal); mp_m_axi_awvalid_converter_2->vector_out(m_axi_concat_awvalid_out_2); mp_M02_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_2_signal); - mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_2"); + mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_2"); mp_m_axi_split_awready->out_port[2](m_axi_split_awready_out_2); mp_m_axi_split_awready->add_mask(2,3,2); mp_m_axi_awready_converter_2->vector_in(m_axi_split_awready_out_2); mp_m_axi_awready_converter_2->scalar_out(m_m_axi_awready_converter_2_signal); mp_M02_AXI_transactor->AWREADY(m_m_axi_awready_converter_2_signal); - mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_2"); + mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_2"); mp_m_axi_concat_wdata->in_port[2](m_axi_concat_wdata_out_2); mp_m_axi_concat_wdata->offset_port(2, 64); mp_m_axi_wdata_converter_2->vector_in(m_m_axi_wdata_converter_2_signal); mp_m_axi_wdata_converter_2->vector_out(m_axi_concat_wdata_out_2); mp_M02_AXI_transactor->WDATA(m_m_axi_wdata_converter_2_signal); - mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_2"); + mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_2"); mp_m_axi_concat_wstrb->in_port[2](m_axi_concat_wstrb_out_2); mp_m_axi_concat_wstrb->offset_port(2, 8); mp_m_axi_wstrb_converter_2->vector_in(m_m_axi_wstrb_converter_2_signal); mp_m_axi_wstrb_converter_2->vector_out(m_axi_concat_wstrb_out_2); mp_M02_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_2_signal); - mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_2"); + mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_2"); mp_m_axi_concat_wvalid->in_port[2](m_axi_concat_wvalid_out_2); mp_m_axi_concat_wvalid->offset_port(2, 2); mp_m_axi_wvalid_converter_2->scalar_in(m_m_axi_wvalid_converter_2_signal); mp_m_axi_wvalid_converter_2->vector_out(m_axi_concat_wvalid_out_2); mp_M02_AXI_transactor->WVALID(m_m_axi_wvalid_converter_2_signal); - mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_2"); + mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_2"); mp_m_axi_split_wready->out_port[2](m_axi_split_wready_out_2); mp_m_axi_split_wready->add_mask(2,3,2); mp_m_axi_wready_converter_2->vector_in(m_axi_split_wready_out_2); mp_m_axi_wready_converter_2->scalar_out(m_m_axi_wready_converter_2_signal); mp_M02_AXI_transactor->WREADY(m_m_axi_wready_converter_2_signal); - mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_2"); + mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_2"); mp_m_axi_split_bresp->out_port[2](m_axi_split_bresp_out_2); mp_m_axi_split_bresp->add_mask(2,6,4); mp_m_axi_bresp_converter_2->vector_in(m_axi_split_bresp_out_2); mp_m_axi_bresp_converter_2->vector_out(m_m_axi_bresp_converter_2_signal); mp_M02_AXI_transactor->BRESP(m_m_axi_bresp_converter_2_signal); - mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_2"); + mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_2"); mp_m_axi_split_bvalid->out_port[2](m_axi_split_bvalid_out_2); mp_m_axi_split_bvalid->add_mask(2,3,2); mp_m_axi_bvalid_converter_2->vector_in(m_axi_split_bvalid_out_2); mp_m_axi_bvalid_converter_2->scalar_out(m_m_axi_bvalid_converter_2_signal); mp_M02_AXI_transactor->BVALID(m_m_axi_bvalid_converter_2_signal); - mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_2"); + mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_2"); mp_m_axi_concat_bready->in_port[2](m_axi_concat_bready_out_2); mp_m_axi_concat_bready->offset_port(2, 2); mp_m_axi_bready_converter_2->scalar_in(m_m_axi_bready_converter_2_signal); mp_m_axi_bready_converter_2->vector_out(m_axi_concat_bready_out_2); mp_M02_AXI_transactor->BREADY(m_m_axi_bready_converter_2_signal); - mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_2"); + mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_2"); mp_m_axi_concat_araddr->in_port[2](m_axi_concat_araddr_out_2); mp_m_axi_concat_araddr->offset_port(2, 64); mp_m_axi_araddr_converter_2->vector_in(m_m_axi_araddr_converter_2_signal); mp_m_axi_araddr_converter_2->vector_out(m_axi_concat_araddr_out_2); mp_M02_AXI_transactor->ARADDR(m_m_axi_araddr_converter_2_signal); - mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_2"); + mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_2"); mp_m_axi_concat_arprot->in_port[2](m_axi_concat_arprot_out_2); mp_m_axi_concat_arprot->offset_port(2, 6); mp_m_axi_arprot_converter_2->vector_in(m_m_axi_arprot_converter_2_signal); mp_m_axi_arprot_converter_2->vector_out(m_axi_concat_arprot_out_2); mp_M02_AXI_transactor->ARPROT(m_m_axi_arprot_converter_2_signal); - mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_2"); + mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_2"); mp_m_axi_concat_arvalid->in_port[2](m_axi_concat_arvalid_out_2); mp_m_axi_concat_arvalid->offset_port(2, 2); mp_m_axi_arvalid_converter_2->scalar_in(m_m_axi_arvalid_converter_2_signal); mp_m_axi_arvalid_converter_2->vector_out(m_axi_concat_arvalid_out_2); mp_M02_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_2_signal); - mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_2"); + mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_2"); mp_m_axi_split_arready->out_port[2](m_axi_split_arready_out_2); mp_m_axi_split_arready->add_mask(2,3,2); mp_m_axi_arready_converter_2->vector_in(m_axi_split_arready_out_2); mp_m_axi_arready_converter_2->scalar_out(m_m_axi_arready_converter_2_signal); mp_M02_AXI_transactor->ARREADY(m_m_axi_arready_converter_2_signal); - mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_2"); + mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_2"); mp_m_axi_split_rdata->out_port[2](m_axi_split_rdata_out_2); mp_m_axi_split_rdata->add_mask(2,96,64); mp_m_axi_rdata_converter_2->vector_in(m_axi_split_rdata_out_2); mp_m_axi_rdata_converter_2->vector_out(m_m_axi_rdata_converter_2_signal); mp_M02_AXI_transactor->RDATA(m_m_axi_rdata_converter_2_signal); - mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_2"); + mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_2"); mp_m_axi_split_rresp->out_port[2](m_axi_split_rresp_out_2); mp_m_axi_split_rresp->add_mask(2,6,4); mp_m_axi_rresp_converter_2->vector_in(m_axi_split_rresp_out_2); mp_m_axi_rresp_converter_2->vector_out(m_m_axi_rresp_converter_2_signal); mp_M02_AXI_transactor->RRESP(m_m_axi_rresp_converter_2_signal); - mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_2"); + mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_2"); mp_m_axi_split_rvalid->out_port[2](m_axi_split_rvalid_out_2); mp_m_axi_split_rvalid->add_mask(2,3,2); mp_m_axi_rvalid_converter_2->vector_in(m_axi_split_rvalid_out_2); mp_m_axi_rvalid_converter_2->scalar_out(m_m_axi_rvalid_converter_2_signal); mp_M02_AXI_transactor->RVALID(m_m_axi_rvalid_converter_2_signal); - mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_2"); + mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_2"); mp_m_axi_concat_rready->in_port[2](m_axi_concat_rready_out_2); mp_m_axi_concat_rready->offset_port(2, 2); mp_m_axi_rready_converter_2->scalar_in(m_m_axi_rready_converter_2_signal); @@ -3762,8 +4379,8 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M03_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); M03_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); M03_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); - M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); - M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "2"); + M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "2"); M03_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); M03_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); M03_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); @@ -3777,123 +4394,123 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M03_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M03_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M03_AXI_transactor", M03_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_3"); + mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_3"); mp_m_axi_concat_awaddr->in_port[3](m_axi_concat_awaddr_out_3); mp_m_axi_concat_awaddr->offset_port(3, 96); mp_m_axi_awaddr_converter_3->vector_in(m_m_axi_awaddr_converter_3_signal); mp_m_axi_awaddr_converter_3->vector_out(m_axi_concat_awaddr_out_3); mp_M03_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_3_signal); - mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_3"); + mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_3"); mp_m_axi_concat_awprot->in_port[3](m_axi_concat_awprot_out_3); mp_m_axi_concat_awprot->offset_port(3, 9); mp_m_axi_awprot_converter_3->vector_in(m_m_axi_awprot_converter_3_signal); mp_m_axi_awprot_converter_3->vector_out(m_axi_concat_awprot_out_3); mp_M03_AXI_transactor->AWPROT(m_m_axi_awprot_converter_3_signal); - mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_3"); + mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_3"); mp_m_axi_concat_awvalid->in_port[3](m_axi_concat_awvalid_out_3); mp_m_axi_concat_awvalid->offset_port(3, 3); mp_m_axi_awvalid_converter_3->scalar_in(m_m_axi_awvalid_converter_3_signal); mp_m_axi_awvalid_converter_3->vector_out(m_axi_concat_awvalid_out_3); mp_M03_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_3_signal); - mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_3"); + mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_3"); mp_m_axi_split_awready->out_port[3](m_axi_split_awready_out_3); mp_m_axi_split_awready->add_mask(3,4,3); mp_m_axi_awready_converter_3->vector_in(m_axi_split_awready_out_3); mp_m_axi_awready_converter_3->scalar_out(m_m_axi_awready_converter_3_signal); mp_M03_AXI_transactor->AWREADY(m_m_axi_awready_converter_3_signal); - mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_3"); + mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_3"); mp_m_axi_concat_wdata->in_port[3](m_axi_concat_wdata_out_3); mp_m_axi_concat_wdata->offset_port(3, 96); mp_m_axi_wdata_converter_3->vector_in(m_m_axi_wdata_converter_3_signal); mp_m_axi_wdata_converter_3->vector_out(m_axi_concat_wdata_out_3); mp_M03_AXI_transactor->WDATA(m_m_axi_wdata_converter_3_signal); - mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_3"); + mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_3"); mp_m_axi_concat_wstrb->in_port[3](m_axi_concat_wstrb_out_3); mp_m_axi_concat_wstrb->offset_port(3, 12); mp_m_axi_wstrb_converter_3->vector_in(m_m_axi_wstrb_converter_3_signal); mp_m_axi_wstrb_converter_3->vector_out(m_axi_concat_wstrb_out_3); mp_M03_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_3_signal); - mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_3"); + mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_3"); mp_m_axi_concat_wvalid->in_port[3](m_axi_concat_wvalid_out_3); mp_m_axi_concat_wvalid->offset_port(3, 3); mp_m_axi_wvalid_converter_3->scalar_in(m_m_axi_wvalid_converter_3_signal); mp_m_axi_wvalid_converter_3->vector_out(m_axi_concat_wvalid_out_3); mp_M03_AXI_transactor->WVALID(m_m_axi_wvalid_converter_3_signal); - mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_3"); + mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_3"); mp_m_axi_split_wready->out_port[3](m_axi_split_wready_out_3); mp_m_axi_split_wready->add_mask(3,4,3); mp_m_axi_wready_converter_3->vector_in(m_axi_split_wready_out_3); mp_m_axi_wready_converter_3->scalar_out(m_m_axi_wready_converter_3_signal); mp_M03_AXI_transactor->WREADY(m_m_axi_wready_converter_3_signal); - mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_3"); + mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_3"); mp_m_axi_split_bresp->out_port[3](m_axi_split_bresp_out_3); mp_m_axi_split_bresp->add_mask(3,8,6); mp_m_axi_bresp_converter_3->vector_in(m_axi_split_bresp_out_3); mp_m_axi_bresp_converter_3->vector_out(m_m_axi_bresp_converter_3_signal); mp_M03_AXI_transactor->BRESP(m_m_axi_bresp_converter_3_signal); - mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_3"); + mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_3"); mp_m_axi_split_bvalid->out_port[3](m_axi_split_bvalid_out_3); mp_m_axi_split_bvalid->add_mask(3,4,3); mp_m_axi_bvalid_converter_3->vector_in(m_axi_split_bvalid_out_3); mp_m_axi_bvalid_converter_3->scalar_out(m_m_axi_bvalid_converter_3_signal); mp_M03_AXI_transactor->BVALID(m_m_axi_bvalid_converter_3_signal); - mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_3"); + mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_3"); mp_m_axi_concat_bready->in_port[3](m_axi_concat_bready_out_3); mp_m_axi_concat_bready->offset_port(3, 3); mp_m_axi_bready_converter_3->scalar_in(m_m_axi_bready_converter_3_signal); mp_m_axi_bready_converter_3->vector_out(m_axi_concat_bready_out_3); mp_M03_AXI_transactor->BREADY(m_m_axi_bready_converter_3_signal); - mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_3"); + mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_3"); mp_m_axi_concat_araddr->in_port[3](m_axi_concat_araddr_out_3); mp_m_axi_concat_araddr->offset_port(3, 96); mp_m_axi_araddr_converter_3->vector_in(m_m_axi_araddr_converter_3_signal); mp_m_axi_araddr_converter_3->vector_out(m_axi_concat_araddr_out_3); mp_M03_AXI_transactor->ARADDR(m_m_axi_araddr_converter_3_signal); - mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_3"); + mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_3"); mp_m_axi_concat_arprot->in_port[3](m_axi_concat_arprot_out_3); mp_m_axi_concat_arprot->offset_port(3, 9); mp_m_axi_arprot_converter_3->vector_in(m_m_axi_arprot_converter_3_signal); mp_m_axi_arprot_converter_3->vector_out(m_axi_concat_arprot_out_3); mp_M03_AXI_transactor->ARPROT(m_m_axi_arprot_converter_3_signal); - mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_3"); + mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_3"); mp_m_axi_concat_arvalid->in_port[3](m_axi_concat_arvalid_out_3); mp_m_axi_concat_arvalid->offset_port(3, 3); mp_m_axi_arvalid_converter_3->scalar_in(m_m_axi_arvalid_converter_3_signal); mp_m_axi_arvalid_converter_3->vector_out(m_axi_concat_arvalid_out_3); mp_M03_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_3_signal); - mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_3"); + mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_3"); mp_m_axi_split_arready->out_port[3](m_axi_split_arready_out_3); mp_m_axi_split_arready->add_mask(3,4,3); mp_m_axi_arready_converter_3->vector_in(m_axi_split_arready_out_3); mp_m_axi_arready_converter_3->scalar_out(m_m_axi_arready_converter_3_signal); mp_M03_AXI_transactor->ARREADY(m_m_axi_arready_converter_3_signal); - mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_3"); + mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_3"); mp_m_axi_split_rdata->out_port[3](m_axi_split_rdata_out_3); mp_m_axi_split_rdata->add_mask(3,128,96); mp_m_axi_rdata_converter_3->vector_in(m_axi_split_rdata_out_3); mp_m_axi_rdata_converter_3->vector_out(m_m_axi_rdata_converter_3_signal); mp_M03_AXI_transactor->RDATA(m_m_axi_rdata_converter_3_signal); - mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_3"); + mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_3"); mp_m_axi_split_rresp->out_port[3](m_axi_split_rresp_out_3); mp_m_axi_split_rresp->add_mask(3,8,6); mp_m_axi_rresp_converter_3->vector_in(m_axi_split_rresp_out_3); mp_m_axi_rresp_converter_3->vector_out(m_m_axi_rresp_converter_3_signal); mp_M03_AXI_transactor->RRESP(m_m_axi_rresp_converter_3_signal); - mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_3"); + mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_3"); mp_m_axi_split_rvalid->out_port[3](m_axi_split_rvalid_out_3); mp_m_axi_split_rvalid->add_mask(3,4,3); mp_m_axi_rvalid_converter_3->vector_in(m_axi_split_rvalid_out_3); mp_m_axi_rvalid_converter_3->scalar_out(m_m_axi_rvalid_converter_3_signal); mp_M03_AXI_transactor->RVALID(m_m_axi_rvalid_converter_3_signal); - mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_3"); + mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_3"); mp_m_axi_concat_rready->in_port[3](m_axi_concat_rready_out_3); mp_m_axi_concat_rready->offset_port(3, 3); mp_m_axi_rready_converter_3->scalar_in(m_m_axi_rready_converter_3_signal); @@ -3901,6 +4518,166 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_M03_AXI_transactor->RREADY(m_m_axi_rready_converter_3_signal); mp_M03_AXI_transactor->CLK(aclk); mp_M03_AXI_transactor->RST(aresetn); + // configure M04_AXI_transactor + xsc::common_cpp::properties M04_AXI_transactor_param_props; + M04_AXI_transactor_param_props.addLong("DATA_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("FREQ_HZ", "100000000"); + M04_AXI_transactor_param_props.addLong("ID_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ADDR_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("AWUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ARUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("RUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("BUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("HAS_BURST", "0"); + M04_AXI_transactor_param_props.addLong("HAS_LOCK", "0"); + M04_AXI_transactor_param_props.addLong("HAS_PROT", "1"); + M04_AXI_transactor_param_props.addLong("HAS_CACHE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_QOS", "0"); + M04_AXI_transactor_param_props.addLong("HAS_REGION", "0"); + M04_AXI_transactor_param_props.addLong("HAS_WSTRB", "1"); + M04_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); + M04_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); + M04_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); + M04_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); + M04_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("RUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_SIZE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_RESET", "1"); + M04_AXI_transactor_param_props.addFloat("PHASE", "0.0"); + M04_AXI_transactor_param_props.addString("PROTOCOL", "AXI4LITE"); + M04_AXI_transactor_param_props.addString("READ_WRITE_MODE", "READ_WRITE"); + M04_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); + + mp_M04_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M04_AXI_transactor", M04_AXI_transactor_param_props); + mp_m_axi_awaddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_4"); + mp_m_axi_concat_awaddr->in_port[4](m_axi_concat_awaddr_out_4); + mp_m_axi_concat_awaddr->offset_port(4, 128); + mp_m_axi_awaddr_converter_4->vector_in(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awaddr_converter_4->vector_out(m_axi_concat_awaddr_out_4); + mp_M04_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_4"); + mp_m_axi_concat_awprot->in_port[4](m_axi_concat_awprot_out_4); + mp_m_axi_concat_awprot->offset_port(4, 12); + mp_m_axi_awprot_converter_4->vector_in(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awprot_converter_4->vector_out(m_axi_concat_awprot_out_4); + mp_M04_AXI_transactor->AWPROT(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_4"); + mp_m_axi_concat_awvalid->in_port[4](m_axi_concat_awvalid_out_4); + mp_m_axi_concat_awvalid->offset_port(4, 4); + mp_m_axi_awvalid_converter_4->scalar_in(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awvalid_converter_4->vector_out(m_axi_concat_awvalid_out_4); + mp_M04_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_4"); + + mp_m_axi_split_awready->out_port[4](m_axi_split_awready_out_4); + mp_m_axi_split_awready->add_mask(4,5,4); + mp_m_axi_awready_converter_4->vector_in(m_axi_split_awready_out_4); + mp_m_axi_awready_converter_4->scalar_out(m_m_axi_awready_converter_4_signal); + mp_M04_AXI_transactor->AWREADY(m_m_axi_awready_converter_4_signal); + mp_m_axi_wdata_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_4"); + mp_m_axi_concat_wdata->in_port[4](m_axi_concat_wdata_out_4); + mp_m_axi_concat_wdata->offset_port(4, 128); + mp_m_axi_wdata_converter_4->vector_in(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wdata_converter_4->vector_out(m_axi_concat_wdata_out_4); + mp_M04_AXI_transactor->WDATA(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wstrb_converter_4 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_4"); + mp_m_axi_concat_wstrb->in_port[4](m_axi_concat_wstrb_out_4); + mp_m_axi_concat_wstrb->offset_port(4, 16); + mp_m_axi_wstrb_converter_4->vector_in(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wstrb_converter_4->vector_out(m_axi_concat_wstrb_out_4); + mp_M04_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_4"); + mp_m_axi_concat_wvalid->in_port[4](m_axi_concat_wvalid_out_4); + mp_m_axi_concat_wvalid->offset_port(4, 4); + mp_m_axi_wvalid_converter_4->scalar_in(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wvalid_converter_4->vector_out(m_axi_concat_wvalid_out_4); + mp_M04_AXI_transactor->WVALID(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_4"); + + mp_m_axi_split_wready->out_port[4](m_axi_split_wready_out_4); + mp_m_axi_split_wready->add_mask(4,5,4); + mp_m_axi_wready_converter_4->vector_in(m_axi_split_wready_out_4); + mp_m_axi_wready_converter_4->scalar_out(m_m_axi_wready_converter_4_signal); + mp_M04_AXI_transactor->WREADY(m_m_axi_wready_converter_4_signal); + mp_m_axi_bresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_4"); + + mp_m_axi_split_bresp->out_port[4](m_axi_split_bresp_out_4); + mp_m_axi_split_bresp->add_mask(4,10,8); + mp_m_axi_bresp_converter_4->vector_in(m_axi_split_bresp_out_4); + mp_m_axi_bresp_converter_4->vector_out(m_m_axi_bresp_converter_4_signal); + mp_M04_AXI_transactor->BRESP(m_m_axi_bresp_converter_4_signal); + mp_m_axi_bvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_4"); + + mp_m_axi_split_bvalid->out_port[4](m_axi_split_bvalid_out_4); + mp_m_axi_split_bvalid->add_mask(4,5,4); + mp_m_axi_bvalid_converter_4->vector_in(m_axi_split_bvalid_out_4); + mp_m_axi_bvalid_converter_4->scalar_out(m_m_axi_bvalid_converter_4_signal); + mp_M04_AXI_transactor->BVALID(m_m_axi_bvalid_converter_4_signal); + mp_m_axi_bready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_4"); + mp_m_axi_concat_bready->in_port[4](m_axi_concat_bready_out_4); + mp_m_axi_concat_bready->offset_port(4, 4); + mp_m_axi_bready_converter_4->scalar_in(m_m_axi_bready_converter_4_signal); + mp_m_axi_bready_converter_4->vector_out(m_axi_concat_bready_out_4); + mp_M04_AXI_transactor->BREADY(m_m_axi_bready_converter_4_signal); + mp_m_axi_araddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_4"); + mp_m_axi_concat_araddr->in_port[4](m_axi_concat_araddr_out_4); + mp_m_axi_concat_araddr->offset_port(4, 128); + mp_m_axi_araddr_converter_4->vector_in(m_m_axi_araddr_converter_4_signal); + mp_m_axi_araddr_converter_4->vector_out(m_axi_concat_araddr_out_4); + mp_M04_AXI_transactor->ARADDR(m_m_axi_araddr_converter_4_signal); + mp_m_axi_arprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_4"); + mp_m_axi_concat_arprot->in_port[4](m_axi_concat_arprot_out_4); + mp_m_axi_concat_arprot->offset_port(4, 12); + mp_m_axi_arprot_converter_4->vector_in(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arprot_converter_4->vector_out(m_axi_concat_arprot_out_4); + mp_M04_AXI_transactor->ARPROT(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_4"); + mp_m_axi_concat_arvalid->in_port[4](m_axi_concat_arvalid_out_4); + mp_m_axi_concat_arvalid->offset_port(4, 4); + mp_m_axi_arvalid_converter_4->scalar_in(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arvalid_converter_4->vector_out(m_axi_concat_arvalid_out_4); + mp_M04_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_4"); + + mp_m_axi_split_arready->out_port[4](m_axi_split_arready_out_4); + mp_m_axi_split_arready->add_mask(4,5,4); + mp_m_axi_arready_converter_4->vector_in(m_axi_split_arready_out_4); + mp_m_axi_arready_converter_4->scalar_out(m_m_axi_arready_converter_4_signal); + mp_M04_AXI_transactor->ARREADY(m_m_axi_arready_converter_4_signal); + mp_m_axi_rdata_converter_4 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_4"); + + mp_m_axi_split_rdata->out_port[4](m_axi_split_rdata_out_4); + mp_m_axi_split_rdata->add_mask(4,160,128); + mp_m_axi_rdata_converter_4->vector_in(m_axi_split_rdata_out_4); + mp_m_axi_rdata_converter_4->vector_out(m_m_axi_rdata_converter_4_signal); + mp_M04_AXI_transactor->RDATA(m_m_axi_rdata_converter_4_signal); + mp_m_axi_rresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_4"); + + mp_m_axi_split_rresp->out_port[4](m_axi_split_rresp_out_4); + mp_m_axi_split_rresp->add_mask(4,10,8); + mp_m_axi_rresp_converter_4->vector_in(m_axi_split_rresp_out_4); + mp_m_axi_rresp_converter_4->vector_out(m_m_axi_rresp_converter_4_signal); + mp_M04_AXI_transactor->RRESP(m_m_axi_rresp_converter_4_signal); + mp_m_axi_rvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_4"); + + mp_m_axi_split_rvalid->out_port[4](m_axi_split_rvalid_out_4); + mp_m_axi_split_rvalid->add_mask(4,5,4); + mp_m_axi_rvalid_converter_4->vector_in(m_axi_split_rvalid_out_4); + mp_m_axi_rvalid_converter_4->scalar_out(m_m_axi_rvalid_converter_4_signal); + mp_M04_AXI_transactor->RVALID(m_m_axi_rvalid_converter_4_signal); + mp_m_axi_rready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_4"); + mp_m_axi_concat_rready->in_port[4](m_axi_concat_rready_out_4); + mp_m_axi_concat_rready->offset_port(4, 4); + mp_m_axi_rready_converter_4->scalar_in(m_m_axi_rready_converter_4_signal); + mp_m_axi_rready_converter_4->vector_out(m_axi_concat_rready_out_4); + mp_M04_AXI_transactor->RREADY(m_m_axi_rready_converter_4_signal); + mp_M04_AXI_transactor->CLK(aclk); + mp_M04_AXI_transactor->RST(aresetn); // initialize transactors stubs S00_AXI_transactor_target_wr_socket_stub = nullptr; @@ -3913,6 +4690,8 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M02_AXI_transactor_initiator_rd_socket_stub = nullptr; M03_AXI_transactor_initiator_wr_socket_stub = nullptr; M03_AXI_transactor_initiator_rd_socket_stub = nullptr; + M04_AXI_transactor_initiator_wr_socket_stub = nullptr; + M04_AXI_transactor_initiator_rd_socket_stub = nullptr; } @@ -3998,6 +4777,22 @@ void mb_design_1_xbar_0::before_end_of_elaboration() mp_M03_AXI_transactor->disable_transactor(); } + // configure 'M04_AXI' transactor + if (xsc::utils::xsc_sim_manager::getInstanceParameterInt("mb_design_1_xbar_0", "M04_AXI_TLM_MODE") != 1) + { + mp_impl->initiator_4_rd_socket->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_impl->initiator_4_wr_socket->bind(*(mp_M04_AXI_transactor->wr_socket)); + + } + else + { + M04_AXI_transactor_initiator_wr_socket_stub = new xtlm::xtlm_aximm_initiator_stub("wr_socket",0); + M04_AXI_transactor_initiator_wr_socket_stub->bind(*(mp_M04_AXI_transactor->wr_socket)); + M04_AXI_transactor_initiator_rd_socket_stub = new xtlm::xtlm_aximm_initiator_stub("rd_socket",0); + M04_AXI_transactor_initiator_rd_socket_stub->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_M04_AXI_transactor->disable_transactor(); + } + } #endif // VCSSYSTEMC @@ -4104,6 +4899,26 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_m_axi_rresp_converter_3 = NULL; mp_m_axi_rvalid_converter_3 = NULL; mp_m_axi_rready_converter_3 = NULL; + mp_M04_AXI_transactor = NULL; + mp_m_axi_awaddr_converter_4 = NULL; + mp_m_axi_awprot_converter_4 = NULL; + mp_m_axi_awvalid_converter_4 = NULL; + mp_m_axi_awready_converter_4 = NULL; + mp_m_axi_wdata_converter_4 = NULL; + mp_m_axi_wstrb_converter_4 = NULL; + mp_m_axi_wvalid_converter_4 = NULL; + mp_m_axi_wready_converter_4 = NULL; + mp_m_axi_bresp_converter_4 = NULL; + mp_m_axi_bvalid_converter_4 = NULL; + mp_m_axi_bready_converter_4 = NULL; + mp_m_axi_araddr_converter_4 = NULL; + mp_m_axi_arprot_converter_4 = NULL; + mp_m_axi_arvalid_converter_4 = NULL; + mp_m_axi_arready_converter_4 = NULL; + mp_m_axi_rdata_converter_4 = NULL; + mp_m_axi_rresp_converter_4 = NULL; + mp_m_axi_rvalid_converter_4 = NULL; + mp_m_axi_rready_converter_4 = NULL; // initialize port junctures mp_m_axi_concat_araddr = NULL; @@ -4251,152 +5066,152 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M00_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M00_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M00_AXI_transactor", M00_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_0"); - mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_awaddr"); + mp_m_axi_awaddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_0"); + mp_m_axi_concat_awaddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_awaddr"); mp_m_axi_concat_awaddr->in_port[0](m_axi_concat_awaddr_out_0); mp_m_axi_concat_awaddr->out_port(m_axi_awaddr); mp_m_axi_concat_awaddr->offset_port(0, 0); mp_m_axi_awaddr_converter_0->vector_in(m_m_axi_awaddr_converter_0_signal); mp_m_axi_awaddr_converter_0->vector_out(m_axi_concat_awaddr_out_0); mp_M00_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_0_signal); - mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_0"); - mp_m_axi_concat_awprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_awprot"); + mp_m_axi_awprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_0"); + mp_m_axi_concat_awprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_awprot"); mp_m_axi_concat_awprot->in_port[0](m_axi_concat_awprot_out_0); mp_m_axi_concat_awprot->out_port(m_axi_awprot); mp_m_axi_concat_awprot->offset_port(0, 0); mp_m_axi_awprot_converter_0->vector_in(m_m_axi_awprot_converter_0_signal); mp_m_axi_awprot_converter_0->vector_out(m_axi_concat_awprot_out_0); mp_M00_AXI_transactor->AWPROT(m_m_axi_awprot_converter_0_signal); - mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_0"); - mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_awvalid"); + mp_m_axi_awvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_0"); + mp_m_axi_concat_awvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_awvalid"); mp_m_axi_concat_awvalid->in_port[0](m_axi_concat_awvalid_out_0); mp_m_axi_concat_awvalid->out_port(m_axi_awvalid); mp_m_axi_concat_awvalid->offset_port(0, 0); mp_m_axi_awvalid_converter_0->scalar_in(m_m_axi_awvalid_converter_0_signal); mp_m_axi_awvalid_converter_0->vector_out(m_axi_concat_awvalid_out_0); mp_M00_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_0_signal); - mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_0"); - mp_m_axi_split_awready = new xsc::xsc_split<4, 4>("m_axi_split_awready"); + mp_m_axi_awready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_0"); + mp_m_axi_split_awready = new xsc::xsc_split<5, 5>("m_axi_split_awready"); mp_m_axi_split_awready->in_port(m_axi_awready); mp_m_axi_split_awready->out_port[0](m_axi_split_awready_out_0); mp_m_axi_split_awready->add_mask(0,1,0); mp_m_axi_awready_converter_0->vector_in(m_axi_split_awready_out_0); mp_m_axi_awready_converter_0->scalar_out(m_m_axi_awready_converter_0_signal); mp_M00_AXI_transactor->AWREADY(m_m_axi_awready_converter_0_signal); - mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_0"); - mp_m_axi_concat_wdata = new xsc::xsc_concatenator<128, 4>("m_axi_concat_wdata"); + mp_m_axi_wdata_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_0"); + mp_m_axi_concat_wdata = new xsc::xsc_concatenator<160, 5>("m_axi_concat_wdata"); mp_m_axi_concat_wdata->in_port[0](m_axi_concat_wdata_out_0); mp_m_axi_concat_wdata->out_port(m_axi_wdata); mp_m_axi_concat_wdata->offset_port(0, 0); mp_m_axi_wdata_converter_0->vector_in(m_m_axi_wdata_converter_0_signal); mp_m_axi_wdata_converter_0->vector_out(m_axi_concat_wdata_out_0); mp_M00_AXI_transactor->WDATA(m_m_axi_wdata_converter_0_signal); - mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_0"); - mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<16, 4>("m_axi_concat_wstrb"); + mp_m_axi_wstrb_converter_0 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_0"); + mp_m_axi_concat_wstrb = new xsc::xsc_concatenator<20, 5>("m_axi_concat_wstrb"); mp_m_axi_concat_wstrb->in_port[0](m_axi_concat_wstrb_out_0); mp_m_axi_concat_wstrb->out_port(m_axi_wstrb); mp_m_axi_concat_wstrb->offset_port(0, 0); mp_m_axi_wstrb_converter_0->vector_in(m_m_axi_wstrb_converter_0_signal); mp_m_axi_wstrb_converter_0->vector_out(m_axi_concat_wstrb_out_0); mp_M00_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_0_signal); - mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_0"); - mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_wvalid"); + mp_m_axi_wvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_0"); + mp_m_axi_concat_wvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_wvalid"); mp_m_axi_concat_wvalid->in_port[0](m_axi_concat_wvalid_out_0); mp_m_axi_concat_wvalid->out_port(m_axi_wvalid); mp_m_axi_concat_wvalid->offset_port(0, 0); mp_m_axi_wvalid_converter_0->scalar_in(m_m_axi_wvalid_converter_0_signal); mp_m_axi_wvalid_converter_0->vector_out(m_axi_concat_wvalid_out_0); mp_M00_AXI_transactor->WVALID(m_m_axi_wvalid_converter_0_signal); - mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_0"); - mp_m_axi_split_wready = new xsc::xsc_split<4, 4>("m_axi_split_wready"); + mp_m_axi_wready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_0"); + mp_m_axi_split_wready = new xsc::xsc_split<5, 5>("m_axi_split_wready"); mp_m_axi_split_wready->in_port(m_axi_wready); mp_m_axi_split_wready->out_port[0](m_axi_split_wready_out_0); mp_m_axi_split_wready->add_mask(0,1,0); mp_m_axi_wready_converter_0->vector_in(m_axi_split_wready_out_0); mp_m_axi_wready_converter_0->scalar_out(m_m_axi_wready_converter_0_signal); mp_M00_AXI_transactor->WREADY(m_m_axi_wready_converter_0_signal); - mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_0"); - mp_m_axi_split_bresp = new xsc::xsc_split<8, 4>("m_axi_split_bresp"); + mp_m_axi_bresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_0"); + mp_m_axi_split_bresp = new xsc::xsc_split<10, 5>("m_axi_split_bresp"); mp_m_axi_split_bresp->in_port(m_axi_bresp); mp_m_axi_split_bresp->out_port[0](m_axi_split_bresp_out_0); mp_m_axi_split_bresp->add_mask(0,2,0); mp_m_axi_bresp_converter_0->vector_in(m_axi_split_bresp_out_0); mp_m_axi_bresp_converter_0->vector_out(m_m_axi_bresp_converter_0_signal); mp_M00_AXI_transactor->BRESP(m_m_axi_bresp_converter_0_signal); - mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_0"); - mp_m_axi_split_bvalid = new xsc::xsc_split<4, 4>("m_axi_split_bvalid"); + mp_m_axi_bvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_0"); + mp_m_axi_split_bvalid = new xsc::xsc_split<5, 5>("m_axi_split_bvalid"); mp_m_axi_split_bvalid->in_port(m_axi_bvalid); mp_m_axi_split_bvalid->out_port[0](m_axi_split_bvalid_out_0); mp_m_axi_split_bvalid->add_mask(0,1,0); mp_m_axi_bvalid_converter_0->vector_in(m_axi_split_bvalid_out_0); mp_m_axi_bvalid_converter_0->scalar_out(m_m_axi_bvalid_converter_0_signal); mp_M00_AXI_transactor->BVALID(m_m_axi_bvalid_converter_0_signal); - mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_0"); - mp_m_axi_concat_bready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_bready"); + mp_m_axi_bready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_0"); + mp_m_axi_concat_bready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_bready"); mp_m_axi_concat_bready->in_port[0](m_axi_concat_bready_out_0); mp_m_axi_concat_bready->out_port(m_axi_bready); mp_m_axi_concat_bready->offset_port(0, 0); mp_m_axi_bready_converter_0->scalar_in(m_m_axi_bready_converter_0_signal); mp_m_axi_bready_converter_0->vector_out(m_axi_concat_bready_out_0); mp_M00_AXI_transactor->BREADY(m_m_axi_bready_converter_0_signal); - mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_0"); - mp_m_axi_concat_araddr = new xsc::xsc_concatenator<128, 4>("m_axi_concat_araddr"); + mp_m_axi_araddr_converter_0 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_0"); + mp_m_axi_concat_araddr = new xsc::xsc_concatenator<160, 5>("m_axi_concat_araddr"); mp_m_axi_concat_araddr->in_port[0](m_axi_concat_araddr_out_0); mp_m_axi_concat_araddr->out_port(m_axi_araddr); mp_m_axi_concat_araddr->offset_port(0, 0); mp_m_axi_araddr_converter_0->vector_in(m_m_axi_araddr_converter_0_signal); mp_m_axi_araddr_converter_0->vector_out(m_axi_concat_araddr_out_0); mp_M00_AXI_transactor->ARADDR(m_m_axi_araddr_converter_0_signal); - mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_0"); - mp_m_axi_concat_arprot = new xsc::xsc_concatenator<12, 4>("m_axi_concat_arprot"); + mp_m_axi_arprot_converter_0 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_0"); + mp_m_axi_concat_arprot = new xsc::xsc_concatenator<15, 5>("m_axi_concat_arprot"); mp_m_axi_concat_arprot->in_port[0](m_axi_concat_arprot_out_0); mp_m_axi_concat_arprot->out_port(m_axi_arprot); mp_m_axi_concat_arprot->offset_port(0, 0); mp_m_axi_arprot_converter_0->vector_in(m_m_axi_arprot_converter_0_signal); mp_m_axi_arprot_converter_0->vector_out(m_axi_concat_arprot_out_0); mp_M00_AXI_transactor->ARPROT(m_m_axi_arprot_converter_0_signal); - mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_0"); - mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<4, 4>("m_axi_concat_arvalid"); + mp_m_axi_arvalid_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_0"); + mp_m_axi_concat_arvalid = new xsc::xsc_concatenator<5, 5>("m_axi_concat_arvalid"); mp_m_axi_concat_arvalid->in_port[0](m_axi_concat_arvalid_out_0); mp_m_axi_concat_arvalid->out_port(m_axi_arvalid); mp_m_axi_concat_arvalid->offset_port(0, 0); mp_m_axi_arvalid_converter_0->scalar_in(m_m_axi_arvalid_converter_0_signal); mp_m_axi_arvalid_converter_0->vector_out(m_axi_concat_arvalid_out_0); mp_M00_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_0_signal); - mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_0"); - mp_m_axi_split_arready = new xsc::xsc_split<4, 4>("m_axi_split_arready"); + mp_m_axi_arready_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_0"); + mp_m_axi_split_arready = new xsc::xsc_split<5, 5>("m_axi_split_arready"); mp_m_axi_split_arready->in_port(m_axi_arready); mp_m_axi_split_arready->out_port[0](m_axi_split_arready_out_0); mp_m_axi_split_arready->add_mask(0,1,0); mp_m_axi_arready_converter_0->vector_in(m_axi_split_arready_out_0); mp_m_axi_arready_converter_0->scalar_out(m_m_axi_arready_converter_0_signal); mp_M00_AXI_transactor->ARREADY(m_m_axi_arready_converter_0_signal); - mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_0"); - mp_m_axi_split_rdata = new xsc::xsc_split<128, 4>("m_axi_split_rdata"); + mp_m_axi_rdata_converter_0 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_0"); + mp_m_axi_split_rdata = new xsc::xsc_split<160, 5>("m_axi_split_rdata"); mp_m_axi_split_rdata->in_port(m_axi_rdata); mp_m_axi_split_rdata->out_port[0](m_axi_split_rdata_out_0); mp_m_axi_split_rdata->add_mask(0,32,0); mp_m_axi_rdata_converter_0->vector_in(m_axi_split_rdata_out_0); mp_m_axi_rdata_converter_0->vector_out(m_m_axi_rdata_converter_0_signal); mp_M00_AXI_transactor->RDATA(m_m_axi_rdata_converter_0_signal); - mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_0"); - mp_m_axi_split_rresp = new xsc::xsc_split<8, 4>("m_axi_split_rresp"); + mp_m_axi_rresp_converter_0 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_0"); + mp_m_axi_split_rresp = new xsc::xsc_split<10, 5>("m_axi_split_rresp"); mp_m_axi_split_rresp->in_port(m_axi_rresp); mp_m_axi_split_rresp->out_port[0](m_axi_split_rresp_out_0); mp_m_axi_split_rresp->add_mask(0,2,0); mp_m_axi_rresp_converter_0->vector_in(m_axi_split_rresp_out_0); mp_m_axi_rresp_converter_0->vector_out(m_m_axi_rresp_converter_0_signal); mp_M00_AXI_transactor->RRESP(m_m_axi_rresp_converter_0_signal); - mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_0"); - mp_m_axi_split_rvalid = new xsc::xsc_split<4, 4>("m_axi_split_rvalid"); + mp_m_axi_rvalid_converter_0 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_0"); + mp_m_axi_split_rvalid = new xsc::xsc_split<5, 5>("m_axi_split_rvalid"); mp_m_axi_split_rvalid->in_port(m_axi_rvalid); mp_m_axi_split_rvalid->out_port[0](m_axi_split_rvalid_out_0); mp_m_axi_split_rvalid->add_mask(0,1,0); mp_m_axi_rvalid_converter_0->vector_in(m_axi_split_rvalid_out_0); mp_m_axi_rvalid_converter_0->scalar_out(m_m_axi_rvalid_converter_0_signal); mp_M00_AXI_transactor->RVALID(m_m_axi_rvalid_converter_0_signal); - mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_0"); - mp_m_axi_concat_rready = new xsc::xsc_concatenator<4, 4>("m_axi_concat_rready"); + mp_m_axi_rready_converter_0 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_0"); + mp_m_axi_concat_rready = new xsc::xsc_concatenator<5, 5>("m_axi_concat_rready"); mp_m_axi_concat_rready->in_port[0](m_axi_concat_rready_out_0); mp_m_axi_concat_rready->out_port(m_axi_rready); mp_m_axi_concat_rready->offset_port(0, 0); @@ -4441,123 +5256,123 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M01_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M01_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M01_AXI_transactor", M01_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_1"); + mp_m_axi_awaddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_1"); mp_m_axi_concat_awaddr->in_port[1](m_axi_concat_awaddr_out_1); mp_m_axi_concat_awaddr->offset_port(1, 32); mp_m_axi_awaddr_converter_1->vector_in(m_m_axi_awaddr_converter_1_signal); mp_m_axi_awaddr_converter_1->vector_out(m_axi_concat_awaddr_out_1); mp_M01_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_1_signal); - mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_1"); + mp_m_axi_awprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_1"); mp_m_axi_concat_awprot->in_port[1](m_axi_concat_awprot_out_1); mp_m_axi_concat_awprot->offset_port(1, 3); mp_m_axi_awprot_converter_1->vector_in(m_m_axi_awprot_converter_1_signal); mp_m_axi_awprot_converter_1->vector_out(m_axi_concat_awprot_out_1); mp_M01_AXI_transactor->AWPROT(m_m_axi_awprot_converter_1_signal); - mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_1"); + mp_m_axi_awvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_1"); mp_m_axi_concat_awvalid->in_port[1](m_axi_concat_awvalid_out_1); mp_m_axi_concat_awvalid->offset_port(1, 1); mp_m_axi_awvalid_converter_1->scalar_in(m_m_axi_awvalid_converter_1_signal); mp_m_axi_awvalid_converter_1->vector_out(m_axi_concat_awvalid_out_1); mp_M01_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_1_signal); - mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_1"); + mp_m_axi_awready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_1"); mp_m_axi_split_awready->out_port[1](m_axi_split_awready_out_1); mp_m_axi_split_awready->add_mask(1,2,1); mp_m_axi_awready_converter_1->vector_in(m_axi_split_awready_out_1); mp_m_axi_awready_converter_1->scalar_out(m_m_axi_awready_converter_1_signal); mp_M01_AXI_transactor->AWREADY(m_m_axi_awready_converter_1_signal); - mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_1"); + mp_m_axi_wdata_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_1"); mp_m_axi_concat_wdata->in_port[1](m_axi_concat_wdata_out_1); mp_m_axi_concat_wdata->offset_port(1, 32); mp_m_axi_wdata_converter_1->vector_in(m_m_axi_wdata_converter_1_signal); mp_m_axi_wdata_converter_1->vector_out(m_axi_concat_wdata_out_1); mp_M01_AXI_transactor->WDATA(m_m_axi_wdata_converter_1_signal); - mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_1"); + mp_m_axi_wstrb_converter_1 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_1"); mp_m_axi_concat_wstrb->in_port[1](m_axi_concat_wstrb_out_1); mp_m_axi_concat_wstrb->offset_port(1, 4); mp_m_axi_wstrb_converter_1->vector_in(m_m_axi_wstrb_converter_1_signal); mp_m_axi_wstrb_converter_1->vector_out(m_axi_concat_wstrb_out_1); mp_M01_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_1_signal); - mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_1"); + mp_m_axi_wvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_1"); mp_m_axi_concat_wvalid->in_port[1](m_axi_concat_wvalid_out_1); mp_m_axi_concat_wvalid->offset_port(1, 1); mp_m_axi_wvalid_converter_1->scalar_in(m_m_axi_wvalid_converter_1_signal); mp_m_axi_wvalid_converter_1->vector_out(m_axi_concat_wvalid_out_1); mp_M01_AXI_transactor->WVALID(m_m_axi_wvalid_converter_1_signal); - mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_1"); + mp_m_axi_wready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_1"); mp_m_axi_split_wready->out_port[1](m_axi_split_wready_out_1); mp_m_axi_split_wready->add_mask(1,2,1); mp_m_axi_wready_converter_1->vector_in(m_axi_split_wready_out_1); mp_m_axi_wready_converter_1->scalar_out(m_m_axi_wready_converter_1_signal); mp_M01_AXI_transactor->WREADY(m_m_axi_wready_converter_1_signal); - mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_1"); + mp_m_axi_bresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_1"); mp_m_axi_split_bresp->out_port[1](m_axi_split_bresp_out_1); mp_m_axi_split_bresp->add_mask(1,4,2); mp_m_axi_bresp_converter_1->vector_in(m_axi_split_bresp_out_1); mp_m_axi_bresp_converter_1->vector_out(m_m_axi_bresp_converter_1_signal); mp_M01_AXI_transactor->BRESP(m_m_axi_bresp_converter_1_signal); - mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_1"); + mp_m_axi_bvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_1"); mp_m_axi_split_bvalid->out_port[1](m_axi_split_bvalid_out_1); mp_m_axi_split_bvalid->add_mask(1,2,1); mp_m_axi_bvalid_converter_1->vector_in(m_axi_split_bvalid_out_1); mp_m_axi_bvalid_converter_1->scalar_out(m_m_axi_bvalid_converter_1_signal); mp_M01_AXI_transactor->BVALID(m_m_axi_bvalid_converter_1_signal); - mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_1"); + mp_m_axi_bready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_1"); mp_m_axi_concat_bready->in_port[1](m_axi_concat_bready_out_1); mp_m_axi_concat_bready->offset_port(1, 1); mp_m_axi_bready_converter_1->scalar_in(m_m_axi_bready_converter_1_signal); mp_m_axi_bready_converter_1->vector_out(m_axi_concat_bready_out_1); mp_M01_AXI_transactor->BREADY(m_m_axi_bready_converter_1_signal); - mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_1"); + mp_m_axi_araddr_converter_1 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_1"); mp_m_axi_concat_araddr->in_port[1](m_axi_concat_araddr_out_1); mp_m_axi_concat_araddr->offset_port(1, 32); mp_m_axi_araddr_converter_1->vector_in(m_m_axi_araddr_converter_1_signal); mp_m_axi_araddr_converter_1->vector_out(m_axi_concat_araddr_out_1); mp_M01_AXI_transactor->ARADDR(m_m_axi_araddr_converter_1_signal); - mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_1"); + mp_m_axi_arprot_converter_1 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_1"); mp_m_axi_concat_arprot->in_port[1](m_axi_concat_arprot_out_1); mp_m_axi_concat_arprot->offset_port(1, 3); mp_m_axi_arprot_converter_1->vector_in(m_m_axi_arprot_converter_1_signal); mp_m_axi_arprot_converter_1->vector_out(m_axi_concat_arprot_out_1); mp_M01_AXI_transactor->ARPROT(m_m_axi_arprot_converter_1_signal); - mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_1"); + mp_m_axi_arvalid_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_1"); mp_m_axi_concat_arvalid->in_port[1](m_axi_concat_arvalid_out_1); mp_m_axi_concat_arvalid->offset_port(1, 1); mp_m_axi_arvalid_converter_1->scalar_in(m_m_axi_arvalid_converter_1_signal); mp_m_axi_arvalid_converter_1->vector_out(m_axi_concat_arvalid_out_1); mp_M01_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_1_signal); - mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_1"); + mp_m_axi_arready_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_1"); mp_m_axi_split_arready->out_port[1](m_axi_split_arready_out_1); mp_m_axi_split_arready->add_mask(1,2,1); mp_m_axi_arready_converter_1->vector_in(m_axi_split_arready_out_1); mp_m_axi_arready_converter_1->scalar_out(m_m_axi_arready_converter_1_signal); mp_M01_AXI_transactor->ARREADY(m_m_axi_arready_converter_1_signal); - mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_1"); + mp_m_axi_rdata_converter_1 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_1"); mp_m_axi_split_rdata->out_port[1](m_axi_split_rdata_out_1); mp_m_axi_split_rdata->add_mask(1,64,32); mp_m_axi_rdata_converter_1->vector_in(m_axi_split_rdata_out_1); mp_m_axi_rdata_converter_1->vector_out(m_m_axi_rdata_converter_1_signal); mp_M01_AXI_transactor->RDATA(m_m_axi_rdata_converter_1_signal); - mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_1"); + mp_m_axi_rresp_converter_1 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_1"); mp_m_axi_split_rresp->out_port[1](m_axi_split_rresp_out_1); mp_m_axi_split_rresp->add_mask(1,4,2); mp_m_axi_rresp_converter_1->vector_in(m_axi_split_rresp_out_1); mp_m_axi_rresp_converter_1->vector_out(m_m_axi_rresp_converter_1_signal); mp_M01_AXI_transactor->RRESP(m_m_axi_rresp_converter_1_signal); - mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_1"); + mp_m_axi_rvalid_converter_1 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_1"); mp_m_axi_split_rvalid->out_port[1](m_axi_split_rvalid_out_1); mp_m_axi_split_rvalid->add_mask(1,2,1); mp_m_axi_rvalid_converter_1->vector_in(m_axi_split_rvalid_out_1); mp_m_axi_rvalid_converter_1->scalar_out(m_m_axi_rvalid_converter_1_signal); mp_M01_AXI_transactor->RVALID(m_m_axi_rvalid_converter_1_signal); - mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_1"); + mp_m_axi_rready_converter_1 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_1"); mp_m_axi_concat_rready->in_port[1](m_axi_concat_rready_out_1); mp_m_axi_concat_rready->offset_port(1, 1); mp_m_axi_rready_converter_1->scalar_in(m_m_axi_rready_converter_1_signal); @@ -4601,123 +5416,123 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M02_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M02_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M02_AXI_transactor", M02_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_2"); + mp_m_axi_awaddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_2"); mp_m_axi_concat_awaddr->in_port[2](m_axi_concat_awaddr_out_2); mp_m_axi_concat_awaddr->offset_port(2, 64); mp_m_axi_awaddr_converter_2->vector_in(m_m_axi_awaddr_converter_2_signal); mp_m_axi_awaddr_converter_2->vector_out(m_axi_concat_awaddr_out_2); mp_M02_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_2_signal); - mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_2"); + mp_m_axi_awprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_2"); mp_m_axi_concat_awprot->in_port[2](m_axi_concat_awprot_out_2); mp_m_axi_concat_awprot->offset_port(2, 6); mp_m_axi_awprot_converter_2->vector_in(m_m_axi_awprot_converter_2_signal); mp_m_axi_awprot_converter_2->vector_out(m_axi_concat_awprot_out_2); mp_M02_AXI_transactor->AWPROT(m_m_axi_awprot_converter_2_signal); - mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_2"); + mp_m_axi_awvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_2"); mp_m_axi_concat_awvalid->in_port[2](m_axi_concat_awvalid_out_2); mp_m_axi_concat_awvalid->offset_port(2, 2); mp_m_axi_awvalid_converter_2->scalar_in(m_m_axi_awvalid_converter_2_signal); mp_m_axi_awvalid_converter_2->vector_out(m_axi_concat_awvalid_out_2); mp_M02_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_2_signal); - mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_2"); + mp_m_axi_awready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_2"); mp_m_axi_split_awready->out_port[2](m_axi_split_awready_out_2); mp_m_axi_split_awready->add_mask(2,3,2); mp_m_axi_awready_converter_2->vector_in(m_axi_split_awready_out_2); mp_m_axi_awready_converter_2->scalar_out(m_m_axi_awready_converter_2_signal); mp_M02_AXI_transactor->AWREADY(m_m_axi_awready_converter_2_signal); - mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_2"); + mp_m_axi_wdata_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_2"); mp_m_axi_concat_wdata->in_port[2](m_axi_concat_wdata_out_2); mp_m_axi_concat_wdata->offset_port(2, 64); mp_m_axi_wdata_converter_2->vector_in(m_m_axi_wdata_converter_2_signal); mp_m_axi_wdata_converter_2->vector_out(m_axi_concat_wdata_out_2); mp_M02_AXI_transactor->WDATA(m_m_axi_wdata_converter_2_signal); - mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_2"); + mp_m_axi_wstrb_converter_2 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_2"); mp_m_axi_concat_wstrb->in_port[2](m_axi_concat_wstrb_out_2); mp_m_axi_concat_wstrb->offset_port(2, 8); mp_m_axi_wstrb_converter_2->vector_in(m_m_axi_wstrb_converter_2_signal); mp_m_axi_wstrb_converter_2->vector_out(m_axi_concat_wstrb_out_2); mp_M02_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_2_signal); - mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_2"); + mp_m_axi_wvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_2"); mp_m_axi_concat_wvalid->in_port[2](m_axi_concat_wvalid_out_2); mp_m_axi_concat_wvalid->offset_port(2, 2); mp_m_axi_wvalid_converter_2->scalar_in(m_m_axi_wvalid_converter_2_signal); mp_m_axi_wvalid_converter_2->vector_out(m_axi_concat_wvalid_out_2); mp_M02_AXI_transactor->WVALID(m_m_axi_wvalid_converter_2_signal); - mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_2"); + mp_m_axi_wready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_2"); mp_m_axi_split_wready->out_port[2](m_axi_split_wready_out_2); mp_m_axi_split_wready->add_mask(2,3,2); mp_m_axi_wready_converter_2->vector_in(m_axi_split_wready_out_2); mp_m_axi_wready_converter_2->scalar_out(m_m_axi_wready_converter_2_signal); mp_M02_AXI_transactor->WREADY(m_m_axi_wready_converter_2_signal); - mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_2"); + mp_m_axi_bresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_2"); mp_m_axi_split_bresp->out_port[2](m_axi_split_bresp_out_2); mp_m_axi_split_bresp->add_mask(2,6,4); mp_m_axi_bresp_converter_2->vector_in(m_axi_split_bresp_out_2); mp_m_axi_bresp_converter_2->vector_out(m_m_axi_bresp_converter_2_signal); mp_M02_AXI_transactor->BRESP(m_m_axi_bresp_converter_2_signal); - mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_2"); + mp_m_axi_bvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_2"); mp_m_axi_split_bvalid->out_port[2](m_axi_split_bvalid_out_2); mp_m_axi_split_bvalid->add_mask(2,3,2); mp_m_axi_bvalid_converter_2->vector_in(m_axi_split_bvalid_out_2); mp_m_axi_bvalid_converter_2->scalar_out(m_m_axi_bvalid_converter_2_signal); mp_M02_AXI_transactor->BVALID(m_m_axi_bvalid_converter_2_signal); - mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_2"); + mp_m_axi_bready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_2"); mp_m_axi_concat_bready->in_port[2](m_axi_concat_bready_out_2); mp_m_axi_concat_bready->offset_port(2, 2); mp_m_axi_bready_converter_2->scalar_in(m_m_axi_bready_converter_2_signal); mp_m_axi_bready_converter_2->vector_out(m_axi_concat_bready_out_2); mp_M02_AXI_transactor->BREADY(m_m_axi_bready_converter_2_signal); - mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_2"); + mp_m_axi_araddr_converter_2 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_2"); mp_m_axi_concat_araddr->in_port[2](m_axi_concat_araddr_out_2); mp_m_axi_concat_araddr->offset_port(2, 64); mp_m_axi_araddr_converter_2->vector_in(m_m_axi_araddr_converter_2_signal); mp_m_axi_araddr_converter_2->vector_out(m_axi_concat_araddr_out_2); mp_M02_AXI_transactor->ARADDR(m_m_axi_araddr_converter_2_signal); - mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_2"); + mp_m_axi_arprot_converter_2 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_2"); mp_m_axi_concat_arprot->in_port[2](m_axi_concat_arprot_out_2); mp_m_axi_concat_arprot->offset_port(2, 6); mp_m_axi_arprot_converter_2->vector_in(m_m_axi_arprot_converter_2_signal); mp_m_axi_arprot_converter_2->vector_out(m_axi_concat_arprot_out_2); mp_M02_AXI_transactor->ARPROT(m_m_axi_arprot_converter_2_signal); - mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_2"); + mp_m_axi_arvalid_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_2"); mp_m_axi_concat_arvalid->in_port[2](m_axi_concat_arvalid_out_2); mp_m_axi_concat_arvalid->offset_port(2, 2); mp_m_axi_arvalid_converter_2->scalar_in(m_m_axi_arvalid_converter_2_signal); mp_m_axi_arvalid_converter_2->vector_out(m_axi_concat_arvalid_out_2); mp_M02_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_2_signal); - mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_2"); + mp_m_axi_arready_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_2"); mp_m_axi_split_arready->out_port[2](m_axi_split_arready_out_2); mp_m_axi_split_arready->add_mask(2,3,2); mp_m_axi_arready_converter_2->vector_in(m_axi_split_arready_out_2); mp_m_axi_arready_converter_2->scalar_out(m_m_axi_arready_converter_2_signal); mp_M02_AXI_transactor->ARREADY(m_m_axi_arready_converter_2_signal); - mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_2"); + mp_m_axi_rdata_converter_2 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_2"); mp_m_axi_split_rdata->out_port[2](m_axi_split_rdata_out_2); mp_m_axi_split_rdata->add_mask(2,96,64); mp_m_axi_rdata_converter_2->vector_in(m_axi_split_rdata_out_2); mp_m_axi_rdata_converter_2->vector_out(m_m_axi_rdata_converter_2_signal); mp_M02_AXI_transactor->RDATA(m_m_axi_rdata_converter_2_signal); - mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_2"); + mp_m_axi_rresp_converter_2 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_2"); mp_m_axi_split_rresp->out_port[2](m_axi_split_rresp_out_2); mp_m_axi_split_rresp->add_mask(2,6,4); mp_m_axi_rresp_converter_2->vector_in(m_axi_split_rresp_out_2); mp_m_axi_rresp_converter_2->vector_out(m_m_axi_rresp_converter_2_signal); mp_M02_AXI_transactor->RRESP(m_m_axi_rresp_converter_2_signal); - mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_2"); + mp_m_axi_rvalid_converter_2 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_2"); mp_m_axi_split_rvalid->out_port[2](m_axi_split_rvalid_out_2); mp_m_axi_split_rvalid->add_mask(2,3,2); mp_m_axi_rvalid_converter_2->vector_in(m_axi_split_rvalid_out_2); mp_m_axi_rvalid_converter_2->scalar_out(m_m_axi_rvalid_converter_2_signal); mp_M02_AXI_transactor->RVALID(m_m_axi_rvalid_converter_2_signal); - mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_2"); + mp_m_axi_rready_converter_2 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_2"); mp_m_axi_concat_rready->in_port[2](m_axi_concat_rready_out_2); mp_m_axi_concat_rready->offset_port(2, 2); mp_m_axi_rready_converter_2->scalar_in(m_m_axi_rready_converter_2_signal); @@ -4746,8 +5561,8 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M03_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); M03_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); M03_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); - M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); - M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M03_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "2"); + M03_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "2"); M03_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); M03_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); M03_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); @@ -4761,123 +5576,123 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M03_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); mp_M03_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M03_AXI_transactor", M03_AXI_transactor_param_props); - mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_awaddr_converter_3"); + mp_m_axi_awaddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_3"); mp_m_axi_concat_awaddr->in_port[3](m_axi_concat_awaddr_out_3); mp_m_axi_concat_awaddr->offset_port(3, 96); mp_m_axi_awaddr_converter_3->vector_in(m_m_axi_awaddr_converter_3_signal); mp_m_axi_awaddr_converter_3->vector_out(m_axi_concat_awaddr_out_3); mp_M03_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_3_signal); - mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_awprot_converter_3"); + mp_m_axi_awprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_3"); mp_m_axi_concat_awprot->in_port[3](m_axi_concat_awprot_out_3); mp_m_axi_concat_awprot->offset_port(3, 9); mp_m_axi_awprot_converter_3->vector_in(m_m_axi_awprot_converter_3_signal); mp_m_axi_awprot_converter_3->vector_out(m_axi_concat_awprot_out_3); mp_M03_AXI_transactor->AWPROT(m_m_axi_awprot_converter_3_signal); - mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_awvalid_converter_3"); + mp_m_axi_awvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_3"); mp_m_axi_concat_awvalid->in_port[3](m_axi_concat_awvalid_out_3); mp_m_axi_concat_awvalid->offset_port(3, 3); mp_m_axi_awvalid_converter_3->scalar_in(m_m_axi_awvalid_converter_3_signal); mp_m_axi_awvalid_converter_3->vector_out(m_axi_concat_awvalid_out_3); mp_M03_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_3_signal); - mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_awready_converter_3"); + mp_m_axi_awready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_3"); mp_m_axi_split_awready->out_port[3](m_axi_split_awready_out_3); mp_m_axi_split_awready->add_mask(3,4,3); mp_m_axi_awready_converter_3->vector_in(m_axi_split_awready_out_3); mp_m_axi_awready_converter_3->scalar_out(m_m_axi_awready_converter_3_signal); mp_M03_AXI_transactor->AWREADY(m_m_axi_awready_converter_3_signal); - mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_wdata_converter_3"); + mp_m_axi_wdata_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_3"); mp_m_axi_concat_wdata->in_port[3](m_axi_concat_wdata_out_3); mp_m_axi_concat_wdata->offset_port(3, 96); mp_m_axi_wdata_converter_3->vector_in(m_m_axi_wdata_converter_3_signal); mp_m_axi_wdata_converter_3->vector_out(m_axi_concat_wdata_out_3); mp_M03_AXI_transactor->WDATA(m_m_axi_wdata_converter_3_signal); - mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,16>("m_axi_wstrb_converter_3"); + mp_m_axi_wstrb_converter_3 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_3"); mp_m_axi_concat_wstrb->in_port[3](m_axi_concat_wstrb_out_3); mp_m_axi_concat_wstrb->offset_port(3, 12); mp_m_axi_wstrb_converter_3->vector_in(m_m_axi_wstrb_converter_3_signal); mp_m_axi_wstrb_converter_3->vector_out(m_axi_concat_wstrb_out_3); mp_M03_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_3_signal); - mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_wvalid_converter_3"); + mp_m_axi_wvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_3"); mp_m_axi_concat_wvalid->in_port[3](m_axi_concat_wvalid_out_3); mp_m_axi_concat_wvalid->offset_port(3, 3); mp_m_axi_wvalid_converter_3->scalar_in(m_m_axi_wvalid_converter_3_signal); mp_m_axi_wvalid_converter_3->vector_out(m_axi_concat_wvalid_out_3); mp_M03_AXI_transactor->WVALID(m_m_axi_wvalid_converter_3_signal); - mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_wready_converter_3"); + mp_m_axi_wready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_3"); mp_m_axi_split_wready->out_port[3](m_axi_split_wready_out_3); mp_m_axi_split_wready->add_mask(3,4,3); mp_m_axi_wready_converter_3->vector_in(m_axi_split_wready_out_3); mp_m_axi_wready_converter_3->scalar_out(m_m_axi_wready_converter_3_signal); mp_M03_AXI_transactor->WREADY(m_m_axi_wready_converter_3_signal); - mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_bresp_converter_3"); + mp_m_axi_bresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_3"); mp_m_axi_split_bresp->out_port[3](m_axi_split_bresp_out_3); mp_m_axi_split_bresp->add_mask(3,8,6); mp_m_axi_bresp_converter_3->vector_in(m_axi_split_bresp_out_3); mp_m_axi_bresp_converter_3->vector_out(m_m_axi_bresp_converter_3_signal); mp_M03_AXI_transactor->BRESP(m_m_axi_bresp_converter_3_signal); - mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_bvalid_converter_3"); + mp_m_axi_bvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_3"); mp_m_axi_split_bvalid->out_port[3](m_axi_split_bvalid_out_3); mp_m_axi_split_bvalid->add_mask(3,4,3); mp_m_axi_bvalid_converter_3->vector_in(m_axi_split_bvalid_out_3); mp_m_axi_bvalid_converter_3->scalar_out(m_m_axi_bvalid_converter_3_signal); mp_M03_AXI_transactor->BVALID(m_m_axi_bvalid_converter_3_signal); - mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_bready_converter_3"); + mp_m_axi_bready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_3"); mp_m_axi_concat_bready->in_port[3](m_axi_concat_bready_out_3); mp_m_axi_concat_bready->offset_port(3, 3); mp_m_axi_bready_converter_3->scalar_in(m_m_axi_bready_converter_3_signal); mp_m_axi_bready_converter_3->vector_out(m_axi_concat_bready_out_3); mp_M03_AXI_transactor->BREADY(m_m_axi_bready_converter_3_signal); - mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,128>("m_axi_araddr_converter_3"); + mp_m_axi_araddr_converter_3 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_3"); mp_m_axi_concat_araddr->in_port[3](m_axi_concat_araddr_out_3); mp_m_axi_concat_araddr->offset_port(3, 96); mp_m_axi_araddr_converter_3->vector_in(m_m_axi_araddr_converter_3_signal); mp_m_axi_araddr_converter_3->vector_out(m_axi_concat_araddr_out_3); mp_M03_AXI_transactor->ARADDR(m_m_axi_araddr_converter_3_signal); - mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,12>("m_axi_arprot_converter_3"); + mp_m_axi_arprot_converter_3 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_3"); mp_m_axi_concat_arprot->in_port[3](m_axi_concat_arprot_out_3); mp_m_axi_concat_arprot->offset_port(3, 9); mp_m_axi_arprot_converter_3->vector_in(m_m_axi_arprot_converter_3_signal); mp_m_axi_arprot_converter_3->vector_out(m_axi_concat_arprot_out_3); mp_M03_AXI_transactor->ARPROT(m_m_axi_arprot_converter_3_signal); - mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_arvalid_converter_3"); + mp_m_axi_arvalid_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_3"); mp_m_axi_concat_arvalid->in_port[3](m_axi_concat_arvalid_out_3); mp_m_axi_concat_arvalid->offset_port(3, 3); mp_m_axi_arvalid_converter_3->scalar_in(m_m_axi_arvalid_converter_3_signal); mp_m_axi_arvalid_converter_3->vector_out(m_axi_concat_arvalid_out_3); mp_M03_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_3_signal); - mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_arready_converter_3"); + mp_m_axi_arready_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_3"); mp_m_axi_split_arready->out_port[3](m_axi_split_arready_out_3); mp_m_axi_split_arready->add_mask(3,4,3); mp_m_axi_arready_converter_3->vector_in(m_axi_split_arready_out_3); mp_m_axi_arready_converter_3->scalar_out(m_m_axi_arready_converter_3_signal); mp_M03_AXI_transactor->ARREADY(m_m_axi_arready_converter_3_signal); - mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<128,32>("m_axi_rdata_converter_3"); + mp_m_axi_rdata_converter_3 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_3"); mp_m_axi_split_rdata->out_port[3](m_axi_split_rdata_out_3); mp_m_axi_split_rdata->add_mask(3,128,96); mp_m_axi_rdata_converter_3->vector_in(m_axi_split_rdata_out_3); mp_m_axi_rdata_converter_3->vector_out(m_m_axi_rdata_converter_3_signal); mp_M03_AXI_transactor->RDATA(m_m_axi_rdata_converter_3_signal); - mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<8,2>("m_axi_rresp_converter_3"); + mp_m_axi_rresp_converter_3 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_3"); mp_m_axi_split_rresp->out_port[3](m_axi_split_rresp_out_3); mp_m_axi_split_rresp->add_mask(3,8,6); mp_m_axi_rresp_converter_3->vector_in(m_axi_split_rresp_out_3); mp_m_axi_rresp_converter_3->vector_out(m_m_axi_rresp_converter_3_signal); mp_M03_AXI_transactor->RRESP(m_m_axi_rresp_converter_3_signal); - mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<4>("m_axi_rvalid_converter_3"); + mp_m_axi_rvalid_converter_3 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_3"); mp_m_axi_split_rvalid->out_port[3](m_axi_split_rvalid_out_3); mp_m_axi_split_rvalid->add_mask(3,4,3); mp_m_axi_rvalid_converter_3->vector_in(m_axi_split_rvalid_out_3); mp_m_axi_rvalid_converter_3->scalar_out(m_m_axi_rvalid_converter_3_signal); mp_M03_AXI_transactor->RVALID(m_m_axi_rvalid_converter_3_signal); - mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<4>("m_axi_rready_converter_3"); + mp_m_axi_rready_converter_3 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_3"); mp_m_axi_concat_rready->in_port[3](m_axi_concat_rready_out_3); mp_m_axi_concat_rready->offset_port(3, 3); mp_m_axi_rready_converter_3->scalar_in(m_m_axi_rready_converter_3_signal); @@ -4885,6 +5700,166 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d mp_M03_AXI_transactor->RREADY(m_m_axi_rready_converter_3_signal); mp_M03_AXI_transactor->CLK(aclk); mp_M03_AXI_transactor->RST(aresetn); + // configure M04_AXI_transactor + xsc::common_cpp::properties M04_AXI_transactor_param_props; + M04_AXI_transactor_param_props.addLong("DATA_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("FREQ_HZ", "100000000"); + M04_AXI_transactor_param_props.addLong("ID_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ADDR_WIDTH", "32"); + M04_AXI_transactor_param_props.addLong("AWUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("ARUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("RUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("BUSER_WIDTH", "0"); + M04_AXI_transactor_param_props.addLong("HAS_BURST", "0"); + M04_AXI_transactor_param_props.addLong("HAS_LOCK", "0"); + M04_AXI_transactor_param_props.addLong("HAS_PROT", "1"); + M04_AXI_transactor_param_props.addLong("HAS_CACHE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_QOS", "0"); + M04_AXI_transactor_param_props.addLong("HAS_REGION", "0"); + M04_AXI_transactor_param_props.addLong("HAS_WSTRB", "1"); + M04_AXI_transactor_param_props.addLong("HAS_BRESP", "1"); + M04_AXI_transactor_param_props.addLong("HAS_RRESP", "1"); + M04_AXI_transactor_param_props.addLong("SUPPORTS_NARROW_BURST", "0"); + M04_AXI_transactor_param_props.addLong("NUM_READ_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_OUTSTANDING", "1"); + M04_AXI_transactor_param_props.addLong("MAX_BURST_LENGTH", "1"); + M04_AXI_transactor_param_props.addLong("NUM_READ_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("NUM_WRITE_THREADS", "1"); + M04_AXI_transactor_param_props.addLong("RUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("WUSER_BITS_PER_BYTE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_SIZE", "0"); + M04_AXI_transactor_param_props.addLong("HAS_RESET", "1"); + M04_AXI_transactor_param_props.addFloat("PHASE", "0.0"); + M04_AXI_transactor_param_props.addString("PROTOCOL", "AXI4LITE"); + M04_AXI_transactor_param_props.addString("READ_WRITE_MODE", "READ_WRITE"); + M04_AXI_transactor_param_props.addString("CLK_DOMAIN", "/clk_wiz_0_clk_out1"); + + mp_M04_AXI_transactor = new xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>("M04_AXI_transactor", M04_AXI_transactor_param_props); + mp_m_axi_awaddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_awaddr_converter_4"); + mp_m_axi_concat_awaddr->in_port[4](m_axi_concat_awaddr_out_4); + mp_m_axi_concat_awaddr->offset_port(4, 128); + mp_m_axi_awaddr_converter_4->vector_in(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awaddr_converter_4->vector_out(m_axi_concat_awaddr_out_4); + mp_M04_AXI_transactor->AWADDR(m_m_axi_awaddr_converter_4_signal); + mp_m_axi_awprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_awprot_converter_4"); + mp_m_axi_concat_awprot->in_port[4](m_axi_concat_awprot_out_4); + mp_m_axi_concat_awprot->offset_port(4, 12); + mp_m_axi_awprot_converter_4->vector_in(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awprot_converter_4->vector_out(m_axi_concat_awprot_out_4); + mp_M04_AXI_transactor->AWPROT(m_m_axi_awprot_converter_4_signal); + mp_m_axi_awvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_awvalid_converter_4"); + mp_m_axi_concat_awvalid->in_port[4](m_axi_concat_awvalid_out_4); + mp_m_axi_concat_awvalid->offset_port(4, 4); + mp_m_axi_awvalid_converter_4->scalar_in(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awvalid_converter_4->vector_out(m_axi_concat_awvalid_out_4); + mp_M04_AXI_transactor->AWVALID(m_m_axi_awvalid_converter_4_signal); + mp_m_axi_awready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_awready_converter_4"); + + mp_m_axi_split_awready->out_port[4](m_axi_split_awready_out_4); + mp_m_axi_split_awready->add_mask(4,5,4); + mp_m_axi_awready_converter_4->vector_in(m_axi_split_awready_out_4); + mp_m_axi_awready_converter_4->scalar_out(m_m_axi_awready_converter_4_signal); + mp_M04_AXI_transactor->AWREADY(m_m_axi_awready_converter_4_signal); + mp_m_axi_wdata_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_wdata_converter_4"); + mp_m_axi_concat_wdata->in_port[4](m_axi_concat_wdata_out_4); + mp_m_axi_concat_wdata->offset_port(4, 128); + mp_m_axi_wdata_converter_4->vector_in(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wdata_converter_4->vector_out(m_axi_concat_wdata_out_4); + mp_M04_AXI_transactor->WDATA(m_m_axi_wdata_converter_4_signal); + mp_m_axi_wstrb_converter_4 = new xsc::common::vector2vector_converter<4,20>("m_axi_wstrb_converter_4"); + mp_m_axi_concat_wstrb->in_port[4](m_axi_concat_wstrb_out_4); + mp_m_axi_concat_wstrb->offset_port(4, 16); + mp_m_axi_wstrb_converter_4->vector_in(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wstrb_converter_4->vector_out(m_axi_concat_wstrb_out_4); + mp_M04_AXI_transactor->WSTRB(m_m_axi_wstrb_converter_4_signal); + mp_m_axi_wvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_wvalid_converter_4"); + mp_m_axi_concat_wvalid->in_port[4](m_axi_concat_wvalid_out_4); + mp_m_axi_concat_wvalid->offset_port(4, 4); + mp_m_axi_wvalid_converter_4->scalar_in(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wvalid_converter_4->vector_out(m_axi_concat_wvalid_out_4); + mp_M04_AXI_transactor->WVALID(m_m_axi_wvalid_converter_4_signal); + mp_m_axi_wready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_wready_converter_4"); + + mp_m_axi_split_wready->out_port[4](m_axi_split_wready_out_4); + mp_m_axi_split_wready->add_mask(4,5,4); + mp_m_axi_wready_converter_4->vector_in(m_axi_split_wready_out_4); + mp_m_axi_wready_converter_4->scalar_out(m_m_axi_wready_converter_4_signal); + mp_M04_AXI_transactor->WREADY(m_m_axi_wready_converter_4_signal); + mp_m_axi_bresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_bresp_converter_4"); + + mp_m_axi_split_bresp->out_port[4](m_axi_split_bresp_out_4); + mp_m_axi_split_bresp->add_mask(4,10,8); + mp_m_axi_bresp_converter_4->vector_in(m_axi_split_bresp_out_4); + mp_m_axi_bresp_converter_4->vector_out(m_m_axi_bresp_converter_4_signal); + mp_M04_AXI_transactor->BRESP(m_m_axi_bresp_converter_4_signal); + mp_m_axi_bvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_bvalid_converter_4"); + + mp_m_axi_split_bvalid->out_port[4](m_axi_split_bvalid_out_4); + mp_m_axi_split_bvalid->add_mask(4,5,4); + mp_m_axi_bvalid_converter_4->vector_in(m_axi_split_bvalid_out_4); + mp_m_axi_bvalid_converter_4->scalar_out(m_m_axi_bvalid_converter_4_signal); + mp_M04_AXI_transactor->BVALID(m_m_axi_bvalid_converter_4_signal); + mp_m_axi_bready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_bready_converter_4"); + mp_m_axi_concat_bready->in_port[4](m_axi_concat_bready_out_4); + mp_m_axi_concat_bready->offset_port(4, 4); + mp_m_axi_bready_converter_4->scalar_in(m_m_axi_bready_converter_4_signal); + mp_m_axi_bready_converter_4->vector_out(m_axi_concat_bready_out_4); + mp_M04_AXI_transactor->BREADY(m_m_axi_bready_converter_4_signal); + mp_m_axi_araddr_converter_4 = new xsc::common::vector2vector_converter<32,160>("m_axi_araddr_converter_4"); + mp_m_axi_concat_araddr->in_port[4](m_axi_concat_araddr_out_4); + mp_m_axi_concat_araddr->offset_port(4, 128); + mp_m_axi_araddr_converter_4->vector_in(m_m_axi_araddr_converter_4_signal); + mp_m_axi_araddr_converter_4->vector_out(m_axi_concat_araddr_out_4); + mp_M04_AXI_transactor->ARADDR(m_m_axi_araddr_converter_4_signal); + mp_m_axi_arprot_converter_4 = new xsc::common::vector2vector_converter<3,15>("m_axi_arprot_converter_4"); + mp_m_axi_concat_arprot->in_port[4](m_axi_concat_arprot_out_4); + mp_m_axi_concat_arprot->offset_port(4, 12); + mp_m_axi_arprot_converter_4->vector_in(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arprot_converter_4->vector_out(m_axi_concat_arprot_out_4); + mp_M04_AXI_transactor->ARPROT(m_m_axi_arprot_converter_4_signal); + mp_m_axi_arvalid_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_arvalid_converter_4"); + mp_m_axi_concat_arvalid->in_port[4](m_axi_concat_arvalid_out_4); + mp_m_axi_concat_arvalid->offset_port(4, 4); + mp_m_axi_arvalid_converter_4->scalar_in(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arvalid_converter_4->vector_out(m_axi_concat_arvalid_out_4); + mp_M04_AXI_transactor->ARVALID(m_m_axi_arvalid_converter_4_signal); + mp_m_axi_arready_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_arready_converter_4"); + + mp_m_axi_split_arready->out_port[4](m_axi_split_arready_out_4); + mp_m_axi_split_arready->add_mask(4,5,4); + mp_m_axi_arready_converter_4->vector_in(m_axi_split_arready_out_4); + mp_m_axi_arready_converter_4->scalar_out(m_m_axi_arready_converter_4_signal); + mp_M04_AXI_transactor->ARREADY(m_m_axi_arready_converter_4_signal); + mp_m_axi_rdata_converter_4 = new xsc::common::vector2vector_converter<160,32>("m_axi_rdata_converter_4"); + + mp_m_axi_split_rdata->out_port[4](m_axi_split_rdata_out_4); + mp_m_axi_split_rdata->add_mask(4,160,128); + mp_m_axi_rdata_converter_4->vector_in(m_axi_split_rdata_out_4); + mp_m_axi_rdata_converter_4->vector_out(m_m_axi_rdata_converter_4_signal); + mp_M04_AXI_transactor->RDATA(m_m_axi_rdata_converter_4_signal); + mp_m_axi_rresp_converter_4 = new xsc::common::vector2vector_converter<10,2>("m_axi_rresp_converter_4"); + + mp_m_axi_split_rresp->out_port[4](m_axi_split_rresp_out_4); + mp_m_axi_split_rresp->add_mask(4,10,8); + mp_m_axi_rresp_converter_4->vector_in(m_axi_split_rresp_out_4); + mp_m_axi_rresp_converter_4->vector_out(m_m_axi_rresp_converter_4_signal); + mp_M04_AXI_transactor->RRESP(m_m_axi_rresp_converter_4_signal); + mp_m_axi_rvalid_converter_4 = new xsc::common::vectorN2scalar_converter<5>("m_axi_rvalid_converter_4"); + + mp_m_axi_split_rvalid->out_port[4](m_axi_split_rvalid_out_4); + mp_m_axi_split_rvalid->add_mask(4,5,4); + mp_m_axi_rvalid_converter_4->vector_in(m_axi_split_rvalid_out_4); + mp_m_axi_rvalid_converter_4->scalar_out(m_m_axi_rvalid_converter_4_signal); + mp_M04_AXI_transactor->RVALID(m_m_axi_rvalid_converter_4_signal); + mp_m_axi_rready_converter_4 = new xsc::common::scalar2vectorN_converter<5>("m_axi_rready_converter_4"); + mp_m_axi_concat_rready->in_port[4](m_axi_concat_rready_out_4); + mp_m_axi_concat_rready->offset_port(4, 4); + mp_m_axi_rready_converter_4->scalar_in(m_m_axi_rready_converter_4_signal); + mp_m_axi_rready_converter_4->vector_out(m_axi_concat_rready_out_4); + mp_M04_AXI_transactor->RREADY(m_m_axi_rready_converter_4_signal); + mp_M04_AXI_transactor->CLK(aclk); + mp_M04_AXI_transactor->RST(aresetn); // initialize transactors stubs S00_AXI_transactor_target_wr_socket_stub = nullptr; @@ -4897,6 +5872,8 @@ mb_design_1_xbar_0::mb_design_1_xbar_0(const sc_core::sc_module_name& nm) : mb_d M02_AXI_transactor_initiator_rd_socket_stub = nullptr; M03_AXI_transactor_initiator_wr_socket_stub = nullptr; M03_AXI_transactor_initiator_rd_socket_stub = nullptr; + M04_AXI_transactor_initiator_wr_socket_stub = nullptr; + M04_AXI_transactor_initiator_rd_socket_stub = nullptr; } @@ -4982,6 +5959,22 @@ void mb_design_1_xbar_0::before_end_of_elaboration() mp_M03_AXI_transactor->disable_transactor(); } + // configure 'M04_AXI' transactor + if (xsc::utils::xsc_sim_manager::getInstanceParameterInt("mb_design_1_xbar_0", "M04_AXI_TLM_MODE") != 1) + { + mp_impl->initiator_4_rd_socket->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_impl->initiator_4_wr_socket->bind(*(mp_M04_AXI_transactor->wr_socket)); + + } + else + { + M04_AXI_transactor_initiator_wr_socket_stub = new xtlm::xtlm_aximm_initiator_stub("wr_socket",0); + M04_AXI_transactor_initiator_wr_socket_stub->bind(*(mp_M04_AXI_transactor->wr_socket)); + M04_AXI_transactor_initiator_rd_socket_stub = new xtlm::xtlm_aximm_initiator_stub("rd_socket",0); + M04_AXI_transactor_initiator_rd_socket_stub->bind(*(mp_M04_AXI_transactor->rd_socket)); + mp_M04_AXI_transactor->disable_transactor(); + } + } #endif // MTI_SYSTEMC @@ -5087,6 +6080,27 @@ mb_design_1_xbar_0::~mb_design_1_xbar_0() delete mp_m_axi_rvalid_converter_3; delete mp_m_axi_rready_converter_3; + delete mp_M04_AXI_transactor; + delete mp_m_axi_awaddr_converter_4; + delete mp_m_axi_awprot_converter_4; + delete mp_m_axi_awvalid_converter_4; + delete mp_m_axi_awready_converter_4; + delete mp_m_axi_wdata_converter_4; + delete mp_m_axi_wstrb_converter_4; + delete mp_m_axi_wvalid_converter_4; + delete mp_m_axi_wready_converter_4; + delete mp_m_axi_bresp_converter_4; + delete mp_m_axi_bvalid_converter_4; + delete mp_m_axi_bready_converter_4; + delete mp_m_axi_araddr_converter_4; + delete mp_m_axi_arprot_converter_4; + delete mp_m_axi_arvalid_converter_4; + delete mp_m_axi_arready_converter_4; + delete mp_m_axi_rdata_converter_4; + delete mp_m_axi_rresp_converter_4; + delete mp_m_axi_rvalid_converter_4; + delete mp_m_axi_rready_converter_4; + delete mp_m_axi_concat_araddr; delete mp_m_axi_concat_arprot; delete mp_m_axi_concat_arvalid; @@ -5118,6 +6132,6 @@ XMSC_MODULE_EXPORT(mb_design_1_xbar_0); #ifdef RIVIERA SC_MODULE_EXPORT(mb_design_1_xbar_0); -SC_REGISTER_BV(128); +SC_REGISTER_BV(160); #endif diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.h b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.h index fc9423a..0a4e116 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.h +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.h @@ -101,25 +101,25 @@ public: sc_core::sc_out< sc_dt::sc_bv<2> > s_axi_rresp; sc_core::sc_out< sc_dt::sc_bv<1> > s_axi_rvalid; sc_core::sc_in< sc_dt::sc_bv<1> > s_axi_rready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_awaddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_awprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_awvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_awready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_wdata; - sc_core::sc_out< sc_dt::sc_bv<16> > m_axi_wstrb; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_wvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_wready; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_bresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_bvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_bready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_araddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_arprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_arvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_arready; - sc_core::sc_in< sc_dt::sc_bv<128> > m_axi_rdata; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_rresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_rvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_rready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_awaddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_awprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_awvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_awready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_wdata; + sc_core::sc_out< sc_dt::sc_bv<20> > m_axi_wstrb; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_wvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_wready; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_bresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_bvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_bready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_araddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_arprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_arvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_arready; + sc_core::sc_in< sc_dt::sc_bv<160> > m_axi_rdata; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_rresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_rvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_rready; // Dummy Signals for IP Ports @@ -152,301 +152,359 @@ private: xsc::common::vectorN2scalar_converter<1>* mp_s_axi_rready_converter; sc_signal< bool > m_s_axi_rready_converter_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M00_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_0; sc_signal< bool > m_m_axi_awvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_0; sc_signal< bool > m_m_axi_awready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_0_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_0; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_0; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_0; sc_signal< bool > m_m_axi_wvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_0; sc_signal< bool > m_m_axi_wready_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_0; sc_signal< bool > m_m_axi_bvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_0; sc_signal< bool > m_m_axi_bready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_0; sc_signal< bool > m_m_axi_arvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_0; sc_signal< bool > m_m_axi_arready_converter_0_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_0; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_0; sc_signal< bool > m_m_axi_rvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_0; sc_signal< bool > m_m_axi_rready_converter_0_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M01_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_1; sc_signal< bool > m_m_axi_awvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_1; sc_signal< bool > m_m_axi_awready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_1_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_1; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_1; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_1; sc_signal< bool > m_m_axi_wvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_1; sc_signal< bool > m_m_axi_wready_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_1; sc_signal< bool > m_m_axi_bvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_1; sc_signal< bool > m_m_axi_bready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_1; sc_signal< bool > m_m_axi_arvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_1; sc_signal< bool > m_m_axi_arready_converter_1_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_1; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_1; sc_signal< bool > m_m_axi_rvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_1; sc_signal< bool > m_m_axi_rready_converter_1_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M02_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_2; sc_signal< bool > m_m_axi_awvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_2; sc_signal< bool > m_m_axi_awready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_2_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_2; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_2; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_2; sc_signal< bool > m_m_axi_wvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_2; sc_signal< bool > m_m_axi_wready_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_2; sc_signal< bool > m_m_axi_bvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_2; sc_signal< bool > m_m_axi_bready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_2; sc_signal< bool > m_m_axi_arvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_2; sc_signal< bool > m_m_axi_arready_converter_2_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_2; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_2; sc_signal< bool > m_m_axi_rvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_2; sc_signal< bool > m_m_axi_rready_converter_2_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M03_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_3; sc_signal< bool > m_m_axi_awvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_3; sc_signal< bool > m_m_axi_awready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_3_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_3; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_3; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_3; sc_signal< bool > m_m_axi_wvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_3; sc_signal< bool > m_m_axi_wready_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_3; sc_signal< bool > m_m_axi_bvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_3; sc_signal< bool > m_m_axi_bready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_3; sc_signal< bool > m_m_axi_arvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_3; sc_signal< bool > m_m_axi_arready_converter_3_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_3; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_3; sc_signal< bool > m_m_axi_rvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_3; sc_signal< bool > m_m_axi_rready_converter_3_signal; + xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M04_AXI_transactor; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_awprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_4; + sc_signal< bool > m_m_axi_awvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_4; + sc_signal< bool > m_m_axi_awready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_wdata_converter_4_signal; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_4; + sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_4; + sc_signal< bool > m_m_axi_wvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_4; + sc_signal< bool > m_m_axi_wready_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_bresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_4; + sc_signal< bool > m_m_axi_bvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_4; + sc_signal< bool > m_m_axi_bready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_araddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_arprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_4; + sc_signal< bool > m_m_axi_arvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_4; + sc_signal< bool > m_m_axi_arready_converter_4_signal; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_rdata_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_rresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_4; + sc_signal< bool > m_m_axi_rvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_4; + sc_signal< bool > m_m_axi_rready_converter_4_signal; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_araddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_arprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_arready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_arvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_4; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_awaddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_awprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_awready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_awvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_4; - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_araddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_bready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_bresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_4; + xsc::xsc_split<5, 5> * mp_m_axi_split_bvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_4; + xsc::xsc_split<160, 5> * mp_m_axi_split_rdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_4; - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_arprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_3; - xsc::xsc_split<4, 4> * mp_m_axi_split_arready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_rready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_rresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_4; + xsc::xsc_split<5, 5> * mp_m_axi_split_rvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_arvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_3; + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_wdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_4; - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_awaddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_wready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_4; - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_awprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_awready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_3; - - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_awvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_bready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_3; - - xsc::xsc_split<8, 4> * mp_m_axi_split_bresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_bvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_3; - - xsc::xsc_split<128, 4> * mp_m_axi_split_rdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_3; - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_rready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_3; - - xsc::xsc_split<8, 4> * mp_m_axi_split_rresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_rvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_wdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_3; - - - - xsc::xsc_split<4, 4> * mp_m_axi_split_wready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_3; - - xsc::xsc_concatenator<16, 4> * mp_m_axi_concat_wstrb; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_0; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_1; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_2; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_wvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_3; + xsc::xsc_concatenator<20, 5> * mp_m_axi_concat_wstrb; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_0; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_1; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_2; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_3; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_4; + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_wvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_4; }; #endif // XILINX_SIMULATOR @@ -485,25 +543,25 @@ public: sc_core::sc_out< sc_dt::sc_bv<2> > s_axi_rresp; sc_core::sc_out< sc_dt::sc_bv<1> > s_axi_rvalid; sc_core::sc_in< sc_dt::sc_bv<1> > s_axi_rready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_awaddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_awprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_awvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_awready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_wdata; - sc_core::sc_out< sc_dt::sc_bv<16> > m_axi_wstrb; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_wvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_wready; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_bresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_bvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_bready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_araddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_arprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_arvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_arready; - sc_core::sc_in< sc_dt::sc_bv<128> > m_axi_rdata; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_rresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_rvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_rready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_awaddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_awprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_awvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_awready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_wdata; + sc_core::sc_out< sc_dt::sc_bv<20> > m_axi_wstrb; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_wvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_wready; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_bresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_bvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_bready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_araddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_arprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_arvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_arready; + sc_core::sc_in< sc_dt::sc_bv<160> > m_axi_rdata; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_rresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_rvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_rready; // Dummy Signals for IP Ports @@ -536,301 +594,359 @@ private: xsc::common::vectorN2scalar_converter<1>* mp_s_axi_rready_converter; sc_signal< bool > m_s_axi_rready_converter_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M00_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_0; sc_signal< bool > m_m_axi_awvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_0; sc_signal< bool > m_m_axi_awready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_0_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_0; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_0; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_0; sc_signal< bool > m_m_axi_wvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_0; sc_signal< bool > m_m_axi_wready_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_0; sc_signal< bool > m_m_axi_bvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_0; sc_signal< bool > m_m_axi_bready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_0; sc_signal< bool > m_m_axi_arvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_0; sc_signal< bool > m_m_axi_arready_converter_0_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_0; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_0; sc_signal< bool > m_m_axi_rvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_0; sc_signal< bool > m_m_axi_rready_converter_0_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M01_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_1; sc_signal< bool > m_m_axi_awvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_1; sc_signal< bool > m_m_axi_awready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_1_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_1; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_1; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_1; sc_signal< bool > m_m_axi_wvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_1; sc_signal< bool > m_m_axi_wready_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_1; sc_signal< bool > m_m_axi_bvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_1; sc_signal< bool > m_m_axi_bready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_1; sc_signal< bool > m_m_axi_arvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_1; sc_signal< bool > m_m_axi_arready_converter_1_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_1; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_1; sc_signal< bool > m_m_axi_rvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_1; sc_signal< bool > m_m_axi_rready_converter_1_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M02_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_2; sc_signal< bool > m_m_axi_awvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_2; sc_signal< bool > m_m_axi_awready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_2_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_2; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_2; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_2; sc_signal< bool > m_m_axi_wvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_2; sc_signal< bool > m_m_axi_wready_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_2; sc_signal< bool > m_m_axi_bvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_2; sc_signal< bool > m_m_axi_bready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_2; sc_signal< bool > m_m_axi_arvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_2; sc_signal< bool > m_m_axi_arready_converter_2_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_2; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_2; sc_signal< bool > m_m_axi_rvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_2; sc_signal< bool > m_m_axi_rready_converter_2_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M03_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_3; sc_signal< bool > m_m_axi_awvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_3; sc_signal< bool > m_m_axi_awready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_3_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_3; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_3; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_3; sc_signal< bool > m_m_axi_wvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_3; sc_signal< bool > m_m_axi_wready_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_3; sc_signal< bool > m_m_axi_bvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_3; sc_signal< bool > m_m_axi_bready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_3; sc_signal< bool > m_m_axi_arvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_3; sc_signal< bool > m_m_axi_arready_converter_3_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_3; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_3; sc_signal< bool > m_m_axi_rvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_3; sc_signal< bool > m_m_axi_rready_converter_3_signal; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_araddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_3; - - - - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_arprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_3; + xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M04_AXI_transactor; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_awprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_4; + sc_signal< bool > m_m_axi_awvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_4; + sc_signal< bool > m_m_axi_awready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_wdata_converter_4_signal; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_4; + sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_4; + sc_signal< bool > m_m_axi_wvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_4; + sc_signal< bool > m_m_axi_wready_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_bresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_4; + sc_signal< bool > m_m_axi_bvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_4; + sc_signal< bool > m_m_axi_bready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_araddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_arprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_4; + sc_signal< bool > m_m_axi_arvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_4; + sc_signal< bool > m_m_axi_arready_converter_4_signal; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_rdata_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_rresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_4; + sc_signal< bool > m_m_axi_rvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_4; + sc_signal< bool > m_m_axi_rready_converter_4_signal; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_araddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_arprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_arready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_arvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_4; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_awaddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_awprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_awready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_awvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_arready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_bready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_bresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_4; + xsc::xsc_split<5, 5> * mp_m_axi_split_bvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_arvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_3; + xsc::xsc_split<160, 5> * mp_m_axi_split_rdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_4; - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_awaddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_rready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_rresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_4; + xsc::xsc_split<5, 5> * mp_m_axi_split_rvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_4; - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_awprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_3; + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_wdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_awready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_wready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_4; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_awvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_bready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_3; - - xsc::xsc_split<8, 4> * mp_m_axi_split_bresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_bvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_3; - - xsc::xsc_split<128, 4> * mp_m_axi_split_rdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_3; - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_rready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_3; - - xsc::xsc_split<8, 4> * mp_m_axi_split_rresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_rvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_wdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_3; - - - - xsc::xsc_split<4, 4> * mp_m_axi_split_wready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_3; - - xsc::xsc_concatenator<16, 4> * mp_m_axi_concat_wstrb; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_0; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_1; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_2; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_wvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_3; + xsc::xsc_concatenator<20, 5> * mp_m_axi_concat_wstrb; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_0; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_1; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_2; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_3; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_4; + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_wvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_4; }; #endif // XM_SYSTEMC @@ -869,25 +985,25 @@ public: sc_core::sc_out< sc_dt::sc_bv<2> > s_axi_rresp; sc_core::sc_out< sc_dt::sc_bv<1> > s_axi_rvalid; sc_core::sc_in< sc_dt::sc_bv<1> > s_axi_rready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_awaddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_awprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_awvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_awready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_wdata; - sc_core::sc_out< sc_dt::sc_bv<16> > m_axi_wstrb; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_wvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_wready; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_bresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_bvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_bready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_araddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_arprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_arvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_arready; - sc_core::sc_in< sc_dt::sc_bv<128> > m_axi_rdata; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_rresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_rvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_rready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_awaddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_awprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_awvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_awready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_wdata; + sc_core::sc_out< sc_dt::sc_bv<20> > m_axi_wstrb; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_wvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_wready; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_bresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_bvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_bready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_araddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_arprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_arvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_arready; + sc_core::sc_in< sc_dt::sc_bv<160> > m_axi_rdata; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_rresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_rvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_rready; // Dummy Signals for IP Ports @@ -920,301 +1036,359 @@ private: xsc::common::vectorN2scalar_converter<1>* mp_s_axi_rready_converter; sc_signal< bool > m_s_axi_rready_converter_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M00_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_0; sc_signal< bool > m_m_axi_awvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_0; sc_signal< bool > m_m_axi_awready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_0_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_0; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_0; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_0; sc_signal< bool > m_m_axi_wvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_0; sc_signal< bool > m_m_axi_wready_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_0; sc_signal< bool > m_m_axi_bvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_0; sc_signal< bool > m_m_axi_bready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_0; sc_signal< bool > m_m_axi_arvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_0; sc_signal< bool > m_m_axi_arready_converter_0_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_0; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_0; sc_signal< bool > m_m_axi_rvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_0; sc_signal< bool > m_m_axi_rready_converter_0_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M01_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_1; sc_signal< bool > m_m_axi_awvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_1; sc_signal< bool > m_m_axi_awready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_1_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_1; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_1; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_1; sc_signal< bool > m_m_axi_wvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_1; sc_signal< bool > m_m_axi_wready_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_1; sc_signal< bool > m_m_axi_bvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_1; sc_signal< bool > m_m_axi_bready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_1; sc_signal< bool > m_m_axi_arvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_1; sc_signal< bool > m_m_axi_arready_converter_1_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_1; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_1; sc_signal< bool > m_m_axi_rvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_1; sc_signal< bool > m_m_axi_rready_converter_1_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M02_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_2; sc_signal< bool > m_m_axi_awvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_2; sc_signal< bool > m_m_axi_awready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_2_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_2; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_2; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_2; sc_signal< bool > m_m_axi_wvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_2; sc_signal< bool > m_m_axi_wready_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_2; sc_signal< bool > m_m_axi_bvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_2; sc_signal< bool > m_m_axi_bready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_2; sc_signal< bool > m_m_axi_arvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_2; sc_signal< bool > m_m_axi_arready_converter_2_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_2; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_2; sc_signal< bool > m_m_axi_rvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_2; sc_signal< bool > m_m_axi_rready_converter_2_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M03_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_3; sc_signal< bool > m_m_axi_awvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_3; sc_signal< bool > m_m_axi_awready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_3_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_3; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_3; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_3; sc_signal< bool > m_m_axi_wvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_3; sc_signal< bool > m_m_axi_wready_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_3; sc_signal< bool > m_m_axi_bvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_3; sc_signal< bool > m_m_axi_bready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_3; sc_signal< bool > m_m_axi_arvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_3; sc_signal< bool > m_m_axi_arready_converter_3_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_3; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_3; sc_signal< bool > m_m_axi_rvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_3; sc_signal< bool > m_m_axi_rready_converter_3_signal; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_araddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_3; - - - - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_arprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_arready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_3; - - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_arvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_awaddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_3; + xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M04_AXI_transactor; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_awprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_4; + sc_signal< bool > m_m_axi_awvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_4; + sc_signal< bool > m_m_axi_awready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_wdata_converter_4_signal; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_4; + sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_4; + sc_signal< bool > m_m_axi_wvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_4; + sc_signal< bool > m_m_axi_wready_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_bresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_4; + sc_signal< bool > m_m_axi_bvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_4; + sc_signal< bool > m_m_axi_bready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_araddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_arprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_4; + sc_signal< bool > m_m_axi_arvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_4; + sc_signal< bool > m_m_axi_arready_converter_4_signal; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_rdata_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_rresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_4; + sc_signal< bool > m_m_axi_rvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_4; + sc_signal< bool > m_m_axi_rready_converter_4_signal; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_araddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_arprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_arready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_arvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_4; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_awaddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_awprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_awready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_awvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_4; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_bready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_bresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_4; + xsc::xsc_split<5, 5> * mp_m_axi_split_bvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_4; - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_awprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_3; + xsc::xsc_split<160, 5> * mp_m_axi_split_rdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_awready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_rready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_rresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_awvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_rvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_4; + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_wdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_bready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_3; - xsc::xsc_split<8, 4> * mp_m_axi_split_bresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_wready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_bvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_3; - - xsc::xsc_split<128, 4> * mp_m_axi_split_rdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_3; - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_rready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_3; - - xsc::xsc_split<8, 4> * mp_m_axi_split_rresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_rvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_wdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_3; - - - - xsc::xsc_split<4, 4> * mp_m_axi_split_wready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_3; - - xsc::xsc_concatenator<16, 4> * mp_m_axi_concat_wstrb; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_0; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_1; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_2; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_wvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_3; + xsc::xsc_concatenator<20, 5> * mp_m_axi_concat_wstrb; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_0; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_1; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_2; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_3; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_4; + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_wvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_4; }; #endif // RIVIERA @@ -1257,25 +1431,25 @@ public: sc_core::sc_out< sc_dt::sc_bv<2> > s_axi_rresp; sc_core::sc_out< sc_dt::sc_bv<1> > s_axi_rvalid; sc_core::sc_in< sc_dt::sc_bv<1> > s_axi_rready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_awaddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_awprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_awvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_awready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_wdata; - sc_core::sc_out< sc_dt::sc_bv<16> > m_axi_wstrb; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_wvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_wready; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_bresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_bvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_bready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_araddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_arprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_arvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_arready; - sc_core::sc_in< sc_dt::sc_bv<128> > m_axi_rdata; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_rresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_rvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_rready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_awaddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_awprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_awvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_awready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_wdata; + sc_core::sc_out< sc_dt::sc_bv<20> > m_axi_wstrb; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_wvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_wready; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_bresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_bvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_bready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_araddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_arprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_arvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_arready; + sc_core::sc_in< sc_dt::sc_bv<160> > m_axi_rdata; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_rresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_rvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_rready; // Dummy Signals for IP Ports @@ -1308,301 +1482,359 @@ private: xsc::common::vectorN2scalar_converter<1>* mp_s_axi_rready_converter; sc_signal< bool > m_s_axi_rready_converter_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M00_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_0; sc_signal< bool > m_m_axi_awvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_0; sc_signal< bool > m_m_axi_awready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_0_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_0; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_0; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_0; sc_signal< bool > m_m_axi_wvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_0; sc_signal< bool > m_m_axi_wready_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_0; sc_signal< bool > m_m_axi_bvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_0; sc_signal< bool > m_m_axi_bready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_0; sc_signal< bool > m_m_axi_arvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_0; sc_signal< bool > m_m_axi_arready_converter_0_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_0; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_0; sc_signal< bool > m_m_axi_rvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_0; sc_signal< bool > m_m_axi_rready_converter_0_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M01_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_1; sc_signal< bool > m_m_axi_awvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_1; sc_signal< bool > m_m_axi_awready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_1_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_1; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_1; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_1; sc_signal< bool > m_m_axi_wvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_1; sc_signal< bool > m_m_axi_wready_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_1; sc_signal< bool > m_m_axi_bvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_1; sc_signal< bool > m_m_axi_bready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_1; sc_signal< bool > m_m_axi_arvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_1; sc_signal< bool > m_m_axi_arready_converter_1_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_1; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_1; sc_signal< bool > m_m_axi_rvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_1; sc_signal< bool > m_m_axi_rready_converter_1_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M02_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_2; sc_signal< bool > m_m_axi_awvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_2; sc_signal< bool > m_m_axi_awready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_2_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_2; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_2; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_2; sc_signal< bool > m_m_axi_wvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_2; sc_signal< bool > m_m_axi_wready_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_2; sc_signal< bool > m_m_axi_bvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_2; sc_signal< bool > m_m_axi_bready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_2; sc_signal< bool > m_m_axi_arvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_2; sc_signal< bool > m_m_axi_arready_converter_2_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_2; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_2; sc_signal< bool > m_m_axi_rvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_2; sc_signal< bool > m_m_axi_rready_converter_2_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M03_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_3; sc_signal< bool > m_m_axi_awvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_3; sc_signal< bool > m_m_axi_awready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_3_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_3; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_3; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_3; sc_signal< bool > m_m_axi_wvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_3; sc_signal< bool > m_m_axi_wready_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_3; sc_signal< bool > m_m_axi_bvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_3; sc_signal< bool > m_m_axi_bready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_3; sc_signal< bool > m_m_axi_arvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_3; sc_signal< bool > m_m_axi_arready_converter_3_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_3; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_3; sc_signal< bool > m_m_axi_rvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_3; sc_signal< bool > m_m_axi_rready_converter_3_signal; + xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M04_AXI_transactor; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_awprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_4; + sc_signal< bool > m_m_axi_awvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_4; + sc_signal< bool > m_m_axi_awready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_wdata_converter_4_signal; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_4; + sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_4; + sc_signal< bool > m_m_axi_wvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_4; + sc_signal< bool > m_m_axi_wready_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_bresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_4; + sc_signal< bool > m_m_axi_bvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_4; + sc_signal< bool > m_m_axi_bready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_araddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_arprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_4; + sc_signal< bool > m_m_axi_arvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_4; + sc_signal< bool > m_m_axi_arready_converter_4_signal; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_rdata_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_rresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_4; + sc_signal< bool > m_m_axi_rvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_4; + sc_signal< bool > m_m_axi_rready_converter_4_signal; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_araddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_arprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_arready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_arvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_4; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_awaddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_awprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_awready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_awvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_4; - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_araddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_3; - - - - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_arprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_arready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_3; - - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_arvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_awaddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_3; - - - - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_awprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_awready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_bready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_4; + xsc::xsc_split<10, 5> * mp_m_axi_split_bresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_awvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_bvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_4; + xsc::xsc_split<160, 5> * mp_m_axi_split_rdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_bready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_3; - xsc::xsc_split<8, 4> * mp_m_axi_split_bresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_rready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_bvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_3; + xsc::xsc_split<10, 5> * mp_m_axi_split_rresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_4; - xsc::xsc_split<128, 4> * mp_m_axi_split_rdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_rvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_4; + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_wdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_rready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_3; - xsc::xsc_split<8, 4> * mp_m_axi_split_rresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_wready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_rvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_wdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_3; - - - - xsc::xsc_split<4, 4> * mp_m_axi_split_wready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_3; - - xsc::xsc_concatenator<16, 4> * mp_m_axi_concat_wstrb; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_0; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_1; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_2; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_wvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_3; + xsc::xsc_concatenator<20, 5> * mp_m_axi_concat_wstrb; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_0; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_1; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_2; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_3; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_4; + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_wvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_4; // Transactor stubs xtlm::xtlm_aximm_initiator_stub * M00_AXI_transactor_initiator_rd_socket_stub; @@ -1613,6 +1845,8 @@ private: xtlm::xtlm_aximm_initiator_stub * M02_AXI_transactor_initiator_wr_socket_stub; xtlm::xtlm_aximm_initiator_stub * M03_AXI_transactor_initiator_rd_socket_stub; xtlm::xtlm_aximm_initiator_stub * M03_AXI_transactor_initiator_wr_socket_stub; + xtlm::xtlm_aximm_initiator_stub * M04_AXI_transactor_initiator_rd_socket_stub; + xtlm::xtlm_aximm_initiator_stub * M04_AXI_transactor_initiator_wr_socket_stub; xtlm::xtlm_aximm_target_stub * S00_AXI_transactor_target_rd_socket_stub; xtlm::xtlm_aximm_target_stub * S00_AXI_transactor_target_wr_socket_stub; @@ -1659,25 +1893,25 @@ public: sc_core::sc_out< sc_dt::sc_bv<2> > s_axi_rresp; sc_core::sc_out< sc_dt::sc_bv<1> > s_axi_rvalid; sc_core::sc_in< sc_dt::sc_bv<1> > s_axi_rready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_awaddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_awprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_awvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_awready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_wdata; - sc_core::sc_out< sc_dt::sc_bv<16> > m_axi_wstrb; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_wvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_wready; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_bresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_bvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_bready; - sc_core::sc_out< sc_dt::sc_bv<128> > m_axi_araddr; - sc_core::sc_out< sc_dt::sc_bv<12> > m_axi_arprot; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_arvalid; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_arready; - sc_core::sc_in< sc_dt::sc_bv<128> > m_axi_rdata; - sc_core::sc_in< sc_dt::sc_bv<8> > m_axi_rresp; - sc_core::sc_in< sc_dt::sc_bv<4> > m_axi_rvalid; - sc_core::sc_out< sc_dt::sc_bv<4> > m_axi_rready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_awaddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_awprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_awvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_awready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_wdata; + sc_core::sc_out< sc_dt::sc_bv<20> > m_axi_wstrb; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_wvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_wready; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_bresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_bvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_bready; + sc_core::sc_out< sc_dt::sc_bv<160> > m_axi_araddr; + sc_core::sc_out< sc_dt::sc_bv<15> > m_axi_arprot; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_arvalid; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_arready; + sc_core::sc_in< sc_dt::sc_bv<160> > m_axi_rdata; + sc_core::sc_in< sc_dt::sc_bv<10> > m_axi_rresp; + sc_core::sc_in< sc_dt::sc_bv<5> > m_axi_rvalid; + sc_core::sc_out< sc_dt::sc_bv<5> > m_axi_rready; // Dummy Signals for IP Ports @@ -1710,301 +1944,359 @@ private: xsc::common::vectorN2scalar_converter<1>* mp_s_axi_rready_converter; sc_signal< bool > m_s_axi_rready_converter_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M00_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_0; sc_signal< bool > m_m_axi_awvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_0; sc_signal< bool > m_m_axi_awready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_0_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_0; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_0; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_0; sc_signal< bool > m_m_axi_wvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_0; sc_signal< bool > m_m_axi_wready_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_0; sc_signal< bool > m_m_axi_bvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_0; sc_signal< bool > m_m_axi_bready_converter_0_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_0; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_0; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_0_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_0; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_0; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_0; sc_signal< bool > m_m_axi_arvalid_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_0; sc_signal< bool > m_m_axi_arready_converter_0_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_0; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_0; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_0_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_0; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_0; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_0_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_0; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_0; sc_signal< bool > m_m_axi_rvalid_converter_0_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_0; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_0; sc_signal< bool > m_m_axi_rready_converter_0_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M01_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_1; sc_signal< bool > m_m_axi_awvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_1; sc_signal< bool > m_m_axi_awready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_1_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_1; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_1; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_1; sc_signal< bool > m_m_axi_wvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_1; sc_signal< bool > m_m_axi_wready_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_1; sc_signal< bool > m_m_axi_bvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_1; sc_signal< bool > m_m_axi_bready_converter_1_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_1; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_1; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_1_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_1; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_1; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_1; sc_signal< bool > m_m_axi_arvalid_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_1; sc_signal< bool > m_m_axi_arready_converter_1_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_1; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_1; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_1_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_1; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_1; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_1_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_1; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_1; sc_signal< bool > m_m_axi_rvalid_converter_1_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_1; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_1; sc_signal< bool > m_m_axi_rready_converter_1_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M02_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_2; sc_signal< bool > m_m_axi_awvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_2; sc_signal< bool > m_m_axi_awready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_2_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_2; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_2; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_2; sc_signal< bool > m_m_axi_wvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_2; sc_signal< bool > m_m_axi_wready_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_2; sc_signal< bool > m_m_axi_bvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_2; sc_signal< bool > m_m_axi_bready_converter_2_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_2; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_2; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_2_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_2; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_2; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_2; sc_signal< bool > m_m_axi_arvalid_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_2; sc_signal< bool > m_m_axi_arready_converter_2_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_2; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_2; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_2_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_2; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_2; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_2_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_2; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_2; sc_signal< bool > m_m_axi_rvalid_converter_2_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_2; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_2; sc_signal< bool > m_m_axi_rready_converter_2_signal; xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M03_AXI_transactor; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_awaddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_awprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_awprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_awvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_3; sc_signal< bool > m_m_axi_awvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_awready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_3; sc_signal< bool > m_m_axi_awready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_wdata_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_wdata_converter_3_signal; - xsc::common::vector2vector_converter<4,16>* mp_m_axi_wstrb_converter_3; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_3; sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_wvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_3; sc_signal< bool > m_m_axi_wvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_wready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_3; sc_signal< bool > m_m_axi_wready_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_bresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_bresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_bvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_3; sc_signal< bool > m_m_axi_bvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_bready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_3; sc_signal< bool > m_m_axi_bready_converter_3_signal; - xsc::common::vector2vector_converter<32,128>* mp_m_axi_araddr_converter_3; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_3; sc_signal< sc_bv<32> > m_m_axi_araddr_converter_3_signal; - xsc::common::vector2vector_converter<3,12>* mp_m_axi_arprot_converter_3; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_3; sc_signal< sc_bv<3> > m_m_axi_arprot_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_arvalid_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_3; sc_signal< bool > m_m_axi_arvalid_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_arready_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_3; sc_signal< bool > m_m_axi_arready_converter_3_signal; - xsc::common::vector2vector_converter<128,32>* mp_m_axi_rdata_converter_3; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_3; sc_signal< sc_bv<32> > m_m_axi_rdata_converter_3_signal; - xsc::common::vector2vector_converter<8,2>* mp_m_axi_rresp_converter_3; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_3; sc_signal< sc_bv<2> > m_m_axi_rresp_converter_3_signal; - xsc::common::vectorN2scalar_converter<4>* mp_m_axi_rvalid_converter_3; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_3; sc_signal< bool > m_m_axi_rvalid_converter_3_signal; - xsc::common::scalar2vectorN_converter<4>* mp_m_axi_rready_converter_3; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_3; sc_signal< bool > m_m_axi_rready_converter_3_signal; + xtlm::xaximm_xtlm2pin_t<32,32,1,1,1,1,1,1>* mp_M04_AXI_transactor; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_awaddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_awaddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_awprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_awprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_awvalid_converter_4; + sc_signal< bool > m_m_axi_awvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_awready_converter_4; + sc_signal< bool > m_m_axi_awready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_wdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_wdata_converter_4_signal; + xsc::common::vector2vector_converter<4,20>* mp_m_axi_wstrb_converter_4; + sc_signal< sc_bv<4> > m_m_axi_wstrb_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_wvalid_converter_4; + sc_signal< bool > m_m_axi_wvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_wready_converter_4; + sc_signal< bool > m_m_axi_wready_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_bresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_bresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_bvalid_converter_4; + sc_signal< bool > m_m_axi_bvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_bready_converter_4; + sc_signal< bool > m_m_axi_bready_converter_4_signal; + xsc::common::vector2vector_converter<32,160>* mp_m_axi_araddr_converter_4; + sc_signal< sc_bv<32> > m_m_axi_araddr_converter_4_signal; + xsc::common::vector2vector_converter<3,15>* mp_m_axi_arprot_converter_4; + sc_signal< sc_bv<3> > m_m_axi_arprot_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_arvalid_converter_4; + sc_signal< bool > m_m_axi_arvalid_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_arready_converter_4; + sc_signal< bool > m_m_axi_arready_converter_4_signal; + xsc::common::vector2vector_converter<160,32>* mp_m_axi_rdata_converter_4; + sc_signal< sc_bv<32> > m_m_axi_rdata_converter_4_signal; + xsc::common::vector2vector_converter<10,2>* mp_m_axi_rresp_converter_4; + sc_signal< sc_bv<2> > m_m_axi_rresp_converter_4_signal; + xsc::common::vectorN2scalar_converter<5>* mp_m_axi_rvalid_converter_4; + sc_signal< bool > m_m_axi_rvalid_converter_4_signal; + xsc::common::scalar2vectorN_converter<5>* mp_m_axi_rready_converter_4; + sc_signal< bool > m_m_axi_rready_converter_4_signal; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_araddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_araddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_arprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_arprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_arready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_arready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_arvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_arvalid_out_4; + + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_awaddr; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_awaddr_out_4; + + + + + + + xsc::xsc_concatenator<15, 5> * mp_m_axi_concat_awprot; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_0; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_1; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_2; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_3; + sc_signal<sc_dt::sc_bv<15> > m_axi_concat_awprot_out_4; + + + xsc::xsc_split<5, 5> * mp_m_axi_split_awready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_awready_out_4; + + + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_awvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_awvalid_out_4; - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_araddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_araddr_out_3; - - - - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_arprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_arprot_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_arready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_arready_out_3; - - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_arvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_arvalid_out_3; - - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_awaddr; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_awaddr_out_3; - - - - - - - xsc::xsc_concatenator<12, 4> * mp_m_axi_concat_awprot; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_0; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_1; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_2; - sc_signal<sc_dt::sc_bv<12> > m_axi_concat_awprot_out_3; - - - xsc::xsc_split<4, 4> * mp_m_axi_split_awready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_awready_out_3; - - - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_awvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_awvalid_out_3; - - - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_bready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_bready_out_3; - - xsc::xsc_split<8, 4> * mp_m_axi_split_bresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_bresp_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_bready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_bready_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_bvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_bvalid_out_3; + xsc::xsc_split<10, 5> * mp_m_axi_split_bresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_bresp_out_4; - xsc::xsc_split<128, 4> * mp_m_axi_split_rdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_split_rdata_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_bvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_bvalid_out_4; + xsc::xsc_split<160, 5> * mp_m_axi_split_rdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_split_rdata_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_rready; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_rready_out_3; - xsc::xsc_split<8, 4> * mp_m_axi_split_rresp; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_0; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_1; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_2; - sc_signal<sc_dt::sc_bv<8> > m_axi_split_rresp_out_3; + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_rready; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_rready_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_rvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_rvalid_out_3; + xsc::xsc_split<10, 5> * mp_m_axi_split_rresp; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_0; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_1; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_2; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_3; + sc_signal<sc_dt::sc_bv<10> > m_axi_split_rresp_out_4; - xsc::xsc_concatenator<128, 4> * mp_m_axi_concat_wdata; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_0; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_1; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_2; - sc_signal<sc_dt::sc_bv<128> > m_axi_concat_wdata_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_rvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_rvalid_out_4; + xsc::xsc_concatenator<160, 5> * mp_m_axi_concat_wdata; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_0; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_1; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_2; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_3; + sc_signal<sc_dt::sc_bv<160> > m_axi_concat_wdata_out_4; - xsc::xsc_split<4, 4> * mp_m_axi_split_wready; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_split_wready_out_3; - xsc::xsc_concatenator<16, 4> * mp_m_axi_concat_wstrb; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_0; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_1; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_2; - sc_signal<sc_dt::sc_bv<16> > m_axi_concat_wstrb_out_3; + xsc::xsc_split<5, 5> * mp_m_axi_split_wready; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_split_wready_out_4; - xsc::xsc_concatenator<4, 4> * mp_m_axi_concat_wvalid; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_0; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_1; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_2; - sc_signal<sc_dt::sc_bv<4> > m_axi_concat_wvalid_out_3; + xsc::xsc_concatenator<20, 5> * mp_m_axi_concat_wstrb; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_0; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_1; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_2; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_3; + sc_signal<sc_dt::sc_bv<20> > m_axi_concat_wstrb_out_4; + + + xsc::xsc_concatenator<5, 5> * mp_m_axi_concat_wvalid; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_0; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_1; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_2; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_3; + sc_signal<sc_dt::sc_bv<5> > m_axi_concat_wvalid_out_4; // Transactor stubs xtlm::xtlm_aximm_initiator_stub * M00_AXI_transactor_initiator_rd_socket_stub; @@ -2015,6 +2307,8 @@ private: xtlm::xtlm_aximm_initiator_stub * M02_AXI_transactor_initiator_wr_socket_stub; xtlm::xtlm_aximm_initiator_stub * M03_AXI_transactor_initiator_rd_socket_stub; xtlm::xtlm_aximm_initiator_stub * M03_AXI_transactor_initiator_wr_socket_stub; + xtlm::xtlm_aximm_initiator_stub * M04_AXI_transactor_initiator_rd_socket_stub; + xtlm::xtlm_aximm_initiator_stub * M04_AXI_transactor_initiator_wr_socket_stub; xtlm::xtlm_aximm_target_stub * S00_AXI_transactor_target_rd_socket_stub; xtlm::xtlm_aximm_target_stub * S00_AXI_transactor_target_wr_socket_stub; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.v index 768f63e..92429c6 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.v +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0.v @@ -142,61 +142,62 @@ output wire [0 : 0] s_axi_rvalid; 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RREADY" *) input wire [0 : 0] s_axi_rready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96]" *) -output wire [127 : 0] m_axi_awaddr; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9]" *) -output wire [11 : 0] m_axi_awprot; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3]" *) -output wire [3 : 0] m_axi_awvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3]" *) -input wire [3 : 0] m_axi_awready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96]" *) -output wire [127 : 0] m_axi_wdata; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12]" *) -output wire [15 : 0] m_axi_wstrb; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3]" *) -output wire [3 : 0] m_axi_wvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3]" *) -input wire [3 : 0] m_axi_wready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6]" *) -input wire [7 : 0] m_axi_bresp; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3]" *) -input wire [3 : 0] m_axi_bvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3]" *) -output wire [3 : 0] m_axi_bready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96]" *) -output wire [127 : 0] m_axi_araddr; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9]" *) -output wire [11 : 0] m_axi_arprot; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3]" *) -output wire [3 : 0] m_axi_arvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3]" *) -input wire [3 : 0] m_axi_arready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96]" *) -input wire [127 : 0] m_axi_rdata; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6]" *) -input wire [7 : 0] m_axi_rresp; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3]" *) -input wire [3 : 0] m_axi_rvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI AWADDR [31:0] [159:128]" *) +output wire [159 : 0] m_axi_awaddr; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI AWPROT [2:0] [14:12]" *) +output wire [14 : 0] m_axi_awprot; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWVALID [0:0] [4:4]" *) +output wire [4 : 0] m_axi_awvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWREADY [0:0] [4:4]" *) +input wire [4 : 0] m_axi_awready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI WDATA [31:0] [159:128]" *) +output wire [159 : 0] m_axi_wdata; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12], xilinx.com:interface:aximm:1.0 M04_AXI WSTRB [3:0] [19:16]" *) +output wire [19 : 0] m_axi_wstrb; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WVALID [0:0] [4:4]" *) +output wire [4 : 0] m_axi_wvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WREADY [0:0] [4:4]" *) +input wire [4 : 0] m_axi_wready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI BRESP [1:0] [9:8]" *) +input wire [9 : 0] m_axi_bresp; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BVALID [0:0] [4:4]" *) +input wire [4 : 0] m_axi_bvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BREADY [0:0] [4:4]" *) +output wire [4 : 0] m_axi_bready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI ARADDR [31:0] [159:128]" *) +output wire [159 : 0] m_axi_araddr; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI ARPROT [2:0] [14:12]" *) +output wire [14 : 0] m_axi_arprot; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARVALID [0:0] [4:4]" *) +output wire [4 : 0] m_axi_arvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARREADY [0:0] [4:4]" *) +input wire [4 : 0] m_axi_arready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI RDATA [31:0] [159:128]" *) +input wire [159 : 0] m_axi_rdata; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI RRESP [1:0] [9:8]" *) +input wire [9 : 0] m_axi_rresp; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RVALID [0:0] [4:4]" *) +input wire [4 : 0] m_axi_rvalid; (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME M00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS\ 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M01_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_D\ OMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M02_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING \ 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M03_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRES\ -P 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3]" *) -output wire [3 : 0] m_axi_rready; +P 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M04_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PRO\ +T 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RREADY [0:0] [4:4]" *) +output wire [4 : 0] m_axi_rready; axi_crossbar_v2_1_33_axi_crossbar #( .C_FAMILY("artix7"), .C_NUM_SLAVE_SLOTS(1), - .C_NUM_MASTER_SLOTS(4), + .C_NUM_MASTER_SLOTS(5), .C_AXI_ID_WIDTH(1), .C_AXI_ADDR_WIDTH(32), .C_AXI_DATA_WIDTH(32), .C_AXI_PROTOCOL(2), .C_NUM_ADDR_RANGES(1), - .C_M_AXI_BASE_ADDR(256'Hffffffffffffffff000000004120000000000000400000000000000041400000), - .C_M_AXI_ADDR_WIDTH(128'H0000000000000010000000100000000c), + .C_M_AXI_BASE_ADDR(320'H000000008000000000000000412000000000000041c0000000000000400000000000000041400000), + .C_M_AXI_ADDR_WIDTH(160'H000000070000001000000010000000100000000c), .C_S_AXI_BASE_ID(32'H00000000), .C_S_AXI_THREAD_ID_WIDTH(32'H00000000), .C_AXI_SUPPORTS_USER_SIGNALS(0), @@ -205,16 +206,16 @@ output wire [3 : 0] m_axi_rready; .C_AXI_WUSER_WIDTH(1), .C_AXI_RUSER_WIDTH(1), .C_AXI_BUSER_WIDTH(1), - .C_M_AXI_WRITE_CONNECTIVITY(128'H00000001000000010000000100000001), - .C_M_AXI_READ_CONNECTIVITY(128'H00000001000000010000000100000001), + .C_M_AXI_WRITE_CONNECTIVITY(160'H0000000100000001000000010000000100000001), + .C_M_AXI_READ_CONNECTIVITY(160'H0000000100000001000000010000000100000001), .C_R_REGISTER(1), .C_S_AXI_SINGLE_THREAD(32'H00000001), .C_S_AXI_WRITE_ACCEPTANCE(32'H00000001), .C_S_AXI_READ_ACCEPTANCE(32'H00000001), - .C_M_AXI_WRITE_ISSUING(128'H00000001000000010000000100000001), - .C_M_AXI_READ_ISSUING(128'H00000001000000010000000100000001), + .C_M_AXI_WRITE_ISSUING(160'H0000000100000001000000010000000100000001), + .C_M_AXI_READ_ISSUING(160'H0000000100000001000000010000000100000001), .C_S_AXI_ARB_PRIORITY(32'H00000000), - .C_M_AXI_SECURE(128'H00000000000000000000000000000000), + .C_M_AXI_SECURE(160'H0000000000000000000000000000000000000000), .C_CONNECTIVITY_MODE(0) ) inst ( .aclk(aclk), @@ -282,9 +283,9 @@ output wire [3 : 0] m_axi_rready; .m_axi_wuser(), .m_axi_wvalid(m_axi_wvalid), .m_axi_wready(m_axi_wready), - .m_axi_bid(4'H0), + .m_axi_bid(5'H00), .m_axi_bresp(m_axi_bresp), - .m_axi_buser(4'H0), + .m_axi_buser(5'H00), .m_axi_bvalid(m_axi_bvalid), .m_axi_bready(m_axi_bready), .m_axi_arid(), @@ -300,11 +301,11 @@ output wire [3 : 0] m_axi_rready; .m_axi_aruser(), .m_axi_arvalid(m_axi_arvalid), .m_axi_arready(m_axi_arready), - .m_axi_rid(4'H0), + .m_axi_rid(5'H00), .m_axi_rdata(m_axi_rdata), .m_axi_rresp(m_axi_rresp), - .m_axi_rlast(4'HF), - .m_axi_ruser(4'H0), + .m_axi_rlast(5'H1F), + .m_axi_ruser(5'H00), .m_axi_rvalid(m_axi_rvalid), .m_axi_rready(m_axi_rready) ); diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.cpp b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.cpp index 2bc07b9..02ed93f 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.cpp +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.cpp @@ -62,7 +62,7 @@ mb_design_1_xbar_0_sc::mb_design_1_xbar_0_sc(const sc_core::sc_module_name& nm) // initialize module xsc::common_cpp::properties model_param_props; model_param_props.addLong("C_NUM_SLAVE_SLOTS", "1"); - model_param_props.addLong("C_NUM_MASTER_SLOTS", "4"); + model_param_props.addLong("C_NUM_MASTER_SLOTS", "5"); model_param_props.addLong("C_AXI_ID_WIDTH", "1"); model_param_props.addLong("C_AXI_ADDR_WIDTH", "32"); model_param_props.addLong("C_AXI_DATA_WIDTH", "32"); @@ -77,19 +77,19 @@ mb_design_1_xbar_0_sc::mb_design_1_xbar_0_sc(const sc_core::sc_module_name& nm) model_param_props.addLong("C_R_REGISTER", "1"); model_param_props.addLong("C_CONNECTIVITY_MODE", "0"); model_param_props.addString("C_FAMILY", "artix7"); - model_param_props.addBitString("C_M_AXI_BASE_ADDR", "1111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000000000100000100100000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000", 256); - model_param_props.addBitString("C_M_AXI_ADDR_WIDTH", "00000000000000000000000000000000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100", 128); + model_param_props.addBitString("C_M_AXI_BASE_ADDR", "00000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001000001001000000000000000000000000000000000000000000000000000000100000111000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000001010000000000000000000000", 320); + model_param_props.addBitString("C_M_AXI_ADDR_WIDTH", "0000000000000000000000000000011100000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000001100", 160); model_param_props.addBitString("C_S_AXI_BASE_ID", "00000000000000000000000000000000", 32); model_param_props.addBitString("C_S_AXI_THREAD_ID_WIDTH", "00000000000000000000000000000000", 32); - model_param_props.addBitString("C_M_AXI_WRITE_CONNECTIVITY", "00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 128); - model_param_props.addBitString("C_M_AXI_READ_CONNECTIVITY", "00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 128); + model_param_props.addBitString("C_M_AXI_WRITE_CONNECTIVITY", "0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 160); + model_param_props.addBitString("C_M_AXI_READ_CONNECTIVITY", "0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 160); model_param_props.addBitString("C_S_AXI_SINGLE_THREAD", "00000000000000000000000000000001", 32); model_param_props.addBitString("C_S_AXI_WRITE_ACCEPTANCE", "00000000000000000000000000000001", 32); model_param_props.addBitString("C_S_AXI_READ_ACCEPTANCE", "00000000000000000000000000000001", 32); - model_param_props.addBitString("C_M_AXI_WRITE_ISSUING", "00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 128); - model_param_props.addBitString("C_M_AXI_READ_ISSUING", "00000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 128); + model_param_props.addBitString("C_M_AXI_WRITE_ISSUING", "0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 160); + model_param_props.addBitString("C_M_AXI_READ_ISSUING", "0000000000000000000000000000000100000000000000000000000000000001000000000000000000000000000000010000000000000000000000000000000100000000000000000000000000000001", 160); model_param_props.addBitString("C_S_AXI_ARB_PRIORITY", "00000000000000000000000000000000", 32); - model_param_props.addBitString("C_M_AXI_SECURE", "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", 128); + model_param_props.addBitString("C_M_AXI_SECURE", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", 160); model_param_props.addString("COMPONENT_NAME", "mb_design_1_xbar_0"); mp_impl = new axi_crossbar("inst", model_param_props); @@ -105,6 +105,8 @@ mb_design_1_xbar_0_sc::mb_design_1_xbar_0_sc(const sc_core::sc_module_name& nm) initiator_2_wr_socket = mp_impl->initiator_2_wr_socket; initiator_3_rd_socket = mp_impl->initiator_3_rd_socket; initiator_3_wr_socket = mp_impl->initiator_3_wr_socket; + initiator_4_rd_socket = mp_impl->initiator_4_rd_socket; + initiator_4_wr_socket = mp_impl->initiator_4_wr_socket; } mb_design_1_xbar_0_sc::~mb_design_1_xbar_0_sc() diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.h b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.h index 3ff6887..9e01a23 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.h +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_sc.h @@ -86,6 +86,8 @@ public: xtlm::xtlm_aximm_initiator_socket* initiator_2_wr_socket; xtlm::xtlm_aximm_initiator_socket* initiator_3_rd_socket; xtlm::xtlm_aximm_initiator_socket* initiator_3_wr_socket; + xtlm::xtlm_aximm_initiator_socket* initiator_4_rd_socket; + xtlm::xtlm_aximm_initiator_socket* initiator_4_wr_socket; // module socket-to-socket TLM interfaces diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_stub.sv b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_stub.sv index 80ba9c9..d2d02df 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_stub.sv +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/sim/mb_design_1_xbar_0_stub.sv @@ -87,25 +87,25 @@ module mb_design_1_xbar_0 ( output bit [1 : 0] s_axi_rresp, output bit [0 : 0] s_axi_rvalid, input bit [0 : 0] s_axi_rready, - output bit [127 : 0] m_axi_awaddr, - output bit [11 : 0] m_axi_awprot, - output bit [3 : 0] m_axi_awvalid, - input bit [3 : 0] m_axi_awready, - output bit [127 : 0] m_axi_wdata, - output bit [15 : 0] m_axi_wstrb, - output bit [3 : 0] m_axi_wvalid, - input bit [3 : 0] m_axi_wready, - input bit [7 : 0] m_axi_bresp, - input bit [3 : 0] m_axi_bvalid, - output bit [3 : 0] m_axi_bready, - output bit [127 : 0] m_axi_araddr, - output bit [11 : 0] m_axi_arprot, - output bit [3 : 0] m_axi_arvalid, - input bit [3 : 0] m_axi_arready, - input bit [127 : 0] m_axi_rdata, - input bit [7 : 0] m_axi_rresp, - input bit [3 : 0] m_axi_rvalid, - output bit [3 : 0] m_axi_rready + output bit [159 : 0] m_axi_awaddr, + output bit [14 : 0] m_axi_awprot, + output bit [4 : 0] m_axi_awvalid, + input bit [4 : 0] m_axi_awready, + output bit [159 : 0] m_axi_wdata, + output bit [19 : 0] m_axi_wstrb, + output bit [4 : 0] m_axi_wvalid, + input bit [4 : 0] m_axi_wready, + input bit [9 : 0] m_axi_bresp, + input bit [4 : 0] m_axi_bvalid, + output bit [4 : 0] m_axi_bready, + output bit [159 : 0] m_axi_araddr, + output bit [14 : 0] m_axi_arprot, + output bit [4 : 0] m_axi_arvalid, + input bit [4 : 0] m_axi_arready, + input bit [159 : 0] m_axi_rdata, + input bit [9 : 0] m_axi_rresp, + input bit [4 : 0] m_axi_rvalid, + output bit [4 : 0] m_axi_rready ); endmodule `endif @@ -136,24 +136,24 @@ module mb_design_1_xbar_0 (aclk,aresetn,s_axi_awaddr,s_axi_awprot,s_axi_awvalid, output wire [1 : 0] s_axi_rresp; output wire [0 : 0] s_axi_rvalid; input bit [0 : 0] s_axi_rready; - output wire [127 : 0] m_axi_awaddr; - output wire [11 : 0] m_axi_awprot; - output wire [3 : 0] m_axi_awvalid; - input bit [3 : 0] m_axi_awready; - output wire [127 : 0] m_axi_wdata; - output wire [15 : 0] m_axi_wstrb; - output wire [3 : 0] m_axi_wvalid; - input bit [3 : 0] m_axi_wready; - input bit [7 : 0] m_axi_bresp; - input bit [3 : 0] m_axi_bvalid; - output wire [3 : 0] m_axi_bready; - output wire [127 : 0] m_axi_araddr; - output wire [11 : 0] m_axi_arprot; - output wire [3 : 0] m_axi_arvalid; - input bit [3 : 0] m_axi_arready; - input bit [127 : 0] m_axi_rdata; - input bit [7 : 0] m_axi_rresp; - input bit [3 : 0] m_axi_rvalid; - output wire [3 : 0] m_axi_rready; + output wire [159 : 0] m_axi_awaddr; + output wire [14 : 0] m_axi_awprot; + output wire [4 : 0] m_axi_awvalid; + input bit [4 : 0] m_axi_awready; + output wire [159 : 0] m_axi_wdata; + output wire [19 : 0] m_axi_wstrb; + output wire [4 : 0] m_axi_wvalid; + input bit [4 : 0] m_axi_wready; + input bit [9 : 0] m_axi_bresp; + input bit [4 : 0] m_axi_bvalid; + output wire [4 : 0] m_axi_bready; + output wire [159 : 0] m_axi_araddr; + output wire [14 : 0] m_axi_arprot; + output wire [4 : 0] m_axi_arvalid; + input bit [4 : 0] m_axi_arready; + input bit [159 : 0] m_axi_rdata; + input bit [9 : 0] m_axi_rresp; + input bit [4 : 0] m_axi_rvalid; + output wire [4 : 0] m_axi_rready; endmodule `endif diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/synth/mb_design_1_xbar_0.v b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/synth/mb_design_1_xbar_0.v index 5fdf27c..e02014b 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/synth/mb_design_1_xbar_0.v +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/ip/mb_design_1_xbar_0/synth/mb_design_1_xbar_0.v @@ -52,9 +52,9 @@ (* X_CORE_INFO = "axi_crossbar_v2_1_33_axi_crossbar,Vivado 2024.1.2" *) (* CHECK_LICENSE_TYPE = "mb_design_1_xbar_0,axi_crossbar_v2_1_33_axi_crossbar,{}" *) -(* CORE_GENERATION_INFO = "mb_design_1_xbar_0,axi_crossbar_v2_1_33_axi_crossbar,{x_ipProduct=Vivado 2024.1.2,x_ipVendor=xilinx.com,x_ipLibrary=ip,x_ipName=axi_crossbar,x_ipVersion=2.1,x_ipCoreRevision=33,x_ipLanguage=VHDL,x_ipSimLanguage=MIXED,C_FAMILY=artix7,C_NUM_SLAVE_SLOTS=1,C_NUM_MASTER_SLOTS=4,C_AXI_ID_WIDTH=1,C_AXI_ADDR_WIDTH=32,C_AXI_DATA_WIDTH=32,C_AXI_PROTOCOL=2,C_NUM_ADDR_RANGES=1,C_M_AXI_BASE_ADDR=0xffffffffffffffff000000004120000000000000400000000000000041400000,C_M_AXI_ADDR_WIDTH=0x00000000000000100000001000\ -00000c,C_S_AXI_BASE_ID=0x00000000,C_S_AXI_THREAD_ID_WIDTH=0x00000000,C_AXI_SUPPORTS_USER_SIGNALS=0,C_AXI_AWUSER_WIDTH=1,C_AXI_ARUSER_WIDTH=1,C_AXI_WUSER_WIDTH=1,C_AXI_RUSER_WIDTH=1,C_AXI_BUSER_WIDTH=1,C_M_AXI_WRITE_CONNECTIVITY=0x00000001000000010000000100000001,C_M_AXI_READ_CONNECTIVITY=0x00000001000000010000000100000001,C_R_REGISTER=1,C_S_AXI_SINGLE_THREAD=0x00000001,C_S_AXI_WRITE_ACCEPTANCE=0x00000001,C_S_AXI_READ_ACCEPTANCE=0x00000001,C_M_AXI_WRITE_ISSUING=0x00000001000000010000000100000001,\ -C_M_AXI_READ_ISSUING=0x00000001000000010000000100000001,C_S_AXI_ARB_PRIORITY=0x00000000,C_M_AXI_SECURE=0x00000000000000000000000000000000,C_CONNECTIVITY_MODE=0}" *) +(* CORE_GENERATION_INFO = "mb_design_1_xbar_0,axi_crossbar_v2_1_33_axi_crossbar,{x_ipProduct=Vivado 2024.1.2,x_ipVendor=xilinx.com,x_ipLibrary=ip,x_ipName=axi_crossbar,x_ipVersion=2.1,x_ipCoreRevision=33,x_ipLanguage=VHDL,x_ipSimLanguage=MIXED,C_FAMILY=artix7,C_NUM_SLAVE_SLOTS=1,C_NUM_MASTER_SLOTS=5,C_AXI_ID_WIDTH=1,C_AXI_ADDR_WIDTH=32,C_AXI_DATA_WIDTH=32,C_AXI_PROTOCOL=2,C_NUM_ADDR_RANGES=1,C_M_AXI_BASE_ADDR=0x000000008000000000000000412000000000000041c0000000000000400000000000000041400000,C_M_AXI_ADDR_WIDTH=0x0000000700\ +00001000000010000000100000000c,C_S_AXI_BASE_ID=0x00000000,C_S_AXI_THREAD_ID_WIDTH=0x00000000,C_AXI_SUPPORTS_USER_SIGNALS=0,C_AXI_AWUSER_WIDTH=1,C_AXI_ARUSER_WIDTH=1,C_AXI_WUSER_WIDTH=1,C_AXI_RUSER_WIDTH=1,C_AXI_BUSER_WIDTH=1,C_M_AXI_WRITE_CONNECTIVITY=0x0000000100000001000000010000000100000001,C_M_AXI_READ_CONNECTIVITY=0x0000000100000001000000010000000100000001,C_R_REGISTER=1,C_S_AXI_SINGLE_THREAD=0x00000001,C_S_AXI_WRITE_ACCEPTANCE=0x00000001,C_S_AXI_READ_ACCEPTANCE=0x00000001,C_M_AXI_WRITE_ISS\ +UING=0x0000000100000001000000010000000100000001,C_M_AXI_READ_ISSUING=0x0000000100000001000000010000000100000001,C_S_AXI_ARB_PRIORITY=0x00000000,C_M_AXI_SECURE=0x0000000000000000000000000000000000000000,C_CONNECTIVITY_MODE=0}" *) (* DowngradeIPIdentifiedWarnings = "yes" *) module mb_design_1_xbar_0 ( aclk, @@ -145,61 +145,62 @@ output wire [0 : 0] s_axi_rvalid; 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) (* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 S00_AXI RREADY" *) input wire [0 : 0] s_axi_rready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96]" *) -output wire [127 : 0] m_axi_awaddr; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9]" *) -output wire [11 : 0] m_axi_awprot; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3]" *) -output wire [3 : 0] m_axi_awvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3]" *) -input wire [3 : 0] m_axi_awready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96]" *) -output wire [127 : 0] m_axi_wdata; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12]" *) -output wire [15 : 0] m_axi_wstrb; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3]" *) -output wire [3 : 0] m_axi_wvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3]" *) -input wire [3 : 0] m_axi_wready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6]" *) -input wire [7 : 0] m_axi_bresp; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3]" *) -input wire [3 : 0] m_axi_bvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3]" *) -output wire [3 : 0] m_axi_bready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96]" *) -output wire [127 : 0] m_axi_araddr; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9]" *) -output wire [11 : 0] m_axi_arprot; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3]" *) -output wire [3 : 0] m_axi_arvalid; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3]" *) -input wire [3 : 0] m_axi_arready; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96]" *) -input wire [127 : 0] m_axi_rdata; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6]" *) -input wire [7 : 0] m_axi_rresp; -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3]" *) -input wire [3 : 0] m_axi_rvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI AWADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI AWADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI AWADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI AWADDR [31:0] [159:128]" *) +output wire [159 : 0] m_axi_awaddr; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI AWPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI AWPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI AWPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI AWPROT [2:0] [14:12]" *) +output wire [14 : 0] m_axi_awprot; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWVALID [0:0] [4:4]" *) +output wire [4 : 0] m_axi_awvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI AWREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI AWREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI AWREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI AWREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI AWREADY [0:0] [4:4]" *) +input wire [4 : 0] m_axi_awready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI WDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI WDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI WDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI WDATA [31:0] [159:128]" *) +output wire [159 : 0] m_axi_wdata; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WSTRB [3:0] [3:0], xilinx.com:interface:aximm:1.0 M01_AXI WSTRB [3:0] [7:4], xilinx.com:interface:aximm:1.0 M02_AXI WSTRB [3:0] [11:8], xilinx.com:interface:aximm:1.0 M03_AXI WSTRB [3:0] [15:12], xilinx.com:interface:aximm:1.0 M04_AXI WSTRB [3:0] [19:16]" *) +output wire [19 : 0] m_axi_wstrb; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WVALID [0:0] [4:4]" *) +output wire [4 : 0] m_axi_wvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI WREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI WREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI WREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI WREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI WREADY [0:0] [4:4]" *) +input wire [4 : 0] m_axi_wready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI BRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI BRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI BRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI BRESP [1:0] [9:8]" *) +input wire [9 : 0] m_axi_bresp; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BVALID [0:0] [4:4]" *) +input wire [4 : 0] m_axi_bvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI BREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI BREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI BREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI BREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI BREADY [0:0] [4:4]" *) +output wire [4 : 0] m_axi_bready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARADDR [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI ARADDR [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI ARADDR [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI ARADDR [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI ARADDR [31:0] [159:128]" *) +output wire [159 : 0] m_axi_araddr; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARPROT [2:0] [2:0], xilinx.com:interface:aximm:1.0 M01_AXI ARPROT [2:0] [5:3], xilinx.com:interface:aximm:1.0 M02_AXI ARPROT [2:0] [8:6], xilinx.com:interface:aximm:1.0 M03_AXI ARPROT [2:0] [11:9], xilinx.com:interface:aximm:1.0 M04_AXI ARPROT [2:0] [14:12]" *) +output wire [14 : 0] m_axi_arprot; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARVALID [0:0] [4:4]" *) +output wire [4 : 0] m_axi_arvalid; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI ARREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI ARREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI ARREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI ARREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI ARREADY [0:0] [4:4]" *) +input wire [4 : 0] m_axi_arready; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RDATA [31:0] [31:0], xilinx.com:interface:aximm:1.0 M01_AXI RDATA [31:0] [63:32], xilinx.com:interface:aximm:1.0 M02_AXI RDATA [31:0] [95:64], xilinx.com:interface:aximm:1.0 M03_AXI RDATA [31:0] [127:96], xilinx.com:interface:aximm:1.0 M04_AXI RDATA [31:0] [159:128]" *) +input wire [159 : 0] m_axi_rdata; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RRESP [1:0] [1:0], xilinx.com:interface:aximm:1.0 M01_AXI RRESP [1:0] [3:2], xilinx.com:interface:aximm:1.0 M02_AXI RRESP [1:0] [5:4], xilinx.com:interface:aximm:1.0 M03_AXI RRESP [1:0] [7:6], xilinx.com:interface:aximm:1.0 M04_AXI RRESP [1:0] [9:8]" *) +input wire [9 : 0] m_axi_rresp; +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RVALID [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RVALID [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RVALID [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RVALID [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RVALID [0:0] [4:4]" *) +input wire [4 : 0] m_axi_rvalid; (* X_INTERFACE_PARAMETER = "XIL_INTERFACENAME M00_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS\ 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M01_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_D\ OMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M02_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING \ 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M03_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PROT 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRES\ -P 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) -(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3]" *) -output wire [3 : 0] m_axi_rready; +P 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 2, NUM_WRITE_OUTSTANDING 2, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0, XIL_INTERFACENAME M04_AXI, DATA_WIDTH 32, PROTOCOL AXI4LITE, FREQ_HZ 100000000, ID_WIDTH 0, ADDR_WIDTH 32, AWUSER_WIDTH 0, ARUSER_WIDTH 0, WUSER_WIDTH 0, RUSER_WIDTH 0, BUSER_WIDTH 0, READ_WRITE_MODE READ_WRITE, HAS_BURST 0, HAS_LOCK 0, HAS_PRO\ +T 1, HAS_CACHE 0, HAS_QOS 0, HAS_REGION 0, HAS_WSTRB 1, HAS_BRESP 1, HAS_RRESP 1, SUPPORTS_NARROW_BURST 0, NUM_READ_OUTSTANDING 1, NUM_WRITE_OUTSTANDING 1, MAX_BURST_LENGTH 1, PHASE 0.0, CLK_DOMAIN /clk_wiz_0_clk_out1, NUM_READ_THREADS 1, NUM_WRITE_THREADS 1, RUSER_BITS_PER_BYTE 0, WUSER_BITS_PER_BYTE 0, INSERT_VIP 0" *) +(* X_INTERFACE_INFO = "xilinx.com:interface:aximm:1.0 M00_AXI RREADY [0:0] [0:0], xilinx.com:interface:aximm:1.0 M01_AXI RREADY [0:0] [1:1], xilinx.com:interface:aximm:1.0 M02_AXI RREADY [0:0] [2:2], xilinx.com:interface:aximm:1.0 M03_AXI RREADY [0:0] [3:3], xilinx.com:interface:aximm:1.0 M04_AXI RREADY [0:0] [4:4]" *) +output wire [4 : 0] m_axi_rready; axi_crossbar_v2_1_33_axi_crossbar #( .C_FAMILY("artix7"), .C_NUM_SLAVE_SLOTS(1), - .C_NUM_MASTER_SLOTS(4), + .C_NUM_MASTER_SLOTS(5), .C_AXI_ID_WIDTH(1), .C_AXI_ADDR_WIDTH(32), .C_AXI_DATA_WIDTH(32), .C_AXI_PROTOCOL(2), .C_NUM_ADDR_RANGES(1), - .C_M_AXI_BASE_ADDR(256'Hffffffffffffffff000000004120000000000000400000000000000041400000), - .C_M_AXI_ADDR_WIDTH(128'H0000000000000010000000100000000c), + .C_M_AXI_BASE_ADDR(320'H000000008000000000000000412000000000000041c0000000000000400000000000000041400000), + .C_M_AXI_ADDR_WIDTH(160'H000000070000001000000010000000100000000c), .C_S_AXI_BASE_ID(32'H00000000), .C_S_AXI_THREAD_ID_WIDTH(32'H00000000), .C_AXI_SUPPORTS_USER_SIGNALS(0), @@ -208,16 +209,16 @@ output wire [3 : 0] m_axi_rready; .C_AXI_WUSER_WIDTH(1), .C_AXI_RUSER_WIDTH(1), .C_AXI_BUSER_WIDTH(1), - .C_M_AXI_WRITE_CONNECTIVITY(128'H00000001000000010000000100000001), - .C_M_AXI_READ_CONNECTIVITY(128'H00000001000000010000000100000001), + .C_M_AXI_WRITE_CONNECTIVITY(160'H0000000100000001000000010000000100000001), + .C_M_AXI_READ_CONNECTIVITY(160'H0000000100000001000000010000000100000001), .C_R_REGISTER(1), .C_S_AXI_SINGLE_THREAD(32'H00000001), .C_S_AXI_WRITE_ACCEPTANCE(32'H00000001), .C_S_AXI_READ_ACCEPTANCE(32'H00000001), - .C_M_AXI_WRITE_ISSUING(128'H00000001000000010000000100000001), - .C_M_AXI_READ_ISSUING(128'H00000001000000010000000100000001), + .C_M_AXI_WRITE_ISSUING(160'H0000000100000001000000010000000100000001), + .C_M_AXI_READ_ISSUING(160'H0000000100000001000000010000000100000001), .C_S_AXI_ARB_PRIORITY(32'H00000000), - .C_M_AXI_SECURE(128'H00000000000000000000000000000000), + .C_M_AXI_SECURE(160'H0000000000000000000000000000000000000000), .C_CONNECTIVITY_MODE(0) ) inst ( .aclk(aclk), @@ -285,9 +286,9 @@ output wire [3 : 0] m_axi_rready; .m_axi_wuser(), .m_axi_wvalid(m_axi_wvalid), .m_axi_wready(m_axi_wready), - .m_axi_bid(4'H0), + .m_axi_bid(5'H00), .m_axi_bresp(m_axi_bresp), - .m_axi_buser(4'H0), + .m_axi_buser(5'H00), .m_axi_bvalid(m_axi_bvalid), .m_axi_bready(m_axi_bready), .m_axi_arid(), @@ -303,11 +304,11 @@ output wire [3 : 0] m_axi_rready; .m_axi_aruser(), .m_axi_arvalid(m_axi_arvalid), .m_axi_arready(m_axi_arready), - .m_axi_rid(4'H0), + .m_axi_rid(5'H00), .m_axi_rdata(m_axi_rdata), .m_axi_rresp(m_axi_rresp), - .m_axi_rlast(4'HF), - .m_axi_ruser(4'H0), + .m_axi_rlast(5'H1F), + .m_axi_ruser(5'H00), .m_axi_rvalid(m_axi_rvalid), .m_axi_rready(m_axi_rready) ); diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bmm b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bmm index f4217e0..d4a556f 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bmm +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bmm @@ -1,11 +1,11 @@ WORKFLOW_OPERATION simulation,dialog; -DEFINE_MEMORY_TYPE blk_mem_gen_0_MEM_DEVICE [0x00008000] 32; +DEFINE_MEMORY_TYPE blk_mem_gen_0_32K_1_MEM_DEVICE [0x00008000] 32; ADDRESS_MAP microblaze_0 MICROBLAZE-LE 100 microblaze_0 - ADDRESS_SPACE blk_mem_gen_0_ADDR_SPACE blk_mem_gen_0_MEM_DEVICE [0x00000000:0x00007FFF] dlmb_bram_if_cntlr_0 + ADDRESS_SPACE blk_mem_gen_0_32K_1_ADDR_SPACE blk_mem_gen_0_32K_1_MEM_DEVICE [0x00000000:0x00007FFF] dlmb_bram_if_cntlr_0 BUS_BLOCK - blk_mem_gen_0_BUS_BLK [31:0] INPUT = "mb_design_1_blk_mem_gen_0_0.mem"; + blk_mem_gen_0_32K_1_BUS_BLK [31:0] INPUT = "mb_design_1_blk_mem_gen_0_0.mem"; END_BUS_BLOCK; END_ADDRESS_SPACE; END_ADDRESS_MAP; diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bxml b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bxml index 8aa7f48..368f766 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bxml +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/mb_design_1.bxml @@ -2,10 +2,10 @@ <Root MajorVersion="0" MinorVersion="43"> <CompositeFile CompositeFileTopName="mb_design_1" CanBeSetAsTop="false" CanDisplayChildGraph="true"> <Description>Composite Fileset</Description> - <Generation Name="SYNTHESIS" State="STALE" Timestamp="1742483375"/> - <Generation Name="SIMULATION" State="STALE" Timestamp="1742483375"/> - <Generation Name="IMPLEMENTATION" State="STALE" Timestamp="1742483375"/> - <Generation Name="HW_HANDOFF" State="STALE" Timestamp="1742483375"/> + <Generation Name="SYNTHESIS" State="GENERATED" Timestamp="1742491469"/> + <Generation Name="SIMULATION" State="GENERATED" Timestamp="1742491469"/> + <Generation Name="IMPLEMENTATION" State="GENERATED" Timestamp="1742491469"/> + <Generation Name="HW_HANDOFF" State="GENERATED" Timestamp="1742491469"/> <FileCollection Name="SOURCES" Type="SOURCES"> <File Name="synth/mb_design_1.vhd" Type="VHDL"> <Properties IsEditable="false" IsVisible="true" IsNetlistSimulation="false" Timestamp="0" IsTrackable="false" IsStatusTracked="false"/> diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.protoinst b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.protoinst index 13f188b..5b4f6ae 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.protoinst +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.protoinst @@ -3,6 +3,30 @@ "modules": { "mb_design_1": { "proto_instances": { + "/axi4lite_hog_build_i_0/s_axi": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "s_axi_aclk"}, + "ARADDR": { "actual": "s_axi_araddr[31:0]"}, + "ARESETN": { "actual": "s_axi_aresetn"}, + "ARREADY": { "actual": "s_axi_arready"}, + "ARVALID": { "actual": "s_axi_arvalid"}, + "AWADDR": { "actual": "s_axi_awaddr[31:0]"}, + "AWREADY": { "actual": "s_axi_awready"}, + "AWVALID": { "actual": "s_axi_awvalid"}, + "BREADY": { "actual": "s_axi_bready"}, + "BRESP": { "actual": "s_axi_bresp[1:0]"}, + "BVALID": { "actual": "s_axi_bvalid"}, + "RDATA": { "actual": "s_axi_rdata[31:0]"}, + "RREADY": { "actual": "s_axi_rready"}, + "RRESP": { "actual": "s_axi_rresp[1:0]"}, + "RVALID": { "actual": "s_axi_rvalid"}, + "WDATA": { "actual": "s_axi_wdata[31:0]"}, + "WREADY": { "actual": "s_axi_wready"}, + "WSTRB": { "actual": "s_axi_wstrb[3:0]"}, + "WVALID": { "actual": "s_axi_wvalid"} + } + }, "/axi_gpio_0/S_AXI": { "interface": "xilinx.com:interface:aximm:1.0", "ports": { @@ -123,6 +147,54 @@ "WVALID": { "actual": "M02_AXI_wvalid"} } }, + "/axi_interconnect_0/M03_AXI": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "M03_ACLK"}, + "ARADDR": { "actual": "M03_AXI_araddr[127:96]"}, + "ARESETN": { "actual": "ARESETN"}, + "ARREADY": { "actual": "M03_AXI_arready"}, + "ARVALID": { "actual": "M03_AXI_arvalid"}, + "AWADDR": { "actual": "M03_AXI_awaddr[127:96]"}, + "AWREADY": { "actual": "M03_AXI_awready"}, + "AWVALID": { "actual": "M03_AXI_awvalid"}, + "BREADY": { "actual": "M03_AXI_bready"}, + "BRESP": { "actual": "M03_AXI_bresp[7:6]"}, + "BVALID": { "actual": "M03_AXI_bvalid"}, + "RDATA": { "actual": "M03_AXI_rdata[127:96]"}, + "RREADY": { "actual": "M03_AXI_rready"}, + "RRESP": { "actual": "M03_AXI_rresp[7:6]"}, + "RVALID": { "actual": "M03_AXI_rvalid"}, + "WDATA": { "actual": "M03_AXI_wdata[127:96]"}, + "WREADY": { "actual": "M03_AXI_wready"}, + "WSTRB": { "actual": "M03_AXI_wstrb[15:12]"}, + "WVALID": { "actual": "M03_AXI_wvalid"} + } + }, + "/axi_interconnect_0/M04_AXI": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "M04_ACLK"}, + "ARADDR": { "actual": "M04_AXI_araddr[159:128]"}, + "ARESETN": { "actual": "ARESETN"}, + "ARREADY": { "actual": "M04_AXI_arready"}, + "ARVALID": { "actual": "M04_AXI_arvalid"}, + "AWADDR": { "actual": "M04_AXI_awaddr[159:128]"}, + "AWREADY": { "actual": "M04_AXI_awready"}, + "AWVALID": { "actual": "M04_AXI_awvalid"}, + "BREADY": { "actual": "M04_AXI_bready"}, + "BRESP": { "actual": "M04_AXI_bresp[9:8]"}, + "BVALID": { "actual": "M04_AXI_bvalid"}, + "RDATA": { "actual": "M04_AXI_rdata[159:128]"}, + "RREADY": { "actual": "M04_AXI_rready"}, + "RRESP": { "actual": "M04_AXI_rresp[9:8]"}, + "RVALID": { "actual": "M04_AXI_rvalid"}, + "WDATA": { "actual": "M04_AXI_wdata[159:128]"}, + "WREADY": { "actual": "M04_AXI_wready"}, + "WSTRB": { "actual": "M04_AXI_wstrb[19:16]"}, + "WVALID": { "actual": "M04_AXI_wvalid"} + } + }, "/axi_interconnect_0/S00_AXI": { "interface": "xilinx.com:interface:aximm:1.0", "ports": { @@ -297,41 +369,23 @@ "interface": "xilinx.com:interface:aximm:1.0", "ports": { "ACLK": { "actual": "M_ACLK"}, - "ARADDR": { "actual": "M_AXI_araddr"}, - "ARBURST": { "actual": "M_AXI_arburst"}, - "ARCACHE": { "actual": "M_AXI_arcache"}, + "ARADDR": { "actual": "M_AXI_araddr[127:96]"}, "ARESETN": { "actual": "M_ARESETN"}, - "ARLEN": { "actual": "M_AXI_arlen"}, - "ARLOCK": { "actual": "M_AXI_arlock"}, - "ARPROT": { "actual": "M_AXI_arprot"}, - "ARQOS": { "actual": "M_AXI_arqos"}, "ARREADY": { "actual": "M_AXI_arready"}, - "ARREGION": { "actual": "M_AXI_arregion"}, - "ARSIZE": { "actual": "M_AXI_arsize"}, "ARVALID": { "actual": "M_AXI_arvalid"}, - "AWADDR": { "actual": "M_AXI_awaddr"}, - "AWBURST": { "actual": "M_AXI_awburst"}, - "AWCACHE": { "actual": "M_AXI_awcache"}, - "AWLEN": { "actual": "M_AXI_awlen"}, - "AWLOCK": { "actual": "M_AXI_awlock"}, - "AWPROT": { "actual": "M_AXI_awprot"}, - "AWQOS": { "actual": "M_AXI_awqos"}, + "AWADDR": { "actual": "M_AXI_awaddr[127:96]"}, "AWREADY": { "actual": "M_AXI_awready"}, - "AWREGION": { "actual": "M_AXI_awregion"}, - "AWSIZE": { "actual": "M_AXI_awsize"}, "AWVALID": { "actual": "M_AXI_awvalid"}, "BREADY": { "actual": "M_AXI_bready"}, - "BRESP": { "actual": "M_AXI_bresp"}, + "BRESP": { "actual": "M_AXI_bresp[7:6]"}, "BVALID": { "actual": "M_AXI_bvalid"}, - "RDATA": { "actual": "M_AXI_rdata"}, - "RLAST": { "actual": "M_AXI_rlast"}, + "RDATA": { "actual": "M_AXI_rdata[127:96]"}, "RREADY": { "actual": "M_AXI_rready"}, - "RRESP": { "actual": "M_AXI_rresp"}, + "RRESP": { "actual": "M_AXI_rresp[7:6]"}, "RVALID": { "actual": "M_AXI_rvalid"}, - "WDATA": { "actual": "M_AXI_wdata"}, - "WLAST": { "actual": "M_AXI_wlast"}, + "WDATA": { "actual": "M_AXI_wdata[127:96]"}, "WREADY": { "actual": "M_AXI_wready"}, - "WSTRB": { "actual": "M_AXI_wstrb"}, + "WSTRB": { "actual": "M_AXI_wstrb[15:12]"}, "WVALID": { "actual": "M_AXI_wvalid"} } }, @@ -339,41 +393,71 @@ "interface": "xilinx.com:interface:aximm:1.0", "ports": { "ACLK": { "actual": "S_ACLK"}, - "ARADDR": { "actual": "S_AXI_araddr"}, - "ARBURST": { "actual": "S_AXI_arburst"}, - "ARCACHE": { "actual": "S_AXI_arcache"}, + "ARADDR": { "actual": "S_AXI_araddr[127:96]"}, + "ARESETN": { "actual": "S_ARESETN"}, + "ARREADY": { "actual": "S_AXI_arready"}, + "ARVALID": { "actual": "S_AXI_arvalid"}, + "AWADDR": { "actual": "S_AXI_awaddr[127:96]"}, + "AWREADY": { "actual": "S_AXI_awready"}, + "AWVALID": { "actual": "S_AXI_awvalid"}, + "BREADY": { "actual": "S_AXI_bready"}, + "BRESP": { "actual": "S_AXI_bresp[7:6]"}, + "BVALID": { "actual": "S_AXI_bvalid"}, + "RDATA": { "actual": "S_AXI_rdata[127:96]"}, + "RREADY": { "actual": "S_AXI_rready"}, + "RRESP": { "actual": "S_AXI_rresp[7:6]"}, + "RVALID": { "actual": "S_AXI_rvalid"}, + "WDATA": { "actual": "S_AXI_wdata[127:96]"}, + "WREADY": { "actual": "S_AXI_wready"}, + "WSTRB": { "actual": "S_AXI_wstrb[15:12]"}, + "WVALID": { "actual": "S_AXI_wvalid"} + } + }, + "/axi_interconnect_0/m04_couplers/M_AXI": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "M_ACLK"}, + "ARADDR": { "actual": "M_AXI_araddr[159:128]"}, + "ARESETN": { "actual": "M_ARESETN"}, + "ARREADY": { "actual": "M_AXI_arready"}, + "ARVALID": { "actual": "M_AXI_arvalid"}, + "AWADDR": { "actual": "M_AXI_awaddr[159:128]"}, + "AWREADY": { "actual": "M_AXI_awready"}, + "AWVALID": { "actual": "M_AXI_awvalid"}, + "BREADY": { "actual": "M_AXI_bready"}, + "BRESP": { "actual": "M_AXI_bresp[9:8]"}, + "BVALID": { "actual": "M_AXI_bvalid"}, + "RDATA": { "actual": "M_AXI_rdata[159:128]"}, + "RREADY": { "actual": "M_AXI_rready"}, + "RRESP": { "actual": "M_AXI_rresp[9:8]"}, + "RVALID": { "actual": "M_AXI_rvalid"}, + "WDATA": { "actual": "M_AXI_wdata[159:128]"}, + "WREADY": { "actual": "M_AXI_wready"}, + "WSTRB": { "actual": "M_AXI_wstrb[19:16]"}, + "WVALID": { "actual": "M_AXI_wvalid"} + } + }, + "/axi_interconnect_0/m04_couplers/S_AXI": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "S_ACLK"}, + "ARADDR": { "actual": "S_AXI_araddr[159:128]"}, "ARESETN": { "actual": "S_ARESETN"}, - "ARLEN": { "actual": "S_AXI_arlen"}, - "ARLOCK": { "actual": "S_AXI_arlock"}, - "ARPROT": { "actual": "S_AXI_arprot"}, - "ARQOS": { "actual": "S_AXI_arqos"}, "ARREADY": { "actual": "S_AXI_arready"}, - "ARREGION": { "actual": "S_AXI_arregion"}, - "ARSIZE": { "actual": "S_AXI_arsize"}, "ARVALID": { "actual": "S_AXI_arvalid"}, - "AWADDR": { "actual": "S_AXI_awaddr"}, - "AWBURST": { "actual": "S_AXI_awburst"}, - "AWCACHE": { "actual": "S_AXI_awcache"}, - "AWLEN": { "actual": "S_AXI_awlen"}, - "AWLOCK": { "actual": "S_AXI_awlock"}, - "AWPROT": { "actual": "S_AXI_awprot"}, - "AWQOS": { "actual": "S_AXI_awqos"}, + "AWADDR": { "actual": "S_AXI_awaddr[159:128]"}, "AWREADY": { "actual": "S_AXI_awready"}, - "AWREGION": { "actual": "S_AXI_awregion"}, - "AWSIZE": { "actual": "S_AXI_awsize"}, "AWVALID": { "actual": "S_AXI_awvalid"}, "BREADY": { "actual": "S_AXI_bready"}, - "BRESP": { "actual": "S_AXI_bresp"}, + "BRESP": { "actual": "S_AXI_bresp[9:8]"}, "BVALID": { "actual": "S_AXI_bvalid"}, - "RDATA": { "actual": "S_AXI_rdata"}, - "RLAST": { "actual": "S_AXI_rlast"}, + "RDATA": { "actual": "S_AXI_rdata[159:128]"}, "RREADY": { "actual": "S_AXI_rready"}, - "RRESP": { "actual": "S_AXI_rresp"}, + "RRESP": { "actual": "S_AXI_rresp[9:8]"}, "RVALID": { "actual": "S_AXI_rvalid"}, - "WDATA": { "actual": "S_AXI_wdata"}, - "WLAST": { "actual": "S_AXI_wlast"}, + "WDATA": { "actual": "S_AXI_wdata[159:128]"}, "WREADY": { "actual": "S_AXI_wready"}, - "WSTRB": { "actual": "S_AXI_wstrb"}, + "WSTRB": { "actual": "S_AXI_wstrb[19:16]"}, "WVALID": { "actual": "S_AXI_wvalid"} } }, @@ -533,6 +617,32 @@ "WVALID": { "actual": "m_axi_wvalid[3:3]"} } }, + "/axi_interconnect_0/xbar/M04_AXI": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "aclk"}, + "ARADDR": { "actual": "m_axi_araddr[159:128]"}, + "ARESETN": { "actual": "aresetn"}, + "ARPROT": { "actual": "m_axi_arprot[14:12]"}, + "ARREADY": { "actual": "m_axi_arready[4:4]"}, + "ARVALID": { "actual": "m_axi_arvalid[4:4]"}, + "AWADDR": { "actual": "m_axi_awaddr[159:128]"}, + "AWPROT": { "actual": "m_axi_awprot[14:12]"}, + "AWREADY": { "actual": "m_axi_awready[4:4]"}, + "AWVALID": { "actual": "m_axi_awvalid[4:4]"}, + "BREADY": { "actual": "m_axi_bready[4:4]"}, + "BRESP": { "actual": "m_axi_bresp[9:8]"}, + "BVALID": { "actual": "m_axi_bvalid[4:4]"}, + "RDATA": { "actual": "m_axi_rdata[159:128]"}, + "RREADY": { "actual": "m_axi_rready[4:4]"}, + "RRESP": { "actual": "m_axi_rresp[9:8]"}, + "RVALID": { "actual": "m_axi_rvalid[4:4]"}, + "WDATA": { "actual": "m_axi_wdata[159:128]"}, + "WREADY": { "actual": "m_axi_wready[4:4]"}, + "WSTRB": { "actual": "m_axi_wstrb[19:16]"}, + "WVALID": { "actual": "m_axi_wvalid[4:4]"} + } + }, "/axi_interconnect_0/xbar/S00_AXI": { "interface": "xilinx.com:interface:aximm:1.0", "ports": { @@ -559,6 +669,30 @@ "WVALID": { "actual": "s_axi_wvalid[0:0]"} } }, + "/axi_timer_0/S_AXI": { + "interface": "xilinx.com:interface:aximm:1.0", + "ports": { + "ACLK": { "actual": "s_axi_aclk"}, + "ARADDR": { "actual": "s_axi_araddr[4:0]"}, + "ARESETN": { "actual": "s_axi_aresetn"}, + "ARREADY": { "actual": "s_axi_arready"}, + "ARVALID": { "actual": "s_axi_arvalid"}, + "AWADDR": { "actual": "s_axi_awaddr[4:0]"}, + "AWREADY": { "actual": "s_axi_awready"}, + "AWVALID": { "actual": "s_axi_awvalid"}, + "BREADY": { "actual": "s_axi_bready"}, + "BRESP": { "actual": "s_axi_bresp[1:0]"}, + "BVALID": { "actual": "s_axi_bvalid"}, + "RDATA": { "actual": "s_axi_rdata[31:0]"}, + "RREADY": { "actual": "s_axi_rready"}, + "RRESP": { "actual": "s_axi_rresp[1:0]"}, + "RVALID": { "actual": "s_axi_rvalid"}, + "WDATA": { "actual": "s_axi_wdata[31:0]"}, + "WREADY": { "actual": "s_axi_wready"}, + "WSTRB": { "actual": "s_axi_wstrb[3:0]"}, + "WVALID": { "actual": "s_axi_wvalid"} + } + }, "/mdm_0/S_AXI": { "interface": "xilinx.com:interface:aximm:1.0", "ports": { diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.vhd index 0dd7f56..31ee449 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.vhd +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/sim/mb_design_1.vhd @@ -2,7 +2,7 @@ --Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. ---------------------------------------------------------------------------------- --Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 ---Date : Thu Mar 20 16:44:45 2025 +--Date : Thu Mar 20 18:24:28 2025 --Host : hogtest running 64-bit unknown --Command : generate_target mb_design_1.bd --Design : mb_design_1 diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/synth/mb_design_1.hwdef b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/synth/mb_design_1.hwdef index 728308e3ffe4ef9e91bb2c2bc638488b7366925f..e2b07d69b04d568db76b18f84c1b865f8910f723 100644 GIT binary patch delta 42204 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 delta 37395 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 K%`h#?wgmu*fz?s~ diff --git a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/synth/mb_design_1.vhd b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/synth/mb_design_1.vhd index 0dd7f56..31ee449 100644 --- a/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/synth/mb_design_1.vhd +++ b/microblaze-demo/microblaze-demo.gen/sources_1/bd/mb_design_1/synth/mb_design_1.vhd @@ -2,7 +2,7 @@ --Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved. ---------------------------------------------------------------------------------- --Tool Version: Vivado v.2024.1.2 (lin64) Build 5164865 Thu Sep 5 14:36:28 MDT 2024 ---Date : Thu Mar 20 16:44:45 2025 +--Date : Thu Mar 20 18:24:28 2025 --Host : hogtest running 64-bit unknown --Command : generate_target mb_design_1.bd --Design : mb_design_1 diff --git a/microblaze-demo/microblaze-demo.srcs/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xci b/microblaze-demo/microblaze-demo.srcs/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xci index 15b940b..91c8936 100644 --- a/microblaze-demo/microblaze-demo.srcs/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xci +++ b/microblaze-demo/microblaze-demo.srcs/sources_1/bd/mb_design_1/ip/mb_design_1_axi4lite_hog_build_i_0_0/mb_design_1_axi4lite_hog_build_i_0_0.xci @@ -72,26 +72,26 @@ "mode": "slave", "memory_map_ref": "s_axi", "parameters": { - "DATA_WIDTH": [ { "value": "32", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "PROTOCOL": [ { "value": "AXI4LITE", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "is_ips_inferred": true, "is_static_object": false } ], + "DATA_WIDTH": [ { "value": "32", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "PROTOCOL": [ { "value": "AXI4LITE", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "is_ips_inferred": true, "is_static_object": false } ], "FREQ_HZ": [ { "value": "100000000", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "ID_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "ADDR_WIDTH": [ { "value": "32", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "AWUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "ARUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "WUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "RUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "BUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "READ_WRITE_MODE": [ { "value": "READ_WRITE", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_BURST": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_LOCK": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_PROT": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_CACHE": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_QOS": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_REGION": [ { "value": "0", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_WSTRB": [ { "value": "1", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_BRESP": [ { "value": "1", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], - "HAS_RRESP": [ { "value": "1", "value_src": "constant", "value_permission": "bd", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "ID_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "ADDR_WIDTH": [ { "value": "32", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "AWUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "ARUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "WUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "RUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "BUSER_WIDTH": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "READ_WRITE_MODE": [ { "value": "READ_WRITE", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_BURST": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_LOCK": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_PROT": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_CACHE": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_QOS": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_REGION": [ { "value": "0", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_WSTRB": [ { "value": "1", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_BRESP": [ { "value": "1", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], + "HAS_RRESP": [ { "value": "1", "value_src": "constant", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], "SUPPORTS_NARROW_BURST": [ { "value": "0", "value_src": "auto", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], "NUM_READ_OUTSTANDING": [ { "value": "1", "value_src": "auto", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], "NUM_WRITE_OUTSTANDING": [ { "value": "1", "value_src": "auto", "value_permission": "bd_and_user", "resolve_type": "generated", "format": "long", "is_ips_inferred": true, "is_static_object": false } ], diff --git a/microblaze-demo/microblaze-demo.srcs/sources_1/new/mb_top.vhd b/microblaze-demo/microblaze-demo.srcs/sources_1/new/mb_top.vhd index d5059da..425d4c2 100644 --- a/microblaze-demo/microblaze-demo.srcs/sources_1/new/mb_top.vhd +++ b/microblaze-demo/microblaze-demo.srcs/sources_1/new/mb_top.vhd @@ -18,7 +18,7 @@ entity mb_design_1_wrapper is GLOBAL_DATE : std_logic_vector(31 downto 0) := (others => '0'); GLOBAL_TIME : std_logic_vector(31 downto 0) := (others => '0'); GLOBAL_VER : std_logic_vector(31 downto 0) := (others => '0'); - GLOBAL_SHA : std_logic_vector(31 downto 0) := (others => '0'); + GLOBAL_SHA : std_logic_vector(31 downto 0) := (others => '0') ); port ( GPIO_0_tri_o : out STD_LOGIC_VECTOR ( 7 downto 0 ); -- GitLab