{"title":"A microprogrammed satellite graphics system","authors":"G. M. Stabler, I. Carlbom, Kenneth I. Magel","doi":"10.1145/800232.807033","DOIUrl":"https://doi.org/10.1145/800232.807033","url":null,"abstract":"A coordinated research effort in the area of interactive computer graphics using a host-satellite configuration is described. Central to the project is the use of a high-level programming language and two microprogrammable processors. The system as a whole is discussed, as well as the areas of interaction between the design of the satellite's instruction sets and the design of its operating system and the compiler.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121467881","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A microprogramming language for the MLP-900","authors":"D. Oestreicher","doi":"10.1145/800232.807032","DOIUrl":"https://doi.org/10.1145/800232.807032","url":null,"abstract":"This paper describes a language, for programming a microprocessor, which combines the features of assembly languages with those of higher-level languages. The goal of the language design was to provide a convenient microprogramming language for the MLP-900 microprocessor project at USC/Information Sciences Institute.\u0000 This goal was accomplished by designing a language with careful consideration of the hardware instruction set. Additionally, the language was constrained not to implicitly affect the machine state at runtime. These considerations provided freedom and low-level control for the programmer. The compiler needed some flexibility to allow for higher-level language forms. This flexibility was provided by allowing the language to produce several microinstructions for each language statement.\u0000 This project is sponsored by the Advanced Research Projects Agency. This work is directed toward an ARPANET-based sharable resource as a means of exploring computer architecture, language development and special purpose processor design, all of which are of particular relevance to DOD selection and use of computer equipment.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133123857","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Towards a specification of syntax and semantics for languages for horizontally microprogrammed machines","authors":"T. G. Rauscher","doi":"10.1145/800232.807031","DOIUrl":"https://doi.org/10.1145/800232.807031","url":null,"abstract":"Horizontally microprogrammable computers provide the potential for efficient use of hardware through parallel operation of internal resources. Present languages for microprogramming such computers, however, contain unnatural symbolism, inflexible format requirements, and additional constraints that are unnecessary for the functions the languages perform. The intrinsic characteristics of horizontally microprogrammable machines suggest the use of operator precedence languages to program them. We formally describe the syntax of a language, ANIMIL, along these lines and discuss some initial ideas on semantics of languages for horizontally microprogrammable machines. A brief report on present status and thoughts for future work conclude the paper.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127925680","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The Datasaab FCPU microprogramming language","authors":"H. Lawson, Lars Blomberg","doi":"10.1145/800232.807030","DOIUrl":"https://doi.org/10.1145/800232.807030","url":null,"abstract":"This paper describes the high level microprogramming language (ML) used in microprogramming the FCPU (Flexible Central Processing Unit) developed by the Datasaab sector of Saab-Scania AB. The background of the use of machine dependent high level languages is discussed. The global structure and microinstruction organization of the FCPU are presented. The structure of the ML and microprograms are introduced followed by an example of the use of ML. A summary of the syntactical structure of FCPU microinstruction statements and the FCPU facilities are presented in an appendix.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115136267","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A COBOL Machine","authors":"R. J. Chevance","doi":"10.1145/800232.807035","DOIUrl":"https://doi.org/10.1145/800232.807035","url":null,"abstract":"This paper describes a research project undertaken by CII. This project is sponsored by the “Comité de Recherches en Informatique” contract No CRI 72-11.\u0000 In this study, we have to define a COBOL Machine and a Compilation Machine and to implement them on a medium-scale microprogrammed computer. The expected results are : performance evaluation of these machines, code compaction, COBOL compiler characteristics, operating system implications...","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"57 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122992777","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The design of an emulator for a parallel machine language","authors":"V. Lesser","doi":"10.1145/800232.807027","DOIUrl":"https://doi.org/10.1145/800232.807027","url":null,"abstract":"A paradigm is developed for structuring a complex emulator operating in a parallel hardware environment. This paradigm is based on the view that a complex emulator is best structured as of a set of microprocesses, each performing a small independent task, that interact in a closely-coupled manner. This is in contrast to the conventional method of structuring an emulator as a set of subroutines with a sequential flow of control among them. The design of an emulator for a parallel machine language (i.e. Adam's Graph Machine Language) using the new paradigm is discussed in detail, including the dynamic execution characteristics of the emulator in a parallel hardware environment. The analysis indicates that, given an appropriate microcomputer architecture, this structuring allows an emulator for a parallel machine language to be naturally and compactly coded and to fully map parallelism at the emulated machine language level into parallelism at the hardware level. In particular, it has been shown that an emulator can be structured so as to utilize well more than sixteen identical microprocessors. In addition, the emulator uses the idea of tailoring an emulator's control structure both to the emulated machine language and dynamically to the specific program being emulated.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114991018","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A general-purpose high-level language machine for minicomputers","authors":"B. W. Wade, V. Schneider","doi":"10.1145/800232.807039","DOIUrl":"https://doi.org/10.1145/800232.807039","url":null,"abstract":"In the course of our investigations into the design of translator writing systems (compiler-compilers), it has been established [2] that a certain set of “semantic primitives” can adequately express the major portion of the semantics of programs written in any of the several common high-level languages (e.g., PL/I, ALGOL W). It was also observed that each of these semantic primitives, while representing frequently-used high-level language constructs, corresponds to predictable sequences of machine-language instructions in the object code of programs.\u0000 Similarly, other authors have noted that conventional computer instruction sets are less than satisfactory as target languages for high-level language programs and have offered, as a solution to this problem, hardware or firmware processors designed specifically for programs written in a particular high-level language—the machine language and the programming language are essentially identical. The best known early example of such a processor is Helmut Weber's microprogrammed implementation of the EULER language on an IBM 360/30. [5] More recently, Burroughs Corporation has produced the B1700, a computer that has a microprogrammed language processor for each of several languages, the appropriate one of which is loaded into control memory to interpret a given program. [6,7] Such processors show significant speed increases over conventional computers of comparable basic speed in executing programs written in their particular language, but are too specialized to execute other languages efficiently. Therefore we have conjectured that, by designing a computer organization which implements a set of semantic primitives similar to Lancaster's via microprogramming, one instruction per primitive (so that the work required by a DO statement, for example, is performed in the firmware rather than in the software), we can achieve speed increases approaching those of the single-language processors, while retaining the flexibility characteristic of conventional computer organizations. This paper describes those primitives which we have chosen for initial implementation, and presents some preliminary results on the speedups obtained.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133043548","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A study of the application of compiler techniques to the generation of micro-code","authors":"A. Keith Tirrell","doi":"10.1145/800232.807029","DOIUrl":"https://doi.org/10.1145/800232.807029","url":null,"abstract":"With the advent of writable control memories, the opportunity for using “firmware” to implement software systems increases dramatically. This paper presents one approach to the problem of constructing a micro-program compiler which uses a machine-independent language.\u0000 While this kind of compiler language may not generate micro-programs as efficient as those constructed by assembly language, the improvement in documentation, the ease of locating logic errors, and the possibility of using micro-programs on different computer systems make a micro-programming compiler a useful tool.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"57 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123764371","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A language-oriented instruction set for the BALM language","authors":"M. Harrison","doi":"10.1145/800232.807038","DOIUrl":"https://doi.org/10.1145/800232.807038","url":null,"abstract":"The availability of microprogramming has increased interest in the design of instruction sets which are oriented towards particular higher-level languages (see (1), for example). We will refer to these as language-oriented instruction sets (or LOISs). In this paper we give a formal definition of a LOIS for the extendable language BALM. This LOIS, which we call MBALM, is used as the basis of the implementation of the current version of the language, BALM4. We will also compare two implementations of the MBALM instruction set, and outline briefly our experiences with them.\u0000 The external description of BALM4 is given in detail elsewhere (2,3). Briefly, it is an extendable language with an Algol-like syntax and data-types integer, real, logical, string, pair (list), vector, identifier, procedure, and label. Type information is carried with all data-objects, and run-time type testing and conversion is done when necessary. Garbage collection and a run-time compiler are significant attributes of the system. Outlined below are some of the properties of the implementation, which was designed initially for reasons of simplicity and flexibility, but which illustrate some of the advantages of a LOIS-based system.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123607598","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Functional memory-based dynamic microprocessors for higher level languages","authors":"G. Rossmann, L. H. Jones","doi":"10.1145/800232.807028","DOIUrl":"https://doi.org/10.1145/800232.807028","url":null,"abstract":"Dynamic microprocessors have been proposed as a means for providing the basic instruction sets necessary for efficient processing of a variety of higher level languages with specific hardware. Functional memory-based dynamic processors consisting of a collection of identical modules formed from writable associative arrays offer a more general solution to this problem. The basic properties of functional memory modules are discussed; and the structure of a functional memory-based microprocessor suitable for executing the SNOBOL 4 replacement statement using the data structures defined by Griswold (15) is given.","PeriodicalId":245504,"journal":{"name":"SIGPLAN/SIGMICRO Interface","volume":"174 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1974-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120904757","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}