Jump to content

    
Sign in to follow this  
AlphaMil

Увязывание автомата состояний с папятью и умножителями

Recommended Posts

Уважаемые, есть автомат состояний, в котором в одном из состояний инкрементируется адрес блочной памяти, здесь же задержанное на такт значение из памяти умножается на другое значение, стоит регистр, т. е. задержка на два такта, и опять умножение -еще такт. К переходу на следующее состояние не все значения успевают просуммироваться, да и в начале 3 такта суммируется белеберда. Подскажите, как это все увязать, сча сделал счетчик, которы управляет суммированием, но это через одно место...

Share this post


Link to post
Share on other sites
Уважаемые, есть автомат состояний, в котором в одном из состояний инкрементируется адрес блочной памяти, здесь же задержанное на такт значение из памяти умножается на другое значение, стоит регистр, т. е. задержка на два такта, и опять умножение -еще такт. К переходу на следующее состояние не все значения успевают просуммироваться, да и в начале 3 такта суммируется белеберда. Подскажите, как это все увязать, сча сделал счетчик, которы управляет суммированием, но это через одно место...

 

могу предложить у меня на сайте, в статьях - "Краткий Курс HDL", раздел про автоматы...

Удачи!

 

Share this post


Link to post
Share on other sites

какие частоты? плис? память? Если меньше 10мгц и современная плис то скорее всего проблемы с организацией, скорее всего банальная описка или ляп в исходниках. Или асинхронный дизайн явно или не явно. Данные откуда берутся и управляющие сигналы? из вне или внутри? Они защёлкиваются по тактовой или нет?

Share this post


Link to post
Share on other sites

Дело не в частотах и памяти. Вопрос системный - как увязать задержку в памяти на n тактов, плюс обработку отсчета на нескольких регистрах (в первом посте 3 такта задержка на отсчет) и переходы автомата состояния. Вопрос как раз и есть в организации: делать два автомата раздельно для шины адреса и накопления результатов обработки отсчетов или как по другому...

Share this post


Link to post
Share on other sites
Дело не в частотах и памяти. Вопрос системный - как увязать задержку в памяти на n тактов, плюс обработку отсчета на нескольких регистрах (в первом посте 3 такта задержка на отсчет) и переходы автомата состояния. Вопрос как раз и есть в организации:

Добавить задержку в 3 такта туда, где данные (или адрес) идут с опережением. Пути данных надо выравнивать :rolleyes:

Share this post


Link to post
Share on other sites

Задержка то задержкой. А как потом автомат состояний в следующее состояние переводить? Тоже задерживать? Вводить новое состояние? Может нужно делать два автомата? Раздельно для адреса и данных?

Share this post


Link to post
Share on other sites

Сделать конвейер на столько тактов, чтобы всё успевало перемножиться и сложиться. Сделать один автомат на все эти состояния.

Непонятно, если "не все значения успевают просуммироваться", то почему "дело не в частотах"?

 

А еще - память бывает двухпортовая.

Share this post


Link to post
Share on other sites

2 ViKo

Я как раз и использую двухпортовую память. На одной частоте данные пишутся, на другой читаются и обрабатываются.

Не все значения успевают просуммироваться из-за того, что автомат переходит в следующее состояние, где они, допустим, делятся на другое число...

Выходит надо делать автомат с промежуточными состояниями, на которых делать задержку в n-тактов. (Прочиталось из памяти, перемножилось, перемножилось, просуммировалось)?

Share this post


Link to post
Share on other sites
Выходит надо делать автомат с промежуточными состояниями, на которых делать задержку в n-тактов. (Прочиталось из памяти, перемножилось, перемножилось, просуммировалось)?

ну а почему собственно и нет ? вы видите другой возможный вариант с точки зрения логики здравого смысла ? :biggrin:

 

Share this post


Link to post
Share on other sites
Выходит надо делать автомат с промежуточными состояниями, на которых делать задержку в n-тактов. (Прочиталось из памяти, перемножилось, перемножилось, просуммировалось)?

 

Написал же вам, где смотреть...

В дополнительных блоках применяете по два сигнала - Старт и Финиш. В начале операции ваш автомат дает Старт и ждет Финиш...

Читайте, я же все в статьях подробно расписал... Давно бы уже все вычитали и не морочали людям голову...

Удачи!

 

Share this post


Link to post
Share on other sites

Уважаемый iosifk. Я приветствую любую работу, но не под таким соусом. На Вашем сайте (www.iosifk.narod.ru) в указанном разделе предлагается купить диск. Если я правильно понял, разработанный в 2008 году...

Я не для посылок делал эту тему...

Извините за флуд.

Share this post


Link to post
Share on other sites
Если я правильно понял, разработанный в 2008 году...

Я не для посылок делал эту тему...

 

Написал же Вам - в статьях... Не хотите диск - скачивайте статьи и читайте на здоровье... А от того, что я 2008 году написан текст и примеры - ну так что -же в этом страшного?

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this