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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Может ли FPGA частично "зависнуть" ?, чудеса, да и только ...
Demeny
сообщение Feb 20 2012, 10:55
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237



Есть плата с FPGA Xilinx Spartan-3E-500, кристалл заполнен на 98%. Логика, зашитая в FPGA, управляется процессором ARM по параллельной ISA-подобной шине. "Прошивка" давно отлажена и обкатана на огромной серии плат и никаких проблем с ней никогда не было, всё работало без проблем.
Но вот выпущен очередной релиз плат (другим производителем, но топология та же) , с которыми происходят странные вещи. На 80% плат прошивка в FPGA через какое-то время (от 15 мин до нескольких часов) частично перестаёт выполнять свои функции, как бы "зависает". Со стороны процессора всё выглядит ОК - регистры пишутся-читаются, команды отдаются, но ... логика FPGA не работает, причём только часть - другая (существенно большая часть) продолжает исправно молотить и выполнять, что требуется.
Идентичный софт на идентичной плате другого производителя (с тем же блоком питания, если что ...) молотит без проблем сутками. Потребляемый ток всеми вариантами плат не отличается, перегревов нет, напряжения питаний в норме. Сигнал DONE наличествует как до, так и после сбоя.
Я теряюсь в догадках - что тут может быть, куда копать и что смотреть ?


--------------------
Сделано в Китае. Упаковано в России.
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 20 2012, 10:59
Сообщение #2


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

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



глючащий модуль порты на выводы плиса имеет ?


--------------------
Go to the top of the page
 
+Quote Post
Demeny
сообщение Feb 20 2012, 11:14
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237



Цитата(des00 @ Feb 20 2012, 14:59) *
глючащий модуль порты на выводы плиса имеет ?

Да, имеет. После откисания части прошивки внешне (осциллографом) это выглядит так, что на те выходы, куда должны литься из FPGA данные - там тишина, как будто никаких команд по процессорной шине и не поступало, хотя команды идут непрерывно...


--------------------
Сделано в Китае. Упаковано в России.
Go to the top of the page
 
+Quote Post
litv
сообщение Feb 20 2012, 11:54
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 401
Регистрация: 6-10-04
Из: Воронеж
Пользователь №: 806



в Chipscope то что видно?
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Feb 20 2012, 12:02
Сообщение #5


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Demeny @ Feb 20 2012, 14:55) *
Я теряюсь в догадках - что тут может быть, куда копать и что смотреть ?

Гонки, глитчи.
Не помню как точно называется, 10 лет в руки не брал, но в Xilinx Foundation был режим симуляции после разводки.
С учетом реальных таймингов.
Там все спорные места обычно сразу всплывают, даже если в первоначальной симуляции (до разводки) их не было.


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
iosifk
сообщение Feb 20 2012, 12:03
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Demeny @ Feb 20 2012, 14:55) *
Но вот выпущен очередной релиз плат (другим производителем, но топология та же) , с которыми происходят странные вещи. ....
Я теряюсь в догадках - что тут может быть, куда копать и что смотреть ?

Скорее всего здесь в ПЛИСе автомат ловит наводку по входам или CDC сделано не корректно... И этот автомат становится в неизвестное или не описанное состояние из которого не прописан выход... Ну и далее он там и остается до следующего сброса...
Обычное дело...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 20 2012, 12:04
Сообщение #7


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

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



Цитата(Demeny @ Feb 20 2012, 06:14) *
Да, имеет. После откисания части прошивки внешне (осциллографом) это выглядит так, что на те выходы, куда должны литься из FPGA данные - там тишина, как будто никаких команд по процессорной шине и не поступало, хотя команды идут непрерывно...

я про входные данные. если они есть, то 99% асинхра в интерфейсах вылезла


--------------------
Go to the top of the page
 
+Quote Post
Demeny
сообщение Feb 20 2012, 12:57
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237



Цитата(litv @ Feb 20 2012, 15:54) *
в Chipscope то что видно?

Чипскоп туда, видимо, не затолкнуть (98% заполнение), да и JTAG-a на плате нет. А на похожей плате, где JTAG есть - проблемы такой нет ... wacko.gif
Цитата(iosifk @ Feb 20 2012, 16:03) *
Скорее всего здесь в ПЛИСе автомат ловит наводку по входам или CDC сделано не корректно... И этот автомат становится в неизвестное или не описанное состояние из которого не прописан выход... Ну и далее он там и остается до следующего сброса...
Обычное дело...

Да, это я понимаю... Как отловить такие наводки ?
CDC да, есть небольшой грешок (1.25 вместо 1.2), но ведь работает всё это добро на таких же платах. Начинку FPGA делал не я, исходники есть, но оставлю это на крайний случай. Она тоже проверена временем и перенесена на плату в бинарном виде.

Цитата(des00 @ Feb 20 2012, 16:04) *
я про входные данные. если они есть, то 99% асинхра в интерфейсах вылезла

Из входных данных только управление по параллельной шине, подключенной к EBI процессора, в остальном, откисающий блок занимается тем, что перекачивает данные из SDRAM в последовательный ЦАП, управление простейшее - задаётся базовый адрес, длина, даётся команда старт взводом бита в регистре, всё - данные понеслись в ЦАП. В какой-то момент, вместо ожидаемых данных (клок+дата) тишина, после этого процессор может перезаписывать новый базовый адрес, взводить команду старт и всё что угодно - это ничего не помогает.
Действительно, складывается впечатление, что именно этот автомат попал в какую-то мертвую точку.
Но почему именно на этой серии плат - вот в чём основной вопрос ? wacko.gif
Что с ними может быть не так (бракованые ПЛИС, стабилизаторы питания, кондесаторы) ?


--------------------
Сделано в Китае. Упаковано в России.
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 20 2012, 13:05
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



А спидгрейт у плис такой же как и всех других плат, или изменился?
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 20 2012, 13:06
Сообщение #10


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

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



Цитата(Demeny @ Feb 20 2012, 06:57) *
Но почему именно на этой серии плат - вот в чём основной вопрос ? wacko.gif
Что с ними может быть не так (бракованые ПЛИС, стабилизаторы питания, кондесаторы) ?

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


Цитата(disel @ Feb 20 2012, 07:05) *
А спидгрейт у плис такой же как и всех других плат, или изменился?

иначе бы они старые прошивки не загрузили.


--------------------
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 20 2012, 13:10
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(des00 @ Feb 20 2012, 16:06) *
иначе бы они старые прошивки не загрузили.


Это если поставили с более медленным спидргейтом. Я не про то. Если спидгрей стал быстрее, то при наличии где то в схеме асинхронного управления это тоже может привесит к подобному поведению.
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 20 2012, 13:12
Сообщение #12


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

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



Цитата(disel @ Feb 20 2012, 07:10) *
Это если поставили с более медленным спидргейтом. Я не про то. Если спидгрей стал быстрее, то при наличии где то в схеме асинхронного управления это тоже может привесит к подобному поведению.

хмм, если мне память не изменяет у них IDCODE будут разные и программатор, без хака, не даст прошить плисину.


--------------------
Go to the top of the page
 
+Quote Post
disel
сообщение Feb 20 2012, 13:22
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 610
Регистрация: 22-04-05
Пользователь №: 4 410



Цитата(des00 @ Feb 20 2012, 16:12) *
хмм, если мне память не изменяет у них IDCODE будут разные и программатор, без хака, не даст прошить плисину.


Ну я конечно зуб не дам насчет IDCODE, хотя мне казалось что от спидгрейда он не зависит. Но в принципе более свежие микросхемы могут быть более быстрыми. Что при налиичии асинхронщины может вызвать такие проблемы.
Go to the top of the page
 
+Quote Post
Demeny
сообщение Feb 20 2012, 13:59
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237



Цитата(des00 @ Feb 20 2012, 17:06) *
вы же сами сказали, была переразводка. например один сигнал управления, раньше был позже другого, а тут они поменялись %)

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


--------------------
Сделано в Китае. Упаковано в России.
Go to the top of the page
 
+Quote Post
Shivers
сообщение Feb 20 2012, 14:05
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Я бы взял старую плату и перепаял с нее ПЛИС на новую глючную плату. Если не заработает, то проблемы в новой плате (найти три отличия, помеху или еще что), а если все ОК будет, то претензии к модели, особенно если в дизайне много асинхронности.

Что касается вопроса, как он задан: у меня альтеры горели "частично", т.е. скажем в нее грузилась прошивка и работала, но один i/o банк при этом был всегда в закоротке; либо другой случай из жизни - прошивка грузится, но не работает и ПЛИС греется как утюг (предположительно - внутренняя закоротка в цепи питания нескольких банков i/o, но с живым житагом, памятью и интерфейсом конфигурации). Итого, гипотетически можно представить единичные случаи отказа отдельных узлов ПЛИС. Но не в вашем случае (80% плат).
Итого, скорее всего проблема в плате.
Go to the top of the page
 
+Quote Post

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

 


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


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