Software-Friendly Hardware

Embedded programmers often get stuck coding around an awkward hardware design. These tips for hardware designers promise hope, and more efficient systems to boot.

Involving the software team in the hardware design phase is the most logical solution, but is often impractical due to scheduling, funding, and staffing concerns. A reasonable alternative is to generate a set of hardware interface guidelines that will produce hardware designed to accelerate the software development process. Understanding the optimal hardware interface from the software developer's point of view prevents the creation of unnecessary process.

Christopher Leddy

Those two old articles are still amongst the best I ever read. The first one explains a few tips and tricks to build a software-friendly hardware. Go to Software-Friendly Hardware on

The second one is also great; it focuses on interrupts handling: Making interrupt design firmware friendly on

Design practices and guidelines that maximize the efficiency of interrupts and interrupt handling in an embedded system IC can result in a smaller code size, lower interrupt latency, and less confusion on the part of firmware developers. The final effect of intelligent interrupt design is a cheaper development effort and faster time to market for customers intending to use the IC in a product.

David A. Fechser

Add comment

Security code