Hardware

This whopping 16-bit computer processor is being built by hand, transistor by transistor

Cambridge Brit to wire up 14,000 gates, 3,500 LEDs

Pics A bloke in Cambridge, UK, is building a computer processor using 14,000 individual transistors and 3,500 LEDs – all by hand, piece by piece.

James Newman said his Mega Processor relies almost entirely on the hand-soldered components, and will ultimately demonstrate how data travels through and is processed in a simple CPU core. He's just finished putting together the general purpose registers, and in May completed the arithmetic and logic unit.

Each transistor acts like a digital switch, and can be chained together to form huge decision-making circuits that execute software, instruction by instruction.

Transistor ... this, times 14 thousand

The finished circuitry, when mounted on a wall of boards, will measure 14 metres long and 2 metres high (46ft by 6.6ft), will weigh about a half-ton, and will consume 500W. he now fears he won't be able to fit it all in his home.

Newman, whose background is in software development and FPGA programming, told The Register he has spent about £20k on the project to date. He started planning the processor in 2012, and began building the beast a year later.

"There was a conversation at work about that time when we were talking about debugging something and someone remarked it would be easier if we had an LED on a signal," he explained.

"Things got out of hand at that point."

Mega Processor layout

A basic mock-up of how Mega Processor will stand
(click to enlarge)

After researching the blueprints of early microprocessors, such as the Zilog Z80 and the Motorola 68000, Newman opted to craft a 16-bit processor that can perform 20,000 instructions per second from a 20kHz clock. That's 0.02 MIPS (millions of instructions per second). It will have seven registers – four general purpose registers plus a program counter, stack pointer and a CPU status flag word – 256 bytes of RAM, and 256 bytes of programmable ROM.

Here's how the Mega Processor compares to other cores, depending on their clock speed and model:

Processor MIPS Transistor gates Clock speed Year launched
Mega Processor 0.02 14,000 20kHz 2016?
Intel 8080 0.29 4,500 2MHz 1974
MOS 6502 0.43 3,510 1MHz 1975
Zilog Z80 0.58 8,500 4MHz 1976
Motorola 68000 1.4 68,000 8MHz 1979
Intel 286 1.28 134,000 12MHz 1982
Intel i386DX 2.15 275,000 16MHz 1985
Acorn ARM2 4 25,000 8MHz 1986
Intel i486DX 8.7 1,180,000 25MHz 1989
Toshiba MIPS R4000 50 1,300,000 50MHz 1991

When completed, the Mega Processor will have more than 100,000 connections. Soldering in and hooking up the circuitry has not been easy, and Newman acknowledges that finding and replacing dying components will be a major headache.

Mega processor cables

Some of the 100,000 connections required
(click to enlarge)

"The potential for unreliability is deeply scary. There is no built in defence for broken circuitry. My main strategy is to design a test method which allows me to isolate the various subsystems and check their operation matches expectations," he said.

"I'm expecting some disappointment and a lot of frustration."

The register section of the Mega Processor
(click to enlarge)

Newman plans to feed instructions into the Mega Processor via an RS232 serial interface connected to his PC. He is also hoping to add a 32KB RAM module and a video display. He wants to port Conway's Game of Life, Tic-Tac-Toe and possibly a form of Tetris to his hardware.

The system will hardly be a burner ("faster than Babbage’s machine but slower than a Z80" is the performance estimate), but Newman hopes it will provide a novel demonstration of how processors operate at a basic level.

The project is far from a guaranteed success: "things got out of hand" is a common refrain. Originally slated for completion in late 2014, Mega Processor is still a work-in-progress, and Newman concedes that failure remains a strong possibility. Even if he does pull off the massive engineering feat, Mega Processor will need a room large enough to accommodate its size.

"It needs to go somewhere; my house isn’t big enough for the two of us," he said. "I’d be interested in hearing from someone who could give it a good home." ®

Bootnote

The MIPS figures for the chip comparison table are dependent on the listed clock speed and the particular model. For example, the Intel 80486 can hit 40 MIPS if you run it at 50MHz. The ARM2's transistor count is so low due to its slimline RISC design and lack of a cache.

All images taken by James Newman. Used with permission.

Sponsored: Global DDoS threat landscape report