Файл: Методы кодирования данных (Биполярный код AMI и Потенциальный код NRZI).pdf
Добавлен: 29.03.2023
Просмотров: 828
Скачиваний: 2
Манчестерский код
В локальных сетях до недавнего времени самым распространенным был так называемый манчестерский код. Он применяется в технологиях Ethernet и Token Ring.
В манчестерском коде для кодирования единиц и нулей используется перепад потенциала, то есть фронт импульса. При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала, происходящими в середине каждого такта. Единица кодируется перепадом от низкого уровня сигнала к высокому, а ноль — обратным перепадом. В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколько единиц или нулей подряд.
Так как сигнал изменяется, по крайней мере, один раз за такт передачи одного бита данных, то манчестерский код обладает хорошими самосинхронизирующими свойствами. Полоса пропускания манчестерского кода уже, чем у биполярного импульсного. У него также нет постоянной составляющей, к тому же основная гармоника в худшем случае (при передаче последовательности единиц или нулей) имеет частоту N Гц, а в лучшем (при передаче чередующихся единиц и нулей) — N/2 Гц, как и у кодов AMI и NRZ. В среднем ширина полосы манчестерского кода в полтора раза уже, чем у биполярного импульсного кода, а основная гармоника колеблется вблизи значения 3N/A. Манчестерский код имеет еще одно преимущество перед биполярным импульсным кодом. В последнем для передачи данных используются три уровня сигнала, а в манчестерском — два.
Потенциальный код 2B1Q
Потенциальный код с четырьмя уровнями сигнала для кодирования данных. Это код 2B1Q, название которого отражает его суть — каждые два бита (2В) передаются за один такт (1) сигналом, имеющим четыре состояния (Q — Quadra). Паре битов 00 соответствует потенциал -2,5 В, паре 01 — потенциал -0,833 В, паре 11 — потенциал +0,833 В, а паре 10 — потенциал +2,5 В.
При этом способе кодирования требуются дополнительные меры по борьбе с длинными последовательностями одинаковых пар битов, так как при этом сигнал превращается в постоянную составляющую. При случайном чередовании битов спектр сигнала в два раза уже, чем у кода NRZ, так как при той же битовой скорости длительность такта увеличивается в два раза. ТакиМ образом, с помощью кода 2B1Q можно по одной и той же линии передавать данные в два раза быстрее, чем с помощью кода AMI или NRZI.
Однако для его реализации мощность передатчика должна быть выше, чтобы четыре уровня четко различались приемником на фоне помех. Для улучшения потенциальных кодов типа AMI, NRZI или 2Q1B используются избыточные коды и скрэмблирование.
3. Логическое кодирование.
Логическое кодирование данных изменяет поток бит созданного кадра МАС-уровня в последовательность символов, которые подлежат физическому кодированию для транспортировки по каналу связи. Для логического кодирования используют разные схемы:
- 4B/5B — каждые 4 бита входного потока кодируются 5-битным символом. Получается двукратная избыточность, так как 24=16 входных комбинаций показываются символами из 25= 32. Расходы по количеству битовых интервалов составляют: (5-4)/4 = 1/4 (25%). Такая избыточность разрешает определить ряд служебных символов, которые служат для синхронизации. Применяется в 100BaseFX/TX, FDDI
- 8B/10B — аналогичная схема (8 бит кодируются 10-битным символом) но уже избыточность равна 4 раза (256 входных в 1024 выходных).
- 5B/6B — 5 бит входного потока кодируются 6-битными символами. Применяется в 100VG-AnyLAN
- 8B/6T — 8 бит входного потока кодируются шестью троичными (T = ternary) цифрами (-,0,+). К примеру: 00h: +-00+-; 01h: 0+-+=0; Код имеет избыточность 36/28= 729/256 = 2,85. Скорость транспортировки символов в линию является ниже битовой скорости и их поступления на кодирования. Применяется в 100BaseT4.
- Вставка бит — такая схема работает на исключение недопустимых последовательностей бит. Ее работу объясним на реализации в протоколе HDLC. Тут входной поток смотрится как непрерывная последовательность бит, для которой цепочка из более чем пяти смежных 1 анализируется как служебный сигнал (пример: 01111110 является флагом-разделителем кадра). Если в транслируемом потоке встречается непрерывная последовательность из 1, то после каждой пятой в выходной поток передатчик вставляет 0. Приемник анализирует входящую цепочку, и если после цепочки 011111 он видит 0, то он его отбрасывает и последовательность 011111 присоединяет к остальному выходному потоку данных. Если принят бит 1, то последовательность 011111 смотрится как служебный символ. Такая техника решает две задачи — исключать длинные монотонные последовательности, которые неудобные для самосинхронизации физического кодирования и разрешает опознание границ кадра и особых состояний в непрерывном битовом потоке.
Избыточные коды
4B/5B
Избыточные коды основаны на разбиении исходной последовательности битов на порции, которые часто называют символами. Затем каждый исходный символ заменяется новым с большим количество битов, чем исходный.
Например, в логическом коде 4В/5В, используемом в технологиях FDDI и Fast Ethernet, исходные символы длиной 4 бит заменяются символами длиной 5 бит. Так как результирующие символы содержат избыточные биты, то общее количество битовых комбинаций в них больше, чем в исходных. Так, в коде 4В/5В результирующие символы могут содержать 32 битовые комбинации, в то время как исходные символы — только 16
Поэтому в результирующем коде можно отобрать 16 таких комбинаций, которые не содержат большого количества нулей, а остальные считать запрещенными кодами (code violations). Помимо устранения постоянной составляющей и придания коду свойства самосинхронизации, избыточные коды позволяют приемнику распознавать искаженные биты. Если приемник принимает запрещенный код, значит, на линии произошло искажение сигнала.
После разбиения получившийся код 4В/5В передается по линии путем преобразования с помощью какого-либо из методов потенциального кодирования, чувствительного только к длинным последовательностям нулей. Таким кодом является, например, код NRZI.
Символы кода 4В/5В длиной 5 бит гарантируют, что при любом их сочетании на линии не встретятся более трех нулей подряд.
Таблица Соответствие исходных и результирующих кодов 4В/5В
|
Исходный код |
Результирующий код |
Исходный код |
Результирующий код |
|
0000 |
11110 |
1000 |
10010 |
|
0001 |
01001 |
1001 |
10011 |
|
0010 |
10100 |
1010 |
10110 |
|
0011 |
10101 |
1011 |
10111 |
|
0100 |
01010 |
1100 |
11010 |
|
0101 |
01011 |
1101 |
11011 |
|
0110 |
01110 |
1110 |
11100 |
|
0111 |
01111 |
1111 |
11101 |
ПРИМЕЧАНИЕ
Буква В в названии кода 4В/5В означает, что элементарный сигнал имеет два состояния (от английского binary — двоичный). Имеются также коды и с тремя состояниями сигнала, например в коде 8В/6Т для кодирования 8 бит исходной информации используется код из 6 сигналов, каждый из которых имеет три состояния. Избыточность кода 8В/6Т выше, чем кода 4В/5В, так как на 256 исходных кодов приходится З6 - 729 результирующих символов.
Использование таблицы перекодировки является очень простой операцией, поэтому этот подход не усложняет сетевые адаптеры и интерфейсные блоки коммутаторов и маршрутизаторов.
Для обеспечения заданной пропускной способности линии передатчик, использующий избыточный код, должен работать с повышенной тактовой частотой. Так, для передачи кодов 4В/5В со скоростью 100 Мбит/с требуется тактовая частота 125 МГц. При этом спектр сигнала на линии расширяется по сравнению со случаем, когда по линии передается не избыточный код. Тем не менее спектр избыточного потенциального кода оказывается уже спектра манчестерского кода, что оправдывает дополнительный этап логического кодирования, а также работу приемника и передатчика на повышенной тактовой частоте.
8B/10B
Кодирование по способу 8B/10B, схема блочного кодирования 8B/10B
8-битовые данные передаются как 10-битовые символы, или знаки, причём младшие 5 битов данныхкодируются (преобразуются) в 6-бит группу, а старшие 3 бита - в 4-бит группу. Кроме 10-бит символовданных стандарты, предусматривающие схему кодирования 8B/10B, определяют также специальные, илиуправляющие, символы - для обозначения конца кадра, незанятости линии передачи и других условий, связанных с работой линии. Поскольку 8-бит слова преобразуются в 10-бит символы, каждое из возможных256 слов можно представить в одном из двух видов - прямом и инвертированном. Благодаря этому схемаобеспечивает для последовательного потока данных в линии баланс по постоянному току и достаточноечисло изменений состояния, переходов от 0 к 1 и обратно - а переходы дают информацию длявосстановления тактового сигнала (для восстановления синхронизации); это позволяет уменьшить"межсимвольные помехи" и повысить скорость передачи. Кодирование обычно делается полностьюаппаратным способом, при помощи просмотровых (кодировочных) таблиц (lookup table), так чтопрограммы верхних уровней могут ничего не знать об этом.
8B/6T
Символьное кодирование 8B/6T. Если использовалось бы манчестерское кодирование, то битовая скорость в расчете на одну витую пару была бы 33.33 Мбит/с, что превышало установленный предел 30 МГц для таких кабелей. Эффективное уменьшить частоты модуляции достигается, если вместо прямого (2-х уровневого) бинарного кода использовать 3-х уровневый (ternary) код. Этот код известен как 8B6T бестраншейная прокладка трубопроводов Воронеж.
это означает, что прежде, чем происходит передача, каждый набор из 8 бинарных битов (символ) сначала преобразуется в соответствии с определенными правилами в 6 тройных (3-х уровневых) символов. На примере, показанном на рис.3б, можно определить скорость 3-х уровневого символьного сигнала:
МГц
значение которое не превышает установленный предел.
Рис 3. Физические интерфейсы 100Base-T4: а) Использование витых пар; б) Кодирование 6B/8T
Интерфейс 100Base-T4 имеет один существенный недостаток - принципиальную невозможность поддержки дуплексного режима передачи. И если при строительстве небольших сетей Fast Ethernet с использованием повторителей, 100Base-TX не имеет преимуществ перед 100Base-T4 (существует коллизионный домен, полоса пропускания которого не больше 100 Мбит/с), то при строительстве сетей с использованием коммутаторов недостаток интерфейса 100Base-T4 становится очевидным и очень серьезным. Поэтому данный интерфейс не получи столь большого распространения, как 100Base-TX и 100Base-FX.
3. Высокоскоростные коды- код MLT-3и PAM5.
Код трехуровневой передачи MLT-3 (Multi Level Transmission - 3) имеет много общего с кодом NRZ. Важнейшее отличие - три уровня сигнала. Единице соответствует переход с одного уровня сигнала на другой. Изменение уровня сигнала происходит последовательно с учетом предыдущего перехода. Максимальной частоте сигнала соответствует передача последовательности единиц. При передаче нулей сигнал не меняется. Информационные переходы фиксируются на границе битов. Один цикл сигнала вмещает четыре бита.
Трехуровневый код MLT-3 Недостаток кода MLT-3, как и кода NRZ - отсутствие синхронизации. Эту проблему решают с помощью преобразования данных, которое исключает в коде длинные последовательности нулей и исключает возможность рассинхронизации. Дополнительное преобразование данных производится при помощи метода предварительного перекодирования данных 4B5B Протоколы, использующие код NRZ, чаще всего дополняют кодированием данных 4B5B. В отличие от кодирования сигналов, которое использует тактовую частоту и обеспечивает переход от импульсов к битам и наоборот, кодирование данных преобразует одну последовательность битов в другую. В коде 4B5B используется пяти-битовая основа для передачи четырех-битовых информационных сигналов. Пяти-битовая схема дает 32 (два в пятой степени) двухразрядных буквенно-цифровых символа, имеющих значение в десятичном коде от 00 до 31. Для данных отводится четыре бита или 16 (два в четвертой степени) символов. Четырех-битовый информационный сигнал перекодируется в пяти-битовый сигнал в кодере передатчика. Преобразованный сигнал имеет 16 значений для передачи информации и 16 избыточных значений. В декодере приемника пять битов расшифровываются как информационные и служебные сигналы. Для служебных сигналов отведены девять символов, семь символов - исключены. Исключены комбинации, имеющие более трех нулей (01 - 00001, 02 - 00010, 03 - 00011, 08 - 01000, 16 - 10000). Такие сигналы интерпретируются символом V и командой приемника VIOLATION - сбой. Команда означает наличие ошибки из-за высокого уровня помех или сбоя передатчика. Единственная комбинация из пяти нулей (00 - 00000) относится к служебным сигналам, означает символ Q и имеет статус QUIET - отсутствие сигнала в линии. Кодирование данных решает две задачи - синхронизации и улучшения помехоустойчивости. Синхронизация происходит за счет исключения последовательности более трех нулей. Высокая помехоустойчивость достигается контролем принимаемых данных на пяти-битовом интервале. Цена кодирования данных - снижение скорости передачи полезной информации. В результате добавления одного избыточного бита на четыре информационных, эффективность использования полосы частот в протоколах с кодом MLT-3 и кодированием данных 4B5B уменьшается соответственно на 25%. При совместном использовании кодирования сигналов MLT-3 и данных 4В5В скорость передачи- 3 бита информации на 1 герц несущей частоты сигнала. Такая схема используется в протоколе TP-PMD.