配置、实施和验证IP
有关在合成之前将IP导入设计的信息,请参阅“创建IP”一节Vivado Design Suite用户指南中的自定义:使用IP(UG896)进行设计。
用设计指导实施约束
有三种类型的设计约束,物理约束、时间约束和功率约束。这些定义如下。
物理约束定义物理约束定义了逻辑设计对象和设备资源之间的关系例如
•封装引脚放置。
•单元的绝对或相对位置,包括块RAM、DSP、LUT和触发器。
•将单元分配给设备的一般区域的平面布置约束。
•设备配置设置。
时间约束定义
时序约束定义了设计的频率要求,并用Xilinx编写设计约束(XDC),基于行业标准SDC。在没有时间限制的情况下,Vivado Design Suite仅针对导线长度进行优化设计并且不努力评估或改进设计性能。
功率约束定义
功率约束定义了精确功率分析所需的设置。这些设置包括:
•运行条件,如电压设置、功率和电流预算以及运行
环境详细信息。
•切换活动率:
○ 设计对象:单独的网和针。
○ 设计对象类型,如块RAM、DSP和收发器。
○ 全局设置和重置信号。
Vivado功率分析使用时序约束来确定切换速率,并应用无矢量传播,以确定整个设计中的切换速率。没有电源约束条件下,使用默认的12.5%切换速率。但是,将准确的切换活动应用于覆盖默认值对于精确的功率计算至关重要。有关更多信息,请参阅Vivado Design Suite用户指南:功率分析和优化(UG907)。
不支持UCF格式
重要!Vivado Design Suite不支持UCF格式。有关将UCF约束迁移到XDC命令的信息,请参见迁移UCF一节ISE到Vivado设计套件迁移指南(UG911)中对XDC的限制。
约束集将约束文件列表应用于您的设计
约束集是可以在项目模式下应用于设计的约束文件列表。这个集合包含在XDC或Tcl文件中捕获的设计约束。
允许的约束集结构
允许使用以下约束集结构:
•约束集中的多个约束文件
•具有单独物理和时间约束文件的约束集
•主约束文件
•接受约束更改的新约束文件
•多个约束集
提示:按函数将约束分离到不同的约束文件中,以(a)制定约束策略更明确,以及(b)促进目标时间和实施变化。
允许多个约束集
一个项目可以有多个约束集。多个约束集允许您使用运行不同的实现来测试不同的方法。例如,可以有一个用于合成的约束集,第二个用于实施有两个约束集可以通过应用不同的约束集进行实验综合、模拟和实现过程中的约束。
将设计约束组织为多个约束集可以帮助您:
•针对同一项目的各种AMD设备。不同的物理和时间限制对于不同的目标设备可能需要。
•进行假设设计探索。使用约束集探索的各种场景平面布置和过度约束设计。
•管理约束更改。在单独的中使用局部更改替代主约束约束文件。
提示:要验证时间限制,请运行report_timing_summary和report_综合设计方法论。在实施之前修复有问题的约束!有关定义和使用影响放置和布线,请参阅《Vivado Design Suite用户指南:使用约束》中的“物理约束”一节(UG903)。
将约束添加为属性语句
约束可以作为属性语句添加到HDL源中。可以将属性添加到Verilog和VHDL源都可以传递到Vivado合成或Vivado实现。在某些情况下,约束仅作为HDL属性可用,在XDC中不可用。在里面在这些情况下,必须将约束指定为HDL源文件中的属性。例如相对放置宏(RPM)必须使用HDL属性进行定义。RPM是一组逻辑具有相对位置的元件(如FF、LUT、DSP和RAM)。可以使用U_SET和HU_SET属性定义RPM,并使用定义相对位置相对位置属性。有关相对位置约束的详细信息,请参见移植UCF一节Vivado Design Suite用户指南中对XDC的限制:使用限制(UG903)。有关XDC中不支持的约束的更多信息,请参阅ISE到Vivado设计套件迁移指南(UG911)。
使用检查点保存和恢复设计快照
Vivado Design Suite使用物理设计数据库来存储布局和布线信息设计检查点文件(.dcp)允许您在中保存和恢复此物理数据库设计流程中的关键点。检查点是设计在流此设计检查点文件包括:
•当前网表,包括在实施过程中进行的任何优化
•设计约束
•实施结果
检查点设计可以使用Tcl命令贯穿设计流的其余部分。它们不能使用新的设计源进行修改。
重要!在项目模式下,Vivado设计工具会自动将检查点保存和恢复为设计进展。在非项目模式下,必须在设计的适当阶段保存检查点否则,就会失去进展。
写入检查点文件
运行文件 → 检查点 → 写入以在中的任何点捕获设计数据库的快照流这将创建一个扩展名为dcp的文件。相关的Tcl命令是write_checkpoint。
正在读取检查点文件
运行文件 → 检查点 → Open打开Vivado Design Suite中的检查点。设计检查点是作为单独的内存设计打开的。相关的Tcl命令是open_checkpoint。