Jump to content

Delay-line memory

From Wikipedia, the free encyclopedia
(Redirected from Mercury memory)

Delay-line memory is a form of computer memory, mostly obsolete, that was used on some of the earliest digital computers, and is reappearing in the form of optical delay lines. 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 equals the time to transmit one bit divided by the recirculation time. Early delay-line memory systems had capacities of a few thousand bits (although the term "bit" was not in popular use at the time), with recirculation times measured in microseconds. To read or write a particular memory address, it is necessary to wait for the signal representing its value to circulate through the delay line into the electronics. The latency to read or write any particular address is thus time and address dependent, but 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.[1] 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

[edit]

The basic concept of the delay line originated with World War II radar research, as a system to reduce clutter from reflections from the ground and other non-moving objects.

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 in order to determine range.

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.[2]

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 transducer at one end of the tube, which would 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 transducer, 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 restore and recycle the signals, so they would not disappear after traveling through the delay. This was relatively easy to arrange with simple electronics.

Acoustic delay lines

[edit]

Mercury delay lines

[edit]
Mercury memory of UNIVAC I (1951)

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 clock period needed to complete an operation, which typically start and end with 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. 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.

Diagram of mercury delay line as used in SEAC computer

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.[3])

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 from the far end of the tubes. The tightness of the beam then required considerable tuning to make sure that both transducers 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).[4] 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, 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

[edit]
Torsion wire delay line

A later version of the delay line used steel 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.

Unlike the compressive wave used in earlier devices, torsional waves are considerably more resistant to problems caused by mechanical imperfections, so much 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 as long as needed, so tended to hold considerably more data per unit; 1 kbit units were typical on a board only 1 square foot (~30 cm × 30 cm). 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.

100-microsecond delay-line store

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 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 × 40 characters per line × 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

[edit]
An ultrasonic analog delay line from a PAL color TV; it delays the color signal by 64 μs. Manufacturer: VEB ELFEMA Mittweida (GDR) in 1980

A similar solution to the magnetostrictive system was to use delay lines made entirely of a piezoelectric 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 material 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.[5]

A better and more widespread use of piezoelectric delay lines 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 to delay 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.[6] 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, rectangular-shaped device.

Electric delay lines

[edit]
Electric delay line (450 ns), consisting of enamelled copper wire, wound around a metal tube

Electric delay lines are used for shorter delay times (nanoseconds to several microseconds). They consist of a long electric line or are made of discrete inductors and capacitors 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:

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-time analogue method. The analogue one uses charge transfer devices (either bucket-brigade devices or charge-coupled devices), which transport a stored electric charge stepwise from one end to the other.[7] 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.

Optical delay lines

[edit]

In the field of optical computing, an optical delay line can be used in a similar fashion to how acoustic or electrical delay lines were used.[8]

References

[edit]
  1. ^ U.S. patent 2,629,827.
  2. ^ J. P. Eckert, Jr., A Survey of Digital Computer Memory Systems, Proceedings of the IRE, October 1953.
  3. ^ Wilkes, Maurice V. (January 1968). "Computers Then and Now". Journal of the ACM. 15 (1): 1–7. doi:10.1145/321439.321440. S2CID 9846847.
  4. ^ Wilkes, M. V.; Renwick, W. (July 1948). "An Ultrasonic Memory Unit for the EDSAC" (PDF). Electronic Engineering. pp. 209–210.
  5. ^ Glass Memories. Corning Electronics. 1963. RRP 8/63 5M.
  6. ^ Backers, F.T. (1968). Ultrasonic delay lines for the PAL colour-television system (PDF) (Ph.D.). Eindhoven, Netherlands: Technische Universiteit. pp. 7–8.
    Backers, F. Th. (1968). "A delay line for PAL colour television receivers" (PDF). Philips Technical Review. 29: 243–251.[permanent dead link]
  7. ^ "RETICON: Product Summary: Discrete Time Analog Signal Processing Devices" (PDF). Reticon. Archived (PDF) from the original on 2022-12-05. Retrieved 2023-09-07.
  8. ^ Kissner, Michael; Leonardo Del Bino; Päsler, Felix; Caruana, Peter; Ghalanos, George (2024). "An All-Optical General-Purpose CPU and Optical Computer Architecture". Journal of Lightwave Technology: 1–15. arXiv:2403.00045. doi:10.1109/JLT.2024.3458459.
[edit]