Правило 1. При нечетном числе нулевых битов между двумя
единичными (например, в коде ...10001...) полярности импульсов, отображающих
единичные биты, взаимнообратны (...-000+...или...+000-...).
Правило 2. При четном числе нулевых битов между двумя единичными
(например, в коде ...1001...) полярности импульсов, отображающих единичные
биты, одинаковы (...-00-... или ...+00+...).
Правило 3. В группе единичных битов (...111...) сигналы имеют
одинаковую полярность (...+++... или ...---...).
В соблюдении приведенных правил можно
убедиться при сопоставлении временных диаграмм сигналов А и W на рис. 8.11. Из
этих диаграмм также следует, что при передаче непрерывной последовательности
лог. 1 (DATA = 11... 1) частота основной гармоники сигнала NRZ(I) равна
половине скорости передачи данных или 62,5 МГц. При этих же условиях частота
основной гармоники сигнала DBM равна четверти скорости передачи данных или
31,25 МГц. (Интересующие нас области временных диаграмм выделены серым фоном.)
Амплитуда этой гармоники достаточно высока по сравнению с остальными, поэтому
без заметного искажения формы сигнала ее можно несколько снизить с помощью
заграждающего фильтра.
Заграждающий фильтр настроен на частоту 31,25
МГц. Значения емкости и индуктивности удовлетворяют соотношению LC = 2,6 х 10-17.
Например, при L=2,6 мкГн С=10 пФ. Резонансный импеданс цепи R1-L-C равен ZF
= L/R1C. Коэффициент подавления сигнала на резонансной частоте равен (Zp
+ R2)/R2 и может регулироваться выбором параметров фильтра.
Двубинарное кодирование с фильтрацией
выходного сигнала позволяет сместить его энергетический спектр в область более
низких частот по сравнению с другими решениями. Так, 78 % энергии сигнала
сосредоточено в полосе частот ниже 30 МГц, а 90 % энергии — в полосе частот
ниже 42,6 МГц. Напомним, что скорость передачи данных составляет 125 Мбит/с!
Дешифратор двубинарного кода (см. рис. 3)
можно выполнить по схеме, приведенной на рис. 2, г. Эта схема нечувствительна к
полярности импульсов и в равной мере применима для дешифрации кодов MLT-3,
RND(MLT-3) и DBM.
Скремблирование может выполняться с различными
целями. Наиболее распространенная цель — защита передаваемых данных от
несанкционированного доступа. Для ее достижения разработано множество методов
кодирования и схемных решений. Но нас интересует иная задача, связанная с
«разравниванием» спектра сигнала и повышением надежности синхронизации
приемника с источником передаваемых по линии данных. Применительно к этой
задаче цель скремблирования состоит в исключении из потока данных длинных
последовательностей лог. 0, лог. 1 и периодически повторяющихся групп битов.
Для этого необходимо преобразовать данные так, чтобы они выглядели как
случайные, т.е. лишенные какой-либо видимой закономерности.
Скремблеры и дескремблеры обычно построены на
основе генераторов псевдослучайных битовых последовательностей. Пример такого
генератора приведен на рис. 7. Генератор выполнен на основе кольцевого
сдвигового регистра RG с логическим элементом Исключающее ИЛИ (XOR) в цепи
обратной связи. Если в исходном состоянии в регистре присутствует любой
ненулевой код, то под действием синхросигнала CLK этот код будет непрерывно
циркулировать в регистре и одновременно видоизменяться. В качестве выхода
генератора можно также использовать выход любого разряда регистра.
В общем случае в М-разрядном регистре обратная
связь подключается к разрядам с номерами М и N (М > N). Выбор оптимального
значения N для заданного М — непростая задача. К счастью, она уже решена.
Вариант таблицы выбора N приведен на рис. 7. Таблица описывает ряд генераторов
различной разрядности. Каждый генератор формирует последовательность битов с
максимальным периодом повторения, равным 2M- 1. В такой
последовательности встречаются все М-разрядные коды, за исключением нулевого.
Этот код представляет собой своеобразную «ловушку» для данной схемы: если бы
нулевой код появился в регистре, дальнейшая последовательность битов была бы
также нулевой. Но при нормальной работе генератора попадания в ловушку не
происходит.
Последовательность максимальной длины обладает
следующими свойствами:
В полном цикле (2M - 1 тактов)
число лог. 1 на единицу больше, чем числолог. 0. Добавочная лог. 1 появляется
засчет исключения состояния, при котором врегистре присутствовал бы нулевой
код.Это можно интерпретировать так, что вероятности появления на выходе
регистралог. 0 и лог. 1 практически одинаковы.
Рис. 7. Генератор
псевдослучайной битовой последовательности максимальной длины:
а — схема; б — таблица для выбора промежуточной точки подключения обратной
связи
В полном цикле (2M-1 тактов)
половина серий из последовательных лог. 1 имеет длину 1, одна четвертая серий
-длину 2, одна восьмая — длину 3 и т.д. Такими же свойствами обладают и серии
из лог. 0 с учетом пропущенного лог. 0. Это говорит о том, что вероятности
появления «орлов» и «решек» не зависят от исходовпредыдущих «подбрасываний».
Поэтому вероятность того, что серия из последовательных лог. 1 или лог. 0
закончится при следующем подбрасывании, равна 1/2 вопреки обывательскому
пониманию «закона о среднем».
Если последовательность полногоцикла (2M-1
тактов) сравнивать с этой же последовательностью, но циклически сдвинутой на
любое число тактов W (W не является нулем или числом, кратным 2M-1),
то число несовпадений будет на единицу больше, чем число совпадений.
Наиболее распространены две основные схемы
построения пар «скремблер-дескремблер»: с неизолированными и изолированными
генераторами псевдослучайных битовых последовательностей. Рассмотрим эти схемы
и их модификации.
В схеме, приведенной на рис. 8.14, скремблер и
дескремблер выполнены на основе рассмотренных генераторов псевдослучайных
битовых последовательностей. Оба генератора имеют одинаковую разрядность и
однотипную структуру обратных связей. Все процессы, протекающие в системе
передачи данных, синхронизируются от тактового генератора (на рисунке не
показан). Этот генератор размещен на передающей стороне системы и может
принадлежать источнику данных либо скремблеру. В каждом такте на вход
скремблера подается очередной бит передаваемых данных SD, а в сдвиговом
регистре RGI накопленный код продвигается на один разряд вправо.
Если предположить, что источник данных
посылает в скремблер длинную последовательность лог. 0, то элемент XOR1 можно
рассматривать как повторитель сигнала Y1 с выхода элемента XOR2. В этой
ситуации регистр RG1 замкнут в кольцо и генерирует точно такую же
псевдослучайную последовательность битов, как и в рассмотренной ранее схеме
(см. рис. 7). Если от источника данных поступает произвольная битовая
последовательность, то она взаимодействует с последовательностью битов с выхода
элемента XOR2. В результате формируется новая (скремблированная)
последовательность битов SCRD, по структуре близкая случайной. Эта
последовательность, в свою очередь, продвигается по регистру RG1, формирует
поток битов на выходе элемента XOR2 и т.д.
Рис. 8. Система
передачи данных, в которой скремблер и дескремблер содержат неизолированные
генераторы псевдослучайных битовых последовательностей
Скремблированная последовательность битов SCRD
передается по линии и поступает в дескремблер. С помощью генератора с фазовой
автоподстройкой частоты (этот генератор на рисунке не показан) из входного
сигнала выделяется тактовый сигнал. Под управлением тактового сигнала биты SCRD
продвигаются в регистре RG2, а в приемник данных поступают дескремблированные
данные RD.
Потоки данных RD и SD совпадают с точностью до
задержки передачи по линии. Действительно, в установившемся режиме в сдвиговых
регистрах RG1 и RG2 присутствуют одинаковые коды, так как на входы этих
регистров поданы одни и те же данные SCRD, а тактовая частота, по сути, общая.
Поэтому Y2 = Y1, и, с учетом этого, RD = SCRD ⊕ Y2 = SD ⊕
Y1 ⊕ Y2 = SD ⊕ Y1 ⊕
Yl = SD ⊕ 0 = SD.
Рассмотренная система передачи данных не
требует применения какой-либо специальной процедуры начальной синхронизации.
После заполнения сдвигового регистра RG2, как было показано, генераторы
псевдослучайных битовых последовательностей работают синхронно (их состояния
всегда одинаковы). При появлении одиночной ошибки в линии синхронизация
временно нарушается, но затем автоматически восстанавливается, как только
правильные данные вновь заполнят регистр RG2. Однако в процессе продвижения
ошибочного бита по сдвиговому регистру RG2, а именно, в периоды его попадания
сначала на первый, а затем на второй вход элемента XOR3 сигнал Y2 дважды
принимает неправильное значение. Это приводит к размножению одиночной ошибки —
она впервые появляется в сигнале RD в момент поступления из линии и затем
возникает еще два раза при последующем двукратном искажении сигнала Y. Еще один
недостаток рассмотренной системы передачи данных связан с тем, что существуют
некоторые неблагоприятные кодовые ситуации, с которыми скремблер «не
справляется».
В схеме, приведенной на рис. 9, генераторы
псевдослучайных битовых последовательностей включены так, что они изолированы
от каких-либо нежелательных внешних воздействий. Генераторы, как и в предыдущей
схеме, работают синхронно, поэтому скремблирующий Z1 и дескремблирующий Z2
сигналы одинаковы. Ошибка в линии не размножается дескремблером, так как она не
попадает в сдвиговый регистр RG2. Недостаток этой схемы — отсутствие
самосинхронизации генератора псевдослучайной битовой последовательности
дескремблера (напомним, что в предыдущей схеме такая синхронизация имеется).
Рис. 9. Система
передачи данных, в которой скремблер и дескремблер содержат изолированные
генераторы псевдослучайных битовых последовательностей
Рассмотрим улучшенный вариант
скремблера-дескремблера, построенного на основе двух одинаковых генераторов
псевдослучайных последовательностей битов, рис. 10. Улучшение состоит в
устранении упоминавшихся в п. 2.2 неблагоприятных кодовых ситуаций. В отличие
от схемы, приведенной на рис. 8, применены средства коррекции состояний
генераторов для устранения нежелательных последовательностей битов.
Рис. 10. Система
передачи данных, в которой скремблер и дескремблер содержат неизолированные
генераторы псевдослучайных битовых последовательностей (улучшенный вариант)
Скремблер содержит сдвиговый регистр RG1 с
логическими элементами Исключающее ИЛИ (XOR1 и XOR2) в цепи обратной связи, а
также два двоичных счетчика.
Счетчик лог. 0 устанавливается в нуль всякий
раз, когда скремблированный сигнал данных SCRD = 1. Если SCRD = 0, то
содержимое счетчика увеличивается на единицу по фронту сигнала CLK1. При
накоплении заданного числа единиц (например пяти) счетчик автоматически
устанавливается в нулевое состояние и формирует импульс SET установки в единицу
некоторого разряда (или группы разрядов) сдвигового регистра. Таким образом, счетчик
лог. 0 служит детектором цепочек лог. 0 заданной длины. При обнаружении такой
цепочки корректируется код в сдвиговом регистре.
Счетчик лог. 1 построен симметрично. Он
устанавливается в нуль всякий раз, когда скремблированный сигнал данных SCRD =
0. Если SCRD = 1, то содержимое счетчика увеличивается на единицу по фронту
сигнала CLK1. При накоплении заданного числа единиц (например пяти) счетчик
автоматически устанавливается в нулевое состояние и формирует импульс RESET
установки в нуль некоторого разряда (или группы разрядов) сдвигового регистра.
Счетчик лог. 1 служит детектором цепочек лог. 1 заданной длины.
Дескремблер построен аналогично. Он
дополнительно содержит схему выделения синхросигнала CLK2 из скремблированного
сигнала SCRD. Эта схема может быть выполнена на основе петли фазовой авто
подстройки частоты PLL (Phase Locked Loop).
Система передачи данных функционирует
следующим образом. Источник данных формирует синхронный битовый поток SD и
соответствующий синхросигнал CLK1. Этот поток проходит через логический элемент
XOR2. На второй вход этого элемента поступает последовательность скремблирующих
битов SC1. Суммарный (скремблированный) поток SCRD передается по линии и
поступает в дескремблер.
После заполнения регистра RG2 информация в нем
в точности совпадает с той, которая присутствует в регистре RG1. В дальнейшем
все изменения информации в этих регистрах происходят синхронно, так как на их
входы подается один и тот же сигнал SCRD (разумеется, с учетом задержки
передачи по линии связи). Благодаря этому, SC2 = SC1. Логический элемент XOR4
формирует сигнал принимаемых данных RD, который повторяет исходный сигнал SD.
Это следует из того, что
RD = SCRD ⊕ SC2 = SCRD ⊕ SC1 = SD ⊕ SC1 ⊕ SC1 = SD.
Уточним роль счетчиков лог. 0 и лог. 1, о
которых уже кратко упоминалось. Предположим, что эти счетчики исключены из схем
скремблера и дескремблера. Схема остается работоспособной при условии, что
поток SD не содержит некоторых опасных последовательностей сигналов. Рассмотрим
эти последовательности.
При работе системы не исключено, что
поступающие от источника данные SD таковы, что логический элемент XOR2
скремблера в М последовательных тактах сформирует сигнал лог. 0 (М —
разрядность сдвигового регистра). Тогда сдвиговый регистр RG1 (а синхронно с
ним и регистр RG2) заполнится нулевыми битами. Если после этого источник
сигнала начнет передавать длинную последовательность лог. 0, то на обоих входах
логического элемента XOR2 будут постоянно присутствовать нулевые сигналы,
сигнал SCRD также в течение длительного времени будет оставаться нулевым, что
крайне нежелательно.
Аналогичная ситуация возможна и после
случайного заполнения сдвигового регистра единичными битами. При последующей
передаче длинной последовательности сигналов SD = 1 на выходе логического
элемента XOR2 поддерживается сигнал лог. 1, который в каждом такте записывается
в регистр, подтверждая его состояние «Все единицы».
Введение счетчиков позволяет исключить
возможность заполнения регистра RG1 одинаковыми битами (лог. 0 или лог. 1).
Поэтому нет опасности фиксации уровня сигнала в линии при последующей выдаче
источником данных длинной последовательности лог. 0 или лог. 1. Но это, к
сожалению, не означает, что задача получения гарантированно изменяющегося
сигнала SCRD решена «полностью и окончательно». Действительно, теоретически
можно преднамеренно синтезировать сколь угодно длинную последовательность
сигналов SD, совпадающую или противофазную последовательности сигналов SC1,
какой бы сложной она ни была (ведь ее можно заранее вычислить, зная структуру скремблера
и его начальное состояние). В результате такого синтеза получим неизменный
сигнал SCRD на протяжении любого желаемого интервала времени! Точно так же
можно было бы синтезировать периодический сигнал SCRD вида 010101... для
создания максимального уровня перекрестных помех в соседних проводах
многожильного кабеля (например с целью тестирования системы). Но так как
начальное состояние регистра RG1 источнику данных не известно, на практике
такой синтез невозможен.
Вероятность случайного формирования нескремблируемых
последовательностей битов источником данных зависит от разрядности скремблера и
может быть небольшой, но с ней нельзя не считаться при проектировании
телекоммуникационных устройств.
1. С.М. Сухов, А.В. Бернов, Б.В. Шевкопляс -
Синхронизация в телекомуникационных системах. Анализ инженерных решений. - М.:
Эко-Трендз, 2003г. - 272с.: ил.
Страницы: 1, 2
|