Угол значения, чтобы объединить

Преобразуйте значение и/или угловой сигнал фазы объединить сигнал

  • Библиотека:
  • Simulink / Математические операции

Описание

Поддерживаемые операции

Угол Значения к блоку Complex преобразовывает значение и угловые входные параметры фазы к комплексному выходу. Угловой входной параметр должен быть в раде.

Блок поддерживает следующие комбинации входных размерностей, когда существует два блочных входных параметра:

  • Два входных параметра равных размерностей

  • Один скалярный входной параметр и другой n-мерный массив

Если блочный входной параметр является массивом, вывод является массивом комплексных сигналов. Элементы входного вектора значения сопоставляют со значениями соответствующих элементов комплексного выхода. Точно так же элементы углового входного вектора сопоставляют с углами соответствующих элементов комплексного выхода. Если один входной параметр является скаляром, он сопоставляет с соответствующим компонентом (значение или угол) всех сигналов комплексного выхода.

Эффект входного параметра из области значений на приближениях CORDIC

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

  • Для фиксированных точек со знаком входной угол должен находиться в пределах области значений [–2π, 2π), рад.

  • Для фиксированных точек без знака входной угол должен находиться в пределах области значений [0, 2π), рад.

Следующая таблица обобщает то, что происходит для входного параметра из области значений:

Блокируйте использованиеЭффект входного параметра из области значений
МоделированиеОшибка появляется.
Сгенерированный кодНеопределенное поведение происходит.
Режимы Accelerator

Гарантируйте, чтобы вы использовали входной параметр в области значений для Угла Значения к блоку Complex, когда вы используете приближение CORDIC. Постарайтесь не полагаться на неопределенное поведение для сгенерированного кода или режимов Accelerator.

Порты

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

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

Значение, заданное как скаляр с действительным знаком, вектор или матрица.

Зависимости

  • Чтобы включить этот порт, установите Входной параметр на Magnitude and angle.

Ограничения

  • Если один входной параметр имеет тип данных с плавающей точкой, другой входной параметр должен использовать совпадающий тип данных. Например, обоими сигналами должен быть double или single.

  • Типы данных фиксированной точки поддержаны только, когда вы устанавливаете метод Приближения на CORDIC. Когда один входной параметр имеет тип данных фиксированной точки, другой входной параметр должен также иметь тип данных фиксированной точки.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | фиксированная точка

Угол фазы радиана, заданный как скаляр с действительным знаком, вектор или матрица. Чтобы вычислить приближение CORDIC, входной угол должен быть между:

  • [–2π, 2π) рад, для фиксированных точек со знаком

  • [0, 2π) рад, для фиксированных точек без знака

Для получения дополнительной информации смотрите Эффект Входного параметра Из области значений на Приближениях CORDIC.

Зависимости

  • Чтобы включить этот порт, установите Входной параметр на Magnitude and angle.

Ограничения

  • Если один входной параметр имеет тип данных с плавающей точкой, другой входной параметр должен использовать совпадающий тип данных. Например, обоими сигналами должен быть double или single.

  • Типы данных фиксированной точки поддержаны только, когда вы устанавливаете метод Приближения на CORDIC. Если один входной параметр имеет тип данных фиксированной точки, другой входной параметр должен также иметь тип данных фиксированной точки.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | фиксированная точка

Значение или угол фазы радиана, заданный как скаляр с действительным знаком, вектор или матрица.

  • Когда вы устанавливаете Входной параметр на Magnitude, вы задаете значение во входном порту и угол на диалоговом окне.

  • Когда вы устанавливаете Входной параметр на Angle, вы задаете угол во входном порту и значение на диалоговом окне.

Зависимости

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

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | фиксированная точка

Вывод

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

Комплексный сигнал, сформированный из значения и угла фазы, вы задаете.

Если блочный входной параметр является массивом, вывод является массивом комплексных сигналов. Элементы входного вектора значения сопоставляют со значениями соответствующих элементов комплексного выхода. Точно так же элементы углового входного вектора сопоставляют с углами соответствующих элементов комплексного выхода. Если один входной параметр является скаляром, он сопоставляет с соответствующим компонентом (значение или угол) всех сигналов комплексного выхода.

Типы данных: единственный | удваиваются | фиксированная точка

Параметры

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

Задайте вид входного параметра: входной параметр значения, угловой входной параметр или оба.

Программируемое использование

Блочный параметр: Входной параметр
Ввод: символьный вектор
Значения: 'Значение' | 'Энгл' | 'Значение и угол'
Значение по умолчанию: 'Magnitude and angle'

Постоянный угол фазы выходного сигнала, в раде. Чтобы вычислить приближение CORDIC, входной угол должен быть между:

  • [–2π, 2π) рад, для фиксированных точек со знаком

  • [0, 2π) рад, для фиксированных точек без знака

Для получения дополнительной информации смотрите Эффект Входного параметра Из области значений на Приближениях CORDIC.

Зависимости

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

Программируемое использование

Блочный параметр: ConstantPart
Ввод: символьный вектор
Значения: постоянный скаляр
Значение по умолчанию: '0'

Постоянное значение выходного сигнала, заданного как скаляр с действительным знаком, вектор или матрица.

Зависимости

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

Программируемое использование

Блочный параметр: ConstantPart
Ввод: символьный вектор
Значения: постоянный скаляр
Значение по умолчанию: '0'

Задайте тип приближения для вычисления вывода.

Метод приближенияПоддерживаемые типы данныхКогда использовать этот метод
None (значение по умолчанию)

Плавающая точка

Вы хотите использовать алгоритм Ряда Тейлора по умолчанию.

CORDIC

И фиксированная точка с плавающей точкой

Вы хотите быстрое, приближенное вычисление.

Когда вы используете приближение CORDIC, следуете этим инструкциям для входного угла:

  • Для фиксированных точек со знаком входной угол должен находиться в пределах области значений [–2π, 2π), рад.

  • Для фиксированных точек без знака входной угол должен находиться в пределах области значений [0, 2π), рад.

Блок использует следующие правила распространения типа данных:

Тип данных входного параметра значенияМетод приближенияТип данных комплексного выхода

Плавающая точка

None или CORDIC

То же самое, как введено

Фиксированная точка со знаком

CORDIC

fixdt (1, WL + 2, FL)

где WL и FL являются размером слова и дробная продолжительность значения

Фиксированная точка без знака

CORDIC

fixdt (1, WL + 3, FL)

где WL и FL являются размером слова и дробная продолжительность значения

Программируемое использование

Блочный параметр: ApproximationMethod
Ввод: символьный вектор
Значения: 'Ни один' | 'CORDIC'
Значение по умолчанию: 'none'

Количество итераций, чтобы выполнить алгоритм CORDIC. Область значений возможных значений зависит от типа данных входного параметра:

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

Зависимости

Чтобы включить этот параметр, установите метод Приближения на CORDIC.

Программируемое использование

Блочный параметр: NumberOfIterations
Ввод: символьный вектор
Значения: положительное целое число, меньше чем или равное размеру слова фиксированной точки, вводится
Значение по умолчанию: '11'

Установите этот флажок, чтобы масштабировать действительные и мнимые части комплексного выхода фактором (1/CORDIC gain). Это значение зависит от количества итераций, которые вы задаете. Когда количество итераций повышается, значение приближается 1.647.

Этот флажок устанавливается по умолчанию, который приводит к более численно точному результату для комплексного выхода, X + iY. Однако масштабирование вывода добавляет две дополнительных операции умножения, один для X и один для Y.

Зависимости

Чтобы включить этот параметр, установите метод Приближения на CORDIC.

Программируемое использование

Блочный параметр: ScaleReciprocalGainFactor
Ввод: символьный вектор
Значения: 'on' | 'off'
Значение по умолчанию: 'on'

Задайте частоту дискретизации как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.

Зависимости

Этот параметр не видим, если он явным образом не установлен в значение кроме -1. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Частота дискретизации.

Программируемое использование

Блочный параметр: 'SampleTime'
Ввод: символьный вектор
Значения: скаляр
Значение по умолчанию: '-1'

Блокируйте характеристики

Типы данных

double | single

Прямое сквозное соединение

No

Многомерные сигналы

Yes

Сигналы переменного размера

Yes

Обнаружение пересечения нулем

No

Больше о

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

Ссылки

[1] Volder, JE. “Тригонометрический вычислительный метод CORDIC”. Транзакции IRE на электронно-вычислительных машинах EC 8 (1959); 330–334.

[2] Andraka, R. “Обзор алгоритма CORDIC для основанных на FPGA компьютеров”. Продолжения 1998 шестых международных симпозиумов ACM/SIGDA по Программируемым пользователем вентильным матрицам. 22-24 февраля (1998): 191–200.

[3] Вальтер, J.S. “Объединенный Алгоритм для Элементарных функций”. Hewlett-Packard Company, Пало-Альто. Компьютерная Конференция по Соединению Spring (1971): 379–386. (из набора Компьютерного Музея Истории). www. компьютер. org/csdl/proceedings/afips/1971/5077/00/50770379.pdf

[4] Schelin, Чарльз В. “Приближение Функции калькулятора”. Американская Mathematical Monthly 90, № 5 (1983): 317–325.

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

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Представлено до R2006a

Была ли эта тема полезной?