模板王网站官网,印刷网站建设价格,线条类网站,结构优化关于约束方法
设计约束定义了编译流必须满足的要求#xff0c;以便设计要在板上发挥作用。中的所有步骤都不使用所有约束编译流程。例如#xff0c;物理约束仅在实施过程中使用步骤#xff08;即通过放置器和路由器#xff09;。因为AMD Vivado™集成设计环境#xff08;…关于约束方法
设计约束定义了编译流必须满足的要求以便设计要在板上发挥作用。中的所有步骤都不使用所有约束编译流程。例如物理约束仅在实施过程中使用步骤即通过放置器和路由器。因为AMD Vivado™集成设计环境IDE的综合与实现算法是定时驱动的您必须创建适当的定时约束。过度约束或设计约束不足会使时间闭合变得困难。你必须使用合理的与您的应用程序需求相对应的约束。
组织约束
Vivado IDE允许您使用一个或多个约束文件。使用单个约束文件时因为整个编译流程看起来更方便所以维护所有程序可能是一个挑战随着设计变得越来越复杂限制也越来越大。这种情况通常适用于使用由不同团队开发的几个IP核心或大块。导入时间和物理约束后与数量无关源文件或者无论设计是在项目模式还是非项目模式下所有约束都可以使用write_xdc命令导出为单个文件。约束被写入指定的输出文件其顺序与将它们读入项目或设计的顺序相同。这个命令行选项write_xdc-type可以用于选择约束的子集定时物理或弃权。
项目流程
您可以在创建期间将Xilinx设计约束XDC文件添加到约束集新项目或更高版本。下图显示了项目中的两个约束集它们是单XDC或多XDC。这个第一个约束集包括两个XDC文件。第二个约束集仅使用一个XDC文件包含所有约束。 还可以将Tcl脚本添加到约束集中作为非托管约束或非托管Tcl脚本。Vivado Design Suite不会将修改后的约束写回非托管Tcl剧本Tcl脚本和XDC文件的加载顺序与Vivado IDE中显示的顺序相同
如果它们属于同一PROCESSING_ORDER组或由命令报告report_compile_order-约束。
如果需要可以在多个约束集中使用XDC文件或Tcl脚本。
非项目流程
在非项目模式下在执行编译之前必须单独读取每个文件命令。
下面的示例脚本显示了如何使用一个或多个XDC文件进行合成和实施 read_verilog [glob src/*.v] read_xdc wave_gen_timing.xdc read_xdc wave_gen_pins.xdc synth_design -top wave_gen -part xc7k325tffg900-2 opt_design place_design route_design 断章取义的约束
在使用动态函数eXchangeDFX的设计中通常会合成断章取义的设计OOC方法。当使用这样的流时一些约束可以是仅为OOC合成指定。例如在输入边界传播的时钟当块被OOC合成时必须定义块的。这些时钟是定义的在OOC XDC文件中。
在项目模式下 add_file constraints_ooc.xdc set_property USED_IN {synthesis out_of_context} [get_files constraints_ooc.xdc] 也可以通过GUI文件上的属性constraints_oc.xdc。 非工程模式 read_xdc -mode out_of_context constraints_ooc.xdc 合成和实现约束文件 默认情况下添加到约束集的所有XDC文件和Tcl脚本都用于合成和实施在上设置USED_IN_SYNTHESIS和USED_IN_IMPLEMENTATION属性XDC文件或Tcl脚本来改变这种行为。此属性的值可以为正确或错误。 例如要仅将约束文件用于实现请执行以下操作 1.在“源”窗口中选择约束文件。 2.在“源文件属性”窗口中 a.取消选中“合成”。 b.检查执行情况。 The equivalent Tcl commands are: set_property USED_IN_SYNTHESIS false [get_files wave_gen_pins.xdc] set_property USED_IN_IMPLEMENTATION true [get_files wave_gen_pins.xdc] 在非项目模式下运行Vivado时可以直接读入任何流程的步骤。属性USED_IN_SYNTHESIS和USED_IN_IMPLEMENTATION做在这种模式下无关紧要。下面的编译Tcl脚本显示了如何为的不同步骤读取两个XDC文件流量 read_verilog [glob src/*.v] read_xdc wave_gen_timing.xdc synth_design -top wave_gen -part xc7k325tffg900-2 read_xdc wave_gen_pins.xdc opt_design place_design route_design