AR# 9416: 12.1 Timing Closure - Suggestions for using multi-cycle paths, such as a path through a ".CE" pin
12.1 Timing Closure - Suggestions for using multi-cycle paths, such as a path through a ".CE" pin
I have a path that is failing in my PERIOD constraint, and it does not matter to me that this path is valid every clock cycle. How can I constrain this path to avoid errors?
A path that is allowed to take multiple clock cycles to be valid in a design is called a multi-cycle path. These types of paths are typically covered by a PERIOD constraint by default, and might cause errors since a PERIOD is a one-cycle constraint. To eliminate these errors, you can remove the path from the PERIOD constraint by putting a specific multi-cycle constraint on the path. A multi-cycle constraint is applied by using a "FROM:TO" constraint. A "FROM:TO" constraint has higher priority than a PERIOD constraint, and it removes the specified path(s) from the PERIOD to the "FROM:TO" constraint. Example syntax: NET "clk" TNM_NET = "clk"; TIMESPEC TS_clk = PERIOD clk 10 ns; INST "source_inst_name" TNM = "source_group"; INST "destination_inst_name" TNM = "destination_group"; TIMESPEC TS_01 = FROM "source_group" TO "destination_group" TS_clk*3; The TS_01 timespec constrains a specific path (or paths) that are only valid every three clock cycles. The "FROM:TO" in TS_01 is constrained to three times the TS_clk timespec (that is, three clock cycles or 30 ns). For more information on "FROM:TO" constraints, see the Constraints Guide at: http://toolbox.xilinx.com/docsan/xilinx5/data/docs/cgd/cgd0092_15.html For additional suggestions and recommendations, see the following Answer Records: