Линейные коды и способы модуляции
Линейные коды
Скорость, которая необходима для передачи сигналов импульснокодовой модуляции — ИКМ, — требует специальных мер для передачи сигналов даже на небольшие расстояния. В телекоммуникации величина расстояния, на котором возможна передача сигналов, зависит от требуемой скорости передачи. Проблемы ИКМ заключаются в большом спектре частот, которые требуются для передачи и восстановления прямоугольного импульса. Этот спектр, порождаемый резкими передними и задними фронтами, может привести к переходу информации в соседние линии, что не только породит помехи, но нарушит конфиденциальность информации. Подобное недопустимо для телекоммуникации. Особенно ухудшают положение с передачей однополярные прямоугольные импульсы. Наличие постоянной составляющей и асимметричность порождают искажение самих импульсов и приводят к влиянию на соседние цепи. Поэтому для передачи цифровых сигналов по линии применяются специальные коды (линейные коды).
Биполярные коды
Для устранения постоянной составляющей применяются биполярные коды. Они используют три уровня сигнала — нулевой, положительный и отрицательный. Их симметричность аналогична двуполярной структуре синусоидальной формы аналогового сигнала. Хотя резкие переходы в момент прохождения заднего и переднего фронтов все же остаются, но для таких кодов резко снижается затухание линии и, как следствие, возрастает дальность передачи.
В случае биполярного преобразования (рис. 9.1) логическая единица передается импульсами с чередующимися полярностями (код ЧПИ — чередующиеся полярности импульсов). В иностранной литературе этот код называется AMI (Alternating Mark Inversion). При этом каждая последующая единица передается полярностью, противоположной предыдущей единице.
В результате энергия, накопившаяся от положительного импульса, компенсируется энергией отрицательного. Логическому нулю (0) соответствует отсутствие импульса. По сути дела, в данном случае применяется троичный код, поскольку при передаче в канал используются три уровня сигнала: +1, 0, -1. При этом полярности единиц должны чередоваться. Это позволяет осуществлять контроль правильности передачи. При одиночной ошибке в канале, например исчезновении одной единицы, сразу происходит нарушение чередования. Основным недостатком такого линейного кода является то, что число единиц в сигнале зависит от их числа в исходной комбинации. Для того чтобы настроить генераторы, находящиеся на разных станциях и расходящиеся в силу невозможности создания идеальных частот, необходимо на приемном конце из приходящих импульсов выделять передние фронты и сравнивать моменты их поступления с аналогичными фронтами местного генератора. При длительной последовательности нулей в исходном сигнале (допускается не более 14 нулей) отсутствие передних фронтов на приеме может привести к расхождению генераторов, что в свою очередь приведет к появлению ошибок в информации. Поэтому для биполярного кода применяется алгоритм, позволяющий увеличить плотность единиц. Он заключается в том, что, если передано нулей подряд, то на передающем конце вставляется единица. Чтобы на приемном конце при декодировании не приняли в информации лишнюю единицу, на приемный конец передается сигнал о вставке. Этот сигнал состоит в нарушении полярности, что позволяет исключить добавленную единицу. Условия нарушения полярности требуют, чтобы при замене последовательности из нулей на нарушающуюся комбинацию число переданных единиц с правильным чередованием было нечетным. Если оно четное, то в подставляемой комбинации добавляется одна единица без нарушения и далее 0, а потом происходит нарушение полярности. Это отображается в таблице 9.1 для кода, в котором заменяется последовательность из трех единиц ( ).
Полярность предыдущего сигнала | Вид комбинации | |
---|---|---|
Нечетного | Четного | |
- | 00- | +0+ |
+ | 00+ | -0- |
В таблице 9.1 показаны полярности, которыми была передана предыдущая единица, затем поступает контролируемая последовательность нулей. Если число единиц, переданных до этого момента, нечетное, то вместо трех нулей передается два и на последнем месте передается сигнал, нарушающий полярность (см. колонку 2). Если предыдущий сигнал — минус, то повторяется минус, а если плюс, то повторяется плюс.
Если число единиц, передаваемых до контролируемой последовательности, четное (см. колонку 3), то его добавляют до нечетного, следуя закону чередования, а затем передают еще один нуль. Далее следует нарушение закона — передача единицы, по полярности совпадающей с последней переданной. Таким образом, соблюдаются условия:
- вместо нулей вставляются единицы;
- нарушается закон чередования полярностей, чтобы на приемном конце могли различить вставленную единицу;
- между правильно переданной последовательностью и нарушением всегда находится нечетное количество импульсов (единиц), переданных в соответствии с правилом кодирования;
- на приемном конце после обнаружения указанных выше условий восстанавливают последовательность из трех нулей на месте прихода нарушенной комбинации. Дополнительно передаваемые единицы используются для выделения передних фронтов и синхронизации генераторов.
Рассмотренный выше код обозначается (Биполярный код высокой плотности порядка — High Density Bipolar of Order N), в примере показан .
Замена | Замена | Замена | Замена | |||||
Исходный код | 101 | 000 | 11 | 000 | 000 | 001 | 000 | 1 |
Случай 1 (нечетное) | +0- | 00- | +- | +0+ | -0- | 00+ | 00+ | - |
Случай 1 (нечетное) | +0- | +0+ | -+ | -0- | +0+ | 00+ | 00- | + |
Нарушение | Нарушение | Нарушение | Нарушение |
В таблице 9.2 приводится пример того, как производится замена комбинаций, содержащих три нуля подряд. В первом случае перед последовательностью из нулей стоит нечетное число единиц. Тогда последний нуль заменяется единицей с нарушением биполярности. Во втором случае вместо первого нуля передается единица с соблюдением чередования полярности, а вместо второго нуля передается единица, нарушающая чередование. Наряду с этим правилом замены существуют другие, но этот пока является наиболее массовым и применяется в системе уплотнения ИКМ-30, а также на некоторых абонентских участках в цифровой системе интегрального обслуживания (ЦСИО).
Абсолютный биимпульсный код
Этот вид кодирования применяется в нескольких цифровых системах для передачи сигналов внутри станции, а также в сетях Ethernet. Как уже известно из предыдущей главы, возможность длительной паузы в передаче импульсов по каналу приводит к тому, что требуется усложнение алгоритма передачи и приема. В этом разделе рассмотрим вид кодирования, в котором передача единиц и нулей осуществляется с помощью импульсов. Для передачи логической единицы применяется направление изменения фронта в средней части тактового импульса, как это показано на рис. 9.2. При передаче сигнала "1" используется падение фронта (обозначено на рис. 9.2 стрелкой вниз), а для передачи "0" применяется возрастание фронта в средней части тактового импульса.
Имеется еще целый ряд биполярных кодов, но и рассмотренных достаточно, чтобы представить применение линейных кодов при цифровой передаче. Теперь рассмотрим ряд кодов, которые привели к расширению пропускной способности на абонентском участке.