Operating System for a Real-Time Multiprocessor Propulsion System Simulator
Total Page:16
File Type:pdf, Size:1020Kb
-N 84- 20 258 NASA Technical Memorandum 83605 Operating System for a Real-Time Multiprocessor Propulsion System Simulator Gary L. Cole Lewis Research Center Cleveland, Ohio Prepared for the Summer Computer Simulation Conference sponsored by the Society for Computer Simulation Boston, Massachusetts, July 23-25, 1984 NASA OPERATING SYSTEM FOR A REAL-TIME MULTIPROCESSOR PROPULSION SYSTEM SIMULATOR Gary L. Cole National Aeronautics and Space Administration Lewis Research Center Cleveland, Ohio 44135 ABSTRACT Simulations are becoming more sophisticated in terms of the complexity of the systems being modeled The NASA Lewis Research Center is developing and in the level of model details being sought. and evaluating experimental hardware and software Therefore, the computer hardware and associated systems to help meet future needs for real-time, operating systems that are needed to support these high-fidelity simulations of air-breathing propul- simulation efforts, in real time, are also becoming sion systems. Specifically, the Real-Time Multi- more complex. An example is the Real-Time Multipro- processor Simulator project focuses on the use of cessor Simulator (RTMPS) being studied at the NASA multiple microprocessors to achieve the required Lewis Research Center. The objective of the RTMPS computing speed and accuracy at relatively low project is to develop and evaluate experimental cost. Operating systems for such hardware configu- hardware and software systems for real-time inter- rations are generally not available. This paper active simulation of air-breathing propulsion sys- describes Che Real-Time Multiprocessor Operating tems. The RTMPS project is focusing on the use of System (RTMPOS) that has been developed at NASA- multiple microprocessors to achieve the required Lewis. The RTMPOS provides the user with a versa- computing speed and accuracy at low cost relative to tile, interactive means for loading, running, hybrid and main frame digital computers. debugging and obtaining results from a multipro- cessor-based simulator. A front-end processor (FEP) University grant and contract efforts related serves as Che simulator controller and interface to the RTMPS project are described in Refs. 1 to 4. between the user and the simulator. These functions These include investigations of computer architec- are facilitated by the RTMPOS which resides on the ture and related hardware requirements (l), FEP. approaches to partitioning simulation models for solution on multiple microprocessors (2,3) and The RTMPOS acts in conjunction with the FEP's requirements for high-level programming languages manufacturer-supplied disk operating system that for multiple processor systems (4). provides typical utilities like an assembler, link- age editor* text editor, file handling services, The NASA-Lewis in-house efforts, to date, are etc. Once a simulation rs formulated, the RTMPOS documented in this paper and in Refs. 5 and 6. The provides ft>r engineering-level, run-time operations general multiprocessor simulator concept is such as loading, modifying and specifying computa- described in Ref. 5. The experimental hardware con- tion flow of programs, simulator mode control, data figuration now in use at Lewis is described in this handling and run-time monitoring. Run-time moni- paper and in Ref. 6 Reference 6 also describes a toring is a powerful feature of RTMPOS that allows high-level Real-Time Multiprocessor Programming Lan- the user to record all actions talcen during a simu- guage (RTMPL) developed at NASA-Lewis. lation session and to receive advisories from the simulator via the FEP. The RTMPOS is programmed Although the RTMPS hardware is complex, it is mainly in PASCAL along with some assembly language anticipated that the desired user/simulator inter- routines. The RTMPOS software is easily modified to face capabilities can be achieved through proper be applicable to hardware from different design of the operating system. The purpose of this manufacturers. oappr i<; to givp an overview of the design and capa- bilities of the Real-Time Multiprocessor Operating INTRODUCTION System (RTMPOS). The RTMPOS is designed to allow highly-interactive, engineering-level programming Simulations of complex dynamic systems require and operation of multiprocessor systems. It is a versatile interface between the user and the simu- designed to be expandable and to minimize dependence lation compuCer. In order to maximize the useful- on specific manufacturer hardware. In the case of ness of the simulation as an engineering tool, the the Lewis experimental RTMPS, the RTMPOS provides interface should provide a user-friendly means of special system tasks that operate in conjunction programming, interacting with and obtaining results with a standard, manufacturer-supplied disk oper- from the simulation. In the past, different types ating system (DOS). This paper describes the multi- of computers have satisfied some but not all of processor architecture that is supported by the these requirements. For example, the use of analog RTMPOS, the general programming and operational computing equipment provides immediate results and functions that are provided, and the RTMPOS struc- an extremely versatile user/simulator interactive ture that supports those functions. capability. But programming and changing of the program can be difficult. On the other hand, digi- GENERAL SIMULATOR CONFIGURATION tal computers are more easily programmed but their operating systems are generally not designed to pro- The Real-Time Multiprocessor Programming Lan- vide the interactive capabilities needed for many guage (RTMPL, ref. 6) and the Real-Time Multipro- simulation tasks. cessor Operating System described in this paper are designed to support the general simulator configura- Figure 2 is a photograph of the current NASA- tion shown in Fig. 1. The primary elements in this Lewis RTMPS experimental hardware, the FEP, and the configuration are the multiple simulation channels peripheral equipment. The NASA-Lewis RTMPS uses a (1 to n), the Front-End Processor (FEP), and the Motorola EXORmacs* Development System as Che FEP and Real-Time Interface. The Real-Time Interface pro- the resident DOS is Motorola's VERSAdos (7)*. The vides for communications between the simulator and FEP and simulator processors are based on the external devices (e.g. strip-chart recorders and Motorola MC68000 microprocessor with an 8 MHz clock. controls). FORMULATING A SIMULATION The FEP serves as the simulator controller and the interface between the user and the simulator. An RTMPS simulation is formulated using the These functions are facilitated by the RTMPOS which RTMPL utility (6). The RTMPL allows the user to resides on the FEP. Data are transferred between program the various elements of the general Simula- the FEP and the simulation channels via the Inter- tor configuration in a high-level, engineering- active Information Bus. The RTMPOS provides for oriented language. As shown in Fig. 3, the output simulator run-time operations such as program load- of the RTMPL is assembly language source program ing and modification, simulator mode control, and files (one for each processor that is being used in data handling. The FEP also services the simulator the simulator) and a set of simulation data base peripherals (terminals, disk drives, printers, files that relate the simulation implementation to etc.). A manufacturer-supplied DOS provides typical the RTMPL source programs. utilities like an assembler, linkage editor, text editor, file handling services, etc. The resident Each assembly source program includes items DOS has a multi-tasking capability (i.e. permits such as executives, tasks, variables, constants, and many tasks to run concurrently in a time-slice argument groups. Executives and tasks define the mode). This capability is essential to the RTMPOS executable part of the simulation. An executive is concept since the RTMPOS includes several tasks that like a main program that directs the computational permit the simulator to send advisories to the user flow of that processor's simulation program. Tasks via the FEP while the simulation is being run. are used like subroutines to partition a program to improve its readability and versatility. An execu- Each simulation channel (fig. 1) consists of tive may perform tasks itself. Each program must two processors—a computation processor (COMP) and a have at least one executive but tasks are not preprocessor (PREP). Each COMP executes its required. Constants and variables are elements in assigned portion of the simulation (an RTMPL pro- the simulation equations that are to be executed in gram) and serves to interface its channel to the the program. Variables are typically time-dependent FEP. The PREP's also execute RTMPL programs and variables such as would appear in a differential provide for distribution of information from the equation. Because of the parallel nature of the COMP's to the other channels via the Real-Time solution, some variables must be transferred to/from Information Bus. Communication between the COMP and other processors- An argument group is a set of PREP is accomplished through a shared memory. Each constants and/or variables that are grouped under a simulator processor contains specially-designed single name for ease of reference. Argument groups firmware (software burned into EPROMs) that facili- provide for large-volume data transfers between the tates communication between the FEP and the COMP's FEP and the simulator. One application would be to and between the COMP's and The PREP's. The firmware periodically pass an argument group to a sampling performs such functions as initialization and check- routine to obtain simulation results. out of the processor memory, data transfer, setting the execution mode of the processors, sending inter- rupts out to the FEP and, in some cases, timer the s control. the so bler and linkage editor. One of the simulation channels (1 to n) is dif- ferent from the others. It serves as a real-time The data base files that are generated by the extension of the FEP. Its COMP is available to per- RTMPL are files of records that are read by the form any real-time analysis required by the user to RTMPOS.