×
03.06.2023
223.018.7677

Результат интеллектуальной деятельности: ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО

Вид РИД

Изобретение

№ охранного документа
0002796555
Дата охранного документа
25.05.2023
Аннотация: Вычислительное устройство относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, устройствах цифровой обработки сигналов, в криптографических приложениях, а также в устройствах для формирования кодовых последовательностей, построение которых основывается на теории конечных полей. Техническим результатом является увеличение быстродействия формирования остатка от числа по модулю и неполного частного. Устройство содержит два /2 – разрядных регистра сдвига, блок формирования частного и остатка, содержащий три сумматора, четырехвходовый мультиплексор, регистр кода остатка, два /2 – разрядных регистра сдвига. 3 ил., 2 табл.

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, устройствах цифровой обработки сигналов, в криптографических приложениях, а также в устройствах для формирования кодовых последовательностей, построение которых основывается на теории конечных полей.

Известно вычислительное устройство [1], содержащее сумматоры и мультиплексоры, позволяющее формировать остаток от числа по модулю и неполное частное. Известно также устройство для формирования остатка по произвольному модулю от числа [2], содержащее регистр и блок формирования частного и остатка, позволяющее формировать остаток от числа по модулю и неполное частное.

Недостатками данных устройств являются большой объем оборудования.

Наиболее близким по технической сущности к заявляемому изобретению является вычислительное устройство [3], содержащее n – разрядный регистр сдвига, блок формирования частного и остатка, состоящий из одного (n-1) – разрядного регистра, одного (n-1) – разрядного регистра сдвига, n-разрядного сумматора и мультиплексора.

Недостатком данного устройства является низкое быстродействие.

Техническим результатом изобретения является увеличение быстродействия формирования остатка от числа по модулю и неполного частного.

Для достижения технического результата в вычислительном устройстве, содержащем регистр кода числа, блок формирования частного и остатка, содержащий первый сумматор, регистр кода остатка, регистр кода неполного частного, входы кода числа, входы инверсного кода модуля, выходы кода остатка, выходы кода неполного частного, вход начала вычисления, вход подачи тактовых импульсов, причём входы кода числа соединены с информационными входами регистра кода числа, первые информационные входы блока формирования частного и остатка соединены со входами инверсного кода модуля, первые информационные выходы соединены с выходами кода остатка устройства, вторые информационные выходы соединены с выходами кода неполного частного устройства, первый управляющий вход соединён со входом подачи тактовых импульсов устройства, выходы регистра кода остатка соединены с первыми информационными выходами блока формирования частного и остатка, выходы регистра неполного частного соединены со вторыми информационными выходами блока формирования частного и остатка, вторые информационные входы первого сумматора соединены с первыми информационными входами блока формирования частного и остатка, на вход переноса подаётся сигнал логической единицы, первый управляющий вход регистра кода остатка соединён с первым управляющим входом блока формирования частного и остатка, регистр кода числа выполнен в виде двух n/2 – разрядных регистров сдвига, в блок формирования частного и остатка введены два сумматора, четырехвходовый мультиплексор, а регистр кода остатка выполнен в виде двух n/2 – разрядных регистров сдвига, причём четырехвходовой мультиплексор, содержит три инвертора, три элемента И, четыре ключа, блок элементов ИЛИ, два элемента ИЛИ, при этом чётные разряды входа кода числа устройства соединены с информационными входами первого n/2 – разрядного регистра сдвига, а нечётные разряды соединены с информационными входами второго n/2 – разрядного регистра сдвига, вход подачи тактовых импульсов устройства соединен с первыми управляющими входами первого и второго n/2 – разрядных регистров сдвига, вход начала вычисления устройства соединен со вторыми управляющими входами первого и второго n/2 – разрядных регистров сдвига и со вторым управляющим входом блока формирования частного и остатка, вторые и третьи информационные входы которого соединены соответственно со входами инверсного удвоенного кода модуля устройства и со входами инверсного утроенного кода модуля устройства, выход старшего разряда первого n/2 – разрядного регистра сдвига соединён с четвёртым информационным входом блока формирования частного и остатка, а выход старшего разряда второго n/2 – разрядного регистра сдвига соединён с пятым информационным входом блока формирования частного и остатка, вторые информационные входы второго и третьего сумматоров соединены соответственно со вторыми и третьими информационными входами блока формирования частного и остатка, информационные выходы регистра кода остатка соединены с первым информационным выходом блока формирования частного и остатка и со сдвигом на два разряда в сторону старшего с первыми информационными входами четырехвходового мультиплексора и первого, второго и третьего сумматоров, информационные выходы которых соединены соответственно со вторыми, третьими и четвертыми информационными входами четырехвходового мультиплексора, а выходы переноса соединены соответственно с его первым, вторым и третьим управляющими входами, на входы переноса второго и третьего сумматоров подаётся сигнал логической единицы, первые два младших разряда первых информационных входов четырехвходового мультиплексора, первых информационных входов первого, второго и третьего сумматоров соединены с четвертым и пятым информационными входами блока формирования частного и остатка, первые информационные выходы четырехвходового мультиплексора соединены с информационными входами регистра кода остатка, второй и третий информационные выходы соединены с младшими разрядами информационных входов третьего и четвертого n/2 – разрядных регистров сдвига соответственно, первые управляющие входы которых соединены с первым управляющим входом блока формирования частного и остатка, а вторые управляющие входы соединены со вторым управляющим входом блока формирования частного и остатка и вторым управляющим входом регистра кода остатка, информационные выходы третьего n/2 – разрядного регистра сдвига соединены чётными разрядами вторых информационных выходов блока формирования частного и остатка, а информационная выходы четвертого n/2 – разрядного регистра сдвига соединены с нечётными разрядами его второго информационного выхода, первый управляющий вход четырехвходового мультиплексора соединён со входом первого инвертора и первым входом второго элемента И, второй управляющий вход соединён со входом второго инвертора и с первым входом третьего элемента И, третий управляющий вход соединён со входом третьего инвертора, с управляющим входом четвертого ключа и с первыми входами первого и второго элементов ИЛИ, выход первого инвертора соединён с первым входом первого элемента И, выход второго инвертора соединён со вторыми входами первого и второго элементов И, выход третьего инвертора соединен с третьими входами первого и второго элементов И и со вторым входом третьего элемента И, выход первого элемента И соединен с управляющим входом первого ключа, выход второго элемента И соединён с управляющим входом второго ключа и со вторым входом первого элемента ИЛИ, выход третьего элемента И соединен с управляющим входом третьего ключа и со вторым входом второго элемента ИЛИ, информационные входы первого, второго, третьего и четвертого ключей соединены с первым, вторым, третьим и четвертым информационными входами четырехвходового мультиплексора соответственно, а выходы соединены с первыми, вторыми третьими и четвертыми входами соответственно блока элементов ИЛИ, выходы которого соединены с первыми информационными выходами четырехвходового мультиплексора, выход первого элемента ИЛИ соединен со вторым информационным выходом четырехвходового мультиплексора, а выход второго элемента ИЛИ соединён с его третьим информационным выходом.

Сущность изобретения заключается в реализации следующего способа вычисления остатка R и неполного частного Q от числа A по модулю P. Пусть

где A – целое положительное число, от которого необходимо вычислить остаток;

P – целое положительное число, называемое модулем;

Q – целое положительное число, являющееся неполным частным от деления A на P;

R – целое положительное число, являющееся остатком от деления A на P.

Причем

где ai, – коэффициенты, принимающие значение 0 или 1 в зависимости от значения числа A;

pi, – коэффициенты, принимающие значение 0 или 1 в зависимости от значения модуля P;

qi, – коэффициенты, принимающие значение 0 или 1 в зависимости от значения неполного частного Q;

ri, – коэффициенты, принимающие значение 0 или 1 в зависимости от значения остатка R;

n – количество разрядов в представлении чисел.

Задача состоит в том, чтобы по известным A и P отыскать остаток R и неполное частное Q. Остаток R является в терминах теории чисел вычетом числа A по модулю P, поэтому говорят, что A сравнимо с R:

Значение остатка R может быть вычислено следующим образом:

Перепишем выражение (2) в следующем виде, объединив по два соседних слагаемых:

Из каждой суммы в скобках в выражении (8) вынесем 2i за скобки, где , принимает только четные значения:

В выражении (9) перед каждой из n/2 образовавшихся сумм вида (ai+1·2+ai), получаем множитель 2i, где , принимает только четные значения.

Далее вынесем в (9) наименьшую ненулевую степень 2 за скобки:

Выполняя последовательно преобразование (10) (n/2)-2 раз получим:

где 22 встречается (n/2)-1 раз.

Тогда выражение (7) может быть представлено в следующем виде:

Из теории чисел известно, что операция приведения по модулю инвариантна к сложению и умножению, т. е. величина остатка не зависит от того, вычислен ли он от суммы (произведения) или от каждого слагаемого (сомножителя), затем соответствующие частичные остатки могут быть просуммированы (перемножены) и от результата вычислен остаток по модулю.

Исходя из вышесказанного, выражение (12) может быть вычислено следующим образом.

Вначале на первом такте вычисляют величину

На втором такте вычисляют величину

На третьем такте вычисляют величину

На последнем n/2-м такте вычисляют величину

которая и является искомым остатком R от числа A по модулю P.

Операция приведения по модулю P на каждой ступени преобразования выполняется исходя из следующих соображений.

По определению величина ti-1 лежит в диапазоне 0≤ti-1P-1, поэтому в соответствии с выражениями (13)-(15) величина

до приведения ее по модулю может принимать значения в диапазоне от 0 до 4P-1. Приведение по модулю величины ti осуществляется по следующим правилам

Разряды неполного частного Q на каждом этапе вычислений принимают значения в соответствии с таблицей 1.

Таблица 1.

старший разряд младший разряд Значение ti
0 0 0 ≤ ti < P
0 1 Pti < 2P
1 0 2P ti < 3P
1 1 3P ti < 4P

Условия попадания значения ti в один из указанных в таблице 1 интервалов определяются значениями сигналов переноса на выходах переноса сумматоров, осуществляющих операцию вычитания (tikP), где k=1, 2, 3 в соответствии с таблицей 2.

Таблица 2.

ti tiP ti – 2P ti – 3P
0 ≤ ti < P 0 0 0
Pti < 2P 1 0 0
2P ti < 3P 1 1 0
3P ti < 4P 1 1 1

Таким образом, если значение сигналов переноса равно «1» на выходах переноса всех трех сумматоров, то ti (mod P)=ti - 3P, если значение сигналов переноса равно «1» на выходах переноса двух сумматоров, то
ti (mod P)=ti - 2P, если значение сигнала переноса равно «1» на выходах переноса одного сумматора, то ti (mod P)=ti P. Если значение сигналов переноса равно «0» на выходах переноса всех трех сумматоров, то тогда
ti (mod P)=ti, т.е. операция вычитания не выполняется.

На фиг. 1 представлена схема вычислительного устройства.

Вычислительное устройство содержит первый n/2 – разрядный регистр сдвига 1.1, второй n/2 – разрядный регистр сдвига 1.2, блок формирования частного и остатка 2, входы кода числа устройства 3, входы инверсного кода модуля устройства 4, входы инверсного удвоенного кода модуля устройства 5, входы инверсного утроенного кода модуля устройства 6, выходы кода остатка устройства 7, выходы кода неполного частного устройства 8, вход начала вычисления устройства 9, вход подачи тактовых импульсов устройства 10.

Чётные разряды входа кода числа устройства 3 соединены с информационными входами первого n/2 – разрядного регистра сдвига 1.1, нечётные разряды соединены с информационными входами второго n/2 – разрядного регистра сдвига 1.2.

Входы инверсного кода модуля устройства 4, входы инверсного удвоенного кода модуля устройства 5 и входы инверсного утроенного кода модуля устройства 6 соединены соответственно с первыми, вторыми и третьими информационными входами блока формирования частного и остатка 2.

Вход начала вычисления устройства 9 соединен со вторыми управляющими входами первого 1.1 и второго 1.2 n/2 – разрядных регистров сдвига и со вторым управляющим входом блока формирования частного и остатка 2. Вход подачи тактовых импульсов устройства 10 соединен с первыми управляющими входами 1.1 и второго 1.2 n/2 – разрядных регистров сдвига и с первым управляющим входом блока формирования частного и остатка 2.

Первые информационные выходы блока формирования частного и остатка 2 соединены с выходами кода остатка устройства 7, вторые информационные выходы соединены с выходами кода неполного частного устройства 8.

Выход старшего разряда первого n/2 – разрядного регистра сдвига 1.1 соединён с четвёртым информационным входом блока формирования частного и остатка 2, а выход старшего разряда второго n/2 – разрядного регистра сдвига 1.2 соединён с пятым информационным входом блока формирования частного и остатка 2.

На фиг. 2 представлена схема блока формирования частного и остатка 2.

Блок формирования частного и остатка 2 содержит три сумматора 11.1, 11.2 и 11.3, четырехвходовый мультиплексор 12, регистр кода остатка 13, два n/2 – разрядных регистра сдвига 14.1 и 14.2.

Вторые информационные входы первого 11.1, второго 11.2 и третьего 11.3 сумматоров соединены соответственно с первыми, вторыми и третьими информационными входами блока формирования частного и остатка 2.

Выходы регистра кода остатка 13 соединены с первым информационным выходом блока формирования частного и остатка 2 и со сдвигом на два разряда в сторону старшего с первыми информационными входами четырехвходового мультиплексора 12 и первого 11.1, второго 11.2 и третьего 11.3 сумматоров, информационные выходы которых соединены соответственно со вторыми, третьими и четвертыми информационными входами четырехвходового мультиплексора 12, а выходы переноса соединены соответственно с его первым, вторым и третьим управляющими входами.

На входы переноса первого 11.1, второго 11.2 и третьего 11.3 сумматоров подаётся сигнал логической единицы.

Первые два младших разряда первых информационных входов четырехвходового мультиплексора 12, первых информационных входов первого 11.1, второго 11.2 и третьего 11.3 сумматоров соединены с четвертым и пятым информационными входами блока формирования частного и остатка 2.

Первые информационные выходы четырехвходового мультиплексора 12 соединены с информационными входами регистра кода остатка 13, второй и третий информационные выходы соединены с младшими разрядами информационных входов третьего 14.1 и четвертого 14.2 n/2 – разрядных регистров сдвига соответственно, первые управляющие входы которых соединены с первым управляющим входом блока формирования частного и остатка 2 и первым управляющим входом регистра кода остатка 13, а вторые управляющие входы соединены со вторым управляющим входом блока формирования частного и остатка 2 и вторым управляющим входом регистра кода остатка 13.

Информационные выходы третьего n/2 – разрядного регистра сдвига 14.1 соединены чётными разрядами вторых информационных выходов блока формирования частного и остатка 2, а информационная выходы четвертого n/2 – разрядного регистра сдвига 14.2 соединены с нечётными разрядами его второго информационного выхода.

На фиг. 3 представлена схема четырехвходового мультиплексора 12.

Четырехходовой мультиплексор 12, содержит три инвертора 15.1, 15.2 и 15.3, три элемента И 16, 17 и 18, четыре ключа 19.1, 19.2, 19.3 и 19.4, блок элементов ИЛИ 20, два элемента ИЛИ 21.1 и 21.2.

Первый управляющий вход четырехвходового мультиплексора 12 соединён со входом первого инвертора 15.1 и первым входом второго элемента И 17, второй управляющий вход соединён со входом второго инвертора 15.2 и с первым входом третьего элемента И 18, третий управляющий вход соединён со входом третьего инвертора 15.3, с управляющим входом четвертого ключа 19.4 и с первыми входами первого 21.1 и второго 21.2 элементов ИЛИ.

Выход первого инвертора 15.1 соединён с первым входом первого элемента И 16, выход второго инвертора 15.2 соединён со вторыми входами первого 16 и второго 17 элементов И, выход третьего инвертора 15.3 соединен с третьими входами первого 16 и второго 17 элементов И, а также со вторым входом третьего элемента И 18.

Выход первого элемента И 16 соединен с управляющим входом первого ключа 19.1, выход второго элемента И 17 соединён с управляющим входом второго ключа 19.2 и со вторым входом первого элемента ИЛИ 21.1, выход третьего элемента И 18 соединен с управляющим входом третьего ключа 19.3 и со вторым входом второго элемента ИЛИ 21.2.

Информационные входы первого 19.1, второго 19.2, третьего 19.3 и четвертого 19.4 ключей соединены с первым, вторым, третьим и четвертым информационными входами четырехвходового мультиплексора 12 соответственно, а выходы соединены с первыми, вторыми третьими и четвертыми входами соответственно блока элементов ИЛИ 20, выходы которого соединены с первыми информационными выходами четырехвходового мультиплексора 12.

Выход первого элемента ИЛИ 21.1 соединен со вторым информационным выходом четырехвходового мультиплексора 12, а выход второго элемента ИЛИ 21.2 соединён с его третьим информационным выходом.

Вычислительное устройство работает следующим образом (см. Фиг. 1).

На входы кода числа 3 устройства подается двоичный код числа A, от которого необходимо сформировать остаток R и неполное частное Q по произвольному модулю P. На входы инверсного кода модуля 4 устройства подается инверсный код модуля , поступая далее на первые информационные входы блока 2 формирования частного и остатка. На входы инверсного удвоенного кода модуля 5 устройства подается инверсный удвоенный код модуля , поступая далее на вторые информационные входы блока 2 формирования частного и остатка. На входы инверсного утроенного кода модуля 6 устройства подается инверсный утроенный код модуля , поступая далее на третьи информационные входы блока 2 формирования частного и остатка.

Затем на вход начала вычисления устройства 9 подается сигнал, под воздействием которого в первый n/2 – разрядный регистр сдвига 1.1 записываются четные разряды двоичного кода числа A, а во второй n/2 – разрядный регистр сдвига 1.2 записываются нечетные разряды двоичного кода числа A. Под воздействием этого же сигнала регистр кода остатка 13, третий 14.1 и четвертый 14.2 n/2 – разрядные регистры сдвига блока 2 формирования частного и остатка устанавливаются в нулевое состояние.

Вначале на первом такте работы устройства на четвёртый информационный вход блока 2 формирования частного и остатка с выхода старшего разряда первого n/2 – разрядного регистра сдвига 1.1 поступает значение (an-1)-го разряда числа A, а на пятый информационный вход с выхода старшего разряда второго n/2 – разрядного регистра сдвига 1.2 поступает значение (an-2)-го разряда числа A. В блоке 2 формирования частного и остатка формируется значение t1=(an-1·2+an-2) mod P и разряды qn-1 и qn-2 неполного частного, которые записываются в младшие разряды третьего 14.1 и четвертого 14.2 n/2 – разрядных регистров сдвига соответственно.

На втором такте работы устройства на четвёртый информационный вход блока 2 формирования частного и остатка с выхода старшего разряда первого n/2 – разрядного регистра сдвига 1.1 поступает значение (an-3)-го разряда числа A, а на пятый информационный вход с выхода старшего разряда второго n/2 – разрядного регистра сдвига 1.2 поступает значение (an-4)-го разряда числа A. В блоке 2 формирования частного и остатка формируется значение
t2=(22 t1+(an-3·2+an-4)) mod P и разряды qn-3 и qn-4 неполного частного. При этом разряды qn-1 и qn-2 неполного частного сдвигаются на один разряд в сторону старших в третьем 14.1 и четвертом 14.2 n/2 – разрядном регистрах сдвига соответственно, а в младшие разряды этих регистров записываются соответственно разряды qn-3 и qn-4 неполного частного.

На последнем n/2-м такте работы устройства на четвёртый информационный вход блока 2 формирования частного и остатка с выхода старшего разряда первого n/2 – разрядного регистра сдвига 1.1 поступает значение a1 - го разряда числа A, а на пятый информационный вход с выхода старшего разряда второго n/2 – разрядного регистра сдвига 1.2 поступает значение a0 - го разряда числа A. В блоке 2 формирования частного и остатка формируется значение tn/2=(22tn/2-1+(a1·2+a0)) mod P, которое и является искомым остатком R от числа A по модулю P, а также формируются разряды q1 и q0 неполного частного. При этом значение tn/2 будет записано в регистр 13 кода остатка и поступит на выходы 7 кода остатка устройства, четные разряды неполного частного будут записаны в третий 14.1 n/2 – разрядный регистр сдвига, а нечетные разряды неполного частного будут записаны в четвертый 14.2 n/2 – разрядный регистр сдвига и поступят на выходы 8 кода неполного частного устройства.

Блок 2 формирования частного и остатка работает следующим образом (см. Фиг. 2).

На вторые информационные входы первого 11.1, второго 11.2 и третьего 11.3 сумматоров в течение всего цикла вычисления остатка R и неполного частного Q от числа A по модулю P с первых, вторых и третьих информационных входов блока 2 формирования частного и остатка подается соответственно инверсный код модуля , инверсный удвоенный код модуля и инверсный утроенный код модуля . На входы переноса первого 11.1, второго 11.2 и третьего 11.3 сумматоров подается сигнал логической единицы. В результате первый 11.1, второй 11.2 и третий 11.3 сумматоры выполняют фактически операцию арифметического вычитания из числа, подаваемого на их первые информационные входы, модуля P, 2P или 3P соответственно. В случае, если число на первых информационных входах сумматоров 11.1, 11.2 и 11.3 больше или равно чем число на их вторых информационных входах, то на выходе переноса соответствующего сумматора появляется сигнал логической единицы.

На первом такте работы устройства c четвёртого и пятого информационных входов блока 2 формирования частного и остатка значения (an-1)-го и (an-2)-го разряда числа A поступают на младшие разряды первых информационных входов четырехвходового мультиплексора 12, первого 11.1, второго 11.2 и третьего 11.3 сумматоров. На вторые, третьи и четвёртые информационные входы четырехвходового мультиплексора 12, с информационных выходов первого 11.1, второго 11.2 и третьего 11.3 сумматоров поступают соответственно значения (an-12+ an-2)-P, (an-12+ an-2)-2P и (an-12+ an-2)-3P, а на первый, второй и третий управляющие входы с выходов переноса первого 11.1, второго 11.2 и третьего 11.3 сумматоров поступают соответственно значения сигналов переноса. На первых информационных выходах четырехвходового мультиплексора 12 окажется величина
t1=(an-1·2+an-2) mod P, которая под воздействием тактового импульса с первого управляющего входа блока 2 формирования частного и остатка будет записана в регистр кода остатка 13, а на втором и третьем информационных выходах будут сформированы разряды qn-1 и qn-2 неполного частного, которые под воздействием этого же тактового импульса будут записаны в младшие разряды третьего 14.1 и четвертого 14.2 n/2 – разрядных регистров сдвига.

На втором такте работы устройства на первых информационных входах четырехвходового мультиплексора 12, первого 11.1, второго 11.2 и третьего 11.3 сумматоров будет сформировано значение 22t1+(an-3·2+an-4), причем значение t1 поступит с выхода регистра кода остатка 13 со сдвигом на два разряда в сторону старших, а значения an-3·и an-4 поступят на младшие разряды с четвертого и пятого информационных входов блока 2 формирования частного и остатка. В результате суммирования на вторых, третьих и четвертых информационных входах четырехвходового мультиплексора 12 окажутся величины 22t1+(an-3·2+an-4)-P, 22t1+(an-3·2+an-4)-2P и
22t1+(an-3·2+an-4)-3P соответственно, а на первом, втором и третьем управляющем входах окажутся сигналы переноса с выходов переноса первого 11.1, второго 11.2 и третьего 11.3 сумматоров. Четырехвходовый мультиплексор 12 в соответствии с логикой своей работы сформирует на своих первых информационных выходах величину t2=(22t1+(an-32+an-4)) mod P, которая под воздействием тактового импульса с первого управляющего входа блока 2 формирования частного и остатка будет записана в регистр кода остатка 13, а на втором и третьем информационных выходах будут сформированы разряды qn-3 и qn-4 неполного частного, которые под воздействием этого же тактового импульса будут записаны в младшие разряды третьего 14.1 и четвертого 14.2 n/2 – разрядных регистров сдвига. При этом разряды qn-1 и qn-2 неполного частного в третьем 14.1 и четвертом 14.2 n/2 – разрядных регистров сдвига соответственно будут сдвинуты на один в сторону старших.

На последнем n/2-м такте работы устройства на первых информационных входах четырехвходового мультиплексора 12, первого 11.1, второго 11.2 и третьего 11.3 сумматоров будет сформировано значение
22tn/2-1+(a1·2+a0), причем значение tn/2-1 поступит с выхода регистра кода остатка 13 со сдвигом на два разряда в сторону старших, а значения a1·и a0 поступят на младшие разряды с четвертого и пятого информационных входов блока 2 формирования частного и остатка. В результате суммирования на вторых, третьих и четвертых информационных входах четырехвходового мультиплексора 12, окажутся величины 22tn/2-1+(a1·2+a0)-P, 22tn/2-1+(a1·2+a0)-2P и 22tn/2-1+(a1·2+a0)-3P соответственно, а на первом, втором и третьем управляющем входах окажутся сигналы переноса с выходов переноса первого 11.1, второго 11.2 и третьего 11.3 сумматоров. Четырехвходовый мультиплексор 12 в соответствии с логикой своей работы сформирует на своих первых информационных выходах величину tn/2=(22tn/2-1+(a12+a0))mod P, которая под воздействием тактового импульса с первого управляющего входа блока 2 формирования частного и остатка будет записана в регистр кода остатка 13, а на втором и третьем информационных выходах будут сформированы разряды q1 и q0 неполного частного, которые под воздействием этого же тактового импульса будут записаны в младшие разряды третьего 14.1 и четвертого 14.2 n/2 – разрядных регистров сдвига с одновременным сдвигом ранее записанных разрядов на один в сторону старших.

В результате после n/2 – го такта работы на первых информационных выходах блока 2 формирования частного и остатка будет сформирован код остатка R от числа A по модулю P, а на вторых информационных выходах неполное частное Q.

Четырехвходовый мультиплексор 12 работает следующим образом (см. Фиг. 3).

На i-м такте работы устройства, где , на первом информационном входе четырехвходового мультиплексора 12 образуется значение ti=22ti-1+(an-2i-1·2+an-2i), на втором, третьем и четвертом информационных входах образуются значения ti-P, ti-2P и ti-3P соответственно, при этом t0=0.

Управляющие сигналы четырехвходового мультиплексора 12 открывают один из ключей 19.1-19.4.

Если управляющий сигнал появляется на всех трех управляющих входах четырехвходового мультиплексора 12, то окажется открытым четвертый ключ 19.4. Управляющий сигнал с третьего управляющего входа откроет четвертый ключ 19.4 и через третий инвертор 15.3 в виде логического нуля поступит на третьи входы элементов 16 и 17 И, а также на второй вход элемента И 18, запрещая прохождение управляющих сигналов с их первых входов на их выходы. В результате первый 19.1, второй 19.2 и третий 19.3 ключи окажутся закрытыми и на выход четырехвходового мультиплексора 12 поступит значение ti-3P с его четвертых информационных входов.

Если управляющий сигнал появляется на первом и втором управляющих входах четырехвходового мультиплексора 12, то аналогичным образом окажется открытым только третий 19.3, а первый 19.1, второй 19.2 и четвертый ключи 19.4 окажутся закрытыми. В результате на выход четырехвходового мультиплексора 12 поступит значение ti-2P с его третьих информационных входов.

Если управляющий сигнал появляется только на первом управляющем входе четырехвходового мультиплексора 12, то аналогичным образом окажется открытым только второй ключ 19.2, а первый 19.1, третий 19.3 и четвертый 19.4 ключи окажутся закрытыми. В результате на выход четырехвходового мультиплексора 12 поступит значение ti-P с его вторых информационных входов.

Если же на управляющих входах четырехвходового мультиплексора 12 будут только нулевые сигналы, то они, поступая через инверторы 15.1-15.3 и первый элемент И 16, откроют первый ключ 19.1 и на выход четырехвходового мультиплексора 12 поступит значение ti с его первых информационных входов.

Значения с выходов ключей 19.1-19.4 поступают через блок элементов ИЛИ 20 на первые информационные выходы четырехвходового мультиплексора 12.

В результате на первом информационном выходе четырехвходового мультиплексора 12 всегда образуется значение (22ti-1+(an-2i-1·2+an-2i)) mod P.

Разряды неполного частного Q формируются на втором и третьем информационных выходах четырехвходового мультиплексора 12 с помощью первого 21.1 и второго 21.2 элементов ИЛИ в соответствии с логикой таблиц 1 и 2.

Технико-экономическая эффективность изобретения заключается в увеличении быстродействия формирования остатка от числа по модулю и неполного частного. Так устройство прототип осуществляет вычисление остатка от n – разрядного числа по произвольному n – разрядному модулю за n тактов работы. Изобретение аналогичное вычисление осуществляет за n/2 тактов работы за счет параллельной обработки четных и нечетных разрядов входного числа. При этом увеличение быстродействия произойдет в 2 раза.

Источники информации

1. Петренко В.И., Сидорчук А.В. Вычислительное устройство // Патент России №2348965. Опубл. 10.03.2009. Бюл. №7.

2. Петренко В.И., Чипига А.Ф. Устройство для формирования остатка по произвольному модулю от числа. Патент России №2012137. Опубл. 30.04.1994.

3. Петренко В.И. Вычислительное устройство // Патент России №2661797. Опубл. 19.07.2018. Бюл. № 20.

Вычислительное устройство, содержащее регистр кода числа, блок формирования частного и остатка, содержащий первый сумматор, регистр кода остатка, регистр кода неполного частного, входы кода числа, входы инверсного кода модуля, выходы кода остатка, выходы кода неполного частного, вход начала вычисления, вход подачи тактовых импульсов, причём входы кода числа соединены с информационными входами регистра кода числа, первые информационные входы блока формирования частного и остатка соединены со входами инверсного кода модуля, первые информационные выходы соединены с выходами кода остатка устройства, вторые информационные выходы соединены с выходами кода неполного частного устройства, первый управляющий вход соединён со входом подачи тактовых импульсов устройства, выходы регистра кода остатка соединены с первыми информационными выходами блока формирования частного и остатка, выходы регистра неполного частного соединены со вторыми информационными выходами блока формирования частного и остатка, вторые информационные входы первого сумматора соединены с первыми информационными входами блока формирования частного и остатка, на вход переноса подаётся сигнал логической единицы, первый управляющий вход регистра кода остатка соединён с первым управляющим входом блока формирования частного и остатка, отличающееся тем, что регистр кода числа выполнен в виде двух n/2 – разрядных регистров сдвига, в блок формирования частного и остатка введены два сумматора, четырехвходовый мультиплексор, а регистр кода остатка выполнен в виде двух n/2 – разрядных регистров сдвига, причём четырехвходовой мультиплексор содержит три инвертора, три элемента И, четыре ключа, блок элементов ИЛИ, два элемента ИЛИ, при этом чётные разряды входа кода числа устройства соединены с информационными входами первого n/2 – разрядного регистра сдвига, а нечётные разряды соединены с информационными входами второго n/2 – разрядного регистра сдвига, вход подачи тактовых импульсов устройства соединен с первыми управляющими входами первого и второго n/2 – разрядных регистров сдвига, вход начала вычисления устройства соединен со вторыми управляющими входами первого и второго n/2 – разрядных регистров сдвига и со вторым управляющим входом блока формирования частного и остатка, вторые и третьи информационные входы которого соединены соответственно со входами инверсного удвоенного кода модуля устройства и со входами инверсного утроенного кода модуля устройства, выход старшего разряда первого n/2 – разрядного регистра сдвига соединён с четвёртым информационным входом блока формирования частного и остатка, а выход старшего разряда второго n/2 – разрядного регистра сдвига соединён с пятым информационным входом блока формирования частного и остатка, вторые информационные входы второго и третьего сумматоров соединены соответственно со вторыми и третьими информационными входами блока формирования частного и остатка, выходы регистра кода остатка соединены с первым информационным выходом блока формирования частного и остатка и со сдвигом на два разряда в сторону старшего с первыми информационными входами четырехвходового мультиплексора и первого, второго и третьего сумматоров, информационные выходы которых соединены соответственно со вторыми, третьими и четвертыми информационными входами четырехвходового мультиплексора, а выходы переноса соединены соответственно с его первым, вторым и третьим управляющими входами, на входы переноса второго и третьего сумматоров подаётся сигнал логической единицы, первые два младших разряда первых информационных входов четырехвходового мультиплексора, первых информационных входов первого, второго и третьего сумматоров соединены с четвертым и пятым информационными входами блока формирования частного и остатка, первые информационные выходы четырехвходового мультиплексора соединены с информационными входами регистра кода остатка, второй и третий информационные выходы соединены с младшими разрядами информационных входов третьего и четвертого n/2 – разрядных регистров сдвига соответственно, первые управляющие входы которых соединены с первым управляющим входом блока формирования частного и остатка, а вторые управляющие входы соединены со вторым управляющим входом блока формирования частного и остатка и вторым управляющим входом регистра кода остатка, информационные выходы третьего n/2 – разрядного регистра сдвига соединены чётными разрядами вторых информационных выходов блока формирования частного и остатка, а информационные выходы четвертого n/2 – разрядного регистра сдвига соединены с нечётными разрядами его второго информационного выхода, первый управляющий вход четырехвходового мультиплексора соединён со входом первого инвертора и первым входом второго элемента И, второй управляющий вход соединён со входом второго инвертора и с первым входом третьего элемента И, третий управляющий вход соединён со входом третьего инвертора, с управляющим входом четвертого ключа и с первыми входами первого и второго элементов ИЛИ, выход первого инвертора соединён с первым входом первого элемента И, выход второго инвертора соединён со вторыми входами первого и второго элементов И, выход третьего инвертора соединен с третьими входами первого и второго элементов И и со вторым входом третьего элемента И, выход первого элемента И соединен с управляющим входом первого ключа, выход второго элемента И соединён с управляющим входом второго ключа и со вторым входом первого элемента ИЛИ, выход третьего элемента И соединен с управляющим входом третьего ключа и со вторым входом второго элемента ИЛИ, информационные входы первого, второго, третьего и четвертого ключей соединены с первым, вторым, третьим и четвертым информационными входами четырехвходового мультиплексора соответственно, а выходы соединены с первыми, вторыми, третьими и четвертыми входами соответственно блока элементов ИЛИ, выходы которого соединены с первыми информационными выходами четырехвходового мультиплексора, выход первого элемента ИЛИ соединен со вторым информационным выходом четырехвходового мультиплексора, а выход второго элемента ИЛИ соединён с его третьим информационным выходом.
Источник поступления информации: Роспатент

Showing 11-20 of 89 items.
26.08.2017
№217.015.e36b

Способ определения высотного профиля электронной концентрации неоднородной ионосферы

Изобретение относится к радиотехнике и геофизике, а именно к средствам мониторинга состояния ионосферы и измерения ее параметров с использованием космических аппаратов спутниковых радионавигационных систем. Достигаемый технический результат - обеспечение возможности одновременного определения...
Тип: Изобретение
Номер охранного документа: 0002626404
Дата охранного документа: 27.07.2017
26.08.2017
№217.015.e3a0

Способ фиксации пересечения или касания оси времени траекторией сигнала

Изобретение относится к измерительной технике, в частности к способам определения временных параметров сигнала. Способ фиксации пересечения или касания оси времени наблюдаемым сигналом заключается в том, что формируют первый вспомогательный сигнал, параллельный оси времени и отстоящий от нее на...
Тип: Изобретение
Номер охранного документа: 0002626317
Дата охранного документа: 25.07.2017
26.08.2017
№217.015.e59d

Умножитель по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах для формирования элементов конечных полей. Технический результат заключается в сокращении объема используемого оборудования умножителя на два по модулю за счет...
Тип: Изобретение
Номер охранного документа: 0002626654
Дата охранного документа: 31.07.2017
26.08.2017
№217.015.e9a6

Арифметико-логическое устройство для вычитания чисел по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в криптографических приложениях. Технический результат заключается в расширении арсенала средств за счет обеспечения вычитания чисел именно по модулю. Устройство содержит...
Тип: Изобретение
Номер охранного документа: 0002628175
Дата охранного документа: 15.08.2017
26.08.2017
№217.015.e9f7

Устройство деления модулярных чисел

Изобретение относится к вычислительным модулярным системам и предназначено для выполнения деления чисел, представленных в системе остаточных классов (СОК). Технический результат – обеспечение возможности деления с отрицательными числами, представленными в системе остаточных классов. Устройство...
Тип: Изобретение
Номер охранного документа: 0002628179
Дата охранного документа: 15.08.2017
26.08.2017
№217.015.ea1f

Арифметико-логическое устройство для сложения чисел по модулю

Изобретение относится к устройствам для сложения чисел по модулю, относится к вычислительной технике, в устройствах цифровой обработки сигналов и в криптографических приложениях. Технический результат заключается в расширении арсенала средств за счет обеспечения суммирования чисел именно по...
Тип: Изобретение
Номер охранного документа: 0002628180
Дата охранного документа: 15.08.2017
29.12.2017
№217.015.f251

Композиция для приготовления желейного мармелада с пробиотическими свойствами и способ его получения

Изобретение относится к пищевой промышленности, в частности к производству кондитерских изделий, и может быть использовано при производстве мармелада с функциональными свойствами. Композиция для приготовления желейного мармелада с пробиотическими свойствами включает агар, стевиозид, натуральный...
Тип: Изобретение
Номер охранного документа: 0002636762
Дата охранного документа: 28.11.2017
29.12.2017
№217.015.f866

Арифметико-логическое устройство для сложения и вычитания чисел по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах цифровой обработки сигналов и в криптографических приложениях. Техническим результатом изобретения является обеспечение возможности выполнения операции...
Тип: Изобретение
Номер охранного документа: 0002639645
Дата охранного документа: 21.12.2017
19.01.2018
№218.016.036b

Умножитель по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах для формирования элементов конечных полей. Техническим результатом является сокращение объема используемого оборудования умножителя по модулю за счет исключения...
Тип: Изобретение
Номер охранного документа: 0002630386
Дата охранного документа: 07.09.2017
19.01.2018
№218.016.03d0

Способ получения биологически активной субстанции с пребиотическим эффектом на основе medusomyces gysevii

Изобретение относится к биотехнологии и сельскому хозяйству, в частности к способу получения биологически активной субстанции на основе плотной биомассы (зооглеи) Medusomyces gysevii (чайный гриб). Способ получения биологически активной субстанции с пребиотическим эффектом из плотной биомассы...
Тип: Изобретение
Номер охранного документа: 0002630457
Дата охранного документа: 08.09.2017
Showing 11-20 of 27 items.
13.02.2018
№218.016.254d

Накапливающий сумматор

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в цифровых синтезаторах частот широкополосных систем связи. Техническим результатом является сокращение объема оборудования и уменьшение энергопотребления. Устройство содержит...
Тип: Изобретение
Номер охранного документа: 0002642366
Дата охранного документа: 24.01.2018
18.05.2018
№218.016.516d

Арифметико-логическое устройство для умножения чисел по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах цифровой обработки сигналов и в криптографических приложениях. Техническим результатом является реализация умножения чисел по модулю. Устройство содержит...
Тип: Изобретение
Номер охранного документа: 0002653263
Дата охранного документа: 07.05.2018
21.07.2018
№218.016.733e

Вычислительное устройство

Изобретение относится к вычислительному устройству. Технический результат заключается в расширении функциональных возможностей за счет обеспечения вычисления остатка и неполного частного. Вычислительное устройство содержит связанные первый n-разрядный регистр и блок формирования частного и...
Тип: Изобретение
Номер охранного документа: 0002661797
Дата охранного документа: 19.07.2018
03.08.2019
№219.017.bca8

Арифметико-логическое устройство для формирования остатка по произвольному модулю от числа

Изобретение относится в вычислительной технике. Технический результат заключается в уменьшении энергопотребления. Устройство содержит три n-разрядных регистра, где n – разрядность входных чисел, инвертор, (n+1)-разрядный сумматор, мультиплексор, электронный ключ, входную и выходную n-разрядные...
Тип: Изобретение
Номер охранного документа: 0002696223
Дата охранного документа: 31.07.2019
02.10.2019
№219.017.cf65

Способ косвенного измерения углов поворота в суставах руки оператора

Изобретение относится к системам управления и может быть использовано при создании задающих устройств для систем копирующего управления, реализованных в виде экзоскелета с нежесткими креплениями к телу оператора. Предложен способ косвенного измерения углов поворота в суставах руки оператора,...
Тип: Изобретение
Номер охранного документа: 0002700118
Дата охранного документа: 12.09.2019
27.12.2019
№219.017.f28d

Комплекс управления антропоморфным манипулятором

Изобретение относится к робототехнике и может быть использовано в системах копирующего управления антропоморфными манипуляторами. Комплекс содержит блок механической системы задающего устройства, блок датчиков задающего устройства, блок управления приводами антропоморфного манипулятора, блок...
Тип: Изобретение
Номер охранного документа: 0002710290
Дата охранного документа: 25.12.2019
27.12.2019
№219.017.f365

Радиоуправляемый замок с имитозащищенным обменом командами

Изобретение относится к области техники, занимающейся разработкой и изготовлением разнообразных радиоуправляемых запорных устройств жилых и нежилых помещений, сейфов, шкафов, ворот, и может быть использовано для защиты доступа к физическим объектам различной формы собственности. Технический...
Тип: Изобретение
Номер охранного документа: 0002710471
Дата охранного документа: 26.12.2019
17.01.2020
№220.017.f66d

Арифметико-логическое устройство для сложения, вычитания и умножения чисел по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, в устройствах цифровой обработки сигналов, а также в криптографических приложениях. Техническим результатом является обеспечение умножения, сложения и вычитания чисел по модулю....
Тип: Изобретение
Номер охранного документа: 0002711051
Дата охранного документа: 14.01.2020
28.03.2020
№220.018.10f8

Вычислительное устройство

Вычислительное устройство относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах цифровой обработки сигнала и в криптографических приложениях. Технический результат - сокращение объема оборудования и, как следствие, уменьшение...
Тип: Изобретение
Номер охранного документа: 0002717915
Дата охранного документа: 26.03.2020
27.06.2020
№220.018.2b7e

Способ копирующего управления манипуляторами антропоморфного робота

Изобретение относится к робототехнике и может быть использовано в системах копирующего управления манипуляторами антропоморфного робота. Способ копирующего управления манипуляторами антропоморфного робота предусматривает копирование движений рук оператора не по вектору углов поворота в суставах...
Тип: Изобретение
Номер охранного документа: 0002724769
Дата охранного документа: 25.06.2020
+ добавить свой РИД