Цитата(flammmable @ Jun 5 2018, 15:32)

Перефразирую.
Приведенный в первом посте код работает так:
1) нажимаем кнопку - автомат сбрасывается по фронту reset-а
2) держим кнопку - автомат сбрасывается по каждому фронту clk, т.к. условие if(reset) выполняется
3) отпускаем кнопку - ничего не происходит
4) следующий фронт clk запускает автомат т.к. работает условие по ветви else
Почему я его привел? Потому, что таков пример сброса конечного автомата в руководствах, до которых я пока дотянулся - таков.
Данный пример меня не устраивает.
Хотелось бы:
1) нажимаем кнопку - автомат сбрасывается по фронту reset-а
2) по следующему фронту clk автомат начинает работу
Но я пока не пойму как такое реализовать. И возможно ли.
Тогда, как было сказано, выше - на частоте clk детектируете необходимый фронт схемой, называемой детектор фронта (первая ссылка в гугле по запросу "детектор фронта FPGA"), и по этому событию синхронно сбрасываете автомат. Но перед этим необходимо поставить андидребезг на кнопку, ведь сброс то с кнопки подается.
P.S. А какими руководствами Вы пользуетесь ? Просто любопытно.