Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard,

Slides:



Advertisements
Similar presentations
Microcomputer Circuits Prof Jess UEAB 2007 Designing a Microprocessor Chapter 1.
Advertisements

EEE226 MICROPROCESSORBY DR. ZAINI ABDUL HALIM School of Electrical & Electronic Engineering USM.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
1-1 Welcome to: CSC225 Introduction to Computer Organization Paul Hatalsky.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. slide 1 CS 125 Introduction to Computers and Object- Oriented Programming.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
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  1998 Morgan Kaufmann Publishers Lectures for 2nd Edition Note: these lectures are often supplemented with other materials and also problems from the.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
CIS 314 : Computer Organization Lecture 1 – Introduction.
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. Chapter 2 Image Slides.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Introduction to Computing Systems: From Bits and Gates.
Introduction to Computers. Are Computers Important? OF COURSE!
Introduction to Computing Systems from bits & gates to C & beyond Chapter 2 Bits, Data Types & Operations Integer Representation Floating-point Representation.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 8 Input/Output Basic organization Keyboard input Monitor output Interrupts DMA.
บทนำสู่คอมพิวเตอร์. Outline Computer Concepts Computer Components Software OS How to write a program? Program development.
Welcome Aboard – Chapter 1 COMP 2610 Dr. James Money COMP
1.1 1 Introduction Foundations of Computer Science  Cengage Learning.
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?
CCSE251 Introduction to Computer Organization
Introduction to Computing Systems from bits & gates to C & beyond Chapter 3 Digital Logic Structures Transistors Logic gates & Boolean logic Combinational.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 3 Digital Logic Structures Transistors Logic gates & Boolean logic Combinational.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Welcome to: CSC225 Introduction to Computer Organization.
Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Roadmap Problems Algorithms.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 4 The Von Neumann Model Basic components Instruction processing.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1-1 Introduction to Computer Engineering ELEC S100F (Fall.
مبانی کامپیوتر و برنامه سازی محمودرضا هاشمی دانشکده برق و کامپيوتر دانشگاه تهران پاییز 84.
The variety Of Processors And Computational Engines CS – 355 Chapter- 4 `
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 Computing Systems from bits & gates to C & beyond Chapter 10 The Stack Stack data structure Activation records and function invocation.
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 4 The Von Neumann Model Basic components Instruction processing.
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.
순천향대학교 정보기술공학부 이 상 정 1 1. Computer Abstractions and Technology.
Introduction to Computers. Are Computers Important? OF COURSE!
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.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 10 The Stack Stack data structure Interrupt I/O (again!) Arithmetic using a stack.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Information Technology Basics. Introduction to Information Technology 2 Computer Science – Theory of Computational Applications Computer Engineers - Make.
CS150: Computer Organization and Architecture Michael D. Wilder, Ph.D.
Computer Architecture Organization and Architecture
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
Introduction to Computers
Computer Organization and Machine Language Programming CPTG 245
CSNB COMPUTER SYSTEM CHAPTER 1 INTRODUCTION CSNB153 computer system.
Introduction to Computer Engineering
Instructor:Po-Yu Kuo 教師:郭柏佑
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
Introduction to Computer Engineering
COMPUTER ORGANZIATION AND ASSEMBLY LANGUAGE
INTRODUCTION TO MICROPROCESSORS
INTRODUCTION TO MICROPROCESSORS
INTRODUCTION TO MICROPROCESSORS
Welcome Aboard 1.
Tiny Computers, Hidden Control
Chapter 1 Welcome Aboard!. Chapter 1 Welcome Aboard!
Instructor:Po-Yu Kuo 教師:郭柏佑
Introduction to Computer Engineering
COMS 361 Computer Organization
Introduction to Computer Engineering
Presentation transcript:

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside

Introduction to Computing Systems from bits & gates to C & beyond Chapter 1 Welcome Aboard!

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside What computers consist of How computers work How they are organized internally What are the design tradeoffs How design affects programming and applications How to fix computers How to build myself one real cheap Which one to buy Knowing all about the Pentium IV or PowerPC This course is about:

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Computing Machines Ubiquitous ( = everywhere)  General purpose: servers, desktops, laptops, PDAs, etc.  Special purpose: cash registers, ATMs, games, telephone switches, etc.  Embedded: cars, hotel doors, printers, VCRs, industrial machinery, medical equipment, etc. Distinguishing Characteristics  Speed  Cost  Ease of use, software support & interface  Scalability

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Two recurring themes Abstraction  The notion that we can concentrate on one “level” of the big picture at a time, with confidence that we can then connect effectively with the levels above and below.  Framing the levels of abstraction appropriately is one of the most important skills in any undertaking. Hardware vs. Software  On the other hand, abstraction does not mean being clueless about the neighboring levels.  In particular, hardware and software are inseparably connected, especially at the level we will be studying.

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside What is Computer Organization? … a very wide semantic gap between the intended behavior and the workings of the underlying electronic devices that will actually do all the work. The forerunners to modern computers attempted to assemble the raw devices (mechanical, electrical, or electronic) into a separate purpose-built machine for each desired behavior. Electronic Devices Desired Behavior

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Role of General Purpose Computers A general purpose computer is like an island that helps span the gap between the desired behavior (application) and the basic building blocks (electronic devices). Electronic Devices Desired Behavior General Purpose Computer computer organization software

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside CPUs: the heart of computing systems ca 1980 It took 10 of these boards to make a Central Processing Unit ca 2000 You can see why they called this CPU a microprocessor!

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Two pillars of Computing Universal Computational Devices  Given enough time and memory, all computers are capable of computing exactly the same things (irrespective of speed, size or cost).  Turing’s Thesis: every computation can be performed by some “Turing Machine” - a theoretical universal computational device Problem Transformation  The ultimate objective is to transform a problem expressed in natural language into electrons running around a circuit!  That’s what Computer Science and Computer Engineering are all about: a continuum that embraces software & hardware.

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside A Turing Machine Also known as a Universal Computational Device: a theoretical device that accepts both input data and instructions as to how to operate on the data

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Problem Transformation - levels of abstraction Natural Language Algorithm Program Machine Architecture Devices Micro-architecture Logic Circuits The desired behavior: the application The building blocks: electronic devices

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Levels of Abstraction  These levels do not necessarily correspond to discrete components, but to well defined standard interfaces.  Standard interfaces provide  portability  third party software/hardware  wider usage  These levels are to some extent arbitrary - there are other ways to draw the lines. Natural Language Algorithm Program Machine Architecture Devices Micro-architecture Logic Circuits

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The Program Level  Most computers run a management program called the operating system (OS).  Application programs interface to the machine architecture via the OS. An example: Application Program Operating System Program (Software) This lecture PowerPoint Windows XP Data Application Program Operating System

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The Machine Level - 1 Machine Architecture  This is the formal specification of all the functions a particular machine can carry out, known as the Instruction Set Architecture (ISA). Microarchitecture  The implementation of the ISA in a specific CPU - i.e. the way in which the specifications of the ISA are actually carried out.

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside The Machine Level - 2 Logic Circuits  Each functional component of the microarchitecture is built up of circuits that make “decisions” based on simple rules Devices  Finally, each logic circuit is actually built of electronic devices such as CMOS or NMOS or GaAs (etc.) transistors.

Copyright © 2003 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Slides prepared by Walid A. Najjar & Brian J. Linard, University of California, Riverside Course Outline - What is Next? How to represent information The building blocks of computers: logic gates The basic algorithm: the von Neumann model An example: the LC-3 structure and language Programming the machine: assembly language A higher-level language: C