0% found this document useful (0 votes)
21 views41 pages

Lecture 11

ICT

Uploaded by

Mohammad Ahmad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views41 pages

Lecture 11

ICT

Uploaded by

Mohammad Ahmad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 41

CSC 101

Introduction to
Computing

Lecture 11
Muhammad Salman Ali
[email protected]

1
Last Lecture Summary
 Memory
 Address , size
 What memory stores
 OS, Application programs, Data, Instructions
 Types of Memory
 Non Volatile and volatile
 Non Volatile
 ROM, PROM, EPROM, EEPROM, Flash
 RAM – Volatile Memory
 Static RAM, Dynamic RAM, MRAM
 SDRAM and its types
2
Components affecting Speed
 CPU
 Memory
 Registers
 Clock speed
 Cache
memory
 Data bus

3
Achieving Increased
 Processor Speed
Increase the hardware speed of the processor.
 shrinking the size of the logic gates on the processor chip, so
that more gates can be packed together more tightly
 Increasing the clock rate
 individual operations are executed more rapidly.
 Increase the size and speed of caches
 In particular, by dedicating a portion of the processor chip itself
to the cache,
 cache access times drop significantly.
 Make changes to the processor organization and
architecture that increase the effective speed of instruction
execution.
 Typically, this involves using parallelism in one form or another.
4
Registers
 processor contains small, high-speed storage
locations
 temporarily hold data and instructions
 part of the processor, not part of memory or a
permanent storage device.
 Different types of registers, each with a specific
storage function including
 storing the location from where an instruction was
fetched
 storing an instruction while the control unit decodes it
 storing data while the ALU computes it, and
 storing the results of a calculation.
5
Register Function
 Almost all computers load data from a larger
memory into registers where it is used for
 arithmetic,
 manipulated, or
 tested, by some machine instruction.
 Manipulated data is then often stored back in
main memory,
 either by the same instruction or
 a subsequent one.

6
Register Size
 Number of bits processor can handle
 Word size
 indicates the amount of data with which the
computer can work at any given time
 Larger indicates more powerful computer
 Increase by purchasing new CPU
 16 bit registers
 32 bit registers
 64 bit registers

7
User Accessible Registers
 Data registers
 can hold numeric values such as integer and
floating-point values, as well as characters, small bit
arrays and other data.
 In some older CPUs, a special data register
accumulator, is used implicitly for many operations.
 Address registers
 hold addresses and are used by instructions that
indirectly access main memory i.e. RAM

8
Other types of Registers
 Conditional registers
 hold truth values often used to determine whether some
instruction should or should not be executed.
 General purpose registers (GPRs)
 can store both data and addresses, i.e., they are combined
Data/Address registers.
 Floating point registers (FPRs)
 store floating point numbers in many architectures.
 Constant registers
 hold read-only values such as zero, one, or pi.
 Vector registers
 hold data for vector processing done by SIMD instructions
(Single Instruction, Multiple Data).
9
Other types of Registers
 Control and Status registers hold program state; they
usually include
 Program counter (aka instruction pointer) and
 Status register (aka processor status word or Flag register).
 Instruction register store the instruction currently being
executed
 Registers related to fetching information from RAM,
 Memory Buffer register (MBR)
 Memory Data register (MDR)
 Memory Address register (MAR)
 Memory Type Range Registers (MTRR)
 Hardware registers are similar, but occur outside
CPUs.
10
System or Internal Clock
 Operations performed by a processor, such as
 fetching an instruction,
 decoding the instruction,
 performing an arithmetic operation, and so on,
 are governed by a system clock
 Typically, all operations begin with the pulse of the clock
 Speed of a processor is dictated by the pulse frequency
produced by the clock, measured in cycles per second,
or Hertz (Hz)
 Clock signals are generated by a quartz crystal, which
generates a constant signal wave while power is applied.
 This wave is converted into a digital voltage pulse stream that
is provided in a constant flow to the processor circuitry
11
System or Internal Clock
 The rate of pulses is known as the clock rate, or
clock speed.
 One increment, or pulse, of the clock is referred to
as a clock cycle, or a clock tick or the time it takes
to turn a transistor off and back on again.
 The time between pulses is the cycle time.
 controls the timing of all computer operations
 A processor can execute an instruction in a given
number of clock cycles.
 Pace of the system clock is called the clock speed
 Modern machines use Giga Hertz (GHz)
 One billion clock ticks in one second
12
Underclocking and
 Overclocking
Underclocking
 With any particular CPU, replacing the crystal with
another crystal that oscillates half the frequency will
generally make the CPU run at half the performance
and reduce waste heat produced by the CPU.
 Overclocking
 to increase performance of a CPU by replacing the
oscillator crystal with a higher frequency crystal
 the amount of overclocking is limited by the time for
the CPU to settle after each pulse, and by the extra
heat created.

13
Overclocking
 process of making a computer or component operate
faster than specified by the manufacturer by modifying
system parameters.
 Most overclocking techniques increase power
consumption, generating more heat, which must be
carried away.
 The purpose of overclocking is to increase the operating
speed of given hardware.
 Computer components that may be overclocked include
 processors (CPU),
 video cards,
 motherboard chipsets, and
 RAM.
14
Cache Function
 The data that is stored within a cache
 might be values that have been computed earlier or
 duplicates of original values that are stored elsewhere
 If requested data is contained in the cache (cache hit),
 this request can be served by simply reading the cache,
which is comparatively faster.
 Otherwise (cache miss),
 the data has to be recomputed or fetched from its original
storage location, which is comparatively slower.
 Hence, the greater the number of requests that can be
served from the cache, the faster the overall system
performance becomes.
15
Cache
 Small amount of very fast memory which stores
copies of the data from the most frequently used
main memory locations
 Sits between normal main memory (RAM & ROM)
and CPU
 May be located on CPU chip or module
 Used to reduce the average time to access memory.
 As long as most memory accesses are cached
memory locations, the average access time of
memory accesses will be closer to the cache
access time than to the access time of main
memory.
16
Cache Operation – Overview
 CPU requests contents of memory location
 Check cache for this data
 If present, get from cache (fast)
 If not present, read required block from main
memory to cache
 Then deliver from cache to CPU
 Cache includes tags to identify which block of
main memory is in each cache slot

17
Cache Read Operation -
Flowchart

18
Types of Cache
 Most modern desktop and server CPUs have
at least three independent caches:
 an instruction cache to speed up executable
instruction fetch,
 a data cache to speed up data fetch and store,
and
 a translation lookaside buffer (TLB) used to
speed up virtual-to-physical address translation
for both executable instructions and data.

19
Multi Level Cache
 Another issue is the fundamental tradeoff between cache
access time and hit rate
 Larger caches have better hit rates but longer access time
 To address this tradeoff, many computers use multiple levels of
cache, with small fast caches backed up by larger slower
caches.
 Multi-level caches generally operate by checking the smallest
level 1 (L1) cache first;
 if it hits, the processor proceeds at high speed.
 If the smaller cache misses, the next larger cache (L2) is checked,
and
 so on, before external memory is checked.
 L1 holds recently used data
 L2 holds upcoming data
 L3 holds possible upcoming data 20
Multilevel Caches
 High logic density enables caches on chip
 Faster than bus access
 Frees bus for other transfers
 Common to use both on and off chip cache
 L1 on chip, L2 off chip in static RAM
 L2 access much faster than DRAM or ROM
 L2 often uses separate data path
 L2 may now be on chip
 Resulting in L3 cache
 Bus access or now on chip…

21
Multilevel Cache

22
L1 Cache
 Built directly in the processor chip.
 Usually has a very small capacity, ranging from
8 KB to 128 KB.
 The more common sizes for PCs are 32 KB or
64 KB.

23
L2 Cache
 Slightly slower than L1 cache
 Has a much larger capacity, ranging from 64
KB to 16 MB
 Current processors include Advanced Transfer
Cache (ATC), a type of L2 cache built directly
on the processor chip
 Processors that use ATC perform at much
faster rates than those that do not use it
 PCs today have from 512 KB to 12 MB of ATC
 Servers and workstations have from 12 MB to
16 MB of ATC
24
L3 Cache
 L3 cache is a cache on the motherboard
 Separate from the processor chip.
 Exists only on computers that use L2 Advanced
Transfer Cache.
 Personal computers often have up to 8 MB of
L3 cache;
 Servers and work stations have from 8 MB to
24 MB of L3 cache.

25
Multi Level Cache
 speeds the processes of the computer because it
stores frequently used instructions and data

26
Intel Cache Evolution
Processor on which
Problem Solution feature first appears
Add external cache using 386
External memory slower than the system bus.
faster memory technology.

Increased processor speed results in external Move external cache on- 486
bus becoming a bottleneck for cache access. chip, operating at the same
speed as the processor.
Internal cache is rather small, due to limited Add external L2 cache using faster 486
space on chip technology than main memory
Contention occurs when both the Instruction
Prefetcher and the Execution Unit simultaneously Create separate data and Pentium
require access to the cache. In that case, the instruction caches.
Prefetcher is stalled while the Execution Unit’s data
access takes place.
Create separate back-side bus that Pentium Pro
runs at higher speed than the main
Increased processor speed results in external (front-side) external bus. The BSB
bus becoming a bottleneck for L2 cache is dedicated to the L2 cache.
access.
Move L2 cache on to the Pentium II
processor chip.
Some applications deal with massive Add external L3 cache. Pentium III
databases and must have rapid access to large
amounts of data. The on-chip caches are too
Move L3 cache on-chip. Pentium 4 27
small.
Memory hierarchy –Design
 constraints
How much?
 open ended. If the capacity is there, applications will
likely be developed to use it
 How fast?
 To achieve greatest performance, the memory must
be able to keep up with the processor.
 As the processor is executing instructions, it should not
have to pause waiting for instructions or operands.
 How expensive?
 the cost of memory must be reasonable in
relationship to other components

28
Memory Hierarchy
 Faster access time,
greater cost per bit
 Greater capacity, smaller
cost per bit
 Greater capacity, slower
access time

29
Memory Hierarchy

30
Access Time

31
Virtual RAM
 Computer is out of actual
RAM
 File that emulates RAM
 Computer swaps data to
virtual RAM
 Least recently used data is
moved
 Techniques
 Paging
 Segmentation or
 Combination of both
32
The Bus
 Electronic pathway between components
 Two main buses: Internal (or system) bus and
External (or expansion) bus.
 Internal or System bus
 resides on the motherboard and connects the CPU to
other devices that reside on the motherboard
 has three parts: the data bus, address bus and control bus
 External or Expansion bus
 connects external devices, such as the keyboard, mouse,
modem, printer and so on, to the CPU.
 Cables from disk drives and other internal devices are
plugged into the bus.
33
Bus Width and Speed
 Bus width is measured in bits
 Speed is tied to the clock

34
Bus Interconnection Scheme
 A system bus consists of a
 A data bus,
 a memory address bus and
 a control bus.

35
Data Bus
 is a computer subsystem that allows for the transferring of
data
 from one component to another on a motherboard or system
board, or
 between two computers.
 This can include transferring data to and from the memory,
or from CPU to other components
 Each one is designed to handle so many bits of data at a
time.
 The amount of data a data bus can handle is called
bandwidth
 A typical data bus is 32-bits wide
 Newer computers are making data buses that can handle
64-bit
36
Address Bus
 is a series of lines connecting two or more
devices that is used to specify a physical address.
 When a processor needs to read or write to a
memory location,
 it specifies that memory location on the address bus
(the value to be read or written is sent on the data bus).
 The width of the address bus determines the
amount of memory a system can address.
 For example, a system with a 32-bit address bus can
address 232 (4,294,967,296) memory locations.
 If each memory address holds one byte, the
addressable memory space is 4 GB.
37
Control Bus
 A control bus is (part of) a computer bus, used
by CPUs for communicating with other devices
within the computer.
 While the address bus carries the information on
which device the CPU is communicating with and
 data bus carries the actual data being processed,
 Control bus carries commands from the CPU
and returns status signals from the devices
 e.g. if the data is being read or written to the device
the appropriate line (read or write) will be active

38
Summary I
 Components Affecting Speed
 Achieving Increased Processor Speed
 Registers
 Functions and Size
 User accessible and other types of Registers
 System or Internal Clock
 Clock speed and clock rate
 Underclocking
 Overclocking

39
Summary II
 Cache memory
 Function operation
 Type: Instruction, data and TLB
 Multi Level Cache, L1, L2 and L3
 Intel Cache Evolution
 Memory Hierarchy
 Bus
 Bus width and speed
 Bus Interconnection Scheme
 Data, address and control bus
40
Recommended Websites
 https://en.wikipedia.org/wiki/Processor_register
 https://en.wikipedia.org/wiki/CPU_cache
 https://en.wikipedia.org/wiki/Clock_rate
 https://en.wikipedia.org/wiki/Bus_(computing)

41

You might also like