vivado 输出延迟

本文详细解释了如何在FPGA设计中使用VivadoDesignSuite的`set_output_delay`命令来设定输出延迟,包括最小/最大延迟分析、时钟下降沿约束,以及针对不同时钟边缘和接口的应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

输出延迟

set_output_delay命令指定输出端口相对于设计接口处的时钟边缘。

当考虑应用板时,此延迟表示以下各项之间的相位差:

1.数据从FPGA的输出封装引脚通过板传播到另一个设备,以及

2.相对基准板时钟。

输出延迟值可以是正的,也可以是负的,这取决于相对的时钟和数据相位在FPGA之外。

使用输出延迟选项

尽管-clock选项在SDC标准中是可选的,但Vivado Design需要它套件工具。

相对时钟可以是设计时钟,也可以是虚拟时钟。

输出延迟命令选项包括:

•最小和最大输出延迟命令选项

•时钟下降输出延迟命令选项

•添加延迟输出延迟命令选项

最小和最大输出延迟命令选项

-min和-max选项为最小延迟分析(保持/删除)和最大延迟分析(设置/恢复)。如果两者都不使用,则输出延迟值适用于两个最小值和最大。

时钟下降输出延迟命令选项

-clock_fall选项指定输出延迟约束应用于定时路径由相对时钟的下降时钟沿捕获。如果没有此选项,Vivado IDE默认情况下仅假设相对时钟的上升沿(在设备外部)。不要将-clock_fall选项与-rise和-fall选项混淆。这些选项指的是数据边缘而不是时钟边缘。

添加延迟输出延迟命令选项

在以下情况下,必须使用-add_delay选项:

•最大输出延迟约束已经存在,并且

•您希望在同一端口上指定第二个最大输出延迟约束。

对于最小输出延迟约束也是如此。此选项通常用于约束相对于一个以上时钟边沿的输出端口,例如DDR中的上升沿和下降沿接口,或者当输出端口连接到使用不同时钟的几个设备时。

set_output_delay命令选项的使用

以下示例介绍了set_output_delay命令选项的典型用法。对于有关输出延迟约束方法的其他信息,请参阅中的此链接《FPGA和SoC的超快设计方法指南》(UG949)。

输出延迟示例一

此示例定义了相对于先前定义的sysClk的min和的输出延迟最大分析。

> create_clock -name sysClk -period 10 [get_ports CLK0]
> set_output_delay -clock sysClk 6 [get_ports DOUT]

输出延迟示例二

此示例定义了相对于先前定义的虚拟时钟的输出延迟。

> create_clock -name clk_port_virt -period 10
> set_output_delay -clock clk_port_virt 6 [get_ports DOUT]

输出延迟示例三

此示例指定相对于DDR时钟的输出延迟值,该值为min的不同值(保持)和最大(设置)分析。

> create_clock -name clk_ddr -period 6 [get_ports DDR_CLK_IN]
> set_output_delay -clock clk_ddr -max 2.1 [get_ports DDR_OUT]
> set_output_delay -clock clk_ddr -max 1.9 [get_ports DDR_OUT] -clock_fall -
add_delay
> set_output_delay -clock clk_ddr -min 0.9 [get_ports DDR_OUT]
> set_output_delay -clock clk_ddr -min 1.1 [get_ports DDR_OUT] -clock_fall -
add_delay

此示例根据的上升沿和下降沿启动的数据创建约束设备外部的clk_ddr时钟,到对两者都敏感的内部触发器的数据输出上升和下降时钟边沿。

输出延迟示例四

此示例指定STARTUPE3内部引脚(UltraScale+设备)对从结构到STARTUPE3的路径进行计时。

> create_generated_clock -name clk_sck -source [get_pins -hierarchical
*axi_quad_spi_0/ext_spi_clk] [get_pins STARTUP/CCLK] -edges {3 5 7}
> set_output_delay -clock clk_sck -max 6 [get_pins STARTUP/DATA_OUT[*]]
> set_output_delay -clock clk_sck -min 1 [get_pins STARTUP/DATA_OUT[*]]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cckkppll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值