Delay Line

Последовательность входов Rebuffer

Библиотека

Управление сигналами/буферы

dspbuff3

  • Delay Line block

Описание

Блок Линия отбивает последовательность входных параметров Mi -by- N матрицы в последовательность выходов Mo -by- N матрицы, где Mo - размер выходного кадра, заданный вами в параметре Delay line size. В зависимости от того, больше ли Mo, меньше или равно размеру входного кадра, Mi, выходные системы координат могут быть подстыкованы или перекрыты. Блок всегда выполняет основанную на кадрах обработку и отбрасывает каждый из N входных каналов независимо.

Когда Mo > Mi, выход системы координат перекрытия является различием между выходом и размером входного кадра, Mo - Mi. Когда Mo < Mi, выход подстыкован; блок Delay Line отбрасывает первые Mi - Mo выборки каждого входного кадра так, чтобы только последние Mo выборки были буферизованы в соответствующую выходную систему координат. Когда Mo = Mi, выходные данные идентичны входным данным, но задерживаются задержкой блока. Из-за задержки блока выходы всегда задерживаются на одну систему координат, значения которого вы задаете в параметре Initial conditions (см. «Начальные условия »).

Период выхода системы координат равен периоду входного кадра (Tfo = Tfi). Выходной период выборки, Tso, поэтому равен Tfi/ Mo, или эквивалентно Tsi (Mi/ Mo)

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

Обратите внимание, что первый выход блока в примере выше является нулями; это связано с тем, что параметр Initial Conditions установлен в нуль.

Начальные условия

Буфер блока Линия инициализируется до значения, заданного параметром Initial conditions. Блок выводит этот буфер на первом шаге симуляции (t = 0). Когда выход блока является вектором, Initial conditions может быть вектором того же размера или скалярным значением, которое должно быть повторено во всех элементах исходного выхода. Когда выход блока является матрицей, Initial conditions может быть матрицей того же размера, вектором (длиной, равной количеству строк матрицы), который будет повторен во всех столбцах исходного выхода, или скаляром, который будет повторен во всех элементах исходного выхода.

Примеры

В следующей ex_delayline_ref2 модели блок отбивает двухканальный вход с Delay line size 3.

Первая выходная система координат в этом примере обусловлена задержкой блока Delay Line; это все нули, потому что параметр Initial conditions установлен в ноль. Поскольку размер входного кадра 4 больше, чем выходы формата кадра 3, только последние три выборки в каждом входном кадре распространяются на соответствующие выходы системы координат. Периоды кадра ввода и вывода одинаковы, и период выходной выборки равен Tsi (Mi/ Mo), или 4/3 период входной выборки.

Параметры

Delay line size

Задайте количество строк в выходной матрице, M o.

Initial conditions

Задайте значение начального выхода блока. Когда блок выводит вектор, Initial conditions может быть вектором того же размера или скалярным значением, которое должно быть повторено во всех элементах начального выхода. Когда блок выводит матрицу, Initial conditions может быть матрицей того же размера, вектором (длиной, равной количеству строк матрицы), который будет повторен во всех столбцах исходного выхода, или скаляром, который будет повторен во всех элементах исходного выхода.

Allow direct feedthrough

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

Show En_Out port for selectively enabling output

При установке этого флажка на значке блока появляется En_Out порт. Этот блок использует циклический буфер внутри, хотя выход линейный. Это означает, что для допустимого выхода данные из кольцевого буфера должны быть линеаризированы. Порт En_Out определяет, нужно ли вычислять допустимый выход на основе значения его Boolean вход. Если входное значение для En_Out порта 1выход блока линеаризирован и, таким образом, действителен. В противном случае выход не линеаризируется и является недопустимым. Это позволяет блоку быть более эффективным, когда выход выделенной линии задержки не требуется в каждом шаге расчета.

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

Hold previous value when the output is disabled

Этот параметр появляется и применяется только при выборе параметра Show En_Out port for selectively enabling output. Используйте этот параметр, чтобы задать выход блока в те временные шаги, когда буфер внутреннего состояния не линеаризируется, чтобы вывести допустимые данные.

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

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

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

Вход

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

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

  • Фиксированная точка (со знаком и без знака)

  • Булев

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

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

Выход

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

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

  • Фиксированная точка (со знаком и без знака)

  • Булев

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

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

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

.

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

См. также

Блоки

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