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

 
 
> Xilinx clock definition, Интересно как он это делает
ATname
сообщение Apr 10 2012, 11:45
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 60
Регистрация: 4-04-06
Пользователь №: 15 797



Суть явления в следующем.

Исходный код проекта VHDL, арибуты сигналов отсутствуют как класс.
Файл *.UCF содержит только привязку к контактам (LOC and ect.)
Файла *.XCF нет в принципе.

И тем не менее XilinxISE (XST) умудряется часть сигналов определить как сигналы синхронизации, что видно в редакторе ограничений. Т.е. в соотвествтующем окне есть определенный набор сигналов. Вопрос: откуда сабж взял, что именно эти сигналы являются сигналами синхронизации?
Что характерно, один из таких сигналов даже близко не подключен к контактам глобального клока...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ATname
сообщение Apr 12 2012, 13:10
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 60
Регистрация: 4-04-06
Пользователь №: 15 797



Многоуважаемый сэр!
Упомянутые Вами документы мне известны. Как и используемый в проекте тип FPGA.

А вынесенный на рассмотрение вопрос возник из процесса переноса ранее (успешно) реализованного проекта в иную (более старшую) версию ISE. И из всей этой "бадяги" можно сделать одно заключение. В обход ограничений проекта XST по своему разумению, в силу своих алгоритмов оптимизации процесса синтеза, может создавать специфические сигналы (в данном случае сигнал синхронизации) который ему не задавали.
В данном случае XST подсунул в проект, то чего в нем раньше (в более младшей версии ISE) НЕ БЫЛО! И перегрузил ресурсы глобального клока, вчистую развалив работающий (в более младшей версии ISE) проект.

Из Ваших содержательных ответов видно, что как бороться с этим явлением Вам неизвестно.

Не сомневаюсь, что Вы истинный виртуоз в программирования на HDL, чего нам, за ...дцать лет работы в отрасли, достичь не довелось.

P.S. Если Вас посылают... читать документацию, то главное в этом процессе это то, что Вас послали. А куда и зачем, значения не имеет.
Go to the top of the page
 
+Quote Post
Bad0512
сообщение Apr 12 2012, 14:28
Сообщение #3


Знающий
****

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



Цитата(ATname @ Apr 12 2012, 20:10) *
Многоуважаемый сэр!
Упомянутые Вами документы мне известны. Как и используемый в проекте тип FPGA.

А вынесенный на рассмотрение вопрос возник из процесса переноса ранее (успешно) реализованного проекта в иную (более старшую) версию ISE. И из всей этой "бадяги" можно сделать одно заключение. В обход ограничений проекта XST по своему разумению, в силу своих алгоритмов оптимизации процесса синтеза, может создавать специфические сигналы (в данном случае сигнал синхронизации) который ему не задавали.
В данном случае XST подсунул в проект, то чего в нем раньше (в более младшей версии ISE) НЕ БЫЛО! И перегрузил ресурсы глобального клока, вчистую развалив работающий (в более младшей версии ISE) проект.

Из Ваших содержательных ответов видно, что как бороться с этим явлением Вам неизвестно.

Не сомневаюсь, что Вы истинный виртуоз в программирования на HDL, чего нам, за ...дцать лет работы в отрасли, достичь не довелось.

P.S. Если Вас посылают... читать документацию, то главное в этом процессе это то, что Вас послали. А куда и зачем, значения не имеет.

Вы совершенно напрасно обижаетесь, вас справедливо отсылают к мануалам именно потому, что ошибки-то у вас ДЕТСКИЕ. Именно в следствии этих детских ошибок (latches, gated clocks) у вас и "пропал" нужный вам клок. Вы наплодили (видимо из-за неряшливого стиля кодинга) тучу gated clocks с маленьким fanout, поэтому у синтезатора скорее всего тупо не хватило клоковых ресурсов для вашего "нужного" клока. Ну а обстоятельство, что раньше XST этот ваш кривоватый код как-то умудрялся пережёвывать - вас совсем не оправдывает.Пишите аккуратно - не будет сюрпризов.
Go to the top of the page
 
+Quote Post
ATname
сообщение Apr 17 2012, 13:25
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 60
Регистрация: 4-04-06
Пользователь №: 15 797



Цитата(Bad0512 @ Apr 12 2012, 18:28) *
Вы совершенно напрасно обижаетесь, вас справедливо отсылают к мануалам именно потому, что ошибки-то у вас ДЕТСКИЕ. Именно в следствии этих детских ошибок (latches, gated clocks) у вас и "пропал" нужный вам клок. Вы наплодили (видимо из-за неряшливого стиля кодинга) тучу gated clocks с маленьким fanout, поэтому у синтезатора скорее всего тупо не хватило клоковых ресурсов для вашего "нужного" клока. Ну а обстоятельство, что раньше XST этот ваш кривоватый код как-то умудрялся пережёвывать - вас совсем не оправдывает.Пишите аккуратно - не будет сюрпризов.

Во-первых, код не мой.
Во-вторых, "детские ошибки" всего лишь иллюстрация "простой истины": наличие в кристаллах Xilinx специализированных ресурсов для сигналов синхронизации (клоковых ресурсов) НИЧЕГО НЕ ГАРАНТИРУЕТ! НЕТ НИКАКИХ способов ЖЕСТКО гарантировать трассировку сигналов клока по клоковым ресурсам в кристалле. Есть только надежда на то, что если удастся угадать (не больше, ни меньше) по каким критериям и как именно ту или иную языковую конструкцию синтезатор интерпретирует, то есть надежда, что сигнал будет тарссироваться по клоковым ресурсам. Вот этим самым: см. ug331.pdf стр.47 рис 2-2, если кто не понимает, о чем идет речь.
Контролировать этот процесс явно (вплоть до выдачи синтезатором предупреждений или ошибок) такого инструмента (прямого действия) у разработчика нет. И в этом аспекте, подключать клоковые сигналы на контакты, специально выделенные для этих целей производителем кристалла - только лишняя головная боль.
От которой, тем не менее, никуда не деться.

Постить прописные истины (с целью потешить собственное самолюбие), оно конечно проще, чем отвечать на неудобные вопросы, смысл которых, еще и не всегда ясен для отдельных "знатоков".

P.S. Если бы Вы соизволили внимательно прочитать прикрепленный отчет сиснтезатора, то вопросов о "перегрузке" клоковых ресурсов в Вашем посте не последовало. Ресурсов этих там более чем.
Go to the top of the page
 
+Quote Post



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

 


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


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