I hope this information will help other engineers create better, faster, and hopefully smaller, electron tube computers.
My design concept was to build a modern 8 bit electron tube computer, with the ability to run non-trivial software, and to play a mean game of pong.
I spent months designing the boards and I used JLCPCB for their manufacture.
The Ena.Computer integrates eight large printed circuit boards and three auxiliary pcbs which combine together to form a functional computing system.
The three auxiliary boards consist of 10 configurable NOR tube gates. They form the two oscillators, "clock switching" and the "zero data flag" circuits.
The main boards are 476mm x 393mm, each hold either 60 or 70 tubes, weigh just over 2Kg and are designed in 3 sections.
At the top are two 17mm wide heater supply tracks, which can conduct 25 amps whilst self heating about 5 degrees above ambient. The heater track pair are fed from the top screw terminals, via a quad 1mm cable from one of five 60 Amp power supplies. Pairs of 1mm tracks each supply 5 electron tubes with 1.75 Amps via an SMD fuse. There is a 0.2 voltage drop along this heater feed.
The central section of the main board consists of either 60 or 70 NOR gates configured for 1 bit of the computer. Each board processes a single bit of the data with electron tubes configured for 1 bit of the accumulator, and X and Y data registers, complement data, 1 bit of the ALU, program counter, memory address register, instruction register, plus single input, output and GUI read and write buffers. There are also clock Master/Slaves on boards #0 to #3 plus 3 to 5 ROM address decoders and 5 further NOR gates to process 2 or 3 ROM output instructions. Boards #4 to #7 have empty clock sections.
The bottom section has the inter board connections and a ridiculous number of test points. A 280 way bus connects all the boards and each board is configured for its own needs. The data bit, compliment data, register load and enables to bus, input and output commands, ALU carry in and out, HV supplies, and all the other appropriate signals are connected by several small mezzanine boards which act as two dimensional jumpers..
To consolidate the components of the Ena.Computer I have now mounted all the electron tube boards on a single wall panel.
Each electron tube board is mounted onto the 4mm acrylic wall panel using sixteen 3mm x 20mm offsets. The 190cm x 130cm wall panel is attached via three 2m x 30mm x 30mm aluminium box sections to the wall. The total wall load is about 31Kg.
Logic levels of the electron tube NOR gates are nominally 0v & 10v, with limits of low level, -20v to 0.25v and high level, 9v to 12v. The fan-out is about 25.
The Ena.Computer has two oscillators, both are 3 NOR ring oscillators with an additional RC delay added to each stage, plus 2 output buffers.
Each RAM page can support a different RAM type. The clock speed is switched by the software selecting an oscillator, so that different types of memory can coexist within a single program. Currently I am using a hybrid memory with electron tube address, clear, read & write NOR gates coupled to double reed relay memory cells plus an NVRAM.
The NOR gates were designed with a variable output to accommodate gain inconsistencies of the 6N3P electron tubes. By replacing many low quality tubes, the remainder have now been reconfigured to work with an 80 volt HT supply.
The graphical user interface was to consist of a matrix of incandescent lamps requiring a 50 amp, 12 volt power supply with a refresh rate of around 1Hz. I do not understand why I thought this was a good idea, and and I have replaced them with 300mw INGaN Leds.
There are 16 single step instructions for data storage, data manipulation and program control. The data manipulation instructions are Addition, Increment, Compliment and bitwise XNOR. A combination of these instructions enable multistep Subtract, Decrement, and XOR.
Program control includes the [JUMPzero] instruction, which jumps the Program Counter to the Operand address [IF] the Accumulator value from the previous operation is zero, [ELSE] the program continues. [JUMPzero] can be achieved by several conditions, including identical or complimentary X & Y Register values, or if either the sum or individual value of the two data registers is either 0 or -1.
Fetch and Execute control is derived from a diode Instruction ROM matrix. The 32 microcodes are accessed by combining the clock with the instruction value as the input to the diode matrix.
The finest 6N3P tubes were selected at manufacture for military use, with up to 5000 hours life expectancy and printed with an extra code (Russian 6Н3П-ЕВ). The rest were for domestic use, and with the ability to operate at over 200Mhz, the 6N3P was used in many 1960s Soviet radio sets. The finest can source over 18ma and so can easily switch a reed relay. The basic quality tube have codes for a projected life span of either 1500 (6Н3П-Е) or only 500 hours (6Н3П). They have been held in post soviet stores for 60 years, and some quality stamps may have been accidentally altered, so life expectancy may be questionable (both for the tubes and me).
I wasted much time and effort due to a lack of a formal electronics education. I reinvented the wheel so often, I've completely filled up the garage (smiley face).
I now really understand the value of electronics and computing qualifications. It's all very well saying look at this, isn't it clever, when someone with an electronics qualification could have built it in half the time, and also written a decent technical spec!
I have experimented with photocells illuminated by leds as NOR gates in an attempt to create a memory with no moving parts. The three NOR gates I built take over 120ms to switch, but do form a stable ring oscillator. I have yet to build a complete led/photocell/capacitor memory system.
The Ena.Computer can communicate with other computers and systems using 7 bit ASCII with a pair of handshakes. My PET has a parallel port which can make a simple network.
Many tube bases have a small central hole, just large enough for a screwdriver. I used this quirk to fix a nylon M3 captive bolt to a 20mm offset to mount the boards on to the wall panel.
This Winter I hope to add a PSU supervisor system, to reduce the chance of fire. Improve the signal monitoring, and add schematic drawings to this site.