RU2754122C1 - High-speed accumulating adder modulo of arbitrary natural number - Google Patents

High-speed accumulating adder modulo of arbitrary natural number Download PDF

Info

Publication number
RU2754122C1
RU2754122C1 RU2020143610A RU2020143610A RU2754122C1 RU 2754122 C1 RU2754122 C1 RU 2754122C1 RU 2020143610 A RU2020143610 A RU 2020143610A RU 2020143610 A RU2020143610 A RU 2020143610A RU 2754122 C1 RU2754122 C1 RU 2754122C1
Authority
RU
Russia
Prior art keywords
input
bit
adder
output
register
Prior art date
Application number
RU2020143610A
Other languages
Russian (ru)
Inventor
Алексей Николаевич Асосков
Андрей Валерьевич Ахмедов
Ольга Петровна Воронова
Юрий Владимирович Левченко
Original Assignee
Акционерное общество "Концерн "Созвездие"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Акционерное общество "Концерн "Созвездие" filed Critical Акционерное общество "Концерн "Созвездие"
Priority to RU2020143610A priority Critical patent/RU2754122C1/en
Application granted granted Critical
Publication of RU2754122C1 publication Critical patent/RU2754122C1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/06Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
    • G06F7/08Sorting, i.e. grouping record carriers in numerical or other ordered sequence according to the classification of at least some of the information they carry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination

Abstract

FIELD: computing.
SUBSTANCE: invention relates to computing. A high-speed accumulating adder modulo an arbitrary natural number is characterized by the fact that an additional n-bit adder, as well as the second and third n-bit registers are introduced into it, and the clock inputs of the registers are connected to the clock input of the device, and the register zeroing inputs are connected to the zeroing input of the device, the output of the second n-bit register is connected to the input of the second term of the n-bit adder, and the information input of the second n-bit register is an n-bit information input of the device and is combined with the input of the first term of an additional adder.
EFFECT: performance improvement.
1 cl, 2 dwg

Description

Изобретение относится к вычислительной технике и может быть использовано в устройствах цифровой обработки сигналов, помехоустойчивых кодеках и синтезаторах частот.The invention relates to computer technology and can be used in digital signal processing devices, noise-immune codecs and frequency synthesizers.

Известны накапливающие сумматоры [1], [2], [3], содержащие двоичные сумматоры и регистры.Known accumulating adders [1], [2], [3], containing binary adders and registers.

Недостатком этих устройств является то, что они осуществляют суммирование по модулю чисел, равных натуральной степени числа два, тогда как во многих приложениях требуется суммирование по модулю других чисел.The disadvantage of these devices is that they add modulo numbers equal to a natural power of two, whereas many applications require modulo summation of other numbers.

Наиболее близким по технической сущности к заявленному изобретению является накапливающий сумматор по модулю [4], схема которого представлена на фиг. 1, где обозначено:The closest in technical essence to the claimed invention is an accumulating adder modulo [4], the diagram of which is shown in FIG. 1, where it is indicated:

1 – n-разрядный сумматор;1 - n-bit adder;

2 – (n + 1)-разрядный сумматор;2 - (n + 1) -bit adder;

3 – мультиплексор;3 - multiplexer;

4 – n-разрядный регистр;4 - n-bit register;

5 – n-разрядный информационный вход устройства;5 - n-bit information input of the device;

6 – вход логического нуля;6 - logical zero input;

7 – вход поразрядно проинвертированного двоичного кода модуля;7 - input of the bitwise inverted binary code of the module;

8 – вход логической единицы;8 - logical unit input;

9 – тактовый вход устройства;9 - clock input of the device;

10 – вход обнуления устройства;10 - device zeroing input;

11 – n-разрядный информационный выход устройства.11 - n-bit information output of the device.

При описании работы устройства-прототипа и заявляемого устройства будет использоваться общепринятое в технической (в том числе патентной) документации сокращение, при котором многоразрядный вход (выход) блока описывается как вход (выход) блока без определения многоразрядный.When describing the operation of the prototype device and the claimed device, the abbreviation generally accepted in technical (including patent) documentation will be used, in which a multi-bit input (output) of a block is described as an input (output) of a block without a multi-bit definition.

Устройство-прототип содержит сумматор 1, вход первого слагаемого которого соединен с выходом регистра 4 и является выходом 11 устройства, а вход второго слагаемого является информационным входом 5 устройства. На вход переноса сумматора 1 подается логический ноль со входа 6 устройства, а выход суммы сумматора 1 поразрядно соединен со вторым информационным входом мультиплексора 3 и n младшими разрядами первого слагаемого сумматора 2. Старший разряд первого слагаемого сумматора 2 соединен с выходом переноса сумматора 1, а на вход второго слагаемого сумматора 2 со входа 7 устройства подается поразрядно проинвертированный двоичный код модуля, по которому осуществляется суммирование. На вход переноса сумматора 2 подается логическая единица со входа 8 устройства. Выходы n младших разрядов суммы сумматора 2 поразрядно соединены с первым информационным входом мультиплексора 3. Выход переноса сумматора 2 соединен с управляющим входом мультиплексора 3, выход которого соединен с информационным входом регистра 4. Тактовый вход регистра 4 является тактовым входом 9 устройства, а его вход обнуления является входом обнуления 10 устройства.The prototype device contains an adder 1, the input of the first term of which is connected to the output of register 4 and is the output 11 of the device, and the input of the second term is the information input 5 of the device. A logical zero is fed to the transfer input of the adder 1 from the input 6 of the device, and the output of the sum of the adder 1 is bitwise connected to the second information input of the multiplexer 3 and the n least significant bits of the first addend of the adder 2. The most significant bit of the first addend of the adder 2 is connected to the transfer output of the adder 1, and to the input of the second addend of the adder 2 from the input 7 of the device is fed to the bitwise inverted binary code of the module, over which the summation is carried out. A logical unit is supplied to the transfer input of the adder 2 from the input 8 of the device. The outputs of the n least significant bits of the sum of the adder 2 are bitwise connected to the first information input of the multiplexer 3. The transfer output of the adder 2 is connected to the control input of the multiplexer 3, the output of which is connected to the information input of the register 4. The clock input of the register 4 is the clock input 9 of the device, and its zeroing input is the input for zeroing 10 of the device.

Данное устройство осуществляет суммирование входной последовательности {A(k); k = 1, 2, …} n-разрядных чисел по модулю произвольного натурального числа P, лежащего в интервале [2, 2n - 1]. При этом сами числа принимают значения из интервала [0, P - 1].This device sums up the input sequence {A (k); k = 1, 2,…} n-bit numbers modulo an arbitrary natural number P lying in the interval [2, 2 n - 1]. In this case, the numbers themselves take values from the interval [0, P - 1].

Недостатком устройства является низкое быстродействие по сравнению с накапливающим сумматором [3], содержащим только n-разрядные сумматор и регистр. Это объясняется тем, что задержка распространения сигналов увеличивается на величину задержки в (n + 1)-разрядном сумматоре и мультиплексоре.The disadvantage of the device is its low speed in comparison with the accumulating adder [3], which contains only n-bit adder and register. This is because the propagation delay is increased by the amount of delay in the (n + 1) -bit adder and multiplexer.

Задачей изобретения является повышение быстродействия.The objective of the invention is to improve performance.

Для решения поставленной задачи в быстродействующем накапливающем сумматоре по модулю произвольного натурального числа, содержащем n-разрядные сумматор, мультиплексор и регистр, а также (n + 1)-разрядный сумматор n младших разрядов выхода суммы которого поразрядно соединены с первым информационным входом мультиплексора, второй информационный вход которого соединен с выходом суммы n-разрядного сумматора, а выход мультиплексора соединен с информационным входом регистра, выход которого соединен со входом первого слагаемого n-разрядного сумматора и является информационным n-разрядным выходом устройства, тактовый вход регистра является тактовым входом устройства, а вход обнуления регистра является входом обнуления устройства, при этом на вход переноса n-разрядного сумматора подается логический ноль, согласно изобретению введены дополнительный n-разрядный сумматор, а также второй и третий n-разрядные регистры, причем тактовые входы регистров соединены с тактовым входом устройства, в входы обнуления регистров соединены со входом обнуления устройства, выход второго n-разрядного регистра соединен со входом второго слагаемого n-разрядного сумматора, а информационный вход второго n-разрядного регистра является n-разрядным информационным входом устройства и объединен со входом первого слагаемого дополнительного

Figure 00000001
сумматора, при этом на вход второго слагаемого дополнительного сумматора подается поразрядно проинвертированный двоичный код модуля, по которому осуществляется суммирование, на вход переноса дополнительного сумматора подается логическая единица, а его выход суммы соединен с информационным входом третьего регистра, выход которого поразрядно соединен с n младшими разрядами входа первого слагаемого (n + 1)-разрядного сумматора, младшие n разрядов входа второго слагаемого (n + 1)-разрядного сумматора поразрядно соединены с выходом регистра, при этом на вход переноса (n + 1)-разрядного сумматора, а также на старший разряд входа его второго слагаемого подается логический ноль, на старший разряд входа первого слагаемого
Figure 00000002
(n + 1)-разрядного сумматора подается логическая единица, а старший разряд его выхода суммы соединен с управляющим входом мультиплексора.To solve the problem, in a high-speed accumulating adder modulo an arbitrary natural number, containing an n-bit adder, a multiplexer and a register, as well as an (n + 1) -bit adder of n least significant bits of the output of the sum of which are bitwise connected to the first information input of the multiplexer, the second information the input of which is connected to the output of the sum of the n-bit adder, and the output of the multiplexer is connected to the information input of the register, the output of which is connected to the input of the first term of the n-bit adder and is the information n-bit output of the device, the clock input of the register is the clock input of the device, and the input register zeroing is the device zeroing input, while a logical zero is applied to the transfer input of the n-bit adder, according to the invention, an additional n-bit adder, as well as the second and third n-bit registers are introduced, and the clock inputs of the registers are connected to the clock input of the device, in inputs about the zeros of the registers are connected to the zeroing input of the device, the output of the second n-bit register is connected to the input of the second term of the n-bit adder, and the information input of the second n-bit register is the n-bit information input of the device and is combined with the input of the first term of the additional
Figure 00000001
adder, while the bit-inverted binary code of the module is fed to the input of the second adder of the additional adder, the logical unit is fed to the transfer input of the additional adder, and its sum output is connected to the information input of the third register, the output of which is bitwise connected to the n least significant bits the input of the first term of the (n + 1) -bit adder, the least significant n bits of the input of the second term of the (n + 1) -bit adder are bitwise connected to the register output, while the transfer input of the (n + 1) -bit adder, as well as to the highest the bit of the input of its second addend is supplied with a logical zero, the most significant bit of the input of the first addend
Figure 00000002
The (n + 1) -bit adder is fed with a logical unit, and the most significant bit of its sum output is connected to the control input of the multiplexer.

На фиг. 2 представлена схема заявляемого устройства, в которой введены следующие обозначения:FIG. 2 shows a diagram of the claimed device, in which the following designations are introduced:

1 – n-разрядный сумматор;1 - n-bit adder;

2 –

Figure 00000002
(n + 1)-разрядный сумматор;2 -
Figure 00000002
(n + 1) -bit adder;

3 – мультиплексор;3 - multiplexer;

4 – n-разрядный регистр;4 - n-bit register;

5 – n-разрядный информационный вход устройства;5 - n-bit information input of the device;

6 – вход логического нуля;6 - logical zero input;

7 – вход поразрядно проинвертированного двоичного кода модуля;7 - input of the bitwise inverted binary code of the module;

8 – вход логической единицы;8 - logical unit input;

9 – тактовый вход устройства;9 - clock input of the device;

10 – вход обнуления устройства;10 - device zeroing input;

11 – n-разрядный информационный выход устройства;11 - n-bit information output of the device;

12 – дополнительный n-разрядный сумматор;12 - additional n-bit adder;

13 – второй n-разрядный регистр;13 - the second n-bit register;

14 – третий n-разрядный регистр.14 - the third n-bit register.

На вход 5 последовательно, синхронно с тактовыми импульсами, подаваемыми на вход 9, подается последовательность чисел {A(k); k = 1, 2, …}, подлежащих накоплению. Далее она поступает на информационный вход регистра 13 и вход первого слагаемого сумматора 12. На вход второго слагаемого сумматора 12 подается поразрядно проинвертированный двоичный код модуля, по которому осуществляется суммирование. На вход переноса сумматора 12 подается логическая единица со входа 8 устройства, выход суммы сумматора 12 соединен с информационным входом регистра 14, выход которого соединен с n младшими разрядами входа первого слагаемого сумматора 2. Младшие n разрядов входа второго слагаемого сумматора 2 соединены с выходом регистра 4, на вход переноса сумматора 2, а также на старший разряд входа его второго слагаемого подается логический ноль со входа 6 устройства. Выход регистра 13 соединен со входом второго слагаемого сумматора 1, вход первого слагаемого которого соединен с выходом регистра 4 и выходом 11 устройства. На вход переноса сумматора 1 подается логический ноль со входа 6 устройства. Выход суммы сумматора 1 соединен со вторым информационным входом мультиплексора 3, первый информационный вход которого соединен с n младшими разрядами выхода суммы сумматора 2. Выход мультиплексора 3 соединен с информационным входом регистра 4, а его вход управления соединен с выходом старшего разряда суммы сумматора 2. На вход старшего разряда первого слагаемого сумматора 2 подается логическая единица со входа 8 устройства. Тактовые входы регистров 4, 13, 14 соединены с тактовым входом 9 устройства, а входы обнуления регистров 4, 13, 14 соединены со входом 10 обнуления устройства.At the input 5 sequentially, synchronously with the clock pulses supplied to the input 9, a sequence of numbers {A (k); k = 1, 2,…} to be accumulated. Then it goes to the information input of the register 13 and the input of the first addend of the adder 12. At the input of the second addend of the adder 12, a bitwise inverted binary code of the module is supplied, over which the summation is carried out. A logical unit is fed to the transfer input of the adder 12 from the input 8 of the device, the output of the sum of the adder 12 is connected to the information input of the register 14, the output of which is connected to the n least significant bits of the input of the first addend of the adder 2. The lower n bits of the input of the second addend of the adder 2 are connected to the output of the register 4 , to the transfer input of the adder 2, as well as to the most significant bit of the input of its second addend, a logical zero is supplied from the input 6 of the device. The output of the register 13 is connected to the input of the second addend of the adder 1, the input of the first addend of which is connected to the output of the register 4 and the output 11 of the device. A logical zero from input 6 of the device is fed to the transfer input of the adder 1. The output of the sum of the adder 1 is connected to the second information input of the multiplexer 3, the first information input of which is connected to the n least significant bits of the output of the sum of the adder 2. The output of the multiplexer 3 is connected to the information input of the register 4, and its control input is connected to the output of the most significant bit of the sum of the adder 2. On the input of the most significant bit of the first term of the adder 2 is fed by a logical unit from the input 8 of the device. Clock inputs of registers 4, 13, 14 are connected to clock input 9 of the device, and zeroing inputs of registers 4, 13, 14 are connected to input 10 of device zeroing.

Устройство работает следующим образом.The device works as follows.

Перед началом работы на вход 10 устройства подается импульс, который обнуляет содержимое регистров 4, 13, 14. На вход 9 устройства поступают тактовые импульсы, которые синхронизируют работу устройства. С каждым тактовым импульсом на вход 5 поступает код очередного n-разрядного числа A(k), удовлетворяющего условию 0 ≤ A(k) < P. Он поступает на вход (D1…Dn) регистра 13 и вход (A1…An) сумматора 12. На вход (B1…Bn) сумматора 12 подается поразрядно проинвертированный код модуля P, а на вход переноса – логическая единица. На выходе суммы (S1…Sn) сумматора 12 формируется двоичный дополнительный код разности A(k) - P без знакового разряда. Так как A(k) < P, разность A(k) - P всегда отрицательна, поэтому ее знаковый разряд равен единице. По приходу очередного тактового импульса в регистр 13 записывается код числа A(k), а в регистр 14 – код числа A(k) - P без знакового разряда. На выходе суммы (S1…Sn) сумматора 1 формируется код числа A(k)+S(k), где S(k) – число, записанное в регистре 4. На выходе суммы (S1…Sn+1) сумматора 2 формируется двоичный дополнительный код числа A(k)+ S(k) - P, причем разряд Sn+1 определяет знак числа. Если A(k) + S(k) < P, то разность A(k)+ S(k) - P отрицательна и на выходе старшего разряда Sn+1 суммы сумматора 2 формируется логическая единица, под воздействием которой на выход мультиплексора 3 коммутируется второй вход (Y1…Yn), и на информационный вход регистра 4 поступает код числа A(k) + S(k), который записывается в регистр 4 очередным тактовым импульсом.Before starting work, a pulse is sent to the input 10 of the device, which zeroes the contents of registers 4, 13, 14. Clock pulses are sent to the input 9 of the device, which synchronize the operation of the device. With each clock pulse, input 5 receives the code of the next n-bit number A (k) satisfying the condition 0 ≤ A (k) <P. It arrives at the input (D 1 ... D n ) of register 13 and the input (A 1 ... A n ) adder 12. At the input (B 1 ... B n ) of the adder 12 bitwise inverted code of the module P is fed, and at the transfer input - a logical unit. At the output of the sum (S 1 ... S n ) of the adder 12, a binary complementary code of the difference A (k) - P without a sign digit is formed. Since A (k) <P, the difference A (k) - P is always negative, therefore its sign bit is equal to one. Upon arrival of the next clock pulse, the code of the number A (k) is written into register 13, and the code of the number A (k) - P without a sign bit is written into register 14. At the output of the sum (S 1 ... S n ) of the adder 1, the code of the number A (k) + S (k) is generated, where S (k) is the number written in register 4. At the output of the sum (S 1 ... S n + 1 ) adder 2 forms a binary complementary code of the number A (k) + S (k) - P, and the bit S n + 1 determines the sign of the number. If A (k) + S (k) <P, then the difference A (k) + S (k) - P is negative and a logical unit is formed at the output of the most significant bit S n + 1 of the sum of adder 2, under the influence of which on the output of multiplexer 3 the second input (Y 1 ... Y n ) is commuted, and the code of the number A (k) + S (k) arrives at the information input of register 4, which is written into register 4 by the next clock pulse.

Если A(k) + S(k) ≥ P, то разность A(k) + S(k) - P больше или равна нулю, поэтому на выходе старшего разряда Sn+1 суммы сумматора 2 формируется логический ноль, и на выход мультиплексора коммутируется его первый вход (X1…Xn).If A (k) + S (k) ≥ P, then the difference A (k) + S (k) - P is greater than or equal to zero, therefore, at the output of the most significant bit S n + 1 of the sum of adder 2, a logical zero is formed, and at the output the multiplexer is switched to its first input (X 1 ... X n ).

На информационный вход регистра 4 поступает код неотрицательного числа A(k) + S(k) - P, который записывается в регистр 4 очередным тактовым импульсом.The information input of register 4 receives the code of a non-negative number A (k) + S (k) - P, which is written into register 4 with the next clock pulse.

Таким образом, на выходе регистра 4 и соответственно выходе 11 устройства формируется код следующего элемента выходной последовательности {S(k); k = 1, 2, …}Thus, at the output of the register 4 and, accordingly, the output 11 of the device, the code of the next element of the output sequence {S (k); k = 1, 2, ...}

Figure 00000003
(1)
Figure 00000003
(1)

Покажем, что значения элементов последовательности {A(k); k = 1, 2, …} меньше P.Let us show that the values of the elements of the sequence {A (k); k = 1, 2, ...} is less than P.

После прихода обнуляющего импульса на выходах регистров 4, 13, 14 устанавливаются коды нулевых чисел. На входах и выходе мультиплексора 3 также устанавливаются коды нулевых чисел, поэтому по приходу первого тактового импульса в регистр 4 записывается число S(1) = 0.After the arrival of the zeroing pulse, the codes of zero numbers are set at the outputs of registers 4, 13, 14. At the inputs and outputs of multiplexer 3, codes of zero numbers are also set, therefore, upon arrival of the first clock pulse, the number S (1) = 0 is written to register 4.

Если предположить, что S(k) < P, то с учетом того, что A(k) < P, справедливо неравенство A(k) + S(k) - P < P. Поэтому в соответствии с формулой (1) S(k + 1) < P. Согласно методу математической индукции все элементы последовательности {S(k); k = 1, 2, …} меньше P.If we assume that S (k) <P, then, taking into account that A (k) <P, the inequality A (k) + S (k) - P <P is true. Therefore, in accordance with formula (1), S ( k + 1) <P. According to the method of mathematical induction, all elements of the sequence {S (k); k = 1, 2, ...} is less than P.

В соответствии с определением суммы по модулю PAccording to the definition of the sum modulo P

Figure 00000004
Figure 00000004

Это означает, что заявляемое устройство реализует функцию накапливающего сумматора по модулю P, где P произвольное натуральное число из интервала [2, 2n - 1].This means that the claimed device implements the function of an accumulating adder modulo P, where P is an arbitrary natural number from the interval [2, 2 n - 1].

Повышение быстродействия осуществляется за счет одновременного вычисления чисел A(k) + S(k) и A(k) + S(k) - P, в то время как в устройстве-прототипе вначале вычисляется число A(k) + S(k), а затем число A(k) + S(k) - P.The increase in performance is carried out due to the simultaneous calculation of the numbers A (k) + S (k) and A (k) + S (k) - P, while in the prototype device, the number A (k) + S (k) is first calculated and then the number A (k) + S (k) - P.

РЕАЛИЗАЦИЯREALIZATION

Для оценки на практике выигрыша в быстродействии было проведено моделирование в системе автоматического проектирования Quartus II при использовании программируемой логической интегральной схемы (ПЛИС) EP2C8F256I8 семейства Altera Cyclon II (аналог отечественной ПЛИС 5578ТС024).To evaluate in practice the gain in speed, simulation was carried out in the Quartus II automatic design system using the EP2C8F256I8 programmable logic integrated circuit (FPGA) of the Altera Cyclon II family (analogue of the domestic FPGA 5578TC024).

В качестве модуля, по которому осуществляется суммирование, было выбрано число P = 30000, что соответствует n = 15.The number P = 30,000 was chosen as the module over which the summation is carried out, which corresponds to n = 15.

Результат моделирования показал, что максимально возможная тактовая частота устройства-прототипа равна 135 МГц, а заявляемого устройства – 190 МГц. Таким образом, выигрыш в быстродействии составляет 1,4 раза.The simulation result showed that the maximum possible clock frequency of the prototype device is 135 MHz, and the claimed device is 190 MHz. Thus, the performance gain is 1.4 times.

ИСТОЧНИКИ ИНФОМАЦИИSOURCES OF INFORMATION

1. Справочник по интегральным микросхемам /n Б.В. Тарабрин, С.В.Якубовский, Н.А. Барканов и др.; Под ред. Б.В. Тарабрина. – 2-е изд., перераб. и доп. – М: Энергия, 1981. – 816 c., ил., Рис. 5-250, стр. 741.1. Reference book on integrated circuits / n B.V. Tarabrin, S.V. Yakubovsky, N.A. Barkanov and others; Ed. B.V. Tarabrina. - 2nd ed., Rev. and add. - M: Energy, 1981. - 816 p., Ill., Fig. 5-250, p. 741.

2. Пухальский Г.И., Новосельцева Т.Я. Проектирование дискретных устройств на интегральных микросхемах: Справочник. – М.: Радио и связь, 1990. – 304 с.: ил., Рис. 4.80, стр. 268.2. Puhalskiy G.I., Novoseltseva T.Ya. Design of discrete devices on integrated circuits: Handbook. - M .: Radio and communication, 1990. - 304 p .: ill., Fig. 4.80, p. 268.

3. Наумкина Л.Г. Цифровая схемотехника. Конспект лекций по дисциплине «Схемотехника» – М.: «Горная книга». Издательство Московского государственного горного университета, 2008, Рис. 6.9, стр. 228.3. Naumkina L.G. Digital circuitry. Lecture notes on the discipline "Circuitry" - M .: "Gornaya Kniga". Publishing house of the Moscow State Mining University, 2008, Fig. 6.9, p. 228.

4. Патент RU 2 500 017 С1. Накапливающий сумматор по модулю. Опубликован 17.11.2013. Бюл. № 33.4. Patent RU 2 500 017 C1. Accumulator modulo. Published on November 17, 2013. Bul. No. 33.

Claims (1)

Быстродействующий накапливающий сумматор по модулю произвольного натурального числа, содержащий n-разрядные сумматор, мультиплексор и регистр, а также (n + 1)-разрядный сумматор, n младших разрядов выхода суммы которого поразрядно соединены с первым информационным входом мультиплексора, второй информационный вход которого соединен с выходом суммы n-разрядного сумматора, а выход мультиплексора соединен с информационным входом регистра, выход которого соединен со входом первого слагаемого n-разрядного сумматора и является информационным n-разрядным выходом устройства, тактовый вход регистра является тактовым входом устройства, а вход обнуления регистра является входом обнуления устройства, при этом на вход переноса n-разрядного сумматора подается логический ноль, отличающийся тем, что в него введены дополнительный n-разрядный сумматор, а также второй и третий n-разрядные регистры, причем тактовые входы регистров соединены с тактовым входом устройства, а входы обнуления регистров соединены со входом обнуления устройства, выход второго n-разрядного регистра соединен со входом второго слагаемого n-разрядного сумматора, а информационный вход второго n-разрядного регистра является n-разрядным информационным входом устройства и объединен со входом первого слагаемого дополнительного сумматора, при этом на вход второго слагаемого дополнительного сумматора подается поразрядно проинвертированный двоичный код модуля, по которому осуществляется суммирование, на вход переноса дополнительного сумматора подается логическая единица, а его выход суммы соединен с информационным входом третьего регистра, выход которого поразрядно соединен с n младшими разрядами первого слагаемого (n + 1)-разрядного сумматора, младшие n разрядов входа второго слагаемого (n + 1)-разрядного сумматора поразрядно соединены с выходом регистра, при этом на вход переноса (n + 1)-разрядного сумматора, а также на старший разряд входа его второго слагаемого подается логический ноль, на старший разряд входа первого слагаемого (n + 1)-разрядного сумматора подается логическая единица, а старший разряд его выхода суммы соединен с управляющим входом мультиплексора.A high-speed accumulating adder modulo an arbitrary natural number, containing an n-bit adder, a multiplexer and a register, as well as an (n + 1) -bit adder, the n least significant bits of the sum output of which are bitwise connected to the first information input of the multiplexer, the second information input of which is connected to the output of the sum of the n-bit adder, and the multiplexer output is connected to the information input of the register, the output of which is connected to the input of the first addend of the n-bit adder and is the information n-bit output of the device, the clock input of the register is the clock input of the device, and the register zeroing input is the input zeroing the device, while a logical zero is fed to the transfer input of the n-bit adder, characterized in that an additional n-bit adder, as well as the second and third n-bit registers are introduced into it, and the clock inputs of the registers are connected to the clock input of the device, and register reset inputs are connected s with the device zeroing input, the output of the second n-bit register is connected to the input of the second term of the n-bit adder, and the information input of the second n-bit register is the n-bit information input of the device and is combined with the input of the first term of the additional adder, while the input of the second term of the additional adder, the bitwise inverted binary code of the module over which the summation is carried out is fed, a logical unit is fed to the transfer input of the additional adder, and its output of the sum is connected to the information input of the third register, the output of which is bitwise connected to the n least significant bits of the first term (n + 1 ) -bit adder, the lower n bits of the input of the second addend of the (n + 1) -bit adder are bitwise connected to the register output, while a logical zero, on the most significant bit of the input of the first the summand of the (n + 1) -bit adder is supplied with a logical unit, and the most significant bit of its output of the sum is connected to the control input of the multiplexer.
RU2020143610A 2020-12-29 2020-12-29 High-speed accumulating adder modulo of arbitrary natural number RU2754122C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2020143610A RU2754122C1 (en) 2020-12-29 2020-12-29 High-speed accumulating adder modulo of arbitrary natural number

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2020143610A RU2754122C1 (en) 2020-12-29 2020-12-29 High-speed accumulating adder modulo of arbitrary natural number

Publications (1)

Publication Number Publication Date
RU2754122C1 true RU2754122C1 (en) 2021-08-26

Family

ID=77460392

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2020143610A RU2754122C1 (en) 2020-12-29 2020-12-29 High-speed accumulating adder modulo of arbitrary natural number

Country Status (1)

Country Link
RU (1) RU2754122C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2791441C1 (en) * 2022-07-13 2023-03-07 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Modulo accumulator

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2012117468A (en) * 2012-04-26 2013-11-10 федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Пермский национальный исследовательский политехнический университет" PROGRAMMABLE LOGIC DEVICE
RU2500017C1 (en) * 2012-06-05 2013-11-27 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" Modulo adder-accumulator
US9343122B2 (en) * 2013-07-10 2016-05-17 Robert Bosch Gmbh Circuit configuration for selecting and outputting digital input data and operating method for same
US20160211862A1 (en) * 2015-01-15 2016-07-21 Huong Ho Method and apparatus for converting from floating point to integer representation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2012117468A (en) * 2012-04-26 2013-11-10 федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Пермский национальный исследовательский политехнический университет" PROGRAMMABLE LOGIC DEVICE
RU2500017C1 (en) * 2012-06-05 2013-11-27 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" Modulo adder-accumulator
US9343122B2 (en) * 2013-07-10 2016-05-17 Robert Bosch Gmbh Circuit configuration for selecting and outputting digital input data and operating method for same
US20160211862A1 (en) * 2015-01-15 2016-07-21 Huong Ho Method and apparatus for converting from floating point to integer representation

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2791441C1 (en) * 2022-07-13 2023-03-07 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Modulo accumulator
RU2814657C1 (en) * 2023-10-24 2024-03-04 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Modulo conveyor accumulating adder

Similar Documents

Publication Publication Date Title
CN107657312B (en) Binary network implementation system for speech common word recognition
RU2754122C1 (en) High-speed accumulating adder modulo of arbitrary natural number
RU2753594C1 (en) Frequency synthesizers summing unit
US20060155793A1 (en) Canonical signed digit (CSD) coefficient multiplier with optimization
Saichand et al. FPGA realization of activation function for artificial neural networks
RU2763988C1 (en) Accumulating adder-subtractor by an arbitrary natural number modulo
WO2023134507A1 (en) Stochastic calculation method, circuit, chip, and device
US20170344341A1 (en) Rate domain numerical processing circuit and method
RU2764876C1 (en) Accumulating adder-subtractor modulo random natural number
Dakhole et al. Multi-digit quaternary adder on programmable device: Design & verification
US3716843A (en) Modular signal processor
RU2785032C1 (en) Adder-accumulator for frequency synthesisers
CN114138233A (en) Serial shift complement multiply-add device
RU2724597C1 (en) Multi-digit parallel adder modulo with serial transfer
Day et al. A real time digital signal processing solution for radar pulse compression
RU2790638C1 (en) Multibit modular adder
RU2799035C1 (en) Conveyor totalizer by modulo
Saranya et al. Implementation of PWL and LUT based approximation for hyperbolic tangent activation function in VLSI
RU2804379C1 (en) Multibit half-adder
RU2642366C1 (en) Adder accumulator
RU2791441C1 (en) Modulo accumulator
Wang et al. A multiplier structure based on a novel real-time CSD recoding
RU2797164C1 (en) Pipeline module multiplier
RU2149442C1 (en) Device for modulo seven multiplication
RU2804380C1 (en) Pipeline calculator