开云-【vivado约束学习二】 IO延时约束

【vivado束缚进修二】 IO延时束缚 时候:2024-12-13 15:20:16 手机看文章

扫描二维码随时随地手机看文章

【vivado束缚进修二】 IO延时束缚

1 I/O延迟束缚介绍

要在设计中切确建模外部时序,必需为输入和输出端口供给时序信息。Xilinx Vivado集成设计情况(IDE)仅在FPGA鸿沟内辨认时序,是以必需利用以下号令指定超越这些鸿沟的延迟值:1,set_input_delay2,set_output_delay

2 输入延迟(Input Delay)

set_input_delay号令指定输入端口上相对设计接口处时钟边缘的输入路径延迟。在斟酌利用板时,输入延迟暗示以下各项之间的相位差:A.数据从外部芯片经由过程电路板传布到FPGA的输入封装引脚。B.相干的板上参考时钟输入延迟值可所以正的或负的,这取决在装备接口处的时钟和数据相对相位。固然-clock选项在Synopsys设计束缚(SDC)尺度中是可选的,但它是Vivado IDE所必须的。相对时钟可所以设计时钟或虚拟时钟。利用set_input_delay号令选项例1:此示例界说了相对先前界说的sysClk的输入延迟,用在最小和最年夜阐发。

 create_clock -name sysClk -period 10 [get_ports CLK0] set_input_delay -clock sysClk 2 [get_ports DIN] 

例2:此示例界说相对先前界说的虚拟时钟的输入延迟。

 create_clock -name clk_port_virt -period 10 set_input_delay -clock clk_port_virt 2 [get_ports DIN] 

例3:此示例为min阐发和最年夜阐发相对sysClk的界说了分歧的输入延迟值。

 create_clock -name sysClk -period 10 [get_ports CLK0] set_input_delay -clock sysClk -max 4 [get_ports DIN] set_input_delay -clock sysClk -min 1 [get_ports DIN]

例4:要限制I / O端口之间的纯组合路径,必需在I / O端口上相对先前界说的虚拟时钟界说输入和输出延迟。以下示例在端口DIN和DOUT之间的组合路径上设置5 ns(10 ns - 4 ns - 1 ns)束缚:

 create_clock -name sysClk -period 10 [get_ports CLK0] set_input_delay -clock sysClk 4 [get_ports DIN] set_output_delay -clock sysClk 1 [get_ports DOUT]

例5:此示例指定相对DDR时钟的输入延迟值。

 create_clock -name clk_ddr -period 6 [get_ports DDR_CLK_IN] set_input_delay -clock clk_ddr -max 2.1 [get_ports DDR_IN] set_input_delay -clock clk_ddr -max 1.9 [get_ports DDR_IN] -clock_fall -add_delay set_input_delay -clock clk_ddr -min 0.9 [get_ports DDR_IN] set_input_delay -clock clk_ddr -min 1.1 [get_ports DDR_IN] -clock_fall -add_delay

3 输出延迟(Output Delay)set_output_delay号令指定输出端口相对设计接口处的时钟边缘的输前途径延迟。在斟酌开辟板时,此延迟暗示以下二者之间的相位差:A.数据从FPGA的输出封装引脚传布,经由过程电路板传输到另外一个器件B. 相对参考板时钟。输出延迟值可所以正数或负数,具体取决在FPGA外部的时钟和数据相对相位。利用set_output_delay号令选项:例1:此示例界说了相对先前界说的sysClk的输出延迟,用在最小和最年夜阐发。

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

例2:此示例界说相对先前界说的虚拟时钟的输出延迟。

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

例3:此示例指定相对DDR时钟的输出延迟值,其具有效在min(hold)和max(setup)阐发的分歧值。

 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
欲知详情,请下载word文档 下载文档

上一篇:开云-Intel 下一篇:开云-优化 FPGA HLS 设计