scripts: add support for OOC synthesis flow
Usage: from command line set any value to the ADI_USE_OOC_SYNTHESIS variable e.g. export ADI_USE_OOC_SYNTHESIS=ymain
parent
e59e133663
commit
5e92dc45b2
|
@ -1,3 +1,4 @@
|
||||||
|
*.ip_user_files
|
||||||
*.cache
|
*.cache
|
||||||
*.data
|
*.data
|
||||||
*.xpr
|
*.xpr
|
||||||
|
|
|
@ -16,6 +16,12 @@ if {[info exists ::env(ADI_IGNORE_VERSION_CHECK)]} {
|
||||||
set IGNORE_VERSION_CHECK 0
|
set IGNORE_VERSION_CHECK 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if {[info exists ::env(ADI_USE_OOC_SYNTHESIS)]} {
|
||||||
|
set ADI_USE_OOC_SYNTHESIS 1
|
||||||
|
} elseif {![info exists ADI_USE_OOC_SYNTHESIS]} {
|
||||||
|
set ADI_USE_OOC_SYNTHESIS 0
|
||||||
|
}
|
||||||
|
|
||||||
set p_board "not-applicable"
|
set p_board "not-applicable"
|
||||||
set p_device "none"
|
set p_device "none"
|
||||||
set sys_zynq 1
|
set sys_zynq 1
|
||||||
|
@ -30,6 +36,7 @@ proc adi_project_xilinx {project_name {mode 0}} {
|
||||||
global sys_zynq
|
global sys_zynq
|
||||||
global REQUIRED_VIVADO_VERSION
|
global REQUIRED_VIVADO_VERSION
|
||||||
global IGNORE_VERSION_CHECK
|
global IGNORE_VERSION_CHECK
|
||||||
|
global ADI_USE_OOC_SYNTHESIS
|
||||||
|
|
||||||
if [regexp "_ac701$" $project_name] {
|
if [regexp "_ac701$" $project_name] {
|
||||||
set p_device "xc7a200tfbg676-2"
|
set p_device "xc7a200tfbg676-2"
|
||||||
|
@ -133,8 +140,16 @@ proc adi_project_xilinx {project_name {mode 0}} {
|
||||||
save_bd_design
|
save_bd_design
|
||||||
validate_bd_design
|
validate_bd_design
|
||||||
|
|
||||||
set_property synth_checkpoint_mode None [get_files $project_system_dir/system.bd]
|
if {$ADI_USE_OOC_SYNTHESIS == 1} {
|
||||||
|
set_property synth_checkpoint_mode Hierarchical [get_files $project_system_dir/system.bd]
|
||||||
|
} else {
|
||||||
|
set_property synth_checkpoint_mode None [get_files $project_system_dir/system.bd]
|
||||||
|
}
|
||||||
generate_target {synthesis implementation} [get_files $project_system_dir/system.bd]
|
generate_target {synthesis implementation} [get_files $project_system_dir/system.bd]
|
||||||
|
if {$ADI_USE_OOC_SYNTHESIS == 1} {
|
||||||
|
export_ip_user_files -of_objects [get_files $project_system_dir/system.bd] -no_script -sync -force -quiet
|
||||||
|
create_ip_run [get_files $project_system_dir/system.bd]
|
||||||
|
}
|
||||||
make_wrapper -files [get_files $project_system_dir/system.bd] -top
|
make_wrapper -files [get_files $project_system_dir/system.bd] -top
|
||||||
|
|
||||||
if {$mode == 0} {
|
if {$mode == 0} {
|
||||||
|
@ -152,8 +167,13 @@ proc adi_project_files {project_name project_files} {
|
||||||
|
|
||||||
proc adi_project_run {project_name} {
|
proc adi_project_run {project_name} {
|
||||||
global ADI_POWER_OPTIMIZATION
|
global ADI_POWER_OPTIMIZATION
|
||||||
|
global ADI_USE_OOC_SYNTHESIS
|
||||||
|
|
||||||
launch_runs synth_1
|
if {$ADI_USE_OOC_SYNTHESIS == 1} {
|
||||||
|
launch_runs -jobs 4 system_*_synth_1 synth_1
|
||||||
|
} else {
|
||||||
|
launch_runs synth_1
|
||||||
|
}
|
||||||
wait_on_run synth_1
|
wait_on_run synth_1
|
||||||
open_run synth_1
|
open_run synth_1
|
||||||
report_timing_summary -file timing_synth.log
|
report_timing_summary -file timing_synth.log
|
||||||
|
|
Loading…
Reference in New Issue