1. What are the main functions of the CPU?
2. Explain what the CPU should do when an interrupt occurs. Include in your
answer the method the CPU uses to detect an interrupt, how it is handled, and what
happens when the interrupt has been serviced.
3. Suppose we have 4 memory modules and each module has 8 addresses. Draw
the memory modules with the addresses they contain using:a) High-order Interleaving
and b) Low-order interleaving.
4. Memory organization
a) Suppose that a 32MB system memory is built from 32 1MB RAM chips.
How many address lines are needed to select one of the memory chips?
b) Suppose a system has a byte-addressable memory size of 4GB. How many
bits are required for each address?
c) Suppose that a system uses 16-bit memory words and its memory built
from 32 1M × 8 RAM chips. How large, in words, is the memory on this system?
d) Suppose that a system uses 32-bit memory words and its memory is built
from 16 1M × 8 RAM chips. How many address bits are required to uniquely identify
each memory word?
e) Suppose we have a 1024-word memory that is 16-way low-order
interleaved. What is the size of the memory address offset field?
5. Suppose that a 2M x 16 main memory is built using 256K
8 RAM chips
and memory is word-addressable.
a) How many RAM chips are necessary?
b) If we were accessing one full word, how many chips would be involved?
c) How many address bits are needed for each RAM chip?
d) How many banks will this memory have?
e) How many address bits are needed for all of memory?
If high-order interleaving is used, where would address 14 (which is E in hex) be
g) Repeat Exercise f) for low-order interleaving.
6. Explain the steps of the fetch-decode-execute cycle. Your explanation should
include what is happening in the various registers.
Explain why, in MARIE, the MAR is only 12 bits wide while the AC is 16 bits wide.
Hint: Consider the difference between data and addresses.
Use a few sentences to answer each of the following questions. The answers
be found in section 4.1 to 4.7 in the textbook.
What purpose does the datapath in a CPU serve?
What does the control unit in a CPU do?
Where are registers located?
How does the ALU know which function to perform?
Explain the differences between data buses, address buses, and control buses.
Explain the relation between clock cycle time and clock frequency.
Explain the differences between memory-mapped I/O and instruction-based I/O.
Explain the differences between byte addressable and word addressable.
9. Write the assembly language equivalent of the following MARIE machine
a) 0111 0000 0000 0000
b) 1011 0011 0011 0000
c) 0100 1111 0100 1111