RU2097826C1 - Parallel asynchronous adder - Google Patents

Parallel asynchronous adder Download PDF

Info

Publication number
RU2097826C1
RU2097826C1 RU94010178A RU94010178A RU2097826C1 RU 2097826 C1 RU2097826 C1 RU 2097826C1 RU 94010178 A RU94010178 A RU 94010178A RU 94010178 A RU94010178 A RU 94010178A RU 2097826 C1 RU2097826 C1 RU 2097826C1
Authority
RU
Russia
Prior art keywords
inputs
parallel processing
bit slices
input
adder
Prior art date
Application number
RU94010178A
Other languages
Russian (ru)
Other versions
RU94010178A (en
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 RU94010178A priority Critical patent/RU2097826C1/en
Publication of RU94010178A publication Critical patent/RU94010178A/en
Application granted granted Critical
Publication of RU2097826C1 publication Critical patent/RU2097826C1/en

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

FIELD: computer engineering. SUBSTANCE: device has n units 6.1-6.n for parallel processing of cut-off bits, n-1 pulse generators 7.1-7.n, starting pulse generator 7.0, NOR gate 8. Each unit 6 has four gates 1-4 which has high resistance inputs, and arithmetic half-adder 5. Specific feature of parallel asynchronous adder is algorithm of addition of operands for cut-off bits. Feedback of output of sum of arithmetic half-adder to its input through one gate provides separation of situation of carries and their simultaneous correction in different places of parallel adder. EFFECT: increased speed. 3 dwg

Description

Изобретение относится к вычислительной технике и может быть использовано в высокоскоростных цифровых устройствах. The invention relates to computer technology and can be used in high-speed digital devices.

Недостаток известных параллельных сумматоров заключается в том, что предельное быстродействие определяется с учетом максимальной, а не реальной длительности распространения сигналов переноса. Повышения быстродействия можно добиться путем учета изменения времени суммирования в зависимости от количества переносов, возникших при сложении операндов. A disadvantage of the known parallel adders is that the maximum speed is determined taking into account the maximum, and not the actual duration of the propagation of the transfer signals. Improving the speed can be achieved by taking into account the change in the summation time depending on the number of transfers that occurred during the addition of the operands.

Наиболее близким по техническому решению к предлагаемому является комбинационный сумматор, содержащий n одноразрядных сумматоров специальной конструкции, n + 1 формирователь импульсов, элемент ИЛИ-НЕ и два элемента И. Внешними входами комбинационного сумматора являются входы для подачи операндов A и B, входы Z и C, управляющие началом процесса суммирования, вход OK для сложения чисел в обратном коде. Внешними выходами комбинационного сумматора являются выходы суммы S и выход готовности суммы Y. Каждый одноразрядный сумматор имеет 4 входа и 2 выхода разряд суммы Si и разряд переноса Пi. На его входы, кроме ai, bi, Пi, поступает еще управляющий сигнал Z. Комбинационный сумматор представляет собой параллельный сумматор с последовательными цепями переносов. Повышение быстродействия достигается путем анализа переносов П1 Пn и формирования сигнала готовности суммы Y. С этой целью формирователи импульсов З1 - Зn-1 соединены своими входами и выходами переносов одноразрядных сумматоров, выход переноса соединен со вторым входом первого элемента И, выход которого соединен со входом формирователя импульсов Зn и со входом переноса первого (младшего) одноразрядного сумматора, первый вход первого элемента И соединен с внешним входом OK, формирователь импульсов Зn+1 соединен своим входом с выходом второго элемента И, на входы которого поданы сигналы Z и C, выходы формирователей импульсов

Figure 00000002
соединены со входами элемента ИЛИ-НЕ. Сигнал Y с выхода элемента ИЛИ-НЕ вырабатывается согласно выражению:
Figure 00000003

т. е. сигнал окончания суммирования выдается как только завершена обработка всех переносов и окончательно сформирована сумма.The closest technical solution to the proposed one is a combinational adder containing n single-digit adders of a special design, n + 1 pulse shaper, an OR-NOT element and two elements I. The external inputs of the combinational adder are inputs for supplying operands A and B, inputs Z and C that control the start of the summing process, OK input for adding numbers in the reverse code. The external outputs of the combinational adder are the outputs of the sum S and the readiness output of the sum Y. Each one-bit adder has 4 inputs and 2 outputs, the discharge of the sum S i and the transfer discharge P i . At its inputs, in addition to a i , b i , П i , a control signal Z is also received. The combinational adder is a parallel adder with serial carry chains. The performance improvement is achieved by analyzing the transfers P 1 P n and generating the ready signal of the sum Y. For this purpose, the pulse shapers Z 1 - Z n-1 are connected by their inputs and outputs of the transfers of one-bit adders, the transfer output is connected to the second input of the first element And, the output of which connected to the input of the pulse shaper З n and to the transfer input of the first (youngest) one-bit adder, the first input of the first element AND is connected to the external input OK, the pulse shaper З n + 1 is connected by its input to the output of the second of the And element, to the inputs of which signals Z and C are applied, the outputs of the pulse shapers
Figure 00000002
connected to the inputs of the element OR NOT. The signal Y from the output of the element OR is NOT generated according to the expression:
Figure 00000003

i.e., the summation completion signal is issued as soon as the processing of all transfers is completed and the sum is finally generated.

Комбинационный сумматор работает следующим образом. Raman adder operates as follows.

При Z 1, C 1, поступивших одновременно с операндами A и B, формирователем импульсов Зn+1 вырабатывается сигнал Xn+1, который инициирует начало суммирования. В результате сложения операндов на выходе комбинационного сумматора формируется текущая сумма. Если не было переносов, то текущая сумма становится окончательной, о чем сигнализирует "1" на выходе готовности результата Y. При наличии переносов производится последовательная коррекция текущей суммы. На время коррекции формирователь импульсов Зi выдает сигнал Xi на элемент ИЛИ-НЕ, так что на выходе готовности суммы Y формируется сигнал "0".When Z 1, C 1, received simultaneously with the operands A and B, the pulse shaper З n + 1 produces a signal X n + 1 , which initiates the beginning of the summation. As a result of the addition of the operands, the current sum is generated at the output of the combinational adder. If there were no transfers, the current amount becomes final, which is signaled by "1" at the output ready result Y. If there are transfers, the current amount is sequentially adjusted. At the time of correction, the pulse shaper З i gives a signal X i to the OR-NOT element, so that a signal "0" is generated at the output of the sum Y ready.

Недостаток комбинационного сумматора заключается в последовательном способе организации цепей переносов и избыточных аппаратурных затратах в виде одноразрядных сумматоров специальной конструкции. The disadvantage of the combinational adder is the sequential way of organizing carry chains and excessive hardware costs in the form of single-bit adders of a special design.

Технической задачей изобретения является повышение быстродействия и упрощение схемы комбинационного сумматора за счет параллельного способа организации процесса суммирования по разрядным срезам. An object of the invention is to increase the speed and simplify the combination combiner circuit due to the parallel way of organizing the process of summing over bit slices.

Сложение выполняется независимо по n разрядным срезам. Результатом сложения разрядов операндов ai и bi являются текущие значения разрядов суммы si и переноса пi. Если переносы равны нулю, то сформировано окончательное значение суммы. В противном случае осуществляется параллельная коррекция разрядов суммы путем сложения по разрядным срезам текущего значения переноса ni и текущего значения суммы si+1. Коррекция ведется до тех пор, пока переносы п1 пn-1 не станут нулевыми.Addition is performed independently over n bit slices. The result of the addition of the bits of the operands a i and b i are the current values of the bits of the sum s i and transfer n i . If the transfers are equal to zero, then the final value of the sum is formed. Otherwise, a parallel correction of the bits of the sum is carried out by adding the current transfer value n i and the current value of the sum s i + 1 over bit slices. Correction is carried out until the transfers n 1 p n-1 become zero.

На фиг. 1 показан пример сложения чисел 10011, 00101. Для сложения чисел в обратном коде в параллельный асинхронный сумматор добавляют необходимые технические средства. In FIG. 1 shows an example of adding numbers 10011, 00101. To add numbers in the reverse code, the necessary technical means are added to the parallel asynchronous adder.

На фиг. 2 показана структурная схема параллельного асинхронного сумматора. In FIG. 2 shows a block diagram of a parallel asynchronous adder.

Параллельный асинхронный сумматор состоит из блоков 6 параллельной обработки разрядных срезов, формирователей 71 7n-1 импульсов, и 70 запускающего формирователя импульсов, элемента 8 ИЛИ-НЕ, каждый блок параллельной обработки разрядных срезов содержит ключи 1 4 и арифметический полусумматор 5, входы 9 и 10 для подачи разрядов операндов, вход 11 управления началом суммирования, выходы 12 суммы, выход 13 переноса, выход 14 готовности суммы. С помощью ключей 1 и 2, управляемых по входу 11, осуществляется мультиплексирование на первый вход арифметического полусумматора 5 разрядов первого операнда или переноса, с помощью ключей 3 и 4, управляемых по входу 11, осуществляется мультиплексирование на второй вход арифметического полусумматора 5 разрядов второго операнда или суммы этого же блока 6 параллельной обработки разрядных срезов. Вторые выходы блоков 6 параллельной обработки разрядных срезов составляют выходы суммы 12, первые выходы блоков 6 параллельной обработки разрядных срезов, за исключением n-го блока, соединены с входами формирователей 71 7n-1 импульсов, выходы которых соединены с входами элементов 8 ИЛИ-НЕ. Вход 11 соединен также с входом запускающего формирователя 70 импульсов, выход которого соединен с входом элемента 8 ИЛИ-НЕ, выход которого является выходом 14 готовности суммы, первый выход n-го блока 6 параллельной обработки разрядных срезов является выходом 13 переноса параллельного асинхронного сумматора.A parallel asynchronous adder consists of blocks 6 for parallel processing of bit slices, shapers 7 1 7 n-1 pulses, and 7 0 triggering pulse shapers, element 8 OR NOT, each block for parallel processing of bit slices contains keys 1 4 and an arithmetic half-adder 5, inputs 9 and 10 for supplying bits of the operands, the input 11 controls the beginning of the summation, the outputs 12 of the sum, the output 13 of the transfer, the output 14 of the readiness of the sum. Using the keys 1 and 2, controlled by input 11, multiplexing to the first input of the arithmetic half-adder of 5 bits of the first operand or transfer, using the keys 3 and 4, controlled by input 11, multiplexing to the second input of the arithmetic half-adder of 5 bits of the second operand or the sum of the same block 6 parallel processing of bit slices. The second outputs of the blocks 6 for parallel processing of bit slices comprise the outputs of the sum 12, the first outputs of the blocks 6 for parallel processing of bit slices, with the exception of the n-th block, are connected to the inputs of the formers 7 1 7 n-1 pulses, the outputs of which are connected to the inputs of the elements 8 OR- NOT. The input 11 is also connected to the input of the starting driver 7 0 pulses, the output of which is connected to the input of the element 8 OR NOT, the output of which is the output 14 of the readiness of the sum, the first output of the nth block 6 of the parallel processing of the bit slices is the transfer output 13 of the parallel asynchronous adder.

Структурная схема блока 61 параллельной обработки разрядных срезов, иллюстрирующая формирование начального переноса П0, приведена на фиг. 3.The block diagram of the block 6 1 parallel processing of bit slices, illustrating the formation of the initial transfer P 0 shown in Fig. 3.

Организация обратной связи с выхода (сумма) арифметического полусумматора на его вход через ключ 4 позволяет осуществить пространственное разделение ситуаций возникновения переносов и их одновременную коррекцию в разных позициях параллельного асинхронного сумматора, а не реализовывать последовательную цепь переносов по всей длине операндов, что существенно повышает быстродействие работы параллельного асинхронного сумматора. Organization of feedback from the output (sum) of the arithmetic half-adder to its input via key 4 allows for spatial separation of the situations of occurrence of transfers and their simultaneous correction in different positions of the parallel asynchronous adder, and not to implement a sequential chain of transfers along the entire length of the operands, which significantly increases the speed of work parallel asynchronous adder.

Параллельный асинхронный сумматор работает следующим образом. A parallel asynchronous adder operates as follows.

К моменту поступления сигнала C 1 на вход 11 на входах 9 и 10 уже должны быть поданы значения операндов. По сигналу C 1 одновременно вырабатывается запускающим формирователем импульсов 70 сигнал X0, инициирующий начало суммирования, и осуществляется мультиплексирование операндов на входы арифметических полусумматоров 5. В результате сложения операндов по разрядным срезам формируется текущая сумма на выходах 12 и значения переносов, которые анализируются элементом 8 ИЛИ-НЕ. Если не было переносов, то текущая сумма становится окончательной, о чем сигнализирует "1" на выходе готовности результата Y. При наличии переносов производится параллельная коррекция текущей суммы путем ее сложения по разрядным срезам с полученными значениями переносов. Мультиплексирование текущей суммы и переносов на входы арифметических полусумматоров 5 осуществляется по сигналу C 0, причем сигнал C 0 выступает в роли начального переноса. На время коррекции возбужденные формирователи импульсов выдают сигналы на элемент 8 ИЛИ-НЕ, так что на выходе 14 готовности суммы формируется сигнал "0".By the time the signal C 1 arrives at input 11, the values of the operands should already be supplied at inputs 9 and 10. The signal C 1 simultaneously produces a trigger pulse generator 7 0 signal X 0 , initiating the beginning of the summation, and multiplexes the operands to the inputs of the arithmetic half-adders 5. As a result of the addition of the operands on the bit slices, the current sum is generated at outputs 12 and the carry values, which are analyzed by element 8 OR NO. If there were no transfers, then the current amount becomes final, which is signaled by “1” at the output ready result Y. If there are transfers, the current amount is parallel adjusted by adding it along the bit slices with the obtained transfer values. Multiplexing the current amount and transfers to the inputs of arithmetic half-adders 5 is carried out according to the signal C 0, and the signal C 0 acts as the initial transfer. For the duration of the correction, the excited pulse shapers give signals to the element 8 OR NOT, so that a signal “0” is generated at the output 14 of the readiness of the sum.

Claims (1)

Параллельный асинхронный сумматор, содержащий n блоков параллельной обработки разрядных срезов, n 1 формирователей импульсов и запускающий формирователь импульсов, выходы которых соединены с соответствующими входами элемента ИЛИ НЕ, выход которого является внешним выходом готовности суммы, все блоки параллельной обработки разрядных срезов, кроме первого, содержат первый, второй, третий и четвертый входы и два выхода, первый блок параллельной обработки разрядных срезов содержит первый, второй, третий входы и два выхода, третий и четвертый входы с второго по n-й и второй и третий входы первого блоков параллельной обработки разрядных срезов являются внешними входами для подачи операндов, вторые входы с второго по n-й и первый вход первого блоков параллельной обработки разрядных срезов соединены с внешним входом начала суммирования, который соединен также с входом запускающего формирователя импульсов, сумматор, первый выход i-го блока параллельной обработки разрядных срезов (i 1 n 1) соединен с входом i-го формирователя импульсов и первым входом (i + 1)-го блока параллельной обработки разрядных срезов, первый выход n-го блока параллельной обработки разрядных срезов является внешним выходом переноса, вторые выходы n блоков параллельной обработки разрядных срезов являются внешними выходами суммы, отличающийся тем, что в состав каждого блока параллельной обработки разрядных срезов входит четыре ключа с высокоимпендансными выходами и арифметический полусумматор, выходы первого и второго ключей объединены с первым входом арифметического полусумматора, первый выход которого является первым выходом блока параллельной обработки разрядных срезов, выходы третьего и четвертого ключей объединены и соединены с вторым входом арифметического полусумматора, второй выход которого является вторым выходом блока параллельной обработки разрядных срезов и соединен с первым входом четвертого ключа этого же блока параллельной обработки разрядных срезов, первые входы третьих и вторых ключей являются соответственно четвертыми и третьими входами с второго по n-й и третьим и вторым входами первого блоков параллельной обработки разрядных срезов соответственно, первые входы первых ключей являются первыми входами всех блоков параллельной обработки разрядных срезов, первый вход первого ключа первого блока параллельной обработки разрядных срезов соединен с вторым входом этого же ключа, вторые входы с второго по n-й блоков параллельной обработки разрядных срезов соединены с вторыми входами ключей соответствующих им блоков. A parallel asynchronous adder containing n blocks of parallel processing of bit slices, n 1 pulse shapers and a trigger shaper, the outputs of which are connected to the corresponding inputs of the element OR NOT, the output of which is an external output of the readiness of the sum, all blocks of parallel processing of bit slices, except the first, contain the first, second, third and fourth inputs and two outputs, the first block for parallel processing of bit slices contains the first, second, third inputs and two outputs, the third and fourth the second inputs from the second to the n-th and second and third inputs of the first blocks of parallel processing of bit slices are external inputs for supplying operands, the second inputs from the second to n-th and first input of the first blocks of parallel processing of bit slices are connected to an external input of the beginning of summation, which is also connected to the input of the starting pulse shaper, the adder, the first output of the i-th block of parallel processing of bit slices (i 1 n 1) is connected to the input of the i-th pulse shaper and the first input of the (i + 1) th block of parallel processing weights of bit slices, the first output of the nth block of parallel processing of bit slices is an external transfer output, the second outputs of n blocks of parallel processing of bit slices are external outputs of the sum, characterized in that each block of parallel processing of bit slices includes four keys with high-impedance outputs and an arithmetic half-adder, the outputs of the first and second keys are combined with the first input of the arithmetic half-adder, the first output of which is the first output of the parallel block of the processing of bit slices, the outputs of the third and fourth keys are combined and connected to the second input of the arithmetic half-adder, the second output of which is the second output of the block for parallel processing of bit slices and connected to the first input of the fourth key of the same block for parallel processing of bit slices, the first inputs of the third and second keys are respectively the fourth and third inputs from the second to the n-th and third and second inputs of the first blocks of parallel processing of bit slices, respectively, ne the first key inputs are the first inputs of all blocks of parallel processing of bit slices, the first input of the first key of the first block of parallel processing of bit slices is connected to the second input of the same key, the second inputs from the second to the n-th blocks of parallel processing of bit slices are connected to the second key inputs corresponding blocks.
RU94010178A 1994-03-22 1994-03-22 Parallel asynchronous adder RU2097826C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU94010178A RU2097826C1 (en) 1994-03-22 1994-03-22 Parallel asynchronous adder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU94010178A RU2097826C1 (en) 1994-03-22 1994-03-22 Parallel asynchronous adder

Publications (2)

Publication Number Publication Date
RU94010178A RU94010178A (en) 1996-02-27
RU2097826C1 true RU2097826C1 (en) 1997-11-27

Family

ID=20153888

Family Applications (1)

Application Number Title Priority Date Filing Date
RU94010178A RU2097826C1 (en) 1994-03-22 1994-03-22 Parallel asynchronous adder

Country Status (1)

Country Link
RU (1) RU2097826C1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999066419A1 (en) * 1998-06-16 1999-12-23 Joint-Stock Company Research Centre 'module' Neuroprocessor, device for calculating saturation functions, calculation device and adder
RU2475815C1 (en) * 2011-12-05 2013-02-20 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "ВЯТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ" (ФГБОУ ВПО "ВятГУ") CELL OF HOMOGENEOUS COMPUTING ENVIRONMENT, HOMOGENEOUS COMPUTING ENVIRONMENT AND APPARATUS FOR PIPELINE COMPUTATION OF SUM OF m n-BIT NUMBERS
RU2486576C1 (en) * 2012-04-17 2013-06-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Вятский государственный университет ФГБОУ ВПО "ВятГУ" Homogeneous computing environment for conveyor calculations of sum of m-n-digit numbers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SU, авторское свидетельство, 1267405, кл. G 05 F 7/50, 1986. *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999066419A1 (en) * 1998-06-16 1999-12-23 Joint-Stock Company Research Centre 'module' Neuroprocessor, device for calculating saturation functions, calculation device and adder
US6539368B1 (en) 1998-06-16 2003-03-25 Joint-Stock Company Research Centre “Module” Neural processor, saturation unit, calculation unit and adder circuit
RU2475815C1 (en) * 2011-12-05 2013-02-20 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "ВЯТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ" (ФГБОУ ВПО "ВятГУ") CELL OF HOMOGENEOUS COMPUTING ENVIRONMENT, HOMOGENEOUS COMPUTING ENVIRONMENT AND APPARATUS FOR PIPELINE COMPUTATION OF SUM OF m n-BIT NUMBERS
RU2486576C1 (en) * 2012-04-17 2013-06-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Вятский государственный университет ФГБОУ ВПО "ВятГУ" Homogeneous computing environment for conveyor calculations of sum of m-n-digit numbers

Similar Documents

Publication Publication Date Title
JP2594428B2 (en) Method and apparatus for reducing carry propagation delay
WO1993022721A1 (en) Compact multiplier
JPS62286307A (en) Apparatus and method for multiplication and addition of multiple stage digital signal
EP0350278A2 (en) Digital signal processing
RU2097826C1 (en) Parallel asynchronous adder
US5025408A (en) Bit serial multiplier with parallel-in-serial-out carry and partial product shift registers
RU2299461C1 (en) Modulus multiplexer
US7607165B2 (en) Method and apparatus for multiplication and/or modular reduction processing
KR100513160B1 (en) Carry look-ahead adder having reduced area
JPS58129653A (en) Multiplication system
US4570056A (en) Automatically adaptable radix conversion system for use with variable length input numbers
RU2791440C1 (en) Pipeline generator of remainders by an arbitrary modulus
KR20040045152A (en) Apparatus for modular multiplication
RU2797163C1 (en) Pipeline calculator
EP2270647A1 (en) Multi-bit carry chain
SU402005A1 (en) SUMMATOR WITH MULTIPLICATION TO THE CONSTANT COEFFICIENT
SU625205A1 (en) Arrangement for shaping through transfer in parallel adder
SU991418A2 (en) Device for multiplication of two n-bit numbers
RU2045769C1 (en) Multifunctional logical unit
GB2179770A (en) Method and digital circuit for fixed coefficient serial multiplication
RU94010178A (en) PARALLEL ASYNCHRONOUS SUMMATOR
SU1267405A1 (en) Combination adder
Gutub et al. Efficient Adders to Speedup Modular Multiplication for Cryptography
RU2200972C2 (en) Transorthogonal code generator
SU600554A1 (en) Matrix multiplying device