Single Bit Computer From Vacuum Tubes

Culminating a year-long project, [Usagi Electric] aka [David] has just wrapped up his single-bit vacuum tube computer. It is based on the Motorola MC14500 1-bit industrial controller, but since [David] changed the basic logic unit into an arithmetic-logic unit, he’s dubbing it the UE14500. Built on a wooden panel about 2.5 x 3 rabbit lengths excluding power supply. [David] admits he has cheated a little bit, in that he’s using two silicon diodes instead of a 6AL5 dual diode tube in his universal NOR gate on which the computer is based — but in his defense he notes that plenty of vacuum tube computers of the era used silicon diodes.

The tube he uses in the NOR gates is the 6AU6 miniature pentode, which he selected because of its availability, price, and suitability for low voltage. [David] runs this computer with two power supplies of +24 and -12 VDC, rather than the hundreds of volts typically used in vacuum tube designs. The modules are constructed on single-sided copper-clad PCB panels etched using a milling machine. The video below the break wraps up the 22-part series, where he fixes a few power supply issues and builds a remote front panel for I/O, and gives a demo of the computer in operation. Alas, this only completes one fourth of the project, as there are three more building blocks to build before the whole system is complete — Program Control (magnetic tape), RAM Memory bank, and a serial input/output module. We look forward to seeing the whole system up and running in the future.

We just wrote about the MC14500 a few days ago, and we’ve also covered [David]’s vacuum tube implementation of a 555 timer among other of his vacuum tube projects, several of which are featured on his Hackaday.io page.

 

53 thoughts on “Single Bit Computer From Vacuum Tubes

    1. No joke! This thing puts out some serious heat. When filming, the temperature of the room noticeably starts to increase to the point where I’m sweating like crazy. And it’s going to get a lot more intense. I’m currently at 190 tubes, but once complete, I’m estimating I’ll be at something 600 tubes!

      1. Cool project.

        I know what you mean! I have a Tektronix 551 dual beam oscilloscope which uses 112, if I recall correctly, vacuum tubes. Most of the tubes are used for the two vertical distributed amplifiers to obtain a flat response bandwidth of about DC to 25 MHz. The outboard power unit which sits on the bottom shelf of the cart has about a dozen more vacuum tubes for pass regulators. Together the power consumption is about 1500 Watts! Space heater indeed. In fact the last time I used scope was to keep the house warm when the gas valve on my furnace stuck and I had to go buy a new gas valve.

        All those vacuum tube heaters eat a lot of power and the bias networks have plenty of 1/2 Watt resistors afoot.

        If you can find them, building from Nuvistors could be a work-around to save power, but they don’t glow (metal shell). I have a Tektronix 1S1 sampling plug-in which uses intentional aliasing to down-convert up to 1 GHz signals for viewing on a 500 series scope, and that uses Nuvistors in the sampling section as well as some tunnel diodes. Univac used tunnel diodes transitionally in hybrid designs before moving to all solid state designs if I have my history right.

        Vacuum tube era stuff used to be easy to get for Pennies on the Dollar at hamfest flea markets up through the 1990s. Now the same goodies command big bucks because they’re antiques. I bought 211 power triodes for $1 each back then and now savvy vendors want up to $100 for same tubes in used condition.

    1. You’re absolutely right that Germanium was far more common. IBM was a little leery of germanium diodes in their early computers, but by the 650 they were using them pretty regularly.
      The problem is, in my brain, “silicon” has kind of become synonymous with “semiconductor,” so I often mix them up and use the wrong term.

    1. I’m not sure I’m following you, but in total there are 190 vacuum tubes in use. 16 tubes are used as NAND gates, 2 tubes are for the soft start, and the remaining tubes are either NOR gates, inverters or buffers. I’m using silicon diodes here to save some space, so all of my OR gates are simple diode logic (and the NOR gates are actually just a diode OR with an inverter).
      The buffers are primarily used because tubes at low voltage have terrible fan out properties, so if building this from something like discrete FETs and diodes for DTL, the actual transistor count could be made much lower.
      One of these days, I’ll get around to building a discrete transistor computer!

  1. There have been a few massively parallel computers over the years. 65536 one bit processors all networked together. Mostly used for surveillance processing and code breaking. I do wonder, what could be accomplished with modern technology.

      1. Just contemplating the number of transistors required and the number of transistors on an i7 die or even one of the big fancy server CPUs. Interconnection and cooling would be the bottle neck. But imagine if silicon was stacked in a cube instead of a wafer. Or even if the transistors were in vertically to save space and the wafer was just made a little thicker or made two layers and just fed from the edges and cooled from both sides.

    1. Massively parallel stuff is really wild to me!
      I don’t think the MC14500 architecture I’ve based this on would really work in a parallel sense, mostly due to the weird way they handle conditionals with the IEN and OEN registers. But, it’s certainly a cool idea!

  2. Enjoyed the video on finishing up the processor. What are you thinking for the RAM? I have a plane of core if you want to use that I’ll donate it. I have others for my collection so it won’t be missed. Of course the plane is a 1 X 1024 matrix so I don’t know if that will work for you since you can only address 1 bit at a time in the plane. To store instructions you’d need to read the bits serially. Some computers did that but I’m not sure what you are thinking.

    Happy New Year.

    1. Wonderful work! I would willing to contribute to your next project! In the past I have build circuits using absolutely not solid-state components. I have in my collection everything you would need to make circuit all tube. 1000’s of types in my collection – rectifiers, tirodes, pentodes, septodes, visicons, tube delay relays, memory tubes, gas discharge tubes, battery tubes, subminis, hearing aid tubes, Nixies, and of course tubes like the BX-1000 or even single switches. Drop me an email – I’ll contribute to the cause.

      So cool!!!

      1. Thank you so much!
        I actually am only using one type of tube here, the 6AU6, and I’ve kind of gotten into this weird habit of just buying up as many of them as I can find, haha. I’ve got well over 1,000 6AU6s, but I’m still always keeping my eyes peeled for more good deals on them.
        It sounds like you’ve got one amazing collection of tubes though! What kind of tubes are those memory tubes, those sound really cool!

          1. Remember the Tektronix 4010 graphics terminal? That used an electron storage grid to allow projecting vector graphics onto an about 12×12 inch green screen by a flood gun. Even cooler was the grid could be beam scanned to modulate a read-out beam and that raster was sent to an accompanying static printer which made a copy on stinky silvery coated paper. That was state of the art when I was working in an RF testing lab in the 1970s at Fort Meade. We were working on automating EMI/EMC testing using racks full of HP generators and WJ receivers controlled by a PDP 11/34 and plotting the results with FORTRAN programs on RT-11 O/S.

    2. Thank you so much!
      RAM is going to be really trough, since as you noticed, I can only address 1-bit at a time. The bottle neck now becomes not the actual memory, but the addressing and read/write control. As a result, I’m just going to brute force my way through it with tubes.
      I really want to get into core memory sometime in the future, but alas, I don’t think this is the right project for it. There is an 8-bit architecture I’ve been working on though that I would really love to build with discrete transistors and that would be a perfect candidate for core memory!

      For the programs on the tube computer, the plan is to read the bits serially off magnetic tape (just reel to reel audio tape) and shift them into a shift register, then execute the instruction once the shift register is full. The downside of this is that the speed of the computer is dictated by how fast I can read the bits off the tape, which will be slow. But, it should allow me to keep the project from ballooning to ridiculous sizes. Also, the slow speed will play decently well into the massively limited RAM size, because if the RAM were any larger, it would take days of processing to fill it all up, haha.

      1. I worked for a bank in the 1970s. We had 33 IBM 1260 check inscriber machines which imprinted the Dollar value on checks as the operators read the handwritten amounts and keyed them in. No OCR yet! The machines used IBM SLT modules, an early form of thick film IC for the logic and a plugboard for the program. The memory was clock spring delay line which stored bits serially and recirculated bits using an amplifier picking up and driving the opposite ends of the spring. New data could be written into the delay line by XORing at the amplifier. I’d use something like that for the bulk memory of your computer.

        The problem with the clock spring memory is that it is susceptible to external vibration. More than once workers delivering checks to the machines bumped carts into the machines and operators had to replace-run batches of work when the bump caused the memory contents to be scrambled,

      2. Perhaps consider a Williams Tube as storage as that (a) fits in with the technology and (b) gives you better speed?
        It’s basically a CRT tube with a conductive plate covering the display end. The plate is used to detect charge when the beam hits a spot. No charge means the spot contains a 1. Drawing a dash next to a 1 clears it (which needs to be done after a zero is read), and the whole thing requires periodic refresh, but you have the equivalent of fully random DRAM in tube format.

    1. Thank you!
      The processor took a lot longer than I was initially expecting because I had a lot of learning to do as far as construction techniques and overall design. Hopefully, memory and program control will move along at a much better pace!

    1. Sure, we’re not quite to a fully functioning system yet, but with such a monumental task, getting to a milestone as significant as a completed processor was extremely exciting!

    1. Interestingly, I’ve had a much easier time finding the 6AU6 vs. the 12AU6. I would say I have about 1200 6AU6s in my collection and only about 15 12AU6s. I’m not sure why, but the 6AU6 just seemed to show up in massive quantities for cheap for me!

      1. 6AU6 tubes were by far the most ubiquitous of the type – I have large qty as well. There were used heavily in oscilloscopes and various testing equipment throughout the 50’sm 60’s and 70’s.

  3. Pretty neat project. The CNC PCB router could be used to make a mask for the operator panel VFD’s with cutouts over the active areas and engraved letters for what these are, which would have made the video perhaps easier to follow.

Leave a Reply to Mr Name RequiredCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.