By March 1947 Tom Kilburn had discovered a different and better method of
storing information, more suited to storing a large number of bits on the same
tube. By November 1947 they had succeeded in storing
2048 bits for a period of hours,
having investigated a number of variations on
storing a set of bits (dot-dash, dash-dot, defocus-focus, focus-defocus).

The general principle behind the storage of binary information was to plant
charge in one of two different ways at an array of spots on a CRT using standard
techniques. The type of charge at any spot, representing a 0 or 1,
could be sensed by a metal pick-up plate on the outside of the CRT screen, thus
"reading" the "value" of the spot. However, the charge dissipated very quickly,
so values were preserved indefinitely by continuously reading their value and
resetting the charge as appropriate to the value.

Although the phosphor on the CRT would glow at charged points, in a way that
might be distinguishable (between 0 and 1), the current contents
of a CRT storage tube could not be viewed directly in practice. The front of
the tube would be obscured by the pick-up plate. (At first this was a wire
mesh, but later it was a metal plate.) Also the CRT had to be screened from
outside electrical interference, e.g. local trams or close and aggressive motor
cycles, so it was enclosed in a metal box. So typically the information on a
Williams-Kilburn Tube would be displayed on a separate
Display Tube, which would be updated synchronously
with the refresh cycle of the Williams-Kilburn CRT Store.
However the opportunity would also be taken to lay the values out in a manner
most convenient to the onlooker.

The memory storage system nearest to a successful realisation elsewhere was the
Mercury Acoustic Delay Line
store,
which was chosen as the basis for the earliest active stored-program computer
projects (EDVAC, the EDSAC and ACE). The most significant advantage of the
Williams-Kilburn CRT Store over a Delay Line store was that the CRT store
allowed fast random access to
short strings of bits, e.g. 20-bit or 40-bit addressable strings corresponding
to "lines" or "words" in RAM. This contrasts with the sequential access
mechanisms inherent in Delay Line stores, which would store say 1024 bits in a
single delay line and a smaller string could only be read when it "came round"
on a 1024-bit cycle. The Williams-Kilburn CRT Store also had the practical
advantages that it was made of standard components, was cheap and compact, and
did not require temperature control or accurately controlled power supplies.

When in Autumn 1947 the group had successfully stored 2048 digits, they had
the problem of proving that the store would operate successfully inside a
computer. They could only alter bits at the rate of around 1 a second, which was
100,000 times slower than the store's capability. In the end they decided that
the simplest way to test that the CRT storage system was suitable for use in
computers was to build a small computer round it. So
the way
was clear for the construction of the SSEM, the
"Baby",
"to subject the system to the most searching test possible." The
Baby was therefore built to show that Williams-Kilburn CRT Stores could work
dynamically in a working computer, and to demonstrate the feasibility of
building a much larger machine using them. That it also was the first machine
to realise the stored-program computer, and prove its feasibility
was a secondary consideration.

Although by 1948 standards the Williams-Kilburn CRT Store was acceptably
reliable, it was not 100% so, and there was regular experimentation and
development for many years from 1947 onwards to improve its reliability. The
method described below is the "dot-dash" method used on
early machines.

The Williams-Kilburn CRT Store was used in several models of computer
including the IBM 701 and 702 computers. It was
eventually superseded in new systems in about 1955 by a cheaper random access
store called the "magnetic core store."

The successful operation of the Williams-Kilburn CRT Store before other
storage systems was the key factor which led to the Manchester group being the
first to build a stored-program computer.

The term "Williams Tube" was coined by the Americans and
has been used
universally since (up to 1998) to refer to the family of storage devices based
on the Williams-Kilburn patents. It was never called the Williams Tube in the
early papers by Williams and Kilburn.

Only the provisional patent of December 1946 was
taken out in Freddie Williams' name alone; all the other patents had both names
on. Tom Kilburn was able to work full time on the development that took place
throughout 1947, whereas Freddie Williams, as head of a Department, had many
other duties. Also it was Tom Kilburn who by March, having got the original
experiment transported to Manchester and back into working order, observed that
there were better methods than the "anticipation" method.

Tom Kilburn contributed most of the work and much of the new ideas in 1947, and
produced the key document at the end
of 1947 that was influential in other groups adopting the Williams-Kilburn CRT
Store (most notably IBM).

So in retrospect a more considered coining (if less convenient) is arguably the
"Williams-Kilburn Tube". Throughout these pages the preferred usage is
"Williams-Kilburn CRT Store" to refer to the general mechanism and
"Williams-Kilburn Tube" to refer to an individual Cathode Ray Tube (plus
the additional pick-up plate and circuitry).

This description of the dot-dash method for a Williams-Kilburn CRT Store,
is an edited version of one provided
by Prof. D.B.G. Edwards.

The principle of the CRT store can be summarised as follows. Bits of information
are stored on the insulating screen of a CRT as small areas of electronic charge
in an array of isolated dot/dashes. If a metal pick-up plate is placed close to
the outer surface of the CRT screen then voltage pulses will be detected when
the charge is changed, due to the capacitive coupling. These changes occur
successively in time when the storage areas in the array are bombarded by the
CRT electron beam in a regular time sequence in each full screen refresh cycle.
Their nature is now described.

Suitable X and Y deflection voltages and a short repetitive
bright-up signal Z applied to the CRT grid will cause an array of dots
to be generated on the screen at a set of fixed positions. If a particular fixed
dot position is to store a 0, then the bright-up signal Z is
applied precisely to that position, and the screen acquires a positive voltage
when it is bombarded with a high energy electron beam due to the fact that the
secondary emission ratio of the screen material is greater than 1. Provided
that the dot position is bombarded again before the positive potential
has had a chance to decay significantly, then there will be no
change of charge at the dot position, and the screen holds a 0 in this
position.

If a dot position is to hold a 1, the bright-up signal is lengthened so
that the dot is extended into a dash. Now the initial positive potential in the
precise dot position attracts secondary electrons from the bombardment
occurring close to it as the beam moves along the dash, and is rapidly lost.
This means that when that dot position is bombarded again on the next refresh
cycle it will have to acquire a positive potential
and that change of charge from the storage area will provide a positive signal
at the pick-up plate during the dot period. So a 1 has been stored and
detected, and if it is to be preserved then the Z bright-up signal must
be extended to cause a dash to be rewritten.

In practice a transient signal is observed on the pick-up plate when the
electron beam is turned on for a dot position and again when it is turned off.
These
signals are due to the cloud of secondary electrons introduced in the vicinity
of the screen when the electron beam is switched and is negative going at
switch-on and positive going at switch-off. Therefore both a "screen size"
pick-up plate and "dot size" pick-up plate are used, to detect whether the
signals are whole-screen related rather than single dot related. If they are
whole-screen related then there is no signal due to potential change at the
dot position, so the value is a 0, but if they are dot related the
potential has changed, so a 1 was stored previously and the beam must be
extended along the dash.

Normal leakage from the screen would destroy the storage charges in tenths of a
second but refresh rates significantly faster than this read the information
and replenish the charges so that information can be retained indefinitely. It
also means that long term drifts in the voltage supply, which cause slight
movement of the array positions, are not critical to the storage operation.

The refresh scan for a 32/40 bit word on the Manchester Mark 1 machines was
typically around 300/400 microseconds. Reading from and writing to a Main Store
CRT was interleaved with refreshing scans, with each line of each CRT store
being refreshed in turn cyclically. Operations not requiring Main Store access
would be overlapped with refresh scans.

So for example on the Baby there was a simple "four beat rhythm" for a standard
instruction:

Refresh the next line (in the cycle) of Main Store; add 1 to the address of
the current instruction

Fetch the next instruction from Main Store

Refresh the next line (in the cycle) of Main Store; decode the instruction

Read/Write from/to Main Store as required; complete the instruction

Each beat took the same time (hence the official 1.2 millisecond instruction
time). The complete 32 word Main Store would therefore be refreshed every 16
instructions, well before there was any significant discharge.

Note that where there was a 32-bit operation taking
place in beat 4, i.e. A = A - S, the operation
would still be completed within the beat, since the 32 bits were read from
store serially and the combination with the accumulator value could take place
serially at the same time.