contents.gifindex.gif

Indirectly Specifying tSU

You can indirectly specify the tSU (setup-to-clock) for all inputs in your design relative to a flip-flop using a Pad-to-Setup timespec.

webpack00000042.gif

Pad-to-Setup paths start at input pads, propagate through input buffers and any number of combinatorial logic levels before ending at a flip-flop D/T input and includes the receiving flip-flops tSU. Pad-to-Setup paths do not propagate through flip-flops. These paths are also broken at bidirectional pins. Pad-to-Setup paths do not take into account the clock path delay from the clock pad to the flip-flop, so you must determine the clock delay when deriving the Pad-to-Setup timing value.

To specify tSU, use the clock path delay from the device data sheets and calculate the Pad-to-Setup delay to be used as the value in the timing constraint with the following equation for global clocks:

Pad-to-Setup Value = desired tSU + tGCK

Use the following equation for product term clocks:

Pad-to-Setup Value = desired tSU + (tIN + tPTCK)

The format of the Pad-to-Setup timespec is:

TSnn=FROM:data_input_pad:TO:flip_flop_group:pad_to_setup_value

For example, if you need an external tSU of no more than 7.5 ns for all inputs to an XC95108-10 global clock tGCLK= 3ns), use the following timing constraint:

TS01=FROM:PADS:TO:FFS:10.5

If you need an external tSU of no more than 3.5 ns for a specific input to a specific flip-flop clocked by a XC95108-10 product term clock (tIN = 3.5ns, tPTCK = 3.5), use the following timing constraint:

TS01=FROM:PADS(STROBE):TO:FFS(START):10.5


See Also

Entering Timespecs in a UCF File

Grouping Signals