vivado 输出延迟

输出延迟

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[*]]

相关推荐
FPGA小c鸡1 天前
PCIe接口详解:从协议原理到FPGA实现的完整指南
fpga开发
良许Linux1 天前
FPGA原理和应用
stm32·单片机·fpga开发·程序员·嵌入式·编程
Hello.Reader1 天前
Flink External Resource Framework让作业“原生”申请 GPU/FPGA 等外部资源
大数据·fpga开发·flink
嵌入式-老费2 天前
Linux Camera驱动开发(fpga vs soc)
驱动开发·fpga开发
太空1号2 天前
SystemVerilog小白入门3,UVM的uvm_object初体验
fpga开发
FakeOccupational2 天前
【电路笔记 元器件】存储设备:RAM 静态随机存取存储器(SRAM)芯片+异步 SRAM 的特性+异步 SRAM读写测试(HDL)
笔记·fpga开发
嵌入式×边缘AI:打怪升级日志2 天前
环境监测传感器从设备程序设计(ADC采集与输出控制)
单片机·嵌入式硬件·fpga开发
dadaobusi2 天前
verilog,generate语句
fpga开发
码不停蹄Zzz3 天前
GTX DRP动态重配置技术
fpga开发
LeoZY_3 天前
CH347/339W开源项目:集SPI、I2C、JTAG、SWD、UART、GPIO多功能为一体(5)
stm32·mcu·fpga开发·开源·硬件架构·硬件工程