You are on page 1of 31

HUMBOLDT-UNIVERSITT ZU BERLIN

INSTITUT FR INFORMATIK

COMPUTER ARCHITECTURE
Lecture 2

COMPUTER HISTORY
Sommersemester 2002 Leitung: Prof. Dr. Miroslaw Malek
www.informatik.hu-berlin.de/rok/ca

CA - II - CH - 1

A BRIEF HISTORY OF COMPUTING AND COMPUTER ARCHITECTURES THE BEGINNINGS


4000-1200 BC, inhabitants of Sumer
Clay Tablets for trade records

Origine unknown (used in Babylon, later in Arab world, Europe, China and Japan)
Abakus

1570-80, John Napier (1550-1617, Scotland)


Logarithm Bones

1617, Robert Bissaker


Wood Strip Logs

1620, Edmund Gunter, (1581-1626, England)


Slide Rule
CA - II - CH - 2

MECHANICAL ERA (1623-1945)

1623, Wilhelm Schickhard (1592-1633, Germany)


Adder

1642, Blaise Pascal (1623-1662, France)


Adder (+,-), main contribution: ratchet drive for carry transfers

1671, Gottfried Leibniz (1646-1716, Germany) Calculator (+,-,x,/,), created forerunner of four function machine

CA - II - CH - 3

In the 18th century development was concentrated on the improvement of four function machines.
1794, G. F. Prony, undertook a project for the French government to

calculate logs of numbers from 1 to 200,000


Autometer (+,-,x,/)

1820, Thomas de Colmar (France), built a practical four function machine Arithmometer

1823, Charles Babbage, (1792-1871), undertook design of the Differential (Difference) Engine Differential Engine

CA - II - CH - 4

Charles Babbages Differential Engine


The machine was to solve 6th degree polynomials to 20 digit accuracy.
f (x) = n ai xi i= 0
i y
j+1

= i y

i+1

Babbage was given 17,000 to construct the machine but the project was abandoned in 1842 (uncompleted).
CA - II - CH - 5

THE ANALYTICAL ENGINE


1834, Charles Babbage, a contemporary L. G. Menebrea developed the hypothetical program to solve simultaneous equations Analytical Engine The Mill DATA INSTRUCTIONS Operation Cards Components: PROGRAM Variable Cards The Store Printer Card Puncher

1. The Store is a memory. 2. The Mill is the arithmetic unit. 3. Program is Jaquard loom punch cards. a. Operating Cards (program steps) b. Variable Cards (memory selection cards) The Analytical Engine contained all the essential features of a general purpose automatic computer.
CA - II - CH - 6

A PROGRAM TO SOLVE SIMULTANEOUS EQUATIONS


a11 x1 + a12 x2 = b1 a21 x1 + a22x2 = b2 x1 = x2 = a22 b1 a12 b2 a11 a22 a12 a21 a11 b2 a21 b1 a11 a22 a12 a21

DATA

PROGRAM OP. VARIABLE CARDS SOURCE DEST. w2, w4 w1, w5 w0, w4 w1, w3 w8, w9 w10, w11 w12, w13 w8 w9 w10 w11 w12 w13 w14 w8 w9 w10 w11 w12 w13 w14 a22 b1 a12 b2 a11 a22 a12 a21 a22 b1 a12 b2 a11a22 a12a21 w12 w13

COMPUTATION

LOC. CONTENTS w0 = w1 = w2 = w3 = a11 a12 b1 a21

CARD x x x x

w4 = a22 w5 = b2

The data was loaded into the store and computations were performed as indicated in the table. The significiant contribution was the concept of a programmed calculator.
CA - II - CH - 7

HISTORY (Cont.)
1837-53, George Scheutz (1785-1873), built a working Babbage's Differential Engine that solved 3rd degree polynomials to 15 digits
Differential Engine

1854, George Boole, (1814-1864, England)


Binary Logic Operators AND, OR, NOR

1872, E. D. Borbour, awkward to ink by hand before print


Printing Calculator

1874-78, Lord Kelvin (1824-1907, England)


Analog Machine

1875, Frank Baldwin (1838-1925, USA)


Printing Calculator

1874-77, W. F. Odhner (Sweden)


Desk Calculator

1885, D. E. Felt (1862-1930, USA), printing calculator with depressible keys


Comptometer

CA - II - CH - 8

International Business Machines Corp. (IBM)


1890, Herman Hollerith (1860 - 1926, USA), (1890 Census) Punching Cards, Tabulating Machine Electric Tabulating System Tabulating Machine Co. (1896) Computation-Tabulating Recording Co. (1911) International Business Machines Corp. (IBM) (1924)

CA - II - CH - 9

HISTORY (Cont.)
1892, William S. Burroughs, (Sold 1 million by 1926)
Printing Calculator

1904, John A. Fleming, patents the diode vacuum tube setting the stage for better radio communication
Diode Vacuum Tube

1930-1945, Vannevar Bush, MIT Professor and scientifical consultant at White House
The Idea of MEMEX

1908, Campbell Swinton (British scientist)


Electronic Scanning Method for Cathode-Ray Tube

1912-30, Monroe, Baldwin, Frieden, Marchant, etc.


Four Functions Calculators

1930-50
Motor Driven Calculators

1936, Alan Turing (1912-1954, England)


Paper on Computable Numbers
CA - II - CH - 10

KONRAD ZUSE (1910-1995)


1934 Zuse proposes to build a electromechanical calculating machine. Zuse files a patent application for the automatic execution of calculations, including a binary "combination memory"

1936

Zuse's Z-series of computers 1938 1940 1941 Z1 Z2 Z3 mechanical computer uses telephone relays instead of mechanical logical circuits first fully functional program-controlled electro-mechanical calculator Z4 survives WW II and helps launching post-war development of scientific computers in Germany

1945

Z4

CA - II - CH - 11

HISTORY (Cont.)
1937, Howard Aiken (USA) submitted to IBM a proposal for a digital calculating machine capable of performing the four arithmetic operations and some other functions
1943, British built code-breaking Vacuum Tube Computer computer called Colossus WW II, Americans built a general purpose electronic computer, prior to that John Atanasoff built an electromechanical digital computer with some vacuum tubes. Howard Aiken of Harvard University and IBM built an an electromechanical machine called Harvard Mark I
2,4 m

15 m

ATLAS was developed at Manchester University


CA - II - CH - 12

After the WW II a great amount of activity began and the era of the modern computer resulted.
1943-46, ENIAC (Electronic Numerical Integrator and Calculator) by J. Mauchly and J. Presper Eckert, first general purpose electronic computer

A program was created manually by setting switches and plugging & unplugging cables. It used 18,000 tubes, weighted 30 tones and had a performance of 5,000 ops/sec. More decimal than binary it had a card reader, a printer and a card punch. 1945, John von Neumann introduces the concept of a stored program.

CA - II - CH - 13

HISTORY (Cont.)
1947, first transistor designed by John Bardeen, Walter Brattain and William Shockley for Bell Labs (Nobel prize in 1956)

1947- 48, magnetic drum memory is introduced 1948, Claude Shannon publishes A Mathematical Theory of Communication

1948, Richard Hamming designs the Hamming code for error correction in data blocks 1949, EDSAC (Electronic Delay Storage Automatic Calculator) was developed at Cambridge University in England by Maurice Wilkis

CA - II - CH - 14

HISTORY (Cont.)
1949, Whirlwind computer by Jay Forrester (MIT) with 5000 vacuum tubes

1950, EDVAC (Electronic Discrete Variable Automatic Computer) was based on ideas developed at the Institute for Advanced Studies of Princeton University.

1951, UNIVAC I (Universal Automatic Computer) was built by Eckert and Mauchly using vacuum tubes (mainly triodes and pentodes). Memory access time 0.5 ms.

CA - II - CH - 15

20th CENTURY HISTORY


1951, Maurice Wilkes introduces microprogramming

1951, Jay Forrester's matrix core memory

1951-52, Grace Murray Hooper develops A-0 (1st compiler)

1952, John Neumann's IAS bit-parallel machine

1953, IBM 650 - 1st mass-produced computer 1953, Kenneth Olsen uses Jay Forrester's core-memory to build the Memory Test Computer 1954, Texas Instruments introduces the silicon transistor
CA - II - CH - 16

20th CENTURY HISTORY (Cont.)


1956, Fuji Photo Film Co. (Japan) develops a 1700 vacuum-tube computer for lens design calculation 1956, Univac with transistors 1957, John Backus and colleagues at IBM deliver the 1st FORTRAN compiler

1957, NTT (Nippon Telegraph and Telephone Co., Japan) develops Musasino1 (first parametron-computer) 1958, Jack Kilby (Texas Instruments) and Robert Noyce (Fairchild) develop first semiconductor ICs separately 1959, The Committee on Data Systems Languages is formed to create COBOL (Common Business Oriented Language) 1962, Stanford and Purdue Universities establish first departments of Computer Science

CA - II - CH - 17

20th CENTURY HISTORY (Cont.)


1964, IBM announces the System/360 "third-generation line of computers

1964, IBM's seven-year-long Sabre project for worldwide airline reservations is fully implemented

1964, Doug Engelbart invents the mouse 1967, 4 function hand-held calculator (Texas Instruments) 1968, Edsger Dijkstra writes about GOTO programming vs. Structured programming 1969, ARPANET, Communication between Computers 1968, Cray CDC7600 supercomputer achieves 40 MFLOPS 1970, E. F. Codd describes the relational model 1971, Intel introduces 4-bit microprocessor (4004)
CA - II - CH - 18

20th CENTURY HISTORY (Cont.)


FTP (File Transfer Protocol), To send data over the nets 1973, Alan Kay develops a forerunner of the PC, his office computer employing icons, graphics and a mouse 1975, IBM introduces the laser printer 1975, Intel introduces 8-bit microprocessor (8008,8080) 1976, Steve Jobs and Steve Wozniak build the Apple I 1977, Bill Gates and Paul Allen found Microsoft 1981, IBM introduces its model of PC 1984, Sony and Phillips introduce the CD-ROM 1984, NEC manufactures the 256-Kbit RAM and IBM introduces a 1-Mbit RAM 1984, IBM uses Intel's 80286 for the new PC ATs 1985, Cray 2 and Thinking Machines' parallel-processor Connection Machine reach 1 billion ops/second 1990, Berners-Lee writes the WWW prototype: URL (Unified Resource Locator), HTML (Hyper Text Metalanguage), HTTP (Hyper Text Transfer Protocol) 1993, first graphical web-browser Mosaic is created at University of Illinois 1995, initial public offering of Netscape
CA - II - CH - 19

THE ROOTS AND THE STORY OF THE MOST SUCCESSFUL MINICOMPUTER PDP-11
YEAR MODEL WORD LENGTH MEMORY CYCLE TIME MEMORY CAPACITY COST

1957 1959 PDP-1

D.E.C. WAS FOUNDED BY K. OLSEN 18-BIT 5s 4K-64K $120,000 (Peripherals) $30,000 (PC & DMA) $18,000 (Software Packages) $15,000$30,000 (Unibus)

1963

PDP-5

12-BIT

6s

1K-4K

1965

PDP-8

12-BIT

3s

1K-4K

1969

PDP-11

16-BIT

300 ns 980 ns

128K

MANY MODELS, e.g., PDP-11/40, PDP-11/45, VAX -11 1975 LSI-11 16-BIT (375 ICs on PCB)
CA - II - CH - 20

300 ns 980 ns

32K

A BRIEF JOURNEY THROUGH COMPUTER GENERATIONS


GENERATION PERIOD TECHNOLOGY

FIRST

1945-1954

VACUUM TUBES

SECOND

1955-1964

TRANSISTORS

THIRD

1965-1974

INTEGRATED CIRCUITS (SSI, MSI)

FOURTH

1975 - ?

INTEGRATED CIRCUITS (LSI, VLSI)

FIFTH

ARTIFICIAL INTELLIGENCE, NEURAL NETWORKS, DIGITAL/ANALOG HYBRIDS, WEB COMPUTING

CA - II - CH - 21

FIRST GENERATION COMPUTERS (1945-1954)


Central Processing Unit Arithmetic-logic unit
AC MQ Arithmetic-logic circuits DR instructions and data IBR PC

Input/Output equipment

Main memory
Addresses

IR

AR

Control Control circuits Signals Program control unit CHARACTERISTICS - Random Access Memory - 1000 (2 1/2) Word - 40 Bit Word - One Address (OP ADDR) - Parallel Binary Circuits - High-speed Registers (CPU)

STRUCTURE OF IAS COMPUTER

AC - Accumulator MQ - Multiplexor-Quotient DR - Data (40 Bit) AR - Address (12 Bit) IBR - Instruction Buffer PC - Instruction Address (Program Counter)
CA - II - CH - 22

REGISTER TRANSFER LANGUAGE


Instruction
AC AC M(102) 0

Comments
Transfer contents of memory location 100 to the accumulator Add the contents of memory location 101 to the contents of the accumulator and place the result in the accumulator Store the contents of the accumulator in memory location 102 39

M(100) AC + M(101) AC 1

Sign bit

NUMBER WORD SYMBOLIC


LDA ADD STA A B C Right instruction 28 39

Left instruction 8

19 20

Opcode

Address

Opcode
CA - II - CH - 23

Address

INSTRUCTION WORD

SECOND GENERATION COMPUTERS (1955-1964)


Magnetic drum storage Magnetic disc storage Magnetic tape storage Printer Card reader Drum disc Control unit IO processor (channel) IO processor (channel)

Central processing unit


AC MQ Arithmetic-logic circuits DR Operator's console Index registers XR(1-7) Index adders IR AR PC

Memory control unit (multiplexer)

IBR

Core memory

Memory address

Control circuits

Control signals
CA - II - CH - 24

IBM 7094

INFORMATION FORMATS OF THE IBM 7094


0 1 S 0 1 S 0 Opcode Exponent 9 Mantissa 35

Fixed-point number
35

Floating-point number
21 Address 35

Instruction

CHARACTERISTICS
Transistor technology Index registers Floating point Subroutine linkage 200 instructions Indirect addressing Interrupts High level language Batch processing Real time Multiprocessing Separate I/O 32K memory Magnetic core memory Memory interleaving Magnetic drum
CA - II - CH - 25

THIRD GENERATION (1965 - 1974)


CPU STRUCTURE OF IBM S/360-370 SERIES
16 32-bit general purpose registers 4 64-bit floatingpoint registers

Fixed-point arithmetic unit

Decimal arithmetic unit

Floating-point arithmetic unit

internal buses

AR

IR Program status word

PC

DR

Memory control unit


CA - II - CH - 26

To Main memory

IBM S/360-370 DATA FORMATS


Low-order byte Zone Digit Zone Digit Sign Digit

Zoned decimal number Low-order byte Digit Digit Digit Digit Digit 31 15 Sign

Packed decimal number 0 1 S Fixed-point binary number 0 1 S Exponent 7 8 127 63 31

Mantissa Floating-point binary number 1 byte

Character

Character Alphanumeric data


CA - II - CH - 27

Character

FOURTH GENERATION (1971-200?)


MICROPROCESSORS
Intel 4004 (1971) 4-BIT WORD 45 INSTRUCTIONS

INTEL 8080 (1973) 8-BIT WORD 16 ADDRESS LINES (216=64 K MEMORY) MC68000 M 68020 (1979) 16-BIT WORD (1985) 32-BIT WORD 20 MHz

Intel 80486 (1989) 32-BIT WORD Pentium ALPHA Athlon (1993) 32-BIT WORD (1993) 64-BIT WORD (2000) 32-BIT WORD 1 GHz 500MHz 70 MHz

PowerPC G4 (2001) 64-BIT WORD

CA - II - CH - 28

INTEL 8080 MICROPROCESSOR


8-bit internal data bus
AC FR Multiplexer

Arithmetic-logic circuits

IR

Control circuits

Internal control lines


DR

B D H

C E L

Register array

Stack pointer Program counter Address register 16 address lines

4 power lines 12 external control lines

8 bidirectional data lines

FR flag register (5 bits) stores: sign of operation, carry, overflow, interrupt enable, parity IR is an instruction register DR data register
e.g.

ADD M ADC M DAA then

AC AC + M(H,L) AC AC + M(H,L) + FR(C) where FR indicates overflow (carry) bit decimal adjust accumulator ADD M for binary DAA for decimal CA - II - CH - 29

MIPS R4000 MICROPROCESSOR


64-bit System Bus System Control Systemcache Control Data Cache Programcache Control Instruction Cache

CP0
Exeption/Control Registers Memory Management Registers Translation Lookaside buffers

CPU
CPU Registers ALU Load Aligner/Store Driver Integer Multiplier/Divider Address Unit PC Incrementer

FPU
FPU Registers Pipeline Bypass FP Multiplier FP Divider FP Add, Convert, Square Root

Pipeline Control

CPU Registers
- General Purpose Registers 63 32 31
R0 R1

- Multiply/Divide Registers 63 32 31
MultHI MultLO

- Program Counter 63 32 31
R31
CA - II - CH - 30

PC

INTEL Pentium 4 Microarchitecture


4 3

1. In-Order Front End; 2. Out-of-Order Execution Logic; 3. Integer and FloatingPoint Execution Units; 4. Memory Subsystem; BTB Branch Target Register
CA - II - CH - 31

You might also like