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

 
 
> Altera SoC независимый бут HPS и FPGA, Если HPS и FPGA грузятся независимо, проц "не видит" FPGA
serjj
сообщение Jul 24 2015, 11:59
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866



Всем доброго

Столкнулся с довольно неожиданной проблемой. Планировал использовать независимую загрузку HPS и FPGA (каждая грузится из своей QSPI flash). Оба устройства успешно грузятся после подачи питания, но при попытке чтения процессором регистров из FPGA части по шине h2f_axi_master получаю нули вместо ожидаемых чисел. Пробовал вставлять задрежки или читать в цикле - результат тот же.
Если же, не перешивая FPGA, сбросить проц (cold reset) и по JTAG залить теже preloader и приложение, что и зашиты во флеш, то чтение данных из FPGA работает корректно.
В итоге в качестве решения придётся перейти на режим FPGA первая - HPS второй, загружая preloader из On-Chip memory FPGA (FPGA boot), а из QSPI выгружая уже саму прогу. В таком случае всё работает нормально. Но всё равно остаётся вопрос - почему при независимом буте возникает такая проблема? И что будет в случае HPS первый - FPGA вторая? Есть идеи в чём дело?

ЗЫ. Проверил эту особенность на отладке и на нашей плате - результат одинаков.

Сообщение отредактировал serjj - Jul 24 2015, 12:00
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Kuzmi4
сообщение Jul 27 2015, 15:46
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 serjj

Если в 2х словах,
вас интересуют 2 регистра:
brgmodrst
Software writes a bit to 1 to assert the module reset signal and to 0 to de-assert the module reset signal.
и
remap
0x1 - The LWHPS2FPGA AXI Bridge is visible to L3 masters.

Грубо говоря последовательность включения мостов hps такая - вам надо сначала убрать сброс (brgmodrst - нули), а потом сделать их видимыми для L3 master-ов (remap - единицы). Там кажись если по чесноку, то сначала сбросы-клоки ставятся и проверяются, потом FPGAMGR проверяться должен в вашем случае, потом кажись сброс для SDRAM порта, потом убирание сбросов с мостов, потом мап мостов для L3. Как то так, но думаю вам brgmodrst+remap будет достаточно. По записи - так и писал, если склероз не изменяет..

На счёт кода - если до завтра не получится запустить так как описал выше, маякните, поковыряюсь в коде, где то валяется (давно с bare-metal не работал).
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 12:49
Рейтинг@Mail.ru


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