ACM Transactions on Reconfigurable Technology and Systems · 2011 · 47 citations · 20 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureField-programmable Gate ArraysReconfigurable ComputingField-programmable Gate Array ArchitectureFpga ArchitectureHigh-level SynthesisLogic SynthesisCarry Chain ArchitectureControl Flow GraphsCritical Path OptimizationDataflow SynthesisFiltersInformation Flow GraphsMultipliersTransformations
Compressor trees are a class of circuits that generalizes multioperand addition and the partial product reduction trees of parallel multipliers using carry-save arithmetic. Compressor trees naturally occur in many DSP applications, such as FIR filters, and, in the more general case, their use can be maximized through the application of high-level transformations to arithmetically intensive data flow graphs. Due to the presence of carry-chains, it has long been thought that trees of 2- or 3-input carry-propagate adders are more efficient than compressor trees for FPGA synthesis; however, this is not the case. This article presents a heuristic for FPGA synthesis of compressor trees that outperforms adder trees and exploits carry-chains when possible. The experimental results show that, on average, the use of compressor trees can reduce critical path delay by 33% and 45% respectively, compared to adder trees synthesized on the Xilinx Virtex-5 and Altera Stratix III FPGAs.
20
Optimal circuits for parallel multipliers
Paul Stelling, Charles U. Martel, Vojin G. Oklobdzija et al. · IEEE Transactions on Computers · 1998 · 147 citations