Цитата(Delsian @ Mar 22 2005, 10:01)
Иногда попадаются грабли, когда FSM, синтезированная в режиме one-hot, улетает в какое-то неизвестное состояние, и на этом работа заканчивается. Если закодировать в compact - теряем в скорости, зато избавляемся от этой проблемы.
"When Others => stIdle" ситуацию не спасает - все равно при синтезе его соптимизируют

Как можно избавиться от неизвестного состояния в One-Hot?
Надо смотреть на конкретный код, но все это странно. Если кодирование one-hot, то состояние определается единственным битом. Пусть 4 состояния.
0001 - 1
0010 - 2 и т.д.
Допустим система как то попала в 0011. По левой единице FSM должен решить что состояние "1" (смотря как написано, естественно) и вести себя соответственно.