Welcome Aboard 1.

Slides:



Advertisements
Similar presentations
1-1 Welcome to: CSC225 Introduction to Computer Organization Paul Hatalsky.
Advertisements

CpE442 Intro. To Computer Architecture CpE 442 Introduction To Computer Architecture Lecture 1 Instructor: H. H. Ammar These slides are based on the lecture.
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.
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
Chapter 1. Introduction This course is all about how computers work But what do we mean by a computer? –Different types: desktop, servers, embedded devices.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Introduction to Computing Systems: From Bits and Gates.
Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard,
1 Patt and Patel Ch. 1 Abstraction and Computer Systems.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University.
Introduction to Computer Engineering ECE/CS 252, Fall 2010 Prof. Mikko Lipasti Department of Electrical and Computer Engineering University of Wisconsin.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Introduction to Computing Systems: From Bits and Gates.
CSE378 Gen. Intro1 Machine Organization and Assembly Language Programming Machine Organization –Hardware-centric view (in this class) –Not at the transistor.
Instructor : Po-Yu Kuo 教師:郭柏佑 Ch. 1 Introduction EL 1009 計算機概論 ( 電子一 A) Introduction to Computer Science.
Welcome Aboard – Chapter 1 COMP 2610 Dr. James Money COMP
1 Layers of Computer Science, ISA and uArch Alexander Titov 20 September 2014.
1.1 1 Introduction Foundations of Computer Science  Cengage Learning.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
1 Computer Systems. 2 Introduction – What is a Computer? This course is all about how computers work What do computer and computer system mean to you?
1 College of Charleston, School of Science & Mathematics Dr. Anderson, Computer Science Department CS 250 Comp. Org. & Assembly CS 250 – Computer Organization.
BYU CS/ECEn 124Chapter 01 - Abstraction1 CS/ECEn 124 – Computer Systems Winter 2010 Section 001, MWF 1:00 – 1:50 pm Section 002, MWF 2:00 – 2:50 pm Help.
Cs 152 L1 Intro.1 Patterson Fall 97 ©UCB What is “Computer Architecture” Computer Architecture = Instruction Set Architecture + Machine Organization.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Welcome to: CSC225 Introduction to Computer Organization.
Intro to Architecture – Page 1 of 22CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Introduction Reading: Chapter 1.
Computer Organization Intro 1 CEG 320/520: Computer Organization and Assembly Language Programming Introduction to Computer Organization.
Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Roadmap Problems Algorithms.
EKT 422 Computer Architecture
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Introduction to Computer Engineering ELEC S100F (Fall.
مبانی کامپیوتر و برنامه سازی محمودرضا هاشمی دانشکده برق و کامپيوتر دانشگاه تهران پاییز 84.
MARC: Developing Bioinformatics Programs July 2009 Alex Ropelewski PSC-NRBSC Bienvenido Vélez UPR Mayaguez Reference: How to Think Like a Computer Scientist:
Computer Organization and Design Computer Abstractions and Technology
Spring 2006ICOM 4036 Programming Laguages Lecture 2 1 The Nature of Computing Prof. Bienvenido Velez ICOM 4036 Lecture 2.
1 Instruction Set Architecture (ISA) Alexander Titov 10/20/2012.
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
The Nature of Computing INEL 4206 – Microprocessors Lecture 3 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
The Nature of Computing INEL 4206 – Microprocessors Lecture 2 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
PART 1 Introduction 1. Layers of Abstraction 2. Turing Machine 3. Layer Transformation 4. Descriptions of Layers.
Computer Science 101 Theory of Computing. Computer Science is... The study of algorithms, with respect to –their formal properties –their linguistic realizations.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Transistor: Building.
Introduction to Computer Engineering CS/ECE 252, Spring 2008 Prof. David A. Wood Computer Sciences Department University of Wisconsin – Madison Adapted.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
MARC ProgramEssential Computing for Bioinformatics 1 The Nature of Computing Prof. Bienvenido Velez ICOM 4995 Lecture 3.
CC311 Computer Architecture Chapter 1 Computer Abstraction & Technology.
CS150: Computer Organization and Architecture Michael D. Wilder, Ph.D.
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ read/write and clock inputs Sequence of control signal combinations.
Chapter 1 Welcome Aboard. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-2 Introduction to the World of.
Yale N. Patt Sanjay J. Patel
Instructor:Po-Yu Kuo 教師:郭柏佑
Computer Organization and Machine Language Programming CPTG 245
Assembly Language (CSW 353)
Introduction to Computer Engineering
Instructor:Po-Yu Kuo 教師:郭柏佑
0. Problem solving in IT (COMP1001)
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
Chapter 1 Welcome Abroad
Introduction to Computer Engineering
Introduction to Microprocessors
Chapter 1 Welcome Aboard!. Chapter 1 Welcome Aboard!
Instructor:Po-Yu Kuo 教師:郭柏佑
Introduction to Computer Engineering
Introduction to Computer Engineering
Introduction to Microprocessor Programming
COMS 361 Computer Organization
Welcome to: CSC225 Introduction to Computer Organization
What is Computer Architecture?
What is Computer Architecture?
The Nature of Computing
Introduction to Computer Engineering
CS270 Computer Organization
Dr. Clincy Professor of CS
Presentation transcript:

Welcome Aboard 1

Computer System: Layers of Abstraction Application Program Algorithms Language Software Hardware Instruction Set Architecture (and I/O Interfaces) Microarchitecture Circuits Devices 1-2 2

= = Big Idea #1: Universal Computing Device are capable of computing exactly the same things. = = PDA Workstation Supercomputer 1-3 3

Tadd Tmul Turing Machine any computation – Alan Turing (1937) ability to read/write symbols on an infinite “tape” state transitions, based on current state and symbol Turing machine. (Turing’s thesis) Tadd Tmul a,b a+b a,b ab Turing machine that adds Turing machine that multiplies For more info about Turing machines, see http://cgi.student.nada.kth.se/cgi-bin/d95-aeh/get/umeng 1-4 4

Universal Turing Machine all other Turing machines. inputs: data, plus a description of computation (Turing machine) U Tadd, Tmul a,b,c c(a+b) Universal Turing Machine U is programmable – so is a computer! instructions are part of the input data and vice versa Therefore, a computer is a universal computing device! 1-5 5

From Theory to Practice In theory, computer can compute anything that’s possible to compute given enough memory and time computing under constraints. time weather forecast, next frame of animation, ... cost cell phone, automotive engine controller, ... power cell phone, handheld video game, ... 1-6 6

Big Idea #2: Transformations Between Layers layers of abstraction. Problem Software Design: choose algorithms and data structures Algorithm Programming: use language to express design Program Compiling/Interpreting: machine instructions Instr Set Architecture 1-7 7

Deeper and Deeper… Processor Design: Instr Set Architecture Processor Design: choose structures to implement ISA Microarch Logic/Circuit Design: implement components Circuits Process Engineering & Fabrication: lowest-level components Devices 1-8 8

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 1-9 9

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 (e.g., addition) Devices properties of materials, manufacturability 1-10 10

Many Choices at Each Level Solve a system of equations Gaussian elimination Jacobi iteration Red-black SOR Multigrid FORTRAN C C++ Java Tradeoffs: cost performance power (etc.) Sun SPARC Intel x86 Compaq Alpha Sun and Java are trademarks of Sun Microsystems, Inc. SPARC is a trademark of SPARC International, Inc. Intel and Pentium are trademarks of Intel Corporation. Compaq and Alpha are trademarks or service marks of Compaq Computer Corporation. AMD and Athlon and trademarks of Advanced Micro Devices, Inc. Pentium II Pentium III AMD Athlon Ripple-carry adder Carry-lookahead adder CMOS Bipolar GaAs 1-11 11

Course Outline Bits and Bytes Digital Logic How do we represent information using electrical signals? Digital Logic How do we build circuits to process information? Processor and Instruction Set How do we build a processor out of logic elements? What operations (instructions) will we implement? Assembly Language Programming How do we use processor instructions to implement algorithms? How do we write modular, reusable code? (subroutines) I/O, Traps, and Interrupts How does processor communicate with outside world? C Programming (ECE 209) How do we write programs in C? How does C compare to Java? How do we implement high-level programming constructs? 1-12 12