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# 52307

Does Vivado Synthesis support FSM extraction by default?


Does Vivado Synthesis support FSM extraction for mapping finite state machines by default?


Starting in tool version 2013.1, Vivado Synthesis does support default FSM extraction. This is now turned on by default. This option enables state machine identification and specifies the type of encoding that should be applied. The default option for -fsm_extraction switch is "auto". The automatic encoding allows the tool to choose the best encoding for each state machine identified.

You can also choose from the following encoding types for the -fsm_extraction switch; either applying them in the Vivado tools synthesis settings, or by passing them to -fsm_extraction via the synth_design TCL command:

  • one_hot
  • sequential
  • johnson
  • gray

If FSM extraction needs to be disabled, it can be achieved by passing "off" to the -fsm_extraction switch.

FSM extraction was not turned on by default until 2012.4. This was turned off by default and the finite state machine HDL was synthesized as logic.

AR# 52307
Date Created 10/09/2012
Last Updated 04/03/2013
Status Active
Type General Article
  • Vivado Design Suite