Acoustic Delay Line Memory

delay

Back in the olden days  when computers were both analog and digital, making RAM was actually very hard. Without transistors, the only purely electronic means of building a memory system was vacuum tubes; It could have been done, but for any appreciable amount of RAM means an insane amount of tubes, power, and high failure rates.

One of the solutions for early RAM was something called a delay line. This device used ultrasonic transducers to send a pulse through a medium (usually mercury filled tubes heated to 40°C) and reads it out at the other end. The time between the pulse being sent and received is just enough to serve as a very large, small capacity RAM.

Heated tubes filled with hundreds of pounds of mercury isn’t something you’d want sitting around for a simple electronics project. You can, however, build one out of a Radio Shack Electronics Learning Lab, a speaker, and a microphone.

[Joe] designed his delay line using an op-amp to amplify the train of acoustic pulses traveling through the air. A compactor picks up these pulses and sends them into a flip-flop. A decade counter and oscillator provide the timing of the pulses and a way to put each bit in the delay line. When a button on the electronics lab is pressed, a ‘tick’ is sent into the speaker where it travels across [Joe]‘s basement, into the microphone, and back into the circuit.

The entire setup is able to store ten bits of information in the air, with the data conveniently visualized on an oscilloscope. It’s not a practical way to store data in any way, shape, or form, but it is an interesting peek into the world before digital everything.

Video below.

Comments

  1. If you can find an old 1980’s VHS VCR there are quartz pizo delay lines in some of the video PCB’S it is a long rectangular device usually has a black base with a blue top plastic case. I found them mostly in toshiba brands.
    Going back to my old VCR repair days.

  2. Dynamo Dan says:

    I wonder if this could be done with pulses of light, going through a length of fiber optic as the delay line medium.

  3. Bill says:

    Analog NTSC TVs had a delay line too.

  4. er0sentha1 says:

    Brian:

    I think you meant to say “comparator” not “compactor”.

  5. David says:

    I guess you don’t know what RAM stands for.

    • drew says:

      Yeah. Although delay lines are used for similar purposes to RAM today – short term storage for working memory – It’s definitely not Random Access Memory.

      Delay lines are a form of Sequential Access Memory; you have to wait for the bit you want to reenter the circuit before you can read/change it. Random Access Memory allows you to read/write bits in a random (ie. arbitrary) order. In that sense, many types of ROM chips and some kinds of flash memory can be considered Random Access (for reading at least).

      • Trui says:

        Semantics. If you add a controller that inserts wait states until the bit enters the circuit, you have random access.

        • Greenaum says:

          And if you add wheels to your grandmother, etc. Sure, that’s how it’d work, but at best it’s an arbitrated sequential-access system. The bits are accessed in order, and you have to wait for bits 3, 4, and 5 before you get bit 6. If you can call that random access it takes away the whole meaning of the distinction. At best your argument is a semantic dodge. It’s definitely sequential.

          • TM says:

            I see your point in this, but that doesn’t mean its not ram — this is exactly how dram works except with a leaky capacitor that is periodically recharged instead of an audio signal that is periodically retransmitted.

        • Slanderer says:

          The “random” in random access memory is SPECIFICALLY to distinguish it from earlier memory that had to be read out sequentially. Obviously it’s memory, but the difference is not insignificant. Not only is SAM inherently inefficient when accessing data out of order, read/write times are also inconsistent. This meant having to do stuff like laying out your memory map in such a way that the program was more likely to “hit” the correct bytes being read out when needed, instead of having to wait for them to pass through. It was annoying and pretty dumb.

          Also, TM’s comparison to DRAM refresh is off the mark–memory refresh is asynchronous from memory access itself. While the refresh process can be sequential, that only matters to the memory controller. All reads or writes will still be random, and don;t have to care about the refresh.

  6. fajensen says:

    I once had an old a transmission-line memory made from a single-layer coil of piano wire suspended over a ground plane. It should have been good for a few bytes at least. It was the buffer memory for a drum-storage unit so to do bubble sort, which is the fastest sort on that kind of memory!, one need to store & swap one word at the time. This unit got lost somewhere in a removal.

  7. justice099 says:

    I am having a bit of a hard time understanding how this isn’t just sending wireless data using accoustic pulses. I understand that the pulses will be delayed in reception compared to their time of generation. But how is this really a novel concept? It would happen with any communication, even through wires. There will be a delay whenever there is resistance (as well as loss.)

    I would challenge the notion that this is *storing* anything. That would imply that the pulses are just sitting there waiting to be requested.

    What am I missing in the purpose of this experiment?

    • drew says:

      The thing that makes this storage, rather than wireless transmission, is that the transmitter and receiver are the same device, and the signal is continuously recirculated through the “memory” (ie. air). As for novel, well, it isn’t. As the description says, this is one of the earliest machine memory techniques, used with mercury filled tubes instead of air.

    • RP says:

      Data is being stored in the “process” rather than in “media”. Once it’s set up and running, you can fetch the last stored bits and if needed write a different set back. In this case the “wait” state between read request and data-ready would need to be in milliseconds instead of nano seconds though.

    • tekkieneet says:

      Think of it as a “Conveyor belt sushi” (see wiki) or Conveyor belt for
      your luggage at an airport for data bits. The same data get “looped” and
      go round & round and you pick it up as you see it passes by.

      Same can be done on an audio tape etc. The slower a medium, the more you
      can store on it.

      i.e. they are sitting on a circular queue and “stored” temporary.

      They were done in an era before you have mass storage etc. Not
      everything you have now all come to an existence without them being
      slowly invented over time by hard working engineers.

      • justice099 says:

        Ignoring the silver-backing (not a fan of that), you essentially mean a circular buffer like a shift register used asynchronously or even simple time domain multiplexing. If you know the order of the information, you can pick out the piece you want. So for example if you sent a stream of data, you could encode one byte on 1st, 3rd, 5th, etc… and another byte on 2nd, 4th, 6th, etc…

        Got it. I guess if I stuck to my definition strictly, I couldn’t call DRAM storage either since it needs to be constantly refreshed. Point taken.

        • justice099 says:

          Nix the shift register analogy. Because there, if the clock stopped, the bits would still be stored.

        • tekkieneet says:

          Data on a Flash drive will only be there until the electrical charges
          in the FLASH cells leak. So do they qualified as storage?

          Sticking to a faulty definition does you no good.

          • justice099 says:

            And that wooden jewelry box your mother gave you that you put in the closet will eventually break down into dust, too.

            A bit surprised you went with such a ridiculous comparison.

        • Greenaum says:

          This is what they had to use until better forms of RAM were invented. Somebody’s already mentioned drum memory, where you have a spinning cylinder with a few dozen read / write heads on it, acting as RAM. Before that you had the even madder capacitor type, a spinning drum with hundreds of capacitors, contacts sticking out brushed past a fixed set, that read and refreshed each capacitor as it was connected.

          There was also something a lot like a CRT with a built-in camera mechanism, constantly feeding back on itself.

          In the delay line case you’d feed in the bits, and run a counter at the same time, careful setup keeping them in sync. The counter loops at the same rate as it takes the bits to travel the line, usually filled with mercury cos of the slow speed of sound in it, and an ultrasonic transducer at each end, one speaker and one mic. As each bit pops out of the end, the mic picks it up and repeats it through the speaker back at the beginning again (through a circuit to amplify it). If it’s working right, the fifth bit will be there every time the counter reads 5, and the rest. That’s the only way you know which bit is which so it’s important they’re synced well.

          So when you want a bit, you just keep an eye on the counter and wait til it pops out from the mercury.

          It’s very Heath-Robinson / Rube Goldberg. But that’s all they had! So much amazing stuff was invented back then, because they didn’t have the technology to do it the simple way.

  8. drew says:

    I had a professor in college who designed a hardware encryption board that used one of these. It was an expansion board for PC’s of the time, and the client was a bank that needed to encrypt transactions.

    To prevent thieves from just taking the whole computer and removing the encryption keys later, the keys were stored in a coil of coax set up as a delay line. That way, if the machine ever lost power, the encryption keys would be lost immediately (they were worried that if they used plain RAM instead, the theives might restore power quickly enough to extract the keys).

    Ok, so the story’s apocryphal, but it’s still a neat idea.

    • justice099 says:

      But the encryption key had to be stored somewhere in order to continuously loop it into the coils… unless it looped back only what was read. In which case, it had to be “generated” somehow, which is a point of attack. Also couldn’t you spoof it by inserting whatever key you wanted into the coil by using a more powerful transducer and fool into accepting your own key?

      • justice099 says:

        And of course, why couldn’t one simply read the coil externally. I know you said coax, but coax is not going to completely prevent leakage.

        • drew says:

          Presumably, the key would be first loaded into the delay line from floppy disk. The disk would then be stored in a safe unitl needed. As with any security system, you can break it if you have enough time and the right tools. The point is to make it too infeasible/difficult/risky for potential attackers to break, rather than reach 100% security.

          • matt says:

            It sounds like your professor didnt have his idea peer reviewed.

          • John says:

            Its a little bit of security by obscurity. You are hoping the thieves were expecting a computer with regular dram. So they would come prepared so in the process of stealing it, they’d maintain the ram’s power, or hope they could power it up quicker then the dram’s caps would lose the charge. Therefore, they wouldn’t recognize the importance of the cable, and the key would be lost.

            If however they did recognize it, or speculated at its function and if they were prepared enough (had a scope), you could have just made the job a lot easier for them.

  9. mojojoe says:

    Presumably this could be multiplexed using different frequency pulses and some simple filtering gates do demux it for reads, the same way different wavelengths are used to get extra bandwidth in optical transmissions? I wonder how many channels would be possible for one receiver/transmitter pair like this?

  10. GoneWithTheWind says:

    I worked on an Air Force air defense computer in Europe that used delay lines to store data and they used it just like a RAM. The delay line was a coil of piano wire incased in a metal container. The data (pulses) coming out of the delay were amplified and sent down the wire again. Changes in the data were made prior to the amplification and resending process.

  11. paul says:

    Who says this has no practical value?
    It’s the next stage in cloud computing.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,661 other followers