Chapter 8

The UNIVAC system 1

/. Presper Eckert, Jr. / James R. Weiner H. Frazer Welsh / Herbert F. Mitchell

of Organization the UNIVAC system which all data must pass during transfer between any arithmetic In March the first 2 register and the main or between the 1951, UNIVAC system formally passed its memory memory and the tests and was The arithmetic acceptance put promptly into operation by the input-output registers. registers are shown along Bureau of the Census. the bottom of each connected to the Since the UNIVAC is the first diagram high speed bus which can handle both alphabetic and numerical data to reach system. full-scale The L-, F-, X-, and are each operation so far, its operating record and a review of A-registers of one word or 12- the of to character and are concerned with types problems which it has been applied provide an capacity directly the arithmetic milestone in the field of operations. The V- and are of 2- and 10-word interesting ever-widening electronic digi- Y-registers capacity, tal . respectively. They are used solely for multiple word transfers The of the within the main Associated organization UNIVAC is such that those functions memory. with the arithmetic registers which do not are the adder directly require the main computer are performed algebraic (AA), the comparator (CF), and the multi- units each counter by separate auxiliary having its own power supply. Thus plier-quotient (MQC). the keyboard to magnetic card to tape, punched magnetic tape Addition-subtraction instructions and to are tape typewritten copy operations delegated to auxiliary The addition-subtraction components. operations are performed in conjunction with the comparator since all numerical are absolute The main computer assembly includes all of those units which quantities with an are concerned with the main magnitudes algebraic sign attached. Before either an directly or central computer opera- addition or subtraction is tions. A block of this performed, the two quantities, one diagram arrangement is shown in Fig. 1. All in the of the elements shown already A-register and the other either from the are contained within the central computer memory or from the casework X-register, depending the instruction, except the supervisory control desk (SC) and the Uni- upon particular 2 are for to which the compared magnitude and sign. The adder can then servos, lines in the upper right section of the diagram inputs be switched connect. so as always to produce a noncomplemented result for The choice of The in any operation. adder input arrangement is there- supervisory control, addition to all the necessary control fore under the control switches and indicator of the comparator. The also lights, contains an input keyboard. Also comparator determines the for the result cabled to the control is proper sign to the usual supervisory a typewriter which is operable according the algebraic rules. by main computer. By means of these two units, limited One additional function the amounts of information can be inserted or removed either at the performed by comparator for addi- tion and subtraction is to control the will of the operator or by the programmed instructions. complementer. This deter- mination is based which - The circuits upon ( + , or is input-output operate on all data entering or leav- operation ) indicated, whether the The and and, the signs are like or unlike. For a subtract ing computer. input output synchronizers properly instruction, time the sign of the subtrahend is reversed before the incoming or outgoing data for either the Uniservos entering the com- (tape The or the parator. comparator then compares the of the devices) supervisory control devices. The input and output signs quantities in order to determine and are each 60 whether the two quantities are subtracted registers (/ O) word (720 characters) temporary or added. storage registers which are intermediate between the main com- puter and the input-output devices. Multiplication instruction The bus high-speed amplifier is a switching central through The multiplication process requires the services of the adder, the tAIEE-lRE 1951. Conf., 6-16, December, comparator, the multiplier-quotient counter and the four arith- 2 Registered trade mark. metic the first of registers. During step multiplication the X-reg- 157 158 Part 2 The instruction-set processor: main-line computers Section 1 Processors with one address per instruction

STANDARD PULSES TO ALL UNITS

. A ,

I t I I I I I ' CONTROL BUSSES TO ANO TIMING PULSE FROM SUPERVISORY UNISERVOS GENERATOR CONTROL READ WRITE a BUS BUS CYCLING UNIT (SC) INPUT- (CU) [ T OUTPUT FROM TO CONTROL CONTROL SIGNALS CIRCUITS TO GATES ALL UNITS T CONTROL SIGNALS Hillllli -J--*- --.Ml MAIN MEMORY MEMORY Tl I (MM) SWITCH INPUT OUTPUT I I I (1000 WORDS] SYNCHRONIZER SYNCHRONIZER FUNCTION TABLE (FT) (6 WORDS)

I

I

I CY PC INSTRUCTION MEM. LOCATION DIGITS DIGITS HIGH- HSB II ODD- SPEED EVEN BUS I I I I CHECKER CONTROL AMPLIFIER STATIC REGISTER _»SIGS TO (OEC) INPUT- (HSBA) HSB 26 (SR) OUTPUT CONTROL — DISTRIBUTOR LINE I CIRCUITS

I

I

A i CONTROL SIGS TO

I REGS ANO CONTROL CIRC. OVERFLOW I TIME OUT SIGNAL (TO) TO AAS CC t I CHECK I I I I CIRCUITS I ITTTT ALGEBRAIC (MOO COMPARATOR ADDER (CP) INPUT FROM REGS. (AA) AND OTHER UNITS LEGEND: INFORMATION SIGNALS ISIGNAL SIGNAL <1 i*5 •CONTROL SIGNALS 8 PULSES

L F X A CC L CR Y V t WORD) (1 WORD) (t WORD) (1 WORD) (1 WORD) (I WORD) (10 WORDS) (2 WORDS) " "SB2A _HSB_£A_ HSB1A am E_XIBACL£QMR-0| i Fig. 1. Block diagram of UNIVAC. Chapter 8 The UNIVAC system 159

ister receives the multiplier from the memory and the comparator position to the left. The multiplier-quotient counter counts each the first determines the sign of the final product by comparing signs transfer, thereby building up the quotient digit. As soon as of the multiplier and multiplicand. During the next three steps the quantity in the A-register, (neglecting its original sign) goes the in the multiplicand, which has been stored in the L-register by some negative, digit the multiplier-quotient counter, not counting the transfer which causes the remainder to is trans- previous instruction, is transferred three times to the A-register go negative, ferred to the and the remainder in the is through the algebraic adder. The result, three times the multi- X-register A-register shifted one to the left. The divisor is then added to the plicand, is then stored in the F-register. During the next 11 steps place until the becomes This time the of multiplication, the successive multiplier digits, beginning with A-register quantity positive.

the least significant, are transferred from the X-register to the multiplier-quotient counter must give the complement of the of transfers multiplier-quotient counter. The multiplier-quotient counter then number for the real quotient digit. Special comple- determines whether each particular multiplier digit is less than menting read-out gates provide this method of interpreting the three, or greater than or equal to three. multiplier-quotient counter. releases to the If the former, the L-register the multiplicand The X-register therefore collects the quotient, digit by digit,

A-register via the adder, and the multiplier-quotient counter is from the multiplier-quotient counter until the full 11 digits have stepped downward one unit. If the multiplier digit is equal to or been obtained. The quotient is then transferred to the A-register greater than three, the multiplier-quotient counter sends a signal and the sign from the comparator (CP) is affixed during the final to the F-register which releases three times the multiplicand to stage of the divide instruction. the A-register and the multiplier-quotient counter is stepped three The other internal operations of the UNIVAC include many times. Thus a multiplier digit of seven would be processed as two transfer instructions by which words may be moved among the and the extraction transfers from the F-register to the A-register and one transfer from registers memory with and without clearing, instruction certain of the L-register to the A-register, or a total of three transfers. by which digits a word may be extracted into another to the of the When the multiplier-quotient counter reaches zero, the next word according parity corresponding of an extractor shift control multiplier digit is brought in from the X-register, while the A-reg- digits word; instructions; and special instructions such as transfer of in ister, containing the first partial product, is shifted one position breakpoint, control, (explained

to the right. subsequent paragraphs) and stop. During the final step of multiplication, the sign is attached to Basic operating cycle the product which has been built up in the A-register. One of the several available instructions causes the least multiplication sig- The basic operating cycle of the UNIVAC is founded upon single nificant as are shifted the limits of the digits, they beyond A-reg- address instructions which specify the memory location of one to the where the ister, to be transferred X-register they replace word. In the case of the arithmetic instructions which require two as are moved to the multiplier digits they multiplier-quotient operands, one of the operands must be moved into the proper counter. Thus 22 can be obtained as well as 11 place products register by some previous instruction. In order to control the place. sequence of instructions, a special counter, called the control counter (CC), retains the memory location from which the succeed- Division instruction ing instruction word is to be obtained. Each time a new instruction The division operation is performed by a nonrestoring method. The word is received from the memory, the quantity in the control divisor is stored in the L-register by some previous instruction and counter is passed through the adder where a unit is added to it. the dividend is brought from the memory and put in the A-register Therefore the normal sequence is to refer to successive memory

during the first step of the division instruction. As in multiplica- locations for successive instruction words. Initially the control tion, the signs of the two operands are compared in the comparator counter is cleared to zero and the first group of instructions must, at this time and the sign of the quotient is then stored in the therefore, be placed in memory locations from zero upward. A comparator pending completion of the division operation. The transfer of control instruction enables the programmer to change principal stages of division consist of transferring the divisor from the control counter reading whenever desired and thus shift from the L-register to the A-register through the complementer and one sequence to another. After a transfer of control takes place, adder as many times as required to produce a quantity less than the new number in the control counter is increased by unity each zero in the A-register, the dividend having been first shifted one time a new instruction word is obtained from the memory. 160 Part 2 The instruction-set processor: main-line computers Section 1 Processors with address | one per instruction

control instructions the function table. virtue of Transfer of By this relation, CY develops signals in addition to those by the instruction, which, for ex- The transfer of control instructions are of three types, the uncon- developed ample, can cause the control to transfer the second half ditional transfer which changes the control counter reading with- register of the instruction word into the static when the first half out question, and two conditional instructions which require that register has been completed. Similarly, after the second half instruction either equality or a specific inequality exists between the words is finished the cycle counter causes the of the control in the A-register and the L-register. In the former case the quan- reading counter to into the location section of the static tities must be identical for transfer of control to occur and in the pass memory register and thus cause the next instruction word to be transferred latter the quantity in the A-register must be greater than the from the memory to the control register. When the word reaches quantity in the L-register for the control counter reading to be the control the counter also causes the control changed. register, cycle counter reading to be increased by unity. The four are Since the UNIVAC can handle alphabetic as well as numerical cycles the first four these designated by Greek letters a (transfer CC to SR), data, conditional transfer instructions are as useful for alpha- ft (transfer to CR), y first and 8 betizing as they are to determine if a certain iterative arithmetic memory (perform instruction), second has been (perform instruction). process performed often enough to come within specified numerical tolerances. Program counter Control register The multistage instructions, such as multiplication, are guided Since six their characters (intermixed alphabetic and numerical) are through various steps by the program counter (PC). The sufficient to counter has four specify an instruction and there are 12 characters per program stages or 16 positions. All multistage each instruction instructions can be within word, word can represent two independent in- performed this number of steps. structions. A 1-word register, called the control register (Cfi), has

been which stores each instruction word as it comes from provided Checking circuits the memory. Thus one memory referral is sufficient for a pair of The circuits checking of the UNIVAC are of two main types, instructions and the control register stores both halves so that the odd-even checkers and duplicated equipment with comparison second instruction is available as soon as the first has been com- circuits. The odd-even checker depends upon the design of the pleted. pulse code used within the computer. This code provides seven The general term control circuits includes all those elements pulse positions for every character. Six of the seven positions are which work together to process the instruction routine. As each significant as the actual code while the seventh is the odd-even instruction word reaches the control register, the first half of it channel. If the number of pulses or ones within the first six chan- is passed immediately into the static register (SR). The static- nels of any character is even, a one is placed in the seventh channel register drives the main function table and memory switch. The to make the total odd. Thus, the total number of ones across the instruction digits are translated by the function table into the seven channels is always odd. By means of a binary counter and appropriate control signals for the instruction called for. The a few gates, an odd-even checker has been constructed which memory switch selects the location called for by the memory examines seven which the location every pulse group passes through high digits and opens the proper memory channel to the high- speed bus amplifier. In this connection, mention must be made speed bus system at the proper time. Since the memory is con- of the periodic memory check which interrupts operation every structed of 100 channels, each holding ten words, the memory five seconds to pass the entire contents of the memory over the switch is a combination of spatial and temporal selection. high speed bus system and, consequently, through the odd-even checker. Any discrepancy is immediately signalled to the super- Cycle counter visory control and further operation ceases. within each instruction, as translated the function Implicit by The duplicated equipment type of checking consists of dupli- table, is an which causes the to move on ending signal computer cating the most essential part of the arithmetic circuits and their to the next instruction. The to this is the key sequence cycle controls and producing simultaneously independent results, which counter which is advanced the (CY), by ending pulse. The cycle can then be compared for equality. For this type of checking, the counter is a which is connected into 2-stage 4-position counter, A-, F-, X-, and L-registers, algebraic adder, comparator, multi- Chapter 8 The UNIVAC system 161

and the bus are plier-quotient counter, high speed amplifier dupli- If the previous direction does not agree with the new direction cated. called the for, input-output control circuits generate the proper The is not but is checked the memory duplicated, by periodic signals to prepare the Uniservo to move in the opposite direction. check mentioned Various sections of the con- If the memory previously. instruction is to rewind a Uniservo, the input-output control trol circuits are duplicated such as the program counter and cycle circuits then direct the center drive of the selected Uniservo to counter. rewind the tape to the beginning and stop. As soon as the instruction has proceeded to the point where and unit Timing pulse generator cycling the input-output control circuits need no further information from

the function the instruction is The timing pulse generator and cycling unit (CU) are the source table, ending signal generated of the basic and the internal circuits to the next even timing signals throughout the computer. The timing proceed instruction, occur at 2.25 while the or continues. The pulses megacycles per second. The cycling unit reading, writing rewinding UNIVAC can an an subdivides this rate into the character rate and word rate. The process input, output and several rewind operations

is while on internal character rate one seventh of the basic pulse rate since there simultaneously carrying computation. are seven for So far the method which the words pulses each character. There are 12 characters per by are transferred from the to the word but space for a 13th character is included in a word time /-register memory has not been mentioned. This opera- tion is combined with certain read and is called the space between words. This time is used for instructions in a manner not obvious. are switching purposes. immediately There two instructions which read from The the to the one the to move cycling unit, therefore, develops the word signals at tape /-register, causing tape forward, or the other it to move backward. There are two other 77 X %3 Vsi °f tne Dasic pulse rate. Within the cycling unit causing input instructions similar to those but (CU) are numerous duplications and comparisons to ensure com- just mentioned, they have the additional of first from the plete reliability. operation reading /-register to the and then memory reading a new group of 60 words from tape into the Input-output circuits /-register. Thus the first type of input instruction reads from to the tape /-register only. It must be followed by the second type The operation of the input-output system is dovetailed as effi- of instruction in order first to clear the /-register and then read ciently as possible with the operation of the arithmetic circuits. in the second block of 60 words. Whenever are allowed to so possible, parallel operations proceed The output instructions do not operate in this way but instead as to minimize the time lost on internal operation while the slower read from directly memory to the O-register and then to the tape input-output operations are taking place. as one instruction. The principal input-output instructions are handled in a man- A third of ner type checking circuit occurs in the input-output identical to that for the internal operations, except that now control circuits which counts the number of characters the function transferred table develops signals which bring the input-output from the in each block. Since there control tape must always be 720 circuits into operation. The information supplied to the characters per block, the 720 checker signals any discrepancy to input-output control circuits by the function table includes the the supervisory control. following: One other phase of the input-output operation concerns the two control 1 supervisory input-output instructions. One of them Which of the ten possible Uniservos is being called on a permits single word to be typed in from the input keyboard and 2 Whether it is a read or that an or write, is, input output the other causes a single word to be typed out automatically. operation

3 If it is the "read," direction in which the tape is to move Auxiliary equipment

The two principal auxiliary devices mentioned earlier were the The control input-output circuits, therefore, begin by testing 1 Unityper, which converts keyboard operations to whether or not the Uniservo tape recording, indicated now is in use or not. If 1 and the Uniprinter, which converts to it is magnetic recording type- already in use, everything else waits until that Uniservo is written copy. free. Next, the input-output control circuits test to determine whether the Uniservo selected last moved backward or forward. 'Registered trade mark. Section 1 Processors with one address instruction 162 Part 2 The instruction-set processor: main-line computers per

Unityper. A simple block diagram of the Unityper is shown in Fig. func- 2. Each keyboard operation pulses the input to an encoding tion table which, in turn, drives the appropriate heads for record- the the ing the particular combination on tape. Simultaneously, the same pulse triggers a motor delay flop which operates tape motor for an interval sufficient to move the tape across the head for the distance required to record one character. However, there is a punched paper loop system associated with the Unityper for individ- the purpose of providing the typist with various guideposts three ually set up for each problem. The loop control system serves distinct control functions. First, it allows the programmer to set up various numbers of characters for the individual items being entered for a given problem. If the typist ever enters other than the specified number of characters, the loop control signals an error. Although the basic word length is 12 characters, the pro- grammer may subdivide or group the words to suit any length of item. The loop can then be punched with what are called "force en- check" punches. Whenever the typist completes a correctly tered item, she must operate a release key before entering the next item. If the forced check is released too early an error is created, or if an additional character is typed after the forced check should have been released, an error is similarly indicated. The second function of the loop is to control the erase opera- tion. The erase operation is the only way in which an error can be recalled. When the erase key is operated, the loop and tape Chapter 8 The UNIVAC system 163 Section 1 Processors with one address instruction 164 Part 2 The instruction-set processor: mainline computers per

Tape reading and recording: Scientific problems Pulse density: 120 per inch A general-purpose matrix algebra routine designed to add, sub- Tape speed: 108 inches per second tract, multiply, and reciprocate matrices of orders up to 300 has Input block size: 60 words: 720 characters been prepared and applied to a number of matrices. Inverses have Tape width: % inch: 8 channels been calculated for three different matrices of orders 40, 50, and Internal operations: 44. The error matrices for the first two of these inverses also were capacity: 1,000 words; 12,000 characters 8 Memory calculated. In both, the largest error term was of the order of 10~ . construction: 100 10 Memory mercury channels; words/ matrices A triple product matrix was formed from component channel ranging from 5 by 40 to 40 by 40. A check product was obtained Access time: by reversing the sequence of multiplications, verifying the original 202 microseconds Average: product to within 2 units in the 11th place. The computer time Maximum: 404 microseconds required for these calculations was 1 hour and 15 minutes to to determine its error Word length: calculate the inverse of order 50, 45 minutes 12 characters matrix. The other calculations were proportionately shorter. In all 9 pulses of this work, magnetic tapes were used as temporary storage for between words = 7 (include space pulses) the bulk of the matrix elements involved. The high speed of the units more than with the need Basic pulse rate: tape reading kept up computer's 2.25 megacycles for data. No mathematical checks, other than the over-all check Addition: 525 microseconds mentioned, were included in the computation, the self-checking 525 microseconds Subtraction: features of the system making these completely unnecessary. 2,150 microseconds Multiplication: A second computation—that of obtaining six different specific Division: 3,890 microseconds solutions to a system of 385 simultaneous equations—was com- (All times shown include time for obtaining instructions and pleted in 27 minutes on the computer. The system of equations operands from memory) arose from a second order nonlinear differential equation of gas flow through a turbine. The error terms resulting from the sub- stitution of the computed unknowns into the basic equation were -11 of the order of 10 . Applications of UNIVAC The third example is that of a 2-dimensional Poisson equation, Types of problems for which UNIVAC is applicable using a 22 by 22 mesh. Each iteration required 13 seconds and its Universal Automatic the UNIVAC True to name, Computer, produced a maximum separation of successive surfaces of the order is data or calculation in 8 system capable of handling processing of 10~ after approximately 300 iterations. well suited virtually all fields of human endeavor. It is particularly of or Statistical to applications requiring large volumes input output data, problems or both. In the second major field of statistical computation, the Census and of the UNIVAC For convenience classification, applications problem has been a prime example. The Census problem produces will be treated under four statistical, Tables for the 1950 headings: scientific, logistical, a part of the Second Series Population on and commercial. The scientific problem usually, though not al- Decennial Census. and with ways, has relatively small amounts of input output data, The Second Series contains 30 types of tables covering the The statistical has edu- emphasis on computation. problem relatively statistics of our population—age, sex, race, country of birth, of data with a small volume of data are to large volumes input output cation, occupation, employment, and income. These tables The commercial and rural and and simple processing procedures. logistical be compiled for every county, and for every city, farm, amounts of and problems both have relatively large input output rural nonfarm area within a county. data with from to processing requirements varying slight relatively The preparation of these tables by the UNIVAC system requires A number of in each of these four fields have been great. problems three major steps: studied and found suited for solution on the UNIVAC system. of Several in each field have actually been processed on the com- 1 Tabulation of each individual's characteristics by groups about 7,000 puter. Chapter 8 The UNIVAC system 165

2 these Arranging groups by cities, counties insertions, printing, calculations, and unityping is 9 seconds per item. 3 Assembling from the tabulations the data required for each table Logistical problems

In the field of The raw data were prepared in the form of a logistics, five major studies have been conducted, for each individual in the United States. The data from these four of these resulting in actual problems executed on the com- cards are enumeration then transcribed onto magnetic tape. From puter. The first is the of in which these tapes, the computer processes the data sequentially through type computation the basic purpose is to determine the three steps, producing output tapes from which the tables are quantitively whether a given operational or mobi- lization can be printed on Uniprinters. The only manual operations encountered plan logistically supported. The ultimate desired in is to the for this entire procedure are the handling of the original punched find, by calculation, optimum program carrying out such At the time of cards, mounting and demounting tape reel (the equivalent of 9,700 plans. writing, only a small model has been run on but full size models cards), and the removal of the printed tables from the Uniprinters. actually UNIVAC, will be run within the next few weeks. The most important feature of the present procedure is the elim- Two computations have been executed, one a set of three tables of thousands of lines a detailed ination of handling and sorting tremendous quantities of punched each, giving breakdown of machine fuel and over- cards. Each handling of the card stacks is a source of potential deployment, requirements, haul The other error and delay. The UNIVAC memory permits the simultaneous requirements. problem was a computation of the amounts of critical raw materials accumulation of the 580 tallies which describe our population required to construct a given number of each of these for each local area being studied by the UNIVAC system. type equipment, requirements being phased by quarters over a 2-year period. The fourth problem, Commercial problems which was actually computed, was a sample of a similar calcu- lation in which In the commercial field, the UNIVAC system has handled premium every pound of critical raw material required each for a life insurance month for the ultimate construction of a billing company. This program produces pre- complete building pro- was mium notices, dividends, and commissions. In a particular example gram computed. The worked out, approximately 1,000,000 bills, 340,000 dividends, and UNIVAC program which was prepared is capable of 100,000 commissions have to be produced monthly. The necessary accommodating every type of equipment, individually tailored construction information for processing a particular policy is contained in 240 schedules, detailed bills of materials running into the in millions of digits, or, special cases, 480. This compactness is made possible items and of determining the actual amounts of alloy elements based by a logical system of 40 symbols, comprising both alphabetic and on thousands of tables of percentages for the many numeric characters, which denote over 90 definitions. The UNI- alloys employed. The demonstration showed that this computation the for 400 of of a VAC processes policies as directed by the symbols, policy pieces equipment given type could be executed dates, and policy numbers. in three hours of computer time. The last problem in this field has not The problem includes inserting over 250,000 changes each yet been run, but the study has shown that the entire month before further is of stock control for a handling done. After this step, the policies gamut large supply office can be covered to be processed are selected from a file of 1,500,000 items. Next, by the computer in approximately 3 weeks time. a list is This involves produced of the cases which have symbols indicating that program the maintenance of stock balances of hundreds of special notices must be sent to the policyholders. Following the thousands of stock items for many service points and calculation of for the dividends and commissions, additional lists are pro- provides preparation of stock transfer orders, purchase duced: one group contains information pertaining to commissions requisitions, critical lists and summary reports. and agents; another contains information regarding dividends; and there is a finally, listing of option changes for later insertion into Performance record of the UNIVAC the policy files. Policies requiring premium notices are then edited Acceptance tests and the notices are automatically printed from the data contained The on magnetic tapes. Acceptance Tests, prepared jointly by the Bureau of Standards The and Bureau of are discussed in the UNIVAC time needed for a program of this proportion Census, fully following paper is about 135 hours a month. Dr. Alexander and Mr. 1 a The average computer time per policy by McPherson. However, few comments

is less than 0.5 second. The time for all not included in this processed average change 'Paper book. See McPherson and Alexander [1951], 166 Part 2 The instruction-set processor: main-line computers Section 1 Processors with one address per instruction

concerning them from the engineering point of view are appro- accuracy and other criteria of reproducing ability which defined 10 priate. "good" reels. In hours, the converter had prepared over 15 reels, The Census computer was given two tests; the first, a test of 14 reels had been tested, 1 1 of the 14 were found satisfactory and its was for its computational ability; the second, a test of input-output the converter accepted payment. system which particularly stressed the tape reading and recording Although the test was run on only one of two converters, the abilities. Bureau of Census put both card-to-tape machines into operation The Central Computer Acceptance Test A consisted of two and after six months of use, the acceptance test was run on the

parts. During Part 1, every available internal operation, except second card-to-tape converter. This test differed to some extent input-output operations, was performed. Among these operations from the first test in that the Census Bureau was satisfied with were addition, subtraction, comparisons, division, and three the reading ability of the machines and did not require a digit-by- different types of multiplication operations. Each of the arith- digit verification of the information. However, a new stipulation metic operations handled a pair of 11-decimal digit quantities. was added that, after the engineers had checked the converter Altogether there were about 2,500 operations in the routine, yet out preparatory to running the test, the converter was to be used the entire routine required only 1.26 seconds to do. The routine in actual operation for eight hours before doing the remainder of was performed 808 times in 17 minutes making a total of about the test with no engineering intervention between the two portions 2,000,000 operations in all. of the test. The first part was run on Friday, October 5, 1951; the The second part of Test A included the solution of a heat device remained idle Saturday and Sunday and was turned on distribution equation, a short routine involving the input-output Monday morning to complete the test. It passed with flying colors, device and a sorting routine. The sorting routine arranged ten preparing ten acceptable reels (out of ten reels) plus two decks of check cards in less 7 numerical quantities each containing 12 decimal digits in correct slightly than hours. Both card-to-tape numerical order in about 0.2 second. All three routines took a total converters now are in Washington and the remainder of the system of to were twice for is in the Bureau of the Census on the iy2 minutes perform. They performed each operation by Eckert-Mauchly test and when added to Part 1 made a total of 20 minutes for premises in . unit test A. Reliability and factors affecting performance The Acceptance Test B examined the input-output tape devices (Uniservos). During the first part of Test B, 2,000 blocks or about The first UNIVAC system now has been operating for approxi- 8 In 1.4 million digits, which included every available character mately months. that time, much has been learned about how (numeric and alphabetic) were recorded on a tape and then read UNIVACs should be operated and maintained. The situation has back into the computer with the tape moving backward. The been somewhat complicated by having to shake down the equip- information read back was then compared with the original data ment while in the customer's possession; that is, there were certain read out. The recording operation required about 4 minutes while faults in the system from both engineering and production stand- reading back and comparison required about 8 minutes. The sec- points which could only become apparent in the course of time ond part of Test B consisted of recording and reading over one and under actual operation conditions. For example, weak tubes spot of tape for 700 passes in order to determine the readability or faulty solder joints did not reveal their presence at the time of tape as it wears. This test required 13 minutes and when com- of installation. Another type of difficulty only became apparent bined with Part 1, made a total of approximately 25 minutes for under certain duty cycle conditions imposed by various types of Test B. This test was repeated 19 times. problems. Because only certain problems present this particular The first test run passed in 6.6 hours (minimum theoretical duty cycle, these troubles remained in the machine causing inter- time: 6.0 hours) and the second test was passed in 9.47 hours mittent stoppages until they could be tracked down. (minimum theoretical time: 7.45 hours). Of the 2.02 hours down Patient isolation and elimination of such problems, most of time, 1.45 hours were accumulated at one time with the remaining which have occurred only with conditions of operation infre- 0.58 hours spread over the rest of the test. quently encountered, is a powerful, though sometimes painful The Uniprinter test required that a block of information (60 proving ground for the engineering group charged with such re- words) be printed 200 times in tabular form. The minimum time sponsibility. The experience and depth of judgment acquired by for printing was five hours. The test was passed in 6.16 hours. such a group in the course of performing such work have become The card-to-tape test required that ten good reels of tape be unmistakably apparent in the already noted improved performance produced in 12 hours. There were certain restrictions as to reading of following UNIVACs and generally advanced ability to predict Chapter 8 The UNIVAC system 167

and realize performance in any large scale and complex apparatus the engineering time spent on the computer system during typical of the same character. weeks of operation. The figures are given both in hours and per- Some of the troubles encountered are interesting to study in centages. Both nonscheduled engineering time as well as preven- detail. On a rather complicated routine requiring the use of a tive maintenance time are shown. The sum of the two gives the number of Uniservos, all ran smoothly for 15 minutes. At that time, total engineering time spent on the computer per week. It should one of the Uniservos executing a backward read somewhere in the be noted that this is actual engineering time and does not include middle of the reel, did not stop at the end of the block but con- time that the computer may have been shut down while waiting tinued to run until it ran off the end of the tape. After much work, for an engineer to report. According to our maintenance contract, it was shown that a cycling unit signal was being overloaded this must be within a half hour during regular working hours and because it was being used both by a multiplication instruction and within two hours at all other times. Attention should be given to the backward read which were occurring simultaneously. The the fact that the preventive maintenance time does not total input precessor loop was cleared as a result and the count of the exactly 32 hours each week. This is due in part to a half-hour pulses coming off the tape was thereby lost. Once the trouble was period each morning devoted to checking and cleaning the found, it was simple to remedy. mechanical portions of Uniservos. It is expected that this work Another rather interesting case occurred intermittently over will be taken over by the UNIVAC operators since the procedures an extended period. Normally when reading out of the memory, and the techniques involved are quite simple. the contents should not be cleared. Occasionally, however, reading In addition, one extra shift was required the week ending June from the memory also caused the contents to be cleared. As the 3 and three extra shifts the week ending October 7, 1951. These trouble only remained for a period of seconds or, at most, a few shifts were required to incorporate engineering changes which had minutes, it was somewhat difficult to localize. Of course, parasitic been developed over a period of time and could not be incor- oscillations of some sort were suspected and, in fact, the trouble porated in the equipment during the normal preventive main- was traced to the actual source on a logical basis; but the source, a high power cathode follower, showed no evidence of oscillation. Before the problem was remedied, various combinations of para- Table 1 sitic suppressors were tried; the trouble would vanish for perhaps Total a week then return. and The oscillation finally cropped up during Week Nonscheduled Preventive engineering Percentage of a maintenance shift, was found to be in the tube at 100 suspect ending engineering maintenance time nonscheduled 1951 Hours Per Cent Hours Per Cent Hours megacycles and was eliminated rather easily. Per Cent engineering Other of troubles that have occurred include intermittent types June parasitic oscillations in other circuits, bounce in Uniservo relay circuits, various mechanical problems in Uniservos, time constants not consistent with the longest duty cycle signals, and various of noise in types the input circuits. The tubes, which initially were bothersome, have now stabilized to the point where two tubes per week (on the average) stop the computer during computation. All of the above troubles and others not discussed here have contributed to lost computing time on the UNIVAC. However, they cannot influence future operation because the reasons for them have been found and eliminated. The fact that these troubles will not occur in future UNIVACs cannot be emphasized too strongly. Under a contract with the Bureau of Census, Eckert-Mauchly Computer Corporation maintains the Census installation. This system is operated 24 hours a day, seven days a week, except for four 8-hour preventive maintenance shifts each week. This allows approximately 32 hours for regular maintenance and 136 hours for operation or 21 and 79 per cent respectively. Table 1 shows 168 Part 2 The instruction-set processor: main-line computers Section 1 Processors with one address per instruction |

tenance time. The nonscheduled engineering time has varied from have, by virtue of duplication, immediately stopped the computer. as little as 10.1 hours or 6 per cent to 42.3 hours or 25 per cent. Although checking by means of inverse operations can provide The last column in the Table shows the amount of nonscheduled operational checks on the arithmetic circuits, there is some ques- engineering time as compared to the allowable operating time tion as to whether it provides as good a check as duplication. (total time less preventive maintenance time). Here there is a However, in connection with odd-even codes, it may conceivably variation of from 7.6 to 31.7 per cent and an average for the weeks be comparable. It should be remembered, however, that this is shown of 16.9 per cent. It is believed that these figures, while good from an operational standpoint and not a maintenance standpoint. for the first months of operation of a new piece of equipment, will When the control equipment is considered it is difficult to visualize show definite improvement over the next year. a check that is as good as duplicated equipment. Other checks Although the opportunity to prove or disprove the following that are utilized in UNIVAC include the periodic memory check, theory of operation has not presented itself, it is believed logical intermediate line function table checker, function table output that optimum use of the UNIVAC equipment might be obtained checker, memory switch checker, and 720 checker. by means of scheduling preventive maintenance only at such times As explained earlier in the paper, the periodic memory check as it is indicated in the judgment of competent operators. In other is accomplished by reading out of all memory channels sequen- words, there are many occasions preceding a scheduled main- tially and performing an odd-even check on each digit as it passes tenance shift when the system is performing very well. At such through the high speed bus amplifier. The period at which the times, it is extremely inefficient to shut down the operation in check is repeated may be varied over a large interval. At present, order to provide maintenance. For many reasons, however, it has it is set at 5 seconds, the check taking 52 milliseconds or about been impossible to operate and maintain the first system in this 1 per cent of the computing time. way. It is hoped that such operation will be possible in following The function table has a check at the very input by bringing installations. in the check pulse in each character so that if an odd-even error

It should be realized that the UNIVAC system requires a super- occurs between the control register and the static register, no order visor of the same caliber as the one required for a large punched will be set up and the computer will grind to a halt! If the input card installation. However, the large group of operating personnel sets up properly but an error occurs farther on in the table, but would be replaced by a small group of well-trained extremely not ahead of the intermediate lines (the linear set into which the competent people thoroughly familiar with the details of the input combinations are decoded), the error is caught at this point. computer and associated equipment. The time spent in providing The intermediate lines are broken into groups in such a way that a high degree of training for these people is more than repaid in an error is indicated when more than one line is set up in one increased operating efficiency and consequently higher work out- group or the entire set. There is an exception to this in some groups put. For example, situations arise in the course of running a prob- where no error is indicated by this checker if more than one line lem where a correct operational decision can save hours of elapsed is set up within the group. computation. Also, a competent operator will recognize malfunc- This has been allowed only in those cases where it has been tions sufficiently early to prevent serious delays. He is capable of shown that setting up two or more lines will cause some other deciding whether to continue with machine operation or to stop checker or checkers to indicate the trouble. to diagnose. The second UNIVAC system which is ready for If the error occurs beyond the intermediate lines, the output installation in Washington, will be operated by a group of engi- checker then comes into play. This checker makes an odd-even neers who have been trained in operation and maintenance. This count on the number of gates used on each instruction: dummy procedure, it is believed, will result in the UNIVAC system being lines having been added so that the count is normally always odd. of maximum benefit to the Air Comptroller's Office. The memory switch or tank selector checker ensures that one and only one memory channel is selected on any instruction. It checks each of the two which Evaluation of UNIVAC design digit positions separately indicating if either, is in error. Checking features The 720 checker counts the digits coming off the tape and if Maintenance of the UNIVAC has been vastly simplified by use there are either more or less than 720 in one block, the computer of duplicate arithmetic and control equipment and other checking stops; by examining the indicators on the supervisory control methods. Many factors which would have led to undetected errors console, the operator can determine the number of digits actually Chapter 8 The UNIVAC system 169

read. By means of some rather simple manipulations, the operator of its designers, is extremely good. Certain phases of its design can then reread the block without losing his place in the routine; exceeded expectations, while of course, other phases were some- and if the information is then read correctly, he may again start what disappointing. The first eight months of actual operation the computer on the routine. The same procedure may be followed have taught more than years of experimentation with laboratory if an odd-even error is made in reading from the tape. models. Many improvements have already been conceived of this

Many checks other than those mentioned before have been experience and are continuing daily to increase reliability. built into the UNIVAC. On the basis of operating experience, the The other major factor influencing computer design, cost, has engineers cannot recommend too strongly the use of built-in been duly considered in the UNIVAC design; and it is being met checking facilities. All in all, the faith that can be put into results with plans for a continuing full-scale production of UNIVAC sys- obtained from an unchecked computer comparable in size to tems. As the production techniques are developed concurrently UNIVAC is in the writers' opinion exceedingly low. with the engineering design details, the UNIVAC becomes the More than this, however, the methods by which the UNIVAC realization of a hope which has long been in the minds of its is checked have been of extreme usefulness in trouble shooting. designers: An economical, completely reliable commercial com- The duplication of circuits has amply repaid the increase of space puter for performing the routine mental work of the world much and the number of components required by this checking system. as automatic machinery has taken over the routine mechanical work of the manufacturer. General comments References After evaluating UNIVAC performance over a period of eight months, the over-all picture of the UNIVAC design, in the minds McPhJ51.