• DocumentCode
    1330401
  • Title

    Accelerating pipelined integer and floating-point accumulations in configurable hardware with delayed addition techniques

  • Author

    Luo, Zhen ; Martonosi, Margaret

  • Author_Institution
    Dept. of Electr. Eng., Princeton Univ., NJ, USA
  • Volume
    49
  • Issue
    3
  • fYear
    2000
  • fDate
    3/1/2000 12:00:00 AM
  • Firstpage
    208
  • Lastpage
    218
  • Abstract
    The speed of arithmetic calculations in configurable hardware is limited by carry propagation, even with the dedicated hardware found in recent FPGAs. This paper proposes and evaluates an approach called delayed addition that reduces the carry-propagation bottleneck and improves the performance of arithmetic calculations. Our approach employs the idea used in Wallace trees to store the results in an intermediate form and delay addition until the end of a repeated calculation such as accumulation or dot-product; this effectively removes carry propagation overhead from the calculation´s critical path. We present both integer and floating-point designs that use our technique. Our pipelined integer multiply-accumulate (MAC) design is based on a fairly traditional multiplier design, but with delayed addition as well. This design achieves a 72 MHz clock rate on an XC4036xla-9 FPGA and 170 MHz clock rate on an XV300epq240-8 FPGA. Next, we present a 32-bit floating-point accumulator based on delayed addition. Here, delayed addition requires a novel alignment technique that decouples the incoming operands from the accumulated result. A conservative version of this design achieves a 40 MHz clock rate on an XC4036xla-9 FPGA and 97 MHz clock rate on an XV100epq240-8 FPGA. We also present a 32-bit floating-point accumulator design with compiler-managed overflow avoidance that achieves a 80 MHz clock rate on an XC4036xla-9 FPGA and 150 MHz clock rate on an XCV100epq240-8 FPGA
  • Keywords
    field programmable gate arrays; floating point arithmetic; pipeline arithmetic; reconfigurable architectures; FPGAs; Wallace trees; carry propagation overhead; carry-propagation bottleneck; configurable hardware; delayed addition; floating-point; floating-point accumulator; performance; pipelined integer multiply-accumulate; Acceleration; Added delay; Adders; Arithmetic; Clocks; Field programmable gate arrays; Hardware; Microprocessors; Pipeline processing; Propagation delay;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/12.841125
  • Filename
    841125