getTurboIOIndices

Вычислите выходные индексы для турбокодирования

    Описание

    Используйте getTurboIOIndices, чтобы сгенерировать выходные индексы для comm.TurboEncoder и входные индексы для comm.TurboDecoder и Системные объекты.

    indices=getTurboIOIndices(blklen,N,mlen) вычисляет индексы для заданной длины входного блока, blklen, количество выхода потоков, N, и длину памяти, mlen, относительно полностью закодированного выхода. В этом режиме второй перемеженный систематический битовый поток прокалывается. N и mlen соответствуют строения составляющего кодера для comm.TurboEncoder и comm.TurboDecoder Системные объекты.

    пример

    indices=getTurboIOIndices(blklen,N,mlen,'LTE') вычисляет LTE-подобные выходные индексы, как задано в TS 36.212. Для LTE второй систематический битовый поток прокалывается, и конечные биты переупорядочиваются.

    Примеры

    свернуть все

    Создайте выход индексы для использования с турбо- энкодером System Object™.

    Инициализируйте вход параметры для составляющей турбонаддува энкодера строения, имеющей 2 потока, 3 регистра и длину блока 64. Создайте вектор выходных индексов. Отображение количества хвостовых бит и значений хвостовых бит.

    blklen = 64; % Block length
    N = 2;       % Number of streams
    mlen = 3;    % Number of registers
    firsttailbit = blklen * (2*N - 1) + 1;
    outindices = getTurboIOIndices(blklen,N,mlen);
    numtailbits = length(outindices(firsttailbit:end)')
    numtailbits = 9
    
    tailbits = outindices(firsttailbit:end)'
    tailbits = 1×9
    
       257   258   260   261   262   264   265   266   268
    
    

    Для сравнения сохраните те же вход настройки длины блока, количества потоков и количества регистров, но создайте набор векторов LTE-подобных выходов индексов путем добавления 'LTE' в качестве четвертого входного параметра.

    outindices = getTurboIOIndices(blklen,N,mlen,'LTE');

    Отображение количества хвостовых бит и значений хвостовых бит. LTE-подобные выходные индексы имеют упорядоченное расположение, указанный в TS 36.212, и включают хвостовые биты для всех выходных потоков.

    numtailbitsLTE = length(outindices(firsttailbit:end)')
    numtailbitsLTE = 12
    
    tailbitsLTE = outindices(firsttailbit:end)'
    tailbitsLTE = 1×12
    
       257   258   261   262   265   266   259   260   263   264   267   268
    
    

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

    свернуть все

    Длина блока, заданная как неотрицательное целое число.

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

    Количество выхода потоков, заданное как целое число, больше 1.

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

    Количество регистров, заданное в виде положительного целого числа.

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

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

    свернуть все

    Выход индексы, возвращенные как вектор-столбец из положительных целых чисел.

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

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

    .

    См. также

    Объекты

    Введенный в R2021a
    Для просмотра документации необходимо авторизоваться на сайте