Optimizing High Speed Arithmetic Circuits Using Three-Term Extraction

Carry save adder (CSA) trees are commonly used for high speed implementation of multi-operand additions. We present a method to reduce the number of the adders in CSA trees by extracting common three-term subexpressions. Our method can optimize multiple CSA trees involving any number of variables. This optimization has a significant impact on the total area of the synthesized circuits, as we show in our experiments. To the best of our knowledge, this is the only known method for eliminating common subexpressions in CSA structures. Since extracting common subexpressions can potentially increase delay, we also present a delay aware extraction algorithm that takes into account the different arrival times of the signals

[1]  Taewhan Kim,et al.  Optimal allocation of carry-save-adders in arithmetic optimization , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

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

[3]  Ryan Kastner,et al.  Common subexpression elimination involving multiple variables linear DSP synthesis , 2004 .

[4]  Iain E. G. Richardson,et al.  H.264 and MPEG-4 Video Compression: Video Coding for Next-Generation Multimedia , 2003 .

[5]  Sanjit K. Mitra,et al.  Digital Signal Processing: A Computer-Based Approach , 1997 .

[6]  Taewhan Kim,et al.  A timing-driven synthesis of arithmetic circuits using carry-save-adders , 2000, Proceedings 2000. Design Automation Conference. (IEEE Cat. No.00CH37106).

[7]  Paolo Ienne,et al.  Improved use of the carry-save representation for the synthesis of complex arithmetic circuits , 2004, ICCAD 2004.

[8]  R. Engelbrecht,et al.  DIGEST of TECHNICAL PAPERS , 1959 .

[9]  Alexandru Nicolau,et al.  Incremental tree height reduction for high level synthesis , 1991, 28th ACM/IEEE Design Automation Conference.

[10]  Taewhan Kim,et al.  A fine-grained arithmetic optimization technique for high-performance/low-power data path synthesis , 2000, DAC.

[11]  Miodrag Potkonjak,et al.  Multiple constant multiplications: efficient and versatile framework and algorithms for exploring common subexpression elimination , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[12]  Taewhan Kim,et al.  Layout-aware synthesis of arithmetic circuits , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[13]  Taewhan Kim,et al.  Layout-aware synthesis of arithmetic circuits , 2002, DAC '02.

[14]  A. Hosangadi,et al.  Reducing hardware complexity of linear DSP systems by iteratively eliminating two-term common subexpressions , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[15]  Taewhan Kim,et al.  Arithmetic optimization using carry-save-adders , 1998, DAC.