82
CO20-320241 Computer Architecture and Programming Languages CAPL Lecture 1 & 2 Dr. Kinga Lipskoch Fall 2017

Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

  • Upload
    ngoque

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

CO20-320241

Computer Architecture andProgramming Languages

CAPL

Lecture 1 & 2

Dr. Kinga Lipskoch

Fall 2017

Page 2: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Who am I?

I PhD in Computer Science at the Carl von Ossietzky Universityof Oldenburg

I University lecturer at the Department of Computer Scienceand Electrical Engineering

I Joined Jacobs University in January 2013

I Office: Research I, Room 94

I Telephone: +49 421 200-3148

I E-Mail: [email protected]

I Office hours: Mondays 10:00 - 12:00

CAPL Fall 2017 2 / 82

Page 3: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Course Resources

I Grader:https://grader.eecs.jacobs-university.de/courses/

320241/2017_2/

I Slides and homework sheets will be posted there

I Offline questions: Office hours on Mondays 10:00 - 12:00

I You can make other appointments if necessary

CAPL Fall 2017 3 / 82

Page 4: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Literature

Textbooks:

I Ronald J. Tocci, Neal Widmer, Greg Moss: Digital Systems:Principles and Applications, 11th edition, Pearson Publishing,2011

I David A. Patterson and John L. Hennessy: ComputerOrganization and Design, 5th edition, Morgan KaufmannPublishers, 2013

I Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D.Ullman: Compilers: Principles, Techniques, and Tools, 2nd

edition, Pearson Education Publishing, 2014

I Allen Holub: Compiler Design in C, 2nd edition, Prentice Hall,1990

CAPL Fall 2017 4 / 82

Page 5: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Course Goals

Understand the basic concepts of

I computer architectures

I data representations and logic circuits

I instruction set architectures

I datapath and control

I programming languages characteristics

I phases of compilation

CAPL Fall 2017 5 / 82

Page 6: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Course Grading

I 30% - Homework

I 30% - Midterm exam

I 40% - Final exam

CAPL Fall 2017 6 / 82

Page 7: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Homework

I To be solved individuallyI Discussion between students is encouraged, cheating is notI Each student needs to submit her/his own solution to the

homework problems

I Homework will be graded by the TAsI PercentagesI Template for submitting homework:

https://grader.eecs.jacobs-university.de/courses/

320241/2017_2/lectures/template_hw.texI Update parts highlighted with blueI Submit one single PDF file

I Submit to Graderhttps://grader.eecs.jacobs-university.de/

CAPL Fall 2017 7 / 82

Page 8: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Grading Criteria for Homework

I 10% deductionif not using the provided template for submitting thehomeworkhttps://grader.eecs.jacobs-university.de/courses/

320241/2017_2/lectures/template_hw.tex

I 50% − 70% deductionif providing only final result without showing the steps leadingto the result

I Short tutorial for installing and working with LATEXhttps://www.latex-tutorial.com

I The homework will be graded by the TAs

I If issues or questions then please first address to the TAs

CAPL Fall 2017 8 / 82

Page 9: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Missing Homework, Midterm, Exams according to API https://www.jacobs-university.de/sites/default/files/

bachelor_policies_v1.1.pdf (page 9)

I Illness must be documented with a sick certificate

I Sick certificates and documentation for personal emergencies must besubmitted to the Student Records Office by the third calendar day

I Predated or backdated sick certificates will be accepted only when thevisit to the physician precedes or follows the period of illness by no morethan one calendar day

I Students must inform the Instructor of Record before the beginning ofthe examination or class/lab session that they will not be able to attend

I The day after the excuse ends, students must contact the Instructor ofRecord in order to clarify the make-up procedure

I Make-up examinations have to be taken and incomplete coursework hasto be submitted by no later than the deadline for submitting incompletecoursework as published in the Academic Calendar

CAPL Fall 2017 9 / 82

Page 10: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Structure of the Lectures

I Tuesday 11:15 - 12:30 Lecture CSLH, Research I

I Thursday 11:15 - 12:30 Lecture CSLH, Research I

I Homework is due one week after releasing on Tuesday in themorning at 11:15 sharp

CAPL Fall 2017 10 / 82

Page 11: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Planned Syllabus

I Part I: Data representations and logic circuits

I Part II: Instruction set architectures

I Part III: Datapath and control

I Part IV: Programming languages and compilation

CAPL Fall 2017 11 / 82

Page 12: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Part I: Data Representations and Logic Circuits

CAPL Fall 2017 12 / 82

Page 13: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Computers Everywhere

I How many different computers have you already used today?I PC, MonitorI SmartphoneI Washing machineI Digital cameraI MP3 playerI Airplane, car

I All of these computers use software, often especially writtenfor specific purpose and architecture

CAPL Fall 2017 13 / 82

Page 14: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Computer Architecture (1)

I Refers to overall organization of computer systemI Specifies

I functionality of major componentsI interconnection among components

I You will learn architectural concepts, but in the beginning wewill also look at some low-level technical details

I Later we will abstract away from details

CAPL Fall 2017 14 / 82

Page 15: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Computer Architecture (2)I Software

I Variables in different formats: characters, integers, floatingpoint numbers, pointers, etc.

I Instructions: data transfer, arithmetic, comparison, controlflow

I Hardware

I Registers, register file, memory, disks, etc.I Adders, multipliers, divider, etc.

I Register-transfer level: machine instructions

I Logic level: AND, OR, etc.

I Transistor level: electronic components implementing logical operations

I Technology

I CMOS (complementary metal-oxide-semiconductor), bipolarCMOS, etc.

I Germanium, silicon, gallium, arsenic

CAPL Fall 2017 15 / 82

Page 16: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Questions

I Instruction setI What does the machine understand?I What does the machine need to understand?I What is the interface between hardware and software?

I Machine organizationI How does it work?I How do we design a computer?I How does the speed depend on the architecture?

CAPL Fall 2017 16 / 82

Page 17: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Brief History of Computers

I First phase: Mechanical machinesI Second phase: Electronic machines

I RelaysI TubesI Transistors

I Third phase: Digital computers

I Fourth phase: Networking

CAPL Fall 2017 17 / 82

Page 18: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Wilhelm Schickard

I Lived in Tubingen1592 − 1635

I Built first automaticcalculator, the “CalculatingClock”

CAPL Fall 2017 18 / 82

Page 19: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

First Automatic Calculator

I Calculating Clock, 1623

I Machine could add, subtract, multiply and divide six-digitnumbers, and indicated an overflow of this capacity by ringinga bell

I Destroyed in a fire while still incomplete

CAPL Fall 2017 19 / 82

Page 20: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Blaise Pascal

I Born in Clermont-Ferrand,June 19th, 1623

I Died 1662 in Paris

I Famous mathematician,built Pascal’s calculator(Pascaline), which could addand subtract

CAPL Fall 2017 20 / 82

Page 21: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Pascaline

I First mechanical adding machine, around 1642

I Machine was used until 1799

I Had about 50 prototypes and later built around 20 moremachines

CAPL Fall 2017 21 / 82

Page 22: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Gottfried Wilhelm, Freiherr von Leibnitz (1)

I Mathematician andPhilosopher, born in 1646 inLeipzig

I Died in Hannover,November 14th, 1716

I Invented the binary numbersystem, which is basis of allmodern computers

CAPL Fall 2017 22 / 82

Page 23: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Gottfried Wilhelm, Freiherr von Leibnitz (2)

I First computing machine, 1668

I Could add, subtract, multiply and divide

CAPL Fall 2017 23 / 82

Page 24: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Charles Babbage

I Born December 26th, 1791in London

I Died in 1871 in London

I In that time numericaltables were calculated bymen called computers

I Originator of the idea of aprogrammable machine

CAPL Fall 2017 24 / 82

Page 25: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Difference Engine

I Completed in 1822

I Could add and subtract

I Compute tables for navalnavigation

I Output = punched results

I Could run only onealgorithm

CAPL Fall 2017 25 / 82

Page 26: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Analytical Engine

I A general-purpose computerdesigned by Babbage

I Analytical Engine has neverbeen completed

I Was planned to beprogrammed using punchcards

CAPL Fall 2017 26 / 82

Page 27: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Programmable Machine

I Joseph Marie Jacquard’sloom called “Jacquardloom”, invented in 1801

I Uses punch-cards to controlthe weaving of patterns(e.g., silk)

I Did not operate well,therefore unsuccessful

CAPL Fall 2017 27 / 82

Page 28: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Augusta Ada Byron

I Born in 1815 in London

I Died in 1852 in London

I In a public article Adadescribes an algorithm forthe analytical engine tocompute Bernoulli numbers

I The first programmer

I The computer language Adawas named after her

CAPL Fall 2017 28 / 82

Page 29: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Herman Hollerith

I Born in 1860 in New York

I Died in 1929 in Washington,D.C.

I Developed a mechanicaltabulator and paper punchcard, 1884, MassachusettsInstitute of Technology

I Application in summarizinginformation, later accounting

I Founder of the TabulatingMachine Company (1896)later merged to become IBM

CAPL Fall 2017 29 / 82

Page 30: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Storage Medium: Punchcards

I Early punch cards

I Punch card workers (probably at the census in 1890) knowingevery single bit of the storage medium

CAPL Fall 2017 30 / 82

Page 31: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Konrad Zuse (1)

I Born in Berlin, June 22nd,1910

I Died in Hunfeld, December18th, 1995

CAPL Fall 2017 31 / 82

Page 32: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Konrad Zuse (2)

I The Z1 computer in the living room ofKonrad Zuse’s parents in 1936

I Z1 - mechanical programmable digitalcomputer (1938)

I Z2 - fully functional computer (1940)

I Z3 - first program control using abinary system

I Plankalkul, probably the firstprogramming language

I Founder of Zuse KG, taken over bySiemens

CAPL Fall 2017 32 / 82

Page 33: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

John Louis von Neumann

I John von Neumann, next to theENIAC (Electronic NumericalIntegrator And Computer)

I First memory programmable computer:EDVAC (Electronic Discrete VariableAutomatic Computer) (1944)

I Gave name to the concept ofvon-Neumann architecture of moderncomputers

I Single storage structure to hold bothinstructions and data

I Storage is separated from theprocessing unit

CAPL Fall 2017 33 / 82

Page 34: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Electronic Numerical Integrator and Computer (ENIAC)

I 18000 vacuum tubes

I 1500 relays

I 30 tons weight

I 140 kW power usage

I 20 registers (10-digitdecimal)

I 1946, School of ElectricalEngineering at theUniversity of Pennsylvania

I Used vacuum tubes (notmechanical devices) to doits calculations

I First electronic computer

I But it could not store itsprograms (its set ofinstructions)

CAPL Fall 2017 34 / 82

Page 35: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Brief History of Computer Technology

I 1951 − 1958 1st generation: Vacuum tubes

I 1959 − 1963 2nd generation: Transistors

I 1964 − 1979 3rd generation: ICs

I 1979 − 4th generation: VLSI (Very Large ScaleIntegration)

I Now − ULSI (Ultra Large Scale Integration)I Frequency increases, but the slope is not as steep as it used to

beI Multi Cores

CAPL Fall 2017 35 / 82

Page 36: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

First Generation: Tubes (1951 − 1958)

I Vacuum tubes as their mainlogic elements

I Punch cards to input andexternally store data

I Rotating magnetic drums forinternal storage of data andprograms

I Programs written inI Machine languageI Assembly language -

compiler needed

CAPL Fall 2017 36 / 82

Page 37: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

IBM 650 (1)

Best selling computer of the1950’s, with about 2000 unitsinstalled before it wasdiscontinued in the early 1960’s

The CPU was 5ft by 3ft by 6ftand weighed 1966 lbs, and rentedfor $3200 per month. The powerunit was 5x3x6 ft and weighed2972 pounds. The cardreader/punch weighed 1295pounds and rented for$550/month. The 650 could addor subtract in 1.63 milliseconds,multiply in 12.96 ms, and dividein 16.90 ms.

CAPL Fall 2017 37 / 82

Page 38: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

IBM 650 (2)

The memory was a rotatingmagnetic drum with 2000 word(10 digits and sign) capacity andrandom access time of 2.496 ms.For an additional $1, 500/monthyou could add magnetic corememory of 60 words with accesstime of 0.096 ms.

CAPL Fall 2017 38 / 82

Page 39: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Programming the 650I FORTRAN – the first high-level, machine-independent programming

language – marked a great leap forward in user friendliness, and wasprobably available for the 650 by this time

I First you punched your FORTRAN program on a key punch machine,along with any data and control cards. But since the 650 had no disk, theFORTRAN compiler was not resident.

I To compile your program, you fed the FORTRAN compiler deck into thecard reader, followed by your FORTRAN source program as data. Aftersome time, the machine would punch the resulting object deck.

I Your program would run and results would be punched onto yet anotherdeck of cards.

I To see the results, you would feed the result deck into another machine,

such as an IBM 407, to have it printed on paper (if the computer itself

had no printer, as the original 650 did not).

Source: Columbia University Computing History, 1958

CAPL Fall 2017 39 / 82

Page 40: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Second Generation: Transistors (1959 − 1963)

I Transistors replace tubes as mainlogic element

I Magnetic tape and disks begin toreplace punched cards as externalstorage devices

I Magnetic cores strung on wirewithin the computer become theprimary internal storage technology

I High-level programming languagesI FORTRAN and COBOL

CAPL Fall 2017 40 / 82

Page 41: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Magnetic Core

The unit was available with onecapacity of 4, 096 36-bit words.When the 737 replaced the IBM706, the system’s 701 ElectronicAnalytical Control Unit had to bealtered. Customers could rent a737 for a fee of $6, 100 a month.

CAPL Fall 2017 41 / 82

Page 42: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Disk Storage Unit 1961

I The IBM 1301 Disk StorageUnit (DSU) containing twostorage modules in 1961

I Module capacity in the 7000series computer context wasabout 28 million characters

CAPL Fall 2017 42 / 82

Page 43: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Hard Disk Storage

I An IBM 1316 disk pack, 1962

I Weight: about 10 pounds ≈ 4.5 kg

I Storage capacity: 2MB

Source: Columbia University Computing History

CAPL Fall 2017 43 / 82

Page 44: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Third Generation: ICs (1964 − 1979)

I Integrated circuits (ICs) replaceindividual transistors

I Magnetic tape and diskscompletely replace punch cards asexternal storage devices

I Metal oxide semiconductor (MOS)memory, which, like integratedcircuits, use silicon-backed chips

I Operating systemsI Advanced programming

I BASICI Microsoft founded in 1975

CAPL Fall 2017 44 / 82

Page 45: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

IBM System/360

I Model 40 in the figure

I 2.0 MHz

I 128 − 256Kb memory

I > $550, 000

I A computer family, rather than one specific model

I Commercially very successful (upgrade possibility)

CAPL Fall 2017 45 / 82

Page 46: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

IBM Punchcard

I Contained either commands for controlling automatedmachinery or data for data processing applications

I Both commands and data were represented by the presence orabsence of holes in predefined positions

CAPL Fall 2017 46 / 82

Page 47: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

DEC PDP-8

I First commercialminicomputer

I Less than $20, 000

I Single bus connects severalcomponents of a computer

I A bus is collection of parallelwires

CAPL Fall 2017 47 / 82

Page 48: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Fourth Generation: (1979−present)

I Large-scale and very large-scale integrated circuits (LSICs andVLSICs)

I Microprocessors that contained memory, logic, and controlcircuits (an entire CPU = Central Processing Unit) on a singlechip

I Personal ComputersI Apple III IBM PC

I Graphical User Interfaces (GUI) for PCs arrive in the early1980’s

CAPL Fall 2017 48 / 82

Page 49: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Apple II

I Apple II released to public in1977, by Stephen Wozniakand Steven Jobs

I Price $1, 298

I First Apple Mac released in1984

CAPL Fall 2017 49 / 82

Page 50: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

IBM Personal Computer

IBM PC introduced in 1981Pricing started at $1, 565

CAPL Fall 2017 50 / 82

Page 51: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Intel 8080

I Introduced in 1974

I Intel 4004 was the first IC,but Intel 8080 was the firstcommercially successful IC

CAPL Fall 2017 51 / 82

Page 52: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Pentium I

I Introduced in 1993

I The Pentium is afifth-generation x86architecture microprocessorby Intel

I Started with 60 MHz

I 800-nm process = half thedistance between identicalfeatures of a memory cell

CAPL Fall 2017 52 / 82

Page 53: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Nehalem

I Introduced in November2008

I 731 ∗ 106 transistors

I 45-nm process

CAPL Fall 2017 53 / 82

Page 54: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Gulftown

I Introduced in March 2010

I Smaller than Nehalem(32-nm process)

I 1.17 ∗ 109 transistors

I 6 cores, 12 MB shared L3cache

CAPL Fall 2017 54 / 82

Page 55: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

A5 of Apple iPad 2 A1395I Size of chip is 12.1 by 10.1

mm, and it wasmanufactured originally in a45-nm process

I Two identical ARMprocessors or cores in themiddle left of the chip and aPowerVR GPU with fourdatapaths in the upper leftquadrant

I To the left and bottom sideof the cores are interfaces tomain memory (DRAM)

CAPL Fall 2017 55 / 82

Page 56: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Moore’s LawI In 1965, Gordon Moore predicted that the number of

transistors that can be integrated on a die would double every18 to 24 months (i.e., grow exponentially with time)

I Amazingly visionary the million transistor/chip barrier wascrossed in the 1980’s

I 2300 transistors, 1 MHz clock (Intel 4004) – 1971I 16 million transistors (Ultra Sparc III) – 1999 − 2001I 42 million transistors, 2 GHz clock (Intel Xeon) – 2000I 55 million transistors, 3 GHz, 130-nm technology, 250 mm2 die

(Intel Pentium 4) – 2004I 221 million transistors (Itanium II) 130-nm, 374 mm2 – 2003I 592 million transistors (Itanium II) 9 MB Cache – 2004I 1.4 billion transistors (Ivy Bridge) – 2012I 1.75 billion transistors (Skylake), 14-nm, 122 mm2 – 2015I 3 billion transistors (Snapdragon 835 by Qualcomm), 10-nm,

35% smaller than 14-nm series – 2017

CAPL Fall 2017 56 / 82

Page 57: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Clock Rate and Power for Intel x86 Processors

CAPL Fall 2017 57 / 82

Page 58: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Processor Performance Increase

CAPL Fall 2017 58 / 82

Page 59: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

CAPL Fall 2017 59 / 82

Page 60: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Numerical Representations (1)

I Physical systems use quantities which must be manipulatedarithmetically

I Quantities may be represented numerically in either analog ordigital form

CAPL Fall 2017 60 / 82

Page 61: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Numerical Representations (2)

Analog Representation

I A continuously variable, proportional indicatorI Examples of analog representation:

I Sound through a microphone causes voltage changesI Automobile speedometer changes with speedI Mercury thermometer varies over a range of values with

temperature

CAPL Fall 2017 61 / 82

Page 62: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Numerical Representations (3)

Digital Representation

I Varies in discrete (separate) stepsI Examples of digital representation:

I Passing time is shown as a change in the display on a digitalclock at one minute intervals

I A change in temperature is shown on a digital display onlywhen the temperature changes at least one degree

CAPL Fall 2017 62 / 82

Page 63: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital and Analog Systems (1)

I Analog systemI A combination of devices that manipulate values represented in

analog form

I Digital systemI A combination of devices that manipulate values represented in

digital form

CAPL Fall 2017 63 / 82

Page 64: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital and Analog Systems (2)

Advantages of digital systems:

I Ease of design

I Well suited for storing information

I Accuracy and precision are easier to maintain

I Programmable operation

I Less affected by noise (= random fluctuation in an electricalsignal)

I Ease of fabrication on IC chips

CAPL Fall 2017 64 / 82

Page 65: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital and Analog Systems (3)

Analog-to-digital conversion (ADC) and digital-to-analogconversion (DAC) are complicate circuitry

CAPL Fall 2017 65 / 82

Page 66: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital and Analog Systems (4)

The audio CD is a typical hybrid (combination) system:

I Analog sound is converted into analog voltage

I Analog voltage is changed into digital through an ADC in therecorder

I Digital information is stored on the CD

I At playback the digital information is changed into analog bya DAC in the CD player

I The analog voltage is amplified and used to drive a speakerthat produces the original analog sound

CAPL Fall 2017 66 / 82

Page 67: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital and Analog Systems (5)

I There have been remarkable recent advances in digitaltechnology

I Advances will continue as digital technology expands andimproves

I We will look at concepts and tools that will prepare you towork with digital systems

CAPL Fall 2017 67 / 82

Page 68: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital Number Systems (1)

Understanding digital systems requires an understanding of the:

I Decimal,

I Binary,

I Octal, and

I Hexadecimal number systems

CAPL Fall 2017 68 / 82

Page 69: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital Number Systems (2)

Number systems differ in the amount of symbols they use

I Decimal – 10 symbols (base 10)

I Hexadecimal – 16 symbols (base 16)

I Octal – 8 symbols (base 8)

I Binary – 2 symbols (base 2)

CAPL Fall 2017 69 / 82

Page 70: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital Number Systems (3)The decimal (base 10) system:

I 10 symbols: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9I Each number is a digit (from Latin for finger)I Most significant digit (MSD) and least significant digit (LSD)I Positional value may be stated as a digit multiplied by a

power of 10

CAPL Fall 2017 70 / 82

Page 71: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Binary System

I Lends itself to electronic circuit design since only two differentvoltage levels are required

I Binary quantities can be converted to other number systems

I Positional value may be stated as a digit multiplied by apower of 2

CAPL Fall 2017 71 / 82

Page 72: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Binary Counting

CAPL Fall 2017 72 / 82

Page 73: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

IBM Punchcard

I Contained either commands for controlling automatedmachinery or data for data processing applications

I Both commands and data were represented by the presence orabsence of holes in predefined positions

CAPL Fall 2017 73 / 82

Page 74: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Representing Binary Quantities (1)

I Open and closed switches

I Paper Tape

CAPL Fall 2017 74 / 82

Page 75: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Representing Binary Quantities (2)

I Wires and rows form a matrix

I This forms the foundation for programmable logic devices thatwill be studied in depth later

CAPL Fall 2017 75 / 82

Page 76: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Representing Binary Quantities (3)

Other two state devices:

I Light bulb (off or on)

I Diode (conducting or not conducting)

I Relay (energized or not energized)

I Transistor (cutoff or saturation)

I Photocell (illuminated or dark)

CAPL Fall 2017 76 / 82

Page 77: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital Circuits/Logic Circuits

I Digital circuits – produce and respond to predefined voltageranges

I Logic circuits – used interchangeably with the term, digitalcircuits

I Digital integrated circuits (ICs) – provide logic operations in asmall reliable package

CAPL Fall 2017 77 / 82

Page 78: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Parallel and Serial Transmission

I Parallel transmission – all bits in a binary number aretransmitted simultaneously. A separate line is required foreach bit

I Serial transmission – each bit in a binary number istransmitted per some time interval

I Both methods have useful applications which will be seen inlater chapters

CAPL Fall 2017 78 / 82

Page 79: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Memory

I A circuit which retains a response to a momentary input isdisplaying memory

I Memory is important because it provides a way to store binarynumbers temporarily or permanently

I Memory elements include:I MagneticI OpticalI Electronic latching circuits

CAPL Fall 2017 79 / 82

Page 80: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital Computers (1)

I Computer – a system of hardware that performs arithmeticoperations, manipulates data (usually in binary form), andmakes decisions

I Computers perform operations based on instructions in theform of a program at high speed and with a high degree ofaccuracy

CAPL Fall 2017 80 / 82

Page 81: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Digital Computers (2)

Major parts of a computer:

I Input unit – processes instructions and data into the memory

I Memory unit – stores data and instructions

I Control unit – interprets instructions and sends appropriatesignals to other units as instructed

I Arithmetic/logic unit – arithmetic calculations and logicaldecisions are performed

I Output unit – presents information from the memory to theoperator or process

I The control and arithmetic/logic units are often treated asone and called the central processing unit (CPU)

CAPL Fall 2017 81 / 82

Page 82: Computer Architecture and Programming Languages · PDF fileI Joined Jacobs University in January 2013 I O ce: Research I, Room 94 I Telephone: ... Augusta Ada Byron I Born in 1815

Organization Introduction History of Computers Evolution Numerical Representations Number Systems

Five Classic Components of a Computer

CAPL Fall 2017 82 / 82