устройство для формирования остатка по модулю три
Классы МПК: | G06F1/00 Конструктивные элементы вычислительных машин и устройств для обработки данных, не отнесенные к группам 3/00 |
Автор(ы): | Авгуль Леонид Болеславович[BY], Терешко Сергей Михайлович[BY], Курносенко Сергей Васильевич[BY] |
Патентообладатель(и): | Авгуль Леонид Болеславович (BY) |
Приоритеты: |
подача заявки:
1992-04-20 публикация патента:
10.10.1995 |
Изобретение относится к вычислительной технике и микроэлектронике и может быть использовано для построения средств аппаратурного контроля и цифровых устройств, работающих в системе остаточных классов. Устройство содержит два блока вычисления фундаментальных симметрических булевых функций, четыре элемента ИЛИ, сумматор по модулю три, n-входов и два выхода. Устройство для формирования остатка по модулю три работает следующим образом. На входы устройства поступают соответственно разряды x1....xn входного двоичного слова X=xn,xn-1...x1, причем x1 младший разряд. На выходах формируется двухразрядный двоичный код результата R= 2r1+r2 свертки по модулю три входного слова X R= Xmod3, ri{0,1}, i=1,2 и R {0,1,2}. Достоинством устройства является высокое бистродействие. 1 ил. 3 табл.
Рисунок 1, Рисунок 2
Формула изобретения
УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ ОСТАТКА ПО МОДУЛЮ ТРИ, содержащее сумматор по модулю три, i-й; (i 1,2) выход которого является i-м выходом устройства, отличающееся тем, что оно содержит четыре элемента ИЛИ и два блока вычисления фундаментальных симметрических булевых функций, j-й вход n разрядность входного двоичного слова) первого из которых является входом 2j-го разряда (начиная с младших разрядов) входного слова устройства, вход (2k-1)-го разряда входного устройства (k 1, n/2[) соединен с k м входом второго блока вычисления фундаментальных симметрических булевых функций, p-й вход первого элемента ИЛИ соединен с выходом функции с порогом 3p-2 первого блока вычисления фундаментальных симметрических булевых функций, r-й вход второго элемента ИЛИ соединен с выходом функции с порогом 3r-1 первого блока вычисления фундаментальных симметрических булевых функций, s-й вход третьего элемента ИЛИ соединен с выходом функции с порогом 3s-2 второго блока вычисления фундаментальных симметрических булевых функций, t-й вход четвертого элемента ИЛИ соединен с выходом функции с порогом 3t-1 второго блока вычисления фундаментальных симметрических булевых функций, выход первого элемента ИЛИ соединен с входом старшего разряда первого слагаемого сумматора по модулю три, вход старшего разряда второго слагаемого которого соединен с выходом четвертого элемента ИЛИ, выход второго элемента ИЛИ соединен с входом младшего разряда второго слагаемого сумматора по модулю три, вход младшего разряда второго слагаемого которого соединен с выходом третьего элемента ИЛИ.Описание изобретения к патенту
Изобретение относится к вычислительной технике и микроэлектронике и может быть использовано для построения средств аппаратурного контроля и цифровых устройств, работающих в системе остаточных классов. На чертеже представлена схема устройства для формирования остатка по модулю три при разрядности входного двоичного слова, равной n 19. Устройство содержит два блока вычисления фундаментальных симметрических булевых функций 1 и 2, четыре элемента ИЛИ 3, 4, 5 и 6, сумматор по модулю три 7, n 19 входов 81.819 и два выхода 91 и 92. В общем случае устройство для формирования остатка по модулю три содержит сумматор по модулю три, четыре элемента ИЛИ и два блока вычисления фундаментальных симметрических булевых функций. При этом i-й и (i 1, 2) выход сумматора по модулю три является i-м выходом устройства, а j-й вход (j n разрядность входного двоичного слова) первого блока вычисления фундаментальных булевых функций является входом 2j-го разряда (начиная с младших разрядов) входного слова устройства, (2k-1)-й разряд входного слова устройства (k ) является k-м входом второго блока вычисления фундаментальных симметрических булевых функций. В устройстве p-й вход (p , v [n/2] /3[) первого элемента ИЛИ соединен с выходом функции с порогом 3p-2 первого блока вычисления фундаментальных симметрических булевых функций, r-й вход (r u([n/2-1]/3[) второго элемента ИЛИ соединен с выходом функции с порогом 3r-1 первого блока вычисления фундаментальных симметрических булевых функций, s-й вход (s wn/2[/3[) третьего элемента ИЛИ соединен с выходом функции с порогом 3s-2 второго блока вычисления фундаментальных симметрических булевых функций, t-й вход (t z(]n/2[-1)/3[) четвертого элемента ИЛИ соединен с выходом функции с порогом 3t-1 второго блока вычисления фундаментальных симметрических булевых функций. Выход первого элемента ИЛИ соединен с входом старшего разряда первого слагаемого сумматора по модулю три, вход старшего разряда второго слагаемого которого соединен с выходом четвертого элемента ИЛИ. Выход второго элемента ИЛИ соединен с входом младшего разряда первого cлагаемого сумматора по модулю три, вход младшего разряда второго слагаемого которого соединен с выходом третьего элемента ИЛИ. Устройство для формирования остатка по модулю три при n 19 работает следующим образом. На входы 81.819 устройства поступают соответственно разряды х1.х19 входного двоичного слова Х х19 х18 х17 х1, причем х1 младший разряд. На выходах 91 и 92 формируется двухразрядный двоичный код результата R 2r1 + r2 свертки по модулю три входного слова Х, ri(-{0,1} i 1, 2, и R(-{0,1,2} Причем на выходе 91 реализуется старший разряд r1, а на выходе 92 младший разряд r2 результата Р. Поясним принцип работы устройства для формирования остатка по модулю три. Пусть Х xn xn-1 xn-2 x1 разрядное двоичное слово и х1 младший разряд. Тогда результат свертки по модулю три входного слова можно представить в виде:R 2r1 + r2 Xmod 3 (A + B) mod 3 (Amod 3 + Bmod 3) mod 3, где AX2k-1, BX2j
Обозначим: A mod 3 2a1 + a2 и Bmod 3 2b1 + b2. Следовательно,
(2(a1 + b1) + a2 + b2), (1) При этом
a1= Ф (2)
a2= Ф (3)
b1= F (4)
b2= F (5) где qn/2[, q [n/2] v[n/2]/3[, u([n/2]-1/3[, wn/2[/3[, z(]n/2[-1)/3[ и фундаментальные симметрические булевы функции Фqc и Fgd определяются следующим образом:
Фlq
Fdg
Здесь с d
Фундаментальные симметрические булевы функции Fgd и Фqc вычисляются соответственно первым и вторым блоками вычисления фундаментальных симметрических булевых функций (табл. 1 и 2). На выходах элементов ИЛИ реализуются функции a1, a2, b1 и b2 согласно выражениям (2)-(5). Результат свертки по модулю три входного слова формируется в соответствии с (1) на выходе сумматора по модулю три (табл. 3). Так, при n 19 на входы 82, 84, 818 первого блока вычисления фундаментальных симметрических булевых функций 1 поступают переменные х2, х4, х18; на входы 81, 83, 819 второго блока вычисления фундаментальных симметрических булевых функций 2 поступают переменные х1, х3, х19. На выходах первого 3, второго 4, третьего 5 и четвертого 6 элементов ИЛИ реализуются соответственно функции a1, a2, b1и b2:
a1= Ф210 Ф510 Ф810 (6)
a2= Ф110 Ф410 Ф710 Ф1010 (7)
b1= F19 F49 F79 (8)
b2= F29 F59 F89 (9)
На выходах 91 и 92 сумматора по модулю три формируется результат свертки по модулю три девятнадцатиразрядного входного слова. Рассмотрим работу устройства на примере формирования остатка по модулю три для входного слова Х 1010010111101100110 (n 19). Очевидно, на входы первого блока вычисления фундаментальных симметрических булевых функций 1 поступает вектор двоичных переменных Х1= х2, х4, х18 101011100, на входы второго блока вычисления фундаментальных симметрических булевых функций 2 -вектор двоичных переменных Х2 х1, х3, х19 0101110011. Тогда A 6, B 5, и F95 1 (остальные фундаментальные симметрические булевы функции, формируемые на выходах блоков 1 и 2, равны нулю). Следовательно, с учетом (6)-(9) имеем
a1 a2 b1 0; b2 1. Сумматор по модулю три 7 выполняет сложение входных операндов согласно (1). Откуда R (2(0+0)+0+1)mod 3 1. На выходах 91 и 92сумматора 7 соответственно имеем: r1 0 и r2 1. Таким образом, Хmod 31010010111101100110 mod 3 01. Достоинством устройства для формирования остатка по модулю является высокое быстродействие, определяемое малой глубиной схемы. Быстродействие устройства может быть рассчитано по формуле
T tFSM + tИЛИ + tSM, где tFSM, tИЛИ, tSM соответственно быстродействие блока вычисления фундаментальных симметрических булевых функций, элемента ИЛИ и сумматора по модулю три.
Класс G06F1/00 Конструктивные элементы вычислительных машин и устройств для обработки данных, не отнесенные к группам 3/00