Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Варнинги в Quartus II
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
TigerSHARC
Подскажите пожалйста что означают эти варнинги:

1)Warning: Following 16 pins have no output enable or a GND or VCC output enable - later changes to this connectivity may change fitting results
Info: Pin Data_IO[15] has a permanently enabled output enable
.
.
. etc.

2)Warning: Following 16 pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results
Info: Pin Data_IO[15] has VCC driving its datain port
.
.
. etc.
3)Warning: TRI or OPNDRN buffers permanently enabled
Warning: Node "Data_IO~synth"
.
.
. etc.
4)Warning: The following tri-state nodes are fed by constants
Warning: The pin "Data_IO[15]" is fed by VCC
.
.
. etc.
5)Warning: Tri-state node(s) do not directly drive top-level pin(s)
Warning: Converted tri-state buffer "1" feeding internal logic into a wire

... и ещё вопрос:
Всегда ли сообщения типа Warning: Design contains 17 input pin(s) that do not drive logic
означают ошибку в исходнике... спрашиваю потому что по логике всё правильно(схема простая)
__________________________

перевод знаю, просто хочется понять насколько эти варнинги могут повлиять на правильность диаграмм...

Заранее спасибо всем ответившим.
des00
Цитата(TigerSHARC @ Dec 29 2009, 12:00) *
Всегда ли сообщения типа Warning: Design contains 17 input pin(s) that do not drive logic


Забейте, особенно на FPGA, а на CPLD вас предупреждают что в следующий раз (при использовании пинов) может не влезть %)
des333
Цитата(TigerSHARC @ Dec 29 2009, 21:00) *
Всегда ли сообщения типа Warning: Design contains 17 input pin(s) that do not drive logic
означают ошибку в исходнике... спрашиваю потому что по логике всё правильно(схема простая)


Ну, у Вас 17 входных портов нигде не используются. Если Вы об этом знали - значит ошибки нет, если не знали, значит она есть.  smile.gif
TigerSHARC
Цитата(des333 @ Dec 30 2009, 14:33) *
Ну, у Вас 17 входных портов нигде не используются. Если Вы об этом знали - значит ошибки нет, если не знали, значит она есть.  smile.gif


Нет, они мне нужны, по идее... значит видно косяк((
bark
Цитата(TigerSHARC @ Dec 30 2009, 19:06) *
Нет, они мне нужны, по идее... значит видно косяк((


Если есть в устройстве глобальные управляющие сигналы, то проверь их логику.

например если есть некий Global_ON который всегда в неактивном состоянии, то Квартус выкниет всю люгику которую этот сигнал так никогда и не включит, а тебе варнингов накатает.

у тебя определённо что-то не так с твоей двунаправленной шиной данных.

Напиши во что хоть пытаешься упаковать.
и на чем пишешь?
Мур
Я спросил у своих коллег, как относиться к Варнингам?
Обычно большинство сообщений о предупреждениях синтезатора (использовании сигналов, оптимизациях, синхронизации) или фитера (проблемы с питанием банков).
Я вначале просто принимал к сведению и допускал в проекте их наличие. Но начальство требует, чтобы их не было вообще(собственно почему я и опросил коллег)
В итоге было сказана интересная мысль,- главное, чтобы их не было на МоделСиме при прогоне бенчей. С Чем я абсолютно согласен. Там предупреждения на уровне ошибок.

А как вы, по опыту, относитесь к ним?
sazh
Цитата(Мур @ Feb 4 2012, 10:35) *
А как вы, по опыту, относитесь к ним?

Если начальник не коллега, лучше без варнингов

Указ Петра I от 09.12.1709:
Подчиненный перед лицом начальствующим должен иметь вид лихой и придурковатый, дабы разумением своим не смущать начальство.
Мур
Цитата(sazh @ Feb 4 2012, 12:13) *
Если начальник не коллега, лучше без варнингов


Вот пример! По .PCB на циклон3 было разведено 3 питания. А в проекте требуется реализация внешней двунаправленной шины. Если делать формально, то при 3-м питании на 11.0 версии компиляция невозможна вообще. КВА говорит, что двунаправленная шина будет проблемной при таком питании. Приходится обманывать КВА, что их два. Версия 8.0 такой вариант выдает всего-лишь как Варнинг. Схемотехнически теперь на шине будут ставить резисторы, дабы сгладить проблему. К сведению Варнинг?
sazh
Цитата(Мур @ Feb 5 2012, 10:08) *
Приходится обманывать КВА Схемотехнически теперь на шине будут ставить резисторы, дабы сгладить проблему. К сведению Варнинг?


Ваш пример с варнингом и Ваше решение обхода удивляет. По мне, так Вы проблему не решили, а закопали, и никакие резисторы Вам не помогут.
Не может быть, чтобы нельзя было реализовать любой набор разрешенных на кристалле интерфейсов, тем более на двунаправленной шине.
(Например реализация pci на 3 циклоне поразумевает с точки зрения пакета клемптон диоды на 3.0 pci)
Думаю, реально надо переходить на 3 вольта.
Я лично изменю техническое решение, но на обман пакета не пойду.
А что касается варнинга (невинного, но раздражающего) в верилоге
count <= count + 1;
Удивляет, почему не написать 1'b1; Ведь это читают разработчики разного уровня, зачем засорять листинг.
Мур
Привильно! Это грубая ошибка схемотехников и я к ней совершенно не причастен. В проекте я все объявил на 3.3в и проект на железе прошел все тесты. Я знаю, что резисторы тут в стороне от решения проблемы. Но так сделали до меня...
Вот только 8 КВА это оценил как Варнинг, а 11 КВА как ошибку.
...Интересно. Вот возмущение системы, что я триггер вход клока подал не на клок системы, а для запоминания фронта(для своих нужд) сопровождается варнингом о перспективе асинхронщины в проекте. Шибко умный?

Спасибо за участие. Хотелось услышать общую философию.
des333
Я считаю, что варнингов или не должно быть вообще или должно быть минимальное количество.
На работе пару раз по моей инициативе пытались избавиться от всех варнингов, но попытки не были полностью успешными.

И дело не в том, что это просто хороший стиль разработки. К тому же не все варнинги действительно опасны, просто если в проекте их всегда несколько сотен, то
заметить несколько новых, которые только что появились и, возможно, сигнализируют о серьезных ошибках - не так просто, как в случае, когда
изначально их не было. Поэтому мое мне - нужно бороться с теми, с которыми это сделать реально. Часть ( в несерьезности которых Вы совершенно уверены ) можно отключить,
оставшиеся должны представлять штучные экземпляры. sm.gif
Можно попробовать еще сохранить проанализированные и признанные неопасными варнинги и написать скриптик, который будет при каждой сборке проверять, не появились ли новые - но это уже немного тянет на изврат. sm.gif


P.S. Последнее время чаще пишу на C - там у нас -Werror корпоративное правило. sm.gif
des00
Цитата(Мур @ Feb 4 2012, 02:35) *
Я вначале просто принимал к сведению и допускал в проекте их наличие. Но начальство требует, чтобы их не было вообще

глупо, потому что предупреждение, предупреждению рознь. Одно дело когда предупреждение говорит что половину шины выкидываете, другое дело если говорит что не используемые выходы к земле подцеплены.
Цитата
В итоге было сказана интересная мысль,- главное, чтобы их не было на МоделСиме при прогоне бенчей.

интересное утверждение, единственные автоматические предупреждение модесима о неподключенных сигналах. Все остальные нужно вставлять ручками. %)

Цитата(des333 @ Feb 5 2012, 09:15) *
И дело не в том, что это просто хороший стиль разработки. К тому же не все варнинги действительно опасны, просто если в проекте их всегда несколько сотен, то заметить несколько новых, которые только что появились и, возможно, сигнализируют о серьезных ошибках - не так просто, как в случае, когда изначально их не было.

для верилога, с его автоматическим приведением типов, избавиться от варнингов это перелопатить весь проект. Если проект сплошная математика, то желаю удачи настойчивым %) Для того, что бы не потерять критические вещи в ква существует маскирование варнингов по типу/модулю. Можно один раз просмотреть все варнинги и отключить ненужные.

В среднем у меня в проектах где то 400-500 варнингов, из них ~400 замаскированных (приведение разрядностей, отсутствие фанаута из-за архитектурных скриптов и т.д.) как бы не вижу проблем с остальными.

ЗЫ. а слабо избвиться от варнинга о джиттере тактового сигнала, выведенного не из PLL_CLKOUT пина при разводке готовой ПП ? wink.gif
bark
Ам можно ткнуть в место где описана процедура маскирования варнингов в квартусе?
des00
Цитата(bark @ Feb 6 2012, 03:35) *
Ам можно ткнуть в место где описана процедура маскирования варнингов в квартусе?

мыщой в варниг, правой клавишей контекстное меню и hide messages %)
bark
не.. я про "маскирование по типу/модулю". hide messages просто их убрала..
des00
Цитата(bark @ Feb 6 2012, 05:07) *
не.. я про "маскирование по типу/модулю". hide messages просто их убрала..

ну да, потому что надо было выбирать вкладку suppres messages %)
bark
Цитата(des00 @ Feb 6 2012, 13:11) *
ну да, потому что надо было выбирать вкладку suppres messages %)

I can't believe I'm so stupid.
crying.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.