Introduction to Computer Engineering

Slides:



Advertisements
Similar presentations
Assembly Language for x86 Processors 6 th Edition Chapter 1: Introduction to ASM (c) Pearson Education, All rights reserved. You may modify and copy.
Advertisements

1-1 Welcome to: CSC225 Introduction to Computer Organization Paul Hatalsky.
Microprocessor and Microcontroller Based Systems Instructor: Eng.Moayed N. EL Mobaied The Islamic University of Gaza Faculty of Engineering Electrical.
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.
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.
1. By the end of this lecture you should be able … To describe in general terms how computers function To describe the fetch-execute cycle To explain.
Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard,
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.
Overview Introduction The Level of Abstraction Organization & Architecture Structure & Function Why study 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.
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.
Computer system overview1 The Effects of Computers Pervasive in all professions How have computers affected my life? How have computers affected my life?
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.
Introduction to Computer Engineering ECE/CS 252, Fall 2010 Prof. Mikko Lipasti Department of Electrical and Computer Engineering University of Wisconsin.
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.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
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.
Computer Organization and Architecture Lecture 1 : Introduction
Yale N. Patt Sanjay J. Patel
What Do Computers Do? A computer system is
Instructor:Po-Yu Kuo 教師:郭柏佑
Computer Organization and Machine Language Programming CPTG 245
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
Guide to Operating Systems, 5th Edition
Introduction to Microprocessors
Welcome Aboard 1.
ECEG-3202 Computer Architecture and Organization
Chapter 1 Welcome Aboard!. Chapter 1 Welcome Aboard!
Instructor:Po-Yu Kuo 教師:郭柏佑
ECEG-3202 Computer Architecture and Organization
Introduction to Computer Engineering
Introduction to Microprocessor Programming
Welcome to: CSC225 Introduction to Computer Organization
The Nature of Computing
Computer Systems An Introducton.
Introduction to Computer Engineering
CS270 Computer Organization
Dr. Clincy Professor of CS
Presentation transcript:

Introduction to Computer Engineering CS/ECE 252, Fall 2011 Prof. Guri Sohi Computer Sciences Department University of Wisconsin – Madison

Chapter 1 Welcome Aboard Slides based on set prepared by Gregory T. Byrd, North Carolina State University

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

Big Idea #1: Universal Computing Device All computers, given enough time and memory, are capable of computing exactly the same things. = = PDA Workstation Supercomputer

Tadd Tmul Turing Machine Mathematical model of a device that can perform any 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) Tadd a,b a+b Turing machine that adds Tmul a,b ab Turing machine that multiplies Turing predated computers; worked at Bletchley Park during WW2 More interested in the theory of computing: what was possible

Universal Turing Machine Turing described a Turing machine that could implement all other Turing machines. inputs: data, plus a description of computation (Turing machine) U a,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!

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, ...

Big Idea #2: Transformations Between Layers How do we solve a problem using a computer? A systematic sequence of transformations between layers of abstraction. Problem Software Design: choose algorithms and data structures Algorithm Programming: use language to express design Program Compiling/Interpreting: convert language to machine instructions Instr Set Architecture

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

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

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

Many Choices at Each Level Solve a system of equations Gaussian elimination Jacobi iteration Red-black SOR Multigrid FORTRAN C C++ Java Intel x86 Sun SPARC Compaq Alpha Pentium II Pentium III AMD Athlon Ripple-carry adder Carry-lookahead adder CMOS Bipolar GaAs Tradeoffs: cost performance power (etc.) 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.

What’s Next Bits and Bytes Digital Logic Processor and Instruction Set 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?