Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Общие принципы построения Gk,n(x) и Hl,n(x) циклических кодов и их взаимосвязьПоиск на нашем сайте Так как порождающая Gk,n(x) и проверочная Hl,n(x) матрицы представляют собой сокращенную запись одного и того же ЦК, то между ними существует или имеется следующая взаимосвязь [1-4]: 1) задание одной из матриц позволяет определить основные параметры ЦК, а именно (n, k, d0). 2) задание одной из матриц обеспечивает возможность построения другой; 3) произведение G(x) · HT(x) и GT(x) · H(x)=0. Далее кратко рассмотрим принципы построения G(x) и H(x) ЦК. А) Способы построения Gk,n(x): - формирование Gk,n(x) по правилу – вес проверочной части каждой строки матрицы должен быть ≥d0 – 1 и порождающая матрица должна состоять из двух подматриц: единичной и проверочной.
Gk,n(x) =
- приписывание к строкам единичной подматрицы остатков отделения xn/P(x), т.е.
Gk,n(x)=
Порождающая матрица получается канонического типа и практически данный способ построения G(x) является модификацией способа, рассмотренного выше: - при использовании порождающего полинома P(x), применяется следующее правило: а) переводим порождающий полином P(x) из формы записи полинома в двоичную форму записи, б) записываем порождающий полином в двоичной форме в качестве первой строки G(x) и дополняем ее справа (слева) нулевыми символами до получения «n» столбцов G(x); в) выполняем (k-1) циклический сдвиг кодовых символов первой строки влево или вправо. Записываем P(x) в качестве первой строки порожденной матрицы, дополняем нулями до n=10 и выполняем (k-1) = (5-1) = 4 циклических сдвига кодовых символов первой строки. В результате получаем следующую порождающую матрицу: Порождающую матрицу можно построить по следующей методике: 1) переводим (можно не переводить) порождающий полином P(x) из формы многочлена в двоичную форму записи, т.е. P(x) = x5+x4+x2+1→110101; 2) умножаем P(x)= 110101 на одночлен вида xk-1, т.е. на 1000; в результате получаем строку G(x); а далее используем циклический сдвиг (k-1) раз полученной строки G(x). Процесс кодирования информации или процесс формирования КП записывается так:
Fi(x) = Q(x) · Gk,n(x) ,
где Q(x) – передаваемый информационный блок, содержащий k-1 двоичных символов. Б) Способы построения проверочной матрицы He,n(x) ЦК: - с использованием заданной порождающей матрицы ЦК для построения проверочной матрицы He,n(x) по заданной порождающей матрице Gk,n(x) записать в виде первого столбца He,n(x), проверочную часть второй строки Gk,n(x) записать в виде второго столбца He,n(x) и так далее до последней строки Gk,n(x), а далее в проверочной матрице He,n(x) дописать единичную матрицу; - с использованием заданных параметров ЦК, а именно, n и h(x). Для этого необходимо проверочный полином h(x) перевести в двоичную форму записи, а записать его в виде первой строки He,n(x) и дописать «k» нулевым символом. Далее выполнить l-1 циклических сдвигов данной строки; в результате будет построена проверочная матрица неканонического вида. Для приведения ее к каноническому виду необходимо выполнить ряд операций над строками и столбцами. - ЦК, корректирующие модульные ошибки, имеют более сложные правила построения проверочных матриц, так как содержат ряд единичных подматриц I(x) рангом (tn · tn) и ряд (или более) проверочных подматриц, hi рангом или размерностью (l-tn) · tn и столбцы hj,l каждый из которых представляют собой двоичный код номера i; т.е.
i =
где Ɛ = 1- tn. В общем виде проверочную матрицу данного кода можно записать или представить так:
H(x) =
Из ЦК в настоящее время широкое применение в телекоммуникационных системах получили коды Рида-Маллера, достоинствами которых являются: возможность использования различных алгоритмов декодирования (алгебраических и вероятностных) и т.д.
2 ОБЩИЕ СВЕДЕНИЯ О ЦИКЛИЧЕСКИХ КОДАХ РИДА-МАЛЛЕРА
В соответствии с [1-4] коды Рида-Маллера (КРМ) относятся к групповым несистематическим (неразделимым) кодам с простым способом задания. Декодирование КРМ чаще всего реализуется мажоритарным и синдромным способоми. Однако возможно декодирование кодов по максимуму правдоподобия. В общем КРМ эквивалентны циклическим кодам с добавлением общей проверки на четность. Достоинствами данных кодов являются простота их задания и минимальная сложность реализации алгоритмов кодирования и декодирования. Недостатком КРМ является слабая (низкая) корректирующая способность; данные коды чаще всего применяются для коррекции ошибок кратностью не более трех двоичных символов. Сущность КРМ и, следовательно, их определение состоит в следующем [1-4]: пусть Fo(x) есть кодовая последовательность (кодовый вектор), состоящая из одних логических единиц (1), а кодовые последовательности F1(x), F2(x),…,Fm(x) образуют строки матрицы, столбцами которой являются все двоичные наборы длиной m двоичных символов; m может иметь разное значение (величину),т.е. величина m≥2. В этом случае для любых целых чисел m и E (E<m) можно построить помехоустойчивый код длины n=2m двоичных символов, который называется кодом Рида-Маллера E-го порядка. В реальных системах связи КРМ с порядком E>3 практически не используются. КРМ E-го порядка содержит в качестве базиса (основы) кодовые последовательности F0(x), F1(x),…,Fm(x) и все поэлементные (полуразрядные) произведения E или меньшего числа этих последовательностей. В данном определении поэлементные произведения кодовых последовательностей (условно: a=(a1a2…an) и b=(b1b2…bn)) задается формулой a·b=(a1·b1,a2·b2,…,an·bn). КРМ E-го порядка дуален (двойственен) помехоустойчивому коду (m--E-1) порядка. КРМ E-го порядка длины n=2m двоичных символов задается (строится) порождающей матрицей вида [1-4]:
G(x) =
где G0(x) – кодовый вектор (кодовая последовательность) длиной n=2m двоичных символов, состоящих из одних ″1″; G1(x) – матрица размерности (m·2m), содержащая в качестве столбцов все двоичные m-последовательности; GE (x) – матрица, строки которой получаются из строк матрицы G1(x) как все возможные произведения E строк из матрицы G1(x); для определенности обычно принимают, что первый столбец в G1(x) состоит из одних ″0″, а последний из одних ″1″. Коды Рида-Маллера имеют простые выражения для определения основных параметров данных кодов, а именно n=2m двоичных символов – длина кодовой последовательности: k = d0=2m-E – минимальное кодовое расстояние; d = Кроме того, возможно определение параметров КРМ по следующей методике: длина кодовой последовательности определяется рангом порождающей, т.е. n=2m. Параметры k и l=n-k КРМ E-го порядка можно определить используя следующие выражения:
k = 1+
l = n – r = 1+
Далее установим связь КРМ с другими линейными блоковыми кодами. КРМ нулевого порядка (E-0) является (n, k)=(n, 1) – кодом и соответствует коду с повторением и использует мажоритарный алгоритм декодирования. Минимальное кодовое расстояние такого кода равно d0=2m, а так как в этом случае m=2, то d0=22=4. КРМ первого порядка (E=1) тесно связаны с кодами максимальной длины, которые, в свою очередь, дуальны кодам Хэмминга. Если начать построение помехоустойчивого кода с построения кода максимальной длины и расширять его путем добавления общей проверки на четность, то получим ортогональный код. Данный код имеет длину n=2m двоичных символов и вес каждой ненулевой кодовой последовательности равен wi= d = 2m-1. Следовательно, любые две кодовые последовательности совпадают в 2m-1 позициях и различаются в остальных 2m+1 позициях. Используя этот код с противоположными сигналами, получим множество из 2m ортогональных сигналов для 2m кодовых последовательностей; отсюда и название ортогональных сигналов. КРМ первого порядка получаются непосредственно из ортогонального кода добавлением кодовой последовательности состоящей из ″1″. Если же рассматривать передаваемые сигналы, то эта процедура эквивалентна добавлению дополнительных сигналов к первоначальному множеству ортогональных сигналов. По этой причине полученный код называют биортогональным кодом [3,4]. Рассмотрим принцип построения КРМ с использованием методики построения КРМ, приведенной в [1] и следующих исходных данных кода: m=4 и E=3. Следовательно, необходимо определить все параметры КРМ третьего порядка. Далее определяем параметры кода n, k и d0: n=2m=24=16, двоичных символов – длина кодовых последовательностей; k = 1+ d0=2m-E=24-3=2. Данный КРМ задается порождающей матрицей вида
G(x) =
Строим порождающие матрицы G0(x), G1(x), G2(x) и G3(x) данного кода. Порождающая матрица G0(x) содержит одну строку (обозначим строку буквой a0) логических единиц с количеством равной n=2m=24=16 двоичных символов и имеет следующий вид:
G0(x) = [1111111111111111] = [a0]. (2.5)
Порождающая матрица G1(x) содержит m=4 строки; первая строка матрицы
G1(x) =
Из данной матрицы видно, что столбцы матрицы представляют собой последовательность чисел, записанных в двоичной системе счисления; младшие разряды (символы) внизу. Следовательно, столбцы G1(x) можно рассматривать как последовательности состояний двоичного суммирующего счетчика, что условно можно представить так:
G(x) =
где 1 – последовательность из одних 1, Sδ1 – последовательность состояний последнего (старшего) разряда счетчика, Sδm – последовательность состояний первого (младшего) разряда счетчика. Примечание: перестановка столбцов и строк порождающей матрицы приводит к эквивалентным кодам. Строки в порождающих матрицах линейно независимы. Поскольку матрица G1(x) имеет четыре строки, то матрица G2(x) будет иметь
|
||
|
Последнее изменение этой страницы: 2024-07-06; просмотров: 48; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.196 (0.008 с.) |