Computer organization and architecture : designing for performance - Stallings, William (Prentice-Hall, 2006)