Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Борьба с времянками
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
D-Luxe
Нужно срочно придумать решение для борьбы с времянками.

Скажите какая нужна информация о проекте. Напишу.
bogaev_roman
Цитата(D-Luxe @ Sep 29 2011, 20:02) *
Нужно срочно придумать решение для борьбы с времянками.

Ну так для начала написали хотя бы что-то - критичный путь там или логику. Какая частота получается и сколько надо, какие настройки стоят по оптимизации скорость/площадь и т.д. Выложите хотя бы кусок проекта.
Я всегда борюсь последовательно если можно следующим образом:
1. Переделка логики (включая изменение алгоритма и конвейеризацию)
2. Изменение настроек и параметров проекта в САПР
3. Создание партиций на критичные места и шаманство - перебор seed или DSE (только в крайнем случае)
Джеймс
опять 25...
в каком смысле "борьба с времянками"?? что вы вкладываете в это понятие? проект по-прежнему глючит? шина PLB жутко тормозная? не проходите по какой-то из 6-7 частот?
D-Luxe
Проект не проходит по одной частоте:

* TS_client_rx_clk0 = PERIOD TIMEGRP "clk_client_rx_clk0" 7.2 ns
Check 8.424ns
Worst Case Slack -1.224ns.


Настройки синтезатора, маппера дефолтные в EDK.

Все критические пути - передача данных между Coregen'овскими FIFO. (Т.е. при перекладывании из одного FIFO в другое, размеры FIFO - 2, 8, 64 Кбайт)

ПЛИС - Virtex 4-FX20. Заполненность кристалла - 63%.
VladimirB
Цитата(D-Luxe @ Sep 29 2011, 21:37) *
Проект не проходит по одной частоте...


PlanAhead вам точно поможет.
+ настройки можно покрутить - типа оптимизации по скорости.

P.S. преждевременно вы в Америку собрались...
D-Luxe
Цитата(VladimirB @ Sep 29 2011, 22:33) *
PlanAhead вам точно поможет.
+ настройки можно покрутить - типа оптимизации по скорости.

P.S. преждевременно вы в Америку собрались...

Общие принципы работы в PlanAhead можете рассказать.

Оптимизация по скорости не помогает - Slack большой.
sazh
Цитата(D-Luxe @ Sep 29 2011, 21:48) *
Оптимизация по скорости не помогает - Slack большой.


Можно по четным нечетным отсчетам работать. За счет ресурсов.
(Раньше так в скорости выигрывали)
D-Luxe
Цитата(sazh @ Sep 29 2011, 22:54) *
Можно по четным нечетным отсчетам работать. За счет ресурсов.
(Раньше так в скорости выигрывали)

Что вы имеет ввиду когда говорите четные нечетные.
sazh
Цитата(D-Luxe @ Sep 29 2011, 21:57) *
Что вы имеет ввиду когда говорите четные нечетные.


Распараллеливание ресурсов. (два фифо меньшей емкости)
jojo
Надобно всё же приложить сюда отчёт временного анализатора и проблемный исходный код.
VladimirB
Цитата(D-Luxe @ Sep 29 2011, 22:48) *
Общие принципы работы в PlanAhead можете рассказать.

Открываешь, создаёшь проект,
делишь ПЛИС на Pblok'и и помещаешь туда куски дизайна в соответствии с логикой работы проекта и связями между отдельными его частями.
Дальше запускаешь оттуда PAR и изучаешь тайминги. Корректируешь дизайн и расстановку Pblock'oв.
И так пока не сойдутся тайминги.

P.S. ISE доживает последние деньки, вместо него будет у-Rodin-а на основе PlanAhead.
Bad0512
Цитата(D-Luxe @ Sep 30 2011, 00:37) *
Проект не проходит по одной частоте:

* TS_client_rx_clk0 = PERIOD TIMEGRP "clk_client_rx_clk0" 7.2 ns
Check 8.424ns
Worst Case Slack -1.224ns.


Настройки синтезатора, маппера дефолтные в EDK.

Все критические пути - передача данных между Coregen'овскими FIFO. (Т.е. при перекладывании из одного FIFO в другое, размеры FIFO - 2, 8, 64 Кбайт)

ПЛИС - Virtex 4-FX20. Заполненность кристалла - 63%.

7.2нС для Виртекса4 - это смех просто. Видимо проблема где-то у вас в коде-настройках-директивах UCF для тайминг аналайзера.
Телепаты отдыхают, выкладывайте проект (или мелкий проектик где ваша проблема видна явно).
DmitryR
Не скажу ничего нового - для FX применение PlanAhead еще более актуально, чем для кристаллов без процесора. Потому что как по собственной инициативе фиттер вокруг процессора логику раскладывает - я каждый раз диву давался.

Но еще бывает, что выводы неудачно расположены. Ведь шины у процессора выходят из определенного места, и если пины, куда выводятся выводы блоков с этой шины расположены с другой стороны кристалла - приходиться делать аццкие конвейеры, чтобы дотянуться.
bogaev_roman
Цитата(D-Luxe @ Sep 29 2011, 21:37) *
Все критические пути - передача данных между Coregen'овскими FIFO. (Т.е. при перекладывании из одного FIFO в другое, размеры FIFO - 2, 8, 64 Кбайт)
ПЛИС - Virtex 4-FX20. Заполненность кристалла - 63%.

Т.е. я так понимаю, что у Вас большое время распространения сигнала от одного fifo до другого без дополнительной логики и при большой загруженности кристалла все очень плохо разводится. Тут проще всего planahead'ом раскидать проблемные блоки и закрепить, как уже советовали DmitryR и VladimirB
gin
Цитата(D-Luxe @ Sep 29 2011, 21:37) *
Проект не проходит по одной частоте:

* TS_client_rx_clk0 = PERIOD TIMEGRP "clk_client_rx_clk0" 7.2 ns
Check 8.424ns
Worst Case Slack -1.224ns.


Настройки синтезатора, маппера дефолтные в EDK.

Все критические пути - передача данных между Coregen'овскими FIFO. (Т.е. при перекладывании из одного FIFO в другое, размеры FIFO - 2, 8, 64 Кбайт)

ПЛИС - Virtex 4-FX20. Заполненность кристалла - 63%.



Попробуйте поставить регистры на выходе одного FIFO и на входе другого
AlphaMil
Кстати, подскажите, что значит Starting Placer Cost Table в ISE-е? Там в хелпе что-то написано, но не конкретно.
jojo
Перебор Cost table может поднять частоту в плохом проекте, когда остальные меры нежелательны или уже не помогают. Вы как будто получаете ПЛИС на одну градацию лучше, если повезёт.
AlphaMil
Да, про это в хелпе что-то написано, но что этот перебор делает физически??
jojo
При переборе весов физически меняется размещение ресурсов по ПЛИСу.
Мур
Подскажите, можно ли для улучшения качества работы фиттера по определенным линиям (WR И RD от процессора) их описать в SDCфайле как частотные(тем более они на глобал поданы!) как create_clock -period 50MHz -name {WR} ?

Тем более так проще потом контролировать Слаки в TQ... по этим сигналам.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.