Instruction Set Architecture

Slides:



Advertisements
Similar presentations
Henk Corporaal TUEindhoven 2011
Advertisements

Goal: Write Programs in Assembly
Instruction Set-Intro
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.
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 5 MIPS ISA & Assembly Language Programming.
Systems Architecture Lecture 5: MIPS Instruction Set
Chapter 2 Instructions: Language of the Computer
Chapter 2.
Chapter 2 Instructions: Language of the Computer Part III.
1 Warning! Unlike the previous lessons, for today's lesson you will have to listen, think and even understand (for the exam, of course). Individuals with.
Instructions Set Bo Cheng Instruction Set Design An Instruction Set provides a functional description of a processor. It is the visible.
MIPS Architecture CPSC 321 Computer Architecture Andreas Klappenecker.
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.
Lecture 5 Sept 14 Goals: Chapter 2 continued MIPS assembly language instruction formats translating c into MIPS - examples.
ECE 4436ECE 5367 ISA I. ECE 4436ECE 5367 CPU = Seconds= Instructions x Cycles x Seconds Time Program Program Instruction Cycle CPU = Seconds= Instructions.
CS 300 – Lecture 6 Intro to Computer Architecture / Assembly Language Instructions.
MIPS Instruction Set Advantages
ISA-2 CSCE430/830 MIPS: Case Study of Instruction Set Architecture CSCE430/830 Computer Architecture Instructor: Hong Jiang Courtesy of Prof. Yifeng Zhu.
IT253: Computer Organization Lecture 4: Instruction Set Architecture Tonga Institute of Higher Education.
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
Lecture 4: MIPS Instruction Set Reminders: –Homework #1 posted: due next Wed. –Midterm #1 scheduled Friday September 26 th, 2014 Location: TODD 430 –Midterm.
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.
Computer Architecture (CS 207 D) Instruction Set Architecture ISA.
Computer Organization & Programming Chapter 6 Single Datapath CPU Architecture.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /08/2013 Lecture 10: MIPS Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER SCIENCE CENTRAL STATE.
CHAPTER 6 Instruction Set Architecture 12/7/
Computer Architecture CSE 3322 Lecture 3 Assignment: 2.4.1, 2.4.4, 2.6.1, , Due 2/3/09 Read 2.8.
Chapter 2 CSF 2009 The MIPS Assembly Language. Stored Program Computers Instructions represented in binary, just like data Instructions and data stored.
Computer Organization Rabie A. Ramadan Lecture 3.
EET 4250 Instruction Representation & Formats Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Penn.
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.
CHAPTER 2 Instruction Set Architecture 3/21/
Computer Architecture & Operations I
Computer Architecture & Operations I
MIPS Assembly.
MIPS Instruction Set Advantages
COMPUTER ARCHITECTURE & OPERATIONS I
Morgan Kaufmann Publishers
RISC Concepts, MIPS ISA Logic Design Tutorial 8.
The University of Adelaide, School of Computer Science
Computer Architecture (CS 207 D) Instruction Set Architecture ISA
Computer Architecture & Operations I
MIPS Assembly.
Super Quick Architecture Review
CS170 Computer Organization and Architecture I
CSCI206 - Computer Organization & Programming
Instructions - Type and Format
Lecture 4: MIPS Instruction Set
Systems Architecture I (CS ) Lecture 5: MIPS Instruction Set*
CSCI206 - Computer Organization & Programming
Henk Corporaal TUEindhoven 2010
Computer Architecture & Operations I
MIPS Instruction Encoding
The University of Adelaide, School of Computer Science
September 24 Test 1 review More programming
MIPS Instruction Encoding
Computer Architecture
September 17 Test 1 pre(re)view Fang-Yi will demonstrate Spim
COMP541 Datapaths I Montek Singh Mar 18, 2010.
COMS 361 Computer Organization
UCSD ECE 111 Prof. Farinaz Koushanfar Fall 2018
COMS 361 Computer Organization
Instructions in Machine Language
COMS 361 Computer Organization
CPU Structure CPU must:
Systems Architecture I (CS ) Lecture 5: MIPS Instruction Set*
Instruction Set Architecture
Presentation transcript:

Instruction Set Architecture Chapter 2 6/12/2018

Topics for Discussion Instruction set architecture Stored program computer Interface between software and hardware Instructions Design principles Instructions, registers, and memory Simple instructions types and formats 6/12/2018

Computer Organization Is the study of major components of a modern digital computer, their organization and assembly, and the architecture and inner workings of these components. It also deals with design principles for a good performance. 6/12/2018

Central Processing Unit (CPU) Example: Intel 80386 80486Pentium Main components of a CPU are datapath and control unit Datapath is the component of the processor that performs (arithmetic) operations Control is the component of the processor that commands the datapath, memory , IO device according to instruction of the program Cache provides but fast memory that acts as a buffer for slower /larger memory outside the chip. 6/12/2018

Importance of ISA How are high level language (HLL) translated to the language of the hardware. How does hardware execute instructions? What is the interface between hardware and software? How does the software instruct (or control) the hardware to perform the needed function? What determines the performance of a program? How can a program improve performance? Original program, its translation, effectiveness of the hardware, other special techniques such as pipelining What techniques can by hardware designers to improve performance? 6/12/2018

Instruction set Architecture An important abstraction between hardware and software. Lets discuss this concept. Computer operation is historically called an instruction. Instructions stored similar to data in a memory give rise to an important foundational concept called the stored program computer. 6/12/2018

Consider a C language statement: C to MIPS instruction Consider a C language statement: f = (g + h) – ( i + j) Compile add t0, g, h add t1,i, j sub f,t0,t1 Design principle 1: simplicity favors regularity In the above example: all instructions have 3 operands 6/12/2018

Register set Where do the data get stored in the CPU? Named locations called registers? How many? Typical small compared to memory sizes. Registers: MIPS-32 has 32 register Denoted by s0, s1, etc. $s0, $s5 Temporary registers are denoted by $t0, $t1 6/12/2018

C to MIPS instruction (Take 2 with registers) Consider a C language statement: f = (g + h) – ( i + j) Compile add $t0, $s1, $s2 add $t1,$s3,$s4 sub $s0,$t0,$t1 Design principle 2: Smaller is faster Memory available as registers is 32 in number 6/12/2018

Memory Operations Data and instructions are stored in memory outside the CPU. Data is loaded from memory and stored in memory. Load word (lw) Store word (sw) 32 resgiters 230 words or 232 addressable locations or bytes 6/12/2018

C language to Memory instructions g = h + A[8] Compile lw $t0, 32($s3) add $s1, $s2, $t0 sw $t0,48($s3) Base register concept: base register is $s3 and Offset of 32 for 8 words and offset of 48 for 12 words 6/12/2018

Instruction Types add and sub lw and sw Now lets see how we can deal with a constant value data. Consider C language statement: x = x +4 Too complex: lw $t0, AddrConst($s1) add $s3,$s3,$t0 Instead how about: addi $s3,$s3,4 Design principle 3: Make the common case fast. Example “addi” instead of add an constant from memory. 6/12/2018

Instruction format –R type Op 6 bits RS 5 bits Rt Rd Shamt funct Can we use the same format for addi and add? Then we will Have only 11 bit constant 6/12/2018

Instruction format – I type Op 6 bits Rs 5 bits Rt Constant or address 16 bits Design principle 4: good design demands good compromise; Keep instruction length same needing different formats ; I and R type are examples 6/12/2018

Summary Figure 2.1 very nicely summarizes all we learned so far. MIPS operands MIPS memory MIPS Assembly language MIPS instructions type and formats And of course, the four design principles. 6/12/2018