
Digital Design and Computer Architecture
by Sarah Harris, David Money Harris · first published 2010
43mentions
26recommended by
36HN commenters
2010–2026first – last mentioned
72% recommend28% neutral
Why HN recommends it
Readable, hands-on path from Boolean logic and transistors up to building a processor, covering Verilog and VHDL plus MIPS, ARM or RISC-V. Suits beginners and self-learners pairing it with FPGA projects.
Summarised by Claude from recommending comments
Affiliate links. As an Amazon Associate I earn from qualifying purchases.







I have some recommendations for you as an EE graduate, you can club Digital Circuits and Systems, Embedded Systems and Digital Hardware with one book in one continuous course with the book Digital Design and Computer Architecture by Harris and Harris (A RISC V Edition will release soon in 2-3 months, buy that one) For Electronic circuits choose Microelectronics by Behzad Razavi. Instead of Purcell go for "Engineering Electromagnetics…
on “My self-study plan for electrical engineering” ↗…I would say one of the most useful exercises is implementing your own microcontroller/processor. You can pick up an FPGA devboard for fairly cheap, and there are plenty of textbooks (Harris & Harris' Digital Design and Computer Architecture comes to mind) that will get you through most of the key concepts. Once you've done this, a lot of the gaps in understanding when dealing with a microcontroller will be filled in. This exercise isn't…
on “My Business Card Runs Linux” ↗…ridiculous. For an genuinely deep understanding, start at the gate/transistor level and move up the stack. Here is a list which will hit major portions of what one needs to know (yet leave infuriating gaps). Digital Design and Computer Architecture by Money and Harris is very readable. Structure and Interpretation of Computer Programs is the classic intro text. The C Programming Language The C++ Programming Language On Lisp by Paul Graham. Algorithms…
on “The Hacker's Path” ↗…simply cannot be built in hardware (plenty of ways to build stupid circuits in verilog). There are few resources on the internet (comparing to what's available for learning programming). Maybe try 'Digital Design and Computer Architecture' by David Money Harris & Sarah L. Harris.
on “Rules for new FPGA designers” ↗The complete beginner should start with Harris & Harris "Digital Design and Computer Architecture" (David Harris is one of "CMOS VLSI Design" authors), it provides a gentle introduction into the underlying physics but focuses more on the logic of the whole endeavor, i.e. how to get from transistors…
on “Ask HN: How to Self-Study Integrated Circuit Design?” ↗…family. When you jump into Altera or Xilinx things change a little, but you can still get a VERY decent development board from Terasic for a little over $100. For learning I personally recommend the book "Digital Design and Computer Architecture" by Harris & Harris Even if you don't become a full FPGA pro, knowing your computer down to a logic gate level brings huge advantages to how you see it, interact with it and write software for it!
on “Ask HN: Has anyone here ever built their own PCI device?” ↗Hey! What you are looking for is called “digital design” and my personal favorite is a book called “digital design and computer architecture” by Harris. It takes you all the way from the mathematical idea of a gate to combining them into latches, memories, counters, and all the way to making your own processor! The initial theory is very…
on “Ask HN: Recommend Some Logic Gate Tutorials and Examples?” ↗- The Unicorn Project - The Phoenix Project - Clean Code - The Linux Programming Interface - Digital Design and Computer Architecture: ARM Edition - The Art of Electronics 3rd Edition
on “Ask HN: What are your top 5 favorite computer books?” ↗If you want to continue learning about computer architecture, I would recommend David Harris' and Sarah Harris' book "Digital Design and Computer Architecture", available in MIPS, ARM and RISC V editions. https://pages.hmc.edu/harris/ddca/ An interesting second book that makes the connection to the software side is Bryant/O'Hallaron "Computer Systems: A Programmer's…
on “Ask HN: After Charles Petzold's Code and Nand2Tetris, What Next?” ↗…Alexander Stepanov and Paul McJones) takes a mathematical approach to programming. Since its only prerequisite is a basic understanding of high school algebra, the book is very accessible and easy to follow. Digital Design and Computer Architecture (by David Harris and Sarah Harris) is a great book on computer architecture that starts with digital logic design (i.e. gates and transistors) and ends with a subset of the MIPS instruction set. Though,…
on “Must Read CS Books For Self Self-Taught Programmers” ↗…complete CPU (in Verilog), compiler, and OS. I haven't studied it, though. For a slightly more common architecture (although hopefully we are entering an FPGA-enabled golden age), try Harris & Harris's "Digital design and computer architecture". It covers the MIPS designs (using both SystemVerilog and VHDL simultaneously) in H&P's "Computer organization and design", but in a more compact and systematic way (omitting H&P's broad but shallow…
on “Ask HN: Possible to know everything in a computer system, like in old days?” ↗Another fantastic MIPS resource is a book by David and Sarah Harris' book "Digital Design and Computer Architecture". It is a great book that covers digital logic, computer architecture, HDL design (both Verilog and VHDL) and the MIPS architecture. http://www.amazon.co.uk/Digital-Design-Computer-Architecture...
on “Programmed Introduction to MIPS Assembly Language” ↗…brilliant man. >J. Hromkovic: Theoretical Computer Science: An excellent introduction to complexity theory, kolmogorov complexity, automata and turing machine, language and grammar theory >Harris & Harris: Digital Design and Computer Architecture: Introduction to electrical engineering, graudally builds your knowledge until you could implement a simple little CPU in e.g. Verilog.
on “Ask HN: Book Recommendations?” ↗Digital Design and Computer Architecture (Harris & Harris) Why? Because we software engineers can learn a lot from the hardware guys. Almost every piece of software I write these days contains some finite state machines (technically, every…
on “Ask HN: What books had the greatest effect on how you structure your code?” ↗Also https://www.nand2tetris.org/ and "Digital Design and Computer Architecture" by Harris and Harris go into building a computer from the ground up.
on “How to Build 1 Bit of RAM Using Transistors” ↗