RU2744815C1 - Device for transferring numbers from residue number system and base-radix extensions - Google Patents
Device for transferring numbers from residue number system and base-radix extensions Download PDFInfo
- Publication number
- RU2744815C1 RU2744815C1 RU2020120649A RU2020120649A RU2744815C1 RU 2744815 C1 RU2744815 C1 RU 2744815C1 RU 2020120649 A RU2020120649 A RU 2020120649A RU 2020120649 A RU2020120649 A RU 2020120649A RU 2744815 C1 RU2744815 C1 RU 2744815C1
- Authority
- RU
- Russia
- Prior art keywords
- output
- multipliers
- modulo
- adder
- inputs
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
Изобретение относится к вычислительной технике и может быть использовано в системах связи и обработки информации, функционирующих в системе остаточных классов (СОК).The invention relates to computer technology and can be used in communication systems and information processing, operating in the system of residual classes (ROC).
Известно устройство для преобразования числа из системы остаточных классов в позиционный код (патент РФ №2293437, опубл. 10.02.2007), содержащее группу сдвиговых регистров, группу постоянных запоминающих устройств, причем информационные входы группы сдвиговых регистров являются соответствующими информационными входами устройства, при этом выходы группы сдвиговых регистров соединены с адресными входами группы постоянных запоминающих устройств, каждое из которых содержит пару констант разрядностью причем количество постоянных запоминающих устройств в группе составляет , и если - нечетное число, то количество констант в последнем постоянном запоминающем устройстве группы составляет , выходы группы постоянных запоминающих устройств соединены с соответствующими входами разрядно-параллельно сумматора по модулю, выходы которого являются выходами устройства, где - произведение всех модулей системы остаточных классов; - ортогональные базисы системы остаточных классов; - остаток по му модулю системы остаточных классов; - количество модулей системы остаточных классов, при этом ; - n-ый модуль системы остаточных классов.A device is known for converting a number from the system of residual classes into a positional code (RF patent No. 2293437, publ. 10.02.2007), containing a group of shift registers, a group of read-only memory devices, and the information inputs of the group of shift registers are the corresponding information inputs of the device, while the outputs groups of shift registers are connected to the address inputs of a group of read-only memory devices, each of which contains a pair of constants bitness and the number of read-only storage devices in the group is , and if is an odd number, then the number of constants in the last read-only memory of the group is , the outputs of the group of permanent storage devices are connected to the corresponding inputs of the bit-parallel adder modulo, the outputs of which are the outputs of the device, where - product of all modules of the system of residual classes; - orthogonal bases of the system of residual classes; - remainder by th module of the system of residual classes; - the number of modules of the residual class system, while ; is the n-th module of the residual class system.
Недостатком данного устройства является аппаратная избыточность и сложность нахождения остатков от деления по большому модулю . Также недостатком является ограниченная функциональность, а именно невозможность расширения оснований.The disadvantage of this device is hardware redundancy and the difficulty of finding the remainders from division by a large modulus. ... Also the disadvantage is the limited functionality, namely the impossibility of expanding the bases.
Известно устройство для преобразования чисел из кода системы остаточных классов в позиционный код с контролем ошибок (авторское свидетельство №1797119, опубл. 23.02.1993), основанное на использовании Китайской теоремы об остатках и методе проекций.A device is known for converting numbers from the residual class system code into a positional code with error control (copyright certificate No. 1797119, published on 02.23.1993), based on the use of the Chinese residual theorem and the projection method.
Недостатком данного устройства является сложность алгоритма перевода в позиционную систему счисления и нахождение остатков от деления по большому модулю. Также недостатком является ограниченная функциональность, а именно невозможность расширения оснований.The disadvantage of this device is the complexity of the algorithm for transferring to the positional number system and finding the remainders from division by a large modulus. Also the disadvantage is the limited functionality, namely the impossibility of expanding the bases.
Наиболее близким к заявленному изобретению является нейронная сеть для расширения кортежа числовой системы вычетов (патент РФ №2256226), содержащая входной слой нейронов для фиксирования числа нейронов и вычисления значений вычетов по модулям , , …, , усеченную треугольную матрицу нейронных сетей конечного кольца по модулям системы остаточных классов, нейронной сети конечного кольца по модулям системы остаточных классов, при этом упомянутые нейронные сети конечного кольца предназначены для вычисления значения с учетом переноса, где - коэффициенты обобщенной позиционной системы счисления, - вычеты из числа А по , в нее введены нейронные сети конечного кольца для выполнения модульного суммирования по всем основаниям и дополнительному расширяемому модулям и нейронная сеть для выполнения финального шага вычисления вычета по дополнительно расширяемому модулю, при этом в ней выходы нейронов входного слоя разветвлены на входы нейронных сетей конечного кольца усеченной треугольной матрицы, выполненной в виде распределенной памяти, выходы которых соединены с входами нейронных сетей конечного кольца с единичными синаптическими весами для выполнения модульного суммирования по всем основным и дополнительно расширяемому модулям, выходы переносов которых модулей, где , соединены с входами модулей, а выход суммы модуля соединен с входом нейронной сети для выполнения финального шага вычисления вычета по дополнительно расширяемому основанию.The closest to the claimed invention is a neural network for expanding a tuple of a numerical system of residues (RF patent No. 2256226), containing an input layer of neurons for fixing the number of neurons and calculating the values of residues by modules , , ..., , a truncated triangular matrix of neural networks of a finite ring by modules of the residual class system, a neural network of a finite ring by modules of a residual class system, while the mentioned neural networks of a finite ring are designed to calculate the value taking into account the transfer, where - the coefficients of the generalized positional number system, - deductions from number A by , neural networks of the final ring are introduced into it to perform modular summation on all bases and additional extensible modules and a neural network to perform the final step of calculating the deduction for an additionally expandable module, while in it the outputs of the neurons of the input layer are branched to the inputs of the neural networks of the final ring a matrix made in the form of a distributed memory, the outputs of which are connected to the inputs of the neural networks of the final ring with unit synaptic weights to perform modular summation over all the main and additionally expandable modules, the outputs of which carry modules where , connected to the inputs modules, and the output of the sum the module is connected to the input of the neural network to perform the final step of calculating the deduction based on the additionally expandable base.
Общим с прототипом является использование обобщенной позиционной системы счисления (ОПСС), треугольной матрицы коэффициентов базисов ОПСС.Common to the prototype is the use of a generalized positional number system (GPSS), a triangular matrix of coefficients of the bases of GPSS.
Недостатком прототипа является необходимость нахождения большого числа остатков от деления, а также невозможность перевода в позиционную систему счисления.The disadvantage of the prototype is the need to find a large number of remainders of division, as well as the impossibility of transferring to the positional number system.
Техническим результатом заявляемого изобретения является расширение функциональных возможностей, а именно возможность получить остаток от деления по произвольному дополнительному модулю, а также восстановленное число в позиционной системе счисления.The technical result of the claimed invention is to expand the functionality, namely the ability to obtain the remainder of the division by an arbitrary additional modulus, as well as the restored number in the positional number system.
Данный технический результат достигается тем, что в устройство для перевода чисел из системы остаточных классов и расширения оснований с модулями , содержащее n входов остатков, выход остатка по расширенному основанию, n регистров хранения остатков, (n-1) модулярный сумматор по модулю, треугольную матрицу из умножителей, где умножители производят умножение на коэффициенты ортогональных базисов системы остаточных классов (СОК), где , , - мультипликативная инверсия, , - рабочий диапазон СОК, представленных в обобщенной позиционной системе счисления (ОПСС) с основаниями , , причем входы остатков соединены с соответствующими регистрами хранения остатков, выход первого регистра хранения остатка одновременно подключен к n умножителям, в которых происходит умножение на коэффициенты , выход второго регистра хранения остатка одновременно подключен к (n-1) умножителю, в которых происходит умножение на коэффициенты , и так далее, наконец выход n-го регистра хранения остатка подключен к умножителю, в котором происходит умножение на коэффициенты , выходы умножителей, в которых происходит умножение на , , подключены ко входам модулярного сумматора по модулю , выход переноса которого подключен к ко входу переноса модулярного сумматора по модулю , на входы которого поступают значения с выходов умножителей, в которых происходит умножение на , , а выход переноса соединен с входом переноса следующего модулярного сумматора, и так далее, наконец, выходы умножителей, в которых происходит умножение на , , подключены ко входам модулярного сумматора по модулю , дополнительно введены модулярный сумматор по модулю , n умножителей на основания ОПСС , , сумматор с выходом восстановленного числа и модулярный сумматор с входом расширенного основания, причем выход умножителя, в котором происходит умножение на , подключен к входу модулярного сумматора по модулю , выход переноса которого подключен ко входу переноса модулярного сумматора по модулю , выходы n модулярных сумматоров по модулю подключены к n соответствующим умножителям на основания ОПСС, выходы которых подключены одновременно ко входам сумматора и модулярного сумматора, выход которого является выходом остатка по расширенному основанию.This technical result is achieved by the fact that in a device for translating numbers from the system of residual classes and expanding bases with modules containing n inputs of residuals, output of the remainder in the extended base, n registers of storage of residuals, (n-1) modular adder modulo, triangular matrix from multipliers, where multipliers multiply by coefficients orthogonal bases residual class systems (RNS), where , , - multiplicative inversion, , - the working range of the RNS, presented in the generalized positional number system (OPSS) with bases , , and the inputs of the remainders are connected to the corresponding registers of the remainder storage, the output of the first register of the remainder storage is simultaneously connected to n multipliers, in which the multiplication by the coefficients occurs , the output of the second storage register of the remainder is simultaneously connected to the (n-1) multiplier, in which multiplication by the coefficients occurs , and so on, finally the output of the n-th remainder storage register is connected to the multiplier, in which the multiplication by the coefficients takes place , the outputs of the multipliers, in which the multiplication by , , connected to the inputs of the modular adder modulo , the carry output of which is connected to the carry input of the modular adder modulo , the inputs of which receive values from the outputs of the multipliers, in which the multiplication by , , and the carry output is connected to the carry input of the next modular adder, and so on, and finally, the outputs of the multipliers, in which multiplication by , , connected to the inputs of the modular adder modulo , additionally introduced modular adder modulo , n multipliers on the base of the OPSS , , an adder with the output of the reconstructed number and a modular adder with the input of the extended base, and the output of the multiplier, in which the multiplication by , connected to the input of the modular adder modulo , the transfer output of which is connected to the transfer input of the modular adder modulo , the outputs of the n modular adders are connected to n corresponding multipliers on the base of the OPSS, the outputs of which are connected simultaneously to the inputs of the adder and the modular adder, the output of which is the output of the remainder on the extended base.
Сущность изобретения основана на следующем математическом аппарате. В системе остаточных классов любое число однозначно представляется набором остатков от деления числа на взаимно простые модули СОК , называемые также основаниями, где , - рабочий диапазон СОК, . СОК позволяет выполнять операции сложения и умножения по каждому остатку независимо, без переносов между разрядами, как в позиционной системе счисления. Однако в ряде случаев, например, для обнаружения переполнения диапазона или при обнаружении и исправлении ошибок необходимо добавление одного или нескольких дополнительных модулей. Пусть добавлен модуль , тогда новый диапазон позволит отображать любое число Также в ряде случаев необходимо восстановить позиционное представление числа из системы остаточных классов. Основным методом восстановления числа из СОК в позиционную систему счисления является Китайская теорема об остаткахThe essence of the invention is based on the following mathematical apparatus. In the residual class system, any number is unambiguously represented by a set of residuals from dividing the number to mutually simple RNS modules , also called bases, where , - the working range of the SOC, ... RNS allows you to perform addition and multiplication operations for each remainder independently, without transfers between digits, as in the positional number system. However, in some cases, for example, to detect a range overflow or to detect and correct errors, it is necessary to add one or more additional modules. Let's add a module then the new range will allow any number to be displayed Also, in some cases, it is necessary to restore the positional representation of a number from the system of residual classes. The main method for recovering numbers from RNS to positional number system is the Chinese Remainder Theorem
где , - ортогональные базисы СОК, , - мультипликативная инверсия. Однако данный метод подразумевает нахождение остатка от деления по большому модулю , что является вычислительно сложной задачей.Where , - orthogonal bases of RNS, , - multiplicative inversion. However, this method implies finding the remainder of division by a large modulus , which is computationally challenging.
Работа устройства основана на следующем алгоритме. Задается система остаточных классов с модулями , для которых вычисляют ортогональные базисы СОК , . Вычисляются основания ОПСС , , при этом . Ортогональные базисы СОК представляются в ОПСС как вектор значений , для которых . При этом значения образуют треугольную матрицу.The operation of the device is based on the following algorithm. A system of residual classes with modules is set , for which the orthogonal bases of the RNS are calculated , ... The bases of the OPSS are calculated , , wherein ... Orthogonal bases of RNS are represented in OPSS as a vector of values for which ... In this case, the values form a triangular matrix.
Пусть задано число и надо по представлению в СОК восстановить число в позиционной системе счисления, а также найти остаток от деления X по дополнительному модулю , который будем обозначать . Для этого умножается на треугольную матрицу, т.е. находятся , . Затем вычисляются и , при этом полагает, что . Можно заменить, что и соотносятся как остаток от деления суммы на модуль и ранг суммы, т.е. перенос, во сколько раз значение суммы превосходит модуль.Let the number and must be submitted to the RNC restore the number in the positional number system, and also find the remainder of division X by the complementary modulus , which we will denote ... For this multiplied by a triangular matrix, i.e. are , ... Then computed and and assumes that ... It can be replaced that and are related as the remainder of the division of the sum per module and the rank of the sum, i.e. carry, how many times the value of the sum exceeds the modulus.
Затем для перевода числа из СОК в позиционную систему счисления находят значение выражения , а для расширения оснований находят .Then, to transfer the number from the RNS to the positional number system, find the value of the expression , and to expand the bases, one finds ...
Рассмотрим пример, иллюстрирующий работу алгоритма. Пусть задана система остаточных классов с 4 основаниями . Тогда .Let's look at an example to illustrate how the algorithm works. Let a residual class system with 4 bases be given ... Then ...
Вычислим , и :Let's calculate , and :
, , следовательно , , Consequently
, , следовательно , , , Consequently ,
, , следовательно , , Consequently
, , следовательно . , , Consequently ...
Вычислим Let's calculate
Вычислим представление в ОПСС:We calculate the representation in OPSS:
проверка check
проверка , check ,
проверка , check ,
проверка . check ...
Пусть задано число числа , тогда вычислим :Let the number be given , then we calculate :
Вычислим и :Let's calculate and :
, , , ,
, , , ,
, , , ,
Отсюда получим:From here we get:
Проверим полученное значение, Let's check the received value,
Пусть необходимо расширить основания на . Тогда Suppose it is necessary to expand the bases by ... Then
Изобретение поясняется фигурой 1, на которой изображена структурная схема устройства для перевода чисел из системы остаточных классов и расширения оснований. На входы остатков 1.1-1.n, где - количество оснований системы остаточных классов подается число , представленное в СОК. Остатки с соответствующих входов остатков 1.1-1.n записываются в регистры хранения остатков 2.1-2.n, которые в прототипе обозначены как нейроны входного слоя. С выходов регистров хранения остатков 2.1-2.n остатки по соответствующим модулям подаются на умножители 3, которые образуют треугольную матрицу и вычисляют значения произведений остатка на коэффициенты базиса в ОПСС . В прототипе функцию умножителей выполняют нейронные сети конечного кольца, однако помимо умножения остатка на коэффициент ОПСС, в прототипе дополнительно вычисляется остаток от деления по модулю и перенос, обозначающий во сколько раз произведение превосходит модуль . Выход первого регистра хранения остатка 2.1 по модулю подключен ко входам n умножителей 3.1.1-3.1.n, которые вычисляют значения , , выход второго регистра хранения остатка 2.2 по модулю подключен ко входам умножителя 3.2.2-3.2.n, которые вычисляют значения , , и так далее, выход n-го регистра хранения остатка 2.n по модулю подключен ко входу умножителя 3.n.n, который вычисляет значение . Выходы умножителей 3 подключены ко входам n модулярных сумматоров 4 по модулям , при этом выход умножителя 3.1.1 подключен ко входу первого модулярного сумматора 4.1 по модулю и выполняет вычисления , , значение поступает на выход первого модулярного сумматора 4.1 по модулю , значение поступает на выход переноса первого модулярного сумматора 4.1 по модулю , выходы умножителей 3.1.2 и 3.2.2 подключены ко входам второго модулярного сумматора 4.2 по модулю , вход переноса которого подключен к выходу переноса первого модулярного сумматора 4.1 по модулю , и выполняет вычисления , , значение поступает на выход второго модулярного сумматора 4.2 по модулю , значение поступает на выход переноса второго модулярного сумматора 4.2 по модулю , и так далее, выходы умножителей 3.i.n, , подключены ко входам n-го модулярного сумматора 4.n по модулю , вход переноса которого подключен к выходу переноса (n-1)-го модулярного сумматора 4.n-1 по модулю , и выполняет вычисления , , значение поступает на выход n-го модулярного сумматора 4.n по модулю , значение поступает на выход переноса n-го модулярного сумматора 4.n по модулю , который не подключен к другим элементам. Значения c выходов i-х модулярных сумматоров 4.i по модулю подаются на входы i-x умножителей 5.i на основания ОПСС, , в которых происходит умножение на . Выход i-го умножителя 5.i на основания ОПСС подключен к i-м входам сумматора 6 и модулярного сумматора 7, , на вход расширенного основания 8 модулярного сумматора 7 подается значение модуля , на выход восстановленного числа 9 сумматора 6 подается восстановленное число X в позиционной системе счисления, а на выход остатка по расширенному основанию 10 модулярного сумматора 7 значение числа по расширенному основанию, т.е. .The invention is illustrated by figure 1, which shows a block diagram of a device for translating numbers from the system of residual classes and expanding bases. To the inputs of the remainders 1.1-1.n, where - the number of bases of the residual class system is given the number presented in the CRS. The residuals from the corresponding inputs of residuals 1.1-1.n are written into the registers for storing residuals 2.1-2.n, which in the prototype are designated as neurons of the input layer. From the outputs of the residual storage registers 2.1-2.n, the residuals in the corresponding modules are fed to multipliers 3, which form a triangular matrix and calculate the values of the products of the remainder by the basis coefficients in the OPSS ... In the prototype, the function of multipliers is performed by neural networks of the finite ring, however, in addition to multiplying the remainder by the OPSS coefficient, the prototype additionally calculates the remainder of the division modulo and the transfer, indicating how many times the product outperforms module ... The output of the first storage register of the remainder 2.1 modulo connected to the inputs of n multipliers 3.1.1-3.1.n, which calculate the values , , the output of the second storage register of the remainder 2.2 modulo connected to inputs multiplier 3.2.2-3.2.n, which calculate the values , , and so on, the output of the n-th remainder storage register 2.n modulo connected to the input of the multiplier 3.nn, which calculates the value ... The outputs of the multipliers 3 are connected to the inputs of the n modular adders 4 by modules , in this case, the output of the multiplier 3.1.1 is connected to the input of the first modular adder 4.1 modulo and performs calculations , , value goes to the output of the first modular adder 4.1 modulo , value arrives at the carry output of the first modular adder 4.1 modulo , the outputs of multipliers 3.1.2 and 3.2.2 are connected to the inputs of the second modular adder 4.2 modulo , the carry input of which is connected to the carry output of the first modular adder 4.1 modulo , and performs calculations , , value goes to the output of the second modular adder 4.2 modulo , value arrives at the carry output of the second modular adder 4.2 modulo , and so on, the outputs of the multipliers 3.in, , connected to the inputs of the n-th modular adder 4.n modulo , the carry input of which is connected to the carry output of the (n-1) -th modular adder 4.n-1 modulo , and performs calculations , , value goes to the output of the n-th modular adder 4.n modulo , value arrives at the carry output of the n-th modular adder 4.n modulo that is not connected to other elements. The values from the outputs of the i-th modular adders 4.i modulo are fed to the inputs of ix multipliers 5.i on the OPSS bases, where the multiplication takes place on ... The output of the i-th multiplier 5.i on the base of the OPSS is connected to the i-th inputs of the
На основе предыдущего примера рассмотрим работу устройства. n=4, . На входы остатков 1.1-1.4 подаются значения (1,2,3,4), которые затем записываются в регистры хранения остатка 2.1-2.4 по соответствующим модулям. Значение 1 с выхода регистра хранения остатка 2.1 по модулю одновременно поступает на входы умножителя 3.1.1, где происходит умножение остатка , на первый коэффициент базиса в ОПСС , результат умножения , умножителя 3.1.2, где происходит умножение на результат умножения , умножителя 3.1.3, где происходит умножение на результат умножения , умножителя 3.1.4, где происходит умножение на результат умножения . Значение 2 с выхода регистра хранения остатка 2.2 по модулю одновременно поступает на входы умножителя 3.2.2, где происходит умножение остатка , на второй коэффициент базиса в ОПСС , результат умножения , умножителя 3.2.3, где происходит умножение на результат умножения , умножителя 3.2.4, где происходит умножение на результат умножения . Значение 3 с выхода регистра хранения остатка 2.3 по модулю одновременно поступает на входы умножителя 3.3.3, где происходит умножение остатка , на третий коэффициент базиса в ОПСС результат умножения , умножителя 3.3.4, где происходит умножение на результат умножения . Значение 4 с выхода регистра хранения остатка 2.4 по модулю поступает на вход умножителя 3.4.4, где происходит умножение остатка , на четвертый коэффициент базиса в ОПСС результат умножения . Значения коэффициентов ОПСС зависят только от заданной СОК и могут быть записаны в память.Let's consider the operation of the device based on the previous example. n = 4, ... Values (1,2,3,4) are fed to the inputs of the remainders 1.1-1.4, which are then written to the remainder storage registers 2.1-2.4 in the corresponding modules. Value 1 from the output of the remainder storage register 2.1 modulo simultaneously arrives at the inputs of the multiplier 3.1.1, where the remainder is multiplied , for the first basis coefficient in the OPSS , the result of multiplication , multiplier 3.1.2, where multiplication by multiplication result , multiplier 3.1.3, where multiplication by multiplication result , multiplier 3.1.4, where multiplication by multiplication result ... Value 2 from the output of the remainder storage register 2.2 modulo simultaneously arrives at the inputs of the multiplier 3.2.2, where the remainder is multiplied , by the second basis coefficient in the OPSS , the result of multiplication , multiplier 3.2.3, where multiplication by multiplication result , multiplier 3.2.4, where multiplication by multiplication result ... Value 3 from the output of the remainder storage register 2.3 modulo simultaneously arrives at the inputs of the multiplier 3.3.3, where the remainder is multiplied , by the third basis coefficient in the OPSS multiplication result , multiplier 3.3.4, where multiplication by multiplication result ... Value 4 from the output of the remainder storage register 2.4 modulo enters the input of the multiplier 3.4.4, where the remainder is multiplied , on the fourth basis coefficient in the OPSS multiplication result ... Values of coefficients of OPSS depend only on the preset RNS and can be written into memory.
Далее значение 1 с умножителя 3.1.1 поступает на первый модулярный сумматор 4.1 по модулю . Поскольку и , на выход модулярного сумматора 4.1 подается 1, а на выход переноса 0.Further, the value 1 from the multiplier 3.1.1 goes to the first modular adder 4.1 modulo ... Insofar as and , 1 is fed to the output of the modular adder 4.1, and 0 is fed to the carry output.
Значение 3 с умножителя 3.1.2, значение 4 с умножителя 3.2.2 и значение 0 с выхода переноса модулярного сумматора 4.1 поступают на второй модулярный сумматор 4.2 по модулю . Поскольку и , на выход модулярного сумматора 4.2 подается 2, а на выход переноса 1.The value 3 from the multiplier 3.1.2, the value 4 from the multiplier 3.2.2 and the value 0 from the carry output of the modular adder 4.1 are fed to the second modular adder 4.2 modulo ... Insofar as and , the output of the modular adder 4.2 is supplied 2, and the transfer output is 1.
Значение 4 с умножителя 3.1.3, значение 2 с умножителя 3.2.3, значение 3 с умножителя 3.3.3 и значение 1 с выхода переноса модулярного сумматора 4.2 поступают на третий модулярный сумматор 4.3 по модулю . Поскольку и , на выход модулярного сумматора 4.3 подается 3, а на выход переноса 1.The value 4 from the multiplier 3.1.3, the value 2 from the multiplier 3.2.3, the value 3 from the multiplier 3.3.3 and the value 1 from the transfer output of the modular adder 4.2 are fed to the third modular adder 4.3 modulo ... Insofar as and , 3 is supplied to the output of the modular adder 4.3, and 1 to the carry output.
Значение 3 с умножителя 3.1.4, значение 4 с умножителя 3.2.4, значение 9 с умножителя 3.3.4, значение 8 с умножителя 3.4.4 и значение 1 с выхода переноса модулярного сумматора 4.3 поступают на четвертый модулярный сумматор 4.4 по модулю . Поскольку , на выход модулярного сумматора 4.4 подается 3.The value 3 from the multiplier 3.1.4, the value 4 from the multiplier 3.2.4, the value 9 from the multiplier 3.3.4, the
Значение 1 с выхода модулярного сумматора 4.1 поступает на вход умножителя 5.1 на основания ОПСС, где умножается на на выход умножителя 5.1 подается 1. Значение 2 с выхода модулярного сумматора 4.2 поступает на вход умножителя 5.2 на основания ОПСС, где умножается на на выход умножителя 5.2 подается 6. Значение 3 с выхода модулярного сумматора 4.3 поступает на вход умножителя 5.3 на основания ОПСС, где умножается на на выход умножителя 5.3 подается 45. Значение 3 с выхода модулярного сумматора 4.4 поступает на вход умножителя 5.4 на основания ОПСС, где умножается на на выход умножителя 5.4 подается 315. При этом основания ОПСС зависят только от модулей СОК и могут быть записаны в память.The value 1 from the output of the modular adder 4.1 is fed to the input of the multiplier 5.1 at the base of the OPSS, where it is multiplied by 1 is fed to the output of the multiplier 5.1. The value 2 from the output of the modular adder 4.2 is fed to the input of the multiplier 5.2 at the base of the OPSS, where it is multiplied by 6 is fed to the output of the multiplier 5.2. The value 3 from the output of the modular adder 4.3 is fed to the input of the multiplier 5.3 at the base of the OPSS, where it is multiplied by 45 is fed to the output of the multiplier 5.3. The value 3 from the output of the modular adder 4.4 is fed to the input of the multiplier 5.4 at the base of the OPSS, where it is multiplied by 315 is supplied to the output of the multiplier 5.4. depend only on RNS modules and can be written to memory.
Значения с выходов умножителей 5.1-5.4 на основания ОПСС поступают на входы сумматора 6, где происходит сложение 1+6+45+315=367, результат которого подается на выход 9 восстановленного числа. Одновременно значения с выходов умножителей 5.1-5.4 на основания ОПСС поступают на входы модулярного сумматора 7, на вход 8 расширенного модуля которого поступает значение . В модулярном сумматоре вычисляется сложение по модулю , результат которого подается на выход 10 остатка по расширенному основанию.The values from the outputs of the multipliers 5.1-5.4 on the basis of the OPSS are fed to the inputs of the
Можно заметить, что при реализации устройства отсутствует ресурсоемкая операция нахождения остатка по большому модулю . Также в отличие от прототипа сокращено количество умножителей 3 и упрощены реализуемые ими функции. За счет введения входа 8 расширенного основания устройство позволяет вычислить остаток по произвольному расширенному основанию, а введение сумматора 6 позволяет получить позиционное представление числа.It can be noted that during the implementation of the device there is no resource-intensive operation of finding the remainder by a large modulus ... Also, unlike the prototype, the number of multipliers has been reduced by 3 and the functions implemented by them have been simplified. Due to the introduction of the
Реализация всего устройства возможна с использованием программируемых логических интегральных схем (ПЛИС) и может использоваться как отдельное устройство, так и как сопроцессор для выполнения немодульных операций.Implementation of the entire device is possible using programmable logic integrated circuits (FPGA) and can be used as a stand-alone device or as a coprocessor to perform non-modular operations.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020120649A RU2744815C1 (en) | 2020-06-22 | 2020-06-22 | Device for transferring numbers from residue number system and base-radix extensions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020120649A RU2744815C1 (en) | 2020-06-22 | 2020-06-22 | Device for transferring numbers from residue number system and base-radix extensions |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2744815C1 true RU2744815C1 (en) | 2021-03-16 |
Family
ID=74874411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2020120649A RU2744815C1 (en) | 2020-06-22 | 2020-06-22 | Device for transferring numbers from residue number system and base-radix extensions |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2744815C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2780148C1 (en) * | 2021-12-27 | 2022-09-19 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Distributed data storage system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049858A (en) * | 1997-08-27 | 2000-04-11 | Lucent Technologies Inc. | Modulo address generator with precomputed comparison and correction terms |
RU2187886C1 (en) * | 2001-04-25 | 2002-08-20 | Воронежский государственный университет | Device for converting numbers of residue system code into polyadic code |
RU2256226C2 (en) * | 2003-07-30 | 2005-07-10 | Ставропольский государственный университет | Neuron network for broadening tuple of numeric subtractions system |
EP0992885B1 (en) * | 1998-10-06 | 2005-12-28 | Texas Instruments Incorporated | Multiplier accumulator circuits |
RU2275741C2 (en) * | 2004-06-25 | 2006-04-27 | Северо-Кавказский государственный технический университет | Device for transforming numbers from remainder classes system to positional scale of notation |
-
2020
- 2020-06-22 RU RU2020120649A patent/RU2744815C1/en active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049858A (en) * | 1997-08-27 | 2000-04-11 | Lucent Technologies Inc. | Modulo address generator with precomputed comparison and correction terms |
EP0992885B1 (en) * | 1998-10-06 | 2005-12-28 | Texas Instruments Incorporated | Multiplier accumulator circuits |
RU2187886C1 (en) * | 2001-04-25 | 2002-08-20 | Воронежский государственный университет | Device for converting numbers of residue system code into polyadic code |
RU2256226C2 (en) * | 2003-07-30 | 2005-07-10 | Ставропольский государственный университет | Neuron network for broadening tuple of numeric subtractions system |
RU2275741C2 (en) * | 2004-06-25 | 2006-04-27 | Северо-Кавказский государственный технический университет | Device for transforming numbers from remainder classes system to positional scale of notation |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2780148C1 (en) * | 2021-12-27 | 2022-09-19 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Distributed data storage system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3373210B1 (en) | Transposing neural network matrices in hardware | |
EP2017743B1 (en) | High speed and efficient matrix multiplication hardware module | |
US4293922A (en) | Device for multiplying binary numbers | |
US7412474B2 (en) | Montgomery modular multiplier using a compressor and multiplication method | |
Jain et al. | Binary division algorithm and high speed deconvolution algorithm (Based on Ancient Indian Vedic Mathematics) | |
RU2744815C1 (en) | Device for transferring numbers from residue number system and base-radix extensions | |
KR100950581B1 (en) | Bit-parallel multiplier and multiplying method for finite field using redundant representation | |
Rouhifar et al. | Fast overflow detection in moduli set {2n–1, 2n, 2n+ 1} | |
RU2318238C1 (en) | Neuron network for transformation of residual code to binary positional code | |
RU2318239C1 (en) | Neuron network for dividing numbers which are represented in a system of residual classes | |
US20220100472A1 (en) | Arithmetic circuit | |
EP3767456B1 (en) | Random number generation device and random number generation method | |
Li et al. | On the improved implementations and performance evaluation of digit-by-digit integer restoring and non-restoring cube root algorithms | |
RU2559771C2 (en) | Device for primary division of molecular numbers | |
RU2256226C2 (en) | Neuron network for broadening tuple of numeric subtractions system | |
RU2477513C1 (en) | Homogeneous computing environment cell, homogeneous computing environment and apparatus for pipeline arithmetic calculations on given modulo | |
WO2017037729A1 (en) | Concurrent architecture of vedic multiplier-an accelerator scheme for high speed computing | |
RU2301442C2 (en) | Neuron network for finding, localizing and correcting errors in residual classes system | |
KR100946256B1 (en) | Scalable Dual-Field Montgomery Multiplier On Dual Field Using Multi-Precision Carry Save Adder | |
RU2653257C1 (en) | Device for detecting and correcting the error of the modular code | |
RU2270475C2 (en) | Device for calculating sums of paired results of multiplications in polynomial system of residual classes | |
RU2584495C1 (en) | Device for calculating factor of generalised polyadic error correction | |
JP2019121171A5 (en) | ||
RU2751992C1 (en) | Apparatus for comparing numbers represented in residue number system | |
Sarvan et al. | Implementation of ANN training module on field programmable gate arrays |