Алматинский институт энергетики и связи

 

 

Кафедра автоматической электросвязи

 

 

 

 

 

 

 

 

ТЕХНОЛОГИИ ЦИФРОВОЙ СВЯЗИ

Методические указания к выполнению лабораторных работ

(для студентов всех форм обучения специальности  050719 – Радиотехника, электроника и телекоммуникация)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Алматы 2005

 

 

СОСТАВИТЕЛЬ: А.Д. Джангозин, К.С. Чежимбаева. Технологии цифровой связи. Методические указания к выполнению лабораторных работ (для студентов всех форм обучения  специальности  050719 – Радиотехника, электроника и телекоммуникации). – Алматы:АИЭС, 2005.- 27с. 

 

 

Методические указания к лабораторным работам содержат теоретические обоснования и примеры принципов построения кодирующих и декодирующих устройств циклических кодов на базе линейных переключательных схем. А также дано описание экспериментов и приведена методика проведения и обработки опытных данных с применением пакета моделирования «System View», перечень рекомендуемой литературы и контрольные вопросы.

Методические указания предназначены для студентов специальности 050719 – Радиотехника, электроника и телекоммуникации.

Ил. 18, табл.2, библ.- 3 назв.

 

 

 

 

Рецензент: канд. техн. наук, доц. Казиева Г.С.

 

 

 

 

 

 

 

Печатается по дополнительному плану издания Алматинского института энергетики и связи на 2005 г.

 

 

 

 

 

 

 

 

 

 

 ãАлматинский институт энергетики и связи, 2005г.

 

 

Введение

 

В настоящее время, в связи с многократно возросшими объёмами передаваемой и сохраняемой информации, ужесточились требования к её достоверности. Одним из самых перспективных методов решения этой проблемы являются помехоустойчивые кодирования на основе корректирующих кодов. В последнее время коды, исправляющие ошибки, нашли применение во многих системах передач и хранения информации. Наиболее известные из них – это сотовые системы связи, различные системы спутниковой телефонной связи, накопители информации на магнитных дисках, система звукозаписи на компакт - дисках и др. Во всех вышеприведенных примерах систем с помехозащищённой обработкой информации используются наиболее простые и эффективные циклические корректирующие коды, которые, наряду с простотой кодирования и декодирования, отличаются достаточно большой корректирующей способностью. Изучению этих кодов посвящена лабораторная работа.

 

1 Теоретические вопросы применения циклических кодов

 

Циклические коды составляют большую группу наиболее широко используемых на практике линейных, систематических кодов. Их основное свойство, давшее им назва­ние, состоит в том, что каждый вектор, получаемый из исходного кодового вектора пу­тём циклической перестановки его символов, также является разрешённым кодовым вектором. Принято описывать циклические коды (ЦК) при помощи порождающих полиномов степени , где  - число проверочных символов в кодовом слове. В связи с этим ЦК относятся к разновидности полиномиальных кодов.

Операции кодирования и декодирования ЦК сводятся к известным процедурам умножения и деления полиномов. Для двоичных кодов эти операции легко реализуются технически с помощью линейных переключательных схем (ЛПС), при этом получаются относительно простые схемы кодеков, в чём состоит одно из практических достоинств ЦК [1,2,3].

Коды Файра могут исправлять пакет ошибок длиной  и обнаруживать пакет ошибок длиной[заметим, что в кодах Файра понятие кодового расстояния d не используется].

Среди циклических кодов особое место занимает класс кодов, предложенных Боузом и Чоудхури и независимо от них Хоквингемом. Коды Боуза—Чоудхури-Хоквингема получили сокращённое наименование БЧХ- коды.

БЧХ - коды являются обобщением кодов Хемминга на случай исправления нескольких независимых ошибок (qи >1). Частными случаями БЧХ- кодов являются коды Файра, предназначенные для обнаружения и исправления серийных ошибок («пачек» ошибок), код Голея - код, исправляющий одиночные, двойные и тройные ошибки (dmin=7), коды Рида-Соломона (РС- коды), у которых символами кода являются многоразрядные двоичные числа [3].

 

1.1 Циклические коды, обнаруживающие и исправляющие

      пакеты ошибок (коды Файра)

 

Под пакетом ошибок длиной b понимают такой вид комбинации помехи, в которой между крайними разрядами, пораженными помехами, содержится b - 2 разряда. Например, при b = 5 комбинации помехи, т. е. пакет ошибок, могут иметь следующий вид: 10001 (поражены только два крайних символа), 11111 (поражены все символы), 10111, 11101, 11011 (не поражен лишь один символ), 10011, 11001, 10101 (пора­жены три символа). При любом варианте непременным условием пакета данной длины является поражение крайних символов [7].

Коды Файра могут исправлять пакет ошибок длиной bs и обнаруживать пакет ошибок длиной br [заметим, что в кодах Файра понятие кодо­вого расстояния d, а следовательно, и уравнение d = r+s+1  не используются].

Образующий многочлен кода Файра Р(Х)ф определяется из выражения

                                        (1.1)

где Р(Х) — неприводимый многочлен степени .

Из принципа построения кода следует, что

                                                                          (1.2)                                                               (1.3)

При    этом    с    не    должно    делиться    нацело    на    число    е,    где

                                                                   (1.4)

Неприводимый многочлен Р(Х) выбирают из таблицы 1.1 так, чтобы удовлетворялось условие (1.4). Длина слова п равна наименьшему общему кратному чисел с и е, так как только в этом случае многочлен Хn + 1 делится на Р(Х)Ф без остатка [при п'<.п никакой многочлен Хn+1  не делится на Р(Х)Ф]

 

.                                                           (1.5)

Число контрольных символов

                                                                     (1.6)

 

 

 

 

 

Таблица 1.1 - Неприводимые многочлены и их эквиваленты

 

P()=X+1311

P(X2)=X2 +X+17111

P(X3)=X3 +X+1111011

P(X3)=X3 + X2+1131101

P(X4)=X4 +X+11910011

P(X4)=X4 + X3+12511001

P(X4)=X4 + X3+ X2 +X+1

311111

P(X5)=X5 + X2+137100101

P(X5)=X5 + X3+141101001

 

 

P(X5)=X5 + X3+ X2 +X+147101111

P(X5)=X5 + X4+ X2 +X+155110111

P(X5)=X5 + X4+ X3 +X+159111011

P(X5)=X5 + X4+ X3 + X2+161111101

P(X6)=X6 + X+1671000011

P(X7)=X7 + X3 +113710001001

P(X8)=X8 + X4+ X3 + X2+1

285100011101

P(X9)=X9 + X4+110411000010001

P(X10)=X10 + X3 +1205710000001001

 

 

 

1.2 Циклические коды Боуза -Чоудхури -Хоквингема

 

Коды Боуза - Чоудхури - Хоквингема (БЧХ) представляют собой обширный класс кодов, способных исправлять несколько ошибок и занимающих заметное место в тео­рии и практике кодирования. Интерес к кодам БЧХ определяется по меньшей мере тремя следующими обстоятельствами:

а)   среди   кодов  БЧХ  при   небольших  длинах  существуют  хорошие  (но,   как правило, не лучшие из известных) коды;

б)  известны относительно простые и конструктивные методы их кодирования и декодирования;

в)  полное понимание построения кодов   БЧХ является наилучшей отправной точкой для изучения многих других классов кодов.

Коды БЧХ независимо открыли Хоквингем (1959) и Боуз и Рой-Чоудхури (1960), которые доказали ряд теорем, устанавливающих существование таких ЦК, у которых минимизируется число проверочных символов, а также указывающих пути нахождения порождающих полиномов для этих кодов [8].

Корректирующие свойства ЦК могут быть определены на основании следую­щей теоремы: для любых значений m и gu существует ЦК длиной n = 2m-1, исправ­ляющий все ошибки кратности gu и менее (gu <m) и содержащий не более n -k < gu проверочных символов. Так, например, при n = 15, m= 4 и различных gu число прове­рочных символов будет равно: gu =1, n - k = m gu = 4*1= 4; gu = 2, mgu = 4*2 = 8; gu = 3, m gu = 4*3 = 12. Соответствующие коды (n, к) будут (15,11), (15,7), (15,3). Напомним, что минимальное кодовое расстояние dmin=2gu+1, и применительно к ЦК оно чаще называ­ется конструктивным расстоянием. Если величины gu или d выбрать слишком больши­ми, то получившийся в результате код будет тривиальным — в нём будет лишь один ли­бо (при r > n) ни одного информационного символа.

В таблице 1.2 даны параметры и порождающие полиномы некоторых кодов БЧХ. По­линомы приведены в восьмеричной форме записи, старшая степень расположена слева.

Например, коду (15,7) соответствуют двоичное представление 111010001 и мно­гочлен G(Х) = X8 + X7 + X6 + X4 +1. Подробные таблицы порождающих полиномов цик­лических кодов БЧХ приведены в [3].

Коды БЧХ с длиной 2m -1 называют примитивными кодами БЧХ. К ним, в част­ности, относятся классические коды Хемминга, исправляющие однократные ошибки. К кодам БЧХ относятся также коды, длина n которых является делителем 2m -1. Напри­мер, код Голея (23, 12, 7)  также принадлежит классу кодов БЧХ, поскольку при m = 11 примитивный код БЧХ имеет длину n=211 -1 = 2047, причём это зна­чение без остатка делится на длину кода Голея n = 23 (2047 : 23 = 89), который отно­сится к непримитивным БЧХ- кодам [2, 3].

 

Таблица 1.2

m

n

k

r

gu

G(X)-mod 8

m

 

k

R

gu

G(X)-mod 8

3

4

 

5

 

 

 

6

7

15

 

31

 

 

 

63

4

11

7

26

21

16

11

57

51

45

39

36

3

4

8

5

10

15

20

6

12

18

24

27

1

1

2

1

2

3

5

1

2

3

4

5

13

23

721

45

3551

107657

5423325

103

12471

1701317

166623567

1033500423

7

 

 

 

 

8

 

 

127

 

 

 

 

225

120

113

106

99

92

247

239

231

223

 

215

7

14

21

28

35

8

16

24

32

 

40

1

2

3

4

5

1

2

3

4

 

5

211

41567

11554743

3447023271

624730022327

435

267543

156720665

75626641375

 

23157564726421

 

Как отмечалось выше, все примитивные коды БЧХ обладают конструктивным расстоянием dmin =2 +1. Расстояние можно увеличить до 2 + 2. Для этого нужно основ­ной порождающий полином БЧХ - кода домножить на бином Х+1, т.е. G1(Х) = (Х+1) х GБЧХ(Х), что повлечёт за собой прибавление к коду одного проверочного символа, обеспечивающего проверку на чётность всех символов БЧХ - кода. Таким образом полу­чается расширенный БЧХ - код.

 

 

 

 

 

 

 

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

 

Перед началом выполнения лабораторной работы «Циклические коды БЧХ и Файра» студент должен получить у преподавателя длину кодового слова n, число обнаруживающие ошибки s или число исправляющие ошибки  r. Числа информационных символов k и контрольных символов m, а также состав контрольных символов подлежат определению. Работа «Циклические коды БЧХ и Файра» выполняется на персональных ЭВМ с применением пакета моделирования « System View»

 

2.1 Лабораторная работа  №1

 

Исследование циклического кода Файра

 

2.2 Цель работы

 

Изучение принципов помехоустойчивого кодирования, ознакомление с кодами Файра и методами кодирования и декодирования с использованием линейных переключательных схем.

 

2.3 Домашнее задание

 

2.3.1  Изучить методы кодирования и декодирования кода Файра.

2.3.2 Ознакомиться с техническими средствами, применяемыми при кодировании и декодировании кода Файра, а также возможностями обнаружения и исправления ошибок.

 

2.4 Рабочее задание

 

Исследование кодера и декодера кода Файра. Собрать схему и установить параметры, снять экранные изображения входного и выходного сигнала.

 

2.5 Методические указания по подготовке к лабораторной работе

 

Для выполнения лабораторной работы студенты должны предварительно изучить раздел 1 настоящего методического указания и получить у преподавателя допуск к работе

 

2.6 Исследования кодирующих устройств  кода Файра

 

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

 

Согласно   1.1,    образующий   многочлен будет равен

Р(Х)Ф = (Х5 + Х2+ 1)( Х10 +1)==X15 + X12+ X10+ X5+ X2+1.

Зная образующий полином, можно построить  кодирующее устройство кода Файра.

Согласно 1.4,  е = 25 — 1 = 31. Поэтому длина кода n = НОК(31,10)=310. Из (1.6) число контрольных и проверочных  символов:

а) k=n-m=310-15=295;

б) m = 10 + 5= 15, т. е. в данном случае оно равно степени образующего многочлена. В итоге получаем код (310, 295).

При делении кодовой комбинации G(X)=10000000…………000 на образующий полином вида 1001010000100101 получаем остаток 100101000010010.

Основу кодирующего устройства кода Файра составляют регистры сдвига с обратными связями, позволяющие осуществлять деление многочленов с приведением коэффициентов по модулю 2. Сдвиг информации в регистре осуществляется импульсами. Данное кодирующее устройство вычисляет значения проверочных символов путем непосредственного деления кодируемого многочлена на образующий многочлен.  Это делается с помощью регистра сдвигов, содержащего (n-k) разряды. Коэффициенты кодируемого многочлена участвуют в обратной связи, начиная сразу  с  первого такта.

В исходном состоянии ключ 1 замкнут. Информационные символы одновременно поступают как в линию связи, так и в регистр сдвига, где за k тактов образуется остаток. Затем ключ 1 размыкается, и остаток через ключ 2 поступает в линию связи.

 

2.6.1 Запустите программу «System View».

Согласно вариантам, по полученным результатам соберите схему кодирующего устройства кода Файра.

На рисунке 2.1 представлено кодирующее устройство в соответствии с полученным образующим полиномом кода Файра (310,295). Схема осуществляет формирование кода Файра (310,295). Эта схема формирует 15 дополнительных контрольных разрядов для каждых 295 информационных символов с помощью вычисления остатка от деления на образующий полином. Для нахождения остатка составлена программа на языке  Deiphi. Программа деления, созданная в среде Deiphi, приведена  в приложении А.

Чтобы построить кодирующее устройство, студенты должны получить у преподавателя задание и сделать расчеты в соответствии с формулами, которые приведены в пункте 1.1. Потом собрать схему кодирующего устройства по полученному образующему полиному. После этого студент должен задать соответствующие параметры в системное время, как это показано на рисунке 2.2. Потом запустить процесс моделирования, и получить временные спектральные характеристики, как представлено на рисунке 2.3.

 

 

 Рисунок 2.1 – Схема исследуемого кодера циклического

                            кода Файра (310,295)

 

Представлено системное время на рисунке 2.2, а также на рисунке 2.3 получены временные спектральные характеристики, входные и выходные данные кодирующего устройства кода Файра.

 

 

Рисунок 2.2

                     

                                                                                                                                                                           

 

Рисунок 2.3

Согласно    1.1,    образующий   многочлен будет   равен

Р(Х)Ф = (Х4 + Х+ 1)( Х8 +1)=X12 + X9+ X8 + X4+ X+1.

Согласно 1.4, е = 24 - 1 = 15. Поэтому длина кода n= НОК (15,8) =120. Из  1.6  число контрольных и проверочных символов:

а) k=n-m=120-12=108;

б) m = 8 + 4= 12, т. е. в данном случае оно равно степени образующего многочлена. В итоге получаем код (120, 108), который показан на рисунке 2.4.

 

 

Рисунок 2.4 – Схема исследуемого кодера кода Файра (120,108)

 

Представлено системное время на рисунке 2.5, а также на рисунке 2.6 получены временные спектральные характеристики, входные и выходные данные кодирующего устройства кода Файра.

 

  

                  

 

Рисунок 2.5

      

                 

 

Рисунок 2.6

 

 

2.7 Исследование декодирующих устройств  кода Файра

 

Декодирующие устройства для кода Файра, обнаруживающие ошибки, по существу ничем не отличаются от схемы кодирующего устройства. В них лишь добавляется буферный регистр для хранения принятого сообщения на время проведения операции деления.

Если остатка не обнаружено, то информация с буферного регистра считывается в дешифратор сообщения.

Исправ­ляя единичные и двойные смежные ошибки, мы установили необходимость двух схем в детекторе оши­бок, настроенных на два выделенных синдрома. При большом числе выделенных синдромов, как это имеет место, например, в случае кодов, исправляющих пакеты ошибок значительной длины, такой подход неприемлем, так как декодирующее устройство оказывается чрезвы­чайно сложным.

В связи с этим разработаны коды, в схемах декоди­рования которых детектор ошибки автоматически наст­раивается на нужный выделенный синдром. Осуществля­ется это за счет схемы деления на второй соответствую­щим образом подобранный многочлен

 

2.7.1 Запустите программу «System View».

Согласно вариантам, по полученным результатам соберите схему декодирующего устройства кода Файра:

а) схема декодирующего устройства кода Файра (310,295) приведена на рисунке 2.7 в соответствии по полученным кодирующим устройствам кода. Сравниваемые по полученным данным  результаты приведены на рисунке 2.8, а также временные спектральные характеристики показаны на рисунке 2.9;

 

 

Рисунок 2.7 – Схема исследуемого декодера кода Файра  с исправлением одной ошибки (310,295)

 

 

 

Рисунок 2.8

 

Рисунок 2.9

 

б) схема декодирующего устройства с исправлением нескольких ошибок  (120,108) приведена на рисунке 2.10  в соответствии  с построенным кодирующим устройством кода Файра (120,108). Сравниваемые по полученным данным  результаты приведены на рисунке 2.11, а также временные спектральные характеристики показаны на рисунке 2.12.

 

2.7.2 Откройте систему декодера  кода Файра с исправлением нескольких ошибок.

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

 

 

Рисунок 2.10- Схема исследуемого декодера кода Файра с исправлением нескольких ошибок  (120,108)

 

              

 

Рисунок 2.11

 

 

 

Рисунок 2.12 – Временные спектральные характеристики

 

 

 

 

 

 

 

 

 

 

 

    

     

 

 

Рисунок 2.13 - Системное время вводимых ошибочных битов за цикл

 

2.8 Выводы

2.8.1 Измените время ввода ошибки и повторно запустите систему на выполнение. Проверьте правильность работы кодера и декодера в этом случае.

2.8.3 По заданию преподавателя соберите и проверьте правильность работы кодера и декодера кода Файра для одного из полиномов, приведенных в таблице 1.1  в разделе 1.1.

 

 

 

2.9 Контрольные вопросы

 

2.9.1 Пояснить принципы помехоустойчивого кодирования.

2.9.2 Циклические коды и их особенности.

2.9.3 Принципы кодирования и декодирования кода Файра при помощи ЛПС.

2.9.4 Объясните суть синдромного  метода декодирования и его отличие от декодирования по методу максимального правдоподобия.

2.9.5 При обнаружении ошибки в кодовой комбинации на стороне приёма каковы пути её исправления?

 

 

3 Лабораторная работа №2

 

Изучение принципов  кодирующее и декодирующее устройства кода Боуза – Чоудхури – Хоквингема (БЧХ)

 

3.1 Цель работы: изучение методов построения кодеров и декодеров кода БЧХ

 

3.2 Домашнее задание

 

3.2.1  Изучить методы кодирования и декодирования кода БЧХ.

3.2.2 Ознакомиться с техническими средствами, применяемыми при кодировании и декодировании кода БЧХ, а также возможностями обнаружения и исправления ошибок.

 

3.3 Рабочее задание

Исследование кодера и декодера кода БЧХ. Собрать схему, установить параметры, снять экранные изображения входного и выходного сигнала.

 

3.4 Исследование кодирующего устройства БЧХ- кодов

 

Процесс выбора образующего многочлена кода Боуза — Чоудхури — Хоквингема, рассчитанного на исправление единичных оши­бок, ничем не отличается от рассмотренного ранее. Основное отличие заключается в интерпретации опознавателей ошибок. В данном случае ими считаются раз­личные степени примитивного элемента поля GF(2m), построенного с использованием выбранного неприводимо­го многочлена g(x) степени n, принадлежащего показа­телю степени п = 2т—1. Так как число различных ненулевых элементов поля, выраженных степенями при­митивного элемента, равно п, то каждому вектору ошиб­ки в отдельном разряде можно сопоставить свой опознаватель, что и гарантирует возможность исправления ошибок.

Все известные кодирующие устройства для любых типов кодов выполнены на регистрах сдвига, которые ничем не отличаются друг от друга. Поэтому в этой лабораторной работе кодирующее устройство кода БЧХ строится, также как кодирующие устройства циклического кода и кода Файра.

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

По приведенной формуле получили следующий вид образующего полинома Р(Х):

а) Р(Х)=  Х8 + Х7 + Х6 + Х4 + 1;

б) число информационных символов, его производят обычным порядком из равенства k=n-m=15-8=7.

Получаем код БЧХ (15,7) с s=2.

При делении кодовой комбинации

 G(X)Хr=100000000000000 на образующий полином вида Р(Х)=111010001 получаем остаток R(X)=11101000.

 

3.4.1 Запустите программу «System View».

Согласно вариантам, по полученным результатам соберите схему кодирующего устройства кода БЧХ.

Схема кодирующего устройства кода БЧХ (15,7) приведена на рисунке 3.1.

 

 

   Рисунок 3.1– Схема кодирующего устройства кода БЧХ (15,7)

 

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

 

Рисунок 3.2

 

 

3.5 Исследование декодирующего устройства кода БЧХ

 

Для исправления ошибок мы построим декодирующее устройство. Принцип работы данного декодирующего устройства хорошо описан в учебнике [5] и  таблице для работы сумматора запоминающего устройства [7].

Таким образом, декодирование состоит из двух этапов. На первом этапе осуществляется нахождение остатка и запись кодовой комбинации, на втором – её исправление и расстановка символов k и  m на свои места.

Поэтому сразу построим декодирующее устройство для исправления ошибок.

 

3.5.1 Запустите программу «System View».

Согласно вариантам, по полученным результатам соберите схему декодирующего устройства кода БЧХ.

Схема декодирующего устройства кода БЧХ (15,7) приведена на рисунке 3.3  в соответствии по полученным расчетам.

 

 

Рисунок 3.3 – Схема декодирующего устройства кода БЧХ (15,7)

 

На рисунке 3.4 представлены временные спектральные характеристики работы регистра ЗУ при размыкании и замыкании разных ключей. А также полученные данные на выходе декодирующего устройства с исправленными ошибками  представлены на рисунке 3.5.

 

 

 

Рисунок 3.4

 

 

 

Рисунок 3.5

 

3.6  Выводы

В конце лабораторной работы  студенты должны показать результаты данной работы. Все эти данные требуются для последующего просмотра преподавателем. Студентам, выполнившим работу, необходимо сообщить об этом преподавателю для отметки в журнале, предъявив данные о числе полученных и исправленных ошибок по разделам работы.

 

3.7 Контрольные вопросы

 

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

3.7.2 В чем заключается трудность декодирования с исправлением ошибок?

3.7.3 Какое главное отличие кодов Рида – Соломона от БЧХ – кодов, в каких случаях находят применение коды Рида – Соломона?

3.7.4 Почему синдром исправленного кодового слова всегда равен нулю, даже если кратность ошибки превосходит корректирующую способность кода и поэтому исправленное кодовое слово неверно?

3.7.5 При обнаружении ошибки в кодовой комбинации на стороне приёма каковы пути её исправления?

 

 

 

 

 

 

 

 

Приложение А

 

 

 

unit Unit1;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, ExtCtrls;

type

  TForm1 = class(TForm)

    Label1: TLabel;

    edpol: TEdit;

    edl: TEdit;

    RadioGroup1: TRadioGroup;

    Rb10: TRadioButton;

    rb11: TRadioButton;

    lb1: TListBox;

    Button1: TButton;

    Label2: TLabel;

    Panel1: TPanel;

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form1: TForm1;

implementation

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: TObject);

var a:array of boolean;

b:array of boolean;

c:array of boolean;

d:array of integer;

i,j,k,p,m:integer;

s,l,pol:string;

begin

lb1.Items.Clear;

label1.Caption:='';

p:=edpol.GetTextLen;

m:=strtoint(edl.Text);

setlength(a,m+1);

setlength(b,p+1);

setlength(c,p+1);

setlength(d,p+1);

pol:=edpol.Text;

 

a[1]:=true;

if rb10.Checked=true then a[2]:=false;

if rb11.Checked=true then a[2]:=true;

for i:=3 to m do

a[i]:=false;

//

for i:=1 to p do

b[i]:=false;

for i:=1 to p do

if pol[i]='1' then b[i]:=true

else b[i]:=false;

//

for j:=1 to m do begin

if j=1 then for i:=1 to p do

if a[i]=true then begin

 if b[i]=true then c[i-1]:=false

 else c[i-1]:=true;

 end

 else if b[i]=true then c[i-1]:=true

 else c[i-1]:=false;

 //

 if j<>1 then

 if c[1]=false then for i:=1 to p do

 c[i-1]:=c[i]

 else for i:=1 to p do begin

 if c[i]=true then begin

 if b[i]=true then c[i-1]:=false

 else c[i-1]:=true;

 end

 else if b[i]=true then c[i-1]:=true

 else c[i-1]:=false;

 end;

 for i:=1 to p do

if c[i]=true then d[i]:=1

 else d[i]:=0;

 l:='.';

 if j>9 then l:='.';

 if j>99 then l:='.';

 for i:=1 to p-1 do

 s:=s+inttostr(d[i]);

 lb1.Items[j-1]:=inttostr(j)+l+s;

s:='';

end;

for i:=1 to p do

if b[i] =true then label1.Caption:=label1.caption+'1'

else label1.caption:=label1.caption+'0';

s:='';

end;

end.

 

На рисунке 3.6 представлены результаты вычисления.

 

 

Рисунок 3.6

 

 

 

 

 

Список литературы

 

1. Никитин Г.И., Антипова И.Б., Красновидов А.В. Корректирующие коды: Методические указания.-Л.: ЛИАП, 1989.-32 с.

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

3. Питерсон У., Уэлдон Э. Коды, исправляющие ошибки: Пер. с англ.- М.: Мир, 1976.-600 с.

Замрий А.С. Помехоустойчивые коды: Учебное пособие/ЛВВИУС.-Л., 1990.-58 с.

4. Колесников В.Д., Мирончиков Е.Т. Декодирование циклических кодов. - М.: Связь, 1968.

5. Дмитриев В.И. Прикладная теория информации: Учебник. – М.: Высш.шк., 1989.

6. Скляр Б. Цифровая связь: Теоретические основы и практическое применение. – М.: Вильямс,2003.

7. Тутевич В.Н. Телемеханика: Учебное пособие.- М.: Высш. Шк., 1985. -423 с.

8. Передача дискретных сообщений: Учебник/Под ред. В.П. Шувалова.- М.: Радио и связь, 1990.

 

 

Содержание

 

Введение …………………………………………………………………

3

1 Теоретические вопросы применения циклических кодов………….

3

    1.1 Циклические коды, обнаруживающие и исправляющие

  пакеты ошибок (коды Файра)…………………………………....

 

4

    1.2 Циклические коды Боуза -Чоудхури –Хоквингема…………….

5

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

7

    2.1 Лабораторная работа №1…………………………………………

7

3 Лабораторная работа №2………………………………………………

17

Приложение А…………………………………………………………….

22

Список литературы………………………………………………………

25

 

 

 

 

Дополнительный план 2005 г., поз.5

 

 

Адильжан Джакипбекович Джангозин

                           Катипа Сламбаевна Чежимбаева

 

 

 

ТЕХНОЛОГИИ ЦИФРОВОЙ СВЯЗИ

Методические указания к выполнению лабораторных работ

(для студентов всех форм обучения специальности  050719 – Радиотехника, электроника и телекоммуникации)

 

 

 

 

 

Редактор Сыздыкова Ж.М.

 

 

 

Подписано в печать

Тираж  50 экз.

Объем 1,6 уч.-изд.л

Формат 60х84

Бумага типографская №1

Заказ          Цена 52 тг

 

    

                            

                                                                 

Копировально-множительное бюро

Алматинского института энергетики и связи

480013, Алматы, ул.Байтурсынова, 126