skip to main content
article
Free Access

Phase coupling for horizontal microcode generation

Published:01 December 1987Publication History
Skip Abstract Section

Abstract

Microcode for mass produced architectures is still predominantly generated by hand. Yet, as speed dictates the vertical migration of commonly executed functions to microcode, the demand for automated code generation increases.Though considerably more complex than phase-decoupled methods, phase-coupled methods for the generation of horizontal microcode have the potential to produce more highly optimized microcode. Results of the retargetable phase-coupled microcode compiler, Horizon, are presented and directions suggested.

References

  1. {All86} V. H. Allan. A Critical Analysis of the Global Optimization Problem for Horizontal Microcode. PhD thesis, Computer Science Department, Colorado State University, Fort Collins, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. {AM87} V. H. Allan and R. A. Mueller. Compaction with General Synchronous Timing. IEEE Transactions on Software Engineering, 1987. To appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. {AU77} A. V. Aho and J. D. Ullman. Principles of Compiler Design. Addison-Wesley, Reading, MA, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. {BSKT79} U. Banerjee, S. Shen, D. J. Kuck, and R. A. Towle. Time and parallel processor bounds for fortran-like loops. IEEE Transactions on Computers, C-28(9):660--670, September 1979.Google ScholarGoogle Scholar
  5. {CAC*81} G. J. Chaitin, M. A. Auslander, A. K. Chandra, J. Cocke, M. E. Hopkins, and P. W. Markstein. Register allocation via coloring. Computer Languages, 6, 1981.Google ScholarGoogle Scholar
  6. {Das77} S. Dasgupta. Parallelism in Loop-Free Microprograms. In B. Gilchrist, editor, Information Processing 77, North-Holland, Amsterdam, Holland, 1977.Google ScholarGoogle Scholar
  7. {DeW76} D. J. DeWitt. A Machine-Independent Approach to the Production of Optimal Horizontal Microcode. PhD thesis, Department of Computer and Communication Sciences, University of Michigan, Ann Arbor, MI, 1976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. {DM85} M. R. Duda and R. A. Mueller. μ-C Microprogramming Language (Version 3.1) Reference Manual. Technical Report CS-85-11, Department of Computer Science, Colorado State University, Fort Collins, September 1985.Google ScholarGoogle Scholar
  9. {Fis79} J. A. Fisher. The Optimization of Horizontal Microcode Within and Beyond Basic Blocks: An Application of Processor Scheduling. PhD thesis, Courant Institute of Mathematical Sciences, New York University, New York, NY, October 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. {FLS81} J. A. Fisher, D. Landskov, and B. D. Shriver, Microcode Compaction: Looking Backward and Looking Forward. In Proceedings of the National Computer Conference, pages 95--102, AFIPS Press, Montvale, NJ, July 1981.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. {Hec77} M. S. Hecht. Flow Analysis of Computer Programs. North-Holland, New York, NY, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. {IKI83} S. Isoda, Y. Kobayashi, and T. Ishida. Global Compaction of Horizontal Microprograms Based on the Generalized Data Dependency Graph. IEEE Transactions on Computers, C-32(10):922--933, October 1983.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. {KT76} J. Kim and C. J. Tan. Register Assignment Algorithms for Optimizing Compilers - Part II. Technical Report RC 6262, IBM, Computer Sciences Department, IBM T.J. Watson Research Center, Yorktown Heights, NY, October 1976.Google ScholarGoogle Scholar
  14. {KT79} J. Kim and C. J. Tan. Register Assignment Algorithms for Optimizing Micro-code Compilers - Part I. Technical Report RC 7639, IBM, Computer Sciences Department, IBM T.J. Watson Research Center, Yorktown Heights, NY, May 1979.Google ScholarGoogle Scholar
  15. {LA83} J. Lah and E. Atkin. Tree compaction of Microprograms. In Proceedings of the 16th Microprogramming Workshop (MICRO-16), pages 22--23, Downingtown, PA, October 1983.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. {Lev81} B. W. Leverett. Register Allocation in Optimizing Compilers. PhD thesis, Computer Science Department, Carnegie-Mellon University, Pittsburgh, PA, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. {Lin83} J. L. Linn. SRDAG Compaction: A Generalization of Trace Scheduling to Increase the Use of Global Context Information. In Proceedings of the 16th Microprogramming Workshop (MICRO-16), pages 11--22, Downingtown, PA, October 1983.Google ScholarGoogle Scholar
  18. {MJ81} S. S. Muchnick and N. D. Jones, editors. Program Flow Analysis: Theory and Practice. Prentice-Hall, Englewood Cliffs, NJ, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. {MV87} R. A. Mueller and J. Varghese. Fundamental Concepts in Microprogramming. In S. Habib and S. Dasgupta, editors, Handbook of Microprogramming and Firmware Engineering, Van Nostrand, New York, NY, 1987. Forthcoming.Google ScholarGoogle Scholar
  20. {RT81} J. H. Reif and R. E. Tarjan. Symbolic program analysis in almost linear time. SIAM Journal of Computing, 11(1):81--93, February 1981.Google ScholarGoogle Scholar
  21. {SD85} B. Su and S. Ding. Some experiments in global microcode compaction. In Proceedings of the 18th Microprogramming Workshop (MICRO-18), pages 175--180, Asilomar, CA, Nov 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. {SDJ84} B. Su, S. Ding, and L. Jin. An improvement of trace scheduling for global microcode compaction. In Proceedings of the 17th Microprogramming Workshop (MICRO-17), pages 78--85, New Orleans, LA, Nov 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. {Tan78} C. J. Tan. Code Optimization Techniques for Microcode Compilers. In Proceedings of the National Computer Conference, pages 649--655, AFIPS Press, Montvale, NJ, June 1978.Google ScholarGoogle Scholar
  24. {TTTY78} M. Tokoro, T. Takizuka, E. Tamura, and I. Yamaura. A Technique of Global Optimization of Microprograms. In Proceedings of the 11th Microprogramming Workshop (MICRO-11), pages 41--50, 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. {Veg82} S. R. Vegdahl. Local Code Generation and Compaction in Optimizing Microcode Compilers. PhD thesis, Department of Computer Science, Carnegie-Mellon University, Pittsburgh, PA, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

(auto-classified)
  1. Phase coupling for horizontal microcode generation

    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 SIGMICRO Newsletter
      ACM SIGMICRO Newsletter  Volume 18, Issue 4
      Dec. 1987
      35 pages
      ISSN:1050-916X
      DOI:10.1145/16360
      Issue’s Table of Contents

      Copyright © 1987 Authors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 1 December 1987

      Check for updates

      Qualifiers

      • article

    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!