Цифровое кодирование. Физическое кодирование

1. Симметричный двоичный код.

2. Структура кода.

3. Принципы преобразования параллельного кода в последовательный

В процессе кодирования амплитуда каждого квантованного по уровню АИМ отсчета представляется в виде двоичной последова­тельности, содержащей т символов (m-разрадной кодовой ком­бинации). Для определения структуры комбинации в простейшем случае нужно в двоичном коде записать амплитуду АИМ. от­счета Я аим, выраженную в шагах квантования.

На рис. 5.1 приведены временные диаграммы, поясняющие процесс кодирования при использовании пятиразрядного двоич­ного кода. Амплитуда отсчетов, поступающих на вход кодера, в данном случае может принимать значения в диапазоне # аим = =0-31 условных шагов квантования, а на выходе кодера форми­руется цифровой сигнал с ИКМ, представляющий собой последо­вательность пятиразрядных кодовых комбинаций.

Как было показано выше, для качественной передачи телефон­ных сигналов при неравномерном квантовании необходимо исполь­зовать восьмиразрядный код (т=8, а при равномерном-12-раз­рядный (т=12). На практике находят применение двоичные коды следующих типов: натуральный двоичный код, симметричный двоичный код, рефлексный двоичный код (код Грея).

Симметричный двоичный код в основном исполь­зуется при кодировании двуполярных сигналов (например, теле­фонных). Структура кода и кодовая таб­лица, соответствующая данному коду. Для всех положительных отсчетов знаковый символ имеет значение 1, а для отрицатель­ных 0. Для положительных и отрицательных отсчетов, равных по амплитуде, структуры кодовых комбинаций полностью совпадают (за исключением знакового разряда), т. е. код является симмет­ричным. Например, максимальному положительному сигналу со­ответствует код 11111111, а максимальному отрицательному - 01111111. Абсолютное значение шага квантования 6=Ј/ O rp/2 m ~ 1 .

Натуральный двоичный код в основном используется пои кодировании однополярных сигналов. Показаны структура кода и кодовая таблица, соответствующая данному коду (при т-Ь). Очевидно, что число комбинаций различной структуры равно 256, причем минимальному сигналу соответствует комбинация 00000000, а максимальному -11111111. Абсолютное значение шага квантования 6=£/ огр /2 т.

С помощью натурального двоичного кода можно кодировать и-двуполярные сигналы, обеспечив предварительно их смещение. В этом случае, очевидно, изменяется ампли­туда кодируемых отсчетов, причем переход от амплитуды от* счета Н с> выраженной в шагах квантования, при использования симметричного кода к амплитуде этого же отсчета Я» при исполь­зовании натурального кода и наоборот можно осуществить сле­дующим образом:


|Я„-128 при Н а >\2$, с (# н _127 при Я н <128; Ян 1Я с +127 при Я с <0.

Натуральный и симметричный двоичные коды являются наи­более простыми. Как для натурального, так и для симметричного кода ошибка в одном из символов может привести к значительным искажениям сигнала. Если, например, в кодовой комбинации вида 11010011 ошибка произошла в пятом разряде, т. е. принята комбинация 11000011, то амплитуда отсчета будет меньше истин­ного значения на 2 4 =16 условных шагов квантования. Наиболее опасными, очевидно, будут ошибки в старших разрядах (Ре» Р;Ь

Рассмотрим принципы построения кодирующих и декодирую­щих устройств, которые могут быть линейными и нелинейными.

Линейным кодированием называется кодирование равномерно квантованного сигнала, а нелинейным - неравномерно кван­тованного сигнала.

Рис. 5.1. Принципы преобразования па* раллелыюго кода в последовательный (а) и

По принципу действия кодеры делятся на кодеры счетного типа, матричные» взвешивающего типа и др. В ЦСП чаще всего используются кодеры взвешивающего типа, среди которых про­стейшим является кодер поразрядного взвешивания (рис. 5.20), на выходах которого формируется натуральный двоичный код. Принцип работы таких кодеров заключается в уравновешивании кодируемых отсчетов суммой эталонных токов (напряжений) с оп­ределенными весами. Схема линейного кодера поразрядного взве­шивания содержит восемь ячеек (при т=*8), обеспечивающих формирование значения соответствующего разряда (1 или 0). В со­став каждой ячейки (за исключением последней, соответствующей младшему по весу разряду) входят схема сравнения СС (компа­ратор) и схема вычитания (СВ).

Если, например, на вход кодера поступает отсчет с амплиту­дой И аим = 1746, то ССе формирует Р«-1 и на вход седьмой ячейки поступит сигнал с амплитудой H" Aim =1746-1286=466. На выходе СС7 получим Рт-О, и на вход.третьей ячейки кодера посту­пит сигнал с той же амплитудой #д ИМ =466. На выходе ССе полу­чим Ре- 1, и на вход следующей ячейки поступит сигнал с #^ им *=

466--326=146 и т. д. В результате будет сформирована кодовая комбинация вида 10101110 (первый разряд - старший по весу).

При кодировании двуполярных сигналов в кодере необходимо иметь две схемы формирования эталонов (ФЭ) для кодирования положительных и отрицательных отсчетов.

В процессе декодирования сигнала m-разрядные кодовые ком­бинации преобразуются в АИМ отсчеты с соответствующими ам­плитудами. Сигнал на выходе декодера может быть получен в результате суммирования эталонных сигналов (С/ эт) тех разрядов кодовой комбинации, значение которых равно 1. Так, если на вход декодера поступает кодовая комбинация 10101110, то амплитуда АИМ отсчета на выходе декодера #аим =1286 + 325 + 86+45 + 23 = -1746.

Структурная схема линейного декодера взвешивающего типа представлена на рис. 5.2К Под воздействием управляющих сигна­лов, поступающих от генераторного оборудования, в регистр сдвига записывается очередная восьмиразрядная кодовая комбинация. После этого замыкаются только те ключи (Юн... Кл^), которые соответствуют разрядам, имеющим значение 1. В результате на вход сумматора от формирователя эталонных сигналов (ФЭ) по* ступают соответствующие эталонные сигналы, в результате чего на выходе сумматора формируется АИМ отсчет с определенной амплитудой.

Очевидно, что если в процессе передачи цифрового сигнала по линейному тракту в одном (или больше) разряде кодовой комби­нации произойдет ошибка, то амплитуда отсчета на выходе деко­дера будет отличаться от истинного значения. Если, например, в комбинации 10101110 произойдет ошибка в Р&, г* е* на вход де­кодера поступит комбинация 10001110, то амплитуда отсчета на выходе декодера Яаим =12864-86 + 46 + 26^ 1426, т. е. на 32& меньше истинной амплитуды отсчета, равной 1746.

При построении кодеров и декодеров необ­ходимо использовать ФЭ, формирующие набор эталонных сигна­лов, причем соотношение между значениями двух соседних этало­нов равно 2 (16,26,46,..., 1286). Общая идея построения таких устройств заключается в использовании одного высокостабильного эталонного источника сигнала и цепочки схем, имеющих коэффи­циент передачи /(=1/2). Такие схемы обычно имеют вид матрицы, реализуемой на прецизионных сопротивлениях двух но­миналов (R и 2R).

В современных 1ДСП применяются нелинейные кодирующие и декодирующие устройства (нелинейные кодеки)» обеспечивающие кодирование и декодирование сигналов с неравномерной шкалой квантования при восьмиразрядном коде (т-8). Для кодирования с неравномерной шкалой квантования могут использоваться сле­дующие способы:

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

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

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

При аналоговом командировании (рис. 5.24) на входе линей­ного кодера (ЛК) и выходе линейного декодера (ЛД) включаются соответственно аналоговые компрессор (АК) и экспандер (АЭ), обеспечивающие соответствующее нелинейное преобразование ана­логового сигнала (см. рис. 5.15).

Нижним уровнем в иерархии кодирования является физическое кодирование, которое определяет число дискретных уровней сигнала (амплитуды напряжения, амплитуды тока, амплитуды яркости).

Физическое кодирование рассматривает кодирование только на самом низшем уровне иерархии кодирования - на физическом уровне и не рассматривает более высокие уровни в иерархии кодирования, к которым относятся логические кодирования различных уровней.

С точки зрения физического кодирования цифровой сигнал может иметь два, три, четыре, пять и т. д. уровней амплитуды напряжения, амплитуды тока, амплитуды света.

Ни в одной из версий технологии Ethernet не применяется прямое двоичное кодирование бита 0 напряжением 0 вольт и бита 1 - напряжением +5 вольт, так как такой способ приводит к неоднозначности. Если одна станция посылает битовую строку 00010000, то другая станция может интерпретировать её либо как 10000, либо как 01000, так как она не может отличить «отсутствие сигнала» от бита 0. Поэтому принимающей машине необходим способ однозначного определения начала, конца и середины каждого бита без помощи внешнего таймера. Кодирование сигнала на физическом уровне позволяет приемнику синхронизироваться с передатчиком по смене напряжения в середине периода битов.

В некоторых случаях физическое кодирование решает проблемы:

Логическое кодирование

Вторым уровнем в иерархии кодирования является самый нижний уровень логического кодирования с разными назначениями.

В совокупности физическое кодирование и логическое кодирование образуют систему кодирования низкого уровня.

Форматы кодов [ ]

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

Направление перепада при передаче сигнала единицы не имеет значения. Поэтому изменение полярности кодированного сигнала не влияет на результат декодирования. Он может передаваться по симметричным линиям без постоянной составляющей. Это также упрощает его магнитную запись. Этот формат известен также под названием «Манчестер 1». Он используется в адресно-временном коде SMPTE, широко применяющемся для синхронизации носителей звуковой и видеоинформации.

Системы с двухуровневым кодированием

NRZ (Non Return to Zero)

NRZ (Non Return to Zero, с англ.  -  «без возвращения к нулю») - двухуровневый код. Логическому нулю соответствует нижний уровень, логической единице - верхний уровень. Информационные переходы происходят на границе значащих интервалов (значащий момент) .

Варианты представления кода NRZ

Различают несколько вариантов представления кода:

  • Униполярный код - логическая единица представлена верхним потенциалом, логический нуль представлен нулевым потенциалом;
  • Биполярный код - логическая единица представлена положительным потенциалом, логический нуль представлен отрицательным потенциалом.

Достоинства NRZ кода

  • Простая реализация;
  • Высокая скорость передачи данных;
  • Для синхронизации передачи байта используется старт-стоповый бит.

Недостатки NRZ кода

NRZI (Non Return to Zero Invertive) - потенциальный код с инверсией при единице, код формируется путем инверсного состояния при поступлении на вход кодирующего устройства логической единицы, при поступлении логического нуля состояние потенциала не меняется. Этот метод является модифицированным методом Non Return to Zero (NRZ) .

Поскольку код не защищен от долгих последовательностей логических нулей или единиц, то это может привести к проблемам синхронизации. Поэтому перед передачей, заданную последовательность битов рекомендуется предварительно закодировать кодом предусматривающим скремблирование (скремблер предназначен для придания свойств случайности передаваемой последовательности данных с целью облегчения выделения тактовой частоты приемником). Используется в Fast Ethernet 100Base-FX и 100Base-T4.

Достоинства NRZI кода

  • Простота реализации;
  • Метод обладает хорошей распознаваемостью ошибок (благодаря наличию двух резко отличающихся потенциалов);
  • Спектр сигнала расположен в низкочастотной области относительно частоты следования значащих интервалов.

Недостатки NRZI кода

  • Метод не обладает свойством самосинхронизации. Даже при наличии высокоточного тактового генератора приёмник может ошибиться с выбором момента съёма данных, так как частоты двух генераторов никогда не бывают полностью идентичными. Поэтому при высоких скоростях обмена данными и длинных последовательностях единиц или нулей небольшое рассогласование тактовых частот может привести к ошибке в целый такт и, соответственно, считыванию некорректного значения бита;
  • Вторым серьёзным недостатком метода, является наличие низкочастотной составляющей, которая приближается к постоянному сигналу при передаче длинных последовательностей единиц и нулей (можно обойти сжатием передаваемых данных). Из-за этого многие линии связи, не обеспечивающие прямого гальванического соединения между приёмником и источником, этот вид кодирования не поддерживают. Поэтому в сетях код NRZ в основном используется в виде различных его модификаций, в которых устранены как плохая самосинхронизация кода, так и проблемы постоянной составляющей.

Манчестерское кодирование

Манчестерское кодирование

При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала в середине каждого такта. Различают два варианта манчестерского кодирования:

В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколько единиц или нулей подряд. Так как сигнал изменяется по крайней мере один раз за такт передачи одного бита данных, то манчестерский код обладает самосинхронизирующими свойствами. Обязательное наличие перехода в центре бита позволяет легко выделить синхросигнал. Допустимое расхождение частот передачи - до 25 % (это означает, что код Манчестер-2 - самый устойчивый к рассинхронизации, он самосинхронизуется в каждом бите передаваемой информации).

Плотность кода 1 бит/герц. В спектре сигнала, закодированного Манчестером-2, присутствует 2 частоты - частота передачи и половинная частота передачи (она образуется когда рядом стоят 0 и 1 или 1 и 0. При передаче гипотетической последовательности одних 0 или 1 в спектре будет присутствовать только частота передачи).

Достоинства манчестерского кодирования

  • Нет постоянной составляющей (смена сигнала происходит на каждом такте передачи данных)
  • Полоса частот в сравнении с NRZ кодированием - основная гармоника в при передаче последовательности единиц или нулей имеет частоту N Гц, а при постоянной последовательности (при передаче чередования единиц и нулей) - N/2 Гц.
  • Является самосинхронизирующимся , то есть не требует специальной кодировки синхроимпульса, который бы занимал полосу данных и поэтому является самым плотным кодом на единицу частоты.
  • Возможность обеспечить гальваническую развязку с помощью трансформатора, так как у него отсутствует постоянная составляющая
  • Вторым важным преимуществом является отсутствие необходимости в синхронизующих битах (как в NRZ-коде) и, вследствие этого, данные могут передаваться подряд сколь угодно долго, из-за чего плотность данных в общем потоке кода приближается к 100 % (например для кода NRZ 1-8-0 она равна 80 %).

Код Миллера

Код Миллера (иногда называют трехчастотным) - является двуполярным двухуровневым кодом, в котором каждый информационный бит кодируется комбинацией из двух битов {00, 01,10,11}, а переходы из одного состояния в другое описываются графом . При непрерывном поступлении логических нулей или единиц на кодирующее устройство переключение полярности происходит с интервалом T, а переход от передачи единиц к передаче нулей с интервалом 1,5T. При поступлении на кодирующее устройство последовательности 101 возникает интервал 2Т, по этой причине данный метод кодирования называют трехчастотным .

Преимущества

  • Нет избыточности в коде (нет специальных комбинаций для синхронизации);
  • Способность к самосинхронизации (в самом коде заложен принцип по которому гарантированно можно синхронизироваться);
  • Полоса пропускания кода Миллера вдвое меньше полосы пропускания в сравнении с манчестерским кодированием.

Недостатки

  • Присутствие постоянной составляющей, при этом достаточно велик и низкочастотный компонент, что преодолено в модифицированном коде Миллера в квадрате.

Системы с трёхуровневым кодированием

RZ (return to zero)

AMI -код использует следующие представления битов:

  • биты 0 представляются нулевым напряжением (0 В)
  • биты 1 представляются поочерёдно значениями -U или +U (В)

HDB3 (биполярный код с высокой плотностью третьего порядка)

Код HDB3 (биполярный код с высокой плотностью третьего порядка ) исправляет любые 4 подряд идущих нуля в исходной последовательности. Правило формирования кода следующее: каждые 4 нуля заменяются 4 символами в которых имеется хотя бы один сигнал V. Для подавления постоянной составляющей полярность сигнала V чередуется при последовательных заменах. Для замены используются два способа:

  1. Если перед заменой исходный код содержал нечётное число единиц то используется последовательность 000V
  2. Если перед заменой исходный код содержал чётное число единиц то используется последовательность 100V

V-сигнал единицы запрещённого для данного сигнала полярности

Тоже что и AMI , только кодирование последовательностей из четырех нулей заменяется на код -V/0, 0, 0, -V или +V/0, 0, 0, +V - в зависимости от предыдущей фазы сигнала и количества единиц в сигнале, предшествующем данной последовательности нулей.

MLT-3

Кодирование MLT-3

MLT-3 (Multi Level Transmission - 3) (англ. многоуровневая передача) - метод кодирования, использующий три уровня сигнала. Метод основывается на циклическом переключении уровней -U, 0, +U. Единице соответствует переход с одного уровня сигнала на следующий. Так же как и в методе NRZI при передаче логического нуля сигнал не меняется. Метод разработан Cisco Systems для использования в сетях FDDI на основе медных проводов, известных как CDDI. Также используется в Fast Ethernet 100BASE-TX . Единице соответствует переход с одного уровня сигнала на другой, причем изменение уровня сигнала происходит последовательно с учетом предыдущего перехода. При передаче нуля сигнал не меняется.

Преимущества MLT-3 кода

  • В случае наиболее частого переключения уровней (длинная последовательность единиц) для завершения цикла необходимо четыре перехода. Это позволяет вчетверо снизить частоту несущей относительно тактовой частоты, что делает MLT-3 удобным методом при использовании медных проводов в качестве среды передачи.
  • Этот код, так же как и NRZI нуждается в предварительном кодировании. Используется в Fast Ethernet 100Base-TX .

Гибридный троичный код (англ.) русск.

Входной бит Предыдущее состояние
на выходе
Выходной бит
0 +
0
0
1 +
0 +

4B3T

4B3T (4 Binary 3 Ternary, когда 4 двоичных символа передаются с помощью 3 троичных символов) - cигнал на выходе кодирующего устройства, согласно коду 4B3T, является трехуровневым, то есть на выходе кодирующего устройства формируется сигнал с тремя потенциальными уровнями. Код формируется, например, согласно таблице кодирования MMS43 . Таблица кодирования:

MMS 43 coding table
Input Accumulated DC offset
1 2 3 4
0000 + 0 + (+2) 0−0 (−1)
0001 0 − + (+0)
0010 + − 0 (+0)
0011 0 0 + (+1) − − 0 (−2)
0100 − + 0 (+0)
0101 0 + + (+2) − 0 0 (−1)
0110 − + + (+1) − − + (−1)
0111 − 0 + (+0)
1000 + 0 0 (+1) 0 − − (−2)
1001 + − + (+1) − − − (−3)
1010 + + − (+1) + − − (−1)
1011 + 0 − (+0)
1100 + + + (+3) − + − (−1)
1101 0 + 0 (+1) − 0 − (−2)
1110 0 + − (+0)
1111 + + 0 (+2) 0 0 − (−1)

Таблица декодирования:

Ternary Binary Ternary Binary Ternary Binary
0 0 0 н/д − 0 0 0101 + − − 1010
+ 0 + 0000 − + + 0110 + 0 − 1011
0 − 0 0000 − − + 0110 + + + 1100
0 − + 0001 − 0 + 0111 − + − 1100
+ − 0 0010 + 0 0 1000 0 + 0 1101
0 0 + 0011 0 − − 1000 − 0 − 1101
− − 0 0011 + − + 1001 0 + − 1110
− + 0 0100 − − − 1001 + + 0 1111
0 + + 0101 + + − 1010 0 0 − 1111

Системы с четырёхуровневым кодированием

2B1Q (Потенциальный код 2B1Q)

Достоинство метода 2B1Q

  • Сигнальная скорость у этого метода в два раза ниже, чем у кодов NRZ и AMI, а спектр сигнала в два раза уже. Следовательно с помощью 2B1Q-кода можно по одной и той же линии передавать данные в два раза быстрее.

Недостатки метода 2B1Q

  • Реализация этого метода требует более мощного передатчика и более сложного приемника, который должен различать четыре уровня.

Общие сведения

Как известно, для передачи информации ее представляют в форме сообщения, например текста. При этом сообщение формируется из некоторого набора символов (букв). Набор символов, из которого формируется сообщение, называется первичным алфавитом . Первичный алфавит обычно содержит большое число символов, например, в русском языке первичный алфавит составляет 33 символа (буквы). При передаче сообщения на него воздействуют помехи, что приводит к изменению символов сообщения, а поскольку количество символов сравнительно большое и вероятность появления их одинакова, то восстановить исходное сообщение довольно сложно. Поэтому осуществляют переход от первичного алфавита с большим количеством символов к вторичному алфавиту с малым числом символов. Так как количество символов вторичного алфавита меньше, то и восстановить исходное сообщение становится легче. Таким образом, можно сказать, что, вторичный алфавит это набор символов, с помощью которого осуществляется отображение символов первичного алфавита. Процесс перехода от первичного алфавита к его вторичному отображению называется кодированием . Набор элементов и правило, в соответствии с которым осуществляется переход от первичного алфавита ко вторичному отображению называется кодом . В процессе кодирования каждому символу первичного алфавита соответствует некоторый набор символов вторичного алфавита. Последовательность символов вторичного алфавита соответствующая одному символу первичного алфавита называется кодовой комбинацией . Для того чтобы правильно восстановить закодированное исходное сообщение необходимо, чтобы кодовые комбинации различных символов первичного алфавита не повторялись.

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

Автоматическое кодирование осуществляется в устройстве называемом кодером , а обратный процесс декодирование происходит в декодере . Устройство, объединяющее кодер и декодер называется кодек .

Система передачи сообщений с кодированием представлена на рисунке 1.

Рисунок 1 - Структурная схема системы передачи с кодированием сигналов

Источник сообщения (ИС) формирует сообщение, которое преобразуется в сигнал в преобразователе сообщения в сигнал (ПСС1). Аналоговый сигнал из ПСС1 поступает в аналого-цифровой преобразователь (АЦП) где аналоговый сигнал преобразуется в цифровой. Цифровой сигнал поступает в кодер источника. В кодере источника из закодированного сообщения удаляют избыточность, что позволяет увеличить скорость передачи информации в канале. Полученная на выходе кодера кодовая последовательность Аi поступает в кодер канала. В кодере канала осуществляется кодирование с целью повышения помехоустойчивости сигнала. Для этого кодирования используются корректирующие (помехоустойчивые) коды. Полученная в кодере канала последовательность Bip поступает в канал связи. Под действием помех N(t), воздействующих в канале возможны искажения принимаемого сигнала, проявляющиеся в изменении элементов кодовой последовательности. Принимаемая из канала последовательность Bip’ поступает в кодер канал. В нем осуществляется декодирование и исправление (коррекция) ошибок. Полученная на выходе последовательность Ai’ поступает в декодер источника, в котором восстанавливается избыточность закодированного сообщения. Затем сигнал поступает в цифро-аналоговый преобразователь (ЦАП), где осуществляется преобразование цифрового сигнала в аналоговый. Затем сигнал поступает в преобразователь сигнала в сообщение (ПСС2), где он преобразуется в форму удобную для получателя. Полученное сообщение воспринимается получателем (ПС).

Параметры кодов

Основание кода (m ) — соответствует количеству элементов, из которых состоит вторичный алфавит, соответствует системе счисления. Например в двоичном коде символы могут принимать два значения «0» и «1» или «.» и «-».

Разрядность кодовой комбинации (n ) — соответствует количеству элементов, из которых состоит кодовая комбинация. Например, для кодовой комбинации 100110 разрядность составляет 6.

Емкость кода (N 0 ) — соответствует количеству возможных кодовых комбинаций при заданном основании и разрядности:

N 0 = m n .

Данный показатель применяют к равномерным кодам.

Количество сообщений, которые необходимо закодировать N а — соответствует количеству символов первичного алфавита. Например для русского алфавита N а = 33.

Для корректирующих кодов вводятся следующие параметры.

Вес кодовой комбинации (W ) — соответствует количеству ненулевых элементов в кодовой комбинации. Например, для кодовой комбинации 11011 вес равен W = 4.

Расстояние Хэмминга (d ij ) — показывает, на сколько разрядов одна кодовая комбинация отличается от другой. Данный параметр определяется как вес кодовой комбинации полученной в результате сложения по модулю два двух рассматриваемых комбинаций

Кодовое расстояние (d 0) — это наименьшее расстояние Хэмминга для заданного кода. Для его определения d 0 производится определение расстояния Хэмминга для всех возможных пар кодовых комбинаций кода, после чего выбирается наименьшее. Например, для кода состоящего из трех кодовых комбинаций 100101, 011010, 100011 кодовое расстояние будет равно

Относительная скорость кода (R к) — показывает относительное число разрешенных комбинаций кода.

R к = log 2 Na / log 2 N 0 .

Избыточность кода (c к ) — показывает относительное число запрещенных комбинации кода.

c к = 1 – R к.

Корректирующая способность кода — определяется кратностями обнаруживаемых (q о ош) и исправляемых (q и ош) ошибок, под которыми понимают гарантированное число обнаруживаемых и исправляемых ошибок в кодовых комбинациях кодом. Например, если q о ош = 1, то код способен обнаружить ошибку в любом разряде принятой комбинации, при условии, что она одна, а если q и ош = 1 то код способен исправить одну ошибку в любом разряде принятой комбинации, при условии, что она одна.

Классификация кодов

Общая классификация кодов представлена схемой (рисунок 2).

Двоичные — это коды, основание которых равно двум (m=2), примерами таких кодов может являться код Морзе, линейный двоичный код.

Многопозиционные — это коды, основание которых больше двух (m>2).

Равномерные — это коды, все кодовые комбинации которых имеют одинаковую разрядность (n=const), примерами таких кодов могут являться циклические коды, МТК-3.

Неравномерные — это коды, кодовые комбинации которых имеют различную разрядность (n?const), примерами таких кодов могут являться код Шеннона-Фано, код Хафмена, код Морзе.

Простые — это коды, в которых все возможные кодовые комбинации используются для передачи сообщения (N 0 =N a). Такие коды не обладают способностью обнаруживать и исправлять ошибки в кодовых комбинациях.

Рисунок 2 - Классификация кодов

Избыточные — это коды, в которых часть кодовых комбинаций используется для передачи сообщений (разрешенные комбинации ), а остальные комбинации не используется для передачи сообщений (запрещенные комбинации ), т. е. у таких кодов N 0 >N a . Такие коды способны обнаруживать и исправлять ошибки в кодовых комбинациях.

Последовательные — это коды, разряды кодовых комбинаций которых передаются последовательно друг за другом. Такие коды используются для передачи сообщений в каналы связи (код Морзе, МТК-3, HDB-3).

Параллельные — это коды, разряды кодовых комбинаций которых передаются одновременно. Такие коды используются в микропроцессорной технике, а также к ним можно отнести многочастотные коды, используемые в координатных АТС.

При цифровом кодировании дискретной информации применяют потенциальные и импульсные коды.

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

Требования к методам цифрового кодирования

При использовании прямоугольных импульсов для передачи дискретной информации необходимо выбрать такой способ кодирования, который одновременно до­стигал бы нескольких целей:

Имел при одной и той же битовой скорости наименьшую ширину спектра результирующего сигнала;

Обеспечивал синхронизацию между передатчиком и приемником;

Обладал способностью распознавать ошибки;

Обладал низкой стоимостью реализации.

Более узкий спектр сигналов позволяет на одной и той же линии (с одной и той же полосой пропускания) добиваться более высокой скорости передачи данных. Кроме того, часто к спектру сигнала предъявляется требование отсутствия постоянной составляющей, то есть наличия постоянного тока между передатчиком и приемником. В частности, применение различных трансформаторных схем гальванической развязки препятствует прохождению постоянного тока.

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

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

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

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

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

Потенциальный код без возвращения к нулю

На рис. 2.16, а показан уже упомянутый ранее метод потенциального кодирования, называемый также кодированием без возвращения к нулю (NonReturntoZero,NRZ). Последнее название отражает то обстоятельство, что при передаче последователь­ности единиц сигнал не возвращается к нулю в течение такта (как мы увидим ниже, в других методах кодирования возврат к нулю в этом случае происходит). МетодNRZпрост в реализации, обладает хорошей распознаваемостью ошибок (из-за двух резко отличающихся потенциалов), но не обладает свойством самосинхро­низации. При передаче длинной последовательности единиц или нулей сигнал на линии не изменяется, поэтому приемник лишен возможности определять по вход­ному сигналу моменты времени, когда нужно в очередной раз считывать данные. Даже при наличии высокоточного тактового генератора приемник может ошибиться с моментом съема данных, так как частоты двух генераторов никогда не бывают полностью идентичными. Поэтому при высоких скоростях обмена данными и длин­ных последовательностях единиц или нулей небольшое рассогласование тактовых частот может привести к ошибке в целый такт и, соответственно, считыванию не­корректного значения бита.

Другим серьезным недостатком метода NRZявляется наличие низкочастотной составляющей, которая приближается к нулю при передаче длинных последовательностей единиц или нулей. Из-за этого многие каналы связи, не обеспечивающие прямого гальванического соединения между приемником и источником, этот вид кодирования не поддерживают. В результате в чистом виде кодNRZв сетях не используется. Тем не менее используются его различные модификации, в которых устраняют как плохую самосинхронизацию кодаNRZ, так и наличие постоянной составляющей. Привлекательность кодаNRZ, из-за которой имеет смысл заняться его улучшением, состоит в достаточно низкой частоте основной гармоникиfo, которая равнаN/2 Гц, как это было показано в предыдущем разделе. У других мето­дов кодирования, например манчестерского, основная гармоника имеет более высокую частоту.

Метод биполярного кодирования с альтернативной инверсией

Одной из модификаций метода NRZявляется метод биполярного кодирования с альтернативной инверсией (BipolarAlternateMarkInversion,AMI). В этом методе (рис. 2.16, б) используются три уровня потенциала - отрицательный, нулевой и положительный. Для кодирования логического нуля используется нулевой потен­циал, а логическая единица кодируется либо положительным потенциалом, либо отрицательным, при этом потенциал каждой новой единицы противоположен потенциалу предыдущей.

Код AMIчастично ликвидирует проблемы постоянной составляющей и отсут­ствия самосинхронизации, присущие кодуNRZ. Это происходит при передаче длинных последовательностей единиц. В этих случаях сигнал на линии представляет собой последовательность разнополярных импульсов с тем же спектром, что и у кодаNRZ, передающего чередующиеся нули и единицы, то есть без постоянной составляющей и с основной гармоникойN/2 Гц (где N - битовая скорость переда­чи данных). Длинные же последовательности нулей также опасны для кодаAMI, как и для кодаNRZ- сигнал вырождается в постоянный потенциал нулевой амплитуды. Поэтому кодAMIтребует дальнейшего улучшения, хотя задача упрощается - осталось справиться только с последовательностями нулей.

В целом, для различных комбинаций бит на линии использование кода AMIприводит к более узкому спектру сигнала, чем для кодаNRZ, а значит, и к более высокой пропускной способности линии. Например, при передаче чередующихся единиц и нулей основная гармоникаfoимеет частотуN/4 Гц. КодAMIпредоставляет также некоторые возможности по распознаванию ошибочных сигналов. Так, нарушение строгого чередования полярности сигналов говорит о ложном импульсе или исчезновении с линии корректного импульса. Сигнал с некорректной полярностью называется запрещенным сигналом (signalviolation).

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

Потенциальный код с инверсией при единице

Существует код, похожий на AMI, но только с двумя уровнями сигнала. При пере­даче нуля он передает потенциал, который был установлен в предыдущем такте (то есть не меняет его), а при передаче единицы потенциал инвертируется на противоположный. Этот код называется потенциальным кодом с инверсией при единице

(NonReturntoZerowithonesInverted,NRZI). Этот код удобен в тех случаях, когда использование третьего уровня сигнала весьма нежелательно, например в оптичес­ких кабелях, где устойчиво распознаются два состояния сигнала - свет и темнота. Для улучшения потенциальных кодов, подобныхAMIиNRZI, используются два метода. Первый метод основан на добавлении в исходный код избыточных бит, содержащих логические единицы. Очевидно, что в этом случае длинные последовательности нулей прерываются и код становится самосинхронизирующимся для любых передаваемых данных. Исчезает также постоянная составляющая, а значит, еще более сужается спектр сигнала. Но этот метод снижает полезную пропускную способность линии, так как избыточные единицы пользовательской информации не несут. Другой метод основан на предварительном «перемешивании» исходной информации таким образом, чтобы вероятность появления единиц и нулей на ли­нии становилась близкой. Устройства, или блоки, выполняющие такую операцию, называются скрэмблерами (scramble- свалка, беспорядочная сборка). При скремблировании используется известный алгоритм, поэтому приемник, получив двоич­ные данные, передает их на дескрэмблер, который восстанавливает исходную последовательность бит. Избыточные биты при этом по линии не передаются. Оба метода относятся к логическому, а не физическому кодированию, так как форму сигналов на линии они не определяют. Более детально они изучаются в следующем разделе.

Биполярный импульсный код

Кроме потенциальных кодов в сетях используются и импульсные коды, когда дан­ные представлены полным импульсом или же его частью - фронтом. Наиболее простым случаем такого подхода является биполярный импульсный код, в котором единица представлена импульсом одной полярности, а ноль - другой (рис. 2.16, в). Каждый импульс длится половину такта. Такой код обладает отличными самосинхронизирующими свойствами, но постоянная составляющая может присутство­вать, например, при передаче длинной последовательности единиц или нулей. Кроме того, спектр у него шире, чем у потенциальных кодов. Так, при передаче всех нулей или единиц частота основной гармоники кода будет равна N Гц, что в два раза выше основной гармоники кода NRZи в четыре раза выше основной гармоники кодаAMIпри передаче чередующихся единиц и нулей. Из-за слишком широкого спектра биполярный импульсный код используется редко.

Манчестерский код

В локальных сетях до недавнего времени самым распространенным методом коди­рования был так называемый манчестерский код (рис. 2.16, г). Он применяется в технологиях EthernetиTokenRing.

В манчестерском коде для кодирования единиц и нулей используется перепад потенциала, то есть фронт импульса. При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала, происходящими в середине каждого такта. Единица кодируется перепадом от низкого уровня сигнала к высокому, а ноль - обратным перепадом. В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколь­ко единиц или нулей подряд. Так как сигнал изменяется по крайней мере один раз за такт передачи одного бита данных, т.о. манчестерский код обладает хорошими самосинхронизирующими свойствами. Полоса пропускания манчестерского кода уже, чем у биполярного импульсного. У него также нет постоянной составляющей, а основная гармоника в худшем случае (при передаче последовательности единиц или нулей) имеет частоту N Гц, а в лучшем (при передаче чередующихся единиц и нулей) она равна N/2 Гц, как и у кодовAMIилиNRZ. В среднем ширина полосы манчестерского кода в полтора раза уже, чем у биполярного импульсного кода, а основная гармоника колеблется вблизи значения 3N/4. Манчестерский код имеет еще одно преимущество перед биполярным импульсным кодом. В последнем для передачи данных используются три уровня сигнала, а в манчестерском - два.

Потенциальный код 2В1 Q

На рис. 2.16, д показан потенциальный код с четырьмя уровнями сигнала для кодирования данных. Это код 2В1Q, название которого отражает его суть - каждые два бита (2В) передаются за один такт сигналом, имеющим четыре состояния (1Q). Паре бит 00 соответствует потенциал -2,5 В, паре бит 01 соответствует потенциал -0,833 В, паре 11 - потенциал +0,833 В, а паре 10 - потенциал +2,5 В. При этом способе кодирования требуются дополнительные меры по борьбе с длинными по­следовательностями одинаковых пар бит, так как при этом сигнал превращается в постоянную составляющую. При случайном чередовании бит спектр сигнала в два раза уже, чем у кодаNRZ, так как при той же битовой скорости длительность такта увеличивается в два раза. Таким образом, с помощью кода 2В1Qможно по одной и той же линии передавать данные в два раза быстрее, чем с помощью кодаAMIилиNRZI. Однако для его реализации мощность передатчика должна быть выше, что­бы четыре уровня четко различались приемником на фоне помех.

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

где а,= {0, 1}-состояние соответствующего разряда комбинации; - вес соответствующего разряда в условных шагах квантования.

Например, если =5, а = 26, то кодовая комбинация будет иметь структуру 11010 (первый разряд--старший по весу), так ак. Последовательность-разрядных кодовых комбинаций представляет собой груп­повой сигнал с ИКМ, называемый также цифровым.

На рис. 5.16 приведены временные диаграммы, поясняющие процесс кодирования при использовании пятиразрядного двоич­ного кода. Амплитуда отсчетов, поступающих на вход кодера, в данном случае может принимать значения в диапазоне = 0-31 условных шагов квантования, а на выходе кодера форми­руется цифровой сигнал с ИКМ, представляющий собой последо­вательность пятиразрядных кодовых комбинаций.

Как было показано выше, для качественной передачи телефон­ных сигналов при неравномерном квантовании необходимо исполь­зовать восьмиразрядный код (=8, а при равномерном- 12-раз­рядный (=12). На практике находят применение двоичные коды следующих типов: натуральный двоичный, код, симметричный двоичный код, рефлексный двоичный код (код Грея).

Симметричный двоичный код в основном исполь­зуется при кодировании двуполярных сигналов (например, телефонных). На рис. 2.17 показаны структура кода и кодовая таблица, соответствующая данному коду. Для всех положительных I отсчетов знаковый символ имеет значение 1, а для отрицатель-I ных 0. Для положительных и отрицательных отсчетов, равных по I амплитуде, структуры кодовых комбинаций полностью совпадают I (за исключением знакового разряда), т. е. код является симметричным. Например, максимальному положительному сигналу ответствует код 11111111, а максимальному отрицательному-01111111. Абсолютное значение шага квантования■ Натуральный двоичный код в основном используется I при кодировании однополярных сигналов. На рис. 2.18 показаны структура кода и кодовая таблица, соответствующая данному коду (при =8).

Рис. 2.17. Формирован ие симметричного двоичного кода

Очевидно, что число комбинаций различной структуры равно 256, причем минимальному сигналу соответствует комбинация 00000000, а максимальному-11111111, Абсолютное значение шага квантования

С помощью натурального двоичного кода можно кодировать и-двуполярные сигналы, обеспечив предварительно их смещение, как. показано на рис. 5.17. В этом случае, очевидно, изменяется ампли­туда кодируемых отсчетов, причем переход от амплитуды от­счета, выраженной в шагах квантования, при использовании симметричного кода к амплитуде этого же отсчетапри исполь­зовании натураль-ного кода и наоборот можно осуществить сле­дующим образом (рис. 2.17 и 2.18):



Натуральный и симметричный двоичные коды являются наи­более простыми. Как для натурального, так и для симметричного кода ошибка в одном из символов может привести к значительным искажениям сигнала. Если, в кодовой комбинации вида 11010011 ошибка произошла в пятом разряде; т. е. принята комбинация 11000011, то амплитуда отсчета будет меньше истин­ного значения на =16 условных шагов квантования. Рассмотрим принципы построения кодирующих и декодирую­щих устройств, которые могут быть линейными и нелинейными. Линейным кодированием называется кодирование равномерно квантованного сигнала, а нелинейным - неравномерно кван­тованного сигнала. Код, формируемый в кодере, называется параллельным, если сигналы, входящие в со­став m-разрядной кодовой группы, появляются на разных выхо­дах кодера одновременно, причем каждому выходу кодера соот­ветствует сигнал определенного разряда. Код называется после­довательным, если все сигналы, входящие в состав т-раз рядной кодовой группы, появляются на одном выходе кодера поочередно со сдвигом по времени,

Рис. 2.18. Формирование натурального двоичного кода

Параллельный код может преобразовываться в последовательный (рис. 2.19, я) и наоборот (рис. 2.19,6) с по­мощью логических схем, обеспечивающих сдвиг импульсов во времени (например, регистров сдвига).

Рис. 2.19. Принципы преобразования па- Рис. 2.20. Линейный кодер поразряд-раллельного кода в последовательный ного взвешивания (а) и наоборот (б)


Запись и считывание инфор­мации из регистра осуществляется под управлением сигналов, поступающих от генераторного оборудования.

По принципу действия кодеры делятся на кодеры счетного типа, матричные, взвешивающего типа и др. В ЦСП чаще всего используются кодеры взвешивающего типа, среди которых про­стейшим является кодер поразрядного взвешивания (рис. 2.20), на выходах которого формируется натуральный двоичный код. Принцип работы таких кодеров заключается в уравновешивании кодируемых отсчетов суммой эталонных токов (напряжений) с оп­ределенными весами. Схема линейного кодера поразрядного взве­шивания содержит восемь ячеек (при =8), обеспечивающих формирование значения соответствующего разряда (1 или 0). В со­став каждой ячейки (за исключением последней, соответствующей младшему по весу разряду) входят схема сравнения СС (компа­ратор) и схема вычитания (СВ).

Схемы сравнения обеспечивают сравнение амплитуды посту­пающего АИМ сигнала с эталонными сигналами, амплитуды ко­торых соответствуют весам соответствующих разрядов (= =. Если амплитуда сигнала на входе СС, равна или превышает , то на выходе форми­руется 1 (импульс), виз сигнала вычитается , после чего он поступает на вход следующей ячейки. Если амплитуда сигнала на входе меньше , то на выходеформируется 0 (про­бел) и сигнал проходит через без каких-либо изменений. После окончания процесса кодирования данного отсчета на выхо­дах кодера получают восьмиразрядный параллельный код, кодер устанавливается в исходное положение и начинается процесс ко­дирования следующего отсчета. Таким образом, процесс кодиро­вания соответствует операции взвешивания (амплитуда кодируе­мого отсчета в процессе кодирования уравновешивается суммой эталонных значений соответствующих разрядов).

Если, например, на вход кодера поступает отсчет с амплиту­дой , то ССб формирует = 1 и на вход седьмой ячейки поступит сигнал с амплитудой. На выходеполучим=0, и на вход третьей ячейки кодера посту­пит сигнал с той же амплитудой. На выходе СС 6 полу­чим= 1, и на вход следующей ячейки поступит сигнал с= 1 =и т. д. В результате будет сформирована кодовая комбинация вида 10101110 (первый разряд - старший по весу).

При кодировании двуполярных сигналов в кодере необходимо иметь две схемы формирования эталонов, (ФЭ) для кодирования положительных и отрицательных отсчетов.

В процессе декодирования сигнала-разрядные кодовые ком­бинации преобразуются в АИМ отсчеты с соответствующими ам­плитудами. Сигнал на выходе декодера может быть получен в результате суммирования эталонных сигналов () тех разрядов кодовой комбинации, значение которых равно 1. Так, если на вход декодера поступает кодовая комбинация 10101110, то амплитуда АИМотсчета на выходе декодера =174δ


Рис. 2.21 Линейный декодер взвеши- Рис. 2.22 Линейный кодер
вающего типа с обратной связью

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

соответствуют разрядам, имеющим значение 1. В результате на вход сумматора от формирователя эталонных сигналов (ФЭ) по­ступают соответствующие эталонные сигналы, в результате чего на выходе сумматора формируется АИМ отсчет с определенной амплитудой.

Очевидно, что если в процессе передачи цифрового сигнала по линейному тракту в одном (или больше) разряде кодовой комби­нации произойдет ошибка, то амплитуда отсчета на выходе деко­дера будет отличаться от истинного значения. Если, например, в комбинации 10101110 произойдет ошибка в Р 6 , т. е. на вход де­кодера поступит комбинация 10001110, то амплитуда отсчета на i выходе декодера , т. е. на меньше истинной амплитуды отсчета, равной Рассмотренная схема кодера поразрядного взвешивания содержит большое число схем сравнения, которые являются относительно сложными устройствами. На практике чаще используется I кодер взвешивающего типа с использованием одной схемы сравнения и цепи обратной связи, содержащей декодер (рис. 5.22). Под I воздействием управляющего сигнала (), поступающего от генераторного оборудования, на вход декодера от схемы управления в каждом такте последовательно подается с каждого из выходов, начиная со старшего разряда. На выходе декодера В формируется уравновешивающий АИМ сигнал (), который

В поступает на вход СС, где сравнивается с входным АИМ сигналом. В В зависимости от результата сравнения на выходе СС формируется значение текущего разряда: 1 (при) или О (при ).

Рис. 2.23. Принцип формирования эталонных сиг­налов

Этот сигнал поступает на выход декодера и по цепи обратной связи - на вход схемы управления, при­чем при поступлении 1 состояние соответствующего выхода схе­мы управления остается неизменным (1), а при поступлении О также изменяется на 0. В результате через тактов на выхо­дах схемы управления будет сформирована комбинация, для ко­торой (с учетом ошибки квантования).

При построении кодеров и декодеров (см. рис. 5.20 и 5.21) необ­ходимо использовать ФЭ, формирующие набор эталонных сигна­лов, причем соотношение между значениями двух соседних этало­нов равно . Общая идея построения таких устройств заключается в использовании одного высокостабильного эталонного источника сигнала и цепочки схем, имеющих коэффи­циент передачи(Р ис - 5.23). Такие схемы обычно имеют вид матрицы, реализуемой на прецизионных сопротивлениях двух но­миналов ().

В современных ЦСП применяются нелинейные кодирующие и декодирующие устройства (нелинейные кодеки), обеспечивающие кодирование и декодирование сигналов с неравномерной шкалой квантования при восьмиразрядном коде (=8). Для кодирования с неравномерной шкалой квантования могут использоваться сле­дующие способы:

аналоговое компандирование , характеризующееся компрессией динамического диапазона сигнала перед линейным ко­дированием, и экспандированием динамичес- кого диапазона сигнала после линейного декодирования;

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

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

При аналоговом компандировании (рис. 2.24) на входе линей­ного кодера (ЛК) и выходе линейного декодера (ЛД) включаются соответственно аналоговые компрессор (АК) и экспандер (АЭ), обеспечивающие соответствующее нелинейное преобразование ана­логового сигнала (см. рис. 2.15). В качестве базового элемента для построения АК. и АЭ двуполярных сигналов может использо­ваться двухполюсник (рис. 2.25).

Рис. 2.24. Принцип аналогового Рис. 2.25 Нелинейный двухполюсник компандирования анало­говых компандеров

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

Наиболее часто в современных ЦСП используются нелинейные кодеки, для удобства реализации которых на цифровых схемах целесообразно отказаться от плавной характеристики компрессии и заменить ее сегментированной характеристикой, представляющей собой кусочно-ломаную аппроксимацию плавной характеристики компрессии.

На рис. 2.26 приведена сегментированная А-характеристика компрессии для положительных сигналов (для области отрица­тельных значений сигнала она имеет аналогичный вид). Формаль­но общее число сегментов на полной характеристике (для отри­цательных и положительных сигналов) составляет 16, однако четыре центральных сегмента (по два в положительной и отрица­тельных областях) фактически образуют один сегмент, вследствие чего фактическое число сегментов равно 13. Поэтому такую харак­теристику называют характеристикой компрессии типа . Каждый из сегментов характеристики (см. рис. 5.26) содержит 16 шагов квантования, а их общее число равно 256 (по 128 для каждой полярности сигнала). При этом принята сле­дующая нумерация сегментов и шагов квантования N m внутри каждого сегмента: =0,1,2,... ,7 и =0, 1, 2,..., 15. Очевидно, что внутри каждого сегмента шаг квантования оказывается по­стоянным, т. е. осуществляется равномерное квантование, а при переходе к сегменту с большим порядковым номером шаг кванто­вания увеличивается в 2 раза, так как наклон сегмента умень­шается вдвое. Самый маленький шаг квантования () соответ­ствует двум первым сегментам (=0, 1) и оказывается равным . Для определения шага квантования в i-м сегмента можно пользоваться соотношением

Таким образом, максимальный шаг квантования (в седьмом сегменте) , т. е. в 64 раза превышает минимальный шаг.

Таким образом, коэффициент компандирования, определяемый как отношение наибольшого шага квантования к наименьшему, ра­вен , а выигрыш в помехозащищенности для слабых сигналов равен

Рис. 2.26. Характеристика компандирования типа А = 87,6/13

Типичная зависимость защищенности от шумов квантования от уровня сигнала (при гармоническом сигнале) для ха­рактеристики /1 = 87,6/13 приведена на рис. 2.27. Для слабых сиг­налов, не выходящих за пределы нулевого и первого сегментов, как видно из рис. 2.27, осуществляется равномерное квантование с минимальным шагом квантованияувеличивается с ростом, При переходе к второму сегменту шаг квантования уве­личивается в 2 раза, т. е. становится равным , вследствие чегорезко уменьшается, а затем в пределах данного сегмента возрастает с ростом, поскольку внутри сегмента осуществляется, равномерное квантование. Такой характер изменениянаблюдается и при переходе ко всем последующим сегментам. После попадания сигнала в зону ограничения защищенность резко па­дает за счет перегрузки кодера.

Структура кодовой комбинации, формируемой на выходе ко­дера с характеристикой А = 87,6/13, имеет вид PXYZABCD, где Р - знаковый символ (1-для положительных сигналов, 0 - для отрицательных); XYZ - символы кода номера сегмента N c \ ABCD - символы кода номера шага внутри сегмента (см. рис. 2.26). Если, например, положительный отсчет на входе кодера имеет амплитуду, соответствующую девятому шагу квантования в шестом сегменте, то на выходе кодера будет сформирована ком­бинация 11101001 (P=l, XYZ=110, так как=6, ABCD = 1001, так как =9).

Рис. 2.27. Зависимость Рис. 2.28. Нелинейный кодер

взвешивающего типа

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

Для кодирования сигнала одной полярности в формирователе эталонных сигналов кодера необходимо формировать 11 эталон­ных сигналов. На рис. 2.28 представлена упрощенная структурная схема нелинейного кодера взвешивающего типа, содержащая схему сравнения (СС), схему переключения и суммирования эталонов (СПСЭ), две схемы формирования эталонных сигналов ( и ) для положительных и отрицательных отсчетов, управляю­щую логическую схему (УЛС). Кодирование осуществляется в те­чение восьми тактов, в каждом из которых формируется один из символов кодовой комбинации. При этом можно выделить три следующих этапа:

формирование знакового символа Р (такт 1);

формирование.кода номера сегмента XYZ (такты 2-4);

формирование кода номера шага внутри сегмента ABCD (так­ты 5-8).

В первом такте определяется знак поступившего на вход ко­дера очередного о.тсчета. Если отсчет положительный, то форми­руется Р=1 и к схеме подключается, а в противном случае формируется Р = 0 и к схеме подключается ФЭ 2 .

Формирование кода номера сегмента осуществляется следую­щим образом (рис. 2.29).

Во втором такте УЛС с помощью СПСЭ обеспечивает подачу на вход СС эталонного сигнала , соответствующего нижней границе четвертого сегмент Если ампли­туда отсчета, то принимается решение, что от­счет попадает в один из четырех старших сегментов (=4 ...7), формируется очередной символ Х=1, который по цепи обратной связи поступает на вход УЛС. Если же, то при­нимается решение, что отсчет попадает в один из четырех младших сегментов (=0... 3), и формируется символ Х = 0, который по цепи обратной связи поступает на вход УЛС.

В третьем такте формируется третий символ комбинации (Y). В зависимости от значения предыдущего символа (X) уточняется номер сегмента, в который попадает кодируемый отсчет. Если Х=1, то УЛС с помощью СПСЭ обеспечивает подачу на вход СС эта­лонного напряжения , соответствующего нижней гра­нице шестого сегмента (см. табл. 5.1). Если , то принимается решение, что отсчет попадает в один из двух старших сегментов (=6 или=7), и формируется очередной символ Y=l, который по цепи обратной связи поступает на вход УЛС. Если , то принимается решение, что отсчет попадает в четвертый или пятый сегмент, и формируется Y = 0. Если Х = 0, то УЛС с помощью СПСЭ обеспечивает по­дачу на вход СС эталонного напряжения, соответствую­щего нижней границе второго сегмента.

Если ,. то принимается решение, что отсчет попадает во второй и третий сегменты, и формируется Y=l. Если, то прини­мается решение, что отсчет попадает в один из двух младших сегментов, и формируется Y = 0.

В четвертом такте кодирования формируется символ Z, т. е. по­следний символ в коде номера сегмента. В зависимости от значе­ний предыдущих символов (XY) окончательно устанавливается номер сегмента, соответствующего данному отсчету. Так, если Х=1 и Y = 0, то включается эталонное напряжение, соответствующее нижней границе пятого сегмента. Если ==, то принимается решение, что отсчет попадает в пятый сегмент, формируется символ Z=l и эталонное напряжение= =остается включенным до конца процесса кодирования данного отсчета. Если , то принимается решение, что отсчет попадает в четвертый сегмент, формируется Z = 0 и до конца процесса кодирования включается, соответствующее нижней границе четвертого сегмента.

Рис. 2.29. Алгоритм формирования кода номера

сегмента

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

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

Так, если на вход кодера поступил положительный отсчет с амплитудой, то после первых четырех тактов сформируются символы PXYZ= 1110 и к СС подключится эталонное напряжение, соответствующее нижней границе шестого сегмента. В пятом такте к этому эталонному сигналу добавится максимальное эталонное напряжение , соответствующее старшему символу (А) в коде номера шага квантования для шестого сегмента. Так как , то формируется символ А = 0 и вместо "" ~~ в шестом такте подключается эталонное напряжение следующего разряда = =. Поскольку, то на выходе СС формируется символ В=1, эталонное напряжение не из­меняется и в следующем седьмом такте подключается эталонное напряжение очередного разряда .

Так как ==, формируется символ С = 0 и эталонное напряжение данного разряда () отключается.

В последнем такте подключается эталонное напряжение младшего символа (D) . Поскольку +-, формируется символ D = l и процесс кодирования данного отсчета заканчивается. Таким образом, на выходе кодера будет сформирована кодовая комбинация 11100101.

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

Рис. 2.30. Принцип цифрового компандирования

В рассмотренном случае окажутся включенными только три эталонных сигнала (512δ 0 ,128 δ 0 и 32 δ 0). Следует иметь в виду, что амплитуда кодируемого отсчета не всегда может быть точно уравновешена эталонными сигналами, как 1 в рассмотренном примере. В общем случае неизбежно будет возникать ошибка квантования £/ ош.кв, максимальное значение ко­торой равно половине шага квантования в пределах соответствую­щего сегмента, т. е. для нулевого и первого сегмен­тов (для слабых сигналов) идля седьмого сегмента (сильный сигнал).

Рассмотрим особенности третьего способа кодирования с нерав­номерной шкалой квантования, т. е. цифрового компандирования.

При цифровом компандировании (рис. 2.30) осуществляется линейное (равномерное) кодирование (ЛК) с большим числом разрядов (например,=12) с последующим цифровым преобра­зованием (цифровым компрессированием ЦК) с помощью логиче­ских устройств в восьмиразрядный нелинейный код, имеющий ту же структуру, что и при использовании нелинейного кодера с ха­рактеристикой компрессии типа (см. рис. 5.26). Способ преобразования 12-разрядных кодовых комбинаций линейного кода в 8-разрядные комбинации нелинейного кода показан в- табл. 5.2. Первый разряд (Р) остается без изменений и несет информацию о полярности сигнала. Значение символов XYZ, определяющих но­мер сегмента N c , соответствует числу нулей (/) в 12-разрядной комбинации между символом Р и символами АВСД (фактически символы XYZ представляют собой инверсированный натуральный трехразрядный.двоичный код величины ).

После формирования символов XYZ в восьмиразрядном коде символы ABCD переписы­ваются без изменений, а все остальные символы 12-разрядной комбинации отбрасываются вне зависимости от их значения, опре­деляя ошибку квантования.

Таблица 2.2

После формирования символов XYZ в восьмиразрядном коде символы ABCD переписы­ваются без изменений, а все остальные символы 12-разрядной комбинации отбрасываются вне зависимости от их значения, опре­деляя ошибку квантования. На приеме восстановление АИМ сиг­нала осуществляется с помощью цифрового экспандера (ЦЭ) и линейного декодера (ЛД).

Нелинейное декодирование осуществляется аналогично линей­ному с учетом отмеченных особенностей нелинейного кодирования. Так, в процессе нелинейного декодирования, т. е. формирования АИМ отсчета с определенной амплитудой, по структуре кодовой комбинации (PXYZABCD) определяются знак отсчета и но-, мер сегмента (), после чего находится значение (с учетом того, что к декодированному сигналу с целью уменьшения ошибки квантования добавляется напряжение, равное половине шага кван­тования в данном сегменте):

где -эталонное напряжение, соответствующее нижней границесегмента;

Шаг квантования всегменте.

Если, например, на вход декодера поступает кодовая комби­нация 01010110 (т. е. Р = 0, =5, А = 0; В=1; С = 1, D = 0), то на выходе декодера будет сформирован АИМ отсчет с амплитудой +)_" =

Таким образом, в декодере в данном случае суммируются эта­лонные напряжения, равные.

Литература: Осн. 3 [ 8-21 ]

Доп. 6 [ 102-104 ]

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

1.Симметричный и натуральный двоичный код

2.Нелинейное кодирование. Характеристика компандирования типа А=87,6/13. Схема нелинейного кодера.

3.Дифференциальная импульсно-кодовая модуляция

4.Дельта-модуляция