Advertisement

Customising Processors: Design-Time and Run-Time Opportunities

  • Wayne Luk
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3133)

Abstract

This paper reviews techniques and tools for customising processors at design time and at run time. We use several examples to illustrate customisation for particular application domains, and explore the use of declarative and imperative languages for describing and customising data processors. We then consider run-time customisation, which necessitates additional work at compile time such as production of multiple configurations for downloading at run time. The customisation of instruction processors and design tools is also discussed.

Keywords

Design Time Communicate Sequential Process Custom Instruction Declarative Language Declarative Program 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Gaffar, A., et al.: Floating-point bitwidth analysis via automatic differentiation. In: Proc. Int. Conf. on Field-Prog. Tech., IEEE, Los Alamitos (2002)Google Scholar
  2. 2.
    Bjesse, P., Claessen, K., Sheeran, M., Singh, S.: Lava: Hardware design in Haskell. In: Proc. ACM Int. Conf. on Functional Prog., ACM Press, New York (1998)Google Scholar
  3. 3.
    Bondalapati, K., Prasanna, V.K.: Dynamic precision management for loop computations on reconfigurable architectures. In: Proc. Symp. on Field-Prog. Custom Computing Machines, IEEE Computer Society Press, Los Alamitos (1999)Google Scholar
  4. 4.
    Celoxica.: Handel-C Language Reference Manual for DK2.0, Document RM-1003-4.0 (2003)Google Scholar
  5. 5.
    Constantinides, G.A., Cheung, P.Y.K., Luk, W.: The multiple wordlength paradigm. In: Proc. Symp. on Field-Program. Custom Computing Machines, IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
  6. 6.
    Damianou, N., Dulay, N., Lupu, E., Sloman, M.: The Ponder policy specification language. In: Sloman, M., Lobo, J., Lupu, E.C. (eds.) POLICY 2001. LNCS, vol. 1995, p. 18. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  7. 7.
    De Figueiredo Coutinho, J.G., Luk, W.: Optimising and adapting high-level hardware designs. In: Proc. Int. Conf. on Field-Prog. Tech., IEEE Computer Society Press, Los Alamitos (2002)Google Scholar
  8. 8.
    Derbyshire, A., Luk, W.: Compiling run-time parametrisable designs. In: Proc. Int. Conf. on Field-Prog. Tech., IEEE, Los Alamitos (2002)Google Scholar
  9. 9.
    Fidjeland, A., Luk, W., Muggleton, S.: Scalable acceleration of inductive logic programs. In: Proc. Int. Conf. on Field-Prog. Tech., IEEE, Los Alamitos (2002)Google Scholar
  10. 10.
    Guillou, A.-C., Quinton, P., Risset, T., Massicotte, D.: Automatic design of VLSI pipelined LMS architectures. In: Proc. Int. Conf. on Parallel Computing in Elect. Engineering (2000)Google Scholar
  11. 11.
    Guo, S., Luk, W.: An Integrated system for developing regular array design. Journal of Systems Architecture 47 (2001)Google Scholar
  12. 12.
    Haglund, P., Mencer, O., Luk, W., Tai, B.: PyHDL: Hardware scripting with Python. In: Proc. Int. Conf. on Engineering of Reconfigurable Systems and Algorithms (2003)Google Scholar
  13. 13.
    Harriss, T., Walke, R., Kienhuis, B., Deprettere, E.: Compilation from Matlab to process networks realized in FPGA. Design Automation of Embedded Systems 7(4) (2002)Google Scholar
  14. 14.
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)zbMATHGoogle Scholar
  15. 15.
    Hwang, J., Milne, B., Shirazi, N., Stroomer, J.D.: System level tools for DSP in FPGAs. In: Brebner, G., Woods, R. (eds.) FPL 2001. LNCS, vol. 2147, p. 534. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Jiang, J., Luk, W., Rueckert, D.: FPGA-based free-form deformation. In: Proc. Int. Conf. on Field-Prog. Tech., IEEE, Los Alamitos (2002)Google Scholar
  17. 17.
    Kathail, V., et al.: PICO: automatically designing custom computers. Computer 35(9) (September 2002)Google Scholar
  18. 18.
    Lee, D.U., Luk, W., Villasenor, J., Cheung, P.Y.K.: A hardware Gaussian noise generator for channel code evaluation. In: Proc. Symp. on Field-Prog. Custom Computing Machines, IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  19. 19.
    Lee, T.K., et al.: Compiling policy descriptions into reconfigurable firewall processors. In: Proc. Symp. on Field-Programmable Custom Computing Machines, IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  20. 20.
    Luk, W.: Systematic serialisation of array-based architectures. Integration 14(3) (February 1993)Google Scholar
  21. 21.
    Luk, W., Brown, G.: A systolic LRU processor and its top-down development. Science of Computer Programming 15(23) (December 1990)Google Scholar
  22. 22.
    Luk, W., Todman, T., De Figueiredo Coutinho, J.G.: Customisable hardware compilation. In: Proc. Int. Conf. on Engineering of Reconfig. Systems and Algorithms (2004)Google Scholar
  23. 23.
    Luk, W., Wu, T.: Towards a declarative framework for hardware-software codesign. In: Proc. Int. Workshop on Hardware/Software Codesign, IEEE Computer Society Press, Los Alamitos (1994)Google Scholar
  24. 24.
    Mahlke, S., et al.: Bitwidth cognizant architecture synthesis of custom hardware accelerators. IEEE Trans. on Computer-Aided Design 20(11) (November 2001)Google Scholar
  25. 25.
    McKeever, S.W., Luk, W., Derbyshire, A.: Compiling hardware descriptions with relative placement information for parametrised libraries. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, Springer, Heidelberg (2002)CrossRefGoogle Scholar
  26. 26.
    Mencer, O., Huebert, H., Morf, M., Flynn, M.J.: StReAm: Object-oriented programming of stream architectures using PAM-Blox. In: Grünbacher, H., Hartenstein, R.W. (eds.) FPL 2000. LNCS, vol. 1896, p. 595. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  27. 27.
    Muggleton, S.H.: Inverse entailment and Progol. New Generation Computing 13 (1995)Google Scholar
  28. 28.
    Page, I., Luk, W.: Compiling occam into FPGAs. In: FPGAs, Abingdon EE&CS Books (1991)Google Scholar
  29. 29.
    Schreiber, R., et al.: PICO-NPA: High-level synthesis of nonprogrammable hardware accelerators. Journal of VLSI Signal Processing Systems 31(2) (June 2002)Google Scholar
  30. 30.
    Seng, S.P., Luk, W., Cheung, P.Y.K.: Flexible instruction processors. In: Proc. Int. Conf. on Compilers, Arch. and Syn. for Embedded Systens, ACM Press, New York (2000)Google Scholar
  31. 31.
    Seng, S.P., Luk, W., Cheung, P.Y.K.: Run-time adaptive flexible instruction processors. In: Glesner, M., Zipf, P., Renovell, M. (eds.) FPL 2002. LNCS, vol. 2438, p. 545. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  32. 32.
    Shirazi, N., Luk, W., Cheung, P.Y.K.: Framework and tools for run-time reconfigurable designs. IEE Proc.-Comput. Digit. Tech. (May 2000)Google Scholar
  33. 33.
    Styles, H., Luk, W.: Customising graphics applications: techniques and programming interface. In: Proc. Symp. on Field-Program. Custom Computing Machines, IEEE, Los Alamitos (2000)Google Scholar
  34. 34.
    Styles, H., Luk, W.: Branch optimisation techniques for hardware compilation. In: Y. K. Cheung, P., Constantinides, G.A. (eds.) FPL 2003. LNCS, vol. 2778, Springer, Heidelberg (2003)CrossRefGoogle Scholar
  35. 35.
    Thomas, D., Luk, W.: A framework for development and distribution of hardware acceleration. In: Proc. SPIE,Reconfigurable Technology: FPGAs and Reconfigurable Processors for Computing and Communications, vol. 4867 (2002)Google Scholar
  36. 36.
    Todman, T., Luk, W.: Combining imperative and declarative hardware descriptions. In: Proc. 36th Hawaii Int. Conf. on System Sciences, IEEE, Los Alamitos (2003)Google Scholar
  37. 37.
    Uddin, M.M., et al.: An accelerated datapath width optimization scheme for area reduction of embedded systems. In: Proc. Int. Symp. on Systems Synthesis, ACM Press, New York (2002)Google Scholar
  38. 38.
    Weinhardt, M., Luk, W.: Pipeline vectorization. IEEE Trans. on Computer-Aided Design 20(2) (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Wayne Luk
    • 1
  1. 1.Department of ComputingImperial CollegeLondonEngland

Personalised recommendations