Low-Power Optimization by Smart Bit-Width Allocation in a SystemC-Based ASIC Design Environment

The modern era of embedded system design is geared toward the design of low-power systems. One way to reduce power in an application-specified integrated circuit (ASIC) implementation is to reduce the bit-width precision of its computation units. This paper describes algorithms to optimize the bit widths of fixed-point variables for low power in a SystemC-based ASIC design environment. We propose an optimal bit-width allocation algorithm for two variables and a greedy heuristic that works for any number of variables. The algorithms are used in the automation of converting floating-point SystemC programs into ASIC synthesizable SystemC programs. Expected inputs are profiled to estimate errors in the finite precision conversions. Experimental results for the tradeoffs between quantization error, power consumption, and hardware resources used are reported on a set of four SystemC benchmarks that are mapped onto a 0.18-mum ASIC cell library from Artisan Components. We demonstrate that it is possible to reduce the power consumption by 50% on the average by allowing roundoff errors to increase from 0.5% to 1%

[1]  Preeti Ranjan Panda,et al.  SystemC - a modeling platform supporting multiple design abstractions , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).

[2]  KyungHi Chang,et al.  Finite word-length effects of pipelined recursive digital filters , 1994, IEEE Trans. Signal Process..

[3]  Wayne Luk,et al.  The Multiple Wordlength Paradigm , 2001, The 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'01).

[4]  KyungHi Chang,et al.  Comments on "Finite word-length effects of pipelined recursive digital filters" [and reply] , 1995, IEEE Trans. Signal Process..

[5]  Wayne Luk,et al.  Optimum wordlength allocation , 2002, Proceedings. 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[6]  Leland B. Jackson,et al.  On the interaction of roundoff noise and dynamic range in digital filters , 1970, Bell Syst. Tech. J..

[7]  Prithviraj Banerjee,et al.  Automatic conversion of floating point MATLAB programs into fixed point FPGA based hardware design , 2003, 11th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2003. FCCM 2003..

[8]  Mark Stephenson,et al.  Bidwidth analysis with application to silicon compilation , 2000, PLDI '00.

[9]  C. Shi,et al.  Floating-point to fixed-point conversion , 2004 .

[10]  Wolfgang Rosenstiel,et al.  Evaluation of Branch-prediction Methods on Traces from Commercial Applications for Modern Superscalar Processors, Branch Prediction Is a Must, and There Has Been Significant Progress in This Field during Recent Years. for the Ibm System Esa/390 , 1999 .

[11]  Heinrich Meyr,et al.  FRIDGE: a fixed-point design and simulation environment , 1998, Proceedings Design, Automation and Test in Europe.

[12]  David L. Neuhoff,et al.  Quantization , 2022, IEEE Trans. Inf. Theory.

[13]  Wolfgang Rosenstiel,et al.  Automated Conversion of SystemC Fixed-Point Data Types for Hardware Synthesis , 2003, VLSI-SOC.

[14]  Farid N. Najm,et al.  Power macromodeling for high level power estimation , 1997, DAC.

[15]  Sanghamitra Roy,et al.  An algorithm for trading off quantization error with hardware resources for MATLAB-based FPGA design , 2005, IEEE Transactions on Computers.

[16]  Alok N. Choudhary,et al.  Precision and error analysis of MATLAB applications during automated hardware synthesis for FPGAs , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[17]  Markus Rupp,et al.  Automated floating-point to fixed-point conversion with the fixify environment , 2005, 16th IEEE International Workshop on Rapid System Prototyping (RSP'05).

[18]  Scott Hauck,et al.  Precis: a design-time precision analysis tool , 2002, Proceedings. 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[19]  D. Scott Wills,et al.  Profiling for input predictable threads , 1998, Proceedings International Conference on Computer Design. VLSI in Computers and Processors (Cat. No.98CB36273).

[20]  Margaret Martonosi,et al.  Dynamically exploiting narrow width operands to improve processor power and performance , 1999, Proceedings Fifth International Symposium on High-Performance Computer Architecture.

[21]  A. W. M. van den Enden,et al.  Discrete Time Signal Processing , 1989 .

[22]  George A. Constantinides Perturbation analysis for word-length optimization , 2003, 11th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2003. FCCM 2003..