С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Да без проблем! Вечером пороюсь в ноуте, где-то сырки лежали...
Загрузчик очень простой и делает одну простую вещь.... Во внутренней памяти FPGA лежит сам загрузчик, и при первом старте он загружает с SD-карточки программу в SRAM/SDRAM и передаёт ей управление.
Основная идея была такой... На "большой" плате Aeon'a есть и SRAM, и SDRAM. Если какая либо конфа работает с SDRAM например, то можно использовать SRAM для фирмвари, которая будет обслуживать конфу... Эмулить дисковёрт и прочее. А так как SRAM там 1Мб, то для творчества предела нет.
Кстати, эта корка "Plasma" очень шустрая + вменяемый компилятор GCC и newlib.... Чего ещё для счастья надо???
Так что очень советую.
У меня для DE1 есть готовый проект SoC с этой коркой и немного периферии к ней... SPI, UART, timer, random generator, VGA, PS/2, контроллеры SDRAM/SRAM и немного другой мелочёвки. Всё самописное, кроме самого проца.
Если есть интерес, могу выложить проект на github...
Нашел интересный проект: https://github.com/robinsonb5/ZPUFlex
Это типа урезанная копия ZPU softcore.
Автор на своей странице выложил массу примеров, включая OSD + доступ к SD карточке. Вот например реализация загрузчика ROM с SD карты: http://retroramblings.net/?page_id=684
Есть полноценный gcc toolchain, прошивки можно писать на C.
Собрать toolchain у меня не получилось под linux'ом, оно на каком-то этапе обращалось к несуществующим бинарникам cygwin'а.
Скомпилированный toolchain уже готовый не знает ничего про флаги оптимизации zpu-elf-gcc для ZPUFlex.
В общем тут сложности, конечно. Может под cygwin будет работать ?
Пробовал готовые примеры, работают![]()
По количеству LE - получается где-то 2500, ну и плюс altram для начального загрузчика и прошивка самого softcore.
Если выкинуть все лишнее (OSD, шрифты, vga-контроллер, и тп) - думаю можно поместиться в 1000 LE где-то.
Теоретически, если запилить один из его примеров (например вот этот: https://github.com/robinsonb5/ZPUDem...er/SDBootstrap), можно сделать универсальный загрузчик. На SD карте будет некий конфиг MANIFEST.MST, в котором будут описаны какие именно файлы в какую область памяти записывать.
---------- Post added at 11:20 ---------- Previous post was at 11:10 ----------
А вот тут чувак пилит нативную реализацию чтения fat32 карточки на vhdl: https://github.com/wsoltys/mist-core...isc/sdcard/src
Пока у него, насколько я понял, получилось только список файлов прочитать.
Github: https://github.com/andykarpov/
В проекте pdp2011 эмулируется 3 разных контроллера (pdp-шных). Там в каждом из них почти copy/paste-ом минимальный функционал который пишет\читает блоки на sd карту (никаких файловых систем и никаких sdhc).
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)