This book serves as an introduction to the field of microprocessor design and implementation. It is intended for students in computer science or computer or electrical engineering who are in the third or fourth years of an undergraduate degree. While the focus of this book will be on microprocessors, many of the concepts will apply to other ASIC design tasks as well.
The reader should have prior knowledge indigital circuits and possibly some background insemiconductors although it isn't strictly necessary. The reader also should know at least oneassembly language. Knowledge of higher-level languages such asC orC++ may be useful as well, but are not required. Sections about soft-core design will require prior knowledge ofprogrammable logic, and a prior knowledge of at least one HDL (hardware description language).