Задержите строку

Перебуферная последовательность входных параметров

Библиотека

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

dspbuff3

Описание

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

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

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

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

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

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

Буфер блока Delay Line инициализируется к значению, заданному параметром 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

Для просмотра документации необходимо авторизоваться на сайте