Hardware/Firmware Interface Design and over one million other books are available for Amazon Kindle. Learn more


or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Kindle Edition
 
   
Sell Back Your Copy
For a $7.69 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development
 
 
Start reading Hardware/Firmware Interface Design on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development [Hardcover]

Gary Stringham (Author)
5.0 out of 5 stars  See all reviews (3 customer reviews)

List Price: $72.95
Price: $58.58 & this item ships for FREE with Super Saver Shipping. Details
You Save: $14.37 (20%)
  Special Offers Available
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Only 12 left in stock--order soon (more on the way).
Want it delivered Tuesday, January 31? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $38.47  
Hardcover $58.58  
Sell Back Your Copy for $7.69
Whether you buy it used on Amazon for $38.35 or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $7.69.
Used Price$38.35
Trade-in Price$7.69
Price after
Trade-in
$30.66

Book Description

1856176053 978-1856176057 December 1, 2009 1
Why care about hardware/firmware interaction? These interfaces are critical, a solid hardware design married with adaptive firmware can access all the capabilities of an application and overcome limitations caused by poor communication. For the first time, a book has come along that will help hardware engineers and firmware engineers work together to mitigate or eliminate problems that occur when hardware and firmware are not optimally compatible. Solving these issues will save time and money, getting products to market sooner to create more revenue.

The principles and best practices presented in this book will prove to be a valuable resource for both hardware and firmware engineers. Topics include register layout, interrupts, timing and performance, aborts, and errors. Real world cases studies will help to solidify the principles and best practicies with an aim towards cleaner designs, shorter schedules, and better implementation!

  • Reduce product development delays with the best practices in this book

  • Concepts apply to ASICs, ASSPs, SoCs, and FPGAs

  • Real-world examples and case studies highlight the good and bad of design processes

Special Offers and Product Promotions

  • Buy $50 in qualifying physical textbooks, get $5 in Amazon MP3 Credit. Here's how (restrictions apply)

Frequently Bought Together

Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development + Design Patterns for Embedded Systems in C: An Embedded Software Engineering Toolkit + Practical UML Statecharts in C/C++, Second Edition: Event-Driven Programming for Embedded Systems
Price For All Three: $143.96

Some of these items ship sooner than the others. Show details

Buy the selected items together


Editorial Reviews

Review

"I did not have to read too far into this book to realize that the author has extensive experience with not only microcontroller programming but also the management of engineering projects involving hardware and firmware. The format of the book is characterized by numerous boxed text inserts and copious bullet items. However, the content is not fluff; the book is loaded with information, some significant fraction of which can be found only in industry among those with development experience. This author has it."--Dennis L Feucht, www.en-genius.net

"The book is loaded with information, some significant fraction of which can be found only among those with development experience. This author has it.. This is a good book for anyone who is involved in hardware-firmware development and who knows just enough to want to better understand how to organize and design it all."--EN-Genius Network


Product Details

  • Hardcover: 376 pages
  • Publisher: Newnes; 1 edition (December 1, 2009)
  • Language: English
  • ISBN-10: 1856176053
  • ISBN-13: 978-1856176057
  • Product Dimensions: 9.3 x 7.6 x 1.1 inches
  • Shipping Weight: 2 pounds (View shipping rates and policies)
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (3 customer reviews)
  • Amazon Best Sellers Rank: #762,165 in Books (See Top 100 in Books)

More About the Author

Gary Stringham, an electrical engineer, has written a plethora of software over his 25-year career and decided to try writing a book. Although he prefers being an engineer rather than an author, he enjoyed writing about his experiences in getting hardware and software to play nice together, especially the parts about how he saved his employer over $100 million. He founded Gary Stringham & Associates (www.garystringham.com) to teach the concepts at conferences and workshops. When he is not being an enginerd, he plays the piano, directs the church choir, and plays with his family.


 

Customer Reviews

3 Reviews
5 star:
 (3)
4 star:    (0)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
5.0 out of 5 stars (3 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

9 of 9 people found the following review helpful:
5.0 out of 5 stars Buy This Book for the Engineers Over in FPGA Design!, December 17, 2009
By 
Michael Barr (Elkridge, MD USA) - See all my reviews
(REAL NAME)   
This review is from: Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development (Hardcover)
This book collects together in one place over 300 practical rules for improving the design of FPGAs, ASICs, ASSPs, and SoCs. The upside of following these rules, as well as the seven guiding principles that underly them, is a reduction in the cost and complexity of the device drivers that use these chips.

Too often, in my experience, embedded software engineers must write hardware fixes and workarounds into their device drivers--because the hardware designers didn't follow rules like these. Far too many off-the-shelf chips, such as ASSPs and SoCs, that are developed to be sold in the electronics marketplace are hard to program and poorly documented. And, probably because each has only one customer, most of the FPGA and ASIC designs I've encountered are even harder to use.

Some of the 300 rules are just common sense ideas that conscientious hardware designers may already follow without thinking. Others place demands on the documentation more than on the design. But the remainder show a rarer and more clever type of thinking or are just plain good ideas that should always be followed.

One of my favorite recommendations from the book is to "provide a chip version register that uniquely identifies the chip revision or FPGA programming" (p. 208). Following this one simple rule, allows firmware or device driver upgrades to work with both new and old versions of the chip's register. That kind of backward compatibility is often a must in today's complex and fast-changing products. I've recommended hardware version numbers for many years, but this is the first book I've seen put this best practice into writing.

FPGA designers: If you only decide to follow a few of the 300 rules here, the price of the book will pay off in fewer revisions. Firmware developers: Make a gift of this book to the FPGA designers down the hall and you won't be sorry. I'm confident that this well-written book will serve as the launching pad for important discussions for many engineers working at the hardware-firmware interface.

(Full disclosure: My company has hired the author from time to time to work on engineering projects for our clients; as a result, his bio is currently listed on our website. However, I have no financial stake in the success of this book. I just like what he wrote.)
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 4 people found the following review helpful:
5.0 out of 5 stars Review from a hardware designers perspective, August 5, 2010
Amazon Verified Purchase(What's this?)
This review is from: Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development (Hardcover)
This is the book I wish I had read 20 years ago. I was designing Ip cores for ink jet printers
and doing what I thought was a good job of packing all the registers into the smallest possible
footprints and spreading the loads equally over the entire bus when I sat down and reviewed
my design with a software engineer. He pointed out a host of problems that they would have to
deal with because of my register choices. In the product they would have to share my hardware
among several different tasks and would need to create a complex semaphore system to ensure that
those processes didn't interfere with each other. On the other hand by simply splitting up the
registers so that each task only had to access one register then the problem went away.

That is what this book is all about. Not only does it contain a multitude of guidelines taken from
years of lessons learned but it goes on to distill these into basic principles that all designers
should follow when designing hardware. It is an excellent guide for any hardware designer who is not
familiar with modern embedded system software as to what the cpu is really doing with your hardware.It
is a good book for using with design reviews. You may not want to follow every rule but you better be
able to demonstrate that you fully understand any rules that you are breaking.

There is an lengthy chapter on interrupts. Problems here can easily become hard to find nightmares if
you don't have a consistent and well thought out design. This book covers many aspects that less
experienced designers never consider. Everyone knows how to start and stop a process but how many think
about aborting it in a safe and clean manner?

This book also covers the growing need for adding test and debug logic to all components. If something
doesn't work you can't check it out with a logic analyzer like you could in the past. There is nowhere
outside the chip where you can attach any probes. Years ago a hardware designer could exercise their
block with peeks and pokes. Today you need a functioning operating system before a chip can do anything
so the software designers are now in the drivers seat for most test and debug efforts. This book gives
them the ability to find and fix problems
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5.0 out of 5 stars Excellent!, June 28, 2011
This review is from: Hardware/Firmware Interface Design: Best Practices for Improving Embedded Systems Development (Hardcover)
Excellent! A must read for ASIC/FPGA designers as well as for firmware developers. Wish every chip designer read this book and implemented its suggestions. That would make firmware so much easier to develop and maintain, and considerably more reliable. For example, the suggestion about using atomic registers to avoid synchronizing thread access is relatively simple to implement in hardware, and makes a huge difference to the firmware developer. Most recommended!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Only search this product's reviews



Inside This Book (learn more)
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Surprise Me!
Search Inside This Book:


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(1)

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject