Rundll 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Доброго времени суток! Хочу выжать максимум из прикрепленной ниже схемы, к сожалению, обратная связь не позволяет произвести конвейеризацию. Может есть какой-то способ (и даже если есть, будет ли от этого толк) на этапе суммирования параллельно определить какая из сумм будет больше. Конечно, в таком случае придется жертвовать ресурсами ПЛИС, но конечная цель - поднять планку максимальной тактовой частоты, на которой будет способна работать эта схема. А пока удалось достичь 240 МГц на Virtex 5. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба А исходного кода нет? Что мешает поставить регистры после сумматоров? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Что мешает поставить регистры после сумматоров? немного добавлю и поставить мультиплексор на выходе этих регистров? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rundll 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба А исходного кода нет? Что мешает поставить регистры после сумматоров? Код есть конечно, на VHDL, ну он элементарный в принципе. Регистры после сумматоров мешает поставить обратная связь. Сумма на выходе используется для вычисления следующей суммы уже в следующем такте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Регистры после сумматоров мешает поставить обратная связь. это вам кажется что мешает %) регистры на выходы сумматоров, мультиплексор с выхода регистров в вашу ОС. С учетом того что в хилом слайсе люты стоят до сумматоров все хорошо ляжет UPD. Это кстати ретайминг в чистом виде %) UPD2. И единственный тормоз в этой схеме это будет формирование сигнала мультиплексирования и его доведение до люта. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Доброго времени суток! Хочу выжать максимум из прикрепленной ниже схемы, к сожалению, обратная связь не позволяет произвести конвейеризацию. Может есть какой-то способ (и даже если есть, будет ли от этого толк) на этапе суммирования параллельно определить какая из сумм будет больше. Конечно, в таком случае придется жертвовать ресурсами ПЛИС, но конечная цель - поднять планку максимальной тактовой частоты, на которой будет способна работать эта схема. А пока удалось достичь 240 МГц на Virtex 5. ваши рассуждения - не правильные... возьмите за основу любой конвейер от процессора, где 5 или 7 ступеней. Там есть режим записи данных "назад". И в описаниях все довольно подробно расписано. И когда конвейер сбрасывается и когда работает... а есть еще и микроархитектура. это когда вместо одного регистра делается набор регистров. А потом по некоторым признакам определяется из какой ветви надо брать данные. У Танненбаума есть книга об архитектуре компьютеров... Удачи! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rundll 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба а есть еще и микроархитектура. это когда вместо одного регистра делается набор регистров. А потом по некоторым признакам определяется из какой ветви надо брать данные. У Танненбаума есть книга об архитектуре компьютеров... Удачи! А если я скажу, что таких элементарных блоков в архитектуре несколько десятков, и выход, скажем первого, используется на входе 24-го? Все они естественно выстроены параллельно. Это ж сколько мне наборов регистров придется поставить, чтобы потом определить из какой ветви надо брать данные? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Костян 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Положите сумматоры в DSP slice . Как раз должен занят всего одну штуку (если разрядность у вас не более 18 на входе) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rundll 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Положите сумматоры в DSP slice . Как раз должен занят всего одну штуку (если разрядность у вас не более 18 на входе) К сожалению, код должен быть повторно пригодным для разных ПЛИС, не только фирмы Xilinx. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Костян 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба К сожалению, код должен быть повторно пригодным для разных ПЛИС, не только фирмы Xilinx. это грамотный подход. но раз вы хотите скорости, то нужно пользоваться ресурсами кристалла , т.е аппаратными умножителями. грубо говоря вам достаточно поставить атрибут для данного модуля, чтобы сказать синтезатору о том, что вы собираетесь юзать аппаратные модули. А уже в зависимости от типа кристалла менять только этот атрибут , а не код. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lmx2315 5 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба .. грубо говоря вам достаточно поставить атрибут для данного модуля, чтобы сказать синтезатору о том, что вы собираетесь юзать аппаратные модули. ..а как в для xilinx указать атрибут для модуля , чтобы синтезатор использовал аппаратные умножители ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Это ж сколько мне наборов регистров придется поставить, чтобы потом определить из какой ветви надо брать данные? Применяйте файловые регистры... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Костян 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба ..а как в для xilinx указать атрибут для модуля , чтобы синтезатор использовал аппаратные умножители ? XST User Guide , раздел USE DSP48 (для версии 10.1 - страница 430) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rundll 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба это вам кажется что мешает %) регистры на выходы сумматоров, мультиплексор с выхода регистров в вашу ОС. С учетом того что в хилом слайсе люты стоят до сумматоров все хорошо ляжет UPD. Это кстати ретайминг в чистом виде %) UPD2. И единственный тормоз в этой схеме это будет формирование сигнала мультиплексирования и его доведение до люта. Супер! Удалось повысить производительность на 35 МГц. Спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Des333 0 18 марта, 2010 Опубликовано 18 марта, 2010 · Жалоба Супер! Удалось повысить производительность на 35 МГц. Спасибо! А, все-таки, если не секрет, можно ваш код "до" и "после"? А то на целых 35 Мгц у меня самого поднять частоту не получилось (получилось лишь на 18) :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться