Skip to main content

RISC-V System-on-Chip Design

  • 1st Edition - June 30, 2026
  • Latest edition
  • Authors: David Harris, James Stine, Sarah Harris, Rose Thompson
  • Language: English

RISC-V Microprocessor System-On-Chip Design is written to be accessible to an advanced undergraduate audience with limited background. It explains concepts from operating systems,… Read more

World Book Day celebration

Where learning shapes lives

Up to 25% off trusted resources that support research, study, and discovery.

Description

RISC-V Microprocessor System-On-Chip Design is written to be accessible to an advanced undergraduate audience with limited background. It explains concepts from operating systems, VLSI, and memory systems as necessary, and High school mathematics is sufficient preparation for most of the book, although the floating point and division chapters will be primarily of interest to those with a curiosity about computer arithmetic. Like Harris and Harris’s Digital Design and Computer Architecture textbooks, this book will appeal to students with easy-to-read and complete explanations, sidebars, and occasional humor and cartoons.

It comes with an open-source implementation and will include end-of-chapter problems to extend the RISC-V processor in various ways. Ancillary materials include a GitHub repository with complete open-source SystemVerilog code, validation code in C and assembly language, and code for benchmarking and booting Linux.

Key features

  • Covers detailed design for all components of a nontrivial microprocessor
  • Provides detailed explanations on the implementation of RISC-V microprocessors
  • Uses open-source SystemVerilog code and test cases for the entire processor, including single-issue and superscalar cores, multicore, all extensions (including multiplication/division, floating point, and atomic memory operations), and common peripherals
  • Enables users to build scripts to implement the processor on the open-source Skywater process

Readership

Senior-level elective or graduate courses in the field of computer processor design in most electrical or computer engineering or CS programs

Table of contents

Preface
How to Use This Book
Acknowledgements
About the Authors
Foreword


01. A Brief History of Computer Design

02. Introduction to RISC-V

03. RISC-V Software Tool Flow

04. HDL Design Practices

05. Design Verification

06. Logic Synthesis

07. Pipelined Core

08. Privileged Operations

09. Bus Interface

10. Caches

11. Memory Management Unit

12. Load/Store Unit

13. Instruction Fetch Unit

14. Extensions: C (Compressed)

15. Extensions: M (Multiply and Divide)

16. Extensions: F/D/Q/Zfh/Zfa (Floating-Point)

17. Extensions: A (Atomic)

18. Extensions: Zb* and Zk* (Bit Manipulation and Cryptography)

19. Other Extensions

20. Peripherals

21. Benchmarking

22. Linux

23. FPGA Implementation
Appendix A Wally Synopsis
Appendix B Hitchhiker’s Guide to Linux
Appendix C Version Control using Git
Appendix D Tcl Book of Armaments
Appendix E Floating-Point Implementation
Bibliography
Index

Product details

  • Edition: 1
  • Latest edition
  • Published: June 30, 2026
  • Language: English

About the authors

DH

David Harris

David Harris is the Harvey S. Mudd Professor of Engineering Design at Harvey Mudd College. He received his Ph.D. in electrical engineering from Stanford University and his M.Eng. in electrical engineering and computer science from MIT. Before attending Stanford, he worked at Intel as a logic and circuit designer on the Itanium and Pentium II processors. Since then, he has consulted at Sun Microsystems, Hewlett-Packard, Broadcom, and other design companies. David holds more than a dozen patents and is the author of three other textbooks on chip design, as well as many Southern California hiking guidebooks. When he is not working, he enjoys hiking, flying, and making things with his three sons.
Affiliations and expertise
Associate Professor of Engineering, Harvey Mudd College, Claremont, CA, USA

JS

James Stine

James Stine is the Edward Joullian Professor of Engineering at Oklahoma State University. His area of research is in computer arithmetic, memory architectures, and Electronic Design Automation (EDA) design flow. He is the author of numerous articles on optimization of architectures for use with computer arithmetic as well as interfacing to memory architectures. He is the author of three texts: Digital Datapath Computer Arithmetic with Verilog, Adder Architectures for VLSI Implementations and System on Chip Design Flow and Standard-Cell Library.
Affiliations and expertise
School of Electrical and Computer Engineering, Oklahoma State University, Stillwater, OK, USA

SH

Sarah Harris

Sarah L. Harris is an Assistant Professor of Engineering at Harvey Mudd College. She received her Ph.D. and M.S. in Electrical Engineering from Stanford University. Before attending Stanford, she received a B.S. in Electrical and Computer Engineering from Brigham Young University. Sarah has also worked with Hewlett-Packard, the San Diego Supercomputer Center, Nvidia, and Microsoft Research in Beijing.

Sarah loves teaching, exploring and developing new technologies, traveling, wind surfing, rock climbing, and playing the guitar. Her recent exploits include researching sketching interfaces for digital circuit design, acting as a science correspondent for a National Public Radio affiliate, and learning how to kite surf. She speaks four languages and looks forward to learning more in the near future.

Affiliations and expertise
Assistant Professor of Engineering, Harvey Mudd College, Claremont, CA, USA