exponenta event banner

rebuffer_delay

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

Синтаксис

d = rebuffer_delay(f,n,v)
d = rebuffer_delay(f,n,v,'mode')

Описание

d = rebuffer_delay(f,n,v) возвращает задержку в выборках, введенную блоком Buffer или Unbuffer в многозадачных операциях.

d = rebuffer_delay(f,n,v,'mode') возвращает задержку в выборках, введенную блоком Buffer или Unbuffer в указанном режиме задания.

Входные аргументы

f

Размер кадра ввода в блок буфера или разбиения.

n

Размер выходного буфера. Укажите одно из следующих значений:

  • Значение параметра Output buffer size, если вычисляется задержка, введенная блоком Buffer.

  • 1, если вы вычисляете задержку, введенную блоком Unbuffer.

v

Количество перекрытий буфера. Укажите одно из следующих значений:

  • Значение параметра Buffer overlap, если вычисляется задержка, введенная блоком Buffer.

  • 0, если вы вычисляете задержку, введенную блоком Unbuffer.

'mode'

Режим задания модели. Укажите одну из следующих опций.

  • 'singletasking'

  • 'multitasking'

По умолчанию: 'multitasking'

Примеры

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

  1. Откройте модель, содержащую блок буфера. Для этого примера откройте ex_buffer_tut4 путем ввода ex_buffer_tut4 в командной строке MATLAB ®.

  2. Дважды щелкните блок «Буфер», чтобы открыть маску блока. Убедитесь, что установлены следующие параметры:

    • Размер выходного буфера = 3

    • Перекрытие буфера = 1

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

    Исходя из этих настроек, два из требуемых входных данных rebuffer_delay функции следующие:

    • n = 3

    • v = 1

  3. Чтобы определить размер кадра входного сигнала в блок «Буфер», откройте маску блока «Сигнал из рабочей области». Убедитесь, что установлены следующие параметры:

    • Сигнал = sp_examples_src

    • Время выборки = 1

    • Выборки на кадр = 4

    Потому что выборки на кадр = 4, вы знаете f входные данные для rebuffer_delay функция - 4.

  4. После проверки значений всех входных данных rebuffer_delay определите задержку, которую блок Buffer вводит в эту многозадачную модель. Для этого введите в командной строке MATLAB следующее:

    d = rebuffer_delay(4,3,1)
    
    d =
         8
    

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

  1. Откройте модель, содержащую блок Unbuffer. Для этого примера откройте ex_unbuffer_ref1 путем ввода ex_unbuffer_ref1 в командной строке MATLAB.

  2. Чтобы определить размер кадра ввода в блок Буфер (Buffer), откройте маску блока Сигнал из рабочего пространства (Signal From Workspace), дважды щелкнув блок в модели. Убедитесь, что установлены следующие параметры:

    • Сигнал = sp_examples_src

    • Время выборки = 1

    • Выборки на кадр = 3

    Потому что выборки на кадр = 3, вы знаете f входные данные для rebuffer_delay функция - 3.

  3. Используйте rebuffer_delay для определения величины задержки, которую блок Unbuffer вводит в эту многозадачную модель. Чтобы вычислить задержку, введенную блоком Unbuffer, используйте f = 3, n = 1 и v = 0.

    d = rebuffer_delay(3,1,0)
    
    d =
         3
    

Подробнее

свернуть все

Многозадачность

При запуске модели в MultiTasking Simulink ® обрабатывает группы блоков с одинаковым приоритетом выполнения на каждом этапе моделирования на основе приоритета задачи. Многозадачный режим помогает создавать допустимые модели реальных многозадачных систем, в которых разделы модели представляют параллельные задачи. Этим параметром управляет параметр Рассматривать каждую дискретную скорость как отдельный параметр задачи на панели Решатель (Simulink) диалогового окна Параметры конфигурации (Configuration Parameters).

Singletasking

При запуске модели в SingleTasking Simulink обрабатывает все блоки на каждом этапе моделирования вместе. Этим параметром управляет параметр Рассматривать каждую дискретную скорость как отдельный параметр задачи на панели Решатель (Simulink) диалогового окна Параметры конфигурации (Configuration Parameters).

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