通过get_port命令查看接口。
get_ports *
![图片[1]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144300658-21729320180.png?v=1729320181)
以LVDS的输入输出为例
怎样去查看output delay
set_output_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~218~131}] -min -0.140 [get_ports {tmds_data0_o[*]}]
在tcl command Console中输入以下语句,可以查看到它的约束情况。
report_timing -through [get_pins {tmds_data1_o[*]~FF|Q}] -hold
![图片[2]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144302238-61729320182.png?v=1729320182)
可以看到在约束中已经把Output Delay在Caputure Path中减去。当然我认为加在Launch Path Delay中也是可以的。
怎样去查看input delay是否生效
set_input_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~1~283}] -max 0.512 [get_ports {hdmi_rx_d0_RX_DATA[*]}]
set_input_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~1~283}] -min 0.342 [get_ports {hdmi_rx_d0_RX_DATA[*]}]
set_input_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~1~208}] -max 0.512 [get_ports {hdmi_rx_d1_RX_DATA[*]}]
set_input_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~1~208}] -min 0.342 [get_ports {hdmi_rx_d1_RX_DATA[*]}]
set_input_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~1~225}] -max 0.512 [get_ports {hdmi_rx_d2_RX_DATA[*]}]
set_input_delay -clock hdmi_rx_slow_clk -reference_pin [get_ports {hdmi_rx_slow_clk~CLKOUT~1~225}] -min 0.342 [get_ports {hdmi_rx_d2_RX_DATA[*]}]
report_timing -from [get_ports {hdmi_rx_d0_RX_DATA[*]}] -hold
![图片[3]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144303369-101729320183.png?v=1729320183)
可以看到在约束中已经把Input Delay在Launch Path中加上。
对于单端
当HPD_N是同步IO时。
这里使用的时钟是osc_clk
![图片[4]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144304647-51729320184.png?v=1729320184)
HPD_N是一个单端非同步输出信号
create_clock -period 25 [get_ports {osc_clk}]
create_clock -period 25 -name vir_osc_clk
report_timing -through [get_nets {HPD_N}]
![图片[5]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144305189-31729320185.png?v=1729320185)
set_input_delay -clock vir_osc_clk -max 2.0 [get_ports {HDMI_5V_N}]
set_input_delay -clock vir_osc_clk -min 1.8 [get_ports {HDMI_5V_N}]
通过以下指令来打印信息
report_timing -from [get_ports {HDMI_5V_N}]
使用npaths可以打印出多条路径。
程序上实现如下:
assign hdmi_rx_hpd_n = ~hdmi_rx_5v_n ? 1'b0 : rx_hpd;
![图片[6]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144306526-11729320186.png?v=1729320186)
第二条
![图片[7]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144307701-101729320187.png?v=1729320187)
三态信号
report_timing -from [get_ports {FPGA_HDMI_SCL_IN}]
![图片[8]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144308152-21729320188.png?v=1729320188)
report_timing -to [get_nets {FPGA_HDMI_SDA_OE}]
![图片[9]-怎样查看input/output delay是否生效-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019144309803-61729320189.png?v=1729320189)





没有回复内容