СИСТЕМЫ, СЕТИ И УСТРОЙСТВА ТЕЛЕКОММУНИКАЦИЙ
УДК 621.3721075
Разновидности троичного кода
Игорь Михайлович Белюченко, д.т.н. проф., e-mail: [email protected]
ФГОУ ВПО «Российский государственный университет туризма и сервиса», Москва
Рассмотрены две разновидности троичного кода - классический позиционный с алфавитом (0, 1, 2) и так называемый «симметричный» с алфавитом (-1, 0, 1); приведена оценка особенностей использования этих кодов при передаче и хранении информации; получен вывод о качественном преимуществе применения классического троичного кода по сравнению с «симметричным», а также двоичным кодами.
Author considers two types of ternary code - the classic position of the alphabet is (0,1,2) and so-called “symmetric” with the alphabet (-1,0,1); gives an estimate of peculiarities of using these codes during transmission and storage of information; obtaines the conclusion about qualitative superiority of the classical ternary code in comparison with the "symmetrical" as well as binary codes.
Ключевые слова: троичный код, двоичный код, методы кодирования, помехозащита.
Keywords: ternary code, binary code, coding methods, anti-jamming.
Классический позиционный код при основании п подразумевает последовательность представления коэффициентов степеней П из натурального ряда чисел от 0 до (п - 1). В троичном коде коэффициенты (алфавит) принимают значения (0, 1, 2).
Технической основой реализации различных схем п-ичного кода является элемент с п устойчивыми состояниями. Например, для двоичного кода -это триггер.
Попытки реализации троичного кода относятся к 60 - 70 гг. прошлого века. Доступным элементом с тремя устойчивыми состояниями в то время было ферритовое кольцо с тремя обмотками, которые обеспечивали состояния (-В„, 0, +Вт). Поэтому ферритовые кольца стали технической основой практически всех цифровых схем, реализующих троичные вычислительные и логические операции. Коэффициенты позиционного троичного кода (алфавит) представлялись как (-1, 0, +1). Такой троичный код назвали «симметричным».
Симметричный троичный код (СТК) состоял из последовательности положительных и отрицательных чисел. Классический троичный код (КТК) представляется числами одного знака. Информационная емкость их одинакова. Например, тремя разрядами СТК можно представить 27 чисел от
-13 (-1, -1, -1) до +13 (1, 1, 1). КТК тремя разрядами может представить также 27 чисел от 0 до 26 (2, 2, 2). Сразу необходимо отметить, что модуль максимального числа, представленного 7 разрядами КТК, всегда в 2 раза больше, чем аналогичный модуль СТК. Так, для четырех разрядов это 80 (2, 2, 2, 2) и 40 (1, 1, 1, 1), для пяти разрядов это 242 (2, 2, 2, 2, 2) и 121 (1, 1, 1, 1, 1) и т.д. Поэтому в СТК для представления чисел 2, 5...8, 14.. .26, 122.242 и т.д. требуется дополнительный разряд по сравнению с КТК.
Утверждение, что свойствами симметричности кодов обладают все нечетные основания (3, 5, 7 и т.д.), неполно. Построить позиционный код с основанием п, коэффициенты которого знакопеременные, можно для любого основания.
Например, для десятичного кода коэффициенты разрядов можно выбирать из 10 подмножеств (алфавитов):
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
(-1, 0, 1, 2, 3, 4, 5, 6, 7, 8)
(-2, -1, 0, 1, 2, 3, 4, 5, 6, 7)
(-8, -7, -6, -5, -4, -3, -2, -1, 0, 1) (-9, -8, -7, -6, -5, -4, -3, -2, -1, 0)
Если выбрать такое подмножество коэффициентов, как (-4, -3, -2, -1, 0, 1, 2, 3, 4, 5), то с помощью трех разрядов можно однозначно выразить 1 000 чисел.
Интересно оценивать числа дополнительных разрядов у троичных кодов СТК и КТК для представления чисел натурального ряда от -3г до 3г. У КТК дополнительный разряд необходим для отрицательных значений, число которых Д = 3г - 1. У СТК дополнительные разряды необходимы для коэффициентов каждой цифры 2 (представленных в КТК одним разрядом). Число таких разрядов в СТК для представления положительных и отрицательных значений чисел натурального ряда будет вычисляться по формуле
т=і
Д2 = 2 (3т -1),
т=1
а разность дополнительных разрядов кодов СТК и КТК определяться из выражения
т=і-1
АД = Д - Д = 2 (3т -!).
т =1
Эта разность дополнительных разрядов кодов СТК по сравнению с КТК возрастает достаточно быстро:
ДД2 = 2 при і = 2;
ДДз = 10 при і=3;
ДД4=36 при і=4;
ДД5=116 при і=5;
и т. д.
Обобщая изложенное, необходимо отметить, что при передаче (хранении) цифровых массивов в троичном коде (тритах) числа 0, 1, 2 появляются с равной вероятностью 1/3.
В классическом троичном коде для их представления используется один разряд (трит). В СТК числа 0 и 1 передаются одним разрядом, а число 2 передается двумя разрядами. Среднее число разрядов (тритов) для передачи чисел алфавита СТК находится так:
1 і 1 і 1 о 4
пср = — ■ 1 +----------1 +— 2 = — « 1,33 тритов.
ср 3 3 3 3
то при использовании КТК потребуется 0,63 разрядов (трит), при использовании СТК потребуется 0,84 разрядов (трит). Соответственно при нормировании относительного числа разрядов (трит) КТК - 1, при использовании СТК потребуется 1,33 разрядов и 1,59 бит ДК.
Эти соотношения можно использовать при оценке потенциальной помехоустойчивости передачи разными кодами.
Помехоустойчивость равноудаленных сигналов определяется соотношением
p = — ош 42П
— Е
2 du = (а-1)V (1 -р)-Р, (1) V N0
(1-р)
Ер
No
где Ер - энергия одного разряда; N0 - спектральная плотность мощности шума; р = cos © - коэффициент взаимной корреляции между векторами сигналов Si и S2; а - число различных сигналов.
Для фазовой манипуляции двоичных сигналов © = п и р = -1 (рис. 1), при этом
рш) = Ч2 No=V
(2)
2п
Для троичной фазовой модуляции Q = -3- и
р = -0,5 (рис. 2), при этом
(3)
Таким образом, цифровой массив СТК в разрядах троичного кода при передаче или хранении больше аналогичного массива КТК в 1,33 раза.
Представляет определенный интерес количественное сравнение потенциальных характеристик двоичного (ДК) и троичных кодов.
Если принять за 1 число разрядов ДК (бит) при передаче определенного цифрового массива,
Рис. 1. Фазовая манипуляция Рис. 2. Фазовая манипуляция двоичных сигналов троичных сигналов
Энергия одного трита в ~1,6 раз больше энергии одного бита, так как при прочих равных условиях число разрядов троичного кода в такое же число раз меньше.
Аргумент интеграла вероятности троичного кода КТК больше аналогичного двоичного кода в ~1,1 раза.
Оценка вероятности ошибочного приема разрядов СТК, у которого число разрядов меньше, по сравнению с двоичным только в ~1,2 раза:
Х>
Таблица 1. Функция интеграла вероятностей
х 2,85 3,0 3,3 3,8 4,0 4,4 4,75 5,0 5,5 5,7 6,0 6,6
¥(х) 2,2-10-3 1,310-3 5-10-4 7-10-5 3,1610-5 6-10-6 810-7 2,86-10-7 2-10-8 6-10-9 9,86-10-10 3-10-11
Р0СШТК = 2У 1,5
1,2 Ер Ер ,—
-!—р = 2Н ~^<Ш.
N ^0
(4)
Таким образом, относительные значения аргументов интеграла вероятностей для кода КТК по сравнению с ДК составляет -,/2,4/-\/2 * 1,1, для кода СТК ^18Д/2 * 0,95 .
В табл. 1 приведены значения функции интеграла вероятностей - У(х).
В табл. 2 приведены значения отношений V (х)
Пк =-
-, которые показывают, во сколько
2¥ (х -1,1)
раз потенциальная помехоустойчивость КТК выше, чем у ДК.
Таблица 2. Помехоустойчивость КТК
х 3,0 4,0 5,0 6,0
Пк 1,3 2,63 7,15 16,45
График функции пк (х) приведен на рис. 3.
Рис. 3. График функции пк (х)
С ростом качества канала связи (ростом Ер/N0 ) потенциальный выигрыш помехоустойчивости КТК по сравнению с ДК растет по закономерности пк (х) * е(х-3).
Аналогичные оценки для СТК по сравнению V (х)
с ДК Пс =-
приведены в табл. 3.
2V (х - 0,95)
Таблица 3. Помехоустойчивость СТК
х 3 4 5 6
Пс 0,3 0,23 0,18 0,08
Рис. 4. График функции пс(х)
Кроме оценки повышения помехоустойчивости на уровне разряда, необходимо оценить выигрыш при передаче информационного массива кодами КТК и ДК. Для примера возьмем простейший код Хэмминга (7, 4). Этот код может исправлять одну ошибку при двоичном коде и при троичном [2]. Информация о N объектах передается N2 = битами или N = log3N тритами, т. е. чис-
ло трит в ~1,6 раз меньше, чем бит.
Скорость кода (7, 4) составляет 4/7 * 0,57 для двоичного и троичного кодов. Число блоков по 7 разрядов составляет т2 = N2/7 для двоичного и т3 = N3/7 для троичного кодо в. Обозначим вероятности ошибки при передаче одного разряда соответственно Ро(шш) и Ро(ш. Вероятности невосстановленной ошибки в блоке из 7 разрядов будут определяться в основном появлением двойной ошибки:
Р(22) = С2( Ро(шш))2(1 - ^ош))5,
р(23) = с2( рш^а - р(ш)5.
(5)
Общее среднее число ошибок при передаче всего информационного массива равно т2Р0^ и
т3Р0(23). Тогда сравнительная оценка будет:
п2“ =
т Р(2) т2р02
т Р(3)
т3 р02
N2 (Р0(2))2 (1 - О5 N (р,(3))2 (1 -р(3))5
1,6
р02) р(3)
V р0 у
(6)
График функции пс(х) приведен на рис. 4.
Код СТК значительно проигрывает в помехоустойчивости коду ДК. С ростом качества канала связи потенциальный проигрыш помехоустойчивости СТК по сравнению с ДК увеличивается.
Если воспользоваться сравнительными оценками табл. 2, например при х = 5,0, то п23л) * * 1,6-51=81,6. С учетом веса потери блока в двоичном (24 = 16) и в троичном коде (34 = 81) можно вычислить общую сравнительную оценку выигрыша КТК:
П23 =п23л)1у * 16 .
В двоичном коде более крупной информационной единицей, чем бит, является байт - восемь разрядов, которые обеспечивают однозначную нумерацию 28 = 256 объектов. Это, например, дискреты отсчетов, градации яркости, цветности и т.п.
В троичном коде более крупной информационной единицей выступает трайт. Число разрядов в трайте может быть 5 или 6. При использовании классического троичного кода пять разрядов обеспечат однозначную нумерацию 35 = 243 объектов. Отличие от байта составляет ~5 % и практически не сказывается на точности представления градации видео- и аудиоинформации. При использовании симметричного кода модуль числа однозначно определяемых объектов пятью разрядами составляет 3 ^1 = 122, что в два раза хуже, чем обеспечивается байтом. Только при использовании шести разрядов СТК однозначно определяются
36 +1
-----= 365 объектов.
2
На основании изложенного можно предложить использовать в качестве трайта пять разрядов классического кода, что позволит сохранить основное преимущество троичного кода в принципиальном сокращении числа разрядов в 1,59 раза.
Таким образом, переход на троичный код позволяет качественно повышать помехоустойчивость пере-
дачи не только одного разряда, но информационного массива в целом. Помехоустойчивость передачи массива информации при одинаковой энергетике канала (мощность передатчика, чувствительность приемника, параметры антенных систем и др.) при использовании более сложных помехозащитных кодов может повышаться уже на порядки.
Классический троичный код КТК с алфавитом коэффициентов (0, 1, 2) имеет следующее качественные преимущества по сравнению с симметричным троичным кодом СТК с алфавитом коэффициентов (-1, 0, 1):
• при передаче и хранении информационных массивов число разрядов меньше в 1,33 раза;
• помехоустойчивость КТК при равных условиях передачи выше не только по сравнению СТК, но и выше, чем у двоичного кода;
• помехоустойчивость СТК при равных условиях передачи ниже, чем у двоичного кода.
ЛИТЕРАТУРА
1. Котельников В. А. Теория потенциальной помехоустойчивости. М.: Государственное энергетическое издательство. 1956.
2. Белюченко И. М. Особенности помехозащиты троичного кода // Электротехнические и информационные комплексы и системы. 2009. Т. 5. № 4. С. 17-22.
3. Хэмминг Р. В. Теория кодирования и теория информации. М.: Радиосвязь. 1983.
4. Брусенцов Н. П., Маслов С. П., Розин В. П., Тишулина А. М. Малая цифровая вычислительная машина «Сетунь». М.: Изд. МГУ. 1965.
5. Иваськив Ю. Л. Принципы построения многозначных физических схем. Киев: Наукова думка. 1971.
6. Кухарев Г. А., Шмерко В. П., Зайцева Е. Н. Алгоритмы и систолические процессоры для обработки многозначных данных. Минск: Наука и техника. 1990.
Поступила 12.05.2011 г.