î......................................................................................................
УДК 621.326; 621.3.049.77
doi: 10.21685/2307-5538-2024-3-12
ПОМЕХОУСТОЙЧИВАЯ ПЕРЕДАЧА ЦИФРОВОЙ ИНФОРМАЦИИ : НА ОСНОВЕ СВЕРТОЧНЫХ КОДОВ
К. Д. Целикин1, М. Н. Крамм2, А. Ю. Бодин3, О. Н. Бодин4
1 Пензенский государственный университет, Пенза, Россия 2 3 Национальный исследовательский университет «МЭИ», Москва, Россия 4 Пензенский государственный технологический университет, Пенза, Россия 1 [email protected], 2 [email protected], 3 [email protected], 4 [email protected]
I Аннотация. Актуальность и цели. Передача информации является основным физическим процессом, определяющим характеристики информационных систем различного назначения. В этом процессе способы и средства обеспечения информационной безопасности защищают данные от воздействия всевозможных помех и шумов, от I утечки, порчи файлов или других видов атак. Поэтому развитие данного направления актуально для информационных систем различного назначения. Одним из эффективных способов борьбы с ошибками, возникающими при передаче сообщений по каналам с шумами, является применение помехоустойчивого кодирования, обеспечиваю-I щего безопасную передачу больших объемов цифровой информации с минимальным количеством ошибок. Эксплуатация системы неинвазивной электрокардиодиагностики с множественной регистрацией электрокардио-сигналов в условиях скрининга характеризуется сложной сигнально-помеховой обстановкой и обусловливает раз-I работку технических и организационных методов борьбы с помехами. Целью статьи является обоснование использования сверточных кодов в многоканальной информационно-измерительной системе для обеспечения безопасной и достоверной передачи больших объемов цифровой информации с минимальным количеством оши-I бок. Материалы и методы. На основе критического аналитического обзора выбран способ защищенной передачи информации на основе сверточных кодов для использования в системе неинвазивной электрокардиодиагностики с множественной регистрацией электрокардиосигналов и в бесплатформенной инерциальной навигационной си-I стеме. Результаты. Приведено моделирование кодирования сверточных кодов с малой длиной кодового ограничения и с декодированием по алгоритму Витерби. Разница отношений сигнал/шум при применении кодирования и без него при ее положительном значении определяет энергетический выигрыш кода, выражаемый в децибелах. I Выводы. Полученный результат показывает преимущества использования сверточных кодов при передаче информации в системе неинвазивной электрокардиодиагностики с множественной регистрацией электрокардиосигна-лов и в бесплатформенной инерциальной навигационной системе.
Ключевые слова: помехоустойчивая передача цифровой информации, сверточные коды, система неинвазив-I ной электрокардиодиагностики с множественной регистрацией электрокардиосигналов, бесплатформенная инер-циальная навигационная система
Для цитирования: Целикин К. Д., Крамм М. Н., Бодин А. Ю., Бодин О. Н. Помехоустойчивая передача цифровой информации на основе сверточных кодов // Измерение. Мониторинг. Управление. Контроль. 2024. № 3. С. 94-110. doi: 10.21685/2307-5538-2024-3-12
NOISE-RESISTANT TRANSMISSION OF DIGITAL INFORMATION BASED ON CONVOLUTIONAL CODES
: K.D. Tselikin1, M.N. Kramm2, A.Yu. Bodin3, O.N. Bodin4
1 Penza State University, Penza, Russia 2 3 National Research University "MEI", Moscow, Russia I 4 Penza State Technological University, Penza, Russia
1 [email protected], 2 [email protected], 3 [email protected], 4 [email protected]
Abstract. Background. Information transfer is the main physical process that determines the characteristics of information systems for various purposes. In this process, information security methods and tools protect data from the effects of all kinds of interference and noise, leakage, file corruption or other types of attacks. Therefore, the development of this area is relevant for information systems for various purposes. One of the effective ways to deal with errors that occur when
© Целикин К. Д., Крамм М. Н., Бодин А. Ю., Бодин О. Н., 2024. Контент доступен по лицензии Creative Commons Attribution 4.0 License / This work is licensed under a Creative Commons Attribution 4.0 License.
transmitting messages over noise channels is the use of noise-resistant coding, which ensures the safe transmission of large amounts of digital information with a minimum number of errors. The operation of a noninvasive electrocardiagnostic system with multiple registration of electrocardiosignals in screening conditions is characterized by a complex signal-interference environment and leads to the development of technical and organizational methods to combat interference. The purpose of the article is to substantiate the use of convolutional codes in a multichannel information and measurement system to ensure the safe and reliable transmission of large amounts of digital information with a minimum number of errors. Materials and methods. Based on a critical analytical review, a method of secure information transmission based on convolutional codes has been selected for use in a noninvasive electrocardiagnostic system with multiple registration of electrocardiosignals and in a free-form inertial navigation system. Results. A simulation of the encoding of convolutional codes with a short code restriction length and with decoding using the Viterbi algorithm is presented. The difference in the signal-to-noise ratio when using coding and without it, with its positive value, determines the energy gain of the code, expressed in decibels. Conclusions. The results obtained show the advantages of using convolutional codes when transmitting information in a non-invasive electrocardiagnostic system with multiple registration of electrocardiosignals and in a free-form inertial navigation system.
Keywords: noise-resistant transmission of digital information, convolutional codes, noninvasive electrocardiagnosis system with multiple registration of electrocardiosignals, free-form inertial navigation system
For citation: Tselikin K.D., Kramm M.N., Bodin A.Yu., Bodin O.N. Noise-resistant transmission of digital information based on convolutional codes. Izmerenie. Monitoring. Upravlenie. Kontrol' = Measuring. Monitoring. Management. Control. 2024;(3):94-110. (In Russ.). doi: 10.21685/2307-5538-2024-3-12
Постановка задачи
История развития методов защищенной передачи информации является постоянным процессом, где каждое новое открытие и разработка приводят к появлению более надежных и эффективных способов обеспечения конфиденциальности и целостности данных [1]. Негативное воздействие на целостность данных оказывают помехи и шумы. Классическое определение помехи относится к технике связи: «Помехой называется стороннее возмущение, действующее в системе передачи и препятствующее правильному приему сигналов» [2]. Шумами принято называть случайные аддитивные помехи [2], при этом обычно речь идет о помехах, имеющих более высокочастотный спектр, чем полезный сигнал. Различие между помехами и шумами заключается в том, что шумы образуются внутри системы передачи данных, а помехи поступают в систему передачи данных извне. Использование помехоустойчивой передачи цифровой информации на основе сверточных кодов возможно в системе неинвазивной электрокардиодиа-гностики (СНЭКД) с множественной регистрацией электрокардиосигналов и в бесплатформенной инерциальной навигационной системе (БИНС) подвижного объекта. На рис. 1 приведена структурная схема СНЭКД [3].
Рис. 1. Структурная схема СНЭКД
Применительно к СНЭКД с множественной регистрацией электрокардиосигналов обеспечение высокой помехоустойчивости - одна из основных проблем современной неинвазивной кардиодиагностики. Увеличение уровня внешних электромагнитных помех, повышение степени интеграции электронных компонентов, снижение мощности полезных сигналов приводит к тому, что передача электрокардиосигнала (ЭКС) на фоне помех становится сложной структурно-алгоритмической задачей. Особую сложность эта задача приобретает для СНЭКД, работающих в условиях скрининга, когда интенсивность и изменчивость помех имеют значительное дезинформационное действие.
Другим примером такой многоканальной информационно-измерительной системы (ИИС) является бесплатформенная инерциальная навигационная система (БИНС) подвижного объекта, иллюстрация функционирования которой приведена на рис. 2.
Рис. 2. Структурная схема БИНС
На рис. 2 информация с трехосевого гироскопа в виде проекций угловой скорости Ох, оу, Юг и информация с трехосевого акселерометра в виде проекций вектора кажущегося ускорения ах, ау, а2 поступает в блок алгоритма предварительной обработки информации. Обработанные данные гироскопа ах\ ®у\ ог" используются в алгоритме ориентации для формирования матрицы М направляющих косинусов, из которой могут быть получены углы ориентации относительно осей инерциальной системы координат. Кроме того, для блока алгоритма ориентации необходимо сделать начальную выставку ориентации. Обработанные данные с трехосевого акселерометра аХ, ау, аг" поступают в блок пересчета ускорений на оси географической системы координат, где пересчитываются к инерциональным осям с использованием полученной матрицы ориентации М. Вычисленные проекции кажущегося ускорения на инерциальные оси ах", ау\ аГ передаются в блок решения навигационного алгоритма. Выходные параметры БИНС в этом случае представляются радиус-вектором местоположения Яа = [ ф, X, к ] (ф - широта, X - долгота, к - высота), проекции относительной скорости движения vG = [ VN, VE, Vz ] ^ы - северная проекция относительной скорости, VE - восточная проекция относительной скорости, vz - вертикальная проекция относительной скорости) и углами ориентации в географической системе координат у, 0, у (у - крен, 0 - тангаж, у - рыскание). Основная проблема, которая возникает при использовании БИНС для навигации, - нарастание погрешностей со временем. С помощью совершенствования чувствительных элементов трудно добиться уменьшения нарастания погрешностей. Решить эту проблему можно с помощью интегрирования в БИНС высокоточной спутниковой навигационной системы (СНС) для корректировки навигационных параметров (рис. 2).
Навигационные параметры vcN, vcE, фс, Xc, принимаемые с СНС с помощью приемника СНС, вычитаются с навигационными параметрами vN, vE, ф, X БИНС. Таким образом получается разность навигационных параметров. С помощью фильтра Калмана эта разность очищается от ошибок, принимаемых с СНС, и получаем Avn, Ave, Аф, AX. Далее эта разница в параметрах используется для снижения погрешностей с помощью введения двух дополнительных обратных связей с коэффициентами K1 и K2, использующих значение параметров от СНС для вычисления ошибки БИНС, задача которых заключается в увеличении собственной частоты ошибок БИНС и демпфировании данного колебательного процесса.
В общем виде СНЭКД и БИНС представляют собой многоканальную информационно-измерительную систему, представляющую собой совокупность функционально связанных устройств и программного обеспечения, которая реализует необходимое информационное обслуживание контролируемого объекта, включая автоматизированный сбор, представление, передачу, обработку и хранение измерительной информации.
Если передача данных осуществляется по радиоканалу, то ИИС называется радиотелеметрической [4]. Как следует из анализа рис. 1, блоки радиомодуля обеспечивают безопасную и достоверную передачу больших объемов цифровой информации с минимальным количеством ошибок, а кодирование/декодирование осуществляют первый и второй вычислительные устройства соответственно, в состав которых включен канальный кодер/декодер [5]. При этом одним из основных свойств при передаче информации является достоверность - это способность передавать информацию с заданной погрешностью.
Учитывая огромное разнообразие возникновения помех в СНЭКД с множественной регистрацией электрокардиосигналов и в БИНС, существует огромное многообразие методов борьбы с помехами. Это и технические и организационные методы борьбы с помехами. Помехи необходимо подавлять по месту их возникновения и не допускать их проникновения в электрические цепи системы [6, 7]. Обоснованию и исследованию применения сверточных кодов в многоканальной BBC для обеспечения безопасной и достоверной передачи больших объемов цифровой информации с минимальным количеством ошибок посвящена настоящая работа.
Материалы и методы
Аналого-цифровое (АЦП) и цифроаналоговое (ЦАП) преобразования. В функционировании СНЭКД с множественной регистрацией электрокардиосигналов и в БИНС участвуют процессы аналого-цифрового (АЦП) и цифроаналогового (ЦАП) преобразований. АЦП является одним из фундаментальных «строительных» блоков современных информационно-измерительных систем на этапе сбора данных. С точки зрения помехозащищенности процесс цифро-аналогового преобразования не вносит собственных принципиальных погрешностей, а лишь материализует погрешности, полученные в АЦП. Реально возникающие при преобразовании погрешности носят чисто инструментальный характер.
Погрешности, обусловленные самим алгоритмом работы, возникают только на этапе аналого-цифрового преобразования и их уменьшение требует уменьшения периода дискретизации (Тд) и шага квантования (h).
При этом погрешность квантования АЦП определяется величиной младшего значащего разряда (МЗР, LSB (Least Significant Bit)) и является результатом самого процесса преобразования. Погрешность квантования - это погрешность, вызванная значением шага квантования и определяемая как 0,5 величины наименьшего значащего разряда (LSB). Учитывая, что максимальная амплитуда зарегистрированного ЭКС составляет не более 2 мВ [8, 9], погрешность квантования АЦП в СНЭКД составляет
2000 „ 0 „ ДДацп = -— = 7,8 мкВ.
256
Помехоустойчивое кодирование. Одним из эффективных способов борьбы с помехами, возникающими при передаче сообщений по каналам с шумами, является применение методов помехоустойчивого кодирования, обеспечивающих безопасную передачу больших объемов цифровой информации с минимальным количеством ошибок [10]. Смысл помехоустойчивого кодирования заключается во введении избыточности, т.е. в том, что каждый блок информации сопровождается дополнительными (избыточными) контрольными кодами, позволяющими приемнику информации обнаружить ошибку, исправить ее или запросить повторную передачу.
Теоретическим обоснованием помехоустойчивого кодирования является теорема Шеннона [11] для дискретного канала с шумом, согласно которой при любой скорости передачи двоичных символов, меньшей, чем пропускная способность канала: Ck > Vu, где Ck - (информационная) пропускная способность канала, т.е. максимальное количество информации, которое способен передать канал без искажений за единицу времени; Vu - (информационная) производительность источника, т.е. количество информации, производимое источником в единицу времени, существует такой код, при котором вероятность ошибочного декодирования будет сколь угодно мала, т.е. достоверность передачи сообщений тем выше, чем больше длительность кодируемой последовательности и чем менее эффективно используется пропускная способность канала. В теореме Шеннона упоминаются термины «пропускная способность канала связи» и «скорость передачи информации». Суть терминов заключается в следующем:
— пропускная способность канала связи (Ck) определяется как максимальное число переданных двоичных единиц (двоичных символов, битов) в секунду при заданной или установленной сколь угодно малой вероятности ошибочного приема двоичного символа (бита);
— скорость передачи информации (Vu) определяется реально переданным числом двоичных символов (бит) в установленную единицу времени (в секунду) и при заданной равной вероятности ошибочного приема двоичного символа (бита).
Цифровой канал связи. Цифровой канал связи (см. рис. 1 и 2) обозначен символом ф, представляет собой двоичный симметричный канал (binary symmetric channel - BSC), входной и выходной алфавиты которого состоят из двоичных элементов (0 и 1) [10].
Структурная схема цифрового канала связи общеизвестна и приведена на рис. 3 [12, 13].
Направление передачи информации Рис. 3. Структурная схема цифрового канала связи
Пропускная способность канала связи и скорость передачи информации измеряются в бит/с, Кбит/с, Мбит/с и Гбит/с. Согласно теореме Шеннона [11] при неограниченно малой вероятности ошибок на двоичный символ скорость передачи информации всегда меньше пропускной способности канала связи.
Пропускная способность канала связи СНЭКД определяется с учетом количества электродов для регистрации ЭКС и частоты дискретизации ЭКС. Согласно работе [3] количество электродов Ыэл для регистрации ЭКС равно от 60 до 90. Частота дискретизации ^щс 8-разрядного АЦП равна 5 кГц. Тогда простейшие вычисления показывают, что пропускная способность канала связи СНЭКД должна быть равна или быть больше скорости передачи в секунду двоичных символов Уи = Мл ' FдШ = 90 ■ 5000 = 450 000 двоичных символов/с, 450 Кбит/с или 450 000/8 = 56 Кбайт/с.
Пропускная способность канала связи БИНС определяется частотой обновления данных, получаемых с системы спутниковой навигации и равной 1-100 Гц (чаще всего 50 Гц). Тогда аналогично расчету для СНЭКД пропускная способность канала связи БИНС (в случае 90 каналов передачи данных с частотой дискретизации, равной 5 кГц) должна быть не менее 56 Кбайт/с.
Последовательный принцип передачи пакетов по каналу связи вносит задержки, которые определяются задержкой пакетирования, последовательной задержкой, задержкой кодека. Средой передачи может служить медная пара, волоконно-оптический кабель или эфир. При этом величина задержки зависит от тактовой частоты и в гораздо меньшей степени от скорости света в среде передачи.
В документации Cisco приведена таблица (табл. 1), которая позволяет оценить последовательную задержку в зависимости от длины пакетов и пропускной способности канала связи.
Таблица 1
Значение последовательной задержки в зависимости от длины пакетов и пропускной способности канала связи [14]
Размер кадра (байты) Скорость передачи по каналу (Кбит/с)
19,2 5б б4 128 25б 384 512 7б8 1024 1544 2048
38 15,83 5,43 4,75 2,38 1,19 0,79 0,59 0,40 0,30 0,20 0,15
48 20,00 б,8б б,00 3,00 l,50 1,00 0,75 0,50 0,38 0,25 0,19
64 2б,б7 9,14 8,GG 4,00 2,00 1,33 1,00 0,б7 0,50 0,33 0,25
128 53,33 18,29 1б,00 8,00 4,00 2,б7 2,00 1,33 1,00 0,бб 0,50
256 10б,б7 3б,57 32,00 1б,00 8,00 5,33 4,00 2,б7 2,00 1,33 1,00
512 213,33 73,14 б4,00 32,00 1б,00 10,б7 8,00 5,33 4,00 2,б5 2,00
1024 42б,б7 149,29 128,00 б4,00 32,00 21,33 1б,00 10,б7 8,00 5,31 4,00
1500 б25,00 214,29 187,5G 93,75 4б,88 31,25 23,44 15,б3 ll,72 7,77 5,8б
2048 853,33 292,57 25б,00 128,00 б4,00 42,б7 32,00 21,33 1б,00 10,б1 8,00
Значение последовательной задержки (Тзад) определяется длиной пакета (N) и пропускной способности канала связи (Ck):
Тзад = N(8 бит) / Ckmin, (1)
где Ckmin - самая медленная скорость в канале связи.
Из табл. 1 следует, что для передачи кадра длиной 1518 байт (максимальная длина для Ethernet) по каналу 64 кбит/с последовательная задержка достигает 185 мс. Если по тому же каналу передавать пакеты длиной 64 байт, задержка составит всего 8 мс, т.е. чем короче пакет, тем быстрее он достигнет приемной стороны.
Цифровой канал связи (см. рис. 3) работает следующим образом. Сигналы от источника сообщений поступают на вход кодера, задачей которого является преобразование сообщений, генерируемых источником, в последовательность комбинаций избыточного кода. Выход кодера передачи подключается к входу модулятора или устройству преобразования сигналов (УПС). Задачей УПС передачи является преобразование дискретной q-ичной (в нашем случае q = 2) последовательности к виду, удобному для передачи на физическом уровне. Преобразования совершаются таким образом, чтобы первоначальное сообщение, переданное по каналу с помехами, было восстановлено приемником с заданной степенью точности. Приемная сторона осуществляет обратные преобразования. Множества входных V и выходных Ud сигналов являются дискретными. Из множества V выделяется дискретное подмножество разрешенных сигналов и сигналы, не входящие в него, считаются запрещенными и обозначаются через Sj. Процедура декодирования реализована как канал со стираниями элементов.
Анализ канала связи основывается на понятии математической модели канала связи [15, 16]. В свою очередь, модель трактуется как система с определенными каким-либо образом детерминированными или стохастическими характеристиками, связывающими множества передаваемых и принимаемых сигналов. Согласно этой модели необходимое количество дополнительных бит n должно удовлетворять отношению
n > log2(l+k+n),
(2)
где k - количество разрядов информационного сообщения (защищаемого кода); N = k + n -длина передаваемого пакета.
Классификация помехоустойчивых кодов. В современных системах радиосвязи используется четыре типа помехоустойчивого кодирования [17]:
— сверточное кодирование;
— кодирование Рида - Соломона;
— турбокодирование;
— кодирование с малой плотностью проверок на четность (Low-density-parity-check code, далее код LDPC).
Каждый из этих кодов имеет свои недостатки и достоинства. Например, использование сверточных кодов приводит к меньшему, чем у других кодов, расширению полосы пропускания. Коды Рида - Соломона и высокоскоростные LDPC коды помимо небольшого расширения полосы частот могут также указывать на наличие неисправимых ошибок. Турбокоды используются для получения максимальной эффективности кодирования при отсутствии жестких требований к расширению полосы частот. Анализ табл. 2 в работе [17] показал, что по совокупности критериев (тактовая частота, число итераций, длина блока, кодовая скорость и отношение сигнал-шум) наиболее приемлемым для использования в СНЭКД являются сверточные коды. Теоретическое обоснование экспериментальных данных табл. 2 работы [17] приведено в работе [13].
Сверточные коды. Сверточные коды широко применяются в различных системах помехоустойчивой передачи информации, начиная от кодирования речевого сигнала в системе сотовой связи GSM и заканчивая системами спутниковой связи, так как обладают высокими корректирующими свойствами. В сверточных кодах формирование проверочных символов осуществляется по рекуррентным правилам, и они перемежаются с информационными по всей длине кодовой последовательности. Сверточные коды однозначно описываются тремя целыми числами n, k и l, где отношение kn - скорость кодирования (информация, приходящаяся на закодированный бит), а l является параметром, называемым длиной кодового ограничения. Длина кодового ограничения - это количество k-битовых сдвигов, после которых один информационный бит может повлиять на выходной сигнал кодера. Параметр l указывает на число разрядов k-кортежа в кодирующем реестре сдвига. На практике k и n - небольшие целые числа, а l изменяется с целью контроля мощности и сложности кода [10, 18].
Корректирующей способностью кода называется гарантируемое число ошибок в кодовых комбинациях, исправляемых заданным кодом. При сверточном кодировании кратность исправляемых ошибок определяется следующим образом: если в последовательности произошло не более gu ошибок, причем удовлетворяет неравенству
где dmln - это минимальное кодовое расстояние, то ошибки исправляются.
Мощность кода определяет способность кодов исправлять множественные, одиночные и многократные ошибки, возникающие в канале связи. Мощность кода зависит от длины кодового ограничения I и от вида образующих полиномов. Вероятность исправления ошибок при декодировании в явном виде связана с минимальным кодовым расстоянием dmm.
Энергетический выигрыш кода (ЭВК) п определяет выигрыш по помехоустойчивости при применении корректирующего кодирования:
где Я = к/п - скорость кодирования; dmm - минимальное кодовое расстояние.
Среди преимуществ сверточного декодирования можно отметить [10]:
1) вероятностную оценку. Предоставляет вероятностную оценку каждого символа или состояния декодированного кода. Это позволяет учесть неопределенность и шум при передаче данных;
2) эффективность. Может быстро и точно находить наиболее вероятную последовательность состояний и символов;
3) гибкость. Может быть применена к различным моделям кодирования и системам передачи данных.
К недостаткам сверточного декодирования можно отнести следующее:
1) высокую вычислительную сложность. Требует значительных вычислений ресурсов, особенно при работе с большими объемами данных или сложными моделями кодирования. Это может ограничить его применение в реальном времени или на устройствах с ограниченными
2gu+1 < dmm,
(3)
П = 10lg(tfdmrn),
(4)
вычислениями возможности. Этот недостаток можно устранить, применив алгоритм в высокопроизводительном устройстве с высоким параллелизмом и возможностью работать в реальном времени, которым является такое устройство, как программируемая логическая интегральная схема;
2) зависимость от модели. Требует заранее известной модели кодирования, если модель неправильно спроектирована или не соответствует реальным условиям передачи данных, точность и производительность алгоритма могут снизиться;
3) требование к точности сигнала. Это эффективно работает в условиях шумных каналов, но требует достаточно точного и качественного сигнала для правильного декодирования. При слишком низком качестве сигнала результаты могут быть неточными.
Результаты и обсуждение
Известен способ сверточного декодирования [19]. Основной целью известного способа декодирования сверточных кодов является снижение вероятности ошибки при декодировании и повышение помехоустойчивости передаваемой информации за счет «мягкого» декодирования по алгоритму Витерби [12]. Суть «мягкого» декодирования непосредственно вытекает из теоремы Л. М. Финка [20]: при любом коде имеет место неравенство
р(1) > р(2) > р(3) > р(4), (5)
где р(1) - вероятность того, что при посимвольном методе приема (суть жесткого декодера) кодовая комбинация принята с ошибкой (независимо от того, можно ли эту ошибку исправить или обнаружить); р(2) - вероятность того, что при посимвольном методе приема в ходе исправления максимально возможного числа ошибок произошла неисправимая ошибка; р(3) - вероятность того, что при идеальном приеме в целом (аналог мягкого декодера) комбинация ошибочна; р(4) - вероятность того, что при посимвольном приеме принятая комбинация окажется совпадающей с одной из комбинаций кода, но не с той, которая передавалась.
На рис. 4,а представлена последовательность операций рассматриваемого способа, на которой пунктиром выделены операции, поясняющие работу декодера Витерби [12]. На рис. 4,б приведен пример нумерации состояний и переходов в одной ячейке решетчатой диаграммы при декодировании по алгоритму Витерби.
а) б)
Рис. 4. Пример последовательности действий «мягкого» декодирования по алгоритму Витерби (а) и пример нумерации состояний и переходов в одной ячейке решетчатой диаграммы (б)
На рис. 4,а обозначены следующие операции [12]: прием радиосигналов 1; автоматическая регулировка усиления 2; демодуляция 3; первое деперемежение 4; определение метрик переходов 5; многоканальное суммирование 6; сравнение метрик путей и выбор пути с минимальной метрикой 7; переход к следующему шагу с отбрасыванием путей с большими метриками и запоминание оставленных путей 8; восстановление переданной информационной последовательности по оставшемуся пути 9; амплитудное детектирование 10; усреднение 11; второе деперемежение 12; нелинейное преобразование 13; многоканальное перемножение-суммирование 14 и алгоритм Витерби 15.
В первом блоке памяти хранятся варианты кодов выходных сигналов кодера 5/, которые он вырабатывает при поступлении на его вход очередного информационного символа и с учетом тех символов, которые поступили до этого. На рис. 4 эти состояния пронумерованы номерами соответственно, 1, 2, 3 и 4. При приходе очередного информационного символа вся последовательность записанных в регистр символов сдвигается вправо. Вновь пришедший символ помещается в первый разряд, символ из первого разряда перемещается во второй, из второго в третий, а из третьего разряда символ удаляется. Таким образом, комбинация символов во втором и третьем разрядах либо изменяется, либо нет. Левый столбец жирных точек и номерами 1-4 соответствует предыдущему состоянию кодера, правый столбец точек соответствует его последующему состоянию. Стрелками обозначены возможные варианты переходов из предыдущего состояния в последующее при приходе очередного символа. Сплошные стрелки обозначают переходы в случае, если в первом разряде сдвигового регистра записывается логический ноль, прерывистые стрелки означают, что в первом разряде записывается логическая единица.
Коды состояния 4 (см. рис. 4,6), вырабатываемые кодером, определяются той комбинацией, которая записана в регистре и состоят из групп, содержащих по два символа, хц и хц. Эти символы получаются в результате логических операций вида:
хл = 51©£2©Я3; ха = 51 ©53,
(6)
где 51, 52, 53 - символы в первой, второй и третьей ячейках сдвигового регистра соответственно; знаком © обозначена операция сложения по модулю два. Обозначим группу из значений этих двух символов через 5/, / = 1^8, т.е. возможны восемь вариантов кодовых групп, соответствующих восьми вариантам переходов. (На рис. 4 около переходов написаны варианты соответствующих им кодовых групп).
При этом осуществляется выбор пути по решетчатой диаграмме, обладающего минимальной метрикой, т.е. минимальной суммой евклидовых расстояний по всем принятым символам от варианта кода, соответствующего каждому символу, до значения напряжения, полученного с выхода демодулятора во время прихода этого символа. Главным достоинством такого подхода к обработке искаженной информации является энергетический выигрыш относительно жестких схем декодирования порядка 2-3 дБ.
Для каждого варианта пути при суммировании всех метрик переходов этого пути нельзя между собой приравнивать их «качество». Блоки декодера Витерби дополнены многоканальным перемножителем-сумматором, который помещен после многоканального вычитателя.
Авторами представлена 8тиПпк-модель декодера сверточных кодов на основе «мягкого» декодирования по алгоритму Витерби. Она представлена на рис. 5.
ВетоиШ Сопуо1иКооа1 ВР5К
Втэгу Егкойег -► \Л(егЫ Оесодег
Еггог Яш
Рис. 5. 81шиИпк-модель декодирования по алгоритму Витерби
Задачу декодирования сверточных кодов с помощью алгоритма Витерби можно рассматривать как задачу нахождения пути по решетчатой диаграмме, используя в качестве входных значений пары символов, сформированные кодером. Метод построения такой оценки легко найти, пытаясь непосредственно вычислить метрику для каждого пути на решетке. Вначале число путей растет экспоненциально с ростом длины последовательности. Однако вскоре появляется возможность исключить из рассмотрения такое число путей в каждой вершине, которое в точности уравновешивает число вновь порожденных путей. Таким образом, оказывается
возможным иметь сравнительно небольшой список путей, который всегда будет содержать наиболее правдоподобный путь. Рассмотрим каждый блок данной модели. На рис. б показаны параметры всех блоков модели.
¿¿j Block Parameter AWGN Channel X
AWGN Channel {mask} (link)
Add white Gausswn noise to the input signal The Input signal can be real or complex. This block supports multichannel processing.
When using either of the variance modes with complex inputs, the variance values are equally divided among the real and Imaginary components of the input signal.
Parameters
Initial seed: _61_:
Mode: Signal to noise ratio (Eb/No)
Eb/No (d8): 0 :
Number of bits per symbol: 1
Input signal power, referenced to 1 ohm (watts): Symbol period (s): 2
С
Cárcel
Apply
Рис. б. Параметры блоков Simulink-модели «мягкого» декодирования по алгоритму Витерби
С помощью блока Bernoulli Binary Generator генерируются случайные двоичные числа по распределению Бернулли. Эти числа поступают в блок Convolutional Encoder, где происходит сверточное кодирование этих чисел, где poly2trellis ([5 4], [27 33 0; 0 5 13]) является функцией, которая преобразовывает полиномиальное описание в решетчатое. Элементы этого вектора [5 4] указывают на число сохраненных битов в каждом сдвиговом регистре, включая текущие входные биты. Полная порождающая матрица кода равна [27 33 0; 0 5 13]. Блок BPSK Modulator Baseband модулирует сигнал, а блок BPSK Demodulator Baseband демодулируют сигнал. Блок AWGN Channel добавляет белый Гауссов шум во входной сигнал. В этом блоке можно задать любое значение соотношения сигнал/шум. Viterbi decoder является блоком декодирования свер-точных кодов по алгоритму Витерби. В текущей модели задержка обработки равна 34, кроме того, можно выбрать тип декодирования (soft decision - «мягкое» декодирование, hard decision - «жесткое» декодирование»). Блок Error Rate Calculation определяет разницу между двумя сигналами, и таким образом можно определить разницу между сигналом на входе сверточного энкодера и сигналом на выходе декодера по алгоритму Витерби.
«Мягкое» декодирование по алгоритму Витерби (рис. 7), по большей части, осуществляется так же, как и «жесткое» декодирование (рис. 8). Единственное отличие состоит в том, что в «мягком» декодировании не используется расстояние Хэмминга. С помощью блока Error Rate Calculation можно получить вероятность битовой ошибки, количество совершенных ошибок и количество обработанных бит, а с помощью блока Scope получаем сигнал на входе сверточного энкодера, сигнал с выхода «мягкого» декодера по алгоритму Витерби и сигнал сравнения этих двух сигналов.
Рис. 7. Simulink-модель «мягкого» декодирования по алгоритму Витерби
Получим данные с этой модели при задании отношения сигнал/шум в блоке AWGN Channel, равное 2, 3, 4, 5 дБ. Для оценки работы модели будем рассматривать блок Display, который отображает в первой строчке вероятность битовой ошибки, во второй строчке количество совершенных ошибок, а в третьей строчке количество обработанных бит и три сигнала блока Scope (рис. 9-15).
Рис. 8. Получение характеристик для «жесткого» декодирования сверточных кодов
по алгоритму Витерби при отношении сигнал/шум, равное 2 дБ
по алгоритму Витерби при отношении сигнал/шум, равное 2 дБ
Рис. 10. Получение характеристик для «жесткого» декодирования сверточных кодов
по алгоритму Витерби при отношении сигнал/шум, равное 3 дБ
Рис. 11. Получение характеристик для «мягкого» декодирования сверточных кодов
по алгоритму Витерби при отношении сигнал/шум, равное 3 дБ
по алгоритму Витерби при отношении сигнал/шум, равное 4 дБ
Рис. 13. Получение характеристик для «мягкого» декодирования сверточных кодов
по алгоритму Витерби при отношении сигнал/шум, равное 5 дБ
по алгоритму Витерби при отношении сигнал/шум, равное 5 дБ
Как можно заметить, использование «мягкого» декодирования дает выигрыш 2 дБ по сравнению с «жестким» декодированием. Уже при отношении сигнал/шум 3 дБ «мягкое» декодирование сверточных кодов по алгоритму Витерби не совершает ошибок, тогда как при
«жестком» декодировании сверточных кодов по алгоритму Витерби только при 5 дБ не совершаются ошибки при декодировании. На рис. 16 с помощью МаАаЬ построены характеристики отношения сигнал/шум к вероятности битовой ошибки.
Рис. 16. Характеристики отношения сигнал/шум от вероятности битовой ошибки для «жесткого» декодирования по алгоритму Витерби (слева) и «мягкого» декодирования по алгоритму Витерби (справа)
По этим характеристикам также можно заметить, что вероятность битовой ошибки для одних и тех же соотношений сигнал/шум меньше в «мягком» декодировании по алгоритму Витерби по сравнению с «жестким» декодированием. Таким образом, при малых отношениях сигнал/шум вероятность ошибки на выходе декодера больше, чем на входе из-за эффекта размножения ошибок. Эффективность декодера увеличивается по мере увеличения качества канала.
Заключение
Таким образом, проведенное исследование на примерах системы неинвазивной электро-кардиодиагностики с множественной регистрацией электрокардиосигналов и бесплатформенной инерциальной навигационной системы подвижного объекта показало:
— применение помехоустойчивого кодирования на основе сверточных кодов обеспечивает безопасную передачу больших объемов цифровой информации с минимальным количеством ошибок;
— использование «мягкого» декодирования сверточных кодов по алгоритму Витерби дает выигрыш 2 дБ по сравнению с «жестким» декодированием.
Список литературы
1. Аль-Аммори А., Дяченко П. В., Клочан А. Е. [и др.]. Методы и средства защиты информации // The Scientific Heritage. 2020. № 51-1.
2. Харкевич А. А. Борьба с помехами. М. : Наука, 1965. 144 с.
3. Пат. 2764498 Российская Федерация. Способ и устройство регистрации множественных отведений электрокардиосигнала / Бодин О. Н., Бодин А. Ю., Крамм М. Н. [и др.]. № 2020122154 ; заявл. 03.07.2020 ; опубл. 17.01.2022, Бюл. № 2.
4. Назаров А. В., Козырев Г. И., Шитов И. В. [и др.]. Современная телеметрия в теории и на практике. СПб. : Наука и Техника, 2007. 672с.
5. Убиенных А. Г., Убиенных Г. Ф., Бодин О. Н. [и др.]. Применение канального кодирования в распределенной системе сбора и обработки кардиографической информации // Измерение. Мониторинг. Управление. Контроль. 2019. № 3. С. 77-86. doi: 10.21685/2307-5538-2019-3-9
6. Батяев А. С., Бодин О. Н., Чыонг Тхи Лан Нхи [и др.]. Обеспечение электромагнитной совместимости в системе регистрации множественных отведений электрокардиосигнала // Измерение. Мониторинг. Управление. Контроль. 2023. № 2. С. 89-96. doi: 10.21685/2307-5538-2023-2-11
7. Бодин А. Ю., Крамм М. Н., Кривоногов Л. Ю. [и др.]. Классификация электрокардиографических помех и разработка способа сегментации электрокардиосигнала // Измерение. Мониторинг. Управление. Контроль. 2023. № 4. С. 64-71. doi: 10.21685/2307-5538-2023-4-8
8. Как расшифровать ЭКГ. URL: https://medtech30.ru/kak-rasshifrovat-ekg/
9. Орлов В. Н., Орлов М. В. Руководство по электрокардиографии. 11-е изд., перераб. и доп. М. : Изд-во Медицинское информационное агентство, 2023. 760 с.
10. Скляр Б. Цифровая связь. Теоретические основы и практическое применение. М. : Изд. дом «Виль-ямс», 2003. 1104 с.
11. Шеннон К. Связь при наличии шума // Теория информации и ее приложения : сб. переводов / под ред. А. А. Харкевича. М. : Гос. Изд-во физ-мат. лит., 1959. С. 82-113.
12. Гладких А. А. Основы теории мягкого декодирования избыточных кодов в стирающем канале связи. Ульяновск : УлГТУ, 2010. 379 с.
13. Кларк Дж. мл., Кейн Дж. Кодирование с исправлением ошибок в системах цифровой связи : пер. с англ. М. : Радио и связь, 1987. 392 с.
14. Гоноровский И. С. Радиотехнические цепи и сигналы : учеб. пособие. Изд. 5-е, испр. М. : Дрофа, 2006. 719 с.
15. Полоса пропускания и использование канала связи. URL: https://networkguru.ru/polosa-propuskaniia-i-ispolzovanie-kanala-sviazi/
16. Васильев К. К., Служивый М. Н. Математическое моделирование систем связи. Ульяновск : УлГТУ, 2010. 128 с.
17. Костюков А. С., Башкиров А. В., Никитин Л. Н. [и др.]. Помехоустойчивое кодирование в современных форматах связи // Вестник Воронежского государственного технического университета. 2019. Т. 15, № 2. С. 132-138.
18. Блейхут Р. Теория и практика кодов, контролирующих ошибки : пер. с англ. И. И. Грушко, В. М. Блиновский / под ред. К. Ш. Зигангирова. М. : Мир, 1986. 576 с.
19. Пат. 2516624 Российская Федерация. Способ декодирования сверточных кодов / Полушин П. А., Синицын Д. В., Смирнов Е. А. № 2012153302 ; заявл. 10.12.2012 ; опубл. 20.05.2014, Бюл. № 14.
20. Бородин Л. Ф. Введение в теорию помехоустойчивого кодирования. М. : Сов. радио, 1968. 408 с.
References
1. Al'-Ammori A., Dyachenko P.V., Klochan A.E. et al. Methods and means of information protection. The Scientific Heritage. 2020;(51-1). (In Russ.)
2. Kharkevich A.A. Bor'ba spomekhami = Anti-interference. Moscow: Nauka, 1965:144. (In Russ.)
3. Pat. 2764498 Russian Federation. Method and device for recording multiple leads of an electrocardiosignal. Bodin O.N., Bodin A.Yu., Kramm M.N. et al. № 2020122154; appl. 03.07.2020; publ. 17.01.2022, bull. № 2. (In Russ.)
4. Nazarov A.V., Kozyrev G.I., Shitov I.V. et al. Sovremennaya telemetriya v teorii i na praktike = Modern telemetry in theory and in practice. Saint Petersburg: Nauka i Tekhnika, 2007:672. (In Russ.)
5. Ubiennykh A.G., Ubiennykh G.F., Bodin O.N. et al. Application of channel coding in a distributed system for collecting and processing cardiographic information. Izmerenie. Monitoring. Upravlenie. Kontrol ' = Measurement. Monitoring. Management. Control. 2019;(3):77-86. (In Russ.). doi: 10.21685/2307-55382019-3-9
6. Batyaev A.S., Bodin O.N., Chyong Tkhi Lan Nkhi et al. Ensuring electromagnetic compatibility in the registration system of multiple leads of an electrocardiosignal. Izmerenie. Monitoring. Upravlenie. Kontrol ' = Measurement. Monitoring. Management. Control. 2023;(2):89-96. (In Russ.). doi: 10.21685/2307-55382023-2-11
7. Bodin A.Yu., Kramm M.N., Krivonogov L.Yu. et al. Classification of electrocardiographic interference and development of a method for segmentation of the electrocardiosignal. Izmerenie. Monitoring. Upravlenie. Kontrol' = Measurement. Monitoring. Management. Control. 2023;(4):64-71. (In Russ.). doi: 10.21685/2307-5538-2023-4-8
8. Kak rasshifrovat' EKG = How to decrypt the ECG. (In Russ.). Available at: https://medtech30.ru/kak-ras-shifrovat-ekg/
9. Orlov V.N., Orlov M.V. Rukovodstvo po elektrokardiografii. 11-e izd., pererab. i dop. = Manual of electrocardiography. 11th ed., reprint. and add. Moscow: Izd-vo Meditsinskoe informatsionnoe agentstvo, 2023:760. (In Russ.)
10. Sklyar B. Tsifrovaya svyaz'. Teoreticheskie osnovy iprakticheskoeprimenenie = Digital communication. Theoretical foundations and practical application. Moscow: Izd. dom «Vil'yams», 2003:1104. (In Russ.)
11. Shennon K. Communication in the presence of noise. Teoriya informatsii i ee prilozheniya: sb. perevodov = Theory of information and its applications : collection of translations. Moscow: Gos. Izd-vo fiz-mat. lit., 1959:82-113. (In Russ.)
12. Gladkikh A. A. Osnovy teorii myagkogo dekodirovaniya izbytochnykh kodov v stirayushchem kanale svyazi = Fundamentals of the theory of soft decoding of redundant codes in an erasing communication channel. Ul'yanovsk: UlGTU, 2010:379. (In Russ.)
13. Klark Dzh. ml., Keyn Dzh. Kodirovanie s ispravleniem oshibok v sistemakh tsifrovoy svyazi: per. s angl. = Coding with error correction in digital communication systems : trans. from English. Moscow: Radio i svyaz', 1987:392. (In Russ.)
14. Gonorovskiy I.S. Radiotekhnicheskie tsepi i signaly: ucheb. posobie. Izd. 5-e, ispr. = Radio engineering circuits and signals : textbook. manual. 5th edition, rev. Moscow: Drofa, 2006:719. (In Russ.)
15. Polosa propuskaniya i ispol'zovanie kanala svyazi = Bandwidth and communication channel usage. (In Russ.). Available at: https://networkguru.ru/polosa-propuskaniia-i-ispolzovanie-kanala-sviazi/
16. Vasil'ev K.K., Sluzhivyy M.N. Matematicheskoe modelirovanie sistem svyazi = Mathematical modeling of communication systems. Ul'yanovsk: UlGTU, 2010:128. (In Russ.)
17. Kostyukov A.S., Bashkirov A.V., Nikitin L.N. et al. Noise-resistant coding in modern communication formats. Vestnik Voronezhskogo gosudarstvennogo tekhnicheskogo universiteta = Bulletin of the Voronezh State Technical University. 2019;15(2):132-138. (In Russ.)
18. Bleykhut R. Teoriya i praktika kodov, kontroliruyushchikh oshibki: per. s angl. I.I. Grushko, V.M. Bli-novskiy = Theory and practice of error-controlling codes : translated from English by I.I. Grushko, V.M. Blinovsky. Moscow: Mir, 1986:576. (In Russ.)
19. Pat. 2516624 Russian Federation. Method of decoding convolutional codes. Polushin P.A., Sinitsyn D.V., Smirnov E.A. № 2012153302; appl. 10.12.2012; publ. 20.05.2014, bull. № 14. (In Russ.)
20. Borodin L.F. Vvedenie v teoriyu pomekhoustoychivogo kodirovaniya = Introduction to the theory of noise-resistant coding. Moscow: Sov. radio, 1968:408. (In Russ.)
Информация об авторах /Information about the authors Кирилл Дмитриевич Целикин Kirill D. Tselikin
аспирант,
Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40) E-mail: [email protected]
Postgraduate student,
Penza State University
(40 Krasnaya street, Penza, Russia)
Михаил Николаевич Крамм
доктор технических наук, доцент, доцент кафедры основ радиотехники, Национальный исследовательский университет «МЭИ»
(Россия, г. Москва, ул. Красноказарменная, 14) E-mail: [email protected]
Mikhail N. Kramm
Doctor of technical sciences, associate professor, associate professor of the sub-department of fundamentals of radio engineering, National Research University "MEI" (14 Krasnokazarmennaya street, Moscow, Russia)
Андрей Юрьевич Бодин
аспирант,
Национальный исследовательский университет «МЭИ»
(Россия, г. Москва, ул. Красноказарменная, 14) E-mail: [email protected]
Andrey Yu. Bodin
Postgraduate student,
National Research University "MEI"
(14 Krasnokazarmennaya street, Moscow, Russia)
Олег Николаевич Бодин
доктор технических наук, профессор, профессор кафедры технического управления качеством, Пензенский государственный технологический университет (Россия, г. Пенза, пр-д Байдукова/ ул. Гагарина, 1а/11) E-mail: [email protected]
Oleg N. Bodin
Doctor of technical sciences, professor, professor of the sub-department of technical quality management, Penza State Technological University (1a/11 Baidukova passage/Gagarina street, Penza, Russia)
Измерение. Мониторинг. Управление. Контроль. 2024. № 3 i...................................................................................................
Авторы заявляют об отсутствии конфликта интересов / The authors declare no conflicts of interests.
Поступила в редакцию/Received 30.05.2024 Поступила после рецензирования/Revised 24.06.2024 Принята к публикации/Accepted 15.07.2024