Title: Computer Systems
1Computer Systems
2Computer Systems
3Major Components of a Computer System
- Processor (CPU)
- Runs program instructions
- Main Memory
- Storage for running programs and current data
- Secondary Storage
- Long-term program data storage (hard disk, CD,
etc) - Input Devices
- Communication from the user to the computer(e.g.
keyboard, mouse) - Output Devices
- Communication from the computer to the user (e.g.
monitor, printer, speakers)
4Parts of a PC
- System Unit - the metal box that houses the
processor, main memory, and secondary storage
devices. - Input and output devices - attached to the system
unit via a device controller. - The terms "input" and "output" tell you if data
flow is into or out of the system unit. - Abbreviated to I/O
5Component Interaction
The CPU controls all of the other resources
within the system, in order to accomplish a task.
6The Processor
- The processor is the "brain" of the computer
system. - Main processor is called the Central Processing
Unit (CPU). - A particular computer will have a particular
type of processor, such as a Pentium or a SPARC
chip. - Co-processors assist the CPU with some of the
processing functions. Examples - Math co-processors handle heavy duty math
processing - Graphics coprocessors speed up the display of
graphics onto the monitor
7The CPU
- The CPU is a silicon chip that contains millions
of tiny electrical components. - The CPUs three main parts are
- Control Unit
- Arithmetic Logic Unit (ALU)
- Registers
8Central Processing Unit (CPU)
Performs calculations and decisions
Arithmetic / Logic Unit
Coordinates processing steps
Control Unit
Small, fast storage areas for instructions and
data
Registers
9Registers
- Registers are small, fast memory within the CPU
- Different registers hold different things
- instructions and addresses of instructions
- data (operands)
- results of operations
10Special Purpose Registers
- Special Purpose Registers contain specific
information the CPU needs. - Instruction Register (IR) contains the actual
instruction which is currently being executed by
the CPU. - The Program Counter (PC) contains the address of
the next instruction to be executed by the
program.
11General Purpose Registers
- General Purpose Registers hold
- the operands for arithmetic and logical
operations (ie. the values on which the operation
will be performed) - the results of such operations
- So General Purpose Registers are used for holding
and manipulating data used by the CPU
12Memory
- Computer Memory - millions/billions of
on/off charges - Divided into
- Bits 0 or 1
- Bytes Groups of 8 bits A byte is the
smallest unit of storage. (Can hold one text
character) - Words Groups of bits/bytes (8, 16, 32, 64-bits)
13Memory
- Storage is usually too large to be expressed in
bytes or words. Instead we use - Kilobyte (KB) 1024 bytes (210 bytes)
- Megabyte (MB) 1024 x 1024 bytes or one
Million bytes (220 bytes) - Gigabyte (GB) 1024 x 1024 x 1024 bytes or one
Billion bytes (230 bytes) - Terabyte (TB) 1024 x 1024 x 1024 x 1024
bytes one Trillion bytes (240 bytes)
14Main Memory
- Each computer has a specific word size
- Word sizes vary from computer to computer.
- Word size is an even multiple of a bytes.
- Each word within memory can hold either
- data or
- program instructions
15Main Memory
5248 5249 5250 5251 5252 5253 5254 5255 5256
16CPU and Memory
- CPU can interact with main memory in two ways
- It can write a byte/word to a given memory
location. - The previous bits that were in that location are
destroyed - The new bits are saved for future use.
- It can read a byte/word from a given memory
location. - The CPU copies the bits stored at that location
and stores them in a CPU register - The contents of the memory location are NOT
changed.
17Main Memory Characteristics
- Very closely connected to the CPU.
- Contents are quickly and easily changed.
- Holds the programs and data that the processor is
actively working with. - Interacts with the processor millions of times
per second. - Nothing permanent is kept in main memory.
18Secondary Storage Characteristics
- Connected to main memory through a bus and a
device controller. - Contents are easily changed, but access is very
slow compared to main memory. - Only occasionally interacts with CPU.
- Used for long-term storage of programs and data.
- Much larger than main memory (GBs vs. MBs).
19Program Instructions
- Programs instructions are stored in secondary
storage (hard disks, CD-ROM, DVD). - To process data, the CPU requires a working area
- Uses Main Memory
- Also called RAM (random access memory), primary
storage, and internal memory. - Before a program is run, instructions must first
be copied from the slow secondary storage into
fast main memory - Provides the CPU with fast access to instructions
to execute.
20Instructions
- An instruction is a sequence of bits.
- A simple instruction format may consist of an
operation code (op code) and an address or
operands.
- Instructions tell the computers CPU what to
do.
21Instructions
- The operation code specifies the operation the
computer is to carry out (add, compare, etc) - The operand/address area can store an operand or
an address - An operand is a specific value or a register
number - An address allows the instruction to refer to a
location in main memory - The CPU runs each instruction in the program,
starting with instruction 0, using the
fetch-decode-execute cycle.
22Fetch-Decode-Execute Cycle
- During the fetch part, the CPU fetches the next
instruction from the address contained in the
Program Counter and places the instruction in the
Instruction Register. - When a program starts, the program counter
contains 0, so the instruction at address 0 is
fetched. - As soon as an instruction is fetched, the CPU
adds 1 word to the contents of the Program
Counter, so that it will contain the address of
the next sequential instruction.
23Fetch-Decode-Execute Cycle
- The decode unit within the CPU deciphers the
instruction in the Instruction Register and
determines what operations need to be done and
what type of operands will be used (decode part). - During the execution part, the specified
operation is performed (add, compare, etc). - After execution of the instruction has been
completed the cycle starts all over again (unless
the instruction terminates the program).
24Fetch-Decode-Execute Diagram
CPU
Fetch Get instruction and increment PC
Program Counter (PC)
3024
3023
Instruction Register
add r3, r1, r2
Decode Determine what the instruction is (add)
General Purpose Registers
33
r1 r2 r3
45
Execute In this case add r1 and r2 and put result
in r3.
78
Then begin again by Fetching the instruction in
3024.
25Clocks
- Computer systems have an internal clock, which
is used to synchronize their activities. - Processors run at a particular clock speed.
- Clock speed is measured in Hertz
- One Hertz is one clock tick per second.
- MHz means mega Hertz
- One MHz is one million clock ticks per second.
- The clock speed determines how fast instructions
can be run
26Access to Instructions
The hard disk is too slow to provide instructions
to the CPU. So programs are first loaded into
main memory, which is much faster. The CPU can
then access the instructions more quickly.
27Cache Memory
- But as CPU speeds became faster, the main memory
couldnt provide the CPU with the instructions at
a fast enough rate. - So even faster memory ( cache memory) is now
placed between the CPU and main memory to provide
the instructions at an quicker rate to the CPU.
28Cache Memory
When an instruction or data is accessed from main
memory, it is placed in the cache. Second and
subsequent use of the same instruction/data will
then be faster, since it is accessed directly
from the cache.
29Primary and Secondary Cache Memory
- Most modern CPUs now have a cache memory (L1), on
the same silicon wafer as the CPU, to provide
the CPU with instructions at the same clock speed
as the CPU. - An additional off-the-chip secondary cache (L2)
may also interact with the CPU at a slower speed.
30L1 and L2 Cache Memory
31User view of Computer Systems
32How Programs Are Run
- The operating system presents an interface to the
user (e.g. Windows Desktop) - The user double clicks on an icon to run a
program (e.g. Microsoft Word) - The operating system copies the program (or at
least the first part of it) from the hard disk
into main memory - The CPU runs the instructions in the program, and
presents the initial Word screen - Within Word, the user uses the menu to open a
document - The application software (Word) asks the
Operating System to open the file. - The Operating System communicates with the
hardware to open the file on the hard disk.