Kattani 0 10 ноября, 2015 Опубликовано 10 ноября, 2015 · Жалоба Здравствуйте. Имеется устройство содержащее несколько плат с плисами соединённые в цепочку следующим порядком: EPM1270 - EP1C6 - EP3C25 - EP3C25 - EP3C25. У каждого циклона своя EPCS16, на выводах MSEL выставлен режим AS. Выводы эти подключены непосредственно к уровням, без резисторов. Всё это дело нормально определялось квартусом. А потом стали вылезать неприятности. Сначала был обнаружен интересный момент: если залит в EP1C6 прошивку, то все последующие попытки будь то автоопределение, либо прошивка других кристаллов оказывались бесполезными - цепочка не обнаруживалась. Хотя отладчик jtag её через раз видит. Если же сначала шить другие кристаллы, то никаких проблем, пока очередь не дойдёт до первого циклона. Приходится заливать *.sof, в противном случае замена соотвествующей EPCS-ки на чистую, т.к. возможность программирования теряется напрочь. При этом запрограммированный (неважно *.sof или *.jic) кристал EP1C6 вполне себе выполняет загруженный в него проект. Второй случай с другим экземпляром данного устройства произошёл такой. Цепочка перестала определятся, отладчик изредка обнаруживал один из треьих циклонов. Виновником оказалась предпоследния плата с кристаллом EP3C25. У него все выводы (кроме питания и тех что имели внешнюю подвязку) находились, видимо, в 3-ей состоянии. На них было примерно от 0,5 до 1,5В. CONF_DONE - 0, nSTATUS - 0. Принудительный перевод nCONFIG в ноль ничего не давал. Всё питание на месте, не просажено и потребление в норме. В чём может быть проблема? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gerbity 0 11 ноября, 2015 Опубликовано 11 ноября, 2015 · Жалоба То что с начала все было нормально, а потом полезли глюки, говорит скорее о том, что просто где-то непропай. Возьмите и прогрейте все паяльником (если не BGA конечно). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kattani 0 11 ноября, 2015 Опубликовано 11 ноября, 2015 · Жалоба Проблема с блокированием цепочки после прошивки EP1C6 одинаково присуствует в четырёх экземплярах устройства. Корпуса все TQFP и их производные, пайка ручная. У ЕР3С25 площадка на дне припаяна. Четыре одинаковых непропая маловероятны. Замечено, что если держать ЕР1С6 схемным сбросом, то цепочка определяется и прошивается. Получается, что сигналы, идущие от платы с первым циклоном на остальные платы как-то на них влияют, хотя те пустые и находятся в третьем состоянии... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shivers 0 11 ноября, 2015 Опубликовано 11 ноября, 2015 · Жалоба Старый дедовский способ - берете выход TDO первой альтеры и заводите (навесным монтажом) на житаговский разъем (оторвав при этом выход последней альтеры). Если устройство определяется, то восстанавливаете цепь и береты выход со второй альтеры. И т.д. Можете посмотреть осциллографом на уровни сигналов, возможно в прошитой альтере там присутствуют помехи. Для больших цепочек как ваша обычно ставят умощняющие буферы (245/244 элементы), но может и так заработать (если нет помех). Есть и совсем глупое предположение, что в прошивке житаговские пины (один или все TMS/TCK/TDI/TDO) используются как сигнальные. В общем, найти неисправность несложно, на мой взгляд, надо просто очень внимательно все проверить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 11 ноября, 2015 Опубликовано 11 ноября, 2015 · Жалоба Старый дедовский способ - .... В общем, найти неисправность несложно, на мой взгляд, надо просто очень внимательно все проверить. И для начала понижаете тактовую сразу на порядок. Если там есть затянутые фронты или сдвиги сигналов, то возможно что и поможет... А дальше - смотреть... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kattani 0 12 ноября, 2015 Опубликовано 12 ноября, 2015 · Жалоба Shivers JTAG-овские пины точно нигде больше не используются, да и нет такой возможности в данном кристале. Что касается "дедовского способа", то им и была обнаружена сбойная ячейка с третьим циклоном, описанная во втором эпизоде. И для начала понижаете тактовую сразу на порядок. Тактовую частоту программатора или самой схемы? Если первое, то как это осуществить на примере USB Blaster-а? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 12 ноября, 2015 Опубликовано 12 ноября, 2015 · Жалоба Тактовую частоту программатора или самой схемы? Если первое, то как это осуществить на примере USB Blaster-а? Ищите в Альтеровском софте то место, где идут настройки программатора JTAG... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shivers 0 12 ноября, 2015 Опубликовано 12 ноября, 2015 · Жалоба У вас каждая альтера на отдельном модуле? Это плохо, тогда лучше ставить буферы сразу после разъемов JTAG, поскольку каждый разъем вносит высокое сопротивление в линию. Сверьте с документацией, что использовали правильные номиналы подтяжек JTAG. Возможно, имеет смысл подтянуть TDO между альтерами (поскольку это открытый коллектор, если память не изменяет). Подтяжки внутри ПЛИС использовать не стоит - они слишком слабые. Ну и имеет смысл взять конкретно третий модуль и подключить его к JTAG напрямую. Проследите осциллографом, что все сигналы доходят. Убедитесь, что житаговские выводы пропаяны. Если все хорошо, то смотрите на осциллографе диаграмму загрузки ПЛИС по житагу, сравнивайте с мануалом, и ищите разницу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kattani 0 12 ноября, 2015 Опубликовано 12 ноября, 2015 · Жалоба У вас каждая альтера на отдельном модуле? Это плохо, тогда лучше ставить буферы сразу после разъемов JTAG, поскольку каждый разъем вносит высокое сопротивление в линию. Каждая альтера на отдельном модуле. Разъём только один - на корпусе прибора. Межплатные соединения паянные, длинная переходов между платами линии TDO-TDI не более 5-6 см. С буферами согласен, по всей видимости будет учтено в следующей версии. Сверьте с документацией, что использовали правильные номиналы подтяжек JTAG. Возможно, имеет смысл подтянуть TDO между альтерами (поскольку это открытый коллектор, если память не изменяет). Подтяжки внутри ПЛИС использовать не стоит - они слишком слабые. Подтяжки по выводам TDO внешние, 1кОм. И, раз уж речь зашла про их номиналы, то на что они влияют? А то встречаются варианты с разбросом номиналов от 1 до 10 кОм. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shivers 0 12 ноября, 2015 Опубликовано 12 ноября, 2015 · Жалоба Каждая альтера на отдельном модуле. Разъём только один - на корпусе прибора. Межплатные соединения паянные, длинная переходов между платами линии TDO-TDI не более 5-6 см. С буферами согласен, по всей видимости будет учтено в следующей версии. На три модуля, это уже 20см набегает. Очень критично для житага. Припаяйте дополнительную землю и питание очень толстым проводом, можно добавить конденсаторов разного номинала (электролит, 1нФ, 0.1нФ). Думаю, из-за этой лапши и не работает ничего. Подтяжки по выводам TDO внешние, 1кОм. И, раз уж речь зашла про их номиналы, то на что они влияют? А то встречаются варианты с разбросом номиналов от 1 до 10 кОм. 10кОм это вообще ни о чем, очень слабая подтяжка. 1кОм - вполне достаточно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vitaly_n 0 20 ноября, 2015 Опубликовано 20 ноября, 2015 · Жалоба У меня похожий глюк был при последовательном соединении процессора STM32F205 и Spartan 6. Пока проц не прошит - всё определяется в импакте и шьётся без вопросов. А вот если проц прошит - появляется проблема. Мы нашли два способа решения. Либо надо в процессе сканирования цепочки и программирования держать проц в резете (у нас кнопка резет была на плате), либо при построении цепочки подключить .bsd файл к данному процессору, скачанный с сайта производителя, а потом сохранить проект в .ipf и всегда им пользоваться. Так что я бы посмотрел на то, как влияет прошивка EP1C6 на ноги, задействованные у этого кристалла под JTAG. Либо эту микросхему резетить и не давать загружаться (мы так делали на одной из плат - джампер ставили специально для этого), чтобы не мешала, либо разбираться с прошивкой этого кристалла. Может, надо явным образом как-то прописать ноги JTAG... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться