Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QSys-система перегенерируется при компиляции
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
alexadmin
Делаю сейчас крупный проект с QSys, стало напрягать следующее - каждый раз при запуске компиляции проекта в квартусе, зачем-то перегенерируется вся qsys-подсистема. Вижу в этом как минимум три минуса и ни одного плюса:
1) Тратися время на саму перегенерацию, минуты две-три;
2) Слетает партшн, назначенный на эту подсистему до состояния source modified, соответсвенно она пересобирается целиком с нуля;
3) меняется timestamp в самой системе, а значит желательно пересобрать и софт тоже.
Это оно зачем так делает и как бы это побороть?
Quartus 11.1, в десятке было так же, если не ошибаюсь, 12 еще не пробовал...
spectr
Проверьте есть ли у Вас в дереве проекта файл *.qsys и если есть - удалите его из дерева. Вместо него должен быть файл *.qip. (здесь * - имя Вашей Qsys-системы).
Koluchiy
При удалении qsys и добавлении qip появляется масса Critical Warning в процессе работы Timing Analyzer.
Кто виноват, и что делать?

Quartus 12.0sp2.
spectr
Может быть слетели sdc-файлы? Проверьте, подключены ли они.
vadimuzzz
Цитата(Koluchiy @ Jan 22 2013, 12:14) *
Кто виноват

виноват тот, кто удалял sm.gif
Цитата
и что делать?

читать, что пишется в сообщениях. или сюда выложить логи
alexadmin
Цитата(spectr @ Jan 14 2013, 10:25) *
Проверьте есть ли у Вас в дереве проекта файл *.qsys и если есть - удалите его из дерева. Вместо него должен быть файл *.qip. (здесь * - имя Вашей Qsys-системы).


Метод сработал, за что советовавшему благодарность cheers.gif

Ну и в копилку маразмов: начиная с какого-то очередного компонента (а всего их около 70 в системе было), в синтезированной системе новые модули перестали быть доступны в адресном пространстве. То есть адреса распределены, всякие арбитры сгенерированы и т.д. А в железе при попытке обратиться к указанному адресу, читается другой кусок адресного пространства, физического обращение к модулю не происходит (read/write стоят в нуле). После бития головою в течении суток, переполз на последний квартус - все заработало...
wpost
Цитата(alexadmin @ Jan 22 2013, 15:47) *
Метод сработал, за что советовавшему благодарность cheers.gif

Ну и в копилку маразмов: начиная с какого-то очередного компонента (а всего их около 70 в системе было), в синтезированной системе новые модули перестали быть доступны в адресном пространстве. То есть адреса распределены, всякие арбитры сгенерированы и т.д. А в железе при попытке обратиться к указанному адресу, читается другой кусок адресного пространства, физического обращение к модулю не происходит (read/write стоят в нуле). После бития головою в течении суток, переполз на последний квартус - все заработало...


если я не ошибаюсь, в 12 квартусе заявлено 64 битное адресное пространство в Qsys.
alexadmin
Цитата(wpost @ Feb 2 2013, 18:46) *
если я не ошибаюсь, в 12 квартусе заявлено 64 битное адресное пространство в Qsys.


Не знал, интересно как со стороны процессора 32-разрядного это поддерживается. Надо будет почитать. Впрочем непосредственно это влиять было не должно - адресного пространства там еще дофига было.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.