Вы находитесь на странице: 1из 29

CSE332 / EEE336

Computer Organization & Architecture


Lecture 1
Introduction and Evolution of Computers

Rashadul Kabir
North South University
Spring 2019
Basic functional units of a computer

2
How a computer functions (at present)
 A list of instructions that performs a certain task is called a
program. A program is stored in memory.
 The processor fetches the instructions that make up the
program from the memory, one after the other, and
performs the desired operations.
 The computer is controlled by the stored program and
external interruption by an operator or by connected I/O
devices.
 A computer can only understand binary data. However, we
use different alphanumeric data to express ourselves.
These alphanumeric data are coded using ASCII (American
Standard Code for Information Interchange) scheme into
binary data to be stored or processed by the computer,
where each character is represented as a 7-bit code.
3
Flow of a Program
 High-level language program
 Level of abstraction closer

to problem domain
 Provides for productivity

and portability

 Assembly language program


 Textual representation of

instructions

 Machine language program


 Binary digits (bits)

 Encoded instructions and

data
4
Below Your Program
 Application software
 Written in high-level language
 System software
 Compiler: translates HLL code to
assembly language code
 Operating System
 Handles input/output
 Manages memory and storage
 Schedules tasks & sharing resources
 Hardware
 Processor, memory, I/O controllers
5
Classes of Computers
 Desktop computers
 General purpose, variety of software
 Subject to cost/performance tradeoff
 Server computers
 Network based
 High capacity, performance, reliability
 Range from small servers to building sized
 Supercomputers
 High-end scientific and engineering calculations
 Highest capability but represent a small fraction of the overall
computer market
 Embedded computers
 Hidden as components of systems
 Stringent power/performance/cost constraints
6
The PostPC Era
 Personal Mobile Device (PMD)
 Battery operated
 Connects to the Internet
 Hundreds of dollars
 Smart phones, tablets, electronic glasses
 Cloud computing
 Warehouse Scale Computers (WSC)
 Software as a Service (SaaS)
 Portion of software run on a PMD and a portion run in the
Cloud
 Examples: Amazon and Google

7
Important Definitions
 Computer Organization is concerned with the way
hardware components operate and the way in which
they are connected together to form a computer system.
 Computer Design is concerned with hardware design of
the computer. It is concerned with the determination of
what hardware should be used and the parts should be
connected.
 Computer Architecture is a set of rules and methods that
describe the functionality, organization, and
implementation of computer systems. It includes the
instruction formats, the instruction set, memory
addressing techniques, microarchitecture and the overall
system design.
8
A Quote from Frank Lloyd Wright
 “architecture […] based upon principle, and not upon
precedent”

Prof. Onur Mutlu, Carnegie Mellon University, Spring 2015 9


A Quote from Frank Lloyd Wright
 “architecture […] based upon principle, and not upon
precedent”

Prof. Onur Mutlu, Carnegie Mellon University, Spring 2015 10


Prof. Onur Mutlu, Carnegie Mellon University, Spring 2015 11
Major High-Level Goals of This Course
 Understand the principles
 Understand the precedents

 Based on such understanding:


 Enable you to evaluate tradeoffs of different designs and ideas
 Enable you to develop principled designs
 Enable you to develop novel, out-of-the-box designs

 The focus is on:


 Principles, precedents, and how to use them for new designs

Prof. Onur Mutlu, Carnegie Mellon University, Spring 2015 12


Different abstraction layers in computing!

Problem
Algorithm
focus of Computer
Organization & Program/Language
Architecture Runtime System RISC ISA
(VM or OS)
ISA (Architecture)
Microarchitecture CISC ISA
Logic
Circuits
Electrons

13
Understanding Performance
 Algorithm
 Determines number of operations executed

 Programming language, compiler, architecture


 Determine number of machine instructions executed per
operation

 Processor and memory system


 Determine how fast instructions are executed

 I/O system (including OS)


 Determines how fast I/O operations are executed

14
Eight Great Ideas
 Design for Moore’s Law : IC resources double every 18 – 24 months.

 Use abstraction to simplify design

 Make the common case fast

 Performance via parallelism

 Performance via pipelining

 Performance via prediction

 Hierarchy of memories

 Dependability via redundancy


15
Evolution of Computers

16
Evolution of Computers
In the 300 years before the mid-1900s, a series of
increasingly complex mechanical devices, constructed from
gear wheels, levers, and pulleys were used to perform the
basic operations of addition, subtraction, multiplication and
division.

Fig: Tiger - Japanese Mechanical Calculator

17
Evolution of Computers
Computers as we know them today have been developed over
the past 60 years.

The first electronic computer ENIAC (Electronic Numerical


Integrator And Computer) was designed and built at the
University of Pennsylvania during World War II.

ENIAC was based on vacuum tube technology and was used


in radios and military radar equipment. Vacuum tubes were
used to perform logic operations and to store data.

18
Fig: Vacuum tube vs. transistor

Fig: ENIAC
19
Evolution of Computers
Development of technologies used to fabricate processors,
memories and I/O units of computers has been divided into
four generations:

 First generation: 1945 – 1955


 Second Generation: 1955 – 1965
 Third Generation: 1965 – 1975
 Fourth Generation: 1975 – present

20
First generation (1945 -1955)
 The key concept of a stored program was introduced by John
von Neumann. Programs and their data were located in the
same memory, as they are today.
 Harvard architecture was another kind of architecture where
programs and their data were located on different memory
systems.
 Assembly language was used to prepare programs and was
translated into machine language for execution.
 Basic arithmetic operations were performed in a few
milliseconds using vacuum tube technology to implement logic
functions.
 This provided a 100 to 1000 times increase in speed to earlier
mechanical and relay-based electromechanical technology.

21
Von Neumann Architecture

22
Second generation (1955 – 1965)
 Transistor was invented at AT&T Bell Laboratories in the late
1940s and quickly replaced the vacuum tube. This marked the
start of the second generation of computers.
 High-level languages such as Fortran, were developed,
making the preparation of a application programs much
easier.
 System programs called compilers were developed to
translate these high-level language programs into a
corresponding assembly language programs, which was
translated into executable machine language form.
 Separate I/O processors were developed that could operate in
parallel with the central processor that executed programs,
thus improving overall performance.
 During this time, IBM was a major computer manufacturer.
23
Third generation (1965 – 1975)
 The ability to fabricate many transistors on a single silicon
chip, called integrated-circuit technology enabled lower-cost
and faster processors and memory elements to be built.
 Integrated-circuit memories began to replace magnetic core
memories. This technological development marked the
beginning of the third generation of computers.
 Other developments included the introduction of
microprogramming, parallelism and pipelining.
 Operating system software allowed efficient sharing of a
computer system by several user programs.
 Cache and virtual memory were developed.
 System 360 mainframe computers (from IBM) and PDP
minicomputers (from Digital Equipment Corporation) were
dominant commercial products.
24
Fourth generation (1975 – present)
 In the early 1970s, integrated-circuit fabrication techniques
had evolved to the point where complete processors and
large sections of the main memory of small computers
could be implemented on single chips.
 Tens of thousands of transistors could be placed on a single
chip – Very Large Scale Integration (VLSI).
 Companies such as Intel, National Semiconductor,
Motorola, Texas Instruments and Advanced Micro Devices
(AMD) were the driving forces of this technology.

25
Manufacturing of ICs

 Yield: proportion of working dies per wafer


26
Beyond the fourth generation
 Computers featuring artificial intelligence, massively parallel
machines, and extensively distributed systems are
examples of current trends.
 The growth of the computer industry is fueled by
increasingly powerful and affordable personal computers
and widespread use of the internet.

27
Suggested reading
 Section 1.1, Computer System Architecture (Third Edition) –
M. Morris Mano
 Chapter 1, Computer Organization and Design (Fifth
Edition) - D. A. Patterson and J. L. Hennesey
 Sections 1.2 and 1.8, Computer Organization (Fifth edition)
– Carl Hamacher, Zvonko Vranesic and Safwat Zaky
 https://en.wikipedia.org/wiki/Von_Neumann_architecture
 https://en.wikipedia.org/wiki/Harvard_architecture

28
Thank you!

29

Вам также может понравиться