University of Dar es Salaam
CS 151: Computer Organization
and Architecture I
Module 1: Overview of computer
evolution
1
Topic- Discussions
• What is a Computer and its functions?
2
Topic- Discussions
• Computer Architecture vs. Computer Organization?
3
Topic- Discussions
• Computer Evolution and Performance
4
Topic- Discussions
• Structure of Von Neumann machine
5
Topic- Discussions
• Why Learning Computer Architecture?
6
Topic- Discussions
• What are the effect of computer technology and
architecture evolution?
7
What is a Computer?
8
Definitions
Computer is an automatic, digital and electronic machine
that handles information.
– It accepts data
– Processes the data
– Gives the output in the form of data
– Also it stores data, controls the data movement
9
Views of a Computer
Four unique ways:
– User’s View
– Machine/Assembly Language Programmer’s View
– Computer Architect’s View
– Logic Designer's View
10
User’s View
The user sees software, speed, storage capacity, and peripheral
device functionality.
11
Machine/Assembly Language Programmer’s
View
Set of
fundamental Expressed as
instructions a pattern of
the machine 1’s and 0’s
can execute
12
Machine/Assembly Language
Machine Language
It can be directly executed by a computer
Compiler
Assembly language
Is a low-level programming language that requires Assembler
software called an assembler to convert it into machine
code.
High Level language (HLL)
The programming language is a set of instructions, in order to make a
computer understand to perform a specific task or create an
algorithm. Example C, C++, COBOL, Java, Python, Fortran, Ada, and
Pascal, etc.
13
Computer Architect’s View
Architect is concerned with design &
performance
Designs the hardware for best
implementation of the instructions
Uses performance measurement tools, such as
benchmark programs, to see that goals are
met
Meets performance goals at lowest cost
14
Logic Designer's View
Basic organization of the circuitry of
a digital computer.
All digital computers are based on a
two-valued logic system—1/0, on/off,
yes/no.
Computers perform calculations using
components called logic gates,
15
Computer Architecture vs. Computer
Organization
Computer Architecture Computer Organization
• Concerned with the way hardware • Concerned with the structure and behavior
components are connected together to form of a computer system as seen by the user.
a computer system.
• Acts as the interface between hardware and • Deals with the components of a connection
software. in a system.
• Helps us to understand the functionalities of • Tells us how exactly all the units in the
a system. system are arranged and interconnected.
• Deals with high-level design issues. • Deals with low-level design issues.
• Architecture involves Logic (Instruction sets, • Organization involves Physical Components
Addressing modes, Data types, Cache (Circuit design, Adders, Signals, Peripherals)
optimization)
16
17
Example
A chef prepares a certain recipe, then serves it to the customers.
Chef knows how to prepare the food item whereas customer cares
only about quality and taste of the food. In a same way, “chef” can
referred to as computer architecture and “customer” as computer
organization.
18
Computer Evolution and Performance
ENIAC: 1943 - 1946
Defined as an Electronic Numerical Integrator And
Calculator
It was built by J. P. Eckert and John Mauchly at the
Moore School of the University of Pennsylvania
It was for Trajectory tables for weapons, and used until
1955
19
https://en.wikipedia.org/wiki/ENIAC
20
Computer Evolution and Performance
ENIAC - details
The size was three orders of magnitude bigger than the size of
machines built today
Programmed manually by switches
Had 18,000 vacuum tubes, weighing 30 tons
140 kW power consumption
It was slower with 5,000 additions per second
21
Structure of Von Neumann machine
22
Structure of it-
detail
https://en.wikipedia.org/wiki/IAS_machine
23
Generations of Computer -1
1st Generation: 1946-59 vacuum tubes, relays, mercury delay lines
2nd generation: 1959-64 discrete transistors and magnetic cores
3rd generation: 1964-75 small and medium scale integrated circuits
4th generation: 1975-present, single chip microcomputer
Integration scale: components per chip
• Small: 10-100
• Medium: 100-1,000
• Large: 1000-10,000
• Very large: greater than 10,000
24
Generations of Computer-2
Generally computers were improved by improving electronic
equipment used: -
o Vacuum tube - 1946-1957
o Transistor - 1958-1964
o Small scale integration – 1965 (Up to 100 devices on a chip)
o Medium scale integration - to 1971 (100 - 3,000 devices on a chip)
o Large scale integration - 1971-1977 (3,000 - 100,000 devices on a
chip)
o Very large scale integration - 1978 to date (100,000 - 100,000,000
devices on a chip)
o Ultra large scale integration (Over 100,000,000 devices on a chip)
25
Moore’s Law
Moore’s law was created by Goldon Moore – Cofounder of Intel, it
says: -
o Number of transistors on a chip will double every year
o Computing power doubles every 18 months for the same price:
Higher packing density means shorter electrical paths, giving higher
performance
Smaller size gives increased flexibility, reduced power and cooling
requirements
Fewer interconnections increases reliability 26
Moore’s Law
27
Moore’s Law
Task: Using this link, Read Moore’s Law and discuss with
your collegue
https://www.synopsys.com/glossary/what-is-moores-law.html
28
Computer Evolution
29
Why Learning Computer Architecture?
You use it everyday,
Is the fundamental subject in computer science,
You need to understand how the instructions and
operations actually work and interact together, to make
your software better
Will help you design, develop, and implement applications
that are better, faster, cheaper, more efficient, and easier
to use
30
Why Learning Computer Architecture?
It gives fundamental and basic understandings about how
computer works.
Helps to write assembly code, real-time code or time
critical systems coding
The concepts of embedded systems, processor design can
be also known.
It gives idea about relative cost of computer operation, the
relation of software and users by their inner workings.
31
Computer System Block
32