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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Непонятки с конфигурацией Циклона
okela
сообщение Jun 24 2014, 15:48
Сообщение #1


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

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



Добрый день.

Воюю с заливкой конфигурации в CycloneV E. Есть две схемы конфигурирования: JTAG и FPPx8. Пока могу пользоваться только JTAG-ом. Циклон включен в цепочку еще с МАХII. Все входы MSEL[4..0] притянуты к общему проводу через 1,5КОм резюки с возможностью подключить напрямую VCC_3.3V, но пока все в нуле. Пробую заливать конфигурацию через JTAG - вроде все идет гладко, INIT_DONE включен и сразу падает в ноль пока идет процесс конфигурации. По окончании конфигурирования программатор говорит что все ОК, INIT_DONE подскакивает в "1", а вот nSTATUS и CONF_DONE как были в состоянии "0" при подаче питания так и не шелохнулись даже... Но самое интересное, что в реальности похоже не происходит переход в user mode, т.к. в проекте включаю светодиод без всяких клоков и условий, а он никак не реагирует на это после заливки конфигурации. Не пойму что происходит, третий день бьюсь уже... smile3046.gif
Сигналы nSTATUS, CONF_DONE, nCONFIG подтянуты к VCC_3.3V. Питание VCCPGM и VCCPD также 3,3В. Поискал немного в разделе, нашел что пишут о том, что обязательно нужно входы MSEL[4..0] непосредственно притягивать к земле (без резюков). Насколько это критично для JTAG-конфигурации ?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 24 2014, 17:21
Сообщение #2


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(okela @ Jun 24 2014, 18:48) *

Уверены, что с питанием всё нормально? Были проблемы с конфигурацией, во всём оказались виноваты источники питания.

Цитата(okela @ Jun 24 2014, 18:48) *
что обязательно нужно входы MSEL[4..0] непосредственно притягивать к земле (без резюков). Насколько это критично для JTAG-конфигурации ?

На наших платах без резаков.
Go to the top of the page
 
+Quote Post
okela
сообщение Jun 24 2014, 17:52
Сообщение #3


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

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



Цитата(doom13 @ Jun 24 2014, 20:21) *
Уверены, что с питанием всё нормально? Были проблемы с конфигурацией, во всём оказались виноваты источники питания.


Дык, по питанию вроде и придраться особо некчему... :

VCC_1.1 = 1.09 V
VCC_2.5 = 2.45 V
VCC_3.3 = 3.28 V
Go to the top of the page
 
+Quote Post
iosifk
сообщение Jun 24 2014, 18:06
Сообщение #4


Гуру
******

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



Цитата(okela @ Jun 24 2014, 19:48) *
Пока могу пользоваться только JTAG-ом. Циклон включен в цепочку еще с МАХII.

Сигналы JTAG смотрели? Клоки чистые? Все остальные чистые? Обе микросхемы определяются?
Частоту снижать пробовали?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 25 2014, 07:06
Сообщение #5


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(okela @ Jun 24 2014, 20:52) *
Дык, по питанию вроде и придраться особо некчему... :
VCC_1.1 = 1.09 V
VCC_2.5 = 2.45 V
VCC_3.3 = 3.28 V

То, с чем столкнулись - обвязка для импульсников была плохо подобрана, скважность ШИМ плавала и уровни питания "немного" шумели (мультиметром нормальный уровень показывало), устранили и сразу всё запустилось.
Резисторы с MSEL убирайте, не нужны они там.
Раз есть возможность, поставте конфигурацию в AS. FPGA должна будет пробовать грузится по SPI постоянно. На nSTATUS и nCONFIG будет наблюдаться импульсный сигнал с каким-то там периодом, что означает - с FPGA всё гуд, она пробует грузиться. Если так, дальше с JTAG будете разбираться.
Ваш CONF_DONE = 0 означает, что конфигурация не произошла.
Go to the top of the page
 
+Quote Post
jks
сообщение Jun 25 2014, 09:19
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084



Проверьте значения MSEL[4..0].

Конфигурация MSEL[4..0] = 00000 только для режима FPPX16.

Для FPPx8 допустимые значения MSEL[4..0]
10100/11000 - без сжатия и шифрования
10101/11001 - без сжатия и с шифрованием
10110/11010 - с сжатием и с шифрованием / с сжатием и без шифрования

JTAG работает всегда независимо от значений MSEL.

Да еще добавлю.

Если MAXII и FPGA в одной цепочке и nCONFIG заведен на MAXII то его надо отвязать от него или отключить питание ядра MAXII.
Go to the top of the page
 
+Quote Post
okela
сообщение Jun 25 2014, 10:19
Сообщение #7


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

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



Цитата(iosifk @ Jun 24 2014, 21:06) *
Сигналы JTAG смотрели? Клоки чистые? Все остальные чистые? Обе микросхемы определяются?
Частоту снижать пробовали?


Посмотреть сигналы JTAG пока нет возможности - нет под рукой подходящего осцила. Оба чипа в цепочке определяются с первого пинка. Частоту снижать не пробовал - пока не чем это сделать. Скачал UniversalScan, но там нужно пробную лицензию получить. Пока жду ответа. Установил пока программулину TopJTAG Probe, пробовал поиграться с ней. В Циклоне есть пара юзер-выводов, подключенных к светодиодам - оба врукопашную отлично управляются через инструкции EXTEST ! Т.е. можно предположить что с JTAG все в порядке ? Тем более что и процесс программируования как бы визуально проходит без ругательств Квартуса...

Цитата(doom13 @ Jun 25 2014, 10:06) *
То, с чем столкнулись - обвязка для импульсников была плохо подобрана, скважность ШИМ плавала и уровни питания "немного" шумели (мультиметром нормальный уровень показывало), устранили и сразу всё запустилось.
Резисторы с MSEL убирайте, не нужны они там.
Раз есть возможность, поставте конфигурацию в AS. FPGA должна будет пробовать грузится по SPI постоянно. На nSTATUS и nCONFIG будет наблюдаться импульсный сигнал с каким-то там периодом, что означает - с FPGA всё гуд, она пробует грузиться. Если так, дальше с JTAG будете разбираться.
Ваш CONF_DONE = 0 означает, что конфигурация не произошла.


Аналогично - посмотреть на питание осцилом пока не могу... С CONF_DONE = 0 понятно, что шось не тоё, но сбивает с толку нормальная отработка сигнала INIT_DONE. 05.gif Буду разбираться дальше.
Go to the top of the page
 
+Quote Post
jks
сообщение Jun 25 2014, 10:29
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084



А NCONFIG в каком состоянии после INIT_DONE?

Если в "1", то возможно просто не хватает тактов для завершения перехода в USER_MODE.
Go to the top of the page
 
+Quote Post
okela
сообщение Jun 25 2014, 10:32
Сообщение #9


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

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



Цитата(jks @ Jun 25 2014, 12:19) *
Проверьте значения MSEL[4..0].

Конфигурация MSEL[4..0] = 00000 только для режима FPPX16.

Для FPPx8 допустимые значения MSEL[4..0]
10100/11000 - без сжатия и шифрования
10101/11001 - без сжатия и с шифрованием
10110/11010 - с сжатием и с шифрованием / с сжатием и без шифрования

JTAG работает всегда независимо от значений MSEL.

Да еще добавлю.

Если MAXII и FPGA в одной цепочке и nCONFIG заведен на MAXII то его надо отвязать от него или отключить питание ядра MAXII.


Судя по докам от Альтеры, то состояние MSEL[4..0] мало влияет на режим JTAG-конфигурирования, хотя с другой стороны они пишут что надо установить валидное значение из таблицы возможных состояний. Вход nCONFIG подтянут к '1', вход nCE - на земле.

Цитата(jks @ Jun 25 2014, 13:29) *
А NCONFIG в каком состоянии после INIT_DONE?

Если в "1", то возможно просто не хватает тактов для завершения перехода в USER_MODE.


Ээээ... Не совсем понлял: nCONFIG, насколько я разбираюсь в медицине, - это вход управления конфигурацией и как он может изменить самостоятельно свое логическое состояние ?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 25 2014, 11:14
Сообщение #10


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(okela @ Jun 25 2014, 13:19) *
но сбивает с толку нормальная отработка сигнала INIT_DONE

Если смотреть на последовательность конфигурации, то вообще не понятно, каким образом Ваш INIT_DONE установился в 1, это могло произойти только после установки в 1 CONF_DONE. На наших платах INIT_DONE никогда не использовали.
Go to the top of the page
 
+Quote Post
jks
сообщение Jun 25 2014, 15:31
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084



Цитата(okela @ Jun 25 2014, 14:32) *
Судя по докам от Альтеры, то состояние MSEL[4..0] мало влияет на режим JTAG-конфигурирования, хотя с другой стороны они пишут что надо установить валидное значение из таблицы возможных состояний. Вход nCONFIG подтянут к '1', вход nCE - на земле.

Ээээ... Не совсем понлял: nCONFIG, насколько я разбираюсь в медицине, - это вход управления конфигурацией и как он может изменить самостоятельно свое логическое состояние ?


Это я уточнить хотел куда подключен вывод nCONFIG и не может ли его извне что-то сажать в "0".
У меня была похожая проблема с CyclonеIV и MAXII.
CyclonеIV и MAXII также были подключены по цепочке JTAG.
У меня конфигурация шла через MAXII и выводы программирования в режиме PS (NCONFIG, NSTATUS, CONFDONE, DCLK, DATA0 были подключены к MAXII).
Так вот при конфигурации весь битстрим записывался, после этого CONFDONE устанавливался в "1", а потом через 50-100мс сбрасывался в "0".
Я долго немог понять в чем дело. Заметил что NCONFIG падает в "0" после установки CONFDONE в "1".
Думал проблема в питании. Отключил питание (VCCIO) MAXII, при этом питание ядра MAXII осталось.
Так вот пока полностью не отрубил MAXII прошить через JTAG не удалось.

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

А Вы состояние пинов MSEL[4..0], NCONFIG, NSTATUS, CONF_DONE по JTAG не можете прочитать?
Может не пропай на CONF_DONE или резистор слишком высокоомный.
Go to the top of the page
 
+Quote Post
okela
сообщение Jun 26 2014, 09:21
Сообщение #12


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

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



Цитата(jks @ Jun 25 2014, 18:31) *
А Вы состояние пинов MSEL[4..0], NCONFIG, NSTATUS, CONF_DONE по JTAG не можете прочитать?
Может не пропай на CONF_DONE или резистор слишком высокоомный.


Могу прочитать только состояние пинов MSEL[4..0] - все в "0". Остальные не показываают свое состояние.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 26 2014, 09:29
Сообщение #13


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(okela @ Jun 26 2014, 12:21) *
Могу прочитать только состояние пинов MSEL[4..0] - все в "0". Остальные не показываают свое состояние.

Если вы использовали Universal Scan, то там, по-моему, можно состояние всех пинов посмотреть.
Go to the top of the page
 
+Quote Post
okela
сообщение Jun 27 2014, 11:48
Сообщение #14


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

Группа: Свой
Сообщений: 165
Регистрация: 11-01-05
Из: Украина, г. Одесса
Пользователь №: 1 896



Цитата(doom13 @ Jun 26 2014, 12:29) *
Если вы использовали Universal Scan, то там, по-моему, можно состояние всех пинов посмотреть.


Смотрел с помощью TopJTAG Probe. С Universal Scan пока не разобрался как читать состояние пинов.
Также пробовал установить на входах MSEL[4..0] комбинацию 10011, соответствующую режиму AS. Никакой разницы - на CONF_DONE и nSTATUS все по прежнему (голый "0")...
Go to the top of the page
 
+Quote Post
jks
сообщение Jun 27 2014, 14:57
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 249
Регистрация: 3-04-11
Из: .
Пользователь №: 64 084



Возможно PR_REQUEST и DCLK надо подтянуть к земле шоб не болтались.
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 Текстовая версия Сейчас: 20th July 2025 - 00:01
Рейтинг@Mail.ru


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