Complex to Magnitude-Angle HDL Optimized

Вычислите величину и угол фазы комплексного сигнала – оптимизированный для генерации HDL-кода с помощью алгоритма CORDIC

  • Библиотека:
  • Поддержка HDL DSP System Toolbox / Математические функции

  • Complex to Magnitude-Angle HDL Optimized block

Описание

Блок Complex to Magnitude-Angle HDL Optimized вычисляет величину и угол фазы комплексного сигнала и обеспечивает благоприятные для оборудования управляющие сигналы. Чтобы достигнуть эффективной реализации HDL, блок использует конвейерный Координатный Компьютер Вращения (CORDIC) алгоритм.

Можно использовать этот блок, чтобы реализовать операции такой как atan2 в оборудовании.

Порты

Входной параметр

развернуть все

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

double и single типы данных поддерживаются для симуляции, но не для генерации HDL-кода.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Когда validIn является true, блок собирает данные от входного порта dataIn. Сигнал validIn применяется ко всем выборкам в векторном входном сигнале.

Типы данных: Boolean

Вывод

развернуть все

Величина входного сигнала, возвращенного как скаляр, вектор-столбец, представляющий выборки вовремя или вектор-строку, представляющий каналы. Размерности этого порта совпадают с размерностями порта dataIn.

Зависимости

Чтобы включить этот порт, установите параметр Output format на Magnitude and Angle или Magnitude.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixdt([],N,0)

Угол входного сигнала, возвращенного как скаляр, вектор-столбец, представляющий выборки вовремя или вектор-строку, представляющий каналы. Размерности этого порта совпадают с размерностями порта dataIn.

Зависимости

Чтобы включить этот порт, установите параметр Output format на Magnitude and Angle или Angle.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixdt([],N,0)

Блок устанавливает validOut на true с каждыми допустимыми данными, возвращенными на Magnitude или выходных портах Angle. Сигнал validOut применяется ко всем выборкам в векторном выходном сигнале.

Типы данных: Boolean

Параметры

развернуть все

  • Чтобы определить номер итераций к входу WL − 1, выберите Auto. Если вход имеет тип данных double или single, номер итераций определяется к 16 по умолчанию.

  • Чтобы задать количество итераций при помощи параметра Number of iterations, выберите Property.

Количество итераций должно быть меньше чем или равно входу WL − 1. Задержка блока зависит от количества выполняемых итераций. Для получения информации о задержке смотрите Задержку.

Зависимости

Чтобы включить этот параметр, установите Number of iterations source на Property.

Используйте этот параметр, чтобы задать, какие выходные порты включены.

  • Чтобы включить Magnitude и выходные порты Angle, выберите Magnitude and Angle (значение по умолчанию).

  • Чтобы включить выходной порт Magnitude и отключить выходной порт Angle, выберите Magnitude.

  • Чтобы включить выходной порт Angle и отключить выходной порт Magnitude, выберите Angle.

  • Возвратить Angle выход как значение фиксированной точки, которое нормирует углы в области значений [–1,1], select Normalized. Для получения дополнительной информации смотрите Нормированный Угловой Формат.

  • Чтобы возвратить Angle выход как значение фиксированной точки в области значений [-π, π], выбирают Radians. При использовании этого блока, чтобы реализовать atan2 функция, установленная этот параметр на Radians.

Выберите этот параметр, чтобы умножить Angle выход на инверсию фактора усиления CORDIC. Блок реализует этот фактор усиления использование архитектуры shift-and-add для множителя. Эта реализация может увеличить длину критического пути в вашем проекте.

Примечание

Если вы очищаете этот параметр и применяете усиление CORDIC в другом месте в вашем проекте, необходимо исключить термин π/4. Поскольку квадрант, сопоставляющий алгоритм, заменяет первую итерацию CORDIC путем отображения входных параметров на угловую область значений [0, π/4], начальное вращение не вносит термин усиления. Фактором усиления является продукт cos(atan(2-n)), для n от 1 до Number of iterations – 1.

Алгоритмы

развернуть все

Расширенные возможности

Смотрите также

| | (Simulink)

Введенный в R2014b