1/26
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
What are the ten components of the CPU?
Arithmetic logic unit (ALU)
Control unit (CU)
Accumulator
Program counter (PC)
Memory address register (MAR)
Memory data register (MDR)
Current instruction register (CIR)
Data bus
Address bus
Control bus
What is the role of the ALU?
Performs calculations + logical operations
What is the role of the CU + four tasks?
Coordinates all activities of the CPU
Tasks:
Manage flow of data inside + outside of the CPU
Accept the next instruction
Decode instructions
Store the result in memory
What is the role of the accumulator?
Holds the results of the ALU
What is the role of the MAR?
Holds the address of a location in memory that is to be read from or written to
What is the role of the MDR?
Temporarily stores data that has been read or needs to be written to memory
What is the role of the CIR?
Holds the current instruction being executed, divided into opcode (what to do) + operand (what to do it to)
What is the role of the data bus?
Carries the data + instructions (binary) around the CPU/computer
What is the role of the address bus?
Carries memory addresses that identify where data is being read from or written to
What is the role of the control bus?
Carries command + control signals between all components of the CPU/computer
What are the stages of the fetch, decode + execute (FDE) cycle?
Fetch:
The address in the PC is copied to the MAR
The instruction held at that address is copied to the MDR
The PC is incremented by 1
The contents of the MDR are copied to the CIR
Decode:
The instruction in the CIR is decoded → split into opcode (what to do) + operand (what to do it to)
Execute:
The opcode is carried out on the operand
What are the three factors that affect CPU performance?
Clock speed
Number of cores
Cache size
What does clock speed mean + unit?
Clock speed - number of cycles per second
Unit - Hz (usually GHz - billions of instruction fetched per second)
What is a core?
Complete copy of the CPU with its own CU, ALU etc
How does increasing the number of cores impact CPU performance?
Usually increases the performance but many programs are not designed to use multiple cores → doesn’t increase performance
What is cache?
Small, fast memory which stores frequently used instructions + data
How does increasing the cache size impact CPU performance?
Increases the performance because cache is faster to access than RAM
What are the four characteristics of the Von Neumann architecture?
Shared memory for both data + instructions
Shared data bus for both data + instructions
Shared address bus for both data + instructions
Follows the FDE cycle linearly → 1 instruction at a time
What are the three characteristics of the Harvard architecture?
Different memory units for data + instructions
Different buses for data + instructions
Reading + writing data can be done at the same time as fetching an instruction → often faster than Von Neumann
What are three contemporary architectures?
Single instruction multiple data (SIMD) - parallel processing where a single instruction is carried out on multiple data items at once (e.g GPUs use this)
Multiple instruction multiple data (MIMD) - multiple instructions carried out on multiple data items across several cores
Distributed computing - multiple computers on a network take on a part of a bigger problem
What are four characteristics of complex instruction set computing (CISC)?
Complex hardware → more expensive
Large number of complex instructions of different lengths
Multiple clock cycles per instruction
Uses more energy
What are four characteristics of reduced instruction set computing (CISC)?
Simple hardware → cheaper
Small number of simple instructions of a fixed length
Single clock cycle per instruction
Uses less energy
What is a multicore processor?
Multicore processor / chip multiprocessor (CMP) - single chip containing 2+ independent processing units
Each core can perform its own FDE cycle
What are the types of CMP?
2 core CMP - dual core processor
4 core CMP - quad core processor
What are two ways that the performance of a CMP be improved?
On-chip shared cache
Inter-core communication
What is parallel processing?
The processing of instructions by dividing them between multiple cores
What are two drawbacks of parallel processing?
Depends on task being carried out → may not be able to speed up by much
Software has to be designed to make use of parallel processing