Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Неправильно считывается код XC2S50 при загрузке
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
kivl
Здравствуйте, уважаемые плисопрограммисты.

Подскажите, из-за чего при программировании ПЛИС с помощью iMPACT/ISE 8.1 (цепочка XC18V01 - XC2S50, режим Master Serial) может возникнуть:

ERROR:iMPACT:583 - '1': The idcode read from the device does not match the idcode in the bsdl File.
Device IDCODE : 00001111111110111111111111111111
Expected IDCODE: 00001001011000000010000010010011

Видела похожую тему в форуме, но там дело было в смене IDCODE производителем, и проблема решалась обновлением iMPACT. Такого IDCODE нет (смотрела в документах Xilinx). Конфигурационная цепочка у меня соответствует рекомендуемой в Datasheet XC18V01, я ее всю прозвонила и ошибки не нашла. Может ли это быть связано с неудачной разводкой ПП? А с нестабильностью питания ПЛИС? (VCCo = 3,32 В вместо 3,3В)

Заранее спасибо за ответы.
makc
1. Проверьте напряжения питания на всех микросхемах (память, ПЛИС).
2. Проверьте работоспособность конфигурационного кабеля.
3. С помощью осциллографа проверьте форму тактового сигнала (TCK) и диаграммы сигналов TDI/TDO на входе/выходе и в промежуточных точках между микросхемами памяти и ПЛИС.
kivl
Спасибо, makc, за быстрый ответ.
По пунктам 1 и 2: проверяла, все в порядке. Что касается форм сигналов, моим допотопным осцилом видно только, что они есть, но по сравнению со "здоровой" цепочкой память-ПЛИС - не такие. Можно, конечно, предположить, что кто-то из них сгорел, да только у меня три идентичных канала, и все ведут себя одинаково.
makc
Цитата(kivl @ Jul 25 2008, 18:02) *
Спасибо, makc, за быстрый ответ.
По пунктам 1 и 2: проверяла, все в порядке. Что касается форм сигналов, моим допотопным осцилом видно только, что они есть, но по сравнению со "здоровой" цепочкой память-ПЛИС - не такие. Можно, конечно, предположить, что кто-то из них сгорел, да только у меня три идентичных канала, и все ведут себя одинаково.


Попробуйте исключить из цепочки одну из микросхем. Т.е. подключите TDI кабеля к TDO первой микросхемы в цепочке и посмотрите, что получится.
Victor®
Судя по тому что в коде куча "1" что-то с целостностью цепочки.
В Импакте проверьте DEBUG-> Chain Integrity Test и DEBUG-> IDCODE Looping

Успехов!

Цитата(kivl @ Jul 25 2008, 17:02) *
Спасибо, makc, за быстрый ответ.
... да только у меня три идентичных канала, и все ведут себя одинаково.


Ищите что есть общего у этих каналов
man with no name
Проверь режим конфигурации. Совпадает ли он с master serial?

Хм... а вобще вроде при конфигурации из XC18 должен быть режим boundary scan.

PS: не, наврал. Беру свои слова обратно smile.gif
kivl
Цитата(Victor® @ Jul 25 2008, 18:34) *
Судя по тому что в коде куча "1" что-то с целостностью цепочки.
В Импакте проверьте DEBUG-> Chain Integrity Test и DEBUG-> IDCODE Looping

Не знаю, как насчет Chain Integrity Test, но при попытке Identify Chain сразу выдается ошибка. (загрузить я пыталась из ранее созданного проекта). Теперь в понедельник попробую smile.gif
Цитата(Victor® @ Jul 25 2008, 18:34) *
Ищите что есть общего у этих каналов

У них все общее - и схема, и разводка.
kivl
Еще раз здравствуйте, уважаемые более опытные коллеги.

Последовала совету Victor® насчет Integrity test. Не работает. Сравнила сигналы TMS, TDO, TCK, TDI у "здоровой" и исследуемой схем.
На выходе TDO ПЛИС во время IntegrityTest постоянно удерживается высокий уровень 3,3В. Что в общем-то соответствует куче единиц при чтении IDCODE.

Есть, конечно, версия, что плисина сгорела, но чет проверять ее не очень вдохновляет 05.gif Хотя других предположений больше нету. Кто что подскажет?
sazh
Цитата(kivl @ Jul 28 2008, 18:13) *
Еще раз здравствуйте, уважаемые более опытные коллеги.

Последовала совету Victor® насчет IDentify Chain. Не работает. Сравнила сигналы TMS, TDO, TCK, TDI у "здоровой" и исследуемой схем.
На выходе TDO ПЛИС во время Iddentify Chain постоянно удерживается высокий уровень 3,3В. Что в общем-то соответствует куче единиц при чтении IDCODE.

Есть, конечно, версия, что плисина сгорела, но чет проверять ее не очень вдохновляет 05.gif Хотя других предположений больше нету. Кто что подскажет?


У Присины FPGA должны быть сигналы с открытым стоком, отвечающие как за успешное конфигурирование, так и за состояние - ошибка по загрузки. Вот и проыедите анализ этих контактов в интервале конфигурации.
Вряд ли плисина сгорела.
kivl
Цитата(sazh @ Jul 28 2008, 18:17) *
У Присины FPGA должны быть сигналы с открытым стоком, отвечающие как за успешное конфигурирование, так и за состояние - ошибка по загрузки. Вот и проыедите анализ этих контактов в интервале конфигурации.
Вряд ли плисина сгорела.

Это Вы про INIT, DONE и Program?
sazh
Цитата(kivl @ Jul 28 2008, 18:20) *
Это Вы про INIT, DONE и Program?


Видимо про них. Вы лучше знаете. Проверьте всю схему конфигурации.
Например на отсутствие gnd у ПЗУ и ложных паек у подтягивающих резисторов.
И снова все по кругу.
Только не торопитесь fpga выпаивать. В 99 случаях получите ту же ситуацию. Обидно будет.
(Замерьте потребление кристалла. Пальцем попробуйте). На основании этого делайте выводы.
kivl
Цитата(sazh @ Jul 28 2008, 18:37) *
Видимо про них. Вы лучше знаете. Проверьте всю схему конфигурации.
...И снова все по кругу.


Раз 15 уже


Цитата(sazh @ Jul 28 2008, 18:37) *
Замерьте потребление кристалла. Пальцем попробуйте). На основании этого делайте выводы.


Плисина не горячая.
sazh
Цитата(kivl @ Jul 28 2008, 19:03) *
Плисина не горячая.


Наверно Вам не удалось ее сконфигурировать.
Прочитайте раздел загрузки и поведение специализированных контактов в момент ее.
По идее котакты ввода вывода в интервале конфигурации должыны быть в третьем состоянии и если есть подтягивающие внутренние резисторы - при неудачной конфигурации на контактах I/O - уровень vcc i/o
Если чтот не так во всей схеме загрузки (связка кристалл + ПЗУ), наверно по jtag тоже будет не все хорошо.
kivl
Кому интересно, напишу, в чем было дело.

При разводке платы были соединены выходы ПЛИС TDO и TDI. Эта дорожка была под плисиной.
При конфигурировании ПЛИС вышла из строя (по крайней мере, выход TDO). Пришлось заменить микросхему, после чего она загрузилась с первого раза smile.gif

Спасибо всем за советы.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.