Полная версия этой страницы:
Неиспользуемые контакты ПЛИС
Всем привет.
У меня в проекте (Spartan II) куча неиспользуемых контактов.
Их как-то надо описывать? Или просто оставить неподключенными (в datasheet на SpartanII сказано, что они находятся в третьем состоянии)
Заранее спасибо за ответы
shamray
Dec 13 2006, 11:02
Недавно обсуждалась такая тема.
http://electronix.ru/forum/index.php?showtopic=23392НЕ совсем про Спартан, но принцип от этого не меняется.
Гвоздик
Dec 13 2006, 17:57
А у нас случай такой был: настроили неиспользуемые выводы ПЛИСины как входы и оставили их свободными. Однако, когда ПЛИСина в составе электронного модуля бортовой аппаратуры неоднократно поднималась/опускалась в небо и на землю, то пошли отказы ПЛИС сплошняком. Выяснилось, что из-за статики что-ли входные неиспользуемые выводы очень быстро переключались из одного состояния в другое, что приводило к перегреву ПЛИСины и выходу ее из строя. После перенастройки выводов ПЛИСины на вывод нуля отказы прекратились. Так что думайте сами.
забудте про эти выводы.
или лучше разведите от них дополнительные контактные площадки на плате.
Цитата(Гвоздик @ Dec 13 2006, 17:57)

А у нас случай такой был: настроили неиспользуемые выводы ПЛИСины как входы и оставили их свободными. Однако, когда ПЛИСина в составе электронного модуля бортовой аппаратуры неоднократно поднималась/опускалась в небо и на землю, то пошли отказы ПЛИС сплошняком. Выяснилось, что из-за статики что-ли входные неиспользуемые выводы очень быстро переключались из одного состояния в другое, что приводило к перегреву ПЛИСины и выходу ее из строя. После перенастройки выводов ПЛИСины на вывод нуля отказы прекратились. Так что думайте сами.
Что за микросхема не подскажете?
Цитата(Wild @ Dec 13 2006, 21:15)

забудте про эти выводы.
или лучше разведите от них дополнительные контактные площадки на плате.
А куда же от них трассировку вести и зачем? В чем смысл, не пойму что-то...
Shread
Dec 13 2006, 22:37
Как уже кто-то говорил: На выход и 0 на них. Всегда делаю так. Первый раз на такие рекомендации с процессорами MSP430 сталкнулся. Устойчивость к сбоям увеличилась конкретно. Хотя куда к питанию или к земле зависит от конкретного типа ПЛИС.
rezident
Dec 13 2006, 22:53
Цитата(vitan @ Dec 13 2006, 23:22)

Цитата(Гвоздик @ Dec 13 2006, 17:57)

А у нас случай такой был: настроили неиспользуемые выводы ПЛИСины как входы и оставили их свободными. Однако, когда ПЛИСина в составе электронного модуля бортовой аппаратуры неоднократно поднималась/опускалась в небо и на землю, то пошли отказы ПЛИС сплошняком. Выяснилось, что из-за статики что-ли входные неиспользуемые выводы очень быстро переключались из одного состояния в другое, что приводило к перегреву ПЛИСины и выходу ее из строя. После перенастройки выводов ПЛИСины на вывод нуля отказы прекратились. Так что думайте сами.
Что за микросхема не подскажете?
Например, в серии XC9500 вообще нельзя оставлять висящие в воздухе входы, т.к. в этих м/с CPLD не была предусмотрена схема bus-keeper. Висящие входы приводили к тому, что входная ячейка переходила в линейный режим, а кристалл быстро перегревался и выходил из строя. Для этой серии нужно либо pull-up резисторы на все неиспользуемые входы, либо использовать опцию компилятора, которая все неиспользуемые пины внтурисхемно подключает к GND.
Цитата(Shread @ Dec 14 2006, 00:37)

Как уже кто-то говорил: На выход и 0 на них. Всегда делаю так. Первый раз на такие рекомендации с процессорами MSP430 сталкнулся. Устойчивость к сбоям увеличилась конкретно. Хотя куда к питанию или к земле зависит от конкретного типа ПЛИС.
Как мне помнится, давно-давно, еще в применении к одногейтовой логике были такие рекомендации. Для повышенния помехоустойчивости (особенно КМОП) неиспользуемые элементы нужно подключать так, чтобы на выходе этого элемента был лог. 0.
Цитата(Гвоздик @ Dec 13 2006, 17:57)

А у нас случай такой был: настроили неиспользуемые выводы ПЛИСины как входы и оставили их свободными. Однако, когда ПЛИСина в составе электронного модуля бортовой аппаратуры неоднократно поднималась/опускалась в небо и на землю, то пошли отказы ПЛИС сплошняком. Выяснилось, что из-за статики что-ли входные неиспользуемые выводы очень быстро переключались из одного состояния в другое, что приводило к перегреву ПЛИСины и выходу ее из строя. После перенастройки выводов ПЛИСины на вывод нуля отказы прекратились. Так что думайте сами.
То есть, неиспользуемые контакты нужно сконфигурировать как выходы, внутри ПЛИС соединить с компонентом "GND" и еще снаружи с землей соединить, так?
rezident
Dec 14 2006, 16:09
Цитата(kivl @ Dec 14 2006, 12:48)

То есть, неиспользуемые контакты нужно сконфигурировать как выходы, внутри ПЛИС соединить с компонентом "GND" и еще снаружи с землей соединить, так?
Нет, снаружи ПЛИС ее неиспользуемые выводы к GND подключать не нужно. Достаточно если они будут сконфигурированны как выходы с лог 0 или внутрисхемно подключены к GND.
[quote name='Wild' post='186953' date='Dec 13 2006, 21:15']
забудте про эти выводы.
или лучше разведите от них дополнительные контактные площадки на плате.
[/quote]
А куда же от них трассировку вести и зачем? В чем смысл, не пойму что-то...
[/quote]
чтобы внутренний сигнал при необходимости можно было наружу вывести для контроля
[quote name='rezident' post='187285' date='Dec 14 2006, 16:09']
[quote name='kivl' post='187105' date='Dec 14 2006, 12:48']
То есть, неиспользуемые контакты нужно сконфигурировать как выходы, внутри ПЛИС соединить с компонентом "GND" и еще снаружи с землей соединить, так?
[/quote]
Нет, снаружи ПЛИС ее неиспользуемые выводы к GND подключать не нужно. Достаточно если они будут сконфигурированны как выходы с лог 0 или внутрисхемно подключены к GND.
[/quote]
зачем подключать их к земле, чего произойдет если это будет выход с третьим состоянием, а именно так они будут сконфигурированны по умолчанию?
Shread
Dec 15 2006, 14:07
Цитата(Wild @ Dec 15 2006, 13:29)

зачем подключать их к земле, чего произойдет если это будет выход с третьим состоянием, а именно так они будут сконфигурированны по умолчанию?
Ничего не произойдет. Проблемы будут если плисина попытается активно управлять ножками и выставит лог "1", в случае Z состояния ничего страшного не случится.
Цитата
Ничего не произойдет. Проблемы будут если плисина попытается активно управлять ножками и выставит лог "1", в случае Z состояния ничего страшного не случится.
А в каком случае плис будет пытаться активно управлять ножками?
Наверное, не стоит гадать, что с ними делать- как в том анекдоте про 16 подсвечников и 17 свечей
Есть рекомендации производителей.
Для примера , фрагмент pin-out файла из Квартуса-
GND+ : Unused input. This pin should be connected to GND. It may also
-- be connected to a valid signal on the board (low, high, or
-- toggling) if that signal is required for a different revision
-- of the design.
-- GND* : Unused I/O pin. This pin can either be left unconnected or
-- connected to GND. Connecting this pin to GND will improve the
-- device's immunity to noise.
GND* : 122 : : : : :
GND_INT : 123 : gnd : : : :
int0 : 124 : input : LVTTL/LVCMOS : : : Y
MHz8 : 125 : input : LVTTL/LVCMOS : : : Y
GND+ : 126 : : : : :
Shread
Dec 15 2006, 22:11
Цитата(kivl @ Dec 15 2006, 17:02)

Цитата
Ничего не произойдет. Проблемы будут если плисина попытается активно управлять ножками и выставит лог "1", в случае Z состояния ничего страшного не случится.
А в каком случае плис будет пытаться активно управлять ножками?
Только в том случае, если это будет описано в программе, скажем выход частоты подсоедините на эту ножку или еще что-нить кроме GND.
Цитата
Наверное, не стоит гадать, что с ними делать- как в том анекдоте про 16 подсвечников и 17 свечей
Есть рекомендации производителей.
Да вообщем никто и не гадает. Все совершенно четко и ясно

Только вот тут говорилось общо а не про конкретно альтеру, и не про конкретный ее чип. ИМХО соединять еще и снаружи имеет смысл только в конечном устройстве, да и то только в том случае, когда нужно обеспечить помехозащищенность всеми возможными способами. И то, думается такое терминирование не сильно улучшит ситуацию в сравнении с программным терминированием.
Цитата(Wild @ Dec 15 2006, 13:29)

чтобы внутренний сигнал при необходимости можно было наружу вывести для контроля
А... Ну это да... Можно посоветовать еще рядом друг с другом контактные площадки расположить, чтобы впаять при случае к-л разъем и подключаться, например, к анализатору.
И обязательно рядышком землю отдельно расположить, очень удобно-с...
Цитата
А в каком случае плис будет пытаться активно управлять ножками?
Только в том случае, если это будет описано в программе, скажем выход частоты подсоедините на эту ножку или еще что-нить кроме GND.
Так ножки-то по определению не используемые
Цитата
Наверное, не стоит гадать, что с ними делать- как в том анекдоте про 16 подсвечников и 17 свечей
Есть рекомендации производителей.
Рекомендации для Spartan II лично я не нашла (мож кто видел, скажите где), поэтому и спрашиваю совета.
А вообще, смысл уже понятен. Программно присоединю неиспользуемые к GND. Всем спасибо за участие.
Shread
Dec 18 2006, 20:54
Цитата(kivl @ Dec 18 2006, 19:12)

Так ножки-то по определению не используемые
Ситуации бывают разные: полетел файл констрейнов, или еще что-то. Вообщем МОЖЕТ получится ситуация что ножку куда-то нетуда соединит внутренне(на этапе разработки), потому я и писал что аппаратное соединение с землей имеет какой-либо смысл только в самых редких случая, и в конечном изделии.
Цитата(kivl @ Dec 18 2006, 19:12)

А вообще, смысл уже понятен. Программно присоединю неиспользуемые к GND. Всем спасибо за участие.
Тем самым Вы будете тратить ресурсы соединительных линий. Про S2 написано в его datasheet на стр 13 внизу справа пункт 2. Из которого следует, что неиспользуемые выходы автоматически через резисторы прицепляются к земле. Так что специально делать ничего не надо.
По большому счету пользователь не должен гадать, что делать с неиспользуемыми контактами ввода вывода.
Например в пакете Quartus есть возможность поступить с этими контактами по своему усмотрению (в зависимости от семейства).
При этом пакет в рапорте *.pin дает рекомендации по всем контактам кристалла как с ними плступить на печатной плате. И гадать не надо. Высокой кфалификации тоже не требуется.
Неужели у Xilinx нет такого файла по результатм синтеза и разводки.
Цитата(DS @ Dec 18 2006, 21:16)

Про S2 написано в его datasheet на стр 13 внизу справа пункт 2. Из которого следует, что неиспользуемые выходы автоматически через резисторы прицепляются к земле. Так что специально делать ничего не надо.
Спасибо, теперь увидела

. Получается, что "The remaining I/Os stay in a high-impedance state", и по умолчанию - все опасности 3-го состояния, изложенные выше.
DS, Вы сами работали со вторым Спартаном? Не было проблем, если так все и оставить?
Вы недочитали до конца. Там еще включаются внутренние pull-downы, поэтому вход находится в правильном логическом состоянии. Хотя, если к нему подключены проводники на плате надо делать выходом, чтобы не ловил помех.
Конкретно с S2 не работал, с другими Xilinx FPGA работаю - неподключенные выводы остаются в воздухе и все нормально. У их же CPLD надо программировать опцию PGND, иначе входы остаются "в воздухе" без подтягивающих резисторов.
Tornado-Alex
Dec 20 2006, 09:12
Присоединяюсь к рекомендациям программной "подтяжки" неиспользуемых входов к GND. Потому как "хардварная" земля сильно затрудняет разводку ПП и иногда увеличивает её "многослойность" и внешние земляные проводники будут дополнительно "собирать" помехи с платы и прямиком транслировать их внутрь ПЛИС.
EvgenyNik
Dec 21 2006, 17:23
Tornado-Alex, насчёт сложности разводки - согласен, но вот про сбор и трансляцию помех - позвольте :-)
Если земля разведена корректно, "под" ПЛИСкой не текут "чужие" токи, а соединение с землёй схемы обеспечивает равный наброс потенциала, то "лишнее" соединение с землёй не помешает.
Назначаю внутренне выводами GND на максимальный ток и внешне цепляю к земле.
Причины:
1. Усиление внутреннего нуля в группах IO
2. Столкнулся как-то с таким случаем:
Два соседних пина - один сигнал Read, другой Write. Так вот, иногда входная логика "клевала" на фронт соседнего сигнала... Вставил между ними на плате нулевую дорожку - эффект исчез. Когда фронты сигналов стали круче - эффект опять появился...
Отрезал перед самой ножкой дорожку, перекинул "соплёй" сигнал через пин, а прежний назначил выводом GND - эффект исчез!
Минусы:
- разводить сложнее
- при ошибочном назначении - ПЛИС греется и, в итоге, сгорает
- если увлечься идеей - ножек в быстрых проектах надо в 2 раза больше :-)
Tornado-Alex
Dec 22 2006, 08:36
Цитата(Евгений Николаев @ Dec 21 2006, 17:23)

[b]Tornado-Alex[/bпро сбор и трансляцию помех - позвольте :-)
С приведёнными аргументами полностью согласен.

Просто для грамотной реализации описанного метода требуется очень и очень опытный "пикадчик". Мы конечно в своих проектах примерно так и делаем, но после разводки обязательно прогоняем плату сквозь различные оптимизаторы, чтобы грамотно подогнать все волновые сопротивления, паразитные ёмкости (в данном случае они даже очень полезнае), индуктивности и пр. пр.
Только в этом случае получается желаемый эффект. Был у нас случай, когда при неграмотной разводке шина данных DDR2 просто ни в какую не хотела работать

разведённая земля IO, собирала помехи от недалеко расположенного импульсника и загоняла их прямиком в землю ядра.....потеряли много времени и денег на выявление и устранение ошибки
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.