реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Проблема с конфигурированием Arria V
PK692
сообщение Mar 12 2018, 15:39
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 4-06-11
Пользователь №: 65 474



Добрый день, уважаемые коллеги!
Имеются проблемы с загрузкой конфигурации в ПЛИС. На плате собственной разработки:
- ПЛИС (5ASXBB5) и HPS включены последовательно в JTAG-цепочку.
- Загрузочная флеш EPCQ256.
- Выводы MSEL[4..0] установлены в состояние 10011, что соответствует режиму конфигурации AS. Выводы MSEL[4..0] посажены на GND или VCCPGM напрямую, без резисторов.
- Питания: VCC - 1.1 B, VCCPGM - 3.3 B, VCCPD банка с JTAG - 3.3 B, VCCIO банка с JTAG - 3.3 B, VCCBAT - 1.5 B, питание флеш - 3,3 В.
- TCK через 1 кОм подтянут к GND, TMS и TDI через 10 кОм подтянуты к 3,3 В.
- CONFIG_DONE, nSTATUS, nCONFIG подтянуты через 10 кОм к 3,3 В. nCE напрямую подключен к GND.
- Выводы DCLK и AS_DATA0(ASDO) подтянуты через 10 кОм к GND,
- Опциональные выводы INT_DONE, CLKUSR, DEV_OE, DEV_CLRn, PR_REQUEST не используются.

После включения питания платы nCONFIG сразу устанавливается в единицу, nSTATUS устанавливается в единицу через время порядка 100 мс, CONFIG_DONE в нуле. Периодически в процессе работы ПЛИС устанавливает nSTATUS в ноль затем возвращая в единицу. При использовании функции Auto Detect в Programmer вся JTAG-цепь (ПЛИС и HPS) определяется корректно. При попытке залить в ПЛИС sof-файл Quartus выдает следующий набор сообщений:
- Started programmer operation at ...
- Configuring device index 1
- Device 1 contains JTAG ID code 0x02D030DD
- Can't configure device. Expected JTAG code 0x02D030DD for device 1, but found JTAG ID code 0xFFFFFFFF
- Operation faild

Ошибка большинстве случаев выдается на 99% загрузки конфигурации, изредка на 86% или даже 50% с небольшим. Поскольку Auto Detect работает корректно и в начале программирования JTAG ID code определяется правильно, то мы сделали вывод что JTAG-цепь работает так как надо и проблема в чем-то другом.

В связи с тем, что по JTAG залить конфигурацию не получилось мы пошли другим путем. Изолировали EPCQ256 от ПЛИС, припаяли к ней разъем и залили во флеш pof-файл переведя USB-Blaster в режим AS. Флешка запрограммировалась успешно, после этого все связи с ПЛИС восстановили. В проекте Quartus назначено конфигурирование с использованием внутреннего генератора ПЛИС 12,5 МГц. При подаче питания ПЛИС сконфигурировалась (CONFIG_DONE встал в единицу, потребляемый ток от источника питания возрос) однако не прошло и минуты как конфигурация "слетела" (CONFIG_DONE упал в ноль, потребляемый ток от источника питания снизился, nSTATUS в единице с периодическими провалами в ноль). Далее еще интереснее, оказалось что явление когда ПЛИС стартует с флешки возникает очень редко (если включать плату с утра sm.gif) В подавляющем большинстве случаев ПЛИС не конфигурируется не смотря на то что на флешке есть и nCS, и DCLK и идут данные.

Явно сделано что-то не так, но что не так найти не можем. Прошу Вашей помощи

P.S. Смотрели напряжения питания осциллографом. Никакого криминала (выбросов или провалов) на питании не заметили.
Go to the top of the page
 
+Quote Post
new123
сообщение Mar 12 2018, 15:56
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 96
Регистрация: 30-11-17
Пользователь №: 100 438



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

Активируйте пин crc_error ради интереса, он в 1 не встает, когда config_done падает?

Цитата(PK692 @ Mar 12 2018, 18:39) *
Явно сделано что-то не так, но что не так найти не можем. Прошу Вашей помощи

альтеры бы скорее все ответила так: что то с питанием.

в arria V handbook должна быть табличка с перечисленными питаниями, которые чип постоянно мониторит, и если что уходит в резет.
я на своем чипе проверил порядка 100 ног с нужным питанием и нашел 4 ноги, на которых напруга не была равной заявленной. Ну а дальше было дело техники. Восстановил напряжение на плате и все пошло без проблем.

Сообщение отредактировал new123 - Mar 12 2018, 15:56
Go to the top of the page
 
+Quote Post
new123
сообщение Mar 12 2018, 17:49
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 96
Регистрация: 30-11-17
Пользователь №: 100 438



Цитата(PK692 @ Mar 12 2018, 18:39) *
После включения питания платы nCONFIG сразу устанавливается в единицу, nSTATUS устанавливается в единицу через время порядка 100 мс, CONFIG_DONE в нуле. Периодически в процессе работы ПЛИС устанавливает nSTATUS в ноль затем возвращая в единицу.

если вы посмотрите handbook, раздел 8-5, то это Write configuration error.
Мне Альетра отвечала так: либо crc error, то есть при конфигурировании с флешки не бьется контрольная сумма передаваемых с флешки данных, либо (Альтера на этом настаивала изначально), проблемы питания чипа.

Цитата(PK692 @ Mar 12 2018, 18:39) *
but found JTAG ID code 0xFFFFFFFF

это схема jtag не отвечает. И это понятно, у вас чип лежит незагруженный.


Я бы проверил внимательно все таки раздел 11-12, таблица 11-3. Проверил бы все ноги чипа к которому должно быть подведено перечисленное питание. В вашем сообщении приведен не весь список нужных питаний.

Сообщение отредактировал new123 - Mar 12 2018, 17:51
Go to the top of the page
 
+Quote Post
Александр77
сообщение Mar 12 2018, 19:08
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111



Цитата(PK692 @ Mar 12 2018, 18:39) *
Ошибка большинстве случаев выдается на 99% загрузки конфигурации, изредка на 86% или даже 50% с небольшим. Поскольку Auto Detect работает корректно и в начале программирования JTAG ID code определяется правильно, то мы сделали вывод что JTAG-цепь работает так как надо и проблема в чем-то другом.
P.S. Смотрели напряжения питания осциллографом. Никакого криминала (выбросов или провалов) на питании не заметили.

Хоть Вы и сделали ремарку про питание, но подобная ситуация с циклонами у меня возникала регулярно. При потреблении платой 600 мА, отказ при программировании шел до тех пор, пока не выставил на лабораторном источнике ограничение тока в 1,5А.
Go to the top of the page
 
+Quote Post
Inanity
сообщение Mar 12 2018, 23:25
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653



1. Плата нормально отмыта от флюса после пайки?
2. Проверьте ещё раз чистоту питания. (Хотя предполагаю, что для Arria V, у вас наверняка стоят серьёзные источники питания.)
3. Надо проверять пайку BGA. (в качестве гипотезы, если nConfig нормально не запаян, то подтяжки вашей на нём нет, стало быть он болтается в воздухе и может перезагружать ПЛИС в зависимости от положения звёзд на небе)
Go to the top of the page
 
+Quote Post
prostoRoman
сообщение Mar 13 2018, 09:43
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 28-06-11
Пользователь №: 65 930



Цитата(Александр77 @ Mar 12 2018, 22:08) *
... отказ при программировании шел до тех пор, пока не выставил на лабораторном источнике ограничение тока в 1,5А.

Осциллограммы тока по питанию не снимали?
Go to the top of the page
 
+Quote Post
PK692
сообщение Mar 13 2018, 15:45
Сообщение #7





Группа: Новичок
Сообщений: 2
Регистрация: 4-06-11
Пользователь №: 65 474



Коллеги, благодарю за оперативные ответы.

У нас родилась точно такая же идея:
Цитата(Inanity @ Mar 13 2018, 04:25) *
3. Надо проверять пайку BGA. (в качестве гипотезы, если nConfig нормально не запаян, то подтяжки вашей на нём нет, стало быть он болтается в воздухе и может перезагружать ПЛИС в зависимости от положения звёзд на небе)


Первое что мы сделали когда так подумали провели рентген платы, на рентгене ничего плохого не увидели. Чтобы убедиться абсолютно точно что непропая по nCONFIG нет мы провели эксперимент: запаяли вывод подтягивающего резистора со стороны ПЛИС на корпус, если бы шарик болтался в воздухе то никакой реакции на это не должно было бы быть. Однако при nCONFIG посаженном на корпус nSTATUS тоже ушел в беспросветный ноль, что говорит о том что контакт нормально запаян.

Хотя такая ситуация, на мой взгляд, очень даже может произойти в жизни в нашем случае она не произошла.



Проблема решена. Спасибо коллеге за этот совет:

Цитата(new123 @ Mar 12 2018, 22:49) *
Я бы проверил внимательно все таки раздел 11-12, таблица 11-3. Проверил бы все ноги чипа к которому должно быть подведено перечисленное питание. В вашем сообщении приведен не весь список нужных питаний.


Ситуация была в следующем: Один из источников питания формирует 2,5 В и это напряжение идет на ряд контактов ПЛИС. Для питания некоторых выводов HPS так же требуется 2,5 В, которые формируются путем фильтрации напряжения с ПЛИС LC-фильтром. В следствии падения напряжения на дросселе 2,5 В после фильтра выходило за допуск на 50-75 мВ. Как только питание после фильтра было приведено в нормальное состояние, ПЛИС начала конфигурироваться как по JTAG, так и с EPCQ.

Всем большое спасибо за помощь и участие. Я Вам очень благодарен

Сообщение отредактировал PK692 - Mar 13 2018, 15:45
Go to the top of the page
 
+Quote Post
Jury093
сообщение Mar 13 2018, 17:08
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 935
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(PK692 @ Mar 13 2018, 18:45) *
В следствии падения напряжения на дросселе 2,5 В после фильтра выходило за допуск на 50-75 мВ. Как только питание после фильтра было приведено в нормальное состояние, ПЛИС начала конфигурироваться как по JTAG, так и с EPCQ.

что за чудо-дроссель? у него есть наименование или партнамбер?
Go to the top of the page
 
+Quote Post
Александр77
сообщение Mar 13 2018, 18:32
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111



Цитата(prostoRoman @ Mar 13 2018, 12:43) *
Осциллограммы тока по питанию не снимали?

Пытался, но либо броски очень короткие были и осциллограф в режиме запуска по фронту не стартовал, либо я что-то делал не так. Но ситуация была не единичная.
Кроме того (леший с самодельной платой), но подобная история творилась с платами от терасика. И по моим наблюдениям эти платы (de0-nano-soc) в установившемся режиме потребляют порядка 1 А, а при запуске (старт линукса и заливка rbf) тоже резко увеличивают потребление примерно в два раза.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2018 - 17:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.00921 секунд с 7
ELECTRONIX ©2004-2016