RTL综合中的多线程
在多处理器系统上,RTL合成默认情况下利用多个CPU核心(最多四个)来加快编译时间。同时运行的线程的最大数量会有所不同,具体取决于处理器的数量可在系统、操作系统和流程阶段使用(请参阅Vivado Design Suite用户指南:实施(UG904))。general.maxThreads-Tcl参数是Vivado中所有线程通用的,它为您提供控件,以指定运行RTL合成时要使用的线程数。例如
Vivado% set_param general.maxThreads <new limit>
其中<new limit>必须是从1到8的整数。对于RTL合成,4是可以有效设置的最大线程数。
Tcl脚本示例
以下是synth_design Tcl脚本的示例:
# Setup design sources and constraints
read_vhdl -library bftLib [ glob ./Sources/hdl/bftLib/*.vhdl ]
read_vhdl ./Sources/hdl/bft.vhdl
read_verilog [ glob ./Sources/hdl/*.v ]
read_xdc ./Sources/bft_full.xdc
# Run synthesis
synth_design -top bft -part xc7k70tfbg484-2 -flatten_hierarchy rebuilt
# Write design checkpoint
write_checkpoint -force $outputDir/post_synth
# Write report utilization and timing estimates
report_utilization -file utilization.txt
report_timing > timing.txt
设置约束
下表显示了Vivado时序约束所支持的Tcl命令。命令链接到更多信息请参阅Vivado Design Suite Tcl命令参考指南(UG835)中的完整描述。
Vivado预配置策略
下表显示了预配置的策略及其各自的设置。