Состояние плюс правила
Конечный автомат — это любая последовательная схема, состоящая ровно из двух частей: регистра состояния — триггеров, хранящих, в каком из конечного числа состояний автомат находится сейчас, — и комбинационной логики, которая по текущему состоянию и текущим входам вычисляет следующее состояние (и выход). На каждом такте выход этой логики защёлкивается в регистр, становясь новым текущим состоянием.
Автомат Мура: выход зависит только от состояния
В автомате Мура выход — функция только текущего состояния, никогда напрямую входов. Это значит, что выход может измениться только по тактовому фронту, на один такт позже того входа, что вызвал смену состояния, но зато выход гарантированно без дребезга: ничто, происходящее со входом между тактами, не может заставить его мигнуть.
Автомат Мили: выход зависит от состояния и входа
Выход автомата Мили — функция и текущего состояния, и текущего входа, поэтому он может отреагировать в тот же самый такт, что и изменение входа, часто позволяя решить ту же задачу меньшим числом состояний. Плата за это — дребезг на входе может ненадолго передаться и на выход, поскольку между входом и логикой выхода нет триггера.
Счётчик — простейший автомат Мура
Блок 4-битного счётчика в Boolflow уже является автоматом Мура — его состояние это и есть значение счёта, а выход — то же самое состояние безо всякой отдельной выходной логики. Чтобы собрать собственный конечный автомат, возьмите REG4 в качестве регистра состояния и блок PLM (или обычные вентили), вычисляющий следующее состояние и выход по текущему значению регистра, и замкните выход PLM обратно на вход регистра в редакторе схем.