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

 
 
 
Closed TopicStart new topic
Corvus
сообщение Aug 21 2015, 17:46
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 24-04-08
Из: Зеленоград
Пользователь №: 37 056



Коллеги, помогите не сойти с ума. biggrin.gif

Ситуация такая:
Есть плата на Spartan 6 LX100T, SPI Flash и DDR3. Под эту плату был написан проект и стандартный бутлоадер. Он прекрасно работает.
Сделали новую плату, на этот раз на LX150T, память и обвязка без изменений. Проект с первой платы перенесли на новую, из под отладчика он работает. Прицепили старый бутлоадер и тут он не хочет работать.

Симптомы:
- Флэшка по JTAG прошивается, читается, верифицируется.
- Конфигурация ПЛИС загружается (это видно по пользовательским светодиодам, которые управляются аппаратно), DONE выставляется
- Программа Микроблейза не стартует.

Что проверил:
- Flash поменял на Flash с первой платы. Эффект нулевой. На старой плате новая Flash заработала.
- Адресация в XPS в старом и новом проекте совпадает.
- Резисторы на конфигурационных ножках правильные.
- На втором экземпляре новой платы симптомы аналогичны. Так что не брак единичного экземпляра.

Подозреваю, что пропустил что-то очевидное. Но уже не понимаю, куда копать. help.gif
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Aug 24 2015, 06:22
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Программа то из DDR работает?
DDR настроилась, работает правильно? Адреса ДДР не поменялись?
Go to the top of the page
 
+Quote Post
Corvus
сообщение Aug 25 2015, 10:15
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 24-04-08
Из: Зеленоград
Пользователь №: 37 056



Из DDR работает, адреса не изменились. Бутлоадер под отладчиком тоже работает, srec в DDR переписывает, стартует. Всё идеально.
Было подозрение, что криво инициализируются 9K BRAM, добавил ключик к битгену - не помогло.
Придётся прикрутить к бутлоадеру UART, посмотреть, что с ним происходит.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Aug 25 2015, 11:40
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



9K Bram вроде как не умеют инициализироватся. Об этом синтезатор регулярно пишет, там же какая то бага, нет?



Go to the top of the page
 
+Quote Post
Corvus
сообщение Aug 25 2015, 11:52
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 24-04-08
Из: Зеленоград
Пользователь №: 37 056



Цитата(Golikov A. @ Aug 25 2015, 14:40) *
9K Bram вроде как не умеют инициализироватся. Об этом синтезатор регулярно пишет, там же какая то бага, нет?

Вообще, обещают, что поправили, начиная с ise 13.2.
http://www.xilinx.com/support/answers/39999.html
Есть только проблемы при использовании шифрования. В любом случае, добавление этих ключей для мапера и битгена ничего не изменили.
Go to the top of the page
 
+Quote Post
Corvus
сообщение Sep 10 2015, 11:32
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 24-04-08
Из: Зеленоград
Пользователь №: 37 056



Вышел из отпуска и с новыми силами штурмую бутлоадер. biggrin.gif
Прикрутил вывод в терминалку. Бутлоадер зависает на чтение SREC из флэш. Всегда в одном и том же месте.
Самое забавное, что если сначала зашить конфиг с bootloop, а потом через отладчик залить *.elf бутлоадера, то всё идеально работает. Если же прошивать конфиг сразу с elf-ом, то зависает.
help.gifЕсть у кого-нибудь соображения на это счёт?

UPD: Если в Run configuration выбрать "Reset Processor Only", то и под отладчиком зависает ровно так же, как и при старте из флэш. А если выбрать "Reset entire System", то под отладчиком всё работает нормально.
Эскизы прикрепленных изображений
 Уменьшено до 57%
Прикрепленное изображение
403 x 37 (3.61 килобайт)
 
Go to the top of the page
 
+Quote Post
Corvus
сообщение Sep 17 2015, 08:27
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 24-04-08
Из: Зеленоград
Пользователь №: 37 056



Разобрался.
Оказалось, что на банке, к которому присоединена DDR3 одна ножка VREF не подключена. При этом вход HSWAPEN подсоединён к земле. Из-за этого при конфигурации ПЛИС напряжение на неподключенном пине VREF становится равным напряжению питания банка, а не его половине, как должно быть. В результате калибровка контроллера DDR не проходит, и он зависает наглухо.
Подробнее в AR# 36291
http://www.xilinx.com/support/answers/36291.html

Костыль, решающий проблему без переделки платы - держать всю микропроцессорную систему в ресете на этапе конфигурации ПЛИС.
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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