Advanced computer architecture : parallelism, scalability, programmability (McGraw-Hill, 1993)