1/95
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What is an input device?
peripheral devices used to pass data into the computer (& allow users to communicate w/ computer)
Examples of input devices
keyboard
mouse
biometrics
temperature sensor
cameras
barcode scanner
proximity sensor
RFID scanner
Infrared sensor
Describe a barcode
representing data in a machine-readable form
check digit at end of barcode
when long code entered check digit calculated & compared to check digit at end of barcode
if they do not match there was an input error
How do sensors work?
by converting an analogue signal into a digital form by an ADC (analogue to digital converter)
Main criteria for choosing an appropriate input device?
cost
speed
accuracy
reliability
Describe an RFID (Radio Frequency Identification)
allows data to be transmitted wirelessly over radio waves
made up of tags and reader
tags = antenna(receiving & transmitting radio frequency sinals) & chip (processes signals)
each tag = unique identifier
reader transmits encoded radio signal to interrogate the tag
What is an output device?
peripheral devices used to report results of processing from a computer to the user (& allow the computer to communicate with the user)
Examples of output devices
monitors
printer
speakers
3-D printers
motors(actuator)
What is an actuator?
something that performs an action
3 different types of printers
Inkjet(feel the ink)
Laser (use lasers)
Dot-Matrix (old,dots)
What are the two different types of memory?
primary
secondary
What is primary memory?
memory that can be directly accessed by the CPU
What type of memory are RAM and ROM?
primary storage
Features of RAM
volatile (contents erased when no power)
can be read from and written to
What is usually stored temporarily in RAM?
user files
applications software
OS
Features of ROM
non-volatile (contents remains with no power)
read only
What is usually stored in ROM?
OS
BIOS bootstrap program
Secondary storage has slower… than RAM
access speeds
What are the 3 types of storage?
Magnetic
Optical
Flash
Examples of magnetic storage devices
hard disk drives
magnetic tape drives
Examples of optical storage devices
CDs
DVDs
Blu-ray discs
Examples of flash devices
SSD (solid-state drives)
USB flash drives
How do magnetic storage devices store data?
magnetising particles on a disk/tape
(two magnetic states representing binary 1 and 0)
How do optical storage devices store data?
using a laser to burn puts into the surface of the disc
How do solid state devices store data?
in flash memory cells
Hard Drive (Magnetic) advantages
high capacity
cheap
reasonably quick
Hard Drive (Magnetic) disadvantages
serial access - slow (one after the other)
vulnerable to damage if dropped
Hard Drive (Magnetic) uses
used in computers
Solid State Drive (Flash) advantages
direct access - fast speed
light and portable
reliable
not as vulnerable to damage if dropped
Solid State Drive (Flash) disadvantages
more expensive than simple hard drive
limited number of read/writes till they break
Solid State Drive (Flash) uses
computers where speed is priority
CD, DVD + Blu - ray (Optical) advantages
fast
light and portable
reliable
not vulnerable to damage if dropped
cheap
CD, DVD + Blu - ray (Optical) disadvantages
limited capacity
slow read write times
CD, DVD + Blu - ray (Optical) uses
distribution of software and films
USB pen drive (Flash) advantages
cheap
very portable
USB pen drive (Flash) disadvantages
limited read write before stops working
USB pen drive (Flash) uses
carrying data from place to place
What is virtual storage?
storing data remotely so it can be accessed by any computer with access to the same system
Examples of virtual storage
google drive
microsoft one drive
Benefits of virtual storage
scalability (easy to increase storage as capacity grows)
accessibility(accessed from anywhere w/ internet)
data protection (protects against lost data due to hardware)
cost-effective (pay only for storage used)
Drawback of virtual storage
dependence on internet
security concerns
ongoing costs (cost can add up overtime)
When a PC runs low on RAM it can move data from RAM → Hard Disc but what will this cause?
reduction in performance of PCs
reduced instruction set computers (RISC)
aim to use simple instructions that will execute within one clock cycle
MULT would be separated into a number of simpler commands
adv/dis RISC
complier does more work to translate high level code into machine code
more RAM required
pipelining is possible as each instruction takes one clock cycle
cheaper
low energy requirement - portable devices
less complex hardware - more room for cache
complex instruction set computers (CISC)
large instruction set - MULT
aim is to try and accomplish tasks in as few lines of assembly code as possible
these instructions are built into the hardware
used in embedded systems
adv/dis CISC
compiler does less work to translate high level code into machine code
less RAM required since code is shorter
more complex hardware
more power hungry
more expensive
code is executed in more cycles due to instruction complexity
cant make use of pipelining
multi core processor
processor contains 2 or more cores
each core can FDE on its own
enhance multicore processors further
on chip shared cache
inter-core communication
2X cores doesn’t mean 2X performance
overheads with inter-core communication
some programs cant take advantage of it
parallel processing
processes instructions by dividing them between multiple process or cores
achieved by assigning different cores to different stages of the FDE cycle
advantages of parallel processing
improves speed and performance by executing multiple instructions simultaneously
reducing overall processing time
efficient as tasks that can be divided into smaller, concurrent operations
limitations of parallel processing
task being carried out
if software has been designed to make use of parallel processing / multiple cores
graphics processing unit (GPU)
type of co-processor - secondary processor that is used for a specific set of tasks, enhancing the performance of the main CPU by offloading duties - working concurrently
has lots of independent processors which work in parallel making it very efficient at completing repetitive tasks such as image processing and machine learning
difference between CPUs and GPUs
GPUs have thousands of processors but run slower than a CPU core
GPUs are highly specialised and are faster in certain tasks
simple operations on large data sets
CPUs are all rounders
complex operations on small data sets
What is the ALU?
The Arithmetic Logic Unit is a part of the CPU that performs arithmetic and logical operations on data for the computer programs.
What type of arithmetic operations does the ALI do?
Mathematical operations such as addition and subtraction on fixed or floating point numbers.
What type of logical operations does the ALU do?
Boolean logic operations such as AND, OR, NOT and XOR.
What is the CU?
The Control Unit is a part of the CPU that controls and manages the operations of the CPU
What does the CU do?
It:
controls and coordinates the activities of the CPU
manages the flow of data between the CPU and other devices
accepts the next instruction to be decoded
decodes the instruction
stores the resulting data back in the memory
What are registers and what are they used for?
Registers are small memory cells that operate at a very high speed and can be accessed quickly.
They are used to temporarily store data and all arithmetic, logical and shift operations that occur in these registers (essentially control information).
Name all 5 of the registers.
Program Counter (PC)
Accumulator (ACC)
Memory Address Register (MAR)
Memory Data Register (MDR)
Current Instruction Register (CIR)
What is the purpose of PC?
The program counter is a special purpose register that holds the address of the next instruction to be executed.
What is the purpose of the ACC?
The accumulator is a special register which temporarily stores the results of operations performed by the ALU.
What is the purpose of MAR?
The Memory Address Register is a special register which holds the address of a location that is to be read from or written to.
What is the purpose of MDR?
The Memory Data Register is a special register which temporarily stores data that has been read or data needs to be written.
What is the purpose of CIR?
The Current Instruction Register is a special register which holds the current instruction being executed, decoded and divided up into operand and opcode.
What are buses?
Buses are a set of parallel wires which connect two or more components in the CPU. They carry groups of bits between several components of a computer.
What is the width of a bus?
The number of parallel wires the bus has
What does the width of the bus affect?
It is directionally proportional to the number of bits that can be transferred simultaneously at any one time. They are typically 8, 16, 32 or 64 wires wide.
Name the three buses in the CPU.
Data Bus
Control Bus
Address Bus
What is the data bus?
The data bus is a bi-directional bus (meaning bits can be carried in both directions) which transports data and instructions between components (e.g. processor and memory).
What is the control bus?
The control bus is a bi-directional bus which carries control signals between internal and external components, to synchronise access and use of data.
What are the different types of control signal?
bus request - a device is requesting use of the data bus
bus grant - CPU has grants access to the data bus
memory write - data is written to the addressed location
memory read - data is read from the addressed location and placed on the data bus
interrupt request - a device is requesting access to the CPU
clock - used to synchronise operations
What is the address bus?
The address bus is a unidirectional bus which transports the address that data is to be read from/written to from the CPU to memory.
What is the significance of the width of the address bus?
It’s proportional to the number of addressable memory locations
What is assembly language?
Assembly language is a low-level programming language that uses mnemonic codes to represent machine instructions e.g. ADD = Addition. It is a simplified way of representing machine code.
How do buses relate to assembly language programs?
The instruction in the CIR is split into two parts:
Opcode = tells computer what to do e.g. add or subtract
Operand = provides what the operation should use, either actual data or the location of the data
For example: ADD A, B
Opcode - ADD (tells the computer to add two values)
Operand - A and B (the values or memory locations being added)
What is opcode?
The instruction to be executed
What is operand?
The data or the memory address where the data is held that the instruction is being executed upon
What is pipelining?
Pipelining is the process of completing the fetch, decode and execute cycles of multiple separate instructions simultaneously (essentially when one instruction is being executed, another is being decoded and another is fetched).
Why do we use pipelining?
To reduce the amount of the CPU that is idle at any one time, thus increasing the processing speed
What is the FDE cycle?
The fetch-decode-execute cycle is the sequence of operations that are completed in order to execute an instruction.
What happens in the F?
Fetch: the next instruction is fetched from memory - where the address from the PC is copied to the MAR, this instruction then is copied to the MDR by the data bus while also the contents of the PC is increased by 1 and then the value held in the MDR is copied to the CIR
What happens in the D?
Decode - the instruction is split (decoded) into opcode and operand in the CIR
What happens in the E?
Execute - the decoded instruction/ opcode is carried out on the operand; the CPU carries out the required instructions
What are the three factors affecting CPU performance?
Clock speed
Number of cores
Amount and type of cache memory
What is clock speed?
Clock speed is the frequency at which the internal clock generates signals switching between 0 and 1. It controls how often instructions are executed and data is fetched (essentially the speed at which a computer’s CPU executes instructions).
What are cores?
A core is an independent processing unit that is able to run its own FDE cycle.
So essentially, the more cores a computer has, the more FDE cycles it can complete at any given time e.g a dual core processor can complete two FDE cycles simultaneously, so runs theoretically twice as fast.
Why is multi-core processing not always n times faster than single core?
Not all programs are able to utilise multiple cores efficiently, so may only rely on one core
Some instructions rely on results of others, so could pause operations until another instruction is complete, which causes a slight delay
What is cache?
Cache is a small, fast and expensive memory onboard the CPU used to store instructions and data that are used regularly so it can access them quicker. As cache fills up, unused instructions are replaced.
What are the three types of cache?
Level 1 cache
Level 2 cache
Level 3 cache
List the three levels of cache from quickest and smallest capacity to slowest and largest capacity:
L1
L2
L3
What is Von Neumann Architecture?
Von Neumann Architecture is a computer design/architecture where a single control unit manages program control via a linear sequence of FDE cycles (essentially it handles everything by following a step-by-step process to run programs)
What is Harvard Architecture?
Harvard Architecture is a computer design/architecture that stores data and instructions in separate memories to allow the next instruction to be read while data is currently being read or written.
What is the main difference between Von Neumann Architecture and Harvard Architecture?
Whether memory is separate for data and instructions or they are stored in one memory
Advantages of Von Neumann Architecture
cheaper to develop as the control unit is easier to design
programs can be optimised in size
Advantages of Harvard Architecture
quicker execution as data and instructions can be fetched in parallel
memories can be different sizes which can make more efficient use of space
What is contemporary processing?
Contemporary Processing is a combination of Von Neumann and Harvard Architecture. Von Neumann is used when working with data and instructions in main memory, but uses Harvard architecture to divide the cache into instruction cache and data cache.