if{[string first $scripts_vivado_version $current_vivado_version] == -1 }{
puts ""
catch {common::send_msg_id "BD_TCL-109""ERROR""This script was generated using Vivado <$scripts_vivado_version> and is being run in <$current_vivado_version> of Vivado. Please run the script in Vivado <$scripts_vivado_version> then open the design in Vivado <$current_vivado_version>. Upgrade the design by running \"Tools => Report => Report IP Status...\", then run write_bd_tcl to create an updated script."}
common::send_msg_id "BD_TCL-006""INFO""Checking if the following IPs exist in the project's IP catalog: $list_check_ips ."
foreach ip_vlnv $list_check_ips {
set ip_obj [get_ipdefs -all $ip_vlnv]
if {$ip_obj eq ""}{
lappend list_ips_missing $ip_vlnv
}
}
if {$list_ips_missing ne ""}{
catch {common::send_msg_id "BD_TCL-115""ERROR""The following IPs are not found in the IP Catalog:\n$list_ips_missing\n\nResolution: Please add the repository containing the IP(s) to the project."}
# Procedure to create entire design; Provide argument to make
# procedure reusable. If parentCell is "", will use root.
proc create_root_design { parentCell }{
variable script_folder
variable design_name
if {$parentCell eq ""}{
set parentCell [get_bd_cells /]
}
# Get object for parentCell
set parentObj [get_bd_cells $parentCell]
if {$parentObj == ""}{
catch {common::send_msg_id "BD_TCL-100""ERROR""Unable to find parent cell <$parentCell>!"}
return
}
# Make sure parentObj is hier blk
set parentType [get_property TYPE $parentObj]
if {$parentType ne "hier"}{
catch {common::send_msg_id "BD_TCL-101""ERROR""Parent <$parentObj> has TYPE = <$parentType>. Expected to be <hier>."}
return
}
# Save current instance; Restore later
set oldCurInst [current_bd_instance .]
# Set parent object as current
current_bd_instance $parentObj
# Create interface ports
# Create ports
set MMC_nreset_i [ create_bd_port -dir I MMC_nreset_i ]
set clk_20m_vcxo1_i [ create_bd_port -dir I clk_20m_vcxo1_i ]
set i2c_scl_b [ create_bd_port -dir IO i2c_scl_b ]
set i2c_sda_b [ create_bd_port -dir IO i2c_sda_b ]
set mgt227_rx_n_i [ create_bd_port -dir I -from 3 -to 0 mgt227_rx_n_i ]
set mgt227_rx_p_i [ create_bd_port -dir I -from 3 -to 0 mgt227_rx_p_i ]
set mgt227_tx_n_o [ create_bd_port -dir O -from 3 -to 0 mgt227_tx_n_o ]
set mgt227_tx_p_o [ create_bd_port -dir O -from 3 -to 0 mgt227_tx_p_o ]
set mgt228_rx_n_i [ create_bd_port -dir I -from 3 -to 0 mgt228_rx_n_i ]
set mgt228_rx_p_i [ create_bd_port -dir I -from 3 -to 0 mgt228_rx_p_i ]
set mgt228_tx_n_o [ create_bd_port -dir O -from 3 -to 0 mgt228_tx_n_o ]
set mgt228_tx_p_o [ create_bd_port -dir O -from 3 -to 0 mgt228_tx_p_o ]
set mgtclk1_224_n_i [ create_bd_port -dir I mgtclk1_224_n_i ]
set mgtclk1_224_p_i [ create_bd_port -dir I mgtclk1_224_p_i ]
set si57x_scl_b [ create_bd_port -dir IO si57x_scl_b ]
set si57x_sda_b [ create_bd_port -dir IO si57x_sda_b ]
set uart_rxd_i [ create_bd_port -dir I uart_rxd_i ]
set uart_txd_o [ create_bd_port -dir O uart_txd_o ]
set wr_dac1_din_o [ create_bd_port -dir O wr_dac1_din_o ]
set wr_dac1_sclk_o [ create_bd_port -dir O wr_dac1_sclk_o ]
set wr_dac1_sync_n_o [ create_bd_port -dir O -from 1 -to 0 wr_dac1_sync_n_o ]
# Create instance: afcz_wrs_8p_top_0, and set properties
set block_name afcz_wrs_8p_top
set block_cell_name afcz_wrs_8p_top_0
if {[catch{set afcz_wrs_8p_top_0 [create_bd_cell -type module -reference $block_name $block_cell_name]} errmsg]}{
catch {common::send_msg_id "BD_TCL-105""ERROR""Unable to add referenced block <$block_name>. Please add the files for ${block_name}'s definition into the project."}
return 1
}elseif {$afcz_wrs_8p_top_0 eq ""}{
catch {common::send_msg_id "BD_TCL-106""ERROR""Unable to referenced block <$block_name>. Please add the files for ${block_name}'s definition into the project."}
return 1
}
# Create instance: axi_interconnect_0, and set properties
set axi_interconnect_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_interconnect:2.1 axi_interconnect_0 ]
set_property -dict [ list \
CONFIG.ENABLE_ADVANCED_OPTIONS {1}\
CONFIG.NUM_MI {1}\
CONFIG.XBAR_DATA_WIDTH {32}\
]$axi_interconnect_0
# Create instance: cmp_proc_sys_reset, and set properties
set cmp_proc_sys_reset [ create_bd_cell -type ip -vlnv xilinx.com:ip:proc_sys_reset:5.0 cmp_proc_sys_reset ]
set_property -dict [ list \
CONFIG.C_AUX_RESET_HIGH {0}\
CONFIG.C_AUX_RST_WIDTH {1}\
CONFIG.C_EXT_RST_WIDTH {1}\
]$cmp_proc_sys_reset
# Create instance: cmp_zynq, and set properties
set cmp_zynq [ create_bd_cell -type ip -vlnv xilinx.com:ip:zynq_ultra_ps_e:3.2 cmp_zynq ]