УДК 621.3.085.42 DOI: 10.17586/0021-3454-2022-65-6-394-397
УСЛОВИЕ ПОСТРОЕНИЯ ЦИКЛИЧЕСКИХ КОДОВ ДЛЯ КОМПОЗИЦИОННЫХ КОДОВЫХ ШКАЛ ЦИФРОВЫХ ПРЕОБРАЗОВАТЕЛЕЙ УГЛА
А. А. Ожиганов*, П. А. Прибыткин
НИТИ „ Авангард ", Санкт-Петербург, Россия aaozhiganov@itmo.ru
Аннотация. Сформулировано и доказано необходимое и достаточное условие построения циклических корректирующих кодов для композиционных кодовых шкал, при заданных значениях минимального кодового расстояния и информационной емкости цифровых преобразователей угла.
Ключевые слова: цифровой преобразователь угла, рекурсивная кодовая шкала, псевдослучайная кодовая шкала, композиционная кодовая шкала, считывающие элементы, исправление ошибок
Ссылка для цитирования: Ожиганов А. А., Прибыткин П. А. Условие построения циклических кодов для композиционных кодовых шкал цифровых преобразователей угла // Изв. вузов. Приборостроение. 2022. Т. 65, № 6. С. 394—397. DOI: 10.17586/0021-3454-2022-65-6-394-397.
CONDITION FOR CYCLIC CODES CONSTRUCTING FOR COMPOSITE CODE SCALES OF DIGITAL ANGLE CONVERTERS
А. А. Ozhiganov*, P. А. Pribytkin
Scientific Research Technological Institute "Avangard", St. Petersburg, Russia
aaozhiganov@itmo.ru
Abstract. The necessary and sufficient condition for cyclic correction codes construction for composite code scales of digital angle converters for a given minimum code distance and the information capacity of the converter, is formulated and proved.
Keywords: digital converter corner, recursive code scale, pseudo-random code scale, compositional code scale , reader elements, error correction
For citation: Ozhiganov А. А., Pribytkin P. А. Condition for cyclic codes constructing for composite code scales of digital angle converters. Journal of Instrument Engineering. 2022. Vol. 65, N 6. P. 394—397 (in Russian). DOI: 10.17586/00213454-2022-65-6-394-397.
Цифровые преобразователи угла (ЦПУ) с непосредственным преобразованием перемещения в код на основе считывания и использованием пространственного кодирования находят широкое применение в самых различных областях техники. Одним из основных элементов таких преобразователей является кодовая шкала (КШ). Наиболее важной характеристикой ЦПУ является правило построения структуры КШ, при заданных значениях разрядности и информационной емкости преобразователя.
В таких преобразователях КШ выполняются на основе обыкновенного двоичного кода (ОДК), или кода Грея [1—3]. Сложность структуры шкал, построенных с использованием таких кодов, а следовательно масса и габариты преобразователя, возрастают с увеличением разрешающей способности, поскольку все считывающие элементы (СЭ) размещаются на отдельных кодовых дорожках (КД) шкалы.
В [4] предложены однодорожечные рекурсивные кодовые шкалы (РКШ), которые позволяют строить на своей основе ЦПУ с улучшенными массогабаритными характеристиками. Кодовая маска РКШ выполняется в соответствии с двоичными значениями символов линейной рекурсивной последовательности (ЛРП). Свойства структуры РКШ позволяют использовать
© Ожиганов А. А., Прибыткин П. А., 2022
линейные соотношения на множестве циклических сдвигов образующей КШ последовательности для формирования контрольных разрядов корректирующих кодов (КК). В классе РКШ различают псевдослучайные (ПСКШ) [5] и композиционные кодовые шкалы (ККШ) [6, 7].
ККШ обладают значительными корректирующими возможностями, обусловленными их линейной рекурсивной структурой. Вес Хемминга соответствующих им двоичных последовательностей определяется выражением:
w = 2(m/2) 2(mi/2), (1)
i=1
p
где m = ^ mt — степень образующего полинома
i=1
H(х) = f\hmj (х), (2)
i=1
а hm (х) — компоненты мультипликативного представления Н(х).
Размещение всех (как информационных, так и корректирующих) СЭ, обеспечивающих формирование кодовых слов с требуемым минимальным кодовым расстоянием dmin, как и в случае ПСКШ, осуществляется путем суммирования значений, снимаемых с определенных информационных СЭ и последующего поиска соответствующих этим суммам циклических сдвигов, лежащих в основе образующей последовательности ККШ. Детальное описание данной процедуры для ПСКШ приведено в работе [8].
Для ККШ в силу соотношения (1) множество вычетов по модулю Н(х) не содержит цикла максимального периода и, следовательно, не является расширенным полем GF(2m). Поэтому метод использования циклических корректирующих кодов, применимый в ПСКШ, не может быть в полной мере перенесен в ККШ. Практически это означает, что при размещении какого-либо СЭ соответствующая контрольная сумма не является циклическим сдвигом последовательности, лежащей в основе построения ККШ.
В качестве иллюстрации такой возможности рассмотрим пример кодовой шкалы со следующими параметрами:
1) образующий полином Н(х) = х5+х4+1;
2) полином размещения информационных СЭ ги(х) = х6+х3+х2+х+1;
3) генераторный полином G(x) = х+1 при dmin = 2.
Для размещения одного корректирующего считывающего элемента, обеспечивающего контроль нечетных ошибок при правильном задании множества начальных значений, необходимо решить уравнение:
(х = х6 + х3 + х2 + х + 1) mod [х5 + х4 + 1], при 0 < l < L, где L — период полинома Н(х).
Решения в данном случае не существует, так как полученное значение для l соответствует степени примитивного элемента расширенного поля Галуа, степень которого меньше степени образующего полинома Н(х).
В настоящей работе рассматриваются условия, при которых возможно построение циклического корректирующего кода с заданным кодовым расстоянием dmin и образующим полиномом ККШ Н(х).
Напомним, что циклическим кодом блоковой длины N называется линейное пространство полиномов а(х) = с(х^(х), где G^) делит х +1, а deg^^)] = N — deg[G^)]. Здесь G^) носит название образующего, или генераторного, полинома кода. В случае несистематического кодирования кодовые слова генерируются путем умножения G(\) на полином информационного слова с(х).
Для размещения СЭ на ККШ удобно использовать другой метод кодирования, основанный на понятии проверочного полинома кода P(x), определяемого в соответствии с выражением:
P(x) = (x? - 1)/G(x).
Значения корректирующих символов определяются линейной рекурсией с коэффициентами авторегрессии, равными соответствующим коэффициентам G(x). Технически процедура кодирования наглядно представляется как процесс последовательного сдвига и сложения для сдвигового регистра, имеющего линейную отрицательную обратную связь.
Чтобы установить зависимость между номерами циклических сдвигов для корректирующих СЭ и значениями контрольных сумм воспользуемся соотношением:
at (x) = xib( x)mod[P(x)], i = deg[P(x)],..., N -1. (3)
Полином b(x) задает начальные условия для генерации рекурсивной последовательности. Полином размещения корректирующих СЭ определяется как:
Гк (X) = Y i xL' для xL = ai (x) mod [H (x)]. (4)
Для иллюстрации приведенных соображений рассмотрим код Хемминга с блоковой длиной 7 и числом проверочных символов 3 при
P(x) = x4 + x2 + x + 1; H(x) = x4 + x + 1; b(x) = 1;
2 9
a4(x) = x + x + 1 ==> x = a4(x) mod [H(x)];
3 2 10
a5(x) = x + x + x ==> x = a5(x) mod [H(x];
3 12
a6(x) = x + x + 1 ==> x = a6(x) mod [H(x].
Очевидно, что совместимость уравнений (3) и (4) обеспечивает корректность размещения корректирующих СЭ. Под корректностью в данном случае понимается существование кодовых комбинаций, равных соответственно a,(x) для i = m,..., N - 1 по модулю H(x).
Утверждение. Система уравнений (3)—(4) совместна тогда, и только тогда, когда имеет место:
НОД [H(x), x b(x) mod P(x)] = 1, для всех i = m,., N - 1; (5)
НОД [H(x), b(x)] = 1, (6)
при определенном размещении информационного СЭ, обеспечивающем линейную независимость циклических сдвигов.
Доказательство. Предположим, что условие (5) не имеет места для некоторого a;(x). Пусть fx) = НОД [x1 b(x), H(x)], H(x) = f(x)U1(x). Из (3) x b(x) = fx)U2(x). Из (4) для U1(x) и
U2(x) имеем: xL U1(x)-1 = f (x) = 0mod[U1(x)].
Очевидно, что xL Ф 0, U2(x)-1 Ф 0, откуда следует необходимость (5). Достаточность вытекает из дополнительного условия (6), рассмотренного в [9]. Решение уравнений (3), (4) при выполнении (5) и (6) позволяет решить задачу размещения корректирующих СЭ.
Для практического применения в ЦПУ циклических корректирующих кодов необходимо, чтобы функциональные зависимости между символами образующей КШ последовательности имели линейный характер. При выполнении этого условия возможно построение преобразователей, формирующих известные типы циклических кодов, для которых существуют эффективные методы обнаружения и исправления ошибок.
СПИСОК ЛИТЕРАТУРЫ
1. Преснухин Л. Н., Майоров С. А., Меськин И. В., Шаньгин В. Ф. Фотоэлектрические преобразователи информации. М.: Машиностроение, 1974. 375 с.
2. Домрачев В. Г., Мейко Б. С. Цифровые преобразователи угла: принципы построения, теория точности,
методы контроля. М.: Энергоатомиздат, 1984. 328 с.
3. Асиновский Э. Н. и др. Высокоточные преобразователи угловых перемещений / Под ред. А. А. Ахметжанова. М.: Энергоатомиздат, 1986. 128 с.
4. Азов А. К., Ожиганов А. А., Тарасюк М. В. Рекурсивные кодовые шкалы // Информационные технологии. 1998. № 6. С. 39—43.
5. Ожиганов А. А. Псевдослучайные кодовые шкалы // Изв. вузов. Приборостроение. 1987. Т. 30, № 2. С. 40—43.
6. Ожиганов А. А., Тарасюк М. В. Композиционные кодовые шкалы // Изв. вузов. Приборостроение. 1994. Т. 37, № 5—6. С. 26—29.
7. Ожиганов А. А., Тарасюк М. В. Размещение считывающих элементов на композиционной кодовой шкале // Изв. вузов. Приборостроение. 1997. Т. 40, № 1. С. 42—47.
8. Ожиганов А. А. Алгоритм размещения корректирующих считывающих элементов на псевдослучайной кодовой шкале // Изв. вузов. Приборостроение. 1995. Т. 38, № 7—8. С. 33—36.
9. Ожиганов А. А., Тарасюк М. В. Использование циклических корректирующих кодов в рекурсивных кодовых шкалах // Изв. вузов. Приборостроение. 2017. Т. 60, № 10. С. 973—979.
Сведения об авторах
Александр Аркадьевич Ожиганов — д-р техн. наук, профессор; АО „НИТИ «Авангард»"; гл. научный
сотрудник; E-mail: aaozhiganov@itmo.ru
Павел Александрович Прибыткин — канд. техн. наук; АО „НИТИ «Авангард»"; лаборатория цифровых
преобразователей угла; начальник лаборатории; E-mail: immelrikt@gmail.com
Поступила в редакцию 09.03.22; одобрена после рецензирования 23.03.22; принята к публикации 25.04.22.
REFERENCES
1. Presnukhin L.N., Maiorov S.A., Meskin I.V., Shangin V.F. Fotoelektricheskiye preobrazovateli informatsii (Photoelectric Information Converters), Moscow, 1974, 375 р. (in Russ.)
2. Domrachev V.G., Meiko B.S. Tsifrovyye preobrazovateli ugla: printsipy postroyeniya, teoriya tochnosti, metody kontrolya (Digital Angle Transducers: Principles of Construction, Theory of Accuracy, Control Methods), Moscow, 1984, 328 р. (in Russ.)
3. Asinovsky E.N. et al. Vysokotochnyye preobrazovateli uglovykh peremeshcheniy (High-precision Converters of Angular Displacements), Akhmetzhanov A.A., ed., Moscow, 1986, 128 р. (in Russ.)
4. Azov A.K., Ozhiganov A.A., Tarasyuk M.V. Information Technologies, 1998, no. 6, рр. 39-43. (in Russ.)
5. Ozhiganov A.A. Journal of Instrument Engineering, 1987, no. 2(30), рр. 40-43. (in Russ.)
6. Ozhiganov A.A., Tarasyuk M.V. Journal of Instrument Engineering, 1994, no. 5-6(37), рр. 26-29. (in Russ.)
7. Ozhiganov A.A., Tarasyuk M.V. Journal of Instrument Engineering, 1997, no. 1(40), рр. 42-47. (in Russ.)
8. Ozhiganov A.A. Journal of Instrument Engineering, 1995, no. 7-8(38), рр. 33-36. (in Russ.)
9. Ozhiganov A.A., Tarasyuk M.V. Journal of Instrument Engineering, 2017, no. 10(60), рр. 973-979. (in Russ.)
Data on authors
Alexander А. Ozhiganov — Dr. Sci., Professor; JSC Scientific Research Technological Institute
"Avangard"; Chief Researcher; E-mail: ozhiganov@itmo.ru
Pavel А. Pribytkin — PhD; JSC Scientific Research Technological Institute "Avangard", Labaratory
of Digital Angle Converters; Head of the Laboratory; E-mail: immelrikt@gmail.com
Received 09.03.22; approved after reviewing 23.03.22; accepted for publication 25.04.22.