Мили v/s. Мур
В чем разница между типами конечных автоматов Мили и Мура?
6 ответов
В машине Мура производимая продукция связана с текущим состоянием машины и только на ней. Вместо этого в машине Мили он связан как с состоянием, так и с конкретным вводом.
С практической точки зрения вы имеете, что выходные данные помещаются в состояния в машине Мура (поэтому каждое состояние имеет свой выходной сигнал), в то время как в последнем у вас есть выходные данные при переходах (таким образом, выходной сигнал определяется из текущего состояния И исходящего перехода.)
Выходная мощность машины Мура является функцией только состояния машины, выходная мощность машины Мили является функцией состояния машины и ее входов.
Объяснение на примере / Анекдот.
Это, пожалуй, лучше всего иллюстрируется примером и анекдотом.
Я ненавижу аэропорты и добираюсь до них, но мне нравится быть в самолете. Есть три различных состояния, в которые я должен войти, прежде чем сесть на самолет:
- Штат: в такси (событие: потом я оплачиваю проезд и переход в следующий штат:)
- State: In Lounge (событие: ожидание 2 часа и переход в следующее состояние:)
- Состояние: в самолете
Но каков результат?
В машине Мили предыдущее состояние, из которого вы пришли, имеет значение - как вы куда-то добираетесь, очень важно. То, как вы попадаете в состояние, не имеет значения в машине Мура.
Давайте добавим результат к вышесказанному, чтобы создать представление Мура для конечного автомата:
Пример представления Мура для конечного автомата:
- Штат: в такси (событие: оплата проезда, а затем переход в следующий штат). (Результат: несчастный).
- Состояние: In Lounge (событие: подождите 2 часа, а затем переход в следующее состояние) (результат: несчастный)
- Состояние: в самолете (результат: счастливый).
С представлением Мура результат привязан непосредственно к государству. С представлением Мили - конкретный результат зависит от того, откуда вы пришли. Например, если я смогу сесть в самолет без необходимости поймать такси и подождать в салоне, я был бы счастлив. Входы имеют значение. Важно, откуда вы родом. Конечный автомат представления Мили позволяет это показать на диаграмме. Другими словами, выход / результат отображается вне состояния во время перехода.
Машины Мура представляют собой дискретные динамические системы, которые можно выразить в виде:
x[k+1] = f(x[k], u[k] )
y[k] = g(x[k] )
где x
штат, u
вход, y
выход, f
описывает переходное отношение (дискретная динамика) и g
выходная карта (здесь маркировка состояния) и k
обозначает время (индекс в последовательности).
Машина Мили имеет немного более общую форму:
x[k+1] = f(x[k], u[k] )
y[k] = g(x[k], u[k] )
Обратите внимание, что сейчас g
это уже не государственная маркировка, это краевая маркировка.
Они не эквивалентны, в частности, машины Мура строго причинны, а машины Мили - нет.
Для получения более подробной информации см. Lee & Seshia, Введение в встраиваемые системы, LeeSeshia.org, с.58.
Мур меняется только после активного синхроимпульса, а Мэйл меняется после каждого фронта тактового сигнала ("если внешний вход меняется")
Выходной сигнал мясной машины зависит как от текущего состояния, так и от входного тока, тогда как выходной сигнал Мура зависит только от текущего состояния.
Обычно машина Мили имеет жар, чем машина Мура.
Выходной сигнал Mealy изменяется в момент синхронизации, но выходной сигнал Мура изменяется, как только логика завершена.
Мили реагирует быстрее на ввод, тогда как для декодирования вывода требуется вход в систему Moore, поскольку он имеет больше задержек в цепях.