Title: Personal Computer Memory and Buses
1Personal Computer Memory and Buses
- Semester 1, Week 3, Lect 1
2Memory
- Computer memory refers to computer components,
devices and recording media that retain data
(storage of data) for some interval of time. - The amount of time might be a nanosecond to many
years. - Computer storage is one of the core functions of
the modern computer and is the one that makes
computers so useful. - The Central Processing Unit (CPU) and storage,
together, make up the basic Von Neumann computer
model or architecture.
3Memory (2)
- Memory types in a hardware system
- Registers
- Cache (Level 1 and Level 2)
- RAM (Random Access Memory) - main memory
- ROM (Read Only Memory)
- Also
- Flash Memory
- Hard disk ('C Drive')
- CD - CD ROM or DVD
4Internal Memory Diagram
- Internal memory block diagram with external hard
disk
CPU
Data bus
Address bus
Chipset
BIOS
I/O bus
Memory
Hard disk
5Registers
- In a computer, a register is one of a small set
of holding places that are part of a central
processing unit (CPU). - A register may hold a software instruction, a
storage address or other data, such as single
characters or a bit sequence for a symbol, pixel
anything.
6Registers (2)
- In a 32-bit instruction computer a register must
be 32 bits in length to hold a complete
instruction. - Some chip designs allow for half-registers, for
shorter instructions. - Depending on CPU design and systems software
language, registers may be numbered or have
specific names.
7Registers (3)
- So, the processor uses registers as high-speed
working storage areas - they store no more than a
few bytes. - The operating system needs time to control the
hardware so registers are needed to facilitate
the processing and movement of data and
instructions between - RAM,
- the control unit and
- the arithmetic-logic unit (ALU).
8Registers (4)
- Two types of register are
- Control and Status registers
- User-visible registers
- There are other register types in or with
components on a motherboard their names and
types vary with different hardware systems. E.g.
registers for a Celeron processor will not be
identical in quantity and type to an Intel
Pentium
9Control and Status Registers
- This type of register is generally not available
to user programs. - Some are used by the CPU to control its
operation(s) and some are used by the operating
system to control program execution.
10A figure showing registers ON a processor
11Control and Status Registers (3)
- Examples of Control and Status registers
- Program counter (PC) which contains the address
of the next instruction to be fetched. - Instruction register (IR) which contains the
instruction most recently fetched. - Program status word a register or group of
registers containing - Condition codes and status information bits,
- Interrupt enable/disable bit,
- Supervisor operating system/user mode bit.
12User-Visible Registers
- User-visible registers are available to operating
system and user programs. - They hold data, addresses and some condition
codes associated with program instructions.
13User-Visible Registers (2)
- Examples of user-visible registers
- Data registers, which can be assigned by the user
program to perform operations on data. - Address registers, which contain memory addresses
of data and instructions. They may contain a
portion of the address that is used to calculate
the complete address.
1432 Registers for Instructions
- Thirty two registers
- Registers are denoted in the literature as ri,
where - 0 lt i lt 31.
- So there are thirty-two of them.
- Registers r0 - r3 and r28 - r31 are special
registers and are used for control and status.
Registers r4 - r27 can be said to be 'user
visible'.
15Cache Memory
- Cache memory is Random Access Memory (RAM) that a
computer CPU can access more quickly than it can
access 'main memory' RAM. - As the microprocessor processes data, it looks
first in the cache memory and if it finds data
there, where it was placed from a previous
reading of data, the CPU saves time in not having
to transfer data from RAM.
16Cache Memory (2)
- Cache memory is sometimes described in levels of
closeness and accessibility to the CPU. A Level 1
(L1) cache is on the same chip as the CPU and
can, typically, store 32 kilobytes. - Level 2 (L2 cache) is usually a Static RAM (SRAM)
chip, near to the CPU but separate from it. The
CPU can access the L2 if the L1 happens to be
empty, still saving the transfer from RAM.
17RAM (Random Access Memory) or Main Memory
- RAM Random Access Memory serves as a
short-term memory for the computer. (The hard
disk is usually described as the long-term memory
for the computer.) - While the computer is in use, the application
program instructions and data pass continuously
through the processor. - They are stored, most immediately and for a short
time, in RAM.
18RAM (Random Access Memory) or Main Memory (2)
- RAM also stores many operating system
instructions during this same time. - The main RAM is usually a Dynamic RAM (DRAM)
chip. - DRAM is 'dynamic', unlike Static RAM that is used
in the cache. DRAM needs to have its storage
cells refreshed with electrical charge every few
milliseconds.
19RAM (Random Access Memory) or Main Memory (3)
- Static RAM does not need refreshing because it
uses continually moving current, switched in one
of two directions. DRAM cells hold a charge in
place. Static RAM can be accessed more quickly
than DRAM.
A photo of RAM
20ROM (Read Only Memory)
- ROM is 'built-in' computer memory containing data
and instructions that normally can only be read,
not written to. - ROM code holds start-up instructions - i.e. ROM
contains the programming that allows your
computer to be "booted up" or regenerated each
time you turn it on. - ROM chips contain instructions which are specific
for that particular motherboard. Those programs
and data will remain in the PC throughout its
life usually they are not altered.
21ROM (Read Only Memory) (2)
- Unlike RAM, the data in ROM is not lost when the
computer power is turned off. - The ROM is sustained by a small long-life battery
in the computer.
22Personal Computer Buses
- A bus is a common pathway across which data can
travel within a computer. This pathway can be
established between two or more computer
elements. - These pathways are on the computer's motherboard,
interconnecting the microprocessor with
attachments to the motherboard in expansion slots
- such as the hard disk drive, CD-ROM drive,
graphics card, sound card
23Personal Computer Buses (2)
- There are a number of types of buses, including
the following - System or I/O bus (Input/Output bus)
- Processor bus
- Memory bus
- Address bus
24The System Bus
- The system bus, also known as the I/O bus or the
expansion slot bus is the one over which most
data flows. - Any signal that goes to or from any device such
as a video system, disk drives, and printer -
travels over this bus. - The busiest I/O pathway is, typically, to and
from a video card.
25Types of System or I/O Buses
- Many I/O buses are introduced to give better
system performance for - Faster CPUs
- Increasing software demands
- Greater multimedia requirements.
26System (I/O) Bus
- Many modern PC systems still incorporate the same
basic bus architecture as the old IBM PC/AT of _at_
1984 - but also include a second high-speed local
I/O bus such as - VL-Bus (VESA Local Bus, popular in mid 1990s) or
- PCI (Peripheral Component Interconnect- a more
modern architecture), - which offer much greater performance for adapters
that need it.
27System (I/O) Bus (2)
- You can identify different types of I/O buses by
their architecture. E.g. - ISA (Industry Standard Architecture),
- PCI Local Bus (Peripheral Component
Interconnect), - FireWire,
- USB (Universal Serial Bus).
28System (I/O) Bus (3)
CPU
Video
Memory
I/O
System Bus
FIG. 1 ISA (Industry Standard Architecture)
29System (I/O) Bus (4)
- Each bus architecture is implemented by a chipset
that is connected to the processor bus.
Typically, this chipset also controls the memory.
30Processor Bus
- The processor bus is the communication pathway
between the CPU and immediate support chips. - Support chips Chipsets.
- This bus is used to transfer data between the CPU
and the main system bus, for example, or between
the CPU and an external memory cache.
31Processor Bus (2)
- Figure 2 shows how this bus fits into a typical
PC system.
FIG. 2 The processor bus
32Processor Bus (3)
- The processor bus is required
- to get information to/from the CPU at fastest
possible speed - - so this bus operates at a much faster rate than
any other bus on a PC. - The processor bus consists of electrical circuits
for data, for addresses (the address bus), and
for control purposes. The same control as the
CPUs Control Unit.
33Processor Bus (4)
- In a Pentium-based system, the processor bus has
64 data lines, 32 address lines, and associated
control lines. - The processor bus operates at the same base clock
rate as the CPU does externally. The processor
bus is tied to the external processor pin
connections and can transfer one bit of data per
data line every one or two clock cycles. - Thus, for example, a Pentium, Pentium Pro, or
Pentium II can transfer 64 bits of data at a time.
34Memory Bus
- The memory bus is used to transfer information
between the CPU and main memory - the RAM in a
personal computer system. - A memory bus may be part of the processor bus
itself, but in most cases is implemented
separately by a dedicated chipset for
transferring information between the processor
bus and the memory bus.
35Memory Bus (2)
- Note
- In virtually all systems that are 16MHz or
faster, there will be a special memory controller
chipset that controls the interface between the
faster processor bus and the slower main memory. - This chipset typically is the same chipset that
is responsible for managing the I/O bus.
36Memory Bus (3)
- Figure 3 shows how the memory bus fits into your
PC.
FIG. 3 The memory bus
37Memory Bus (4)
- Information on the memory bus is transferred at a
much slower rate than the information on the
processor bus. - The chip sockets (or the slots) for memory
SIMMs/DIMMs are connected to the memory bus in
much the same way that expansion slots are
connected to the I/O bus. - (SIMMS/DIMMS Single/Dual Inline Memory Modules)
38Address Bus
- This bus is actually a subset of the processor
and memory buses. - Since a system bus often consists of 64 data
lines, 32 (or 36) address lines, and a few
control lines, these address lines constitute the
address bus. - In most block diagrams, this bus is actually
considered a part of the processor and memory
buses.
39Address Bus (2)
- The address bus is used to indicate what address
in memory or what address on the system bus are
to be used in a data transfer operation. - The address bus indicates precisely where the
next bus transfer or memory transfer will occur. - The size of the memory bus also controls the
amount of memory that the CPU can address
directly.
40Programmed I/O
- The programmed input/output (PIO) interface was
the original method used to transfer data between
the CPU, through the ATA controller, and an ATA
device. - (ATA Advanced Technology Attachment is a
standard interface for connecting storage devices
such as hard disks and CD-ROM drives inside
personal computers.)
41Programmed I/O (2)
- The Programmed I/O interface is grouped into
different modes for different transfer rates. - This was a slow means of data transfer around
3.5 Megabytes per second.
42Memory Mapped I/O
- I/O addresses are like bi-directional post
boxes in the computers memory device. - When the information from a device needs to be
placed into the PC it needs to have a place for
the data. - For this reason each device might have its own
small area of memory to use. The name for this is
memory-mapped I/O.
43Memory Mapped I/O (2)
- When the device has a byte of data to send it
sits device's designated I/O address space. - When the CPU is ready to process the data it gets
it from this area. - When it later wants to send data to or through
the device it uses this address again (or another
one near it). This is a simple way of dealing
with information exchange between devices.
44Memory Mapped I/O (3)
- Memory-mapped I/O uses the same bus to address
both memory and I/O devices. - The CPU instructions used to read and write to
memory are also used in accessing I/O devices.
45Memory Mapped I/O (4)
- So, instead of having "real" memory (RAM) as an
address,for an I/O device the device has its own
address space. - An address can be placed an I/O device.
- Thus, communicating with an I/O device can be the
same as reading and writing to memory addresses
devoted to the I/O device.
46Web Sites
- Try these Web page links. If one or two do not
open apologies - http//home.cfl.rr.com/eaa/MemoryTypes.htm
- http//www.pcguide.com/ref/ram/types.htm
- http//computer.howstuffworks.com/ram.htm
- http//www.extremetech.com/article2/0,3973,92994,0
0.asp
47Next
- Boolean Algebra
- (How the logic of computers can be represented by
binary digits)