Изобретение относится к вычислительной технике и микроэлектронике и может быть использовано для построения средств аппаратурного контроля и цифровых устройств, работающих в системе остаточных классов. Устройство содержит сумматор по модулю 2n-1 и m уровней многовходовых одноразрядных сумматоров по n-сумматоров в каждом уровне (m находится из условия: k1= N, km= 3, kj= ]log2kj-1[, где
количество входов сумматоров j-го уровня, k1 и km количество входов сумматоров первого и m- го уровней соответственно). Устройство для сложения и вычитания N-чисел по модулю 2n-1 работает следующим образом. На входы устройства подаются n-разрядные операнды X1...XN. На выходах формируется n-разрядный двоичный код результата R:
Выполняемая операция определяется путем соответствующей коммутации прямых и обратных кодов операндов на входах устройства. 1 ил. 2 табл.
Изобретение относится к вычислительной технике и микроэлектронике и может быть использовано для построения средств аппаратурного контроля и цифровых устройств, работающих в системе остаточных классов.
Известен сумматор по модулю три двух полных двухразрядных операндов, который содержит восемь элементов И, два элемента ИЛИ, два элемента ИЛИ-НЕ и два элемента сложения по модулю два [1] Недостатком сумматора являются ограниченные функциональные возможности, так как он реализует только операцию сложения по фиксированному модулю, равному трем.
Наиболее близким техническим решением к предлагаемому является сумматор по модулю 2
n-1, содержащий n-элементов И, n-элементов ИЛИ, n-элементов ИЛИ-НЕ, n-элементов РАВНОЗНАЧНОСТЬ и n-элементов НЕРАВНОЗНАЧНОСТЬ [2] Недостатком устройства также являются ограниченные функциональные возможности, так как оно не выполняет операций сложения и вычитания по модулю 2
n-1 над N операндами.
На чертеже в качестве примера представлена схема устройства для сложения и вычитания N чисел по модулю 2
n-1 при N-25 и n-4.
Устройство содержит n= 4 25-входовых одноразрядных сумматора первого уровня 1
1 1
4, n=4 5-входовых одноразрядных сумматора второго уровня 2
1 2
4, n= 4 одноразрядных двоичных сумматора третьего уровня 3
1 3
4, сумматор по модулю 2
4-1= 15 4, входы первых 5
1 29
1, вторых 5
2-29
3, третьих 5
3 -29
3 и четвертых 5
4 29
4 разрядов входных операндов, причем 5
4 29
4 входы старших, а 5
1 29
1 входы младших разрядов операндов, и выходы результата 32
1 32
4, причем 32
4 выход старшего, а 32
1 выход младшего разряда результата.
В общем случае устройство для сложения и вычитания N чисел по модулю 2
n-1 содержит сумматор по модулю 2
n-1, i-й (i=

), выход которого соединен с i-м выходом устройства, и m уровней многовходовых одноразрядных сумматоров (m находится из условия: k
1=N, k
m=3, k
j=log
2k
j-1[, где j=

, k
j количество входов сумматоров j-го уровня, k
1 и k
m- количество входов сумматоров первого и m-го уровня соответственно). В i-м N-входовом одноразрядном сумматоре первого уровня l-й (l=

) вход соединен с входом i-го разряда l-го операнда. Входы i-го k
h-входового одноразрядного сумматора h-го (h=

) уровня соединены с выходами сумматоров (h-1)-го уровня, имеющими вес А (А определяется из условия: А mod(2
n-1)=2i
-1). Выход суммы i-го одноразрядного двоичного сумматора m-го уровня соединен с первым входом i-го разряда сумматора по модулю 2
n-1, второй вход s-го (s=

) разряда которого соединен с выходом переноса (s-1)-го одноразрядного двоичного сумматора m-го уровня. Выход переноса n-го одноразрядного двоичного сумматора m-го уровня соединен с вторым входом первого разряда сумматора по модулю 2
n-1. При этом i-е разряды входных операндов сумматора по модулю 2
n-1 имеют вес 2
i-1.
При n=4 и N=25 входы первого 25-входового одноразрядного сумматора первого уровня l
1 cоединены соответственно со входами 5
1 29
1устройства, входы второго 25-входового одноразрядного сумматора первого уровня l
2 соединены соответственно с входами 5
2 29
2 устройства, входы третьего 25-входового одноразрядного сумматора первого уровня l
3соединены соответственно со входами 5
3 29
3 устройства, входы четвертого 25-входового одноразрядного сумматора первого уровня l
4соединены соответственно со входами 5
4 -29
4 устройства. Входы первого 5-входового одноразрядного сумматора второго уровня 2
1 соединены с выходами сумматоров первого уровня, имеющими вес 1 или 16, входы второго 5-входового одноразрядного сумматора второго уровня 2
2 соединены с выходами сумматоров первого уровня, имеющими вес 2 или 32, входы третьего 5-входового одноразрядного сумматора второго уровня 2
3соединены с выходами сумматоров первого уровня, имеющими вес 4 или 64, входы четвертого 5-входового одноразрядного сумматора 2
4 соединены с выходами сумматоров первого уровня, имеющими вес 8 или 128. Входы первого одноразрядного двоичного сумматора третьего уровня 3
1 соединены с выходами сумматоров второго уровня, имеющими вес 1 или 16, входы второго одноразрядного двоичного сумматора третьего уровня 3
2 соединены с выходами сумматоров второго уровня, имеющими вес 2 или 32, входы третьего одноразрядного двоичного сумматора третьего уровня 3
3 соединены с выходами сумматоров второго уровня, имеющими вес 4, входы четвертого одноразрядного двоичного сумматора третьего уровня 3
4 соединены с выходами сумматоров второго уровня, имеющими вес 8. Выход переноса первого одноразрядного двоичного сумматора третьего уровня 3
1 соединен с вторым входом второго разряда 31
2 сумматора по модулю пятнадцать 4, первый вход второго разряда 30
2 которого соединен с выходом суммы второго одноразрядного двоичного сумматора третьего уровня 3
2, выход переноса которого соединен с вторым входом третьего разряда 31
3сумматора по модулю пятнадцать 4, первый вход третьего разряда 30
3которого соединен с выходом суммы третьего одноразрядного двоичного сумматора третьего уровня 3
3, выход переноса которого соединен с вторым входом четвертого разряда 31
4 сумматора по модулю пятнадцать 4, первый вход четвертого разряда 30
4 которого соединен с выходом суммы четвертого одноразрядного двоичного сумматора третьего уровня 3
4, выход переноса которого соединен с вторым входом первого разряда 31
1 сумматора по модулю пятнадцать 4, первый вход первого разряда 30
1 которого соединен с выходом суммы первого одноразрядного двоичного сумматора третьего уровня 3
1. Выходы первого, второго, третьего и четвертого разрядов сумматора по модулю пятнадцать 4 соединены соответственно с выходами 32
1, 32
2, 32
3 и 32
4 устройства, при этом выход 32
1 соответствует младшему разряду сумматора по модулю пятнадцать 4, а выход 32
4 его старшему разряду.
Устройство для сложения и вычитания N чисел по модулю 2
n-1 при N=25 и n= 4 работает следующим образом. На входы 5
1 5
4, 6
1 6
4, 29
1 29
4 устройства подаются соответственно четырехразрядные полные операнды X
1=

2
i-1x
i1, X
2=

2
i-1x
i2,..., X
25=

2
i-1x
i25, где x
ij{0,1} j=1,25, X
j{0,15} На выходах 33
1 33
4 формируется четырехразрядный двоичный код результата R

2
i-1r
i, операций сложения и вычитания двадцати пяти чисел по модулю пятнадцать, r
i 
{0,1} R

0,14} Причем на выходе 33
4 реализуется старший разряд r
4, а на выходе 33
1 младший разряд r
1 результата R.
Предлагаемое устройство реализует 2
N операций сложения и вычитания вида R

X

mod(2
n-1) (1) Выполняемая операция определяется путем соответствующей коммутации прямых и обратных кодов операндов на входах устройства, а именно: если i-й операнд Х
i входит в уравнение (1) со знаком "плюс", то на вход устройства подается его прямой код, а если со знаком "минус" то обратный.
Укажем, что k-входовый одноразрядный сумматор работает следующим образом. На вход сумматора подаются k одноразрядных двоичных операндов. На выходе формируется позиционный двоичный код числа операндов, имеющих значение "1". Веса выходов сумматоров на чертеже обозначены цифрами 1, 2, 4, 8 и 16.
Устройство для сложения и вычитания N чисел по модулю 2
n-1 построено с использованием следующего соотношения: (-X) mod(2
n-1)

mod(2
n-1), где X

2
i-1x
i.
Отметим, что в качестве сумматора 4, входящего в состав заявляемого устройства, может быть использован сумматор, выполняющий сложение по модулю 2
n-1 двух полных операндов. Работа такого сумматора при n=4 описывается табл. 1.
В табл. 2 приведены значения количества уровней одноразрядных многовходовых сумматоров m и количества входов сумматоров каждого уровня k
j(j=

) в зависимости от числа входных операндов N. Как видно из таблицы, на практике количество уровней сумматоров m не превышает четырех, так как реально число входных операндов N<<2
-1. Достоинством заявляемого устройства являются широкие функциональные возможности. Так, предлагаемое устройство выполняет 2N операций сложения/вычитания по модулю 2n-1 над N операндами. Известные же устройства такими возможностями не обладают.Формула изобретения
УСТРОЙСТВО ДЛЯ СЛОЖЕНИЯ И ВЫЧИТАНИЯ N ЧИСЕЛ ПО МОДУЛЮ 2n-1, содержащее сумматор по модулю
выход которого соединен с i-м выходом устройства, отличающееся тем, что оно содержит m уровней многоходовых одноразрядных сумматоров (m находится из условия K1 N, Km 3, Kj log2 Kj-1[, где
Kj количество входов сумматоров j-го уровня, Ki и Km количество входов сумматоров первого и m-го уровней соответственно), при этом
вход i-го N-входового однозарядного сумматора первого уровня соединен с входом i-го разряда l-го входного операнда, входы i-го Kh-входового одноразрядного сумматора
уровня соединены с выходами сумматоров (h 1)-го уровня, имеющими вес A (A находится из условия A mod (2n 1) 2i-1), выход суммы i-го одноразрядного двоичного сумматора m-го уровня соединен с первым входом i-го разряда сумматора по модулю 2n-1, второй вход S-го
разряда которого соединен с выходом переноса (S-1)-го одноразрядного двоичного сумматора m-го уровня, выход переноса n-го одноразрядного двоичного сумматора m-го уровня соединен с вторым входом первого разряда сумматора по модулю 2n-1, при этом i-е разряды входных операндов и сумматора по модулю 2n-1 имеют вес 2i-1.РИСУНКИ
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4