реклама на сайте
подробности

 
 
> FSM Mealy, Moore, практическое применение
dxp
сообщение Jul 5 2018, 04:29
Сообщение #1


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Всем привет!

Несомненно все, кто не прогуливал занятия по цифровой электронике, изучали конечные автоматы (КА), и в том числе их базовые разновидности - автоматы Мили и Мура. Я тоже прилежно учился и когда постигал премудрости профессии на практике, пытался накладывать полученные теоретические знания на разрабатываемые решения. В большинстве случаев это прекрасно работает. Но вот в случае с упомянутыми в заголовке темы вещами оно как-то не получилось. Поясню.

КА Мили - это автомат, у которого выходы зависят и от состояния самого автомата, и от его входов. КА Мура - автомат, выходы которого зависят только от его состояния. Ещё на просторах интернета попался некий КА Медведева sm.gif, у него выходы - это просто его состояние - по сути это вырожденный автомат Мура, но речь пока не про него.

Плюсы и минусы обоих вариантов очевидны:

  • у Мили решение может обойтись меньшим количеством внутренних регистров за счёт использования логики с входами, и при этом ещё получается меньше задержка - выходы могут меняться в том же такте, что и изменение входов. Недостатки: возможны глитчи и бОльшая задержка распространения по выходам из-за использования комбинационной логики;
  • у Мура больше регистров и всегда задержка на такт относительно Мили, но зато можно сделать без глитчей и задержку тоже можно сделать меньше, т.к. нет обязательной логики по выходам.

Когда мне приходилось (и приходится) проектировать КА, я честно пытался применить эту теорию к этому процессу, но почему-то именно тут она уходила в фон: при описании КА смотришь на целевую задачу и решаешь её, исходя из доступных средств. Собственно, описываешь автомат так, чтобы его работа удовлетворяла целевой задаче, и почему-то тут [мне] ни разу совсем не потребовалось погружаться в эту классификацию и анализ свойств - просто кодишь логику, конечно имея в виду, что комбинационная задержка может подзатянуть слаки и/или дополнительный регистр сдвигает результат на такт, это надо тоже учитывать...

А вопрос, собственно, такой: какое практическое преимущество даёт знание этой классификации нашему брату - ПЛИСоводу? Подозреваю, что для разработчиков компиляторов, синтезаторов эта классификация может быть полезна - например, в этой теории могут быть доказаны теоремы, что если, де, автомат Мили, то можно провести такую-то или такую-то оптимизацию, а если Мура, то вот такие-то или такие-то ограничения. Как сказал один мудрый человек: "Нет ничего практичнее хорошей теории". Но нам-то - простым пользователям компиляторов, синтезаторов, есть практическая польза? Например, вот описал я логику КА, вижу, что он Мили. Или Мура. И что? Что даёт это понимание? Ведь логику-то я описал, исходя из требований целевой задачи, а не ставя цель, сделать Мили или Мура.

И вот опыт, вроде, говорит, что сие знание скорее академическое, но в книжках-то и доках вендоров регулярно упоминают обе фамилии, когда речь заходит про КА. Это порождает сомнение - может, я чего-то важного не ухватил. В общем, прошу поделиться мнением/опытом: какая практическая польза для ПЛИСовода заключается в знании этой классификации и её свойств, где и как это применяется при описании логики на ПЛИС?


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
one_eight_seven
сообщение Jul 6 2018, 07:12
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 916
Регистрация: 3-10-08
Из: Москва
Пользователь №: 40 664



Цитата
а вот ПЛИС-программист или Verilog-кодер - это ИМХО уже прошлое, но это отдельная тема.

У вас просто очень мало знаний в этой области и очень узкий кругозор.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- dxp   FSM Mealy, Moore   Jul 5 2018, 04:29
- - Flip-fl0p   Цитата(dxp @ Jul 5 2018, 07:29) А очень ...   Jul 5 2018, 04:48
- - dima32rus   Цитата(dxp @ Jul 5 2018, 07:29) при описа...   Jul 5 2018, 05:15
- - one_eight_seven   ЦитатаМожно нарисовать граф переходов КА Мура, или...   Jul 5 2018, 09:01
|- - Flip-fl0p   Цитата(one_eight_seven @ Jul 5 2018, 12:0...   Jul 5 2018, 09:27
|- - one_eight_seven   Цитата(Flip-fl0p @ Jul 5 2018, 12:27...   Jul 5 2018, 09:59
- - syoma   ИМХО смысл для разработчика в том, что надо мыслен...   Jul 5 2018, 12:56
- - one_eight_seven   ЦитатаНаверное, так не стоит делать, или нет? На ...   Jul 5 2018, 13:43
- - Shivers   Несколько комментариев 1. Строго говоря, автоматы ...   Jul 5 2018, 21:05
|- - x736C   Цитата(Shivers @ Jul 6 2018, 00:05) 5. О ...   Jul 5 2018, 23:23
|- - warrior-2001   Доброго времени суток! Цитата(x736C @ Ju...   Jul 6 2018, 04:23
|- - Flip-fl0p   Цитата(warrior-2001 @ Jul 6 2018, 07...   Jul 6 2018, 04:26
|- - gin   Цитата(warrior-2001 @ Jul 6 2018, 07...   Jul 6 2018, 20:39
- - dxp   Спасибо всем за ответы, в общем и целом примерно т...   Jul 6 2018, 06:56
- - syoma   ЦитатаМожно замутить автомат по науке, но он будет...   Jul 6 2018, 06:58
|- - syoma   Цитата(one_eight_seven @ Jul 6 2018, 09:1...   Jul 6 2018, 09:11
- - XVR   У автоматов Мили и Мура есть большое различие с то...   Jul 6 2018, 12:09
- - one_eight_seven   ЦитатаНу, могу предположить такое же мнение о Вас....   Jul 6 2018, 13:22
- - Shivers   Я там выше уже писал, что автомат Мили легко своди...   Jul 6 2018, 18:02


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 19:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.02464 секунд с 7
ELECTRONIX ©2004-2016