Convolution Computation in FPGA Based on Carry-Save Adders and Circular Buffers

In this article, we present some architectures to carry out the convolution computation based on carry–save adders and circular buffers implemented on FPGAs. Carry-save adders are not frequent in the implementation in FPGA devices, since these have a fast carry propagation path. We make use of the specific structure of the FPGA to design an optimized accumulator which is able to deal with carry–save additions as well as carry–propagate additions using the same hardware. On the other hand, this structure of circular buffers allows the convolution computation of two signals with two algorithms of calculation: the input side algorithm and the output side algorithm, in a more efficient way.

[1]  Jean-Michel Muller,et al.  Automatic Generation of Modular Multipliers for FPGA Applications , 2008, IEEE Transactions on Computers.

[2]  Javier Hormigo,et al.  Efficient mapping on FPGA of convolution computation based on combined CSA-CPA accumulator , 2009, 2009 16th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2009).

[3]  Javier Hormigo,et al.  Efficient Implementation of Carry-Save Adders in FPGAs , 2009, 2009 20th IEEE International Conference on Application-specific Systems, Architectures and Processors.

[4]  Tomás Lang,et al.  Digit-Serial Arithmetic , 2004 .

[5]  Steven B. Smith,et al.  Digital Signal Processing: A Practical Guide for Engineers and Scientists , 2002 .