УДК 621.39
Использование сверточной процедуры Витерби для устранения межсимвольной интерференции
Ульянова Е.В., Полушин П.А.
Для борьбы с межсимвольной интерференцией, возникающей в широкополосных каналах передачи цифровых сигналов, предлагается использовать сверточную процедуру Витерби. Анализируются особенности применения процедуры для этих целей.
Ключевые слова: межсимвольная интерференция, процедура Витерби.
Введение
Многие современные системы передачи информации работают в условиях многолучевого распространения сигналов, как дискретного, так и непрерывного [1,2] Многолуче-вость возникает из-за сложения в приемной антенне копий излучаемого сигнала, пришедших по различным путям распространения и обладающих различным временем задержки при распространении и разными амплитудно-фазовыми соотношениями.
Это приводит к тому, что при передаче потока цифровых символов на приемной стороне каждый принятый символ является суммой переданного символа и нескольких следующих за ним. Весовые коэффициенты при суммировании предыдущих символов зависят от текущего состояния канала передачи и меняются со скоростью, соизмеримой со скоростью быстрых замираний. Межсимвольная интерференция (МСИ) приводит к резкому возрастанию вероятности ошибки и препятствует использованию каналов с многолучевым распространением для передачи цифровых потоков с высокой скоростью. Одним из эффективных методов борьбы с отрицательными последствиями МСИ является использование принципа, схожего с «мягким» декодированием сверточных кодов.
Постановка задачи
Рассмотрим сходство между процедурами сверточного декодирования и подавления МСИ и отличия, обуславливающие особенности реализации процедуры подавления. Как известно, при осуществлении сверточно-го кодирования исходный информационный поток символов преобразуется в новый кодовый поток с увеличенным числом символов, в котором каждый символ является функци-
ей определенного числа символов исходного потока. Функция является логической, причем появляется избыточность, так как на некоторое число символов исходного потока приходится большее число символов нового потока. Декодирование сверточного кода возможно различными способами, из которых для целей борьбы с МСИ подходит «мягкое» декодирование Витерби.
При сверточном кодировании каждый передаваемый символ у г получается суммированием по модулю 2 некоторых предыдущих информационных символов хг из набора {хг} определенной длины N уг=^({хг}). На каждый информационный символ вырабатывается больше, чем один кодированный символ.
В результате воздействия МСИ каждый принимаемый символ может быть представлен в виде:
N
у = 2ах^ , (1)
1 = о
где весовые коэффициенты аг определяются частотной характеристикой канала передачи.
Если сравнить поток символов, закодированный сверточным кодом, и поток символов, подвергнувшийся МСИ, то можно заметить существенное сходство: как при сверточном кодировании, так и после прохождения канала с МСИ каждый принятый символ является функцией нескольких предыдущих символов исходного информационного потока. Различия заключаются в двух моментах. Во-первых, при сверточном кодировании каждый новый символ является результатом логических операций над исходными символами, т.е. получается применением логической функции А при МСИ каждый принятый символ получается весовым арифметическим суммированием нескольких предыдущих символов исходной по-
следовательности, т.е. применением арифметической функции.
Во-вторых, сверточное кодирование предполагает введение избыточности. Если же рассматривать воздействие МСИ, как некоторый «арифметический» вариант кодирования, то здесь избыточность отсутствует. Сходство основных принципов преобразования исходного потока символов в новый поток позволяет применить для декодирования методы, применяемые для сверточных кодов. Такое декодирование в применении к передаче через многолучевые каналы будет означать устранение влияния МСИ. Реализация подобной обработки может проводиться на основе модификации «мягкого» декодирования Витерби. Более того, при реализации соответствующей метрики представляется возможность для этих целей использовать существующую элементную базу сверточных кодеров/декодеров.
Особенности реализации подавления МСИ
Модификацию метода Витерби для МСИ, т.е. различие от собственно сверточного декодирования, можно отметить, используя решетчатые диаграммы. Будем рассматривать модуляцию BPSK (binary phase shift keying). В сверточном декодировании каждая ветвь решетки обозначала прием нескольких символов, в модифицированном методе каждая ветвь перехода из конкретного состояния в другое состояние обозначает прием одного текущего символа. Однако декодирование с помощью решетчатой диаграммы допускает расчет метрик и в случае, когда ветви решетки обозначают прием одного символа, а не нескольких.
При выборе пути по решетке для каждого состояния k сравниваются две метрики путей, Го и Ги, подходящих к этому состоянию. Они получаются суммированием метрик предыдущих состояний с метриками переходов 5, ведущих от этих состояний к данному состоянию k. Все отличия обсуждаемых процедур заключаются в способе вычисления метрик переходов, как сумм расстояний 5=zi—y от де-модулированных значений zi принятых символов до их ожидаемых значений y { при переходе от конкретного предыдущего состояния до рассматриваемого.
При «жестком» сверточном декодировании демодулятор вырабатывает бинарные значения сигналов и метрики получаются на основе расстояния Хемминга, т.е. имеют место целые значения 5, как разности между целыми значениями. При «мягком» декодировании метрики 5 определяются эвклидовым расстоянием и имеют дробные значения, хотя значения у - целые, но значения ъ1 -уже дробные. Дискрет дробных значений зависит от точности измерения уровня каждого символа.
В случае воздействия МСИ весовые коэффициенты а, с которыми предыдущие символы складываются с принимаемым в данный момент символом, могут принимать непрерывные значения, и сигналы у, согласно (1), также принимают непрерывные значения (после оцифровки в АЦП - дробные), соответственно и метрики переходов - также дробные, как и при «мягком» декодировании. Это позволяет применить процедуру Витер-би не для декодирования, а для другой цели -борьбы с МСИ.
Однако отличия также достаточно существенны. В модифицированном методе в каждое состояние решетчатой диаграммы входит большее число ветвей, чем при известном сверточном декодировании, поэтому правило отбрасывания ветвей с неподходящей метрикой также должно быть модифицировано. Кроме этого, при сверточном декодировании параметры кодера известны. А в случае борьбы с МСИ необходимо использовать оценки коэффициентов а . Эти оценки могут быть получены либо передачей специальных тестовых сигналов, либо «вслепую», использованием только лишь факта определенных взаимосвязей между соседними значениями принимаемых символов [3,4]. Последний путь более «медленный», однако не требует организации передачи тестовых сигналов.
Вторая особенность состоит в следующем. При БР8К передаваемый сигнал lS,J^(0=ЛoCOs(юo^+Фo) имеет постоянную амплитуду и начальную фазу в пределах длительности символа ТС, а между символами она остается или постоянной, или меняется на величину п. После прохождения канала с
МСИ отклик на каждый символ <$'д(0=Ж0со8[ю0^+ф(0] расширяется по времени до NTC, и в пределах его длительности начальная фаза уже не остается постоянной. В результате закон изменения огибающих ортогональных составляющих отклика различен по времени. При демодуляции ортогональных составляющих необходимо использовать два коррелятора, синхронизированных с принимаемым сигналом. Таким образом, возникает не одна последовательность принимаемых символов, а две по-разному пораженные МСИ последовательности 2гс и Zis , определяемые зависимостями у с и у^,. Одна из них ^с) соответствует последовательности из формулы (1), а другая определяется последовательностью:
N
ys = Е Ь.х. j,
(2)
j = о
причем набор весовых коэффициентов {Ъ;} в формуле (2) для другой ортогональной составляющей отличается от набора {а,-}. Оба набора несут полезную информацию и должны быть использованы в процедуре Витерби.
Для этого метрики переходов должны носить двумерный характер, то есть определяться как расстоянием до значения текущего символа ус , так и до значения текущего символа у^. Как оказалось, это несложно организовать, используя «мягкое» декодирование сверточного кода для кодовой скорости, равной '/г. При таком коде каждый переход в новое состояние кодируется передачей двух последовательно передаваемых кодовых символов [1]. При декодировании образуются две метрики 51 и 52, равные эвклидовым расстояниям между каждым принятым и ожидаемым символом из пары. Общую метрику перехода предлагается вычислять по формуле:
5 = ^5? + 52 . (3)
В процедуре устранения МСИ также вычисляются две метрики, 51=ггс-угс, 52=ггх-угх. Для их объединения (в случае равенства мощностей аддитивных шумов в ортогональных каналах) также подходит формула (3). Это устраняет отличие модифицированной процедуры, заключающееся в отсутствии избыточности, и приближает ее к процедуре декодирования с кодовой скоростью /. Бо-
лее того, при соответствующей замене целочисленных обозначений переходов на дробные значения, это позволит использовать для борьбы с МСИ процессоры, близкие к известным и применяемым для декодирования. Для этого принятый символ Zic считается первым символом в паре кодовых символов, соответствующих одному информационному символу, а принятый символ z ^ - вторым.
Подобную обработку можно осуществить в структуре, укрупненный фрагмент которой приведен на рис. 1. Сигнал опорного генератора (ОГ) с помощью фазовращателя на 90° расщепляется на ортогональные компоненты, которые демодулируются в корреляторах (К). Полученные последовательности Zic и Zis оцифровываются в аналого-цифровых преобразователях (АЦП). С помощью коммутатора (Комм) они по очереди последовательно подаются на декодер Витерби (ДВ), где обрабатываются, как два последовательных кодовых символа. Работой схемы управляет блок синхронизации (БС).
Рис. 1. Использование декодирования при двух ортогональных компонентах
В случае, если невозможно использовать тестовые сигналы для измерения весовых коэффициентов, их оценивание производится последовательной процедурой. Она проводится по каждой ортогональной компоненте. Первоначально демодулированная (пусть с ошибками) последовательность Zi принимается за правильную, т.е. идентичную последовательности х . Каждому вновь принятый символу у ставится в соответствие N предыдущих символов хг, представляющих двоичный номер группы, в которую включается этот принятый символ. Всего возможно 2 различных групп. Через некоторое время после начала работы в каждую из этих групп попадет хотя бы один символ у. Если бы все zг точно соответствовали X, то достаточно было бы взять из любых N
групп по одному значению у . Составленные в N строк и записанные в форме сумм в соответствии с формулой (1), они составили бы систему линейных алгебраических уравнений относительно неизвестных переменных а1^аЛГ с известными коэффициентами х,. Решение такой системы сразу бы дало оценки искомых весовых коэффициентов а^аы.
Однако из-за наличия шума и ошибок, вызванных МСИ, последовательности zi и х^ в определенной степени различаются. Поэтому в течение некоторого цикла М1 необходимо накопить заметное число символов у в каждой из групп и обрабатывать всю их совокупность. По завершению первого такого цикла вырабатываются оценки коэффициентов а, в первом приближении. Далее эти оценки подаются в модифицированный декодер Витерби и используются для получения последовательности zг■. Одновременно эта последовательность используется в следующем цикле оценивания М2 по аналогичному алгоритму. Полученная последовательность уже учитывает предысторию и связи между соседними символами, поэтому точнее приближается к истинной последовательности х, и оценки весовых коэффициентов а , полученные в этом втором цикле, будут лучше, чем в первом. По окончанию второго цикла эти уточненные оценки будут вновь поданы на декодер Витерби и позволят лучше декодировать входные символы и т.д. Описанные две взаимоиспользуемые процедуры схематически изображены на рис. 2. Каждая из процедур улучшает результаты выполнения другой процедуры.
Описываемый подход может быть расширен для случая использования разнесенного приема. Алгоритм обработки сигналов отлича-
Поступила 17 декабря 2010 г.
ется лишь в способе формирования метрик. В частности, количество последовательностей с двух возрастет до 2^>, где N0 - кратность разнесения. Принципиально алгоритм станет соответствовать с учетом описанной модификации «мягкому» декодированию сверточного кода при кодовой скорости 1/2^>.
Рис. 2. Алгоритм работы при совместных декодировании и оценке весовых коэффициентов
Заключение
Использование описанной модифицированной сверточной процедуры Витерби дает возможность уменьшения влияния межсимвольной интерференции в каналах многолучевого распространения сигналов. При этом используется обработка, схожая с декодированием сверточных кодов. Процедура может быть использована, как в случае применения тестовых сигналов, так и при их отсутствии, а также при использовании методов разнесения.
Литература
1. Скляр, Б. Цифровая связь. Теоретические основы и практическое применение/ пер. с англ. -М.: Изд. дом "Вильямс", 2003. - 1104с.
2.Полушин П.А., Самойлов А.Г. Избыточность сигналов в радиосвязи. - М.: Радиотехника, 2007. - 256 с.
3.Полушин П.А. Шулятьев А.А., Ульянова Е.В. Применение методов обратной связи по решению в каналах передачи информации с рассеянием по времени / Физика и радиоэлектроника в медицине и экологии: Труды 9-й МНТК. - Владимир, 2010. - С. 358-362.
The convolutional Viterbi procedure is proposed for the elimination of the intersymbol interference in the wideband channels of digital signals communication. The features of the using of the procedure are examined.
Key words: intersymbol interference, Viterbi procedure.
Ульянова Екатерина Вадимовна - аспирантка кафедры радиотехники и радиосистем ГОУ ВПО «Владимирский государственный университет имени А.Г. и Н.Г. Столетовых».
Полушин Петр Алексеевич - доктор технических наук, профессор кафедры радиотехники и радиосистем ГОУ ВПО «Владимирский государственный университет имени А.Г. и Н.Г. Столетовых».