×
26.08.2017
217.015.e59d

Результат интеллектуальной деятельности: УМНОЖИТЕЛЬ ПО МОДУЛЮ

Вид РИД

Изобретение

Аннотация: Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах для формирования элементов конечных полей. Технический результат заключается в сокращении объема используемого оборудования умножителя на два по модулю за счет исключения из схемы всех четных умножителей на константу, а также части инверторов. Предлагаемый умножитель по модулю p позволяет достичь данный результат путем исключения из схемы всех четных умножителей на константу, а также части инверторов. Умножение по модулю производится путем параллельного выполнения n-1 операций. В ходе i-й операции значение z=x⋅y, где x и y - значения входных чисел сравнивается со значением i⋅p путем вычисления разности z-i⋅p, где i=1, …, n. Как только при выполнении i-й операции значение полученной разности станет отрицательным, результатом умножения чисел x и у по модулю p будет являться значение разности, полученное в результате (i-1)-й операции. Диапазон значений входных чисел для данного умножителя определяется размером умножителя и находится в пределах [0, …, р-1]. 1 ил.

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

Известно устройство для умножения чисел по модулю, содержащее сумматор и мультиплексор (см. патент РФ №2015537, кл. G06F 7/49, 30.06.1994).

Недостатком данного устройства являются его ограниченные функциональные возможности, а именно ограниченный диапазон значений входных чисел x(0<x≤p-1), где p - значение модуля, по которому производится вычисление), а также отсутствие возможности умножения на число, отличное от двух.

Известно устройство для умножения чисел на два по модулю, содержащее сумматоры, инверторы, умножители и мультиплексор (см. патент РФ №2299460, кл. G06F 7/523, 05.10.2005).

Недостатком данного устройства являются его ограниченные функциональные возможности, а именно ограниченный диапазон значений входных чисел x(0<x≤(n/2)p-1), а также отсутствие возможности умножения на число отличное от двух.

Наиболее близким по технической сущности к заявляемому изобретению является устройство для умножения чисел по модулю, содержащее умножитель, сумматоры, инверторы, умножители на константу, мультиплексор (см. патент РФ №2299461, кл. G06F 7/523, 25.05.2005).

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

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

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

При перемножении значений входных чисел x и y, представленных в двоичной форме, с последующим приведением полученного значения z=x⋅y по модулю p, значение z=x⋅y сравнивается со значением модуля p. Если полученное значение z≥p, то из z вычитается значение модуля p, а полученное в результате значение z1=z-p вновь сравнивается со значением р. Если и в этом случае значение z1≥p, то из z1 вновь вычитается значение p, а полученное в результате значение z2=z1-p сравнивается со значением р. Данные операции проводятся до тех пор, пока значение zi, полученное на n-м шаге вычислений, не станет меньше значения модуля р. В этом случае значение z является результатом умножения числа x на число у по модулю р. Если уже на первом шаге входное значение z<p, значение z остается без изменений и является результатом умножения числа x на число y по модулю p.

Предлагаемый умножитель по модулю осуществляет данный метод путем параллельного выполнения n-1 операций, где n=2N-1, N - разрядность сомножителей и модуля. В ходе i-й операции значение z=x⋅y сравнивается со значением i⋅p путем вычисления разности z-i⋅p, где i=1 , …, n. Как только при выполнении i-й операции значение полученной разности станет отрицательным, результатом умножения числа x на число y по модулю p будет являться значение разности, полученное в результате (i-1)-й операции. Уменьшение объема оборудования достигается за счет исключения части умножителей на константу, осуществляющих умножение модуля p на четные числа. Получение недостающих произведений i⋅p, где i - четное, достигается путем сдвига произведений на один разряд в сторону старшего, что эквивалентно в двоичной системе счисления умножению на 2. Например, произведение 6р может быть получено из произведения 3p путем сдвига разрядов на один в сторону старшего. Таким образом, достаточно иметь лишь умножители на константу для нечетных констант, а умножители на константу для четных констант можно исключить.

На фиг. 1 представлена схема умножителя по модулю.

Умножитель по модулю содержит умножитель 1, (n-1) сумматоров 2, (n-1)/2 инверторов 3, (n-1)/2-1 умножителей на константу 4, и мультиплексор 5, содержащий n информационных и (n-1) управляющих входов. Входы 6 и 7 служат для подачи двоичных кодов умножаемых чисел х и у, вход 8 служит для подачи двоичного кода модуля р. Выход 9 является выходом устройства.

Умножитель по модулю работает следующим образом.

На вход 6 подается двоичный код числа x, на вход 7 - двоичный код числам, причем оба числа принадлежат диапазону [0, …, (р-1)], где p - модуль. Данные коды подаются на входы умножителя 1, который на выходе формирует двоичный код числа z=x⋅y. Код числа z поступает на первые входы сумматоров 2 и на первый информационный вход мультиплексора 5. Со входа 8 устройства двоичный код модуля p подается на вход первого инвертора 3 и на входы умножителей на константу 4. Значение модуля в j-м умножителе на константу 4 умножается на значение i=2 j+1, где j=1, …, (n-1)/2-1 - порядковый номер умножителя на константу. С выхода j-го умножителя на константу 4 код значения i⋅p поступает на вход (j+1)-го инвертора, где j=1, …, (n-1)/2-1. Инверсный код с выходов k-x инверторов 3 подается на вторые входы 2k-1-х сумматоров 2 и дополнительно со сдвигом на вторые входы l⋅2S-х сумматоров 2, где , s=1, 2, 3 … и , при этом сдвиг осуществляется на s разрядов в сторону старшего, а к младшим s разрядам вторых входов соответствующих сумматоров 2 подключен вход записи логической единицы. На вход переноса каждого сумматора 2 поступает код числа «1», служащий для перевода инверсного кода модуля в дополнительный код.

В общем виде сумматор 2 осуществляет операцию, описываемую выражением: , где с - результат суммирования, z=x⋅y - результат умножения входных чисел, i - номер сумматора, p - модуль. Старший разряд сформированного значения с поступает на выход переноса сумматора 2, остальные разряды представляют разность z-i⋅p и поступают на информационный выход сумматора 2.

До тех пор, пока значение z превышает значение i⋅p, на выходе переноса i-го сумматора 2 будет формироваться логическая «1», которая будет поступать на i-й управляющий вход мультиплексора 5. При превышении значением i⋅p значения z на выходе переноса i-го сумматора 2 сформируется логический «0». При поступлении с выхода переноса i-го сумматора 2 на i-й управляющий вход мультиплексора 5 логического «0» мультиплексор 5 переключит на выход 9 информационный вход, на который подается значение с информационного выхода (i-1)-го сумматора 2. Данное значение будет представлять результат умножения числа x на число у по модулю p.

Рассмотрим работу умножителя на примере.

Пусть х=510=0001012, y=310=0000112, z=x⋅y=1510=0011112, p=710=0001112, Как показано выше, i-й сумматор 2 формирует значение , поэтому для второго сумматора i⋅р=2⋅p=1410=0011102, для третьего сумматора i⋅p=3⋅р=2110=0101012, Тогда первый сумматор 2 сформирует значение c1=0011112+1110002+1=10010002, второй - с2=0011112+1100012+1=10000012, третий - с3=00011112+1010102+1=01110102.

Как видно из примера, на выходах переноса первых двух сумматоров 2 сформировано значение «1», на выходе же третьего сумматора 2 сформировано значение «0», поэтому на выход 9 мультиплексора 5 поступит значение с информационного выхода второго сумматора 2, равное 0000012=110. Так как (5⋅3)≡1(mod7), то правильность работы устройства очевидна.

Пусть теперь х=410=001002, y=310=000112, z=x⋅y=12l0=011002, р=1510=011112, В этом случае первый сумматор 2 сформирует значение с1=011002+100002+1=0111012. Так как уже первый сумматор на выходе переноса формирует символ «0», на выход 9 мультиплексора поступит значение с выхода умножителя 1, то есть z=x⋅y=011002=1210=(4⋅3)(mod 15).

Эффективность сокращения затрат на оборудование при использовании данного устройства определяется уменьшением количества умножителей на константу и инверторов. В общем случае количество умножителей на константу в предлагаемом устройстве в (2n-2)/(n-3) раз, а инверторов - в 2 раза меньше, чем в устройстве прототипе.

Умножитель по модулю, состоящий из умножителя, (n-1) сумматоров, где n=2-1, N - разрядность кода модуля, (n-1)/2-1 умножителей на константу, (n-1)/2 инверторов и мультиплексора, содержащего n информационных и (n-1) управляющих входов, причем вход записи двоичного кода первого из умножаемых чисел подключен к первому входу умножителя, вход записи двоичного кода второго умножаемого числа подключен ко второму входу умножителя, выход которого подключен к первому информационному входу мультиплексора и первым входам всех сумматоров, выход переноса i-го сумматора подключен к i-му управляющему входу мультиплексора, информационный выход i-го сумматора подключен к (i+1)-му информационному входу мультиплексора, где i=1, …, (n-1), ко входу переноса каждого сумматора подключен вход записи логической единицы, вход записи двоичного кода модуля устройства подключен ко входу первого инвертора и ко входу каждого умножителя на константу, выход j-го умножителя на константу соединен со входом (k+1)-го инвертора, где j=1, …, (n-1)/2 -1, а k=1, …,(n-1)/2, выход k-го инвертора соединен со вторым входом соответствующего нечетного i-го сумматора, выход мультиплексора является выходом устройства, отличающийся тем, что выходы k-х инверторов дополнительно подключены ко вторым входам l⋅2-х сумматоров, где , s=1, 2, 3 … и со сдвигом на s разрядов в сторону старшего, а к младшим s разрядам соответствующих сумматоров подключен вход записи логической единицы.
УМНОЖИТЕЛЬ ПО МОДУЛЮ
УМНОЖИТЕЛЬ ПО МОДУЛЮ
УМНОЖИТЕЛЬ ПО МОДУЛЮ
УМНОЖИТЕЛЬ ПО МОДУЛЮ
Источник поступления информации: Роспатент

Показаны записи 61-70 из 93.
02.10.2019
№219.017.cf65

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

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

Способ гидроразрыва нефтяного или газового пласта

Изобретение относится к горному делу и может быть применено для гидроразрыва продуктивного пласта. Способ включает добавление в жидкость гидроразрыва расклинивающего агента частиц керамического проппанта и его доставку на первом этапе в удаленную часть трещины гидроразрыва, с сохранением частиц...
Тип: Изобретение
Номер охранного документа: 0002703572
Дата охранного документа: 21.10.2019
30.10.2019
№219.017.db8f

Гипсовая смесь для изготовления гипсокартонных плит

Настоящее изобретение относится к гипсовым составам для производства гипсокартонных плит. Сырьевая смесь для производства гипсокартонных плит, включающая гипс, воду, технический лигносульфонат при водогипсовом отношении 0,5-0,6, дополнительно содержит синтетический латекс, серу, оксид цинка,...
Тип: Изобретение
Номер охранного документа: 0002704406
Дата охранного документа: 28.10.2019
27.12.2019
№219.017.f28d

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

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

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

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

Состав для получения газобетона

Изобретение относится к области строительных материалов и может быть использовано при изготовлении теплоизоляционных и теплоизоляционно-конструкционных изделий из газобетона неавтоклавного твердения, применяемых для строительства жилых, административных и промышленных зданий и сооружений....
Тип: Изобретение
Номер охранного документа: 0002710579
Дата охранного документа: 27.12.2019
17.01.2020
№220.017.f66d

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

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

Модифицированное устройство коррекции ошибок с учетом сигнала стирания

Изобретение относится к телемеханике и вычислительной технике и может быть использовано в системах передачи и обработки дискретной информации для коррекции ошибок в одноименных символах с учетом сигнала стирания при семикратном повторении сообщения. Технический результат - повышение...
Тип: Изобретение
Номер охранного документа: 0002711035
Дата охранного документа: 14.01.2020
24.01.2020
№220.017.f952

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении корректирующих способностей устройства для вычисления сумм парных произведений. Устройство содержит преобразователь кода СОК в позиционный код, счетчик тактов, блок коррекции ошибки, модульный...
Тип: Изобретение
Номер охранного документа: 0002711731
Дата охранного документа: 21.01.2020
06.02.2020
№220.017.fec8

Способ построения системы опознавания "свой-чужой" на основе протокола с нулевым разглашением, реализованный в модулярном коде

Изобретение относится к радиотехнике и может быть использовано для определения государственной принадлежности подвижных объектов и их опознавания. Техническим результатом, достигаемым при осуществлении заявленного изобретения, является повышение скорости аутентификации объекта за счет...
Тип: Изобретение
Номер охранного документа: 0002713511
Дата охранного документа: 05.02.2020
Показаны записи 41-45 из 45.
09.07.2020
№220.018.3095

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

Изобретение относится к робототехнике и может быть использовано в системах копирующего управления манипуляторами антропоморфного робота, работающими в паре. Комплекс копирующего управления манипуляторами антропоморфного робота содержит блок механической системы задающего устройства, блок...
Тип: Изобретение
Номер охранного документа: 0002725930
Дата охранного документа: 07.07.2020
23.04.2023
№223.018.51d7

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении быстродействия вычислительного устройства. Вычислительное устройство для вычисления неполного частного и остатка содержит сумматоры и мультиплексоры, причем мультиплексоры содержат элементы ИЛИ,...
Тип: Изобретение
Номер охранного документа: 0002739338
Дата охранного документа: 23.12.2020
03.06.2023
№223.018.7677

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

Вычислительное устройство относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, устройствах цифровой обработки сигналов, в криптографических приложениях, а также в устройствах для формирования кодовых последовательностей, построение которых...
Тип: Изобретение
Номер охранного документа: 0002796555
Дата охранного документа: 25.05.2023
19.06.2023
№223.018.81c5

Конвейерный умножитель по модулю

Изобретение относится к вычислительной технике. Технический результат заключается в повышении быстродействия операций умножения чисел по произвольному модулю при конвейерной обработке информации. Технический результат достигается за счет того, что конвейерный умножитель содержит n параллельных...
Тип: Изобретение
Номер охранного документа: 0002797164
Дата охранного документа: 31.05.2023
19.06.2023
№223.018.81de

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

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах для формирования кодовых последовательностей, а также в устройствах цифровой обработки сигналов и в криптографических приложениях. Техническим результатом изобретения является...
Тип: Изобретение
Номер охранного документа: 0002797163
Дата охранного документа: 31.05.2023
+ добавить свой РИД