One way to fix this problem is to modify the XST State Machine Encoding option. Go to "Synthesis Properties" and select the HDL Options tab; then, change the FSM Encoding Algorithm option to "None".
2
This could also be the result of poor FSM coding:
Bad Code:
when hclk_state => //missing default output values here = bad coding if(HCLK = '1') then nDREQ <= '0'; NextState <= data_state; else NextState <= idle_state; end if;
Good Code: (all values covered)
when hclk_state => DATA <= DATAX; D_ZERO <= D_ZEROX; if(HCLK = '1') then nDREQ <= '0'; NextState <= data_state; else NextState <= idle_state; end if;