views:

301

answers:

6

I want a couple good books that cover the subject of logic design, making computer circuits. There seems to be a lot of expensive books on logic design but it is unclear which ones are good.

A: 

This one is quite good: Computer Organization Design: The Hardware/Software interface and it's aimed to build up a full working CPU starting from a simple one (without many characteristics, like an old CPU as Z80) adding the various things needed during chapters.

It uses the MIPS as the reference architecture, but concepts should be quite adaptable also to CISC architectures (I mean, they are different but they basically do the same work).

This is more how you build a d-latch or how an alu is structured than how to layout components on a PCB..

Jack
A: 

This might be more advanced than what you're looking for, but here a brief video review of several recommended books on learning FPGA design.

mctylr
A: 

IMO, Bebop to the Boolean Boogie is quite good -- as you might guess from the name, its tone is much lighter and more readable than most. Nonetheless, it covers the subject quite well. Though it's specific to Verilog, Thomas and Moorby's The Verilog Hardware Description Language is a classic. It's much more 'business-like' than BBB, but still written very clearly. Being devoted to a specific language isn't all that much of a shortcoming either, given Verilog's market share -- unless, of course, you're one of the (admittedly sizable) minority who will be using VHDL or something else.

Jerry Coffin
Thomas and Moorby's book focuses on Verilog 2001 as a language and doesn't do a very good job of explaining what parts of Verilog work for *synthesis* (i.e. compiling to FPGA bitstreams), instead focusing on *simulation* (which is all the language was written to do in the first place). For example, section 2.6.2 describes a method of specifying state machines that can be simulated but not synthesized, but does not say as much. This has led to frustration when I hand this book to a new engineer to get up to speed on Verilog, and their code which they copied from the book just doesn't build.
Mike DeSimone
Thomas and Moorby's book also, unfortunately, does not cover SystemVerilog, which was released in 2005 and is *much* friendlier to people using Verilog for logic synthesis. Unfortunately, I have not yet found a good SystemVerilog book.
Mike DeSimone
A: 

For starters, the one I recommend is Fundamentals of Logic Design by Dr. Charles Roth. It's what we use as the curriculum here at the University of Texas in a self-paced course.

Table of contents:

  • Introduction, Number Systems and Conversion
  • Boolean Algebra (2 chapters)
  • Algebraic Simplification
  • Word Problems, Minterm and Maxterm Expansions
  • Karnaugh Maps
  • Quine-McCluskey Method
  • Multi-level Gate Networks, NAND and NOR Gates
  • Multiple-Output Networks, Multiplexers, Decoders, Read-Only Memories, and Programmable Logic Arrays
  • Combinatorial Network Design
  • Review of Combinational Networks
  • Flip-Flops
  • Counters and Similar Sequential Networks
  • Analysis of Clocked Sequential Networks
  • Derivation of State Tables
  • Reduction of State tables, State Assignment
  • Sequential Network Design
  • Iterative Networks
  • MSI Integrated Circuits in Sequential Network Design
  • Networks for Addition and Subtraction
  • Networks for Arithmetic Operations
  • State Machine Design with SM Charts
  • Analysis of Asynchronous Sequential Networks
  • Derivation and Reduction of Primitive Flow Tables
  • State Assignment and Realization of Flow Tables
  • Hazards
  • Asynchronous Sequential Network Design
  • Review of Synchronous Sequential Network Design

Once you get through this, all you'll need to learn is Verilog and get some FPGA design tools. ^_^

Mike DeSimone
Current edition (6th, 2009): http://www.amazon.com/Fundamentals-Logic-Design-Companion-CD/dp/0495471690
mctylr
A: 

Digital Design and Computer Organization by Harris and Harris is a good book, one of the better I've looked at.

It has example VHDL & Verilog code for a CPU and RAM, as well as good explanations.

Mind you, this is a lower-division book - it's not a upper division or graduate or practitioner's book.

Paul Nathan
A: 

If you've never done this before, you may want to start by going through The Elements of Computing Systems. It's extremely approachable without talking down to the reader.

Dinah