А. Б. ГАЙДУЧЕНКО
Московский государственный инженерно-физический институт
(технический университет)
ИСПОЛЬЗОВАНИЕ АЛГОРИТМОВ CORDIC ДЛЯ ИЗМЕРЕНИЙ ФАЗЫ СИГНАЛА
В работе рассматриваются эффективные математические методы измерения фазы сигнала и их аппаратная реализация. Дается анализ затрат на реализацию прямых методов и методов, использующих алгоритм поворота вектора CORDIC.
Получение фазы сигнала является одной из наиболее часто встречающихся на практике задач обработки сигналов, поскольку мгновенная фаза несет в себе значительную информацию о сигнале. На практике наиболее часто используются методы цифровой обработки сигнала, использующие дискретное преобразование Фурье (ДПФ):
(1)
Тогда фазовый спектр сигнала может быть вычислен следующим образом:
(2)
Поскольку функция арктангенс имеет областью значения интервал
, то для получения реальной фазы сигнала в диапазоне
необходимо учитывать также знаки действительной и мнимой части ДПФ сигнала.
При аппаратной реализации данного метода требуются значительные затраты на деление и определение знаков действительной и мнимой части. Это приводит к использованию большого количества логических элементов и увеличению времени латентности делителя пропорционально разрядности операндов. К тому же возникают значительные затраты памяти для хранения таблицы значений функции арктангенс.
Хорошей альтернативой может служить реализация, использующая алгоритмы CORDIC («цифра за цифрой»). CORDIC – это совокупность эффективных методов поворота вектора
с помощью только операций сложения и сдвига [1]. Они описываются выражениями:
(3)
для вектора, повернутого на угол
. Это итерационный процесс с
(все умножения на степень 2 реализуются сдвигами); поворот на заданный угол с точностью до n-го разряда требует n итераций. Тогда выражения (3) для арктангенса можно переписать как:
(4)

Итак, аппаратная реализация будет выглядеть следующим образом:
Для представления фазы в диапазоне
достаточно 9 разрядов (и, значит, 9 итераций). Это обеспечивает фиксированное время латентности, независимо от разрядности входных данных.
Метод был описан на языке VHDL и реализован с помощью ПЛИС фирмы Altera. Он показал высокие характеристики как с точки зрения простоты реализации, так и точности вычислений.
Список литературы
1. , , «Цифровая обработка сигналов», М., «Радио и связь». 1985


