Arithmetic and Logic Unit (ALU)
Von Neumann
architecture
·
is based on the idea
that that not only should the data be stored in memory, but that the program
processing that data should also be stored in the same memory. Effectively the
program itself is treated as data. A computer built with this architecture would
be much easier to re-program.
Memory of the Von
Neumann architecture
·
The computer will have
memory that can hold both data and also the program processing that data. In
modern computers this memory is RAM.
Control Unit of the
Von Neumann architecture
·
The control unit will
manage the process of moving data and program into and out of memory and also
deal with carrying out (executing) program instructions - one at a time. This
includes the idea of a 'register' to hold intermediate values.
One at a time
·
sequential processing
machine.
Input
·
are the signals or
data received by the system
Output
·
are the signals or
data sent from the system
Arithmetic Logic Unit
of the Von Neumann architecture
·
This part of the
architecture is solely involved with carrying out calculations upon the data.
All the usual Add, Multiply, Divide and Subtract calculations will be available
but also data comparisons such as 'Greater Than', 'Less Than', 'Equal To' will
be available.
Bus
·
in a modern computer
built to the Von Neumann architecture, is a component where information passes
back and forth along it.
address bus
·
permit to identify
locations in memory
data bus
·
allow the flow of data
and program instructions
registers
·
is a discrete memory
location within the CPU designed to hold temporary data and instructions. Some
of it have a special-purpose to carry out a specific role. . Each of these are
given a name so that the programmer can write their software code to access them.
Program Counter (PC)
·
this holds the address
in memory of the next instruction.
Current Instruction
Register (CIR)
·
This holds the current
instruction to be executed, having been fetched from memory.
Program Status Word
(PSW)
·
has a lot of duties:
• compares two data items together, and it arranges for the result of that
comparison to appear in this register i.e. the result of 'greater than' etc.
• indicates if program conditions have been met that would lead to a jump to a
different part of the program. In programming terms this means the result of an
IF statement. An IF statement is important in any programming language as it
allows execution to jump from one set of instructions to another.
• holds error flags that indicate a number of problems that may have happened
as a result of an instruction, such as 'overflow' which means a calculation has
exceeded it allowed number range.
Memory Address
Register (MAR)
·
holds the location in
memory of the next piece of data or program to be fetched (or stored).
Memory Buffer Register
or Memory Data Register
·
When the data or
program instruction is fetched from memory, it is temporarily held here for
short
Cache
·
we could store here
the most often-used instructions in the holding area instead of having to pass
from the data bus every time.
The Harvard
Architecture
·
the idea is to split
the memory into two parts. One part for data and another part for programs.
Each part is accessed with a different bus. This means the CPU can be fetching
both data and instructions at the same time.
Purpose of a CPU
·
is to process data. It
is where all the searching, sorting, calculating and decision making takes
place in the computer.
The
fetch-decode-execute cycle
·
is a standard process
describing the steps needed for processing to take place.
Fetch
·
is to take some data
and instructions (program) from main memory then store them in its own internal
temporary memory areas. These memory areas are called 'registers'.
Decode
·
is to make sense of
the instruction the CPU has just fetched.
Execute
·
the instruction is
carried out upon the data (executed). The result of this processing is stored
in yet another register.
The Control Unit
·
has three jobs:
1. It controls and monitors the hardware attached to the system to make sure
that the commands given to it by the application software are used.
2. It controls the input and output of data so that the signals go to the right
place at the right time
3. It controls the flow of data within the CPU
Immediate Access Store
·
This holds the data
and programs needed at that instant by the Control Unit. The CPU reads data and
programs kept on the backing storage and stores them temporarily in the IAS's
memory. The CPU needs to do this because Backing Storage is much too slow to be
able to run applications directly.
Arithmetic and Logic
Unit (ALU)
·
This is where the
computer processes data either by manipulating it or acting upon it.
Clock speed
·
determines the basic
performance of the CPU - the faster it goes, the more powerful the computer
Number of cores
·
influence the speed
and the performance of the computer