# #***************************************************************************************** # #***************************************************************************************** close_project -quiet # set variables for project set PROJECT_NAME axi_lite_to_wb # Set the reference directory for source file relative paths (by default the value is script directory path) set origin_dir [file dirname [info script] ] # Create project create_project -force $PROJECT_NAME $origin_dir/$PROJECT_NAME # Set project properties set obj [get_projects $PROJECT_NAME] set_property "board_part" "em.avnet.com:zed:part0:1.2" $obj set_property "default_lib" "xil_defaultlib" $obj # Create 'sources_1' fileset (if not found) if {[string equal [get_filesets -quiet sources_1] ""]} { create_fileset -srcset sources_1 } add_files -fileset sources_1 -norecurse $origin_dir/../src/top.v add_files -fileset sources_1 -norecurse $origin_dir/../src/reg_file_v1_0_S00_AXI.v update_compile_order -fileset sources_1 # Set 'sources_1' fileset properties set obj [get_filesets sources_1] set_property "top" "top" $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/../src/zedboard_master_XDC_RevC_D_v2.xdc"]" set file_added [add_files -norecurse -fileset $obj $file] set file "$origin_dir/../src/zedboard_master_XDC_RevC_D_v2.xdc" set file [file normalize $file] set file_obj [get_files -of_objects [get_filesets constrs_1] [list "*$file"]] set_property "file_type" "XDC" $file_obj # Set 'constrs_1' fileset properties set obj [get_filesets constrs_1] set_property "target_constrs_file" "[file normalize "$origin_dir/../src/zedboard_master_XDC_RevC_D_v2.xdc"]" $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 "top" "top" $obj # Create 'synth_1' run (if not found) if {[string equal [get_runs -quiet synth_1] ""]} { create_run -name synth_1 -part xc7z020clg484-1 -flow {Vivado Synthesis 2016} -strategy "Vivado Synthesis Defaults" -constrset constrs_1 } else { set_property strategy "Vivado Synthesis Defaults" [get_runs synth_1] set_property flow "Vivado Synthesis 2016" [get_runs synth_1] } set obj [get_runs synth_1] # 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 xc7z020clg484-1 -flow {Vivado Implementation 2016} -strategy "Vivado Implementation Defaults" -constrset constrs_1 -parent_run synth_1 } else { set_property strategy "Vivado Implementation Defaults" [get_runs impl_1] set_property flow "Vivado Implementation 2016" [get_runs impl_1] } set obj [get_runs impl_1] # set the current impl run current_run -implementation [get_runs impl_1] # regenerate block diagrams source $origin_dir/../block_diagrams/zync_bd_16_2.tcl close_project -quiet puts "INFO: Project created:$PROJECT_NAME"