Top Banner
CSC 2400 Computer Systems I Lecture 3 Big Ideas
25

CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Dec 18, 2015

Download

Documents

Lindsey Howard
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

CSC 2400Computer Systems I

Lecture 3

Big Ideas

Page 2: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

2

Big Idea: Universal Computing Device

All computers, given enough time and memory,are capable of computing exactly the same things.

= =PDA

WorkstationSupercomputer

Page 3: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Charles Babbage

1791 – 1871

English mathematician, philosopher, inventor and mechanical engineer

“Father of the Computer”

Invented first mechanical computer

3

Page 4: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Babbage’s Difference Engine

4

Page 5: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Ada Lovelace

1815 – 1852

English mathematician and writer

First computer programmer, worked on Difference Engine

Daughter of poet Lord Byron

5

Page 6: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Alan Turing

1912 – 1954

British mathematician, logician, cryptanalyst, and computer scientist

“Father of Computer Science and Artificial Intelligence”

Cracked the Enigma

6

Page 7: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Enigma machine

Electro-mechanical rotor cipher machine

Encrypt & decrypt secret messages

Select a combination of letters as a code

Type each letter of msg

Write down each coded letter

7

Page 8: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

8

Turing MachineMathematical model of a device that can performany computation – Alan Turing (1937)

• ability to read/write symbols on an infinite “tape”• state transitions, based on current state and symbol

Every computation can be performed by some Turing machine. (Turing’s thesis)

Tadda,b a+b

Turing machine that adds

Tmula,b ab

Turing machine that multiplies

Page 9: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

9

Universal Turing Machine

Turing described a Turing machine that could implementall other Turing machines.

• inputs: data, plus a description of computation (Turing machine)

Ua,b,c c(a+b)

Universal Turing Machine

Tadd, Tmul

U is programmable – so is a computer!• instructions are part of the input data• a computer can emulate a Universal Turing Machine,

and vice versa

Therefore, a computer is a universal computing device!

Page 10: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

10

From Theory to Practice

In theory, computer can compute anything

that’s possible to compute• given enough memory and time

In practice, solving problems involves computing under constraints.

• time weather forecast, next frame of animation, ...

• cost cell phone, automotive engine controller, ...

• power cell phone, handheld video game, ...

Page 11: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

11

Computer System: Layers of Abstraction

Software

Hardware

Application Program

Language

Instruction Set Architecture (and I/O Interfaces)

Microarchitecture

Circuits

Devices

Algorithms

Page 12: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

12

Big Idea: Transformations Between LayersHow do we solve a problem using a computer?A systematic sequence of transformations between layers of abstraction.

ProblemProblem

AlgorithmAlgorithm

ProgramProgram

Software Design:choose algorithms and data structures

Programming:use language to express design

Instr SetArchitecture

Instr SetArchitecture

Compiling/Interpreting:convert language to machine instructions

Page 13: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

13

Deeper and Deeper…

Instr SetArchitecture

Instr SetArchitecture

MicroarchMicroarch

CircuitsCircuits

Processor Design:choose structures to implement ISA

Logic/Circuit Design:gates and low-level circuits toimplement components

DevicesDevices

Process Engineering & Fabrication:develop and manufacturelowest-level components

Page 14: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

14

Descriptions of Each Level

Problem Statement• stated using "natural language"• may be ambiguous, imprecise

Algorithm• step-by-step procedure, guaranteed to finish• definiteness, effective computability, finiteness

Program• express the algorithm using a computer language• high-level language, low-level language

Instruction Set Architecture (ISA)• specifies the set of instructions the computer can perform• data types, addressing mode

Page 15: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

15

Descriptions of Each Level (cont.)

Microarchitecture• detailed organization of a processor implementation• different implementations of a single ISA

Logic Circuits• combine basic operations to realize microarchitecture• many different ways to implement a single function

(e.g., addition)

Devices• properties of materials, manufacturability

Page 16: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

16

What is a Compiler?

• A compiler is a program• Its input is the text of a program in a particular

language, say C• The compiler translates the C code into the

instruction set understood by the computer• The translation is not a line by line transliteration.

Optimization.

Page 17: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

17

Simple ExampleFrom a program we write:

sum = x + y + z;

How it might look using ISA-defined machine instructions:

ADD t1, x, y

ADD t2, t1, z

MOV sum, t2

Page 18: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

18

What is the ISA?ISA = Instruction Set Architecture

•List of all instructions, or operations, the computer can do•Instruction: type of instruction, 0 or more operands•Instruction format: What do the instructions look like?•Example instruction: 1000 0004 0002

ADD 4 2•Types of instructions: ADD, MULT, LOAD, STORE•Types of operands: the data types, addressing modes

Page 19: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

19

Levels of computer language

User: applications (Word, Excel, Netscape, etc.)

High-level: Java, C++, C (sort of medium-level)

Low-level: Assembly language (human-readable machine language)

ISA: instruction set, addressing modes ofa specific line of computers

Microarchitecture: bit settings that activate specific data flows

Hardware: understands voltages

MachineIndependent

MachineDependent

Page 20: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Moore's Law (1967) Noted that the

number of transistors per unit area had doubled every year from 1958 to 1965

Expected the trend to last “for at least ten years”

Gordon MooreCo-founder of Intel

Often misquoted as Often misquoted as “the speed will double “the speed will double

every 18 months”every 18 months”

Page 21: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Number of Transistors over Time

10 GHz

1 GHz

100 MHz

10 MHz

1 MHz

Page 22: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

Processor vs. Memory Speed over Time

10 GHz

1 GHz

100 MHz

10 MHz

1 MHz

Page 23: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

What’s the State-of-the-Art?•Fastest commercially available CPU: ~5GHz

•Fastest experimental CPU: 500Ghz– Need to cool it down to 4°K, though

•Fastest theoretical transistor: 1THz

Page 24: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

The End of Moore’s Law?•Production limitations

•Physical limitations

•Bottleneck issues

•Market issues

Page 25: CSC 2400 Computer Systems I Lecture 3 Big Ideas. 2 Big Idea: Universal Computing Device All computers, given enough time and memory, are capable of computing.

1940sElectromagnetic

Relays

pre-1940sMechanical 1950s

VacuumTubes

1960sTransistors

since 1970sIntegrated

Circuits

Quantum Computers?

The Future