FPGA, SoC, And CPLD Boards And Kits
FPGA Evaluation and Development Kits

Using the -add_delay switch

SKon1
Novice
590 Views

Hello,

 

I'm setting an output delays on DDR interface for a signal named "valid" relative to a clock named "clock" as follows:

 

set_output_delay -clock clock -max -0.9 [get_ports {valid}] 

set_output_delay -clock clock -min -2.7 [get_ports {valid}] 

set_output_delay -clock clock -clock_fall -max -0.9 [get_ports {valid}] -add_delay

set_output_delay -clock clock -clock_fall -min -2.7 [get_ports {valid}] -add_delay

 

As far as I understand - a port can have only one -max and one -min delay assinged to it. If more then one is used, the first will be overwritten - UNLESS -add_delay is used.

This is why -add_delay was added when setting the relationship for the falling edge of edge of the clock.

Is this correct ?

Or should I use -add_delay also for the first set ? As follows :

 

set_output_delay -clock clock -max -0.9 [get_ports {valid}] -add_delay 

set_output_delay -clock clock -min -2.7 [get_ports {valid}] -add_delay 

set_output_delay -clock clock -clock_fall -max -0.9 [get_ports {valid}] -add_delay

set_output_delay -clock clock -clock_fall -min -2.7 [get_ports {valid}] -add_delay

0 Kudos
1 Reply
KhaiChein_Y_Intel
538 Views

Hi,

 

You may refer to https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/an/an433.pdf (Example 2):

 

set_output_delay -clock [get_clocks output_clk] -max 2 [get_ports data_out] set_output_delay -clock [get_clocks output_clk] -min -1 [get_ports data_out] -add_delay

set_output_delay -clock [get_clocks output_clk] -max 2 -clock_fall [get_ports data_out] -add_delay

set_output_delay -clock [get_clocks output_clk] -min -1 -clock_fall [get_ports data_out] -add_delay

 

Thanks.

Best regards,

KhaiY

0 Kudos
Reply