UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 9411

12.1 Timing Closure - Timing Closure suggestions for state machine optimization

Description

I placed a timing constraint on a path, but the constraint has errors. What can I do to make this timing constraint pass?

Solution


Suggestions for state machine optimization:
  • Use one-hot encoding for the states.
  • Use a synthesis state machine coding tool, if possible.
  • Reduce the number of input signals and pre-decode the input signals.
  • Register input and output signals.
  • Pre-decode and register counter values.
  • Remove data flow from the state machine and create control signals to control data flow.
  • Duplicate state to where many states transition, and reduce the number of states in state equations.
  • Use CASE statements and not IF-ELSE statements.

For additional suggestions and recommendations, see the following Answer Records:
AR# 9411
Date Created 08/21/2007
Last Updated 12/15/2012
Status Active
Type General Article
Tools
  • ISE - 10.1
  • ISE Design Suite - 11.1
  • ISE Design Suite - 11.2
  • More
  • ISE Design Suite - 11.3
  • ISE Design Suite - 11.4
  • ISE Design Suite - 11.5
  • ISE Design Suite - 12.1
  • ISE Design Suite - 12.2
  • Less