We use cookies to give you a better experience. Carry on browsing if you're happy with this, or read our cookies policy for more information.

Skip main navigation

Architecture of a CPU (Von Neuman Architecture)

How do different parts of a CPU & the rest of a computer work together to run programs? In this article, Marc Scott explains Von Neumann Architecture
Von Neumann Architecture
Now that you know how logic gates can be used to perform calculations and to store data, let’s have look at how this all fits together to make a computer.
At the heart of the computer there is a unit called the Central Processing Unit (CPU).
Intel 80486DX2 bottom.jpg
CC BY-SA 2.0, Link
You’ve probably heard of CPUs before. They’re made by companies like Intel, AMD and Qualcomm, and have technical data associated with them such as Quad Core, 3.2GHz with 6Mb of cache.
The CPU can be further divided into three main parts: the Arithmetic Logic Unit (ALU), the Control Unit (CU), and what are known as Registers. We’ll look at these first.


Registers are parts of the CPU that can store data. They operate a little like RAM, but rather than use capacitor-based memory cells, the memory cells are only composed of logic gates. Registers can’t hold as much data as RAM can, but they operate considerably faster.
There are five different types of register within the CPU. The table below gives you some basic details, but you will see how these registers operate in the next section.
AccumulatorACStores the results of calculations
Instruction RegisterIRStores the address in RAM of the instruction to be processed
Memory Address RegisterMARStores the address in RAM of the data to be processed
Memory Data RegisterMDRStores the data that is being processed
Program CounterPCStores the address in RAM of the next instruction

The Arithmetic Logic Unit

CC BY-SA 3.0, Link
The ALU is the core of the CPU. It is made up of all those logic circuits that we have been learning about for the past three weeks.
The ALU uses these logic circuits to perform a variety of operations. It can perform addition of binary numbers. It can also perform a variety of other arithmetic operations, such as subtraction and incrementation. The ALU can also perform logical operations, such as comparing two binary numbers to see if they are the same or not.

The Control Unit

The control unit decodes what each instruction means, and can then control how the other components operate. So when the control unit receives an instruction, which is just a binary number, it will then signal what the ALU and memory is supposed to do. It might be that the instruction is to add two numbers together, or it might be that the instruction is to store a number in RAM.
The control unit also contains a clock. This is a tiny oscillating crystal, which controls the rate at which calculations are performed by the CPU.


This is the RAM that was talked about in the previous section. The RAM stores both the instructions that the computer needs to perform, and the data on which to perform it; you’ll see how this works in the next section. The idea of storing both data and instructions in the same memory is the basis of what is known as the stored-program computer. When reading from or writing to RAM, two registers are needed: one to store the address in RAM that is being read from or written to, and another register to store the data itself.


All of these components are connected together by bundles of wires that are collectively known as buses. So there is a bus to carry data, another for addresses and another for instructions.

Input and Output

Additionally a computer would usually have some input and output devices that can receive external data and then output the results of the calculation. This could be something as simple as a data connection, or something more complicated such as a keyboard and monitor.
This method of putting together a computer is known as the Von Neumann Architecture. It was devised by John von Neumann in about 1945, well before any of the components that would be needed to produce it had actually been invented.
This article is from the free online

How Computers Work: Demystifying Computation

Created by
FutureLearn - Learning For Life

Our purpose is to transform access to education.

We offer a diverse selection of courses from leading universities and cultural institutions from around the world. These are delivered one step at a time, and are accessible on mobile, tablet and desktop, so you can fit learning around your life.

We believe learning should be an enjoyable, social experience, so our courses offer the opportunity to discuss what you’re learning with others as you go, helping you make fresh discoveries and form new ideas.
You can unlock new opportunities with unlimited access to hundreds of online short courses for a year by subscribing to our Unlimited package. Build your knowledge with top universities and organisations.

Learn more about how FutureLearn is transforming access to education