Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: VIRTEX5. Проблема с таймингами.
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Vozhd
Доброго времени суток. Сталкнулся со следующей проблемой имеется 4, достаточно больших фильтров(1 FIR включает в себя порядка 40 DSP блоков). Сигналы данных с этих фильтров поступают на комплексный умножитель. Данный умножитель защелкивается по объединенному валиду от этих четырех фильтров(выполнено в виде элемента 4И). На деле же оказалось что валиды как и данные приходят не в такт. Пробовал прописать констрэйнт типа:

Код
TIMESPEC TS_1FIR_TO_1CHCPLXMUL = FROM "RE_FIRD_RE" TO "CH1CPLXMUL" 2.5 ns;
TIMESPEC TS_2FIR_TO_1CHCPLXMUL = FROM "RE_FIRD_IM" TO "CH1CPLXMUL" 2.5 ns;
TIMESPEC TS_2FIR_TO_1CHCPLXMUL = FROM "IM_FIRD_RE" TO "CH1CPLXMUL" 2.5 ns;
TIMESPEC TS_2FIR_TO_1CHCPLXMUL = FROM "IM_FIRD_IM" TO "CH1CPLXMUL" 2.5 ns;

Но он не смог выполнить данные констрэйнты. Видимо он пытается разместить все DSP блоки в 2,5 нс до уммножителей.
Не подскажите ли, как решить данную проблему. Заранее спасибо.
DmitryR
У вас же схема синхронная - вам надо не констрейны писать, а вставить на вход или выход FIR задержки, чтобы они выдавали данные в одном такте.
Vozhd
Спасибо за совет.
Vozhd
Доброго времени суток.
Интересует лечится ли как-нибудь такой баг:
Задал в коде атрибут сигналу

Код
attribute maxdelay of re_3ch_net: signal is "2.5 ns";


В итоге он все развел, но ругнулся на тайминг:

Код
Timing constraint: NET "U_first_cw/re_3ch_net<14>" MAXDELAY = 0 ns;


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