What is the role of a CPU in a computer?
- The CPU processes instructions and data that are input into the computer so that the result can be output
What is a microprocessor?
- A type of integrated circuit on a single chip
What is the purpose of a register?
- Register is a high speed storage area
- Used to hold memory location or an instruction
- …temporarily
- Used within the fetch execute cycle
What is the ALU?
- Carries out calculations
- Carries out logical operations
- Holds temporary values during calculations
- …in a register called the accumulator
What is the function of the Control Unit?
- Controls operation of memory, processor and input/output
- Instructions are interpreted
- Sends signals to other components telling them "what to do"
Registers used in the Fetch Execute Cycle
- Program Counter — holds the address of the next instruction to be executed
- MAR — holds the address to fetch the data (from the Program Counter)
- MDR — holds the data which has just been read from memory
- CIR — holds the instruction that is to be decoded and executed
- ACC — holds the results temporarily at the end of the fetch execute cycle
Describe the role of the MAR
- Stores addresses
- …of the next instruction to be fetched
Describe the role of the MDR
- Stores data…
- …that has been fetched
Fetch Decode Execute
Explain how an instruction is fetched in a von Neumann model computer
- PC holds the address of the instruction
- The address held in PC is sent to MAR…
- …using the address bus
- MAR goes to location in memory where the instruction is stored
- Instruction sent to MDR…
- …using data bus
- Instruction sent to CIR
- Control unit sends signals to manage the process…
- …using the control bus
Describe the stored program concept when applied to the Von Neumann model
- The program is stored on a secondary storage device
- Data and instructions are moved to memory/RAM
- Data and instructions are stored in the same memory/RAM
- Data and instructions are moved to registers to be executed
- Instructions are fetched one at a time
Buses in Fetch Execute Cycle
- Address Bus: Transmits/carries addresses… between components in the CPU
- Data Bus: Transmits/carries data… between components in the CPU
- Control Bus: Transmits control signals… from the control unit to other components in the CPU
Components of the CPU
Core
- One core is made up of an ALU, a CU and the registers
- Used to perform the fetch-execute cycle
- To process/execute an instruction
Cache
- It is a type of storage
- …that stores frequently used data/instructions
- To speed up access
- …as it is faster to access than RAM
- It has different levels. eg L1–L3
Clock/System Clock
- Synchronise operations
- …by creating timing signals
- To keep track of the date and time / timestamp files
- To process operations in the correct order/sequence
CPU has a clock speed of 2.4 GHz — what is meant by 2.4 GHz?
- The CPU completes 2.4 billion
- …cycles/clock pulses per second
Multiple cores (eg dual core instead of single core):
- It can process two instructions simultaneously
- …increasing the performance
- However it does not double the speed of execution as the CPU needs to communicate with each core
Increasing cache:
- More cache improves performance
- …because more cache means the processor can access more frequently used instructions faster
- …instead of having to access data from slower-access RAM
Overclocking / Increasing clock speed:
- The faster the clock speed the more instructions can be run per second
- …however, there is a limit on clock speed because the heat generated by higher clock speeds cannot be removed fast enough
Address + Data bus width:
- Increasing the address bus width increases the number of upcoming instruction addresses that can be transferred from memory
- Increasing the data bus width increases the number of instructions that can be carried for execution
What is a CPU instruction set?
- A list of all commands that can be processed by a CPU and the commands are machine code
Embedded Systems
What is an embedded system?
- A combination of hardware and software designed to carry out a specific set of instructions
- It is built into a device
- It has a single purpose
- It runs on firmware
- It does not have additional firmware
Pros & cons of embedded systems
- Small in size (fit easily into devices)
- Relatively low cost
- Consume very little power
- May be difficult to upgrade
- Troubleshooting faults becomes a specialist task
You may need to know how embedded systems are used with a given example.