时序约束优先级_时序约束策略 - 数字ICer博客 - OSCHINA - 中文开源技术交流社区...

本文详细介绍了数字IC设计中的时序约束,包括IO约束、时钟周期约束、多周期约束、伪路径以及XDC约束优先级。内容涵盖管脚约束、延迟约束、时钟创建、时钟分组、虚拟时钟、多周期路径设置和伪路径约束,旨在帮助读者深入理解时序约束策略及其在实践中的应用。
摘要由CSDN通过智能技术生成

本文是对网上时序约束相关文章进行学习记录;

主要来源公众号:科学计算Tech

目录

1.IO约束

2.时钟周期约束

3.多周期约束

4.伪路径

5.XDC约束优先级

1

IO约束

1.1管脚约束

管脚约束指管脚分配,我们要指定管脚的位置PACKAGE_PIN和管脚对应的电平标准IOSTANDARD两个属性的值;

set_property PACKAGE_PIN AD8 [get_ports srio_rxp0]

1.2延迟约束

延迟约束用的是set_input_delay和set_output_delay,分别用于input端和output端,其时钟源可以是时钟输入管脚,也可以是虚拟时钟。

set_input_delay

从图中可以得到:T_inputdelay = Tco + TD

从图中可以得到:上游器件和FPGA的时钟沿是同时到达的,但是上游器件发送的数据在到达接收端的时候比时钟沿要延迟1-2ns之间,当满足图中的时序时,最大延迟为2ns,最小延迟为1ns。

设置方式为:

create_clock -name sysclk -period 10 [get_ports clkin]set_input_delay 2 -max -clock sysclk [get_ports Datain]set_input_delay 1 -min -clock sysclk [get_ports Datain]

set_output_delay

set_output_delay的用法跟set_input_delay相似;

02

时钟周期约束

2.1 Create_clock

在Vivado中使用create_clock来创建时钟周期约束。使用方法为:

create_clock -period 8.333 -name jesd_refclk_p [get_ports jesd_refclk_p]

如何确定主时钟是时钟周期约束的关键,可以借助Tcl脚本判断;

在Open Synthesized Design或者Open Implementation Design之后,并通过以下两种方式查看主时钟。

方式一

运行tcl指令report_clock_networks -name mainclock,显示结果如下:

方式二

运行tcl指令check_timing -override_defaults no_clock,显示结果如下:

使用report_clocks指令可以查看约束是否生效。执行report_clocks后,如下所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值