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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Непонятные глюки Cyclone 3, после длительного неиспользования девайса
Serg_Sm
сообщение Jan 13 2010, 09:54
Сообщение #1


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

Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167



Здравствуйте.
Собственно проблема:
Есть 2 платы на каждой из которых установлены ПЛИС Cyclone 3 (EPC35E144C7), режим загрузки AS (через EPCS4). Платы соединены оптикой - транссиверы на 125Мбит, скорость передачи 120МБит. У первой платы USB интерфейс (Full-Speed).
Тактирование каждой платы идет от генератора 48МГц, задействована PLL (normal mode) на которой получаем два клока по 120МГц (один со сдвигом на 90 градусов).
Платы пока в тестировании, так что приходится с ними часто работать перешивать и т.п.

Перед НГ сделал можно сказать бета-версию прошивок обеих плат - работают без проблем (прокачал не одну сотню МБайт данных), всякие ситуации с потерей связи по оптике/включениями в разном порядке тоже проверил. И в пятницу к вечеру у меня все заработало - довольный ухожу на выходные (девайс остался выключенным). Прихожу в понедельник - работать не хочет ни в какую, сбои сразу после включения.
Продолбался полдня. Откатился на старые версии прошивок (частота 90МГц) - работает, ради интереса зашил последние версии - опять работает!
И так в течение недели все работало нормально, после выходных опять ситуация повторилась. Вначале думал, на ошибку в логике, но никакими другими путями этот сбой не возникает.
После НГ ситуация повторилась - здесь я был более готов и пробовал найти причину сбоя, но кроме того, что сбоит после старта не нашел: поскольку перепрошил 2 плату (первую не трогал) чуть измененной прошивкой (поменял только назначение тестовых выходов) - все опять заработало без проблем! Причем до этого полдня сбой стабильно проявлялся.

Начал подозревать, что сбоит EPCS4, оставил платы поваляться пару суток на полке. Сейчас включил - сбоит. Сделал верификацию (успешная) и examine прошивки второй платы - все сбои устранились.

Короче я в недоумении. Пока одна мысль - заменить EPCS4 на второй плате, может к чему-нибудь приведет.
Жду советов в искоренении данной проблемы.
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 13 2010, 10:25
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Смахивает на какие-то висящие в воздухе (третьем состоянии) неподтянутые ножки, от накопления/стекания заряда на которых что-то происходит значимое.
Go to the top of the page
 
+Quote Post
Serg_Sm
сообщение Jan 13 2010, 10:38
Сообщение #3


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

Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167



Вот кстати большая часть ножек в ПЛИС у меня не используется и висит в воздухе. Читал как-то, что нужно все неиспользуемые ножки подключать к земле или питанию - насколько это обязательно? Или их все сконфигурировать как выходы и на "0" - достаточно будет? Может в проекте какую-нибудь галочку поставить для указания явной судьбы неподключенных ножек?
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 13 2010, 10:43
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Serg_Sm @ Jan 13 2010, 13:38) *
Или их все сконфигурировать как выходы и на "0" - достаточно будет? Может в проекте какую-нибудь галочку поставить для указания явной судьбы неподключенных ножек?


Вот галочку и установите, что все необъявленные ноги - в ноль. А объявленные - сами за ними следите, что если она на ввод, и от нее что-то зависит, чтобы снаружи был гарантированный сигнал.

Но я больше не про I/O пины, а про всякую служебку. Например - если у Вас стоит USB-шник CY7C68013 - то у него есть нога "reserved", которую по даташиту надо на землю. Если забыть - будет нечто типа Вашего. Ну и подобные примеры с подобными ногами. И непропаи по питательным/земляным ногам...
Go to the top of the page
 
+Quote Post
Builder
сообщение Jan 13 2010, 10:53
Сообщение #5


iBuilder©
****

Группа: Свой
Сообщений: 519
Регистрация: 14-07-04
Из: Минск
Пользователь №: 322



Я-бы ещё внимательно перепроверил пайку и качество платы, было как-то на PCI плате, то работала, то нет.
А оказался брак изготовителя в переходных, пропайка всех переходных вылечила плату полностью.
Не помешало-бы перепроверить времянки и на предмет асинхронщины, т.к. может давать эффекты, связанные с фазой луны.
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 13 2010, 11:10
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Ага. +1. Дефект платы тоже очень вероятен, проходили.
Go to the top of the page
 
+Quote Post
vmp
сообщение Jan 13 2010, 13:28
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070



Как еще одна гипотеза - температурная зависимость. Например теплая плата работает, а холодная - нет (времянки на грани работоспособности). Или при разной температуре плат получаются разные частоты и платы не входят в синхронизацию.
Go to the top of the page
 
+Quote Post
Serg_Sm
сообщение Jan 13 2010, 13:47
Сообщение #8


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

Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167



Из всего вышеперечисленного есть следующие гипотезы:
1) Накопление/стекание заряда на неподключенных ножках. Очень вероятно, но тяжело диагностировать и исправлять. Сюда же можно отнести
не совсем правильное подключение компонент на плате (вроде не такого, а там хз).
2) Глюк EPCS4. Маловероятно, но на всякий случай поменяю.
3) Логические сбои. Маловероятно при таких начальных условиях. Если бы сбоило, то всегда (сейчас сбои случайными не назовешь).
4) Дефект платы/разводки. Маловероятно при таких начальных условиях. Если бы сбоило, то всегда. Хотя земля на брюхе циклона может быть плохо пропаяна - уже сталкивался, правда тогда вообще ничего не работает. Отдам на тщательную пропайку.
5) Температурная зависимость. Изначально предполагал её, но поскольку полдня работает со сбоями, а после перепрошивки глюки сразу исчезают - не в этом дело.

Подскажите, где в квартусе установить галочку, чтобы все неиспользуемые ножки как на ноль подтягивались?
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Jan 13 2010, 14:01
Сообщение #9


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(Serg_Sm @ Jan 13 2010, 16:47) *
Подскажите, где в квартусе установить галочку, чтобы все неиспользуемые ножки как на ноль подтягивались?

Assignment - Device - Device and Pin options - Unused Pins.
Но там по умолчанию и так должно стоять "As output driving ground".


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
Serg_Sm
сообщение Jan 13 2010, 14:11
Сообщение #10


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

Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167



Цитата(Stewart Little @ Jan 13 2010, 17:01) *
Assignment - Device - Device and Pin options - Unused Pins.
Но там по умолчанию и так должно стоять "As output driving ground".

Стояло "Input tri-stated with weak pull-up". Поменял на выходы соединенные с землей. Только результаты всех изменений в понедельник будут известны.

PS: Пины для программирования отдельно указаны "input tri-stated".
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 13 2010, 14:17
Сообщение #11


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Serg_Sm @ Jan 13 2010, 07:47) *
5) Температурная зависимость. Изначально предполагал её, но поскольку полдня работает со сбоями, а после перепрошивки глюки сразу исчезают - не в этом дело.

для надежности я бы еще дунул фризером на всё, а потом погрел феном плису %)


--------------------
Go to the top of the page
 
+Quote Post
SM
сообщение Jan 13 2010, 18:35
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Serg_Sm @ Jan 13 2010, 16:47) *
5) Температурная зависимость. Изначально предполагал её, но поскольку полдня работает со сбоями, а после перепрошивки глюки сразу исчезают - не в этом дело.


Как раз наоборот - один из потенциальных признаков темп. зависимости - во время перепрошивки кристалл успевает сменить темп-ру относительно его рабочего состояния.

А EPCS-ку можете исключить сразу. Лучше попробуйте вместо перепрошивки подержать ПЛИСку в полном сбросе какое-то время (типа nconfig на земле), чтобы остыла, или вообще без питания.
Go to the top of the page
 
+Quote Post
Serg_Sm
сообщение Jan 14 2010, 06:11
Сообщение #13


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

Группа: Свой
Сообщений: 183
Регистрация: 10-10-06
Из: Смоленск
Пользователь №: 21 167



Цитата(SM @ Jan 13 2010, 21:35) *
Как раз наоборот - один из потенциальных признаков темп. зависимости - во время перепрошивки кристалл успевает сменить темп-ру относительно его рабочего состояния.

А EPCS-ку можете исключить сразу. Лучше попробуйте вместо перепрошивки подержать ПЛИСку в полном сбросе какое-то время (типа nconfig на земле), чтобы остыла, или вообще без питания.


Это что, он за 2 суток не охлаждается? Не верится. Я пробовал платы выкладывать на улицу -10 градусов, потом тестил - никаких сбоев. На горячую тоже все в норме.
А вот насчет полного сброса - очень вероятно. Поскольку кажется не сам факт манипуляций с прошивкой, а подключенный USB-Blaster восстанавливает работоспособность. А он как раз ПЛИС в сбросе и держит.
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 14 2010, 06:15
Сообщение #14


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Serg_Sm @ Jan 14 2010, 00:11) *
Это что, он 2 суток охлаждается? Не верится. Я пробовал платы выкладывать на улицу -10 градусов, потом тестил - никаких сбоев.

да степень охлаждения здесь не сильно причем. у вас же где то синхра ломается, задержки поплыли, что то встало не так и вперед. А при перезагрузки начальные условия входа в синхронизм другие вот и начинает работать %) Констрены проекта проверяли на ваши условия по температуре, перегреву, охлаждению?


--------------------
Go to the top of the page
 
+Quote Post
alevnew
сообщение Jan 14 2010, 09:09
Сообщение #15


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

Группа: Участник
Сообщений: 90
Регистрация: 17-05-07
Пользователь №: 27 775



Опишу свою ситуацию, как было. Симптомы примерно такие же - девайс работает часами, но при включении с утра отказывается работать - передает через кипарис по USB несколько килобайт и виснет намертво.
А как "разработается", то работает часами smile.gif.
Короче решил проблему, дело было в следующем:
схема такая - плис циклон 2 + кипарис (USB мост).
схема тестирования - из SDRAM, подключенного к плис, 32 мега, данные через USB идут на комп. На компе тестирующая прога - просто читает данные из ОЗУ.

Когда я прописывал ОЗУ случайными числами - все читалось ОК.
А после включения в ОЗУ были почти все единицы, и поэтому сбоило (это потом до меня дошло). Когда я прописывал ОЗУ единицами, то сбои были стабильными.
Причина была банальна - плохая земля между ПЛИС и кипарисом. Плата была двуслойка.
Кинул землю дополнительными проводами - проблема исчезла.
Убил несколько дней, пока нашел причину.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:02
Рейтинг@Mail.ru


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