Improving synthesis of fixed-point adders on FPGAs using primitive instantiations

Whilst the pre-fabricated aspects of FPGAs have many advantages, the fixed nature of the underlying fabric limits the optimized synthesis of arithmetic circuits on these platforms. Many adder architectures, that suit ASICs have been implemented using FPGAs and it has long been established that for FPGAs the ripple carry adder gives the best performance in terms of speed and resource utilization. This is mainly due to the inherent dedicated carry-chain logic that by-passes the general FPGA routing and speeds up the carry propagation. Conventional intuition has it that the best performance with FPGAs is achieved by designing arithmetic circuits through inferential coding, where the synthesis tool infers the design from the general hardware description language. The inferred logic is then mapped onto the underlying resources where the synthesis tool uses its inherent design strategies that are driven by specific optimization goals (area or speed). Evidently most of the prior work uses inferential coding for designing arithmetic circuits. In this paper, however, we experimentally show that direct instantiations of FPGA primitives could lead to improved synthesis results. This involves restructuring of the initial Boolean network prior to the design entry. Proper restructuring ensures an efficient utilization of the underlying fabric which is achievable only through direct instantiation of the in-built FPGA primitives. Our implementation targets Virtex-5 FPGA family from Xilinx. The analysis shows a 7 to 20 percent improvement in critical path delay and 70 to 90 percent improvement in on-chip resource utilization as the operand word-length is varied from 8 to 64 bits.

[1]  Reza Hashemian A new design for high speed and high-density carry select adders , 2000, Proceedings of the 43rd IEEE Midwest Symposium on Circuits and Systems (Cat.No.CH37144).

[2]  Jason Cong,et al.  DAOmap: a depth-optimal area optimization mapping algorithm for FPGA designs , 2004, ICCAD 2004.

[3]  R. Yousuf,et al.  Synthesis of carry select adder in 65 nm FPGA , 2008, TENCON 2008 - 2008 IEEE Region 10 Conference.

[4]  Jonathan Rose,et al.  Chortle-crf: fast technology mapping for lookup table-based FPGAs , 1991, 28th ACM/IEEE Design Automation Conference.

[5]  Lee-Sup Kim,et al.  A low power carry select adder with reduced area , 2001, ISCAS 2001. The 2001 IEEE International Symposium on Circuits and Systems (Cat. No.01CH37196).

[6]  Stephen Dean Brown,et al.  FPGA technology mapping: a study of optimality , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[7]  S. A. Khan,et al.  FPGA implementation of fast adder , 2012, 2012 7th International Conference on Computing and Convergence Technology (ICCCT).

[8]  Gang Zhou,et al.  Area optimization of bit parallel finite field multipliers with fast carry logic on FPGAS , 2008, 2008 International Conference on Field Programmable Logic and Applications.

[9]  Amlan Chakrabarti,et al.  Evaluation of power efficient adder and multiplier circuits for FPGA based DSP applications , 2011, 2011 International Conference on Communication and Industrial Application.

[10]  Qiang Wang,et al.  Area-efficient FPGA logic elements: Architecture and synthesis , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).

[11]  Jubee Tada,et al.  Complex Multiplier Suited for FPGA Structure , 2008 .

[12]  Scott Hauck,et al.  Reconfigurable computing: a survey of systems and software , 2002, CSUR.

[13]  Shuli Gao,et al.  Optimized realization of large-size two’s complement multipliers on FPGAs , 2007, 2007 IEEE Northeast Workshop on Circuits and Systems.

[14]  Anshul Kumar,et al.  Direct mapping of RTL structures onto LUT-based FPGA's , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[15]  Massoud Pedram,et al.  Closing the gap between carry select adder and ripple carry adder: a new class of low-power high-performance adders , 2005, Sixth international symposium on quality electronic design (isqed'05).

[16]  Salvatore Pontarelli,et al.  On the use of signed digit arithmetic for the new 6-inputs LUT based FPGAs , 2008, 2008 15th IEEE International Conference on Electronics, Circuits and Systems.

[17]  Wayne Luk,et al.  Reconfigurable computing: architectures and design methods , 2005 .

[18]  Russell Tessier,et al.  c ○ 2001 Kluwer Academic Publishers. Manufactured in The Netherlands. Reconfigurable Computing for Digital Signal Processing: A Survey ∗ , 1999 .

[19]  Scott Hauck,et al.  Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation , 2007 .