ISGEN: A Byte Stream Instruction Set Generator
Resumo
Various methodologies have been devised for the design of byte stream instruction sets (Tan78, SS82). The second author has proposed on approach that is largely automatic(Ben88). A set of instructions is derived that is optimal according to some criterion, such as the size of compiled code. The choice of instructions is driven by statistical analysis of a large amount of high level language code intended for the instruction set under design. We describe a computer program which will produce such on instruction set. The system has been successfully used to produce bytestream instruction sets to support BCPL (RWS80). Poly(Mat85) and EuLisp (PN+90). We present quantitative results showing the success of these designs. Byte stream instruction sets are now largely restricted to interpretive intermediate codes, with the majority of instruction sets being RISC, or derived designs. We outline current work to produce ISGEN-GA which will generalise the methodology, so that RISC type instruction sets can be produced automatically.
Referências
FJ. Ayala and J.A.Jr. Kiger. Modern Genetics. The Benjamin/Cummings Publishing Company, Inc., 1984.
J.P. Bennett. A Methodology for Automated Design of Computer Instruction Sets. PhD thesis, University of Cambridge, 1988.
J.P. Bennett and G.C. Smith. The need for reduced byte stream intruction sets. The Computer Journal, 32:370-373, April 1989.
L. Davis, editor. Handbook of Genetic Algorithms. Van Nostrand, Reinhold, 1991.
D.E. Golberg. Genetic Algorithms in search, optimization and machine learning. Addison-Wesley, 1989.
J.H. Holland. Adaptation in natural and artificial systems. The University of Michigan Press, 1975.
D.C.J. Matthews. Poly manual. Technical Report 63, Cambridge University Computer Laboratory, 1985.
D.A. Patterson and D.R. Ditzel. The case for the reduced instruction set computer. Computer Architecture News, 6:25-33, August 1980.
J. Padget, G. Nuyens, et al. The eulisp definition version 0.69. Technical report, University of Bath, 1990.
M. Richards and C. Whitby-Strevens. BCPL - The language and its compiler. Cambridge University Press, 1980.
R.E. Sweet and J.G. Sandman. Empirical analysis of the mesa instruction set. In Proceedings of the ACM Symposium on Architectural Support for Programming Languages and Operating Systems, pages 235-243, March 1982.
A.S. Tanenbaum. Implications of structured programming for machine architecture. Communications of the ACM, 21:237-246, March 1978.
A.J. van de Goor. Computer Architecture and design. Addison Wesley, 1989.