|
Эффект "защелкивания" выхода в третьем состоянии EPM7032A, Чем объяснить? |
|
|
|
Oct 19 2011, 04:38
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
Стоит на плате EPM7032ATC44, кто поставил, не знаю, немцы какие-то, перешивать пока не рискую. Некоторые выводы в третьем состоянии с подтяжками 10 кОм к +3,3В. Замкнув такой вывод на землю и отпустив, не вижу на нем возврата к высокому уровню - что-то меньше вольта остается. Если после этого его коротнуть на + , на нем устанавливается нормальная единичка. К выходам еще подключены входы однонаправленных 245-х буферов, они работают исправно. И попутный вопрос: выходили ли у кого-то из строя входные/выходные каскады подобной логики? И если это мой случай, спасет ли меня считанная с неисправной CPLD прошивка?
|
|
|
|
|
Oct 27 2011, 10:04
|

Знающий
   
Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402

|
Вход тянулся бы туда, куда подтяжка. Если внутренне сделать подтяжку (не помню - есть ли такая возможность в MAX7k) к нулю, а внешне тянуть к питанию, то при равных сопротивлениях возможны различные эффекты. Я всегда стараюсь избегать не подключенных неиспользуемых входов, делаю их выходами - у них меньше сопротивление и убить статикой их сложнее. Однако, есть такая неприятная особенность, что если случайно залить прошивку с назначенным выходом лог. 1, а внешне посадить его на ноль, то некоторые семейства CPLD просаживают своё внутреннее питание и по этой причине становятся нечувствительны к jtag-подключению. Так же мало приятного в том, что жёстко назначенные выводы будут испытывать на себе действия, подобные вашим  - к нулю подключили, к питанию... Описываемый Вами эффект, наверное, можно получить сделав следующее: назначаем выход открытым коллектором (снаружи подтяжка к питанию) ставим драйвер типа TRI, на него внутри заводим лог. 0, а на управляющий вход заводим инверсный сигнал от значения на этом пине. Что получили? Допустим, сейчас драйвер открыт и мы выдаём 0. Кто-то замыкает его на питание - мы считываем лог. 1 с пина, инвертируем её и подаём на управляющий вход, отключая драйвер. Теперь он закрыт и выход тянется к питанию. Снаружи снова замкнули на лог. 0 - мы открываем драйвер и тоже выдаём ноль. Таким образом, мы всегда либо в нуле, либо в питании, в зависимости от внешнего подключения и избегая длительных КЗ.
--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
|
|
|
|
|
Oct 27 2011, 10:44
|
Гуру
     
Группа: Свой
Сообщений: 2 318
Регистрация: 13-02-05
Из: Липецкая область
Пользователь №: 2 613

|
Цитата(Andre_Pr @ Oct 19 2011, 08:38)  Стоит на плате EPM7032ATC44, кто поставил, не знаю, немцы какие-то, перешивать пока не рискую. Некоторые выводы в третьем состоянии с подтяжками 10 кОм к +3,3В. Почему Вы решили, что эти выводы в Z состоянии? Цитата И попутный вопрос: выходили ли у кого-то из строя входные/выходные каскады подобной логики? И если это мой случай, спасет ли меня считанная с неисправной CPLD прошивка? Был один такой чип. Читается, пишется, но один вывод неисправен. Из общих соображений не советовал бы что то прошивать не имея правильной копии. Лучше чип выпаять и проверять результат прошивки на другом.
|
|
|
|
|
Oct 27 2011, 13:05
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
Всем спасибо, чуть поясню: на том чипе явно реализована схема доступа к JTAG цепочке как с системной шины, так и с отладочного разъема. Именно JTAG сигналы с него и висят на выводах, состояние которых я принимаю за высокоимпедансное (монтажным ИЛИ когда-то его называли). Поведение, описанное уважаемым EvgenyNik, не вполне укладывается в мое понимание задачи этой схемы: надо обратиться к JTAG из системы - открываем TRI буфер, не надо - освобождаем для доступа от разъема отладки. Впрочем... может для самодиагностики система сами проводочки JTAG тестирует? А вот что бывают неисправные пины, это радует. Правда я пока выпаивать не буду, паяю на аналогичном чипе макетик, залью, повоздействую на входы, посмотрю на выходы. Цитата(ViKo @ Oct 27 2011, 13:53)  Есть такая штука - Bus Hold. Ведет себя так, как описано в первом посте. Не знаю, имеется ли в данной микросхеме, но в Сyсlone II, например, есть. Нету Bus Hold в этой серии, есть только в EPM7000 с буковкой В.
|
|
|
|
|
Oct 27 2011, 19:07
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
EvgenyNik, снимаю шляпу. работает Ваша схема именно так, как и написали. Только одно НО - она дает на выходе "честные" нули, а исходная - непонятно низкие уровни.
|
|
|
|
|
Oct 28 2011, 04:20
|

Знающий
   
Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402

|
Цитата Только одно НО - она дает на выходе "честные" нули, а исходная - непонятно низкие уровни. Я так и не удосужился посмотреть насчёт возможности внутренней подтяжки у MAX7k, но если там можно подтянуть к нулю, то в описанной мной выше схеме на вход TRI надо подавать лог. 1, а ну управляющий вход значение пина - вот тогда и получится, что при внешней единице на выходе тоже лог. 1, а при внешнем нуле выход в третьем состоянии, а делитель из внешней к плюсу и внутренней к нулю подтяжек плывет как заблагорассудится. Ну и разумеется, убитые входы у этих микрух бывают. Вплоть до успешной работы на выдачу одного из уровней, но невозможность выдачи другого. Или анекдотичные случаи, когда статикой убивается jtag и ПЛМка не программируется при исправно работающей прежней прошивке.
--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
|
|
|
|
|
Nov 2 2011, 12:20
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
Спаял макетик на новой микросхеме, зашил ее pof-ом от старой. Никто никуда не защелкивается, как и предполагалось. Если принять старую за имеющую неисправные I/O буферы (а почему-бы и нет, подключена к внешней шине без всяких драйверов, мало ли что там на нее навешано...), ее pof при этом не повреждается? Понимаю, вопрос звучит несколько параноидально, но все-же, интересно.
|
|
|
|
|
Nov 4 2011, 05:07
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
Никто таки не знает, откуда берется информация о содержимом CPLD при чтении программером, и можно ли ей верить безоговорочно?
|
|
|
|
|
Nov 4 2011, 09:49
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
Только куда писать Альтере, чтобы ответили, кто знает?
|
|
|
|
|
Nov 4 2011, 10:03
|
Участник

Группа: Участник
Сообщений: 25
Регистрация: 7-10-11
Из: Украина
Пользователь №: 67 590

|
Не так все просто, или я там искать не умею.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|