convintrlv

Переставьте символы с помощью сдвиговых регистров

Синтаксис

intrlved = convintrlv(data,nrows,slope)
[intrlved,state] = convintrlv(data,nrows,slope)
[intrlved,state] = convintrlv(data,nrows,slope,init_state)

Описание

intrlved = convintrlv(data,nrows,slope) переставляет элементы в data при помощи набора nrows внутренние сдвиговые регистры. Значением задержки k-ого сдвигового регистра является (k-1)*slope, где k = 1, 2, 3... nrows. Прежде чем функция начинает обрабатывать данные, она инициализирует все сдвиговые регистры нулями. Если data матрица с несколькими строками и столбцами, функциональные процессы столбцы независимо.

[intrlved,state] = convintrlv(data,nrows,slope) возвращает структуру, которая содержит конечное состояние сдвиговых регистров. state.value хранилища любые непереключенные символы. state.index индекс следующего регистра, который будет смещен.

[intrlved,state] = convintrlv(data,nrows,slope,init_state) инициализирует сдвиговые регистры символами, содержавшимися в init_state.value и направляет первый вводимый символ к сдвиговому регистру, на который ссылается init_state.index. Структура init_state обычно state выведите от предыдущего вызова до этой той же функции, и не связано с соответствующим deinterleaver.

Примеры

Пример ниже показов это convintrlv особый случай более общей функции muxintrlv. Обе функции приводят к тем же числовым результатам.

x = randi([0 1],100,1); % Original data
nrows = 5; % Use 5 shift registers
slope = 3; % Delays are 0, 3, 6, 9, and 12.
y = convintrlv(x,nrows,slope); % Interleaving using convintrlv.
delay = [0:3:12]; % Another way to express set of delays
y1 = muxintrlv(x,delay); % Interleave using muxintrlv.
isequal(y,y1)

Выход ниже показов, что y, полученное использование convintrlv, и y1, полученное использование muxintrlv, то же самое.

ans =

     1

Другой пример с помощью этой функции имеет в действительности Задержки на Восстановлении Convolutionally Чередованные Данные Используя MATLAB.

Пример на muxdeintrlv страница с описанием иллюстрирует, как использовать state выведите и init_state введите с этой функцией; процесс аналогичен для этой функции.

Ссылки

[1] Heegard, Крис, и Стивен Б. Викер, турбокодирование, Бостон, Kluwer академические издатели, 1999.

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

| |

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