Computer Organization and Embedded Systems - Carl Hamacher, Zvonko Vranesic (McGraw Hill, 2012)