KudesNik
May 8 2012, 09:10
Приветствую! Столкнулся с такой проблемой: ПЛИС Cyclone II EP2C5T144 перестала нормально запускаться при включении и после перезаливки по J-TAG. До вчерашнего дня отлично стартовала, то есть у меня есть заведомо рабочая прошивка и она лежит в EPCS4. Со стороны Quartus-а процесс программирования проходит успешно, в том числе и по J-TAG. Флешка в режиме Active Serial шьётся и проверяется. Из оборудования под рукой только тестер, к сожалению.
Останавливается с таким состоянием сигналов:
nCONFIG подтянут к 3.3
CONF_DONE в 0, хотя подтяг рабочий. На резисторе падает 3.3
nSTATUS (!) иногда в 3.3, иногда 0.25в, подтяг прозвонил и проверил. Также падает 3 вольта на резисторе.
nCSO в 3.3
Пока проверял, пару раз ПЛИС запускалась при тыкании щупом в nSTATUS. При этом и CONF_DONE и nSTATUS были в "1", то есть подтяги опять таки рабочие. После этого пропаял эти пины хорошенько и прозвонил. Не помогло. Вообще всё это началось при отладке проекта в SignalTap. Просто в определённый момент не смог подцепиться к проекту в ПЛИС. Программатор самодельный, но никогда на него нареканий не было. Посоветуйте, с чего начать разбор полётов. ПЛИС заменить могу, но хотелось бы понять причины выхода её из строя. Схему портов конфигурации прилагаю.
_Anatoliy
May 8 2012, 09:31
Цитата(KudesNik @ May 8 2012, 10:10)

Проверьте резистор R34,того ли номинала.
KudesNik
May 8 2012, 09:47
Цитата
Проверьте резистор R34,того ли номинала.
Проверил: 10К, как на схеме.
gosu-art
May 8 2012, 13:07
Скорее всего вы не припаяли exposed pad! у меня на прошлой неделе точно такая же ситуация была с С3.
Нажимаешь на микросхему пальцем - грузится с флэхи, а так нет. А по JTAG все нормально. Проверьте.
KudesNik
May 8 2012, 13:36
Цитата
Скорее всего вы не припаяли exposed pad!
Благодарю за желание помочь, но у EP2C5T144 нет exposed pad.
2ALL,
Нашёл на плате два подтяга по 10К от ножек ПЛИС к +5 вольтам. Была идея сделать выключенными по умолчанию пятивольтовые шинные драйверы... По факту +5в хоть и через 10К, но приходят на ПЛИС. Отпаял, ничего не изменилось. Могло ли это вывести из строя кристалл, при условии, что в проекте эти пины были сконфигурированиы как "Input, Tri-stated"? Судя по "Absolute Maximum Ratings" я превысил допустимое значение на 1 в. Но в моём понимании должен был отгореть порт, а не вся ПЛИС, верно?
_Anatoliy
May 8 2012, 15:59
Цитата(KudesNik @ May 8 2012, 15:36)

Благодарю за желание помочь, но у EP2C5T144 нет exposed pad.
2ALL,
Нашёл на плате два подтяга по 10К от ножек ПЛИС к +5 вольтам. Была идея сделать выключенными по умолчанию пятивольтовые шинные драйверы... По факту +5в хоть и через 10К, но приходят на ПЛИС. Отпаял, ничего не изменилось. Могло ли это вывести из строя кристалл, при условии, что в проекте эти пины были сконфигурированиы как "Input, Tri-stated"? Судя по "Absolute Maximum Ratings" я превысил допустимое значение на 1 в. Но в моём понимании должен был отгореть порт, а не вся ПЛИС, верно?
А с чего бы ему отгорать от тока 100 мка?Вот если бы резистора не было...
PLL запитан ? (даже если не используется, питать надо)
Была примерно аналогичная бяка, но на циклоне 3. Вылечилось конденсатором 180 пФ на ConfDone параллельно резистору подтяжки. Что интересно, со сменой версии Квартуса с конденсатором грузится перестало, но заработало без него. Причем это не программатор, а именно что-то в сгенерированном коде.
KudesNik
May 9 2012, 08:20
Цитата
PLL запитан ? (даже если не используется, питать надо)
Да, на обеих PLL-ках есть питание. Проверил его на всякий случай: 1.24в
Цитата
Вылечилось конденсатором 180 пФ на ConfDone параллельно резистору подтяжки.
Попробовал. На удивление, даже подходящий кондёр нашёлся. Заливал с различными настройками квартуса относительно неиспользуемых пинов. Не запускается... Сейчас CONF_DONE и nSTATUS оба в "0".
Вчера запаял вторую плату. Пока работаю на ней, но как-то боязно. Циклонов у меня больше не осталось.
Цитата(KudesNik @ May 9 2012, 11:20)

Вчера запаял вторую плату.
По схеме вроде все чисто. Посмотрите номиналы резисторов на jtag. Там вроде бы 1 ком рекомендовано.
Настораживает два питания i/o3.3в на одну FPGA и ПЗУ. Для 2 циклона обычно одно 3.3 i/o используют.
KudesNik
May 10 2012, 06:50
Цитата
Посмотрите номиналы резисторов на jtag. Там вроде бы 1 ком рекомендовано.
Да, вы правы, по документации там должно быть по 1К. Я и ставил раньше по 1К, но в этот раз решил сэкономить на одном номинале. Заменю на всякий случай. Есть мнение, что в момент отладки по J-TAG, на длинный провод от программатора до платы (около 22см) что-то навелось и залетело в кристалл. К тому же рядом стоял компьютерный БП, он которого всё это добро питалось.
Цитата
Настораживает два питания
Питания действительно два, но ПЛИС и флешка висят на одном источнике. Второй такой же питает Ethernet контроллер. На него я и завёл подтяги конфигурационных разъёмов. При разводке так оказалось удобнее. Оба источника LM1117DT-3.3, запитаны одинаково и стартуют одновременно, по идее... Планирую на днях добраться до хорошего осциллографа и посмотреть, что происходит на пинах питания ядра ПЛИС. Может землю развёл не очень удачно.
Nikolay96
May 12 2012, 09:43
Здравствуйте!
Аналогичная проблема была со StratixIII - не грузился с EPCS. Вылечилось добавлением кондесатора 56р между CONF_DONE и землей. Вы писали, что пробовали 180p, и как я понял соединяли с питанием. 56p было подобрано методом научного тыка, 100р и выше не исправляли проблему.
KudesNik
May 14 2012, 08:20
Спасибо, Николай, попробую с конденсатором ещё поэкспериментировать, при случае.
А с платой вообще чудеса творятся. Четыре дня назад протестировал её осциллографом. Посмотрел питание - вполне приличное, пичков нет. Попутно выяснил, что nSTATUS она всёже выставляет, с флешки что-то грузится, но CONF_DONE по прежнему не переходит в "1". На этом я её забросил в стол и заказал новый циклон, чтобы потом перепаять. Вчера утром опять подключил в к БП, чтобы посмотреть сигналы на Ethernet контроллере. И что вы думаете? ПЛИС завелась, как ни в чём не бывало! Перезаливал несколько раз по J-TAG для проверки: стартует себе преспокойно, прошивка работает.
В итоге, после всех тестов, я предполагаю только одну возможную причину такого поведения. Скорее всего это глицерин, который был использован в качестве флюса при пайке. Плату мыл сначала в спирте, потом под струёй воды, но видимо что-то где-то осталось, а за эти пару дней подсохло. Понаблюдаю ещё за ней, ради интереса.
Нужен шаманский бубен, факт. Себе уже заказали.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.