Answer: 61.25
For a three-level hierarchical memory system, the average access time (Tavg) is calculated as:
Tavg=T1+(1−H1)[T2+(1−H2)T3]
Given parameters:
- T1=50 nsec
- T2=200 nsec
- T3=5μsec=5000 nsec
Part (A): Minimum sizes to achieve Tavg<100 nsec
Let's evaluate different combinations of Level 1 and Level 2 sizes:
- L1 = 8M (H1=0.80), L2 = 4M (H2=0.98):
Tavg=50+0.20×[200+0.02×5000]=50+0.20×300=110 nsec(≥100)
- L1 = 8M (H1=0.80), L2 = 16M (H2=0.99):
Tavg=50+0.20×[200+0.01×5000]=50+0.20×250=100 nsec(≥100)
- L1 = 8M (H1=0.80), L2 = 64M (H2=0.995):
Tavg=50+0.20×[200+0.005×5000]=50+0.20×225=95 nsec<100
- L1 = 16M (H1=0.90), L2 = 4M (H2=0.98):
Tavg=50+0.10×[200+0.02×5000]=50+0.10×300=80 nsec<100
Comparing the total memory capacity of valid configurations, L1=16M and L2=4M (total 20M) is smaller than L1=8M and L2=64M (total 72M). Thus, the minimum sizes are L1 = 16M and L2 = 4M.
Part (B): Average access time for the chosen configuration
If we choose the maximum configuration of L1 = 64M (H1=0.95) and L2 = 64M (H2=0.995) to achieve the best possible performance:
Tavg=50+(1−0.95)×[200+(1−0.995)×5000]
Tavg=50+0.05×[200+0.005×5000]
Tavg=50+0.05×[200+25]
Tavg=50+0.05×225=50+11.25=61.25 nsec