cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Contributor
Contributor
3,597 Views
Registered: ‎04-17-2017

Negative output delay

Jump to solution

Hello,

   I noticed that I can set a negative output delay respect to input clock. What does a negative and a positive delay mean?

set_output_delay -clock [get_clocks *] -1.000 [get_ports [count]]

Thanks in advance.

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Guide
Guide
5,962 Views
Registered: ‎01-23-2009

The set_input_delay and set_output_delay inform the FPGA tools about the requirements of the device sending/receiving data to the FPGA.

 

For set_output_delay, the value is the setup time requirement of the receiving device. We usually think of devices needing data Tsu before the edge of the clock and require it to remain stable until Th after the edge of the clock, but different devices can have different requirements. It is not terribly uncommon for a device to need the stable data eye to be completely after the rising edge of the clock. In this case, Tsu would be negative and Th would be a positive number whose magnitude is strictly greater than the absolute value of Tsu - i.e. Th > -Tsu. This still defines a required window that has a measurable size (Th +Tsu) which is guaranteed to be positive.

 

The set_output_delay -max value is Tsu, and the set_output_delay -min value is -Th - so in this case, both would be negative.

 

Avrum

View solution in original post

1 Reply
Highlighted
Guide
Guide
5,963 Views
Registered: ‎01-23-2009

The set_input_delay and set_output_delay inform the FPGA tools about the requirements of the device sending/receiving data to the FPGA.

 

For set_output_delay, the value is the setup time requirement of the receiving device. We usually think of devices needing data Tsu before the edge of the clock and require it to remain stable until Th after the edge of the clock, but different devices can have different requirements. It is not terribly uncommon for a device to need the stable data eye to be completely after the rising edge of the clock. In this case, Tsu would be negative and Th would be a positive number whose magnitude is strictly greater than the absolute value of Tsu - i.e. Th > -Tsu. This still defines a required window that has a measurable size (Th +Tsu) which is guaranteed to be positive.

 

The set_output_delay -max value is Tsu, and the set_output_delay -min value is -Th - so in this case, both would be negative.

 

Avrum

View solution in original post