Перейти к содержанию
    

Утилита есть objdump :) - дампнуть нужные секции и записать на флеш. Я для такого-же модуля делал загрузчик который ELF грузил - ещё проще, просто пишеш elf на флеш по нужному адресу а загрузчик разбирает elf и ложит секции по нужным адресам в DDR. Стандартного загрузчика я не знаю, была какая-то xapp но она мне не понравилась

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а в ядро надо какую то корку работы с флэшкой пихать да? Или у ядра к конфигурационной флэеше есть доступ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

axi_quad_spi помоему, в проекте который я приводил раньше он есть и функции для доступа. Пишеш загрузчик который читает флеш и пишет секции в DDR потом передаёт управление. У меня он получился где-то строк 70 вместе с разбором ELF. В основной программе тоже можно реализовать доступ к flash для апдейтов битстрима и программы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я пока это все отложил на будущее, пока надо другие блоки сделать. Поэтому сразу не пробую, просто пока собираю информацию. А как эльф файл раскодировали? там какой то понятный формат или он где то описан? И какими методами не бит файл в флэшку пихается?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ELF формат хорошо описан и довольно легко разбирается, google it. Писать на флеш произвольный файл можно либо из загрузчика либо сконвертировать его в MCS c нужным адресом и писать iMPACTом

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ок. принято спасибо.

Жаль ксалинкс не предусмотрел сразу и не реализовал утилиту создания флешки с загрузчиком. Ведь модули ДДР поддерживаются плисинами аппаратно, и куда удобнее было бы размещать в них переменные и структуры, чем использовать их как не размечаемое пространство.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Слишком много вариантов - негибкое решение получится. У меня например 2 битстрима и 2 варианта программы на флеши, а загрузчик выбирает что грузить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Народ lwip чет ад какой то!

 

Скажите мне ARP у него на каком уровне поддерживается? Только при включении DHCP?

 

я пробую связаться с плисиной в которой вроде как запустил LwIP создал TCP сокет и жду коннекта.

 

И прям глушняк.

 

Шлю через netcat в плис конект, смотрю wiresharkom и вижу что компьютер очень интересует чей это айпи (айпи плисины), и поскольку никто ему на этот ARP запрос не овтечает, на этом все и заканчивается...

 

По дебугу lwip все проинитилось, phy обнаружился, режим конекта считался... таймеры тикают, активных pcbs не находиться... Руками слать данные через emac пробовал до компа доходят, обратно вроде как тоже...

 

что не так?

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может маска не та настроена. Проще всего начать с lwip echo server, который в sdk есть как new project ...

Там только маску и ip настроите - и все должно работать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так что не так нашел:)

LwIP внутри имеет функцию низкоуровневой инициализации там делается все.

там прописываются и регистры phy и инитится MAC контроллер, а также устанавливаются обработчики прерывания, потому на верхнем уровне необходимо лишь разрешить обработку прерывания, а все остальное сделается само...

 

С одной стороны приятно, с другой стороны это слишком все как то опасно, особенно с забывчивостью SDK перезапустить либген.... Ну и слишком тесно связаны становятся модули, не стройно это все как-то...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...