106
обмене данными между блоками внутри компьютера или же между компьютером и принтером. На небольших расстояниях хорошо работает схема, основанная на отдельной тактирующей линии связи. В такой схеме информация снимается с линии данных только в момент прихода тактового импульса (см. рис.5.4).
Рис. 5.4 Синхронизация приемника и передатчика на небольших расстояниях
Такой вариант синхронизации абсолютно не подходит для любой сети из-за неоднородности характеристик проводников в кабелях. На больших расстояниях неравномерность скорости распространения сигнала может привести к тому, что тактовый импульс придет настолько позже или раньше соответствующего сигнала данных, что бит данных будет пропущен или считан повторно. Еще одна причина, по которой в сетях отказываются от использования тактирующих импульсов, - экономия проводников в дорогостоящих кабелях. Поэтому в сетях применяются так называемые
самосинхронизирующиеся коды.
Самосинхронизирующиеся коды - сигналы, которые несут для приемника указания о том, в какой момент времени нужно осуществлять распознавание очередного бита (или нескольких бит, если код ориентирован более чем на два состояния сигнала). Любой резкий перепад сигнала - так называемый фронт - может служить хорошим указанием для синхронизации приемника с передатчиком. Примером самосинхронизирующегося кода может быть синусоида. Так как изменение амплитуды несущей частоты дает возможность приемнику определить момент появления входного кода. Но это касается аналоговой модуляции. В цифровом кодировании также существуют методы, которые создают самосинхронизирующиеся коды, но об этом позже.
Таким образом, хороший цифровой код должен обеспечивать синхронизацию
Рассмотрев требования к хорошему цифровому коду, перейдем к рассмотрению самих методов цифрового кодирования
5.2.1Потенциальный код без возвращения к нулю NRZ
Этот код получил такое название потому, что при передаче последовательности единиц сигнал не возвращается к нулю в течение такта (как мы увидим ниже, в других методах кодирования возврат к нулю в этом случае происходит).
Код NRZ (Non Return to Zero) - без возврата к нулю - это простейший двухуровневый код. Результирующий сигнал имеет два уровня потенциала:
107
Нулю соответствует нижний уровень, единице - верхний. Информационные переходы происходят на границе битов.
Рассмотрим три частных случая передачи данных кодом NRZ: чередующаяся последовательность нулей и единиц, последовательность нулей и последовательность единиц (см. рис. 5.5,а).
а |
б |
Рис. 5.5 Код NRZ |
|
Попытаемся определить удовлетворяет ли этот код перечисленным требованиям. Для этого необходимо определить основную гармонику спектра при потенциальном кодировании в каждом из представленных случаев, чтобы точнее определить какие код NRZ имеет требования к используемой линии связи.
Первый случай - передается информация, состоящая из бесконечной последовательности чередующихся единиц и нулей (см. рис. 5.5,б).
Этот рисунок показывает, что при чередовании единиц и нулей за один такт будет передаваться два бита 0 и 1. При форме синусоиды показанной на рис. 4.22,б При N - битовой скорости передачи период этой синусоиды равен T = 2N. Частота основная гармоника в этом случае равна f0 = N/2.
Как видно, при такой последовательности этого кода скорость передачи данных вдвое превышает частоту сигнала.
При передаче последовательностей нулей и единиц результирующий сигнал - постоянный ток частота изменения сигнала равна нулю f0 = 0.
Спектр реального сигнала постоянно меняется в зависимости от того, какие данные передаются по линии связи и следует опасаться передач длинных последовательностей нулей или единиц, которые сдвигают спектр сигнала в сторону низких частот. Т.к. код NRZ при передаче длинных последовательностей нулей или единиц имеет постоянную составляющую.
Из теории сигналов известно, что к спектру передаваемого сигнала помимо требований к ширине, выдвигают еще одно очень важное требование
- отсутствие постоянной составляющей (наличия постоянного тока между приемником и передатчиком), потому как применение различных трансформаторных развязок в линии связи не пропускает постоянный ток.
Следовательно, часть информации просто будет игнорироваться этой линией связи. Поэтому на практике всегда стараются избавиться от присутствия постоянной составляющей в спектре несущего сигнала уже на этапе кодирования.
108
Таким образом, мы определили еще одно требование к хорошему цифровому коду цифровой код не должен иметь постоянной составляющей.
Еще одним недостатком NRZ является - отсутствие синхронизации. В этом случае помогут только дополнительные методы синхронизации, о которых мы поговорим позже.
Одним из основных достоинств кода NRZ является простота. Для того, чтобы сгенерировать прямоугольные импульсы необходимы два транзистора, а для осуществления аналоговой модуляции нужны сложные микросхемы. Потенциальный сигнал не надо кодировать и декодировать, поскольку такой же способ применяется и для передачи данных внутри компьютера.
В результате всего показанного выше сделаем несколько выводов, которые помогут нам и при рассмотрении других методов цифрового кодирования:
−NRZ очень прост в реализации, обладает хорошей распознаваемостью ошибок (из-за двух резко отличающихся потенциалов).
−NRZ имеет постоянную составляющую при передаче нулей и единиц, что делает его невозможным для передачи в линиях с трансформаторными развязками.
−NRZ - не самосинхронизирующийся код и это усложняет его передачу в любой линии.
Привлекательность кода NRZ, из-за которой имеет смысл заняться его улучшением, состоит в достаточно низкой частоте основной гармоники fо, которая равна N/2 Гц, как это было показано выше. Таким образом, код NRZ работает на низких частотах от 0 до N/2 Гц.
В результате в чистом виде код NRZ в сетях не используется. Тем не менее, используются его различные модификации, в которых с успехом устраняют как плохую самосинхронизацию кода NRZ, так и наличие постоянной составляющей.
Все рассматриваемые дальше коды - это модификация кода NRZ. Следующие методы цифрового кодирования разрабатывались с целью
каким-то образом улучшить возможность кода NRZ
5.2.2. Метод биполярного кодирования с альтернативной инверсией AMI
Метод биполярного кодирования с альтернативной инверсией (Bipolar
Alternate Mark Inversion, AMI) является модификацией метода NRZ.
В этом методе используются три уровня потенциала - отрицательный, нулевой и положительный. Три уровня сигнала - это недостаток кода потому, чтобы различить три уровня необходимо лучшее соотношение сигнал/шум на входе в приемник. Дополнительный уровень требует увеличение мощности передатчика примерно на 3 дБ для обеспечения той же достоверности приема бит на линии, что является общим недостатком кодов с несколькими состояниями сигнала по сравнению с двухуровневыми кодами. В коде AMI для кодирования логического нуля используется нулевой потенциал, логическая единица кодируется либо положительным
109
потенциалом, либо отрицательным, при этом потенциал каждой новой единицы противоположен потенциалу предыдущей.
Рис. 5.6 Код AMI
Такой прием кодирования частично ликвидирует проблемы постоянной составляющей и отсутствия самосинхронизации, присущие коду NRZ при передаче длинных последовательностей единиц. Но остается для него проблема постоянной составляющей при передаче последовательностей нулей (см. рис. 5.6).
Рассмотрим частные случаи работы кода, и определим основную гармонику спектра результирующего сигнала для каждого из них. При последовательности нулей - сигнал - постоянный ток - fo = 0 (рис. 5.7,а)
а б в
Рис. 5.7 Определение основных частот спектра для AMI
По этой причине код AMI также требует дальнейшего улучшения. При передаче последовательности единиц сигнал на линии представляет собой последовательность разнополярных импульсов с тем же спектром, что и у кода NRZ, передающего чередующиеся нули и единицы, то есть без постоянной составляющей и с основной гармоникой fo = N/2 Гц.
При передаче чередующихся единиц и нулей основная гармоника fo = N/4 Гц что в два раза меньше чем у кода NRZ.
В целом, для различных комбинаций бит на линии использование кода AMI приводит к более узкому спектру сигнала, чем для кода NRZ, а значит, и к более высокой пропускной способности линии. Код AMI предоставляет также некоторые возможности по распознаванию ошибочных сигналов. Так, нарушение строгого чередования полярности сигналов говорит о ложном импульсе или исчезновении с линии корректного импульса. Сигнал с некорректной полярностью называется запрещенным сигналом (signal violation).
Можно сделать следующие выводы:
−AMI ликвидирует постоянную составляющую при передаче последовательности единиц;
110
−AMI имеет узкий спектр - от N/4 - N/2;
−AMI частично ликвидирует проблемы синхронизации
−AMI использует не два, а три уровня сигнала на линии и это его недостаток, но его удалось устранить следующему методу.
5.2.3 Потенциальный код с инверсией при единице NRZI
Этот код полностью похож на код AMI, но только использует два уровня сигнала. При передаче нуля он передает потенциал, который был установлен в предыдущем такте (то есть не меняет его), а при передаче единицы потенциал инвертируется на противоположный.
Этот код называется потенциальным кодом с инверсией при единице
(Non Return to Zero with ones Inverted, NRZI) .
Он удобен в тех случаях, когда использование третьего уровня сигнала весьма нежелательно, например, в оптических кабелях, где устойчиво распознаются два состояния сигнала - свет и темнота.
Рис. 5.8 Код NRZI
Код NRZI отличается по форме результирующего сигнала от кода AMI, но если вычислить основные гармоники, для каждого случая, то окажется, что они такие же. Для последовательности чередующихся единиц и нулей основная частота сигнала fо=N/4. (см. рис. 5.9,а). Для при последовательности единиц - fо=N/2. При последовательности нулей сохраняется тот же недостаток fо=0 - постоянный ток в линии.
а б
Рис. 5.9 Определение основных частот спектра для NRZI
Выводы следующие:
NRZI - обеспечивает те же возможности, что и код AMI, но использует для этого только два уровня сигнала и поэтому более приемлем для дальнейшего усовершенствования. Недостатки NRZI - постоянная составляющая при последовательности нулей, и отсутствие синхронизации