Open Hardware Must Conquer Pitfalls To Deliver Cheaper Embedded Designs

By George Graves

In today's marketplace, embedded systems are almost universally employed to add functionality to our everyday lives without adding significant costs. It seems that everything from microwave ovens to vacuum cleaners has some embedded technology. And that trend is growing. The almost daily introduction of new technologies- whether applied to existing or emerging products-puts a tremendous strain upon the engineering community. That community must develop inexpensive and capable systems at what seems like a continuously quickening pace. In order to meet the ever-shortening time-to-market window, the luxury of being able to design new systems from the ground up is simply no longer practical or necessary. Open-hardware design methodologies make it possible for engineers to share solutions, adapt them to new problems, and enhance them.

If It's Good Enough For Software
The model for open hardware in embedded systems is, of all things, the notion of open-source software. Linux-a freeware, open-source Unix derivative-has made its reputation on being able to provide free source files that can be modified, tested, and distributed by anyone who feels the want or need to do so. This idea is almost directly transportable to the hardware industry. The concept of a set of reusable, verified design cores has many advantages. It is based on a development model that's fully matured and known to work.

One of the biggest advantages to an open-hardware design paradigm is that the designs themselves compete for recognition-not the corporate entities behind them. Engineers from different companies can therefore converge on common solutions and make them the very best attainable solutions with current technology.

Another advantage of this type of development is that the results are infinitely reusable and modifiable to meet new requirements. The development cost and all-important time-to-market can be reduced significantly because the debugging process is shared over many design-ins. In addition, designers are freed from having to start from square one with each new application.

The considerable resources available with each open-design core will result in optimized designs that become even more highly optimized over time. Shared technology ensures highly reliable designs that are well understood and well modeled by the open-hardware developer community.

Open-hardware designs will have an almost infinite life cycle. When a hardware design becomes part of the open-hardware library, any designer can adopt it to suit his or her application. The designer can make whatever changes in firmware and architecture needed to perform the task at hand. This aspect of open hardware results in the continuous development of the given design. Even as specific core designs wax and wane in popularity, the overall concept will be adaptable to new technologies as they become available.

Salvation for Small Companies?
In today's electronics industry, the irony is that the use of ASIC or system-on-a-chip (SoC) technology is almost de rigueur for any company building cost-effective embedded solutions for increasingly feature-rich products. Unfortunately, this technology is far beyond the resources of many small companies and startups. This is unfortunate, as much of the product innovation driving the industry as a whole comes from small companies and startups. In fact, the latter are often being formed solely to bring some singular new idea or product to market.

Many factors are keeping the price of SoC and ASIC design high. The tools are expensive, ASIC nonrecurring-engineering fees are often prohibitive, and the development of ASIC and SoC silicon is risky. After all, a design often needs to go to first silicon over several iterations before the final product is deemed satisfactory. More prohibitive yet is the cost of traditional intellectual property (IP) where consulting firms or ASIC design groups are employed to develop the designs for smaller firms.

With open-source-hardware libraries, the Verilog or VHDL source code would be freely available for download by anyone. The designs would ostensibly be tested. Any value-added changes or improvements made by the user would be much less risky than starting a new design to fulfill a similar function. In addition, much of this work could be done "in-house," which is much less costly than using outside IP.

Open-source-hardware designs have fundamentally significant differences from traditional IP. The major difference is that open source is designed to be portable across many different EDA tools and target architectures. In contrast, traditional IP is used primarily on a small number of platforms. This portability results in source code, which is much more robust and composed of simpler designs. Because these designs must work the first time out, they are designed to require little or no fine-tuning for a specific architecture. Such fine-tuning would defeat the purpose of the open-source paradigm. In short, open hardware allows smaller, more modestly funded firms to produce designs that can effectively compete with those from larger, more financially secure companies.

The Bumpy Road Ahead
As rosy as all of this looks on paper, the reality is that there are some not inconsequential stumbling blocks to full-scale adoption by the industry. Of course, the biggest stumbling block for open hardware is the concept of corporate ownership and non-disclosure. Many corporations have specific injunctions against their personnel sharing design concepts with others. Often, this injunction even extends to in-house sharing-much less sharing with a hardware community.

There also is the problem of the design engineers themselves. Understandably, many engineers don't like the idea of giving away their ideas for free. Like the Linux model upon which it is based, the concept of open hardware as it now sits will likely be advanced by students who are anxious to show off their newly acquired skills or retired designers who just want to "keep their hand in." Of course, the problem with this scenario is that commercial EDA tools are expensive. They are therefore unavailable to the volunteer labor that will likely make up much of the open-hardware community.

Tools Are the Key
Currently, efforts are underway to provide electronic-design-automation tools at no cost to those interested in designing for the open-hardware community. One such set of tools is the gEDA project (www.geda.seul.org). At this time, gEDA tools consist of schematic capture, attribute management, bill-of-materials (BOM) generation, netlisting into over 20 netlist formats, analog and digital simulation, and printed-circuit-board (PCB) layout. These tools have been designed to run mostly on Linux/GNU-based machines. But efforts are underway to ensure that these tools will run on other Unix flavors as well.

Alliance-another free design toolset available for open-hardware work-is a complete set of free CAD tools and portable libraries for VLSI design (www-asim.lip6.fr/recherche/alliance). It includes a VHDL compiler and simulator, logic-synthesis tools, and automatic place-and-route tools. A complete set of portable CMOS libraries also is provided. Although Alliance was designed to run on GNU/Linux, it will most likely comply with many more Unix platforms-just like gEDA.

The open-hardware concept isn't just a design methodology. It also is a paradigm shift in the way that complex embedded systems are designed to meet the challenges of fast turnaround and narrow time-to-market windows. Open hardware can yield reliable, highly optimized, reusable designs that can significantly reduce development costs for new products. Such designs also can revamp existing products with an eye to reducing costs, increasing reliability, and making service easier. In order for the open-hardware concept to flourish, it will be necessary for many current corporate and personal design policies to change. This concept isn't compatible with corporate secretiveness. Nor is it compatible with the notion of a designer's ownership of his or her own designs. Open hardware is a community effort-one that can significantly reduce the cost of technology everywhere.


George Graves has more than 30 years of experience as a sytems engineer as well as a Marketing/Applications engineer in the semiconductor industry. For the last ten years he has focused upon technical writing for both the high-tech world as well as the world of consumer audio, video, and computers.