Digital Design and Computer Architecture - Harris, David Money; Harris, Sarah L. (2007)