Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?

Slides:



Advertisements
Similar presentations
Slide 4-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 4 Computer Organization.
Advertisements

Chapter 2 Data Manipulation Dr. Farzana Rahman Assistant Professor Department of Computer Science James Madison University 1 Some sldes are adapted from.
RISC / CISC Architecture By: Ramtin Raji Kermani Ramtin Raji Kermani Rayan Arasteh Rayan Arasteh An Introduction to Professor: Mr. Khayami Mr. Khayami.
MICRO PROCESSER The micro processer is a multipurpose programmable, clock driven, register based, electronic integrated device that has computing and decision.
Computer Architecture and Data Manipulation Chapter 3.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Tenth Edition by J. Glenn Brookshear Chapter.
1 Intro to CS: Part 2 Lecture 1 Ata Kaban School of Computer Science The University of Birmingham [adapted from B Bordbar and M Kwiatkowska]
RISC By Don Nichols. Contents Introduction History Problems with CISC RISC Philosophy Early RISC Modern RISC.
Chapter 4 Processor Technology and Architecture. Chapter goals Describe CPU instruction and execution cycles Explain how primitive CPU instructions are.
State Machines Timing Computer Bus Computer Performance Instruction Set Architectures RISC / CISC Machines.
Unit -II CPU Organization By- Mr. S. S. Hire. CPU organization.
Processor Types And Instruction Sets Barak Perelman CS147 Prof. Lee.
(6.1) Central Processing Unit Architecture  Architecture overview  Machine organization – von Neumann  Speeding up CPU operations – multiple registers.
Computer Organization and Assembly language
Processor Organization and Architecture
COMPUTER ORGANIZATIONS CSNB123 May 2014Systems and Networking1.
RISC and CISC. Dec. 2008/Dec. and RISC versus CISC The world of microprocessors and CPUs can be divided into two parts:
Intro to Java The Java Virtual Machine. What is the JVM  a software emulation of a hypothetical computing machine that runs Java bytecodes (Java compiler.
Computer Systems 1 Fundamentals of Computing The CPU & Von Neumann.
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
Natawut NupairojAssembly Language1 Introduction to Assembly Programming.
Invitation to Computer Science 5th Edition
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Implementation of a Stored Program Computer ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides2.ppt Modification date: Oct 16,
Advanced Computer Architecture 0 Lecture # 1 Introduction by Husnain Sherazi.
Part 1.  Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?
The Central Processing Unit (CPU) and the Machine Cycle.
The Microarchitecture Level
Ch. 2 Data Manipulation 4 The central processing unit. 4 The stored-program concept. 4 Program execution. 4 Other architectures. 4 Arithmetic/logic instructions.
Computer Architecture And Organization UNIT-II General System Architecture.
Module : Algorithmic state machines. Machine language Machine language is built up from discrete statements or instructions. On the processing architecture,
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 2 Data Manipulation. © 2005 Pearson Addison-Wesley. All rights reserved 2-2 Chapter 2: Data Manipulation 2.1 Computer Architecture 2.2 Machine.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Computer Architecture 2 nd year (computer and Information Sc.)
ECEG-3202 Computer Architecture and Organization Chapter 7 Reduced Instruction Set Computers.
Computer Organization Instructors Course By: Lecturer: Shimaa Ibrahim Hassan TA: Eng: Moufeda Hussien Lecture: 9:45 Address:
MICROOCESSORS AND MICROCONTROLLER:
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Data Manipulation Brookshear, J.G. (2012) Computer Science: an Overview.
Adapted from Computer Organization and Design, Patterson & Hennessy, UCB ECE232: Hardware Organization and Design Part 5: MIPS Instructions I
1 Copyright © 2010, Elsevier Inc. All rights Reserved Chapter 2 Parallel Hardware and Parallel Software An Introduction to Parallel Programming Peter Pacheco.
Chapter 5: Computer Systems Design and Organization Dr Mohamed Menacer Taibah University
Von Neumann Computers Article Authors: Rudolf Eigenman & David Lilja
COMPUTER ORGANIZATIONS CSNB123 NSMS2013 Ver.1Systems and Networking1.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 20 Computer Operations Computer Studies Today Chapter 20.
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Computer Organization and Architecture Lecture 1 : Introduction
Computer Architecture & Operations I
Computer Architecture & Operations I
Computer Organization
A Closer Look at Instruction Set Architectures
Edexcel GCSE Computer Science Topic 15 - The Processor (CPU)
CISC AND RISC SYSTEM Based on instruction set, we broadly classify Computer/microprocessor/microcontroller into CISC and RISC. CISC SYSTEM: COMPLEX INSTRUCTION.
What is Computer Architecture?
Introduction to Microprocessor Programming
What is Computer Architecture?
What is Computer Architecture?
Computer Architecture
CPU Structure CPU must:
CSE378 Introduction to Machine Organization
Presentation transcript:

Part 1

 Intel x86/Pentium family  32-bit CISC processor  SUN SPARC and UltraSPARC  32- and 64-bit RISC processors  Java  C  C++  Java  Why Java?  Binaries are not portable nor can they be secured  Complexity of C++

 Java  How?  Bytecode (for hypothetical machine)  Moved around the web  Interpreted by JVM (Java Virtual Machine)  32-bit w/ 226 instructions (some complex)  JIT compilation  SUN Pico Java II family of chips  No JVM  Optional cache and fp unit  Example is micro Java 701  Used by embedded systems

 CPU  Central Processing Unit  Bus  collection of (parallel) wires for transmitting address, data, and control signals  Instruction format  opcode[operand1,…]  Opcode = operation code (e.g., add)  Operand = (optional) data upon which opcode is performed (e.g., add 12,r0 – add 12 to register 0 – 12 and r0 are the operands)

Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The organization of a simple computer with one CPU and two I/O devices

1. CU = control unit 2. ALU = arithmetic logic unit 3. Registers = small amount of high speed memory

1. CU = control unit  Fetches instruction from main memory and determines their type 2. ALU = arithmetic logic unit 3. Registers = small amount of high speed memory

1. CU = control unit 2. ALU = arithmetic logic unit  Performs operations such as add, subtract, or, etc. 3. Registers = small amount of high speed memory

1. CU = control unit 2. ALU = arithmetic logic unit 3. Registers = small amount of high speed memory  stores temp results and control info  holds (only) one number  PC = program counter  points to next instruction to be executed  PS = processor status (EFLAGS)

Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The data path of a typical Von Neumann machine.

1. Register-to-register 2. Register-to-memory (or mem-to-reg) What’s missing?

Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved Fetch next instruction from memory into instruction register. 2. Change program counter to point to next instruction. 3. Determine type of instruction just fetched. 4. If instructions uses word in memory, determine where it is. 5. If needed, fetch word from memory into CPU register. 6. Execute the instruction. 7. Go to step 1 (to begin executing next instruction).

Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved Fetch next instruction from memory into instruction register. 2. Change program counter to point to next instruction. 3. Determine type of instruction just fetched. 4. If instructions uses word in memory, determine where it is. 5. If needed, fetch word from memory into CPU register. 6. Execute the instruction. 7. Go to step 1 (to begin executing next instruction). Very similar to the JVM (see oc.html#7143).

 A program that fetches, examines, and executes the instructions of another program.

1. Interpreted 2. Compiled to bytecode 3. Compiled to executable

1. Interpreted – need additional program (interpreter) to run 2. Compiled to bytecode – need additional program to compile to bytecode – need additional program (interpreter) to run bytecode 3. Compiled to executable – need additional program (compiler) to create executable – nothing required to run

 First, recall CPU components:  CU  ALU  registers = small amount of high speed memory  stores temp results and control info  holds (only) one number  PC = program counter  points to next instruction to be executed  PS = processor status (EFLAGS)  We’ll need a PC, a PS, and one other register, the AC.

Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved An interpreter for a simple computer (written in Java).... Where’s the PS?

Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved An interpreter for a simple computer (written in Java).

1. Specify microinstructions 2. Specify machine language 3. Implement in software, hardware, or hybrid

 Late 50’s and on…  IBM (dominant company) defines a family or “architecture”  Top end machines ($$$) execute all instructions in hardware.  Bottom end machines ($) interpret many instructions (and therefore run slowly)

 Benefits 1. Bugs (in instructions) can later be fixed. 2. One may add new instructions. 3. Supports development, testing, and documentation.  Big trend in 70s and 80s was towards CISC (complex instruction set computer) with hundreds of instructions.  (Author’s view of DEC is not “complete.” DEC saw the advantages of RISC and introduced the DEC Alpha processor which was much faster and more powerful than Intel processors.)

 70s – CISC simplified compiler design by closing the gap between HLL and architecture.  RISC = reduced instruction set computer  1980 – Patterson et Berkeley - SPARC  No interpreter – just hardware  1981 – Hennessy – MIPS

 Initial emphasis on quick instruction execution  Issuing (starting the execution of) many instructions in parallel is the key to good performance.  Small number of instructions (~50) compared with for CISC.  4 or 5 RISC instruction = 1 CISC instructions  But RISC can be 10x faster!  Evolution of compiler technology made this possible.

 So why hasn’t RISC beat Intel (CISC)?  Market momentum  Economy of scale  486 had a RISC core (for frequently executed instructions) w/ other instructions interpreted