Научная статья на тему 'АЛГОРИТМ ПОЭЛЕМЕНТНОЙ СИНХРОНИЗАЦИИ ПО ОТСЧЕТАМ КОМПЛЕКСНОЙ ОГИБАЮЩЕЙ БЕЗ ИСПОЛЬЗОВАНИЯ ФАПЧ'

АЛГОРИТМ ПОЭЛЕМЕНТНОЙ СИНХРОНИЗАЦИИ ПО ОТСЧЕТАМ КОМПЛЕКСНОЙ ОГИБАЮЩЕЙ БЕЗ ИСПОЛЬЗОВАНИЯ ФАПЧ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
105
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПОЭЛЕМЕНТНАЯ СИНХРОНИЗАЦИЯ / ТАКТОВАЯ СИНХРОНИЗАЦИЯ / АЛГОРИТМ СИНХРОНИЗАЦИИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Мелентьев Олег Геннадьевич, Максимов Иван Николаевич

Предложен алгоритм поэлементной синхронизации по отсчетам комплексной огибающей. Проведено имитационное моделирование и сравнение двух алгоритмов, не использующих ФАПЧ, по вероятности ошибок для разных значений отношения энергии бита к спектральной плотности мощности шума.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SYMBOL SYNCHRONIZATION ALGORITHM USING COMPLEX ENVELOP SAMPLES WITHOUT PLL

Symbol synchronization algorithm using complexes envelop samples without PLL was proposed. Two different symbol synchronization algorithms were compared. A dependency of the bit error rate on white gaussian noise is given.

Текст научной работы на тему «АЛГОРИТМ ПОЭЛЕМЕНТНОЙ СИНХРОНИЗАЦИИ ПО ОТСЧЕТАМ КОМПЛЕКСНОЙ ОГИБАЮЩЕЙ БЕЗ ИСПОЛЬЗОВАНИЯ ФАПЧ»

УДК 621.391

Алгоритм поэлементной синхронизации по отсчетам комплексной огибающей без использования ФАПЧ

О. Г. Мелентьев, И. Н. Максимов

Предложен алгоритм поэлементной синхронизации по отсчетам комплексной огибающей. Проведено имитационное моделирование и сравнение двух алгоритмов, не использующих ФАПЧ, по вероятности ошибок для разных значений отношения энергии бита к спектральной плотности мощности шума.

Ключевые слова: поэлементная синхронизация, тактовая синхронизация, алгоритм синхронизации.

1. Введение

Поэлементная синхронизация определяет границы единичных элементов в потоке отсчетов принимаемого сигнала и является обязательной частью любой цифровой системы передачи. Общеизвестные алгоритмы поэлементной синхронизации рассмотрены в работах [1-3].

Для упрощения анализа рассмотрим передачу знакопеременного сигнала прямоугольной формы (меандра), представленного на рис. 1. Данный сигнал поступает на фазовый модулятор и передается в эфир.

Если на приеме обеспечить синхронизацию фазы, то в отсутствие шумов после переноса сигнала на нулевую частоту и фильтрации паразитных высокочастотных составляющих мы получим прямоугольный действительный сигнал. После чего производится его дискретизация. Выберем частоту дискретизации такой, что на единичном интервале будем брать по восемь отсчетов сигнала п — 8. Положим, что все отсчеты нормированы и имеют значения ±1, что удобно для рассмотрения числовых примеров. Для простоты пока положим, что моменты взятия отчетов в приёмнике и передатчике синхронны. В таком случае сигнал будет иметь вид, как на рис. 1.

и(1)А

г

г

Рис. 1. Прямоугольный действительный сигнал и его отсчеты

2. Алгоритм поэлементной синхронизации по действительным отсчетам

Рассмотрим известный алгоритм поэлементной синхронизации по действительным отсчетам сигнала. Алгоритм базируется на анализе сумм отсчетов в четырех последовательно расположенных окнах размером п /2 = 4 элемента. Задача алгоритма - совместить начало первого окна с первым семплом на единичном интервале. Обозначим последовательные окна и суммы отсчетов в них S1, S2, S3, S4, а суммы отсчетов в двух последовательных окнах -S12, S23 и S34 соответственно.

Знак суммы S12 определяет значение детектируемого элемента, а знак Б34 - значение следующего элемента. Анализ проводится, только когда значения элементов на соседних единичных интервалах меняют знак. При равенстве знаков S12 и S34 алгоритм пропускает шаг подстройки синхронизации.

Алгоритм анализирует области S2 и S3, определяет, где происходит смена значащей позиции, и формирует решение на смещение окна в эту сторону. Последовательности отсчетов и окна синхронизации для двух последовательных шагов анализа алгоритма при рассинхро-низации на два периода дискретизации показаны на рис. 2. Так как суммы Б12 и Б34 имеют разные знаки, то анализ проводится. На рис. 2а S23 равна четырем, что больше нуля, значит, в области анализа преобладает единица, при этом значащий момент находится в области с меньшим значением суммы отсчетов в Б3.

На следующем шаге смещаем окно синхронизации на восемь отсчетов (рис. 2б). Здесь сумма S23 = -4 меньше нуля, значит, в области анализа преобладает минус единица (логический ноль), при этом значащий момент находится в области с большим значением суммы отсчетов, т.е. опять в Б3.

: 1 III III 1 1 1 а

1 1 1 '«

i м i i 1 SJ J S2 IMI S3 l S4

г п 1 1 '1 1 ! 4 I I 1 IMII о |

II II ! 1 1 l l l i;i I >

1 1 1

1 Si i S2 1 1 S3 S4 i

Рис. 2. Рассинхронизация на два периода дискретизации

Область S2 находится раньше, смещение в эту сторону назовем отрицательным (/ - cor). Смещение в сторону S3 - положительное (/ + cor).

На каждом рабочем цикле анализа алгоритм формирует число по формуле (1), знак которого определяет направление будущего смещения, а величина характеризует степень рассин-хронизации между текущим положением окна и предполагаемым.

Sm = sign(S\2)• S23 , (1)

где sign(SH) - функция взятия знака.

Для примера, рассмотренного выше (рис. 2б), Sm = sign(-4) - -4 = 4 .

Эти числа складываются между собой до тех пор, пока сумма (аккумулятор) не превысит по модулю некоторого порога. Если модуль аккумулятора превышает порог, то окно смещается на один отсчет в направлении, соответствующем знаку аккумулятора. Для рассматриваемого примера алгоритм сместит окна на один отсчет вправо, т.е. пропустит один отсчет, при этом рассинхронизация станет равна одному периоду дискретизации.

N1:1 ! МММ! I ,

; 1 МП 1 " 1 1 1 82 1 83 84

Рис. 3. Рассинхронизация на один период дискретизации

При смещении влево алгоритм вставит один отсчет с нулевым значением. Через некоторое число шагов система достигнет синхронизма, который будет поддерживаться алгоритмом, так как смещение в среднем будет нулевым: Бш = sign(8) ■ 0 = 0. Это режим стационарного состояния (рис. 4).

Г 1 1 1 1

^ ^ I 81 ! 82 83 1 84

Рис. 4. Режим стационарного состояния

Как уже упоминалось, такая картина будет наблюдаться, если моменты взятия отчетов в приёмнике и передатчике синхронны. Теперь рассмотрим противоположный случай: моменты взятия отчетов в приёмнике и передатчике отстоят друг от друга на половину периода дискретизации. В таком случае сигнал будет иметь вид, как на рис. 5б. То есть момент взятия отсчета приходится точно на фронт импульса. В этом случае значение каждого восьмого отсчета становиться близким к нулю.

а

.........^^.......

б

Рис. 5. Варианты взятия отсчетов

Периодические нули могут появляться и в результате фильтрации синхронных отсчетов. Например, при фильтрации последовательности, представленной на рис. 5а, фильтром скользящего среднего с прямоугольной импульсной характеристикой из восьми единичных отсчетов, который в данном случае является согласованным, каждый восьмой выходной отсчет будет нулевым.

Появление периодических нулей приводит к тому, что алгоритм синхронизации не сможет найти наилучшее положение окна и будет стремиться сдвинуть границу окна в сторону нуля.

<-

Г ' Mil 1 M. t t 1 ; t

мг si II яз Mil M ! ' i S4 1

----------

.111 Mil i t i i

1111 SI . . S2 . . 1 S3 Mil II in l S4 I

->

Рис. 6. Колебательный режим

На рис. 6а смещение Sm = sign(7) --1 = -1 толкает окно влево, но когда окно сместится (смотри рис. 6б), смещение станет положительным Sm = sign(7) ■1 = 1 и после достижения порога окно сместится вправо. Возникает колебательный режим системы синхронизации.

3. Алгоритм поэлементной синхронизации по комплексным отсчетам

Рассмотренный выше алгоритм синхронизации по отсчетам действительного сигнала сравним с предлагаемым алгоритмом синхронизации по комплексным отсчетам.

В данном случае суммируем квадратуры восьми последовательных комплексных отсчетов комплексной огибающей с выхода квадратурного смесителя. В результате получаем действительные и мнимые части комплексных сумм: S12_ i, S12_ q ; S23 _ i, S23 _ q ; S34 _ i, S34 _ q. Теперь вместо проверки противоположности знаков S12 и S34 необходимо проверить разность фаз комплексных чисел S12 и S34. Если разность фаз больше я/2, то можно производить анализ. В противном случае пропускаем текущий цикл синхронизации. Можно показать, что при разности фаз двух комплексных чисел более чем на я/2 сумма произведений их действительных и мнимых частей будет меньше нуля. Вычисляем данную сумму:

tr = S12_i■ S34_i + S12_q■ S34_q. (2)

Если результат отрицательный, то разность фаз более чем я/ 2 и алгоритм проводит анализ.

Как известно, комплексное число может быть представлено точкой или вектором на комплексной плоскости. Идея алгоритма в векторном виде показана на рис. 7.

Л

Q

Рис. 7. Идея алгоритма синхронизации по комплексным отсчетам в векторном виде

Вычислим длину вектора S23, или его модуль:

\S23 - r = S23 _i)2 +(S23 _ q)2 . (3)

Вычислим длины разности векторов (S12 - S23) и (S34 - S23):

|S12-S23 = ^(S12_i -S23_i)2 +(S12_q-S23_q f , (4)

|S34 - S23 = S34 _ i - S23 _ i f + (S34 _ q - S23 _ q f . (5)

Разность усредненных векторов показывает, как много отсчетов с одинаковой фазой в них содержится. Чем меньше разность, тем больше отсчетов данного типа в S23. Значит, надо смещать окно синхронизации в сторону соседнего элемента. Важно определить, какой из векторов приходит раньше. В нашем случае раньше приходит вектор S12, поэтому если длина разности (S12 - S23) < (S34 - S23), то векторов S12 в сумме S23 больше и по аналогии с действительным алгоритмом надо смещаться вправо, в сторону S34, т.е. пропустить один отсчет.

Для уменьшения влияния помех на точность синхронизации вводим инерционный элемент - аккумулятор ( accum ), в который будем добавлять значение |S23| = r, если преобладает S12, или отнимать в противном случае. Для уменьшения вычислительной нагрузки целесообразно исключить взятие квадратного корня в выражениях (3), (4) и (5).

Далее выполняем сравнение модуля аккумулятора с порогом и производим смешение окна в соответствии со знаком аккумулятора. Если значение положительное, преобладает S12, значит, пропускаем один отсчет, если отрицательное - добавляем один отсчет.

Добавление и вычитание отсчета производится изменением длины массива необработанных отсчетов на предыдущей операции чтения из буфера. Если надо пропустить отсчет и длина массива не нулевая - уменьшаем длину на один элемент. Если надо добавить отсчет и длина меньше максимальной, то искусственно увеличиваем количество считываемых элементов на один. После каждой корректировки обнуляем аккумулятор.

Детектор сравнивает разность фаз соседних усредненных комплексных значений векторов S12, используя выражение (2), и принимает решение о значащей позиции. В комплексной системе не нужен отдельный детектор, так как фазы квадратур соседних символов вычисляются через каждые 8 отсчетов.

4. Структурная схема моделирования

Для получения действительного сигнала необходимо использовать ФАПЧ или вычислять разность фаз отсчетов, сдвинутых на длину символа ( n = 8). Так как в комплексном алгорит-

ме нам ФАПЧ не нужен, то представляется корректным для сравнения выбрать действительный алгоритм, основанный на вычислении разности фаз (DBPSK).

Передающая часть модели одинакова для обоих алгоритмов. Для обеспечения минимального времени вхождения в синхронизм значащие позиции символов должны меняться на каждом единичном элементе, поэтому комплексная огибающая должна быть меандром. Учитывая логику DBPSK-модуляции: «Если на вход поступает логическая единица, то фаза сигнала на текущем единичном интервале меняется на п относительно сигнала на предыдущем интервале. При поступлении нуля фаза не меняется», необходимо перекодировать исходную информационную последовательность перед подачей на квадратурный модулятор. Правило перекодирования следующее: если во входной последовательности Xi - единица, то в выходной Yi меняем значащую позицию относительно предыдущего выходного элемента. При поступлении нуля значащая позиция не меняется. Данное преобразование можно легко реализовать, используя логическую операцию «исключающее ИЛИ»: Y = Yj_i © Xj. Учитывая преобразование, меандру на выходе будет соответствовать входная информационная последовательность «все единицы».

Далее производим биполярное преобразование - заменяем логические нули на минус единицы и увеличиваем частоту дискретизации в n — 8 раз.

Для имитации канала передачи генерируем нормальный комплексный шум с математическим ожиданием, равным 0, и среднеквадратическим отклонением, равным 1. Сгенерированные таким образом отсчеты шума умножаем на коэффициент, соответствующий отношению энергии бита к спектральной плотности мощности шума EbNo и количеству отсчетов на единичном интервале, и складываем с отсчетами DBPSK-сигнала:

EbNo

IQn — I + 4n10 20 • noise (6)

Структурную схему приемника можно представить следующим образом

Рис. 8. Структурная схема модели приемника

Комплексный сигнал с шумом (1п, Qn ) поступает на фильтр скользящего окна низких

частот (ФНЧ), импульсная характеристика которого имеет прямоугольную форму из п — 8 единичных отсчетов.

Далее для каждого фильтрованного комплексного отсчета вычисляем фазу как арктангенс отношения мнимой и действительной составляющих:

(p — a tan

'q?

Ii У

Получаем последовательность действительных чисел в диапазоне от —к до к. Модули элементов данной последовательности, смещенные на —к/ 2, поступают в блок поэлементной синхронизации (СС).

^ — \Ф\ — п. (7)

Так как мы используем ОБРБК, находим разность фаз отсчетов, сдвинутых на длину символа (п — 8):

ДФ = Ф1 -ф -п • (8)

При вычислении разности фаз возможны значения, превышающие по модулю п . В таких случаях проводим корректировку. Если |Дф| > п, то

Дф = Дф- sign(Дф) ■ 2 -п. (9)

Скорректированный сигнал подается на детектор (Д), который принимает решение, сравнивая модуль разности фаз с п/ 2. Если сдвиг фаз более п/ 2, то принимается решение о единице, иначе - ноль.

В модели приемника с алгоритмом синхронизации по комплексным отсчетам реализуется только рассмотренный выше алгоритм, который включает в себя все необходимые функции. Так как при реализации комплексного алгоритма выражения (3), (4) и (5) использовались без корня, то для выравнивания условий в системе синхронизации по действительным отсчетам выражение (2) было модифицировано:

Бш = $1^512) ■ sign(S 23) ■ Б232. (10)

5. Результаты моделирования

Сравнение алгоритмов производилось в диапазоне отношений ЕЪЫо от 2 до 12 дБ. Моделирование показало, что в колебательном режиме оба алгоритма имеют одинаковую вероятность ошибок, в стационарном режиме комплексный алгоритм обеспечивает меньшую вероятность ошибок.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рис. 9. Зависимости вероятности ошибок от отношения ЕЪИо : а - в стационарном режиме, б - в колебательном режиме

Считая, что оба режима синхронизации равновероятны, усредним вероятности ошибок в разных режимах и проведем сравнение алгоритмов. Из рис. 10 видно, что выигрыш комплексного алгоритма растет с увеличением отношения ЕЪЫо от 5.7 % при 2 дБ и до 50 % при 12 дБ.

Д 50 40 30 20 10 о

2 4 6 8 10 12 Рис. 10. Выигрыш комплексного алгоритма по вероятности ошибок в процентах

Кроме выигрыша по вероятности ошибок комплексный алгоритм показал значительно меньшее время вхождения в синхронизм (на порядок) и, как предполагалось, нечувствительность к фазовым сдвигам и незначительным частотным расстройкам.

Литература

1. Галкин В. А. Цифровая мобильная радиосвязь: учебное пособие для вузов. М.: Горячая линия - Телеком, 2012. 592 с.

2. Скляр Б. Цифровая связь. Теоретические основы и практическое применение: пер. с англ. М.: Издательский дом «Вильямс», 2003. 1104 с.

3. Чичварин Н. В. Системы синхронизации в каналах связи [Электронный ресурс]. https://ru.bmstu.wiki/CMCTeMbi синхронизации в каналах связи (дата обращения: 03.06.2016).

Статья поступила в редакцию 20.11.2021; переработанный вариант - 09.12.2021.

Мелентьев Олег Геннадьевич

д.т.н., профессор кафедры инфокоммуникационных систем и сетей СибГУТИ (630102, Новосибирск, ул. Кирова, 86), тел. (383) 2-698-240, e-mail: melog . aes@gmail. com.

Максимов Иван Николаевич

ведущий инженер кафедры инфокоммуникационных систем и сетей СибГУТИ, тел. (383) 2-698-240, e-mail: ivan. maximov@mail. ru.

Symbol synchronization algorithm using complex envelop samples without PLL O. Melent'ev, I. Maximov

Symbol synchronization algorithm using complexes envelop samples without PLL was proposed. Two different symbol synchronization algorithms were compared. A dependency of the bit error rate on white gaussian noise is given.

Keywords: symbol synchronization, clock synchronization, synchronization algorithm.

/

---

-

i Надоели баннеры? Вы всегда можете отключить рекламу.