Ideal Rectangular Pulse Filter

Сформируйте входной сигнал с помощью идеальных меандров

Библиотека

Фильтры коммуникации

  • Ideal Rectangular Pulse Filter block

Описание

Блок Ideal Rectangular Pulse Filter сверхдискретизировал и формирует входной сигнал с помощью меандров. Блок реплицирует каждую входную выборку N времена, где N является параметром Pulse length. После тиражирования входных выборок блок может также нормировать выходной сигнал и/или применить линейное амплитудное усиление.

Если параметр Pulse delay является ненулевым, то блок выходные параметры что количество нулей в начале симуляции, прежде, чем начать реплицировать какое-либо из входных значений.

Этот блок принимает скаляр, вектор-столбец или матричный входной сигнал. Для получения информации о типах данных, которые поддерживает каждый порт блока см. таблицу Supported Data Type на этой странице.

Размер вектора, импульсная длина и импульсная задержка взаимно независимы. Они не должны удовлетворять никаким условиям друг относительно друга.

Односкоростная обработка

Когда вы устанавливаете параметр Rate options на Enforce single-rate processing, ввод и вывод блока имеет ту же частоту дискретизации. Чтобы сгенерировать выход при поддержании входной частоты дискретизации, блок передискретизирует данные в каждом столбце входа, таким образом, что формат кадра выхода (Mo) является временами L, больше, чем тот из входа (Mo = Mi *L), где L является значением параметров Pulse length (number of samples).

Многоскоростная обработка

Когда вы устанавливаете параметр Rate options на Allow multirate processing, ввод и вывод блока одного размера. Однако частота дискретизации выхода является временами L быстрее, чем тот из входа (т.е. выходной шаг расчета является временами 1/N входной шаг расчета). Когда блок находится в многоскоростном режиме обработки, необходимо также задать значение для параметра Input processing:

  • Когда вы устанавливаете параметр Input processing на Elements as channels (sample based), блок обрабатывает M-by-N матричный вход как M *N независимые каналы и процессы каждый канал в зависимости от времени. Выходной период расчета (Tso) является временами L короче, чем входной период расчета (Tso = Tsi/L), в то время как размеры ввода и вывода остаются идентичными.

  • Когда вы устанавливаете параметр Input processing на Columns as channels (frame based), блок обрабатывает Mi-by-N матричный вход как N независимые каналы. Процессы блока каждый столбец входа в зависимости от времени путем хранения формата кадра постоянным (Mi =Mo), заставляя выход структурировать период (Tfo) времена L короче, чем период входного кадра (Tfo = Tfi/L).

Методы нормализации

Вы определяете поведение нормализации блока с помощью параметров Linear amplitude gain и Normalize output signal.

  • Если вы очищаете Normalize output signal, то блок умножает набор реплицированных значений параметром Linear amplitude gain. Этот параметр должен быть скаляром.

  • Если вы выбираете Normalize output signal, то параметр Normalization method появляется. Блок масштабирует набор реплицированных значений так, чтобы одно из этих условий было верно:

    • Сумма выборок в каждом импульсе равняется исходному входному значению, которое реплицировал блок.

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

После того, как блок применяет масштабирование, заданное в параметре Normalization method, это умножает масштабированный сигнал на постоянное скалярное значение, заданное в параметре Linear amplitude gain.

Выход масштабируется N. Если выход этого блока кормит входом блок AWGN Channel, задайте параметр степени сигнала AWGN, чтобы быть 1/N.

Параметры

Pulse length (number of samples)

Количество отсчетов в каждом выходном импульсе; то есть, число раз блок реплицирует каждое входное значение при создании выходного сигнала.

Pulse delay (number of samples)

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

Input processing

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

  • Columns as channels (frame based) — Когда вы выбираете эту опцию, блок обрабатывает каждый столбец входа как отдельный канал.

  • Elements as channels (sample based) — Когда вы выбираете эту опцию, блок обрабатывает каждый элемент входа как отдельный канал.

Rate options

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

  • Enforce single-rate processing — Когда вы выбираете эту опцию, блок обеспечивает входную частоту дискретизации и обрабатывает сигнал путем увеличения выходного формата кадра на коэффициент L. Чтобы выбрать эту опцию, необходимо установить параметр Input processing на Columns as channels (frame based).

  • Allow multirate processing — Когда вы выбираете эту опцию, блок обрабатывает сигнал, таким образом, что выходная частота дискретизации является временами L быстрее, чем входная частота дискретизации.

Normalize output signal

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

Normalization method

Количество, которое блок рассматривает при масштабировании набора реплицированных значений. Выбором является Sum of samples и Energy per pulse. Это поле появляется, только если вы выбираете Normalize method.

Linear amplitude gain

Положительная скалярная величина раньше масштабировала выходной сигнал.

Rounding mode

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

Для получения дополнительной информации смотрите Округление Режимов или Округление Режима: Самый Простой (Fixed-Point Designer).

Saturate on integer overflow

Выберите режим переполнения для операций фиксированной точки. Коэффициенты фильтра не выполняют этот параметр; они всегда насыщаются.

Coefficients

Выберите, как вы задаете размер слова и дробную длину коэффициентов фильтра (числитель и/или знаменатель). См. Схемы Структуры Фильтра в Справочнике DSP System Toolbox™ для рисунков, изображающих использование содействующих типов данных в этом блоке:

  • Когда вы выбираете Same word length as input, размер слова содействующего соответствия фильтра тот из входа с блоком. В этом режиме дробная длина коэффициентов автоматически установлена в двоичную точку, только масштабирующуюся, который предоставляет вам лучшую точность, возможную, учитывая значение и размер слова коэффициентов.

  • Когда вы выбираете Specify word length, вы можете ввести размер слова коэффициентов в битах. В этом режиме дробная длина коэффициентов автоматически установлена в двоичную точку, только масштабирующуюся, который предоставляет вам лучшую точность, возможную, учитывая значение и размер слова коэффициентов.

  • Когда вы выбираете Binary point scaling, вы можете ввести размер слова и дробную длину коэффициентов в битах. Если применимо вы можете ввести отдельные дробные длины для коэффициентов знаменателя и числителя.

  • Когда вы выбираете Slope and bias scaling, вы можете ввести размер слова в битах и наклоне коэффициентов. Если применимо вы можете ввести отдельные наклоны для коэффициентов знаменателя и числителя. Этот блок требует наклона степени двойки и смещения нуля.

  • Коэффициенты фильтра не выполняют Rounding mode и параметры Saturate on integer overflow; они всегда насыщаются и округляются к Nearest.

Product output

Используйте этот параметр, чтобы задать, как требуется назвать продукт выходным словом и дробными длинами. См. Схемы Структуры Фильтра и Типы данных Умножения в Справочнике DSP System Toolbox для рисунков, изображающих использование типа выходных данных продукта в этом блоке:

  • Когда вы выбираете Same as input, эти характеристики совпадают с теми из входа с блоком.

  • Когда вы выбираете Binary point scaling, вы можете ввести размер слова и дробную длину продукта выход в битах.

  • Когда вы выбираете Slope and bias scaling, вы можете ввести размер слова в битах и наклоне продукта выход. Этот блок требует наклона степени двойки и смещения нуля.

Accumulator

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

  • Когда вы выбираете Same as input, эти характеристики совпадают с теми из входа с блоком.

  • Когда вы выбираете Same as product output, эти характеристики совпадают с теми из продукта выход.

  • Когда вы выбираете Binary point scaling, вы можете ввести размер слова и дробную длину аккумулятора в битах.

  • Когда вы выбираете Slope and bias scaling, вы можете ввести размер слова в битах и наклоне аккумулятора. Этот блок требует наклона степени двойки и смещения нуля.

Output

Выберите, как вы задаете выходной размер слова и дробную длину:

  • Когда вы выбираете Same as input, эти характеристики совпадают с теми из входа с блоком.

  • Когда вы выбираете Same as accumulator, эти характеристики совпадают с теми из аккумулятора.

  • Когда вы выбираете Binary point scaling, вы можете ввести размер слова и дробная продолжительность выхода в битах.

  • Когда вы выбираете Slope and bias scaling, вы можете ввести размер слова в битах и наклоне выхода. Этот блок требует наклона степени двойки и смещения нуля.

Lock scaling against changes by the autoscaling tool

Установите этот флажок, чтобы предотвратить любую фиксированную точку, масштабирующую вас, задают в маске блока от того, чтобы быть замененным инструментом автомасштабирования в Fixed-Point Tool.

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

ПортПоддерживаемые типы данных
\in
  • Плавающая точка двойной точности

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

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

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

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

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

Примеры

Если Pulse length является 4 и Pulse delay является скалярный 3, затем приведенная ниже таблица показывает, как блок обрабатывает начало пандуса (1, 2, 3...) в нескольких ситуациях. (Значения, показанные в таблице, не отражают размеры вектора, но просто указывают на численные значения.)

Метод нормализации, если любойЛинейное амплитудное усилениеСначала несколько выходных значений
Ни один (очищенный Normalize output signal) 1 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,...
Ни один (очищенный Normalize output signal) 10 0, 0, 0, 10, 10, 10, 10, 20, 20, 20, 20, 30, 30, 30, 30,...
Sum of samples 1 0, 0, 0, 0.25, 0.25, 0.25, 0.25, 0.5, 0.5, 0.5, 0.5, 0.75, 0.75, 0.75, 0.75..., где 0.25*4=1
Sum of samples 10 0, 0, 0, 2.5, 2.5, 2.5, 2.5, 5, 5, 5, 5, 7.5, 7.5, 7.5, 7.5, ...
Energy per pulse 1 0, 0, 0, 0.5, 0.5, 0.5, 0.5, 1.0, 1.0, 1.0, 1.0, 1.5, 1.5, 1.5, 1.5..., где (0.5)^2*4=1^2
Energy per pulse 10 0, 0, 0, 5, 5, 5, 5, 10, 10, 10, 10, 15, 15, 15, 15,...

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

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

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

Блоки

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