Jump to content

    

new123

Участник
  • Content Count

    972
  • Joined

  • Last visited

Community Reputation

0 Обычный

About new123

  • Rank
    Знающий

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. да, так и есть, я даже задавал опции, чтобы он сам дублировал. Но в итоге сам его в коде распилил на две части и руками посадил в чипе куда надо в разные места
  2. Смахивает на то, что нужно лезть править, по такому же примеру https://www.intel.com/content/www/us/en/programmable/support/support-resources/knowledge-base/solutions/rd04172013_537.html
  3. жизнь заставит, не так раскорячишься ) У меня очень плотно угол чипа забит и очень надо там развести все без задержки и конвееров. Алгоритм простой я выработал, щелкаю Routing Utilization и как правило, слаки на путях, проходящие через красные зоны. Вот их то я и растаскиваю, чтобы Long и Short interconnect подосвободились.
  4. По второму вопросу LogicLock Region По первому наверное Partition с Final типом поможет (только надо следить за времянкой при Partition). Я еще Back Annotation использую, но именно тут много нюансов. Когда уже сложно и оптимизацией кода уже не поможешь, наверное придется вникать самому в разводку и начать помогать квартусу. Тут весь арсенал Chip Planner в помощь. Я смотрю, какие пути плохо получаются, открываю их в планнере и начинаю крутить вертеть, чтобы они все таки успели
  5. обконстрейнить наверное весь проект, как вариант. И погрузиться в TimeAnalyzer. Недавно такого же паразита неделю искал. я такие штуки костылем называю ))
  6. вот в том и дело. Что Required так же уменьшается параллельно Arrival. То есть квартус предпочел уменьшить общую задержку всей схемы, всего проекта. Я думал, может есть какие методы, чтобы Required оставить константным, задать где нибудь. У меня тут опыта и знаний не хватает.
  7. это я примерно понимаю. Может я мыслю слишком прямолинейно. Вот у всего проекта, или значительной его части это время 7нс.. После оптимизации стало 5нс. То есть ему стало легче и быстрее доставлять сигналы до потребителей (может как раз тут я ошибочно думаю?). Ну раз тебе стало легче роут делать, оставь ты 7нс, но убери слаки. Неверно? Путь один и тот же. В основном это сигнал от clock_enable до потребителей. Пример always @ (posedge clk) begin if (clk_en) begin end end Констрейнов у меня полно, но в основном одни мультициклы, проходящие через этот clk_en (setup 2, hold 1) Оптимизация незначительная, просто где это возможно сильно подрезал битность данных, лишнее убрал, но так как это был массовый характер, то эффект был. Выход то я вроде тоже нащупал временный, раскопировать в логие это clk_en и раскидать его по чипу. Но все же интересен вопрос, слишком ли я примитивно думал, что я могу зафиксировать общую задержку всех данных, тем самым уменьшив слаки при оптимизации
  8. Форумчане привет. Помогите пжлст с ситуацией. 1) Имею отрицательные слаки. Ну имею и имею, не в первой. 2) Начинаю проводить оптимизации существенные. 3) И что делает квартус? Он уменьшает Data Arrival Time в пути, а слаки остаются теме же. К примеру. Имею путь со slack -100ps, Data Arrival Time 7ns. Ладно, я смирился уже с этой цифрой. Провожу оптимизацию, он берет у всех путей уменьшает Data Arrival Time до 5ns и оставляется абсолютно те же слаки ~ -100ps Могу я как то квартус попросить, пусть он уже оставляет эти задержки в 7ns, но зато уберутся слаки? может какой sdc прописать? типа set_min_delay? Я просто в нем немного плаваю. Заранее спасибо.
  9. Сама альтера рекомендует асинхр группы + задание set_net_delay set_max_skew. Так они кстати в своих фифошках делают. Не могу сходу найти отдельный мануал у них. Там подробно рассказывается, почему это немного лучше false_path. Но вот тоже их https://www.intel.com/content/www/us/en/programmable/support/support-resources/knowledge-base/tools/2017/how-do-i-constrain-my-clock-domain-crossing-.html
  10. хотел вам замечательную статью дать с примером, но вам уже ее дали ). Как только ее прочитал, всегда счетчики стал так делать. Очень помогает
  11. Полно подобных сообщений с A10 и трансиверами из других корок на форуме интел. Очень похоже на баг корки вашей версии квартуса. Может стоит версии поменять Еще пишут, что тестовый дизайн может не подойти, если взяли с сайта интела. От терасика подходит?
  12. Судя по всему вы сделали logic region. Логически разместили в нем DDR4A_CKE. Но чисто физически (из assigment editors) он туда не попадает. Или сайз региона увеличить или поменять его расположение.
  13. а они на петлях должны запускаться. Не уверен, что вы так быстро петли нашли ) попробуйте у себя прописать, вдруг повезет. Или они уже у вас прописаны