In the early days of computers, sometimes all it took to change the history books was a single revolutionary idea. For the stored-program electronic digital computer, this single idea derived from a curious question: what if you could store both analog and digital information on the same storage device? It took many minds and many years to find the answer to this, but the end result — the small-scale experimental machine, or the SSEM — completely altered the course of the history of the computer. Let’s read on to learn more about this SSEM and how it changed the game.
Three Facts about the SSEM
- Contrary to other early computers at the time, the SSEM didn’t rely on a paper-tape reader or punch mechanism.
- For all its innovation, the SSEM could only perform addition and subtraction.
- The SSEM’s storage worked by describing the least significant digits from left to right, which meant that the number 1 was written as 100.
Small Scale Experimental Machine (SSEM) History
Throughout the early-to-mid 1930s, Frederic “Freddie” Calland Williams earned Bachelor’s and Master’s degrees in engineering at the University of Manchester and a doctorate’s degree at Oxford University. After his schooling, Williams took up a post as Assistant Lecturer in the engineering department at the University of Manchester. While there, Williams made many outstanding contributions to research in electronics, publishing nearly two dozen papers in a stretch of just a few years. Two of these papers were published in collaboration with Professor Patrick M.S. Blackett on an automatic curve follower. This eventually became the Hartree Differential Analyser, a famous mechanical calculator constructed at the University of Manchester in the 1930s.
- Frederic C. Williams, Tom Kilburn, and Geoff Tootill
- Original Use
- Simple stored-program computer
During World War II, Frederic Williams made many outstanding contributions to the fields of electronics, radar, and other military equipment. Amongst these many contributions was the first operational amplifier. After the war, around June 1946, Frederic Williams started an investigation into the storage of both analog and digital information on a cathode ray tube (CRT). If Williams could make it work, storage of analog information had the potential to help solve the problem of static objects cluttering the dynamic picture on a radar screen, while storage of digital information could solve the problem holding up the development of computers worldwide. Williams demonstrated the successful operation of a single-bit memory using the anticipation pulse method in October and provisionally patented this system in December 1946.
In December of 1946, Williams moved to the University of Manchester to take up a chair in what was then called “electro-technics.” It sounds humorous to us today, but it was groundbreaking stuff then. While there, Williams continued to work on his single-bit memory CRT system. Soon, some of his fellow “electro-technics” group members followed his lead. Among them was Tom Kilburn, a mathematician who had worked in the department since 1942.
By the end of 1947, 2048 bits were being stored on a standard single six-inch diameter CRT, and an internal report had been written by Tom Kilburn introducing the “dot-dash” and the “defocus-focus” methods of operation of the CRT and the design of a hypothetical computer. This report aroused considerable interest and was widely circulated throughout the UK and the USA. The CRT storage system became known as the Williams Tube.
Though the CRT could only remember 2048 bits, an individual bit could only be reset by hand. As such, it was necessary to test the device’s capability of setting and reading any required bit at electronic speeds and remembering its value indefinitely between settings. So, naturally, the next step was to build a small computer around the CRT memory to handle this task. Williams and Kilburn knew little about computers, so they headed to consult their colleagues: the famous mathematician Alan Turing and Max Newman, the creator of the Colossus. Thanks to the advice from these computer geniuses, Williams, Kilburn, and their colleagues went to work.
This computer was built in half a year. Because it included the stored-program electronic digital computer concept, the random access memory (RAM) was used to hold numbers involved in calculations and the program instructions in one. This meant that instructions could be read successively at electronic speed and that running a different program simply involved resetting part of the memory with a simple keyboard. This differed greatly from the need to outright reconfigure the electronic circuitry, which could take days on devices such as the ENIAC.
The English Small Scale Experimental Machine (or SSEM, also nicknamed the Manchester Baby), the world’s first stored-program electronic digital computer, successfully executed its first program on June 21st, 1948. That program was written by Tom Kilburn, who built the machine based on designs from his mentor Frederic. The program was designed to find the highest proper factor of any number a, which was done by trying every integer from a-1 downward until one was found that divided exactly into a. The necessary divisions were done not by long division, but by repeated subtraction. This was because the Manchester Baby only had a hardware subtractor.
The original number chosen to test the program was quite small, but within a few days, the program was tried on close to 130,000 numbers. This took about 2.1 million instructions and involved 3.5 million store accesses. The correct answer typically took 52 minutes to find.
SSEM: How It Worked
Frederic Williams’s early concept of single-bit memory was stored in the form of a charge on a CRT screen’s phosphor, which could be controlled by the electron beam to write a 0 or a 1. Although the phosphor was an electrical insulator, the charge would leak away in the order of a second. Williams arranged to read the charge and then rewrite it continuously at electronic speeds so that information could be kept permanently. This process was called regeneration, and the principle behind this process is still used today to replenish charge on modern integrated circuit RAMs.
As the SSEM came into existence in the years that followed, its exact specifications became clearer. The arithmetical device was built with vacuum tubes, while the memory, registers, and display were based on Williams Tubes. The input was a keyboard. It had a 32-bit word length, performed serial binary arithmetic using 2s complement integer numbers, a single address format order code, a random access main store of 32 words that were extendable up to 8,192 words, and a computing speed of around 1.2 milliseconds per instruction.
In all, there were four Williams Tubes in the Manchester Baby. The main store was a 32/32 bit array on a Williams Tube. In addition to this, there were two other Williams tubes holding special storage registers: one held the accumulator while the other held the address of the current Instruction, CI (or “Control Instruction,”), and the instruction itself, PI ( or “Present Instruction”). The fourth tube, also known as the display tube, could be switched to provide a suitable display of the current contents of any of the Williams Tubes.
The SSEM’s instruction format was as follows: 3-bit function field (bits 13 to 15) + 13-bit store address (0 to 12) + 16 bits unused. There were just seven instructions, with S representing the contents of the word with address S:
- A = – S
- A = A – S
- S = A
- If A < 0, CI = CI + 1 (i.e. if A negative, skip the next instruction)
- CI = S
- CI = CI + S
- Halt the program
Note the surprising use of the minus operator and the sophistication of using the contents of a store location rather than a store address itself as the operand in control jumps. The CI had to be reset to the instruction before the next could be obeyed. Also note that, within two months, the Manchester Baby had been enhanced to a 4-bit instruction code, including A = S, A = A + S, and A = A & S.
Input to the Manchester Baby was done by setting sequences of bits at chosen addresses using a simple keyboard. Output was by reading the information on the display tube.
SSEM: Historical Significance
The SSEM was historically significant because it acted as a proof of concept for the first true random access memory. Additionally, the Manchester Baby also happened to be the first operational device to hold all the elements that would eventually be integral to the modern digital computer. With the SSEM proving both the effectiveness of the Williams Tube and the basic stored-program electronic digital computer concept in one, work was immediately started on a more realistic and usable computer based on the Manchester Baby.
With more manpower and great determination, this was achieved between late 1948 and late 1949 with the Manchester Mark 1 computer. This computer was built and used for a variety of purposes in 1949 and 1950, including an investigation of the Riemann hypothesis and calculations in optics. Beyond this, in October of 1948, a request was made from the English government to Ferranti Ltd. to manufacture a commercial machine based on Williams’ specification. The result was the world’s first general-purpose commercial computer: the Ferranti Mark 1.