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

 
 
> remote update для NIOS, найти решение
Атмег
сообщение May 29 2012, 15:49
Сообщение #1


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

Группа: Участник
Сообщений: 149
Регистрация: 17-05-07
Пользователь №: 27 787



Есть Циклон3 с Ниосом, грузится из EPCS. Необходимо сделать удаленную перепрошивку. Сделал загрузчик (т.е. factory boot image по альтеровской терминологии), он лежит по начальному адресу EPCS, при загрузке определяет наличие связи с программатором, если есть, грузит новую прошивку в EPCS по определенному смещению и реконфигурится, если нет - просто реконфигурируется старой прошивкой. В качестве тестовой прошивки сделал проект, который имеет проинициализированную внутреннюю onchip_ram и с нее же грузится. Прошивка в одном файле *.rbf, все грузится, все работает.
Но разработчик рабочего ПО не хочет делать проект с проинициализированной внутренней памятью. У него проект грузится из EPCS, и не во внутреннюю память, а во внешнюю SRAM. Насколько я понимаю, бутлоадер epcs_flash_controller'а способен работать только с единственным образом во флешке, и заставить штатный бутлоадер найти образ по смещению не получится? Есть какие-то еще варианты в данной ситуации, кроме переписывания бутлоадера (делать это не очень хочется и некогда)?

З.Ы.
Как вариант я пересобрал рабочее ПО для загрузки из внутренней RAM, оставив в ней только .text, остальные секции вынес во внешнюю RAM (иначе не помещается). Но этот путь оказался не таким уж простым, потому что одна версия ПО, собранная таким образом, работает, а другая - нет. Непонятно почему, при сборке ошибок не было во обоих случаях. Разработчик утвержает, что версии принципиально ничем не отличаются.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
barabek
сообщение May 29 2012, 23:27
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



[quote name='Атмег' post='1063628' date='May 30 2012, 01:49']Есть Циклон3 с Ниосом, грузится из EPCS. Необходимо сделать удаленную перепрошивку. Сделал загрузчик (т.е. factory boot image по альтеровской терминологии), он лежит по начальному адресу EPCS, при загрузке определяет наличие связи с программатором, если есть, грузит новую прошивку в EPCS по определенному смещению и реконфигурится, если нет - просто реконфигурируется старой прошивкой. В качестве тестовой прошивки сделал проект, который имеет проинициализированную внутреннюю onchip_ram и с нее же грузится. Прошивка в одном файле *.rbf, все грузится, все работает.
Но разработчик рабочего ПО не хочет делать проект с проинициализированной внутренней памятью. У него проект грузится из EPCS, и не во внутреннюю память, а во внешнюю SRAM. Насколько я понимаю, бутлоадер epcs_flash_controller'а способен работать только с единственным образом во флешке, и заставить штатный бутлоадер найти образ по смещению не получится? Есть какие-то еще варианты в данной ситуации, кроме переписывания бутлоадера (делать это не очень хочется и некогда)?


AN458 Alternative Nios II Boot читали, наверно? Тот код загрузчика Вам не подходит? А писать в EPCS не обязательно из загрузчика, можно и из основного ПО.
Go to the top of the page
 
+Quote Post
Атмег
сообщение May 31 2012, 05:54
Сообщение #3


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

Группа: Участник
Сообщений: 149
Регистрация: 17-05-07
Пользователь №: 27 787



Цитата
AN458 Alternative Nios II Boot читали, наверно? Тот код загрузчика Вам не подходит? А писать в EPCS не обязательно из загрузчика, можно и из основного ПО.


Да, не важно откуда писать, мне сейчас нужно просто заставить загрузчик грузиться по смещению. Пытаюсь загрузчик epcs_controller'а скомпилить и подсунуть при сборке sof'а, но пока не получается... Вы, насколько я понял, делали свой загрузчик, толькл у Вас cfi, а мне надо под epcs_controller..
Go to the top of the page
 
+Quote Post
barabek
сообщение May 31 2012, 06:01
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(Атмег @ May 31 2012, 15:54) *
Да, не важно откуда писать, мне сейчас нужно просто заставить загрузчик грузиться по смещению. Пытаюсь загрузчик epcs_controller'а скомпилить и подсунуть при сборке sof'а, но пока не получается... Вы, насколько я понял, делали свой загрузчик, толькл у Вас cfi, а мне надо под epcs_controller..


Ну делал это громко сказано sm.gif. Я просто добавил кое-что в стандартный. Но не важно. Так же не важно, на сколько знаю, и вид памяти. При компиляции программы загрузчика меняются только несколько функций. Ну и откуда начинать считывание. С EPCS это посложнее, чем в CFI. А что именно у Вас не получается? HEX-файл сгенерировали?

UPD. кстати о sof. А Вы саму конфигурацию в EPCS заливаете или только конфигурируете по jtag? Там дело в том, что с изменением размера конфигурации меняется и начальный адрес, с которого ложится тело программы. с этого адреса загрузчик начинает копирование
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 05:03
Рейтинг@Mail.ru


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