Chapter 4 - Processor Fundamentals Flashcards
Von Neumann archtecture
Computer architecture which introduced the concept of the stored program in the 1940s
ALU
Arithmetic logic unit
Component in the processor which carries out all arithmetic + logical operations
CU
Control Unit
Ensures synchronisation of data flow + programs throughout the computer by sending out signals along the control bus
System clock
Produces timing signals on the control bus to ensure synchronisation takes place
IAS
Temporarily Holds all data + programs needed to be accessed by the control unit. (Programs come from backing store). Done so that read/write operations using the IAS can be done faster than using the backing store. Another name for RAM (primary memory)
ACC
Accumulator
Temporary general purpose register which stores numerical values at any part of a given operation
Register
Temporary component in the processor which can be general or specific in its use that holds data or instructions as part of the fetch-execute cycle
Status register
Used when an instruction requires some form of arithmetic/logical processing
Flag
Indicates status of a bit in the status register
Address bus
Carries address throughout the computer system
Data bus
Allows data to be carried from processor to memory (and visa versa) / to and from input/output devices
Control bus
Carries signal from control unit to all other computer components
Unidirectional
Bus in which bits can travel in 1 direction only
Bidirectional
Bus in which bits can travel in both directions
Word
Group of bits used by a computer to represent a single unit
Clock cycle
Clock speeds are measured in terms of GHz, the vibrational frequency of the clock which sends out pulses along the control bus - a 3.5bGHz clock cycle means 3.5bbillion clock-cycles a second
Overlocking
Changing the clock speed of a system to a higher value than the factory/recommended setting
BIOS
Basic input/output system
Cache memory
High speed auxiliary memory which permits high speed data transfer and retrieval
Core
Unit made up of ALU, control unit and registers which is part of a CPU (may contain a number of cores)
Dual core
CPU containing 2 cores
Quad core
CPU containing 4 cores
Port
External connection to a computer which allows it to communicate with various peripheral devices. Number of different port technologies exist
USB
Type of port connecting devices to a computer
Asynchronous serial data transmission
Serial - single wire used to transmit bits of data one after the other.
Asynchronous- sender using its own clock/timer device rather than sharing the same clock/timer with the recipient device
HDMI
High-definition multimedia interface
Type of port connecting devices to a computer
VGA
Video Graphics Array
Type of port connecting devices to a computer
HDCP
High-Bandwidth digital copy protection
Part of HDMI technology which reduces risk of piracy of software and multimedia
Fetch-execute cycle
Cycle in which instructions and data are fetched from memory and then decoded and finally executed
PC
Program Counter
Register used in a computer to store the address of the instruction which is currently being executed
CIR
Current Instruction Register
Register used to contain the instruction which is currently being executed or decoded
RTN
Register Transfer Notation
Short hand notation to show movement of data and instructions in a processor, can be used to represent the operation of a fetch-execute cycle
Interrupt
Signal sent from device/software to a processor requesting its attention; processor suspends all operations until the interrupt has been serviced
Interrupt priority
Given to all interrupts so that the processor knows which need to be serviced first and which are to be dealt with quickly
ISR/ interrupt handler
Interrupt service routine
Software which handles interrupt requests and sends them to the CPU for processing
Features of Von Neumann architecture (4)
Central processing unit (CPU or processor)
Processor cable to access memory directly
Computer memories that could store programs as well as data
Stored programs made up of instructions that could be executed in sequential order
Main components of CPU (4)
ALU
CU
System clock
IAS
Special Registers (7)
CIR - current instruction register
IX - index register
MAR - memory access register
MDR/MBR - memory data/buffer register
PC - program counter
SR - Status register
Interrupt register
Function of CIR
Current instruction register
Stores current version being decoded and executed
Function of IX
Index register
Used when carting out index addressing operations (address code)
Function of MAR
Stores address of the memory location currently being read from or written to
Function of MDR/MBR
Memory data/buffer register
Stores data which has just been read from memory or data which is about to be written to memory
Function of PC
Program counter
Stores address where the next instruction can be found
Function of SR
Status register
Contains bits (flags) which can be set or cleared depending on the operation
Used when an instruction requires some sort of arithmetic/logic processing
Types of registers + explain (2)
General purpose registers - eg. ACC, hold data frequently used by the CPU/ can be used by the programmer when addressing the CPU directly
Special purpose registers - have specific functions within the CPU and hold the program state
Flags in use by SR (4)
Carry flag (C)
Negative flag (N)
Overflow flag (V)
Zero flag (Z)
Buses in von Neumann architecture (3)
Data bus
Address bus
Control bus
How to increase speed of computer system (4)
Increase bus width
Increase clock speed
Use multi-core CPUs
Use of cache memories
Common types of ports found on modem computers (3)
USB cable
HDMI cable
VGA
Causes of interrupts (5)
Timing signal
Input/output processes
Hardware fault
User interaction
Software error that cannot be ignored
Interrupt
Signal sent from a device/software to the processor causing the processor to temporarily stop what it’s doing and service the interrupt
Machine code
Programming language that the CPU uses
Description of USB cable
Consists of four-wired shielded cable with 2 wires for power and the earth and 2 wires used for data transmission
What happens when a device is plugged into a computer using a USB port (3)
-Computer automatically detects that a device is present (due to a small change in the voltage level on the data signal wires in the cable)
-Device is automatically recognised + the appropriate device driver is loaded up so that computer and device can communicate effectively
-If new device is detected, the computer will look for the device driver which matches the device, if not available the user is prompted to download the appropriate software
Pros of USB system (5)
Devices plugged into the computer are automatically detected + device drivers automatically loaded up
Connectors can only fit 1 way which prevents incorrect connections being made
Industry standard so considerable support is available to users
Several data transmission rates are supported
Newer USB standards are backwards compatible with older USB standards
Cons of USB system (3)
Present transmission rate limited to less than 500 megabits per second
Maximum cable length is about 5 metres
Older USB standard may not be supported in the near future
Computer ports (3)
USB
HDMI
VGA
Pros of HDMI (4)
Current standard for modern televisions and monitors
Allows for a very fast data transfer rate
Improved security (helps prevent piracy)
Supports modem digital system
Cons of HDMI
Not a very robust connection (easy to break it when moving)
Limited cable length to retain good signal
Currently 5 cable/connection standards
Pros of VGA (4)
Simpler technology
Only 1 standard available
Easy to split the signal and connect a number of devices from one source
Very secure connection
Cons of VGA(3)
Old outdated analogue technology
Easy to bend the pins when making connections
Cables must be of a very high grade to ensure undistorted signal
Features of HDMI (4)
Use widescreen format (16:9)
Screens use a greater number of pixels (1920 x 1080)
Screens have a faster refresh rate (120Hz or 120Hz frames a second)
Range of colours extremely large
Old TVs vs modern HD TVs
HD TVs require more data which has to be received at a much faster rate. HDMI increases the bandwidth making it possible to supply the necessary data for high quality sound and visual effects
Fetch
Next instruction is fetched from the memory address currently stored in the PC and is then stored in the CIR. PC is then incremented so that the next instruction can be processed. This is decoded so that each instruction can be interpreted in the next part of the cycle.
Execute
Processor passes the decoded instruction as a set of control signals to the appropriate components within the computer system allowing each instruction to be carried out in its logical sequence
Fetch-execute cycle in Von Neumann computer model (8)
Once instructions are received, the PC contains the address of the memory location of the next instruction to be fetched
The address is than copied from the PC to the MAR using the address bus
The instructions at the memory location in the MAR are temporarily copied into MDR
The contents of the MDR are then copied and placed into the CIR
The PC is then incremented by 1 so it points to the next instruction which has to be fetched
Instruction is decoded and executed by sending out signals via the control bus
Checks if any interrupts to service, if not it starts again
Important notation in RTN
Register Transfer Notation
Double brackets are used when the contents of the register are not being copied into another register, but rather the data stored un the address shown in the register
Interrupts in the fetch execute cycle
Sequence that occurs (5)
An interrupt register is used. An interrupt causes one of the bits in the interrupt register to change its status.
At next fetch-execute cycle, the interrupt register is checked bit by bit
Contents would indicate an interrupt had occurred during a previous cycle. CPU services/ignores interrupt depending on its priority.
Once the interrupt is serviced by the CPU, it stops its current task and stores the contents of its registers.
Control is transferred to the ISR
Once the interrupt is fully serviced the register is reset and the contents restores
Machine code
Programming language the CPU uses
Types of low level language (2)
Machine code
Assembly language
Instruction
Single operation performed by a CPU
Assembly language
Low level chip/machine specific programming language that uses mnemonics
Opcode
Operation code. Part of a machine code instruction that identifies the action the CPU will perform
Operand
Part of machine code instruction that identifies data to be used by CPU
Source code
Computer program before translation into machine code
Assembler
Computer program that translates programming code written in assembly language into machine code. Can be one or two pass
Instruction set
Complete set of machine code instructions used by CPU
Object code
Computer problem after translation into machine code
Addressing modules
Different methods of using the operand part of a machine code instruction as a memory address
Absolute addressing
Mode of addressing in which the contents of the memory location in the operand are used
Direct addressing
Mode of addressing in which the contents of the memory location in the operand are used which is the same as absolute addressing
Indirect addressing
Mode of addressing in which the contents of the memory location in the operand are used
Indexed addressing
Mode of addressing in which the contents of the memory location found by adding the contents of the index register (IR) to the address of the memory location in the operand are used
Immediate addressing
Mode of addressing in which the memory address used in the current memory address added to the operand
Relative addressing
Mode of addressing in which the memory address used is the current memory address added to the operand
Symbolic addressing
Mode of addressing used in assembly language programming, where a label is used instead of a value
UTRs
I75e
Programming language understood by CPU
Machine code
Function of an assembler (2)
Translates each assembly language instruction into machine code instruction
Checks the syntax of the assembly language program to ensure only opcodes from the appropriate machine code instruction set are used
Types of assemblers (2)
Short explanation of each
Single pass - puts machine code instructions straight into computer memory to be executed
Two pass - produces an object program in machine code that can be stored the loaded (using the loader) and executed at a later stage. Scan the source program twice so they can replace labels in the assembly program with memory addresses in the machine code program
Pass 1 of a two pass assembler (6)
Read assembly language program one line at a time
Ignore anything not required, such as comments
Allocate a memory address for the line of code
Check the opcode is in the instruction set
Add any new labels to the symbol table with the address if known.
Place address of labeled instruction in the symbol table
Pass 2 of a two pass assembler (3)
Read assembly language program one line at a time
Generate object code (with opcode and operand) from the symbol table generated in pass 1
Save or execute the program
Why is the second pass required (assembler)
Some labels may be referred to before their address is known.
Types of assembly language instructions (5)
Data movement
Input and output of data
Arithmetic operation
Unconditional and conditional
Compare
Data movement instructions (assembly language)
Allows data stored at one location to be copied into the accumulator. This data can then be stored at another location, used in a calculation, used for a comparison or output.
B
&
#
What do they represent in assembly language instructions
Binary
Hex
Denary
Input and output of data instructions (assembly language)
Allow data to be read from the keyboard or output to the screen, no opcode is required as a single character is either input to the accumulator or output from the accumulator
Arithmetic operation instructions (assembly language)
Perform simple calculations on data stored in the accumulator and store the answer in the accumulator, overwriting the original data