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

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!