Нормализация

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

Библиотека

Математические функции / Математические операции

dspmathops

Описание

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

Этот блок обрабатывает произвольно определенный размеры вход U как набор векторов, ориентированных в заданном измерении. Блок нормирует эти векторы или их нормой или квадратом их нормы.

Например, рассмотрите 3-мерный вход U(i,j,k) и примите, что вы хотите нормировать вдоль второго измерения. Во-первых, задайте 2-мерное промежуточное количество V(i,k), таким образом, что каждый элемент V является нормой одного из векторов в U:

V(i,k)=(j=1JU2(i,j,k))1/2

Учитывая V, вывод блока Y(i, j,k) в режиме 2-нормы

Y(i,j,k)=U(i,j,k)V(i,k)+b

В режиме квадратичной нормы блок вывод

Y(i,j,k)=U(i,j,k)V(i,k)2+b

Смещение нормализации, b, обычно выбирается, чтобы быть маленькой положительной константой (например, 1e-10), который предотвращает потенциальное деление на нуль.

Типы данных с фиксированной точкой

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

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

Примеры

Смотрите Нулевую Алгоритмическую Задержку Руководства пользователя DSP System Toolbox™ для примера.

Параметры

Main Tab

Norm

Задайте тип нормализации, чтобы выполнить, 2-norm или Squared 2-norm. режим 2-norm поддерживает сигналы с плавающей точкой только. Squared 2-norm поддерживает и фиксированную точку и сигналы с плавающей точкой.

Normalization bias

Задайте действительное значение b, который будет добавлен в знаменателе, чтобы избежать деления на нуль. Настраиваемый (Simulink).

Normalize over

Задайте, нормировать ли вдоль строк, столбцов или размерности, заданной в параметре Dimension.

Dimension

Задайте значение на основе одно размерности, по которой можно нормировать. Значение этого параметра не может превысить количество размерностей во входном сигнале. Этот параметр только видим, если Specified dimension выбран для параметра Normalize over.

Data Types Tab

Примечание

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

Rounding mode

Задайте округляющийся режим для операций фиксированной точки как одно из следующего:

  • Floor

  • Ceiling

  • Convergent

  • Nearest

  • Round

  • Simplest

  • Zero

Для получения дополнительной информации смотрите округление режима.

Saturate on integer overflow

Когда вы выбираете этот параметр, блок насыщает результат своей операции фиксированной точки. Когда вы очищаете этот параметр, блок переносит результат своей операции фиксированной точки. Для получения дополнительной информации на saturate и wrap, смотрите режим переполнения для операций фиксированной точки.

Product output

Задайте тип выходных данных продукта. Смотрите Типы данных с фиксированной точкой и Типы данных Умножения для рисунков, изображающих использование типа выходных данных продукта в этом блоке. Можно установить его на:

  • Правило, которое наследовало тип данных, например, Inherit: Same as input

  • Выражение, которое оценивает к допустимому типу данных, например, fixdt([],16,0)

Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Product output.

Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.

Accumulator

Задайте тип данных аккумулятора. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа данных аккумулятора в этом блоке. Можно установить этот параметр на:

  • Правило, которое наследовало тип данных, например, Inherit: Same as product output

  • Правило, которое наследовало тип данных, например, Inherit: Same as input

  • Выражение, которое оценивает к допустимому типу данных, например, fixdt([],16,0)

Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Accumulator.

Смотрите Задают Типы данных Используя Ассистент Типа данных (Simulink) для получения дополнительной информации.

Output

Задайте тип выходных данных. Смотрите Типы данных с фиксированной точкой для рисунков, изображающих использование типа выходных данных в этом блоке. Можно установить его на:

  • Правило, которое наследовало тип данных, например, Inherit: Same as product output

  • Правило, которое наследовало тип данных, например, Inherit: Same as input

  • Правило, которое наследовало тип данных, например, Inherit: Same as accumulator

  • Выражение, которое оценивает к допустимому типу данных, например, fixdt([],16,0)

Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить параметр Output.

Смотрите Типы данных Управляющего сигнала (Simulink) для получения дополнительной информации.

Output Minimum

Задайте минимальное значение, которое должен вывести блок. Значением по умолчанию является (незаданный) []. Программное обеспечение Simulink® использует это значение, чтобы выполнить:

  • Проверка диапазона симуляции (см. Диапазоны сигнала (Simulink)),

  • Автоматическое масштабирование типов данных с фиксированной точкой

Output Maximum

Задайте максимальное значение, которое должен вывести блок. Значением по умолчанию является (незаданный) []. Программное обеспечение Simulink использует это значение, чтобы выполнить:

  • Проверка диапазона симуляции (см. Диапазоны сигнала (Simulink)),

  • Автоматическое масштабирование типов данных с фиксированной точкой

Lock data type settings against changes by the fixed-point tools

Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на маске блока.

Поддерживаемые типы данных

ПортПоддерживаемые типы данных

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

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Фиксированная точка (подписанный и без знака)

  • 8-, 16-, и 32-битные целые числа со знаком

  • 8-, 16-, и 32-битное беззнаковое целое

Вывод

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Фиксированная точка (подписанный и без знака)

  • 8-, 16-, и 32-битные целые числа со знаком

  • 8-, 16-, и 32-битное беззнаковое целое

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

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

Преобразование фиксированной точки
Преобразуйте алгоритмы с плавающей точкой в фиксированную точку с помощью Fixed-Point Designer™.

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