Pull to refresh

Comments 7

О, Actel теперь это Microsemi… Ну и как, Flash конфигурационная память работает нормально?
Отлично написано. В своё время тоже страшился всех этих тайминганалазеров, предпочитая менять дизайны))) Очень помог в освоении документ «TimeQuest для чайников», он был отправной точкой (Спасибо Денису). Теперь я даже люблю порелаксировать над проектом бесконечно разбирая слаки, благо инструменты для этого есть в квартусе.

Спасибо за статью, буду рекомендовать всем нашим новым разработчикам. Ну и с нетерпением жду продолжения, хорошо если на хабре будет полная информация по этому вопросу с примерами.
И да, всё-таки определение:
Flase path — ложные пути, такие пути хоть и физически существуют, но во время функционирования устройства по ним никогда не пойдет сигнал.

считаю не совсем верным. Конструкцией set_false_path мы просто сообщаем анализатору, что указанный путь анализировать не нужно. Но при этом сигналы по таким путям идут и нормально работают, просто задержки на них для нас некритичны.
согласен, поправлю!
Очень нужная статья, но в то же время, дабы не распугать потенциальных новых плисоводов, стоит заметить что в начале пути на спец инструментарий контроля тайминга можно забить. Вот понимание базовых принципов синхронной логики совершенно необходимо, оно позволяет прикидывать и удерживать в голове тайминг небольших проектов.
Простой пример: у нас есть 4-битный счётчик, но нам нужно досчитать только до 9, затем счётчик всегда сбрасывается. Но оказывается, что инкремент на бОльших числах задействует пути со значительными задержками.

Пример, конечно, неплохой, но ИМХО, такая оптимизация не нужная (да и вредная, т.к. не особо интуитивная).
Чаще всего проблемы в других вещах, чем в счетчиках.
Only those users with full accounts are able to leave comments. Log in, please.