skip to main content
research-article

A stochastic bitwidth estimation technique for compact and low-power custom processors

Published:08 May 2008Publication History
Skip Abstract Section

Abstract

There is an increasing trend toward compiling from C to custom hardware for designing embedded systems in which the area and power consumption of application-specific functional units, registers, and memory blocks are heavily dependent on the bit-widths of integer operands used in computations. The actual bit-width required to store the values assigned to an integer variable during the execution of a program will not, in general, match the built-in C data types. Thus, precious area is wasted if the built-in data type sizes are used to declare the size of integer operands. In this paper, we introduce stochastic bit-width estimation that follows a simulation-based probabilistic approach to estimate the bit-widths of integer variables using extreme value theory. The estimation technique is also empirically compared to two compile-time integer bit-width analysis techniques. Our experimental results show that the stochastic bit-width estimation technique dramatically reduces integer bit-widths and, therefore, enables more compact and power-efficient custom hardware designs than the compile-time integer bit-width analysis techniques. Up to 37% reduction in custom hardware area and 30% reduction in logic power consumption using stochastic bit-width estimation can be attained over ten integer applications implemented on an FPGA chip.

References

  1. Bondalapati, K. and Prasanna, V. K. 1999. Dynamic precision management for loop computations on reconfigurable architectures. In IEEE/ACM Symposium on Field-Programmable Custom Computing Machines (Apr.), Napa Valley, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Brase, C. H. and Brase, C. P. 2001. Understanding Basic Statistics, 2nd Ed. Houghton Mifflin, Boston, MA.Google ScholarGoogle Scholar
  3. Budiu, M., Sakr, M., Walker, K., and Goldstein, S. C. 2000. BitValue inference: Detecting and exploiting narrow bitwidth computations. In Proceedings of the 6th International Euro-Par Conference (Aug.), Munich, Germany. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Celoxica 2002. Handel-C Language Reference Manual, Version 3.1, 2002.Google ScholarGoogle Scholar
  5. Cao, Y. and Yasuura, H. 2003. Quality-driven design by bitwidth optimization for video applications. In Proceedings of IEEE/ACM Asia and South Pacific Design Automation Conference (ASPDAC'03) (Jan.). Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Cronquist, D. C., Franklin, P., Berg, S. G., and Ebeling, C. 1998. Specifying and compiling applications for RaPiD. In Proceedings of Field-Programmable Custom Computing Machines. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Draper, B. A., Böhm, A. P. W., Hammes, J., Najjar, W., Beveridge, J. R., Ross, C., Chawathe, M., Desai, M., and Bins, J. 2001. Compiling SA-C Programs to FPGAs: Performance results. In International Conference on Vision Systems, Vancouver (July). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Fang, C. F., Rutenbar, R., and Chen, T. 2003a. Fast, accurate static analysis for fixed-point finite-precision effects in DSP designs. In Proceedings of the 2003 IEEE/ACM International Conference on Computer-Aided Design. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Fang, C. F., Rutenbar, R., Peuschel, M. and Chen, T. 2003b. Toward efficient static analysis of finite-precision effects in DSP applications via affine arithmetic modeling. In Proceedings of Design Automation Conference (DAC). 496--501. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Frigo, J., Gokhale M., and lavenier, D. 2001. Evaluation of the streams-C C-to-FPGA compiler: An application perspective. In 9th ACM International Symposium on Field-Programmable Gate Arrays (Feb.), Monterey, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Gaffar, A. A., Mencer, O., Luk, W., and Cheung, P. Y. K. 2004. Unifying bit-width optimisation for fixed-point and floating-point designs, In IEEE International Conference on Field Programmable Custom Computing Machines (FCCM) (Apr.), Napa Valley, California. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Gupta, R., Mehofer, E. and Zhang, Y. 2002. A representation for bit section based analysis and optimization. In International Conference on Compiler Construction (Apr.), Grenoble, France, LNCS 2304, Springer Verlag, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Harrison, W. H. 1977. Compiler analysis of the value ranges for variables, IEEE Trans. Softw. Engin. (May). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Holloway, G. and Young, C. 2002. The flow analysis and transformation libraries of machine SUIF. In Proceedings of 2nd SUIF Compiler Workshop (Aug.), Stanford University, Stanford, CA.Google ScholarGoogle Scholar
  15. Kim, S., Kum, K., and Sung, W. 1998. Fixed-point optimization utility for C and C++ based digital signal processing programs. IEEE Trans. Circuits Syst. 45, 11 (Nov.).Google ScholarGoogle Scholar
  16. Kinnison, R. R. 1985. Applied Extreme Value Statistics. Macmillan, New York.Google ScholarGoogle Scholar
  17. Law, A. M. and Kelton, W. D. 2000. Simulation Modeling and Analysis. 3rd Ed. McGraw Hill, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Lee, C., Potkonjak, M., and Mangione-Smith, W. H. 1997. MediaBench: A tool for evaluating and synthesizing multimedia and communications systems. In Proceedings of the 30th Annual IEEE/ACM International Symposium on Microarchitecture (Micro-30) (Dec.), Raleigh, NC. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Mahlke, S., Ravindran, R., Schlansker, M., Schreiber, R., and Sherwood, T. 2001. Bitwidth cognizant architecture synthesis of custom hardware accelerators, HPL-2001-209 Technical Rep. (Aug.).Google ScholarGoogle Scholar
  20. Nayak, A., Haldar, M., Choudhary, A., and Banerjee, P. 2001. Precision and error analysis of MATLAB applications during automated hardware synthesis for FPGA's. In Proceedings of Design Automation and Test in Europe (DATE), Munich, Germany. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. OPEN SYSTEMC INITIATIVE 2003. SystemC 2.0.1 Language Reference Manual Revision 1.0, 2003.Google ScholarGoogle Scholar
  22. Özer, E., Nisbet, A. P., and Gregg, D. 2004. Stochastic bit-width approximation using extreme value theory for customizable processors. In Proceedings 13th International Conference on Compiler Construction (CC) (Mar.), LNCS 2985, Barcelona, Spain.Google ScholarGoogle Scholar
  23. Patterson, J. R. C. 1995. Accurate static branch prediction by value range propagation. In Proceedings of the ACM Conference on Programming Language Design and Implementation (PLDI) (June). Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Razdan, R. and Smith, M. D. 1994. A high-performance microarchitecture with hardware-programmable functional units. In Proceedings of the 27th Annual International Symposium on Microarchitecture (Dec.). San Jose, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Reiss, R. D. and Thomas, M. 1997. Statistical Analysis of Extreme Values, Birkhäuser Verlag, Basel, Switzerland. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Stefanović, D. and Martonosi, M. 2000. On availability of bit-narrow operations in General-purpose applications. In 10th International Conference on Field Programmable Logic and Applications (Aug.). Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Stephenson, M., Babb, J., and Amarasinghe, S. 2000. Bitwidth analysis with application to silicon compilation, In Proceedings of the ACM SIGPLAN '00 Conference on Programming Language Design and Implementation (PLDI) (June), Vancouver, BC. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Willems, M., Bürsgens, V., Keding, H., Grötker, T., and Meyr, H. 1997. System level fixed-point design based on an interpolative approach. In Proceedings of the 34th Design Automation Conference (DAC) (June). Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Wilson, R. P., French, R. S., Wilson, C. S., Amarasinghe, S., Anderson, J. M., Tjiang, S. W. K., Liao, S. W., Tseng, C. W., Hall, M. W., Lam, M. S., and Hennessy, J. L. 1994. SUIF: An infrastructure for research on parallelizing and optimizing compilers, Technical. Rep. Computer Systems Laboratory, Stanford University, CA.Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. XILINX 2002, Xilinx Virtex-II Architecture Manual, Sep. 2002.Google ScholarGoogle Scholar
  31. Yamashita, H., Yasuura, H., Eko, F. N., and Yun, C. 2000. Variable size analysis and validation of computation quality. In Proceedings of IEEE Workshop on High-level Design Validation and Test (Nov.). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A stochastic bitwidth estimation technique for compact and low-power custom processors

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM Transactions on Embedded Computing Systems
              ACM Transactions on Embedded Computing Systems  Volume 7, Issue 3
              April 2008
              437 pages
              ISSN:1539-9087
              EISSN:1558-3465
              DOI:10.1145/1347375
              Issue’s Table of Contents

              Copyright © 2008 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 8 May 2008
              • Accepted: 1 April 2006
              • Revised: 1 September 2005
              • Received: 1 June 2004
              Published in tecs Volume 7, Issue 3

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article
              • Research
              • Refereed

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader