Jump to content
    

CycloneII не переходит в User Mode

Приветствую! Столкнулся с такой проблемой: ПЛИС 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. Просто в определённый момент не смог подцепиться к проекту в ПЛИС. Программатор самодельный, но никогда на него нареканий не было. Посоветуйте, с чего начать разбор полётов. ПЛИС заменить могу, но хотелось бы понять причины выхода её из строя. Схему портов конфигурации прилагаю.

Configuration.pdf

Share this post


Link to post
Share on other sites

Проверьте резистор R34,того ли номинала.

Share this post


Link to post
Share on other sites

Проверьте резистор R34,того ли номинала.

Проверил: 10К, как на схеме.

Share this post


Link to post
Share on other sites

Скорее всего вы не припаяли exposed pad! у меня на прошлой неделе точно такая же ситуация была с С3.

Нажимаешь на микросхему пальцем - грузится с флэхи, а так нет. А по JTAG все нормально. Проверьте.

Share this post


Link to post
Share on other sites

Скорее всего вы не припаяли exposed pad!

Благодарю за желание помочь, но у EP2C5T144 нет exposed pad.

 

2ALL,

Нашёл на плате два подтяга по 10К от ножек ПЛИС к +5 вольтам. Была идея сделать выключенными по умолчанию пятивольтовые шинные драйверы... По факту +5в хоть и через 10К, но приходят на ПЛИС. Отпаял, ничего не изменилось. Могло ли это вывести из строя кристалл, при условии, что в проекте эти пины были сконфигурированиы как "Input, Tri-stated"? Судя по "Absolute Maximum Ratings" я превысил допустимое значение на 1 в. Но в моём понимании должен был отгореть порт, а не вся ПЛИС, верно?

Share this post


Link to post
Share on other sites

Благодарю за желание помочь, но у EP2C5T144 нет exposed pad.

 

2ALL,

Нашёл на плате два подтяга по 10К от ножек ПЛИС к +5 вольтам. Была идея сделать выключенными по умолчанию пятивольтовые шинные драйверы... По факту +5в хоть и через 10К, но приходят на ПЛИС. Отпаял, ничего не изменилось. Могло ли это вывести из строя кристалл, при условии, что в проекте эти пины были сконфигурированиы как "Input, Tri-stated"? Судя по "Absolute Maximum Ratings" я превысил допустимое значение на 1 в. Но в моём понимании должен был отгореть порт, а не вся ПЛИС, верно?

А с чего бы ему отгорать от тока 100 мка?Вот если бы резистора не было...

Share this post


Link to post
Share on other sites

PLL запитан ? (даже если не используется, питать надо)

Share this post


Link to post
Share on other sites

Была примерно аналогичная бяка, но на циклоне 3. Вылечилось конденсатором 180 пФ на ConfDone параллельно резистору подтяжки. Что интересно, со сменой версии Квартуса с конденсатором грузится перестало, но заработало без него. Причем это не программатор, а именно что-то в сгенерированном коде.

 

Share this post


Link to post
Share on other sites

PLL запитан ? (даже если не используется, питать надо)

Да, на обеих PLL-ках есть питание. Проверил его на всякий случай: 1.24в

 

Вылечилось конденсатором 180 пФ на ConfDone параллельно резистору подтяжки.

Попробовал. На удивление, даже подходящий кондёр нашёлся. Заливал с различными настройками квартуса относительно неиспользуемых пинов. Не запускается... Сейчас CONF_DONE и nSTATUS оба в "0".

Вчера запаял вторую плату. Пока работаю на ней, но как-то боязно. Циклонов у меня больше не осталось.

Share this post


Link to post
Share on other sites

Вчера запаял вторую плату.

 

По схеме вроде все чисто. Посмотрите номиналы резисторов на jtag. Там вроде бы 1 ком рекомендовано.

Настораживает два питания i/o3.3в на одну FPGA и ПЗУ. Для 2 циклона обычно одно 3.3 i/o используют.

Share this post


Link to post
Share on other sites

Посмотрите номиналы резисторов на jtag. Там вроде бы 1 ком рекомендовано.

Да, вы правы, по документации там должно быть по 1К. Я и ставил раньше по 1К, но в этот раз решил сэкономить на одном номинале. Заменю на всякий случай. Есть мнение, что в момент отладки по J-TAG, на длинный провод от программатора до платы (около 22см) что-то навелось и залетело в кристалл. К тому же рядом стоял компьютерный БП, он которого всё это добро питалось.

 

Настораживает два питания

Питания действительно два, но ПЛИС и флешка висят на одном источнике. Второй такой же питает Ethernet контроллер. На него я и завёл подтяги конфигурационных разъёмов. При разводке так оказалось удобнее. Оба источника LM1117DT-3.3, запитаны одинаково и стартуют одновременно, по идее... Планирую на днях добраться до хорошего осциллографа и посмотреть, что происходит на пинах питания ядра ПЛИС. Может землю развёл не очень удачно.

 

Share this post


Link to post
Share on other sites

Здравствуйте!

 

Аналогичная проблема была со StratixIII - не грузился с EPCS. Вылечилось добавлением кондесатора 56р между CONF_DONE и землей. Вы писали, что пробовали 180p, и как я понял соединяли с питанием. 56p было подобрано методом научного тыка, 100р и выше не исправляли проблему.

Share this post


Link to post
Share on other sites

Спасибо, Николай, попробую с конденсатором ещё поэкспериментировать, при случае.

 

А с платой вообще чудеса творятся. Четыре дня назад протестировал её осциллографом. Посмотрел питание - вполне приличное, пичков нет. Попутно выяснил, что nSTATUS она всёже выставляет, с флешки что-то грузится, но CONF_DONE по прежнему не переходит в "1". На этом я её забросил в стол и заказал новый циклон, чтобы потом перепаять. Вчера утром опять подключил в к БП, чтобы посмотреть сигналы на Ethernet контроллере. И что вы думаете? ПЛИС завелась, как ни в чём не бывало! Перезаливал несколько раз по J-TAG для проверки: стартует себе преспокойно, прошивка работает.

 

В итоге, после всех тестов, я предполагаю только одну возможную причину такого поведения. Скорее всего это глицерин, который был использован в качестве флюса при пайке. Плату мыл сначала в спирте, потом под струёй воды, но видимо что-то где-то осталось, а за эти пару дней подсохло. Понаблюдаю ещё за ней, ради интереса.

Share this post


Link to post
Share on other sites

Нужен шаманский бубен, факт. Себе уже заказали.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...