The UNIVAC III Computer

From Folklore
Jump to: navigation, search

Unisys History Newsletter.
Volume 2, Number 1
September, 1993 (revised 1999)
by George Gray>/br>

The Sperry heritage in today's Unisys computer product line consists primarily of the 1100/2200 series and the System 80 family. However, during the years before the merger with Burroughs to form Unisys, Sperry Rand and its predecessor, Remington Rand, developed many computer models which did not last. Among those product lines which have faded away is the original UNIVAC system, which started in 1951 with the delivery of the first UNIVAC to the U.S. Census Bureau. Once the name UNIVAC was applied to other computer models, such as the 1103, the original was called the UNIVAC I. It was followed in 1958 by the UNIVAC II and in 1962 by the UNIVAC III, which was the end of the line. Although, there was no successor product, the UNIVAC III was a very interesting and innovative machine.


The UNIVAC III project was started in the Philadelphia division of Sperry Rand in 1958 to be a transistorized replacement for the vacuum tube UNIVAC II. The UNIVAC II had been delayed by various problems, giving IBM's 705 computer the opportunity to take over the large-scale business computing market. At the end of the 1950s, transistor technology had matured, and transistor computers began to replace vacuum tube machines. Although Sperry Rand developed some of the first experimental transistor computers, such as the Philadelphia division's LARC and the St. Paul division's Bogart and Athena, the company was slow in producing transistor computers for general sales. As a result, Sperry Rand did not threaten IBM's dominant positions in both scientific and business computing. The IBM 7090, first delivered in December 1959, was the most widely used large transistor scientific computer, and the 7080, its business computing counterpart announced in January 1960, became the leading large business computer. Although the UNIVAC III was announced in the spring of 1960, the first one was not delivered until June 1962. Sperry Rand's St. Paul division was equally slow with its scientific computer, the 1107, which was not ready until the autumn of 1962.


The UNIVAC III drew extensively on the Philadelphia division's work on the LARC computer, incorporating its circuit designs and other hardware features, but newer transistors were used. The LARC memory was redesigned in a more compact fashion for the III, so that 4096 words fit in a seven inch cube. The two had the same memory access cycle time of four microseconds. Although the III was viewed as a follow-on to the II, it had a completely new instruction set, and thus was not compatible at the machine language level. One of the primary reasons for the change of instruction set was the increase in memory from the II to the III. The UNIVAC I had just 1,000 words (at twelve 6-bit characters per word) and this had only expanded to 2,000 words in the II. These small amounts of memory had been very confining, and it was clear that the III needed more. The I and II had used only decimal arithmetic. Their instruction format allowed four decimal digits for the memory address, so it would not be able to represent addresses greater than 9,999. The III was designed to have from 8,192 to 32,768 words of memory, so the old instruction format was inadequate.


Since core memory was expensive, it was decided to use the small word size of 25 bits (plus two parity bits) and do the addressing in binary. Using the old decimal approach, it would have taken thirty bits (5 x 6 bits per digit) to represent an address of 32,768; in binary, this could be done in fifteen bits. The III's word size of 25 bits was chosen to provide data compatibility with the I and II, where, as we saw above, a word held twelve 6-bit digits. A triple-word on the III could accommodate data from the I and II. The instruction fit in one word, and it was laid out as follows:

  1 bit       indirect addressing indicator
  4 bits     index (base) register number   (for memory address expansion)
  6 bits     operation code 
  4 bits     arithmetic register number or register for operand indexing      
10 bits     address displacement


The scheme of base register plus displacement for memory references was suggested by J. Presper Eckert. Once four bits were used for the arithmetic register number (there were four arithmetic registers), six for the operation code (giving 64 possible operations--not a large number) and one for the indirect addressing indicator, just fourteen were left for the address, but fifteen would be needed to reach 32,768. Eckert's solution was to compute the address as the sum of the 10-bit displacement field and the contents of one of fifteen index (base) registers. Similar schemes are used on many other computer systems, such as the IBM 360 family and the current Unisys 2200 Series. The decision to do addressing in binary meant that the III had to have binary arithmetic instructions, something which the I and II (purely decimal machines) lacked. As a business-oriented computer, the III had a full set of decimal arithmetic instructions. Decimal numbers were expressed in XS-3 code with six 4-bit digits per word. It could operate on fields of one to four words long, giving it a decimal number range up to 10**24 - 1 and a binary number range up to 2**96 - 1. Character data was stored as four 6-bit characters per word.


Being designed as a business computer, the III did not have hardware instructions for floating-point arithmetic. The distinction between scientific and business computers was characteristic of vacuum tube and transistor computers. Scientific computers had hardware instructions for floating-point arithmetic, but were generally limited in their ability to handle character strings. Business computers, on the other hand, were good at character manipulation, but did not have floating-point hardware instructions. They might (as the UNIVAC I did) perform floating point computations through slower software routines. This distinction between business and scientific machines came to an end after 1964 when IBM announced the 360 series, whose very name indicated the intention for it to handle the full spectrum of computing.


At the time the UNIVAC III project was getting started, Eckert suggested to Sperry Rand management that the company develop just one fully-functional computer, rather than the III for business, the 1107 for scientific work, and the 490 for real-time processing (such as banking and airline reservations. In that case, just one set of hardware components and software would have been developed. Eckert's proposal was not adopted, Sperry Rand developed all three machines, and the UNIVAC III did not have floating-point instructions.


The design of the III relied extensively on the UNISERVO IIIA tape drive, which had (for its time) a high density of 1,027.5 frames per inch and a high read/write speed of 133,000 characters per second. A UNIVAC III system could have up to 32 tape units. Although both divisions of Sperry Rand had been pioneers in the development of magnetic drums, the III was not originally equipped with a drum as a mass storage device. This was a serious drawback, for even the fastest tape drives could not provide the random data access capabilities of a drum. This was remedied by providing an interface to the high-capacity FASTRAND drum which had evolved from the drums used on the LARC and the Solid State.


A multiprogramming operating system named CHIEF (Controlled Handling of Internal Executive Functions) was written for the III. It built upon work which had been done for the LARC. CHIEF was not easy to use. It required a high degree of interaction with user programs: the first 41 words of each program were reserved for use by CHIEF. A sequence of user programs to be run would be written to a Master Instruction Tape which started out with a copy of CHIEF. On the tape each program was prefaced by a 100-word block which contained a list of the facilities (tape drives, amounts of memory, etc.) needed by that program. When the tape was processed, CHIEF was loaded into memory, and then it took over the task of executing the programs. When a program's preface block was read, CHIEF's allocator routine would allocate the requested facilities and then type on the operators console a report of what it had done; the operator would enter a response to allow execution to proceed. CHIEF's loader would then load the program into memory and let it run. CHIEF was a multiprogramming operating system in that it could read further down the tape to allocate and load multiple programs and alternately execute them. The second release of CHIEF allowed for up to seven concurrent programs. People in the marketing side of Sperry Rand became worried that CHIEF would not be ready on time and contracted with Computer Science Corporation (CSC) to produce a simpler back-up operating system, which was called Business-Oriented Systems Supervisor (BOSS). This BOSS should not be confused with the Basic Operational Scheduling System (BOSS) batch monitor written by Lockheed for the UNIVAC 1103A in 1958. Thus it happened that CSC was writing alternative operating systems for both the 1107 (EXEC II) and the III at the same time. CHIEF was run for the first time on March 13, 1962, and in June the first UNIVAC III was delivered to the Charles Pfizer Company. Some users elected to use BOSS, and the existence of the two rival operating systems always complicated the software development scene for the III.


The UNIVAC III was a modest sales success: 96 of them were delivered to customers, as compared with 36 1107s and 61 of the early 490 series computers. Shipments were fairly brisk during 1963 and early 1964, and then slowed down following IBM's announcement of the 360 in the spring of 1964. UNIVAC III customers included various large companies (U.S. Steel, Westinghouse, Pittsburgh Plate Glass, ALCOA, and Great Northern Railroad), some government agencies (Marine Corps, Connecticut Department of Transportation, and the Illinois Secretary of State), and the National Geographic Society. Some potential customers, primarily UNIVAC I and II sites, grew impatient at the lateness of the III and bought something else. Reportedly, this was the case at Metropolitan Life Insurance in New York City, which replaced its four UNIVAC IIs with Honeywell computers.


IBM's announcement of the 360 was the beginning of the end for the UNIVAC III. In August 1964, an internal marketing document stated: "Within the past twelve months, IBM, General Electric, and RCA have announced new systems which are generally equal to or better than the UNIVAC III at prices averaging thirty percent less." Sperry Rand took steps to make lease agreements more favorable to customers, so that they would be less tempted to turn in their IIIs. Another internal study reported that the III "does not lend itself to feasible upgrading; consequently there are no plans for a UNIVAC III successor. (European Marketing has recently brought some contrary pressures to bear, however.) The UNIVAC III is not price-performance competitive with the new IBM 360 series."


So there was never a UNIVAC IV, and the Philadelphia division got started on the work which resulted in the 9000 series, ancestor of today's Unisys System 80 computers. This was a wise move, for the 9000s and their successors were widely used: over 6,000 of them had been shipped by the end of the 1970s. Like some others of Sperry Rand's computers, the UNIVAC III ( although a very capable machine) was ready too late to be a major success. During the mid-1950s, retired general Douglas MacArthur was chairman of the Remington Rand board; however the company would have been well advised to take to heart the words of another general (Napoleon) to his subordinates: "Ask me for anything, but time."


AMPLIFICATION

Since the last issue, more information on early operating systems has come to my attention. The article above mentions CHIEF and BOSS for the UNIVAC III and the other BOSS for the 1103A. A group at Lockheed, including R.A. Hedberg and W.O. Wootan, wrote the Basic Operational Scheduling System (BOSS) for the 1103A in 1957 and 1958. BOSS loaded and controlled the operation of programs submitted on a stacked tape, which was prepared offline by a card to tape converter. It also provided a facility for referencing tape drives by mnemonics, rather than by absolute address; for example, P was the tape drive with the production library. I also found a document written at Shell Oil in 1959 describing E3, an operating system for the UNIVAC Solid State 80. It is not clear whether this was a proposal or a description of a working system.


Thanks

Thanks to Don Shisler, formerly at the International Association of Machinists, for lending me his copy of the UNIVAC III General Reference Manual. It permitted me to correct several minor errors which were in the original version of this document. Trademarks

Unisys, UNIVAC, and UNISERVO are registered trademarks of Unisys Corporation. Copyright 1993, 1999 by George Gray