УДК 681.325
ДВУХКРИТЕРИАЛЬНЫЙ СИСТЕМНЫЙ СИНТЕЗ ПРЕОБРАЗОВАТЕЛЕЙ КОДОВ ПО МЕТОДУ НАКОПЛЕНИЯ ЭКВИВАЛЕНТОВ
КАКУРИН Н.Я., МАКАРЕНКОА.Н., ЗАМАЛЕЕВЮ.С.
Рассматривается двухкритериальный системный синтез преобразователей кодов по методу накопления эквивалентов. В качестве критериев используются число тактов преобразования и аппаратурные затраты. Предлагается алгоритм оптимального выбора указанных параметров в двух-, трёх-, четырехшаговом преобразователях кодов.
До настоящего времени проектирование преобразователей кодов по методу накопления эквивалентов осуществлялось в основном с использованием одного критерия — максимального быстродействия [ 1,2,5 ]. Вторым важным критерием являются аппаратурные затраты на реализацию схемы преобразователя. Они определяют размер схемы, её энергопотребление и надёжность, а также возможность реализации в виде БИС. Предлагаемый двухкритериальный системный синтез позволяет выбрать оптимальные значения как быстродействия, так и аппаратурных затрат. Состав узлов, их назначение, а также функционирование многошаговых преобразователей кодов ( ПК ) подробно рассмотрены в [ 3,4]. Фрагмент структуры двухшагового преобразователя кодов по методу накопления эквивалентов для двухразрядного блока показан на рисунке.
Таблица 1
а 2 3 4 5 6 7 8 9
N/p 5 5 5 5 6 7 8 9
рать одно по. возможности большое
и равное степени двойки. Для двухшагового ПК а принимает четыре значения: а = {2,3,4,5}, при которых N2ot = 5 и имеет наименьшее значение (табл. 1).
В табл. 2 приведены булевы функции Y82, Y42, Y22, Y12, описывающие функционирование кодовых шифраторов двухшагового ПК для а=4 в функции от состояний разрядных счетчиков, представленных переменными Z8, Z4, Z2, Z1, а также булевы функции Di:
D3 = D4 =■
J1, Zi > 3, ]o,Zi <3,
1, Zi > 4, 0, Zi < 4,
(4)
(5)
где Zi — состояние i-го входного счетчика, отображаемого значениями переменных Z8, Z4, Z2, Z1.
В правой половине табл. 2 представлены выходные функции кодового шифратора Y83, Y43, Y23, Y13для трехшагового ПК с а=2, b=4, а также выходные функции Y84, Y44, Y24, Y14 четырехшагового ПК с а=2, b=4, с=8. Для всех рассматриваемых случаев основание K=10.
Выбор значений второго шага а равным наибольшей степени 2 предпочтителен, так как приводит к более простой реализации дешифраторов превышения. Так, для двоично-десятичного кода 8421 булевы функции
выхода C- = Z v Z4 vZ vZ1, d3 =Z vZ4 vZ aZ1, a функция D4 = Z8 v Z4.
X5<
где К — основание системы счисления на входе; a, b, c — соответственно второй, третий и четвертый шаги преобразования.
Из всех возможных значений а целесообразно выби-
Проанализируем аппаратурные затраты на построение ряда нестандартных узлов П К (кодового шифратора 12, дешифратора нуля 10 и дешифратора превышения 11) в функции от значения а в двухшаговом ПК, от значений a,b в трехшаговом и a, b, c в четырехшаговом ПК.
Для расчета значений шагов двух-, трех-, четырехшагового ПК воспользуемся следующими формулами:
N2® =№-^/^-1; (1)
N3® =] ( К - 1) / b [ + ] ( b-- 1)/а [+a - 1; (2)
N4™ =] ( К - 1) / c [ + ] ( c- 1) / b [ + ] ( b - 1) / a [ +
+a - 1, (3)
В расширенном функциональном базисе, кроме двух, трех-, четырех- и восьмивходовых элементов Шеф-
РИ, 1999, № 4
61
фера, используются счетверенные двухвходовые элементы И и элементы ИЛИ. Тогда для реализации функции Dj3 требуется два двухвходовых элемента ИЛИ (0,5 корпуса ИС) и один двухвходовой элемент И (1/4 корпуса).
Суммарные затраты на реализацию D/составят 3 /4 корпуса ИС, а затраты на реализацию Dj4 1/4 корпуса. Аналогичные затраты на реализацию дешифратора нуля cj = Z8 v Z4 v Z2 v Zj (функцию легко найти с помощью карты Карно) составят 3/4 корпуса. При совместной реализации в двухшаговом ПК функций Cj1 и Dj4 их можно представить в виде
D4 = Z8 vZ4; с{ = D4 v (Z2 vZx) . В результате общие затраты на совместную реализацию этих функций снизятся с одного корпуса ИС до 3/4 корпуса.
Аналогично с помощью карт Карно легко находятся минимальные ДНФ функций выхода Y82, Y42, Y22, Y12 двухшагового ПК для К=10 и а=4 (левая треть табл. 2) В результате получим, что Y82 = 0; Y42 = Z8; Y22= Z2; Y12 = Z1. Система этих функций реализуется без аппаратурных затрат путем перекоммутации шин.
Необходимость введения кодового шифратора 12 в структуру двухшагового ПК объясняется тем, что реверсивный счетчик для изменения своего состояния имеет входы инкремента и декремента, т.е сложения (+1) и вычитания (—1).
Для уменьшения за один такт состояния разрядного счетчика сразу на величину второго шага а используются входы параллельного занесения V и кодовый шифратор 12 , функционирующий в соответствии с выражением:
Функционирование кодового шифратора 12 трехшагового ПК в общем случае описывается формулой:
Z; - b, Z; > Ь,
Y Н
Z; - a, a < Z; < b, Z;, Z; > b.
(7)
Для а=2; b=4; К=10 булевы функции Y8Y4Y2Y3 ,
описывающие функционирование кодового шифратора трехшагового ПК последовательного типа, представлены во второй трети слева табл. 2.
Минимальные ДНФ Y8Y4Y2Y3 c использованием
карт Карно найдены в виде выражения y8 = 0;
Y4 = Z8 ; Y2 = Z4Z2 v Z8Z2 = Z2(Z8 v Z4) ; Y13 = Z1, реализация которых требует 1/2 корпуса ИС.
Функции для выходов дешифратора нуля, дешифратора превышения второго шага а=2 и дешифратора превышения третьего шага b=4 описываются соответственно следующими выражениями для трехшагового ПК:
C; = Z8 V Z4 V Z2 V Zj ;
D;2 = Z8 v Z4 V Z2 ; (8)
E;4 = Z8 V Z4 .
Их совместную реализацию целесообразно осуществить в виде E4 = Z8 v Z4; D2 = E4 v Z2; C1 = D2 v Z1, что потребует всего 3/4 корпуса ИС.
IZj - a, Z; > a, Y; =\ ; ;
; [ Z;, Z; <a,
(6)
где Zj = Z8Z4Z2Zi — входная тетрада кодового шифратора; Yj = Y8Y4Y2Y1 — выходная тетрада кодового шифратора.
Общие аппаратурные затраты на построение всех дешифраторов и кодового шифратора трехшагового ПК составляют 1,25 корпуса, что на 1/2 корпуса больше, чем в двухшаговом ПК.
Закон функционирования кодового шифратора для четырехшагового ПК для общего случая определяется формулой:
Таблица 2
Z; Z8Z4Z2Z1 Y82Y42Y22Y/ C;1 D;3 D;4 Y/Y/Y/Y/ y84Y44Y24V
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0
3 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 0 0 0 1
4 0 1 0 0 0 1 0 0 1 1 1 0 0 0 0 0 0 0 0
5 0 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 0 0 1
6 0 1 1 0 0 1 1 0 1 1 1 0 0 1 0 0 0 1 0
7 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1
8 1 0 0 0 0 1 0 0 1 1 1 0 1 0 0 0 0 0 0
9 1 0 0 1 0 1 0 1 1 1 1 0 1 0 1 0 0 0 1
10 1 0 1 0 x x x x x x x x x x x x x x x
11 1 0 1 1 x x x x x x x x x x x x x x x
12 1 1 0 0 x x x x x x x x x x x x x x x
13 1 1 0 1 x x x x x x x x x x x x x x x
14 1 1 1 0 x x x x x x x x x x x x x x x
15 1 1 1 1 x x x x x x x x x x x x x x x
62
РИ, 1999, № 4
Y H
Zj - c, Zi > c,
Zi - b, b < Zj < c, Zj - a, a < Zj < b,
. Zi, Zi <a
(9)
где с — четвертый шаг преобразования.
Система функций выхода кодового шифратора У84, У44, У24, Уі4 четырехшагового ПК, построенная по выражению (9) при а=2, b=4, c=8, K=10, приведена в правой части табл. 2. Методом карт Карно найдём,
что У84 = У44 = 0; Y24 = Z8Z2 V Z4Z2 = (Z8 v Z4)Z2; Y14 = Zi.
Таким образом, на построение кодового шифратора в четырехшаговом ПК, как и в трехшаговом, требуется 1/2 корпуса ИС.
Система функций выхода дешифратора нуля и трех дешифраторов превышения в четырехшаговом ПК описывается выражениями:
C1 — Z8 v Z4 v Z2 V Zj ,
D2 — Z8 v Z4 v Z2 ,
(10)
E4 = Z8 v Z4,
Fi8 = Z8.
Представление этой системы функций в виде Fi8 = Z8;
E4 = Z8 V Z4; D2 = E4 VZ2; C1 = D2 VZ4 позволяет выполнить более экономное построение с использованием всего 3/4 корпуса ИС.
Общие затраты на шифратор и дешифраторы в четырехшаговом ПК составят 1,25 корпуса ИС, т.е. идентичны затратам в трехшаговом ПК.
На основании проведенного исследования можно сформулировать следующий двухкритериальный алгоритм выбора оптимальных значений величин шагов в ПК как последовательного, так и параллельного типов:
1) В ПК последовательного типа по формуле для максимального числа шагов преобразования следует выполнить расчет числа тактов преобразования для всех значений шагов преобразования (всех возможных вариантов значений шагов, количество которых определяется числами треугольника Паскаля). В ПК параллельного типа аналогичные расчеты выполнить методом моделирования.
2) Из всех полученных значений числа тактов преобразования по минимальному значению найти соответствующие им сочетания значений шагов в наборах.
3) Составить систему булевых функций, описывающих функционирование схем кодового шифратора и дешифраторов превышения, для сочетаний значений шагов в наборах.
4) Синтезировать схемы всех основных нестандартных узлов ПК (кодового шифратора и дешифраторов превышения) и определить суммарные аппаратурные затраты на их реализацию.
5) По минимуму суммарных аппаратурных затрат на реализацию схем кодового шифратора и дешифраторов превышения выбрать оптимальные наборы значений шагов.
Литература: 1. Какурин Н.Я. Выбор величин шага преобразования в преобразователях код-код //АСУ и приборы автоматики. 1991. Вып.97. С.14-17. 2. А.с. 1647908Н03М7 / 12. Преобразователь двоично-К-ичного кода в двоичный код / Н.Я.Какурин, Ю.К.Кирьяков, А.Н.Макаренко // Открыт., изобрет. 1991. №17. С.262-263. 3. А.с. 1783618Н03М 7112. Преобразователь двоично-К-ично-го кода в двоичный код / Н.Я. Какурин, А. Н. Макаренко, Д.Ю.Исхаков, В.А.Толмацкий // Открыт., изобрет. 1992. №47. С.218. 4. Макаренко А.Н. Быстродействующий преобразователь двоично-К-ичного кода в двоичный код / /АСУ и приборы автоматики. 1993. Вып.99. С. 47-55. 5. Какурин Н.Я, Макаренко А.Н. Сравнительная оценка последовательной и параллельной стратегии использования шагов преобразования дробных чисел //Радиоэлектроника и информатика. 1999. №1(06). С.72-74.
Поступила в редколлегию 16.12.99
Рецензент: д-р техн. наук Кривуля Г.Ф.
Какурин Николай Яковлевич, канд. техн. наук, профессор кафедры автоматизации проектирования вычислительной техники ХТУРЭ. Научные интересы: прикладная теория цифровых автоматов, автоматизация проектирования цифровых устройств. Адрес: Украина, 61204, Харьков, пр.Победы, 72а, кв. 62, тел. 38-37-96.
Макаренко Анна Николаевна, канд. техн. наук, ассистент кафедры автоматизации проектирования вычислительной техники ХТУРЭ. Научные интересы: дискретная математика, анализ и синтез преобразователей код-код. Адрес: Украина, 61204, Харьков, пр.Победы, 72а, кв. 62, тел. 38-37-96.
Замалеев Юрий Салихович, канд. техн. наук, доцент кафедры прикладной математики и вычислительной техники ХГАГХ. Научные интересы: вычислительная техника, программирование. Адрес: Украина, 61204, Харьков, пр.Победы, 68а, кв. 17, тел. 45-50-86.
РИ, 1999, № 4
63