Задержите дискретное время, введенное конкретным количеством выборок или систем координат
Примечание
Блок Delay из dspsigops
библиотека была заменена блоком Delay (Simulink) из библиотеки Discrete в Simulink®. Существующие экземпляры dspsigops
Блок Delay будет заменен блоком Simulink Delay, когда будет точное совпадение в функциональности между двумя блоками. Для новых моделей используйте блок Delay из библиотеки Discrete в Simulink.
Операции сигнала
dspsigops
Блок Delay задерживает дискретное время, введенное количеством выборок, или структурирует заданный в параметрах Delay и Delay units. Значение Delay должно быть целочисленным значением, больше, чем или равный нулю. При вводе значение нуля для параметра Delay, любые начальные условия, которые вы можете ввести, не оказывают влияния на выход.
Блок Delay позволяет вам устанавливать начальные условия сигнала, который задерживается. Начальные условия должны быть числовыми.
Когда вы устанавливаете параметр Input processing на Columns as channels (frame based)
, блок обрабатывает каждый столбец M-by-N входная матрица как независимый канал. Блок задерживает каждый канал входа, как задано параметром Delay.
Параметр Delay может быть скалярным целым числом, которым блок одинаково задерживает все каналы или вектор, длина которого равна количеству каналов.
Существует четыре различных варианта для начальных условий. Начальные условия могут быть тем же самым или отличающийся для каждого канала. Они могут также быть постоянными или различными вдоль каждого канала. Смотрите раздел Frame-Based Processing Examples для получения дополнительной информации.
Когда вы устанавливаете параметр Input processing на Elements as channels (sample based)
, блок обрабатывает каждый элемент входного массива N-D как независимый канал. Таким образом общее количество каналов во входе равно продукту входных размерностей. Размерность выхода совпадает с размерностью входа.
Параметр Delay может быть скалярным целым числом, которым одинаково можно задержать все каналы или массив N-D тех же размерностей как входной массив, содержа неотрицательные целые числа, которые задают количество демонстрационных интервалов, чтобы задержать каждый канал входа.
Существует четыре различных варианта для начальных условий. Начальные условия могут быть тем же самым или отличающийся для каждого канала. Они могут также быть тем же самым или отличающийся в канале. Смотрите раздел Sample-Based Processing Examples для получения дополнительной информации.
Блок Delay сбрасывает задержку каждый раз, когда это обнаруживает событие сброса в дополнительном Rst
порт. Шаг расчета сброса должен быть положительным целочисленным кратным входной шаг расчета.
Событие сброса задано параметром Reset port и может быть одним из следующего:
None
отключает Rst
порт.
Rising edge
инициировал операцию сброса когда Rst
введите выполняет одно из следующих действий:
Повышения от отрицательной величины до положительного значения или нуля
Повышения от нуля до положительного значения, где повышение не является продолжением повышения от отрицательной величины, чтобы обнулить (см. следующую фигуру),
Falling edge
инициировал операцию сброса когда Rst
введите выполняет одно из следующих действий:
Падения от положительного значения до отрицательной величины или нуля
Падения от нуля до отрицательной величины, где падение не является продолжением падения от положительного значения, чтобы обнулить (см. следующую фигуру),
Either edge
инициировал операцию сброса когда Rst
входом является Rising edge
или Falling edge
(аналогичный описанному ранее).
Non-zero sample
инициировал операцию сброса в каждом шаге расчета что Rst
вход не является нулем.
Примечание
Когда рабочие симуляции в Многозадачном режиме Simulink, сигналы сброса имеют задержку с одной выборкой. Поэтому, когда блок обнаруживает событие сброса, существует задержка с одной выборкой при скорости порта сброса, прежде чем блок применит сброс. Для получения дополнительной информации о задержке и режимах управления задачами Simulink, смотрите Избыточную Алгоритмическую Задержку (Определяющий задачу для Задержки) и Основанное на времени Планирование и Генерация кода (Simulink Coder).
Этот блок поддерживает Simulink виртуальные шины.
Существует четыре различных варианта для начальных условий. Начальные условия могут быть тем же самым или отличающийся для каждого канала. Они могут также быть постоянными или различными вдоль каждого канала. Следующие разделы описывают поведение блока для каждого из этих четырех случаев:
Введите скалярное значение для начальных условий. Это значение используется в качестве постоянного начального значения условия для каждого из каналов.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Columns as channels (frame based)
.
Вы хотите начальные условия своего сигнала с тремя каналами быть идентичными и нуль для первой системы координат:
Установите параметр Delay (frames) на 1
.
Очистите Specify different initial conditions for each channel и флажки Specify different initial conditions within a channel.
Установите параметр Initial conditions на скалярное значение 0
.
Выход блока задержки
0, скалярное начальное значение условия, используется через каналы и в каналах для первой системы координат. Этой системой координат является выход в нуле шага расчета.
Начальные условия должны быть вектором из длины N, где N ≥ 1. N также равен количеству каналов в вашем сигнале. Эти начальные значения условия используются в качестве постоянного начального значения условия для каждого из каналов.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Columns as channels (frame based)
.
Вы хотите начальные условия своего сигнала с тремя каналами быть [0 10 20]
для первой системы координат:
Установите параметр Delay (frames) на 1
.
Установите флажок Specify different initial conditions for each channel.
Снимите флажок Specify different initial conditions within a channel.
Установите параметр Initial conditions на [0 10 20]
.
Выход блока задержки
Начальный вектор условия расширяется, чтобы создать систему координат, которая выводится в нуле шага расчета. Различные начальные условия используются для каждого канала, но то же начальное значение условия используется с каналом.
В этом случае параметр Delay может быть скалярным целым числом, которым одинаково можно задержать все каналы или вектор, длина которого равна количеству каналов. Все значения этого вектора должны быть равными.
Введите начальные условия как вектор. Эти значения используются в качестве начального значения условия вдоль каждого из каналов, которые будут задержаны. Начальный вектор условия должен иметь длину, равную значению параметра Delay (frames), умноженного на длину системы координат. Например, если вы хотите задержать свой сигнал двумя системами координат с длиной системы координат два и начальное значение условия 3, введите свой начальный вектор условия как [3 3 3 3]
.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Columns as channels (frame based)
.
Вы хотите начальные условия своего сигнала с тремя каналами быть тем же самым вдоль каждого из каналов, которые будут задержаны:
Установите параметр Delay (frame) на 1
.
Снимите флажок Specify different initial conditions for each channel.
Установите флажок Specify different initial conditions within a channel.
Установите параметр Initial conditions на [10 20 30]
.
Выход блока задержки
Начальный вектор условия задает начальные значения условия в каждом из трех каналов. Те же начальные условия используются для каждого канала, но различные начальные значения условия используются с каналом.
Введите массив ячеек для своих начальных значений условия. Или, когда у вас есть скалярное значение задержки, можно ввести начальные условия как матрицу.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Columns as channels (frame based)
.
Вы хотите начальные условия своего сигнала с тремя каналами отличаться для каждого канала и вдоль каждого канала.
Установите параметр Delay (frames) на 1
.
Выберите Specify different initial conditions for each channel и флажки Specify different initial conditions within a channel.
Установите параметр Initial conditions на любой [10 20 30; 40 50 60; 70 80 90]
или {[10 40 70];[20 50 80];[30 60 90]}
. Каждая ячейка массива ячеек представляет задержку вдоль одного канала.
Независимо от того, используете ли вы матричный или массив ячеек, выход блока задержки
Начальной матрицей условия является выход в нуле шага расчета. Элементы начального массива ячеек условия задают начальные значения условия в каждом канале. Первый элемент, вектор, представляет начальные условия в канале 1. Второй элемент, вектор, представляет начальные условия в канале 2 и так далее. Различные начальные условия используются для каждого канала и в каналах.
Существует четыре различных варианта для начальных условий. Начальные условия могут быть тем же самым или отличающийся для каждого канала. Они могут также быть тем же самым или отличающийся вдоль каждого канала. Следующие разделы описывают поведение блока для каждого из этих четырех случаев:
Введите скалярное значение для начальных условий. Это значение используется в качестве постоянного начального значения условия для каждого из каналов.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Elements as channels (sample based)
.
Вы хотите начальные условия своего сигнала с четырьмя каналами быть идентичными и нуль для первых двух выборок:
Установите параметр Delay (samples) на 2
.
Снимите флажки Specify different initial conditions for each channel и Specify different initial conditions within a channel.
Установите параметр Initial conditions на скалярное значение 0
.
Выход блока задержки
0, скалярное начальное значение условия, используется для каждого канала и в каналах. Это - выход в нуле шага расчета и шаге расчета один.
Начальные условия должны быть массивом N-D для входа N-D. Начальные условия должны иметь те же размерности как входные данные. Эти начальные значения условия используются в качестве постоянного начального значения условия для каждого из каналов.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Elements as channels (sample based)
.
Вы хотите начальные условия своего сигнала с четырьмя каналами быть
для первых двух выборок:
Установите параметр Delay (samples) на 2
.
Установите флажок Specify different initial conditions for each channel.
Снимите флажок Specify different initial conditions within a channel.
Установите параметр Initial conditions на [7 9; 11 13]
.
Выход блока задержки
Начальной матрицей условия является выход в нуле шага расчета и шаге расчета один. Различные начальные условия используются для каждого канала; то же начальное значение условия используется в канале.
В этом случае, для основанных на выборке входных параметров N-D, параметр начальных условий должен быть вектором, длина которого равна значению задержки, заданному параметром Delay. Значения в этом векторе используются в качестве начальных значений условия вдоль каждого из каналов, которые будут задержаны.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Elements as channels (sample based)
.
Вы хотите начальные условия своих четырех сигналов канала быть тем же самым вдоль каждого из каналов, которые будут задержаны:
Установите параметр Delay (samples) на 2
.
Снимите флажок Specify different initial conditions for each channel.
Установите флажок Specify different initial conditions within a channel.
Установите параметр Initial conditions на [10 20]
.
Выход блока задержки
Первым элементом вектора начальных условий является выход, для всех каналов, в нуле шага расчета. Вторым элементом вектора начальных условий является выход, для всех каналов, в шаге расчета один. Те же начальные условия используются для каждого канала, но различные начальные значения условия используются в канале.
Введите массив ячеек для своих начальных значений условия. Массив ячеек должен быть одного размера с вашим входным сигналом. Каждая ячейка массива ячеек представляет значения задержки для одного канала и должна быть вектором из размера, равного значению задержки. Если у вас есть векторный или скалярный вход и скалярное значение задержки, можно ввести начальные условия как матрицу.
Например, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Elements as channels (sample based)
.
Вы хотите начальные условия своих двух сигналов канала отличаться для каждого канала и вдоль каждого канала:
Установите параметр Delay (samples) на 2
.
Установите флажки Specify different initial conditions for each channel и Specify different initial conditions within a channel.
Установите параметр Initial conditions на [10 20; 30 40]
.
Выход блока задержки
Первой строкой вектора начальных условий является выход в нуле шага расчета. Второй строкой вектора начальных условий является выход в шаге расчета один. Различные начальные условия используются для каждого канала и в каналах.
Кроме того, предположите, что ваш вход является матрицей, и вы устанавливаете параметр Input processing на Elements as channels (sample based)
.
Вы хотите начальные условия своего двухканального сигнала отличаться для каждого канала и вдоль каждого канала:
Установите параметр Delay (samples) на 2
.
Выберите Specify different initial conditions for each channel и флажки Specify different initial conditions within a channel.
Установите параметр Initial conditions на {[11 15] [12 16]; [13 17] [14 18]}
. Размерности массива ячеек совпадают с размерностями входа. Кроме того, каждый элемент массива ячеек представляет начальные условия в одном канале.
Выход блока задержки
Каждый элемент массива ячеек представляет начальные условия в канале. Первый элемент, вектор, представляет начальные условия в канале 1. Второй элемент, вектор, представляет начальные условия в канале 2 и так далее. Различные начальные условия используются для каждого канала и в каналах.
Задайте, как блок должен обработать вход. Можно установить этот параметр на одну из следующих опций:
Columns as channels (frame based)
— Когда вы выбираете эту опцию, блок обрабатывает каждый столбец входа как отдельный канал.
Elements as channels (sample based)
— Когда вы выбираете эту опцию, блок обрабатывает каждый элемент входа как отдельный канал.
Примечание
Опция Inherit from input (this choice will be removed - see release notes)
будет удален в будущем релизе. Смотрите Основанную на системе координат Обработку в Информации о релизах DSP System Toolbox™ для получения дополнительной информации.
Выберите, хотите ли вы задержать свой вход конкретным количеством Samples
или Frames
. Этот параметр появляется только, когда вы устанавливаете параметр Input processing на Columns as channels (frame based)
.
Смотрите Основанную на выборке Обработку и Основанную на системе координат Обработку для описания какой формат использовать для каждой настройки диалогового окна блока.
Установите этот флажок, когда это необходимо, начальные условия, чтобы варьироваться через каналы. Когда вы не устанавливаете этот флажок, начальные условия являются тем же самым через каналы.
Установите этот флажок, когда это необходимо, начальные условия, чтобы варьироваться в каналах. Когда вы не устанавливаете этот флажок, начальные условия являются тем же самым в каналах.
Введите скаляр, вектор, матрицу или массив ячеек начальных значений условия, в зависимости от вашего выбора для флажков Specify different initial conditions for each channel и Specify different initial conditions within a channel. Смотрите Основанную на выборке Обработку и Основанную на системе координат Обработку для описания какой формат использовать для каждой настройки диалогового окна блока.
Определяет событие сброса, которое заставляет блок сбрасывать задержку. Для получения дополнительной информации смотрите Сброс Задержки.
Плавающая точка двойной точности
Плавающая точка с одинарной точностью
Фиксированная точка (подписанный и без знака)
Булевская переменная
8-, 16-, и 32-битные целые числа со знаком
8-, 16-, и 32-битное беззнаковое целое
dsp.Delay
| Variable Fractional Delay | Unit Delay (Simulink) | Variable Integer Delay (Simulink)