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

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

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

Логическое кодирование преобразует поток битов сформированного кадра MAC-подуровня канального уровня в последовательность символов, подлежащих физическому кодированию для передачи по линии связи.

В основном для логического кодирования применяются два метода:

  • избыточные коды;
  • скрэмблирование.

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

Логический код 4B/5B заменяет каждые 4 бита входного потока (исходный символ) на 5-битовый выходной символ (таблица 3.1). В исходной последовательности из четырех бит существует 16 различных битовых комбинаций нулей и единиц, а в группе из пяти бит таких комбинаций уже 32. Поэтому в результирующем коде можно выбрать 16 таких комбинаций, которые не содержат большого количества нулей. При этом остальные не используемые комбинации можно считать запрещенными последовательностями. Таким образом, кроме улучшения самосинхронизирующих свойств исходного кода избыточное кодирование позволяет приемнику распознавать ошибки, так как появление запрещенной последовательности бит свидетельствует о возникновении ошибки.

Таблица 3 .1

Двоичный код 4В Результирующий код 5В
0000 11110
0001 01001
0010 10100
0011 10101
0100 01010
0101 01011
0110 01110
0111 01111
1000 10010
1001 10011
1010 10110
1011 10111
1100 11010
1101 11011
1110 11100
1111 11101

Код 4B/5B используется в технологиях 100BASE-FX и 100BASE-TX.

Логический код 8B/10B заменяет каждый 8-битовый исходный символ 10-битовым выходным символом. При этом в исходной последовательности содержится 256 различных комбинаций нулей и единиц, а в результирующей 1024. Таким образом, 256 комбинаций 8-битовых символов могут быть закодированы двумя различными способами. Код 8B/10B используется в технологиях Gigabit Ethernet: 1000BASE-SX, 1000BASE-LZ.

Логический код 64B/66B заменяет каждый 64-битовый исходный символ 66-битовым выходным символом. Он применяется в технологиях 10 Gigabit Ethernet: 10GBASE-SR, 10GBASE-LR, 10GBASE-ER, 10GBASE-LRM, 10GBASE-KR.

Скремблирование (scramble) заключается в побитовом преобразовании исходной последовательности нулей и единиц с помощью псевдослучайного битового потока с целью улучшения спектральных характеристик и самосинхронизирующих свойств результирующей последовательности битов. Скремблирование осуществляется путем побитовой операции исключающего ИЛИ (XOR) исходной последовательности с псевдослучайной последовательностью. На стороне приемника исходный поток восстанавливается с помощью дескремблера.

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

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

Достоинством скремблирования является отсутствие избыточных кодов, а недостатком – необходимость реализации на узлах связи алгоритма скремблирования/дескремблирования, что связано с дополнительными затратами.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

один × 4 =