Jump to content

    
Sign in to follow this  
shumerok

Загрузка FPGA из SPI Flash и Parallel NOR Flash

Recommended Posts

Добрый день. Имеется стартовый набор Spartan-3e Starter Kit. На плате имеется кристалл XC3S500E, Platform Flash, SPI Flash, Parallel NOR Flash, DDR SDRAM. Работаю с Microblaze. Шина PLB (AXI не поддерживается). Хочу хранить конфигурационные данные + программу во внешней памяти с последующей загрузкой программы в DDR. Зашел в тупик. Общий алгоритм, как я понял, следующий: прошивка состоит из bit-файла аппаратной платформы, bmm-файла блочной памяти и elf-файла загрузчика (bootloader), srec-файла основной программы (располагается по определенному адресу, указываемому в blconfig.h). Проблемы в следующем:

1. Попытка использовать SPI Flash. Используется контроллер XPS SPI. При данном подходе SDK автоматически не формирует файл загрузчика.

2. Попытка использовать Parallel Flash. С помощью SDK автоматом формируется файл загрузчика, в blconfig.h правится начальный адрес расположения SREC-файла. С помощью data2mem формирую новый bit-файл из старого bit, bmm и elf загрузчика (команда data2mem -bm my.bmm -bd code.elf -bt my.bit -o b new.bit). Далее в IMPACT генерирую PROM файл и добавляю в него SREC. Получаю mcs-файл, включающий в себя все, что нужно. Дальше тупик. Как прошить Parallel Flash? Ни по JTAG ни через кристалл она не доступна.

3. Можно ли использовать сформированный для Parallel Flash загрузчик для извлечения данных из SPI Flash? Надо ли в нем что-то менять?

4. И еще вопрос по Linker Script. Что должно стоять в разделе Section to Memory Region Mapping? Начальный адрес локальной шины, flash или DDR?

Благодарю за любую помощь.

Share this post


Link to post
Share on other sites
Добрый день. Имеется стартовый набор Spartan-3e Starter Kit. На плате имеется кристалл XC3S500E, Platform Flash, SPI Flash, Parallel NOR Flash, DDR SDRAM. Работаю с Microblaze. Шина PLB (AXI не поддерживается). Хочу хранить конфигурационные данные + программу во внешней памяти с последующей загрузкой программы в DDR. Зашел в тупик. Общий алгоритм, как я понял, следующий: прошивка состоит из bit-файла аппаратной платформы, bmm-файла блочной памяти и elf-файла загрузчика (bootloader), srec-файла основной программы (располагается по определенному адресу, указываемому в blconfig.h). Проблемы в следующем:

1. Попытка использовать SPI Flash. Используется контроллер XPS SPI. При данном подходе SDK автоматически не формирует файл загрузчика.

2. Попытка использовать Parallel Flash. С помощью SDK автоматом формируется файл загрузчика, в blconfig.h правится начальный адрес расположения SREC-файла. С помощью data2mem формирую новый bit-файл из старого bit, bmm и elf загрузчика (команда data2mem -bm my.bmm -bd code.elf -bt my.bit -o b new.bit). Далее в IMPACT генерирую PROM файл и добавляю в него SREC. Получаю mcs-файл, включающий в себя все, что нужно. Дальше тупик. Как прошить Parallel Flash? Ни по JTAG ни через кристалл она не доступна.

3. Можно ли использовать сформированный для Parallel Flash загрузчик для извлечения данных из SPI Flash? Надо ли в нем что-то менять?

4. И еще вопрос по Linker Script. Что должно стоять в разделе Section to Memory Region Mapping? Начальный адрес локальной шины, flash или DDR?

Благодарю за любую помощь.

 

2. На Spartan-6 Nexus 3 отладочной плате была перемычка, с помощью которой можно выбирать память под загрузку. На вашей плате посмотрите вот тут описано

https://www.xilinx.com/support/documentatio..._kits/ug230.pdf

4. Должен стоять тот регион памяти, в который вы желаете использовать для работы процессора (stack and heap). При этом процессор должен быть подключен к используемой памяти.

 

Share this post


Link to post
Share on other sites

Благодарю. Кстати, нашел описание от avnet. Там написано, что можно использовать bootloader от parallel flash. Для итого подключается библиотека xilif и команды работы с памятью в bootloadere заменяются на spi-ные.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this