Are embedded reference designs an unsustainable stopgap measure?
While meeting with Freescale and Texas Instruments (separately) in Texas last week, I could not but help reconsider what reference designs for complex applications really are and what they might be evolving into. Two years ago, I took a stab at defining and classifying the different types of reference design resources. In that article I pointed out that reference designs are not products in and of themselves, but rather, they are predominantly a sales or marketing tool to assist semiconductor companies to sell their products into increasingly more complex system designs.
Over the last few months, I have been thinking more that the current form of reference designs for complex applications are more than just a marketing tool. They are pitched as a way for development teams to get their designs to market faster, however, they are not a step in the direction of enhancing the productivity of design team. Rather, they are packages of pre-engineered hardware and software configurations that target specific, high-volume applications. As the complexity of embedded products continues to increase, this does not, to me at least, appear to be a sustainable approach to dealing with ever-increasing system complexity.
Contemporary reference designs for complex applications appear to be a shift of the risk and a significant portion of the cost of designing complex systems from the end application designer and integrator to the semiconductor manufacturer. This appears to be in direct conflict with the business model of most semiconductor companies that separates the design and production of components for use in embedded systems and the design and manufacture of the end systems themselves.
Building reference designs for complex systems is expensive, so the types of reference designs that companies that make them will commit to have to exhibit a lower level of risk coupled with a high potential payout. Pushing most of this risk and cost onto a few companies does not strike me as an effective way to tease out the innovations that have fueled the rapid growth of this industry.
On the positive side, I think the increasing pain/cost/risk of building reference designs may provide semiconductor and software development tool companies with valuable insights into how to manifest the next level of productivity abstraction for embedded designers. The current model of building reference designs does not effectively hide and abstract the growing complexity of these systems, and it is the success of finding usable abstractions that will allow more designers to push the envelope even harder than we have been.
I am considering writing an article exploring the direction of new software development abstractions for embedded designs are going. Is this the time for such an article, or is it too soon still? Are you aware of any approaches for abstracting complexity from the enterprise or application software development world, such as virtualization, that are translating well to the different concerns for embedded system designers?
Alan commented:
Semiguy commented:
Shreshtha Kumar commented:















