dvbrcs2RecoveryConfig

Параметры конфигурации приемника для DVB-RCS2

    Описание

    dvbrcs2RecoveryConfig объект создает Второе поколение Цифрового телевидения, Возвращают Канал по Спутнику (DVB-RCS2) объект настройки восстановления. Восстановите модуль данных о протоколе (PDU) системы координат с полученной формы волны DVB-RCS2 при помощи свойств объектов.

    Создание

    Описание

    пример

    cfgrcs2 = dvbrcs2RecoveryConfig создает объект настройки восстановления DVB-RCS2 по умолчанию.

    пример

    cfgrcs2 = dvbrcs2RecoveryConfig(Name,Value) Свойства наборов с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в кавычки. Например, dvbrcs2RecoveryConfig('IsCustomWaveform',true) восстанавливает пользовательскую форму волны DVB-RCS2 с заданными значениями свойств.

    Свойства

    развернуть все

    Формат передачи в виде одного из этих значений.

    • "TC-LM" — Турбокоды с линейной модуляцией (TC-LM)

    • "SS-TC-LM" — Распространите турбокоды спектра с линейной модуляцией (SS-TC-LM)

    Типы данных: char | string

    Структурируйте пакетный тип контента модуля данных о протоколе (PDU) в виде "traffic", "logon", или "control".

    Типы данных: char | string

    Пользовательский индикатор формы волны в виде одного из этих значений.

    • 0 ложь) — Используют эту опцию, чтобы демодулировать комплексные выборки синфазной квадратуры (IQ) от заданной стандартом ссылочной формы волны.

    • 1 TRUE) — Используют эту опцию, чтобы демодулировать комплексные выборки IQ от пользовательской формы волны.

    Типы данных: логический

    Ссылочный ID формы волны в виде одной из этих опций.

    • Целое число в области значений [1, 22] или [32, 49] — Использование эта опция, когда вы устанавливаете TransmissionFormat свойство к "TC-LM".

    • Целое число в области значений [1, 19] — Использование эта опция, когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM".

    На основе набора значений для TransmissionFormat и WaveformID свойства, этот объект считает параметры приемника по данным ETSI EN 301 Таблицей a-1 и a-2 [1] приложения A 545-2.

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к false.

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

    Распространение фактора в виде целого числа в области значений [2, 16].

    Зависимости

    Чтобы включить это свойство, установите TransmissionFormat свойство к "SS-TC-LM" и IsCustomWaveform свойство к true.

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

    Разорвите длину в виде целого числа в области значений [7, 25,233,405]. Эта длина включает преамбулу, постиноходь и экспериментальную сумму, в дополнение к символам полезной нагрузки.

    Когда вы устанавливаете TransmissionFormat свойство к "TC-LM", единица пакетной длины является символами. Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM", единица пакетной длины является микросхемами.

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true.

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

    Схема Mapping в виде одного из этих значений.

    • "pi/2-BPSK"

    • "QPSK"

    • "8PSK"

    • "16QAM"

    Зависимости

    Чтобы включить это свойство, установите TransmissionFormat свойство к "TC-LM" и IsCustomWaveform свойство к true.

    Примечание

    Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM", единственное допустимое значение MappingScheme "pi/2-BPSK".

    Типы данных: char | string

    Скорость кода в виде одного из этих значений.

    • "2/3", "3/4", "4/5", "5/6", "6/7", или "7/8" — Используйте одно из этих значений, когда вы установите MappingScheme свойство к "8PSK".

    • "3/4", "4/5", "5/6", "6/7", или "7/8" — Используйте одно из этих значений, когда вы установите MappingScheme свойство к "16QAM".

    Все скорости кода применимы если MappingScheme свойство установлено в "pi/2-BPSK" или "QPSK".

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true.

    Типы данных: char | string

    Параметры управления сочетанием, что использование dvbrcs2RecoveryConfig, чтобы сгенерировать турбо энкодер interleaver индексы в виде вектора с пятью элементами в порядке: P, Q 0, Q 1, Q 2, и Q 3. P должен быть в области значений [9, 255], и Q 0, Q 1, Q 2, и Q 3 должен быть в области значений [0, 15].

    Чтобы сгенерировать уникальные interleaver индексы, значение P должно быть взаимно-простым к PayloadLengthInBytes*4.

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true.

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

    Длина преамбулы в виде целого числа в области значений [0, 255].

    Когда вы устанавливаете TransmissionFormat свойство к "TC-LM", единица длины преамбулы является символами. Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM", единица длины преамбулы является микросхемами.

    Преамбула этой заданной длины снабжается префиксом к символам полезной нагрузки.

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true.

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

    Длина постиноходи в виде целого числа в области значений [0, 255].

    Когда вы устанавливаете TransmissionFormat свойство к "TC-LM", единица длины постиноходи является символами. Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM", единица длины постиноходи является микросхемами.

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

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true.

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

    Экспериментальный период в виде целого числа в области значений [0, 4095]. Значение 0 указывает, что никакие пилоты не введены.

    Когда вы устанавливаете TransmissionFormat свойство к "TC-LM", модуль экспериментального периода является символами. Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM", модуль экспериментального периода является микросхемами.

    Экспериментальный период представляет длину последовательности от первого символа экспериментального блока к первому символу следующего экспериментального блока в символах или микросхемах.

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true.

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

    Экспериментальная длина блока в виде целого числа в области значений [1, 255].

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

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true и PilotPeriod свойство до положительного целого числа.

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

    Общие экспериментальные символы или вносят принятую форму волны в виде одной из этих опций.

    • Целое число в области значений [0, 255] — Использование эта опция, когда вы устанавливаете TransmissionFormat свойство к "TC-LM".

    • Целое число в области значений [0, 65,535] — Использование эта опция, когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM".

    Когда вы устанавливаете TransmissionFormat свойство к "TC-LM", модуль экспериментальной суммы является символами. Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM", модуль экспериментальной суммы является микросхемами.

    Зависимости

    Чтобы включить это свойство, установите IsCustomWaveform свойство к true и PilotPeriod свойство до положительного целого числа.

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

    Скремблирование полинома в виде одной из этих опций.

    • 16-битный вектор из двоичных значений от старшего значащего бита (MSB), z16, к младшему значащему биту (LSB), z1. Каждый элемент этого вектора соответствует коэффициенту z и его экспоненты, заданной от MSB до LSB. Для получения дополнительной информации на бинарном представлении, смотрите ETSI EN 301 Раздел 545-2 7.3.7.1.5.

    • Числовой вектор, содержащий экспоненты z для ненулевых терминов полинома в порядке убывания.

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

    Коэффициент z0 всегда 1.

    Значение по умолчанию этого полинома скремблирования указывает на последовательность скремблирования значения по умолчанию, обеспеченную в стандарте. Когда вы устанавливаете TransmissionFormat свойство к "SS-TC-LM" и IsCustomWaveform свойство к false, последовательность скремблирования значения по умолчанию используется, чтобы дескремблировать полученную ссылочную форму волны.

    Зависимости

    Чтобы включить это свойство, установите TransmissionFormat свойство к "SS-TC-LM" и IsCustomWaveform свойство к true.

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

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

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

    • 16-битный вектор из двоичных значений от MSB (z16) к LSB (z1) — Используют эту опцию, чтобы установить начальное условие каждой ячейки сдвигового регистра к соответствующему элементу в этом векторе.

    Зависимости

    Чтобы включить это свойство, установите TransmissionFormat свойство к "SS-TC-LM" и ScramblingPolynomial свойство к значению кроме значения по умолчанию.

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

    Количество декодирования итераций турбо декодера DVB-RCS2 в виде положительного целого числа.

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

    Это свойство доступно только для чтения.

    Длина полезной нагрузки в байтах, повторно настроенных как положительное целое число. Эта длина представляет турбо декодер DVB-RCS2 продолжительность выхода.

    Используйте это свойство выход, чтобы выбрать допустимое значение для первого элемента PermutationParameters свойство (то есть, P).

    PayloadLengthInBytes*4 и P должны быть co-начала.

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

    Функции объекта

    развернуть все

    dvbrcs2BitRecoverВосстановите биты для формы волны DVB-RCS2

    Примеры

    свернуть все

    Создайте объект настройки восстановления DVB-RCS2.

    Создайте и затем установите свойства объекта.

    cfgrcs2 = dvbrcs2RecoveryConfig;
    cfgrcs2.TransmissionFormat = "SS-TC-LM";
    cfgrcs2.ContentType = "control";
    cfgrcs2.WaveformID = 20;
    cfgrcs2.NumDecodingIterations = 6;

    Отобразите свойства объекта DVB-RCS2.

    disp(cfgrcs2)
      dvbrcs2RecoveryConfig with properties:
    
           TransmissionFormat: "SS-TC-LM"
                  ContentType: "control"
             IsCustomWaveform: 0
                   WaveformID: 20
    
       Coding and Modulation:
        NumDecodingIterations: 6
    
       Unique Word:
        No properties.
    
       Read-only:
        No properties.
    

    Восстановите PDU системы координат для формы волны ссылки DVB-RCS2.

    Установите свойства Системы генератора формы волны DVB-RCS2 object™.

    wg = dvbrcs2WaveformGenerator;
    wg.TransmissionFormat = "SS-TC-LM";
    wg.WaveformID = 7;
    wg.SamplesPerSymbol = 2;

    Сгенерируйте PDU системы координат.

    framePDU = randi([0 1],wg.FramePDULength,1);

    Сгенерируйте пакетные символы DVB-RCS2-based.

    txWaveform = wg(framePDU);

    Добавьте аддитивный белый Гауссов шум (AWGN) в сгенерированную форму волны.

    sps = wg.SamplesPerSymbol; 
    EsNodB = 1;
    snrdB = EsNodB - 10*log10(sps);
    rxIn = awgn(txWaveform,snrdB,"measured");

    Создайте и затем сконфигурируйте объект настройки восстановления DVB-RCS2.

    cfg = dvbrcs2RecoveryConfig;
    cfg.TransmissionFormat = wg.TransmissionFormat;
    cfg.WaveformID = wg.WaveformID;

    Создайте повышенный фильтр приемника косинуса.

    rxFilter = comm.RaisedCosineReceiveFilter( ...
                     'RolloffFactor',0.2, ...
                     'InputSamplesPerSymbol',sps, ...
                     'DecimationFactor',sps);
    span = rxFilter.FilterSpanInSymbols;

    Примените согласованную фильтрацию и удалите задержку фильтра.

    filtOut = rxFilter([rxIn; ...
                   complex(zeros(span/2*sps,1))]);
    rxSymb = filtOut(span+1:end);

    Восстановите пользовательские пакеты. Отобразите состояние контроля циклическим избыточным кодом (CRC) PDU системы координат и количества битовых ошибок.

    [rxOut,pduErr] = dvbrcs2BitRecover(rxSymb,cfg,10^(-EsNodB/10));
    fprintf("Erroneous frame PDU = %d\n", pduErr)
    Erroneous frame PDU = 0
    
    fprintf("Number of bit errors = %d\n", sum(framePDU~=rxOut))
    Number of bit errors = 0
    

    Ссылки

    [1] EN 301 545-2 V1.2.1 стандарта ETSI (2014-11). Цифровое телевидение (DVB); второе поколение интерактивные спутниковые системы (DVB-RCS2); часть 2: нижние уровни для спутникового стандарта.

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

    Генерация кода C/C++
    Генерация кода C и C++ с помощью MATLAB® Coder™.

    Смотрите также

    Функции

    Объекты

    Введенный в R2021b