Vivado支持两种约束输入方式:User Interface和Hand Edit。
User Interface
Vivado管理约束文件,用户通过Vivado提供的GUI来输入约束,如I/O Ports窗口、Timing Constraints Wizard窗口、Edit Timing Constraints窗口等等。
通过Save Constraints操作将约束保存至约束文件中:
1. Saves all new constraints to the XDC file marked target in the constraints set associated with your design.
2. Saves all edited constraints back to the XDC file from which they originated.
Hand Edit
用户管理约束文件,用户通过Text Editor打开约束文件后,直接输入约束。
User Interface和Hand Edit之间的关系
Load your design in memory等同于Open Design,包括Open Elaborated Design、Open Synthesized Design和Open Implemented Design。Open Design主要内容如下:
1. The Vivado IDE uses a concept of opening designs in memory.
2. Opening a design loads the design netlist at that particular stage of the design flow, assigns the constraints to the design, and then applies the design to the target device.
3. This provides the ability to visualize and interact with the design at each design stage.
两种约束输入方式关系如下:
1. Do not use both options at the same time. Mixing these options might cause you to lose constraints.
2. Constraints creation is iterative. You can use IDE editors in some cases, and hand edit the constraint files in others.
3. If you switch between the two options, you must first save your constraints or reload your design, to ensure that the constraints in memory are properly synchronized with the XDC files.
以上三点总结如下:
1. 两种约束输入方式不可同时使用;
2. 约束的创建过程是一个反复迭代的过程,不同的情况下使用不同的约束输入方式;
3. 当从User Inteface切换到Hand Edit时,要先将输入的约束保存;当从Hand Edit切换到User Interface时,要先Reload Design;