Computer Organization - MIIT, Mandalay - Mouli Sankaran

You might also like

You are on page 1of 41

Computer Organization – MIIT, Mandalay– Mouli Sankaran

Session 2B: Focus


 High Speed Clock signals
◦ Why CPU speed cannot be increased?
◦ Overclocking of CPU
 CPU Vs Memory
◦ Speed comparison
 Evolution of I/O Speeds
 Intel’s Core-i7 Chip layout
 PC Motherboard Architecture
 How Does a Computer Work?
◦ Software Layers
◦ BIOS program and POST
◦ Booting of OS

Computer Organization – MIIT, Mandalay– Mouli Sankaran 2


GHz Clock Signal
Generation

Computer Organization – MIIT, Mandalay– Mouli Sankaran


GHz Clock Generation
 Normally Quartz crystals can only generate clocks in
the range of maximum hundreds of MHz
 To generate GHz frequencies, the clock signals
generated by crystals are multiplied by PLL
 PLL: Phase Locked Loop (electronic circuit with
feedback)
Higher
Frequency
Clock Signal
PLL

Computer Organization – MIIT, Mandalay– Mouli Sankaran 44


Can CPU speed be increased
beyond a few GHz?
 The first One GHz processor was released way back
in year 2000!!!
 What is the maximum clock rate achieved by any
CPU as of now?
◦ As of 2011, the Guinness World Record for the highest
CPU clock rate is an over-clocked, 8.805 GHz
AMD Bulldozer-based on FX-8150 chip.
◦ Since then the speed of CPU has increased only marginally
◦ Whereas, maximum clock speed of CPU on any commercial
desktops have not increased beyond 4 GHz.
AMD: Advanced Micro Devices, Inc., is an American multinational
semiconductor company based in Sunnyvale, California. and only
significant rival to Intel in the market for x86-based microprocessors
Computer Organization – MIIT, Mandalay– Mouli Sankaran 5
Why is there a CPU speed limit?
 The reason is that it is not possible to design one!!!
◦ With the increase in the component density in a chip area, due
to higher technology nodes (~10nm, and below)
◦ When the clock rates are high
◦ The switching speed of transistors generate much more heat.
◦ Beyond some point it is impossible to cool the chip.
◦ 8 GHz chip needs liquid nitrogen for cooling!!!
 So, it is not possible to build ICs which can operate
beyond 4 GHz, because of unmanageable heat it
generates
 Solution: Multicore processors running below 4GHz,
to improve the performance of computing!!!
Computer Organization – MIIT, Mandalay– Mouli Sankaran 6
Overclocking of CPU
 Though the CPUs are designed for a particular clock
frequency, they can be made to run at a slightly higher
clock frequency
◦ Which is called “overclocking” of CPU
 For the CPU to function correctly at the overclocked or
increased clock rate,
◦ The voltage of its operation should also to be increased
 When the operational voltage is increased it generates
more heat which limits the overclocking value as well
 Example: Intel’s Core i7
◦ 3.6 GHz - normal frequency – Voltage (vcore) = 1.2 V
◦ 4 GHz – vcore = 1.28 V Turbo boost is dynamically increasing
the CPU frequency for graphics
Computer Organization – MIIT, Mandalay– Mouli Sankaran 7
CPU Vs Memory

Computer Organization – MIIT, Mandalay– Mouli Sankaran


Speed Comparison: CPU Vs Memory
Digital
Circuits
(CPU)
Operation
Speed of

Year
Note: The graph shows that over the years speed of operation of CPUs have increased
much more than contemporary memory technologies
Computer Organization – MIIT, Mandalay– Mouli Sankaran 9
CPU Vs Memory Speed: Explained
 Speed of Memory technologies have not kept pace
with the speed of operation of CPU’s
 CPUs need data from the memory much faster than
what memory can provide at
◦ This issue is called memory latency
 This creates a bottleneck for the CPUs causing
performance degradation
 Computer organization and architectures have evolved
to reduce the impact of this gap
◦ To continue to make the CPUs to perform at its full speed
 We will study the techniques used in this course
◦ Having Cache memories between the CPU and memory
Computer Organization – MIIT, Mandalay– Mouli Sankaran 10
Evolution of I/O Speeds

bps: bits per second Note the difference between bps is Bps
1 kb/s = 1000 bits per second
1 KB/s = 1024 bytes per second
Computer Organization – MIIT, Mandalay– Mouli Sankaran 11
Core –i7 Chip
Layout

Computer Organization – MIIT, Mandalay– Mouli Sankaran


Intel’s Core i7 Processor

Top Bottom Bottom of the Chip

 The number of signals (pads/pins) coming out from the


chip are 1366
 The chip is mounted on a socket on the motherboard,
the socket is soldered to the board.

Computer Organization – MIIT, Mandalay– Mouli Sankaran


CPU with a Heatsink

 Typical heat generated by high performance chips are in the


range of ~100+ Watts (Intel Core i7-5930K at 3.3GHz – 140W)
 They need a good cooling, with a heatsink (made of aluminum or
copper) supported by fans
Computer Organization – MIIT, Mandalay– Mouli Sankaran
PC Motherboard
Architecture

Computer Organization – MIIT, Mandalay– Mouli Sankaran


Motherboard: Intel Hub Architecture
 North Bridge: Connects CPU with
memory (chip-set)
 FSB: Front Side Bus
 RAM: On-board memory
 PCI-E: Peripheral Component
Interconnect – Express
◦ High speed serial computer expansion
bus
◦ An I/O bus to connect external high
speed I/O devices
◦ Graphics cards connected to PCI-E
 South Bridge: It is used for
connecting low speed I/O devices
◦ USB
◦ ISA/IDE: To connect hard disks
◦ Legacy: Serial ports
◦ PCI: Peripheral Controller Interface –
low speed parallel bus of I/O
Computer Organization – MIIT, Mandalay– Mouli Sankaran 1616
Personal Computer-Motherboard

Hard disk -

Computer Organization – MIIT, Mandalay– Mouli Sankaran 17


Memory Modules (RAM)

Size
is 2GB

 SO-DIMMs (Small Outline - Dual In-line Memory


Modules): 200 pin
◦ Double Data Rate 2 Synchronous Dynamic Random Access
Memory (DDR2 SDRAM)
 This module gets inserted on to the socket on
motherboard
Computer Organization – MIIT, Mandalay– Mouli Sankaran 18
How Does a Computer Work?

Computer Organization – MIIT, Mandalay– Mouli Sankaran


SW Layers in a Computer

BIOS: Basic Input Output System


Computer Organization – MIIT, Mandalay– Mouli Sankaran
1. Powering on the Computer
 AC power (~230V) given to the
power supply is converted to DC
voltage, required by the computer
components on mother board.
 Once supply voltages signal is
sent to motherboard and CPU by
the power supply
 Circuitry on the motherboard generates a reset signal to the
CPU
 CPU on receiving the RESET signal, clears the registers to
known state and tries to read the code (first opcode) from
the known Reset location (0xF000 0000 or 0x0000 0000)
◦ By setting the Program Counter (PC) with the above address
Computer Organization – MIIT, Mandalay– Mouli Sankaran
2. BIOS-Basic Input/Output System
 CPU starts running the firmware ROM
(BIOS) stored in the ROM
◦ ROM: Read Only Memory (size ~16MB)
 BIOS is supplied by the motherboard
manufacturer
 BIOS firmware is independent of the Firmware is a low level software, having
OS running on the computer access to the hardware components
normally written in C or assembly
 BIOS starts running the Power On Self Tests (POST)
◦ Checking whether various components in the computers are present
and they are functioning properly (CD drive, etc.)
◦ It does the memory test (RAM) and the range of memory available in
the system and initializes devices (display, etc.)
◦ Based on the configuration the booting sequence is decided
 Boot from the CD or from the hard disk or from the network
Computer Organization – MIIT, Mandalay– Mouli Sankaran
3. BIOS Configuration: CMOS Memory
 CMOS (Complementary Metal Oxide
Semiconductor) is a very low power
memory which can hold a small amount of
data, usually 256 bytes
 It maintains the BIOS settings including
the date and time information and what
types of disk drives, etc.
 CMOS memory is powered by a CMOS battery to
maintain its contents even when the computer is
turned off – a dedicated battery for CMOS memory
 This battery also provides supply to a Real-Time Clock (RTC)
circuitry which runs even when the computer is off, to maintain
the time of the day

Computer Organization – MIIT, Mandalay– Mouli Sankaran


4. Bootloader of the OS
 Based on the BIOS configuration the source of the OS is
located by the BIOS program (hard disk or CD ROM , etc.)
 Once the Boot sector is accessed the bootloader program of
the OS is run
 The bootloader program brings the Operating Systems
image (OS kernel code and initialized data, etc.) to the RAM
memory location dedicated for the OS image to reside
 Once the OS is brought into the memory (RAM) the control
transfers to the OS which takes control of the system from
here
Note: Currently UEFI (Unified Extensible Firmware Interface) is used by the computers,
which is an advanced BIOS, having features like cryptography or remote diagnostics and
computer repair, even when there is no operating system installed

Computer Organization – MIIT, Mandalay– Mouli Sankaran


Session 2B: Summary
 High Speed Clock signals
 CPU Vs Memory
◦ Speed comparison
◦ Why CPU speed cannot be increased?
◦ Overclocking of CPU
 Evolution of I/O Speeds
 Intel’s Core-i7 Chip layout
 PC Motherboard Architecture
 How Does a Computer Work?
◦ Software Layers
◦ BIOS program and POST
◦ Booting of OS

Computer Organization – MIIT, Mandalay– Mouli Sankaran 25


Session 2B: Focus - Backup
 CPU Vs Memory
◦ Speed comparison
◦ Why CPU speed cannot be increased?
 Performance Assessment
◦ Benchmarks
◦ MIPS and FLOPS
◦ Clock Speed and Instruction per Second (CPI)
◦ MIPS in terms of CPI

Computer Organization – MIIT, Mandalay– Mouli Sankaran 26


Performance Assessment
of
Processors

Computer Organization – MIIT, Mandalay– Mouli Sankaran


Benchmarking of Processors
 What is Benchmark?
◦ Evaluate (something) by comparison with a standard.
 What is Benchmarking of processors?
◦ In computing, a benchmark is the act of running a computer
program, a set of programs, or other operations, in order to
assess the relative performance of a object (processor),
normally by running a number of standard tests and
comparing the results against other competitive products.
 Benchmark programs are standard set of programs
which are run on processors to study how fast they are
completed under given operating conditions:
◦ Clock frequency, OS, memory configurations, etc.

Computer Organization – MIIT, Mandalay– Mouli Sankaran 28


Benchmarking of Computing Systems
 What can be benchmarked?
◦ Integer performance - MIPS –Million Instruction Per
Seconds)
◦ Floating point performance – FLOPS (Floating Point
Operations Per Seconds)
◦ Graphics or 3D gaming – Rendering speed, responsiveness
◦ Hard disk performance (access speed, rate, latency, etc.)
 Some Benchmark tools
◦ Cinebench
◦ 3DMark
◦ SPECviewperf

Computer Organization – MIIT, Mandalay– Mouli Sankaran 29


Need for Performance Evaluation
 Processors or computing systems need to be evaluated
to check if it can meet the needs of a particular
application requirements, in terms of
◦ Raw Speed of operations (how fast an algorithm is run)
◦ Cost
◦ Security aspects (protection against virus attack, etc.)
◦ Reliability (MTBF: Mean Time Between Failure)
◦ Power consumption (battery life, charging time, etc.)
 Choosing the correct configuration for the application

Computer Organization – MIIT, Mandalay– Mouli Sankaran 30


Processor Speed
 Processor speed is one of the aspects of analyzing the
performance of a computing system
 System 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 (synchronous system)
 At the most fundamental level, the speed of a processor
is dictated by
◦ The pulse frequency produced by the clock, measured in
cycles per second, or Hertz (Hz).

Computer Organization – MIIT, Mandalay– Mouli Sankaran 31


Clock Cycle
 For example, a 1-GHz processor receives 1 billion
pulses per second.
 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.
 The time between pulses is the cycle time
◦ For 1 GHz Clock
◦ Clock speed or Clock rate or clock frequency (f) : 1 * 109 Hz
◦ Cycle time (τ) = 1/f = 1 nano second

Computer Organization – MIIT, Mandalay– Mouli Sankaran 32


Instruction Execution Rate
 Let us define the instruction count, Ic, for a program
as the number of machine instructions executed for
that program until it runs to completion or for some
defined time interval
◦ Ic is the total number of assembly instructions to be executed
fully to run the program to completion
◦ Note that it is not a high level language instructions, it refers
only to the assembly instructions
 After a higher level language program is converted into
assembly by compiling it
 The reason assembly program instructions are
considered for evaluation is that
◦ Because the processor is executing finally the assembly
instructions and not any high level language instructions
Computer Organization – MIIT, Mandalay– Mouli Sankaran 33
Ic : The Instruction Count
 Ic is the total number of instructions which are
actually executed and
◦ Not the number of instructions in the object code of the
program
 For example, if the code has the following control path:
◦ CMP R1, R2
◦ JZ ZERO ; if Z flag is set, control goes to ZERO
◦ ADD R3, R2, R1 ; These three instructions are
◦ MUL R4, R5, R6 ; not executed
◦ JMP HERE; not executed
◦ ZERO: MOV R3, #0 ; This is executed
◦ HERE: ADD R9, R3, R4
◦ Ic only includes the actual instructions executed based on the
condition during the execution
Computer Organization – MIIT, Mandalay– Mouli Sankaran 34
CPI: Cycles Per Instruction
 An important parameter is the Average Cycles Per
Instruction (CPI) for a program
◦ Since number of cycles needed to execute an instruction is not
the same for all instructions in a processor CPI can be defined
as follows:

 Where Ii refers to the number instructions of each type


of instruction, being executed.
◦ Assuming n type of instructions are being executed
 Total time T taken to execute the program is
 T = (Ic * CPI * τ ) Seconds
Computer Organization – MIIT, Mandalay– Mouli Sankaran 35
MIPS (Million Instructions Per Second)
 A common measure of performance for a processor is
the rate at which instructions are executed, expressed
as millions of instructions per second (MIPS),
Referred to as the MIPS rate.

Computer Organization – MIIT, Mandalay– Mouli Sankaran 36


MIPS … in terms of CPI
 We can express the MIPS rate in terms of the clock rate
and CPI as follows:
◦ To find how many million instructions were executed in a second
(MIPS), let us do the following steps
◦ Total execution time of the program (T) = (Ic * CPI * τ ) secs
◦ Total no. of instructions executed in time T is Ic
◦ Then, no. of instructions executed in one second would be
◦ = Ic / T = Ic / (Ic * CPI * τ) = 1/ (CPI * τ) = f / CPI
◦ Then MIPS = f / (CPI * 106 )

Computer Organization – MIIT, Mandalay– Mouli Sankaran 37


An Example: Problem
 Consider the execution of a program which results in the
execution of 2 Million instructions on a 400-MHz
processor
 The program consists of three major types of
instructions.
◦ The instruction mix and the CPI for each instruction type are
given below based on the result of a program trace

22%

Computer Organization – MIIT, Mandalay– Mouli Sankaran 38


An Example: Solution
 Program has 2 Million instructions (Ic), which runs on a
400-MHz (f) processor

22%

 Total CPI = (1 * 0.6) * (2 * 0.18) * (4 * 0.22) = 1.84


 We know that

 MIPS = (400 * 106 )/ (1.84 * 106 ) = 217


Computer Organization – MIIT, Mandalay– Mouli Sankaran 39
Session 2B: Summary
 CPU Vs Memory
◦ Speed comparison
◦ Why CPU speed cannot be increased?
 Performance Assessment
◦ Benchmarks
◦ MIPS and FLOPS
◦ Clock Speed and Instruction per Second (CPI)
◦ MIPS in terms of CPI

Computer Organization – MIIT, Mandalay– Mouli Sankaran 40


References
Ref 1 – Get it issued from the library Ref 2

Computer Organization – MIIT, Mandalay– Mouli Sankaran 41

You might also like