MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем
 

Обработка сигналов и изображений\Communications Toolbox

Список функций CommunicationsToolbox: Низкоуровневые функции помехоустойчивого кодирования и декодирования

  В оглавление \ К следующему разделу \ К предыдущему разделу
ALGINTRLV
Алгебраическое блоковое перемежение

Синтаксис:

intrlvd = algintrlv(data,num,'takeshita-costello',k,h)
intrlvd = algintrlv(data,num,'welch-costas',alph)

Описание:

intrlvd = algintrlv(data,num,'takeshita-costello',k,h)

Переставляет элементы входного массива data, используя таблицу перестановки, полученную алгебраически согласно методу Такешиты-Костелло (Takeshita-Costello). Входной параметр num должен быть равен числу элементов data, если data - вектор, или числом строк в data, если data - матрица. При использовании метода Такешиты-Костелло параметр num должен быть степенью числа 2. Мультипликативный коэффициент k должен быть нечетным целым числом, меньшим чем num, а циклический сдвиг h должен быть неотрицательным целым числом, меньшим чем num. Если входной параметр data является матрицей, ее столбцы обрабатываются независимо.

intrlvd = algintrlv(data,num,'welch-costas',alph)

В данном варианте синтаксиса для перестановки используется метод Уэлча-Костаса (Welch-Costas). При использовании метода Уэлча-Костаса величина num+1 должна быть простым числом. Входной параметр alph должен быть целым числом, лежащим между 1 и num и представляющим примитивный элемент конечного поля GF(num+1). Это означает, что все ненулевые элементы поля GF(num+1) могут быть получены путем возведения числа alph в некоторую целочисленную степень.

Примеры

Данный пример показывает, как использовать метод алгебраического перемежения Уэлча-Костаса.

1. Задаем величину num и исходные данные для перемежения.

num = 10;  % Целое число, для которого num+1 - простое числоncols = 3; % Число столбцов данных для перемеженияdata = randint(num,ncols,num); % Случайные исходные данные

2. Находим примитивный элемент конечного поля GF(num+1). Функция gfprimfd представляет все примитивные полиномы в виде строк, каждая из которых содержит коэффициенты полинома в порядке возрастания степеней.

pr = gfprimfd(1,'all',num+1) % Примитивные полиномы поля GF(num+1)pr =     3     1     4     1     5     1     9     1

3. Обратите внимание на то, что результат pr имеет два столбца, и второй столбец заполнен единицами. Другими словами, все примитивные полиномы являются монарными полиномами первой степени. Это следует из того, что num+1 является простым числом. В результате найти примитивный элемент, который является корнем примитивного полинома, можно, вычитая из num+1первый столбец матрицы pr.

primel = (num+1)-pr(:,1) % Примитивные элементы поля GF(num+1)primel =     8     7     6     2

4. Теперь задаем параметр alph равным одному из элементов вектора primel и вызываем функцию перемежения algintrlv.

alph = primel(1); % Выбираем примитивный элементintrlvd = algintrlv(data,num,'Welch-Costas',alph); % Перемежение

Алгоритм

  • Перемежитель Такешиты-Костелло использует вектор цикла длины num, элементы которого равны mod(k*(n-1)*n/2, num) для всех целых n от 1 до num. Далее строится вектор перемежения: элементы вектора цикла перебираются в порядке возрастания значений и в вектор перемежения заносятся стоящие справа от них элементы вектора цикла. Окончательная таблица перемежения получается путем циклического сдвига вектора перемежения на h позиций влево. (Все операции с числами и индексами выполняются по модулю num.)
  • Перемежитель Уэлча-Костаса использует таблицу перемежения, которая отображает целое число K в число mod(AK,num+1)-1.
Сопутствующие функции: algdeintrlv

Литература

1. Heegard, Chris, and Stephen B. Wicker, Turbo Coding, Boston, Kluwer Academic Publishers, 1999.
2. Takeshita, O. Y., and D. J. Costello, Jr., "New Classes Of Algebraic Interleavers for Turbo-Codes," Proc. 1998 IEEE International Symposium on Information Theory, Boston, Aug. 16-21, 1998. pp. 419.

  В оглавление \ К следующему разделу \ К предыдущему разделу

 

Поиск по сайту:

Система Orphus

Яндекс.Метрика