Computer Systems Design and Architecture - Heuring,Vincent P. (Pearson Education, 2008)