dvbrcs2TurboEncode

Закодируйте DVB-RCS2-compliant турбокоды

    Описание

    пример

    code = dvbrcs2TurboEncode(msg,r,permparams) кодирует сообщение msg при помощи Цифрового телевидения Второе поколение Возвращают Канал по Спутнику (DVB-RCS2) стандартно-совместимый бинарный дуэтом турбо энкодер, как задано в Разделе ETSI EN 301 545-2 V1.2.1 7.3.5.1 [1]. r скорость кода и permparams задает параметры управления сочетанием что функциональное использование, чтобы чередовать входной сигнал. Выведите code содержит сообщение DVB-RCS2-encoded.

    Примеры

    свернуть все

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

    Задайте длину системы координат, скорость кода и параметры управления сочетанием.

    frameLen = 40*8;           % Payload length in bits
    r = "3/4";
    permParams = [17 9 5 14 1];

    Сгенерируйте вектор-столбец случайных двоичных данных.

    msg = randi([0 1],frameLen,1);

    Закодируйте сообщение при помощи турбо энкодера DVB-RCS2.

    code = dvbrcs2TurboEncode(msg,r,permParams);

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

    Задайте длины системы координат, скорости кода и параметры управления сочетанием.

    frameLen = [10*8 100*8 49*8];     % Payload length in bits
    r = {'1/3','1/2','2/3'};
    permParams = [31 1 3 4 2];

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

    % Initialize output as a 3-by-1 cell array
    code = cell(length(r),1);
    for frmIdx = 1:length(frameLen)
        msg = randi([0 1],frameLen(frmIdx),1);
        code{frmIdx} = dvbrcs2TurboEncode(msg,r{frmIdx},permParams);
    end

    Входные параметры

    свернуть все

    Входной сигнал в виде вектор-столбца с бинарным знаком. Длина этого вектор-столбца должна быть в области значений [1, 65,535] байтами.

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

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

    • "1/3"

    • "1/2"

    • "2/3"

    • "3/4"

    • "4/5"

    • "5/6"

    • "6/7"

    • "7/8"

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

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

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

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

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

    свернуть все

    Сообщение DVB-RCS2-encoded, возвращенное как вектор-столбец с бинарным знаком. Тип данных code то же самое как тот из входа msg.

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

    Ссылки

    [1] EN 301 545-2 - V1.2.1. Цифровое телевидение (DVB); DVB Второго поколения Интерактивная Спутниковая система (DVB-RCS2); Часть 2: Нижние уровни для Спутникового стандарта (etsi.org).

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

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

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

    Функции

    Объекты

    Введенный в R2021b