Book review: “VHDL Coding Styles …” by Ben Cohen

November 9th, 2004 at 6:55 pm

“VHDL Coding Styles and Methodologies… an in depth tutorial” by Ben Cohen

I came upon this book trying to find some read on the more
advanced side of VHDL - hoping for something like “Code Complete”.
It turned out, however, to be more of a general VHDL tutorial,
with some specks of “methodology” here and there.

The books covers the whole VHDL language - basically the stuff
you’d expect from any book on the subject (even the traditional
UART design example). Each chapter consists of an introduction
to a topic, followed by some basic examples and “best practices”
advices. While to beginners these may seem valuable, experienced
VHDL designers won’t benefit much, because most of the notes are
quite obvious.

There are a couple of very interesting sections in the book,
but unfortunately those are very short. Attempting to cover the whole
language, the author tried to dedicate the same amount of description
to every feature. However, VHDL has many esoteric and highly idiomatic
dark corners most engineers don’t care about. It would be far better
to concentrate on some of the most demanded topics, like synchronous
design and synthesis.

The book is written quite well and includes a lot of code, which
is always helpful. However, in my opinion it doesn’t serve the
promise of the author. I don’t think I’ve gained much useful information
from it, and beginners probably have better books to look at - books
that chew the basics well, with lots of examples.

I’m still in search of a good book on advanced VHDL (or Verilog, it
doesn’t matter). Something like “Effective C++” or “Perl Cookbook”.
Unfortunately, my search has been unsuccessful so far…

Related posts:

  1. Book review: “RTL Hardware design using VHDL” by Pong P. Chu
  2. Book review - The Designer’s Guide to VHDL (by P. Ashenden)
  3. VHDL C interaction
  4. Ada and VHDL
  5. Book review: “Designing embedded hardware” by John Catsoulis

Leave a Reply

To post code with preserved formatting, enclose it in `backticks` (even multiple lines)