I/O延迟约束
关于限制I/O延迟
要在设计中准确地模拟外部计时上下文,必须提供计时信息用于输入和输出端口。因为AMD Vivado™集成设计环境(IDE)只能在FPGA的边界内识别时序,必须使用以下方法用于指定存在于这些边界之外的延迟值的命令:
set_input_delay
set_output_delay
输入延迟
set_input_delay命令指定输入端口上相对于时钟边缘的接口设计。
当考虑应用板时,输入延迟表示相位差
介于:
1.从外部芯片通过板传播到的输入封装引脚的数据FPGA,以及
2.相对基准板时钟。
因此,输入延迟值可以是正的或负的,这取决于时钟和数据设备接口处的相对相位。
使用输入延迟选项
尽管在Synopsys设计约束(SDC)标准中,cl服务器托管网ock选项是可选的,但它是Vivado IDE所要求的。相对时钟可以是设计时钟,也可以是虚拟时钟。
输入延迟命令选项包括:
•最小和最大输入延迟命令选项
•时钟下降输入延迟命令选项
•添加延迟输入延迟命令选项
最小和最大输入延迟命令选项
-min和-max选项为以下项指定不同的值:
•最小延迟分析(保持/移除)
•最大延迟分析(设置/恢复)
如果两者都不使用,则输入延迟值同时适用于最小值和最大值。
时钟下降输入延迟命令选项
-clock_fall选项指定输入延迟约束应用于定时路径由相对时钟的下降时钟边缘启动。如果没有此选项,Vivado IDE仅假定相对时钟的上升沿。不要将-clock_fall选项与-rise和-fall选项混淆。这些选项参考数据边缘而不是时钟边缘。
添加延迟输入延迟命令选项
在以下情况下,必须使用-add_delay选项:
•存在最大(或最小)输入延迟约束,以及
•您希望在同一端口上指定第二个最大(或最小)输入延迟约束。该选项通常用于相对于多于一个时钟边缘约束输入端口,例如DDR接口。
您可以仅将输入延迟约束应用于输入或双向端口,不包括时钟输入端口,这些端口将被自动忽略。不能将输入延迟约束应用于内部大头针set_input_delay命令选项的使用以下示例介绍了set_input_delay命令选项的典型用法。对于有关输入延迟约束方法的其他信息,请参阅超快中的此链接FPGA和SoC的设计方法指南(UG949)。
输入延迟示例一
此示例定义了相对于先前定义的最小和最大sysClk的输入延迟分析。
输入延迟示例二
该示例定义了相对于先前定义的虚拟时钟的输入延迟。
输入延迟示例三
此示例定义了相对于的最小分析和最大分析的不同输入延迟值sysClk。
输入延迟示例四
要约束I/O端口之间的纯组合路径,输入和输出延迟必须为相对于先前定义的虚拟时钟在I/O端口上定义。下面的例子在之间的组合路径上设置了一个5 ns(10 ns-4 ns-1 ns)的约束端口DIN和DOUT:
有关约束组合路径的更多信息,请参阅组合延迟
使用“时间约束”向导。
输入延迟示例五
此示例指定相对于DDR时钟的输入延迟值。
此示例根据的上升沿和下降沿启动的数据创建约束设备外部的clk_ddr时钟到对敏感的内部触发器的数据输入上升和下降时钟边沿。
输入延迟示例六
此示例指定STARTUPE3内部引脚(UltraScale+设备)对从STARTUPE3到结构的路径进行计时。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
命令行程序是平时写一些小工具时最常用的方式。 为了让命令行程序更加灵活,我们常常会设置一些参数,根据参数让程序执行不同的功能。这样就不用频繁的修改代码来执行不同的功能。 随着命令行程序功能的丰富,也就是参数多了以后,解析和管理参数之间的关系会变得越来越繁重。而…