The Instruction Set Architecture Level

Slides:



Advertisements
Similar presentations
INSTRUCTION SET ARCHITECTURES
Advertisements

Princess Sumaya Univ. Computer Engineering Dept. Chapter 2: IT Students.
MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 3 Memory Management Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall,
1BA3 G Lacey Lecture 51 Evaluating mathematical expressions  How do computers evaluate x + y or any mathematical expression ?  Answer : “Reverse Polish.
Addressing A large portion of the bits in a program are used to specify where the operands come from rather than what operations are being performed on.
Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The Microarchitecture Level.
Choice for the rest of the semester New Plan –assembler and machine language –Operating systems Process scheduling Memory management File system Optimization.
The Assembly Language Level
Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The Instruction Set Architecture.
Operating Systems Béat Hirsbrunner Main Reference: William Stallings, Operating Systems: Internals and Design Principles, 6 th Edition, Prentice Hall 2009.
Informationsteknologi Friday, November 16, 2007Computer Architecture I - Class 111 Today’s class Instruction set architecture.
Embedded Systems: Hardware Computer Processor Basics ISA (Instruction Set Architecture) RTL (Register Transfer Language) Main reference: Peckol, Chapter.
Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The Assembly Language Level.
The Instruction Set Architecture Level Chapter 5.
Princess Sumaya Univ. Computer Engineering Dept. Chapter 2:
Lecture 18 Last Lecture Today’s Topic Instruction formats
Instruction Set Design by Kip R. Irvine (c) Kip Irvine, All rights reserved. You may modify and copy this slide show for your personal use,
4-1 Chapter 4 - The Instruction Set Architecture Computer Architecture and Organization by M. Murdocca and V. Heuring © 2007 M. Murdocca and V. Heuring.
The Instruction Set Architecture Level Dept. of Computer Science Virginia Commonwealth University.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CS-334: Computer.
The Microarchitecture Level
Instruction Set Architecture The portion of the machine visible to the programmer Issues: Internal storage model Addressing modes Operations Operands Encoding.
Computer Architecture and Organization
Computer Architecture EKT 422
Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved The Microarchitecture Level.
What is a program? A sequence of steps
Page 1 Computer Architecture and Organization 55:035 Midterm Exam Review Spring 2011.
Ass. Prof. Dr Masri Ayob TK 2123 Lecture 14: Instruction Set Architecture Level (Level 2)
Computer Organization Instructions Language of The Computer (MIPS) 2.
Computer Organization 1
Instruction Sets: Characteristics and Functions  Software and Hardware interface Machine Instruction Characteristics Types of Operands Types of Operations.
CSC 221 Computer Organization and Assembly Language Lecture 06: Machine Instruction Characteristics.
Computer Architecture. Instruction Set “The collection of different instructions that the processor can execute it”. Usually represented by assembly codes,
MODERN OPERATING SYSTEMS Third Edition ANDREW S
A Closer Look at Instruction Set Architectures
Overview of Instruction Set Architectures
Computer Architecture Instruction Set Architecture
CS2100 Computer Organisation
Computer Architecture Instruction Set Architecture
A Closer Look at Instruction Set Architectures
Computer Architecture and Organization Miles Murdocca and Vincent Heuring Chapter 4 – The Instruction Set Architecture.
A Closer Look at Instruction Set Architectures: Expanding Opcodes
William Stallings Computer Organization and Architecture 8th Edition
Computer Organization and Assembly Language (COAL)
THE sic mACHINE CSCI/CMPE 3334 David Egle.
BIC 10503: COMPUTER ARCHITECTURE
The Assembly Language Level
Instructions - Type and Format
Lecture 4: MIPS Instruction Set
CS170 Computer Organization and Architecture I
Chapter One: Introduction
Computer Organization and ASSEMBLY LANGUAGE
Copyright © 2014, 2010, 2007 Pearson Education, Inc.
Chapter 8 Central Processing Unit
ECEG-3202 Computer Architecture and Organization
Introduction to Micro Controllers & Embedded System Design
Chapter 9 Instruction Sets: Characteristics and Functions
A Closer Look at Instruction Set Architectures Chapter 5
Computer Instructions
ECEG-3202 Computer Architecture and Organization
Introduction to Microprocessor Programming
COMS 361 Computer Organization
Chapter 6 Programming the basic computer
Copyright © 2014, 2010, 2007 Pearson Education, Inc.
Computer Architecture and System Programming Laboratory
Chapter 10 Instruction Sets: Characteristics and Functions
Presentation transcript:

The Instruction Set Architecture Level Chapter 5 Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The ISA level is the interface between the compilers and the hardware. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Memory Models An 8-byte word in a little-endian memory. (a) Aligned. (b) Not aligned. Some machines require that words in memory be aligned. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Overview of the Pentium 4 ISA Level The Pentium 4’s primary registers. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Overview of the UltraSPARC III ISA Level (1) The UltraSPARC III’s general registers. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Overview of the UltraSPARC III ISA Level (2) Operation of the UltraSPARC III register windows. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Overview of the 8051 ISA Level (a) On-chip memory organization for the 8051. (b) Major 8051 registers. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Data Types on the Pentium 4 The Pentium 4 numeric data types. Supported types are marked with ×. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Data Types on the UltraSPARC III The UltraSPARC III numeric data types. Supported types are marked with ×. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Supported types are marked with ×. Data Types on the 8051 The 8051 numeric data types. Supported types are marked with ×. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Instruction Formats (1) Four common instruction formats: (a) Zero-address instruction. (b) One-address instruction (c) Two-address instruction. (d) Three-address instruction. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Instruction Formats (2) Some possible relationships between instruction and word length. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

An instruction with a 4-bit opcode and three 4-bit address fields. Expanding Opcodes (1) An instruction with a 4-bit opcode and three 4-bit address fields. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Expanding Opcodes (2) An expanding opcode allowing 15 three-address instructions, 14 two-address instructions, 31 one-address instructions, and 16 zero-address instructions. The fields marked xxxx, yyyy, and zzzz are 4-bit address fields. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Instruction Formats Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instruction Formats The original SPARC instruction formats. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The 8051 Instruction Formats Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Addressing An immediate instruction for loading 4 into register 1. Register Indirect Addressing: a generic assembly program for computing the sum of the elements of an array. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Indexed Addressing (1) A generic assembly program for computing the OR of Ai AND Bi for two 1024-element arrays. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

A possible representation of MOV R4,A(R2). Indexed Addressing (2) A possible representation of MOV R4,A(R2). Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reverse Polish Notation (1) Each railroad car represents one symbol in the formula to be converted from infix to reverse Polish notation. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reverse Polish Notation (2) Decision table used by the infix-to-reverse Polish notation algorithm Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reverse Polish Notation (3) Some examples of infix expressions and their reverse Polish notation equivalents. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Evaluation of Reverse Polish notation Formulas Use of a stack to evaluate a reverse Polish notation formula. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Orthogonality of Opcodes and Addressing Modes (1) A simple design for the instruction formats of a three-address machine. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Orthogonality of Opcodes and Addressing Modes (2) A simple design for the instruction formats of a two-address machine. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Addressing Modes (1) The Pentium 4 32-bit addressing modes. M[x] is the memory word at x. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Addressing Modes (2) Access to a[i]. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Discussion of Addressing Modes A comparison of addressing modes. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Loop Control (a) Test-at-the-end loop. (b) Test-at-the-beginning loop. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Device registers for a simple terminal. Input/Output (1) Device registers for a simple terminal. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

An example of programmed I/O. Input/Output (2) An example of programmed I/O. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

A system with a DMA controller. Input/Output (3) A system with a DMA controller. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Instructions (1) A selection of the Pentium 4 integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Instructions (2) A selection of the Pentium 4 integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Instructions (3) A selection of the Pentium 4 integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The Pentium 4 Instructions (4) A selection of the Pentium 4 integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instructions (1) The primary UltraSPARC III integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instructions (2) The primary UltraSPARC III integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instructions (3) The primary UltraSPARC III integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instructions (4) The primary UltraSPARC III integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instructions (5) The primary UltraSPARC III integer instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

The UltraSPARC III Instructions (6) Some simulated UltraSPARC III instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

8051 Instructions (1) The 8051 Instruction set. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

8051 Instructions (2) The 8051 Instruction set. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

8051 Instructions (3) The 8051 Instruction set. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

8051 Instructions (4) The 8051 Instruction set. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

8051 Instructions (5) The 8051 Instruction set. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Sequential Flow of Control and Branches Program counter as a function of time (smoothed). (a) Without branches. (b) With branches. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Recursive Procedures (1) Initial configuration for the Towers of Hanoi problem for five disks. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Recursive Procedures (2) The steps required to solve the Towers of Hanoi for three disks. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Recursive Procedures (3) The steps required to solve the Towers of Hanoi for three disks. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Recursive Procedures (4) A procedure for solving the Towers of Hanoi. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Recursive Procedures (5) The stack at several points during the execution of Fig. 5-42. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Coroutines (1) When a procedure is called, execution of the procedure always begins at the first statement of the procedure. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Coroutines (2) When a coroutine is resumed, execution begins at the statement where it left off the previous time, not at the beginning. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Time sequence of multiple interrupt example. Interrupts Time sequence of multiple interrupt example. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Towers of Hanoi in Pentium 4 Assembly Language (1) . . . Towers of Hanoi for Pentium 4. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Towers of Hanoi in Pentium 4 Assembly Language (2) . . . . . . Towers of Hanoi for Pentium 4. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Towers of Hanoi in Pentium 4 Assembly Language (3) . . . Towers of Hanoi for Pentium 4. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Towers of Hanoi in UltraSPARC III Assembly Language (1) . . . Towers of Hanoi for UltraSPARC III. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Towers of Hanoi in UltraSPARC III Assembly Language (2) . . . . . . Towers of Hanoi for UltraSPARC III. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Towers of Hanoi in UltraSPARC III Assembly Language (3) . . . Towers of Hanoi for UltraSPARC III. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reducing Memory References The Itanium 2’s registers. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Instruction Scheduling An IA-64 bundle contains three instructions. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reducing Conditional Branches: Predication (1) (a) An if statement. (b) Generic assembly code for a). (c) A conditional instruction. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reducing Conditional Branches: Predication (2) (a) An if statement. (b) Generic assembly code for a). (c) Conditional instruction. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0

Reducing Conditional Branches: Predication (3) (a) An if statement. (b) Generic assembly code for a). (c) Predicated instruction. Tanenbaum, Structured Computer Organization, Fifth Edition, (c) 2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0