A Common Recursive Form for Multiple Fundamental Arithmetic Operators and its Automated Synthesis

The common recursive structure of a number of basic arithmetic operators is investigated. Previously, it was shown that fully combinational leading-digit N-bit detector circuits could be generated with a simple dyadic tree recursive structure having minimal complexity, regular and low fan-in and fan-out and log2(N) stages of delay for all outputs. Here, we show that this recursive structure is shared by many common arithmetic functions, including comparison, incrementation, decrementation, and fast parallel-prefix adder. This enables said functions to be described simply and parametrically in VHDL or Verilog using structural recursion. The commonality can also be leveraged to design multi-function circuits which are advantageous compared to separate operators chosen through multiplexers in, e.g., arithmetic-logic units. Preliminary synthesis results for both FPGA and digital CMOS are provided in order to characterize said benefits. This type of multifunction circuit could be employed in the design of fast, low-complexity arithmetic-logic units (ALUs) inside microprocessors, digital signal processors, or application-specific system-on-chip (SoC) designs.

[1]  Olivier Temam,et al.  CMA: Chip multi-accelerator , 2010, 2010 IEEE 8th Symposium on Application Specific Processors (SASP).

[2]  H. T. Kung,et al.  A Regular Layout for Parallel Adders , 1982, IEEE Transactions on Computers.

[3]  Javier D. Bruguera,et al.  A novel design of a two operand normalization circuit , 1998, IEEE Trans. Very Large Scale Integr. Syst..

[4]  Paolo Ienne,et al.  Challenges in Automatic Optimization of Arithmetic Circuits , 2009, 2009 19th IEEE Symposium on Computer Arithmetic.

[5]  Koichiro Mashiko,et al.  Leading-zero anticipatory logic for high-speed floating point addition , 1995 .

[6]  Vojin G. Oklobdzija,et al.  An algorithmic and novel design of a leading zero detector circuit: comparison with logic synthesis , 1994, IEEE Trans. Very Large Scale Integr. Syst..

[7]  Paolo Ienne,et al.  Progressive Decomposition: A Heuristic to Structure Arithmetic Circuits , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[8]  Tack-Don Han,et al.  Fast area-efficient VLSI adders , 1987, 1987 IEEE 8th Symposium on Computer Arithmetic (ARITH).

[9]  Sanjeev Saxena,et al.  On Parallel Prefix Computation , 1994, Parallel Process. Lett..

[10]  Rajat Subhra Chakraborty,et al.  High Performance Integer Arithmetic Circuit Design on FPGA: Architecture, Implementation and Design Automation , 2015 .

[11]  Harold S. Stone,et al.  A Parallel Algorithm for the Efficient Solution of a General Class of Recurrence Equations , 1973, IEEE Transactions on Computers.

[12]  Jack Sklansky,et al.  Conditional-Sum Addition Logic , 1960, IRE Trans. Electron. Comput..

[13]  Stephen Dean Brown,et al.  Functionally Linear Decomposition and Synthesis of Logic Circuits for FPGAs , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  S. Roy A recursive multifunction circuit for leading-digit detection and comparison , 2008, 2008 Joint 6th International IEEE Northeast Workshop on Circuits and Systems and TAISA Conference.

[15]  Olivier Temam,et al.  Reconciling specialization and flexibility through compound circuits , 2009, 2009 IEEE 15th International Symposium on High Performance Computer Architecture.