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

 
 
> 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, 07:19
Сообщение #2


Участник
*

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



Вы пропустили самое главное, вот это: "Заковыка как раз в том, что в данном отчете, в разделе "Clock Information:", нет сигнала cpu_ncs0...".
То, что Вы так старательно описали, понятно и без столь пространных объяснений.

Тут интересно другое: почему сигнал подключенный к контакту глобального клока (cpu_ncs0, а также и cpu_ncs1, не упомянутый XST вовсе) и имеющий (согласно кода) практически такой же путь прохождения как и cpu_nwe, клоковым не является (по мнению XST). Заметьте, что именно XST определяет кому быть клоковым сигналом, а кому нет. Ну и за каким тогда вообще нужно выделять клоковые контакты и специальные трассировочные ресурсы глобального клока, если работающий по непонятным критериям XST выделяет клоковый сигнал согласно своим алгоритмам оптимизации?

Тут более глобальный вопрос: как заставить ISE тарссировать нужные мне сигналы именно по клоковым ресурсам, без "сюрпризов" со стороны ISE в стиле мелкогософта: типа нам лучше знать, что для вас лучше.
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Apr 12 2012, 12:22
Сообщение #3


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(ATname @ Apr 12 2012, 11:19) *
Вы пропустили самое главное, вот это: "Заковыка как раз в том, что в данном отчете, в разделе "Clock Information:", нет сигнала cpu_ncs0...".
То, что Вы так старательно описали, понятно и без столь пространных объяснений.
Я ответил на ту половину Вашего вопроса, на которую возможно было ответить по имеющимся материалам: то, что сделал синтезатор - было отражено в отчёте (соответственно, я проанализировал имеющуюся информацию и отписался о наличии ошибок описания схемы); а то, чего синтезатор не сделал - соответственно и не отражено в отчёте. Если Вы хотите узнать на форуме, почему синтезатор не воспринял Ваше описание, так, как Вы хотели, то Вам необходимо выложить исходники Вашего проекта (или фрагменты исходников, которые вызывают вопросы).

Цитата(ATname @ Apr 12 2012, 11:19) *
Тут интересно другое: почему сигнал подключенный к контакту глобального клока (cpu_ncs0, а также и cpu_ncs1, не упомянутый XST вовсе) и имеющий (согласно кода) практически такой же путь прохождения как и cpu_nwe, клоковым не является (по мнению XST). Заметьте, что именно XST определяет кому быть клоковым сигналом, а кому нет.
Замечу, что не столько от XST, сколько от HDL описания зависит, что и как будет синтезировано. Если Вы сознательно допускаете описание, которое может неоднозначно трактоваться, то не удивляйтесь за последствия: что написали, то и получили.

Цитата(ATname @ Apr 12 2012, 11:19) *
Ну и за каким тогда вообще нужно выделять клоковые контакты и специальные трассировочные ресурсы глобального клока, если работающий по непонятным критериям XST выделяет клоковый сигнал согласно своим алгоритмам оптимизации?
Вы же так и не ответили: "что же это такое "клоковые контакты" ?", а еще хотите чтобы мы толковали этого термин. Пока Вы не поясните, что Вы имеете в виду - мы не сможем Вам ответить (для уменьшения кривизны переводов - оперируйте англоязычными терминами).
Вообще-то ответы на эти вопросы находятся в Spartan-3 Generation FPGA User Guide в главе Using Global Clock Resources.

Цитата(ATname @ Apr 12 2012, 11:19) *
Тут более глобальный вопрос: как заставить ISE тарссировать нужные мне сигналы именно по клоковым ресурсам, без "сюрпризов" со стороны ISE в стиле мелкогософта: типа нам лучше знать, что для вас лучше.
1. В составе ISE 13.4 есть документы "XST User Guide for Virtex-4, Virtex-5, Spartan-3, and Newer CPLD Devices" (xst.pdf) и "XST User Guide for Virtex-6, Spartan-6, and 7 Series Devices" (xst_v6s6.pdf). Если Вы что-то хотите от XST, то Вам необходимо внимательно прочитать хотя бы один из этих документов. Главное чётко уразуметь, что синтезатор может реализовать в железе далеко не все возможные языковые выпендрясы, поэтому в описании на синтезаторы обычно подробно рассказывается как описывать те или иные конструкции, а также приводятся примеры того, что необходимо втыкать примитивами, из-за невозможности описания оного на языке (например DCM и XADC нельзя описать синтезируемой конструкцией).

Кстати, открою большую тайну: XST ничего не трассирует - этим занимается Place&Route, а XST только синтезирует.

2. Если Вы хотите, чтобы сюрпризов совсем не было, то вы должны:
a) досконально изучить ПЛИС с которой Вы собираетесь работать и все её узлы, которые Вы собираетесь задействовать (в своё время мне очень сильно помог FPGA Editor - этой уникальной программой можно посмотреть что и как легло в кристалл, а также какие в кристалле есть блоки/их настройки/связи и пр.);
b) изучить Libraries Guides на Вами применяемые ПЛИС;
c) изучить подходящий XST User Guide;
d) изучить Constraints Guide.
После этого мы сможем поговорить на более или менее одном языке.

Общий совет: для уменьшения кривизна проекта, отключите опцию синтезатора Add I/O Buffers, и вручную повтыкайте те IO буфера, которые нужны и туда, куда нужно. Также, для особо тяжёлых случаев, очень хорошо помогает ручная установка BUFG, BUFR, BUFH и подобных. Чем больше Вы сделаете сами - тем меньше надо будет догадываться синтезатору о Ваших потяёных желаниях (не описали что-то - значит утаили это от синтезатора), и тем более качественный результат Вы получите.
Go to the top of the page
 
+Quote Post



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

 


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


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