# Creating SmartDesign "Video_Processing_Block_HD_CAM1"
set sd_name {Video_Processing_Block_HD_CAM1}
create_smartdesign -sd_name ${sd_name}

# Disable auto promotion of pins of type 'pad'
auto_promote_pad_pins -promote_all 0

# Create top level Scalar Ports
sd_create_scalar_port -sd_name ${sd_name} -port_name {APB_CLK_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {APB_RESET_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_ARVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_AWVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_BREADY_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_RREADY_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_WVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARUSER_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWUSER_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_BREADY_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RREADY_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_WLAST_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_WUSER_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_WVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_ARVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_AWVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_BREADY_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_RREADY_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_WVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {DC_H1p4_VSYNC_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {DDR_READ_CAM1_AXI4Stream_Target_IF_AXI4Stream_Target_IF_TLAST_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {HDMI_148p5_CLK_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {HDMI_1p4_FAB_RESET_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {TVALID_I} -port_direction {IN}
sd_create_scalar_port -sd_name ${sd_name} -port_name {selection_line_i} -port_direction {IN}

sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF_TLAST_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF_TVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_ARREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_AWREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_BVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_RVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {AXI_WREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_BUSER_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_BVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RLAST_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RUSER_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_WREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_ARREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_AWREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_BVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_RVALID_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_WREADY_O} -port_direction {OUT}
sd_create_scalar_port -sd_name ${sd_name} -port_name {TREADY_O} -port_direction {OUT}


# Create top level Bus Ports
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI_ARADDR_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI_AWADDR_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI_WDATA_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARADDR_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARBURST_I} -port_direction {IN} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARCACHE_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARID_I} -port_direction {IN} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARLEN_I} -port_direction {IN} -port_range {[7:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARLOCK_I} -port_direction {IN} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARPROT_I} -port_direction {IN} -port_range {[2:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARQOS_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARREGION_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_ARSIZE_I} -port_direction {IN} -port_range {[2:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWADDR_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWBURST_I} -port_direction {IN} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWCACHE_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWID_I} -port_direction {IN} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWLEN_I} -port_direction {IN} -port_range {[7:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWLOCK_I} -port_direction {IN} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWPROT_I} -port_direction {IN} -port_range {[2:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWQOS_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWREGION_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_AWSIZE_I} -port_direction {IN} -port_range {[2:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_WDATA_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_WSTRB_I} -port_direction {IN} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_ARADDR_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_AWADDR_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_WDATA_I} -port_direction {IN} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {TDATA_I} -port_direction {IN} -port_range {[7:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {TUSER_I} -port_direction {IN} -port_range {[3:0]}

sd_create_bus_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF_TDATA_O} -port_direction {OUT} -port_range {[23:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF_TKEEP_O} -port_direction {OUT} -port_range {[2:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF_TSTRB_O} -port_direction {OUT} -port_range {[2:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF_TUSER_O} -port_direction {OUT} -port_range {[3:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI_BRESP_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI_RDATA_O} -port_direction {OUT} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {AXI_RRESP_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_BID_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_BRESP_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RDATA_O} -port_direction {OUT} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RID_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF_AXI_RRESP_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_BRESP_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_RDATA_O} -port_direction {OUT} -port_range {[31:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF_AXI_RRESP_O} -port_direction {OUT} -port_range {[1:0]}
sd_create_bus_port -sd_name ${sd_name} -port_name {Intensity_Avarage_CAM1} -port_direction {OUT} -port_range {[31:0]}


# Create top level Bus interface Ports
sd_create_bif_port -sd_name ${sd_name} -port_name {AXI4S_Initiator_IF} -port_bif_vlnv {AMBA:AMBA4:AXI4Stream:r0p0_1} -port_bif_role {master} -port_bif_mapping {\
"TVALID:AXI4S_Initiator_IF_TVALID_O" \
"TDATA:AXI4S_Initiator_IF_TDATA_O" \
"TSTRB:AXI4S_Initiator_IF_TSTRB_O" \
"TKEEP:AXI4S_Initiator_IF_TKEEP_O" \
"TLAST:AXI4S_Initiator_IF_TLAST_O" \
"TUSER:AXI4S_Initiator_IF_TUSER_O" } 

sd_create_bif_port -sd_name ${sd_name} -port_name {DDR_READ_CAM1_AXI4Stream_Target_IF} -port_bif_vlnv {AMBA:AMBA4:AXI4Stream:r0p0_1} -port_bif_role {slave} -port_bif_mapping {\
"TVALID:TVALID_I" \
"TREADY:TREADY_O" \
"TDATA:TDATA_I" \
"TLAST:DDR_READ_CAM1_AXI4Stream_Target_IF_AXI4Stream_Target_IF_TLAST_I" \
"TUSER:TUSER_I" } 

sd_create_bif_port -sd_name ${sd_name} -port_name {CAM1_DPC_AXI4Lite_Target_IF} -port_bif_vlnv {AMBA:AMBA4:AXI4:r0p0_0} -port_bif_role {slave} -port_bif_mapping {\
"AWID:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWID_I" \
"AWADDR:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWADDR_I" \
"AWLEN:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWLEN_I" \
"AWSIZE:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWSIZE_I" \
"AWBURST:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWBURST_I" \
"AWLOCK:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWLOCK_I" \
"AWCACHE:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWCACHE_I" \
"AWPROT:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWPROT_I" \
"AWQOS:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWQOS_I" \
"AWREGION:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWREGION_I" \
"AWVALID:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWVALID_I" \
"AWREADY:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWREADY_O" \
"WDATA:CAM1_DPC_AXI4Lite_Target_IF_AXI_WDATA_I" \
"WSTRB:CAM1_DPC_AXI4Lite_Target_IF_AXI_WSTRB_I" \
"WLAST:CAM1_DPC_AXI4Lite_Target_IF_AXI_WLAST_I" \
"WVALID:CAM1_DPC_AXI4Lite_Target_IF_AXI_WVALID_I" \
"WREADY:CAM1_DPC_AXI4Lite_Target_IF_AXI_WREADY_O" \
"BID:CAM1_DPC_AXI4Lite_Target_IF_AXI_BID_O" \
"BRESP:CAM1_DPC_AXI4Lite_Target_IF_AXI_BRESP_O" \
"BVALID:CAM1_DPC_AXI4Lite_Target_IF_AXI_BVALID_O" \
"BREADY:CAM1_DPC_AXI4Lite_Target_IF_AXI_BREADY_I" \
"ARID:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARID_I" \
"ARADDR:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARADDR_I" \
"ARLEN:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARLEN_I" \
"ARSIZE:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARSIZE_I" \
"ARBURST:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARBURST_I" \
"ARLOCK:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARLOCK_I" \
"ARCACHE:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARCACHE_I" \
"ARPROT:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARPROT_I" \
"ARQOS:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARQOS_I" \
"ARREGION:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARREGION_I" \
"ARVALID:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARVALID_I" \
"ARREADY:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARREADY_O" \
"RID:CAM1_DPC_AXI4Lite_Target_IF_AXI_RID_O" \
"RDATA:CAM1_DPC_AXI4Lite_Target_IF_AXI_RDATA_O" \
"RRESP:CAM1_DPC_AXI4Lite_Target_IF_AXI_RRESP_O" \
"RLAST:CAM1_DPC_AXI4Lite_Target_IF_AXI_RLAST_O" \
"RVALID:CAM1_DPC_AXI4Lite_Target_IF_AXI_RVALID_O" \
"RREADY:CAM1_DPC_AXI4Lite_Target_IF_AXI_RREADY_I" \
"AWUSER:CAM1_DPC_AXI4Lite_Target_IF_AXI_AWUSER_I" \
"WUSER:CAM1_DPC_AXI4Lite_Target_IF_AXI_WUSER_I" \
"BUSER:CAM1_DPC_AXI4Lite_Target_IF_AXI_BUSER_O" \
"ARUSER:CAM1_DPC_AXI4Lite_Target_IF_AXI_ARUSER_I" \
"RUSER:CAM1_DPC_AXI4Lite_Target_IF_AXI_RUSER_O" } 

sd_create_bif_port -sd_name ${sd_name} -port_name {CAM_IMAGE_AXI4Lite_Target_IF} -port_bif_vlnv {AMBA:AMBA4:AXI4:r0p0_0} -port_bif_role {slave} -port_bif_mapping {\
"AWADDR:CAM_IMAGE_AXI4Lite_Target_IF_AXI_AWADDR_I" \
"AWVALID:CAM_IMAGE_AXI4Lite_Target_IF_AXI_AWVALID_I" \
"AWREADY:CAM_IMAGE_AXI4Lite_Target_IF_AXI_AWREADY_O" \
"WDATA:CAM_IMAGE_AXI4Lite_Target_IF_AXI_WDATA_I" \
"WVALID:CAM_IMAGE_AXI4Lite_Target_IF_AXI_WVALID_I" \
"WREADY:CAM_IMAGE_AXI4Lite_Target_IF_AXI_WREADY_O" \
"BRESP:CAM_IMAGE_AXI4Lite_Target_IF_AXI_BRESP_O" \
"BVALID:CAM_IMAGE_AXI4Lite_Target_IF_AXI_BVALID_O" \
"BREADY:CAM_IMAGE_AXI4Lite_Target_IF_AXI_BREADY_I" \
"ARADDR:CAM_IMAGE_AXI4Lite_Target_IF_AXI_ARADDR_I" \
"ARVALID:CAM_IMAGE_AXI4Lite_Target_IF_AXI_ARVALID_I" \
"ARREADY:CAM_IMAGE_AXI4Lite_Target_IF_AXI_ARREADY_O" \
"RDATA:CAM_IMAGE_AXI4Lite_Target_IF_AXI_RDATA_O" \
"RRESP:CAM_IMAGE_AXI4Lite_Target_IF_AXI_RRESP_O" \
"RVALID:CAM_IMAGE_AXI4Lite_Target_IF_AXI_RVALID_O" \
"RREADY:CAM_IMAGE_AXI4Lite_Target_IF_AXI_RREADY_I" } 

sd_create_bif_port -sd_name ${sd_name} -port_name {CAM_BAYER_AXI4Lite_Target_IF} -port_bif_vlnv {AMBA:AMBA4:AXI4:r0p0_0} -port_bif_role {slave} -port_bif_mapping {\
"AWADDR:AXI_AWADDR_I" \
"AWVALID:AXI_AWVALID_I" \
"AWREADY:AXI_AWREADY_O" \
"WDATA:AXI_WDATA_I" \
"WVALID:AXI_WVALID_I" \
"WREADY:AXI_WREADY_O" \
"BRESP:AXI_BRESP_O" \
"BVALID:AXI_BVALID_O" \
"BREADY:AXI_BREADY_I" \
"ARADDR:AXI_ARADDR_I" \
"ARVALID:AXI_ARVALID_I" \
"ARREADY:AXI_ARREADY_O" \
"RDATA:AXI_RDATA_O" \
"RRESP:AXI_RRESP_O" \
"RVALID:AXI_RVALID_O" \
"RREADY:AXI_RREADY_I" } 

# Add Broadcaster_0 instance
sd_instantiate_hdl_core -sd_name ${sd_name} -hdl_core_name {Broadcaster} -instance_name {Broadcaster_0}
# Exporting Parameters of instance Broadcaster_0
sd_configure_core_instance -sd_name ${sd_name} -instance_name {Broadcaster_0} -params {\
"G_DATA_WIDTH:24" }\
-validate_rules 0
sd_save_core_instance_config -sd_name ${sd_name} -instance_name {Broadcaster_0}
sd_update_instance -sd_name ${sd_name} -instance_name {Broadcaster_0}



# Add Edge_Detection_Block_0 instance
sd_instantiate_component -sd_name ${sd_name} -component_name {Edge_Detection_Block} -instance_name {Edge_Detection_Block_0}



# Add ISP_BLOCK_CAM1_0 instance
sd_instantiate_component -sd_name ${sd_name} -component_name {ISP_BLOCK_CAM1} -instance_name {ISP_BLOCK_CAM1_0}



# Add Video_Alignment_Selection_0 instance
sd_instantiate_component -sd_name ${sd_name} -component_name {Video_Alignment_Selection} -instance_name {Video_Alignment_Selection_0}



# Add scalar net connections
sd_connect_pins -sd_name ${sd_name} -pin_names {"APB_CLK_I" "ISP_BLOCK_CAM1_0:AXI_CLK_I" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"APB_RESET_I" "ISP_BLOCK_CAM1_0:AXI_RESETN_I" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Broadcaster_0:RESETN_I" "Edge_Detection_Block_0:RESETN_I" "HDMI_1p4_FAB_RESET_I" "ISP_BLOCK_CAM1_0:RESETN_I" "Video_Alignment_Selection_0:RESETN_I" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Broadcaster_0:SYS_CLK_I" "Edge_Detection_Block_0:SYS_CLK_I" "HDMI_148p5_CLK_I" "ISP_BLOCK_CAM1_0:SYS_CLK_I" "Video_Alignment_Selection_0:SYS_CLK_I" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"DC_H1p4_VSYNC_I" "Video_Alignment_Selection_0:Frame_end_i" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Video_Alignment_Selection_0:selection_line_i" "selection_line_i" }

# Add bus net connections
sd_connect_pins -sd_name ${sd_name} -pin_names {"ISP_BLOCK_CAM1_0:CAM1_Y_AVG_O" "Intensity_Avarage_CAM1" }

# Add bus interface net connections
sd_connect_pins -sd_name ${sd_name} -pin_names {"AXI4S_Initiator_IF" "Video_Alignment_Selection_0:AXI4S_Initiator_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Broadcaster_0:AXI4Stream_Initiator0_IF" "Edge_Detection_Block_0:Edge_Detection_AXI4Stream_Target_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Broadcaster_0:AXI4Stream_Initiator1_IF" "Video_Alignment_Selection_0:AXI4S_SLAVE_SYNC" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Broadcaster_0:AXI4Stream_Target_IF" "ISP_BLOCK_CAM1_0:Image_AXI4Stream_Initiator_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"CAM1_DPC_AXI4Lite_Target_IF" "ISP_BLOCK_CAM1_0:CAM1_DPC_AXI4Lite_Target_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"CAM_BAYER_AXI4Lite_Target_IF" "ISP_BLOCK_CAM1_0:CAM_BAYER_AXI4Lite_Target_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"CAM_IMAGE_AXI4Lite_Target_IF" "ISP_BLOCK_CAM1_0:CAM_IMAGE_AXI4Lite_Target_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"DDR_READ_CAM1_AXI4Stream_Target_IF" "ISP_BLOCK_CAM1_0:DDR_READ_CAM1_AXI4Stream_Target_IF" }
sd_connect_pins -sd_name ${sd_name} -pin_names {"Edge_Detection_Block_0:Edge_Detection_AXI4Stream_Initiator_IF" "Video_Alignment_Selection_0:AXI4S_Target_IF" }

# Re-enable auto promotion of pins of type 'pad'
auto_promote_pad_pins -promote_all 1
# Save the SmartDesign 
save_smartdesign -sd_name ${sd_name}
# Generate SmartDesign "Video_Processing_Block_HD_CAM1"
generate_component -component_name ${sd_name}
