contents.gifindex.gif

Specifying tCO

You can directly specify tCO for all registered output paths in your design using the Pad-to-Pad timespec. Clock-Pad-to-Pad paths for global clocks begin at global clock pads, propagate through global clock buffers, propagate through the flip-flop Q output and any number of levels of combinatorial logic and end at the output pad. Clock-Pad-to-Pad paths for product term clock paths begin at input pads, propagate through any number of logic levels feeding into a clock product term, propagate through the flip-flop Q output and any number of levels of combinatorial logic and end at the output pad. Clock-Pad-to-Pad paths also trace through the enable inputs of 3-state controlled pads.

webpack00000037.gif

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

TSnn=FROM:clock_input_pad:TO:output_pad:tCO_value

For example, if you need an external tCO of no more than 10 ns from Clock to all registered outputs, use the following timing constraint:

TS01=FROM:PADS(Clock):TO:PADS:10

If you are entering constraints in a UCF file, you can also specify tCO directly using the OFFSET timespec as follows:

NET data_output_pad OFFSET=OUT: tCO_value:AFTER:clock_input;

For example, the following UCF timing constraint specifies the tCO from input Clock to output Q to be no more than 10 ns:

NET Q OFFSET=OUT:10:AFTER:Clock;


Note: To use the OFFSET command, the named clock input must be explicitly defined as a global clock input using the BUFG attribute or symbol. See Using Global Nets.


See Also

Indirectly Specifying tCO

Entering Timespecs in a UCF File

Grouping Signals

Speeding Up tCO with Local Feedback