1.1 The characteristics of contemporary processors, input, output and storage devices Flashcards
Why was assembly language developed?
To allow humans to input instructions easily, without having to remember long strings of 1’s and 0’s.
What are Mnemonics?
Simplified instructions, used in assembly language, to easily write instructions. E.g. ADD, SUB, AVG.
Benefits of Mnemonics
Simplified
Easier for a developer to remember compared to binary instructions
What is an Opcode?
Part of an instruction which tells a computer what to do with data.
Components in a CPU:
The control unit
Buses
Arithmetic/logic unit (ALU)
Registers
What is the main function of the control unit?
Coordinates the activities of a CPU, directing the flow of data in, within and out of the CPU.
What is a bus?
A set of parallel wires that connect two or more components of a computer. Usually consists of 8, 16, 32 or 64 lines.
What are the main buses that connect the CPU to the memory and the direction of data flow along these buses?
The address bus (From CPU to memory only)
The data bus (Both directions)
The control bus (Both directions)
What is the function of the address bus?
Carries the address of a specific memory location that the CPU wants to access.
What is the function of the data bus?
Carries data from the memory to the CPU to be processed
Carries processed data from the CPU to the memory
What is the function of the control bus?
Transmits control signals between the CPU to control timings, status information and bus requests.
What is the function of the arithmetic/logic unit (ALU)?
Carries out arithmetic and logic operations on data.
Can ADD, SUBTRACT, MULTIPLY and DIVIDE numbers
Can carry out Boolean logic operations
What are registers?
A memory location in a CPU that holds a small amount of data.
Can be an instruction, a storage address, or other items of data.
What is the function of the program counter?
Holds the address of the next instruction to be executed.
What is the function of the current instruction register?
Holds the instruction that is currently being executed.
What is the function of the memory address register?
Holds the memory address for which data is to be fetched from or written to.
What is the function of the memory data register?
Holds data that is read from or written to memory.
Acts like a buffer between the CPU and the memory so that they can act independently of each other.
Describe the fetch, decode, execute cycle.
PROGRAM COUNTER tells CPU address of next instruction, sends address to RAM through ADDRESS BUS.
Instruction is fetched from RAM through DATA BUS to CIR.
Instruction is decoded by control unit and data to be operated on is fetched using BUSES and sent to the ACCUMULATOR.
ACCUMULATOR carries out operation on the data.
Processed data is sent back to the RAM through DATA BUS.
What three factors affect the performance of a processor?
> Clock speed
Number of cores
Amount of cache
What is clock speed?
The speed at which a CPU can execute a cycle of processes.
Cycles per second, Hertz.
What is a limitation of increasing clock speed?
The faster the clock speed, the more heat is generated by the CPU.
What is cache?
A small amount of fast memory which is connected directly to the CPU which stores recently accessed data.
How does cache speed up the processor?
It is quicker to retrieve information from cache than it is to retrieve from the RAM.
What are cores?
Cores are small processors which make up the entire processor.
Why is having more cores faster?
More information can be processed at a time.
Why does doubling the number of cores not double performance?
Because the cores may have a lower clock speed due to size and temperature and some speed is lost as the cores have to communicate with each other.
What is a limitation of increasing the number of cores?
More cores increases the complexity of the CPU and so software has to be written to make use of the extra cores.
Describe the Von Neumann architecture.
Instructions and data are stored in the same location and share the same bus.
Fetch decode execute cycle is followed in a linear format.
Each cycle must be completely finished before the next one can begin.
Describe the Harvard architecture.
Instructions and data are stored in separate memory locations and have a different set of busses for each.
This allows for the next instruction to be fetched while data is being written back to RAM.
Where are Von Neumann architecture processors found?
Conventional PCs and servers
Where are Harvard architecture processors found?
Digital signal processing, mobile communication systems, speech and image processing systems.
Compare the sizes of programs for Von Neumann and Harvard architectures.
- Optimised programs for Von Neumann
- Large programs for Harvard
Compare the speed and cost of Von Neumann and Harvard architectures.
- Von Neumann is slower but cheaper
- Harvard is faster but more expensive
Give two examples of contemporary architectures.
Parallel processing, MIMD, distributed processing.
What does CISC stand for?
Complex Instruction Set Computer
What does RISC stand for?
Reduced Instruction Set Computer
Describe a CISC processor.
Complicated hardware allows large instruction sets to be built into the CPU. This means that it is able to understand complicated instructions and so code can consist of less lines.
Describe a RISC processor.
Uses a compiler (software) to translate high level code into lots of short, easy to execute lines of machine code.
What type of processor uses less RAM?
CISC uses less RAM - less lines of code required
RISC uses more RAM - more lines of code required
What type of processor uses more transistors?
CISC uses more transistors.
What type of processor uses more registers?
RISC uses more registers and less transistors.
What does the transistor count mean for the size, energy usage and heat output?
More transistors (CISC) means larger, less power efficient CPUs that produce more heat.
RISC processors are smaller, more power efficient and produce less heat.
How many cycles does a CISC instruction take to complete and what does this mean?
Multiple cycles - makes pipe lining difficult
How many cycles does a RISC instruction take to complete and what does this mean?
1 - this makes pipe lining easy.
Where are RISC processors often found?
Portable devices (think power, size, heat)
Where are CISC processors often found?
Desktop computers (think power, size, heat)
What is sequential processing?
When instructions are carried out, one at a time, in the order in which they are received.
What is a disadvantage of sequential processing?
It is very slow
What is pipe-lining?
When an instruction is fetched while the instruction before it is being decoded, and the instruction before that is being executed.
How does pipe-lining improve efficiency?
It means that for each step of the fetch, decode, execute cycle, there is always something happening.
The CPU does not have to wait for new data to be fetched and decoded before it can be executed as it is ready and waiting.
How do branches in programs affect pipe-lining?
The pipeline controller has to predict where the branch will jump the program to in order to keep the pipeline full with the correct instructions.
If the pipeline controller is wrong, the pipeline has to be flushed, which wastes time.
What does SIMD stand for?
Single Instruction Multiple Data
What type of processing is found on SIMD computers?
Array processing.
What is array processing?
A single control unit applies the same instruction to multiple algorithmic units to carry out the same operation on multiple data items at once.
When can array processing not take place?
When the data relies on another item of data to be processed before it can be processed.
In what hardware is array processing often found?
Graphics cards - moving lots of pixels.
What does MIMD stand for?
Multiple Instruction Multiple Data
What type of processing is found on MIMD computers?
Parallel processing
What is parallel processing?
When multiple instructions are processed at the same time for a single system, either through multiple cores in the CPU
What is a limitation of parallel processing?
Most programs do not effectively make use of all of the cores/CPUs that they have available - it is extremely hard to write a program that makes full use of multiple cores.
Define an input device.
A piece of hardware that sends data to a computer in a form that the computer can understand.
Define an output device.
A piece of hardware that receives data from a computer and outputs it in a way that a human can understand.
Define a storage device.
A piece of hardware on which information can be stored.
What is magnetic storage?
Disks that are covered in magnetic material which a read write head can rearrange to store data.
Give a pro and a con of magnetic storage.
- Cheap, large capacity
- Slow, easily damaged > relies on moving parts
Where would magnetic storage be used?
Personal computers, mainframes, backup centres
What is optical storage?
Plastic disks coated in a reflective surface from which a laser can read data in the form of pits and lans.
Give a pro and con of optical storage.
- Cheap, portable
- Low capacity, requires specific reader
Where would optical storage be used?
CDs, DVDs
What is solid state / flash storage?
A collection of chips and capacitors which store a charge to represent a bit.
Give a pro and con of flash storage.
- Very fast, portable, durable, silent
- Expensive, not as much capacity as magnetic
Where would solid state storage be used?
Mobile phones, tablets, military all terrain laptops
Also personal computers - SSD
What is RAM?
Random Access Memory
Very fast, volatile memory which is used to store programs and data that is in use by the processor.
What does volatile mean?
When it loses power, the data stored on it is lost.
What is a core dump?
A snapshot of all of the information in the RAM at a specific moment. It is saved permanently in storage and used in debugging when a program crashes.
What is ROM?
Read Only Memory
A small amount of non-volatile memory which stores the boot up instructions for the computer.
Why does ROM not hold the operating system?
Because ROM cannot be changed and so if it held the operating system then the OS would never be able to change or update.
What is virtual storage?
Storage that appears to be physically part of the computer but is actually on a network that the computer has access to.
Give an example of virtual storage.
- Google Drive (other companies as well)
- School file server
- Office file server
Give an benefit of virtual storage.
- The amount of space each user has can be regulated
- Users can only access files that they are allowed
- It is easy to share and view files on any computer
Give a drawback of virtual storage.
- If the server that holds the data is down, the data cannot be accessed.
- You do not have the physical copy of the data