Analog Computer Systems J. Paul Landauer Electronic Associates, Inc

In contrast to the crude analog-digital combinations of the 1960's, today's hybrids are true multiprocessors supported by realtime operating systems. ...
Author: Jean Bell
0 downloads 0 Views 4MB Size
In contrast to the crude analog-digital combinations of the 1960's, today's hybrids are true multiprocessors supported by realtime operating systems. Their solid-state analog computing elements loaded digitally in microseconds, together with their equation-oriented compilers, provide efficient, automatic setup and high productivity. Teamed with flexible, low-cost alphanumeric/graphic displays, modern hybrids are being applied over the full spectrum of scientific and engineering studies. Since the average hybrid system has an equivalent digital processing speed of over 10 million operations per second, at less than one-tenth the cost of large digital data processors, typical users realize cost savings of over 100/1. m

Hybrid Digital/Analog Computer Systems J. Paul Landauer Electronic Associates, Inc.

Introduction Third-generation hybrid computing systems provide the speed and versatility essential for a broad range of scientific/engineering applications in industry, government, and education. The modern hybrid computer is a digitally based system utilizing a low-cost, high-speed CPU to control and augment parallel analog processors. In addition, external machines can be used to program the analog processor and may be interfaced to the hybrid system to provide additional digital computer capacity. In contrast to earlier analog computers, parallel processors are designed specifically for digital computer operation, including all-solid-state computing blocks which can be set up automatically in microseconds. Today's hybrids include significant improvements over earlier analog and hybrid computers in both hardware and software to simplify programming, increase speed and productivity, enhance graphical interaction/documentation, and extend the classes of application. Through the use of MSI digital circuits, IC and thick film linear technology, and the latest graphic terminals, these extended capabilities are provided at a lower cost than was possible with earlier hybrids. July 1976

This paper first describes the rationale of hybrid computation versus other alternative computing technologies. The structure and characteristics of modern systems are then discussed, including the unique, real-time operating systems. Finally, a number of specific hybrid computer applications are outlined to demonstrate the versatility which these systems offer for the efficient solution of scientific and engineering problems.

Hybrid computationidata processing With the wide range of electronic data processing equipment available on either a dedicated or remote-access basis, one may ask why hybrid computation should be considered at all. To appreciate the answer to this question, it is essential to realize how computers are used for scientific and engineering studies. A typical study (see Figure 1) is usually initiated by a concept-for example, to develop or improve an existing process or device. This usually leads in two directions: a mathematical description of the concept and experimental testing. If the base of knowledge is not sufficient to formulate the concept mathematically, it is very difficult 15

-7

-

- -- ------"

NO

Figure 1. Scientific analysis/design study

if not impossible to continue the study, and the concept is then likely to be stored or discarded. Experimental testing of the concept is also required in most cases to obtain parameters for the mathematical model and to verify cortputed results. Validation of the mathematical model is usually an iterative procedure since the model must often be changed to sufficiently match experimental results. The study then enters the most important phase, during which the investigator gains insight into the operational characteristics of the process or device. This usually requires a kind of conversation between the engineer/scientist and the mathematical formulation. He must understand the stability of the system, sensitivity of parameters, and perhaps develop control schemes to handle unforeseen extreme operating conditions. Extensions of the mathematical model may be required to handle these new aspects of the system, and, in fact, the model may become simplified as the physical system is better understood. Finally, the study enters its last phase-design optimization. Here one selects the significant design parameters to meet specified technical criteria such as overshoot, damping, safety, etc., or business criteria such as yield, cost, or ease of manufacture. Usually at this stage a prototype of the device or a pilot plant of the process is implemented. The device or process may be interfaced to the environmental portion of the computer model so that the final optimum design is tested as its design is changed. Except for trivial physical systems, a computer is essential to perform all phases in the scientific study. It can often be used to control and monitor the experimental testing needed to acquire the necessary data for the various phases of the study. The most comprehensive and valuable mathematical models should represent the dynamics of the system 16

under study where the steady state is just a particular solution. Therefore, the computer must solve either ordinary differential or partial differential equations for each phase. With this foundation, the original question can be answered. Basically, there are four main reasons for the present widespread use of hybrid computation: (1) speed/elapsed time, (2) cost, (3) real-time/ hardware interface, and (4) conversational analysis.

The low end of the line is about as fast as the largest commercial scientific digital computers, and at the-upper end there is presently no equivalent EDP capability at any price. If

we assume

that equivalent computing is done

at the same accuracy, the speed of modern hybrid systems ranges from 1 to 150 MIPS (million instruc-

tions per second) for typical engineering design studies.' That is, the low end of the line is about as fast as the largest commercial scientific digital computers, and at the upper end there is presently no equivalent EDP capability at any price. This speed means that the engineer or scientist can investigate a much wider range of conditions in a shorter elapsed time, thereby achieving more indepth understanding of the physical system operation and better, more reliable designs. Since solutions of complete dynamic models would take an inordinate amount of time on digital computets, simplifying assumptions are often made which can lead to erroneous results. With the modern hybrid computer, there is seldom any difficulty in obtaining accurate, repeatable results for sophisticated dynamic models. COMPUTER

The low cost of studies employing hybrid computers, which has been documented many times in published literature,2'3 is further enhanced in thirdgeneration systems by the availability of extensive software for program preparation, analog processor setup and checkout, and real-time operating systems for better on-line utilization. Typical industrial hybrid computing centers are running at least a two-shift operation with a multiplicity of jobs. Of course, the low cost per run is a function of the fact that the average hybrid system is about 10 times faster than a large digital computer, and its cost is about 10 times less. As previously described, successful scientific analysis and design often involve interfacing physical hardware or processes to the mathematical model. The hybrid computer, which is inherently a real-time device, can be easily initerfaced to any type of analog or digital sensor or controller. The high-speed processing facility of the hybrid computer is sufficient for all physical systems, and its low cost makes it economical to dedicate the hybrid system while experimental runs are performed. The digital CPU in the hybrid system can monitor and document the results in any graphical or printed form. A natural outgrowth of the high-speed, low-cost, and real-time nature of the hybrid systems is its use for conversational analysis. This has always been a valuable asset of analog computers, and the modern hybrid system greatly augments this facility. Extensive conversational software, alphanumeric/graphic displays, and high-speed, allelectronic setup provide for efficient conversation between the user and the mathematical model. These facilities minimize the chance of errors and produce completely documented results in engineering units. Also, wasted on-line time is minimized since the user simply enters parameter changes and the digital processor will set up and run the program. In third-generation systems, the CPU can be multiprogrammed to handle a second job stream while the hybrid computer is used in a conversational mode.

Third-generation hybrid computing systems The structure of the third-generation hybrid computing system is shown in Figure 2. All system input/output and control are performed by the digital CPU. Up to six analog processors may be used with a single digital CPU to provide a range from 25 mathematic/logic computing blocks to about 1500 parallel blocks. In addition, an external digital computer can be interfaced to the hybrid system to provide both digital/digital transfer as well as direct control of the analog processors. The digital/ digital communication may be performed locally on dedicated, high-speed parallel buses or remotely through telephone modems. The primary operating terminal for the system in Figure 2 is the hybrid graphics terminal-an July 1976

enhanced Tektronix 4010. To provide direct display of the continuous, scaled data created by the analog processors, an analog port is added to the 4010. This port, which can be activated or deactivated by the CPU, is interfaced to the parallel processors for the X, Y drive of the storage CRT as well as logic signal control of blanking and erasing. With this terminal the hybrid user can create completely documented, continuous graphics results for either conversational analysis or hardcopy. Vector-generated graphical plots of di'gital data can also be superimposed on the analog solutions. Of course, standard analog strip-chart time recorders and dynamic CRT's can also be added to the system. In addition to the dedicated hybrid graphics terminal, additional remote terminals can be interfaced to the digital processor through modems from telephone lines. These remote terminals may be operated exclusively as digital terminals, or, by adding linear modems and the analog port, the remote user can have a true hybrid graphics display. A range of mass memory units can be added including disks and various speed/capacity magnetic tapes which interface through a direct memory access channel. These units provide storage for the operating system, user files, and data files. The universal controller also provides for expansion with a variety of card readers, line printers, digital plotters, and high-speed paper tape.

Hybrid programs are synchronized primarily by the real-time clock. This unit is a register counter which operates from a crystal pulse source. The timing interval can be preset from the CPU and the count can be monitored on the I/O bus. Also, the real-time clock is interfaced to the parallel processors so that it may be triggered from parallel logic programs and the interval pulse can be used to control analog program operation. In addition to the primary operating terminal, multiple hybrid terminals can be added to the universal controller to provide multiuser operation. This is particularly useful in an educational environment where a group of students may access the computer simultaneously. A modern analog processor consists of hardware components, each of which is capable of performing certain fixed mathematical operations: * * * * * * * * * *

integration, summation, multiplication, arbitrary function generation of the form y = f(x), certain fixed functions such as y = sin (x), y = log(x), compare,

switches, simple logic operations (AND, OR, NOT), single-bit memories,

counters, shift registers.

The variables of the problem to be solved are represented by signals in the analog processor, and 17

EXTERNAL ANALOG DEVICES

Figure 2. Hybrid system structure

each component can operate on these signals as dictated by the mathematical equations describing the problem. The computer is programmed by patching together, with actual patching wires, the collection of operations necessary to solve the equations of the problem. Some of the characteristics of the analog computer are: * accuracy 1 part in 104; * fixed point operations, dynamic range of ± 1; * parallel operation (solution evolved continuously in time); * limited memory; * limited arithmetic capability for complicated algebra; * changes made easily and directly; * all results available at all times. Because of the continuous and parallel nature of the analog components, the interface with the designer is intimate; by using the variety of display devices available, he is able to investigate in detail any portion of the system being studied at any time during the solution. Changes to the patching or component characteristics can be made easily during the solution, and the effects of these changes can be immediately seen. Since the com18

ponents operate in fixed point, there is a one-to-one correspondence between the analog voltages being manipulated and the signals of the problem being studied. Interpretation of results is direct, on-line during problem solution. As an example of the use of the analog processor, consider a simple one-body system which is described by Newton's law:4

mx=

Fi

where m is the mass of body, x the acceleration of the body, and the sum or forces acting on the body is

i

Fi = Fx + FD +FS= FX KDX

KsX

where Fx is some external force, FD the damping force, KD the damping coefficient, Fs the spring force, Ks the spring coefficient, and FD

=

-KDX,

Fs

=

KSx. COMPUTER

Since the analog computer is a fixed point device, amplitude scaling must be introduced so that scaled variables can be operated upon by the analog components. The mathematical model representing the one-body system would be written as

FmM

IM

Fx MY mx/

( KDXM) M\ mx/

L

XM ]

LxMJ

where the subscript M is used to denote the maximum value of a variable. This would be solved by the analog circuit of Figure 3.

(_FM\

mxMj

Figure 3. Analog solution of example

The analog processors are usually set up and controlled from the digital CPU through its I/O bus, although those tasks may also be performed by the external digital computer. Electronic coefficient devices can be set in a few microseconds each, and function generators can be loaded in hundreds of microseconds. This means that, after insertion of the interconnection panel, the entire analog processor can be set up in a few milliseconds. New, all-electronic digital voltmeters permit selection and readout of mathematic/logic blocks at over 200 per second. Complete setup and verification can be performed in about 10 seconds. Analog-to-digital and digital-to-analog data transfer can be accomplished on both the I/O bus and DMA simultaneously. A/D conversion of multiple channels can be typically performed at up to 125,000 15-bit words per second and digital-to-analog conversion can proceed at up to 300,000 15-bit words per second. All digital-toanalog converters provide the product of an analog variable by a digital word. Data transfer through the DMA may include "wraparound" addressing so that a large buffer containing many samples of a number of analog functions can input or output synchronously at up to maximum data rates using a single CPU instruction. July 1976

Hybrid operating systems The users of hybrid computation range from biomedical specialists with little or no knowledge of computer technology to electrical engineers with a comprehensive understanding of analog and digital computers. Potential applications cover the full spectrum of scientific analysis from theoretical mathematical studies to on-line, real-time data reduction and control for experimental laboratories. Therefore, on the one hand the operating system for hybrids must provide the convenience of Fortran batch processing, and on the other hand the user demands maximum run-time efficiency for highspeed, real-time operation. The system should also provide convenient, powerful interactive facilities for effective conversational use, not only for the digital processor but equally for the parallel analog processor and interprocessor communication. To satisfy this unique diversity of requirements, the operating system is composed of a hierarchy of language processors and executive systems. The structure of language processors is shown in Figure 4. This hierarchy, which has evolved over a 10-year period, permits the programmer to trade speed and convenience as necessary to handle each application efficiently. The interpretive processor is most convenient to use since it incorporates the entire system, including the parallel analog processor, into a common syntax. Any digital program or portion of a hybrid program in which speed of execution is not

MAXIMUM CONVENIENCE HOI CONVERSATIONAL INTERPRETIVE PROCESSOR

t

t

COMMON DATA

CONTROL LINK

MATH LIBRARY

STANDARD FORTRAN IV

ANALOG/ SCALED FRACTION DATA TYPE

IN-LINE ASSEMBLY

DIGITAL INTERFACE LIBRARY

SCIENTIFIC APPLICATION LIBRARY

COMMON

SUBROUTINE

DATA

LINK

ASSEMBLER MAXIMUM SPEED

Figure 4. Hybrid programming language hierarchy 19

a major factor can be prepared most easily in the interpretive language. Typical applications are for complete, automatic setup and verification of the parallel analog processor, conversational control of complete hybrid program execution, and computation of complex algebraic expressions during the programming process and for on-line program changes. To ensure a compatible hierarchy of programming, facilities are provided to communicate data with a compiled Fortran program. Also, control can be transferred from the interpretive processor to a precompiled Fortran subroutine. When the subroutine returns, the interpretive processor continues at the next step. The main digital run-time program may be prepared in Fortran using floating-point (REAL) data, and complete mathematics libraries for all ASA standard Fortran data types are provided. In addition, a library of subroutines is provided to convert REAL/fixed-point data for communication with the analog processors, An extensive scientific applications library for numerical integration and statistical analysis is also typically provided. When applications demand greater speed than can be obtained using floating-point arithmetic, the programmer can use single 16-bit memory cells to represent scientific data scaled in the range ±1, which is the same range as data scaled on the analog processors or obtained from experimental laboratories through the A/D converter. All Fortran operations permitted with REAL data can be performed with the scaled form with a significant increase in speed and reduction in core used. If a further increase in speed or savings in core is required, the programmer can insert assembly code in-line with Fortran statements. Also, in-line assembly code may be used to access hardware features that may not be directly accessible in Fortran or through the libraries. Finally, if a large amount of assembly code is required for extremely time-critical loops, the programmer can prepare Fortran-compatible subroutines called by the main Fortran program.

gain, etc. These developments have made it practical to implement and use compiler languages to generate programs automatically for the analog processors. With EAI systems, for example, an analog program compiler called ECSSL is available. The source language is Fortran based with extensions to specify differential equations and certain unique parameters needed to produce scaled analog programs. As indicated in Figure 5, the system analyst starts with a statement of the problem composed of a set of algebraic and/or differential equations, a set of constants and design parameters, specification of arbitrary functions, and initial conditions for differential variables. Also, an estimate of maximum values of state variables is needed for the program scaling. The user translates this problem statement into a Fortran-based syntax and punches cards to provide the source language for ECSSL. The ECSSL compiler is itself written in Fortran and must be executed on at least a mediumsize digital machine such as an IBM 360/40 or an SEL 32/50. A file specifying the configuration of available computing blocks on the Pacer analog processor can be maintained in the system or entered on a deck of cards. The ECSSL compiler first reduces the equations into individual operations to be performed by the mathematic/logic blocks. It then orders these operations for digital computation and scales all variables to a range of ±1. ECSSL imposes a set of static operating conditions on the program for checkout purposes when the parallel program is set up. If a portion of the program includes differential equations, the digital computer can carry out a solution of the problem for dynamic check purposes. Finally, the available components are assigned to each operation; and the ECSSL compiler generates the listings shown in Figure 4, as well as a magnetic tape file in the Hytran interpreter source language, which provides all the information needed to patch, set up, check out, and run the analog/hybrid program. (Hytran is the name used by Electronic Associates for its on-line interpretive processor on standard hybrid systems.)

Automatic program preparation for parallel analog processors

Applications of hybrid computation

For most applications published in the literature the efficiency in performing runs on the hybrid computer has been well documented. However, the programming effort was usually greater than preparing an equivalent all-digital computer program in a simulation language or in Fortran. The bulk of the additional effort is in preparing the. scaled interconnection program for the parallel analog processor, obtaining essential program verification data, and documenting the analog program. Modern analog processors are much easier to program than earlier analog computers due to the use of "black box" computing elements. These elements, such as digitally controlled attenuators and function generators, eliminate the special considerations of electrical characteristics such as loading, limited 20

The applications of hybrid computers are as varied as are the uses of modern scientific technology. Third-generation systems further advance the range of applications by providing higher speed/accuracy, new components which introduce new computing

techniques, sophisticated graphic displays, and reduced programming effort and cost. Rather than attempt to summarize all the applications of hybrid computation, certain specific examples are outlined that demonstrate unique benefits of the latest hybrid systems. Some of the major fields in which hybrid computation is being used are listed in Table 1. In most organizations both large digital computers and hybrid systems are available, and rational decisions are made to carry out studies using either or COMPUTER

r

IBM

360/40

--.

_

SPEC~~~IAL

|

{

|

|

t ~~~COMPONENT

-I

_

')

CLER

COMPONENT CONNECTIONS

I

'-

I

-

u~ ~ I

]Rocket engine controller for the Space Shuttle. As a part of the task of designing the throttleable rocket engines to be used in the Space Shuttle, Honeywell must simulate the rocket engine being developed by Rocketdyne and, using both a mathematical model of the controller and actual controller prototypes, must develop and evaluate the algorithms and parameters of the controller. A Fortran digital model of the system was developed which runs on a CDC 6600 at 50 times slower than

both of the systems, depending on the needs of the study. In industry and government installations, nearly all complete integrated hybrid systems are utilized more than one shift per day and, in some installations, more than two shifts. The use in educational installations varies, but where complete systems are available, utilization is generally high. The following paragraphs outline a few specific studies that indicate the unique capabilities of modern hybrid systems.

STATIC CHECK

_

-

IBMIN

PACER 600

_

I

_

J~~~~~~~~~~~~~~~~~~~

It

I

STANDARD

IAN _ INTER RETER . K

TT

_

I

I_

I

SOUIOI

FI

_ .

EAI

TE

I

{STANDARD

SETUP

iEXECUTIVE

\==

I

SPECIAL SETUP

rlvfr^l ._Vetfr

PATCHING CONNECTIONS

I

I

o. *

~~~~~~~STATIC

\~~ TEST

HY

I I I

|IRUN.TIME

L_ _I

_

__

I~~~~~~~~~~~~~FLE

_

I

I

Figure 5. The EAI ECSSLI360 processing system

July 1976

21

real-time. Also, the model has been run on an XDS Sigma 5 at 160 times slower than real time. These models are limited for design purposes and cannot be used at all for real-time operation with the prototype controllers. Honeywell also had a large first-generation hybrid system composed of six EAI-231R computers and a Table 1. Major fields of hybrid computer application

INDUSTRY MISSILES/SPACE VEHICLES AIRCRAFT/HELICOPTERS AVIONICS/RADAR SYSTEMS TURBINE ENGINES AUTOMOTIVE/OFF-HIGHWAY VEHICLES MARINE VEHICLES GASOLINE/DIESEL ENGINES CHEMICAL PROCESS PETROLEUM REFINING METALS PROCESSING UTILITIES/ELECTRICAL DISTRIBUTION NUCLEAR POWER PLANT DESIGN/SAFETY ELECTRONICS GOVERNMENT

NASA-SPACE SYSTEMS WEAPONS DEVELOPMENT/MISSILES VEHICLE RESEARCH/TESTING ENVIRONMENTAL PROTECTION AGENCY DOT-SAFETY/HIGH SPEED TRANSPORT BIOMEDICAL RESEARCH WATER RESOURCES/POLLUTION EDUCATION

UNDERGRADUATE EDUCATION GRADUATE RESEARCH SPONSORED RESEARCH

REAL-TIME

CONTROLLER MODEL

Sigma 5. On this system, the model also ran at only 50 times slower than real time since the problem frequencies are up to 250 Hz. Following an evaluation, it was decided that an EAI 700 system with two 781 analog/hybrid processors could simulate the rocket engine in real time. This system, as outlined in Figure 6, was subsequently purchased and installed at Honeywell with an interface to a Sigma 5 which will be used to model the controller. When the prototype controller is developed, it will replace the -Sigma 5 model for final design and evaluation. If one assumes that a CDC 6600 is capable of one million instructions per second, the Pacer 700 will be running at the equivalent of 50 MIPS an estimate which checks well with the author's data. Nuclear plant simulation. This application involved the simulation of the Pickering Nuclear Generating Station control to supplement the design work of individual loops and to review the performance of the plant control system before the plant went up to power.5 Graham Crate Associates carried out the study for Atomic Energy of Canada Ltd. using the EAI 690 (predecessor to Pacer 600) at the National Research Council in Ottawa, Canada. The mathematical model for the nuclear power plant was distributed between the 640 digital computer and the 680 analog computer as a function of speed and data storage requirements. Scaled fraction arithmetic in Fortran was used exclusively, giving a 10/1 speedup over what could have been obtained using real arithmetic. Included in the mathematical model were 40 first-order differential equations, 55 algebraic equations, 13 nonlinear functions, 9 time delays, 6 sampled variables, 12 limited variables, and 6 condition switches. This entire study was performed on the 690 hybrid system with one 680. The simulation verified the basic design of the control system, and several improvements in the control laws were found to improve the dyanmic behavior of the plant.

XDS SIGMA 5

EAI PACER 700 2 X 781 ANALOG PROCESSORS

100 DIGITAL PROCESSOR

ENGINE DYNAMICS

FUNCTION GENERATION

Figure 6. Real-time shuttle enginelcontroller model 22

COM PUTER

Power train-vehicle modeling. One industry in which the use of hybrid computation is growing rapidly is land vehicles, including automobiles, trucks, and off-highway vehicles such as earth movers, road scrapers, tractors, etc. An example of an application was the simulation of a power train-vehicle svstem by Caterpillar Tractor Company.6 The transmission model, which was for a two-axle, rubber-tired tractor-scraper hauling vehicle, was designed to represent accurately shifting transients for seven levels of clutch-actuated "gear" changes. Some of the objectives of the study were to optimize the system design parameters and to evaluate power train component capability and vehicle shift-feel. The study was originally implemented on two EAI 680 analog computers with a simple data interface to a CDC 3300 at the Caterpillar Research facility in Peoria, Illinois. It took about two days to manually set up and check out the program since the analog implementation required a large number of switched coefficients for the various clutches. However, very good correlation with actual vehicle data was obtained from the simulation. The results of the study included (1) indepth understanding of the power train-vehicle dynamics; (2) improved transmission design parameters to improve shift-feel and clutch life; and (3) predicted life for gears, bearings, and drive shafts according to cumulative fatigue damage theory. The use of a Pacer 600 hybrid system was also evaluated for this study.7 It was found that by use of electronic DCA's in place of the earlier servo-set potentiometers on the analog processor and with digital analysis of clutch lock, it was possible to implement the same model using a single 681 with very few parallel-logic driven switches. The speed of solution would be the same,

,