ECE 4436ECE 5367 ISA I. ECE 4436ECE 5367 CPU = Seconds= Instructions x Cycles x Seconds Time Program Program Instruction Cycle CPU = Seconds= Instructions.

Slides:



Advertisements
Similar presentations
Lecture 5: MIPS Instruction Set
Advertisements

1 ECE462/562 ISA and Datapath Review Ali Akoglu. 2 Instruction Set Architecture A very important abstraction –interface between hardware and low-level.
1 ECE369 ECE369 Chapter 2. 2 ECE369 Instruction Set Architecture A very important abstraction –interface between hardware and low-level software –standardizes.
ELEN 468 Advanced Logic Design
Chapter 2 Instructions: Language of the Computer
Datorteknik DatapathControl bild 1 Designing a Single Cycle Datapath & Datapath Control.
Comp Sci instruction encoding 1 Instruction Encoding MIPS machine language Binary encoding of instructions MIPS instruction = 32 bits Three instruction.
Instructions Set Bo Cheng Instruction Set Design An Instruction Set provides a functional description of a processor. It is the visible.
361 div.1 Computer Architecture ECE 361 Lecture 7: ALU Design : Division.
MIPS Architecture CPSC 321 Computer Architecture Andreas Klappenecker.
331 W02.1Spring 05 Announcements  HW1 is due on this Friday  Appendix A (on CD) is very helpful to HW1.
1 Lecture 2: MIPS Instruction Set Today’s topic:  MIPS instructions Reminder: sign up for the mailing list cs3810 Reminder: set up your CADE accounts.
The Processor 2 Andreas Klappenecker CPSC321 Computer Architecture.
CPEN Digital System Design Chapter 10 – Instruction SET Architecture (ISA) © Logic and Computer Design Fundamentals, 4 rd Ed., Mano Prentice Hall.
331 W02.1Fall 2003 Announcements  HW1 is due on this Friday (Sept 12 th )  Appendix A is very helpful to HW1. Check out system calls on Page A-48. 
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
Processor I CPSC 321 Andreas Klappenecker. Midterm 1 Thursday, October 7, during the regular class time Covers all material up to that point History MIPS.
CS 300 – Lecture 6 Intro to Computer Architecture / Assembly Language Instructions.
83 Assembly Language Readings: Chapter 2 ( , 2.8, 2.9, 2.13, 2.15), Appendix A.10 Assembly language Simple, regular instructions – building blocks.
Computer Architecture Instruction Set Architecture Lynn Choi Korea University.
COSC 3430 L08 Basic MIPS Architecture.1 COSC 3430 Computer Architecture Lecture 08 Processors Single cycle Datapath PH 3: Sections
1 Computer Architecture COSC 3430 Lecture 3: Instructions.
Lecture 8. MIPS Instructions #2 – Memory Access (Load/Store) Instructions Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer.
Lecture 4. MIPS Instructions #2 Memory Access (Load/Store) Instructions Prof. Taeweon Suh Computer Science Education Korea University ECM534 Advanced Computer.
Computer Organization and Architecture Instructions: Language of the Machine Hennessy Patterson 2/E chapter 3. Notes are available with photocopier 24.
Computer Architecture CSE 3322 Lecture 2 NO CLASS MON Sept 1 Course WEB SITE crystal.uta.edu/~jpatters.
CDA 3101 Fall 2013 Introduction to Computer Organization
Computer Architecture (CS 207 D) Instruction Set Architecture ISA.
Computer Organization & Programming Chapter 6 Single Datapath CPU Architecture.
1 A single-cycle MIPS processor  An instruction set architecture is an interface that defines the hardware operations which are available to software.
MS108 Computer System I Lecture 3 ISA Prof. Xiaoyao Liang 2015/3/13 1.
Adapted from Computer Organization and Design, Patterson & Hennessy, UCB ECE232: Hardware Organization and Design Part 5: MIPS Instructions I
Computer Organization Rabie A. Ramadan Lecture 3.
Chapter 2 — Instructions: Language of the Computer — 1 Memory Operands Main memory used for composite data – Arrays, structures, dynamic data To apply.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 7, 8 Instruction Set Architecture.
COM181 Computer Hardware Lecture 6: The MIPs CPU.
CMPUT Computer Organization and Architecture I1 CMPUT229 - Fall 2003 Topic3: Instructions, The Language of the Machine José Nelson Amaral.
Computer Architecture Lecture 6.  Our implementation of the MIPS is simplified memory-reference instructions: lw, sw arithmetic-logical instructions:
Computer Architecture & Operations I
Computer Architecture & Operations I
Computer Architecture Instruction Set Architecture
COMPUTER ARCHITECTURE & OPERATIONS I
Instruction Set Architecture
COMP541 Datapaths I Montek Singh Mar 28, 2012.
Instructions: Language of the Computer
Introduction CPU performance factors
ELEN 468 Advanced Logic Design
Computer Architecture (CS 207 D) Instruction Set Architecture ISA
Super Quick Architecture Review
Appendix A Classifying Instruction Set Architecture
Lecture 4: MIPS Instruction Set
Systems Architecture I (CS ) Lecture 5: MIPS Instruction Set*
CSCI206 - Computer Organization & Programming
The University of Adelaide, School of Computer Science
MIPS Instruction Encoding
September 24 Test 1 review More programming
MIPS Instruction Encoding
Chapter 2 Instructions: Language of the Computer
Instruction encoding The ISA defines Format = Encoding
COMS 361 Computer Organization
Computer Architecture
September 17 Test 1 pre(re)view Fang-Yi will demonstrate Spim
Instruction encoding The ISA defines Format = Encoding
COMP541 Datapaths I Montek Singh Mar 18, 2010.
COMS 361 Computer Organization
Instruction encoding The ISA defines Format = Encoding
Instruction encoding The ISA defines Format = Encoding
CS352H Computer Systems Architecture
Systems Architecture I (CS ) Lecture 5: MIPS Instruction Set*
The Processor: Datapath & Control.
Presentation transcript:

ECE 4436ECE 5367 ISA I

ECE 4436ECE 5367 CPU = Seconds= Instructions x Cycles x Seconds Time Program Program Instruction Cycle CPU = Seconds= Instructions x Cycles x Seconds Time Program Program Instruction Cycle

ECE 4436ECE 5367 CPU time = ClockCycleTime *  CPI * I i = 1 n ii CPI =  CPI * F where F = I i = 1 n i i ii Instruction Count "instruction frequency" Invest Resources where time is Spent! CPI ave = (CPU Time * Clock Rate) / Instruction Count = Clock Cycles / Instruction Count “Average cycles per instruction” CPI

ECE 4436ECE 5367 MIPS Assembly Language CPU I/O Memory ControlDatapath

ECE 4436ECE 5367 MIPS Assembly Language CPU Datapath (extremely simplified) Registers ALU Operand 1 Operand 2 Operation Result

ECE 4436ECE 5367 Basic Architecture Model

ECE 4436ECE 5367 Software Layer

ECE 4436ECE 5367 MIPS Assembly Language Notation

ECE 4436ECE 5367 Register (32 bits)

ECE 4436ECE 5367 Memory Organization 32 bits register  8 bits memory how do byte addresses map onto words? Can a word be placed on any byte boundary?

ECE 4436ECE 5367 Addressing Objects: Endianess and Alignment Big Endian: address of most significant byte = word address (xx00 = Big End of word) –IBM 360/370, Motorola 68k, MIPS, Sparc, HP PA Little Endian: address of least significant byte = word address (xx00 = Little End of word) –Intel 80x86, DEC Vax, DEC Alpha (Windows NT) msb lsb big endian byte 0 Alignment: require that objects fall on address that is multiple of their size Aligned Not Aligned little endian byte 0

ECE 4436ECE 5367 Executing an Assembly Instruction

ECE 4436ECE 5367 Register File Execution

ECE 4436ECE 5367 Register File Execution

ECE 4436ECE 5367 Register File Execution

ECE 4436ECE 5367 Data Access

ECE 4436ECE 5367 Memory Load Operation

ECE 4436ECE 5367 Loading data from Memory

ECE 4436ECE 5367 Loading data from Memory

ECE 4436ECE 5367 MIPS Fields op – operation to be performed rs – first source operand rt – second source operand rd – register destination operand, gets the result of the operation. shamt – shift amount – used in shift instructions. funct – selects specific operation of opcode in op field – R-type……..

ECE 4436ECE 5367 MIPS Assembly Language: Instruction Set 3 different instruction formats –I-type, –R-type, & –J-type (we’ll discuss first two for now)

ECE 4436ECE 5367 R-type instructions R-type –Three register operands –Arithmetic & logical opcodes –Format: –Rd = destination operand (output) –Rs = source operand (input) –Rt = source operand (input) 6 bits5 bits 6 bits OpcodeRsRtRdshamtfunction

ECE 4436ECE 5367 R-type contd.. R-type: 6 fields R-type at work –ADD$3,$1,$2 –SUB$7,$4,$5 6 bits5 bits 6 bits OpcodeRsRtRdshamtfunction Page 90

ECE 4436ECE 5367 More R-type examples…… jr $31 sltu $3, $8, $9 mult $5, $6

ECE 4436ECE 5367 I-type instructions. I-type –Two registers and an immediate –Format: –Rt = destination operand –Rs = source operand –Immediate = a constant, also a source operand Note: immediate operand must fit into 16 bits! (Why?) 6 bits5 bits 6 bits OpcodeRsRtaddress

ECE 4436ECE 5367 I-type instructions contd… I-type: 4 fields I-type at work –ADDI$2,$1,32 –LUI $7,OxABCD 6 bits5 bits 6 bits OpcodeRsRtaddress !Loads & stores are the data transfer instructions!

ECE 4436ECE 5367 More I-type examples lw $5, 60($4) sw $5, 60($4)