Why Pipeline a Microprocessor?

Modern CPUs all use pipelining to improve performance, but how does it work? We will use a warehouse robot analogy to explain how.

Erik Engheim
10 min readJan 24, 2021
A factory robot moving packages around in an imaginary warehouse for processing. The moving corresponds to CPU instructions and packages can be thought of as data being processed.

Pipelining is in many ways such a universal way to speed up any task, that it is possible to find countless analogies for it in manufacturing or in your every day life, such as doing laundry, or cooking.

At the heart we deal with the challenge of getting as much work done per time unit as possible. There are many ways of achieving this. I will go through different approaches to help you understand how microprocessor designers arrived at pipelining as a smart solution. We will look at:

  • Clock frequency. How early CPUs got speed bumps by increasing clock frequency.
  • Parallel execution. If you cannot perform an instruction faster, how about performing more in parallel?
  • Pipelining is for when you cannot do more tasks in parallel and you cannot miniaturize to increase clock frequency.

Speeding Up CPUs By Increasing Clock Frequency

A computer does everything in discrete time steps, called clock cycles. In one clock cycle the smallest task is performed in a CPU. It is a bit like how a mechanical watch…

--

--

Erik Engheim

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.