dxp 32 17 декабря, 2018 Опубликовано 17 декабря, 2018 · Жалоба Всем привет! Собственно вопрос в сабже. Что-то у меня как-то пока не очень успешный опыт. Борюсь с предупреждениями (не люблю, когда много их болтается - из-за этого можно пропустить реально важное сообщение) - какие по моей вине, стараюсь решить, какие не по делу, добавляю в фильтр подавления. Но это работает с Messages. А вот DRC, Metodology и CDC репорты просто так фильтровать нельзя. Но там есть для этого механизм waivers, с помощью которого, как я понял, можно подавлять нежелательную ругань. Только вот в реале что-то не выходит. Вроде всё делаю правильно - как в доке пишут, и создаются эти waiver'ы. Только вот толку нет - всё равно ругань присутствует. И не сказать, что они совсем не работают - когда запускаю репорт с флагом 'Display only waived violations', оно показывает ровно эти же нарушения помеченные, как waived. Возможно, просто готовить не умею, но чтение доков и гугление не помогло. Прошу помощи клуба. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 32 19 декабря, 2018 Опубликовано 19 декабря, 2018 · Жалоба Немного разобрался в вопросе. На самом деле всё работает, причина, почему у меня сложилось ошибочное впечатление, в том, что там этих нарушений под пару сотен, а сообщения там многословные с длиннющими путями иерархии, отличающиеся местами одной буквой, вот я и не различил, что там реально разные нарушения оно репортит. А в поскольку report_drc выдаёт ограниченное количество нарушений (20 в моём случае), то только это количество у меня и попало в waiver'ы. Отсюда возник следующий вопрос, на который ответа я нигде не нашёл: как снять это дурацкое ограничение - чтобы выдавал все нарушения? Для сообщений в Message можно задавать через set_msg_config. А для DRC, Metodology, CDC где это рулится? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Doka 1 8 января, 2019 Опубликовано 8 января, 2019 · Жалоба могу только подсказать по non-project mode который использую. в своё время делал шпаргалку для себя: http://idoka.ru/xilinx-vivado-cli-tips-and-tricks/ (проверялось в вивадо 2016) если вкратце, то нужны эти переменные среды и команды: set_msg_config set_param messaging.defaultLimit set_property SEVERITY {Warning} [get_drc_checks ...] set_property is_enabled false [get_drc_checks ...] Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 32 9 января, 2019 Опубликовано 9 января, 2019 · Жалоба Спасибо за ответ! Да, эти команды и использовал. Там проблема в том, что вивада показывает только 20 первых сообщений. А всего их может быть сотни и тысячи. И если хочется подавить конкретные сообщения, а не сразу целый класс (весь класс-то давить не очень разумно - ведь можно пропустить будущие, которые по делу), то нужно иметь их все. Чаще всего они одни и те же - текст одинаковый, отличается индексом сигнала: bla-bla slon[0] bla-bla slon[1] ... bla-bla slon[n] и это легко бы решалось с помощью масок. К сожалению, вивада не поддерживает маски (на удивление убогая система управления сообщениями), поэтому нужно все их перечислять. И вот тут следующая проблема, что она их выдаёт по 20 штук. Если с обычными сообщениями синтезатора ещё как-то прокатывает через установку лимитов, то DRC/Methodolgy этому не подчиняется. В итоге пришлось по 20 штук от DRC выцеплять. Ну, и подавляются эти сообщения не через set_msg_config, а через create_waiver. Т.е. это немного другая, несколько ортогональная, система. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться