1. Memory Addressing
(a) For a byte-addressable memory, how much memory can be accessed using a 64 bit address? Express your answer using metric prefixes (kilo, mega, giga, etc.). (
b) For a byte-addressable memory, how many address bits are needed for 128 GB memory?
(c) For a word-addressable memory, how much memory can be accessed using a 32 bit address? (Assume that a word is 32 bits.)
(d)For a word-addressable memory, how many address bits are needed for 512 GB memory? (Also, assume that a word is 32 bits.)
2. (a) For the following sequence of MIPS assembly language instructions, calculate the number of data hazards would occur during their executions without stalls in a pipelined implementation.
add r3 r4 r2
sub r5 r3 r1
lw r6 r3 0x45
or r7 r3 r6
sw r6 r5 0x12
(b) Generate an execution time graph to avoid data hazards in the same pipelined implementation.
(c) What is the CPI value for executing these instructions with stalls in their pipelined implementation?
3.Given a computer with L1, L2, and L3 caches. Of all the memory references, 60% hit on L1 cache, 35% hit on L2 cache, 20% hit on L3 cache. Following are the access times:
L1 cache access time: 5 ns
L2 cache access time: 15 ns
L3 cache access time: 25 ns
Main memory access time: 60 ns
Considering L2 cache access will start only if there is a miss in L1 cache, L3 cache access will start only if there is a miss in L2 cache, similarly, main memory access will start only after L1, L2, and L3 cache misses, compute the average memory access time for this system.
4. Consider an application A running on a single cycle datapath system comprising of data and instruction caches coupled with main memory. Assume that 80% of the instruction fetches hit in the instruction cache, 70% of the memory references hit in the data cache and 40% of the operations access data memory. On cache misses, the system takes 20 cycles to access main memory. The processor is stalled for that entire time.
What is the CPI value for the application A to run on this system?
NB: This is a computer architecture and organization course and the topic is on assembly language. Thanks