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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Проверка работоспособности FPGA, Есть ли стандартный способ проверить FPGA?
Gothard
сообщение Aug 18 2010, 05:57
Сообщение #1


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

Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406



Доброго времени суток!
Недавно возникла проблема на одной из плат и есть подозрение, что конкретный плис (Xilinx) частично неработоспособный.
В данный момент собираюсь сделать загрузку для диагностики сего явления, но возник вопрос - может есть какой-то стандартный способ? Например подключить JTAG и запустить утилиту, осуществляющую проверку FPGA на функциональность (типа заводской).
Понимаю, что в большинстве случаев сам дурак оказываешься и вероятность, что проблема с самим FPGA очень низка, но чем черт не шутит....

Если у кого-то были такие проблемы, поделитесь опытом пожалуйста 1111493779.gif

P.S. Питание проверял - на мой взгляд удовлетворительно. Да и плис, стоящий рядом и кормящийся от тех же источников, работает. Синхросигналы нормальные.
Подозрения на плис появились после того как первая загрузка для диагностики не работала (порт данных оставался в 3-м состоянии), а вторая загрука (были выведены некоторые внутренние сигналы на контрольные точки (т.е. наружу FPGA)) заработала в полной мере. Причем первая загрузка не работает стабильно, а вторая стабильно работает. Обе загрузки нормально работают на другой плате.
Go to the top of the page
 
+Quote Post
DW0
сообщение Aug 18 2010, 06:55
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



обратите внимание на отчеты по максимальным частотам, так бывает что одна ПЛИС немного шустрее другой, и на одной работает, другой нет.
если Вы выводите что-то на тестовые пины и проект начинает работать, то это свидетельствует о том, что произошла компиляция по другому, и это два абсолютно разных проекта и работают по разному.
еще важно заполнение, если более 70% то могут быть тоже проблемы на больших частотах
Go to the top of the page
 
+Quote Post
Gothard
сообщение Aug 18 2010, 07:09
Сообщение #3


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

Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406



Цитата(DW0 @ Aug 18 2010, 10:55) *
обратите внимание на отчеты по максимальным частотам, так бывает что одна ПЛИС немного шустрее другой, и на одной работает, другой нет.
еще важно заполнение, если более 70% то могут быть тоже проблемы на больших частотах

Загрузка диагностики практически пустая, частота только 25 МГц, тайминги выполняются, никаких DCM.

Цитата(DW0 @ Aug 18 2010, 10:55) *
если Вы выводите что-то на тестовые пины и проект начинает работать, то это свидетельствует о том, что произошла компиляция по другому, и это два абсолютно разных проекта и работают по разному.

Вот это и наводит на мысли, что какой-то путь в ППВМ не работает. Возможно, что цепь во втором проекте провелась по другому (рабочему) пути и выходные буфера стали открываться, к примеру....
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 18 2010, 07:54
Сообщение #4


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

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



Цитата(Gothard @ Aug 18 2010, 01:09) *
Вот это и наводит на мысли, что какой-то путь в ППВМ не работает. Возможно, что цепь во втором проекте провелась по другому (рабочему) пути и выходные буфера стали открываться, к примеру....

если корпус бга проверьте пропайку шаров.


--------------------
Go to the top of the page
 
+Quote Post
AJIEKCEu
сообщение Aug 18 2010, 07:58
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 314
Регистрация: 7-12-05
Пользователь №: 11 917



Цитата(des00 @ Aug 18 2010, 11:54) *
если корпус бга проверьте пропайку шаров.

Не совсем понятно, чем это поможет. Потому что:
1. Исходный проект - стабильно не работает.
2. Тестовый проект состоящий из исходного + некоторые дополнительные ноги _НА ВЫХОД_ - стабильно работает.

То есть количество и расположение управляющих/значимых ног не изменилось. Но при этом одна загрузка стабильно работает, а другая - стабильно не работает.
Go to the top of the page
 
+Quote Post
DW0
сообщение Aug 18 2010, 08:05
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



а кто является источником тактовой частоты? через PLL она пропущена???
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 18 2010, 08:07
Сообщение #7


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



Цитата(AJIEKCEu @ Aug 18 2010, 11:58) *
Не совсем понятно, чем это поможет. Потому что:


Питание / земля не до всех ног, например, доходит.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
Gothard
сообщение Aug 18 2010, 08:15
Сообщение #8


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

Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406



Цитата(DS @ Aug 18 2010, 12:07) *
Питание / земля не до всех ног, например, доходит.

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

А насчет стандартного способа проверки плиса на функциональность - выходит глухо?
Хотелось бы иметь возможность удостоверится, что дело не в плисе.
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Aug 18 2010, 08:16
Сообщение #9


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

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



Цитата(Gothard @ Aug 18 2010, 11:09) *
Загрузка диагностики практически пустая, частота только 25 МГц, тайминги выполняются, никаких DCM.

А боевая?
Пост-роут тайминг аналайз проводили? Нету узких мест?


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Gothard
сообщение Aug 18 2010, 08:19
Сообщение #10


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

Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406



Цитата(DW0 @ Aug 18 2010, 12:05) *
а кто является источником тактовой частоты? через PLL она пропущена???

Нет, частота подается с другого плиса через размножители. А исходно - с кварцевого генератора. Судя по тому, что от нее работает GigabitPHY, вполне удобоваримая smile.gif, да и на осциллограмме претензий нет

Цитата(MrYuran @ Aug 18 2010, 12:16) *
А боевая?
Пост-роут тайминг аналайз проводили? Нету узких мест?

До боевой дело еще не дошло - остановились на внутреннем тесте связей при наладке ячейки. После чего делал дополнительные загрузки диагностики, дальше вы знаете smile.gif
Go to the top of the page
 
+Quote Post
des00
сообщение Aug 18 2010, 08:40
Сообщение #11


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

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



Цитата(AJIEKCEu @ Aug 18 2010, 02:58) *
Не совсем понятно, чем это поможет. Потому что:

я месяц просидел над платой, в вопросах почему от сборки к сборке не работает проект. Оказалось плохая пропайка земли/питания где то в центре плис. Сняли, поставили, все заработало %)

Цитата(Gothard @ Aug 18 2010, 03:15) *
Но питание ядра единое, а загрузка стала работать при том, что основной внешний интерфейс не поменялся, так что сомнительно что дело в этом (если только что-то (в смысле питание) куда-то не перетекло при подключении дополнительных ног).

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


--------------------
Go to the top of the page
 
+Quote Post
DW0
сообщение Aug 18 2010, 08:58
Сообщение #12


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



имел проблемы с альтерой, когда связывал две плиски и одна являлась источнитком тактовой частоты для другой, нужно полюбому через ПЛЛ пропускать иначе будет постоянно глючить, причем одни платы работали более менее стабильно, а находились такие которые вообще отказывались, нужно через ПЛЛ пропустить синхрочастоту, она как фильтр работает и пропускает только то что надо.
Go to the top of the page
 
+Quote Post
x736C
сообщение Aug 18 2010, 09:13
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Цитата(DW0 @ Aug 18 2010, 12:58) *
нужно через ПЛЛ пропустить синхрочастоту, она как фильтр работает и пропускает только то что надо.
Должно быть достаточно внутренней PLL (если она есть, конечно).
Go to the top of the page
 
+Quote Post
Gothard
сообщение Aug 18 2010, 09:17
Сообщение #14


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

Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406



Цитата(DW0 @ Aug 18 2010, 12:58) *
имел проблемы с альтерой, когда связывал две плиски и одна являлась источнитком тактовой частоты для другой, нужно полюбому через ПЛЛ пропускать иначе будет постоянно глючить, причем одни платы работали более менее стабильно, а находились такие которые вообще отказывались, нужно через ПЛЛ пропустить синхрочастоту, она как фильтр работает и пропускает только то что надо.

Возможно у вас были проблемы с времянками передачи между плисами? С точки зрения синхросигнала и схемы на триггерах важно лишь иметь ровные фронты, уровни логического 0 и 1 и уложиться в setup/hold. PLL может сдвинуть (в конечном счете именно это она и сделает) фазу синхросигнала на триггерах и разброс задержек дерева синхронизации, чем поможет выполнить времянки.
В моем случае запасы параметров большие, синхросигнал наблюдаю хороший.
Go to the top of the page
 
+Quote Post
DW0
сообщение Aug 18 2010, 09:34
Сообщение #15


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



все стало хорошо после того когда каждая плисина стала работать со своим генератором.
В общем пришли к выводу, что когда без ПЛЛ (я имел ввиду и имею внутреннею) то генератор или пин немного дребезжит и некоторые, очень редкие, фронты расположены слишком близко, что вся внутренняя комбинационная логика успела завершить свои переходные процессы.
Если вы с генератора заводите на пин, а с пина, без внутреней ПЛЛ, синхронизируете с пина все или часть триггеров(регистров) то будете иметь проблему, причем это может быть вообще не рабочий, а может быть и раз в час в день один глюк, причем совершенно хаотично, без какой либо закономерности.
Go to the top of the page
 
+Quote Post

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

 


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


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