4.1. Central Processing Unit Architecture Flashcards
Von Neumann model
- Von Neumann realized data & programs are
indistinguishable and can therefore use same
memory. - Von Neumann architecture uses a single processor.
- It follows a linear sequence of fetch–decode–execute
operations for the set of instructions i.e. the program.
In order to do this, the processor uses registers.
Define Registers
Smallest unit of storage of microprocessor;
allows fast data transfer between other registers
General Purpose registers
- Used to temporarily store data values which have
been read from memory or some processed result - Can be used by assembly language instructions
Special Purpose Registers
- Some are accessible by assembly language
instructions - Only holds either data or memory location, not both
Special purpose registers include
- Program Counter (PC): holds address of next
instruction to be fetched - Memory Data Register (MDR): holds data value
fetched from memory - Memory Address Register (MAR): Holds address of
memory cell of program which is to be accessed - Accumulator (ACC): holds all values that are
processed by arithmetic & logical operations. - Index Register (IX): Stores a number used to
change an address value - Current Instruction Register (CIR): Once program
instruction fetched, it is stored in CIR and allows
the processor to decode & execute it - Status Register: holds results of comparisons to
decide later for action, intermediate and
erroneous results of arithmetic performed
The Processor (CPU)
- Arithmetic and Logic Unit (ALU): part of processor that
processes instructions which require some form of
arithmetic or logical operation - Control Unit (CU): part of CPU that fetches
instructions from memory, decodes them &
synchronizes operations before sending signals to
computer’s memory, ALU and I/O devices to direct
how to respond to instructions sent to processor - Immediate Access Store (IAS): memory unit that can
be directly accessed by the processor - System Clock: timing device connected to processor
that is needed to synchronize all components.
Buses
Set of parallel wires that allow the transfer data
between components in a computer system
Data bus
Bidirectional bus that carries data
instructions between processor, memory, and I/O
devices.
Address bus
Unidirectional bus that carries
address of main memory location or input/output
device about to be used, from processor to
memory address register (MAR)
Control bus
- Bidirectional and unidirectional
- Used to transmit control signals from control unit
to ensure access/use of data & address buses by
components of system does not lead to conflict
Performance of Computer System Factors
Clock Speed, Bus Width, Cache Memory, Number of Cores
Clock Speed
- Number of pulses the clock sends out in a given
time interval, which determines the number of
cycles (processes) CPU executes in a given time
interval - Usually measured in Gigahertz (GHz)
- If the clock speed is increased, then execution
time for instructions decreases. Hence, more
cycles per unit time, which increases performance. - However, there is a limit on clock speed since the
heat generated by higher clock speeds cannot be
removed fast enough, which leads to overheating
Bus Width
- Determines number of bits that can be
simultaneously transferred - Refers to number of lines in a bus
- Increasing bus width increases number of bits
transferred at one time, hence increasing
processing speed and performance since there
Cache Memory
- Commonly used instructions are stored in the
cache memory area of the CPU. - If cache memory size is increased, more
commonly executed instructions can be stored
and the need for the CPU to wait for instructions
to be loaded reduces, hence CPU executes more
cycles per unit time, thus improving performance
Number of Cores
- Most CPU chips are multi-core — have more than
one core (essentially a processor) - Each core simultaneously processes different
instructions through multithreading, improving
computer performance