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

 
 
 
Reply to this topicStart new topic
> Incremental compilation
nmurzin
сообщение Mar 29 2011, 14:57
Сообщение #1


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

Группа: Участник
Сообщений: 94
Регистрация: 24-11-10
Из: г.Зеленоград
Пользователь №: 61 141



Здравствуйте.

У меня в проекте есть мегафункция альтеры HPC2
и кучка моих собственных компонентов.
HPC2 компилируется довольно долгое время и не всегда удачно.

Мне нужно откомпилировать HPC2 один раз и заморозить результаты компиляции.

В проекте по умолчанию всегда существует один partition верхнего уровня(TOPLevel).
Я назначил для HPC2 отдельный partition и создал для него LogicLock region.
Я в курсе что в настройках партиции есть указания об использовании результатов прошлой компиляции.

Как мне теперь объяснить квартусу чтобы он разводил только HPC2 ?
Т.е. как исключить из разводки остальные компоненты ?
Нужно ли и можно ли создать LogicLock region для TOPLevel partition ?
Или нужно создать еще один третий partition в который перетащить из TOPLevel оставшиеся компоненты ?
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Mar 29 2011, 15:17
Сообщение #2


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

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



А что Вам мешает создать отдельный проект под HPC2 и его полностью развести, и после того как разводка полностью удовлетворит требованиям закрепить его в виде нетлиста со всей разводкой. Затем просто его импортировать в топовый модуль?
Цитата
Т.е. как исключить из разводки остальные компоненты ?

Закрепить их отдельно в partition и импортировать в топовый файл.
PS/ имхо подход у Вас не совсем правильный. Проще взять именно проблемную часть и ее полностью развести и закрепить, а затем импортировать, нежели импортировать простые куски и разводить топовый проект с проблемной частью.
Go to the top of the page
 
+Quote Post
nmurzin
сообщение Mar 29 2011, 17:02
Сообщение #3


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

Группа: Участник
Сообщений: 94
Регистрация: 24-11-10
Из: г.Зеленоград
Пользователь №: 61 141



Никогда не приходилось импортировать в проект Net листы.

Подскажите пожалуйста в каких файлах содержатся
пост-синтезес и пост-фитинг Net листы ?

Как они импортируются в проект, путем тупого перетаскивания из папки в папку
или еще как ?
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Mar 30 2011, 08:19
Сообщение #4


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

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



Цитата(nmurzin @ Mar 29 2011, 21:02) *
Как они импортируются в проект, путем тупого перетаскивания из папки в папку
или еще как ?

Создаете отдельный проект скажем под HPC2, для него все входные/выходные сигналы, связанные с общим проектом делаете как виртуальные пины. Далее выставляете как для обычного проекта все временные ограничения и определяете область расположения. Делаете partition этого проекта и в его свойствах выставляете для genera Post-Fit, а в advanced Placement and Routing. Далее его полностью компилируете и после этого partition export. Получаете файл с расширением .qxp, в котором содержатся все сведения. Затем собираете новый проект и в топовый модуль подключаете вместо скажем верилоговского файла HPC2 и всех его подмодулей созданный файл .qxp. Синтезируете и импортируете еще раз в него созданный ранее .qxp, выбираете свойства для HPC2 partition именно как Post Fit (.qxp по умолчанию подключается как Post Synthesys). Вроде все. В настройках проверяйте чтоб была выбрана инкрементальныя компиляция. Ну и соответсвенно при компиляции топового модуля HPC2 не будет синтезироваться и разводится и его временные характеристики сохранятся (с определенной точностью, ибо в небольших пределах могут меняться Clock Skew).
Go to the top of the page
 
+Quote Post
nmurzin
сообщение Mar 30 2011, 08:30
Сообщение #5


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

Группа: Участник
Сообщений: 94
Регистрация: 24-11-10
Из: г.Зеленоград
Пользователь №: 61 141



Когда я выбираю NetList Type то чем отличается Post-Fit от Post-Fit(Strict) ?

На сколько я вижу, при перекомпиляции Time Quest все равно анализирует партиции
даже если для них выбрано Post-Fit(Strict) + Placement and Routing.
Как ему сказать что не надо там ни чего анализировать, выкинуть из проекта sdc файл ?
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Mar 30 2011, 08:45
Сообщение #6


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

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



Цитата(nmurzin @ Mar 30 2011, 12:30) *
Когда я выбираю NetList Type то чем отличается Post-Fit от Post-Fit(Strict) ?

Netlist - самый низкий уровень представления Post-Fit. Чем конкретно отличаются сказать не могу я всегда наивысший выбираю. Кстати Post-Fit(Strict) в 10 версии уже нет - там просто Post-Fit.
Цитата
На сколько я вижу, при перекомпиляции Time Quest все равно анализирует партиции
даже если для них выбрано Post-Fit(Strict) + Placement and Routing.
Как ему сказать что не надо там ни чего анализировать, выкинуть из проекта sdc файл ?

Time Quest и должен анализировать все, он же после fitter запускается. Суть в том, что при компиляции вставленная партиция подпихивает разведенную логику. В любом случае, если Вы запускаете Time Quest для проекта партиции или топового проекта, времянки не должны особо отличаться. Если различия существенны, то Вы что-то не так делаете. Наиболее вероятны две причины:
1) Подключенная partition вставляется не как Post-Fit и компилятор заново ее синтезирует, либо разводит.
2) Временные ошибки для общих сигналов - скажем какой-то сигнал тянется из подмодуля в закрепленный модуль и при этом на входе закрепленного модуля отсутствует регистр.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 29th June 2025 - 19:44
Рейтинг@Mail.ru


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