The Elliott 803 Computer

The Elliott 803 was widely installed in colleges and universities in the 1960s. It was a transistorised bit-serial machine with a 39-bit word length and an instruction set based on a single address and single register. Multiply and divide instructions operated on an additional auxiliary register. The instructions comprised of a 3-bit group and 3-bit subtype with 13 bits allocated to memory addressing or I/O giving an addressable range of 8192 words. The resultant 19-bit instructions were packed 2 to a word with an additional 39th bit, the so-called B-bit. Setting the B-bit had the effect of adding the contents of the memory address of the first instruction to the second at execution time enabling indirect addressing and various run-time instruction modification tricks. The bit  time was 6 microseconds and simple arithmetic instructions executed in 576us and jumps in 288us. The core store was normally supplied as 4096 words of 39 bits with an additional 4096 words available as an option in which form it was capable of running the Elliott Algol compiler, a major subset of the Algol60 (about 3.3Mb!) standard. Number representation was binary using 2's complement (invert and add 1) for negative.

The machine required about 3.5kilowatts of power together with air conditioning and was housed in a single cabinet about 66 inches long, 16 inches deep and 56 inches high with a second cabinet of about half of this length used for the power supply. In addition there was an operator's console, high-speed paper-tape reader/punch and magnetic tape unit. The power supply was relatively unusual being based around a battery charger and a large lead-acid battery and thus able to cope with fluctuations and interruptions in the mains power - an early UPS. Paper tape was 5-track, a restriction which required the use of figure-shift and letter-shift codes to switch between ranges of characters, and could be read at 500 characters per second and punched at 100 characters per second and the unit was about 80 inches long. The magnetic tape system was unusual in that it employed specially manufactured (by Kodak) 35mm tape based on standard film stock coated with oxide. The 1000 foot reels could hold about 7 million characters. The operator's console, about 60 inches long, enabled the usual low-level operations to manipulate addresses and contents and start, stop and step the machine etc.

Elliott 803 logic element diagramIn these pre-silicon days, the machine's logic was comprised of germanium transistors, the OC42. These were expensive and an unusual design feature is the inclusion of wound ferrite cores similar to those found in memory stores. There were a number of configurations of which an example is shown here. The core holds 5 windings - 3 inputs, a trigger and an output which drives the base of the OC42. The inputs are connected into the collectors of other logic elements as shown. The direction of magnetisation of the core is associated with the '0' and '1' states. During a cycle the sense of the input signals determine which state the core is magnetised into and a subsequent trigger pulse operates as a destructive read, firing the transistor if the core has been magnetised to a '1' but in any case resetting the element to a '0'. As an alternative the output and trigger windings could be reversed giving an inverting function. The 3 inputs could provide states of +1, 0 (no pulse) or -1 and the resultant core state would be the arithmetic sum. Despite its flexibility this innovative design of logic element was not destined for success as the falling costs of transistors and the high labour content associated with manually winding the cores swung the equation towards the later RTL, DTL and TTL design styles.

Forever associated with the Elliott 803 and its Algol system was a young classics graduate by the name of Hoare employed by Elliotts as a programmer in August 1960. Computer programming was then in its infancy and programmers were only beginning to understand the enormous complexities which it opened up. Hoare's early grasp of some of the principles of managing this complexity, in part due to managing his own disaster in the 503 operating system, enabled him to go on to dominate many aspects of Computer Science. Hoare recounts some of his experiences at Elliotts in the 1980 ACM Turing Award lecture (about 900kb) (The Emperor's Old Clothes, Com.ACM 24 2 Feb 1981).


Page last updated by on 28/11/2009