Secondary storage devices are used for long-term data storage and are non-volatile, meaning they retain data without power. They typically offer more storage capacity than primary memory but have slower read/write speeds.
Von Neumann Architecture stores both program instructions and data in the same memory, allowing computers to be reprogrammed without physical rewiring. This concept is fundamental to modern computing.
The Fetch Decode Execute Cycle involves fetching instructions from memory, decoding them to understand the required actions, and executing these instructions. This cycle continuously repeats to perform tasks on a computer.
The Central Processing Unit (CPU) is the brains of the computer. The purpose of the CPU is to process data and instructions. Without the CPU, a computer would not be able to compute.
If a device has a button it probably has a CPU (and is therefore a computer). They carry out tasks very quickly: the CPU in your smartphone can carry out over 1 billion calculations a second.
Computers like Colossus, while electrical, and stored data electrically, were programmed mechanically using wires and switches. If you wanted to change the program being run on the computer, it would have to be re-wired. Imagine having to rewire a computer to swap from Word to Chrome (or from Fortnite to Minecraft)!
Computers like Colossus, while electrical, and stored data electrically, were programmed mechanically using wires and switches and if you wanted to change the program being run on the computer, it would have to be re-wired.
This was a major problem, as everytime we needed the computer to do something different it required a rebuild.
Von Neumann, a Hungarian engineer and scientist, proposed storing the program (instructions – what tells the computer what to do) electrically along with data.
His implementation of a “Stored Program Computer” is called Von Neumann Architecture, and is the basis of the architectures computers use to this day.
Von Neumann suggested the following architectrue, where instructions are stored in memory. On modern day computers this memory could be RAM or Secondary storage, however in this architecture refers to a memory store closer to the concept of RAM.
Term | Definition |
Arithmetic Logic Unit (ALU) | The ALU carries out two main tasks: Carries out Arithmetic (+,-,/,*) and Logic operations (AND, OR, NOT). |
Control Unit | Controls what the CPU is doing. Sends signals to control the flow of data inside the CPU. |
Registers | Tiny memory locations built into the CPU. They are VERY fast at moving data around and VERY expensive to make. They can only hold a tiny amount of data. |
Memory (Not a part of the CPU but heavily linked) | Stores data and instructions. The CPU must fetch both from the memory in order to use them. Memory is much larger than cache and registers, but it is much slower to read and write data to memory. |
Busses | Tiny wires built into the CPU. Data, instructions and signals can be passed across these between different parts of the CPU. |
Clock | The Clock determines “how fast” the CPU is. It ticks many times each seconds – this is measured in hz (hertz). A lot of computers can complete billions of ticks every second (1 billion ticks = 1Ghz). |
During the Fetch Decode Execute Cycle data and addresses need to move around parts of the CPU and between the CPU and memory, this is achieved using busses.
Busses are tiny wires built into the CPU and other components that allow data, instructions, and signals to move around.
There are 3 main busses:
Bus | Purpose | Directionality |
Address Bus | Carries addresses from the CPU to Memory. | Unidirectional |
Data Bus | Carries data to and from Memory and the CPU | Bidirectional |
Control Bus | Used by the control unit to send signals to different parts of the CPU. It uses the bus to control those parts and “tells them what to do” | Bidirectional |
Both the data bus and control bus are bidirectional, which means data can be sent and recieved over the bus in both directions. The address bus is unidirectional, meaning that addresses can be sent from the CPU to memory, but not back in the reverse direction.
The Fetch Decode Execute Cycle is the only thing that a CPU can do. This process begins as soon as a computer is switched on and will only end when it is turned off.
Each step in the Fetch Decode Execute cycle makes use of different parts of a CPU and different busses.
All the data and the instructions the CPU needs is stored in Memory (which is outside of the CPU). All the data and instructions have their own unique address for the “memory location” they are in.
When the CPU needs data or instructions it requests them using the address of their memory location. The CPU places the memory location address on the Address Bus.
The data or instruction at the memory location address requested by the CPU is sent back to the CPU using the Data Bus. The data or instruction requested is now stored in registers within the CPU.
The Control Unit inside the CPU figures out what to do with the instructions that has been fetched from memory.
Every CPU has an Instruction Set: A list of every instruction it can carry out. Each instruction has a unique binary number
The execute stage is where the instruction is carried out. This could be many things: It could be for the ALU to carry out a calculation, to fetch data, fetch another instruction at another memory location, or even to store data in memory.
Once the execute stage has been completed the cycle starts again.
Primary Memory is a computer's short term memory. Any applications running on a computer will be transferred to Primary Memory. Once an application is no longer running it will be removed from memory.
We refer to the Primary Memory is computers to as RAM (Random Access Memory). RAM is Volatile this means that in order to store data it needs power.
On some computers RAM can be upgraded. On newer computers and smaller devices RAM is often soldered directly to the motherboard and cannot be upgraded.
Sometimes if a computer has an issue turning it on and off solves the issue because it clears the RAM where the issue may have been.
The CPU processes instructions and executes instructions. We must get the data and instructions to the CPU, and if we can’t do this fast enough the CPU will “idle” and not have anything to do.
Instructions and data are stored long term on secondary storage but accessing them directly from secondary storage can be a slow process. RAM on the other hand is much faster than secondary storage, but cannot store as much data.
Pre-loading the data and instructions into RAM allows the CPU to access them faster and can reduce possible bottlenecks.
Secondary Storage devices are used for long term storage of data.
All secondary storage devices are non-volatile, which means that they don't require power to continue to store data. They typically store significantly more data than primary memory, but are much slower for reading / writing data.
All secondary storage devices can be categorized into one of three classes, each has their own advantages and disadvantages:
Factor |
Details |
How it works |
Laser burns pits into a layer of dye on the surface of a disk. The laser reflects from the areas where there are no pits, land, (1s) and will not from where there are pits (0s) |
Capacity |
Low |
Read/Write speed |
Slow (especially during random read) |
Portability |
Portable, but can be scratched |
Examples |
CD, DVD, BluRay |
Factor |
Details |
How it works |
The disk is covered in a substance that can be magnetised. A magnetic head writes 1s and 0s to the surface using ‘North” and “South” |
Capacity |
Highest |
Read/Write speed |
Medium speed Data can be read / write in a random way (HDD) |
Portability |
Can be portable, but are comparatively large, can be damaged easily |
Examples |
Hard Disk Drive, MagneticTape |
Factor |
Details |
How it works |
Uses NAND transistors, traps electrical currents into “pools”. A full pool is a 1, an empty pool is 0 |
Capacity |
Medium (high £ per GiB, but maximum capacity can be high) |
Read/Write speed |
Fastest |
Portability |
Can be small / portable, Fast data storage, Durable |
Examples |
SSD, USB Flash Drive, Build in Flash Storage, SD Card |
General Purpose Computers are those that can have many purposes and their purpose can be changed
Desktops, Laptops, and Smartphones are all general purpose computers - we can change the software they run easily. They can be used for playing games, browsing web pages, completing office work, watching videos
These only make up 2% of computers worldwide!
Embedded Systems are computers embedded within other devices
They have a narrow or singular purpose.
Examples include:
Embedded systems are highly specialised: