EdigE
← ЛЕНТА

Amalthea заставляет GNU Radio собирать DSP прямо в FPGA SDR-платы

Радиотракт выдаёт отсчёты непрерывно, а USB, операционная система и пользовательский DSP живут рывками и с задержками. Один из красивых способов справиться с этой разницей — перенести первые вычисления в FPGA. Обычно для этого инженер сначала рисует алгоритм в GNU Radio, затем вручную превращает удачные блоки в HDL и отдельно строит прошивку платы. Экспериментальная Amalthea пытается сделать этот переход частью самого flowgraph.

В репозитории Great Scott Gadgets GNU Radio Companion используется как место, где собирают гибридный проект. Блок amalthea_device выполняет elaboration, сборку и программирование gateware, а amalthea_rx и amalthea_demod описывают FPGA-подмодули дизайна на Amaranth. То есть граф способен содержать участок, который остаётся программой на ПК, и участок, превращаемый в схему из регистров, сумматоров и конечных автоматов в Lattice ECP5.

Радиочасть строится вокруг AT86RF215 — трансивера с цифровым I/Q-интерфейсом. Микросхема охватывает 389.5–510 МГц, 779–1020 МГц и полосу 2.4 ГГц от 2400 до 2483.5 МГц. В ECP5 приходят знаковые 13-битные I и Q по LVDS. Частоту дискретизации можно задавать от 400 квыб./с до 4 Мвыб./с; интерфейс передаёт 32-битные I/Q-слова с темпом 4 Mword/s, или 128 Мбит/с, на DDR-такте 64 МГц. Именно на этой границе FPGA получает шанс убрать лишние отсчёты, выделить канал, детектировать событие или провести демодуляцию раньше, чем поток станет проблемой для хоста.

За USB отвечает PHY Microchip USB3343 вместе с gateware-фреймворком LUNA. Однако готовый скоростной тракт от радио до компьютера здесь нельзя считать показанным результатом: README прямо относит USB streaming в amalthea_device к будущим версиям. Нет опубликованных измерений чувствительности, блокирования, фазового шума, SFDR, EVM и реальной пропускной способности платы. AT86RF215 также не превращает Amalthea в широкополосный прибор класса HackRF: 4 Мвыб./с характеризуют его цифровой I/Q-интерфейс и сами по себе не задают полезную RF-полосу.

Ценность Amalthea остаётся в архитектурном жесте. Она показывает, как GNU Radio может стать интерфейсом для распределения вычислений по обе стороны USB: алгоритм начинает жизнь как наглядный граф, а его критический фрагмент получает путь в FPGA без смены инструментария и полного переписывания проекта. Для приёмников, где решение нужно принять рядом с АЦП, это гораздо интереснее ещё одного графа, который умеет только потреблять готовые семплы.

Это архивный проект, а не анонс августа 2026 года. Great Scott Gadgets упоминали Amalthea в 2021 году, а последний отображаемый коммит ветки main датирован 7 февраля 2023 года. Исходники опубликованы под BSD 3-Clause License.

### Источники

[Репозиторий Amalthea](https://github.com/greatscottgadgets/amalthea) · [история коммитов](https://github.com/greatscottgadgets/amalthea/commits/main) · [страница AT86RF215](https://www.microchip.com/en-us/product/AT86RF215) · [даташит AT86RF215](https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42415-WIRELESS-AT86RF215_Datasheet.pdf) · [лицензия репозитория](https://github.com/greatscottgadgets/amalthea/blob/main/LICENSE)