Перейти к содержанию
    

Дано :

 

Некий цифровой автомат с десятком входов и где-то стока же выходов. Реализован был очень давно на рассыпухе (сплошная ассинхронщина.. комбинаторика и RS-триггера).

Известны временные диаграммы работы девайса по всем входам и выходам в течении одного цикла.

Если в цифровой схеме есть хоть один триггер, то её можно назвать цифровым автоматом..

 

Найти :

 

Возникла необходимость запихать всё енто дело в ПЛИСину. Сразу возникла мысль описать его как конченый автомат.

Для этого надо выполнить как бы обратный синтез КА.

Т.е. известны диаграммы функционирования, а по ним надо нарисовать граф-схему или таблицу переходов и выходов.

В автоматном синтезе не очень силен, поэтому накопал инфы в интернете чтобы поучить уроки, почитал ... и совсем запутался.

Не выходит каменный цветок. :) В голове , блин, каша. :blink:

Как все это дело собрать в кучу, чтобы наглядно и понятно все описывалось ?

Логика работы вроде бы и совсем несложная: некоторые выходы просто тупо повторяют соответствующие входы, несколько выходов связаны со своими парами входов (режим триггера - вкл./выкл). Если судить по количству триггеров которые присутствуют в исходной схеме (5-6 штук), то состояний максимум будет столько же, а у меня их чего-то гораздо больше (если анализировать входные воздействия и выходы).

 

Может кто-то сталкивался с подобной задачей.. Хелп, плиз! Диаграммы приложены.

post-1896-1156948866_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разберись как работает схема.

Что на входе, что на выходе, зачем всё это нужно...

 

Потом нарисуй новую, свою, которая будет работать на D триггерах ПЛИС.

 

P.S. Забудь эти глупости "обратный синтез автоматов...." ;))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы не задумывались стоит ли использовать ПЛИС для вашей задачи - 5-6 штук триггеров в вашей схеме и сотни, тысячи в ПЛИС. Попробуйте оценить - стоимость, надежность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы не задумывались стоит ли использовать ПЛИС для вашей задачи - 5-6 штук триггеров в вашей схеме и сотни, тысячи в ПЛИС. Попробуйте оценить - стоимость, надежность.

 

Дело в том что ПЛИСина (МАХ7000) уже заложена в схему устройства и она выполняет еще и другие задачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А самой схемы нет? Диаграмма может описывать не все возможные комбинации входных\выходных воздействий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

" Если судить по количству триггеров которые присутствуют в исходной схеме (5-6 штук), то состояний максимум будет столько же, а у меня их чего-то гораздо больше (если анализировать входные воздействия и выходы)." - во-первых, откуда путаница в простейшем подсчете триггеров? Во-вторых, максимальное число состояний = 2 ^ (количество триггеров). А дальше - только пристально схему смотреть. Хотя почему бы не попробовать тупо на VHDL "пересказать схему"? %)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

" Если судить по количству триггеров которые присутствуют в исходной схеме (5-6 штук), то состояний максимум будет столько же, а у меня их чего-то гораздо больше (если анализировать входные воздействия и выходы)." - во-первых, откуда путаница в простейшем подсчете триггеров? Во-вторых, максимальное число состояний = 2 ^ (количество триггеров). А дальше - только пристально схему смотреть. Хотя почему бы не попробовать тупо на VHDL "пересказать схему"? %)

 

Ну, допустим кол-во триггеров может быть и избыточным (вариант кодирования 1 триггер - 1 состояние).

Вся сложность в том что цельной схемы и документации этого хозяйства как таковых нет. Есть отдельные фрагменты узлов , вероятно, срисованные с плат по дорожкам и с помощью прозвонки.

Т.е. не исключены ошибки. И те схемы , что есть не дают полной информации о работе устройства.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну алгоритм или то что делать схема должна же есть - корректность работы как-то надо проверять, обычно делают так :

 

- пишут тест, который проверяет всю известную функциональность существующей схемы

- в процессе написания теста строится алгоритм

- по алгоритму лепите FSM

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Про MAX7000 потихоньку пора забывать :-) По крайней мере 7000S готовят к снятию с производства, судя по слухам.

наидешевейшие из альтеровских CPLD это MAX3000A.

Возможно, всю вашу схему можно будет разместить в MAX3032A.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вся сложность в том что цельной схемы и документации этого хозяйства как таковых нет. Есть отдельные фрагменты узлов , вероятно, срисованные с плат по дорожкам и с помощью прозвонки.

Т.е. не исключены ошибки. И те схемы , что есть не дают полной информации о работе устройства.

 

Если не обсуждать чипы и прочее, то можно для начала сделать так. Найти "State CAD" или что-то типа этого. Например я знаю, что в HDL-дизайнере такая вещь есть. Но я думаю, что и отдельно она есть.

Далее в графическом виде попытаться "нарисовать" поведение схемы и попробовать его отсимулить. И каждый раз просить САД выдавать текст автомата на каком нибудь HDL, например на Veriloge? и смотреть полученные коды. Когда Вы увидите, что дело в симуляции идет так как нужно, то тогда можно и переходить и к проектированию кристалла. И поищите книгу Антонова. Это Альтеровские доки, но на русском. Или книгу Комолова. Это тоже но, про Квартус.

Ну и я посылаю Вам файл про FSM. Поищите на сайте этой фирмы, там есть что почитать...

Удачи!

CummingsICU2002_FSMFundamentals.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. RS-триггеры элементарно реализуются на 2-х ЛА-3. Сколько у исходной схемы состояний - неизвестно.

 

2. Допустим внутри 64 возможных состояния (6 триггеров) и 10 входов. Всего 65536 возможных переходов конечного автомата. Вы готовы описать их все? Если да - дальше существуют формальные методы синтеза минимального детерминированного конечного автомата.

 

3. В лоб перенесенная асинхронщина может и не заработать. С CPLD конечно попроще чем с FPGA в этом вопросе.

 

4. Это автоматика некого трактора? Найдите технолога который сможет по имеющимся данным и общим знаниям о техпроцессах восстановить логику работы автомата. Без предварительного 100% описания логики работы системы запихивать в PLD - это бред. Тем более, если от правильности работы схемы зависит безопасность людей или оборудования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дано :

Некий цифровой автомат[......]

Найти :

Возникла необходимость запихать всё енто дело в ПЛИСину. Сразу возникла мысль описать его как конченый автомат.

[......]

Может кто-то сталкивался с подобной задачей.. Хелп, плиз! Диаграммы приложены.

О, господи! Это же упаковочная машина для сыпучих продуктов! Узнал родную, любимую. Я чуть не прослезился от ностальгии. В глубокой юности я делал для таких машин автоматику на 561-ой серии. С удовольствием настрочу для неё управляющий fsm, цифровую фильтрацию входов от помех итд. Тряхну стариной, вспомню пьяную удалую молодость. У вас аська есть? Надо уточнить логику работы этого железного монстра.

CummingsSNUG2003SJ_SystemVerilogFSM.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. RS-триггеры элементарно реализуются на 2-х ЛА-3. Сколько у исходной схемы состояний - неизвестно.

 

2. Допустим внутри 64 возможных состояния (6 триггеров) и 10 входов. Всего 65536 возможных переходов конечного автомата. Вы готовы описать их все? Если да - дальше существуют формальные методы синтеза минимального детерминированного конечного автомата.

 

3. В лоб перенесенная асинхронщина может и не заработать. С CPLD конечно попроще чем с FPGA в этом вопросе.

 

4. Это автоматика некого трактора? Найдите технолога который сможет по имеющимся данным и общим знаниям о техпроцессах восстановить логику работы автомата. Без предварительного 100% описания логики работы системы запихивать в PLD - это бред. Тем более, если от правильности работы схемы зависит безопасность людей или оборудования.

 

Не совсем понятно откуда взялось число возможных переходов 65536 ??? Если перемножением 64х10, то это будет 640.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дано :

Некий цифровой автомат[......]

Найти :

Возникла необходимость запихать всё енто дело в ПЛИСину. Сразу возникла мысль описать его как конченый автомат.

[......]

Может кто-то сталкивался с подобной задачей.. Хелп, плиз! Диаграммы приложены.

О, господи! Это же упаковочная машина для сыпучих продуктов! Узнал родную, любимую. Я чуть не прослезился от ностальгии. В глубокой юности я делал для таких машин автоматику на 561-ой серии. С удовольствием настрочу для неё управляющий fsm, цифровую фильтрацию входов от помех итд. Тряхну стариной, вспомню пьяную удалую молодость. У вас аська есть? Надо уточнить логику работы этого железного монстра.

 

Да, да!!! Почти в точку ! Она самая. Аська есть , только надо восстановить ее. Чуть позже сообщу.

Пока можно в личу или на мыло.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. RS-триггеры элементарно реализуются на 2-х ЛА-3. Сколько у исходной схемы состояний - неизвестно.

 

2. Допустим внутри 64 возможных состояния (6 триггеров) и 10 входов. Всего 65536 возможных переходов конечного автомата. Вы готовы описать их все? Если да - дальше существуют формальные методы синтеза минимального детерминированного конечного автомата.

 

3. В лоб перенесенная асинхронщина может и не заработать. С CPLD конечно попроще чем с FPGA в этом вопросе.

 

4. Это автоматика некого трактора? Найдите технолога который сможет по имеющимся данным и общим знаниям о техпроцессах восстановить логику работы автомата. Без предварительного 100% описания логики работы системы запихивать в PLD - это бред. Тем более, если от правильности работы схемы зависит безопасность людей или оборудования.

 

Не совсем понятно откуда взялось число возможных переходов 65536 ??? Если перемножением 64х10, то это будет 640.

 

 

2^10*64 = 65536

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...