Show Menu

Computer Architecture Cheat Sheet (DRAFT) by

This cheat sheet goes over computer architecture

This is a draft cheat sheet. It is a work in progress and is not finished yet.

CPU Components

Arithmetic Logic Unit (ALU): Respon­sible for carrying out Arithmetic calcul­ations & Making logical decisions
Control Unit: Respon­sible for sending signals to how data moves around the CPU & Coordi­nates the CPU operations
Cache: Provides fast access to frequently used instru­ctions & data Inform­ation written to cache is retrieved quicker then inform­ation written to RAM
Clock: An electronic unit that synchr­onises related components by generating pulses at a constant rate
Registers: Tiny, super fast pieces of on-board memory inside the CPU Each has a very specific purpose
Program Counter: Holds the address in memory which data or an instru­ction needs to be read from or written to
Memory Data Register: Holds either data or an instru­ction which has been fetched from memory of is about to be written back to memory
Memory Address Register: Holds either data or an instru­ction which has been fetched from memory of is about to be written back to memory
Accumu­lator: Set of general purpose registers
Buses: Collection of wires through which data & instru­ctions are transm­itted from one component to another
Address bus: Unidir­ect­ional Carries the addresses which data needs to be written to or read from
Data bus: Bidire­ctional Carries the actual data or instru­ctions
Control bus: Bidire­ctional Carries command & control signals telling components when they should be receiving reads or writes etc.

Fetch Decode Execute

Computer: An electronic device which takes input, processes data & delivers output
Simple Example: Input - 5 Process - Multiply by 2 Output - 10
Complex Example: Input - Buttons on controller Process - Conversion in the console Output - Update to a monitor, sound out of a speaker or vibration feedback through a controller
In order to process data a computer follows a set of instru­ctions known as a computer program in addition their are 2 critical components that allow this to happen RAM: Stores the programs & CPU: Carries out instru­ctions
Fetch Stage: Fetches the next instru­ction from RAM & Brings it back to the CPU
Decode Stage: Inspects the instru­ction & works out what it is that needs doing
Execute Stage: Carries out the instru­ction which could involve many thing such as going back to RAM to grab some data, performing a calcul­ation or storing inform­ation back into main memory
Clock speed: Amount of cycles per second measured in Hertz e.g. 3GHz = 3 billion cycles per second

Von Neuman & Harvard Archit­ectures

Von Neuman Archit­ecture
Harvard Archit­ectures
Instru­ction & data are shared­/stored with the same memory space/­format
Instru­ctions & data are stored in separate memory units
Each have the same set of buses (System Bus)
Each having their own set of buses
A single control unit or processor follows a linear fetch, decode, execute cycle
Reading & writing data can be done at the same time as fetching an instru­ction
One instru­ction at a time
Used by RISC processers
Registers are used as fast access to instru­ction & data

Altern­ative Archit­ecture

Parallel Proces­sing: Single Instru­ction on Multiple Data (SIMD)
Multiple Instru­ctions on Multiple Data (MIMD) Using multiple cores
Distri­buted computing: Each computer on the network takes part in the problem