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

по Vivado - научите методологии как ускорить synt/impl

пытаюсь использовать в "прожект моде", то есть руками tcl для синтеза/имплемента не пишу

попробовал инкрементальную имплементацию, отдельный run, который берет routed чекпоинт из дефолтного ран-а (ну то есть то что кликанием мышкой делается)

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

 

по описанию (ug905/ug946 hierarchical design) возникло впечатление, что прямого аналога партишинам нету - то есть в режиме "проекта" пометить какие-то куски иерархии как некие отдельные "сущности" которые при повторных запусках можно не переразводить - нельзя

нужно задавать отдельные out-of-context модули, к ним писать in-out констрейны, для сборки всего писать hdl c блэк-боксами - то есть начальные трудозотраты велики, все это в виде проекта с картинками и мышкой не получится и в дальнейшем проблемы с передачей проекта коллегам..

 

-----------------

 

может я чего-то недосмотрел?

может есть какие-то не сильно трудозотратные методы копирования большей части предыдущей разводки с изменениями в отдельном модуле (собственно партишины альтеровские, пояснение для труЪ ксайлинсоводов)

 

 

 

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


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

пытаюсь использовать в "прожект моде", то есть руками tcl для синтеза/имплемента не пишу

попробовал инкрементальную имплементацию, отдельный run, который берет routed чекпоинт из дефолтного ран-а (ну то есть то что кликанием мышкой делается)

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

 

по описанию (ug905/ug946 hierarchical design) возникло впечатление, что прямого аналога партишинам нету - то есть в режиме "проекта" пометить какие-то куски иерархии как некие отдельные "сущности" которые при повторных запусках можно не переразводить - нельзя

нужно задавать отдельные out-of-context модули, к ним писать in-out констрейны, для сборки всего писать hdl c блэк-боксами - то есть начальные трудозотраты велики, все это в виде проекта с картинками и мышкой не получится и в дальнейшем проблемы с передачей проекта коллегам..

 

-----------------

 

может я чего-то недосмотрел?

может есть какие-то не сильно трудозотратные методы копирования большей части предыдущей разводки с изменениями в отдельном модуле (собственно партишины альтеровские, пояснение для труЪ ксайлинсоводов)

 

open implemented design,netlist, rmb на готовом модуле, fix cells.

 

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


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

по rmb - fix cells действует только на leaf cell-ы, на иерархию не действует - пишет Could not find placed cell

 

можно, наверно, через

set_property is_loc_fixed true [get_cells

на все в иерархии поставить,

 

буду пробовать,

но не нашел в ксайлинских доках упоминания этих "пропертей"

ну то есть интуитивно смысл IS_BEL_FIXED and IS_LOC_FIXED properties on the object are physical constraints

reflecting the placement of the object понятен, но не является этот метод каким-то жестким хаком, который лучше не применять?

 

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


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

Эти псы в плохом смысле слова партиции к Виваде еще не прикрутили (в ISE как-то работали).

 

Я как почитал мануалы, так решил что ну ихние поделки в болото, буду ждать пока наконец сделают.

Вот, может, в 2018.1 появится?

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


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

У них это называется Hierarchical design, по моему. Я как то пробовал, время потратил. Модуль грузился, лочился, больше двух минут. А таких модулей в проекте было 8, и весь процесс забрал все как бы сэкономленное время. С натягом - 10 минут разница. У них не только ГУИ тормоз - сам Вивадо тормозина еще та.

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


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

open implemented design,netlist, rmb на готовом модуле, fix cells.

 

попробовал - так просто не работает, имплементэйшен валится с ошибкой

 

[Place 30-492] Failed to commit 1 big shapes:

mig_gen.gen_mig.ddrc/r_reg[hrdata][31]_i_27 with block Id: 49126

This block belongs to a shape with 4 instances.

Instance no. 0: r_reg[hrdata][31]_i_27

...

 

 

 

 

 

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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