CS222: Mid Semester Exam: Model
|
|
- Alexia Katrina Reynolds
- 5 years ago
- Views:
Transcription
1 CS222: Mid Semester Exam: Model Solution Partial Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1
2 Outline Q1 : Instruction Set & Assembly Language RISC/CISC, AL Subroutine for GCD, Stack Size Q2 : ALU Design: Floating Points Density, Rounding off Q3 : ALU Design: Efficient Constant Divider Constant divider by 500, 100 with Max input Q4 : CPU Design:Single/Multi lti Cycle DtPth DataPath Delay and ALP are given, calculate performance 2
3 Q1:a & b Q1a: What are basic differences between a RISC and a CISC machine? Uniformity it of instructions ti in RISC: all are 32 bit Simple set of operations and addressing modes : Register/Reg Imm/Imm Register based architecture with 3 address instructions Rs=Rd1+Rd2 Load/Store access the memory, arithmetic instruction don't access the memory Q2b: How operands are access in typical RISC and CISC machine? RISC: Register/Reg Imm/Imm, Load/Store access the memory, arithmeticinstruction instruction don't access the memory CISC: R R, R M, M M, R+M (Some operands are in mmeory) 3
4 Q1c Write a MIPS assembly language subroutine to compute GCD of two numbers int gcd(int x, int y) { if (y == 0) return x; } else return gcd(y, x % y); Use stack pointer and recursive call to implement this, also include a small code to track the maximum amount of stack area used by your program. 4
5 GCD Code gcd : addi $sp, $sp, 4 # create a 4 word long stack frame move $t0, $sp #simply track sp sw $ra, 0($sp) # save the return address beq $a1, $zero exit_gcd # if $a1=0 go to exit_gcd div $a0, $a1 # Lo=$a0/$a1 ;Hi=$a0 mod $a1 mfhi $t1 # $t1=hi move $a0,$a1 # $a0=$a1 move $a1,$t1 # $a1=$t1 jal gcd # go to gcd exit_g gcd: move $v0,,$ $a0 # $v0=$a0$ lw $ra, 0($sp) # restore the return address addi $sp, $sp, 4 # adjust stack pointer jr $ra # Move R1 R2 or addi R1, R2, 0 5
6 Q2: Floating point Density ( 1) S x1.mx2 (E 127) A Range of 32 bit Single precision number ±(1 F ) x 2 ( 126 to +127) Density of N bit number with m bit mantissa and e bit exponent ignoring underflow Range/numbers = 2 X ( 2 2 m x 2 (2^e 1) ) / 2 n Density of N bit number with m bit mantissa and e bit exponent without ih ignoring i underflow D= 2 X ( ( 2 2 m x 2 (2^e 1) ) (0.5x2 (2^e 1) ) )/ 2 n Density of floating points are more towards zero and sparse towards higher sides in both + and sides Capable of representation of lower number change the density. This implies toward zero we have many number in smaller ranges 6
7 Q2:Floating points Representing real number with m bit integer part and n bit fractional part. (N=m+n) In this case density will be same all over For integer case it is 2 N /2 N =1 and this case it will be 2(2 m )/2 N. No matters sign bit Rounding off using GRS bit Shift1 four time Vs Shift4 one time If any one mentioned Shift Left: will effect no change is accuracy in both the case. Get full mark 7
8 RShft1 4 times Vs RShft4 1 time Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] Value:[ ] Shift1 4times:[ ] Shift4 1times:[ ] 8
9 Q3 ] Design a circuitry for ATM machine to deliver currency to users where users will enter the amount in multiple of 100. ATM machine have to deliver the currency in the format multiple of Rs 500 and Rs 100 (Amount = 500xN xN 100 ). Maximum amount is Rs 20,000. Assume it give preference to Rs 500 currency and then Rs 100 currency. Example case if user enters Rs 1200, then it wills delivers2x500+2x100 2x500+2x100. Designtakes inputas Amountandgive outputs are N 500 and N 100. Essentially it is integer divider circuit for operations N 500 =(Amount/500) and N 100 =(Amount%500)/100. Either you can use two divider or one divider which can divide by 500 or 100. Design an efficient divider by considering these constant values instead of general value and maximum amount Rs 20,000. Generic divider (A=Q*B+R) have generic values for A and B. [Hint1: divide by 100 then by 5/ divide by 10 unit & shift, Hint2: Naïve algorithm by simple adding 500 each time till it reach the amount takes 20X2=70 unit worst case time. Hint3: X/500= X/512 + ( ( X (X/512) * 500) >=500? 1 :0 ) x/512 is shift, M*500 is M*512 M*8 M*4 ] 9
10 Divider: Thinking N 500 =(Amount/500) and N 100 =(Amount%500)/100 Hint: Divide iid by 100 then by 5, Assume BCD input Amount Multiple of 100 Remove2RightZeros BCD to Binary Divide By 5 //A=Q.B+R step1: i= 0; R = 2 x A; Q = 0; D = B do { step2: if (D R H ) R H = R H D; Q = 2 x Q + 1 else Q = 2 x Q R = 2 x R; i++ } while (i < n) A=Amount/100; B=5; Q will be 6 bit, R will be 3 bit Require a 6 bit substractor QN Q=N 500 RN R=N 100 It will take 6 Cycle to do operation 10
11 Divider: Thinking N 500 =(Amount/500) and N 100 =(Amount%500)/100 Hint: : A/500= A/512 + ( ( A (A/512) * 500) >=500? 1 :0 ) N 100 = (A%500)/100= A (A/500*500)/100, Reuse Previous one, Specialize divider with A (=100, 200,300,400,0 ) and B=100 A/B= Switch (A<<8) { case(0)=0, C(1)=1, C(3)=2,C(4)=3, C(5)=4 } Amount Multiple of 100 M ShLft 9 A/512 (A B) >=500 YES INCREMENT ShLft 9 ShLft3 ShLft2 + 3 ADDER M*500 A/500 11
12 Q4 [10] Assume the given single cycle data path for 9 instruction MIPS processor, it get converted to multi cycle li l data path by merging IM and DM, eliminating two adders and putting registers in between states. [5]Calculate execution time of given assembly program (Q4 ALP in Box given bellow) using delay given in Table for single cycle implementation and multi cycle implementation (10ns clock). [5] If ALU takes 40ns that is four clock cycle than what will beperformance of instructions in single cycle case and multi cycle case. Also calculate the performance of given assembly program. 12
13 Q4a: Single Cycle Case Components Delay Delay for Single Cycle IM 10ns Dm 10ns t lw =t i +t R +t A +t M +t R Register File 7ns Adder 10ns ALU 10ns Register 0ns BitManupualtion 0 ns Mux 0ns la $t1, A //Q4 ALP addi $s2, $t1, 400 L: lw $t2, 0($t1) add $s0, $s0, $t2,, blt $t1, $s2, L //run for 100 times //Assume la=lw, addi=add = =44ns ns Clock is Tc >= 44ns Instruction to execute Lw=101, add=201, blt=100 Timeto execute in single cycle addi $t1, $t1, 4 =( )*44ns = 402*44=17688ns 13
14 Q4a: Multi Cycle Case: with out the Assume 10ns Clock Instruction ti to execute last tr of lw instruction Lw=101, add=201, blt=100 Assume Optional tr. As RF is not used in 1 st cycle we can think of overlapping lw with any other instruction So Lw instruction takes 4 cycle instead of 5 Cycle Time to execute in multicycle =(101*4+201*4+100*2)*10 ns = 14080ns Opt Tr 14
15 Q4a: Multi Cycle Case with last tr of lw Assume 10ns Clock Instruction to execute Lw=101, add=201, blt=100 Time to execute in multicycle =(101*5+201*4+100*2)* 10ns = 1507x10ns=15070ns Opt Tr 15
16 Q4b: Adder 40ns, Single Cycle Case Components Delay IM 10ns Delay for Single Cycle Dm 10ns Register File 7ns t lw =t i +t R +t A +t M +t R Adder ALU 10ns 40ns Register 0ns BitManupualtion t 0 ns Mux 0ns = =74ns ns Clock is Tc >= 74ns Instruction to execute Lw=101, add=201, blt=100 la $t1, A //Q4 ALP Timeto execute in single addi $s2, $t1, 400 L: lw $t2, 0($t1) cycle add $s0, $s0, $t2 addi $t1, $t1, 4 =( )*74ns blt $t1, $s2, L //run for 100 times //Assume la=lw, addi=add = 402*74=29748ns 16
17 Q4b: t A =40, Multi Cycle Case: with out the last tr of lw instruction Assume 10ns Clock Instruction ti to execute Lw=101, add=201, blt=100 Assume Optional tr. As RF is not used in 1 st cycle we can think of overlapping lw with any other instruction Time to execute in multi cycle t i =40ns, t R =10ns, t + =40ns, t m =10ns tlw= =100ns, tadd= =100ns, tbeq=40+40=80ns =(101* * *80)ns = 38000ns Opt Tr 17
18 Q4b: t ALU =40ns, Multi Cycle Case with Assume 10ns Clock Instruction ti to execute Lw=101, add=201, blt=100 Time to execute in multicycle t i =40ns, t R =10ns, t + =40ns, t m =10ns m last t R of lw Opt Tr tlw= =110 ns, tadd= =100ns, tbeq=40+40=80ns =(101* * * )ns = 39010ns 18
19 19
CS222: Dr. A. Sahu. Indian Institute of Technology Guwahati
CS222: (a) Activation Record of Merge Sort (b) Architecture Space RISC/CISC Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Activation Record in Recursion: Merge
More informationCS222: MIPS Instruction Set
CS222: MIPS Instruction Set Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Previous Introduction to MIPS Instruction Set MIPS Arithmetic's Register Vs Memory, Registers
More informationCS222: Processor Design
CS222: Processor Design Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati Processor Design building blocks Outline A simple implementation: Single Cycle Data pathandcontrol
More informationCS222: Processor Design
CS222: Processor Design Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Previous Class: Floating points: Add, Sub, Mul,Div, Rounding Processor Design: Introduction
More informationMIPS Assembly Programming
COMP 212 Computer Organization & Architecture COMP 212 Fall 2008 Lecture 8 Cache & Disk System Review MIPS Assembly Programming Comp 212 Computer Org & Arch 1 Z. Li, 2008 Comp 212 Computer Org & Arch 2
More informationCISC 662 Graduate Computer Architecture. Lecture 4 - ISA MIPS ISA. In a CPU. (vonneumann) Processor Organization
CISC 662 Graduate Computer Architecture Lecture 4 - ISA MIPS ISA Michela Taufer http://www.cis.udel.edu/~taufer/courses Powerpoint Lecture Notes from John Hennessy and David Patterson s: Computer Architecture,
More informationMIPS ISA and MIPS Assembly. CS301 Prof. Szajda
MIPS ISA and MIPS Assembly CS301 Prof. Szajda Administrative HW #2 due Wednesday (9/11) at 5pm Lab #2 due Friday (9/13) 1:30pm Read Appendix B5, B6, B.9 and Chapter 2.5-2.9 (if you have not already done
More informationECE331: Hardware Organization and Design
ECE331: Hardware Organization and Design Lecture 15: Midterm 1 Review Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Basics Midterm to cover Book Sections (inclusive) 1.1 1.5
More informationFormat. 10 multiple choice 8 points each. 1 short answer 20 points. Same basic principals as the midterm
Final Review Format 10 multiple choice 8 points each Make sure to show your work Can write a description to the side as to why you think your answer is correct for possible partial credit 1 short answer
More informationCISC 662 Graduate Computer Architecture. Lecture 4 - ISA
CISC 662 Graduate Computer Architecture Lecture 4 - ISA Michela Taufer http://www.cis.udel.edu/~taufer/courses Powerpoint Lecture Notes from John Hennessy and David Patterson s: Computer Architecture,
More informationComputer Architecture. The Language of the Machine
Computer Architecture The Language of the Machine Instruction Sets Basic ISA Classes, Addressing, Format Administrative Matters Operations, Branching, Calling conventions Break Organization All computers
More informationChapter 2A Instructions: Language of the Computer
Chapter 2A Instructions: Language of the Computer Copyright 2009 Elsevier, Inc. All rights reserved. Instruction Set The repertoire of instructions of a computer Different computers have different instruction
More information2) Using the same instruction set for the TinyProc2, convert the following hex values to assembly language: x0f
CS2 Fall 28 Exam 2 Name: ) The Logisim TinyProc2 has four instructions, each using 8 bits. The instruction format is DR SR SR2 OpCode with OpCodes of for add, for subtract, and for multiply. Load Immediate
More informationSubroutines. int main() { int i, j; i = 5; j = celtokel(i); i = j; return 0;}
Subroutines Also called procedures or functions Example C code: int main() { int i, j; i = 5; j = celtokel(i); i = j; return 0;} // subroutine converts Celsius to kelvin int celtokel(int i) { return (i
More informationKing Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department
Page 1 of 13 King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department COE 301 COMPUTER ORGANIZATION ICS 233: COMPUTER ARCHITECTURE & ASSEMBLY
More information2B 52 AB CA 3E A1 +29 A B C. CS120 Fall 2018 Final Prep and super secret quiz 9
S2 Fall 28 Final Prep and super secret quiz 9 ) onvert 8-bit (2-digit) 2 s complement hex values: 4-29 inary: Hex: x29 2) onvert 8-bit 2 s complement hex to decimal: x3 inary: xe5 Decimal: 58 Note 3*6+
More informationThe MIPS Processor Datapath
The MIPS Processor Datapath Module Outline MIPS datapath implementation Register File, Instruction memory, Data memory Instruction interpretation and execution. Combinational control Assignment: Datapath
More informationECE232: Hardware Organization and Design. Computer Organization - Previously covered
ECE232: Hardware Organization and Design Part 6: MIPS Instructions II http://www.ecs.umass.edu/ece/ece232/ Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Computer Organization
More informationCS101 Introduction to computing Floating Point Numbers
CS101 Introduction to computing Floating Point Numbers A. Sahu and S. V.Rao Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Need to floating point number Number representation
More informationCENG3420 Lecture 03 Review
CENG3420 Lecture 03 Review Bei Yu byu@cse.cuhk.edu.hk 2017 Spring 1 / 38 CISC vs. RISC Complex Instruction Set Computer (CISC) Lots of instructions of variable size, very memory optimal, typically less
More informationReduced Instruction Set Computer (RISC)
Reduced Instruction Set Computer (RISC) Focuses on reducing the number and complexity of instructions of the ISA. RISC Goals RISC: Simplify ISA Simplify CPU Design Better CPU Performance Motivated by simplifying
More informationReview of instruction set architectures
Review of instruction set architectures Outline ISA and Assembly Language RISC vs. CISC Instruction Set Definition (MIPS) 2 ISA and assembly language Assembly language ISA Machine language 3 Assembly language
More informationAssembler. Lecture 8 CS301
Assembler Lecture 8 CS301 Discussion Given the following function header, int foo(int a, int b); what will be on the stack before any of the calculations in foo are performed? Assume foo() calls some other
More informationPart II Instruction-Set Architecture. Jan Computer Architecture, Instruction-Set Architecture Slide 1
Part II Instruction-Set Architecture Jan. 211 Computer Architecture, Instruction-Set Architecture Slide 1 Short review of the previous lecture Performance = 1/(Execution time) = Clock rate / (Average CPI
More informationMIPS function continued
MIPS function continued Review Functions Series of related instructions one after another in memory Called through the jal instruction Pointed to by a label like any other Returns by calling Stack Top
More informationcomp 180 Lecture 10 Outline of Lecture Procedure calls Saving and restoring registers Summary of MIPS instructions
Outline of Lecture Procedure calls Saving and restoring registers Summary of MIPS instructions Procedure Calls A procedure of a subroutine is like an agent which needs certain information to perform a
More informationHomework 4 - Solutions (Floating point representation, Performance, Recursion and Stacks) Maximum points: 80 points
Homework 4 - Solutions (Floating point representation, Performance, Recursion and Stacks) Maximum points: 80 points Directions This assignment is due Friday, Feb. th. Submit your solutions on a separate
More informationThe MIPS Instruction Set Architecture
The MIPS Set Architecture CPS 14 Lecture 5 Today s Lecture Admin HW #1 is due HW #2 assigned Outline Review A specific ISA, we ll use it throughout semester, very similar to the NiosII ISA (we will use
More informationComputer Organization MIPS Architecture. Department of Computer Science Missouri University of Science & Technology
Computer Organization MIPS Architecture Department of Computer Science Missouri University of Science & Technology hurson@mst.edu Computer Organization Note, this unit will be covered in three lectures.
More informationFunction Calling Conventions 2 CS 64: Computer Organization and Design Logic Lecture #10
Function Calling Conventions 2 CS 64: Computer Organization and Design Logic Lecture #10 Ziad Matni Dept. of Computer Science, UCSB Lecture Outline More on MIPS Calling Convention Functions calling functions
More informationCompiling Techniques
Lecture 10: An Introduction to MIPS assembly 18 October 2016 Table of contents 1 Overview 2 3 Assembly program template.data Data segment: constant and variable definitions go here (including statically
More informationECE 486/586. Computer Architecture. Lecture # 7
ECE 486/586 Computer Architecture Lecture # 7 Spring 2015 Portland State University Lecture Topics Instruction Set Principles Instruction Encoding Role of Compilers The MIPS Architecture Reference: Appendix
More informationCS/COE1541: Introduction to Computer Architecture
CS/COE1541: Introduction to Computer Architecture Dept. of Computer Science University of Pittsburgh http://www.cs.pitt.edu/~melhem/courses/1541p/index.html 1 Computer Architecture? Application pull Operating
More informationChapter 2. Instructions: Language of the Computer. Adapted by Paulo Lopes
Chapter 2 Instructions: Language of the Computer Adapted by Paulo Lopes Instruction Set The repertoire of instructions of a computer Different computers have different instruction sets But with many aspects
More informationCS232 Final Exam May 5, 2001
CS232 Final Exam May 5, 2 Name: This exam has 4 pages, including this cover. There are six questions, worth a total of 5 points. You have 3 hours. Budget your time! Write clearly and show your work. State
More informationChapter 2. Computer Abstractions and Technology. Lesson 4: MIPS (cont )
Chapter 2 Computer Abstractions and Technology Lesson 4: MIPS (cont ) Logical Operations Instructions for bitwise manipulation Operation C Java MIPS Shift left >>> srl Bitwise
More informationStored Program Concept. Instructions: Characteristics of Instruction Set. Architecture Specification. Example of multiple operands
Stored Program Concept Instructions: Instructions are bits Programs are stored in memory to be read or written just like data Processor Memory memory for data, programs, compilers, editors, etc. Fetch
More informationReduced Instruction Set Computer (RISC)
Reduced Instruction Set Computer (RISC) Reduced Instruction Set Computer (RISC) Focuses on reducing the number and complexity of instructions of the machine. Reduced number of cycles needed per instruction.
More informationStack Memory. item (16-bit) to be pushed. item (16-bit) most recent
CSE 378 Winter 1998 Machine Organization and Assembly Language Programming Midterm Friday February 13th NAME : Do all your work on these pages. Do not add any pages. Use back pages if necessary. Show your
More informationComputer Organization MIPS ISA
CPE 335 Computer Organization MIPS ISA Dr. Iyad Jafar Adapted from Dr. Gheith Abandah Slides http://www.abandah.com/gheith/courses/cpe335_s08/index.html CPE 232 MIPS ISA 1 (vonneumann) Processor Organization
More informationCS/COE 0447 Example Problems for Exam 2 Fall 2010
CS/COE 0447 Example Problems for Exam 2 Fall 2010 1. This time, consider a non-leaf function lisa. This function has no arugments or return value. The return address is on the stack at offset 12 and the
More informationECE331: Hardware Organization and Design
ECE331: Hardware Organization and Design Lecture 8: Procedures (cont d), Binary Numbers and Adders Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Review: Procedure Calling Steps
More informationUniversity of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Science
University of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Science Spring 2000 Prof. Bob Brodersen Midterm 1 March 15, 2000 CS152: Computer Architecture
More informationCSE A215 Assembly Language Programming for Engineers
CSE A215 Assembly Language Programming for Engineers Lecture 7 MIPS vs. ARM (COD Chapter 2 and Exam #1 Review) October 12, 2012 Sam Siewert Comparison of MIPS32 and ARM Instruction Formats and Addressing
More informationMark Redekopp, All rights reserved. EE 357 Unit 11 MIPS ISA
EE 357 Unit 11 MIPS ISA Components of an ISA 1. Data and Address Size 8-, 16-, 32-, 64-bit 2. Which instructions does the processor support SUBtract instruc. vs. NEGate + ADD instrucs. 3. Registers accessible
More informationMath 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro
Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 MIPS Intro Adapted from slides developed for: Mary J. Irwin PSU CSE331 Dave Patterson s UCB CS152 M230 L09.1 Smith Spring 2008 MIPS
More information2. Define Instruction Set Architecture. What are its two main characteristics? Be precise!
Chapter 1: Computer Abstractions and Technology 1. Assume two processors, a CISC processor and a RISC processor. In order to run a particular program, the CISC processor must execute 10 million instructions
More informationImplement a C language function that computes the factorial of a number, recursively, according to the following prototype:
McGill University Department of Electrical and Computer Engineering ECSE-221 Introduction to Computer Engineering Assignment 5 Assembly and Datapaths Due Date: Monday, November 30 th 2009 at 11:59PM Question
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware 4.1 Introduction We will examine two MIPS implementations
More informationICS DEPARTMENT ICS 233 COMPUTER ARCHITECTURE & ASSEMBLY LANGUAGE. Midterm Exam. First Semester (141) Time: 1:00-3:30 PM. Student Name : _KEY
Page 1 of 14 Nov. 22, 2014 ICS DEPARTMENT ICS 233 COMPUTER ARCHITECTURE & ASSEMBLY LANGUAGE Midterm Exam First Semester (141) Time: 1:00-3:30 PM Student Name : _KEY Student ID. : Question Max Points Score
More informationECE 30 Introduction to Computer Engineering
ECE 30 Introduction to Computer Engineering Study Problems, Set #3 Spring 2015 Use the MIPS assembly instructions listed below to solve the following problems. arithmetic add add sub subtract addi add
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationCOMP 303 Computer Architecture Lecture 3. Comp 303 Computer Architecture
COMP 303 Computer Architecture Lecture 3 Comp 303 Computer Architecture 1 Supporting procedures in computer hardware The execution of a procedure Place parameters in a place where the procedure can access
More informationEE 361 University of Hawaii Fall
C functions Road Map Computation flow Implementation using MIPS instructions Useful new instructions Addressing modes Stack data structure 1 EE 361 University of Hawaii Implementation of C functions and
More informationControl Instructions. Computer Organization Architectures for Embedded Computing. Thursday, 26 September Summary
Control Instructions Computer Organization Architectures for Embedded Computing Thursday, 26 September 2013 Many slides adapted from: Computer Organization and Design, Patterson & Hennessy 4th Edition,
More informationControl Instructions
Control Instructions Tuesday 22 September 15 Many slides adapted from: and Design, Patterson & Hennessy 5th Edition, 2014, MK and from Prof. Mary Jane Irwin, PSU Summary Previous Class Instruction Set
More informationThe Single Cycle Processor
EECS 322 Computer Architecture The Single Cycle Processor Instructor: Francis G. Wolff wolff@eecs.cwru.edu Case Western Reserve University This presentation uses powerpoint animation: please viewshow CWRU
More informationIntroduction to MIPS Processor
Introduction to MIPS Processor The processor we will be considering in this tutorial is the MIPS processor. The MIPS processor, designed in 1984 by researchers at Stanford University, is a RISC (Reduced
More informationName: University of Michigan uniqname: (NOT your student ID number!)
The University of Michigan - Department of EECS EECS370 Introduction to Computer Organization Midterm Exam 1 October 22, 2009 Name: University of Michigan uniqname: (NOT your student ID number!) Open book,
More informationCOE608: Computer Organization and Architecture
Add on Instruction Set Architecture COE608: Computer Organization and Architecture Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer Engineering Ryerson University Overview More
More informationNAME: 1. (2) What is a transistor?
NAME: CS3411 Test #1, 6 September 2007. You have 1h15min (one css period). Answer all questions. The number of points (out of 100) each problem is worth is shown in (parentheses). Be as concise as you
More informationTopic Notes: MIPS Instruction Set Architecture
Computer Science 220 Assembly Language & Comp. Architecture Siena College Fall 2011 Topic Notes: MIPS Instruction Set Architecture vonneumann Architecture Modern computers use the vonneumann architecture.
More informationThe Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
The Processor: Datapath and Control Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction CPU performance factors Instruction count Determined
More informationChapter 2. Instructions:
Chapter 2 1 Instructions: Language of the Machine More primitive than higher level languages e.g., no sophisticated control flow Very restrictive e.g., MIPS Arithmetic Instructions We ll be working with
More informationCS31001 COMPUTER ORGANIZATION AND ARCHITECTURE. Debdeep Mukhopadhyay, CSE, IIT Kharagpur. Instructions and Addressing
CS31001 COMPUTER ORGANIZATION AND ARCHITECTURE Debdeep Mukhopadhyay, CSE, IIT Kharagpur Instructions and Addressing 1 ISA vs. Microarchitecture An ISA or Instruction Set Architecture describes the aspects
More informationGrading: 3 pts each part. If answer is correct but uses more instructions, 1 pt off. Wrong answer 3pts off.
Department of Electrical and Computer Engineering University of Wisconsin Madison ECE 552 Introductions to Computer Architecture Homework #2 (Suggested Solution) 1. (10 points) MIPS and C program translations
More informationIntroduction to Assembler Language Programming
Introduction to Assembler Language Programming Fibonacci # Compute first twelve Fibonacci numbers and put in array, then print.data fibs:.word 0 : 12 # "array" of 12 words to contain fib values size:.word
More informationOverview. Introduction to the MIPS ISA. MIPS ISA Overview. Overview (2)
Introduction to the MIPS ISA Overview Remember that the machine only understands very basic instructions (machine instructions) It is the compiler s job to translate your high-level (e.g. C program) into
More informationInstructions: Language of the Computer
CS359: Computer Architecture Instructions: Language of the Computer Yanyan Shen Department of Computer Science and Engineering 1 The Language a Computer Understands Word a computer understands: instruction
More information1/26/2014. Previously. CSE 2021: Computer Organization. The Load/Store Family (1) Memory Organization. The Load/Store Family (2)
CSE 202: Computer Organization Lecture-4 Code Translation-2 Memory, Data transfer instructions, Data segment,, Procedures, Stack Shakil M. Khan (adapted from Prof. Roumani) Previously Registers $s0 - $s7,
More informationSystems Architecture I
Systems Architecture I Topics Assemblers, Linkers, and Loaders * Alternative Instruction Sets ** *This lecture was derived from material in the text (sec. 3.8-3.9). **This lecture was derived from material
More informationCS3350B Computer Architecture Winter 2015
CS3350B Computer Architecture Winter 2015 Lecture 5.5: Single-Cycle CPU Datapath Design Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b [Adapted from lectures on Computer Organization and Design, Patterson
More information101 Assembly. ENGR 3410 Computer Architecture Mark L. Chang Fall 2009
101 Assembly ENGR 3410 Computer Architecture Mark L. Chang Fall 2009 What is assembly? 79 Why are we learning assembly now? 80 Assembly Language Readings: Chapter 2 (2.1-2.6, 2.8, 2.9, 2.13, 2.15), Appendix
More informationMIPS ISA. 1. Data and Address Size 8-, 16-, 32-, 64-bit 2. Which instructions does the processor support
Components of an ISA EE 357 Unit 11 MIPS ISA 1. Data and Address Size 8-, 16-, 32-, 64-bit 2. Which instructions does the processor support SUBtract instruc. vs. NEGate + ADD instrucs. 3. Registers accessible
More informationCSEN 601: Computer System Architecture Summer 2014
CSEN 601: Computer System Architecture Summer 2014 Practice Assignment 5 Solutions Exercise 5-1: (Midterm Spring 2013) a. What are the values of the control signals (except ALUOp) for each of the following
More informationComputer Architecture
Computer Architecture Chapter 2 Instructions: Language of the Computer Fall 2005 Department of Computer Science Kent State University Assembly Language Encodes machine instructions using symbols and numbers
More informationProblem 3: Theoretical Questions: Complete the midterm exam taken from a previous year attached at the end of the assignment.
CSE 2021: Computer Organization Assignment # 1: MIPS Programming Due Date: October 25, 2010 Please note that a short quiz based on Assignment 1 will be held in class on October 27, 2010 to assess your
More informationCS3350B Computer Architecture
CS3350B Computer Architecture Winter 2015 Lecture 4.1: MIPS ISA: Introduction Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b [Adapted d from lectures on Computer Organization and Design, Patterson & Hennessy,
More informationToday s topics. MIPS operations and operands. MIPS arithmetic. CS/COE1541: Introduction to Computer Architecture. A Review of MIPS ISA.
Today s topics CS/COE1541: Introduction to Computer Architecture MIPS operations and operands MIPS registers Memory view Instruction encoding A Review of MIPS ISA Sangyeun Cho Arithmetic operations Logic
More informationCS311 Lecture: CPU Implementation: The Register Transfer Level, the Register Set, Data Paths, and the ALU
CS311 Lecture: CPU Implementation: The Register Transfer Level, the Register Set, Data Paths, and the ALU Last revised October 15, 2007 Objectives: 1. To show how a CPU is constructed out of a regiser
More informationChapter 4. The Processor. Computer Architecture and IC Design Lab
Chapter 4 The Processor Introduction CPU performance factors CPI Clock Cycle Time Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS
More informationCS 61C Fall 2016 Guerrilla Section 4: MIPS CPU (Datapath & Control)
CS 61C Fall 2016 Guerrilla Section 4: MIPS CPU (Datapath & Control) 1) If this exam were a CPU, you d be halfway through the pipeline (Sp15 Final) We found that the instruction fetch and memory stages
More informationFunction Calling Conventions 1 CS 64: Computer Organization and Design Logic Lecture #9
Function Calling Conventions 1 CS 64: Computer Organization and Design Logic Lecture #9 Ziad Matni Dept. of Computer Science, UCSB Lecture Outline More on MIPS Calling Convention Functions calling functions
More informationECE468 Computer Organization & Architecture. MIPS Instruction Set Architecture
ECE468 Computer Organization & Architecture MIPS Instruction Set Architecture ECE468 Lec4.1 MIPS R2000 / R3000 Registers 32-bit machine --> Programmable storage 2^32 x bytes 31 x 32-bit GPRs (R0 = 0) 32
More information2.7 Supporting Procedures in hardware. Why procedures or functions? Procedure calls
2.7 Supporting Procedures in hardware Why procedures or functions? Procedure calls Caller: Callee: Proc save registers save more registers set up parameters do function call procedure set up results get
More informationCSE 141 Computer Architecture Summer Session Lecture 3 ALU Part 2 Single Cycle CPU Part 1. Pramod V. Argade
CSE 141 Computer Architecture Summer Session 1 2004 Lecture 3 ALU Part 2 Single Cycle CPU Part 1 Pramod V. Argade Reading Assignment Announcements Chapter 5: The Processor: Datapath and Control, Sec. 5.3-5.4
More informationChapter 3. Instructions:
Chapter 3 1 Instructions: Language of the Machine More primitive than higher level languages e.g., no sophisticated control flow Very restrictive e.g., MIPS Arithmetic Instructions We ll be working with
More informationECE331: Hardware Organization and Design
ECE331: Hardware Organization and Design Lecture 35: Final Exam Review Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Material from Earlier in the Semester Throughput and latency
More informationELEC / Computer Architecture and Design Fall 2013 Instruction Set Architecture (Chapter 2)
ELEC 5200-001/6200-001 Computer Architecture and Design Fall 2013 Instruction Set Architecture (Chapter 2) Victor P. Nelson, Professor & Asst. Chair Vishwani D. Agrawal, James J. Danaher Professor Department
More informationMIPS Processor Overview
MIPS Processor Cptr280 Dr Curtis Nelson MIPS Processor Overview Hardware Design philosophy Architecture Software Assembly language program structure QTSpim simulator Example programs 1 MIPS Processor Power
More informationRui Wang, Assistant professor Dept. of Information and Communication Tongji University.
Instructions: ti Language of the Computer Rui Wang, Assistant professor Dept. of Information and Communication Tongji University it Email: ruiwang@tongji.edu.cn Computer Hierarchy Levels Language understood
More informationComputer Architecture. MIPS Instruction Set Architecture
Computer Architecture MIPS Instruction Set Architecture Instruction Set Architecture An Abstract Data Type Objects Registers & Memory Operations Instructions Goal of Instruction Set Architecture Design
More informationInstruction Set Architecture. "Speaking with the computer"
Instruction Set Architecture "Speaking with the computer" The Instruction Set Architecture Application Compiler Instr. Set Proc. Operating System I/O system Instruction Set Architecture Digital Design
More information5/17/2012. Recap from Last Time. CSE 2021: Computer Organization. The RISC Philosophy. Levels of Programming. Stored Program Computers
CSE 2021: Computer Organization Recap from Last Time load from disk High-Level Program Lecture-2 Code Translation-1 Registers, Arithmetic, logical, jump, and branch instructions MIPS to machine language
More informationRecap from Last Time. CSE 2021: Computer Organization. Levels of Programming. The RISC Philosophy 5/19/2011
CSE 2021: Computer Organization Recap from Last Time load from disk High-Level Program Lecture-3 Code Translation-1 Registers, Arithmetic, logical, jump, and branch instructions MIPS to machine language
More informationCS 61C Summer 2016 Guerrilla Section 4: MIPS CPU (Datapath & Control)
CS 61C Summer 2016 Guerrilla Section 4: MIPS CPU (Datapath & Control) 1) If this exam were a CPU, you d be halfway through the pipeline (Sp15 Final) We found that the instruction fetch and memory stages
More informationLecture 14: Recap. Today s topics: Recap for mid-term No electronic devices in midterm
Lecture 14: Recap Today s topics: Recap for mid-term No electronic devices in midterm 1 Modern Trends Historical contributions to performance: Better processes (faster devices) ~20% Better circuits/pipelines
More informationSPIM Instruction Set
SPIM Instruction Set This document gives an overview of the more common instructions used in the SPIM simulator. Overview The SPIM simulator implements the full MIPS instruction set, as well as a large
More informationChapter 1. Computer Abstractions and Technology. Lesson 3: Understanding Performance
Chapter 1 Computer Abstractions and Technology Lesson 3: Understanding Performance Manufacturing ICs 1.7 Real Stuff: The AMD Opteron X4 Yield: proportion of working dies per wafer Chapter 1 Computer Abstractions
More informationProgrammable Machines
Programmable Machines Silvina Hanono Wachman Computer Science & Artificial Intelligence Lab M.I.T. Quiz 1: next week Covers L1-L8 Oct 11, 7:30-9:30PM Walker memorial 50-340 L09-1 6.004 So Far Using Combinational
More information