Перейти к содержанию
    

Первые впечатления от ISE

Жесть - перехожу на Quartus! :-)

 

P.S.

Как сравнивали?

А если серьезно - то этот критерий думаю никто в рассмотрение не берет :-)

 

Да я и не уговариваю!... Справедливости ради! ...Может улучшат?

 

Схожие проекты и схожие ПЛИС Циклон 3 55й и Спартан-6 25й в архиве в Кактуса около 4М, а в ИСЕ 60М(!)

 

Видимо разные критерии архивности....

Кактус после раскрытия архива требует обязательной полной компиляции, а в ИСЕ можно сразу в бой(только тянет все тряпки, что по ходу рождались, но в проекте не задержались!)...

Изменено пользователем Мур

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вставлю свои 5 копеек в тему "почему схематик (даже в топ левеле) - безусловное и абсолютное зло". Иногда для отладки приходится пльзоваться средствами типа Chipscope. Этот инструмент рабтает

с нетлистами после синтеза. Так вот, если в топ левеле нарисован схематик, то по умолчанию цепи и компоненты именуются дефолтными именами типа "XLXN12345". Очень трудно из этой абракадабры найти требуемый сигнал, соответственно разарабтчик вынужден именовать каждый сигнал и каждый блок "вручную". При таком подходе преимущества в скорости создания топ левела тут же теряются. Если топ левел написан на Verilig/VHDL, то компоненты в нём разработчику просто приходится именовать "читабельными" именами, это дисциплинирует и упрощает поиск нужных сигналов в итоговом нетлисте.

По поводу читабельности тоже есть большие сомнения. Мне кажется что кусок исходника в несколько килобайт на порядок больше "читабелен" чем простыня схемы формата хотя бы A3. с кучей шин и проводников. Кроме того в любом HDL редакторе (и во встроенном редакторе ISE тоже) есть кнопка поиска, позволяющая быстро и удобно проследить точки соединения сигнала с разными модулями. ИМХО это удобнее чем лазить с лупой по портянке A3 рискуя ошибиться.

Аргументы типа "а мне быстрее в топ левеле инвертор вставить схематике чем в HDL" тоже нельзя принимать всерьёз. Начнём с того что "инвертор в топ левеле" - это моветон и отвратительный стиль проектирования. Все мелкие шурушки типа инверторов должны быть в модулях внутри. Кроме этого могу поспорить с любым приверженцем схематика, что мне добавить к сигналу тильду "~" будет быстрее чем ему нарисовать инвертор.

В обшем моё мнение такое - схематик must die, и никто не сделал для этого больше чем Xilinx ISE developers team.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Этот инструмент рабтает с нетлистами после синтеза.Так вот, если в топ левеле нарисован схематик, то по умолчанию цепи и компоненты именуются дефолтными именами типа "XLXN12345".

Если работать после синтеза, то и при текстовом вводе цепи приобретают малопонятные имена.

 

Если юзать корегенератор, то этой проблемы нет ни там, ни там.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если работать после синтеза, то и при текстовом вводе цепи приобретают малопонятные имена.

Если цепь не подверглась оптимизации, то исходные имена как правило остаются неизменными. Иногда по какой-то странной причине вместо именованных цепей

в нетлисте возникают имена, соттветствующие портам модулей, но найти их не так уж сложно при некоторой сноровке и опыте.

Если юзать корегенератор, то этой проблемы нет ни там, ни там.

Chipscope можно вставлять по-разному. Кто-то пользует Coregen для его генерации, а потом

"вручную" вставляет его в проект. Я пользую Core Inserter, мне кажется там меньше "ручной работы", но это - вопрос привычки и вкуса.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если цепь не подверглась оптимизации, то исходные имена как правило остаются неизменными. Иногда по какой-то странной причине вместо именованных цепей

в нетлисте возникают имена, соттветствующие портам модулей, но найти их не так уж сложно при некоторой сноровке и опыте.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А может KEEP Hierarchy?

If you use the XST synthesis tool, enable the Keep Hierarchy option to preserve the

design hierarchy and prevent the XST tool from optimizing across all levels of

hierarchy in your design. Using the Keep Hierarchy option preserves the names of

nets and other recognizable components during the ChipScope Pro core insertion stage

of the flow. If you do not use the Keep Hierarchy option, some of your nets and/or

components may be combined with other logic into new components or otherwise

optimized away. To keep the design hierarchy:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А может KEEP Hierarchy?

If you use the XST synthesis tool, enable the Keep Hierarchy option to preserve the

design hierarchy and prevent the XST tool from optimizing across all levels of

hierarchy in your design. Using the Keep Hierarchy option preserves the names of

nets and other recognizable components during the ChipScope Pro core insertion stage

of the flow. If you do not use the Keep Hierarchy option, some of your nets and/or

components may be combined with other logic into new components or otherwise

optimized away. To keep the design hierarchy:

Это не всегда помогает. Зависит от конкретного случая. Кроме того, эта опция "keep hierarchy" объективно

ухудшает свойства дизайна, как по скорости, так и по объёму занимаемой логики.

Для предотвращения оптимизации цепи существуют специальные атрибуты, они немного разные для разных

синтезаторов, однако позволяют эту проблему решить.

А вообще тот факт, что какую-то важную цепь синтезатор "соптимизировал" должен разработчика малость

настораживать - в большиннстве случаев "неожиданная оптимизация" является следствием примитивных

ошибок(висящие в воздухе выхода, ошибочно поименованные сигналы и т.д.) Это легко вычисляется по

логам синтезатора, надо только не лениться их читать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как ведёт себя ISE с одновременным ведением пары проектов? Кактус легко допускал такое хамство с моей стороны. Там даже фоновый режим предусмотрен!

ИСЯ глючит... Стараюсь пускать только один проект. И не дышу...

Может есть секрет у опытных юзеров?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как ведёт себя ISE с одновременным ведением пары проектов?
Загрузил один - выгрузил другой. Вполне сносно :rolleyes:

ИСЯ глючит... Стараюсь пускать только один проект. И не дышу...
Она и от одного проекта периодически виснет, а уж запустить 2 штуки ISE с разными проектами одновременно лично я как то даже боюсь :wacko:

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может есть секрет у опытных юзеров?
Опытные юзеры используют make. И горя не знают. Пишется один раз, потом немного модифицируется под конкретный проект. Из комстроки всё работает как надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Опытные юзеры используют make. И горя не знают. Пишется один раз, потом немного модифицируется под конкретный проект. Из комстроки всё работает как надо.

К примеру, что надо делать, чтобы запустить одновременно 3 проекта? Какие модификации конкретных(3х!) проектов необходимы?

Изменено пользователем Мур

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

К примеру, что надо делать, чтобы запустить одновременно 3 проекта? Какие модификации конкретных(3х!) проектов необходимы?

 

Очевидно же, что у каждого проекта свой Makefile. Знаете ли вы, что такое Makefile?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очевидно же, что у каждого проекта свой Makefile. Знаете ли вы, что такое Makefile?

довольно грубо...

Т.е. ручками вписываются указания ОС для управления общими рессурсами при компиляции? Т.Е. дуют на воду, чтобы не обжечься?

...Это в руководстве по ISE прописано или это установлено экспериментально?

 

Приведите пример своего Makefile....

 

Так это достоинство или недостаток ISE?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно не в тему: В Xilinx-ах (у продвинутых типа вёртксов) имеются внутренние (не те что на пинах, а внутри) буферы трёх состояний. Так что можно формировать внутренние двунаправленные шины. В альтерах они отсутствуют как класс. Так что хочешь не хочешь - будешь юзать мультиплексоры. (Если ошибаюсь то поправьте). Даже если напишу код с внутренней двунаправленной шиной, синтезатор всё равно переправит её на мультиплексоры ( которые жрут большие ресурсы, если шины многоразрядные).

 

Моё лично впечатление от схематика в квартусе да - хороший. В старых версиях айса - тоже был хороший, а сейчас - плохой. и правильно! Синхронный проект сдеать на схематике гораздо труднее, чем написать на VHDl-е. Тут - сто строчек, а там дикая по размеру схема. Мир идёт в сторону чисто синхронных схем - а это значит, что схематики не то что требуется для проектирования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно не в тему: В Xilinx-ах (у продвинутых типа вёртксов) имеются внутренние (не те что на пинах, а внутри) буферы трёх состояний. Так что можно формировать внутренние двунаправленные шины. В альтерах они отсутствуют как класс. Так что хочешь не хочешь - будешь юзать мультиплексоры. (Если ошибаюсь то поправьте). Даже если напишу код с внутренней двунаправленной шиной, синтезатор всё равно переправит её на мультиплексоры ( которые жрут большие ресурсы, если шины многоразрядные).

Именно так! Альтеровская архитектура в этом смысле ущербна...

Моё лично впечатление от схематика в квартусе да - хороший. В старых версиях айса - тоже был хороший, а сейчас - плохой. и правильно! Синхронный проект сдеать на схематике гораздо труднее, чем написать на VHDl-е. Тут - сто строчек, а там дикая по размеру схема. Мир идёт в сторону чисто синхронных схем - а это значит, что схематики не то что требуется для проектирования.

Я больше скажу. Если заморочишься на схематик, то потом при отладке не сможешь полноценно пользоватся ChipScope. Там будут предлагать имена цепей, которых ты не найдёшь в проекте...

И тогда ты проклянешь день, когда решил слелать сборку в TopLevel VHDL-кирпичиков!... , но столь любимых и понятных начальству....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...