【tcl学习】vivado write_project_tcl

2020-08-17 16:39:44 浏览数 (2)

每次创建vivado工程时都会生成大量的文件,这样一方面导致占用的磁盘空间很大,另一方面也不利于vivado工程的copy和github上传等操作。这里教大家一个简单又实用的方法,将工程保存成xxx.tcl,只保留ip ,verilog/vhdl和xdc等必要文件即可。

1 write_project_tcl

目的:导出Tcl脚本以重新创建当前项目

语法

代码语言:javascript复制
write_project_tcl [‑paths_relative_to <arg>]
                  [‑origin_dir_override <arg>]
                  [‑target_proj_dir <arg>] 
                  [‑force] 
                  [‑all_properties]
                  [‑no_copy_sources]
                  [‑no_ip_version]
                  [‑absolute_path] 
                  [‑dump_project_info] 
                  [‑use_bd_files]
                  [‑internal] 
                  [‑quiet] 
                  [‑verbose] 
                  <file>

使用说明

代码语言:javascript复制
[-paths_relative_to]覆盖源文件的引用目录变量相对路径默认值:
脚本输出目录路径
[-origin_dir_override]将“origin_dir”目录变量设置为指定值
(默认值是使用-paths_relative_to switch指定的值)默认值:无
[-target_proj_dir]需要还原项目的目录默认值:当前项目目录路径
[-force]覆盖现有的tcl脚本文件
[-all_properties]写入项目的所有属性(默认和非默认)对象
[-no_copy_sources]即使源文件在原始文件中是本地的,也不要导入它们
项目默认值:1
[-no_ip_version]标志以不将ip版本作为ip VLNV的一部分包含在中
创建“单元”命令。默认值:1
[-absolute_path]将所有文件路径设为绝对路径,与原始项目目录相对应
[-dump_project_info]写入对象值
[-use_bd_files]直接使用bd源,而不是将procs写到创造他们
[-internal]在生成的tcl脚本中打印基本头信息
[-quiet]安静地执行命令,不返回来自命令。
[-verbose]在命令执行期间挂起消息限制
<file>要生成的tcl脚本文件的名称

举例

下面的示例为被命名recreate.tcl对于当前项目:

代码语言:javascript复制
write_project_tcl recreate.tcl

以下命令导出当前项目的Tcl脚本并写入所有属性,包括默认值或非默认值:

代码语言:javascript复制
write_project_tcl -all_properties recreate.tcl

0 人点赞