какие коды не относятся к физическому кодированию
Физическое кодирование
Физическое кодирование — способы представления данных в виде электрических или оптических импульсов.
Ни в одной из версий технологии Ethernet не применяется прямое двоичное кодирование бита 0 напряжением 0 вольт и бита 1 — напряжением +5 вольт, так как такой способ приводит к неоднозначности. Если одна станция посылает битовую строку 00010000, то другая станция может интерпретировать её либо как 10000, либо как 01000, так как она не может отличить «отсутствие сигнала» от бита 0. Поэтому принимающей машине необходим способ однозначного определения начала, конца и середины каждого бита без помощи внешнего таймера. Кодирование сигнала на физическом уровне позволяет приемнику синхронизироваться с передатчиком по смене напряжения в середине периода битов.
Содержание
Иерархия кодирования
Система кодирования сигналов имеет многоуровневую иерархию.
Физическое кодирование
Логическое кодирование
Вторым уровнем в иерархии кодирования является самый нижний уровень логического кодирования с разными назначениями.
В совокупности физическое кодирование и логическое кодирование образуют систему кодирования самого низшего уровня.
Системы кодирования
Наиболее часто используемые системы кодирования:
Системы с двухуровневым кодированием
Простейший код, обычный цифровой (дискретный) сигнал (может быть преобразован на обратную полярность или изменены уровни соответствующие нулю и единице).
Манчестерский код
Получил наибольшее распространение в сетях с электрическими кабелями. Является самосинхронизирующимся, то есть несущим в себе синхроимпульс. Имеет два уровня. Логическому нулю соответствует положительный переход в центре бита, то есть первая половина битового интервала — низкий уровень, вторая половина — высокий. Логической единице соответствует отрицательный переход в центре бита. Обязательное наличие перехода в центре бита позволяет легко выделить синхросигнал. Допустимое расхождение часов — до 25 %. При передаче цепочки бит из одних нулей или единиц необходима частота в 10 МГц при скорости в 10 Мбит/сек. Важным достоинством манчестерского кода является возможность обеспечить гальваническую развязку с помощью трансформатора, так как у него отсутствует постоянная составляющая.
NRZI — Non Return to Zero Invertive (инверсное кодирование без возврата к нулю). Этот метод является модифицированным методом Non Return to Zero (NRZ), где для представления 1 и 0 используются потенциалы двух уровней. В коде NRZ I также используется 2 потенциала, но его текущее значение зависит от предыдущего. Если текущее значение бита “1”, то полученный потенциал должен быть инверсией от предыдущего, если значение бита “0” — такой же.
Поскольку код незащищен от долгих последовательностей “нулей” или “единиц”, то это может привести к проблемам синхронизации. Поэтому перед передачей, заданную последовательность битов рекомендуется предварительно закодировать кодом предусматривающим скремблирование (скремблер предназначен для придания свойств случайности передаваемой последовательности данных с целью облегчения выделения тактовой частоты приемником). Используется в Fast Ethernet 100Base-FX и 100Base-T4.
Системы с трёхуровневым кодированием
Это трехуровневый код. После значащего уровня сигнала в первой половине передаваемого бита информации следует возврат к нулевому уровню. Переход к нему происходит в середине бита. Логическому нулю при этом соответствует положительный импульс, логической единице — отрицательный. Здесь на 1 бит приходится 2 изменения уровня напряжения, поэтому для скорости в 10 Мбит/сек требуется пропускная способность в 10 МГц.
MLT-3 Multi Level Transmission — 3 (многоуровневая передача) — немного схож с кодом NRZ, но в отличие от последнего имеет три уровня сигнала. Единице соответствует переход с одного уровня сигнала на другой, причем изменение уровня сигнала происходит последовательно с учетом предыдущего перехода. При передаче “нуля” сигнал не меняется.
Этот код, так же как и NRZ нуждается в предварительном кодировании. Используется в Fast Ethernet 100Base-TX.
Физическое кодирование
Физическое кодирование (линейное кодирование, манипуляция сигнала, модуляция, импульсно-кодовая модуляция) — представления дискретных сигналов, передаваемых по цифровому каналу связи, с целью передачи данных, представленных в цифровом виде, на расстояние по физическому каналу связи (такому как оптическое волокно, витая пара, коаксиальный кабель, инфракрасному излучению). Физическое кодирование также применяется для записи данных на цифровой носитель. При физическом кодировании обращают внимание на характеристики формируемого сигнала: ширину полосы частот, гармонический состав сигнала, способность к синхронизации приёмника с передатчиком. При физическом кодировании решаются вопросы синхронизации, управления полосой пропускания сигнала, скорость передачи данных и расстояние на которое необходимо передать данные.
Различают виды передачи дискретных сигналов:
Иерархия кодирования
Система кодирования сигналов имеет иерархию.
Физическое кодирование
Нижним уровнем в иерархии кодирования является физическое кодирование, которое определяет число дискретных уровней сигнала (амплитуды напряжения, амплитуды тока, амплитуды яркости).
Физическое кодирование рассматривает кодирование только на самом низшем уровне иерархии кодирования — на физическом уровне и не рассматривает более высокие уровни в иерархии кодирования, к которым относятся логические кодирования различных уровней.
С точки зрения физического кодирования цифровой сигнал может иметь два, три, четыре, пять и т. д. уровней амплитуды напряжения, амплитуды тока, амплитуды света.
Ни в одной из версий технологии 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)
NRZI (Non Return to Zero Invertive) — потенциальный код с инверсией при единице, код формируется путем инверсного состояния при поступлении на вход кодирующего устройства логической единицы, при поступлении логического нуля состояние потенциала не меняется. Этот метод является модифицированным методом Non Return to Zero (NRZ).
Поскольку код не защищен от долгих последовательностей логических нулей или единиц, то это может привести к проблемам синхронизации. Поэтому перед передачей, заданную последовательность битов рекомендуется предварительно закодировать кодом предусматривающим скремблирование (скремблер предназначен для придания свойств случайности передаваемой последовательности данных с целью облегчения выделения тактовой частоты приемником). Используется в Fast Ethernet 100Base-FX и 100Base-T4.
Достоинства NRZI кода
Недостатки NRZI кода
Манчестерское кодирование
При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала в середине каждого такта. Различают два варианта манчестерского кодирования:
В начале каждого такта может происходить служебный перепад сигнала, если нужно представить несколько единиц или нулей подряд. Так как сигнал изменяется по крайней мере один раз за такт передачи одного бита данных, то манчестерский код обладает самосинхронизирующими свойствами. Обязательное наличие перехода в центре бита позволяет легко выделить синхросигнал. Допустимое расхождение частот передачи — до 25 % (это означает, что код Манчестер-2 — самый устойчивый к рассинхронизации, он самосинхронизуется в каждом бите передаваемой информации).
Плотность кода 1 бит/герц. В спектре сигнала, закодированного Манчестером-2, присутствует 2 частоты — частота передачи и половинная частота передачи (она образуется когда рядом стоят 0 и 1 или 1 и 0. При передаче гипотетической последовательности одних 0 или 1 в спектре будет присутствовать только частота передачи).
Достоинства манчестерского кодирования
Код Миллера
Код Миллера (иногда называют трехчастотным) — является двуполярным двухуровневым кодом, в котором каждый информационный бит кодируется комбинацией из двух битов <00, 01, 10, 11>, а переходы из одного состояния в другое описываются графом. При непрерывном поступлении логических нулей или единиц на кодирующее устройство переключение полярности происходит с интервалом T, а переход от передачи единиц к передаче нулей с интервалом 1,5T. При поступлении на кодирующее устройство последовательности 101 возникает интервал 2Т, по этой причине данный метод кодирования называют трехчастотным.
Преимущества
Недостатки
Системы с трёхуровневым кодированием
RZ (return to zero)
RZ (return to zero)(англ. кодирование с возвращения к нулю) — биполярный код с возвращением к нулю (трехуровневый). Согласно RZ-коду, каждый бит передается перепадом с одного уровня на нулевой, в середине значащего интервала так: логическому нулю соответствует переход с верхнего уровня на нулевой уровень, логической единице соответствует переход с нижнего уровня на нулевой уровень. Требует в 2 раза больше скорости переключения состояний по сравнению со скоростью переключения согласно коду NRZ.
Биполярный код AMI
AMI (Alternate mark inversion) код — обладает хорошими синхронизирующими свойствами при передаче серий единиц и сравнительно прост в реализации. Недостатком кода является ограничение на плотность нулей в потоке данных, поскольку длинные последовательности нулей ведут к потере синхронизации. Используется в телефонии уровня передачи данных, когда используются потоки мультиплексирования.
AMI-код использует следующие представления битов:
HDB3 (биполярный код с высокой плотностью третьего порядка)
Код HDB3 (биполярный код с высокой плотностью третьего порядка) исправляет любые 4 подряд идущих нуля в исходной последовательности. Правило формирования кода следующее: каждые 4 нуля заменяются 4 символами в которых имеется хотя бы один сигнал V. Для подавления постоянной составляющей полярность сигнала V чередуется при последовательных заменах. Для замены используются два способа:
V-сигнал единицы запрещённого для данного сигнала полярности
Преимущества MLT-3 кода
Гибридный троичный код
4B3T (4 Binary 3 Ternary, когда 4 двоичных символа передаются с помощью 3 троичных символов) — cигнал на выходе кодирующего устройства, согласно коду 4B3T, является трехуровневым, то есть на выходе кодирующего устройства формируется сигнал с тремя потенциальными уровнями. Код формируется, например, согласно таблице кодирования MMS43. Таблица кодирования:
Системы с четырёхуровневым кодированием
2B1Q (Потенциальный код 2B1Q)
2B1Q (2 Binary 1 Quaternary) — потенциальный код 2B1Q (в некоторой литературе называется PAM-5) передает пару бит за один значащий интервал. Каждой возможной паре в соответствие ставится свой уровень из четырех возможных уровней потенциала.
Глава 4. Физическое и логическое кодирование данных
Каждый вид компьютеров имеет свой внутренний вид кодирования для представления данных – символьной и текстовой информации. Наиболее часто используются коды ASCII (American Standard Code for Information Interchange, американский стандартный код для обмена информацией) и EBCDIC (Extended Binary Coded Decimal Interchange Code, расширенный двоично-десятичный код обмена информацией).
ASCII представляет собой 8-битную кодировку для представления десятичных цифр, латинского и национального алфавитов, знаков препинания и управляющих символов. Первую половину кодовой таблицы (0 — 127) занимают символы US-ASCII, которые включают 95 печатаемых и 33 управляющих символа (разработана ANSI – Американским институтом национальных стандартов). Вторая половина таблицы (128 — 255) содержит национальные шрифты (кириллица) и символы псевдографики. Этот код используется в персональных компьютерах и в несовместимых с IBM больших машинах. На больших компьютерах (мейнфреймах) используется 8-битовый код EBCDIC, разработанный компанией IBM. При передаче данных от одного компьютера к другому может потребоваться перекодировка символов, которая осуществляется системным МО передающего или принимающего компьютеров. Эти действия являются функциями уровня представления модели OSI. Далее рассмотрим наиболее часто применяемые методы кодирования на физическом уровне.
В большинстве компьютерных сетей цифровые данные передаются при помощи цифрового сигнала, т.е. последовательностью импульсов. Для передачи данных может использоваться более двух уровней сигнала, при этом единичный импульс сигнала может представлять не один бит, а группу бит. Возможна обратная ситуация, когда для передачи одного бита может использоваться два импульса сигнала.
При цифровой передаче используют потенциальные и импульсные коды. В потенциальных кодах для представления логических единиц и нулей используется только значение сигнала в течение битового интервала, а фронты сигнала, формирующие законченные импульсы, во внимание не принимаются. Импульсные коды представляют логический ноль и логическую единицу перепадом потенциала определенного направления. В значение импульсного кода включается весь импульс вместе с его фронтами.
Сигнал в виде импульсной последовательности имеет бесконечный спектр. Основная энергия сигнала сосредоточена в диапазоне частот от нуля до частоты f=1/tо (первый лепесток энергетического спектра сигнала), где tо – бодовый интервал, то есть длительность единичного импульса линейного сигнала.
Теоретически в соответствии с пределом Найквиста максимально допустимая скорость изменения значений дискретного сигнала (B=1/tо, скорость передачи в Бодах) при передаче последовательности прямоугольных импульсов по каналу связи, эквивалентом которого является идеальный ФНЧ с прямоугольной АЧХ и линейной ФЧХ и с частотой среза fгр, равна Bmax=2fгр. Указанное ограничение связано с наличием переходных процессов на выходе ФНЧ, при этом время нарастания/спада фронта сигнала определяется как
При максимально допустимой скорости передачи сигнала tо=tн. Если интервал tо < tн, происходит недопустимое искажение формы сигнала на выходе канала и, как следствие, ошибки при приеме. Таким образом, скорость передачи информации N (Бит/с) зависит от скорости передачи сигнала В (Бод) и выбранного метода кодирования сигнала на физическом уровне.
Используемый метод физического цифрового кодирования должен достигать несколько целей:
Рассмотрим методы физического цифрового кодирования сигналов.
Потенциальный код без возвращения к нулю NRZ (Non Return to Zero)
Рассмотрим частные случаи передачи данных кодом NRZ (рис.4.1): чередующаяся последовательность нулей и единиц, последовательность нулей и последовательность единиц. Определим частоту основной гармоники спектра сигнала в каждом из этих случаев.
При чередовании единиц и нулей и скорости передачи N (Бит/с) период основной гармоники в спектре сигнала равен T=2t0=2/N (с). Частота основной гармоники f0 равна fо=N/2 (Гц).
При передаче только единиц, или только нулей сигнал в линии представляет собой постоянный ток.
Спектр реального сигнала постоянно меняется в зависимости от того, какова структура данных, передаваемых по линии связи. При передаче длинных последовательностей нулей или единиц, спектр сигнала сдвигается в сторону низких частот. Линейный сигнал NRZ обычно содержит постоянную составляющую и не всегда обеспечивает приемнику возможность синхронизироваться с поступающим сигналом. С другой стороны код NRZ прост в реализации, обладает хорошей помехоустойчивостью (из-за двух резко отличающихся уровней сигнала). Основная энергия сигнала в коде NRZ сосредоточена на частотах от 0 до N/2 (Гц).
В чистом виде код NRZ в сетях не используется. Тем не менее, используются его различные модификации, в которых с успехом устраняют как плохую самосинхронизацию, так и наличие постоянной составляющей.
Потенциальный код с инверсией при единице NRZI (Non Return to Zero with ones Inverted, NRZI)
При этом методе кодирования передаче нуля соответствует уровень сигнала, который был установлен в предыдущем битовом интервале (уровень сигнала не меняется), а при передаче единицы – уровень изменяется на противоположный.
Определим частоты основных гармоник линейного сигнала для частных случаев битовых последовательностей.
Код NRZI использует только два уровня сигнала и поэтому обладает хорошей помехоустойчивостью. Максимальную энергию имеют спектральные составляющие сигнала около частоты N/4 (Гц). Следует отметить, что код NRZI стал основным при разработке улучшенных методов кодирования для систем передачи данных.
Метод биполярного кодирования с альтернативной инверсией (Bipolar Alternate Mark Inversion, AMI, квазитроичный код)
В этом методе используются три значения сигнала –«-1», «0» и «+1». Для различения трех уровней необходимо лучшее соотношение сигнал/шум на входе приемника. Дополнительный уровень требует увеличение мощности передатчика примерно на 3 дБ для обеспечения той же достоверности приема бит на линии. Это общий недостаток кодов с несколькими состояниями сигнала по сравнению с двухуровневыми кодами.
Для кодирования логического нуля используется нулевой потенциал, логическая единица кодируется попеременно либо положительным потенциалом, либо отрицательным.
При передаче любой битовой последовательности сигнал в линии не содержит постоянную составляющую. При передаче единиц основная гармоника сигнала находится на частоте fo=N/2 (Гц). В случае чередующегося набора единиц и нулей основная гармоника находится на частоте fo=N/4 (Гц), что в два раза меньше чем у кода NRZ. Но остается проблема синхронизации при передаче последовательности нулей.
В целом, для различных комбинаций бит использование кода AMI приводит к более узкому спектру сигнала, чем для кода NRZ. Код AMI предоставляет также некоторые возможности по распознаванию ошибочных сигналов. Так, нарушение строгого чередования полярности сигналов говорит о ложном импульсе или исчезновении корректного импульса.
Манчестерский код (Manchester)
Манчестерский код относится к самосинхронизирующимся кодам и имеет два уровня, что обеспечивает хорошую помехозащищенность. Каждый битовый интервал делится на две части. Информация кодируется перепадом уровня, происходящим в середине каждого интервала.
При передаче любой битовой последовательности сигнал не содержит постоянную составляющую. Длительность единичного импульса линейного сигнала t0 равна половине битового интервала, то есть B=2N. Частота основной гармоники сигнала зависит от характера битовой последовательности и находится в диапазоне fо=N/2 – N (Гц).
Манчестерский код используется в сетях Ethernet со скоростью передачи 10 Мбит/с (спецификация 10Bаsе-Т).
В настоящее время разработчики пришли к выводу, что во многих случаях рациональнее применять потенциальное кодирование, ликвидируя его недостатки с помощью так называемого логического кодирования (см. ниже в этом разделе).
Потенциальный код 2B1Q
Это потенциальный код с четырьмя уровнями сигнала для кодирования данных. Название отражает суть кодирования – каждые два бита (2В) передаются за один такт сигналом определенного уровня (1Q). Линейный сигнал имеет четыре состояния.
Основная частота сигнала не превышает fо=N/4 Гц. Однако для реализации этого метода кодирования мощность передатчика должна быть выше, чтобы четыре значения потенциала четко различались приемником на фоне помех.
Используются три уровня линейного сигнала: «-1», «0», «+1». Логической единице соответствует обязательный переход с одного уровня сигнала на другой. При передаче логического нуля изменение уровня линейного сигнала не происходит.
При передаче последовательности единиц период изменения уровня сигнала включает четыре бита. В этом случае fо=N/4 (Гц). Это максимальная основная частота сигнала в коде MLT-3. В случае чередующейся последовательности нулей и единиц основная гармоника сигнала находится на частоте fо=N/8 (Гц).
Логическое кодирование подразумевает замену бит исходной информационной последовательности новой последовательностью бит, несущей ту же информацию, но обладающей, кроме этого, дополнительными свойствами.
Различают два метода логического кодирования:
Избыточные коды основаны на разбиении исходной последовательности бит на группы и замене каждой исходной группы в соответствии с заданной таблицей кодовым словом, которое содержит большее количество бит.
Логический код 4В/5В заменяет исходные группы (слова) длиной 4 бита словами длиной 5 бит. В результате, общее количество возможных битовых комбинаций 25=32 больше, чем для исходных групп 24=16. В кодовую таблицу включают 16 кодовых слов, которые не содержат более двух нулей подряд, и используют их для передачи данных. Код гарантирует, что при любом сочетании кодовых слов на линии не могут встретиться более трех нулей подряд.
Имеются также коды и с тремя состояниями сигнала, например, в коде 8В/6Т для кодирования 8 бит исходной информации используются кодовые слова из 6 элементов, каждый из которых может принимать одно из трех значений. Избыточность кода 8В/6Т выше, чем кода 4В/5В, так как на 28=256 исходных комбинаций приходится 36=729 результирующих комбинаций.
В коде 8B/10В каждые 8 бит исходной последовательности заменяются десятью битами кодового слова. При этом на 256 исходных комбинаций приходится 1024 результирующих комбинаций. При замене в соответствии с кодовой таблицей соблюдаются следующие правила:
Все рассмотренные избыточные коды применяются в сетях Ethernet, которые нашли самое широкое распространение. Так, код 4B/5B используется в стандартах 100Base-TX/FX, а код 8B/6T — в стандарте 100Base-T4, который в настоящее время практически уже не используется. Код 8B/10В используется в стандарте 1000Base-Х, код 64/66 в стандарте 10 GbE (когда в качестве среды передачи данных используется оптоволокно).
Осуществляют логическое кодирование сетевые адаптеры. Поскольку, использование таблицы перекодировки является очень простой операцией, метод логического кодирования избыточными кодами не усложняет функциональные требования к этому оборудованию.
Для обеспечения заданной пропускной способности линии передатчик, использующий избыточный код, должен работать с повышенной скоростью (тактовой частотой). Так, для обеспечения скорости передачи информации 100 Мбит/с с использованием кодирования 4В/5В + NRZI передатчик должен работать на скорости 125 МБод. При этом спектр линейного сигнала расширяется. Тем не менее, спектр сигнала избыточного потенциального кода уже спектра сигнала в манчестерском коде, что оправдывает дополнительный этап логического кодирования, а также работу приемника и передатчика на повышенной скорости.
Пусть, например, скремблер реализует соотношение Вi=Ai+Bi-5+Bi-7.
Здесь Bi – бит результирующего кода, полученный на i-м такте работы скремблера; Ai – бит исходного кода, поступающий в передатчике на вход скремблера на i-м такте; Bi-5 и Bi-7 – биты результирующего кода, полученные на предыдущих тактах работы скремблера, соответственно на «i-5» и «i-7» тактах.
Дескремблер в приемнике восстанавливает исходную последовательность, используя соотношение Ci=Bi+Bi-5+Bi-7=(Ai+Bi-5+Bi-7 )+Bi-5+Bi-7=Ai
Выводы
Дополнительная информация.
Руководство по технологиям объединенных сетей. Cisco systems. Inc. Вильямс. 2004
- какие коды надо писать на левом запястье
- какие коды нельзя писать на левой руке