Many years ago I completed the challenge to fit a CPU into the smallest available CPLD on the market - the MCPU. Ever since then I have been pondering about a new challenge in minimalism in CPU-Design. I had completed a TTL-based CPU even before the MCPU. Clearly, the only direction left is to go fully discrete and build a minimal CPU out of discrete transistors.
To make things interesting and add a modern twist, I decided to investigate a logic family that uses light emitting diodes (LEDs) as an active element. LTL is a logic family from a past that never happened. It combines 1950s transistor logic with low current green InGaN LEDs that were invented in the 1990s.
I already completed the design up to a prototype of a sub-system (see header image) and will use this project to document the steps I have taken to get there.
Start with the first log by using this link or use this link to view all project logs on one page.
Tim
You can see the control unit in action above. Due to it's irregular pattern, this truely seems to be "peak blinkenlight".

The image above shows carry propagation through all stages. The carry is low active. The carry propagation delay is approximately 11 ns per stage (45 ns total for 4 stages). Although this will propably increase in the real circuit due to more parasitics, it is a very reasonable result and suggests that an acceptably high clockspeed can be achieved even without resorting to a more elaborate carry chain architecture.

The first design of the adress path is shown above. A half adder is needed to increment the PC. Since the gates are relatevely fast, I used a ripple carry adder. There are two latches for address and PC respectively. An AOI2 gate is used as multiplexer between PC and external address. The address latch can be loaded with zeros by pulling both control inputs of the MUX to low. This can be used to reset the PC.

Tim,
I have been following your work for several years.
This week I built a 5-stage ring oscillator on a breadboard using BC547B transistors, but with the LEDs included in the base circuit.
Red and green LEDs were mediocre, giving only 40 to 50kHz oscillation.
White LEDs gave an immediate leap to 4MHz and with some tweaking of collector and input pull-up resistor values, I achieved 8.25MHz.
I have measured the forward voltage drop of my white LEDs at 2.5 to 2.7V.
A white LED will still produce useful light output even with just 25uA of current (5V supply and 100K series resistor).
I also breadboarded an edge triggered D-type flopflop. It's 6 transistors and 18 signal diodes, but clocks cleanly with a 1MHz clock - even on a breadboard.
I am currently working on a discrete transistor 16-bit CPU using bit-serial architecture. This will keep the transistor count below 1000.
The pcb area of my 3 input NAND gate is 100mm2, so the final design pcb will be about 320 x 320 mm.