реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Critical Warning: Timing requirements were not met., Подскажите способы устранения
hdl_student
сообщение Nov 21 2011, 06:45
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 122
Регистрация: 22-02-10
Из: Москва
Пользователь №: 55 617



Добрый день.

Работал со старым проектом, сделанном в схематике Quartus. В нём все LPM брались из файлов в проекте, а не из библиотеки самого квартуса. Я их заменил на библиотечные, и временной анализ стал сходиться во всех случаях, кроме одного lpm_mult.
Максимальное отставание - 6,9 нс. Все задержки находятся внутри компонента, например:

задержка: -6.900 ns (31.35 MHz)
откуда: pal_cos_sf:inst8|lpm_mult13x8:inst1|lpm_mult:lpm_mult_component|mult_iup:auto_ge
nerated|dffe24
куда: pal_cos_sf:inst8|lpm_mult13x8:inst1|lpm_mult:lpm_mult_component|mult_iup:auto_ge
nerated|dffe94

И так 53 позиции.
Клок описан в проекте (40 МГц). ПЛИС занята на 55% по логике и 100% по памяти. Кристалл - Altera EPF10K100ARI240-3 (FLEX).
Подскажите, пожалуйста, каким образом можно избавится от этой задержки?

Заранее признателен.
Go to the top of the page
 
+Quote Post
des00
сообщение Nov 21 2011, 06:55
Сообщение #2


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(hdl_student @ Nov 21 2011, 00:45) *
Подскажите, пожалуйста, каким образом можно избавится от этой задержки?

распайплайнить умножитель. у флексов аппаратных умножителей нет, следовательно там несколько сумматоров, нужно добавить пару слоев регистров и все получится. (в lpm_mult есть параметр определяющий кол-во слоев регистров).


--------------------
Go to the top of the page
 
+Quote Post
hdl_student
сообщение Nov 21 2011, 07:59
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 122
Регистрация: 22-02-10
Из: Москва
Пользователь №: 55 617



des00:
Если это сделать, то задержка уйдёт, но ведь при параметре, например, PIPELINE=2, сам умножитель будет работать в два раза медленнее, а на его скорости работы завязана другая логика.
Go to the top of the page
 
+Quote Post
des00
сообщение Nov 21 2011, 08:11
Сообщение #4


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(hdl_student @ Nov 21 2011, 02:59) *
но ведь при параметре, например, PIPELINE=2, сам умножитель будет работать в два раза медленнее, а на его скорости работы завязана другая логика.

RTFM
Цитата
LPM_PIPELINE Integer No Specifies the number of latency clock cycles associated with the result[] output. A value of zero (0) indicates that no latency exists, and that a purely combinational function will be instantiated.

что такое латентность я думаю вы знаете %)

UPD. если вы хотели сказать, что у вас умножитель стоит в рекурсивной схеме и вам задержка в лишний такт критична, то сушите весла сэр. на одном умножителе не сделаете. Ставьте два и в парафазе.


--------------------
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Nov 21 2011, 08:42
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Если подходит, то что посоветовал des00, то это самый простой вариант.
Какое процентное соотношение задержек IC и CELL в критичных путях? Просто можно и настройками синтезатора/фиттера поковыряться, partitional где-то сделать, но это конечно только в крайнем случае.
PS// только сейчас посмотрел, что F10K, а я писал все про последние семейства, так что возможно неактуально.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 00:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01398 секунд с 7
ELECTRONIX ©2004-2016