Digital Electronic Universal Computing Engine | 1955

 



DEUCE (Digital Electronic Universal Computing Engine) was one of the early commercially available computers, introduced in 1955 and developed by the British Electrical Company. DEUCE was the production version of the Pilot ACE, which itself was a scaled-down version of the ACE (Automatic Computing Engine) designed by Alan Turing. DEUCE used 1,450 vacuum tubes and employed mercury delay lines as its primary memory. Each of the 12 delay lines could store 32 words, each word being 32 bits. The machine operated with a high clock speed of 1 MHz, a feature adopted from the Pilot ACE.

Memory and Storage

DEUCE's main storage was comprised of 12 mercury delay lines, each capable of holding 32 words (32 bits each). The total memory capacity, therefore, was 384 words. In addition, the system also featured an 8,192-word magnetic drum, which could store data with access time depending on whether the read/write heads were already positioned. The magnetic drum had 256 tracks, and each track could hold 32 words. The data transfer from the drum to the delay lines was handled through independent arms that could move simultaneously, allowing multiple heads to read and write at the same time. The access times to the magnetic drum were as follows:

  • Read time: 15 milliseconds (if the head is already in position)
  • Head movement time: 35 milliseconds (if the head needs to be moved)
  • Data transfer time: The data transfer between the drum and the delay lines was not affected by rotational delays.

Additionally, DEUCE was equipped with input/output peripherals, including a Hollerith 80-column punch card reader with a reading speed of 200 cards per minute and a punching speed of 100 cards per minute. DEUCE could also be connected to paper tape equipment, with a reader speed of 850 characters per second and a punching speed of 25 characters per second. Furthermore, DEUCE supported external storage through Decauville magnetic tape units, which could be used for both input and output.

Arithmetic and Processing

DEUCE was capable of both integer and floating-point arithmetic, with separate arithmetic units for single and double precision. The machine featured:

  • Two arithmetic units for integer operations: one for 32-bit operations and the other for both 32-bit and 64-bit operations.
  • Specialized units for multiplication and division that worked asynchronously, allowing other operations to be executed while multiplication or division was in progress.
  • Two arithmetic registers: One for 32-bit precision and another for 64-bit precision, with a total of 8 arithmetic registers.
  • Automatic increment and decrement functionality was available for arrays, and this feature enabled efficient array arithmetic and data transfers.

The execution time for operations on DEUCE was as follows:

  • Addition/Subtraction/Logical Operations (32-bit): 64 microseconds.
  • Addition/Subtraction (Double Precision): 96 microseconds.
  • Multiplication/Division: 2 milliseconds.

Floating-point arithmetic was supported through software, with the following execution times for floating-point operations:

  • Addition/Subtraction: 6 milliseconds
  • Multiplication: 5.5 milliseconds
  • Division: 4.5 milliseconds

Input and Output

In terms of input/output, DEUCE supported the following devices:

  • Paper Tape Reader and Punch: The reader could handle speeds of 850 characters per second, while the punch worked at a rate of 25 characters per second.
  • Hollerith Punch Card Equipment: The system supported an IBM 528 card reader-puncher that could read 200 cards per minute and punch 100 cards per minute. It also featured a special mode where both reading and punching could occur simultaneously.

From 1957 onwards, DEUCE could also connect to magnetic tape devices, which allowed for fast data storage and retrieval.

Software and Programming Languages

DEUCE supported a variety of programming languages, including GEORGE (General Order Generator), ALGOL, ALPHACODE, STEVE, TIP, GIP, and STAC. Among these, GEORGE was one of the most important, as it was designed by Charles Leonard Hamblin in 1957 and was one of the first modern programming languages. It used Reverse Polish Notation (RPN), where expressions were written in a postfix format. For example, the expression 
e=ay2+by+ce = ay^2 + by + c

a y dup × × b y × + c + (e)

In this example, "dup" is an operation that duplicates the previous value on the stack. GEORGE also featured a 12-position accumulator which functioned as a pushdown stack. Variables were assigned values by pushing them onto the stack or popping them off as needed.

Another important programming tool was GIP (General Interpretation Program), which was used to control the linear algebra libraries for DEUCE. Programs written with GIP could perform operations such as matrix multiplication, matrix transposition, and solving simultaneous equations. GIP allowed users to select, copy, and assemble "bricks" (code segments) and execute them for linear algebra calculations, including matrix operations of any size supported by the machine's drum storage.

STAC was a macro assembler used on DEUCE. It allowed for the writing of optimized machine code programs. STAC would assign instructions to memory locations in such a way that the subsequent instructions would execute immediately after the previous ones completed. This required careful planning to avoid execution delays, as the instructions in DEUCE often involved serial access to memory (delay lines), which needed to be carefully timed.

Technical Features and Performance

DEUCE was highly optimized for its time, and its performance was considerably faster than that of many contemporaneous machines. For example, Manchester Mark I was about ten times slower than DEUCE. Some other notable hardware features include:

  • Clock speed: 1 MHz.
  • Word size: 32 bits.
  • High-speed storage: 384 words (for DEUCE Mark 0 and I) or 224 words (for later Mark IIA versions).
  • Arithmetic registers: Four single-word registers, three double-word registers, and two quadruple-word registers.

The machine featured a highly optimized memory architecture. The delay lines acted as high-speed storage and provided a highly efficient means of storing and retrieving data, which was faster than conventional core memory systems of the time.

Development and Legacy

DEUCE was one of the most successful early computers, with over 33 units sold between 1955 and 1964. The Mark II model introduced the IBM 528 combined reader and punch, which provided an integrated and faster solution for input/output tasks. The Mark IIA further improved performance with the addition of seven additional mercury delay lines, which expanded the system’s high-speed memory.

The machine's software library included over 1,000 programs and subroutines, which contributed to its success and widespread use. Some notable applications included linear algebra programs, mathematical modeling, and business data processing.

Conclusion

DEUCE was a pioneering machine in the history of computing. It was one of the first commercially available computers that demonstrated the viability of using high-speed memory, vacuum tube technology, and programming languages like GEORGE to perform complex calculations. Despite being designed over 60 years ago, the DEUCE remains a landmark in the evolution of computing hardware and software, influencing later generations of computers and serving as a precursor to modern digital electronic computing.

이 블로그의 인기 게시물

콜러서스 컴퓨터 [Colossus computer | December 1943]

NTDS [Naval Tactical Data System | 1961]

에니악 [ENIAC | December 10, 1945]