RU2007037C1 - Recurrent generator of remainders of arbitrary modulo - Google Patents
Recurrent generator of remainders of arbitrary modulo Download PDFInfo
- Publication number
- RU2007037C1 RU2007037C1 SU4954537A RU2007037C1 RU 2007037 C1 RU2007037 C1 RU 2007037C1 SU 4954537 A SU4954537 A SU 4954537A RU 2007037 C1 RU2007037 C1 RU 2007037C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- partial
- output
- module
- block
- Prior art date
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к вычислительной технике и может быть использовано в устройствах для формирования элементов конечных полей, в устройствах для формирования кодовых последовательностей, построение которых основывается на теории конечных полей, а также в устройствах, функционирующих в СОК. The invention relates to computer technology and can be used in devices for forming elements of finite fields, in devices for forming code sequences, the construction of which is based on the theory of finite fields, as well as in devices operating in RNS.
Известно устройство для формирования остатка по произвольному модулю от числа, содержащее два регистра, два элемента ИЛИ, вычитатель, схему сравнения и мультиплексор, соединенные между собой функционально [1] . A device is known for forming a remainder modulo an arbitrary number, containing two registers, two OR elements, a subtractor, a comparison circuit, and a multiplexer interconnected functionally [1].
Недостатком известного устройства является его низкое быстродействие. A disadvantage of the known device is its low speed.
Наиболее близким по технической сущности к предложенному является устройство для формирования остатка по произвольному модулю от числа, содержащее регистр, блок ключей, блок сумматоров и элемент задержки, соединенные между собой функционально [2] . The closest in technical essence to the proposed one is a device for generating a remainder modulo an arbitrary number, containing a register, a block of keys, a block of adders and a delay element interconnected functionally [2].
Недостатками известного устройства являются низкая надежность его функционирования и небольшая область функциональных возможностей. The disadvantages of the known device are the low reliability of its operation and a small area of functionality.
В рекуррентный формирователь остатков по производному модулю, содержащий блок сумматоров, элемент задержки и регистр, выходы которого соединены с управляющими входами блока ключей, введены блок формирования частичных остатков и инвертор, а блок сумматоров выполнен в виде ярусов из N - 1 сумматоров по произвольному модулю, количество которых в каждом ярусе равно N/2i, где i - номер яруса блока, а N - разрядность входного числа формирователя, при этом первый и второй информационные входы сумматоров по произвольному модулю первого яруса являются информационными входами блока сумматоров, выходы сумматоров по произвольному модулю i-го яруса, кроме последнего, соединены соответственно с первыми и вторыми информационными входами сумматоров по произвольному модулю (i + 1)-го яруса, выход сумматора по произвольному модулю последнего яруса является выходом блока сумматоров, а третьи и четвертые информационные входы всех сумматоров по произвольному модулю соединены соответственно с входами прямого и инверсного значений модуля блока сумматоров, причем информационный вход формирователя соединен с информационным входом регистра, вход записи которого соединен с входом начала вычислений формирователя и входом элемента задержки, выход которого является выходом конца вычислений формирователя, вход модуля которого соединен с входом инвертора, первыми входами блока формирования частичных остатков и входом прямого значения модуля блока сумматоров, вход инверсного значения модуля которого соединен с выходом инвертора и вторыми входами блока формирования частичных остатков, выходы которого соединены с информационными входами блока ключей, выходы которого соединены с информационными входами блока сумматоров, выход которого является информационным выходом формирователя.In the recurrent residual generator for the derived module, containing the adder block, a delay element and a register whose outputs are connected to the control inputs of the key block, the partial residual generator and inverter are introduced, and the adder block is made in the form of tiers of N - 1 adders in an arbitrary module, the number in each tier which is equal to N / 2 i, where i - block tier number, and N - bit input number generator, wherein the first and second data inputs of the adders of the first tier module arbitrary yavlyayuts information inputs of the adder block, the outputs of the adders in an arbitrary module of the i-th tier, except for the last, are connected respectively to the first and second information inputs of the adders in an arbitrary module of the (i + 1) -th tier, the output of the adder in an arbitrary module of the last tier is the output of the adder block and the third and fourth information inputs of all adders in an arbitrary module are connected respectively to the inputs of direct and inverse values of the module of the adder block, and the information input is formed I am connected to the information input of the register, the recording input of which is connected to the input of the beginning of the shaper's calculations and the input of the delay element, the output of which is the output of the end of the shaper's calculations, the input of the module of which is connected to the inverter input, the first inputs of the partial residual formation block and the direct value of the adder block module input , the input of the inverse value of the module of which is connected to the output of the inverter and the second inputs of the block forming partial residues, the outputs of which are connected to the information inputs odes of the key block, the outputs of which are connected to the information inputs of the adder block, the output of which is the information output of the shaper.
Блок формирования частичных остатков содержит N - 1 формирователей частичных остатков, на каждый из которых подается код модуля в прямом и в инверсном виде, причем выход предыдущего формирователя частичных остатков является информационным выходом блока и соединен с входом последующего формирователя частичных остатков, на информационный вход первого формирователя подан код единицы. The partial residual forming unit contains N - 1 partial residual formers, each of which is supplied with the module code in direct and inverse form, the output of the previous partial residual former being the information output of the block and connected to the input of the subsequent partial residual former to the information input of the first former unit code has been submitted.
Сумматор по произвольному модулю содержит последовательно соединенные комбинационный сумматор и формирователь частичных остатков, причем информационные входы комбинационного сумматора являются информационными входами сумматора по произвольному модулю, а информационный выход формирователя частичных остатков, на управляющие входы которого подан код модуля в прямом и в инверсном виде, является информационным выходом сумматора. An adder modulo an arbitrary module contains a combinational adder and a partial residual shaper connected in series, the information inputs of the combinational adder being information inputs of an adder in an arbitrary modulus, and the information output of the partial residual shaper, to the control inputs of which the module code is sent in direct and inverse form, is information the output of the adder.
Формирователь частичных остатков содержит элемент ИЛИ, ключ, а также последовательно соединенные первый и второй сумматоры, причем второй вход второго сумматора соединен с выходом ключа, управляющий вход которого соединен с выходом элемента ИЛИ, а выход второго сумматора является информационным выходом формирователя, вход модуля соединен с информационным входом ключа, а вход модуля в инверсном виде - с первым входом первого сумматора, второй вход которого является информационным входом формирователя, разряд переноса соединен с первым входом элемента ИЛИ, второй вход которого соединен с выходом переноса первого сумматора, на вход переноса которого подается уровень логической "1". The partial residual shaper contains an OR element, a key, and also the first and second adders connected in series, the second input of the second adder connected to the output of the key, the control input of which is connected to the output of the OR element, and the output of the second adder is an information output of the shaper, the module input is connected to information input key, and the input of the module in inverse form with the first input of the first adder, the second input of which is the information input of the shaper, the transfer bit is connected to the first progress of OR, a second input coupled to an output of the first adder transfer in whose transfer input is logic level "1".
Известно, что позиционные системы счисления строятся следующим образом. Выбирается некоторое число m - основание системы счисления, и каждое число А представляется в виде комбинации его степеней с коэффициентами ai, i = , принимающими значения от 0 до m - 1. Для случая двоичной системы счисления (m = 2) всякое число А можно представить в виде
A = aN2N + aN-12N-1 + . . . + a121 + ao, (1) где ai, i = принимают значение "0" или "1".It is known that positional number systems are constructed as follows. A certain number m is selected — the base of the number system, and each number A is represented as a combination of its degrees with coefficients a i , i = taking values from 0 to m - 1. For the case of a binary number system (m = 2), any number A can be represented as
A = a N 2 N + a N-1 2 N-1 +. . . + a 1 2 1 + a o , (1) where a i , i = take the value "0" or "1".
Для вычисления остатка от числа А по модулю Р достаточно в выражении (1) просуммировать частичные остатки по модулю Р от чисел 2iдля тех i, для которых коэффициент ai = 1. Способ вычисления частичных остатков состоит в следующем. Частичный остаток от 2о для любого модуля (Р ≥2) всегда равен единице. Частичный остаток от 21 в два раза превышает (с учетом операции приведения по модулю) частичный остаток от 2о и т. д. , т. е. частичный остаток от 2i в два раза превышает частичный остаток от 2i-1. Таким образом, вычисление частичного остатка от 2iзаключается в умножении на два частичного остатка от 2i-1 и приведения результата по модулю Р. Операция приведения по модулю Р для чисел, не превышающих величину 2Р - 1, реализуется следующим образом. Если значение частичного остатка не превышает величину Р, то оно остается без изменения, если число лежит в интервале от Р до 2Р - 1, то из него вычитается модуль Р, а результат является остатком. Операции умножения на два (как видно из выражения (1)) может быть реализована сдвигом всех разрядов умножаемого числа на один влево либо подачей разрядов множимого на выход результата, в такой последовательности: 2i разряд множимого на 2i+1 разряд произведения, i = .To calculate the remainder of the number A modulo P it is enough to sum in the expression (1) the partial residuals modulo P of the
На фиг. 1 представлена функциональная электрическая схема рекуррентного формирователя остатков по произвольному модулю; на фиг. 2 - блока формирования частичных остатков; на фиг. 3 - блока ключей; на фиг. 4 - блока сумматоров по модулю; на фиг. 5 - сумматора по модулю; на фиг. 6 - формирователя частичных остатков. In FIG. 1 is a functional electrical diagram of a recurrent residual shaper modulo; in FIG. 2 - block formation of partial residues; in FIG. 3 - key block; in FIG. 4 - block adders modulo; in FIG. 5 - adder modulo; in FIG. 6 - shaper partial residues.
Формирователь содержит (фиг. 1) регистр 1, блок 2 ключей, инвертор 3, блок 4 формирования частичных остатков, блок 5 сумматоров и элемент 6 задержки. Число А, от которого необходимо сформировать остаток, подается на вход 7 устройства. Вход 8 начала вычисления соединен с входом записи регистра 1 и входом элемента 6 задержки. Вход 9 модуля соединен с первыми информационными входами блока 4 формирования частичных остатков, блока 5 сумматора по модулю и с входами инвертора 3. Выход 10 блока 5 является информационным, а выход 11 элемента 6 задержки - выходом окончания процесса формирования остатка. The shaper contains (Fig. 1)
Блок 4 формирования частичных остатков (фиг. 2) содержит N - 1 формирователей 12 частичных остатков, соединенных последовательно друг с другом по рекуррентному принципу, причем на вход первого формирователя подан код единицы, выходы разрядов предыдущего формирователя подаются на входы последующего формирователя со сдвигом на один разряд влево (реализация процедуры умножения), а выходы каждого формирователя являются информационными выходами блока.
Блок 2 ключей (фиг. 3) содержит N ключей 13, на информационные входы которых подаются коды с выходов формирователей 12, управляющие входы соединены с информационными выходами регистра 1, а информационные выходы являются информационными выходами блока.
Блок 5 сумматоров содержит (фиг. 4) сумматоры 14 по произвольному модулю. На каждый сумматор 14 подается код модуля в прямом и в инверсном виде. Каждый сумматор 14 содержит (фиг. 5) последовательно соединенные комбинационный сумматор 15, информационные входы которого являются информационными входами сумматора 14, и формирователь 16 частичных остатков. В состав формирователя частичных остатков (фиг. 6) входит первый 17 и второй 18 сумматоры, элемент ИЛИ 19 и ключ 20.
Рекуррентный формирователь остатков по произвольному модулю работает следующим образом. A recurrent shaper of residuals modulo an arbitrary module works as follows.
В исходном состоянии на вход 9 модуля подается код модуля Pj, по которому необходимо формировать остатки. Поэтому на первые входы блоков 4 и 5 подается код модуля в прямом, а на вторые входы через инвертор 3 - в инверсном виде. Так как на вход первого формирователя 12 частичных остатков подается код единицы, а выходы разрядов предыдущего формирователя подключены на входы последующего формирователя со сдвигом на один разряд влево, на выходах блока 4 сформированы частичные остатки по модулю Pj от чисел 2i, i = .In the initial state, the module code P j is supplied to the input of the module 9, by which it is necessary to form residues. Therefore, at the first inputs of
Число А через вход 7 поступает на информационные входы регистра 1. Одновременно на вход 8 начала вычисления подается импульс, который поступает на вход элемента 6 задержки и на вход записи регистра 1. Поэтому код числа А записывается в регистр 1, появляется на его информационных выходах и поступает на управляющие входы блока 2 ключей. В зависимости от того, на управляющий вход какого из ключей 13 поступает логическая "1", тот из ключей 13 оказывается открытым и коммутирует на свои выходы значения с информационных входов, на которые с информационных выходов блока 2 поступают частичные остатки по модулю Р. В результате на соответствующие входы блока 5 сумматоров поступают остатки от чисел 2i для тех i, для которых коэффициент ai = 1 в представлении (1) числа А, записанного в регистр 1. Блок 5 сумматоров суммирует по модулю Pj частичные остатки и результат суммирования выдается на информационный выход 10 устройства. Одновременно с выхода элемента 6, время задержки которого равно времени работы блоков 2 и 5, на выход 11 поступает импульс, сигнализирующий об окончании процесса формирования остатка.The number A through the input 7 is fed to the information inputs of the
При следующем цикле формирования остатка задается любое другое число А, которое поступает на вход 7, и работа всех элементов и блоков устройства повторяется. In the next cycle of the remainder formation, any other number A, which is input 7, is set, and the operation of all elements and units of the device is repeated.
Для смены модуля на вход 9 устройства подается очередной модуль Pj, формирователи 12 блока 4 формируют частичные остатки от чисел 2i, а с подачей очередного числа А работа элементов и блоков устройства повторяется.To change the module, the next module P j is fed to the input 9 of the device, the
Блок 5 сумматоров работает следующим образом. На управляющие входы каждого сумматора 14 блока 5 поступает значение модуля в прямом и инверсном виде, а на информационные входы сумматоров 14 первого ряда поступают остатки от чисел 2i для тех i, для которых ai = 1. Остатки от суммирования по модулю попарно поступают на второй ряд сумматоров и т. д. , поэтому остаток от суммирования по модулю оказывается на выходах блока 5 и поступает на информационный выход 10 устройства.
Сумматор 14 по произвольному модулю работает следующим образом. Комбинационный сумматор 15 осуществляет суммирование остатков, поступающих на его информационные входы, а формирователь 16 частичных остатков в зависимости от значений кода модуля в прямом и инверсном виде, поступающих на его входы, приводит по модулю значение суммы. The
Формирователь 12 (16) частичных остатков работает следующим образом. Сумматор 17, на разряд переноса которого постоянно подан уровень логической "1", за счет подачи на его вход кода модуля в инверсном виде выполняет функцию вычитания модуля из числа А, старший разряд которого подается на вход элемента ИЛИ 19. Если разность меньше нуля, то сумматор 18 добавляет к этой разности код модуля (т. е. входное число было меньше модуля), если разность больше нуля, то ключ 20, на вход которого подается код модуля, оказывается закрытым и эта разность поступает на выход без изменения через сумматор 18 формирователя. Таким образом, на выходе формирователя 12 частичных остатков сформирован остаток от числа, воздействующего на его входы, по модулю Р. (56) Авторское свидетельство СССР N 1396281, кл. H 03 M 7/18, 1986. Shaper 12 (16) of partial residues works as follows. The
Авторское свидетельство СССР N 1633495, кл. H 03 M 7/18, 1989. USSR copyright certificate N 1633495, cl. H 03 M 7/18, 1989.
Claims (4)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SU4954537 RU2007037C1 (en) | 1991-06-17 | 1991-06-17 | Recurrent generator of remainders of arbitrary modulo |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SU4954537 RU2007037C1 (en) | 1991-06-17 | 1991-06-17 | Recurrent generator of remainders of arbitrary modulo |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| RU2007037C1 true RU2007037C1 (en) | 1994-01-30 |
Family
ID=21584050
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| SU4954537 RU2007037C1 (en) | 1991-06-17 | 1991-06-17 | Recurrent generator of remainders of arbitrary modulo |
Country Status (1)
| Country | Link |
|---|---|
| RU (1) | RU2007037C1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2356086C2 (en) * | 2007-05-11 | 2009-05-20 | Государственное образовательное учреждение высшего профессионального образования "Ставропольский государственный университет" | Computing device |
| RU2445730C2 (en) * | 2010-02-24 | 2012-03-20 | Государственное образовательное учреждение высшего профессионального образования "Ставропольский государственный университет" | Device for generating remainder from arbitrary modulus of number |
-
1991
- 1991-06-17 RU SU4954537 patent/RU2007037C1/en active
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2356086C2 (en) * | 2007-05-11 | 2009-05-20 | Государственное образовательное учреждение высшего профессионального образования "Ставропольский государственный университет" | Computing device |
| RU2445730C2 (en) * | 2010-02-24 | 2012-03-20 | Государственное образовательное учреждение высшего профессионального образования "Ставропольский государственный университет" | Device for generating remainder from arbitrary modulus of number |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US3515344A (en) | Apparatus for accumulating the sum of a plurality of operands | |
| JPH0727458B2 (en) | Multiplier | |
| JPS62256034A (en) | Pipeline computing unit | |
| RU2029435C1 (en) | Combination recurrent former of remainders | |
| Tynymbayev et al. | Devices for multiplying modulo numbers with analysis of the lower bits of the multiplier | |
| RU2007037C1 (en) | Recurrent generator of remainders of arbitrary modulo | |
| RU2324972C2 (en) | Creator of random module reminder of number | |
| RU2348965C1 (en) | Computing mechanism | |
| RU2012137C1 (en) | Device for forming remainder on arbitrary modulus | |
| RU2007033C1 (en) | Device for generation of integer remainder of arbitrary modulo | |
| RU2020759C1 (en) | Device for forming remainder for random module of number | |
| RU2356086C2 (en) | Computing device | |
| RU2797163C1 (en) | Pipeline calculator | |
| RU2661797C1 (en) | Computing device | |
| RU2007036C1 (en) | Device which produces members of multiplicative groups of galois fields gf(p) | |
| JP3270659B2 (en) | Arithmetic circuit and arithmetic method | |
| RU2840231C1 (en) | Numbers multiplier by arbitrary modulus | |
| US7471789B2 (en) | Encryption circuit achieving higher operation speed | |
| RU2029434C1 (en) | Device for formation of remainder by arbitrary modulus of number | |
| SU1667059A2 (en) | Device for multiplying two numbers | |
| RU2110147C1 (en) | Device for calculation of modulo remainder | |
| RU2791441C1 (en) | Modulo accumulator | |
| RU2796555C1 (en) | Computing device | |
| US3511978A (en) | Parallel binary magnetic addition system by counting | |
| RU2739338C1 (en) | Computing device |