You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1212 lines
69 KiB
Tcl
1212 lines
69 KiB
Tcl
|
|
# Set the reference directory for source file relative paths (by default the value is script directory path)
|
|
set origin_dir "."
|
|
|
|
# Use origin directory path location variable, if specified in the tcl shell
|
|
if { [info exists ::origin_dir_loc] } {
|
|
set origin_dir $::origin_dir_loc
|
|
}
|
|
|
|
# Set the project name
|
|
set _xil_proj_name_ "a2o_bd"
|
|
|
|
# Use project name variable, if specified in the tcl shell
|
|
if { [info exists ::user_project_name] } {
|
|
set _xil_proj_name_ $::user_project_name
|
|
}
|
|
|
|
variable script_file
|
|
set script_file "create_project.tcl"
|
|
|
|
# Help information for this script
|
|
proc print_help {} {
|
|
variable script_file
|
|
puts "\nDescription:"
|
|
puts "Recreate a Vivado project from this script. The created project will be"
|
|
puts "functionally equivalent to the original project for which this script was"
|
|
puts "generated. The script contains commands for creating a project, filesets,"
|
|
puts "runs, adding/importing sources and setting properties on various objects.\n"
|
|
puts "Syntax:"
|
|
puts "$script_file"
|
|
puts "$script_file -tclargs \[--origin_dir <path>\]"
|
|
puts "$script_file -tclargs \[--project_name <name>\]"
|
|
puts "$script_file -tclargs \[--help\]\n"
|
|
puts "Usage:"
|
|
puts "Name Description"
|
|
puts "-------------------------------------------------------------------------"
|
|
puts "\[--origin_dir <path>\] Determine source file paths wrt this path. Default"
|
|
puts " origin_dir path value is \".\", otherwise, the value"
|
|
puts " that was set with the \"-paths_relative_to\" switch"
|
|
puts " when this script was generated.\n"
|
|
puts "\[--project_name <name>\] Create project with the specified name. Default"
|
|
puts " name is the name of the project from where this"
|
|
puts " script was generated.\n"
|
|
puts "\[--help\] Print help information for this script"
|
|
puts "-------------------------------------------------------------------------\n"
|
|
exit 0
|
|
}
|
|
|
|
if { $::argc > 0 } {
|
|
for {set i 0} {$i < $::argc} {incr i} {
|
|
set option [string trim [lindex $::argv $i]]
|
|
switch -regexp -- $option {
|
|
"--origin_dir" { incr i; set origin_dir [lindex $::argv $i] }
|
|
"--project_name" { incr i; set _xil_proj_name_ [lindex $::argv $i] }
|
|
"--help" { print_help }
|
|
default {
|
|
if { [regexp {^-} $option] } {
|
|
puts "ERROR: Unknown option '$option' specified, please type '$script_file -tclargs --help' for usage info.\n"
|
|
return 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Set the directory path for the original project from where this script was exported
|
|
set orig_proj_dir "[file normalize "$origin_dir/"]"
|
|
|
|
# Create project
|
|
create_project -force ${_xil_proj_name_} ./${_xil_proj_name_} -part xcvu3p-ffvc1517-2-e
|
|
|
|
# Set the directory path for the new project
|
|
set proj_dir [get_property directory [current_project]]
|
|
|
|
# Set project properties
|
|
set obj [current_project]
|
|
set_property -name "default_lib" -value "work" -objects $obj
|
|
set_property -name "dsa.accelerator_binary_content" -value "bitstream" -objects $obj
|
|
set_property -name "dsa.accelerator_binary_format" -value "xclbin2" -objects $obj
|
|
set_property -name "dsa.description" -value "Vivado generated DSA" -objects $obj
|
|
set_property -name "dsa.dr_bd_base_address" -value "0" -objects $obj
|
|
set_property -name "dsa.emu_dir" -value "emu" -objects $obj
|
|
set_property -name "dsa.flash_interface_type" -value "bpix16" -objects $obj
|
|
set_property -name "dsa.flash_offset_address" -value "0" -objects $obj
|
|
set_property -name "dsa.flash_size" -value "1024" -objects $obj
|
|
set_property -name "dsa.host_architecture" -value "x86_64" -objects $obj
|
|
set_property -name "dsa.host_interface" -value "pcie" -objects $obj
|
|
set_property -name "dsa.num_compute_units" -value "60" -objects $obj
|
|
set_property -name "dsa.platform_state" -value "pre_synth" -objects $obj
|
|
set_property -name "dsa.vendor" -value "xilinx" -objects $obj
|
|
set_property -name "dsa.version" -value "0.0" -objects $obj
|
|
set_property -name "enable_vhdl_2008" -value "1" -objects $obj
|
|
set_property -name "ip_cache_permissions" -value "read write" -objects $obj
|
|
set_property -name "ip_output_repo" -value "$origin_dir/../ip_cache" -objects $obj
|
|
set_property -name "mem.enable_memory_map_generation" -value "1" -objects $obj
|
|
set_property -name "part" -value "xcvu3p-ffvc1517-2-e" -objects $obj
|
|
set_property -name "sim.central_dir" -value "$proj_dir/${_xil_proj_name_}.ip_user_files" -objects $obj
|
|
set_property -name "sim.ip.auto_export_scripts" -value "1" -objects $obj
|
|
set_property -name "simulator_language" -value "Mixed" -objects $obj
|
|
set_property -name "source_mgmt_mode" -value "DisplayOnly" -objects $obj
|
|
set_property -name "webtalk.activehdl_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.ies_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.modelsim_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.questa_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.riviera_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.vcs_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.xsim_export_sim" -value "73" -objects $obj
|
|
set_property -name "webtalk.xsim_launch_sim" -value "95" -objects $obj
|
|
set_property -name "xpm_libraries" -value "XPM_CDC XPM_FIFO XPM_MEMORY" -objects $obj
|
|
|
|
# Create 'sources_1' fileset (if not found)
|
|
if {[string equal [get_filesets -quiet sources_1] ""]} {
|
|
create_fileset -srcset sources_1
|
|
}
|
|
|
|
# Set IP repository paths
|
|
set obj [get_filesets sources_1]
|
|
set_property "ip_repo_paths" "[file normalize "$origin_dir/../ip_repo"]" $obj
|
|
|
|
# Rebuild user ip_repo's index before adding any source files
|
|
update_ip_catalog -rebuild
|
|
|
|
# Set 'sources_1' fileset object
|
|
set obj [get_filesets sources_1]
|
|
# Set 'sources_1' fileset file properties for remote files
|
|
# None
|
|
|
|
# Set 'sources_1' fileset file properties for local files
|
|
# None
|
|
|
|
# Set 'sources_1' fileset properties
|
|
set obj [get_filesets sources_1]
|
|
set_property -name "top" -value "a2o_bd" -objects $obj
|
|
set_property -name "top_auto_set" -value "0" -objects $obj
|
|
|
|
# Create 'constrs_1' fileset (if not found)
|
|
if {[string equal [get_filesets -quiet constrs_1] ""]} {
|
|
create_fileset -constrset constrs_1
|
|
}
|
|
|
|
# Set 'constrs_1' fileset object
|
|
set obj [get_filesets constrs_1]
|
|
|
|
# Add/Import constrs file and set constrs file properties
|
|
set file "[file normalize "$origin_dir/xdc/main_pinout.xdc"]"
|
|
set file_added [add_files -norecurse -fileset $obj [list $file]]
|
|
set file "$origin_dir/xdc/main_pinout.xdc"
|
|
set file [file normalize $file]
|
|
set file_obj [get_files -of_objects [get_filesets constrs_1] [list "*$file"]]
|
|
set_property -name "file_type" -value "XDC" -objects $file_obj
|
|
set_property -name "library" -value "work" -objects $file_obj
|
|
|
|
# Add/Import constrs file and set constrs file properties
|
|
set file "[file normalize "$origin_dir/xdc/main_spi.xdc"]"
|
|
set file_added [add_files -norecurse -fileset $obj [list $file]]
|
|
set file "$origin_dir/xdc/main_spi.xdc"
|
|
set file [file normalize $file]
|
|
set file_obj [get_files -of_objects [get_filesets constrs_1] [list "*$file"]]
|
|
set_property -name "file_type" -value "XDC" -objects $file_obj
|
|
set_property -name "library" -value "work" -objects $file_obj
|
|
|
|
# Add/Import constrs file and set constrs file properties
|
|
set file "[file normalize "$origin_dir/xdc/main_timing.xdc"]"
|
|
set file_added [add_files -norecurse -fileset $obj [list $file]]
|
|
set file "$origin_dir/xdc/main_timing.xdc"
|
|
set file [file normalize $file]
|
|
set file_obj [get_files -of_objects [get_filesets constrs_1] [list "*$file"]]
|
|
set_property -name "file_type" -value "XDC" -objects $file_obj
|
|
set_property -name "library" -value "work" -objects $file_obj
|
|
|
|
# Add/Import constrs file and set constrs file properties
|
|
set file "[file normalize "$origin_dir/xdc/main_extras.xdc"]"
|
|
set file_added [add_files -norecurse -fileset $obj [list $file]]
|
|
set file "$origin_dir/xdc/main_extras.xdc"
|
|
set file [file normalize $file]
|
|
set file_obj [get_files -of_objects [get_filesets constrs_1] [list "*$file"]]
|
|
set_property -name "file_type" -value "XDC" -objects $file_obj
|
|
set_property -name "library" -value "work" -objects $file_obj
|
|
|
|
# Set 'constrs_1' fileset properties
|
|
set obj [get_filesets constrs_1]
|
|
set_property -name "target_constrs_file" -value "[file normalize "$origin_dir/xdc/main_extras.xdc"]" -objects $obj
|
|
set_property -name "target_part" -value "xcvu3p-ffvc1517-2-e" -objects $obj
|
|
set_property -name "target_ucf" -value "[file normalize "$origin_dir/xdc/main_extras.xdc"]" -objects $obj
|
|
|
|
# Create 'sim_1' fileset (if not found)
|
|
if {[string equal [get_filesets -quiet sim_1] ""]} {
|
|
create_fileset -simset sim_1
|
|
}
|
|
|
|
# Set 'sim_1' fileset object
|
|
set obj [get_filesets sim_1]
|
|
# Empty (no sources present)
|
|
|
|
# Set 'sim_1' fileset properties
|
|
set obj [get_filesets sim_1]
|
|
set_property -name "incremental" -value "0" -objects $obj
|
|
set_property -name "nl.mode" -value "funcsim" -objects $obj
|
|
set_property -name "sim_mode" -value "post-synthesis" -objects $obj
|
|
set_property -name "top" -value "a2o_bd" -objects $obj
|
|
set_property -name "top_auto_set" -value "0" -objects $obj
|
|
set_property -name "xsim.simulate.log_all_signals" -value "1" -objects $obj
|
|
set_property -name "xsim.simulate.runtime" -value "40000ns" -objects $obj
|
|
|
|
# Set 'utils_1' fileset object
|
|
set obj [get_filesets utils_1]
|
|
# Empty (no sources present)
|
|
|
|
# Set 'utils_1' fileset properties
|
|
set obj [get_filesets utils_1]
|
|
|
|
|
|
# Adding sources referenced in BDs, if not already added
|
|
|
|
|
|
# Proc to create BD a2o_bd
|
|
proc cr_bd_a2o_bd { parentCell } {
|
|
|
|
# CHANGE DESIGN NAME HERE
|
|
set design_name a2o_bd
|
|
|
|
common::send_msg_id "BD_TCL-003" "INFO" "Currently there is no design <$design_name> in project, so creating one..."
|
|
|
|
create_bd_design $design_name
|
|
|
|
set bCheckIPsPassed 1
|
|
##################################################################
|
|
# CHECK IPs
|
|
##################################################################
|
|
set bCheckIPs 1
|
|
if { $bCheckIPs == 1 } {
|
|
set list_check_ips "\
|
|
user.org:user:a2l2_axi:1.0\
|
|
user.org:user:a2o_axi_reg:1.0\
|
|
user.org:user:a2o_dbug:1.0\
|
|
xilinx.com:ip:axi_bram_ctrl:4.1\
|
|
xilinx.com:ip:axi_protocol_checker:2.0\
|
|
xilinx.com:ip:blk_mem_gen:8.4\
|
|
user.org:user:c_wrapper:1.0\
|
|
xilinx.com:ip:clk_wiz:6.0\
|
|
xilinx.com:ip:jtag_axi:1.2\
|
|
xilinx.com:ip:proc_sys_reset:5.0\
|
|
user.org:user:reverserator_3:1.0\
|
|
user.org:user:reverserator_4:1.0\
|
|
user.org:user:reverserator_64:1.0\
|
|
xilinx.com:ip:smartconnect:1.0\
|
|
xilinx.com:ip:system_ila:1.1\
|
|
xilinx.com:ip:vio:3.0\
|
|
xilinx.com:ip:xlconstant:1.1\
|
|
"
|
|
|
|
set list_ips_missing ""
|
|
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." }
|
|
set bCheckIPsPassed 0
|
|
}
|
|
|
|
}
|
|
|
|
if { $bCheckIPsPassed != 1 } {
|
|
common::send_msg_id "BD_TCL-1003" "WARNING" "Will not continue with creation of design due to the error(s) above."
|
|
return 3
|
|
}
|
|
|
|
variable script_folder
|
|
|
|
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 clk_in1_n_0 [ create_bd_port -dir I -type clk clk_in1_n_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.FREQ_HZ {300000000} \
|
|
] $clk_in1_n_0
|
|
set clk_in1_p_0 [ create_bd_port -dir I -type clk clk_in1_p_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.FREQ_HZ {300000000} \
|
|
] $clk_in1_p_0
|
|
|
|
# Create instance: a2l2_axi_0, and set properties
|
|
set a2l2_axi_0 [ create_bd_cell -type ip -vlnv user.org:user:a2l2_axi:1.0 a2l2_axi_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.ld_queue_size {8} \
|
|
CONFIG.st_queue_size {32} \
|
|
CONFIG.threads {2} \
|
|
] $a2l2_axi_0
|
|
|
|
# Create instance: a2o_axi_reg_0, and set properties
|
|
set a2o_axi_reg_0 [ create_bd_cell -type ip -vlnv user.org:user:a2o_axi_reg:1.0 a2o_axi_reg_0 ]
|
|
|
|
# Create instance: a2o_dbug_0, and set properties
|
|
set a2o_dbug_0 [ create_bd_cell -type ip -vlnv user.org:user:a2o_dbug:1.0 a2o_dbug_0 ]
|
|
|
|
# Create instance: axi_bram_ctrl_0, and set properties
|
|
set axi_bram_ctrl_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_bram_ctrl:4.1 axi_bram_ctrl_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.SINGLE_PORT_BRAM {1} \
|
|
CONFIG.SUPPORTS_NARROW_BURST {0} \
|
|
] $axi_bram_ctrl_0
|
|
|
|
# Create instance: axi_bram_ctrl_1, and set properties
|
|
set axi_bram_ctrl_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_bram_ctrl:4.1 axi_bram_ctrl_1 ]
|
|
set_property -dict [ list \
|
|
CONFIG.SINGLE_PORT_BRAM {1} \
|
|
] $axi_bram_ctrl_1
|
|
|
|
# Create instance: axi_protocol_checker_0, and set properties
|
|
set axi_protocol_checker_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:axi_protocol_checker:2.0 axi_protocol_checker_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.ARUSER_WIDTH {4} \
|
|
CONFIG.AWUSER_WIDTH {4} \
|
|
CONFIG.BUSER_WIDTH {4} \
|
|
CONFIG.ENABLE_CONTROL {1} \
|
|
CONFIG.ENABLE_MARK_DEBUG {0} \
|
|
CONFIG.HAS_SYSTEM_RESET {1} \
|
|
CONFIG.ID_WIDTH {4} \
|
|
CONFIG.MAX_RD_BURSTS {8} \
|
|
CONFIG.MAX_WR_BURSTS {32} \
|
|
CONFIG.RUSER_WIDTH {4} \
|
|
CONFIG.SUPPORTS_NARROW_BURST {1} \
|
|
CONFIG.WUSER_WIDTH {4} \
|
|
] $axi_protocol_checker_0
|
|
|
|
# Create instance: blk_mem_gen_0, and set properties
|
|
set blk_mem_gen_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:blk_mem_gen:8.4 blk_mem_gen_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.Assume_Synchronous_Clk {true} \
|
|
CONFIG.Byte_Size {8} \
|
|
CONFIG.Coe_File {no_coe_file_loaded} \
|
|
CONFIG.EN_SAFETY_CKT {false} \
|
|
CONFIG.Enable_32bit_Address {true} \
|
|
CONFIG.Fill_Remaining_Memory_Locations {false} \
|
|
CONFIG.Load_Init_File {false} \
|
|
CONFIG.Memory_Type {Single_Port_RAM} \
|
|
CONFIG.PRIM_type_to_Implement {URAM} \
|
|
CONFIG.Port_A_Write_Rate {50} \
|
|
CONFIG.Register_PortA_Output_of_Memory_Primitives {false} \
|
|
CONFIG.Use_Byte_Write_Enable {true} \
|
|
CONFIG.Use_RSTA_Pin {true} \
|
|
CONFIG.use_bram_block {BRAM_Controller} \
|
|
] $blk_mem_gen_0
|
|
|
|
# Create instance: blk_mem_gen_1, and set properties
|
|
set blk_mem_gen_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:blk_mem_gen:8.4 blk_mem_gen_1 ]
|
|
set_property -dict [ list \
|
|
CONFIG.Assume_Synchronous_Clk {true} \
|
|
CONFIG.Byte_Size {8} \
|
|
CONFIG.Coe_File {no_coe_file_loaded} \
|
|
CONFIG.EN_SAFETY_CKT {false} \
|
|
CONFIG.Enable_32bit_Address {true} \
|
|
CONFIG.Enable_B {Always_Enabled} \
|
|
CONFIG.Load_Init_File {false} \
|
|
CONFIG.Memory_Type {Single_Port_RAM} \
|
|
CONFIG.PRIM_type_to_Implement {URAM} \
|
|
CONFIG.Port_A_Write_Rate {50} \
|
|
CONFIG.Port_B_Clock {0} \
|
|
CONFIG.Port_B_Enable_Rate {0} \
|
|
CONFIG.Port_B_Write_Rate {0} \
|
|
CONFIG.Register_PortA_Output_of_Memory_Primitives {false} \
|
|
CONFIG.Use_Byte_Write_Enable {true} \
|
|
CONFIG.Use_RSTA_Pin {true} \
|
|
CONFIG.Use_RSTB_Pin {false} \
|
|
CONFIG.use_bram_block {BRAM_Controller} \
|
|
] $blk_mem_gen_1
|
|
|
|
# Create instance: c_wrapper_0, and set properties
|
|
set c_wrapper_0 [ create_bd_cell -type ip -vlnv user.org:user:c_wrapper:1.0 c_wrapper_0 ]
|
|
|
|
# Create instance: clk_wiz_0, and set properties
|
|
set clk_wiz_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:clk_wiz:6.0 clk_wiz_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.AUTO_PRIMITIVE {MMCM} \
|
|
CONFIG.CLKIN1_JITTER_PS {33.330000000000005} \
|
|
CONFIG.CLKOUT1_DRIVES {Buffer} \
|
|
CONFIG.CLKOUT1_JITTER {116.415} \
|
|
CONFIG.CLKOUT1_PHASE_ERROR {77.836} \
|
|
CONFIG.CLKOUT1_REQUESTED_OUT_FREQ {50.000} \
|
|
CONFIG.CLKOUT2_DRIVES {Buffer} \
|
|
CONFIG.CLKOUT2_JITTER {101.475} \
|
|
CONFIG.CLKOUT2_PHASE_ERROR {77.836} \
|
|
CONFIG.CLKOUT2_REQUESTED_OUT_FREQ {100.000} \
|
|
CONFIG.CLKOUT2_USED {true} \
|
|
CONFIG.CLKOUT3_DRIVES {Buffer} \
|
|
CONFIG.CLKOUT3_JITTER {88.577} \
|
|
CONFIG.CLKOUT3_PHASE_ERROR {77.836} \
|
|
CONFIG.CLKOUT3_REQUESTED_OUT_FREQ {200.000} \
|
|
CONFIG.CLKOUT3_USED {true} \
|
|
CONFIG.CLKOUT4_DRIVES {Buffer} \
|
|
CONFIG.CLKOUT5_DRIVES {Buffer} \
|
|
CONFIG.CLKOUT6_DRIVES {Buffer} \
|
|
CONFIG.CLKOUT7_DRIVES {Buffer} \
|
|
CONFIG.CLK_OUT1_PORT {clk} \
|
|
CONFIG.CLK_OUT2_PORT {clk2x} \
|
|
CONFIG.CLK_OUT3_PORT {clk4x} \
|
|
CONFIG.FEEDBACK_SOURCE {FDBK_AUTO} \
|
|
CONFIG.MMCM_BANDWIDTH {OPTIMIZED} \
|
|
CONFIG.MMCM_CLKFBOUT_MULT_F {4.000} \
|
|
CONFIG.MMCM_CLKIN1_PERIOD {3.333} \
|
|
CONFIG.MMCM_CLKIN2_PERIOD {10.0} \
|
|
CONFIG.MMCM_CLKOUT0_DIVIDE_F {24.000} \
|
|
CONFIG.MMCM_CLKOUT1_DIVIDE {12} \
|
|
CONFIG.MMCM_CLKOUT2_DIVIDE {6} \
|
|
CONFIG.MMCM_COMPENSATION {AUTO} \
|
|
CONFIG.MMCM_DIVCLK_DIVIDE {1} \
|
|
CONFIG.NUM_OUT_CLKS {3} \
|
|
CONFIG.PRIMITIVE {MMCM} \
|
|
CONFIG.PRIM_IN_FREQ {300.000} \
|
|
CONFIG.PRIM_SOURCE {Differential_clock_capable_pin} \
|
|
CONFIG.USE_LOCKED {true} \
|
|
CONFIG.USE_RESET {false} \
|
|
] $clk_wiz_0
|
|
|
|
# Create instance: jtag_axi_0, and set properties
|
|
set jtag_axi_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:jtag_axi:1.2 jtag_axi_0 ]
|
|
|
|
# Create instance: proc_sys_reset_0, and set properties
|
|
set proc_sys_reset_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:proc_sys_reset:5.0 proc_sys_reset_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.C_AUX_RESET_HIGH {0} \
|
|
CONFIG.C_AUX_RST_WIDTH {1} \
|
|
CONFIG.C_EXT_RST_WIDTH {4} \
|
|
] $proc_sys_reset_0
|
|
|
|
# Create instance: reverserator_3_0, and set properties
|
|
set reverserator_3_0 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_3:1.0 reverserator_3_0 ]
|
|
|
|
# Create instance: reverserator_3_1, and set properties
|
|
set reverserator_3_1 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_3:1.0 reverserator_3_1 ]
|
|
|
|
# Create instance: reverserator_3_2, and set properties
|
|
set reverserator_3_2 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_3:1.0 reverserator_3_2 ]
|
|
|
|
# Create instance: reverserator_4_0, and set properties
|
|
set reverserator_4_0 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_4:1.0 reverserator_4_0 ]
|
|
|
|
# Create instance: reverserator_4_1, and set properties
|
|
set reverserator_4_1 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_4:1.0 reverserator_4_1 ]
|
|
|
|
# Create instance: reverserator_4_2, and set properties
|
|
set reverserator_4_2 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_4:1.0 reverserator_4_2 ]
|
|
|
|
# Create instance: reverserator_4_3, and set properties
|
|
set reverserator_4_3 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_4:1.0 reverserator_4_3 ]
|
|
|
|
# Create instance: reverserator_64_0, and set properties
|
|
set reverserator_64_0 [ create_bd_cell -type ip -vlnv user.org:user:reverserator_64:1.0 reverserator_64_0 ]
|
|
|
|
# Create instance: smartconnect_0, and set properties
|
|
set smartconnect_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:smartconnect:1.0 smartconnect_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.NUM_MI {5} \
|
|
CONFIG.NUM_SI {2} \
|
|
] $smartconnect_0
|
|
|
|
# Create instance: system_ila_0, and set properties
|
|
set system_ila_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:system_ila:1.1 system_ila_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.ALL_PROBE_SAME_MU_CNT {2} \
|
|
CONFIG.C_ADV_TRIGGER {true} \
|
|
CONFIG.C_BRAM_CNT {48} \
|
|
CONFIG.C_DATA_DEPTH {8192} \
|
|
CONFIG.C_EN_STRG_QUAL {1} \
|
|
CONFIG.C_INPUT_PIPE_STAGES {3} \
|
|
CONFIG.C_PROBE0_MU_CNT {2} \
|
|
CONFIG.C_SLOT_0_MAX_RD_BURSTS {8} \
|
|
CONFIG.C_SLOT_0_MAX_WR_BURSTS {32} \
|
|
CONFIG.C_TRIGIN_EN {true} \
|
|
CONFIG.C_TRIGOUT_EN {true} \
|
|
] $system_ila_0
|
|
|
|
# Create instance: system_ila_1, and set properties
|
|
set system_ila_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:system_ila:1.1 system_ila_1 ]
|
|
set_property -dict [ list \
|
|
CONFIG.ALL_PROBE_SAME_MU {true} \
|
|
CONFIG.ALL_PROBE_SAME_MU_CNT {4} \
|
|
CONFIG.C_BRAM_CNT {9} \
|
|
CONFIG.C_DATA_DEPTH {2048} \
|
|
CONFIG.C_EN_STRG_QUAL {1} \
|
|
CONFIG.C_MON_TYPE {NATIVE} \
|
|
CONFIG.C_NUM_OF_PROBES {2} \
|
|
CONFIG.C_PROBE0_MU_CNT {4} \
|
|
CONFIG.C_PROBE0_WIDTH {160} \
|
|
CONFIG.C_PROBE1_MU_CNT {4} \
|
|
CONFIG.C_PROBE_WIDTH_PROPAGATION {MANUAL} \
|
|
CONFIG.C_TRIGOUT_EN {true} \
|
|
] $system_ila_1
|
|
|
|
# Create instance: vio_0, and set properties
|
|
set vio_0 [ create_bd_cell -type ip -vlnv xilinx.com:ip:vio:3.0 vio_0 ]
|
|
set_property -dict [ list \
|
|
CONFIG.C_NUM_PROBE_IN {6} \
|
|
CONFIG.C_NUM_PROBE_OUT {7} \
|
|
CONFIG.C_PROBE_OUT1_INIT_VAL {0x1} \
|
|
CONFIG.C_PROBE_OUT2_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT3_WIDTH {6} \
|
|
CONFIG.C_PROBE_OUT4_WIDTH {64} \
|
|
] $vio_0
|
|
|
|
# Create instance: vio_1, and set properties
|
|
set vio_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:vio:3.0 vio_1 ]
|
|
set_property -dict [ list \
|
|
CONFIG.C_NUM_PROBE_IN {5} \
|
|
CONFIG.C_NUM_PROBE_OUT {19} \
|
|
CONFIG.C_PROBE_OUT0_INIT_VAL {0xf} \
|
|
CONFIG.C_PROBE_OUT0_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT12_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT13_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT15_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT17_INIT_VAL {0xf} \
|
|
CONFIG.C_PROBE_OUT17_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT18_INIT_VAL {0xf} \
|
|
CONFIG.C_PROBE_OUT18_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT1_INIT_VAL {0x1} \
|
|
CONFIG.C_PROBE_OUT2_WIDTH {1} \
|
|
CONFIG.C_PROBE_OUT3_WIDTH {8} \
|
|
CONFIG.C_PROBE_OUT4_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT6_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT7_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT8_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT9_INIT_VAL {0x1} \
|
|
] $vio_1
|
|
|
|
# Create instance: vio_2, and set properties
|
|
set vio_2 [ create_bd_cell -type ip -vlnv xilinx.com:ip:vio:3.0 vio_2 ]
|
|
set_property -dict [ list \
|
|
CONFIG.C_NUM_PROBE_IN {5} \
|
|
CONFIG.C_NUM_PROBE_OUT {0} \
|
|
CONFIG.C_PROBE_OUT1_INIT_VAL {0x1} \
|
|
CONFIG.C_PROBE_OUT2_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT3_WIDTH {6} \
|
|
CONFIG.C_PROBE_OUT4_WIDTH {64} \
|
|
] $vio_2
|
|
|
|
# Create instance: vio_3, and set properties
|
|
set vio_3 [ create_bd_cell -type ip -vlnv xilinx.com:ip:vio:3.0 vio_3 ]
|
|
set_property -dict [ list \
|
|
CONFIG.C_NUM_PROBE_IN {2} \
|
|
CONFIG.C_NUM_PROBE_OUT {2} \
|
|
CONFIG.C_PROBE_IN2_WIDTH {3} \
|
|
CONFIG.C_PROBE_IN3_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT0_WIDTH {32} \
|
|
CONFIG.C_PROBE_OUT1_INIT_VAL {0x1} \
|
|
CONFIG.C_PROBE_OUT1_WIDTH {2} \
|
|
CONFIG.C_PROBE_OUT2_WIDTH {4} \
|
|
CONFIG.C_PROBE_OUT3_WIDTH {6} \
|
|
CONFIG.C_PROBE_OUT4_WIDTH {64} \
|
|
] $vio_3
|
|
|
|
# Create instance: xlconstant_1, and set properties
|
|
set xlconstant_1 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlconstant:1.1 xlconstant_1 ]
|
|
set_property -dict [ list \
|
|
CONFIG.CONST_VAL {0} \
|
|
CONFIG.CONST_WIDTH {2} \
|
|
] $xlconstant_1
|
|
|
|
# Create instance: xlconstant_2, and set properties
|
|
set xlconstant_2 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlconstant:1.1 xlconstant_2 ]
|
|
set_property -dict [ list \
|
|
CONFIG.CONST_VAL {0} \
|
|
CONFIG.CONST_WIDTH {32} \
|
|
] $xlconstant_2
|
|
|
|
# Create instance: xlconstant_3, and set properties
|
|
set xlconstant_3 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlconstant:1.1 xlconstant_3 ]
|
|
|
|
# Create instance: xlconstant_4, and set properties
|
|
set xlconstant_4 [ create_bd_cell -type ip -vlnv xilinx.com:ip:xlconstant:1.1 xlconstant_4 ]
|
|
set_property -dict [ list \
|
|
CONFIG.CONST_VAL {0} \
|
|
] $xlconstant_4
|
|
|
|
# Create interface connections
|
|
connect_bd_intf_net -intf_net a2l2_axi_0_m00_axi [get_bd_intf_pins a2l2_axi_0/m00_axi] [get_bd_intf_pins smartconnect_0/S00_AXI]
|
|
connect_bd_intf_net -intf_net [get_bd_intf_nets a2l2_axi_0_m00_axi] [get_bd_intf_pins smartconnect_0/S00_AXI] [get_bd_intf_pins system_ila_0/SLOT_0_AXI]
|
|
connect_bd_intf_net -intf_net [get_bd_intf_nets a2l2_axi_0_m00_axi] [get_bd_intf_pins axi_protocol_checker_0/PC_AXI] [get_bd_intf_pins smartconnect_0/S00_AXI]
|
|
connect_bd_intf_net -intf_net axi_bram_ctrl_0_BRAM_PORTA [get_bd_intf_pins axi_bram_ctrl_0/BRAM_PORTA] [get_bd_intf_pins blk_mem_gen_0/BRAM_PORTA]
|
|
connect_bd_intf_net -intf_net axi_bram_ctrl_3_BRAM_PORTA [get_bd_intf_pins axi_bram_ctrl_1/BRAM_PORTA] [get_bd_intf_pins blk_mem_gen_1/BRAM_PORTA]
|
|
connect_bd_intf_net -intf_net jtag_axi_0_M_AXI [get_bd_intf_pins jtag_axi_0/M_AXI] [get_bd_intf_pins smartconnect_0/S01_AXI]
|
|
connect_bd_intf_net -intf_net smartconnect_0_M00_AXI [get_bd_intf_pins a2o_axi_reg_0/s00_axi] [get_bd_intf_pins smartconnect_0/M00_AXI]
|
|
connect_bd_intf_net -intf_net smartconnect_0_M01_AXI [get_bd_intf_pins a2o_axi_reg_0/s_axi_intr] [get_bd_intf_pins smartconnect_0/M01_AXI]
|
|
connect_bd_intf_net -intf_net smartconnect_0_M02_AXI [get_bd_intf_pins axi_bram_ctrl_0/S_AXI] [get_bd_intf_pins smartconnect_0/M02_AXI]
|
|
connect_bd_intf_net -intf_net smartconnect_0_M03_AXI [get_bd_intf_pins axi_bram_ctrl_1/S_AXI] [get_bd_intf_pins smartconnect_0/M03_AXI]
|
|
connect_bd_intf_net -intf_net smartconnect_0_M04_AXI [get_bd_intf_pins axi_protocol_checker_0/S_AXI] [get_bd_intf_pins smartconnect_0/M04_AXI]
|
|
|
|
# Create port connections
|
|
connect_bd_net -net Net2 [get_bd_pins a2o_dbug_0/trigger_in] [get_bd_pins system_ila_1/TRIG_OUT_trig] [get_bd_pins vio_1/probe_in1]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_core_tag [get_bd_pins a2l2_axi_0/an_ac_reld_core_tag] [get_bd_pins c_wrapper_0/an_ac_reld_core_tag]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_crit_qw [get_bd_pins a2l2_axi_0/an_ac_reld_crit_qw] [get_bd_pins c_wrapper_0/an_ac_reld_crit_qw]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_data [get_bd_pins a2l2_axi_0/an_ac_reld_data] [get_bd_pins c_wrapper_0/an_ac_reld_data]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_data_coming [get_bd_pins a2l2_axi_0/an_ac_reld_data_coming] [get_bd_pins c_wrapper_0/an_ac_reld_data_coming]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_data_vld [get_bd_pins a2l2_axi_0/an_ac_reld_data_vld] [get_bd_pins c_wrapper_0/an_ac_reld_data_vld]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_ecc_err [get_bd_pins a2l2_axi_0/an_ac_reld_ecc_err] [get_bd_pins c_wrapper_0/an_ac_reld_ecc_err]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_ecc_err_ue [get_bd_pins a2l2_axi_0/an_ac_reld_ecc_err_ue] [get_bd_pins c_wrapper_0/an_ac_reld_ecc_err_ue]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_l1_dump [get_bd_pins a2l2_axi_0/an_ac_reld_l1_dump] [get_bd_pins c_wrapper_0/an_ac_reld_l1_dump]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reld_qw [get_bd_pins a2l2_axi_0/an_ac_reld_qw] [get_bd_pins c_wrapper_0/an_ac_reld_qw]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_req_ld_pop [get_bd_pins a2l2_axi_0/an_ac_req_ld_pop] [get_bd_pins c_wrapper_0/an_ac_req_ld_pop]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_req_st_gather [get_bd_pins a2l2_axi_0/an_ac_req_st_gather] [get_bd_pins c_wrapper_0/an_ac_req_st_gather]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_req_st_pop [get_bd_pins a2l2_axi_0/an_ac_req_st_pop] [get_bd_pins c_wrapper_0/an_ac_req_st_pop]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_reservation_vld [get_bd_pins a2l2_axi_0/an_ac_reservation_vld] [get_bd_pins c_wrapper_0/an_ac_reservation_vld]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_stcx_complete [get_bd_pins a2l2_axi_0/an_ac_stcx_complete] [get_bd_pins c_wrapper_0/an_ac_stcx_complete]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_stcx_pass [get_bd_pins a2l2_axi_0/an_ac_stcx_pass] [get_bd_pins c_wrapper_0/an_ac_stcx_pass]
|
|
connect_bd_net -net a2l2_axi_0_an_ac_sync_ack [get_bd_pins a2l2_axi_0/an_ac_sync_ack] [get_bd_pins c_wrapper_0/an_ac_sync_ack]
|
|
connect_bd_net -net a2l2_axi_0_err [get_bd_pins a2l2_axi_0/err] [get_bd_pins reverserator_4_2/innnie]
|
|
connect_bd_net -net a2o_axi_reg_0_irq [get_bd_pins a2o_axi_reg_0/irq] [get_bd_pins vio_3/probe_in0]
|
|
connect_bd_net -net a2o_axi_reg_0_reg_out_00 [get_bd_pins a2o_axi_reg_0/reg_out_00] [get_bd_pins vio_3/probe_in1]
|
|
connect_bd_net -net a2o_dbug_0_cch_out [get_bd_pins a2o_dbug_0/cch_out] [get_bd_pins vio_0/probe_in4]
|
|
connect_bd_net -net a2o_dbug_0_dch_out [get_bd_pins a2o_dbug_0/dch_out] [get_bd_pins vio_0/probe_in5]
|
|
connect_bd_net -net a2o_dbug_0_err [get_bd_pins a2o_dbug_0/err] [get_bd_pins vio_0/probe_in1]
|
|
connect_bd_net -net a2o_dbug_0_rsp_data [get_bd_pins a2o_dbug_0/rsp_data] [get_bd_pins reverserator_64_0/parkavenue]
|
|
connect_bd_net -net a2o_dbug_0_rsp_valid [get_bd_pins a2o_dbug_0/rsp_valid] [get_bd_pins vio_0/probe_in0]
|
|
connect_bd_net -net a2o_dbug_0_threadstop_out [get_bd_pins a2o_dbug_0/threadstop_out] [get_bd_pins c_wrapper_0/an_ac_pm_thread_stop]
|
|
connect_bd_net -net a2o_dbug_0_trigger_ack_out [get_bd_pins a2o_dbug_0/trigger_ack_out] [get_bd_pins vio_0/probe_in3]
|
|
connect_bd_net -net a2o_dbug_0_trigger_out [get_bd_pins a2o_dbug_0/trigger_out] [get_bd_pins system_ila_0/TRIG_IN_trig]
|
|
connect_bd_net -net a2o_reset_0_reset [get_bd_pins a2l2_axi_0/reset_n] [get_bd_pins a2o_axi_reg_0/s00_axi_aresetn] [get_bd_pins a2o_axi_reg_0/s_axi_intr_aresetn] [get_bd_pins a2o_dbug_0/reset_n] [get_bd_pins axi_bram_ctrl_0/s_axi_aresetn] [get_bd_pins axi_bram_ctrl_1/s_axi_aresetn] [get_bd_pins axi_protocol_checker_0/aresetn] [get_bd_pins jtag_axi_0/aresetn] [get_bd_pins proc_sys_reset_0/interconnect_aresetn] [get_bd_pins smartconnect_0/aresetn] [get_bd_pins system_ila_0/resetn]
|
|
connect_bd_net -net axi_protocol_checker_0_pc_asserted [get_bd_pins axi_protocol_checker_0/pc_asserted] [get_bd_pins system_ila_1/probe1] [get_bd_pins vio_1/probe_in0]
|
|
connect_bd_net -net axi_protocol_checker_0_pc_status [get_bd_pins axi_protocol_checker_0/pc_status] [get_bd_pins system_ila_1/probe0]
|
|
connect_bd_net -net c_wrapper_0_ac_an_checkstop [get_bd_pins c_wrapper_0/ac_an_checkstop] [get_bd_pins reverserator_3_1/outdoor]
|
|
connect_bd_net -net c_wrapper_0_ac_an_debug_trigger [get_bd_pins c_wrapper_0/ac_an_debug_trigger] [get_bd_pins reverserator_4_3/innnie]
|
|
connect_bd_net -net c_wrapper_0_ac_an_local_checkstop [get_bd_pins c_wrapper_0/ac_an_local_checkstop] [get_bd_pins reverserator_3_2/outdoor]
|
|
connect_bd_net -net c_wrapper_0_ac_an_machine_check [get_bd_pins c_wrapper_0/ac_an_machine_check] [get_bd_pins reverserator_4_0/innnie]
|
|
connect_bd_net -net c_wrapper_0_ac_an_pm_thread_running [get_bd_pins c_wrapper_0/ac_an_pm_thread_running] [get_bd_pins reverserator_4_1/innnie]
|
|
connect_bd_net -net c_wrapper_0_ac_an_recov_err [get_bd_pins c_wrapper_0/ac_an_recov_err] [get_bd_pins reverserator_3_0/outdoor]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req [get_bd_pins a2l2_axi_0/ac_an_req] [get_bd_pins c_wrapper_0/ac_an_req]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_endian [get_bd_pins a2l2_axi_0/ac_an_req_endian] [get_bd_pins c_wrapper_0/ac_an_req_endian]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_ld_core_tag [get_bd_pins a2l2_axi_0/ac_an_req_ld_core_tag] [get_bd_pins c_wrapper_0/ac_an_req_ld_core_tag]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_ld_xfr_len [get_bd_pins a2l2_axi_0/ac_an_req_ld_xfr_len] [get_bd_pins c_wrapper_0/ac_an_req_ld_xfr_len]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_pwr_token [get_bd_pins a2l2_axi_0/ac_an_req_pwr_token] [get_bd_pins c_wrapper_0/ac_an_req_pwr_token]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_ra [get_bd_pins a2l2_axi_0/ac_an_req_ra] [get_bd_pins c_wrapper_0/ac_an_req_ra]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_thread [get_bd_pins a2l2_axi_0/ac_an_req_thread] [get_bd_pins c_wrapper_0/ac_an_req_thread]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_ttype [get_bd_pins a2l2_axi_0/ac_an_req_ttype] [get_bd_pins c_wrapper_0/ac_an_req_ttype]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_user_defined [get_bd_pins a2l2_axi_0/ac_an_req_user_defined] [get_bd_pins c_wrapper_0/ac_an_req_user_defined]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_wimg_g [get_bd_pins a2l2_axi_0/ac_an_req_wimg_g] [get_bd_pins c_wrapper_0/ac_an_req_wimg_g]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_wimg_i [get_bd_pins a2l2_axi_0/ac_an_req_wimg_i] [get_bd_pins c_wrapper_0/ac_an_req_wimg_i]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_wimg_m [get_bd_pins a2l2_axi_0/ac_an_req_wimg_m] [get_bd_pins c_wrapper_0/ac_an_req_wimg_m]
|
|
connect_bd_net -net c_wrapper_0_ac_an_req_wimg_w [get_bd_pins a2l2_axi_0/ac_an_req_wimg_w] [get_bd_pins c_wrapper_0/ac_an_req_wimg_w]
|
|
connect_bd_net -net c_wrapper_0_ac_an_st_byte_enbl [get_bd_pins a2l2_axi_0/ac_an_st_byte_enbl] [get_bd_pins c_wrapper_0/ac_an_st_byte_enbl]
|
|
connect_bd_net -net c_wrapper_0_ac_an_st_data [get_bd_pins a2l2_axi_0/ac_an_st_data] [get_bd_pins c_wrapper_0/ac_an_st_data]
|
|
connect_bd_net -net c_wrapper_0_ac_an_st_data_pwr_token [get_bd_pins a2l2_axi_0/ac_an_st_data_pwr_token] [get_bd_pins c_wrapper_0/ac_an_st_data_pwr_token]
|
|
connect_bd_net -net clk_in1_n_0_1 [get_bd_ports clk_in1_n_0] [get_bd_pins clk_wiz_0/clk_in1_n]
|
|
connect_bd_net -net clk_in1_p_0_1 [get_bd_ports clk_in1_p_0] [get_bd_pins clk_wiz_0/clk_in1_p]
|
|
connect_bd_net -net clk_wiz_0_clk [get_bd_pins a2l2_axi_0/clk] [get_bd_pins a2o_axi_reg_0/s00_axi_aclk] [get_bd_pins a2o_axi_reg_0/s_axi_intr_aclk] [get_bd_pins a2o_dbug_0/clk] [get_bd_pins axi_bram_ctrl_0/s_axi_aclk] [get_bd_pins axi_bram_ctrl_1/s_axi_aclk] [get_bd_pins axi_protocol_checker_0/aclk] [get_bd_pins c_wrapper_0/clk] [get_bd_pins clk_wiz_0/clk] [get_bd_pins jtag_axi_0/aclk] [get_bd_pins proc_sys_reset_0/slowest_sync_clk] [get_bd_pins smartconnect_0/aclk] [get_bd_pins system_ila_0/clk] [get_bd_pins system_ila_1/clk] [get_bd_pins vio_0/clk] [get_bd_pins vio_1/clk] [get_bd_pins vio_2/clk] [get_bd_pins vio_3/clk]
|
|
connect_bd_net -net clk_wiz_0_clk2x [get_bd_pins c_wrapper_0/clk2x] [get_bd_pins clk_wiz_0/clk2x]
|
|
connect_bd_net -net clk_wiz_0_clk4x [get_bd_pins c_wrapper_0/clk4x] [get_bd_pins clk_wiz_0/clk4x]
|
|
connect_bd_net -net clk_wiz_0_locked [get_bd_pins clk_wiz_0/locked] [get_bd_pins proc_sys_reset_0/dcm_locked]
|
|
connect_bd_net -net proc_sys_reset_0_mb_reset [get_bd_pins c_wrapper_0/reset] [get_bd_pins proc_sys_reset_0/mb_reset]
|
|
connect_bd_net -net reverserator_3_0_inndoor [get_bd_pins reverserator_3_0/inndoor] [get_bd_pins vio_2/probe_in1]
|
|
connect_bd_net -net reverserator_3_1_inndoor [get_bd_pins reverserator_3_1/inndoor] [get_bd_pins vio_2/probe_in2]
|
|
connect_bd_net -net reverserator_3_2_inndoor [get_bd_pins reverserator_3_2/inndoor] [get_bd_pins vio_2/probe_in3]
|
|
connect_bd_net -net reverserator_4_0_outtie [get_bd_pins reverserator_4_0/outtie] [get_bd_pins vio_2/probe_in0]
|
|
connect_bd_net -net reverserator_4_1_outtie [get_bd_pins reverserator_4_1/outtie] [get_bd_pins vio_1/probe_in2]
|
|
connect_bd_net -net reverserator_4_2_outtie [get_bd_pins reverserator_4_2/outtie] [get_bd_pins vio_2/probe_in4]
|
|
connect_bd_net -net reverserator_4_3_outtie [get_bd_pins reverserator_4_3/outtie] [get_bd_pins vio_1/probe_in4]
|
|
connect_bd_net -net reverserator_64_0_skidrowwww [get_bd_pins reverserator_64_0/skidrowwww] [get_bd_pins vio_0/probe_in2]
|
|
connect_bd_net -net vio_0_probe_out0 [get_bd_pins a2o_dbug_0/req_valid] [get_bd_pins vio_0/probe_out0]
|
|
connect_bd_net -net vio_0_probe_out1 [get_bd_pins a2o_dbug_0/req_rw] [get_bd_pins vio_0/probe_out1]
|
|
connect_bd_net -net vio_0_probe_out2 [get_bd_pins a2o_dbug_0/req_id] [get_bd_pins vio_0/probe_out2]
|
|
connect_bd_net -net vio_0_probe_out3 [get_bd_pins a2o_dbug_0/req_addr] [get_bd_pins vio_0/probe_out3]
|
|
connect_bd_net -net vio_0_probe_out4 [get_bd_pins a2o_dbug_0/req_wr_data] [get_bd_pins vio_0/probe_out4]
|
|
connect_bd_net -net vio_0_probe_out5 [get_bd_pins a2o_dbug_0/dch_in] [get_bd_pins vio_0/probe_out5]
|
|
connect_bd_net -net vio_0_probe_out6 [get_bd_pins a2o_dbug_0/cch_in] [get_bd_pins vio_0/probe_out6]
|
|
connect_bd_net -net vio_1_probe_out0 [get_bd_pins a2o_dbug_0/threadstop_in] [get_bd_pins vio_1/probe_out0]
|
|
connect_bd_net -net vio_1_probe_out1 [get_bd_pins proc_sys_reset_0/aux_reset_in] [get_bd_pins vio_1/probe_out1]
|
|
connect_bd_net -net vio_1_probe_out2 [get_bd_pins system_ila_1/TRIG_OUT_ack] [get_bd_pins vio_1/probe_out2]
|
|
connect_bd_net -net vio_1_probe_out3 [get_bd_pins c_wrapper_0/an_ac_coreid] [get_bd_pins vio_1/probe_out3]
|
|
connect_bd_net -net vio_1_probe_out4 [get_bd_pins c_wrapper_0/an_ac_external_mchk] [get_bd_pins vio_1/probe_out4]
|
|
connect_bd_net -net vio_1_probe_out5 [get_bd_pins vio_1/probe_in3] [get_bd_pins vio_1/probe_out5]
|
|
connect_bd_net -net vio_1_probe_out6 [get_bd_pins c_wrapper_0/an_ac_crit_interrupt] [get_bd_pins vio_1/probe_out6]
|
|
connect_bd_net -net vio_1_probe_out7 [get_bd_pins c_wrapper_0/an_ac_ext_interrupt] [get_bd_pins vio_1/probe_out7]
|
|
connect_bd_net -net vio_1_probe_out8 [get_bd_pins c_wrapper_0/an_ac_perf_interrupt] [get_bd_pins vio_1/probe_out8]
|
|
connect_bd_net -net vio_1_probe_out9 [get_bd_pins c_wrapper_0/an_ac_tb_update_enable] [get_bd_pins vio_1/probe_out9]
|
|
connect_bd_net -net vio_1_probe_out10 [get_bd_pins c_wrapper_0/an_ac_tb_update_pulse] [get_bd_pins vio_1/probe_out10]
|
|
connect_bd_net -net vio_1_probe_out11 [get_bd_pins c_wrapper_0/an_ac_flh2l2_gate] [get_bd_pins vio_1/probe_out11]
|
|
connect_bd_net -net vio_1_probe_out12 [get_bd_pins c_wrapper_0/an_ac_hang_pulse] [get_bd_pins vio_1/probe_out12]
|
|
#wtf connect_bd_net -net vio_1_probe_out13 [get_bd_pins c_wrapper_0/ac_an_debug_trigger] [get_bd_pins vio_1/probe_out13]
|
|
connect_bd_net -net vio_1_probe_out14 [get_bd_pins a2o_dbug_0/trigger_ack_enable] [get_bd_pins vio_1/probe_out14]
|
|
connect_bd_net -net vio_1_probe_out15 [get_bd_pins a2o_dbug_0/trigger_threadstop] [get_bd_pins vio_1/probe_out15]
|
|
connect_bd_net -net vio_1_probe_out16 [get_bd_pins c_wrapper_0/an_ac_debug_stop] [get_bd_pins vio_1/probe_out16]
|
|
connect_bd_net -net vio_1_probe_out17 [get_bd_pins a2l2_axi_0/axi_loads_max] [get_bd_pins vio_1/probe_out17]
|
|
connect_bd_net -net vio_1_probe_out18 [get_bd_pins a2l2_axi_0/axi_stores_max] [get_bd_pins vio_1/probe_out18]
|
|
connect_bd_net -net vio_3_probe_out0 [get_bd_pins a2o_axi_reg_0/reg_in_00] [get_bd_pins vio_3/probe_out0]
|
|
connect_bd_net -net vio_3_probe_out1 [get_bd_pins a2o_axi_reg_0/reg_cmd_00] [get_bd_pins vio_3/probe_out1]
|
|
connect_bd_net -net xlconstant_1_dout [get_bd_pins a2o_axi_reg_0/reg_cmd_01] [get_bd_pins a2o_axi_reg_0/reg_cmd_02] [get_bd_pins a2o_axi_reg_0/reg_cmd_03] [get_bd_pins a2o_axi_reg_0/reg_cmd_04] [get_bd_pins a2o_axi_reg_0/reg_cmd_05] [get_bd_pins a2o_axi_reg_0/reg_cmd_06] [get_bd_pins a2o_axi_reg_0/reg_cmd_07] [get_bd_pins a2o_axi_reg_0/reg_cmd_08] [get_bd_pins a2o_axi_reg_0/reg_cmd_09] [get_bd_pins a2o_axi_reg_0/reg_cmd_0A] [get_bd_pins a2o_axi_reg_0/reg_cmd_0B] [get_bd_pins a2o_axi_reg_0/reg_cmd_0C] [get_bd_pins a2o_axi_reg_0/reg_cmd_0D] [get_bd_pins a2o_axi_reg_0/reg_cmd_0E] [get_bd_pins a2o_axi_reg_0/reg_cmd_0F] [get_bd_pins xlconstant_1/dout]
|
|
connect_bd_net -net xlconstant_2_dout [get_bd_pins a2o_axi_reg_0/reg_in_01] [get_bd_pins a2o_axi_reg_0/reg_in_02] [get_bd_pins a2o_axi_reg_0/reg_in_03] [get_bd_pins a2o_axi_reg_0/reg_in_04] [get_bd_pins a2o_axi_reg_0/reg_in_05] [get_bd_pins a2o_axi_reg_0/reg_in_06] [get_bd_pins a2o_axi_reg_0/reg_in_07] [get_bd_pins a2o_axi_reg_0/reg_in_08] [get_bd_pins a2o_axi_reg_0/reg_in_09] [get_bd_pins a2o_axi_reg_0/reg_in_0A] [get_bd_pins a2o_axi_reg_0/reg_in_0B] [get_bd_pins a2o_axi_reg_0/reg_in_0C] [get_bd_pins a2o_axi_reg_0/reg_in_0D] [get_bd_pins a2o_axi_reg_0/reg_in_0E] [get_bd_pins a2o_axi_reg_0/reg_in_0F] [get_bd_pins xlconstant_2/dout]
|
|
connect_bd_net -net xlconstant_3_dout [get_bd_pins proc_sys_reset_0/ext_reset_in] [get_bd_pins xlconstant_3/dout]
|
|
connect_bd_net -net xlconstant_4_dout [get_bd_pins proc_sys_reset_0/mb_debug_sys_rst] [get_bd_pins xlconstant_4/dout]
|
|
|
|
# Create address segments
|
|
create_bd_addr_seg -range 0x00001000 -offset 0xFFFFF000 [get_bd_addr_spaces a2l2_axi_0/m00_axi] [get_bd_addr_segs a2o_axi_reg_0/s00_axi/reg0] SEG_a2o_axi_reg_0_reg0
|
|
create_bd_addr_seg -range 0x00001000 -offset 0xFFFFE000 [get_bd_addr_spaces a2l2_axi_0/m00_axi] [get_bd_addr_segs a2o_axi_reg_0/s_axi_intr/reg0] SEG_a2o_axi_reg_0_reg01
|
|
create_bd_addr_seg -range 0x00040000 -offset 0x00000000 [get_bd_addr_spaces a2l2_axi_0/m00_axi] [get_bd_addr_segs axi_bram_ctrl_0/S_AXI/Mem0] SEG_axi_bram_ctrl_0_Mem0
|
|
create_bd_addr_seg -range 0x00100000 -offset 0x10000000 [get_bd_addr_spaces a2l2_axi_0/m00_axi] [get_bd_addr_segs axi_bram_ctrl_1/S_AXI/Mem0] SEG_axi_bram_ctrl_3_Mem0
|
|
create_bd_addr_seg -range 0x00010000 -offset 0xFE000000 [get_bd_addr_spaces a2l2_axi_0/m00_axi] [get_bd_addr_segs axi_protocol_checker_0/S_AXI/Reg] SEG_axi_protocol_checker_0_Reg
|
|
create_bd_addr_seg -range 0x00001000 -offset 0xFFFFF000 [get_bd_addr_spaces jtag_axi_0/Data] [get_bd_addr_segs a2o_axi_reg_0/s00_axi/reg0] SEG_a2o_axi_reg_0_reg0
|
|
create_bd_addr_seg -range 0x00001000 -offset 0xFFFFE000 [get_bd_addr_spaces jtag_axi_0/Data] [get_bd_addr_segs a2o_axi_reg_0/s_axi_intr/reg0] SEG_a2o_axi_reg_0_reg04
|
|
create_bd_addr_seg -range 0x00040000 -offset 0x00000000 [get_bd_addr_spaces jtag_axi_0/Data] [get_bd_addr_segs axi_bram_ctrl_0/S_AXI/Mem0] SEG_axi_bram_ctrl_0_Mem0
|
|
create_bd_addr_seg -range 0x00100000 -offset 0x10000000 [get_bd_addr_spaces jtag_axi_0/Data] [get_bd_addr_segs axi_bram_ctrl_1/S_AXI/Mem0] SEG_axi_bram_ctrl_1_Mem0
|
|
create_bd_addr_seg -range 0x00010000 -offset 0xFE000000 [get_bd_addr_spaces jtag_axi_0/Data] [get_bd_addr_segs axi_protocol_checker_0/S_AXI/Reg] SEG_axi_protocol_checker_0_Reg
|
|
|
|
# Customize
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_3_0]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_3_1]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_3_2]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_4_0]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_4_1]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_4_2]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_4_3]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /reverserator_64_0]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /xlconstant_1]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /xlconstant_2]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /xlconstant_4]
|
|
set_property SCREENSIZE {10 10} [get_bd_cells /xlconstant_3]
|
|
|
|
# Perform GUI Layout
|
|
regenerate_bd_layout -layout_string {
|
|
"ExpandedHierarchyInLayout":"",
|
|
"guistr":"# # String gsaved with Nlview 7.0.19 2019-03-26 bk=1.5019 VDI=41 GEI=35 GUI=JA:9.0 TLS
|
|
# -string -flagsOSRD
|
|
preplace port clk_in1_n_0 -pg 1 -lvl 0 -x -10 -y 1610 -defaultsOSRD
|
|
preplace port clk_in1_p_0 -pg 1 -lvl 0 -x -10 -y 1630 -defaultsOSRD
|
|
preplace inst a2l2_axi_0 -pg 1 -lvl 8 -x 3730 -y 1090 -defaultsOSRD
|
|
preplace inst a2o_axi_reg_0 -pg 1 -lvl 10 -x 4700 -y 390 -defaultsOSRD
|
|
preplace inst a2o_dbug_0 -pg 1 -lvl 3 -x 990 -y 1350 -defaultsOSRD
|
|
preplace inst axi_bram_ctrl_0 -pg 1 -lvl 10 -x 4700 -y 880 -defaultsOSRD
|
|
preplace inst axi_bram_ctrl_1 -pg 1 -lvl 10 -x 4700 -y 1020 -defaultsOSRD
|
|
preplace inst axi_protocol_checker_0 -pg 1 -lvl 10 -x 4700 -y 1630 -defaultsOSRD
|
|
preplace inst blk_mem_gen_0 -pg 1 -lvl 11 -x 5020 -y 940 -defaultsOSRD
|
|
preplace inst blk_mem_gen_1 -pg 1 -lvl 11 -x 5020 -y 1080 -defaultsOSRD
|
|
preplace inst c_wrapper_0 -pg 1 -lvl 4 -x 1750 -y 1320 -defaultsOSRD
|
|
preplace inst clk_wiz_0 -pg 1 -lvl 1 -x 170 -y 1610 -defaultsOSRD
|
|
preplace inst jtag_axi_0 -pg 1 -lvl 8 -x 3730 -y 1480 -defaultsOSRD
|
|
preplace inst proc_sys_reset_0 -pg 1 -lvl 7 -x 3220 -y 1640 -defaultsOSRD
|
|
preplace inst reverserator_3_0 -pg 1 -lvl 10 -x 4700 -y 1780 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_3_1 -pg 1 -lvl 10 -x 4700 -y 1370 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_3_2 -pg 1 -lvl 10 -x 4700 -y 1480 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_4_0 -pg 1 -lvl 10 -x 4700 -y 1260 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_4_1 -pg 1 -lvl 5 -x 2360 -y 1220 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_4_2 -pg 1 -lvl 10 -x 4700 -y 1150 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_64_0 -pg 1 -lvl 1 -x 170 -y 1410 -defaultsOSRD -resize 83 88
|
|
preplace inst smartconnect_0 -pg 1 -lvl 9 -x 4260 -y 1040 -defaultsOSRD
|
|
preplace inst system_ila_0 -pg 1 -lvl 9 -x 4260 -y 1500 -defaultsOSRD
|
|
preplace inst system_ila_1 -pg 1 -lvl 2 -x 570 -y 1720 -defaultsOSRD
|
|
preplace inst vio_0 -pg 1 -lvl 2 -x 570 -y 1410 -defaultsOSRD
|
|
preplace inst vio_1 -pg 1 -lvl 6 -x 2720 -y 2050 -defaultsOSRD
|
|
preplace inst vio_2 -pg 1 -lvl 11 -x 5020 -y 1470 -defaultsOSRD
|
|
preplace inst vio_3 -pg 1 -lvl 9 -x 4260 -y 650 -defaultsOSRD
|
|
preplace inst xlconstant_1 -pg 1 -lvl 9 -x 4260 -y 110 -defaultsOSRD -resize 83 88
|
|
preplace inst xlconstant_2 -pg 1 -lvl 9 -x 4260 -y 800 -defaultsOSRD -resize 83 88
|
|
preplace inst xlconstant_3 -pg 1 -lvl 6 -x 2720 -y 1590 -defaultsOSRD -resize 83 88
|
|
preplace inst xlconstant_4 -pg 1 -lvl 6 -x 2720 -y 1700 -defaultsOSRD -resize 83 88
|
|
preplace inst reverserator_4_3 -pg 1 -lvl 5 -x 2360 -y 2130 -defaultsOSRD -resize 83 88
|
|
preplace netloc Net2 1 2 4 760 1730 NJ 1730 NJ 1730 2470J
|
|
preplace netloc a2l2_axi_0_an_ac_reld_core_tag 1 3 6 1490 1680 2130J 1660 2500J 1470 3020J 1530 3410J 1550 4020
|
|
preplace netloc a2l2_axi_0_an_ac_reld_crit_qw 1 3 6 1270 710 NJ 710 NJ 710 NJ 710 NJ 710 4050
|
|
preplace netloc a2l2_axi_0_an_ac_reld_data 1 3 6 1390 730 NJ 730 NJ 730 NJ 730 NJ 730 3970
|
|
preplace netloc a2l2_axi_0_an_ac_reld_data_coming 1 3 6 1260 690 NJ 690 NJ 690 NJ 690 NJ 690 4020
|
|
preplace netloc a2l2_axi_0_an_ac_reld_data_vld 1 3 6 1380 720 NJ 720 NJ 720 NJ 720 NJ 720 4010
|
|
preplace netloc a2l2_axi_0_an_ac_reld_ecc_err 1 3 6 1410 770 NJ 770 NJ 770 NJ 770 NJ 770 3950
|
|
preplace netloc a2l2_axi_0_an_ac_reld_ecc_err_ue 1 3 6 1330 740 NJ 740 NJ 740 NJ 740 NJ 740 4000
|
|
preplace netloc a2l2_axi_0_an_ac_reld_l1_dump 1 3 6 1290 750 NJ 750 NJ 750 NJ 750 NJ 750 4040
|
|
preplace netloc a2l2_axi_0_an_ac_reld_qw 1 3 6 1430 780 NJ 780 NJ 780 NJ 780 NJ 780 3960
|
|
preplace netloc a2l2_axi_0_an_ac_req_ld_pop 1 3 6 1340 790 NJ 790 NJ 790 NJ 790 NJ 790 3990
|
|
preplace netloc a2l2_axi_0_an_ac_req_st_gather 1 3 6 1310 800 NJ 800 NJ 800 NJ 800 NJ 800 4030
|
|
preplace netloc a2l2_axi_0_an_ac_req_st_pop 1 3 6 1360 810 NJ 810 NJ 810 NJ 810 NJ 810 3980
|
|
preplace netloc a2l2_axi_0_an_ac_reservation_vld 1 3 6 1440 1710 2200J 1410 NJ 1410 NJ 1410 NJ 1410 3950
|
|
preplace netloc a2l2_axi_0_an_ac_stcx_complete 1 3 6 1470 2330 NJ 2330 NJ 2330 NJ 2330 NJ 2330 3980
|
|
preplace netloc a2l2_axi_0_an_ac_stcx_pass 1 3 6 1460 2350 NJ 2350 NJ 2350 NJ 2350 NJ 2350 3970
|
|
preplace netloc a2l2_axi_0_an_ac_sync_ack 1 3 6 1480 2360 NJ 2360 NJ 2360 NJ 2360 NJ 2360 3960
|
|
preplace netloc a2l2_axi_0_err 1 8 2 NJ 930 4450J
|
|
preplace netloc a2o_axi_reg_0_irq 1 8 3 4100 -20 4410J -50 4880
|
|
preplace netloc a2o_axi_reg_0_reg_out_00 1 8 3 4110 -10 4420J -40 4870
|
|
preplace netloc a2o_dbug_0_cch_out 1 1 3 350 1530 NJ 1530 1170
|
|
preplace netloc a2o_dbug_0_dch_out 1 1 3 360 1540 NJ 1540 1190
|
|
preplace netloc a2o_dbug_0_err 1 1 3 340 1550 NJ 1550 1180
|
|
preplace netloc a2o_dbug_0_rsp_data 1 0 4 10 1520 290J 1560 NJ 1560 1200
|
|
preplace netloc a2o_dbug_0_rsp_valid 1 1 3 320 1570 NJ 1570 1210
|
|
preplace netloc a2o_dbug_0_threadstop_out 1 3 1 1250 1120n
|
|
preplace netloc a2o_dbug_0_trigger_ack_out 1 1 3 330 1580 NJ 1580 1220
|
|
preplace netloc a2o_dbug_0_trigger_out 1 3 6 1230 1690 2210J 1670 2510J 1480 3040J 1510 3420J 1560 4110J
|
|
preplace netloc a2o_reset_0_reset 1 2 8 790 1740 NJ 1740 2220J 1680 2520J 1490 3000J 1520 3460 760 4090 730 4510
|
|
preplace netloc axi_protocol_checker_0_pc_asserted 1 1 10 360 2020 NJ 2020 NJ 2020 NJ 2020 2520 2320 NJ 2320 NJ 2320 NJ 2320 NJ 2320 4870
|
|
preplace netloc axi_protocol_checker_0_pc_status 1 1 10 350 1810 NJ 1810 NJ 1810 NJ 1810 NJ 1810 2970J 1840 NJ 1840 NJ 1840 4420J 1850 4890
|
|
preplace netloc c_wrapper_0_ac_an_checkstop 1 4 6 2000J 820 NJ 820 NJ 820 NJ 820 4110J 870 4470J
|
|
preplace netloc c_wrapper_0_ac_an_local_checkstop 1 4 6 2140J 1390 NJ 1390 NJ 1390 NJ 1390 NJ 1390 4450J
|
|
preplace netloc c_wrapper_0_ac_an_machine_check 1 4 6 1980J 830 NJ 830 NJ 830 NJ 830 4100J 880 4460J
|
|
preplace netloc c_wrapper_0_ac_an_pm_thread_running 1 4 1 2010J 1130n
|
|
preplace netloc c_wrapper_0_ac_an_recov_err 1 4 6 2020J 840 NJ 840 NJ 840 NJ 840 4060J 890 4430J
|
|
preplace netloc c_wrapper_0_ac_an_req 1 4 4 2040 1000 NJ 1000 NJ 1000 NJ
|
|
preplace netloc c_wrapper_0_ac_an_req_endian 1 4 4 2110J 1070 2550J 1080 NJ 1080 3410
|
|
preplace netloc c_wrapper_0_ac_an_req_ld_core_tag 1 4 4 2080J 1080 2540J 1090 NJ 1090 3420
|
|
preplace netloc c_wrapper_0_ac_an_req_ld_xfr_len 1 4 4 2100J 1090 2530J 1100 NJ 1100 3430
|
|
preplace netloc c_wrapper_0_ac_an_req_pwr_token 1 4 4 2030 990 NJ 990 NJ 990 3430J
|
|
preplace netloc c_wrapper_0_ac_an_req_ra 1 4 4 2050 1100 2520J 1110 NJ 1110 3440J
|
|
preplace netloc c_wrapper_0_ac_an_req_thread 1 4 4 2060 1110 2510J 1120 NJ 1120 3500J
|
|
preplace netloc c_wrapper_0_ac_an_req_ttype 1 4 4 2070 1120 2500J 1130 NJ 1130 3510J
|
|
preplace netloc c_wrapper_0_ac_an_req_user_defined 1 4 4 2150J 1140 2470J 1150 NJ 1150 3510
|
|
preplace netloc c_wrapper_0_ac_an_req_wimg_g 1 4 4 2120J 1150 2460J 1160 NJ 1160 N
|
|
preplace netloc c_wrapper_0_ac_an_req_wimg_i 1 4 4 2090J 1130 2490J 1140 NJ 1140 3500
|
|
preplace netloc c_wrapper_0_ac_an_req_wimg_m 1 4 4 2160J 1350 2520J 1330 NJ 1330 3470
|
|
preplace netloc c_wrapper_0_ac_an_req_wimg_w 1 4 4 2130J 1380 2550J 1340 NJ 1340 3480
|
|
preplace netloc c_wrapper_0_ac_an_st_byte_enbl 1 4 4 2180J 1360 NJ 1360 NJ 1360 3500
|
|
preplace netloc c_wrapper_0_ac_an_st_data 1 4 4 2170J 1340 2540J 1370 NJ 1370 3510
|
|
preplace netloc c_wrapper_0_ac_an_st_data_pwr_token 1 4 4 2190J 1370 2530J 1350 NJ 1350 3490
|
|
preplace netloc clk_in1_n_0_1 1 0 1 NJ 1610
|
|
preplace netloc clk_in1_p_0_1 1 0 1 NJ 1630
|
|
preplace netloc clk_wiz_0_clk 1 1 10 310 1290 750 1590 1240 1770 NJ 1770 2460 1460 3030 1470 3450 700 4080 900 4480 1860 4900J
|
|
preplace netloc clk_wiz_0_clk2x 1 1 3 280J 1160 NJ 1160 1190
|
|
preplace netloc clk_wiz_0_clk4x 1 1 3 300J 1180 750J 1170 1220
|
|
preplace netloc clk_wiz_0_locked 1 1 6 NJ 1640 NJ 1640 1180J 1780 NJ 1780 NJ 1780 3040
|
|
preplace netloc proc_sys_reset_0_mb_reset 1 3 5 1440 940 NJ 940 NJ 940 NJ 940 3400
|
|
preplace netloc reverserator_3_0_inndoor 1 10 1 4910 1460n
|
|
preplace netloc reverserator_3_1_inndoor 1 10 1 4870 1370n
|
|
preplace netloc reverserator_3_2_inndoor 1 10 1 4860 1480n
|
|
preplace netloc reverserator_4_0_outtie 1 10 1 4890 1260n
|
|
preplace netloc reverserator_4_1_outtie 1 5 1 2490 1220n
|
|
preplace netloc reverserator_4_2_outtie 1 10 1 4880 1150n
|
|
preplace netloc reverserator_64_0_skidrowwww 1 1 1 NJ 1410
|
|
preplace netloc vio_0_probe_out0 1 2 1 N 1350
|
|
preplace netloc vio_0_probe_out1 1 2 1 730 1370n
|
|
preplace netloc vio_0_probe_out2 1 2 1 740 1370n
|
|
preplace netloc vio_0_probe_out3 1 2 1 770 1390n
|
|
preplace netloc vio_0_probe_out4 1 2 1 N 1430
|
|
preplace netloc vio_0_probe_out5 1 2 1 N 1450
|
|
preplace netloc vio_0_probe_out6 1 2 1 N 1470
|
|
preplace netloc vio_1_probe_out0 1 2 5 780 1790 NJ 1790 NJ 1790 NJ 1790 2900
|
|
preplace netloc vio_1_probe_out1 1 6 1 3000 1640n
|
|
preplace netloc vio_1_probe_out2 1 2 5 740 1750 1170J 1800 NJ 1800 NJ 1800 2880
|
|
preplace netloc vio_1_probe_out3 1 3 4 1450 950 NJ 950 NJ 950 2950
|
|
preplace netloc vio_1_probe_out4 1 3 4 1280 2370 NJ 2370 NJ 2370 2950
|
|
preplace netloc vio_1_probe_out5 1 5 2 2550 2290 2900
|
|
preplace netloc vio_1_probe_out6 1 3 4 1470 960 NJ 960 NJ 960 2940
|
|
preplace netloc vio_1_probe_out7 1 3 4 1350 1750 NJ 1750 2480J 1770 2910
|
|
preplace netloc vio_1_probe_out8 1 3 4 1420 1700 NJ 1700 2540J 1510 2930
|
|
preplace netloc vio_1_probe_out9 1 3 4 1300 2380 NJ 2380 NJ 2380 2930
|
|
preplace netloc vio_1_probe_out10 1 3 4 1450 2310 NJ 2310 NJ 2310 2890
|
|
preplace netloc vio_1_probe_out11 1 3 4 1400 2300 NJ 2300 NJ 2300 2880
|
|
preplace netloc vio_1_probe_out12 1 3 4 1320 2390 NJ 2390 NJ 2390 2910
|
|
preplace netloc vio_1_probe_out14 1 2 5 800 1760 NJ 1760 2240J 1710 2550J 1520 2920
|
|
preplace netloc vio_1_probe_out15 1 2 5 810 1720 NJ 1720 2230J 1690 2530J 1500 2960
|
|
preplace netloc vio_1_probe_out16 1 3 4 1370 2340 NJ 2340 NJ 2340 2870
|
|
preplace netloc vio_1_probe_out17 1 6 2 2980J 970 3410
|
|
preplace netloc vio_1_probe_out18 1 6 2 3010J 980 3420
|
|
preplace netloc vio_3_probe_out0 1 9 1 4430 380n
|
|
preplace netloc vio_3_probe_out1 1 9 1 4420 60n
|
|
preplace netloc xlconstant_1_dout 1 9 1 4470 80n
|
|
preplace netloc xlconstant_2_dout 1 9 1 4470 400n
|
|
preplace netloc xlconstant_3_dout 1 6 1 2970J 1590n
|
|
preplace netloc xlconstant_4_dout 1 6 1 2990J 1660n
|
|
preplace netloc reverserator_4_3_outtie 1 5 1 2540 2100n
|
|
preplace netloc c_wrapper_0_ac_an_debug_trigger 1 4 1 1990 1110n
|
|
preplace netloc axi_bram_ctrl_0_BRAM_PORTA 1 10 1 4870J 880n
|
|
preplace netloc smartconnect_0_M03_AXI 1 9 1 4500 1000n
|
|
preplace netloc smartconnect_0_M02_AXI 1 9 1 4490 860n
|
|
preplace netloc jtag_axi_0_M_AXI 1 8 1 4070 1030n
|
|
preplace netloc smartconnect_0_M01_AXI 1 9 1 4440 40n
|
|
preplace netloc a2l2_axi_0_m00_axi 1 8 2 4060 1400 4410
|
|
preplace netloc smartconnect_0_M04_AXI 1 9 1 4420 1080n
|
|
preplace netloc smartconnect_0_M00_AXI 1 9 1 4410 20n
|
|
preplace netloc axi_bram_ctrl_3_BRAM_PORTA 1 10 1 4880J 1020n
|
|
levelinfo -pg 1 -10 170 570 990 1750 2360 2720 3220 3730 4260 4700 5020 5140
|
|
pagesize -pg 1 -db -bbox -sgen -150 -60 5140 2430
|
|
"
|
|
}
|
|
|
|
# Restore current instance
|
|
current_bd_instance $oldCurInst
|
|
|
|
validate_bd_design
|
|
save_bd_design
|
|
close_bd_design $design_name
|
|
}
|
|
# End of cr_bd_a2o_bd()
|
|
cr_bd_a2o_bd ""
|
|
set_property LIBRARY "work" [get_files a2o_bd.bd ]
|
|
set_property REGISTERED_WITH_MANAGER "1" [get_files a2o_bd.bd ]
|
|
set_property SYNTH_CHECKPOINT_MODE "Hierarchical" [get_files a2o_bd.bd ]
|
|
|
|
# Create 'synth_1' run (if not found)
|
|
if {[string equal [get_runs -quiet synth_1] ""]} {
|
|
create_run -name synth_1 -part xcvu3p-ffvc1517-2-e -flow {Vivado Synthesis 2019} -strategy "Vivado Synthesis Defaults" -report_strategy {No Reports} -constrset constrs_1
|
|
} else {
|
|
set_property strategy "Vivado Synthesis Defaults" [get_runs synth_1]
|
|
set_property flow "Vivado Synthesis 2019" [get_runs synth_1]
|
|
}
|
|
set obj [get_runs synth_1]
|
|
set_property set_report_strategy_name 1 $obj
|
|
set_property report_strategy {Vivado Synthesis Default Reports} $obj
|
|
set_property set_report_strategy_name 0 $obj
|
|
# Create 'synth_1_synth_report_utilization_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs synth_1] synth_1_synth_report_utilization_0] "" ] } {
|
|
create_report_config -report_name synth_1_synth_report_utilization_0 -report_type report_utilization:1.0 -steps synth_design -runs synth_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs synth_1] synth_1_synth_report_utilization_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
set obj [get_runs synth_1]
|
|
set_property -name "part" -value "xcvu3p-ffvc1517-2-e" -objects $obj
|
|
set_property -name "strategy" -value "Vivado Synthesis Defaults" -objects $obj
|
|
set_property -name "steps.synth_design.args.flatten_hierarchy" -value "none" -objects $obj
|
|
set_property -name "steps.synth_design.args.bufg" -value "0" -objects $obj
|
|
|
|
# set the current synth run
|
|
current_run -synthesis [get_runs synth_1]
|
|
|
|
# Create 'impl_1' run (if not found)
|
|
if {[string equal [get_runs -quiet impl_1] ""]} {
|
|
create_run -name impl_1 -part xcvu3p-ffvc1517-2-e -flow {Vivado Implementation 2019} -strategy "Vivado Implementation Defaults" -report_strategy {No Reports} -constrset constrs_1 -parent_run synth_1
|
|
} else {
|
|
set_property strategy "Vivado Implementation Defaults" [get_runs impl_1]
|
|
set_property flow "Vivado Implementation 2019" [get_runs impl_1]
|
|
}
|
|
set obj [get_runs impl_1]
|
|
set_property set_report_strategy_name 1 $obj
|
|
set_property report_strategy {Vivado Implementation Default Reports} $obj
|
|
set_property set_report_strategy_name 0 $obj
|
|
# Create 'impl_1_init_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_init_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_init_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps init_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_init_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_opt_report_drc_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_drc_0] "" ] } {
|
|
create_report_config -report_name impl_1_opt_report_drc_0 -report_type report_drc:1.0 -steps opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_drc_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_opt_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_opt_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_power_opt_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_power_opt_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_power_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps power_opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_power_opt_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_place_report_io_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_io_0] "" ] } {
|
|
create_report_config -report_name impl_1_place_report_io_0 -report_type report_io:1.0 -steps place_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_io_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_place_report_utilization_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_utilization_0] "" ] } {
|
|
create_report_config -report_name impl_1_place_report_utilization_0 -report_type report_utilization:1.0 -steps place_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_utilization_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_place_report_control_sets_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_control_sets_0] "" ] } {
|
|
create_report_config -report_name impl_1_place_report_control_sets_0 -report_type report_control_sets:1.0 -steps place_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_control_sets_0]
|
|
if { $obj != "" } {
|
|
set_property -name "options.verbose" -value "1" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_place_report_incremental_reuse_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_incremental_reuse_0] "" ] } {
|
|
create_report_config -report_name impl_1_place_report_incremental_reuse_0 -report_type report_incremental_reuse:1.0 -steps place_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_incremental_reuse_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_place_report_incremental_reuse_1' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_incremental_reuse_1] "" ] } {
|
|
create_report_config -report_name impl_1_place_report_incremental_reuse_1 -report_type report_incremental_reuse:1.0 -steps place_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_incremental_reuse_1]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_place_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_place_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps place_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_place_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_post_place_power_opt_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_post_place_power_opt_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_post_place_power_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps post_place_power_opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_post_place_power_opt_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_phys_opt_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_phys_opt_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_phys_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps phys_opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_phys_opt_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "is_enabled" -value "0" -objects $obj
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_route_report_drc_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_drc_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_drc_0 -report_type report_drc:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_drc_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_route_report_methodology_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_methodology_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_methodology_0 -report_type report_methodology:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_methodology_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_route_report_power_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_power_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_power_0 -report_type report_power:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_power_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_route_report_route_status_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_route_status_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_route_status_0 -report_type report_route_status:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_route_status_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_route_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_route_report_incremental_reuse_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_incremental_reuse_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_incremental_reuse_0 -report_type report_incremental_reuse:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_incremental_reuse_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_route_report_clock_utilization_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_clock_utilization_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_clock_utilization_0 -report_type report_clock_utilization:1.0 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_clock_utilization_0]
|
|
if { $obj != "" } {
|
|
|
|
}
|
|
# Create 'impl_1_route_report_bus_skew_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_bus_skew_0] "" ] } {
|
|
create_report_config -report_name impl_1_route_report_bus_skew_0 -report_type report_bus_skew:1.1 -steps route_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_route_report_bus_skew_0]
|
|
if { $obj != "" } {
|
|
set_property -name "options.warn_on_violation" -value "1" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_post_route_phys_opt_report_timing_summary_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_timing_summary_0] "" ] } {
|
|
create_report_config -report_name impl_1_post_route_phys_opt_report_timing_summary_0 -report_type report_timing_summary:1.0 -steps post_route_phys_opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_timing_summary_0]
|
|
if { $obj != "" } {
|
|
set_property -name "options.max_paths" -value "10" -objects $obj
|
|
set_property -name "options.warn_on_violation" -value "1" -objects $obj
|
|
|
|
}
|
|
# Create 'impl_1_post_route_phys_opt_report_bus_skew_0' report (if not found)
|
|
if { [ string equal [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_bus_skew_0] "" ] } {
|
|
create_report_config -report_name impl_1_post_route_phys_opt_report_bus_skew_0 -report_type report_bus_skew:1.1 -steps post_route_phys_opt_design -runs impl_1
|
|
}
|
|
set obj [get_report_configs -of_objects [get_runs impl_1] impl_1_post_route_phys_opt_report_bus_skew_0]
|
|
if { $obj != "" } {
|
|
set_property -name "options.warn_on_violation" -value "1" -objects $obj
|
|
|
|
}
|
|
set obj [get_runs impl_1]
|
|
set_property -name "part" -value "xcvu3p-ffvc1517-2-e" -objects $obj
|
|
set_property -name "strategy" -value "Vivado Implementation Defaults" -objects $obj
|
|
set_property -name "steps.opt_design.args.more options" -value "-retarget -propconst -bram_power_opt -debug_log" -objects $obj
|
|
set_property -name "steps.place_design.args.directive" -value "Explore" -objects $obj
|
|
set_property -name "steps.phys_opt_design.is_enabled" -value "1" -objects $obj
|
|
set_property -name "steps.phys_opt_design.args.directive" -value "Explore" -objects $obj
|
|
set_property -name "steps.route_design.args.directive" -value "Explore" -objects $obj
|
|
set_property -name "steps.post_route_phys_opt_design.is_enabled" -value "1" -objects $obj
|
|
set_property -name "steps.post_route_phys_opt_design.args.directive" -value "Explore" -objects $obj
|
|
set_property -name "steps.write_bitstream.args.readback_file" -value "0" -objects $obj
|
|
set_property -name "steps.write_bitstream.args.verbose" -value "0" -objects $obj
|
|
|
|
# set the current impl run
|
|
current_run -implementation [get_runs impl_1]
|
|
|
|
puts "INFO: Project created:${_xil_proj_name_}"
|
|
# Create 'drc_1' gadget (if not found)
|
|
if {[string equal [get_dashboard_gadgets [ list "drc_1" ] ] ""]} {
|
|
create_dashboard_gadget -name {drc_1} -type drc
|
|
}
|
|
set obj [get_dashboard_gadgets [ list "drc_1" ] ]
|
|
set_property -name "reports" -value "impl_1#impl_1_route_report_drc_0" -objects $obj
|
|
|
|
# Create 'methodology_1' gadget (if not found)
|
|
if {[string equal [get_dashboard_gadgets [ list "methodology_1" ] ] ""]} {
|
|
create_dashboard_gadget -name {methodology_1} -type methodology
|
|
}
|
|
set obj [get_dashboard_gadgets [ list "methodology_1" ] ]
|
|
set_property -name "reports" -value "impl_1#impl_1_route_report_methodology_0" -objects $obj
|
|
|
|
# Create 'power_1' gadget (if not found)
|
|
if {[string equal [get_dashboard_gadgets [ list "power_1" ] ] ""]} {
|
|
create_dashboard_gadget -name {power_1} -type power
|
|
}
|
|
set obj [get_dashboard_gadgets [ list "power_1" ] ]
|
|
set_property -name "reports" -value "impl_1#impl_1_route_report_power_0" -objects $obj
|
|
|
|
# Create 'timing_1' gadget (if not found)
|
|
if {[string equal [get_dashboard_gadgets [ list "timing_1" ] ] ""]} {
|
|
create_dashboard_gadget -name {timing_1} -type timing
|
|
}
|
|
set obj [get_dashboard_gadgets [ list "timing_1" ] ]
|
|
set_property -name "reports" -value "impl_1#impl_1_route_report_timing_summary_0" -objects $obj
|
|
|
|
# Create 'utilization_1' gadget (if not found)
|
|
if {[string equal [get_dashboard_gadgets [ list "utilization_1" ] ] ""]} {
|
|
create_dashboard_gadget -name {utilization_1} -type utilization
|
|
}
|
|
set obj [get_dashboard_gadgets [ list "utilization_1" ] ]
|
|
set_property -name "reports" -value "synth_1#synth_1_synth_report_utilization_0" -objects $obj
|
|
set_property -name "run.step" -value "synth_design" -objects $obj
|
|
set_property -name "run.type" -value "synthesis" -objects $obj
|
|
|
|
# Create 'utilization_2' gadget (if not found)
|
|
if {[string equal [get_dashboard_gadgets [ list "utilization_2" ] ] ""]} {
|
|
create_dashboard_gadget -name {utilization_2} -type utilization
|
|
}
|
|
set obj [get_dashboard_gadgets [ list "utilization_2" ] ]
|
|
set_property -name "reports" -value "impl_1#impl_1_place_report_utilization_0" -objects $obj
|
|
|
|
move_dashboard_gadget -name {utilization_1} -row 0 -col 0
|
|
move_dashboard_gadget -name {power_1} -row 1 -col 0
|
|
move_dashboard_gadget -name {drc_1} -row 2 -col 0
|
|
move_dashboard_gadget -name {timing_1} -row 0 -col 1
|
|
move_dashboard_gadget -name {utilization_2} -row 1 -col 1
|
|
move_dashboard_gadget -name {methodology_1} -row 2 -col 1
|