跳至内容
深圳市捷比信实业有限公司 · 产品选型与采购咨询联系业务人员
超小封装电容捷比信 · 专业器件主题站

如何使用Tcl来实现Vivado设计流程介绍

Vivado有两种工作模式:项目模式和非项目模式。这两种模式都可以在VivadoIDE或Tcl命令的帮助下运行。相反,VivadoIDE为项目模式提供了更多好处,而Tcl命令使运行非项目模式更加容易。在项目模式下,Vivado将自动管理整个设计过程和文件数据。最直接的体现是,从设计输入到最终位文件生成,所有过程都将显示在Vivado左侧导航中的FlowNavigator下。同时,Vivado将自动创建相应的文件目录,生成相应的文件,例如dcp和相应的报告。非项目模式是一个内存编译过程。用户可以从指定位置将文件读取到内存中,然后进行编译。每个步骤,例如合成,布局,布线等,都可以逐步执行,并可以根据需要设置编译参数。所有这些都可以通过Tcl命令来完成。显然,在非项目模式下,用户可以通过Tcl命令管理设计文件和设计过程,这反映了此模式的主要优势,即用户可以完全控制设计过程。下图显示了Project模式和非Project模式之间的主要区别。不难看出,在项目模式下,更多的管理和操作是“自动”完成的。而在非项目模式下,则是“手动”完成的。从Tcl命令的角度来看,项目和非项目模式也不同,如下图所示。在项目模式下使用的Tcl命令是打包命令。例如,add_files是添加设计文件所必需的。这些文件可以是HDL(包括VHDL,Verilog或SystemVerilog),约束文件(包括.xdc或.tcl),也可以是网表文件(可以是dcp,ngc或edif)等。在实施期间,命令launch_runs可以根据指定的策略完成所有步骤,包括生成相应的DCP。非项目模式下使用的Tcl命令是离散的。例如,要读取设计文件,如果它是VHDL,则需要使用read_vhdl;如果是Verilog,则需要使用read_verilog;如果是.xdc,则需要使用read_xdc。如果为DCP,则需要read_checkpoint;否则为false。如果是EDIF,则需要read_edif。在实现中,需要分别使用opt_design,place_design,phys_opt_design,route_design等。因为Tcl命令使在非项目模式下运行变得更加容易,所以在这里我们将介绍如何使用Tcl命令在非项目模式下完成所有步骤。