How does a CPU work? Look at transistors moving data in the first ever ARM processor

They are a heart of every personal computer, server, tablet or a smartphone. Technological marvels that even most IT professionals understand only in a very general way.

The CPUs.

Do you think that understanding the details of CPU architecture is a thing best left to the experts? Everyone can try to reach them now. It was never easier to get a glimpse into how exactly do CPUs really work.

A small group of volunteers calling themselves Visual6502 have built a virtual model of the old ARM1 CPU. The model is fully functional.

You can see how the tiniest parts of the CPU work and communicate together as they’re going through code right in your browser window. You get to see what exactly the CPU’s innards do when they run through low-level commands like CMP or MOV.

The ARM1 was chosen because it has a well-deserved place in the history of computing. It was the precursor of modern ARM architectures that are ruling the today’s mobile CPU landscape.

The virtual model of the CPU was also a birthday present for the ARM’s eponymous manufacturer. The ARM company has recently celebrated its 25th birthday.

How do the individual parts of the processing unit communicate? Through where does the data flow when it’s being processed? Answers to these questions are now easily accessible. At least for this older CPU.

The virtual model of the ARM1 is mighty interesting to a lot of experts, as it’s one of the forefathers of the CPUs that run most of today’s tablets, smartphones and other mobile devices. And they are even trying to take on servers. (The ARM is quite suited to all these tasks – while powerful, it has a very low energy consumption and consequently a low heat output as well.) The ARM’s manufacturer provided the volunteer group with the original documentation of the architecture so that the model could be perfect.

The result is a working transistor-level model that allows you to see its individual components and their communication as the model steps through the code.

But to see the ARM1 architecture at work is an interesting experience even for a layman. The sight of rows and rows of cooperating components forces you to admire the complexity of this invention and the people who built it.

Tiny CPU, meet hot acid. It's time to take some pictures

The virtual model of the ARM1 is a third similar project that the group called Visual6502 undertook. They previously created models of two other CPUs – the 6800 and the MOS 6502 that gave the group their name.

Whereas recreating the ARM1 was – thanks to the original plans provided by the manufacturer – a more or less straightforward project, making the previous simulations was much more difficult.

Back in 2009, when three IT experts first started mapping the historically important CPU MOS 6502 made by MOS Technologies, no complete plans were available. All the chip designs from the seventies used to be recorded only on paper. And none survived this long.

There are Acorns behind the ARM acronym

The ARM architecture was originally called the Acorn RISC Machine, but this was later abbreviated to ARM. The British company behind the original design was called Acorn (it was famous for its BBC Micro and Acorn Archimedes computers, for example) and the chip used thereduced instruction set RISC.

People interested in the history of this particular piece of silicon faced an interesting problem. The CPU’s instruction set was known, but it was not clear how exactly did the CPU accomplish them. Basically, while people still had working samples of the MOS 6502 chip, no one knew what’s going on under the hood.

The chip archaeologists had to go at it the other way around – from a working CPU to its plans. They obtained a few well-preserved processors and subjected them to a thorough analysis. They etched away the protective cover of the CPU with hot acid and then photographed the chips die under a microscope. They made seventy-two shots of all the components. Then the experts had to stitch the pictures together in a graphic software and there it was, a big-resolution photo of the famous processor.

The three-member team decided to go one step further. They wanted to create a polygon model that could be used where a simple photo wouldn’t be enough, e.g in complex simulations. The whole conversion process had to be done by hand, all they had to help them was a small program written in Python. After hours of difficult work, they finally built their own virtual processor.

There’s a huge demand for their work. The team is flooded with requests and suggestions for other chips to be mapped and made into virtual models. However, it’s a very difficult and a painfully slow task. But even though these experts have never been paid a cent, they are still working hard to preserve CPU architectures of the by-gone era. After six years of their effort, the collection on their website has several dozens of CPU die-shots. And three virtual models – the MOS 6502, the Motorola 6800 and the newest ARM1. The team is going strong and doing a creditable service to the public, it’s therefore possible that they will be eventually working directly with museums and other institutions.