Spring 1999, Computer Org, Assignment 5
Due Monday 4/19 at 5 pm
This is an optional assignment. It may be used to replace a previous assignment.
If you decide to do it, then it must be handed in ON TIME.
You must drop off the assignment at my office before 5 pm on Monday 4/19.
-
(3 points) Draw a 4-bit adder where there is no carry propogation delay for
any of the 1-bit ALUs. In other words, all the 1-bit ALUs can calculate their
correct result without waiting for the other ALUs to complete their additions.
The circuit will be more complicated, but faster.
-
(3 points) Draw circuit for a 4-bit incrementer. It is like a counter:
on each clock pulse a 1 is added to the total stored in the 4-bit output.
-
(4 points) Mic-2
-
Explain in detail why INVOKEVIRTUAL is only 11 instructions in Mic-2, but
22 instructions in Mic-1. Indicate why some instructions could be combined,
and why some instructions could be eliminated altogether.
-
Do the same analysis for ILOAD.
-
(2 poionts) Whenever the ALU does subtraction for unsigned numbers, it inverts
the normal carry out bit to set the carry flag. how would this be implemeted
in hardware?
-
(2 points) It is not reliable to use the N bit to determine the relative
order of two unsigned numbers. Give me an example of subtracting unsigned
numbers as follows:
-
Perform A - B where the result is negative and A < B.
-
perform C - B where the result is positive and C < B. B should be the
same number as in the first subtraction.
-
(4 points) Mic-3. Figure 4-33 on page 258 shows how the SWAP instruction
from Mic-2 would be sequenced in Mic-3.
-
Create a similar table for ILOAD.
-
Create a similar table for IRETURN
-
(2 points) Consider the direc-mapped cache on page 267.
-
What would be the tag and line for the hex address 087F473ADh?
-
If this were a full associative cache, then what would be the tag and the
line for the same address?