Beruflich Dokumente
Kultur Dokumente
Computer
Systems
Organizati
with
Assembly
onLanguage
R a l p h Vo l t a i r e D a y o t
Instructor
What is a
Computer
System?
A computer is an
electronic
device
It can manipulate
data (process)
It can produce
information (output)
A computer is an electronic
device, operating under the
control of instructions stored in its
own memory unit, that can
accept data, manipulate data,
and produce information from the
processing.
It is a complete,
workingcomputer.
What is
Computer
Organization?
Computer organization
refers to the operational
units and their
interconnections that
realize the architectural
specifications.
Examples of organizational
attributes include those
hardware details transparent
to the programmer, such as
Central
Processi
ng Unit
(CPU)
Buses
Input
&
Outpu
t
Device
s
Memo
ry
Central
Processing
Unit
Basic Operations
the transfer of data between itself and
the memory section
manipulation of data in the memory
section or stored internally
the transfer of data between itself and
input/output devices
Von Neumann
Architecture
Neumann
Von Neumann
Architecture
Allows instructions
and data to be mixed
and stored in the same
memory module.
Von Neumann
Architecture
Von Neumann
machines have shared
signals and memory
for code and data.
Thus, the program can
be easily modified by
itself since it is stored
in read-write memory.
Von Neumann
Architecture
Instructions in memory
are executed
sequentially unless a
program instruction
explicitly changes the
order
Harvard
Architecture
A computer
architecture with
physically separate
storage and signal
pathways for
instructions and data.
Harvard
Architecture
The term originated from the
Harvard Mark I relay-based
computer, which stored
instructions on punched tape
(24 bits wide) and data in
electro-mechanical counters
(23 digits wide).
Harvard
Architecture
In a computer using the
Harvard architecture, the
CPU can read both an
instruction and perform a
data memory access at the
same time, even without a
cache.
Harvard
Architecture
SYSTEM BUS
System Bus
System Bus
A communication
pathway connecting
two or more devices
System Bus
Connects theCPUtomain
memoryon the
motherboard.
System Bus
System Bus
Bus Speed
The speed of the bus
reflects how many bits of
information can be sent
across each wire each
second.
System Bus
Bus Speed
This would be analogous
to how fast the cars are
driving on our analogical
highway.
System Bus
Bus Speed
Most buses transmit one
bit of data per line, per
clock cycle, although
newer high-performance
buses like AGP may
actually move two bits of
data per clock cycle,
doubling performance.
System Bus
System Bus
System Bus
DATA BUS
A collection of wires
through which data is
transmitted from one
part of a computer to
another.
System Bus
DATA BUS
Can be thought of as a
highway on which data
travels within a
computer.
System Bus
DATA BUS
This bus connects all
the computer
components to the CPU
and main memory.
System Bus
DATA BUS
Remember that there is no
difference between data
and instruction at this
level
System Bus
ADDRESS
A collection of wires
used to identify
particular location in
main memory.
System Bus
BUS
ADDRESS
BUS
System Bus
ADDRESS
e.g. CPU needs to
read an instruction
(data) from a given
location in memory
System Bus
BUS
ADDRESS
The information used
to describe the
memory locations
travels along the
address bus.
System Bus
BUS
CONTROL
The connections that
carry control
information between
the CPU and other
devices within the
computer
System Bus
BUS
CONTROL
The control bus
carries signals that
report the status of
various devices.
System Bus
BUS
CONTROL
Control and timing
information
System Bus
BUS
Bus
TRANSACTIONS
System Bus
Bus
TRANSACTIONS
System Bus
Bus
TRANSACTIONS
System Bus
BUS
PROTOCOLS
BUS
PROTOCOLS
It is used to regulate
the flow of information
between the devices.
System Bus
BUS
PROTOCOLS
System Bus
BUS
PROTOCOLS
With a synchronous
protocol , data transfers
occur in relation to
successive edges of the
system clock.
SYNCHRONOUS
System Bus
BUS
PROTOCOLS
SYNCHRONOUS
System Bus
BUS
PROTOCOLS
Asynchronous bus
transfers bear no
particular timing relation
to the system clock;
transfer can take place at
any time
ASYNCHRONOUS
System Bus
BUS
PROTOCOLS
Additional handshake
lines are required in order
to guarantee data
transfers between master
and slave.
ASYNCHRONOUS
System Bus
BUS
PROTOCOLS
ASYNCHRONOUS
System Bus
BUS
PROTOCOLS
System Bus
BUS
PROTOCOLS
System Bus
BUS
PROTOCOLS
Semi - SYNCHRONOUS
System Bus
MEMORY
Memory
Memory
Memory
Memory
Memory
Memory
Memory
Memory
Access Methods
Sequential
Start at the beginning and read through
in order
Access time depends on location of data
and previous location
e.g. tape
Memory
Access Methods
Direct
Individual blocks have unique address
Access is by jumping to vicinity plus
sequential search
Access time depends on location and
previous location
e.g. disk
Memory
Access Methods
Random
Individual addresses identify
locations exactly
Access time is independent of
location or previous access
e.g. RAM
Memory
Access Methods
Associative
Data is located by a comparison with
contents of a portion of the store
Access time is independent of location
or previous access
e.g. cache
Memory
Address Locations
These are sequential number
of locations inside the
memory, each of which are a
specific number of bits wide.
Memory
Address Locations
The more number of
bits per location affects
the speed at which data
can be moved from one
location to another in a
computer system.
Memory
Address Locations
In general, the more bits
per location the faster data
can be transferred.
Each memory location is
referred to as an address,
and generally expressed in
hexadecimal notation
(using base 16 numbers).
Memory
Address Locations
The processor selects a
specific address in
memory by placing the
address on the address
bus .
Memory
Address Locations
The total number of
address locations which
can be accessed by the
processor is known as its
Memory
Access Time
This refers to how long
it takes the processor
to read or write to a
specific memory
location within a chip.
Memory
Volatility
Memory
Volatility
Memory
Memory
Memory
Memory
Memory
Memory
DRAM vs SRAM
DRAM
SRAM
Access Time: 60
nanoseconds
Long cycle time
Needs to be
refreshed
(reenergized)
Cheap
Access Time: 10
nanoseconds
Short cycle time
Memory
No refreshing
needed
Expensive
Register
A register is one of a
small set of data
holding places that
are part of a
computerprocessor.
Memory
Register
Memory
Register
Some instructions specify
registers as part of the
instruction.
For example, an instruction
may specify that the contents
of two defined registers be
added together and then
placed in a specified register.
Memory
Cache
A special highspeedstoragemechanism.
It can be either a reserved
section ofmain memory or
an independent highspeedstorage device.
Memory
Cache
Fast and small compared to
main memory; acts as a
buffer between the CPU and
main memory: it contains the
most recent used memory
locations (address and
contents are recorded here)
Memory
Cache
Logical cache (virtual cache)
stores data using virtual
addresses
Memory
Cache
Physical cache stores data
using main memory physical
addresses
Memory
Cache
Every address reference goes
first to the cache; if the desired
address is found there, then it
is called a cache hit
Memory
Cache
Memory
Operation
Cache
Memory
Operation
Cache
Temporal localityrefers
to the reuse of specific
data, and/or resources,
within a relatively small
time duration.
Memory
Cache
Most software exhibits
temporal locality of
access, meaning that it
is likely that same
address will be used
again soon
Memory
Cache
Spatial locality
Memory
Cache
Memory
Memory
You turn the computer on.
The computer loads data fromread-only memory(ROM) and performs apower-on selftest(POST) to make sure all the major components are functioning properly. As part of this test,
thememory controller checks all of the memory addresses with a quickread/writeoperation to
ensure that there are no errors in the memory chips. Read/write means that data is written to
abitand then read from that bit.
The computer loads thebasic input/output system(BIOS) from ROM. The BIOS provides the
most basic information about storage devices, boot sequence, security,Plug and Play(auto
device recognition) capability and a few other items.
The computer loads theoperating system(OS) from the hard drive into the system's RAM.
Generally, the critical parts of theoperating systemare maintained in RAM as long as the
computer is on. This allows the CPU to have immediate access to the operating system, which
enhances the performance and functionality of the overall system.
When you open anapplication, it is loaded intoRAM. To conserve RAM usage, many applications
load only the essential parts of the program initially and then load other pieces as needed.
After an application is loaded, anyfilesthat are opened for use in that application are loaded into
RAM.
When yousavea file andclosethe application, the file is written to the specified storage device,
and then it and the application are purged from RAM.
Memory
INPUT/OUTPUT
INPUT/OUTPUT
INPUT/OUTPUT
INPUT/OUTPUT
INPUT/OUTPUT
Peripheral devices
allow input and
output to occur.
INPUT/OUTPUT
INPUT/OUTPUT
INPUT/OUTPUT
INPUT/OUTPUT
INPUT/OUTPUT
Instruction cycle
INPUT/OUTPUT
Instruction cycle
INPUT/OUTPUT
Instruction cycle
INPUT/OUTPUT
FETCH
DECOD
E
EXECU
TE
Instruction cycle
INPUT/OUTPUT
Instruction cycle -
FETCH
INPUT/OUTPUT
The instruction is
transferred from memory
to an internal location
inside the processor (the
instruction register)
Instruction cycle -
FETCH
INPUT/OUTPUT
Instruction cycle -
FETCH
INPUT/OUTPUT
Instruction cycle -
DECODE
INPUT/OUTPUT
Instruction cycle -
DECODE
INPUT/OUTPUT
Instruction cycle -
DECODE
INPUT/OUTPUT
EXECUTE
INPUT/OUTPUT
Instruction cycle -
EXECUTE
INPUT/OUTPUT
A delay experienced by a
computer processor when
accessing external
memory or another device
that is slow to respond.
WAIT STATES
INPUT/OUTPUT
A program or process in a
wait state is inactive for the
duration of the wait state.
WAIT STATES
INPUT/OUTPUT
WAIT STATES
INPUT/OUTPUT
WAIT STATES
INPUT/OUTPUT
WAIT STATES
INPUT/OUTPUT
WAIT STATES
INPUT/OUTPUT
WAIT STATES
INPUT/OUTPUT
HARDWARE
INTERRUPTS
INPUT/OUTPUT
It is a signal to the
processor emitted
byhardwareor software
indicating an event that
needs immediate
attention.
HARDWARE
INTERRUPTS
INPUT/OUTPUT
HARDWARE
INTERRUPTS
INPUT/OUTPUT
HARDWARE
INTERRUPTS
INPUT/OUTPUT
The Arithmetic
Logic Unit performs
arithmetic
calculations
Typical operations
performed by the ALU
are: add, subtract,
negate, divide, multiply,
shift/rotate, etc.
A register in a computer
processor that contains
the address (location) of
the instruction being
executed at the current
time.
Program Counter
Program Counter
Program Counter
Program Counter
Program Counter
Instruction Register
Instruction Register
References
http://nptel.ac.in/courses/Webcoursecontents/IIT%20Guwahati/comp_org_arc/web/
Computer Systems Organization &
Architecture, John D. Carpinelli, ISBN: 0201-61253-4
Operating Systems A modern
perspective, Garry Nutt, ISBN 0-80531295-1
World Wide Web