Внедрение фильтров Iir в программно-определяемые радиосистемы для управления спектром

Программно-определяемые радиосистемы (SDR) трансформировали ландшафт беспроводной связи, переключая обработку сигналов с фиксированного оборудования на гибкие программные платформы. Эта программируемость позволяет инженерам перенастраивать радиоприемники на лету, адаптироваться к различным стандартам и управлять радиочастотным (RF) спектром с беспрецедентной гибкостью. В основе каждой системы SDR лежит набор цифровых фильтров, которые формируют, выбирают и очищают сигналы. Среди них фильтры Infinite Impulse Response (IIR) выделяются своей вычислительной эффективностью и резкой частотной селективностью. В этой статье рассматриваются принципы, дизайн, реализация и практическое применение фильтров IIR в системах SDR, с акцентом на управление спектром — задача мониторинга, координации и оптимизации использования радиочастотного спектра во все более перегруженных средах.

Основы фильтров IIR

Фильтр IIR — это тип цифрового фильтра, который использует обратную связь — его текущий выход зависит как от текущих, так и от прошлых входов, а также от прошлых выходов. Эта рекурсивная структура описывается линейным уравнением разности с постоянным коэффициентом:

Где x является входом, y является выходом, а коэффициенты b и a определяют ответ фильтра.a дают IIR-фильтрам импульсный ответ, который теоретически продолжается вечно — отсюда «бесконечный». Это позволяет IIR-фильтрам достигать чрезвычайно резкого сворачивания и высокого затухания полосы остановки с гораздо меньшими коэффициентами, чем эквивалентный фильтр IIR низкого пропуска 5-го порядка может соответствовать избирательности фильтра FIR с 20-ти касанием, сохраняя память и вычисления.

Анализ и стабильность полюс-ноль

Поведение IIR-фильтра полностью характеризуется его передаточной функцией в z-домене, которая является рациональной функцией z. Корни числителя — это нули, а корни знаменателя — полюса. Для устойчивости все полюса должны лежать внутри единичного круга в z-плоскости. Полюс на единичном круге соответствует осциллятору, в то время как полюс вне вызывает неограниченный рост. Это ограничение стабильности является основным фактором при проектировании IIR-фильтров, особенно когда коэффициенты квантованы в арифметике с фиксированной точкой.

Графики нулевого полюса обеспечивают интуитивный способ визуализации частотной реакции фильтра. Размещение нулей вблизи областей единичного круга, где желательно затухание (например, на определенной частоте помех) и полюсов вблизи области полосы пропускания повышает избирательность. Инженеры часто используют размещение нулевого полюса в качестве метода проектирования для простых фильтров полосы остановки (выемки) или полосы пропускания в SDR.

Техника проектирования фильтров IIR в SDR

Проектирование IIR-фильтров для SDR-приложений обычно начинается с аналогового прототипа. Наиболее распространенными методами являются:

После вычисления коэффициентов их необходимо проверить с помощью таких инструментов, как библиотека MATLAB или Python scipy.signal. Разработчики SDR обычно проектируют фильтры в автономном режиме, а затем встраивают массивы коэффициентов в свою прошивку или программное обеспечение.

Внедрение в программно-определяемом радио

В системе SDR цифровой фильтр работает на образцах базовой полосы, поставляемых аналого-цифровым преобразователем (ADC) со скоростью, часто превышающей десятки мега-образцов в секунду. Ограничения в реальном времени требуют эффективного кода, который минимизирует операции многократного накопления (MAC) и доступ к памяти. Фильтры IIR обычно реализуются с использованием структур Direct Form I или Direct Form II (или их транспонированных вариантов). Direct Form II использует меньше элементов памяти, когда порядок фильтра высок, но он может быть более чувствительным к эффектам квантования.

Fixed-Point vs. Floating-Point

Многие SDR-платформы, особенно использующие FPGA или недорогие микроконтроллеры, работают в арифметике с фиксированной точкой. Это вводит шум квантования и потенциальную нестабильность из-за округления коэффициентов. Обычная методика заключается в использовании каскадной структуры «биквад» (раздел второго порядка). Разбивая фильтр высокого порядка на серию биквадных стадий, каждая из которых имеет хорошо управляемые полюса и нули, общий фильтр остается стабильным даже с умеренной точностью. Например, эллиптический фильтр низкого прохода 10-го порядка может быть реализован как пять каскадных биквадных секций. Каждая биквад реализуется с использованием транспонированной прямой формы I, которая накапливает ошибки менее агрессивно.

Процессоры с плавающей точкой (например, ARM Cortex-A или SDR на базе ПК) предлагают более высокую точность и более легкое масштабирование коэффициентов, но с премией за мощность и стоимость. В программном обеспечении уравнение разности просто записывается как цикл над образцами, используя переменные аккумулятора. Оптимизации, такие как разворот петли, инструкции SIMD или даже ускорение GPU, могут применяться для систем SDR с высокой пропускной способностью.

Архитектура обработки в реальном времени

Типичное программное обеспечение SDR запускает цикл управления, который считывает образцы из аппаратного буфера, обрабатывает их через фильтр и записывает вывод в блок нисходящего потока (демодулятор, анализатор спектра и т. д. Для фильтрации IIR переменные состояния (прошлые входы и выходы) должны сохраняться между партиями образцов. Это часто делается с использованием кольцевых буферов или статических массивов. Функция фильтра называется один раз на блок выборки, обновление состояния для следующего блока. Задержка, введенная фильтрами IIR, является детерминированной и может управляться в пределах общего времени системы.

Приложения в управлении спектром

Управление спектром охватывает широкий спектр деятельности — от координации нормативных актов до смягчения помех в режиме реального времени. Фильтры ИДК обеспечивают несколько ключевых возможностей в SDR-диспетчерах спектра:

Для более глубокого погружения в адаптивные методы фильтрации обратитесь к адаптивной фильтрующей документации MathWorks.

Соображения в отношении эффективности

Хотя IIR-фильтры предлагают вычислительные преимущества, они предлагают несколько компромиссов производительности, которыми инженеры SDR должны тщательно управлять:

Эффекты стабильности и конечной длины слова

Как отмечалось ранее, полюса должны оставаться внутри единичного круга. В системах с фиксированной точкой квантование коэффициентов может смещать полюса, потенциально вызывая нестабильность. Двойная точность плавающей точки устраняет этот риск для большинства конструкций, но идет при более высокой стоимости оборудования. Практическое правило: сохранять порядки фильтра ниже 10 (использовать каскадные биквады) и имитировать с квантованными коэффициентами перед развертыванием.

Численность точности

Фильтры ИКП накапливают шум за счет округления после каждого умножения. Для фильтров высокого порядка это может ухудшить SNR выходного сигнала. Использование биквадных каскадов минимизирует это, поскольку каждая ступень перекванивает только собственное состояние. Кроме того, масштабирование входного сигнала для предотвращения переполнения в реализациях с фиксированной точкой имеет важное значение.

Группа задерживается

Фильтры ИИР имеют нелинейный фазовый отклик, то есть различные частотные компоненты испытывают различные задержки. Это может искажать форму волны модулированного сигнала, потенциально вызывая интерсимволические помехи в цифровых коммуникациях. Для приложений, где линейная фаза имеет решающее значение (например, фазово-модулированные сигналы), могут быть предпочтительны фильтры ФИР или эквалайзер фаз полного прохода может быть каскадизирован с фильтром ИИР для линеаризации групповой задержки по полосе пропускания. Компромиссом является повышенная вычислительная нагрузка.

Вычислительная пропускная способность

Фильтры IIR не могут быть легко распараллелены, поскольку каждый вывод зависит от предыдущих выводов. Однако, поскольку они требуют гораздо меньшего количества кранов, чем фильтры FIR, они часто достигают более высокой общей пропускной способности для той же селективности. В массивно параллельных архитектурах SDR (например, графических процессорах) последовательный характер IIR может стать узким местом. В таких случаях разработчики могут использовать обработку блоков или приблизить IIR с FIR большей длины для использования параллелизма.

Пример: Фильтр узкополосной выемки для отторжения помех

Рассмотрим СПЗ мониторинга спектра, который принимает широкополосный сигнал (например, полоса пропускания 20 МГц) и должен обнаруживать слабый первичный сигнал пользователя на определенной частоте. Сильный узкополосный интерферентор (например, широковещательная FM-станция) появляется на частоте 10,5 МГц внутри полосы. Используя фильтр выемки IIR второго порядка шириной 100 кГц при -3 дБ и глубиной 40 дБ, система может подавить интерфератор, оставляя остальную часть спектра в основном нетронутой. Коэффициенты фильтра вычисляются через размещение полюс-ноль: два нуля на единичном круге под углом, соответствующим 10,5 МГц (скорость отбора проб предполагается 40 МГц), и два полюса внутри, но близко к нулю, для достижения резкой выемки. Программное обеспечение реализует два каскадных биквадных сечения (4-й порядок в целом) для более глубокой выемки. При тестировании фильтр выемки уменьшает интерфератор более чем на 50 дБ, позволяя обнаруживать сигнал первичного пользователя

Для практического руководства по проектированию фильтров выемки на Python см. SciPy Cookbook: Notch Filter.

Будущие направления

Роль фильтров ИДК в СПЗ будет и далее развиваться в соответствии с новыми тенденциями:

Для получения дополнительной информации об архитектурах SDR обратитесь к RTL-SDR.com для практических проектов и ресурсов сообщества.

Заключение

Внедрение IIR-фильтров в программно-определяемые радиосистемы является одновременно искусством и наукой. Их эффективность делает их незаменимыми для задач управления спектром, где вычислительные ресурсы ограничены, а реакция в реальном времени обязательна. Понимая методы проектирования — от аналоговых прототипов до реализации в дискретное время — и учитывая стабильность, квантование и задержку групп, инженеры могут развертывать IIR-фильтры, которые чисто извлекают сигналы и подавляют помехи в переполненных спектральных средах. По мере продвижения беспроводных технологий продолжающиеся инновации в архитектурах IIR-фильтра останутся краеугольным камнем гибкого и интеллектуального управления спектром.

Полный учебник по цифровой обработке сигналов см. в Понимание цифровой обработки сигналов Ричарда Г. Лайонса .