Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблемы с конфигурированием spartan 6
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
likeasm
Ситуация у меня обычная, переписал чужой старый проект на Verilog из схематика. Была ПЛИС XC3090 стала spartan6 lx16. Сборка проекта проходит все стадии без предупреждений и ошибок. При конфигурации ПЛИС вижу program fail, сигнал DONE поднимается и падает. Думал проблема в JTAG, пихнул в ПЛИС другую тестовую прошивку все работает. Старую прошивку переписывал почти в лоб и не приходя в сознание, заменил только:
1. BUFE на мультиплексоры
2. Вывод частот сделал через ODDR
3. Входные триггеры, которые работали аля always @(posedge ADR_W9), где ADR_W9 формировался как Gated clock с дешифратора шины адреса, заменил на always @(negedge TMSCLKOUT) if (ADR_W9 & !IOSTROBE).
Плис висит на общей шине адреса и данных с TMS320, т.е в проекте имеются IO порты, в случае коллизии выход на выход может происходить моя ситуация? Что может еще приводить к такой ситуации как у меня? Приму любые советы, критику. Я пока смотрю в сторону полного разбора схемы...
Inanity
Здравствуйте.

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

1. Тестовый проект стабильно нормально прошивается, а боевой нет? Может просто так повезло и дело в частоте JTAG?

2. В каком состоянии находится у вас PROG_B_2? Не висит ли он в воздухе? Может ли внешний проц дёргать его, вызывая тем самым сброс конфигурации?

3. Ещё интересно узнать состояние всех пинов конфигурации. Откройте impact, подключитесь к ПЛИС, очистите окно вывода и сделайте "Read device status".
Потом сконфигурируйте её с помощью того же impactа и опять считайте статус. Оба лога выкладывайте сюда.

4. По поводу коллизии на выходе. Не знаю какого размера у вас там шина данных/адреса. Если допустить, что на всех пинах шины единица и тут появляется ПЛИС, которая подаёт туда нули, ну или наоборот, то это не есть хорошо. Я не уверен, но может произойти превышение допустимого тока IO на банк. Возможно это банально приводит к слёту конфигурации? Кто вообще мастер на шине? Должна
быть какая-то логика захвата шины. Нельзя же просто так появляться и что-то на шину писать)
FakeDevice
в опциях создания бит-файла не стоит ли случаем старт с CCLK вместо JTAG CLK ?
iosifk
Цитата(likeasm @ Feb 11 2016, 10:16) *
Ситуация у меня обычная, переписал чужой старый проект на Verilog из схематика.

Убираем проект весь, кроме входа от генератора частоты. Все выходы ставим в неактивное состояние, те что к процессору - в 3-е состояние.
Добавляем в проект счетчик и его старший разряд - на светодиод или на разъем...
И учимся этот проект грузить...
Когда научимся, то частями туда переносим то, что Вы написали. И смотрим, на какой части перестанет жить...
Удачи!
FakeDevice
Да, и еще... Почитайте даташиты, состыкуйтесь с питальщиками, убедитесь, что источники обеспечивают Вам пиковые токи на момент старта плисины.
likeasm
Спасибо разобрался, действительно просаживаются внешние 5V в момент старта ПЛИС.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.