А. Б. ГАЙДУЧЕНКО

Московский государственный инженерно-физический институт
(технический университет)

ИСПОЛЬЗОВАНИЕ АЛГОРИТМОВ CORDIC ДЛЯ ИЗМЕРЕНИЙ ФАЗЫ СИГНАЛА

В работе рассматриваются эффективные математические методы измерения фазы сигнала и их аппаратная реализация. Дается анализ затрат на реализацию прямых методов и методов, использующих алгоритм поворота вектора CORDIC.

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

(1)

Тогда фазовый спектр сигнала может быть вычислен следующим образом:

(2)

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

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

Хорошей альтернативой может служить реализация, использующая алгоритмы CORDIC («цифра за цифрой»). CORDIC – это совокупность эффективных методов поворота вектора с помощью только операций сложения и сдвига [1]. Они описываются выражениями:

(3)

для вектора, повернутого на угол . Это итерационный процесс с (все умножения на степень 2 реализуются сдвигами); поворот на заданный угол с точностью до n-го разряда требует n итераций. Тогда выражения (3) для арктангенса можно переписать как:

(4)


Итак, аппаратная реализация будет выглядеть следующим образом:

Для представления фазы в диапазоне достаточно 9 разрядов (и, значит, 9 итераций). Это обеспечивает фиксированное время латентности, независимо от разрядности входных данных.

Метод был описан на языке VHDL и реализован с помощью ПЛИС фирмы Altera. Он показал высокие характеристики как с точки зрения простоты реализации, так и точности вычислений.

Список литературы

1. , , «Цифровая обработка сигналов», М., «Радио и связь». 1985