Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lab_code

.pdf
Скачиваний:
90
Добавлен:
11.04.2015
Размер:
1.48 Mб
Скачать

Лабораторная работа №2 ИССЛЕДОВАНИЕ ЦИКЛИЧЕСКИХ КОДОВ

1. Цель работы

Ознакомление с методами построения циклических корректирующих кодов. Экспериментальное исследование обнаруживающей и исправляющей способности циклических кодов.

2.Предварительная подготовка

1.1.Ознакомиться с описанием работы, изучить по указанной ниже литературе и ответить на следующие вопросы:

- Что такое кодовое расстояние кода, как оно определяется?

- Как связана способность кода обнаруживать и исправлять ошибки с кодовым расстоянием?

- Что такое и какой вид имеют производящая и проверочная матрицы линейных кодов?

- Какие корректирующие коды называются циклическими, их свойства? - Какие корректирующие коды называются свёрточными, их свойства?

- Что такое производящий многочлен, как он используется для кодирования и декодирования?

- Что такое синдром ошибки, как он определяется математически и в декодере?

- Нарисуйте структурную схему синдромного декодера! В чём состоят проблемы его практической реализации?

- В чём отличие декодера Меггита от обычного синдромного декодера?

- В чём отличие декодера Касами-Рудольфа от обычного синдромного декодера?

- Нарисуйте структурную схему мажоритарного декодера.Какие коды позволяют осуществлять мажоритарное декодирование?

- Нарисуйте структурную схему порогового декодера.

1.2.Рассчитайте вероятность ошибки в кодовом слове на входе и выходе декодера для исследуемых кодов, если вероятность ошибки в канале с независимыми ошибками равна р (в соответствии с вариантом, указанным в таблице 2.1).

Таблица 2.1

1

2

3

4

5

6

7

8

9

10

11

12

бригады

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р

0,1

0,09

0,08

0,07

0,06

0,05

0,04

0,03

0,02

0,01

0,05

0,025

 

 

 

 

 

 

 

 

 

 

 

 

 

1.3.Для подготовки к работе рекомендуется следующая литература:

- А.А.Макаров, В.П.Прибылов. Помехоустойчивое кодирование в системах телекоммуникаций: Учеб. пособ., 2004.

11

-А.А.Макаров. Методы повышения помехоустойчивости систем связи: Учеб. пособ., 1991.

-А.А.Макаров, Л.А.Чиненков. Основы теории помехоустойчивости систем связи: Учеб. пособ., 1997.

-А.А.Макаров, В.И.Ковязин. Автоматизация проектирования систем передачи данных: Учебное пособие, 1987.

3. Краткая теория

 

 

 

Декодер Меггита представляет

собой

синдромный

декодер,

исправляющий одиночные ошибки, в памяти которого с целью упрощения хранится только один синдром ошибки S15(x)=x3+1 (соответствует последовательности ошибки ( ) ), синдромы остальных одиночных ошибок циклически сдвигаются в регистре синдрома до совпадения с S15(x); число тактов сдвига i (i=0,l,2...14) плюс единица равно номеру искаженного кодового элемента. Структурная схема декодера показана на рисунке 2.1.

Рисунок 2.1- Декодер Меггита циклического кода (15,11)

Декодер работает следующим образом. Кодовое слово (с ошибками или без них) в виде последовательности из 15 двоичных символов поступает в буферный регистр и одновременно в регистр синдрома, где производится деление этого слова на производящий многочлен кода g(x)=x4+x+l в результате чего вычисляется синдром ошибки Sj(x): S0j, S1j, S2j, S3j - символы синдрома. Ошибка обнаруживается, если хотя бы один символ синдрома не равен нулю. Исправление ошибок производится в следующих 15 тактах. Если Sj(x)=S15(x), то ошибка в первом символе кодового слова, который находится в 15ой ячейке буферного регистра. Тогда на первом такте схема {И} выдаёт единицу и в сумматоре по mod2 на выходе буферного регистра корректируется первый символ кодового слова. Если ошибка в другом символе, то производится циклический сдвиг синдрома Sj(x) в регистре синдрома по цепи обратной связи с учетом того, что вход декодера в цикле исправления ошибок отключен. На каждом i-ом такте проверяется равенство Sj+i(x)=S15(x) и в благоприятном случае на выходе схемы {И} появляется импульс коррекции ошибки, инвертирующий символ на выходе буферного регистра.

12

На рисунке 2.2 приведена структурная схема декодера КасамиРудольфа.

Рисунок 2.2 -Декодер Кассам и-Рудольфа для циклического кода Голея (23,12)

В данном декодере используется не оптимальный перестановочный метод декодирования, в котором с целью упрощения процедуры поиска ошибки используются циклические сдвиги синдромов ошибок и их сравнение с “покрывающими” синдромами (алгоритм Касами-Рудольфа). Для кода Голея (23,12): g(x)=x119 76 5+х+1 множество ошибок, вес (кратность)

которых не превышает трёх, покрывается тремя последовательностями ошибок e1(x)=0,e17(х)=х16, е18(х)=х17 , имеющих синдромы: S1(x)=0;

S17(х)=х8743+х+1; S18(x)=x9+x8+x5+x4+x2+x. Декодер отслеживает синдром ошибок, отличающийся от S1(х) не более, чем в трёх позициях, а

также синдромы ошибок, отличающиеся от S17(x) и S18 (x) не более, чем в двух позициях.

Декодирование производится в течение двух циклов.

В первом цикле в течение 23 тактов производится запись принятого кодового слова в буферный регистр (п1=0) и вычисление синдрома ошибки в синдромном регистре (п2=0).

Во втором цикле (п=1) из 23 тактов производится поиск и исправление ошибок путем циклического сдвига синдрома ошибки и его сравнения с

покрывающими синдромами в анализаторе синдрома. Одновременно циклически сдвигается кодовое слово в буферном регистре. Позиции ошибок обнаруживаются при удовлетворении какого-либо из неравенств в анализаторе синдрома; на выходе соответствующей схемы анализатора появляется сигнал, по которому выход синдромного регистра подключается

13

(n2=1) к сумматору в цепи циклического сдвига буферного регистра для исправления ошибок. Если срабатывает вторая или третья схемы анализатора, то дополнительно исправляются ошибки в 17-ой или 18-ой ячейках буферного регистра в соответствии с номером покрывающего синдрома; одновременно производится стирание этого синдрома в синдромном регистре. После 23-го такта производится проверка состояния синдромного регистра и, если остаток не превышает двух единиц, его содержимое используется для коррекции состояний первых 11 ячеек буферного регистра. На этом декодирование заканчивается и на выход выдаются информационные символы, расположенные в первых 11 ячейках буферного регистра; одновременно на вход может подаваться новое кодовое слово (п1=0).

4. Лабораторное задание

1.4.Ознакомиться с интерфейсом программы и схемами кодера и декодера Меггита, при (n,k)=(7,4).

1.5.Задать исходную комбинацию на входе кодера циклического кода (7,4) и произвести кодирование.

1.6.Затем в канале указать ошибки в любых битах получившейся в результате кодирования комбинации.

1.7.Произвести декодирование получившейся комбинации с ошибкой, с помощью декодера Меггита и сравнить с исходной.

5. Порядок выполнения работы

1.8.Изучить теоретические сведения к данной лабораторной работе, приведенные в пункте 3.

1.9.Запустить программу, двойным кликом мыши по ярлыку с названием «Циклический код (7.4)».

На экране появится окно с изображением кодера циклического кода (7,4) (Рисунок 2.3): Интерфейс программы в окне с кодером циклического кода (7;4):

1 - Исходная кодовая комбинация;

2- Закодированная кодовая комбинация;

3- Ячейки формирователя проверочных групп (ФПГ);

4- Кнопка для начала кодирования (впоследствии становится кнопкой

«Такт»);

5- Кнопка для перехода в канал связи, чтобы внести ошибку.

14

Рисунок 2.3 – Модель кодера циклического кода (7,4)

4.3 На входе кодера необходимо ввести свою исходную информационную кодовую комбинацию, после чего нажать на кнопку «Начать».

Рисунок 2.4 – Модель кодера циклического кода (7,4)

С помощью кнопки «такт» происходит выполнение следующего такта. Содержимое ячеек формирователя проверочной группы каждого такта и значение элемента на входе нужно свести в таблицу 2.2:

15

Таблица 2.2

Такт

Вход

 

№ ячейки ФПГ

 

 

 

1

 

2

 

3

0

-

0

 

0

 

0

1

 

 

 

 

 

 

2

 

 

 

 

 

 

3

 

 

 

 

 

 

4

 

 

 

 

 

 

5

0

 

 

 

 

 

6

0

 

 

 

 

 

7

0

 

 

 

 

 

4.4 По истечению 7 тактов формируется закодированная кодовая комбинация, которую нужно записать в отчет. Затем программа выдает сообщение «Кодирование завершено!», следует нажать ОК и перейти к каналу с помощью кнопки «В канал».

Рисунок 2.5 – Окно канала

4.5В канале необходимо указать ошибку в битах закодированной кодовой комбинации (в любом бите на выбор студента), после чего необходимо нажать кнопку «Декодировать» для перехода к декодеру Меггита.

4.6На рисунке 6 приведена схема декодера Меггита для циклического кода (7,4), по которой будет происходить декодирование кодовой комбинации с ошибкой. Бит с ошибкой выделен красным цветом. Для начала декодирования необходимо нажать кнопку «Начать».

16

Рисунок 2.6 – Модель декодера Меггита

Интерфейс программы в окне с декодером Меггита: 1 - Закодированная кодовая комбинация с ошибкой;

2- Результат декодирования;

3- Ячейки ФПГ;

4- Ячейки регистра задержки (РЗ);

5- Кнопка для начала декодирования (впоследствии становится кнопкой «Такт»);

6- Группа кнопок для дальнейшего действия:

-Кнопка «Вернуться к кодеру» - если нужно задать другую исходную комбинацию и произвести её кодирование;

-Кнопка «Вернуться к каналу» - если необходимо задать ошибку в другом бите закодированной комбинации;

-Кнопка «Выход из программы» - если лабораторная работа

выполнена, чтобы закрыть окно программы.

4.7 С помощью кнопки «такт» осуществляется переход к следующему такту. В вверху указывается действие текущего такта:

-0 такт – «Начальное состояние…»

-1-7 такт – «Идет загрузка в регистр…»

-8-14 такт – «Процесс исправления ошибки…»

-15-21 такт – «Выгрузка данных из регистра на выход…»

После выполнения 21 такта на экране высвечивается сообщение «Процесс декодирования завершен!!!» (Рисунок 2.7). Необходимо нажать ОК и зафиксировать в отчете кодовую комбинацию на выходе и выделить в ней информационные элементы.

17

Рисунок 2.7 – Модель декодера Меггита

Содержимое ячеек формирователя проверочной группы каждого такта и значение элемента на входе при выполнении действий загрузки в регистр и процесса исправления ошибки нужно свести в таблицу 2.3:

Таблица 2.3

Такт

Вход

 

№ ячейки ФПГ

 

 

 

1

 

2

 

3

0

-

0

 

0

 

0

1

 

 

 

 

 

 

2

 

 

 

 

 

 

3

 

 

 

 

 

 

4

 

 

 

 

 

 

5

 

 

 

 

 

 

6

 

 

 

 

 

 

7

 

 

 

 

 

 

8

-

 

 

 

 

 

9

-

 

 

 

 

 

10

-

 

 

 

 

 

11

-

 

 

 

 

 

12

-

 

 

 

 

 

13

-

 

 

 

 

 

14

-

 

 

 

 

 

15

-

 

 

 

 

 

4.8 После окончания выполнения лабораторной работы следует закрыть программу, затем выключить компьютер.

18

6. Содержание отчёта

Отчет должен содержать:

-цель работы;

-предварительный расчет;

-структурные схемы кодера и декодера Меггита;

-результаты кодирования и декодирования в виде таблиц 2.2 и 2.3;

-выводы.

Лабораторная работа №3 ИССЛЕДОВАНИЕ ПОМЕХОУСТОЙЧИВОСТИ СИСТЕМЫ

ПЕРЕДАЧИ ИНФОРМАЦИИ ПРИ ПРИМЕНЕНИИ СВЕРТОЧНОГО КОДА И ДЕКОДЕРА ВИТЕРБИ НА АВТОМАТИЗИРОВАННОМ РАБОЧЕМ МЕСТЕ СПИ

1. Цель работы

Экспериментальное исследование помехоустойчивости системы передачи информации при применении сверточного кода и декодера Витерби.

2. Литература

Основная литература

1Макаров А.А., Прибылов В.П. Помехоустойчивое кодирование в системах телекоммуникаций: учебное пособие/ СибГУТИ, Новосибирск,

2004. – 141 с.

2Макаров А.А. АРМ исследования и проектирования систем передачи информации: учебное пособие/ СибГУТИ, Новосибирск, 2001. – 78 с.

Дополнительная литература 3 Кларк Дж., Кейн Дж. Кодирование с исправлением ошибок в системах

цифровой связи: Пер. с англ./ Под ред. Б.С. Цыбакова.– М.: Радио и связь,

1987.– 392 с.

4 Блейхут Р. Теория и практика кодов, контролирующих ошибки: Пер. с англ./ Под ред. К.Ш. Зигангирова.– М.: Мир, 1986.– 576 с.

5Макаров А.А., Чиненков Л.А. Основы теории помехоустойчивости дискретных сигналов: учебное пособие/ СибГУТИ, Новосибирск, 1997. – 41 с.

6Бронштейн И.Н., Семендяев К.А. Справочник по математике для инженеров и уч-ся втузов.-М.: Наука, Гл. ред. физ.-мат. лит., 1986. -544 с.

3.Лабораторное задание

1.Ознакомиться с лабораторной установкой.

2.Исследовать распределение кратностей ошибок на входе и выходе декодера Витерби для сверточного кода (24,12) для заданной вероятности ошибки в канале связи.

19

3. Исследовать зависимость выигрыша от кодирования при изменении отношения сигнал/шум в системе передачи информации (СПИ).

4. Порядок выполнения лабораторной работы.

Работа выполняется экспериментально с помощью автоматизированного рабочего места (АРМ) проектирования и исследования системы передачи информации.

1.Выбрать программу Arm_СПИ.exe .

2.Работа с программой АРМ начинается с выбора вариантов исследуемой СПИ - раздел структура модели СПИ. Выбрать модель дискретного канала (кнопка ДК). В блоке «Непрерывный канал» задать режим модуляции – ЧМ, когерентный прием сигналов.

3.Необходимо сделать правильный выбор объема статистических испытаний NВ . С одной стороны, это позволяет экономно использовать

машинное время ЭВМ, а с другой – обеспечить заданную в массиве исходных параметров точность определения оцениваемых величин.

Минимальное количество кодовых слов (или блоков) NВ для статистических исследований дискретного канала (ДК) или устройства защиты от ошибок (УЗО, кодека) в зависимости от средней вероятности ошибки P (на выходе канала или на выходе УЗО) определяется выражением

[1]

N

 

z2

P(1 P)

 

,

 

 

2 n

 

 

В

 

 

 

 

 

 

P

 

 

где n - длина кодового слова; P

- погрешность оценки в долях оцениваемой

вероятности P; например, если P = (0,1÷0,15)P, то точность оценки

вероятности составляет (10÷15)

% ;

 

z определяется из

двухсторонней

статистики с нормированным нормальным распределением

 

(1-) = Ф(z ) ,

 

 

(1- ) - мера надежности

оценки, или

вероятность того,

что истинное

значение определяемого среднего отстоит от его оценки не более, чем на величину P.

Например, если выбрать достаточно малым, так что (1- ) = 0,997 , то значение z = 2,95 (приложение 1).

Для доверительной оценки измеряемой величины необходимо найти доверительный интервал d , который накрывает измеренную величину с заданной вероятностью (1- )

d z P(1 P) / nNВ .

4. Методом статистических испытаний получить и построить (или вывести на принтер ЭВМ) экспериментальное распределение кратностей ошибок на входе и выходе декодера для сверточного кода (24,12) для заданного варианта вероятности ошибки в канале связи p.

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]