Find Delay

Найдите задержку между двумя сигналами

  • Библиотека:
  • Блоки Communications Toolbox/Utility

  • Find Delay block

Описание

Блок Find Delay находит задержку между сигналом и самой отложенной, и, возможно, искаженной версией. Это полезно, когда вы хотите сравнить переданный и принятый сигнал, чтобы найти вероятность битовой ошибки, но не знаете задержки в принятом сигнале. Этот блок принимает вектор-столбец или матричный входной сигнал. Для матричного входа блок выводит вектор-строку и находит задержку в каждом канале матрицы независимо. Смотрите Задержки для получения дополнительной информации о задержках сигнала.

Порты

Вход

расширить все

Исходный опорный сигнал, заданный как вектор или матрица. Размерности и шаги расчета sRef и sDel должны совпадать.

Типы данных: double

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

Типы данных: double

Выход

расширить все

Порт выхода, маркированный delay, выходами задержку в модули выборок.

Для матричного входа выход является вектором-строкой и находит задержку в каждом канале матрицы независимо

Выход задержки на неотрицательное целое число меньше Correlation window length.

Типы данных: double

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

Зависимости

Этот выходной порт становится видимым только при Include "change signal" output port выбран.

Типы данных: Boolean

Параметры

расширить все

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

Когда Correlation window length увеличивается, надежность вычисленной задержки также увеличивается. Однако время вычислений для вычисления задержки также увеличивается.

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

Выбор этой опции заставляет блок прекратить вычисление задержки после вычисления того же значения задержки для заданного количества выборок.

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

Зависимости

Это поле становится видимым только при выборе Disable recurring updates.

Характеристики блоков

Типы данных

double | enumerated | целое число[a] | single

Многомерные сигналы

no

Сигналы переменного размера

no

[a] Только целые числа со знаком.

Подробнее о

расширить все

Совет

  • Установите Correlation window length достаточно большим, чтобы вычисленная задержка в конечном счете стабилизировалась при постоянном значении. Когда это происходит, сигнал от опционального chg выходной порт стабилизируется при постоянном значении нуля. Если вычисленная задержка не является постоянной, вы должны увеличить Correlation window length. Если увеличенное значение Correlation window length превышает длительность симуляции, то вы также должны увеличить продолжительность симуляции соответственно. Если вы можете примерно оценить задержку, то Correlation window length выдаст стабильную оценку задержки в четыре раза больше этого значения.

  • Если перекрестная корреляция между этими двумя сигналами широкая, то Correlation window length значение должно быть намного больше ожидаемой задержки, или же алгоритм может стабилизироваться с неправильным значением. Для примера сигнал CPM имеет широкую автокорреляцию, поэтому он имеет широкую перекрестную корреляцию с задержанной версией себя. В этом случае значение Correlation window length должно быть намного больше ожидаемой задержки.

  • Если блок вычисляет задержку, которая больше 75 процентов от Correlation window length, сигнал sRef вероятно, задерживается относительно сигнала sDel. В этом случае необходимо переключить сигнальные линии, ведущие в два входных порта.

  • Можно сделать так, чтобы блок Find Delay остановил обновление задержки после вычисления того же значения задержки для заданного количества выборок. Для этого выберите Disable recurring updates и введите положительное целое число в поле Number of constant delay outputs to disable updates. Для примера, если вы задаете Number of constant delay outputs to disable updates 20блок прекратит перерасчет и обновление задержки после вычисления того же значения 20 время наследования. Отключение повторяющихся обновлений заставляет симуляцию запускаться быстрее после того, как происходит целевое количество постоянных задержек.

Алгоритмы

Блок Find Delay находит задержку путем вычисления перекрестных корреляций первого сигнала со сдвинутыми во времени версиями второго сигнала и затем нахождения индекса, при котором перекрестная корреляция максимизируется.

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

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

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