next up previous
Next: Part2: Pipelining and the Up: Part 1: MIPS ISA Previous: Problem 1: Hands-on MIPS

Problem 2: Hands OFF the ISA questions

Briefly answer the following questions, explaining your answer for full credit, of course.

2.1
True or False: The ISA uniquely determines the specifications of the hardware on which it is to be executed.

2.2
Why is the encoding of the ISA so important in designing a computer architecture? That is, speculate as to why so much of chapter 2 is spent justifying the decisions made in designing MIPS.

2.3
Why is byte alignment an issue? That is, why might an ISA forbid one to load a word from a specific address? For example, in each pair of MIPS instructions below, the first instruction results in a byte alignment error, while the second doesn't. To see this, compute the effective address for each operation-that is, assuming you know what one is.

Also, why might allowing the first instruction below cause problems? And, are there any load/store instructions that are immune from byte alignment errors in MIPS?

LD  R2, 7(R0) 	; byte alignment error
LD  R4, 128(R0) ; legal instruction




DADDI R8, R0, #99 ; 
SD  R3, 17(R8) 	  ; byte alignment error
SD  R5, 29(R8) 	  ; legal instruction
                  ; check store syntax!




DADDI R9, R0, #1050;
L.D  F2,-1 (R9) 	; byte alignment error
L.D  F4,-26(R9) 	; legal instruction
S.D  F11,-998(R9)       ; legal or not?





next up previous
Next: Part2: Pipelining and the Up: Part 1: MIPS ISA Previous: Problem 1: Hands-on MIPS
MM Hugue 2002-09-22

Web Accessibility