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

 
 
 
Reply to this topicStart new topic
> Xilinx, ISE, дублирующие регистры
bogaev_roman
сообщение Mar 20 2013, 17:40
Сообщение #1


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

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



Добрый вечер, возникла следующая проблема - из-за большого fan-out на некоторых регистрах появляются временные сбои. Каким образом в ISE в ucf файле, например, можно задать либо ограничение по fan-out для заданных регистров либо автоматически для них разрешить дублирование?
С уважением, Богаев Роман.
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Mar 21 2013, 00:46
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(bogaev_roman @ Mar 21 2013, 00:40) *
Добрый вечер, возникла следующая проблема - из-за большого fan-out на некоторых регистрах появляются временные сбои. Каким образом в ISE в ucf файле, например, можно задать либо ограничение по fan-out для заданных регистров либо автоматически для них разрешить дублирование?
С уважением, Богаев Роман.

Обычно эти директивы приписывают синтезатору. Для synplify это "syn_max_fan". Для XST уже не помню - надо доки смотреть.
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Mar 21 2013, 10:27
Сообщение #3


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

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



Цитата(Bad0512 @ Mar 21 2013, 04:46) *
Обычно эти директивы приписывают синтезатору. Для synplify это "syn_max_fan". Для XST уже не помню - надо доки смотреть.

Да вот в доках на ограничения я этого и не нашел, в квартусе это просто прописывается в qsf файле
Код
set_instance_assignment -name REMOVE_DUPLICATE_REGISTERS OFF -to ""

Думал может что-то подобное в ucf есть.
Go to the top of the page
 
+Quote Post
TRILLER
сообщение Mar 21 2013, 11:35
Сообщение #4


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

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



Цитата(Bad0512 @ Mar 21 2013, 04:46) *
Обычно эти директивы приписывают синтезатору...

Полностью согласен.
Однако можно эту обязанность возложить на маппер, если предпочитаете не жёстко контролировать весь процесс:
Process -> Process Properties -> Map Properties -> Register Duplication.
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Mar 21 2013, 12:10
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(TRILLER @ Mar 21 2013, 18:35) *
Однако можно эту обязанность возложить на маппер, если предпочитаете не жёстко контролировать весь процесс:
Process -> Process Properties -> Map Properties -> Register Duplication.

Тут есть некоторые тонкости. Насколько я знаю, мапперу нельзя задать конкретный fanout для конкретной цепи. Либо общий на весь проект, либо он пользует какие-то свои соображения (не всегда очевидные ) для дупликации регистров. Настройки синтезатора же как раз позволяют рулить этим параметром для каждой цепи.
В принципе можно всё отдать на откуп мапперу, но результаты ИМХО будут хуже. Под результатами понимаем времянку естественно.

Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Mar 21 2013, 12:11
Сообщение #6


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

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



Цитата(TRILLER @ Mar 21 2013, 15:35) *
Полностью согласен.
Однако можно эту обязанность возложить на маппер, если предпочитаете не жёстко контролировать весь процесс:
Process -> Process Properties -> Map Properties -> Register Duplication.

Хотелось бы конкретные регистры, в ином случае он не будет удалять и ту дублирующую логику, котрая некритична и, соответственно, кол-во ресурсов увеличится.
Go to the top of the page
 
+Quote Post
RobFPGA
сообщение Mar 21 2013, 13:02
Сообщение #7


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

Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643



Приветствую!

Цитата(bogaev_roman @ Mar 21 2013, 12:27) *
Думал может что-то подобное в ucf есть.


Правильно мыслите !
Есть такой секретный документ от Xilinx ;-) UG625 Constraints Guide - там на странице 165-166 есть
прозрачные намеки как использовать max_fanout в UCF. sm.gif

Успехов! Rob.



Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 10:54
Рейтинг@Mail.ru


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