0
\$\begingroup\$

(From Schuam's Outlines Computer Architecture, 2002, page 193, problem 8.7(b))

Suppose I have the following memory hierarchy of:

CPU <-> SRAM <=> DRAM <=> DISK

SRAM has 5 ns access time

DRAM has 60 ns access time

DISK has 7 ms access time.

If the hit rate at each level of memory hierarchy is 80% (Except the last level of DISK which is 100% hit rate), what is the average memory access time from the CPU?

So I start the problem... here are my calculations:

For the DRAM Level the access time is:

$$ T_{DRAM} = (0.8)(60 ns) + (0.2)(7 ms) $$

$$ T_{DRAM} = 1.448 \mu seconds $$

For the SRAM/CPU Level the access time is:

$$ T_{SRAM} = (0.8)(5 ns) + (0.2)(1.448 \mu s) $$

$$ T_{SRAM} = 293.6 ns $$

Now for the problem, the solution manual for the book says the answer is:

$$ T_{SRAM} = (0.80)(5 ns) + (0.20)(0.80)(60 ns) + (0.20)(7 ms) $$

which I calculate to be: 1.4136E-6 seconds and they calculate to be:

$$ T_{SRAM} = 280,0136.6 ns $$

My answer is "293.6 ns", and the book's solution to the problem is "280,0136.6 ns"

Who is right and why?

\$\endgroup\$
2
  • \$\begingroup\$ How many ns are in a ms? ;) \$\endgroup\$
    – marcelm
    Feb 5, 2019 at 23:28
  • \$\begingroup\$ $$1 ms = 10^{-3} sec$$ $$1 \mu s = 10^{-6} sec$$ $$1 ns=10^{-9} sec$$ \$\endgroup\$ Feb 5, 2019 at 23:31

1 Answer 1

2
\$\begingroup\$

Your formulas look fine to me, but there's an error in the numbers: $$ T_{DRAM} = (0.8)(60 ns) + (0.2)(7 ms) \\ T_{DRAM} = 1.448 \mu s $$ This is incorrect, with \$0.2 * 7\$ ms in the sum, the answer should be at least 1.4 ms, not µs.

Note that 1 ms = 1000 µs = 1 000 000 ns.

Compare:

$$ T_{DRAM} = (0.8)(60 ns) + (0.2)(7000 ns) \\ T_{SRAM} = (0.8)(5 ns) + (0.2)(T_{DRAM}) \\ T_{SRAM} = 293.6 ns $$

with:

$$ T_{DRAM} = (0.8)(60 ns) + (0.2)(7000000 ns) \\ T_{SRAM} = (0.8)(5 ns) + (0.2)(T_{DRAM}) \\ T_{SRAM} = 280013.6 ns $$

If you substitute \$T_{DRAM}\$ in the \$T_{SRAM}\$ expression, you get:

$$ T_{SRAM} = (0.8)(5 ns) + (0.2)(0.8)(60 ns) + (0.2)(0.2)(7000000 ns) $$

The expression you quoted from the book is slightly different (only one \$(0.2)\$ in the last term of the sum). That looks like either an error in the book, or in your quote.

\$\endgroup\$
4
  • \$\begingroup\$ ahh...ok... i see the error... was using 10^-6 instead of 10^-3... thanks for confirm that books equation is wrong... but strangely their answer was right in the end... \$\endgroup\$ Feb 6, 2019 at 0:10
  • \$\begingroup\$ Workings/formulas get copied and pasted. You go back and edit contents. Sometimes you fix all, sometimes you do not. Usually you get the final answer correct. \$\endgroup\$ Feb 6, 2019 at 1:06
  • \$\begingroup\$ @MrCasuality Check my update; if the book actually has \$(0.2)(0.2)\$ in the last term of the sum, the equation in the book is also correct! \$\endgroup\$
    – marcelm
    Feb 6, 2019 at 15:43
  • \$\begingroup\$ typographical error in book... that's what was confusing me. \$\endgroup\$ Feb 8, 2019 at 13:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.