Student # (use if pages get separated)

Size: px
Start display at page:

Download "Student # (use if pages get separated)"

Transcription

1 UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING FINAL EXAMINATION, APRIL 2016 DURATION 2 and ½ hrs Second Year - ECE ECE243H1 S COMPUTER ORGANIZATION Exam Type: D Examiners P. Anderson, H. Timorabadi Instructions This is a type D exam. You are allowed to use any printed/hand-written material including your course notes. You may use a University-approved non-programmable calculator. You have 2.5 hours. Last Name (Print Clearly): First Name: Student Number: Question 1 /4 Question 2 /9 Question 3 /6 Question 4 /14 Question 5 /24 Question 6 /20 Question 7 /20 Question 8 /12 Total /109 General Instructions: State your assumptions. Show your work. Comment your code. Solutions that are judged significantly inefficient or are not legible will lose some marks. The exam is printed on two sides of the page. The last page and the back of this one are blank and can be used for answers or calculations. Make your answers clear. There are 8 questions and a total of 109 marks. There are 7 pieces of paper in the exam, this one included, printed both sides. The page numbering is to 14. ECE243 Computer Organization Pg 1 of 11 Spring 2016

2 Question 1 Basic Assembly [4 Marks] Assume we have defined the following:.equ D, 4.equ H, 0x8.data W:.word 0x1000 Will the instructions at the right compile? instruction addi r4, r3, r2 addi r4, r3, D ldw r2, r3(r4) ldw r2, H(r4) ldw r2, 0(W) stw D, 0(r2) yes/no? N Y N Y N N Question 2 -- Devices and interrupts [9 marks] Suppose you had the following program fragment that enables interrupts then goes into an infinite loop: 244: call ENABLE_INTERRUPTS_FOR_IO_DEVICES 248: movi r2, 4 24c: wrctl ienable, r2 Register Value or unknown 250: movi r2, 1 pc 0x20 254: wrctl status, r2 # Enable interrupts r0 0x00 258: LOOP: br LOOP # A loop r1 unknown 25c: movi r1, 0x : br LOOP 264:... r2 sp (r27) ea (r29) 0x01 unknown 0x25C Before starting the program you set a breakpoint at the exception address (0x20). The first interrupt comes after a couple of seconds of execution. What is the state of the system at the breakpoint? Fill in the boxes in the rightmost column of the first ra (r31) 0x248 status (ctl0) 0x00 estatus (ctl1) 0x01 ienable (ctl3) 0x04 ipending (ctl4) 0x04 table at the top of this question. Write unknown if there is not enough information to determine the value of a register. Notes: No issue if don t extend with zeros. Can do decimal or hex as long as the value is obvious ECE243 Computer Organization Pg 2 of 11 Spring 2016

3 Question 3 C To Assembly [6 Marks] Instances of the following structure is stored in the order given (ie there is no reordering of the structure by the compiler). Assume DogName is an ASCII zero-terminated string. struct doggies { int TagNum; char IsSpayed; char HasRabiesShot; int BreedCode; char DogName[10]; }; struct doggies Dog1 = {25,1,0,1023, Rover }; This structure is accessed in assembly language as follows: movia r10,dog1 ldbu r11,offset(r10) If r11 is loaded with a v, then what is the value of OFFSET? 14 Show your reasoning below for full marks. The struct has the following structure: TagNum offset 0 IsSpayed 4 HasRabiesShot 5 BreedCode 8 (padded for alignment) DogName 12 The third character of DogName is at offset 14 Question 4 Nios II assembly language programming [14 marks] Write a Nios II assembly language program that copies an 8-bit ASCII encoded string from label STR to label CPY. While copying, some characters are replaced by new characters according to a string at label MAPPING (see next page). The characters in string MAPPING are in pairs an example is shown. The first character is the original character that has to be replaced. The second character is a new replacement character. All strings are NULL-terminated (i.e. the last character is 0). The CPY has to end with zero (0) as well. You are given the.data section information on the next page, and the start of the.text section and need to complete the.text section. Your program should work with general values of MAPPING and STR inputs, not just those shown here as examples. Your implementation must have a subroutine called replacechar(c) that returns the replacement for character C if it is in the MAPPING list or returns the original character (C) if it is not in the MAPPING list. You do not need to caller-save or callee-save of any registers, but you must use Nios II conventions for the passed parameter(s) and returned values. This program requires no more than 20 additional lines of code. Plan first! ECE243 Computer Organization Pg 3 of 11 Spring 2016

4 Q4: CONTINUED.section.data MAPPING:.asciz "rrww" STR:.asciz "Here we go" CPY:.space (CPY-STR),0xFF #start with all = 0xFF.section.text.global start start: movia r15, STR movia r16, CPY LOOP: ldbu r4,0(r15) #get character from input string call replacechar stb r2,0(r16) #store translated char in output beq r2,r0,done #zero means end of string addi r15,r15,1 #to next character addi r16,r16,1 br LOOP DONE: br DONE replacechar: #input char in r4, translated char out in r2 movia r11,mapping #translation table (can use any reg) mov r2,r4 #default return value rc1: ldbu r10,0(r11) #get char to translate (again, any reg) beq r10,r0,rc3 #exit on zero at end of table beq r10,r4,rc2 #br if found input char in table addi r11, r11,2 #to next place in table br rc1 #back to try next in table rc2: ldbu r2,1(r11) #make translation rc3: ret Notes: You can do this in at least one fewer instructions. ECE243 Computer Organization Pg 4 of 11 Spring 2016

5 Question 5 -- Caches [24 Marks] a) [12 marks] You have a 1 MB cache with 256 byte blocks and a 32-bit address. i. Fill in all the cells with a question mark in the following table showing the number of bits of the address used in cache access for three different organizations. Fill the blank cell in the first column with the correct name of the third organizational method and the blank cell in the top row with the name of the third portion of the address. Organization Method Direct 2-way SA Fully Associative Tag Set/Block Offset? 12? 12? 8? 13? 11? 8? 24 0? 8 ii. [Same memory system as for part i] Complete the following hit/miss table for two different organizations. Note that you have to fill in addresses in some cases. Where there are more than one correct answer, provide only one of these. Use LRU replacement where required. Two columns are available for your calculations. Assume the cache is empty at the start. Address Direct (H/M) 2-Way SA (H/M) Cache Blocks used Set Tag (direct) (All numbers hex) Cache Blocks used Set Tag* (2W) 0x M M : x M M : x M M : x H H hit set 100 hit 100:1 0x M M : x H H hit set 000 hit 000:1 0x H H hit set 000 hit 000:1 0x M H any from (set=0,tag not 020) or (set=100, tag not 010) 0x M M any except ((set 0,tag 000) or (set 0,tag 020) or (set 100,tag 000) or (set 100,tag 010)) 0x H H See notes * Note that the tag for 2W is actually 13 bits, but we wrote only the upper 12 bits in hex for clarity (LSB is always 0 because we chose nice addresses). The block is designated s:b where s is the set and b the block in the set. Notes for last row: Easiest will be last input repeated, next easiest will be input from before that, provided the last doesn t use the same cache block. ECE243 Computer Organization Pg 5 of 11 Spring 2016

6 b. [12 marks] A cache block size is 64 bytes organized as 4-byte words. The cache takes 5 ns to resolve a hit and return cached data. On a miss, the new block must be completely loaded, then there is a further 5 ns to return the addressed data. To fetch each word (4 bytes) from main memory takes 100 ns for both requests from the cache or from the processor if there was no cache. Do not concern yourself with writes. What minimum hit rate is necessary in order to justify having a cache by an overall average increase in memory system speed? If no cache every fetch costs 100 ns If there is cache: a. A hit costs 5 ns b. A miss costs 100 ns for every word of the cache block that must be loaded, plus 5 ns Considering b: There are 64/4=16 words, so it costs 16*100 ns to load the block. The cache is justified for a cache hit rate of x if x * 5ns + (1-x)*(5ns+1600ns+5ns) < 100ns or x > 1510/1605 =.94 (or 94%) ECE243 Computer Organization Pg 6 of 11 Spring 2016

7 Question 6 -- Processor Implementation [20 Marks] On the following pages are two copies of diagrams of a multiple cycle machine that was studied in class. You want to implement the following instruction: Sumall which does R1 RF[0]+RF[1]+RF[2]+RF[3] Note: Ignore the N and Z flags. a) On one of the diagrams show the datapath alterations to make this instruction possible. If you make a significant mistake that makes your intent unclear, draw an X through that diagram and use the other one. b) Add to the control flow diagram directly below the operations performed at each cycle to make this instruction work. You can use the rightmost columns for notes so your final version is neater. The sequences for some instructions have been omitted to save space. Note: Your solution should not exceed 11 cycles, and can take as few as 7. FILL THIS OUT FOR PART b. Add, Sub, Nand Ori Load Sumall for notes for notes 1 IR = [PC] PC = PC OpA = RF[IR7,IR6] OpB = RF[IR5,IR4] 3 ALUout = OpA op R2 OPA = RF[1] MDR = mem[r2] OpA = RF[1] OpB = RF[0] 4 RF[IR7,IR6] = ALUout ALUout = OpA RF[IR7,IR6] = MDR OpA = RF[2] ALUout = OpA+OpB OR Imm5 5 X RF[1] = ALUout X OpA = RF[3] ALUout = OpA+ALUout 6 X X X ALUout = OpA+ALUout 7 X X X RF[1] = ALUout 8 X X X 9 X X X 10 X X X 11 X X X ECE243 Computer Organization Pg 7 of 11 Spring 2016

8 2 3 0 Summary of changes: 1. Multiplexor in front of reg2 which selects 0 as well as IR5-. New control input OpBSel. 2. Additional inputs to multiplexor in front of reg1 to select 2 and 3 as well as 1 and IR6-7. OpASel would be 2 bits. 3. Additional input to multiplexor in front of lower ALU input to select ALU value. No change in control required. ECE243 Computer Organization Pg 8 of 11 Spring 2016

9 Question 7 -- Building Memories and Bus Interfaces [20 Marks] You have a bunch of memory chips, a pushbutton switch, and a buzzer that is turned on (off) by writing a 1 (0) to a single data line with the enable high. You also have a processor that only reads, writes and uses 16-bit words (not bytes; the address space is word-addressable). You will use these to build a system for a friend with interface shown below, an 8Kx16bit memory, the switch and the buzzer. You determine that the way to save hardware is to configure it with the following memory map: Item Memory Address Range Switch 0x0000-0x7FFF (on load into processor [read]) Buzzer 0x0000-0x7FFF (on store from processor [write]) Memory 0x8000-0xFFFF (loads and stores to/from processor [read/write]) What this means, for example, is that you can read the value from the switch using an address of 0x0000 or 0x0001 or 0x0002 or or 0x7FFF since there is only a single switch being accessed and it can be reached at these duplicate word addresses. a) [12 marks] Draw the bus interface circuitry for this system. You can NOT use a match circuit, but must use only tri-state buffers and AND, OR and NOT gates which may have inverted inputs. Minimal circuits receive full marks. Note that all the memory is shown as a black box. Label each line. Make your intent clear. A0-A15 ME ACK R/~W D0-D15 A0-A? R/~W EN 8K by 16bit memory unit D0-D15 Switch Enable Buzzer On/~Off ECE243 Computer Organization Pg 9 of 11 Spring 2016

10 b) [8 marks] Show how the memory unit would be implemented using 4K by 8 bit memory chips, with the construction shown at the right. A0-A11 EN D0-D7 R/~W memory unit interface A0-A? R/~W EN D0-D15 Put your array of memory chips here and show their interconnections to the memory unit interface at the top of the page ECE243 Computer Organization Pg 10 of 11 Spring 2016

11 Question 8 - Pipelining [12 marks] a) For the instruction sequence shown, complete the cycle by cycle behaviour for the pipelined structure shown above using F, D and E. Show all cycles up to 12 (instructions may repeat). The first instruction (instr ID=A) is done for you. instr ID Cycle A movi r10,2 F D E B LOOP: add r11,r11,r9 F D E F D E C addi r11,r11,5 F - D E F - D addi r10,r10,-1 F D E E add r12,r6,r4 F D E F bne r10,r0,loop F D E G add r6,r7,r8 H addi r8,r8,1 I addi r7,r7,5 b) Show how you can rearrange the instructions in the program to eliminate the data hazard. Use the instruction IDs at the left to show the sequence. For example, the present order of instructions is A B C D E F G H I A B D C E F G H I c) Give an alternate set of instructions that would do the same computations, but would eliminate the control hazard. Full marks if your solution takes no longer (in numbers of instructions executed) than the given instructions. Use the same method to show the sequence as in part b, extending the method if you need to. mov r10,r0 then: B C E B C E G H I Can further reduce by combining the two C s into addi r5,r5,10 and recognizing that the second E makes no change in the end state. ECE243 Computer Organization Pg 11 of 11 Spring 2016

University of Toronto Faculty of Applied Science and Engineering

University of Toronto Faculty of Applied Science and Engineering Print: First Name:............................. Last Name:............................. Student Number:............................................... University of Toronto Faculty of Applied Science and

More information

Last Name (in case pages get detached): UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING FINAL EXAMINATION, APRIL 2011

Last Name (in case pages get detached): UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING FINAL EXAMINATION, APRIL 2011 Page 1 of 17 UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING FINAL EXAMINATION, APRIL 2011 ECE243H1 S COMPUTER ORGANIZATION Exam Type: D Duration: 2.5 Hours Prof.s Anderson, Enright Jerger,

More information

University of Toronto Faculty of Applied Science and Engineering Department of Electrical and Computer Engineering Final Examination

University of Toronto Faculty of Applied Science and Engineering Department of Electrical and Computer Engineering Final Examination University of Toronto Faculty of Applied Science and Engineering Department of Electrical and Computer Engineering Final Examination ECE 253F - Digital and Computer Systems Friday December 10, 2010 Duration:

More information

Last Name (in case pages get detached): UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING MIDTERM EXAMINATION, MARCH 2011

Last Name (in case pages get detached): UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING MIDTERM EXAMINATION, MARCH 2011 Page 1 of 13 UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING MIDTERM EXAMINATION, MARCH 2011 ECE243H1 S COMPUTER ORGANIZATION Exam Type: D Duration: 2 Hours Prof.s Anderson, Enright Jerger,

More information

1. Number Conversions [8 marks]

1. Number Conversions [8 marks] 1. Number Conversions [8 marks] a. convert the decimal number 42 to a 16-bit signed integer in binary 0b0000 0000 0010 1010 b. convert the 8-bit number 0x42 to a 16-bit signed integer in binary 0b0000

More information

I expect you to understand everything discussed prior to this page. In particular:

I expect you to understand everything discussed prior to this page. In particular: A NOTE TO 259 STUDENTS: Interrupts involve a lot of details. The details presented after this page provide further background on exactly what happens at the CPU logic and assembly code levels. This may

More information

Detailed Nios II Exception Process

Detailed Nios II Exception Process Detailed Nios II Exception Process When an exception is triggered, the CPU does the following steps automatically: 1. Copy the contents of status to estatus to save pre-exception state 2. Clear (0) PIE

More information

Computer Science and Engineering 331. Midterm Examination #1. Fall Name: Solutions S.S.#:

Computer Science and Engineering 331. Midterm Examination #1. Fall Name: Solutions S.S.#: Computer Science and Engineering 331 Midterm Examination #1 Fall 2000 Name: Solutions S.S.#: 1 41 2 13 3 18 4 28 Total 100 Instructions: This exam contains 4 questions. It is closed book and notes. Calculators

More information

Final Exam Fall 2007

Final Exam Fall 2007 ICS 233 - Computer Architecture & Assembly Language Final Exam Fall 2007 Wednesday, January 23, 2007 7:30 am 10:00 am Computer Engineering Department College of Computer Sciences & Engineering King Fahd

More information

Faculty of Science FINAL EXAMINATION

Faculty of Science FINAL EXAMINATION Faculty of Science FINAL EXAMINATION COMPUTER SCIENCE COMP 273 INTRODUCTION TO COMPUTER SYSTEMS Examiner: Prof. Michael Langer April 18, 2012 Associate Examiner: Mr. Joseph Vybihal 2 P.M. 5 P.M. STUDENT

More information

The University of Alabama in Huntsville Electrical & Computer Engineering Department CPE Test II November 14, 2000

The University of Alabama in Huntsville Electrical & Computer Engineering Department CPE Test II November 14, 2000 The University of Alabama in Huntsville Electrical & Computer Engineering Department CPE 513 01 Test II November 14, 2000 Name: 1. (5 points) For an eight-stage pipeline, how many cycles does it take to

More information

Final Exam Fall 2008

Final Exam Fall 2008 COE 308 Computer Architecture Final Exam Fall 2008 page 1 of 8 Saturday, February 7, 2009 7:30 10:00 AM Computer Engineering Department College of Computer Sciences & Engineering King Fahd University of

More information

CS 251, Winter 2019, Assignment % of course mark

CS 251, Winter 2019, Assignment % of course mark CS 251, Winter 2019, Assignment 5.1.1 3% of course mark Due Wednesday, March 27th, 5:30PM Lates accepted until 1:00pm March 28th with a 15% penalty 1. (10 points) The code sequence below executes on a

More information

Processor design - MIPS

Processor design - MIPS EASY Processor design - MIPS Q.1 What happens when a register is loaded? 1. The bits of the register are set to all ones. 2. The bit pattern in the register is copied to a location in memory. 3. A bit

More information

ECE 313 Computer Organization FINAL EXAM December 14, This exam is open book and open notes. You have 2 hours.

ECE 313 Computer Organization FINAL EXAM December 14, This exam is open book and open notes. You have 2 hours. This exam is open book and open notes. You have 2 hours. Problems 1-5 refer to the following: We wish to add a new R-Format instruction to the MIPS Instruction Set Architecture called l_inc (load and increment).

More information

Problem 1 (logic design)

Problem 1 (logic design) Problem 1 (logic design) For this problem, you are to design and implement a sequential multiplexor that works as follows. On each clock cycle, interpret the current input as a selector from the most recent

More information

CS 230 Practice Final Exam & Actual Take-home Question. Part I: Assembly and Machine Languages (22 pts)

CS 230 Practice Final Exam & Actual Take-home Question. Part I: Assembly and Machine Languages (22 pts) Part I: Assembly and Machine Languages (22 pts) 1. Assume that assembly code for the following variable definitions has already been generated (and initialization of A and length). int powerof2; /* powerof2

More information

ECE331: Hardware Organization and Design

ECE331: Hardware Organization and Design ECE331: Hardware Organization and Design Lecture 27: Midterm2 review Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Midterm 2 Review Midterm will cover Section 1.6: Processor

More information

Computer Organization MIPS ISA

Computer 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 information

Announcements HW1 is due on this Friday (Sept 12th) Appendix A is very helpful to HW1. Check out system calls

Announcements HW1 is due on this Friday (Sept 12th) Appendix A is very helpful to HW1. Check out system calls 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. Ask TA (Liquan chen: liquan@ece.rutgers.edu) about homework related questions.

More information

Name: University of Michigan uniqname: (NOT your student ID number!)

Name: 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 information

Comprehensive Exams COMPUTER ARCHITECTURE. Spring April 3, 2006

Comprehensive Exams COMPUTER ARCHITECTURE. Spring April 3, 2006 Comprehensive Exams COMPUTER ARCHITECTURE Spring 2006 April 3, 2006 ID Number 1 /15 2 /20 3 /20 4 /20 Total /75 Problem 1. ( 15 points) Logic Design: A three-input switching function is expressed as f(a,

More information

6.823 Computer System Architecture Datapath for DLX Problem Set #2

6.823 Computer System Architecture Datapath for DLX Problem Set #2 6.823 Computer System Architecture Datapath for DLX Problem Set #2 Spring 2002 Students are allowed to collaborate in groups of up to 3 people. A group hands in only one copy of the solution to a problem

More information

ECE 30, Lab #8 Spring 2014

ECE 30, Lab #8 Spring 2014 ECE 30, Lab #8 Spring 20 Shown above is a multi-cycle CPU. There are six special registers in this datapath: PC, IR, MDR, A, B, and ALUOut. Of these, PC and IR are enabled to change when PCWr and IRWr

More information

Machine Organization & Assembly Language

Machine Organization & Assembly Language Name: CSE 378 Winter 29 Machine Organization & Assembly Language Midterm Exam Solution your answers on these pages. itional pages may be attached (with staple) if necessary. Please ensure that your answers

More information

ISA Instruction Operation

ISA Instruction Operation This exam has 6 problems. Make sure you have a complete exam before you begin. Write your name on every page in case pages become separated during grading. You will have three hours to complete this exam.

More information

Computer Architecture EE 4720 Final Examination

Computer Architecture EE 4720 Final Examination Name Computer Architecture EE 4720 Final Examination 10 May 2014, 10:00 12:00 CDT Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Problem 6 Problem 7 Exam Total (15 pts) (15 pts) (15 pts) (15 pts)

More information

CISC 662 Graduate Computer Architecture. Lecture 4 - ISA

CISC 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 information

CSCI 2121 Computer Organization and Assembly Language PRACTICE QUESTION BANK

CSCI 2121 Computer Organization and Assembly Language PRACTICE QUESTION BANK CSCI 2121 Computer Organization and Assembly Language PRACTICE QUESTION BANK Question 1: Choose the most appropriate answer 1. In which of the following gates the output is 1 if and only if all the inputs

More information

ECE 411 Exam 1. This exam has 5 problems. Make sure you have a complete exam before you begin.

ECE 411 Exam 1. This exam has 5 problems. Make sure you have a complete exam before you begin. This exam has 5 problems. Make sure you have a complete exam before you begin. Write your name on every page in case pages become separated during grading. You will have three hours to complete this exam.

More information

CS 351 Exam 2 Mon. 11/2/2015

CS 351 Exam 2 Mon. 11/2/2015 CS 351 Exam 2 Mon. 11/2/2015 Name: Rules and Hints The MIPS cheat sheet and datapath diagram are attached at the end of this exam for your reference. You may use one handwritten 8.5 11 cheat sheet (front

More information

Debugging of Application Programs on Altera s DE-Series Boards. 1 Introduction

Debugging of Application Programs on Altera s DE-Series Boards. 1 Introduction Debugging of Application Programs on Altera s DE-Series Boards 1 Introduction This tutorial presents some basic concepts that can be helpful in debugging of application programs written in the Nios II

More information

ECE 3056: Architecture, Concurrency and Energy of Computation. Single and Multi-Cycle Datapaths: Practice Problems

ECE 3056: Architecture, Concurrency and Energy of Computation. Single and Multi-Cycle Datapaths: Practice Problems ECE 3056: Architecture, Concurrency and Energy of Computation Single and Multi-Cycle Datapaths: Practice Problems 1. Consider the single cycle SPIM datapath. a. Specify the values of the control signals

More information

ECE 2300 Digital Logic & Computer Organization. Caches

ECE 2300 Digital Logic & Computer Organization. Caches ECE 23 Digital Logic & Computer Organization Spring 217 s Lecture 2: 1 Announcements HW7 will be posted tonight Lab sessions resume next week Lecture 2: 2 Course Content Binary numbers and logic gates

More information

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 MIPS Intro II Lect 10 Feb 15, 2008 Adapted from slides developed for: Mary J. Irwin PSU CSE331 Dave Patterson s UCB CS152 M230 L10.1

More information

CS 251, Winter 2018, Assignment % of course mark

CS 251, Winter 2018, Assignment % of course mark CS 251, Winter 2018, Assignment 5.0.4 3% of course mark Due Wednesday, March 21st, 4:30PM Lates accepted until 10:00am March 22nd with a 15% penalty 1. (10 points) The code sequence below executes on a

More information

ECE 30 Introduction to Computer Engineering

ECE 30 Introduction to Computer Engineering ECE 0 Introduction to Computer Engineering Study Problems, Set #9 Spring 01 1. Given the following series of address references given as word addresses:,,, 1, 1, 1,, 8, 19,,,,, 7,, and. Assuming a direct-mapped

More information

/ : Computer Architecture and Design Fall 2014 Midterm Exam Solution

/ : Computer Architecture and Design Fall 2014 Midterm Exam Solution 16.482 / 16.561: Computer Architecture and Design Fall 2014 Midterm Exam Solution 1. (8 points) UEvaluating instructions Assume the following initial state prior to executing the instructions below. Note

More information

Cache Organizations for Multi-cores

Cache Organizations for Multi-cores Lecture 26: Recap Announcements: Assgn 9 (and earlier assignments) will be ready for pick-up from the CS front office later this week Office hours: all day next Tuesday Final exam: Wednesday 13 th, 7:50-10am,

More information

Winter 2006 FINAL EXAMINATION Auxiliary Gymnasium Tuesday, April 18 7:00pm to 10:00pm

Winter 2006 FINAL EXAMINATION Auxiliary Gymnasium Tuesday, April 18 7:00pm to 10:00pm University of Calgary Department of Electrical and Computer Engineering ENCM 369: Computer Organization Lecture Instructor for L01 and L02: Dr. S. A. Norman Winter 2006 FINAL EXAMINATION Auxiliary Gymnasium

More information

EC 413 Computer Organization - Fall 2017 Problem Set 3 Problem Set 3 Solution

EC 413 Computer Organization - Fall 2017 Problem Set 3 Problem Set 3 Solution EC 413 Computer Organization - Fall 2017 Problem Set 3 Problem Set 3 Solution Important guidelines: Always state your assumptions and clearly explain your answers. Please upload your solution document

More information

Pipelined processors and Hazards

Pipelined processors and Hazards Pipelined processors and Hazards Two options Processor HLL Compiler ALU LU Output Program Control unit 1. Either the control unit can be smart, i,e. it can delay instruction phases to avoid hazards. Processor

More information

/ : Computer Architecture and Design Fall Midterm Exam October 16, Name: ID #:

/ : Computer Architecture and Design Fall Midterm Exam October 16, Name: ID #: 16.482 / 16.561: Computer Architecture and Design Fall 2014 Midterm Exam October 16, 2014 Name: ID #: For this exam, you may use a calculator and two 8.5 x 11 double-sided page of notes. All other electronic

More information

CISC 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. 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 information

8. Instruction Set Reference

8. Instruction Set Reference 8. Instruction Set Reference NII51017-7.1.0 Introduction This section introduces the Nios II instruction-word format and provides a detailed reference of the Nios II instruction set. This chapter contains

More information

200 points total. Start early! Update March 27: Problem 2 updated, Problem 8 is now a study problem.

200 points total. Start early! Update March 27: Problem 2 updated, Problem 8 is now a study problem. CS3410 Spring 2014 Problem Set 2, due Saturday, April 19, 11:59 PM NetID: Name: 200 points total. Start early! Update March 27: Problem 2 updated, Problem 8 is now a study problem. Problem 1 Data Hazards

More information

CSCE 212: FINAL EXAM Spring 2009

CSCE 212: FINAL EXAM Spring 2009 CSCE 212: FINAL EXAM Spring 2009 Name (please print): Total points: /120 Instructions This is a CLOSED BOOK and CLOSED NOTES exam. However, you may use calculators, scratch paper, and the green MIPS reference

More information

ECE Exam I - Solutions February 19 th, :00 pm 4:25pm

ECE Exam I - Solutions February 19 th, :00 pm 4:25pm ECE 3056 Exam I - Solutions February 19 th, 2015 3:00 pm 4:25pm 1. (35 pts) Consider the following block of SPIM code. The text segment starts at 0x00400000 and the data segment starts at 0x10010000..data

More information

Instruction Set Architecture part 1 (Introduction) Mehran Rezaei

Instruction Set Architecture part 1 (Introduction) Mehran Rezaei Instruction Set Architecture part 1 (Introduction) Mehran Rezaei Overview Last Lecture s Review Execution Cycle Levels of Computer Languages Stored Program Computer/Instruction Execution Cycle SPIM, a

More information

Initial Design of an Alpha Processor. March 12, 1998 (Revised 3/16/98)

Initial Design of an Alpha Processor. March 12, 1998 (Revised 3/16/98) Initial Design of an Alpha Processor March 12, 1998 (Revised 3/16/98) Topics Objective Instruction formats Instruction processing Principles of pipelining Inserting pipe registers Objective Design Processor

More information

Computer Architecture CS372 Exam 3

Computer Architecture CS372 Exam 3 Name: Computer Architecture CS372 Exam 3 This exam has 7 pages. Please make sure you have all of them. Write your name on this page and initials on every other page now. You may only use the green card

More information

Chapter 5 Solutions: For More Practice

Chapter 5 Solutions: For More Practice Chapter 5 Solutions: For More Practice 1 Chapter 5 Solutions: For More Practice 5.4 Fetching, reading registers, and writing the destination register takes a total of 300ps for both floating point add/subtract

More information

14:332:331. Computer Architecture and Assembly Language Fall Week 5

14:332:331. Computer Architecture and Assembly Language Fall Week 5 14:3:331 Computer Architecture and Assembly Language Fall 2003 Week 5 [Adapted from Dave Patterson s UCB CS152 slides and Mary Jane Irwin s PSU CSE331 slides] 331 W05.1 Spring 2005 Head s Up This week

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Hardware Organization and Design Lecture 4: Logic Operations and Introduction to Conditionals Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Overview Previously examined

More information

Computer Science 2500 Computer Organization Rensselaer Polytechnic Institute Spring Topic Notes: MIPS Programming

Computer Science 2500 Computer Organization Rensselaer Polytechnic Institute Spring Topic Notes: MIPS Programming Computer Science 2500 Computer Organization Rensselaer Polytechnic Institute Spring 2009 Topic Notes: MIPS Programming We spent some time looking at the MIPS Instruction Set Architecture. We will now consider

More information

The University of Michigan - Department of EECS EECS 370 Introduction to Computer Architecture Midterm Exam 1 February 17, 2011

The University of Michigan - Department of EECS EECS 370 Introduction to Computer Architecture Midterm Exam 1 February 17, 2011 The University of Michigan - Department of EECS EECS 370 Introduction to Computer Architecture Midterm Exam 1 February 17, 2011 Name: KEY_(Answers in red) University of Michigan uniqname: (NOT your student

More information

Computer Architecture EE 4720 Final Examination

Computer Architecture EE 4720 Final Examination Name Computer Architecture EE 4720 Final Examination 7 May 2008, 10:00 12:00 CDT Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Problem 6 Exam Total (10 pts) (30 pts) (20 pts) (15 pts) (15 pts)

More information

University of California, Berkeley College of Engineering

University of California, Berkeley College of Engineering University of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences Spring 2016 Instructors: Vladimir Stojanovic, Nicholas Weaver 2016-04-04 L J After the

More information

The University of Michigan - Department of EECS EECS 370 Introduction to Computer Architecture Midterm Exam 2 solutions April 5, 2011

The University of Michigan - Department of EECS EECS 370 Introduction to Computer Architecture Midterm Exam 2 solutions April 5, 2011 1. Performance Principles [5 pts] The University of Michigan - Department of EECS EECS 370 Introduction to Computer Architecture Midterm Exam 2 solutions April 5, 2011 For each of the following comparisons,

More information

Computer Architecture EE 4720 Final Examination

Computer Architecture EE 4720 Final Examination Name Computer Architecture EE 4720 Final Examination 1 May 2017, 10:00 12:00 CDT Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Exam Total (20 pts) (15 pts) (20 pts) (15 pts) (30 pts) (100 pts)

More information

CS232 Final Exam May 5, 2001

CS232 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 information

CS3350B Computer Architecture Winter 2015

CS3350B 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 information

Department of Electrical Engineering and Computer Sciences Fall 2017 Instructors: Randy Katz, Krste Asanovic CS61C MIDTERM 2

Department of Electrical Engineering and Computer Sciences Fall 2017 Instructors: Randy Katz, Krste Asanovic CS61C MIDTERM 2 University of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences Fall 2017 Instructors: Randy Katz, Krste Asanovic 2017 10 31 CS61C MIDTERM 2 After the

More information

Processor Architecture

Processor Architecture Processor Architecture Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu SSE2030: Introduction to Computer Systems, Spring 2018, Jinkyu Jeong (jinkyu@skku.edu)

More information

231 Spring Final Exam Name:

231 Spring Final Exam Name: 231 Spring 2010 -- Final Exam Name: No calculators. Matching. Indicate the letter of the best description. (1 pt. each) 1. b address 2. d object code 3. g condition code 4. i byte 5. k ASCII 6. m local

More information

University of California, Berkeley College of Engineering

University of California, Berkeley College of Engineering University of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences Summer 25 Instructor: Sagar Karandikar 25-7-28 L J After the exam, indicate on the line

More information

ECE Exam I February 19 th, :00 pm 4:25pm

ECE Exam I February 19 th, :00 pm 4:25pm ECE 3056 Exam I February 19 th, 2015 3:00 pm 4:25pm 1. The exam is closed, notes, closed text, and no calculators. 2. The Georgia Tech Honor Code governs this examination. 3. There are 4 questions and

More information

Intro. to Computer Architecture Homework 4 CSE 240 Autumn 2005 DUE: Mon. 10 October 2005

Intro. to Computer Architecture Homework 4 CSE 240 Autumn 2005 DUE: Mon. 10 October 2005 Name: 1 Intro. to Computer Architecture Homework 4 CSE 24 Autumn 25 DUE: Mon. 1 October 25 Write your answers on these pages. Additional pages may be attached (with staple) if necessary. Please ensure

More information

ECE 2300 Digital Logic & Computer Organization. More Caches Measuring Performance

ECE 2300 Digital Logic & Computer Organization. More Caches Measuring Performance ECE 23 Digital Logic & Computer Organization Spring 28 More s Measuring Performance Announcements HW7 due tomorrow :59pm Prelab 5(c) due Saturday 3pm Lab 6 (last one) released HW8 (last one) to be released

More information

COMP 303 MIPS Processor Design Project 3: Simple Execution Loop

COMP 303 MIPS Processor Design Project 3: Simple Execution Loop COMP 303 MIPS Processor Design Project 3: Simple Execution Loop Due date: November 20, 23:59 Overview: In the first three projects for COMP 303, you will design and implement a subset of the MIPS32 architecture

More information

Final Exam Spring 2017

Final Exam Spring 2017 COE 3 / ICS 233 Computer Organization Final Exam Spring 27 Friday, May 9, 27 7:3 AM Computer Engineering Department College of Computer Sciences & Engineering King Fahd University of Petroleum & Minerals

More information

THE HONG KONG UNIVERSITY OF SCIENCE & TECHNOLOGY Computer Organization (COMP 2611) Spring Semester, 2014 Final Examination

THE HONG KONG UNIVERSITY OF SCIENCE & TECHNOLOGY Computer Organization (COMP 2611) Spring Semester, 2014 Final Examination THE HONG KONG UNIVERSITY OF SCIENCE & TECHNOLOGY Computer Organization (COMP 2611) Spring Semester, 2014 Final Examination May 23, 2014 Name: Email: Student ID: Lab Section Number: Instructions: 1. This

More information

231 Spring Final Exam Name:

231 Spring Final Exam Name: 231 Spring 2010 -- Final Exam Name: No calculators. Matching. Indicate the letter of the best description. (1 pt. each) 1. address 2. object code 3. condition code 4. byte 5. ASCII 6. local variable 7..global

More information

Instructions: Assembly Language

Instructions: Assembly Language Chapter 2 Instructions: Assembly Language Reading: The corresponding chapter in the 2nd edition is Chapter 3, in the 3rd edition it is Chapter 2 and Appendix A and in the 4th edition it is Chapter 2 and

More information

Processor Architecture. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Processor Architecture. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Processor Architecture Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Moore s Law Gordon Moore @ Intel (1965) 2 Computer Architecture Trends (1)

More information

University of California, Berkeley College of Engineering

University of California, Berkeley College of Engineering University of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences Spring 2016 Instructors: Vladimir Stojanovic, Nicholas Weaver 2016-04-04 L J After the

More information

CSE 378 Midterm 2/12/10 Sample Solution

CSE 378 Midterm 2/12/10 Sample Solution Question 1. (6 points) (a) Rewrite the instruction sub $v0,$t8,$a2 using absolute register numbers instead of symbolic names (i.e., if the instruction contained $at, you would rewrite that as $1.) sub

More information

Winter 2009 FINAL EXAMINATION Location: Engineering A Block, Room 201 Saturday, April 25 noon to 3:00pm

Winter 2009 FINAL EXAMINATION Location: Engineering A Block, Room 201 Saturday, April 25 noon to 3:00pm University of Calgary Department of Electrical and Computer Engineering ENCM 369: Computer Organization Lecture Instructors: S. A. Norman (L01), N. R. Bartley (L02) Winter 2009 FINAL EXAMINATION Location:

More information

ECE550 PRACTICE Midterm

ECE550 PRACTICE Midterm ECE55 PRACTICE Midterm This is a full length practice midterm exam. If you want to take it at exam pace, give yourself 75 minutes to take the entire test. Just like the real exam, each question has a point

More information

CS/CoE 1541 Mid Term Exam (Fall 2018).

CS/CoE 1541 Mid Term Exam (Fall 2018). CS/CoE 1541 Mid Term Exam (Fall 2018). Name: Question 1: (6+3+3+4+4=20 points) For this question, refer to the following pipeline architecture. a) Consider the execution of the following code (5 instructions)

More information

Question 1 (5 points) Consider a cache with the following specifications Address space is 1024 words. The memory is word addressable The size of the

Question 1 (5 points) Consider a cache with the following specifications Address space is 1024 words. The memory is word addressable The size of the Question 1 (5 points) Consider a cache with the following specifications Address space is 1024 words. he memory is word addressable he size of the cache is 8 blocks; each block is 4 words (32 words cache).

More information

Chapter 2. Instructions:

Chapter 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 information

Assembly Language Programming. CPSC 252 Computer Organization Ellen Walker, Hiram College

Assembly Language Programming. CPSC 252 Computer Organization Ellen Walker, Hiram College Assembly Language Programming CPSC 252 Computer Organization Ellen Walker, Hiram College Instruction Set Design Complex and powerful enough to enable any computation Simplicity of equipment MIPS Microprocessor

More information

McGill University Faculty of Engineering FINAL EXAMINATION Fall 2007 (DEC 2007)

McGill University Faculty of Engineering FINAL EXAMINATION Fall 2007 (DEC 2007) McGill University Faculty of Engineering FINAL EXAMINATION Fall 2007 (DEC 2007) VERSION 1 Examiner: Professor T.Arbel Signature: INTRODUCTION TO COMPUTER ENGINEERING ECSE-221A 6 December 2007, 1400-1700

More information

8. Instruction Set Reference

8. Instruction Set Reference 8. NII51017-10.0.0 Introduction This section introduces the Nios II instruction word format and provides a detailed reference of the Nios II instruction set. This chapter contains the following sections:

More information

Digital Design & Computer Architecture (E85) D. Money Harris Fall 2007

Digital Design & Computer Architecture (E85) D. Money Harris Fall 2007 Digital Design & Computer Architecture (E85) D. Money Harris Fall 2007 Final Exam This is a closed-book take-home exam. You are permitted a calculator and two 8.5x sheets of paper with notes. The exam

More information

Midterm #2 Solutions April 23, 1997

Midterm #2 Solutions April 23, 1997 CS152 Computer Architecture and Engineering Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Sp97 D.K. Jeong Midterm #2 Solutions

More information

Chapter 5 The Memory System

Chapter 5 The Memory System Chapter 5 The Memory System 5.. The block diagram is essentially the same as in Figure 5., except that 6 rows (of four 5 8 chips) are needed. Address lines A 8 are connected to all chips. Address lines

More information

October 24. Five Execution Steps

October 24. Five Execution Steps October 24 Programming problems? Read Section 6.1 for November 5 How instructions execute Test Preview Ask Questions! 10/24/2001 Comp 120 Fall 2001 1 Five Execution Steps Instruction Fetch Instruction

More information

c. What are the machine cycle times (in nanoseconds) of the non-pipelined and the pipelined implementations?

c. What are the machine cycle times (in nanoseconds) of the non-pipelined and the pipelined implementations? Brown University School of Engineering ENGN 164 Design of Computing Systems Professor Sherief Reda Homework 07. 140 points. Due Date: Monday May 12th in B&H 349 1. [30 points] Consider the non-pipelined

More information

CSC258: Computer Organization. Microarchitecture

CSC258: Computer Organization. Microarchitecture CSC258: Computer Organization Microarchitecture 1 Wrap-up: Function Conventions 2 Key Elements: Caller Ensure that critical registers like $ra have been saved. Save caller-save registers. Place arguments

More information

University of Toronto Faculty of Applied Science and Engineering

University of Toronto Faculty of Applied Science and Engineering Print: First Name:............ Solutions............ Last Name:............................. Student Number:............................................... University of Toronto Faculty of Applied Science

More information

ADD R3, R4, #5 LDR R3, R4, #5

ADD R3, R4, #5 LDR R3, R4, #5 ECE 109 Sections 602 to 605 Exam 2 Fall 2007 Solution 6 November, 2007 Problem 1 (15 points) Data Path In the table below, the columns correspond to two LC/3 instructions and the rows to the six phases

More information

Module 4c: Pipelining

Module 4c: Pipelining Module 4c: Pipelining R E F E R E N C E S : S T A L L I N G S, C O M P U T E R O R G A N I Z A T I O N A N D A R C H I T E C T U R E M O R R I S M A N O, C O M P U T E R O R G A N I Z A T I O N A N D A

More information

ECE550 PRACTICE Final

ECE550 PRACTICE Final ECE550 PRACTICE Final This is a full length practice midterm exam. If you want to take it at exam pace, give yourself 175 minutes to take the entire test. Just like the real exam, each question has a point

More information

Chapter 2A Instructions: Language of the Computer

Chapter 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 information

Basic Von Neumann Designs

Basic Von Neumann Designs COMP 273 Assignment #2 Part One Due: Monday October 12, 2009 at 23:55 on Web CT Mini-Project Due: Monday November 9, 2009 at 23:55 on Web CT Basic Von Neumann Designs This assignment is divided into two

More information

Write only as much as necessary. Be brief!

Write only as much as necessary. Be brief! 1 CIS371 Computer Organization and Design Midterm Exam Prof. Martin Thursday, March 15th, 2012 This exam is an individual-work exam. Write your answers on these pages. Additional pages may be attached

More information

EN164: Design of Computing Systems Topic 03: Instruction Set Architecture Design

EN164: Design of Computing Systems Topic 03: Instruction Set Architecture Design EN164: Design of Computing Systems Topic 03: Instruction Set Architecture Design Professor Sherief Reda http://scale.engin.brown.edu Electrical Sciences and Computer Engineering School of Engineering Brown

More information

CS152 Computer Architecture and Engineering March 13, 2008 Out of Order Execution and Branch Prediction Assigned March 13 Problem Set #4 Due March 25

CS152 Computer Architecture and Engineering March 13, 2008 Out of Order Execution and Branch Prediction Assigned March 13 Problem Set #4 Due March 25 CS152 Computer Architecture and Engineering March 13, 2008 Out of Order Execution and Branch Prediction Assigned March 13 Problem Set #4 Due March 25 http://inst.eecs.berkeley.edu/~cs152/sp08 The problem

More information