Topic 12-Computer Evolution and Performance Issues
Topic 12-Computer Evolution and Performance Issues
Topic 12-Computer Evolution and Performance Issues
CSC1104
+ COMPUTER ARCHITECTURE
The structure and behaviour of the various
functional modules of the computer and how
they interact to provide the processing needs
of the user.
Architectural attributes include:
Instruction set of the computer
Number of bits used to represent
various data types
I/O mechanisms
Addressing Techniques
etc.
+ Computer Organisation
The way the hardware components are
connected together to form a computer
system.
Architectural
Computer
attributes
Architecture
include:
Organizational
Computer
• Hardware details transparent to attributes
Organization
the programmer, control include:
signals, interfaces between the
computer and peripherals, • The operational units and
memory technology used
their interconnections that
realize the architectural
specifications.
CSC1104
+
IBM System
370 Architecture
Many computer manufacturers offer a family of computer models,
all with the same architecture but with differences in organization.
CSC1104
+
Function
There are four basic functions that a computer can perform:
Data processing
Data may take a wide variety of forms and the range of processing
requirements is broad
Data storage
Short-term
Long-term
Data movement
The computer’s operating environment consists of devices that serve as either sources or
destinations of data
Input-output (I/O) - when data are received from or delivered to a device
(peripheral) that is directly connected to the computer
Data communications – when data are moved over longer distances, to or from
a remote device.
Control
A control unit manages the computer’s resources and coordinates the
performance of its functional parts in response to instructions.
CSC1104
COMPUTER
I/O Main
memory
System
Bus
CPU
CPU
Registers ALU
Structure Internal
Bus
Control
Unit
CONTROL
UNIT
Sequencing
Logic
Control Unit
Registers and
Decoders
Control
Memory
CSC1104
+
CPU – controls the operation of
the computer and performs its
There are four data processing functions
main structural
components Main Memory – stores data
of the computer: I/O – moves data between the
computer and its external
environment
System Interconnection –
some mechanism that provides
for communication among CPU,
main memory, and I/O
CSC1104
+ Control Unit
CPU
Controls the operation of the CPU
and hence the computer
Major structural
Arithmetic and Logic Unit (ALU)
components:
Performs the computer’s data
processing function
Registers
Provide storage internal to the CPU
CPU Interconnection
Some mechanism that provides for
communication among the control
unit, ALU, and registers
CSC1104
+
Multicore Computer Structure
Contemporary computers generally have multiple processors.
When these processors all reside on a single chip, the term multicore
computer is used, and each processing unit is called a core .
Core
An individual processing unit on a processor chip.
May be equivalent in functionality to a CPU on a single-CPU system.
Specialized processing units are also referred to as cores.
Processor
A physical piece of silicon containing one or more cores.
Is the computer component that interprets and executes instructions.
Referred to as a multicore processor if it contains multiple cores.
CSC1104
+
Cache Memory
Multiple layers of memory between the processor and main
memory.
CSC1104
MOTHERBOARD
Main memory chips
Processor
I/O chips chip
PROCESSOR CHIP
L3 cache L3 cache
CORE
Arithmetic
Instruction and logic Load/
logic unit (ALU) store logic
L2 instruction L2 data
cache cache
CSC1104
+
Figure 1.3
Motherboard with Two Intel Quad-Core Xeon Processors
CSC1104
+
History of Computers
First Generation: Vacuum Tubes
and memory.
IAS computer
Most famous first generational computer.
Fundamental design approach first implemented in the IAS computer
was the stored program concept .
Is a Prototype of all subsequent general-purpose computers.
CSC1104
Central processing unit (CPU)
AC MQ
Input-
Arithmetic-logic output
circuits
equipment
(I, O)
MBR
Instructions
and data
Instructions
and data
M(0)
M(1)
M(2)
M(3) PC IBR
M(4) AC: Accumulator register
MQ: multiply-quotient register
MBR: memory buffer register
IBR: instruction buffer register
MAR IR PC: program counter
MAR: memory address register
Main
IR: insruction register
memory
(M)
Control
Control
circuits
signals
M(4092)
M(4093)
M(4095)
Program control unit (CC)
Addresses
Instruction register (IR) • Contains the 8-bit opcode instruction being executed
Accumulator (AC) and • Employed to temporarily hold operands and results of ALU
multiplier quotient (MQ) operations
CSC1104
0 1 39
0 8 20 28 39
opcode (8 bits) address (12 bits) opcode (8 bits) address (12 bits)
CSC1104
+ IAS operation
The IAS operates by repetitively performing an instruction
cycle, as shown in Figure 1.8.
Each instruction cycle consists of two sub-cycles.
During the fetch cycle, the opcode of the next instruction is
loaded into the IR and the address portion is loaded into the
MAR.
This instruction may be taken from the IBR, or it can be
obtained from memory by loading a word into the MBR, and
then down to the IBR, IR, and MAR.
Once the opcode is in the IR, the execute cycle is performed.
Control circuitry interprets the opcode and executes the
instruction by sending out the appropriate control signals to
cause data to be moved or an operation to be performed by the
ALU.
CSC1104
Start
Yes Is next No
instruction MAR PC
No memory in IBR?
Fetch access
cycle required
MBR M(MAR)
Left
No Yes IBR MBR (20:39)
IR IBR (0:7) IR MBR (20:27) instruction
IR MBR (0:7)
MAR IBR (8:19) MAR MBR (28:39) required?
MAR MBR (8:19)
PC PC + 1
Decode instruction in IR
Execution Yes
Is AC > 0?
cycle
AC MBR AC AC + MBR
Table 1.1
branch 00001110 JUMP M(X,20:39) Take next instruction from right half of M(X)
00001111 JUMP+ M(X,0:19) If number in the accumulator is nonnegative,
take next instruction from left half of M(X)
0 JU If number in the
0 MP accumulator is nonnegative,
Conditional branch 0 + take next instruction from
The IAS
1 M(X right half of M(X)
0 ,20:
0 39)
Instruction Set
0
0
00000101 ADD M(X) Add M(X) to AC; put the result in AC
00000111 ADD |M(X)| Add |M(X)| to AC; put the result in AC
00000110 SUB M(X) Subtract M(X) from AC; put the result in AC
00001000 SUB |M(X)| Subtract |M(X)| from AC; put the remainder
in AC
00001011 MUL M(X) Multiply M(X) by MQ; put most significant
bits of result in AC, put least significant bits
Arithmetic
in MQ
00001100 DIV M(X) Divide AC by M(X); put the quotient in MQ
and the remainder in AC
00010100 LSH Multiply accumulator by 2; i.e., shift left one
bit position
00010101 RSH Divide accumulator by 2; i.e., shift right one
position
00010010 STOR M(X,8:19) Replace left address field at M(X) by 12
rightmost bits of AC
Address modify
00010011 STOR M(X,28:39) Replace right address field at M(X) by 12
rightmost bits of AC (Table can be found on page 17 in the textbook.)
CSC1104
+
History of Computers
Second Generation: Transistors
Smaller
Cheaper
CSC1104
+
Second Generation Computers
Introduced:
More complex arithmetic and logic units and
control units
The use of high-level programming languages
Provision of system software which provided the
ability to:
Load programs
Move data to peripherals
Libraries perform common computations.
CSC1104
+
Table 1.2
Computer Generations
CSC1104
History of Computers
Third Generation: Integrated Circuits
Early second-generation computers contained about 10,000 transistors.
The two most important members of the third generation were the IBM
System/360 and the DEC PDP-8.
CSC1104
+Integrated circuits:
Thebasic elements of a digital computer, must perform storage,
movement, processing, and control functions.
Only two fundamental types of components are required: gates
and memory cells.
A gate is a device that implements a simple Boolean or logical
function, such as IF A AND B ARE TRUE THEN C IS TRUE
(AND gate).
Suchdevices are called gates because they control data flow in
much the same way that canal gates control the flow of water.
The memory cell is a device that can store one bit of data; that is,
the device can be in one of two stable states at any time.
By interconnecting large numbers of these fundamental devices,
we can construct a computer.
CSC1104
Boolean Binary
Input logic Output Input storage Output
function cell
Read
Activate Write
signal
CSC1104
+
Integrated For example, a gate will have one
or two data inputs plus a control
signal input that activates the gate.
Circuits When the control signal is ON, the
gate performs its function on the
Data storage – provided by data inputs and produces a data
memory cells. output.
CSC1104
Wafer
Chip
Gate
Packaged
chip
CSC1104
t
ui
g
ed of
rc
or in
ga w
d
st rk
ci
ul l a
at n
te
gr tio
si o
’s
an w
om e
te n
r
tr irst
in ve
p r oo
In
M
F
100 bn
10 bn
1 bn
100 m
10 m
100,000
10.000
1,000
100
10
1
1947 50 55 60 65 70 75 80 85 90 95 2000 05 11
CSC1104
Moore’s Law
1965; Gordon Moore – co-founder of Intel
CSC1104
+
IBM System/360
Announced in 1964 was the system/360, a new family of
computer products.
CSC1104
+ Family Characteristics
Similar or
Similar or
identical
identical
operating
instruction set
system
Increasing
Increasing
number of I/O
speed
ports
Increasing
Increasing cost
memory size
CSC1104
Console Main I/O I/O
CPU
controller memory module module
Omnibus
CSC1104
+
Later Generations
Beyond the third generation there is less general agreement on
defining generations of computers.
Generations
VLSI
Very Large
Scale
Integration
ULSI
Semiconductor Memory Ultra Large
Microprocessors Scale
Integration
CSC1104
Semiconductor Memory
In 1970 Fairchild produced the first relatively capacious semiconductor memory
In 1974 the price per bit of semiconductor memory dropped below the price per bit
of core memory
There has been a continuing and rapid decline in Developments in memory and processor
memory cost accompanied by a corresponding technologies changed the nature of computers in
increase in physical memory density less than a decade
Each generation has provided four times the storage density of the previous generation, accompanied
by declining cost per bit and declining access time
CSC1104
+
Microprocessors
The density of elements on processor chips continued to rise
More and more elements were placed on each chip so that fewer
and fewer chips were needed to construct a single computer
processor
CSC1104
Highlights of the Evolution of the
Intel Product Line:
8080 8086 80286 80386 80486
• World’s first • A more • Extension of the • Intel’s first 32- • Introduced the
general- powerful 16-bit 8086 enabling bit machine use of much
purpose machine addressing a • First Intel more
microprocessor • Has an 16-MB memory processor to sophisticated
• 8-bit machine, instruction instead of just support and powerful
8-bit data path cache, or 1MB multitasking cache
to memory queue, that technology and
• Was used in the prefetches a sophisticated
first personal few instructions instruction
computer before they are pipelining
(Altair) executed • Also offered a
• The first built-in math
appearance of coprocessor
the x86
architecture
• The 8088 was a
variant of this
processor and
used in IBM’s
first personal
computer
(securing the
success of Intel
CSC1104
Highlights of the Evolution of the
Intel Product Line:
Pentium
• Intel introduced the use of superscalar techniques, which allow multiple instructions to execute in parallel
Pentium Pro
• Continued the move into superscalar organization with aggressive use of register renaming, branch
prediction, data flow analysis, and speculative execution
Pentium II
• Incorporated Intel MMX technology, which is designed specifically to process video, audio, and graphics
data efficiently
Pentium III
•Incorporated additional floating-point instructions
•Streaming SIMD Extensions (SSE)
Pentium 4
• Includes additional floating-point and other enhancements for multimedia
Core
• First Intel x86 micro-core
Core 2
• Extends the Core architecture to 64 bits
• Core 2 Quad provides four cores on a single chip
• More recent Core offerings have up to 10 cores per chip
• An important addition to the architecture was the Advanced Vector Extensions instruction set
CSC1104
+
Embedded Systems
The use of electronics and software within a product as
opposed to a general-purpose computer, such as laptop or
desktop system.
CSC1104
Custom
logic
Processor Memory
Human Diagnostic
interface port
A/D D/A
conversion Conversion
Actuators/
Sensors
indicators
CSC1104
+ The Internet of Things (IoT)
Term that refers to the expanding interconnection of smart devices, ranging
from appliances to tiny sensors.
It is the fourth generation that is usually thought of as the IoT and it is marked
by the use of billions of embedded devices.
CSC1104
+
Embedded Application Processors
Operating versus
Systems Dedicated Processors
The individual or company only needs to pay for the storage capacity and
services they need.
Cloud Storage
Subset of cloud computing
The applications are accessible from various client devices through a simple
interface such as a Web browser.
Examples of services at this level are Gmail, Google’s e-mail service, and
Salesforce.com, which help firms keep track of their customers.
CSC1104
CSC1104
+ Designing for Performance
The cost of computer systems continues to drop dramatically, while the performance
and capacity of those systems continue to rise equally dramatically
Today’s laptops have the computing power of an IBM mainframe from 10 or 15 years
ago.
Graphics display
Wi-Fi modem
(max speed)
Hard disk
Optical disc
Laser printer
Scanner
Mouse
Keyboard
101 102 103 104 105 106 107 108 109 1010 1011
Data Rate (bps)
106
Transistors (Thousands)
105 Frequency (MHz)
Power (W)
104 Cores
103
102
+
10
0.1
1970 1975 1980 1985 1990 1995 2000 2005 2010
Some instructions may take only a few cycles, while others require
dozens.
an
co di alog
nv git to
er al
sio
n
The machine cycle time is the time it takes to fetch and execute one
instruction.
Instructions:
CSC1104
+ Summary
Basic Concepts and
Computer Evolution
Chapter 1
Organization and architecture
Cloud computing
Structure and function Basic concepts
Cloud services
CSC1104
+
References
WilliamStallings, Pearson Education. Computer
Organization and Architecture (Designing for
Performance), 10th edition, (2016)
Chapter 1 (Sections 1.1, 1.2, 1.3, 1.4, 1.5, and 1.7)
Chapter 2 ( sections 2.1, 2.2 and 2.4)
CSC1104
+
References for next topic
William Stallings, Pearson Education. Computer Organization
and Architecture (Designing for Performance), 10th edition,
(2016) – Chapter 3
CSC1104