Altera_Forum
Honored Contributor
12 years agoTiming Constraint problem on set_input_delay for Video LVDS Rx
Hi,I encountered another problem.
If a input signal is data and also clock,like LVDS transceiver for video,then there is a problem. create_clock -add -name {Ext_LVDSClkA} -period 16.666 -waveform {0 9.523} [get_ports {LVDS_CK}] create_clock -add -name {Ext_LVDS_fast_ClkA} -period 4.761 -waveform {0 2.380} create_generated_clock -name {Int_PCLKA} -divide_by 1 -multiply_by 1 -phase 0 -source [get_pins u_ClkGen|u_Rx0PLL|altpll_component|auto_generated| pll1|inclk[0]] [get_pins {u_ClkGen|u_Rx0PLL|altpll_component|auto_generated |pll1|clk[0]}] -add create_generated_clock -name {Int_PCLKA_2X} -divide_by 1 -multiply_by 2 -phase 0 -source [get_pins u_ClkGen|u_Rx0PLL|altpll_component|auto_generated| pll1|inclk[0]] [get_pins {u_ClkGen|u_Rx0PLL|altpll_component|auto_generated |pll1|clk[1]}] -add create_generated_clock -name {Int_IOCLKA} -divide_by 2 -multiply_by 7 -phase 56.25 -source [get_pins u_ClkGen|u_Rx0PLL|altpll_component|auto_generated| pll1|inclk[0]] [get_pins {u_ClkGen|u_Rx0PLL|altpll_component|auto_generated |pll1|clk[2]}] -add set tCO_max 0.5 set tCO_min -0.2 set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -max [expr $tCO_max] [get_ports {LVDS_DT [*]}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -min [expr $tCO_min] [get_ports {LVDS_DT [*]}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -clock_fall -max [expr $tCO_max] [get_ports {LVDS_DT [*]}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -clock_fall -min [expr $tCO_min] [get_ports {LVDS_DT [*]}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -max [expr $tCO_max] [get_ports {LVDS_CK}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -min [expr $tCO_min] [get_ports {LVDS_CK}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -clock_fall -max [expr $tCO_max] [get_ports {LVDS_CK}] set_input_delay -add_delay -clock [get_clocks {Ext_LVDS_fast_ClkA}] -clock_fall -min [expr $tCO_min] [get_ports {LVDS_CK}] set_false_path -setup -rise_from [get_clocks {Ext_LVDS_fast_ClkA}] -rise_to [get_clocks {Int_IOCLKA}] set_false_path -setup -fall_from [get_clocks {Ext_LVDS_fast_ClkA}] -fall_to [get_clocks {Int_IOCLKA}] set_false_path -hold -rise_from [get_clocks {Ext_LVDS_fast_ClkA}] -fall_to [get_clocks {Int_IOCLKA}] set_false_path -hold -fall_from [get_clocks {Ext_LVDS_fast_ClkA}] -rise_to [get_clocks {Int_IOCLKA}] set_multicycle_path -end -hold -from [get_clocks {Ext_LVDS_fast_ClkA}] -to [get_clocks {Int_IOCLKA}] -1 set_multicycle_path -end -setup -from [get_clocks {Ext_LVDS_fast_ClkA}] -to [get_clocks {Int_IOCLKA}] 1 Is there any problem on my above timing constraint? And, In the TimeQuest Timing Analyzer tool,the launch clock of LVDS_A_CK is Ext_LVDSClkA not Ext_LVDS_fast_ClkA.I don't know why the launch clock is not Ext_LVDS_fast_ClkA.