Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Experiments in Automatic Microcode Generation

Published: 01 June 1983 Publication History

Abstract

A procedure is described which permits applications problems coded in a higher level language to be compiled to microcode for horizontally microprogrammed processors. An experimental language has been designed which is suitable for expressing computationally oriented problems for such processors in a distributed processing environment. Source programs are compiled first to a machine independent intermediate language and then to a machine dependence form consisting of elementary microoperations, with optimizations performed during each step. The microoperations are then compacted into executable microinstructions for a specific target machine. The procedure has been implemented for experimental purposes and used to compile several different types of applications programs. The experimental results are presented with an interpretation and analysis, along with recommendations for future study.

References

[1]
"Advanced data processing subsystem investigations," in Proc. Tech. Interchange Meeting, McDonnell-Douglas Astronautics Company, Huntington Beach, CA, Aug. 19, 1980.
[2]
A. K. Agrawala and T. G. Rauscher, Foundation of Microprogramming Architecture, Software, and Application. New York: Academic, 1976.
[3]
M. Andrews, Principles of Firmware Engineering in Microprogram Control. Potomac, MD: Computer Science Press, 1980.
[4]
T. Baba and H. Hagiwara, "The MPG system: A machine-independent efficient microprogram generator," IEEE Trans. Comput., vol. C-30, pp. 373-395, June, 1981.
[5]
S. Dasgupta, "Some aspects of high-level microprogramming," Ass. Comput. Mach. Surveys, vol. 12, Sept. 1980.
[6]
S. Dasgupta and J. Tartar, "The identification of maximal parallelism in straight-line microprograms," IEEE Trans. Comput., vol. C-25, pp. 986-991, Oct. 1976.
[7]
S. Davidson and B. D. Shriver, "Firmware engineering: An extensive update," in Proc. IFIP Working Conf. Microprogram. Restructurable Hardware. New York: North-Holland, 1980.
[8]
C. G. Davis and R. L. Couch, "Ballistic missile defense: A super computer challenge," Comput., vol. 13, pp. 37-46, Nov. 1980.
[9]
D. J. DeWitt, "A machine independent approach to the production of optimized horizontal microcode," Ph.D. dissertation, Univ. Michigan, Ann Arbor, 1976.
[10]
"Final report for the study of compilers for high throughput horizontal microprocessors," JRS Industries, Inc., San Diego, CA, Nov. 1979.
[11]
"Final report: Higher order language for high throughput, horizontal microprocessors, project analysis and summary," JRS Industries, Inc., San Diego, CA, DDC ADB054257, Oct. 1980.
[12]
"Final technical report for higher order language for high throughput horizontal microprocessors," JRS Industries, Inc., San Diego, CA, Oct. 1980.
[13]
J. Fisher, "The optimization of horizontal microcode: Within basic blocks and beyond," Ph.D. dissertation, Courant Institute, NYU, New York, 1979.
[14]
J. Fisher, "Trace scheduling: A technique for global miuocode compaction," IEEE Trans. Comput., vol. C-30, July 1981.
[15]
J. A. Fisher, D. Landskov, and B. D. Shriver, "Microcode compaction: Looking backward and looking forward," in Proc. Nat. Comput. Conf., 1981, pp. 95-102.
[16]
S. L. Graham, "Table driven code generation," Comput., vol. 13, pp. 25-34, Aug. 1980.
[17]
D. Landskov, S. Davidson, B. D. Shriver, and P. W. Mallet, "Local microcode compaction techniques," Ass. Comput. Mach. Comput. Surveys, vol. 12, Sept. 1980.
[18]
T. G. Lewis et al., "Firmware engineering using a high-level microprogramming system to implement virtual instruction set processors," Oregon State Univ., Tech. Rep., 1976.
[19]
P.-Y. Ma, "Optimizing the microcode produced by a high-level microprogramming language," Ph.D. dissertation, Oregon State Univ., 1978.
[20]
P.-Y. Ma and T. Lewis, "On the design of microcode compiler for a machine-independent high-level language," IEEE Trans. Software Eng., vol. SE-7, May 1981.
[21]
K, Malik and T. Lewis, "Design objectives for high-level microprogramming languages," in Proc. IEEE Micro-11 Conf., 1978.
[22]
P. W. Mallett, "Methods of compacting microprograms," Ph.D. dissertation, Univ. Southwestern Louisiana, Lafayette, 1978.
[23]
J. Nash and M. Spak, "Hardware and software tools for the development of a micro-programmed microprocessor," in Proc. IEEE 12th Annu. Workshop Microprogramming, Nov, 1979.
[24]
D, Patterson, "An experiment in high level language microprogramming and verification," Commun. Ass. Comput. Mach., voL 24, Oct. 1981.
[25]
D. A. Patterson, "STRUM: Structured microprogramming system for correct firmware," IEEE Trans. Comput., voL C-25, pp. 974-985, Oct. 1976.
[26]
D. A. Patterson, K. Lew, and R. Tuck, "Towards an efficient machine-independent language for microprogramming," in Proc. IEEE 12th Annu. Workshop Microprogramming, Hershey, PA, Nov. 18-21, 1979, pp. 22-35.
[27]
D. Patterson, R. Goodell, M. D. Poe, and S. Steely, Jr., "V-compiler: A next generation tool for microprogramming," in Proc. Nat. Comput. Conf., 1981, pp. 103-109.
[28]
M. D. Poe, "Heuristics for the global optimizations of microprograms," in Proc. 13th Annu. Workshop Microprogramming, Colorado Springs, CO, Nov. 30-Dec. 3, 1980, pp. 13-22.
[29]
C. V. Ramamoorthy and M. Tsuchiya, "A high-level language for horizontal microprogramming," IEEE Trans. Comput., vol. C-23, pp. 791-801, Aug. 1974.
[30]
M. Tokoro, E. Tamura, and T. Takizuka, "Optimization of microprograms," IEEE Trans. Comput., voL C-30, July 1981.
[31]
M. Tsuchiya and M. J. Gonzalez, "Toward optimization of horizontal microprograms," IEEE Trans. Comput., voL C-25, Oct. 1976.
[32]
J. Gieser, "On horizontally microprogrammed microarchitecture description techniques," IEEE Trans. Software Eng., vol. SE-8, pp. 513-525, Sept. 1982.
[33]
J. Gieser and R. Sheraga, "Microarchitecture description techniques," in Proc. IEEE 15th Annv. Workshop on Microprogram., Palo Alto, CA, Oct. 5-7, 1982, pp. 23-32.

Cited By

View all
  • (1986)An efficient retargetable microcode generatorProceedings of the 19th annual workshop on Microprogramming10.1145/19551.19536(44-53)Online publication date: 1-Dec-1986
  • (1986)An efficient retargetable microcode generatorACM SIGMICRO Newsletter10.1145/19530.1953617:4(44-53)Online publication date: 1-Dec-1986
  1. Experiments in Automatic Microcode Generation

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Computers
    IEEE Transactions on Computers  Volume 32, Issue 6
    June 1983
    84 pages

    Publisher

    IEEE Computer Society

    United States

    Publication History

    Published: 01 June 1983

    Author Tags

    1. Automatic microcode generation
    2. high level microprogramming languages
    3. horizontally microprogrammed processors
    4. microprogram compilers
    5. microprogramming

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 25 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (1986)An efficient retargetable microcode generatorProceedings of the 19th annual workshop on Microprogramming10.1145/19551.19536(44-53)Online publication date: 1-Dec-1986
    • (1986)An efficient retargetable microcode generatorACM SIGMICRO Newsletter10.1145/19530.1953617:4(44-53)Online publication date: 1-Dec-1986

    View Options

    View options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media