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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Не грузится Kintex-7 по JTAG, Не устанавливается DONE
ivanoffer
сообщение Apr 28 2017, 20:28
Сообщение #1


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Доброе время суток. Возникла тупиковая ситуация с загрузкой по JTAG. Свои идеи закончились и без помощи не обойтись.
Использую XILINX Kintex-7 xc7k325t, плата своя. VIVADO 2015.3. Режим конфигурации по SPI FLASH. Подобная тема здесь обсуждалось,
но там JTAG работал. Есть в наличии совершенно другая плата, но с таким же кристаллом и там проблем нет. Правда плата не своя, но
это главное инструментарий рабочий. Сам проект выводит постоянный сигнал на светодиод, фактически пустышка. Питание проверял
осциллографом - претензий нет (пульсации менее 15мВ), выделенные конфигурационные контакты подключены верно, что проверял
ни один раз. В среде Vivado ПЛИС определяется правильно, визуально отображаются все питающие напряжения и температура, и тоже
верно. При включении питания стартует режим загрузки по SPI - сигнал такта из ПЛИС, процесс бесконечный, так как флеш пустая.
Начинаю загружать ПЛИС по JTAG, сам процесс загрузки идет без ошибок и в конце вижу сообщение о непонятной мне ошибке.



Сигнал DONE не поднимается (0,14В) - подтянут к 1,8В резистором 330Ом, до этого был 4,7кОм, но не помогло.
Сигнал INIT по окончании загрузки опускается в ноль.
Переключал скорость загрузки от 750кГц до 6МГц, результат один.

Ниже показаны значения регистров ПЛИС.










Что может быть не так?
Go to the top of the page
 
+Quote Post
eugen_pcad_ru
сообщение Apr 29 2017, 05:03
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 642
Регистрация: 15-11-07
Пользователь №: 32 353



Программатор фирменный? Если китайский, там могут быть чудеса...


--------------------
Правильно сформулированый вопрос содержит в себе половину ответа.
P.S.: Некоторые модераторы в качестве ответа так навязчиво предлагают посетить свой сайт, что иначе как саморекламу такие действия интерпретировать сложно.
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение Apr 29 2017, 06:18
Сообщение #3


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Цитата(eugen_pcad_ru @ Apr 29 2017, 09:03) *
Программатор фирменный? Если китайский, там могут быть чудеса...


Программатор родной, рабочий.
Не понимаю, что не так. Сигнал INIT падает в ноль и сигнализирует об ошибки конфигурации,
но знать бы о какой.
Go to the top of the page
 
+Quote Post
Inanity
сообщение Apr 29 2017, 23:56
Сообщение #4


Местный
***

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



1. PROGRAM_B в каком состоянии и как подключен?

2. CFGBVS у вас в нуле. Стало бы VCCO <= 1.8в. Так ли это?

3. Уровни JTAG сигналов тоже должны быть не выше напряжения питания VCCO, т.е. 1.8в, если п.2 - правда.

4. Куда ещё подключается DONE, кроме как к подтяжке?

Неплохо было бы выложить часть схемы связанной с блоком конфигурации.
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение Apr 30 2017, 04:47
Сообщение #5


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Включение загрузки ПЛИС



Go to the top of the page
 
+Quote Post
Inanity
сообщение Apr 30 2017, 11:03
Сообщение #6


Местный
***

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



1. Что-то мне подсказывает, что в PROG_B проблема. Стоит проверить то, как ведёт себя супервизор в процессе конфигурации ПЛИС, если по каким-то причинам PROG_B в нуле или дёргается в процессе конфигурации, то битстрим не зальётся нормально.

2. DONE на затвор mosfet-а можно спокойно подключать. Проблемы могли были бы быть с биполярным транзистором.

P.S. Извините, но изображение мелковато. Про питание банков понял, но красный текст на микросхеме прочитать не могу даже с оригинала. Что-то там Flash SPI...

Сообщение отредактировал Inanity - Apr 30 2017, 11:12
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение Apr 30 2017, 11:27
Сообщение #7


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Цитата(Inanity @ Apr 30 2017, 15:03) *
Что-то мне подсказывает, что в PROG_B проблема. Стоит проверить то, как ведёт себя супервизор в процессе конфигурации ПЛИС, если по каким-то причинам PROG_B в нуле или дёргается в процессе конфигурации, то битстрим не зальётся нормально.

P.S. Извините, но изображение мелковато. Про питание банков понял, но красный текст на микросхеме прочитать не могу даже с оригинала. Что-то там Flash SPI...


Красным в поле ПЛИС указаны значения М0-М2 - для себя. Линия PROG была первой под подозрением - выпаял супервизор, итог тотже. Смотрел осциллографом при загрузке, единица стоит честная все время загрузки. Дополнительно закарачивал PROG на землю, INIT следом отрабатывает чётко за ним. Мне неясно какую информацию
несёт переход INIT в ноль по окончании загрузки по JTAG. Ведь это что-то да значит.
Go to the top of the page
 
+Quote Post
Inanity
сообщение Apr 30 2017, 13:15
Сообщение #8


Местный
***

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



Цитата(ivanoffer @ Apr 30 2017, 14:27) *
Мне неясно какую информацию несёт переход INIT в ноль по окончании загрузки по JTAG. Ведь это что-то да значит.


1. Если INIT_B никто не дёргает (судя по схеме там только подтяжка), то вообще говоря спад указывает на CRC errror:

UG470:
>> A falling INIT_B signal during configuration can indicate a CRC error in the bitstream seen by the FPGA device.

А что, если у вас по JTAG идут некорректные данные? У вас там какой-то хитрый преобразователь уровней стоит D52. Это что за микросхема? До и после неё нет ничего подозрительного? Она вообще штатно работает?

2. Вы говорили, что по JTAG ПЛИС корректно определяется. А, например, тот же XADC открыть в Vivado и почитать температуру ПЛИСины можно?

3. Настройки .bit файла в среде смотрели? Может там что-то не так настроено?

Сообщение отредактировал Inanity - Apr 30 2017, 13:38
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение Apr 30 2017, 14:28
Сообщение #9


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Цитата(Inanity @ Apr 30 2017, 17:15) *
1. Если INIT_B никто не дёргает (судя по схеме там только подтяжка), то вообще говоря спад указывает на CRC errror:

UG470:
>> A falling INIT_B signal during configuration can indicate a CRC error in the bitstream seen by the FPGA device.

А что, если у вас по JTAG идут некорректные данные? У вас там какой-то хитрый преобразователь уровней стоит D52. Это что за микросхема? До и после неё нет ничего подозрительного? Она вообще штатно работает?

2. Вы говорили, что по JTAG ПЛИС корректно определяется. А, например, тот же XADC открыть в Vivado и почитать температуру ПЛИСины можно?

3. Настройки .bit файла в среде смотрели? Может там что-то не так настроено?


1. Читал. Init показывает ошибку СRC, но бит ошибки в нуле (первый пост). Преобразователь стандартная логика, решение рабочее на более 200 плат, грешить на него не могу.
2. По jtag в XADC читается температура, напряжения, регистры конфигурации. Психанул и подключился jtag ПЛИС напрямую к загрузчику навесным монтажем, все тоже самое.
3. Настройки .bit файла стандартные, не изменял.


Go to the top of the page
 
+Quote Post
Lmx2315
сообщение May 1 2017, 05:55
Сообщение #10


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



..попробуйте посмотреть питание ПЛИС непосредственно при загрузке с jtag-а, где нибудь непосредственно рядом с плисиной на каких-нить блокирующих конденсаторах.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение May 1 2017, 07:07
Сообщение #11


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Цитата(Lmx2315 @ May 1 2017, 09:55) *
..попробуйте посмотреть питание ПЛИС непосредственно при загрузке с jtag-а, где нибудь непосредственно рядом с плисиной на каких-нить блокирующих конденсаторах.


Смотрел осциллографом в режиме ожидания все напряжения непосредственно на емкостях под ПЛИС - проседания напряжения нет ни в процессе загрузки, ни
по ее окончании. Понимаю, что переход INIT в ноль сигнализирует об ошибке CRC, но бит BIT00_CRC_ERROR = 0 (первый пост). Наверняка за поиском глобальной
ошибки стоит какая-нибудь детская. Не нравится мне сигнал TDO - может так и должно быть,но если смотреть в XADC Vivado напряжения и температуру, то внутри пакетов
данных (проскакивает очень редко) не четкий переход нулей и единиц, а какая-то хрень в форме нарастающей экспоненты по длительности в несколько бит, но это НЕ мешает XADC корректно
отображать на экране считанные значения - провалов в данных нет, все ровно. При загрузке потока по JTAG описанной ситуации не вижу.

Сообщение отредактировал ivanoffer - May 1 2017, 07:25
Go to the top of the page
 
+Quote Post
Raven
сообщение May 1 2017, 12:11
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Цитата(ivanoffer @ May 1 2017, 10:07) *
Не нравится мне сигнал TDO - может так и должно быть,но если смотреть в XADC Vivado напряжения и температуру, то внутри пакетов
данных (проскакивает очень редко) не четкий переход нулей и единиц, а какая-то хрень в форме нарастающей экспоненты по длительности в несколько бит, но это НЕ мешает XADC корректно
отображать на экране считанные значения - провалов в данных нет, все ровно. При загрузке потока по JTAG описанной ситуации не вижу.

А вы эту осциллограмму с экспонентой можете показать?
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение May 1 2017, 13:21
Сообщение #13


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Цитата(Raven @ May 1 2017, 16:11) *
А вы эту осциллограмму с экспонентой можете показать?


Фото сделаю завтра.
Go to the top of the page
 
+Quote Post
Flood
сообщение May 1 2017, 18:50
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 702
Регистрация: 8-06-06
Пользователь №: 17 871



Я бы убрал R146, выпаял и закоротил D51, D52, R147. После чего на Vref программирующего разъема подать 1,8В и пробовать. Если заработает - разбираться с D52.
Go to the top of the page
 
+Quote Post
ivanoffer
сообщение May 1 2017, 19:41
Сообщение #15


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

Группа: Участник
Сообщений: 120
Регистрация: 21-07-11
Пользователь №: 66 348



Цитата(Flood @ May 1 2017, 22:50) *
Я бы убрал R146, выпаял и закоротил D51, D52, R147. После чего на Vref программирующего разъема подать 1,8В и пробовать. Если заработает - разбираться с D52.


Именно так и сделал, когда допекло. Резисторную сборку D52 выпаял и напрямую навесным монтажем подключил выводы ПЛИС на разъем программатора, на него же
подал опорные 1,8В и землю. Результат один в один. Вернул все взад. Бред какой-то.
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 Текстовая версия Сейчас: 7th July 2025 - 06:20
Рейтинг@Mail.ru


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