51
Name: M.Vanitha Designation: Asst.Prof Email: [email protected] Cabin: 313A – 19 SJT Contact Hours: - Friday (B1/B2 slots)

Unit1 Introduction

Embed Size (px)

Citation preview

Page 1: Unit1 Introduction

Name: M.VanithaDesignation: Asst.ProfEmail: [email protected]: 313A – 19 SJTContact Hours: - Friday (B1/B2 slots)

Page 2: Unit1 Introduction

Why this subject?Why this subject?• To acquire some understanding and

appreciation of a computer systems functional components, their characteristics, their performance and their interactions.

• Need to understand computer architecture in order to structure a program so that it runs more efficiently on a real machine.

• In selecting a system to use, they should be able to understand the tradeoff among various components such as CPU clock speed vs memory size.

Page 3: Unit1 Introduction

ITA407 COMPUTER ARCHITECTURE ITA407 COMPUTER ARCHITECTURE L T P C L T P C 3 0 0 33 0 0 3

Unit No. 1BASIC STRUCTURE OF COMPUTERS 9 HrsElements of Computers– Limitations of Computers-Evaluation of computers Design

Methodology - System design - System Representation, Design process, The Gate level – the Register level- Register - level components, programmable logic devices, Register level design –the Processor Level - Processor Level Components, Processor level design.

Unit No. 2 PROCESSOR BASICS 9 HrsCPU organization: Fundamentals; – Data Representation: Basic formats, Fixed –Point

Numbers, Floating point numbers; Data Path Design-Fixed point arithmetic-Addition and Subtraction, Multiplication, Division; – Arithmetic – Logic Units- Combinational ALU, Sequential ALU

Unit No. 3PIPELINE AND PARALLEL PROCESSING 9 HrsFloating point Arithmetic, Pipeline Processing-Pipeline design- Parallelism in uni-processor

system – parallel computer structures – vector processing requirements

Unit No. 4 MEMORY ORGANIZATIONS 9 HrsMemory technology: Memory Device Characteristics, Random Access Memory (RAM), Serial

Access Memory; memory systems: Memory Allocation – virtual memory -Caches: Main features, address mapping

Unit No. 5 I/O AND SYSTEM ORGANIZATION 9 Hrs

Basic concepts, Bus control – IO and System Control: Programmed IO, DMA and Interrupts, IO processors, Operating Systems – Multiprocessors and fault tolerant computers.

Page 4: Unit1 Introduction

Text Books1 John P Hayes, Computer architecture and organization, III edition McGraw- Hill, 199 2 2. M.M.Mano, Computer system architecture, PHI, 1982.

References

1. John. L. Hennessy & David A. Patterson, “Computer Architecture”, Elsevier, India, 3rd Ed, 2003.

2. Andrew S.Tanenbaum, Structured computer organization, PHI, 1990.3. William Stallings, Computer organization and architecture, Addison Wrsley 5th

edition, 2001. 4. Carl Hamacher, Zvonko Vranesic and Safwat Zaky, Computer organization, McGraw-

Hill, 2002. 5. Kai Hwang, Advanced Computer architecture, McGraw-Hill1993.

Page 5: Unit1 Introduction

Evaluation ProcedureEvaluation Procedure• Quiz – 1 (5M)• CAT – 1 (15M)• Quiz – 2 (5M)• CAT – 2 (15M)• Quiz – 3 (5M)• Assignment / Mini project – (5M)• Term End Exam – 50M

Page 6: Unit1 Introduction

Computing the Last 100 Computing the Last 100 yearsyears

Page 7: Unit1 Introduction

A Brief History of A Brief History of ComputersComputers

Page 8: Unit1 Introduction

The beginning of computing The beginning of computing ––Abacus (3000BC)Abacus (3000BC)

Page 9: Unit1 Introduction

BabbageBabbage’’s Differential Engine s Differential Engine (1823)(1823)

Page 10: Unit1 Introduction

• ENIAC (Electronic Numerical Integrator and Computer)• Designed by Mauchly and Eckert• University of Pennsylvania• First general-purpose electronic

digital computer• Response to WW2 need to calculate

trajectory tables for weapons.• Built 1943-1946 – too late for war

effort.

• ENIAC DetailsDecimal (not binary)• 20 accumulators of 10 digits• Programmed manually by switches• 18,000 vacuum tubes• 30 tons• 15,000 square feet• 140 kW power consumption• 5,000 additions per second

Vacuum Tube

Page 11: Unit1 Introduction

THE BABBAGE DIFFERENCE ENGINE (1832) 25,000 parts

ENIAC 1946First Electronic Computer

It is for decimal number system, Which can

perform A,S,M,D. To speed up addition operation it uses pipelining tech.

Vacuum tubes, 80 feet long, 8.5 feet high, several feet wide, total 18,000

vacuum tubes

Page 12: Unit1 Introduction

Numeric Integrator and Numeric Integrator and CalculatorCalculator

• To reprogram the ENIAC you had to rearrange the patch cords that you can observe on the left in the prior photo, and the settings of 3000 switches that you can observe on the right

Page 13: Unit1 Introduction

Alan Turing (1912Alan Turing (1912--1954)1954)

Page 14: Unit1 Introduction

John Mauchly leaning on the John Mauchly leaning on the UNIVUNIVersal ersal AAutomatic utomatic CComputeromputer

Page 15: Unit1 Introduction

Dr. VonDr. Von--NeumanNeuman with IAS with IAS machinemachine

•Stored Program Concept

•Main memory storing programs and data

•ALU operating on binary data

•Control unit interpreting instructions from memory and executing

•Input and output equipment operated by control unit

•Princeton Institute for Advanced Studies (IAS).

•Completed 1952

Page 16: Unit1 Introduction

The IBM 7094, a typical The IBM 7094, a typical mainframe computer mainframe computer

Page 17: Unit1 Introduction

2nd Generation: Transistor Based Computers Transistors replaced

vacuum tubes Smaller Cheaper Less heat dissipation Made from Silicon (Sand) Invented 1947 at Bell Labs William Shockley et al. Commercial Transistor

based computers: NCR & RCA produced

small transistor machines IBM 7000 DEC – 1957 (PDP-1)

First transistor computer – Manchester University 1953.

Page 18: Unit1 Introduction

Second Generation (1958Second Generation (1958--1964)1964)

• 1958 Philco introduces TRANSAC S-2000– first transistorized commercial machine

• IBM 7070, 7074 (1960), 7072(1961)• 1959 IBM 7090, 7040 (1961), 7094

(1962)• 1959 IBM 1401, 1410 (1960), 1440

(1962)• FORTRAN, ALGOL, and COBOL are first

standardized programming languages

Page 19: Unit1 Introduction

3rd Generation: Integrated Circuits A single, self-contained transistor is called a discrete component.

Transistor based computers – discrete components manufactured separately, packaged in their own containers, and soldered or wired together onto circuit boards.

Early 2nd generation computers contained about 10,000 transistors – but grew to hundreds of thousands!!!!

Integrated circuits revolutionized electronics.

Silicon Chip – Collection of tiny transistors

Page 20: Unit1 Introduction

Third Generation (1964Third Generation (1964--1971)1971)

• April 1964 IBM announces the System/360– solid logic technology (integrated circuits)– family of “compatible” computers

• 1964 Control Data delivers the CDC 6600• nanoseconds• telecommunications• BASIC, Beginners All-purpose Symbolic

Instruction Code

Page 21: Unit1 Introduction

Fourth Generation (1971Fourth Generation (1971-- ))

• Large scale integrated circuits (MSI, LSI)• Nanoseconds and picoseconds• Databases (large)• Structured languages (Pascal)• Structured techniques• Business packages

Page 22: Unit1 Introduction

Generations of Computers Vacuum tube - 1946-1957 (One bit Size of a hand)

Transistor - 1958-1964 (One bit Size of a fingernail)

Small scale integration - 1965 onUp to 100 devices on a chip

Medium scale integration - to 1971100-3,000 devices on a chip

Large scale integration - 1971-19773,000 - 100,000 devices on a chip

Very large scale integration - 1978 to date100,000 - 100,000,000 devices on a chip

Ultra large scale integrationOver 100,000,000 devices on a chip

Thousands of bits on the size of a hand

Millions of bits on the size of a fingernail.

Page 23: Unit1 Introduction
Page 24: Unit1 Introduction

INTEL PROCESSORSINTEL PROCESSORSProcessor Transistor count Date of

introduction Manufacturer

Intel 4004 2,300 1971 IntelIntel 8008 2,500 1972 IntelIntel 8080 4,500 1974 IntelIntel 8088 29,000 1979 Intel

Intel 80286 134,000 1982 Intel

Intel 80386 275,000 1985 IntelIntel 80486 1,200,000 1989 IntelPentium 3,100,000 1993 IntelPentium II 7,500,000 1997 IntelPentium III 9,500,000 1999 IntelPentium 4 42,000,000 2000 IntelAtom 47,000,000 2008 IntelItanium 2 220,000,000 2003 IntelCore 2 Duo 291,000,000 2006 IntelCore 2 Quad 582,000,000 2006 IntelItanium 2 with 9MB cache 592,000,000 2004 IntelCore i7 (Quad) 731,000,000 2008 IntelDual-Core Itanium 2 1,700,000,000 2006 IntelSix-Core Xeon 7400 1,900,000,000 2008 Intel

Quad-Core Itanium Tukwila 2,000,000,000 (future) Intel

8-Core Xeon Nehalem-EX 2,300,000,000 (future) Intel

Page 25: Unit1 Introduction

Digital Equipment Digital Equipment CorporationCorporation

(Mini(Mini--computers)computers)

Page 26: Unit1 Introduction

PDPPDP--8, 8, Programmed Data Programmed Data ProcessorProcessor

Page 27: Unit1 Introduction

PDPPDP--11 (1970)11 (1970)

Page 28: Unit1 Introduction
Page 29: Unit1 Introduction

IntelIntel• Noyce, Moore, and Andrew Grove leave

Fairchild and found Intel in 1968– focus on random access memory (RAM) chips

• Question: if you can put transistors, capacitors, etc. on a chip, why couldn’t you put a central processor on a chip?

• Ted Hoff designs the Intel 4004, the first microprocessor in 1969– based on Digital’s PDP-8

Page 30: Unit1 Introduction

MicrocomputersMicrocomputers

Page 31: Unit1 Introduction

Intel processorsIntel processors• CPU Year Data Memory MIPS• 4004 1971 4 1K• 8008 1972 8 16K• 8080 1974 8 64K• 8088 1980 8 1M .33• 80286 1982 16 1M 3• 80386 1985 32 4G 11• 80486 1989 32 4G 41• Pentium1993 64 4G 111

Page 32: Unit1 Introduction

Difference between Computer Architecture & Computer Organization

Page 33: Unit1 Introduction

Organization of VonOrganization of Von--Neumann Neumann Machine (IAS Computer)Machine (IAS Computer)

• The task of entering and altering programs for ENIAC was extremely tedious

• Stored program concept – says that the program is stored in the computer along with any relevant data

• A stored program computer consists of a processing unit and an attached memory system.

• The processing unit consists of data-path and control. The data-path contains registers to hold data and functional units, such as arithmetic logic units and shifters, to operate on data.

Page 34: Unit1 Introduction

Structure of Von Neumann Machine

Page 35: Unit1 Introduction

Memory of the IAS Memory of the IAS 1000 storage locations called words. Each word 40 bits. A word may contain:

A numbers stored as 40 binary digits (bits) – sign bit + 39 bit value

An instruction-pair. Each instruction: An opcode (8 bits) An address (12 bits) – designating one of the 1000 words in

memory.

Page 36: Unit1 Introduction

Von Neumann Machine MBR: Memory Buffer Register

- contains the word to be stored in memory or just received from memory.

MAR: Memory Address Register- specifies the address in memory of the word to be stored or retrieved.

IR: Instruction Register - contains the 8-bit opcode currently being executed.

IBR: Instruction Buffer Register- temporary store for RHS instruction from word in memory.

PC: Program Counter - address of next instruction-pair to fetch from memory.

AC: Accumulator & MQ: Multiplier quotient - holds operands and results of ALU ops.

AC MQ

MBR

IBR PC

IR MAR

Page 37: Unit1 Introduction

IAS Instruction set

Page 38: Unit1 Introduction

IAS Instruction set (continued)

Example of an Instruction-pair.

Load M(100), Add M(101)0000000100011111010000000101000111110101

Page 39: Unit1 Introduction

Fetch / Execute CycleFetch / Execute Cycle

Page 40: Unit1 Introduction

AC MQ

IBR PC = 1

IR MAR = 1

MEMORY1. LOAD M(X) 500, ADD M(X) 5012. STOR M(X) 500, (Other Ins).....500. 3501. 4

PC

MBRIR

IBR

MAR11

LOAD M(X) 500, ADD M(X) 501

ACADD M(X) 501

LOAD M(X)

5003

ADD M(X)

5012

42

STOR M(X) 500, (Other Ins)

(Other Ins)STOR M(X)

500

37

MBR

Mar ← PC

add = 1

LOAD M(X) 500, ADD M(X) 501

ADD M(X) 501LOAD M(X)500

MAR =500add = 500

MBR = 3

3

AC = 3

Add M(X)501

MAR = 501add = 501

PC = 2

4

MBR = 4

AC = 7

MAR ←PC

MAR = 2add = 2

STOR M(X) 500, (Other Ins)

STOR M(X)(Other Ins)

500

MAR = 500

Page 41: Unit1 Introduction

Instruction Cycle State Instruction Cycle State DiagramDiagram

Page 42: Unit1 Introduction

Instruction state cycle diagram Instruction state cycle diagram (cont..)(cont..)

• Instruction address calculation (iac):– Determine the address of the next instruction to be executed. Adding

a fixed number to a next number.• Instruction fetch: (if)

– Read the instruction from its memory location into the processor.• Operand Address Calculation: (oac)

– Analyze instruction to determine type of operation to be performed and operand(s) to be used.

• Operand Address Calculation: (oac)– If the operation involves the reference to an operand in memory or

available via I/O, then determine the address of the operand.• Operand Fetch (of):

– Fetch the operand from memory or read it from I/O.• Data Operation (do):

– Perform the operation indicated in the instruction.• Operand store (os)

– Write the result into memory or out to I/O.

Page 43: Unit1 Introduction

Example of Program Execution

Page 44: Unit1 Introduction

Register transfer operation for Register transfer operation for addition operationaddition operation

1. LOAD M(X) 500, ADD M(X) 501• Register transfer operations: (PC = 1)

– MAR ← PC– MBR ← M[MAR]– IBR ← MBR[20:39]– IR ← MBR[0:7]– MAR ← MBR[8:19]– MBR ← M[MAR]– AC ← MBR– IR ← IBR[0:7]– MAR ← IBR[8:19]– MBR ← M[MAR]– AC ← AC + MBR

Page 45: Unit1 Introduction

ProblemsProblems• Let A = A(1), A(2), …, A(1000) and

B= B(1), B(2), … , (1000) be two vectors (one dimensional arrays) comprising 1000 numbers each that are to be added to form an array C such that C(I) = A(I) + B(I) for I = 1, 2, …, 1000. Using the IAS instruction set, write a program for this problem. Ignore the fact that the IAS was designed to have only 1000 words of storage.

Page 46: Unit1 Introduction

Solution:Solution:

Page 47: Unit1 Introduction

2. On the IAS, what would the machine code instruction look like to load the contents of memory address 2?

Solution: Load M(X), Opcode – 00000001 Address – 000000000010Machine code instruction:

00000001 000000000010

3. How many trips to memory does the CPU need to make to complete this instruction during the instruction cycle?

Solution: To fetch the instruction – 1st trip, to fetch the operand from the given address in the instruction – 2nd trip. So, totally trips to memory

Page 48: Unit1 Introduction

4. On the IAS, describe in English the process that the CPU must undertake to read a value from memory and to write a value to memory in terms of what is put into the MAR, MBR, address bus, data bus, and control bus.

Solution:• Read:

– CPU puts the address of the value it wants into MAR.– Read control signal is generated– CPU puts the address on the address bus– Memory puts the corresponding data onto data bus– This data is then transferred to MBR.

• Write:– CPU puts the address of the value it wants into MAR.– CPU places the data onto the data bus– It asserts write control signal– Places the address onto the address bus.– Memory transfers the data on the data bus into the

corresponding memory location.

Page 49: Unit1 Introduction

Size ofSize of• AC –• MQ –• MBR –• IBR –• IR –• MAR –• PC –

40 bits40 bits

40 bits20 bits8 bits12 bits

12 bits

Page 50: Unit1 Introduction

QuizQuiz• MBR –• MAR –• AC –• IBR –• IR –• PC –• MQ –• IAS –• What is Computer Architecture?• What is Computer Organization?• Number of words in IAS machine?• Number of bits per word in IAS machine?• Data is represented in ____________ form in

IAS machine• Explain Stored program concept.

Page 51: Unit1 Introduction

References References • http://www.computersciencelab.co

m/ComputerHistory/HistoryPt1.htm• W. Stallings, Computer organization

and architecture, Prentice-Hall,2000