Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Принципы формирования кода Джонсона




1. Код Джонсона является кодом с избытком, то есть для числа разрядов больше 2 в коде Джонсона длякодирования некоторого числа состояний требуется большее число разрядов, чем в двоичномарифметическом коде.

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

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

3. Код Джонсона является циклическим кодом. То есть последняя комбинация отличается от первой такжезначением только одного разряда.

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

Пример. Четырёхбитный код Джонсона.

00000001001101111111111011001000

 

6.Корректирующая способность кода.

При ручной подготовке управляющих программ необходимо осуществлять пересчёт координат с учётом диаметра и длинны инструмента. Требуется упрощение программирования и для этого в системах с ЧПУ предусматривается программирование эквидистанты ,под которой понимается совокупность координат (…) центра фрезы при обходе контура.

Для автоматического учёта эквидистанты применяются корректирующие коды :

G-43-положительные.             G-44-отрицательные.

Коды G-43 и G-44 записываются перед каждой координатой для которой требуется коррекция . Коррекция считается положительной (G-43) ,если координаты центра фрезы больше координаты контура и отрицательной (G-44) если координаты центра фрезы меньше координаты контура..

Отмена коррекции осущ. функцией G40- для всех координат, либо функцией Д00-для той координаты перед которой она указана.

Расчёт величины смещения инструмента можно выполнить автоматически с помощью коррект. кодов G41-при обходе детали справа,G42-при обходе деталислева.

 

7.Коды, обнаруживающие ошибки.Пример.

Пример. Пусть у нас есть канал с единичными ошибкой с частотой 10-6 на бит. Если мы хотим исправлять единичные ошибки при передаче блока в 1000 бит, то нам потребуется 10 контрольных бит. При передаче 1 Мбит данных, потребуется 10 000 контрольных бит. В тоже время для обнаружения единичной ошибки достаточно одного бита четности. Поэтому, если мы применим технику повторной передачи, то на передачу 1000 блоков надо будет потратить 1001 бит дополнительно или с повторной передачей 2002 бит, вместо 10,000 бит в случае кода с исправлением ошибки.Применение техники четности "в лоб" в случае групповых ошибок не даст нужного результата. Однако, ее можно скорректировать. Пусть нам надо передать слов по бит. Расположим их в виде матрицы . Для каждого столбца вычислим бит четности и разместим его в дополнительной строке. Матрица затем передается по строкам. По получению матрица восстанавливается и если хоть один бит нарушен, то весь блок передается повторно.Этот метод позволяет обнаружить групповые ошибки длины . Против групповых ошибок длины он бессилен. В общем случае вероятность правильной передачи при длине групповой ошибке , равна .Поэтому на практике применяют другую технику, которая называется полиномиальными кодами или циклическим избыточным кодом (Cyclic Redundancy Code) или CRC кодом.CRC коды построены на рассмотрении битовой строки как строки коэффициентов полинома. битовая строка - коэффициенты полинома степени . Самый левый бит строки - коэффициент при старшей степени. Например, строка 110001 представляет полином .Полиномиальная арифметика выполняется по модулю 2. Сложение и вычитание происходит без переноса разрядов. Так, что обе это операции эквивалентны EXCLUSIVE OR. Например,

Деление выполняется как обычно в двоичной системе с той лишь разницей, что вычитание выполняется по модулю два.Использование полиномиальных кодов при передаче заключается в следующем. Отправитель и получатель заранее договариваются о конкретном генераторе полиномов , у него коэффициенты при старшем члене и при младшем члене должны быть равны 1. Пусть степень равна r. Для вычисления контрольной суммы блока из m бит надо чтобы обязательно . Идея состоит в том, чтобы добавить контрольную сумму к передаваемому блоку, рассматриваемому как полином так, чтобы передаваемый блок с контрольной суммой был кратен . Когда получатель получает блок с контрольной суммой, он делит его на . Если есть остаток, то были ошибки при передаче.

Алгоритм вычисления контрольной суммы:

1. Добавить нулей в конец блока так, что он теперь содержит m+r разрядов и соответствует полиному ;

2. Разделить по модулю 2 полином на ;

3. Вычесть остаток ( длина которого всегда не более r разрядов) из строки, соответствующей , по модулю 2. Результат и есть блок с контрольной суммой ( назовем его ).

Этот метод позволяет отлавливать одиночные ошибки. Групповые ошибки длины не более . Нечетное число отдельных ошибок.

Существует три международных стандарта на вид :

.

CRC-12 используется для передачи символов из 6 разрядов. Два остальных - для 8 разрядных. CRC-16 и CRC-CCITT ловят одиночные, двойные ошибки, групповые ошибки длины не более 16 и нечетное число изолированных ошибок с вероятностью 99,997%.

Простейшим способом обнаружения ошибок является контроль по четности. Обычно контролируется передача блока данных (М бит). Этому блоку ставится в соответствие кодовое слово длиной N бит, причем N>M. Избыточность кода характеризуется величиной 1-M/N. Вероятность обнаружения ошибки определяется отношением M/N (чем меньше это отношение, тем выше вероятность обнаружения ошибки, но и выше избыточность).
При передаче информации она кодируется таким образом, чтобы с одной стороны характеризовать ее минимальным числом символов, а с другой инимизировать вероятность ошибки при декодировании получателем. Для выбора типа кодирования важную роль играет так называемое расстояние Хэмминга.
Пусть А и Б две двоичные кодовые последовательности равной длины. Расстояние Хэмминга между двумя этими кодовыми последовательностями равно числу символов, которыми они отличаются. Например, расстояние Хэмминга между кодами 00111 и 10101 равно 2.

 

 

8.Код Хемминга. Пример

Коды Хэмминга — самоконтролирующийся и самокорректирующийся код построенный применительно к двоичной системе счисления.

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

S=0-ошибки нет. S=1 однократная ошибка . Такой код называется (к+1,к) или (n,n-1). Первое число –количество элементов последовательности , второе –количество информационных символов. Для каждого числа проверочных символов r=3,4,5… существует классический код Хемминга с маркировкой (n,k)=(2r-1.2r-1-r).

(код (7,4))

На вход декодера поступает кодовое слово штрихом помечено то что может исказиться.


 










Последнее изменение этой страницы: 2018-04-12; просмотров: 325.

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