Решетчатые FPGA SBC могут работать под управлением Linux на программном обеспечении RISC-V

Две платы с открытыми спецификациями и ПЛИС Lattice ECP5 могут работать под Linux через софткор VexRiscv. Оранжевый краб от GsD стоимостью 99 долларов имеет крошечный форм-фактор Feather, а ULX3S от Radiona.org от 115 до 155 долларов поддерживает более мощные модели ECP5 и добавляет ESP32.

Почти все платы разработки на основе ПЛИС, которые мы рассматриваем, используют SoC, которые также предоставляют дружественные для Linux ядра Arm Cortex-A, такие как Xilinx Zynq. Тем не менее, гибкая природа программируемых полевых вентильных массивов означает, что многие FPGA без поддержки Arm - при наличии достаточного объема ОЗУ - могут также запускать Linux с различными ограничениями через так называемые программные ядра. Например, на основе MAX 10 FPGA Овна MX10 модуль может работать Nios II Softcore Linux.

Поддержка Linux доступна на двух новых платах разработки с краудсорсингом, оснащенных ПЛИС Lattice ECP5. Оранжевый краб GsD за $ 99 превзошел цель поддержки GroupGet и теперь доступен для членов. У Radiona.org больше возможностей, от 115 до 155 долларов США. ULX3S более чем удвоил свой целевой показатель в 15 тыс. Долларов США за оставшиеся 28 дней.

Оранжевый краб (слева) и ULX3S

(нажмите на картинку для увеличения)

На любой плате Linux включается с помощью программного процессора SpinalHDL на основе RISC-V VexRiscv . VexRiscv, победивший в конкурсе процессоров Soft-Core RISC-V 2018, реализован с использованием языка описания аппаратного обеспечения SpinalHDL (HDL) на базе Scala. Используя программное обеспечение, такое как Linux-on-LiteX, реализация может быть использована для создания прототипов RISC-V SoC.

Однако запуск Linux не является основной платформой разработки программного обеспечения для обеих плат. Поддержка Linux кажется довольно экспериментальной на данном этапе.

Решетки в малой мощности, малые след решетка ECP5 ПВМ включает поддержку SerDes и DSP для фильтрации изображений и анализа данных. Mikroprojekt добавил один к своей плате разработки Kondor AX на базе i.MX6 Solo .

Оранжевый краб

Оранжевый краб размером 50,8 x 22,9 мм имеет форм-фактор Adafruit Feather, как мы недавно видели на плате Giant Giant Board на базе SAMA5D . Плата «идеально подходит для экспериментов с ядрами RISC-V», говорит GsD.

Оранжевый краб рекламируется за 128 МБ памяти DDR3, предварительно загруженный загрузчик DFU (обновление прошивки устройства) для полного восстановления состояния и его совместимость со «всеми наборами инструментов с открытым исходным кодом». В дальнейшем плата рекламируется как порт micro-USB с прямым подключением к FPGA.

Оранжевый краб (слева) и вид спереди и сзади

(нажмите на картинку, чтобы увеличить)

Решетка SBC ESC5-25F FPGA представляет собой бюджетную модель ECP5 с 24K LUT и 1008Kb блочной оперативной памятью. В дополнение к 128 МБ ОЗУ имеется 128 МБ флэш-памяти QSPI с загрузчиком, слотом для карт памяти microSD и генератором 48 МГц.

Оранжевый краб дополнительно оснащен 20 входами / выходами, JTAG и аналоговой системой с мультиплексированием, АЦП SAR, цифровым байпасом и измерением напряжения. Там же есть светодиод и кнопка пользователя. Чехол для оранжевого краба стоит 19 долларов.

GsD рекомендует использовать программное обеспечение LiteX Core / SoC для разработчиков на базе Migen / MiSoC с открытым исходным кодом. На странице LiteX GitHub говорится: «Думайте о Migen как о наборе инструментов для создания конструкций FPGA в Python, а LiteX - как о построителе SoC для создания / разработки / отладки SoC FPGA в Python». GsD также рекомендует контроллер DDR с открытым исходным кодом LiteDRAM.

Примеры проектов включают запуск Linux-on-LiteX . Программное обеспечение предназначено для экспериментов с операционной системой Linux на программном ядре VexRiscv. Хотя Linux-on-LiteX поддерживает широкий спектр ПЛИС, в проекте отмечается, что «на ПЛИС Lattice ECP5 набор инструментов с открытым исходным кодом позволяет создавать полный SoC с открытым исходным кодом с ядрами с открытым исходным кодом и набором инструментов!»

ULX3S

Как и Orange Crab, ULX3S - это аппаратный и программный проект с открытым исходным кодом, который «поддерживается новейшими наборами инструментов с открытым исходным кодом» и может запускать Linux через программный пакет VexRiscv. Он был разработан Radiona.org в партнерстве с Zagreb Makerspace и FER (факультет электротехники и вычислительной техники) в университете Загреба в Хорватии. Дизайн печатной платы был «создан» компанией Electronic Mechanic Aerodynamic Research & Development (EMARD).

По словам Radiona.org, плата была предназначена в первую очередь «в качестве учебного пособия для овладения принципами проектирования цифровых схем», но также имеет более широкое применение. Плата доступна с выбором из трех разных моделей ПЛИС, что дает три уровня цен Crowd Supply. В противном случае разные SKU выглядят одинаково. Модели LFE5U-12F (LUT 12K), LFE5U-45F (LUT 44K) и первоклассный LFE5U-85F (LUT 84K).

ULX3S также включает в себя модуль Espressif ESP32-WROOM-32 , который может работать совместно или независимо от FPGA. Программируемый модуль Arduino IDE объединяет микроконтроллер ESP32 с 32-битным двухъядерным микроконтроллером Tensilica Xtensa LX6 компании Cadence с тактовой частотой от 80 до 240 МГц.

ESP32 также включает в себя 2,4 ГГц Wi-Fi радио с Bluetooth, который поддерживает автономный веб-интерфейс JTAG через WiFi. Плата ULX3S добавляет направленные антенны.

Детальный вид спереди ULX3S

(для увеличения щелкните изображение)

SBC 94 x 51 мм оснащен 32 МБ SDRAM, 4-16 МБ Quad-SPI-вспышкой и слотом для карт памяти microSD. Доступны два порта micro-USB. Один подключен к FPGA, а другой - к FTDI FT231XS (500-кбитный JTAG и 3-битный USB-последовательный порт).

Для видео есть GPDI (универсальный дифференциальный интерфейс), и плата также поддерживает дополнительный 1-дюймовый цветной OLED-дисплей с подключением SPI. 3,5-мм аудиоразъем поддерживает аналоговое и цифровое аудио, включая SPDIF, а также композитное видео.

Детальный вид сзади ULX3S

(для увеличения щелкните изображение)

ULX3S дополнительно оснащен 56-контактными выводами GPIO, 4-мя разъемами PMOD, 8-канальным 10-разрядным АЦП, RTC с батареей, входом тактовой частоты 25 МГц и 11-кратным светодиодным индикатором, в том числе 8-кратным пользовательским. Для питания предусмотрены регуляторы напряжения 1,1, 2,5 и 3,3 В, а также маломощный спящий режим. Вы также получаете DIP-переключатели и несколько кнопок направления, огня и питания,

Горан Маховлич из Radiona.org сообщил нам о проекте еще в октябре. В то время он сказал, что они «в настоящее время» используют LiteX-on-Linux на программном ядре VexRiscv. Тем не менее, он сказал, что группа обсуждает с J-Core также возможность запуска Linux на своем программном ядре с открытым процессором J2, в котором есть набор инструкций SuperH.

Модели Lattice ECP5 (слева) и демонстрация Лори Гриффитс SaxonSoC Linux, работающего на ULX3S

(нажмите для увеличения)

На этой неделе, уведомляя нас о кампании Crowd Supply, Маховлич добавил, что существует «образец Linux с выходом HDMI и клавиатурой PS2 на версии 12F». Он указал на объявление Лори Гриффитса о реализации Linux SaxonSoC, работающей на ULX3S с этой конфигурацией.

Дополнительная информация

Оранжевый краб доступен членам GroupGet за 99 долларов, а кейс стоит 19 долларов. Более подробную информацию можно найти на странице GsD Orange Crab GroupGet .

ULX3S можно приобрести в Crowd Supply еще на 28 дней по цене 99 долларов за раннюю упаковку (стандартная цена 115 долларов) для его бюджетной модели 12F. Модель 45F продается за 135 долларов, а модель 85F продается за 155 долларов. 10 карт по 12F стоят 999 долларов. Поставки должны быть выполнены 16 июня.

Дополнительную информацию можно найти на странице ULX3S Crowd Supply , а также на

веб-сайте Radiona.org и на странице EMARD GitHub с открытыми файлами оборудования.