Добавить в цитаты Настройки чтения

Страница 246 из 436



Требования к DSP для реализации алгоритмов БПФ в реальном масштабе времени

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

Для обеспечения функционирования в реальном масштабе времени полный расчет БПФ должен выполняться в промежутке, соответствующем времени накопления одного пакета данных. Предполагается, что, пока производится вычисление БПФ текущего пакета данных, DSP-процессор накапливает данные для следующего пакета. Накопление данных является одной из сфер, где важную роль играют специальные архитектурные особенности DSP. Непрерывное получение данных облегчается, благодаря возможностям гибкой адресации данных в DSP в сочетании с использованием различных каналов прямого доступа к памяти (DMA).

Рассмотрим DSP процессор ADSP-TS001 TigerSHARC, который вычисляет 1024-точечное 32-разрядное комплексное БПФ с плавающей точкой за 69 мкс. Очевидно, что максимальная частота дискретизации равна 1024/69 мкс = 14,8 MSPS. Это подразумевает, что сигнал имеет ширину полосы частот меньшую, чем 7,4 МГц. Также предполагается, что нет дополнительных затрат процессорного времени, связанных с БПФ, или ограничений, связанных с передачей данных.

Приведенный пример дает оценку максимальной ширины полосы сигнала, который может быть обработан данным DSP-процессором с учетом характеристик реализованного на нем БПФ. Другой подход состоит в том, чтобы, задаваясь шириной полосы сигнала, разработать требования к DSP для обработки сигнала в рассматриваемой полосе. Если ширина полосы частот сигнала известна, требуемая частота дискретизации может быть определена путем ее умножения на коэффициент 2–2,5 (увеличение частоты дискретизации может требоваться для ослабления требований к предшествующему АЦП ФНЧ, устраняющему эффект наложения спектра, (antialiasing filter)). Следующим шагом определяется число точек БПФ, требуемое для достижения желаемой разрешающей способности по частоте. Разрешающая способность по частоте получается делением скорости дискретизации fs на число точек БПФ N. Эти и другие соображения по поводу БПФ представлены на рис. 5.24.

РЕАЛИЗАЦИЯ БПФ В РЕАЛЬНОМ МАСШТАБЕ ВРЕМЕНИ

Ширина полосы сигнала

Частота дискретизации fs

Разрешающая способность по частоте = fs/N

Макс. время вычисления N-точечного БПФ N/fs

Фиксированная точка или плавающая точка

Время выполнения алгоритма БПФ по основанию 2 по сравнению с БПФ по основанию 4





Выигрыш БПФ в отношении сигнал/шум = 10 log10(N/2)

Требования взвешивания с использованием оконной функции (Windowing)

Рис. 5.24

Число точек БПФ также определяет минимальный уровень шума БПФ относительно уровня широкополосного шума, и это также должно быть учтено при выборе числа точек БПФ. На рис. 5.25 представлены соотношения между уровнем сигнала, соответствующим полному динамическому диапазону системы, уровнем широкополосного шума (измеренного в ширине полосы от 0 до fs/2) и минимальным уровнем шума БПФ.

Обратите внимание, что выигрыш в отношении сигнал/шум БПФ определяется числом точек БПФ. БПФ действует подобно аналоговому анализатору спектра с шириной полосы развертки fs/N. Увеличение числа точек повышает разрешающую способность БПФ и сужает полосу пропускаемых им частот, сокращая, таким образом, минимальный уровень шума. В этом анализе мы пренебрегли шумом, вызванным ошибкой округления при реализации БПФ. На практике АЦП, который используется для оцифровки сигнала, производит шум квантования, который является доминирующим шумовым источником в системе.

Теперь пришло время исследовать характеристики реально существующих DSP-процессоров и время реализации БПФ на этих процессорах, чтобы представить себе, при каких условиях мы можем осуществлять обработку сигналов в реальном масштабе времени. Это означает, что БПФ должно быть рассчитано в течение времени накопления пакета данных, равного N/fs. Другие соображения, такие как использование процессора с фиксированной точкой в сравнении с процессором с плавающей точкой, использование алгоритма по основанию 2 в сравнении с алгоритмом по основанию 4, потребляемая процессором мощность и стоимостные показатели, могут также представить предмет для рассмотрения.

Расширение спектра анализируемого сигнала и взвешивание с использованием оконной функции

Расширение спектра анализируемого сигнала при вычислении БПФ может быть лучше всего проиллюстрировано на выполнении N-точечного БПФ с синусоидальным входным сигналом. Будет рассмотрено две ситуации. В первом случае соотношение между частотой дискретизации и частотой входного синусоидального сигнала таково, что в выборке содержится в точности целое число периодов синусоидального сигнала. Напомним, что вычисление ДПФ предполагает, что выборка повторяется бесконечное число раз до и после исследуемого фрагмента сигнала, формируя таким способом бесконечный непрерывный периодический сигнал, как показано на рис. 5.26. При таких условиях форма входного сигнала представляет собой непрерывную синусоидальную функцию, и на выходе ДПФ или БПФ будет один ненулевой частотный отсчет, соответствующий частоте входного сигнала.

Рис. 5.27 отражает ситуацию, когда в выборке нет целого числа периодов синусоидального сигнала. Разрывы, которые образуются в конечных точках выборки, приводят к расширению спектра анализируемого сигнала вследствие появления дополнительных гармоник. В дополнение к появлению боковых лепестков, происходит расширение основного лепестка, что приводит к снижению разрешающей способности по частоте. Этот процесс эквивалентен перемножению входного синусоидального сигнала с прямоугольным импульсом, который имеет известную частотную характеристику sin(x)/x и связанные с этим широкий основной лепесток и боковые лепестки.

Обратите внимание, что первый боковой лепесток только на 12 дБ ниже основного, и что боковые лепестки имеют спад только 6 дБ/октаву. Такая ситуация неприемлема для большинства задач анализа спектра. Поскольку в практических приложениях БПФ для спектрального анализа точные входные частоты неизвестны, следует предпринять определенные шаги к уменьшению боковых лепестков. Оно достигается выбором оконной функции с более сложной формой, чем прямоугольная. Входные отсчеты по времени умножаются на соответствующую функцию окна, что влечет за собой обнуление сигнала на краях выборки, как показано на рис. 5.28. Выбор функции окна является, прежде всего, компромиссом между увеличением ширины основного лепестка и размером боковых лепестков. Для тщательной проработки вопросов, связанных с оконными функциями, настоятельно рекомендуется обратиться к Приложению 7.