BURS-Based Instruction Set Selection

  • Dmitri Boulytchev
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4378)


Application-specific processors (ASIPs) look very promising as a platform for embedded systems since they comprise both the flexibility of a programmable device and the efficiency of application-specific hardware. A number of approaches to design an application-specific instruction sets were introduced during the last years. We apply the BURS (Bottom-Up Rewrite System) technique which is commonly used for retargetable code generation to this problem. As a result a simple algorithm is presented that generates both instruction set and assembly code from the source program; this algorithm can be used for retargetable code generation as well.


Register Allocation Machine Code Ground Tree Tree Grammar Instruction Selection 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Ganapathi, M., Tjiang, S.W.: Code generation using tree matching and dynamic programming. ACM Transactions on Programming Languages and Systems 11(4), 491–516 (1989)CrossRefGoogle Scholar
  2. 2.
    Aho, A.V., Johnson, S.C.: Optimal code generation for expression trees. Journal of the ACM 23(3), 488–501 (1979)CrossRefMathSciNetGoogle Scholar
  3. 3.
    Brisk, P., et al.: Instruction generation and regularity extraction for reconfigurable processors. In: Proc. of the International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, pp. 262–269 (2002)Google Scholar
  4. 4.
    Clark, N., Zhong, H., Mahlke, S.: Processor acceleration through automated instruction set customization. In: Proc. 36th International Symposium on Microarchitectures (2003)Google Scholar
  5. 5.
    Comon, H., et al.: Tree Automata Techniques and Applications (2002),
  6. 6.
    Cong, J., et al.: Application-specific instruction generation for configurable processor architecture. In: Proc. of the 12th International Symposium on Field Programmable Gate Arrays, pp. 183–189 (2004)Google Scholar
  7. 7.
    Fraser, C.W., Hanson, D.R.: A retargetable compiler for ANSI C. ACM SIGPLAN Notices 26(10), 29–43 (1991)CrossRefGoogle Scholar
  8. 8.
    Fraser, C.W., Hanson, D.R.: A Retargetable C Compiler: Design and Implementation, p. 564. Addison-Wesley, Reading (1995)zbMATHGoogle Scholar
  9. 9.
    Fraser, C.W., Hanson, D.R., Proebsting, T.A.: Engineering a simple, efficient code generator generator. ACM Letters on Programming Languages and Systems 1(3), 213–226 (1992)CrossRefGoogle Scholar
  10. 10.
    Fraser, C.W., Henry, R.R., Proebsting, T.A.: BURG — fast optimal instruction selection and tree parsing. SIGPLAN Notices 27(4), 68–76 (1992)CrossRefGoogle Scholar
  11. 11.
    Hanson, D.R.: Early experience with ASDL in lcc. Software – Practice & Experience 29(5), 417–435 (1999)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Hoffmann, C.M.: Pattern matching in trees. Journal of the ACM 29(1), 68–95 (1983)CrossRefGoogle Scholar
  13. 13.
    Huang, I.J., Despain, A.M.: Generating instruction sets and microarchitectures from applications. In: Proc. of the IEEE/ACM International Conference on Computer-Aided Design, pp. 391–396 (1994)Google Scholar
  14. 14.
    Huang, I.J., Despain, A.M.: Synthesis of instruction sets for pipelined microprocessors. In: Proc. of the 31th ACM/IEEE Design Automation Conference, pp. 5–11 (1994)Google Scholar
  15. 15.
    Kastner, R., et al.: Instruction generation for hybrid reconfigurable systems. ACM Trans. on Design Automation of Electronic Systems 7(4), 605–627 (2002)CrossRefGoogle Scholar
  16. 16.
    Praet, J.V., et al.: Instruction set definition and instruction selection for ASIPs. In: Proc. of the 7th ACM/IEEE International Symposium on High-Level Synthesis, pp. 11–16 (1994)Google Scholar
  17. 17.
    Zivojnovic, V., et al.: DSPstone: A DSP-oriented benchmarking methodology. In: Proc. International Conference on Signal Processing Applications and Technology (1994)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Dmitri Boulytchev
    • 1
  1. 1.St.Petersburg State University, 198504, Universitetskii pr., 28, St.PetersburgRussia

Personalised recommendations