adi_project.tcl: Add comments to all proc
parent
21031261b0
commit
41bc947ac1
|
@ -1,34 +1,50 @@
|
||||||
|
|
||||||
variable p_board
|
## Define the supported tool version
|
||||||
variable p_device
|
|
||||||
variable sys_zynq
|
|
||||||
variable p_prcfg_init
|
|
||||||
variable p_prcfg_list
|
|
||||||
variable p_prcfg_status
|
|
||||||
|
|
||||||
if {![info exists REQUIRED_VIVADO_VERSION]} {
|
if {![info exists REQUIRED_VIVADO_VERSION]} {
|
||||||
set REQUIRED_VIVADO_VERSION "2018.3"
|
set REQUIRED_VIVADO_VERSION "2018.3"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Define the ADI_IGNORE_VERSION_CHECK environment variable to skip version check
|
||||||
if {[info exists ::env(ADI_IGNORE_VERSION_CHECK)]} {
|
if {[info exists ::env(ADI_IGNORE_VERSION_CHECK)]} {
|
||||||
set IGNORE_VERSION_CHECK 1
|
set IGNORE_VERSION_CHECK 1
|
||||||
} elseif {![info exists IGNORE_VERSION_CHECK]} {
|
} elseif {![info exists IGNORE_VERSION_CHECK]} {
|
||||||
set IGNORE_VERSION_CHECK 0
|
set IGNORE_VERSION_CHECK 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Define the ADI_USE_OOC_SYNTHESIS environment variable to enable out of context
|
||||||
|
# synthesis
|
||||||
if {[info exists ::env(ADI_USE_OOC_SYNTHESIS)]} {
|
if {[info exists ::env(ADI_USE_OOC_SYNTHESIS)]} {
|
||||||
set ADI_USE_OOC_SYNTHESIS 1
|
set ADI_USE_OOC_SYNTHESIS 1
|
||||||
} elseif {![info exists ADI_USE_OOC_SYNTHESIS]} {
|
} elseif {![info exists ADI_USE_OOC_SYNTHESIS]} {
|
||||||
set ADI_USE_OOC_SYNTHESIS 0
|
set ADI_USE_OOC_SYNTHESIS 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Set to enable incremental compilation
|
||||||
set ADI_USE_INCR_COMP 1
|
set ADI_USE_INCR_COMP 1
|
||||||
|
|
||||||
|
## Set to enable power optimization
|
||||||
|
set ADI_POWER_OPTIMIZATION 0
|
||||||
|
|
||||||
|
## Initialize global variables
|
||||||
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
|
||||||
set ADI_POWER_OPTIMIZATION 0
|
|
||||||
|
|
||||||
|
set p_prcfg_init ""
|
||||||
|
set p_prcfg_list ""
|
||||||
|
set p_prcfg_status ""
|
||||||
|
|
||||||
|
## Creates a Xilinx project.
|
||||||
|
#
|
||||||
|
# \param[project_name] - name of the project
|
||||||
|
# \param[mode] - if set non-project mode will be used, otherwise project mode
|
||||||
|
# flow, see UG892 for more information
|
||||||
|
# \param[parameter_list] - a list of global parameters (parameters of the
|
||||||
|
# system_top module)
|
||||||
|
#
|
||||||
|
# Supported carrier names are: ac701, kc705, vc707, vcu118, kcu105, zed,
|
||||||
|
# microzed, zc702, zc706, mitx405, zcu102.
|
||||||
|
#
|
||||||
proc adi_project_xilinx {project_name {mode 0} {parameter_list {}} } {
|
proc adi_project_xilinx {project_name {mode 0} {parameter_list {}} } {
|
||||||
|
|
||||||
global ad_hdl_dir
|
global ad_hdl_dir
|
||||||
|
@ -186,13 +202,24 @@ proc adi_project_xilinx {project_name {mode 0} {parameter_list {}} } {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Add source files to an exiting project.
|
||||||
|
#
|
||||||
|
# \param[project_name] - name of the project
|
||||||
|
# \param[project_files] - list of project files
|
||||||
|
#
|
||||||
proc adi_project_files {project_name project_files} {
|
proc adi_project_files {project_name project_files} {
|
||||||
|
|
||||||
add_files -norecurse -fileset sources_1 $project_files
|
add_files -norecurse -fileset sources_1 $project_files
|
||||||
|
# NOTE: top file name is always system_top
|
||||||
set_property top system_top [current_fileset]
|
set_property top system_top [current_fileset]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Run an existing project (generate bit stream).
|
||||||
|
#
|
||||||
|
# \param[project_name] - name of the project
|
||||||
|
#
|
||||||
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
|
global ADI_USE_OOC_SYNTHESIS
|
||||||
|
|
||||||
|
@ -240,6 +267,13 @@ proc adi_project_run {project_name} {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Run synthesis on an partial design; use it in Partial Reconfiguration flow.
|
||||||
|
#
|
||||||
|
# \param[project_name] - project name
|
||||||
|
# \param[prcfg_name] - name of the partial design
|
||||||
|
# \param[hdl_files] - hdl source of the partial design
|
||||||
|
# \param[xdc_files] - XDC constraint source of the partial design
|
||||||
|
#
|
||||||
proc adi_project_synth {project_name prcfg_name hdl_files {xdc_files ""}} {
|
proc adi_project_synth {project_name prcfg_name hdl_files {xdc_files ""}} {
|
||||||
|
|
||||||
global p_device
|
global p_device
|
||||||
|
@ -266,6 +300,13 @@ proc adi_project_synth {project_name prcfg_name hdl_files {xdc_files ""}} {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Run implementation on an partial design; use it in Partial Reconfiguration
|
||||||
|
# flow.
|
||||||
|
#
|
||||||
|
# \param[project_name] - project name
|
||||||
|
# \param[prcfg_name] - name of the partial design
|
||||||
|
# \param[xdc_files] - XDC constraint source of the partial design
|
||||||
|
#
|
||||||
proc adi_project_impl {project_name prcfg_name {xdc_files ""}} {
|
proc adi_project_impl {project_name prcfg_name {xdc_files ""}} {
|
||||||
|
|
||||||
global p_device
|
global p_device
|
||||||
|
@ -330,9 +371,16 @@ proc adi_project_impl {project_name prcfg_name {xdc_files ""}} {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
## Verify an implemented partial reconfiguration design, checks if all the
|
||||||
|
# partial design are compatible with the base design.
|
||||||
|
#
|
||||||
|
# \param[project_name] - project name
|
||||||
|
#
|
||||||
proc adi_project_verify {project_name} {
|
proc adi_project_verify {project_name} {
|
||||||
|
|
||||||
|
# checkpoint for the default design
|
||||||
global p_prcfg_init
|
global p_prcfg_init
|
||||||
|
# list of checkpoints with all the PRs integrated into the default design
|
||||||
global p_prcfg_list
|
global p_prcfg_list
|
||||||
global p_prcfg_status
|
global p_prcfg_status
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue