Улучшение DSP-ядра в прошивке Anvelina ProIII: Практический опыт оптимизации

Автор: | 06.05.2026

Улучшение DSP-ядра в прошивке Anvelina ProIII DX: Практический опыт оптимизации

Проект: Anvelina ProIII DX
Архитектура: FPGA Cyclone IV (на базе Orion Firmware)
Дата обновления: Май 2026

В ходе разработки прошивки для трансивера Anvelina ProIII DX была проведена серия экспериментов, направленных на улучшение качества сигнала без изменения аппаратной части и без повышения разрядности шин данных. Наша цель заключалась в «алгоритмической оптимизации»: использовании математических методов для снижения шумов, устранения паразитных гармоник и повышения точности тракта обратной связи PureSignal.

Ниже приведено описание внедренных улучшений и итоги проделанной работы.


1. Очистка спектра приема (RX): TPDF Dither

Одной из проблем цифровых приемников является структурный шум квантования, который на водопаде (Waterfall) часто выглядит как вертикальные линии или «сетка». Это снижает воспринимаемый динамический диапазон.

Решение: В тракт приема, непосредственно перед каскадом децимации (CIC-фильтром), был внедрен генератор треугольного шума (TPDF Dither). Этот шум декоррелирует ошибки квантования, превращая их в равномерный «белый» шум.

Результат:

  • Водопад стал чистым, без геометрических артефактов.
  • Визуальное улучшение динамического диапазона на 6–9 дБ.
  • Сигналы на границе шума стали различимы четче.

2. Устранение паразитных гармоник (TX): Phase Dither

Алгоритм CORDIC, используемый для генерации частоты в передатчике, из-за конечной точности вычислений может создавать паразитные спектральные составляющие (spurs), которые не зависят от входного сигнала.

Решение: В фазовый модуль CORDIC был добавлен псевдослучайный шум (Phase Dither). Это «размывает» периодические ошибки вычислений, переводя их энергию в общий шумовой пол, где они не мешают приему.

Ррезультат:

  • Спектр передачи стал значительно чище.
  • Уровень паразитных гармоник снижен на 10–15 дБ (улучшение SFDR).
  • Повышена чистота сигнала при работе в SSB и цифровых видах связи.

3. Точность фильтров: Округление вместо усечения

В выходных каскадах FIR-фильтров стандартная практика — отбрасывать младшие биты (усечение). Это может приводить к появлению постоянной составляющей (DC offset), которая проявляется как яркий пик по центру экрана водопада.

Решение: Логика усечения была заменена на математическое округление до ближайшего значения (Round-to-Nearest).

Результат:

  • Полное устранение пика постоянной составляющей на 0 Гц.
  • Улучшение отношения сигнал/шум (SNR) на 1–2 дБ.

4. Стабильность PureSignal на малой мощности

Функция адаптивной предкоррекции искажений (PureSignal) критически зависит от качества сигнала обратной связи. На малых мощностях (1–5 Вт) сигнал обратной связи оказывался слишком слабым для эффективной работы алгоритма.

Решение: В тракт обратной связи внедрено адаптивное масштабирование. Теперь система автоматически «сдвигает» окно считывания битов, усиливая слабый сигнал до полного диапазона ЦАП обратной связи.

Результат:

  • PureSignal теперь стабильно работает и корректирует искажения даже на минимальной мощности.
  • Значительно ускорена сходимость алгоритма при переключении уровней мощности.

5. Инженерный опыт: Эксперимент с TX Ramp

В ходе работ была предпринята попытка устранить кратковременный всплеск («щелчок») при переключении на передачу путем добавления регистра сглаживания (Soft Start) в высокоскоростной поток данных I/Q.

Итог эксперимента: Хотя идея теоретически верна, на практике внедрение задержки в поточный конвейер FIFO-CIC нарушило жесткую синхронизацию тактовых доменов. Это приводило к потере данных при первом нажатии PTT и искажениям сигнала. Вывод: В архитектуре Orion стабильность поточной передачи данных приоритетнее косметического сглаживания фронта. Решено вернуться к исходной архитектуре передатчика, обеспечивающей максимальную надежность, а борьбу со всплесками перенести в область настройки АРУ (ALC) и внешних фильтров.


📊 Итоговая таблица улучшений

Сводная таблица изменений, внедренных в прошивку Anvelina ProIII DX:

Модуль / ФункцияИзменениеЭффект / ПриростСтатус
Прием (RX)Внедрение TPDF Dither перед децимациейУстранение «сетки» на водопаде, улучшение DR на +6…9 дБ✅ Активно
Передача (TX)Фазовый дитер (Phase Dither) в CORDICСнижение паразитных гармоник, улучшение SFDR на +10…15 дБ✅ Активно
ФильтрацияОкругление (Rounding) в FIR-фильтрахУстранение DC-пика на 0 Гц, улучшение SNR на +1…2 дБ✅ Активно
PureSignalАдаптивное масштабирование обратной связиСтабильная работа предискажений на мощности 1–5 Вт✅ Активно
TX StartПопытка внедрения аппаратного RampОтклонено из-за риска рассинхронизации FIFO🔄 Откат

Внимания!!! Скачать новую прошивку можно на форуме.

Заключение

Проведенная оптимизация позволила существенно улучшить спектральные характеристики трансивера Anvelina ProIII DX, сохранив при этом полную совместимость с протоколом OpenHPSDR и существующим ПО. Проект готов к повседневной эксплуатации в эфире.

Благодарю сообщество за поддержку и тестирование!

Скачать новую прошивку для Anvelina PROIII можно по ссылки https://eu2av.net/download/file.php?id=2053

73! de EU2AV
Anvelina ProIII DX Project

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *