Jump to content

    
yes

А стратегиями в vivado кто-нибудь пользовался? Заметна разница?

Recommended Posts

Ну что. Разница небольшая есть. На Perfomance_ExtraTimingOPT у меня был слэк -1.5 и total -70000, после Performance_ExploreWithRemap стал -0.99 и total -16000. Результат есть. Можно юзать. Пробовал кстати ещё в синтезе поиграться, ставил ретайминг. Запускал на одной машине с ретаймингом, на другой без. Абсолютно никакой разницы ни по времени компиляции, ни по слэкам. Всё один в один.

Share this post


Link to post
Share on other sites
11 minutes ago, Kronac said:

Запускал на одной машине с ретаймингом, на другой без. Абсолютно никакой разницы ни по времени компиляции, ни по слэкам. Всё один в один.

чтобы ретайминг работал, надо проект реализовывать с учетом ретайминга, добавлением избыточного количества регистровых уровней, в противном случае будет все как у вас.

Share this post


Link to post
Share on other sites
1 hour ago, des00 said:

чтобы ретайминг работал, надо проект реализовывать с учетом ретайминга, добавлением избыточного количества регистровых уровней, в противном случае будет все как у вас.

Можно немного подробнее, не очень понял. Что значит "добавлением избыточного количества регистровых уровней"?

Share this post


Link to post
Share on other sites
42 minutes ago, Kronac said:

 Можно немного подробнее, не очень понял. Что значит "добавлением избыточного количества регистровых уровней"?

https://www.eetimes.com/how-to-use-register-retiming-to-optimize-your-fpga-designs/

он же просто двигает логику между слоями регистров. если слоев мало, то и двигать нечего. А так, поставил 2-4 дополнительных слоя и софт с ретаймингом сделает так что не нужно пары дней ручной оптимизации. Ну это в теории.

 

Share this post


Link to post
Share on other sites
36 minutes ago, des00 said:

https://www.eetimes.com/how-to-use-register-retiming-to-optimize-your-fpga-designs/

он же просто двигает логику между слоями регистров. если слоев мало, то и двигать нечего. А так, поставил 2-4 дополнительных слоя и софт с ретаймингом сделает так что не нужно пары дней ручной оптимизации. Ну это в теории.

 

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

Share this post


Link to post
Share on other sites
11 minutes ago, Kronac said:

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

это register duplication для снижения фанаута, при этом это может немного конфликтовать с keep equivalent registers. А ретайминг именно двигает регистры по логике, при этом всякие средства формальной верификации могут показывать не эквивалентность проектов в промежуточных точках.

Share this post


Link to post
Share on other sites
26 minutes ago, des00 said:

это register duplication для снижения фанаута, при этом это может немного конфликтовать с keep equivalent registers. А ретайминг именно двигает регистры по логике, при этом всякие средства формальной верификации могут показывать не эквивалентность проектов в промежуточных точках.

Понятно, спасибо.

Я просто вообще пользуюсь сквозным маршрутом проектирования от Ментора, прежде чем загнать в вивадо, я прогоняю через Precision RTL Plus 2018.1 Он там всё уже грамотно создаёт, двигает, ретайминг осуществляет. Причём  корректно осуществляет с видимым результатом. Там это всё доведено до автоматизма и мне о таких мелочах задумываться не приходится.

Share this post


Link to post
Share on other sites
12 hours ago, Kronac said:

просто вообще пользуюсь сквозным маршрутом проектирования от Ментора, прежде чем загнать в вивадо, я прогоняю через Precision RTL Plus 2018.1

не знаете, а к квартусу такую штуку можно прикрутить?

On 12/22/2020 at 12:52 PM, RobFPGA said:

Ну и  делать  тайминг  анализ чуть ли не после каждого этапа  для ранней диагностики проблем

в квартусе прошке такая штука появилась.

Share this post


Link to post
Share on other sites
17 hours ago, Kronac said:

Я просто вообще пользуюсь сквозным маршрутом проектирования от Ментора, прежде чем загнать в вивадо, я прогоняю через Precision RTL Plus 2018.1 Он там всё уже грамотно создаёт, двигает, ретайминг осуществляет. Причём  корректно осуществляет с видимым результатом. Там это всё доведено до автоматизма и мне о таких мелочах задумываться не приходится.

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

4 hours ago, new123 said:

не знаете, а к квартусу такую штуку можно прикрутить?

возможность подключить сторонний синтезатор там всегда была.

Share this post


Link to post
Share on other sites
12 hours ago, new123 said:

не знаете, а к квартусу такую штуку можно прикрутить?

в квартусе прошке такая штука появилась.

Да конечно, я изначально под квартусом так и работал. Сам проект собираю в Mentor HDL Designer (2016 версии), подтягиваю к нему ip ядра из квартуса (или Вивадо) в виде блэкбоксов. Моделирование прохожу в QuestaSim, потом синтез в Precision. Он очень классно всё собирает, утаптывает тайминги, помогает понять каки были системные ошибки и тд. На выходе получаю большой verilog/vhdl/vqm файл и его уже подтягиваю как верхний уровень в квартус. Очень удобный подход и приносит очень положительные результаты. 

Можно и автоматически запускать всё это вместе. Но не стал с этим заморачиваться. Ручками как то привычнее.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.