EFFICIENT MULTIPLIERS FOR 1-OUT-OF-3 BINARY SIGNED-DIGIT NUMBER SYSTEM
Click here to load reader
-
Upload
elelijjournal -
Category
Technology
-
view
50 -
download
2
description
Transcript of EFFICIENT MULTIPLIERS FOR 1-OUT-OF-3 BINARY SIGNED-DIGIT NUMBER SYSTEM
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
39
EFFICIENT MULTIPLIERS FOR 1-OUT-OF-3
BINARY SIGNED-DIGIT NUMBER SYSTEM
Maryam Saremi1
1Department of Electrical and Computer Engineering, Shahid Beheshti University,
Tehran, Iran
ABSTRACT
This paper proposes new multipliers based on Binary Signed-Digit (BSD) operands. BSD number system
has carry free capability in addition operation which causes high speed multiplication. In order to use the
numbering system, BSD operand needs to be encoded into binary bits. 1-out-of-3 BSD encoding has been
proposed as a subset of m-out-of-n codes which can be used for error detection and correction. However, a
multiplier for 1-out-of-3 encoding has not yet been reported in the literature. In this paper, we propose
three different structures for 1-out-of-3 BSD multiplication for the first time to achieve an appropriate
trade-off between area, delay, and power parameters. Our target implementation platform is Application
Specific Circuits (ASIC).
KEYWORDS
1-out-of-3 encoding; Binary Signed-Digit (BSD)system; BSD multiplication; Digit production; carry free
addition, ASIC
1. INTRODUCTION
Multiplication is a very important operation for digital computing systems, process controllers,
and signal processors [1, 2, 15]. Multiplication involves two basic steps: The first one is
generation of partial products and the second step is their accumulation. Therefore, the efficiency
of multiplication is improved by reducing the number of partial products or accelerating their
accumulation. Besides, the performance of partial products accumulation depends on the
numbering system used to represent the operands. Although, conventional weighted binary
number system like two's complement representation is widely used in arithmetic units, the
obtained carry propagation chain in the conventional number system increases the delay of
multiplication operation. Therefore, the performance is reduced. In n-bit fast adder for
conventional binary number system, ci the input carry to position i, is a function of all inputs from
0 to i, when (i=0, 1, …, n-1). The dependency results in increasing the multiplication delay which
is reliant on the size of the operands, in the worst case. Binary signed-digit number representation
[3] is an appropriate numbering system to restrict or eliminate the carry propagation chain in
addition by eliminating the dependency between output and input carries. BSD representation has
been used to design high speed arithmetic circuits [5-9, 15]. To represent BSD operands they
should be encoded into binary bits. Several BSD encoding schemes have been proposed in the
related literatures: 2-bit encoding with two’s complement representation [10-14], 2-bit encoding
with posibit and negabit representation [15], and 3-bit encoding with 1-out-of-3 representation
[16]. The adders and multipliers for these encodings have been presented in the state of the art
papers. The 1-out-of-3 encoding scheme is a subset of m-out-of-n codes [17] and is used for error
detection and correction. The authors of [18] presented constant delay adder for 1-out-of-3
encoding with capability of online error detection. The addition operation with 1-out-of-3
encoding has been described in [16]. However, the presented BSD addition algorithm for 1-out-
of-3 encoding seems to be faulty. In this way, we first deal with the drawback of the adder. On
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
40
the other hand, a multiplier structure for 1-out-of-3 encoding has not yet been presented in the
open literatures. So, we propose new multipliers based on carry free addition using 1-out-of-3
BSD system. We propose three multiplication structures for the encoding. The proposed
multipliers are differently designed to obtain the desired area, speed, and power requirements.
The rest of the paper is organized as follows: the next section discusses basic concepts of 1-out-
of-3 encoding as well as the addition method presented in [16]. In section 3, we emend the
problem of the previous adder presented in [16]. The structures of the three multipliers are
presented in section 4. In section 5 the synthesis results and comparisons are presented. Finally,
the paper is concluded in the last section.
2. THE BINARY SIGNED-DIGIT NUMBER SYSTEM
2.1. 1-out-of-3 BSD Encoding
The radix-r signed digit number system is used to speed up the arithmetic operations by the carry
limited addition capability which means the output carry signal is not dependent on the input
carry signal [16]. A radix-r signed digit number X is presented in the system with n-digit as
follows:
0 1 1
0 1 1
1
0
ni
i
i
n
nX x r x r x r
x r
−
−
−
=
= + +…+
=∑ (1)
Where xi is a signed digit, r is the radix and is equal to 2 in BSD system, ri is the weight of i-th
digit xi. Assuming radix-2, xi is in the range {-1, 0, 1}. Equation (1) indicates that an integer
number may have more than one representation. For example, in a 4-digit BSD system, the value
6, may be represented by (0 1 1 0) BSD, (1 -1 1 0) BSD, (1 0 -1 0) BSD.
The 1-out-of-3 encoding [16] scheme which is shown in Table I is utilized to represent three
different binary signed digits into binary bits.
Table 1. 1-out-of-3 encoding scheme [16]
Binary
BSD Digit (xi) xi0
xi1
xi2
0 0 1 -1
0 1 0 0
1 0 0 1
We employ the 1-out-of-3 encoding in order to indicate a BSD xi which is denoted as (xi2xi
1xi0)
with the same weight. The xi2, xi
1, xi
0 are called as second bit, first bit, and zero-th bit of the digit
xi, respectively.
The code words in this encoding are {-1, 100}, {0, 010}, and {1, 001}, have exactly 1 and two 0,
s. Therefore, the presence of any other code words will show an error.
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
41
2.2. Addition Structure with 1-out-of-3 BSD Encoding
Let X, Y be two integers in the n-digit 1-out-of-3 BSD number representation, and U, C and S be
the intermediate sum, intermediate carry and final sum, respectively. For performing addition
operation of each digit of X and Y, the following two steps are performed [16, 19, 20].
Step1: Generate The intermediate sum digit Ui and intermediate carry digit Ci signals are the i-th BSD digit of U,
and C, respectively, and generated based on the 1-out-of-3 BSD addition rules shown in Table 2.
Step2: Compute
The final sum digit Si is the i-th BSD digit of S, computed using both the Ui and Ci-1 signals. The
Ci-1 is the (i-1)-th BSD digit of C. The Ui, Ci, and Si are represented by 1-out-of-3 encoding.
{ }1 1,0,1i i i i
S U C S−
= + = −
Table 2. BSD Addition Rules [16]
Ui Ci Xi-1+Yi-1 Xi+Yi
0 -1 Don’t care -2
1 -1 At least one is negative -1 -1 0 Non is negative
0 0 Don’t care 0
1 0 At least one is negative 1
-1 1 Non is negative
0 1 Don’t care 2
The following example presents the addition operation of two numbers using the 1-out-of-3
encoding and the addition rules described above:
Example 1: Let’s assume
( )
( )
( ) ( ) ( )
10
10
10 10 10
"010001001001" 7
"010001100010" 2
7 2 9
X
Y
X Y
= =
= =
+ = + =
According to the rules shown in Table II, the process of the addition is as follows:
From the above example and the BSD addition rules, the i-th final sum digit depends on the
inputs in the i-th and (i-1)-th positions and is computed without carry propagation.
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
42
Figure 1. BSD Adder Using BSD_FA cell
In the block diagram of BSD adder shown in Fig.1, each line denotes one BSD digit. Each
BSD_FA cell has five inputs (xi, yi, xi-1, yi-1, Ci-1) and two outputs (Ci, Si). The number of inputs
and outputs is tripled when using the 1-out-of-3 encoding. Then, we have 15 input bits and 6
output bits.
The sign signal i.e. signi presents the sign of (xi, yi). In this adder which presented in [16] by
using the signi-1 signal, the number of inputs is reduced to 10 because in this adder the xi-1 and
yi-1 inputs are utilized exactly for specifying sign of (xi-1, yi-1).
Fig. 2 (a), (b) shows BSD_FA cell without and with signi-1 signal, respectively. As shown in this
figure, the number of inputs in the Fig. 2 (a) is 15. By using the signi-1 signal in the Fig. 2 (b), the
number of inputs is reduced to 10.
Figure 2. BSD_FA cell with 1-out-of-3 Encoding
There are nine combinations for (xi+yi) as follows:
-2= (100, 100), -1= {(100, 010), (010, 100)}, 0= {(010, 010), (100, 001), (001, 100)}, 1= {(001,
010), (010, 001)}, 2= (001, 001).
3. PROPOSED 1-OUT-OF-3 BSD MULTIPLICATION ALGORITHM
3.1. Digit and Partial Product Structure
Let's assume X and Y are integers in the n-digit BSD number representation. The multiplication
X×Y can be expressed as follows:
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
43
( )
( )
1 2
1 2 0
1 2
1 2 0
2 x 2 . . . x
2 y 2 . . . y
n n
n n
n n
n n
x
y
X Y− −
− −
− −
− −
× = + + +
× + + +
( )1
1 2
1 2 0
0
2 y 2 . . . yn
n n
i n n
i
x y−
− −
− −
=
= + + +×∑
1
0
n
i
i
pp−
=
=∑ (2)
( )1 2
1 2 02 y 2 . . . yn n
n ni iypp x − −
− −+ += +×
(3)
Where ppi denotes the i-th partial product.
To achieve ppi, digit products xi×yj (0 ≤i, j≤ n) should to be calculated first. The calculation is
presented in the following.
Let xi and yj (0 ≤i, j≤ n) are two digits in the 1-out-of-3 BSD number representation. Digit
production of xi, yj that is (xi×yj), is presented in Table 3. According to the table, there are six
different combinations for (xi×yj). If one of the two digits (xi or yj) is zero i.e. "010", then the
result will be "010". If both digits have same sign, that is the pair (xi, yj) is one of the two cases
i.e. {(001, 001) or (100, 100)}, then digit production will be "001. Finally, if both digits have
opposite sign, i.e. (001, 100) or (100, 001), then digit production will be "100". Using these
combinations which are presented in Table 3, the following equations can be used to describe the
digit production of xi and yj.
Table 3. Digit production
Digit Production (di) yj xi
001 001 001
001 100 100
010 Don’t care 010
010 010 Don’t care
100 100 001
100 001 100
The three bits of the digit product di, are calculated by (4-6). 0 0 0 2 2
( ) ( ) j j
d x y x yi i i= • + • (4)
1 1 1jd x yi i= +
(5)
02 0 2 2( ) ( )
j jd x y x yi i i= • + •
(6)
3.2. Addition Tree Structure
Assuming 8-digit BSD number X and Y in 1-out-of-3 representation, there are eight partial
products called pp (0), pp (1), …, pp (7) according to (16). To accumulate the partial products, we
propose three different addition trees to achieve the desired area, delay, and power parameters.
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
44
The first structure:
In the block diagram of the first structure shown in Fig. 4, each square in the partial product
denotes one BSD digit with 1-out of 3 encoding. In this structure, addition is performed
sequentially in eight steps. That is, pp (0) and pp (1) are accumulated first, and then the result is
added to pp (2), and so on. The partial products are not aligned as shown in Fig.3. So, in addition
process, one or more digits are added to zero digit. In BSD addition of a digit xi with zero is not
necessarily equal to xi.
Figure 3. Generation of partial product
Figure 4. The first structure for adding partial products
So, addition with zero digit is necessary because the representation of the addition result may be
different to the input representation. For example, according to table II, if xi=1 (001), yi=0 (010)
and xi-1+yi-1=1 (Non is negative) i.e. sixth row of table II, the intermediate signals i.e. Ci and Ui
are "001" and "100", respectively. In this case Ci is not equal with zero, therefore we can't ignore
Ci. Then addition with zero digit is necessary. The circles in Fig. 3, Fig. 4 specify the addition
with zero as discussed above. This addition is performed by the proposed BSD_FA0 cell as
discussed in the following. For BSD_FA0 cell like BSD_FA there are five inputs (xi, yi, xi-1, yi-1,
Ci-1) and two outputs (Ci, Si). The following logic equations can be used to describe the
BSD_FA0 cell with the 1-out-of-3 encoding:
2
Sign xi i= (7)
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
45
The three bits of output carry digit Ci are calculated by (8-10).
0 0
( )1C Sign xi i i= •− (8)
1 2 1 0( ) ( )1 1C Sign x x Sign xi i i i i i= • + + •
− − (9)
2 2( )1C Sign xi i i= •− (10)
The three bits of the intermediate sum Ui, are calculated by (11-13). 0 2 0
( ) ( )1U Sign x xi i i i= • +− (11)
1 1U xi i=
(12)
2 0 2( ) ( )1U Sign x xi i i i= • +
− (13)
The final sum in position i, Si in 1-out-of-3 encoding are calculated by (14-16). 0 0 1 1 0
( ) ( )1 1S U C U Ci i i i i= • + •− − (14)
1 1 1 1 1( ) ( )1 1S U C U Ci i i i i= • + •
− − (15)
2 1 2 2 1( ) ( )1 1S U C U Ci i i i i= • + •− − (16)
Fig. 5 shows the BSD_FA0 cell used to align the partial products which are described above.
Figure 5. BSD_FA0 Cell using 1-out-of-3 Encoding
In the first step of this structure, pp (0) and pp (1) are added together simultaneously with
BSD_FA and BSD_FA0 cells and the result of this step is denoted as pp'(0). In the next step, pp
(2) is added to pp'(0) according to the previous step and in next steps each newly generated
product is added to the previously accumulated partial products. Therefore, the resulted sum in
each step will have one digit more than the previous step. The problem of this structure is a
considerable delay due to sequential addition operation of partial products which makes it
improper for arithmetic units.
Due to the fact that delay is an important constraint; in the following we propose two different
addition trees in order to reduce the delay.
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
46
The Second structure:
In the second structure, addition operation of partial products is performed in three steps as
shown in Fig. 6 (a). In the first step, four BSD addition operations are performed in parallel for
four groups of partial products i.e. {pp (0), pp (1)}, {pp (2), pp (3)}, {pp (4), pp (5)}, {pp (6), pp
(7)} utilizing BSD_FA and BSD_FA0 components. The results are denoted as pp'(0), pp'(1),
pp'(2), pp'(3), respectively. In the next step, the same processes are done for the results of first
step. That is (pp'(0) + pp'(1)} and {pp'(2) + pp'(3)} are performed simultaneously. The results are
denoted as pp"(0) and pp"(1), respectively. In the last step, pp"(0) and pp"(1) are added together
and the final sum is obtained. This structure is performed in three steps which leads to less delay
in comparison to the first structure.
The third structure:
This structure is presented in three steps similar to the second structure as shown in Fig.6 (b). In
the first step of this structure, four BSD addition operations are performed in parallel for four
groups of partial products i.e. {pp (0), pp (7)}, {pp (1), pp (6)}, {pp (2), pp (5)}, {pp (3), pp (4)}.
BSD_FA and BSD_FA0 cells are utilized for the addition. The results are denoted as pp'(0),
pp'(1), pp'(2), pp'(3), respectively. It should be noted that this structure makes larger intermediate
results during steps than the second method. In the next step, the same processes are done for the
results of first step. That is {pp'(0) + pp'(3)} and {pp'(1) + pp'(2)} are performed simultaneously.
The results are denoted as pp"(0) and pp"(1), respectively. In the last step, pp"(0) and pp"(1) are
added together and the final sum is obtained. These two structures have equal delays which are
less than the first structure because, in both structures, addition operation of partial products is
performed in three steps while in the first structure it is done sequentially in eight steps.
Figure 6. Second and Third structure for adding partial products
Fig.7 shows the process of 4-digit BSD multiplication for 1-out-of-3 encoding numbers, X and Y.
pp(0), pp(1), pp(2), pp(3) are partial products of X×Y according to (19). Second structure is
utilized to accumulate of partial products. In the first step, two BSD additions are performed in
parallel for two groups of partial products i.e. {pp(0), pp(1)}, {pp(2), pp(3)}. The results are
called pp'(0) and pp'(1), respectively. Finally, pp'(0) and pp'(1) are added together and the final
sum is produced. The final sum has 9-digit while in the conventional binary number system,
multiplication of 4-bit inputs results in 8-bit output. If we ignore the last digit in the final sum, we
may not obtain a correct result.
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
47
Figure 7. Multiplication structure of 4-digit BSD numbers X and Y in 1-out-of-3 representation
Example 2: This example depicts BSD multiplication described in Fig.7. Let's assume
X="001001001001"=(15)10
Y="001001001001"=(15)10
In the above example, if we ignore the last digit of final sum, the value of final sum will be -31
while, the result must be 225 because X and Y= (1 1 1 1) BSD= (15)10. Therefore, if we ignore
the last digit in final sum in three structures, we may not achieve a valid result.
In the second and third proposed structures, if we express final sum of multiplication with 16-
digit, we won't have valid results for many cases. Therefore, to achieve a correct result in these
structures, final sum must have 18-digit.
4. SIMULATION AND RESULTS As discussed earlier, 1-out-of-3 BSD xi which is encoded as (xi
2xi1xi
0) with the same weight.
Thus, a p-digit BSD number X is represented by a vector with 3p-bit length. For example, (1 0 0 -
1) BSD = (001010010100). Using the binary representation, BSD multiplication operation was
described in the last section of this paper for the first time. The proposal structures are considered
in this section for simulation and synthesis. To evaluate the area, speed, and power of the
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
48
proposed BSD multipliers with 1-out-of-3 encoding scheme, firstly, the structural VHDL
descriptions of these structures are generated. Secondly, they were exhaustively verified. To this
end, we implemented a test-bench which reads an input text file containing all input possibilities.
The outputs were compared to the expected outputs. Afterwards, we synthesized the structures
using Synopsys Design Vision tool and the TSMC 180 nm CMOS standard cell library with
typical conditions (1.8 V, 25ₒc). Three important parameters of arithmetic circuits i.e. area, speed,
and power for these structures are reported in Table VI. Delay, area, and power results are given
in ns, µm2, and mw, respectively.
This table indicates that the delay of the first structure is more than the second and third
structures regarding the fact that this structure is done sequentially in eight steps while the
additions are performed in parallel in the second and third structures. As it was expected, the
second and third modules have same delay which is equal to 2.85 while the first one has the delay
equal to 6.27 ns. Besides, the multiplication delay dose not depends on the length of the input
operands. Area depends on the number of BSD_FA and BSD_FA0 cells which is utilized for
addition operation of partial products. Since the number of cells used in the third structure is more
than that of the two others structure, therefore area in this structure is larger than the two other
structures. Besides, the second structure consumes the least amount of cells and therefore has the
minimum delay among the structures. The maximum and minimum amounts of power are for the
first and second structures, respectively. So it can be included that the second structure in terms of
delay, area and power consumption is appropriate than the other two structures.
Table 4. synthesis results of three proposed multipliers for 8-digit inputs
PDP Power Area Delay
51.071031 8.1453 29169.2 6.27 First Structure
18.16818 6.3748 27861.9267 2.85 Second Structure
18.74331 6.5766 31035.3123 2.85 Third Structure
5. CONCLUSION
In this paper we proposed three different architectures of BSD multiplication operation using the
1-out-of-3 encoding scheme for the first time. We also removed the incorrect equation of
BSD_FA cell using the 1-out-of-3 encoding presented in [16]. The synthesis result indicates that
the first structure is a low-speed module which makes it improper for arithmetic units.
The second and third structures were proposed in order to improve performance. Using these
structures, we succeeded to decrease about 54.54% of the delay, 21% of the power comparing to
the first structure. These improvements are achieved based on designing efficient tree structures
for addition of partial products. The second structure consumes the least delay, area, power and
PDP. The second structure has 54.54% less delay, 21.74% less power, 4.48% less area, and
64.43% less PDP than the first one, it also consumes 10.23% less area, 3% less power, and 3%
less PDP than the third structure. Therefore, the second proposed structure for BSD multiplication
operation with 1-out-of-3 encoding is appropriate for arithmetic units.
REFERENCES
[1] J. U. Ahmed, A. A. S. Awwal, "Multiplier Design Using RBSD Number System," Proc. IEEE Symp.
Aerospace and Electronic conference, (NAECON 1993), May. 1993, pp. 180-184,
doi:10.1109/NAECON.1993.290912
[2] E. L. Johnson, M. A. Karim, "Digital Design: A Pragmatic Approach," PWS-KENT publishing CO.,
Boston, Mass, 1987.
[3] A. Avizenis, "Signed-Digit Number Representations for Fast Parallel Arithmetic," IRE Trans. On
Electronic Computers, Vol. 10. Sept. 1961, pp. 389-400, doi:10.1109/TEC. 1961.5219227.
Electrical and Electronics Engineering: An International Journal (ELELIJ) Vol 3, No 1, February 2014
49
[4] H. Makino, Y. Nakase, H. Suzuki, H. Morinaka, H. Shinohara, and K. Mashiko, "An 8.8-ns 54×54-bit
Multiplier with High Speed Redundant Binary Architecture, " IEEE J. of Solid-State Circuits, Vol. 31,
no .6, June 1996, pp. 773-783, doi:10.1109/4.509863.
[5]N. Takagi, S. Kadowaki, and K. Takagi, "A Hardware Algorithm for Integer Division," in Proc.
17th IEEE Symp. Computer Arithmetic, Jun. 2005, pp. 140-146, doi:10.1109/ARITH.2005.6.
[6] H. A. H. Fahmy, M. J. Flynn, "The Case for a Redundant Format in Floating Point Arithmetic," in
Proc. 16th IEEE Symp. Computer Arithmetic, Jun. 2003, pp. 95-102,
doi:10.1109/ARITH.2003.1207665.
[7] M. Tull, W. Guoping, and M. Ozaydin, "High-Speed Complex Number Multiplier and Inner-Product
Processor," in Proc 45th Midwest Symp. On Circuits and Systems, Vol. 3, Aug. 2002, pp. 640-643,
doi:10.1109/MWSCAS.2002.1187121.
[8] G. Wang, M. Ozaydin, and M. Tull, "\ A Unified Unsigned/signed Binary Multiplier," in Proc. 38
Asliomar Conf. Signals, Systems and Computers, Vol. 1, Nov. 2004, pp. 513-516 ,
doi:10.1109/ACSSC.2004.1399185.
[9] G. Wang, M. Ozaydin, and M. Tull, "High-Performance Divider Using Redundant Binary
Representation," in Proc. 45th Midwest Symp. On Circuits and Systems, Vol. 1, Aug. 2002, pp. 471-
474, doi:10.1109/MWSCAS.2002.1187260.
[10] Wei, Sh. , Shimizu, K., "Residue Arithmetic Circuits Based on Signed-Digit Number Representation
and the VHDL Implementation.," Ypsilanti, MI : Ninth Great lakes Symposium on VLSI, pp. 218-
221,ISBN: 0-4-0104-7695, 1999.
[11] Wei, Sh., Shimizu, K., "Residue Arithmetic Circuits Using a Signed-Digit Number Representation,"
Geneva : International Symposium on Circuits and Systems, Vol. 1, pp. 24-27, ISBN: 0-7803-5482-6,
2000.
[12] Wei, Sh., "Modular Multipliers Using a Modified Residue Addition Algorithm with Signed-Digit
Number Representation," Hong Kong : Proceedings of the International MultiConference of
Engineers and Computer Scientists,. IMECS, Vol. 1, 2009.
[13] Zhang, M. , Wei, Sh., "High-Speed Modular Multipliers Based on a New Binary Signed-Digit Adder
Tree Structure," Hong Kong : Ninth International Symposium on Distributed Computing and
Applications to Business, Engineering and Science, ISBN:978-1-4244-7539-1, pp. 615-619, 2010.
[14] Wei, Sh., " A Sequential Modular Multiplication Algorithm Using Residue Signed-Digit Additions,"
Bali : TENCON IEEE Region 10 Conference, ISBN: 978-1-4577-0256-3, pp. 174-178, 2011.
[15] S. Timarchi, P. Ghayour and A. Shahbahrami “A Novel High-Speed Low-Power Binary Signed-Digit
Adder”, in 16th CSI International symposium on Computer Architecture and Digital Systems
(CADS2012), pp. 357-363 , dio:10.1109/12660173.
[16] Kharbash, F. , Chaudhry, G. M., "Binary Signed Digit Number Adder Design with Error Detection
Capability," Sharjah 9th International Symposium on signal processing and Its Applications, ISSPA.
pp. 1-4, ISBN: 978-1-4244-1779-8, 2007.
[17] P. K. Lala, "Self checking and Fault-tolerance digital design," 1st ed. Morgan Kaufmann Publishers
Inc., San Francisco, 2001.
[18] W. J. Townsend, J. A. Abraham, and P. K. Lala, "On-line error detecting constant delay adder," 9th
IEEE On-Line Testing Symp., pp. 17-22, 2003, dio:10.1109/OLT . 2003.1214361.
[19] Y. Harata, Y. Nakamura, H. Nagase, M. Takigawa, and N. Takagi, "A High Speed Multiplier Using a
Redandant Binary Adder Tree," IEEE J. of Solid-State Circuits, Vol. 22, no. 1, pp. 28-31, Feb. 1987.
[20] D. S. Phatak, T. Goff, and I. Koren,"Constant time Addition and Simultaneous Format Conversion
Based on Redundant Binary Representations," IEEE Trans. On Computers, Vol. 50, no. 11, pp.
11267-1287, Nov. 2001.