High-speed multioperand decimal adders

There is increasing interest in hardware support for decimal arithmetic as a result of recent growth in commercial, financial, and Internet-based applications. Consequently, new specifications for decimal floating-point arithmetic have been added to the draft revision of the IEEE-754 Standard for floating-point arithmetic. This paper introduces and analyzes three techniques for performing fast decimal addition on multiple binary coded decimal (BCD) operands. Two of the techniques speculate BCD correction values and correct intermediate results while adding the input operands. The first speculates over one addition. The second speculates over two additions. The third technique uses a binary carry-save adder tree and produces a binary sum. Combinational logic is then used to correct the sum and determine the carry into the next more significant digit. Multioperand adder designs are constructed and synthesized for four to 16 input operands. Analyses are performed on the synthesis results and the merits of each technique are discussed. Finally, these techniques are compared to several previous techniques for high-speed decimal addition.

[1]  Peter Kornerup,et al.  Reviewing 4-to-2 Adders for Multi-Operand Addition , 2002, Proceedings IEEE International Conference on Application- Specific Systems, Architectures, and Processors.

[2]  Norman P. Jouppi,et al.  Readings in computer architecture , 2000 .

[3]  Michael J. Schulte,et al.  Decimal multiplication via carry-save addition , 2003, Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors. ASAP 2003.

[4]  Mark Horowitz,et al.  SPIM: a pipelined 64*64-bit iterative multiplier , 1989 .

[5]  Michael F. Cowlishaw,et al.  Decimal floating-point: algorism for computers , 2003, Proceedings 2003 16th IEEE Symposium on Computer Arithmetic.

[6]  Michael J. Schulte,et al.  Multioperand decimal addition , 2004, IEEE Computer Society Annual Symposium on VLSI.

[7]  Behrooz Parhami,et al.  Computer arithmetic - algorithms and hardware designs , 1999 .

[8]  C. N. Zhang,et al.  VLSI designs for redundant binary-coded decimal addition , 1988, Seventh Annual International Phoenix Conference on Computers an Communications. 1988 Conference Proceedings.

[9]  R. K. Richards,et al.  Arithmetic operations in digital computers , 2013 .

[10]  Christopher S. Wallace,et al.  A Suggestion for a Fast Multiplier , 1964, IEEE Trans. Electron. Comput..

[11]  Chi-Hsiang Yeh,et al.  Efficient pipelined multi-operand adders with high throughput and low latency: designs and applications , 1996, Conference Record of The Thirtieth Asilomar Conference on Signals, Systems and Computers.

[12]  Guido D. Salvucci,et al.  Ieee standard for binary floating-point arithmetic , 1985 .

[13]  David Y. Y. Yun,et al.  RBCD: redundant binary coded decimal adder , 1989 .

[14]  A. Weinberger,et al.  High Speed Decimal Addition , 1971, IEEE Transactions on Computers.