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

    

Результаты синтеза не соответствуют ожиданиям

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

Во 2 и 3 случаях логика сравнения вписывается в требования и в пути от flag к data то, что хотел видеть топикстартер.

В его проекте видимо "собака порылась" где-то еще  ))

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


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

Резюме: Когда слаки не укладывались синтезатору за счет вмешивания флага в функцию удалось снизить data arrival time для data_a_reg[3] с 4.28 до 3.87

Изменено пользователем dvlwork

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


Ссылка на сообщение
Поделиться на другие сайты
4 hours ago, honinbo said:

виноват, у меня без ключа -setup было.

По умолчанию это  4 для setup и 3 для hold.

Для полноты картины, это не верно.  По умолчанию, значение для setup будет.  Для hold все равно явно задавать надо. Иначе, да :

4 hours ago, dvlwork said:

но без set_multicycle_path 3 -hold это ж дичь будет.

Будет. Но позже, когда до расчета hold дело дойдет.

В нашем эксперименте до него и не дошло еще.

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


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

смысл в том, что без -hold он будет задержку добавлять чтобы холды вытащить и поэтому путь от флага коротким не будет.

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


Ссылка на сообщение
Поделиться на другие сайты
On 2/8/2019 at 5:31 PM, dvlwork said:

смысл в том, что без -hold он будет задержку добавлять чтобы холды вытащить и поэтому путь от флага коротким не будет.

Будет, но это никак не относится к синтезу в DC без clock tree.

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


Ссылка на сообщение
Поделиться на другие сайты
On 2/8/2019 at 4:06 PM, honinbo said:

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

Во 2 и 3 случаях логика сравнения вписывается в требования и в пути от flag к data то, что хотел видеть топикстартер.

В его проекте видимо "собака порылась" где-то еще  ))

Спасибо за проделанную работу, на "кошках" как и вы проделал, все верно отрабатывает. Буду искать где собака порылась.

Изменено пользователем Dantist2k17

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


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

Так а в чем вопрос то? Если действительно имеет место быть малтисайкл, то все хорошо: сетап уже выполняется, как видно из репорта, а по холду буфера будут стоять перед вилкой на регистр flag. Если же в логике схемы нет малтисайкла, то слэк совсем небольшой - его исправит дерево.

К слову, дерево ведь можно сэмулировать в синтезе, через констрейнт set_clock_latency: если наложить его на тактовые входы регистра data, то отрицательный слэк можно убрать, а мощности элементов расслабить. Позже этот констрейнт будет учтен во время CTS. Проблем нет, вроде, все хорошо

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация