Jump to content

    

MickeyMouse

Участник
  • Content Count

    32
  • Joined

  • Last visited

Community Reputation

0 Обычный

About MickeyMouse

  • Rank
    Участник

Recent Profile Visitors

295 profile views
  1. Решил вот потихоньку начать изучать/применять функциональную верификацию и хотелось бы узнать от опытных разрабов о преимуществах и недостатках двух языков. PS / мне например больше по душе systemVerilog, но в разговоре с одним оченьГуру звучали аргументы про то, что systemC более мощный подход т.к. это "Си" !
  2. Всем привет! Наткнулся на очередной вынос бошки в инновусе при использовании анализа целостности сигнала... Имеется крыжик setOptMode -fixSiSlew который должен помогать исправлять ошибки вызванные SI, а по факту он наоборот к ним приводит) Т.е. как бы работает в режиме инверсии. Попутно столкнулся с отличием в работе команд reportTranViolation и report_constraint -drv_violation_type max_transition. Сталкивался ли кто-то с этим всем БРЕДОМ ???????
  3. Нашел какой-то amsRAK от cadence(совсем скромный правда), там в качестве примера PLL как раз Я вот в последнее время пользуюсь, для характеризации цифровых ячеек само-то
  4. А в чем специфичность?) Во всех гайдах на liberate_ams только и говорят про pll/dll, но примеров к сожалению нет. Да и в принципе во многих задачах SoC/DSP имеются модули PLL и если они самодельные то не плохо бы иметь на них временную и мощностную характеризацию. GUI flow смотрел, там только общие слова, про то как вообще с ним работать.
  5. Добрый день, коллеги! Поделитесь дельным скриптом и опытом для характеризации ФАПЧ (PLL) кому не жалко, христа ради. PS при необходимости, конечно, изложу задачу более детально...
  6. Вообще если говорить все-таки про genus, то получилось 2 способа решения проблемы: 1) Как предложил Alex, делать отдельный маршрут с последующим донттатчем 2) Использовать маршрут партишининга(derive_environment/geterate_ilm/read_ilm/design_assemble) Второй способ как-то не очень прошел(тайминги хуже получаются, но возможно я еще его не до конца вкурил) А указать тулу, как это можно сделать в innovus, через master/clone (т.е. не унифицировать модули) так и не удалось. Скорее всего этого сделать нельзя... Но и первый способ с подводными камнями: почему-то в финальном нетлисте остаются процедуры assign(remove_assign не работает, возможно это из-за неуникальность нетлиста). Это можно поправить на бэкэнде.
  7. Всем привет! Ломаю голову над такой проблемой... Есть инстанция --> module_name #(.param1(value1), .param2(value2) ) instance_name(...); После синтеза она конечно превращается в --> module_name instance_name(...); Как заставить genus протаскивать инстанциирование параметров в нетлисте(несмотря на то что они там уже не используются) ?
  8. Немного не в тему вопрос... Используете ICC2 ? И как он вам в сравнении с Innovus(если работали в нем конечно) ? Если не секрет, чем вызван такой выбор, просто у меня есть хоть и не большой, но опыт работы с ICC2 и для критических дизайнов по таймингам Innovus значительно сильнее(опять же, это не статистическая оценка, всего лишь пара чипов).
  9. Соглашусь с комментариями, лучше с падами. Вы и тайминги сразу закроете на весь дизайн и анализ потребления проведете. Я обычно функциональные пады добавляю на уровне rtl, а силовые уже на бэкэнде. Но вам все-равно нужно указывать констрейны описывающие внешние задержки и нагрузки(по крайней мере для синхронных портов чипа). Ну представьте что у вас имеется путь данных "внешний флоп - пад - внутренний флоп" а вы его не законстрейнили...
  10. Да не, это не то. Не хочется дополнительный маршрут и макро делать, у меня их и так уже больше чем звезд на небе. Сейчас нащупал вариант, синтезировать все а потом выполнять change_link(меняет модуль инстанции), но нужны видимо доп констрейны из-за разных нагрузок на порты клонов.
  11. Всем привет! Кто-нибудь сталкивался с такой проблемой? В дизайне есть N-штук одинаковых модулей, как указать генусу рассматривать их как один модуль инстанцируемый N-раз? По умолчанию генус делает uniquify, в результате имеем N разных модулей - для каждой инстанции свой модуль, а хотелось бы N-инстанций и один модуль( конечно с осознанием того что нетлист уже не уникальный). Есть крыжик minimize_uniquify но он не работает, кроме того по описанию не должен работать на 100%. По сути задача крайне стандартная. Исходя из принципа сквозного маршрута каденса, должен быть какой-то способ делать нормальный партишининг для модулей-клонов в генусе чтобы передать это в инновус.
  12. А можно поподробнее немного?) Как именно это сделать? Я ведь работаю в интерактивном режиме, так то я могу и через grep пропустить текст...
  13. Добрый день, всем! Проблема такая: имеется терминал bash, в нем запускается некая программа(тул) которая перехватывает управление терминалом, далее ведется работа с этой программой через терминал в интерактивном режиме(т.е. ввел команду, получил ответ и т.д. до выхода из программы). Внимание вопрос! Как подсветить определенные слова в терминале в режиме работы с этой программой? Например нужно подсветить слово warning: запускаем программу $ > program запускаем внутренние команды программы $ program> cmd1 "вывод в консоль ответа с подсветкой слова warning " $ program> cmd2 "вывод в консоль ответа с подсветкой слова warning "
  14. Добрый день! На рисунке если я не ошибаюсь ширина = 1мкн, расстояние = 0,4мкн. Но всяческие эксперименты с изменением этих величин не к чему не привели. Использую 6 слоев, HVH. Страйпы в 6 металле. Сама библиотека 10-слойная.