Delay line memory
|Computer memory types|
|Early stage NVRAM|
Delay line memory is a form of computer memory, now obsolete, that was used on some of the earliest digital computers. Like many modern forms of electronic computer memory, delay line memory was a refreshable memory, but as opposed to modern random-access memory, delay line memory was sequential-access.
Analog delay line technology had been used since the 1920s to delay the propagation of analog signals. When a delay line is used as a memory device, an amplifier and a pulse shaper are connected between the output of the delay line and the input. These devices recirculate the signals from the output back into the input, creating a loop that maintains the signal as long as power is applied. The shaper ensures the pulses remain well-formed, removing any degradation due to losses in the medium.
The memory capacity is determined by dividing the time taken to transmit one bit into the time it takes for data to circulate through the delay line. Early delay-line memory systems had capacities of a few thousand bits, with recirculation times measured in microseconds. To read or write a particular bit stored in such a memory, it is necessary to wait for that bit to circulate through the delay line into the electronics. The delay to read or write any particular bit is no longer than the recirculation time.
Use of a delay line for a computer memory was invented by J. Presper Eckert in the mid-1940s for use in computers such as the EDVAC and the UNIVAC I. Eckert and John Mauchly applied for a patent for a delay line memory system on October 31, 1947; the patent was issued in 1953. This patent focused on mercury delay lines, but it also discussed delay lines made of strings of inductors and capacitors, magnetostrictive delay lines, and delay lines built using rotating disks to transfer data to a read head at one point on the circumference from a write head elsewhere around the circumference.
Genesis in radar
A radar system consists principally of an antenna, a transmitter, a receiver, and a display. The antenna is connected to the transmitter, which sends out a brief pulse of radio energy before being disconnected again. The antenna is then connected to the receiver, which amplifies any reflected signals, and sends them to the display. Objects farther from the radar return echos later than those closer to the radar, which the display indicates visually as a "blip" which can be measured against a scale.
Non-moving objects at a fixed distance from the antenna always return a signal after the same delay. This would appear as a fixed spot on the display, making detection of other targets in the area more difficult. Early radars simply aimed their beams away from the ground to avoid the majority of this "clutter". This was not an ideal situation; it required careful aiming which was difficult for smaller mobile radars, and did not remove other sources of clutter-like reflections from features like prominent hills, and in the worst case would allow low-flying enemy aircraft to literally fly "under the radar".
To filter out static objects, two pulses were compared and returns with the same delay times were removed. To do this the signal sent from the receiver to the display was split in two, with one path leading directly to the display and the second leading to a delay unit. The delay was carefully tuned to be some multiple of the time between pulses, or "pulse repetition frequency". This resulted in the delayed signal from an earlier pulse exiting the delay unit the same time that the signal from a newer pulse was received from the antenna. One of the signals was electrically inverted, typically the one from the delay, and the two signals were then combined and sent to the display. Any signal that was at the same location was nullified by the inverted signal from a previous pulse, leaving only the moving objects on the display.
Several different types of delay systems were invented for this purpose, with one common principle being that the information was stored acoustically in a medium. MIT experimented with a number of systems including glass, quartz, steel and lead. The Japanese deployed a system consisting of a quartz element with a powdered glass coating that reduced surface waves that interfered with proper reception. The United States Naval Research Laboratory used steel rods wrapped into a helix, but this was useful only for low frequencies under 1 MHz. Raytheon used a magnesium alloy originally developed for making bells.
The first practical de-cluttering system based on the concept was developed by J. Presper Eckert at the University of Pennsylvania's Moore School of Electrical Engineering. His solution used a column of mercury with piezo crystal transducers (a combination of speaker and microphone) at either end. Signals from the radar amplifier were sent to the piezo at one end of the tube, which would cause the transducer to pulse and generate a small wave in the mercury. The wave would quickly travel to the far end of the tube, where it would be read back out by the other piezo, inverted, and sent to the display. Careful mechanical arrangement was needed to ensure that the delay time matched the inter-pulse timing of the radar being used.
All of these systems were suitable for conversion into a computer memory. The key was to recycle the signals within the memory system so they would not disappear after traveling through the delay. This was relatively easy to arrange with simple electronics.
Acoustic delay lines
Mercury delay lines
After the war, Eckert turned his attention to computer development, which was a topic of some interest at the time. One problem with practical development was the lack of a suitable memory device, and Eckert's work on the radar delays gave him a major advantage over other researchers in this regard.
For a computer application the timing was still critical, but for a different reason. Conventional computers have a natural "cycle time" needed to complete an operation, the start and end of which typically consist of reading or writing memory. Thus the delay lines had to be timed such that the pulses would arrive at the receiver just as the computer was ready to read it. Typically many pulses would be "in flight" through the delay, and the computer would count the pulses by comparing to a master clock to find the particular bit it was looking for.
Mercury was used because its acoustic impedance is close to that of the piezoelectric quartz crystals; this minimized the energy loss and the echoes when the signal was transmitted from crystal to medium and back again. The high speed of sound in mercury (1450 m/s) meant that the time needed to wait for a pulse to arrive at the receiving end was less than it would have been with a slower medium, such as air (343.2 m/s), but it also meant that the total number of pulses that could be stored in any reasonably sized column of mercury was limited. Other technical drawbacks of mercury included its weight, its cost, and its toxicity. Moreover, to get the acoustic impedances to match as closely as possible, the mercury had to be kept at a constant temperature. The system heated the mercury to a uniform above-room temperature setting of 40 °C (104 °F), which made servicing the tubes hot and uncomfortable work. (Alan Turing proposed the use of gin as an ultrasonic delay medium, claiming that it had the necessary acoustic properties.)
A considerable amount of engineering was needed to maintain a "clean" signal inside the tube. Large transducers were used to generate a very tight "beam" of sound that would not touch the walls of the tube, and care had to be taken to eliminate reflections off the far end of the tubes. The tightness of the beam then required considerable tuning to make sure the two piezos were pointed directly at each other. Since the speed of sound changes with temperature the tubes were heated in large ovens to keep them at a precise temperature. Other systems[specify] instead adjusted the computer clock rate according to the ambient temperature to achieve the same effect.
EDSAC, the second full scale stored-program digital computer, began operation with 256 35-bit words of memory, stored in 16 delay lines holding 560 bits each (Words in the delay line were composed from 36 pulses, one pulse was used as a space between consecutive numbers). The memory was later expanded to 512 words by adding a second set of 16 delay lines. In the UNIVAC I the capacity of an individual delay line was smaller, each column stored 120 bits (although the term "bit" was not in popular use at the time), requiring seven large memory units with 18 columns each to make up a 1000-word store. Combined with their support circuitry and amplifiers, the memory subsystem formed its own walk-in room. The average access time was about 222 microseconds, which was considerably faster than the mechanical systems used on earlier computers.
CSIRAC, completed in November 1949, also used delay line memory.
Some mercury delay line memory devices produced audible sounds, which were described as akin to a human voice mumbling. This property gave rise to the slang term "mumble-tub" for these devices.
Magnetostrictive delay lines
A later version of the delay line used metal wires as the storage medium. Transducers were built by applying the magnetostrictive effect; small pieces of a magnetostrictive material, typically nickel, were attached to either side of the end of the wire, inside an electromagnet. When bits from the computer entered the magnets the nickel would contract or expand (based on the polarity) and twist the end of the wire. The resulting torsional wave would then move down the wire just as the sound wave did down the mercury column. Wires were steel.
Unlike the compressive wave used in earlier devices, torsional waves are considerably more resistant to problems caused by mechanical imperfections, so much so that the wires could be wound into a loose coil and pinned to a board. Due to their ability to be coiled, the wire-based systems could be built as "long" as needed, and tended to hold considerably more data per unit; 1k units were typical on a board only 1 foot square. Of course, this also meant that the time needed to find a particular bit was somewhat longer as it travelled through the wire, and access times on the order of 500 microseconds were typical.
Delay line memory was far less expensive and far more reliable per bit than flip-flops made from tubes, and yet far faster than a latching relay. It was used right into the late 1960s, notably on commercial machines like the LEO I, Highgate Wood Telephone Exchange, various Ferranti machines, and the IBM 2848 Display Control. Delay line memory was also used for video memory in early terminals, where one delay line would typically store 4 lines of characters. (4 lines x 40 characters per line x 6 bits per character= 960 bits in one delay line) They were also used very successfully in several models of early desktop electronic calculator, including the Friden EC-130 (1964) and EC-132, the Olivetti Programma 101 desktop programmable calculator introduced in 1965, and the Litton Monroe Epic 2000 and 3000 programmable calculators of 1967.
Piezoelectric delay lines
A similar solution to the magnetostrictive system was to use delay lines made entirely of a piezo material, typically quartz. Current fed into one end of the crystal would generate a compressive wave that would flow to the other end, where it could be read. In effect, piezoelectric delays simply replaced the mercury and transducers of a conventional mercury delay line with a single unit combining both. However these solutions were fairly rare; growing crystals of the required quality in large sizes was not easy, which limited them to small sizes and thus small amounts of data storage.
A better and more widespread use of piezoelectric delays was in European television sets. The European PAL standard for color broadcasts compares the signal from two successive lines of the image in order to avoid color shifting due to small phase shifts. By comparing two lines, one of which is inverted, the shifting is averaged and the resulting signal more closely matches the original signal, even in the presence of interference. In order to compare the two lines, a piezoelectric delay unit which delays the signal by a time that is equal to the duration of each line, 64 µs, is inserted in one of the two signal paths that are compared. In order to produce the required delay in a crystal of convenient size, the delay unit is shaped to reflect the signal multiple times through the crystal, thereby greatly reducing the required size of the crystal and thus producing a small, cube-shaped device.
Electric delay lines
Electric delay lines are used for shorter delay times (ns to several µs). They consist of a long electric line or are made of discrete inductors and capacitors, which are arranged in a chain. To shorten the total length of the line it can be wound around a metal tube, getting some more capacitance against ground and also more inductance due to the wire windings, which are lying close together.
Other examples are:
- short coaxial or microstrip lines for phase matching in high frequency circuits or antennas
- hollow resonator lines in magnetrons and klystrons as helices in travelling wave tubes to match the velocity of the electrons to the velocity of the electromagnetic waves
- undulators in free-electron lasers
Another way to create a delay time is to implement a delay line in an integrated circuit storage device. This can be done digitally or with a discrete analogue method. The analogue one uses bucket-brigade devices or charge-coupled devices (CCD), which transport a stored electric charge stepwise from one end to the other. Both digital and analog methods are bandwidth limited at the upper end to the half of the clock frequency, which determines the steps of transportation.
In modern computers operating at gigahertz speeds, millimeter differences in the length of conductors in a parallel data bus can cause data-bit skew, which can lead to data corruption or reduced processing performance. This is remedied by making all conductor paths of similar length, delaying the arrival time for what would otherwise be shorter travel distances by using zig-zagging traces.
Incidentally a method to increase delay time slightly is to wrap tape (ideally Kapton) around the windings and then put foil over that, with it connected to ground via resistor to further increase the transmission line effect. This approach also reduces interference to nearby circuits.
- U.S. Patent 2,629,827
- J.P. Eckert, Jr., A Survey of Digital Computer Memory Systems, Proceedings of the IRE, October 1953
- Wilkes, Maurice V. (January 1968). "Computers Then and Now". Journal of the ACM. 15 (1): 1–7. doi:10.1145/321439.321440.
- Wilkes, M. V.; Renwick, W. (Jul 1948). Better quality, bigger file size. "An Ultrasonic Memory Unit" (PDF). Electronic Engineering. 20: 209–210.
- Backers, F. T. (1968) "Ultrasonic delay lines for the PAL colour-television system," Ph.D. thesis, Technische Universiteit (Eindhoven, Netherlands), pp. 7–8. Available on-line at: Technische Universiteit (Eindhoven, Netherlands)
- Backers, F. Th. (1968) "A delay line for PAL colour television receivers," Philips Technical Review, 29 : 243–251. Available on-line at: Philips Corp.
- Acoustic Delay Line Memory – has an image of a Ferranti wire-based system about halfway down the page
- Delay line memories – contains a diagram of the magnetostrictive transducer
- Litton Monroe Epic 3000 - Shows details of the torsion delay lines inside this electronic calculator of 1967
- Magnetostrictive memory, still used in a German computer museum
- U.S. Patent 2,629,827 "Memory System", Eckert–Mauchly Computer Corporation, filed October 1947, patented February 1953
- Display Terminal built with 32 TV delay lines Complete description
- "What store for EDSAC?". The National Museum of Computing. 13 September 2013. How nickel delay line memory works, some information about the construction
- Nickel delay line for EDSAC replica