Skip to content

Instantly share code, notes, and snippets.

@misodengaku
Last active June 14, 2021 03:25
Show Gist options
  • Save misodengaku/72cfd5146c5d716b112d3127b2727c4a to your computer and use it in GitHub Desktop.
Save misodengaku/72cfd5146c5d716b112d3127b2727c4a to your computer and use it in GitHub Desktop.
# set params
set JOBS_NUM 16
set PROJ_NAME super_project_name
set BD_NAME super_project_name
set BD_FILE "${PROJ_NAME}.srcs/sources_1/bd/${BD_NAME}/${BD_NAME}.bd"
# open project and bd file
open_project "./${PROJ_NAME}.xpr"
open_bd_design "./${BD_FILE}"
update_compile_order -fileset sources_1
# reset runs
reset_run impl_1
reset_run synth_1
# upgrade HLS IPs since minor revision will be changed in build process
upgrade_ip [get_ips {uz_petalinux_l8_pkt_buf_0_0 uz_petalinux_l8_pkt_buf_0_1}] -log ip_upgrade.log
export_ip_user_files -of_objects [get_ips {uz_petalinux_l8_pkt_buf_0_1 uz_petalinux_l8_pkt_buf_0_0}] -no_script -sync -force -quiet
# reset bd output product
export_ip_user_files -of_objects [get_files ${BD_FILE}] -sync -no_script -force -quiet
reset_target all [get_files ${BD_FILE}]
if { [get_fileset ${BD_NAME}] != "" } { delete_ip_run [get_files -of_objects [get_fileset ${BD_NAME}] ${BD_FILE}] }
# generate bd output
generate_target -force all [get_files ${BD_FILE}]
export_ip_user_files -of_objects [get_files ${BD_FILE}] -no_script -sync -force -quiet
create_ip_run [get_files -of_objects [get_fileset sources_1] ${BD_FILE}]
# implement and bitgen
launch_runs impl_1 -to_step write_bitstream -jobs ${JOBS_NUM}
wait_on_run impl_1
write_sysdef -force -hwdef ${PROJ_NAME}.runs/impl_1/${PROJ_NAME}_wrapper.hwdef -bitfile ${PROJ_NAME}_wrapper.bit -meminfo ${PROJ_NAME}_wrapper.mmi -file ${PROJ_NAME}_wrapper.sysdef
# export hardware
write_hw_platform -fixed -include_bit -force -file ${PROJ_NAME}_wrapper.xsa
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment