This is my perception of the Question, ping me if I made a mistake!
Answer:
We know that,
Avg. Memory access time = (hit ratio of cache * Time spent for accessing Cache) + (hit ratio of main memory * Time spent for accessing Main memory)
Here, in question we have been asked to find average time of the main memory and not the whole memory access time. So, we just need to do calculations for main memory.
Avg. Main Memory access time = hit ratio of main memory * Time spent for accessing main memory
But, main memory access time differs in read and write accesses. Hence,
Avg. Main memory access time = hit ratio of main memory * ( read access time + write access time )
Lets calculate read access and write access time separately.
Considering 80% read accesses and 0.9 hit ratio and hierarchical access,
Read access Time = 0.8 * 0.1 * (50 + 500) = 44 ns
Considering 20% write accesses and simultaneous access,
Write access Time = 0.2 * (500) = 100 ns
i.e Avg. Main memory access time = 100 + 44 = 144 ns