CEA201 - Chapter 2 - Computer Evolution and Performance
CEA201 - Chapter 2 - Computer Evolution and Performance
Dr. Dung T. Le
https://sites.google.com/site/dunglthe
January 2025
Outlines
• Number Systems
• A Brief History of Computers
• Designing for Performance
• Multicore, MICs, and GPGPUs
• Performance Assessment
© 2024 Dung T. Le 2
Number Systems
• A number system (or numeral system) defines how a number
can be represented using distinct symbols
– Positional number systems
– Nonpositional number systems
Base-10 Base-2
Definition (Decimal (Binary Base-16 (Hexadecimal system)
system) system)
Base number 10 2 16
Set of digits { 0, 1, 2, …, 9 } { 0. 1 } { 0, 1, 2, …, 9, A, B, C, D, E, F }
Basic operations +, -. *, / +, -. *, / +, -. *, /
© 2024 Dung T. Le 3
Binary Representation
• The binary number
01011000 00010101 00101110 11100111
Most significant bit Least significant bit
represents the quantity
0 x 231 + 1 x 230 + 0 x 229 + … + 1 x 20
• Hence, a 32-bit word can represent 232 numbers between 0
and 232 – 1.
This is known as the unsigned representation as we’re assum-
ming that numbers are always positive.
© 2024 Dung T. Le 4
Example 2.1
• What are the decimal values of the following binary numbers?
a) 1011two
b) 1110two
© 2024 Dung T. Le 5
Example 2.1
• What are the decimal values of the following binary numbers?
a) 1011two
b) 1110two
© 2024 Dung T. Le 6
Integers and Reals
• Integer: a integral number with no fractional part
N = dK-1 bK-1 + dK-1 bK-1 + …+ d2 b2 + d1 b1 + d0 b0
• The place values for the integer + 224 in the decimal system
© 2024 Dung T. Le 7
Integers and Reals
• Real: a number with a fractional part
R = dK-1 bK-1 + …+ d1 b1 + d0 b0 + d-1 b-1 +…+ d-L b-L
© 2024 Dung T. Le 8
Example 2.2
• Show that the number (11001)two in binary (base 2) is the
same as 25 in decimal (base 10)
© 2024 Dung T. Le 9
Example 2.2
• Show that the number (11001)two in binary (base 2) is the
same as 25 in decimal (base 10)
© 2024 Dung T. Le 10
Example 2.3
• Show that the number (101.11)two in binary (base 2) is equal
to the number 5.75 in decimal (base 10)
© 2024 Dung T. Le 11
Example 2.3
• Show that the number (101.11)two in binary (base 2) is equal
to the number 5.75 in decimal (base 10).
© 2024 Dung T. Le 12
Fixed-point Representation
• An integer can be though of as a number in which the position of
the decimal point is fixed
• An integer is normally stored in memory using fixed-point
representation
© 2024 Dung T. Le 13
Floating Point
• Floating-point representation allows the decimal point to float
• Either decimal or binary, a number is made up of three
sections
– First section: sign, either positive or negative
– Second section: how many places the decimal point should be shifted
to the right or left to form the actual number
– Third section: fixed-point number
© 2024 Dung T. Le 14
Example 2.4
• Shows the decimal number 7 425 000 000 000 000 000 000.00
in scientific notation (floating-point representation)
© 2024 Dung T. Le 15
Example 2.4
• Shows the decimal number 7 425 000 000 000 000 000 000.00
in scientific notation (floating-point representation)
→ The three sections are the sign (+), the shifter (21), and
the fixed-point part (7.425)
© 2024 Dung T. Le 16
Decimal-to-Any Base Conversion
• Converting the integral part
© 2024 Dung T. Le 17
Decimal-to-Any Base Conversion
• Converting the fractional part
© 2024 Dung T. Le 18
Example 2.5
• Convert the decimal number 35 and 0.625 to binary numbers
© 2024 Dung T. Le 19
Example 2.5
• Convert the decimal number 35 and 0.625 to binary numbers
35 = (100011)two
0.625 = (0.101)two
© 2024 Dung T. Le 20
Negative Numbers
• 32 bits can only represent 232 numbers – if we wish to also re-
present negative numbers, we can represent 231 positive num
bers (include zero) and 231 negative numbers.
© 2024 Dung T. Le 21
Negative Numbers
1000 0000 0000 0000 0000 0000 0000 0000two = -231
1000 0000 0000 0000 0000 0000 0000 0001two = -231 +1
1000 0000 0000 0000 0000 0000 0000 0010two = -231 + 2
…
1111 1111 1111 1111 1111 1111 1111 1110two = -2
1111 1111 1111 1111 1111 1111 1111 1111two = -1
The sign bit is multiplied by -231, and the rest of the bits are
then multiplied by positive versions of their respective base
values.
© 2024 Dung T. Le 22
One’s Complement
• One’s complement: reverses (flips) each bit, e.g., a 0-bit is
change to 1-bit, a 1-bit is changed to 0-bit.
• Example: The one’s complement of the integer 00110110
© 2024 Dung T. Le 23
Two’s Complement
• The two’s complement is done in two steps
– Step 1: Copy bits from the right until a 1 is copied
– Step 2: Flip the rest of the bit
© 2024 Dung T. Le 24
Decimal-to-Two’s Complement
• To store an integer in two’s complement representation,
follow the step below:
• Step 1: the absolute value of the integer is changed to an n-bit
binary
• Step 2: If the integer is positive or zero, store as it is. If it is
negative, take the two’s complement of the integer and then
store it
© 2024 Dung T. Le 25
Example 2.6
• Store integer 28 and -28 in a 8-bit memory location using
two’s complement representation
• 28 → two’s complement
• − 28 → two’s complement
© 2024 Dung T. Le 26
Two’s Complement
0000 0000 0000 0000 0000 0000 0000 0000two = 0ten
0000 0000 0000 0000 0000 0000 0000 0001two = 1ten
…
0111 1111 1111 1111 1111 1111 1111 1111two = 231 – 1
© 2024 Dung T. Le 27
Two’s Complement
• Why is this representation favorable?
– Consider the sum of 1 and -2 …. we get -1
0000 0000 0000 0000 0000 0000 0000 0001two = 1ten
1111 1111 1111 1111 1111 1111 1111 1110two = -2ten
© 2024 Dung T. Le 28
Example 2.7
• What is the decimal value of this 32-bit two’s complement
number?
1111 1111 1111 1111 1111 1111 1111 1100two
© 2024 Dung T. Le 29
Example 2.7
• What is the decimal value of this 32-bit two’s complement
number?
1111 1111 1111 1111 1111 1111 1111 1100two
© 2024 Dung T. Le 30
History of Computers
© 2024 Dung T. Le 31
First Generation: Vacuum Tubes
• Basic technology: Vacuum tubes
• Building block: Composition and operating of vacuum tube
(https://en.wikipedia.org/wiki/Vacuum_tube)
• Typical computers:
– ENIAC (Electronic Numerical Integrator And Computer)
– EDVAC (Electronic Discrete Variable Computer), John Von Neumann
– IAS computer (Princeton Institute for Advanced Studies)
– Commercial Computers: UNIVAC (Universal Automatic Computer)
– IBM Computers ( International Business Machines)
© 2024 Dung T. Le 32
First Generation: ENIAC Computer
• Electronic Numerical Integrator And Computer
• Its first task was to perform a series of calculations that were used to help
determine the feasibility of the hydrogen bomb
© 2024 Dung T. Le 33
ENIC Characteristics
• Weighed 30 tons
• Occupied 1500 square feet of floor space
• Contained more than 18,000 vacuum
tubes
• 140 kW power consumption
• Capable of 5000 additions per second
• Decimal rather than binary machine
• Memory consisted of 20 accumulators,
each capable of holding a 10 digit number
• Major drawback was the need for manual
programming by setting switch and
plugging/unplugging cables
© 2024 Dung T. Le 34
First Generation: EDVAC
• First publication of the idea was in 1945
• Stored program concept
– Attributed to ENIAC designers, most notably the mathematician John
von Neumann
– Program represented in a form suitable for storing in memory
alongside the data (program = data + instructions)
– IAS computer
– Princeton Institute for Advanced Studies
– Prototype of all subsequent general-purpose computers
– Completed in 1952
© 2024 Dung T. Le 35
Structure of ISA Computer
CA: Cellular Automata
CC: Cellular Constructor
© 2024 Dung T. Le 36
Structure of ISA Computer
• AC: Accumulator
• MQ: Multiplier Quotient
• MBR: Memory Buffer Register
• IBR: Instruction Buffer Register
• PC: Program Counter
• IR: Instruction Register
• MAR: Memory Address Register
© 2024 Dung T. Le 37
IAS Memory Formats
• The memory of the IAS consists of 1000 storage locations (called words) of 40 bits
each
– Both data and instructions are stored there
• Numbers are represented in binary form and each instruction is a binary code
data
instruction
[ IAS Memory Format ] One word contains 2 instructions
© 2024 Dung T. Le 38
IAS Instruction Set
• Unconditional branch:
sequences can be changed by a
branch instruction, which
facilitates repetitive
operations
• Conditional branch: The
branch can be made
dependent on a condition
• Arithmetic: Operations
performed by the ALU
• Address modify: Permits
addresses to be computed in
the ALU and then inserted into
instructions stored in memory
© 2024 Dung T. Le 39
First Generation: UNIVAC
• 1947 – Eckert and Mauchly formed the Eckert-Mauchly Computer
Corporation to manufacture computers commercially
• UNIVAC I (Universal Automatic Computer)
– First successful commercial computer
– Was intended for both scientific and commercial applications
– Commissioned by the US Bureau of Census for 1950 calculations
• The Eckert-Mauchly Computer Corporation became part of the
UNIVAC division of the Sperry-Rand Corporation
• UNIVAC II – delivered in the late 1950’s
– Had greater memory capacity and higher performance
• Backward compatible
© 2024 Dung T. Le 40
Second Generation: Transistors
• Transistor = Transfer – resistor
• Building block: Composition and operating of transistor
– More details: https://en.wikipedia.org/wiki/Transistor
• It’s activity is similar to those in vacuum tube
• Smaller, cheaper
• Dissipates less heat than a vacuum tube
• Is a solid state device made from silicon
• Was invented at Bell Labs in 1947
• It was not until the late 1950’s that fully transistorized computers
were commercially available
• Typical computers: IBM 700/7000 series
© 2024 Dung T. Le 41
IBM 700/7000 Series
• Example of the IBM 700/7000 series
© 2024 Dung T. Le 42
IBM 7094 Configuration
Multiplexer manages centrally some devices
Mag: magnetic
Drum: magnetic drum for storing data
© 2024 Dung T. Le 43
Third Generation: Integrated Circuit (IC)
© 2024 Dung T. Le 44
Integrated Circuits
• The basic elements of a digital computer: data storage,
movement, processing, and control functions
• Data storage: provided by memory cells
• Data processing: provided by gates
• Data movement: the paths among components are used to
move data from memory to memory and from memory
through gates to memory
• Control: the paths among components can carry control
signals
© 2024 Dung T. Le 45
Integrated Circuits
• Two fundamental types of components are required: gates
and memory cells
© 2024 Dung T. Le 46
Wafer, Chip, and Gate
© 2024 Dung T. Le 47
Chip Growth
• The growth in density reflects the famous Moore’s law
© 2024 Dung T. Le 48
Moore’s Law
• In 1965, Gordon Moore, the co-founder of Fairchild Semiconductor and
Intel and former CEO of the latter, noted that “the number of components
per integrated circuit had been doubling every year”
• The pace slowed to a doubling every 18 months in the 1970’s but has
sustained that rate ever since
• Consequences of Moore’s law:
– The cost of computer logic and memory circuitry has fallen at a dramatic rate
– The electrical path length is shortened, increasing operating speed
– Computer becomes smaller and is more convenient to use in a variety of
environments
– Reduction in power and cooling requirements
– Fewer interchip connections
© 2024 Dung T. Le 49
Moore’s Law
© 2024 Dung T. Le 50
Later Generations: LSI, VLSI, ULSI
• Very-large-scale integration (VLSI)
is the process of creating an
integrated circuit (IC) by
combining millions or billions of
MOS transistors onto a single chip
• VLSI began in the 1970s when
MOS integrated circuit (metal
oxide semiconductor) chips were
developed
© 2024 Dung T. Le 51
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 memory cost Developments in memory and processor technologies changed the nature
accompanied by a corresponding increase in physical memory density of computers in 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
© 2024 Dung T. Le 52
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
• 1971 Intel developed 4004
– First chip to contain all of the components of a CPU on a single chip
– Birth of microprocessor
• 1972 Intel developed 8008
– First 8-bit microprocessor
• 1974 Intel developed 8080
– First general purpose microprocessor
– Faster, has a richer instruction set, has a large addressing capability
© 2024 Dung T. Le 53
Evolution of Intel Microprocessors
© 2024 Dung T. Le 54
Evolution of Intel Microprocessors
© 2024 Dung T. Le 55
Designing for Performance
Desktop applications that require the great power of today’s
microprocessor-based systems include
• Image processing
• Speech recognition
• Videoconferencing
• Multimedia authoring
• Voice and video annotation of files
• Simulation modeling
© 2024 Dung T. Le 56
Microprocessor Speed
• Techniques built into contemporary (current) processors include:
Technique Description
Processor moves data or instructions into a conceptual pipe with
Pipelining
all stages of the pipe processing simultaneously
Processor looks ahead in the instruction code fetched from
Branch memory and predicts which branches, or groups of instructions,
prediction are likely to be processed next
© 2024 Dung T. Le 57
Performance Balance
• Adjust the organization
and architecture to
compensate for the Increase the number of
bits that are retrieved at
© 2024 Dung T. Le 58
Typical I/O Device Date Rates
© 2024 Dung T. Le 59
Improvements in Chip Organization and Architecture
© 2024 Dung T. Le 60
Exercises
• 1. What is a stored program computer?
• 2. What are the four main components of any general-
purpose computer?
• 3. At the integrated circuit level, what are the three principal
constituents of a computer system?
• 4. Explain Moore’s law.
• 5. List and explain the key characteristics of a computer family.
• 6. What is the key distinguishing feature of a microprocessor?
© 2024 Dung T. Le 61
Summary
• First generation computers • Multi-core
– Vacuum tubes • MICs
• Second generation computers • GPGPUs
– Transistors
• Performance assessment
• Third generation computers
– Clock speed and
– Integrated circuits
instructions per second
• Performance designs
– Benchmarks
– Microprocessor speed
– Amdahl’s Law
– Performance balance
– Little’s Law
– Chip organization and
architecture
© 2024 Dung T. Le 62