Jump to content

    

topor_topor

Свой
  • Content Count

    507
  • Joined

  • Last visited

Community Reputation

0 Обычный

About topor_topor

  • Rank
    Знающий
  • Birthday 01/04/1980

Контакты

  • Сайт
    Array
  • ICQ
    Array

Recent Profile Visitors

2605 profile views
  1. Так ка всё описано говорит тулзе посадить оба счётчика на одно клоковое дерево. При этом отсутствие дата пасов между ними не заставляет "выровнять пути сигналов по всем проекту". Если связей действительно между ними нет. Но.... тулза может балансировать внешние выходы которые висят на виртуальных флопах заактированных одним соурсом . Чтобы всё понять, нужно тайминг репорты анализировать. Добавление третьего счётчика может валить тайминги изза отсутствия оптимального расположения ресурсов (а какие таймин виолейшены кстати?). Есть 2 варианта: 1) Сделать 2 независимых клоковых дерева и описать через create_clock. Привязываем IO к нужным клокам. 2) Фальш пас от всех флопов одного счетчика ко всем флопам другого и наоборот. И по всем IO.
  2. Большую цифру ещё проще покрыть - 99% это вообще без усилий. Миксид сигнал гораздо труднее - мало тригеров - каждый фолт понижает кавередж Время теста.... Миксид сигнал лоукост чипы думаю порядка десятков/сотен миллисекунд теста Стандарти есть + печальный опыт фирмы. Иногда самодурство начальства.... Для автомотива по стандарту надо >95% stuck-at
  3. 98% даже на миксид сигнал цифре занефиг делать. Рантайм тула.... Ну за неделю все тести можно сгенирить. Скантести гоняются раз десять на разних стадиях так как бистрие... При етом 98% связей проверяется. Аналог не так часто но там и не надо. Както так..... А вручную, малая серия.... Ето про микросхеми вообще?
  4. Чето я запутался :( Чем выход производства от етапа производства отличается? Ето все о производстве микросхеми?
  5. А я думал что вообще каждая микросхема проверяется на выходе производства...
  6. В практической микросхемотехнике такие ограничения не известни.... А как тогда суперкомпьютеры с тысячами процов работают?
  7. Проще несколько штук "купить" прямо за бугром и диппочтой доставить, чем возиться тут с несчастными "микросхемщиками"..... Дешевле чем по миллиону за штуку будет....
  8. "тоже найдутся покупатели." - в микросхемном бизнесе звучит так: Есть как минимум милионы покупателей в месяц. Иначе нет смысла огород городить.... Забор дорогой.....
  9. Чисто ради интереса... Кто небудь из тут присутствующих может лично сделать аналог этого чипа при наличии нужного бюджета в пределах розумного (ну скажем за лямов 5 уев)? Есть подходящее производство не за границей для этого? Кажется мне что при острой необходимости проще самолёт побольше сделать чтоб рацию на лампах возил....
  10. А какая конечная цель поставленного вопроса? Ответ будет сильно зависеть от цели. Гдето в пределах от freeware до 200К.уе за лицензию в год..... Если просто чето узнать про топик, то инфи валом. Гугл с Амазоном помогут. Чтото типа: https://www.chipverify.com/verilog/asic-soc-chip-design-flow
  11. Ви включили OCV. Кстати зачем? При етом сетап / холд считается для случая "хуже худшего". Для сетапа wc source/bc destination на флопах. Ето обьясняет почему задержки разние в одном репорте. OCV работает правильно при set_propagated_clock. Попробуйте report_timing - view чтоб увидеть какие wc/bc взяти Раз ето asic то тулза сама ниче не подставит в sdc. А как ви sdf записали? Тоже в ocv?
  12. SOURCE_INSERTION_DELAY это задержка от выхода осцилятора до точки где задан клок (create_clock) - "Clock Latency" Задержка отрицательная, т.к. отсчёт идёт от точки задания клока. Негативный инсершин делей возможен, если используется PLL, которая собственно вставляет "негативную задержку" (фазовый сдвиг) так чтобы компенсировать инсершин делей и сделать клок как в декларации. В первом репорте мы видим в соурс дата пасе: Clock Rise Edge 0.000 + Source Insertion Delay -2.154 = Beginpoint Arrival Time -2.154 Timing Path: А в клок пасе: Clock Rise Edge 0.000 = Beginpoint Arrival Time 0.000 Other End Path: Т.е. Source Insertion Delay тут отсутствует. При этом клок пас совпадает до /clock_manager/g516__5795. Во втором репорте всё совпадает как и ожидалось (также оно и при моделировании с SDF). В этом похоже и проблема. Почему так мне трудно ответить... Я не знаю что и из чего ви дизайните. А из какой тулзы репорты? Если это FPGA, то тул сам подставляет "невидимые задержки" в SDC. Есть конечный SDC?. Если это XILINX то вот возможное объяснение почему исершин делей разное: This becomes a problem when you want to cross synchronously between a small domain and a large domain - the insertion latencies are different, and hence you get timing problems. У вас как вообще клок три построены? ---- P.S Задание set_clock_latency не поможет если в SDC стоит set_propagated_clock (вы указали пропагейтид клок в SDC?). Попробуйте задать set_clock_latency -source. В клоковом дереве я вижу два логических гейта. Для ASIC тулзы это не проблема по дефолту, а вот в FPGA "просто тупо вписать это в RTL" не лучший путь...GATED CLOCK in FPGA
  13. Если втупую задать с запасом input/output_delay ну никак низя (ну нету явного полпериода запаса и нужно наносекунды ловить или заказчик сильно требует доказать тайминг) то можно по умному - строите TOP блок цифры так чтобы туда все ети внешние роутинги входили и делаете честный екстракт SPEF. Для этого ещё нужно создать LIB файли всех аналоговых блоков, буферов, падов итп. (входные ёмкости, сетап/холд тайм...) Некоторые заморачиваются и этим. Пользы от этого обычно 0. Так получится честный екстракт паразитов и честный STA/ Попроще решение - сделать с аналогового топа CAP екстракт и задать его как нагрузку выходов (как задержка в линии)... При этом правда задержки в буферах, запасы на сетап/холд итп. всё равно придётся вручную через input/output_delay задавать. Подтяжка под корнеры через -min/-max в input/output_delay задаётся. Можно ещё задать сетап/холд виртуального тригера (внешнего) относительно виртуального клока. Тут есть пример: Input and Output Delays with Multiple Clocks