Computer organization and architecture: designing for performance - Stallings, William (Pearson Education Inc., 2004)